2023-01-18 09:58:57

by Chunfeng Yun

[permalink] [raw]
Subject: [PATCH v7 2/3] phy: core: add debugfs root

Add a debugfs root for phy class, then phy drivers can add debugfs files
under this folder.

Signed-off-by: Chunfeng Yun <[email protected]>
---
v2~v7: no changes
---
drivers/phy/phy-core.c | 6 ++++++
include/linux/phy/phy.h | 2 ++
2 files changed, 8 insertions(+)

diff --git a/drivers/phy/phy-core.c b/drivers/phy/phy-core.c
index d93ddf1262c5..2f9f69190519 100644
--- a/drivers/phy/phy-core.c
+++ b/drivers/phy/phy-core.c
@@ -11,6 +11,7 @@
#include <linux/export.h>
#include <linux/module.h>
#include <linux/err.h>
+#include <linux/debugfs.h>
#include <linux/device.h>
#include <linux/slab.h>
#include <linux/of.h>
@@ -1204,6 +1205,9 @@ void devm_of_phy_provider_unregister(struct device *dev,
}
EXPORT_SYMBOL_GPL(devm_of_phy_provider_unregister);

+struct dentry *phy_debug_root;
+EXPORT_SYMBOL_GPL(phy_debug_root);
+
/**
* phy_release() - release the phy
* @dev: the dev member within phy
@@ -1233,6 +1237,8 @@ static int __init phy_core_init(void)

phy_class->dev_release = phy_release;

+ phy_debug_root = debugfs_create_dir("phy", NULL);
+
return 0;
}
device_initcall(phy_core_init);
diff --git a/include/linux/phy/phy.h b/include/linux/phy/phy.h
index b1413757fcc3..c398749d49b9 100644
--- a/include/linux/phy/phy.h
+++ b/include/linux/phy/phy.h
@@ -205,6 +205,8 @@ struct phy_lookup {
#define devm_of_phy_provider_register_full(dev, children, xlate) \
__devm_of_phy_provider_register(dev, children, THIS_MODULE, xlate)

+extern struct dentry *phy_debug_root;
+
static inline void phy_set_drvdata(struct phy *phy, void *data)
{
dev_set_drvdata(&phy->dev, data);
--
2.18.0


Subject: Re: [PATCH v7 2/3] phy: core: add debugfs root

Il 18/01/23 09:43, Chunfeng Yun ha scritto:
> Add a debugfs root for phy class, then phy drivers can add debugfs files
> under this folder.
>
> Signed-off-by: Chunfeng Yun <[email protected]>

Reviewed-by: AngeloGioacchino Del Regno <[email protected]>


2023-02-02 13:12:07

by Vinod Koul

[permalink] [raw]
Subject: Re: [PATCH v7 2/3] phy: core: add debugfs root

On 18-01-23, 16:43, Chunfeng Yun wrote:
> Add a debugfs root for phy class, then phy drivers can add debugfs files
> under this folder.
>
> Signed-off-by: Chunfeng Yun <[email protected]>
> ---
> v2~v7: no changes
> ---
> drivers/phy/phy-core.c | 6 ++++++
> include/linux/phy/phy.h | 2 ++
> 2 files changed, 8 insertions(+)
>
> diff --git a/drivers/phy/phy-core.c b/drivers/phy/phy-core.c
> index d93ddf1262c5..2f9f69190519 100644
> --- a/drivers/phy/phy-core.c
> +++ b/drivers/phy/phy-core.c
> @@ -11,6 +11,7 @@
> #include <linux/export.h>
> #include <linux/module.h>
> #include <linux/err.h>
> +#include <linux/debugfs.h>
> #include <linux/device.h>
> #include <linux/slab.h>
> #include <linux/of.h>
> @@ -1204,6 +1205,9 @@ void devm_of_phy_provider_unregister(struct device *dev,
> }
> EXPORT_SYMBOL_GPL(devm_of_phy_provider_unregister);
>
> +struct dentry *phy_debug_root;
> +EXPORT_SYMBOL_GPL(phy_debug_root);

Please make this a member of struct phy, that way all phy drivers have access
to this and we wont need to export this!

> +
> /**
> * phy_release() - release the phy
> * @dev: the dev member within phy
> @@ -1233,6 +1237,8 @@ static int __init phy_core_init(void)
>
> phy_class->dev_release = phy_release;
>
> + phy_debug_root = debugfs_create_dir("phy", NULL);
> +
> return 0;
> }
> device_initcall(phy_core_init);
> diff --git a/include/linux/phy/phy.h b/include/linux/phy/phy.h
> index b1413757fcc3..c398749d49b9 100644
> --- a/include/linux/phy/phy.h
> +++ b/include/linux/phy/phy.h
> @@ -205,6 +205,8 @@ struct phy_lookup {
> #define devm_of_phy_provider_register_full(dev, children, xlate) \
> __devm_of_phy_provider_register(dev, children, THIS_MODULE, xlate)
>
> +extern struct dentry *phy_debug_root;
> +
> static inline void phy_set_drvdata(struct phy *phy, void *data)
> {
> dev_set_drvdata(&phy->dev, data);
> --
> 2.18.0

--
~Vinod

2023-02-07 09:37:28

by Chunfeng Yun

[permalink] [raw]
Subject: Re: [PATCH v7 2/3] phy: core: add debugfs root

On Thu, 2023-02-02 at 18:41 +0530, Vinod Koul wrote:
> On 18-01-23, 16:43, Chunfeng Yun wrote:
> > Add a debugfs root for phy class, then phy drivers can add debugfs
> > files
> > under this folder.
> >
> > Signed-off-by: Chunfeng Yun <[email protected]>
> > ---
> > v2~v7: no changes
> > ---
> > drivers/phy/phy-core.c | 6 ++++++
> > include/linux/phy/phy.h | 2 ++
> > 2 files changed, 8 insertions(+)
> >
> > diff --git a/drivers/phy/phy-core.c b/drivers/phy/phy-core.c
> > index d93ddf1262c5..2f9f69190519 100644
> > --- a/drivers/phy/phy-core.c
> > +++ b/drivers/phy/phy-core.c
> > @@ -11,6 +11,7 @@
> > #include <linux/export.h>
> > #include <linux/module.h>
> > #include <linux/err.h>
> > +#include <linux/debugfs.h>
> > #include <linux/device.h>
> > #include <linux/slab.h>
> > #include <linux/of.h>
> > @@ -1204,6 +1205,9 @@ void devm_of_phy_provider_unregister(struct
> > device *dev,
> > }
> > EXPORT_SYMBOL_GPL(devm_of_phy_provider_unregister);
> >
> > +struct dentry *phy_debug_root;
> > +EXPORT_SYMBOL_GPL(phy_debug_root);
>
> Please make this a member of struct phy, that way all phy drivers
> have access
> to this and we wont need to export this!
Ok, I'll modify it, thanks

>
> > +
> > /**
> > * phy_release() - release the phy
> > * @dev: the dev member within phy
> > @@ -1233,6 +1237,8 @@ static int __init phy_core_init(void)
> >
> > phy_class->dev_release = phy_release;
> >
> > + phy_debug_root = debugfs_create_dir("phy", NULL);
> > +
> > return 0;
> > }
> > device_initcall(phy_core_init);
> > diff --git a/include/linux/phy/phy.h b/include/linux/phy/phy.h
> > index b1413757fcc3..c398749d49b9 100644
> > --- a/include/linux/phy/phy.h
> > +++ b/include/linux/phy/phy.h
> > @@ -205,6 +205,8 @@ struct phy_lookup {
> > #define devm_of_phy_provider_register_full(dev, children, xlate) \
> > __devm_of_phy_provider_register(dev, children, THIS_MODULE,
> > xlate)
> >
> > +extern struct dentry *phy_debug_root;
> > +
> > static inline void phy_set_drvdata(struct phy *phy, void *data)
> > {
> > dev_set_drvdata(&phy->dev, data);
> > --
> > 2.18.0
>
>