aboutsummaryrefslogtreecommitdiff
path: root/src/mm-port-qmi.c
diff options
context:
space:
mode:
authorJoel Selvaraj <jo@jsfamily.in>2021-07-21 12:40:31 +0530
committerJoel Selvaraj <jo@jsfamily.in>2021-07-21 20:35:33 +0530
commit43c9c47b04750c1d7c8d3b7c9d9d1d79490e2da4 (patch)
treec4c11ce49555589fcfe23273bbc99dbe10404f28 /src/mm-port-qmi.c
parent1d4caa929f8766cb926dc2578e29d389fe186d41 (diff)
port-qmi: allow MMPortQmi to get the net sysfs path
Will be set by base modem when organizing ports, similar to net driver name. Required for fetching the TX and RX endpoint IDs through sysfs from linux 5.14 onwards.
Diffstat (limited to 'src/mm-port-qmi.c')
-rw-r--r--src/mm-port-qmi.c13
1 files changed, 13 insertions, 0 deletions
diff --git a/src/mm-port-qmi.c b/src/mm-port-qmi.c
index a64156dd..b36bcdff 100644
--- a/src/mm-port-qmi.c
+++ b/src/mm-port-qmi.c
@@ -56,6 +56,7 @@ struct _MMPortQmiPrivate {
QmiDevice *qmi_device;
GList *services;
gchar *net_driver;
+ gchar *net_sysfs_path;
#if defined WITH_QRTR
QrtrNode *node;
#endif
@@ -2372,6 +2373,17 @@ mm_port_qmi_set_net_driver (MMPortQmi *self,
/*****************************************************************************/
+void
+mm_port_qmi_set_net_sysfs_path (MMPortQmi *self,
+ const gchar *net_sysfs_path)
+{
+ g_assert (MM_IS_PORT_QMI (self));
+ g_assert (!self->priv->net_sysfs_path);
+ self->priv->net_sysfs_path = g_strdup (net_sysfs_path);
+}
+
+/*****************************************************************************/
+
typedef struct {
QmiDevice *qmi_device;
} PortQmiCloseContext;
@@ -2589,6 +2601,7 @@ dispose (GObject *object)
g_clear_object (&self->priv->qmi_device);
g_clear_pointer (&self->priv->net_driver, g_free);
+ g_clear_pointer (&self->priv->net_sysfs_path, g_free);
G_OBJECT_CLASS (mm_port_qmi_parent_class)->dispose (object);
}