fibocom: disable AT over MBIM in NL668

The AT over MBIM support is exposed as a supported service, but the
underlying implementation is not good enough.
This commit is contained in:
Aleksander Morgado
2024-06-21 09:57:19 +00:00
parent f7b351fc85
commit 06ccd09bef
2 changed files with 7 additions and 0 deletions
@@ -22,6 +22,9 @@ ATTRS{idVendor}=="2cb7", ATTRS{idProduct}=="01a0", ENV{.MM_USBIFNUM}=="02", SUBS
ATTRS{idVendor}=="2cb7", ATTRS{idProduct}=="01a0", ENV{.MM_USBIFNUM}=="03", SUBSYSTEM=="tty", ENV{ID_MM_PORT_TYPE_AT_SECONDARY}="1"
ATTRS{idVendor}=="2cb7", ATTRS{idProduct}=="01a0", ENV{.MM_USBIFNUM}=="04", ENV{ID_MM_PORT_IGNORE}="1"
# Fibocom NL668 doesn't support AT over MBIM properly
ATTRS{idVendor}=="2cb7", ATTRS{idProduct}=="01a0", ENV{ID_MM_FIBOCOM_AT_OVER_MBIM_DISABLED}="1"
# Fibocom NL668 doesn't support multiplexing properly
ATTRS{idVendor}=="2cb7", ATTRS{idProduct}=="01a0", ENV{ID_MM_MAX_MULTIPLEXED_LINKS}="0"
@@ -64,6 +64,10 @@ iface_port_at_check_support (MMIfacePortAt *_self,
if (!mm_port_mbim_supports_command (MM_PORT_MBIM (self), MBIM_SERVICE_FIBOCOM, MBIM_CID_FIBOCOM_AT_COMMAND)) {
mm_obj_msg (self, "MBIM device is not AT capable");
self->priv->at_over_mbim = FEATURE_NOT_SUPPORTED;
} else if (mm_kernel_device_get_property_as_boolean (mm_port_peek_kernel_device (MM_PORT (self)),
"ID_MM_FIBOCOM_AT_OVER_MBIM_DISABLED")) {
mm_obj_msg (self, "MBIM device is AT capable but support is disabled");
self->priv->at_over_mbim = FEATURE_NOT_SUPPORTED;
} else {
mm_obj_msg (self, "MBIM device is AT capable");
self->priv->at_over_mbim = FEATURE_SUPPORTED;