summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniele Palmas <dnlplm@gmail.com>2022-01-27 23:26:34 +0100
committerThomas Haller <thaller@redhat.com>2022-01-29 16:15:29 +0100
commitca8168775c70097b08766c5d260c02320e02d035 (patch)
treef2885dc8241b5ab278c764d52b706c1d3da155d0
parentead18781ad60cd58a5c9b62abd4b9b36ef5f6ce9 (diff)
libnm,core: add 5GNR device modem capability
https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/1076
-rw-r--r--src/core/devices/wwan/nm-modem-broadband.c2
-rw-r--r--src/libnm-client-impl/nm-device-modem.c10
-rw-r--r--src/libnm-core-public/nm-dbus-interface.h2
3 files changed, 10 insertions, 4 deletions
diff --git a/src/core/devices/wwan/nm-modem-broadband.c b/src/core/devices/wwan/nm-modem-broadband.c
index 319d77a9b8..37b8c03bcb 100644
--- a/src/core/devices/wwan/nm-modem-broadband.c
+++ b/src/core/devices/wwan/nm-modem-broadband.c
@@ -33,7 +33,7 @@ MODEM_CAPS_3GPP(MMModemCapability caps)
*/
return NM_FLAGS_ANY(caps,
(MM_MODEM_CAPABILITY_GSM_UMTS | MM_MODEM_CAPABILITY_LTE
- | MM_MODEM_CAPABILITY_LTE_ADVANCED));
+ | MM_MODEM_CAPABILITY_LTE_ADVANCED | MM_MODEM_CAPABILITY_5GNR));
G_GNUC_END_IGNORE_DEPRECATIONS
}
diff --git a/src/libnm-client-impl/nm-device-modem.c b/src/libnm-client-impl/nm-device-modem.c
index 73b38d3e0a..bfe7f32709 100644
--- a/src/libnm-client-impl/nm-device-modem.c
+++ b/src/libnm-client-impl/nm-device-modem.c
@@ -153,8 +153,10 @@ get_type_description(NMDevice *device)
return NULL;
}
-#define MODEM_CAPS_3GPP(caps) \
- (caps & (NM_DEVICE_MODEM_CAPABILITY_GSM_UMTS | NM_DEVICE_MODEM_CAPABILITY_LTE))
+#define MODEM_CAPS_3GPP(caps) \
+ (caps \
+ & (NM_DEVICE_MODEM_CAPABILITY_GSM_UMTS | NM_DEVICE_MODEM_CAPABILITY_LTE \
+ | NM_DEVICE_MODEM_CAPABILITY_5GNR))
#define MODEM_CAPS_3GPP2(caps) (caps & (NM_DEVICE_MODEM_CAPABILITY_CDMA_EVDO))
@@ -206,7 +208,9 @@ get_setting_type(NMDevice *device)
NMDeviceModemCapabilities caps;
caps = nm_device_modem_get_current_capabilities(NM_DEVICE_MODEM(device));
- if (caps & (NM_DEVICE_MODEM_CAPABILITY_GSM_UMTS | NM_DEVICE_MODEM_CAPABILITY_LTE))
+ if (caps
+ & (NM_DEVICE_MODEM_CAPABILITY_GSM_UMTS | NM_DEVICE_MODEM_CAPABILITY_LTE
+ | NM_DEVICE_MODEM_CAPABILITY_5GNR))
return NM_TYPE_SETTING_GSM;
else if (caps & NM_DEVICE_MODEM_CAPABILITY_CDMA_EVDO)
return NM_TYPE_SETTING_CDMA;
diff --git a/src/libnm-core-public/nm-dbus-interface.h b/src/libnm-core-public/nm-dbus-interface.h
index 7fd228ca46..2f9378cd24 100644
--- a/src/libnm-core-public/nm-dbus-interface.h
+++ b/src/libnm-core-public/nm-dbus-interface.h
@@ -428,6 +428,7 @@ typedef enum { /*< flags >*/
* @NM_DEVICE_MODEM_CAPABILITY_GSM_UMTS: modem supports at least one of GSM,
* GPRS, EDGE, UMTS, HSDPA, HSUPA, or HSPA+ packet switched data capability
* @NM_DEVICE_MODEM_CAPABILITY_LTE: modem has LTE data capability
+ * @NM_DEVICE_MODEM_CAPABILITY_5GNR: modem has 5GNR data capability
*
* #NMDeviceModemCapabilities values indicate the generic radio access
* technology families a modem device supports. For more information on the
@@ -440,6 +441,7 @@ typedef enum { /*< flags >*/
NM_DEVICE_MODEM_CAPABILITY_CDMA_EVDO = 0x00000002,
NM_DEVICE_MODEM_CAPABILITY_GSM_UMTS = 0x00000004,
NM_DEVICE_MODEM_CAPABILITY_LTE = 0x00000008,
+ NM_DEVICE_MODEM_CAPABILITY_5GNR = 0x00000040,
} NMDeviceModemCapabilities;
/**