Re: [RESEND 1/1] phy: freescale: imx8qm-hsio: provide regmap names
From: Alexander Stein
Date: Wed Mar 04 2026 - 09:38:34 EST
Hi,
Am Mittwoch, 11. Februar 2026, 16:31:26 CET schrieb Frank Li:
> On Wed, Feb 11, 2026 at 03:49:48PM +0100, Alexander Stein wrote:
> > This driver uses multiple regmaps, which will causes name conflicts
> > in debugfs like:
> > debugfs: '5f1a0000.phy' already exists in 'regmap'
> > Fix this by using a dedicated regmap config for each resource, each
> > having a dedicated regmap name.
> >
> > Signed-off-by: Alexander Stein <alexander.stein@xxxxxxxxxxxxxxx>
> > ---
> Reviewed-by: Frank Li <Frank.Li@xxxxxxx>
gentle ping. Any additional feedback?
Best regards,
Alexander
> > Same as the one sent in December but with an updated CC list.
> >
> > drivers/phy/freescale/phy-fsl-imx8qm-hsio.c | 23 +++++++++++++++++----
> > 1 file changed, 19 insertions(+), 4 deletions(-)
> >
> > diff --git a/drivers/phy/freescale/phy-fsl-imx8qm-hsio.c b/drivers/phy/freescale/phy-fsl-imx8qm-hsio.c
> > index 279b8ac7822df..4ab45c9f53dff 100644
> > --- a/drivers/phy/freescale/phy-fsl-imx8qm-hsio.c
> > +++ b/drivers/phy/freescale/phy-fsl-imx8qm-hsio.c
> > @@ -107,7 +107,22 @@ static const char * const lan2_pcieb_clks[] = {"apb_pclk2", "pclk2", "ctl1_crr",
> > static const char * const lan2_sata_clks[] = {"pclk2", "epcs_tx", "epcs_rx",
> > "phy1_crr", "misc_crr"};
> >
> > -static const struct regmap_config regmap_config = {
> > +static const struct regmap_config regmap_phy_config = {
> > + .name = "phy",
> > + .reg_bits = 32,
> > + .val_bits = 32,
> > + .reg_stride = 4,
> > +};
> > +
> > +static const struct regmap_config regmap_ctrl_config = {
> > + .name = "ctrl",
> > + .reg_bits = 32,
> > + .val_bits = 32,
> > + .reg_stride = 4,
> > +};
> > +
> > +static const struct regmap_config regmap_misc_config = {
> > + .name = "misc",
> > .reg_bits = 32,
> > .val_bits = 32,
> > .reg_stride = 4,
> > @@ -562,19 +577,19 @@ static int imx_hsio_probe(struct platform_device *pdev)
> > return PTR_ERR(priv->base);
> >
> > off = devm_platform_ioremap_resource_byname(pdev, "phy");
> > - priv->phy = devm_regmap_init_mmio(dev, off, ®map_config);
> > + priv->phy = devm_regmap_init_mmio(dev, off, ®map_phy_config);
> > if (IS_ERR(priv->phy))
> > return dev_err_probe(dev, PTR_ERR(priv->phy),
> > "unable to find phy csr registers\n");
> >
> > off = devm_platform_ioremap_resource_byname(pdev, "ctrl");
> > - priv->ctrl = devm_regmap_init_mmio(dev, off, ®map_config);
> > + priv->ctrl = devm_regmap_init_mmio(dev, off, ®map_ctrl_config);
> > if (IS_ERR(priv->ctrl))
> > return dev_err_probe(dev, PTR_ERR(priv->ctrl),
> > "unable to find ctrl csr registers\n");
> >
> > off = devm_platform_ioremap_resource_byname(pdev, "misc");
> > - priv->misc = devm_regmap_init_mmio(dev, off, ®map_config);
> > + priv->misc = devm_regmap_init_mmio(dev, off, ®map_misc_config);
> > if (IS_ERR(priv->misc))
> > return dev_err_probe(dev, PTR_ERR(priv->misc),
> > "unable to find misc csr registers\n");
> > --
> > 2.43.0
> >
>
--
TQ-Systems GmbH | Mühlstraße 2, Gut Delling | 82229 Seefeld, Germany
Amtsgericht München, HRB 105018
Geschäftsführer: Detlef Schneider, Rüdiger Stahl, Stefan Schneider
http://www.tq-group.com/
Attachment:
signature.asc
Description: This is a digitally signed message part.