* [PATCH net-next v2] net: wan: framer: Add version sysfs attribute for the Lantiq PEF2256 framer
@ 2025-09-17 6:24 Christophe Leroy
2025-09-17 16:33 ` Simon Horman
2025-09-18 15:45 ` Herve Codina
0 siblings, 2 replies; 3+ messages in thread
From: Christophe Leroy @ 2025-09-17 6:24 UTC (permalink / raw)
To: Herve Codina, Andrew Lunn, David S. Miller, Eric Dumazet,
Jakub Kicinski, Paolo Abeni
Cc: Christophe Leroy, linux-kernel, netdev
Lantiq PEF2256 framer has some little differences in behaviour
depending on its version.
Add a sysfs attribute to allow user applications to know the
version.
Signed-off-by: Christophe Leroy <christophe.leroy@csgroup.eu>
---
v2:
- Make DEVICE_ATTR_RO(version) static
- Split version_show() prototype into 2 lines to remain under 80 chars
v1: https://lore.kernel.org/all/f9aaa89946f1417dc0a5e852702410453e816dbc.1757754689.git.christophe.leroy@csgroup.eu/
---
drivers/net/wan/framer/pef2256/pef2256.c | 24 +++++++++++++++++++-----
1 file changed, 19 insertions(+), 5 deletions(-)
diff --git a/drivers/net/wan/framer/pef2256/pef2256.c b/drivers/net/wan/framer/pef2256/pef2256.c
index 1e4c8e85d598..a2166b424428 100644
--- a/drivers/net/wan/framer/pef2256/pef2256.c
+++ b/drivers/net/wan/framer/pef2256/pef2256.c
@@ -37,6 +37,7 @@ struct pef2256 {
struct device *dev;
struct regmap *regmap;
enum pef2256_version version;
+ const char *version_txt;
struct clk *mclk;
struct clk *sclkr;
struct clk *sclkx;
@@ -114,6 +115,16 @@ enum pef2256_version pef2256_get_version(struct pef2256 *pef2256)
}
EXPORT_SYMBOL_GPL(pef2256_get_version);
+static ssize_t version_show(struct device *dev, struct device_attribute *attr,
+ char *buf)
+{
+ struct pef2256 *pef2256 = dev_get_drvdata(dev);
+
+ return sysfs_emit(buf, "%s\n", pef2256->version_txt);
+}
+
+static DEVICE_ATTR_RO(version);
+
enum pef2256_gcm_config_item {
PEF2256_GCM_CONFIG_1544000 = 0,
PEF2256_GCM_CONFIG_2048000,
@@ -697,7 +708,6 @@ static int pef2256_probe(struct platform_device *pdev)
unsigned long sclkr_rate, sclkx_rate;
struct framer_provider *framer_provider;
struct pef2256 *pef2256;
- const char *version_txt;
void __iomem *iomem;
int ret;
int irq;
@@ -763,18 +773,18 @@ static int pef2256_probe(struct platform_device *pdev)
pef2256->version = pef2256_get_version(pef2256);
switch (pef2256->version) {
case PEF2256_VERSION_1_2:
- version_txt = "1.2";
+ pef2256->version_txt = "1.2";
break;
case PEF2256_VERSION_2_1:
- version_txt = "2.1";
+ pef2256->version_txt = "2.1";
break;
case PEF2256_VERSION_2_2:
- version_txt = "2.2";
+ pef2256->version_txt = "2.2";
break;
default:
return -ENODEV;
}
- dev_info(pef2256->dev, "Version %s detected\n", version_txt);
+ dev_info(pef2256->dev, "Version %s detected\n", pef2256->version_txt);
ret = pef2556_of_parse(pef2256, np);
if (ret)
@@ -835,6 +845,8 @@ static int pef2256_probe(struct platform_device *pdev)
return ret;
}
+ device_create_file(pef2256->dev, &dev_attr_version);
+
return 0;
}
@@ -849,6 +861,8 @@ static void pef2256_remove(struct platform_device *pdev)
pef2256_write8(pef2256, PEF2256_IMR3, 0xff);
pef2256_write8(pef2256, PEF2256_IMR4, 0xff);
pef2256_write8(pef2256, PEF2256_IMR5, 0xff);
+
+ device_remove_file(pef2256->dev, &dev_attr_version);
}
static const struct of_device_id pef2256_id_table[] = {
--
2.49.0
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [PATCH net-next v2] net: wan: framer: Add version sysfs attribute for the Lantiq PEF2256 framer
2025-09-17 6:24 [PATCH net-next v2] net: wan: framer: Add version sysfs attribute for the Lantiq PEF2256 framer Christophe Leroy
@ 2025-09-17 16:33 ` Simon Horman
2025-09-18 15:45 ` Herve Codina
1 sibling, 0 replies; 3+ messages in thread
From: Simon Horman @ 2025-09-17 16:33 UTC (permalink / raw)
To: Christophe Leroy
Cc: Herve Codina, Andrew Lunn, David S. Miller, Eric Dumazet,
Jakub Kicinski, Paolo Abeni, linux-kernel, netdev
On Wed, Sep 17, 2025 at 08:24:01AM +0200, Christophe Leroy wrote:
> Lantiq PEF2256 framer has some little differences in behaviour
> depending on its version.
>
> Add a sysfs attribute to allow user applications to know the
> version.
>
> Signed-off-by: Christophe Leroy <christophe.leroy@csgroup.eu>
> ---
> v2:
> - Make DEVICE_ATTR_RO(version) static
> - Split version_show() prototype into 2 lines to remain under 80 chars
Thanks for these updates. Sparse and checkpatch are happy now.
>
> v1: https://lore.kernel.org/all/f9aaa89946f1417dc0a5e852702410453e816dbc.1757754689.git.christophe.leroy@csgroup.eu/
...
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH net-next v2] net: wan: framer: Add version sysfs attribute for the Lantiq PEF2256 framer
2025-09-17 6:24 [PATCH net-next v2] net: wan: framer: Add version sysfs attribute for the Lantiq PEF2256 framer Christophe Leroy
2025-09-17 16:33 ` Simon Horman
@ 2025-09-18 15:45 ` Herve Codina
1 sibling, 0 replies; 3+ messages in thread
From: Herve Codina @ 2025-09-18 15:45 UTC (permalink / raw)
To: Christophe Leroy
Cc: Andrew Lunn, David S. Miller, Eric Dumazet, Jakub Kicinski,
Paolo Abeni, linux-kernel, netdev
Hi Christophe,
On Wed, 17 Sep 2025 08:24:01 +0200
Christophe Leroy <christophe.leroy@csgroup.eu> wrote:
> Lantiq PEF2256 framer has some little differences in behaviour
> depending on its version.
>
> Add a sysfs attribute to allow user applications to know the
> version.
>
> Signed-off-by: Christophe Leroy <christophe.leroy@csgroup.eu>
> ---
> v2:
> - Make DEVICE_ATTR_RO(version) static
> - Split version_show() prototype into 2 lines to remain under 80 chars
>
> v1: https://lore.kernel.org/all/f9aaa89946f1417dc0a5e852702410453e816dbc.1757754689.git.christophe.leroy@csgroup.eu/
> ---
> drivers/net/wan/framer/pef2256/pef2256.c | 24 +++++++++++++++++++-----
> 1 file changed, 19 insertions(+), 5 deletions(-)
>
This patch add a new entry in sysfs.
Can you provide the related documentation in /Documentation/ABI/testing/
Best regards,
Hervé
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2025-09-18 15:45 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-09-17 6:24 [PATCH net-next v2] net: wan: framer: Add version sysfs attribute for the Lantiq PEF2256 framer Christophe Leroy
2025-09-17 16:33 ` Simon Horman
2025-09-18 15:45 ` Herve Codina
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).