diff mbox series

[2/6] qmi: wds: Move enum conversion into wds.c

Message ID 20240429155726.51479-2-denkenz@gmail.com (mailing list archive)
State Accepted
Commit e1756a883d8a80ca8b514807f34fc589d018609b
Headers show
Series [1/6] qmi: lte: Remove magic number use | expand

Commit Message

Denis Kenzior April 29, 2024, 3:56 p.m. UTC
Introduce a new wds.c file which will house various utilities, such as
enumeration conversion, that could be shared between multiple QMI based
atom drivers.  Move ofono_gprs_auth_method conversion here.
---
 Makefile.am                     |  1 +
 drivers/qmimodem/gprs-context.c | 17 +----------------
 drivers/qmimodem/wds.c          | 25 +++++++++++++++++++++++++
 drivers/qmimodem/wds.h          |  2 ++
 4 files changed, 29 insertions(+), 16 deletions(-)
 create mode 100644 drivers/qmimodem/wds.c
diff mbox series

Patch

diff --git a/Makefile.am b/Makefile.am
index b5a32fac1c89..815d96904943 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -362,6 +362,7 @@  qmi_sources = drivers/qmimodem/qmi.h drivers/qmimodem/qmi.c \
 					drivers/qmimodem/pds.h \
 					drivers/qmimodem/common.h \
 					drivers/qmimodem/wda.h \
+					drivers/qmimodem/wds.c \
 					drivers/qmimodem/voice.h
 
 builtin_sources += $(qmi_sources) \
diff --git a/drivers/qmimodem/gprs-context.c b/drivers/qmimodem/gprs-context.c
index 4004876bab87..9ac57c893725 100644
--- a/drivers/qmimodem/gprs-context.c
+++ b/drivers/qmimodem/gprs-context.c
@@ -239,21 +239,6 @@  static void qmi_gprs_read_settings(struct ofono_gprs_context* gc,
 	l_free(cbd);
 }
 
-static uint8_t auth_method_to_qmi_auth(enum ofono_gprs_auth_method method)
-{
-	/* QMI uses a bitmap */
-	switch (method) {
-	case OFONO_GPRS_AUTH_METHOD_CHAP:
-		return QMI_WDS_AUTHENTICATION_CHAP;
-	case OFONO_GPRS_AUTH_METHOD_PAP:
-		return QMI_WDS_AUTHENTICATION_PAP;
-	case OFONO_GPRS_AUTH_METHOD_NONE:
-		return 0;
-	}
-
-	return 0;
-}
-
 static void qmi_activate_primary(struct ofono_gprs_context *gc,
 				const struct ofono_gprs_primary_context *ctx,
 				ofono_gprs_context_cb_t cb, void *user_data)
@@ -288,7 +273,7 @@  static void qmi_activate_primary(struct ofono_gprs_context *gc,
 
 	qmi_param_append_uint8(param, QMI_WDS_PARAM_IP_FAMILY, ip_family);
 
-	auth = auth_method_to_qmi_auth(ctx->auth_method);
+	auth = qmi_wds_auth_from_ofono(ctx->auth_method);
 
 	qmi_param_append_uint8(param, QMI_WDS_PARAM_AUTHENTICATION_PREFERENCE,
 					auth);
diff --git a/drivers/qmimodem/wds.c b/drivers/qmimodem/wds.c
new file mode 100644
index 000000000000..748ad867c2cc
--- /dev/null
+++ b/drivers/qmimodem/wds.c
@@ -0,0 +1,25 @@ 
+/*
+ * oFono - Open Source Telephony
+ * Copyright (C) 2024  Cruise, LLC
+ *
+ * SPDX-License-Identifier: LGPL-2.1-or-later
+ */
+
+#include "src/common.h"
+
+#include "wds.h"
+
+int qmi_wds_auth_from_ofono(enum ofono_gprs_auth_method method)
+{
+	/* QMI uses a bitmap */
+	switch (method) {
+	case OFONO_GPRS_AUTH_METHOD_CHAP:
+		return QMI_WDS_AUTHENTICATION_CHAP;
+	case OFONO_GPRS_AUTH_METHOD_PAP:
+		return QMI_WDS_AUTHENTICATION_PAP;
+	case OFONO_GPRS_AUTH_METHOD_NONE:
+		return 0;
+	}
+
+	return -ENOENT;
+}
diff --git a/drivers/qmimodem/wds.h b/drivers/qmimodem/wds.h
index 6d7071fe244f..c8aeefe430bb 100644
--- a/drivers/qmimodem/wds.h
+++ b/drivers/qmimodem/wds.h
@@ -108,3 +108,5 @@  enum qmi_wds_command {
 	QMI_WDS_CONFIGURE_PROFILE_EVENT_LIST		= 0xA7,
 	QMI_WDS_PROFILE_CHANGED				= 0xA8,
 };
+
+int qmi_wds_auth_from_ofono(enum ofono_gprs_auth_method method);