lkml.org 
[lkml]   [2023]   [Nov]   [22]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
From
Subject[PATCH 2/5] soc: amlogic: meson-gx-socinfo: move common code to exported function
Date
Move common code fill soc_device_attribute to common function for
later use

Signed-off-by: Viacheslav Bocharov <adeep@lexina.in>
---
.../soc/amlogic/meson-gx-socinfo-internal.h | 3 +++
drivers/soc/amlogic/meson-gx-socinfo.c | 26 ++++++++++++-------
2 files changed, 20 insertions(+), 9 deletions(-)

diff --git a/drivers/soc/amlogic/meson-gx-socinfo-internal.h b/drivers/soc/amlogic/meson-gx-socinfo-internal.h
index 884cf8fb580f..5a742cc16fc8 100644
--- a/drivers/soc/amlogic/meson-gx-socinfo-internal.h
+++ b/drivers/soc/amlogic/meson-gx-socinfo-internal.h
@@ -95,5 +95,8 @@ static inline unsigned int socinfo_to_misc(u32 socinfo)
return FIELD_GET(SOCINFO_MISC, socinfo);
}

+int meson_gx_socinfo_prepare_soc_driver_attr(struct soc_device_attribute *soc_dev_attr,
+ unsigned int socattr);
+
#endif /* _MESON_GX_SOCINFO_INTERNAL_H_ */

diff --git a/drivers/soc/amlogic/meson-gx-socinfo.c b/drivers/soc/amlogic/meson-gx-socinfo.c
index 9d7921c0fb91..8cf69dd238ee 100644
--- a/drivers/soc/amlogic/meson-gx-socinfo.c
+++ b/drivers/soc/amlogic/meson-gx-socinfo.c
@@ -47,6 +47,22 @@ static const char *socinfo_to_soc_id(u32 socinfo)
return "Unknown";
}

+int meson_gx_socinfo_prepare_soc_driver_attr(struct soc_device_attribute *soc_dev_attr,
+ unsigned int socattr)
+{
+ soc_dev_attr->family = "Amlogic Meson";
+ soc_dev_attr->revision = kasprintf(GFP_KERNEL, "%x:%x - %x:%x",
+ socinfo_to_major(socattr),
+ socinfo_to_minor(socattr),
+ socinfo_to_pack(socattr),
+ socinfo_to_misc(socattr));
+ soc_dev_attr->soc_id = kasprintf(GFP_KERNEL, "%s (%s)",
+ socinfo_to_soc_id(socattr),
+ socinfo_to_package_id(socattr));
+ return 0;
+}
+EXPORT_SYMBOL(meson_gx_socinfo_prepare_soc_driver_attr);
+
static int __init meson_gx_socinfo_init(void)
{
struct soc_device_attribute *soc_dev_attr;
@@ -95,15 +111,7 @@ static int __init meson_gx_socinfo_init(void)
if (!soc_dev_attr)
return -ENODEV;

- soc_dev_attr->family = "Amlogic Meson";
- soc_dev_attr->revision = kasprintf(GFP_KERNEL, "%x:%x - %x:%x",
- socinfo_to_major(socinfo),
- socinfo_to_minor(socinfo),
- socinfo_to_pack(socinfo),
- socinfo_to_misc(socinfo));
- soc_dev_attr->soc_id = kasprintf(GFP_KERNEL, "%s (%s)",
- socinfo_to_soc_id(socinfo),
- socinfo_to_package_id(socinfo));
+ meson_gx_socinfo_prepare_soc_driver_attr(soc_dev_attr, socinfo);

soc_dev = soc_device_register(soc_dev_attr);
if (IS_ERR(soc_dev)) {
--
2.34.1
\
 
 \ /
  Last update: 2023-11-22 13:58    [W:0.860 / U:0.104 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site