From 16f9ff68fb5460b423d3fdf9a5221c32819de3fc Mon Sep 17 00:00:00 2001 From: Daniele Palmas Date: Wed, 12 Jul 2023 15:40:21 +0200 Subject: port-qmi: fix rmnet checksum flag with qmi_wwan When using QMAPv5 and QMAPv4 the checksum is enabled by default at the modem level, so it should be also enabled when creating the rmnet netdevices: add the required flags also when rmnet is used through qmi_wwan. --- src/mm-port-qmi.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'src') diff --git a/src/mm-port-qmi.c b/src/mm-port-qmi.c index 3e6e82da..df0909b3 100644 --- a/src/mm-port-qmi.c +++ b/src/mm-port-qmi.c @@ -712,6 +712,18 @@ get_rmnet_device_add_link_flags (MMPortQmi *self) } } + if (g_strcmp0 (self->priv->net_driver, "qmi_wwan") == 0) { + QmiWdaDataAggregationProtocol dap; + + dap = mm_port_qmi_get_data_aggregation_protocol (self); + if (dap == QMI_WDA_DATA_AGGREGATION_PROTOCOL_QMAPV5) + flags |= (QMI_DEVICE_ADD_LINK_FLAGS_INGRESS_MAP_CKSUMV5 | + QMI_DEVICE_ADD_LINK_FLAGS_EGRESS_MAP_CKSUMV5); + else if (dap == QMI_WDA_DATA_AGGREGATION_PROTOCOL_QMAPV4) + flags |= (QMI_DEVICE_ADD_LINK_FLAGS_INGRESS_MAP_CKSUMV4 | + QMI_DEVICE_ADD_LINK_FLAGS_EGRESS_MAP_CKSUMV4); + } + flags_str = qmi_device_add_link_flags_build_string_from_mask (flags); mm_obj_dbg (self, "Creating RMNET link with flags: %s", flags_str); return flags; -- cgit v1.2.3-70-g09d2