Message ID | 20240321015139.437376-1-duanqiangwen@net-swift.com (mailing list archive) |
---|---|
State | Superseded |
Delegated to: | Netdev Maintainers |
Headers | show |
Series | [net,v2] net: txgbe: fix i2c dev name cannot match clkdev | expand |
> -----Original Message----- > From: Duanqiang Wen <duanqiangwen@net-swift.com> > Sent: Thursday, March 21, 2024 9:52 AM > To: netdev@vger.kernel.org; jiawenwu@trustnetic.com; mengyuanlou@net-swift.com; davem@davemloft.net; > edumazet@google.com; kuba@kernel.org; pabeni@redhat.com; maciej.fijalkowski@intel.com; andrew@lunn.ch; > wangxiongfeng2@huawei.com; linux-kernel@vger.kernel.org > Cc: Duanqiang Wen <duanqiangwen@net-swift.com> > Subject: [PATCH net v2] net: txgbe: fix i2c dev name cannot match clkdev > > txgbe clkdev shortened clk_name, so i2c_dev info_name > also need to shorten. Otherwise, i2c_dev cannot initialize > clock. And had "i2c_dw" string in a define. > > Fixes: e30cef001da2 ("net: txgbe: fix clk_name exceed MAX_DEV_ID limits") > > Signed-off-by: Duanqiang Wen <duanqiangwen@net-swift.com> > --- > drivers/net/ethernet/wangxun/txgbe/txgbe_phy.c | 6 +++--- > drivers/net/ethernet/wangxun/txgbe/txgbe_phy.h | 2 ++ > 2 files changed, 5 insertions(+), 3 deletions(-) > > diff --git a/drivers/net/ethernet/wangxun/txgbe/txgbe_phy.c b/drivers/net/ethernet/wangxun/txgbe/txgbe_phy.c > index 5b5d5e4310d1..3f61f161f1ed 100644 > --- a/drivers/net/ethernet/wangxun/txgbe/txgbe_phy.c > +++ b/drivers/net/ethernet/wangxun/txgbe/txgbe_phy.c > @@ -571,8 +571,8 @@ static int txgbe_clock_register(struct txgbe *txgbe) > char clk_name[32]; > struct clk *clk; > > - snprintf(clk_name, sizeof(clk_name), "i2c_dw.%d", > - pci_dev_id(pdev)); > + snprintf(clk_name, sizeof(clk_name), "%s.%d", > + TXGBE_I2C_CLK_DEV_NAME, pci_dev_id(pdev)); > > clk = clk_register_fixed_rate(NULL, clk_name, NULL, 0, 156250000); > if (IS_ERR(clk)) > @@ -634,7 +634,7 @@ static int txgbe_i2c_register(struct txgbe *txgbe) > > info.parent = &pdev->dev; > info.fwnode = software_node_fwnode(txgbe->nodes.group[SWNODE_I2C]); > - info.name = "i2c_designware"; > + info.name = TXGBE_I2C_CLK_DEV_NAME; > info.id = pci_dev_id(pdev); > > info.res = &DEFINE_RES_IRQ(pdev->irq); > diff --git a/drivers/net/ethernet/wangxun/txgbe/txgbe_phy.h b/drivers/net/ethernet/wangxun/txgbe/txgbe_phy.h > index 8a026d804fe2..c7f2157f3d95 100644 > --- a/drivers/net/ethernet/wangxun/txgbe/txgbe_phy.h > +++ b/drivers/net/ethernet/wangxun/txgbe/txgbe_phy.h > @@ -4,6 +4,8 @@ > #ifndef _TXGBE_PHY_H_ > #define _TXGBE_PHY_H_ > > +#define TXGBE_I2C_CLK_DEV_NAME "i2c_dw" Please add the define in txgbe_type.h > + > irqreturn_t txgbe_gpio_irq_handler(int irq, void *data); > void txgbe_reinit_gpio_intr(struct wx *wx); > irqreturn_t txgbe_link_irq_handler(int irq, void *data); > -- > 2.27.0 >
Thu, Mar 21, 2024 at 02:58:24AM CET, jiawenwu@trustnetic.com wrote: > > >> -----Original Message----- >> From: Duanqiang Wen <duanqiangwen@net-swift.com> >> Sent: Thursday, March 21, 2024 9:52 AM >> To: netdev@vger.kernel.org; jiawenwu@trustnetic.com; mengyuanlou@net-swift.com; davem@davemloft.net; >> edumazet@google.com; kuba@kernel.org; pabeni@redhat.com; maciej.fijalkowski@intel.com; andrew@lunn.ch; >> wangxiongfeng2@huawei.com; linux-kernel@vger.kernel.org >> Cc: Duanqiang Wen <duanqiangwen@net-swift.com> >> Subject: [PATCH net v2] net: txgbe: fix i2c dev name cannot match clkdev >> >> txgbe clkdev shortened clk_name, so i2c_dev info_name >> also need to shorten. Otherwise, i2c_dev cannot initialize >> clock. And had "i2c_dw" string in a define. >> >> Fixes: e30cef001da2 ("net: txgbe: fix clk_name exceed MAX_DEV_ID limits") >> >> Signed-off-by: Duanqiang Wen <duanqiangwen@net-swift.com> >> --- >> drivers/net/ethernet/wangxun/txgbe/txgbe_phy.c | 6 +++--- >> drivers/net/ethernet/wangxun/txgbe/txgbe_phy.h | 2 ++ >> 2 files changed, 5 insertions(+), 3 deletions(-) >> >> diff --git a/drivers/net/ethernet/wangxun/txgbe/txgbe_phy.c b/drivers/net/ethernet/wangxun/txgbe/txgbe_phy.c >> index 5b5d5e4310d1..3f61f161f1ed 100644 >> --- a/drivers/net/ethernet/wangxun/txgbe/txgbe_phy.c >> +++ b/drivers/net/ethernet/wangxun/txgbe/txgbe_phy.c >> @@ -571,8 +571,8 @@ static int txgbe_clock_register(struct txgbe *txgbe) >> char clk_name[32]; >> struct clk *clk; >> >> - snprintf(clk_name, sizeof(clk_name), "i2c_dw.%d", >> - pci_dev_id(pdev)); >> + snprintf(clk_name, sizeof(clk_name), "%s.%d", >> + TXGBE_I2C_CLK_DEV_NAME, pci_dev_id(pdev)); >> >> clk = clk_register_fixed_rate(NULL, clk_name, NULL, 0, 156250000); >> if (IS_ERR(clk)) >> @@ -634,7 +634,7 @@ static int txgbe_i2c_register(struct txgbe *txgbe) >> >> info.parent = &pdev->dev; >> info.fwnode = software_node_fwnode(txgbe->nodes.group[SWNODE_I2C]); >> - info.name = "i2c_designware"; >> + info.name = TXGBE_I2C_CLK_DEV_NAME; >> info.id = pci_dev_id(pdev); >> >> info.res = &DEFINE_RES_IRQ(pdev->irq); >> diff --git a/drivers/net/ethernet/wangxun/txgbe/txgbe_phy.h b/drivers/net/ethernet/wangxun/txgbe/txgbe_phy.h >> index 8a026d804fe2..c7f2157f3d95 100644 >> --- a/drivers/net/ethernet/wangxun/txgbe/txgbe_phy.h >> +++ b/drivers/net/ethernet/wangxun/txgbe/txgbe_phy.h >> @@ -4,6 +4,8 @@ >> #ifndef _TXGBE_PHY_H_ >> #define _TXGBE_PHY_H_ >> >> +#define TXGBE_I2C_CLK_DEV_NAME "i2c_dw" > >Please add the define in txgbe_type.h Well, since it is used in txgbe_phy.c, it should be probably rather defined locally in txgbe_phy.c. Anyhow Reviewed-by: Jiri Pirko <jiri@nvidia.com> > >> + >> irqreturn_t txgbe_gpio_irq_handler(int irq, void *data); >> void txgbe_reinit_gpio_intr(struct wx *wx); >> irqreturn_t txgbe_link_irq_handler(int irq, void *data); >> -- >> 2.27.0 >> > >
diff --git a/drivers/net/ethernet/wangxun/txgbe/txgbe_phy.c b/drivers/net/ethernet/wangxun/txgbe/txgbe_phy.c index 5b5d5e4310d1..3f61f161f1ed 100644 --- a/drivers/net/ethernet/wangxun/txgbe/txgbe_phy.c +++ b/drivers/net/ethernet/wangxun/txgbe/txgbe_phy.c @@ -571,8 +571,8 @@ static int txgbe_clock_register(struct txgbe *txgbe) char clk_name[32]; struct clk *clk; - snprintf(clk_name, sizeof(clk_name), "i2c_dw.%d", - pci_dev_id(pdev)); + snprintf(clk_name, sizeof(clk_name), "%s.%d", + TXGBE_I2C_CLK_DEV_NAME, pci_dev_id(pdev)); clk = clk_register_fixed_rate(NULL, clk_name, NULL, 0, 156250000); if (IS_ERR(clk)) @@ -634,7 +634,7 @@ static int txgbe_i2c_register(struct txgbe *txgbe) info.parent = &pdev->dev; info.fwnode = software_node_fwnode(txgbe->nodes.group[SWNODE_I2C]); - info.name = "i2c_designware"; + info.name = TXGBE_I2C_CLK_DEV_NAME; info.id = pci_dev_id(pdev); info.res = &DEFINE_RES_IRQ(pdev->irq); diff --git a/drivers/net/ethernet/wangxun/txgbe/txgbe_phy.h b/drivers/net/ethernet/wangxun/txgbe/txgbe_phy.h index 8a026d804fe2..c7f2157f3d95 100644 --- a/drivers/net/ethernet/wangxun/txgbe/txgbe_phy.h +++ b/drivers/net/ethernet/wangxun/txgbe/txgbe_phy.h @@ -4,6 +4,8 @@ #ifndef _TXGBE_PHY_H_ #define _TXGBE_PHY_H_ +#define TXGBE_I2C_CLK_DEV_NAME "i2c_dw" + irqreturn_t txgbe_gpio_irq_handler(int irq, void *data); void txgbe_reinit_gpio_intr(struct wx *wx); irqreturn_t txgbe_link_irq_handler(int irq, void *data);
txgbe clkdev shortened clk_name, so i2c_dev info_name also need to shorten. Otherwise, i2c_dev cannot initialize clock. And had "i2c_dw" string in a define. Fixes: e30cef001da2 ("net: txgbe: fix clk_name exceed MAX_DEV_ID limits") Signed-off-by: Duanqiang Wen <duanqiangwen@net-swift.com> --- drivers/net/ethernet/wangxun/txgbe/txgbe_phy.c | 6 +++--- drivers/net/ethernet/wangxun/txgbe/txgbe_phy.h | 2 ++ 2 files changed, 5 insertions(+), 3 deletions(-)