]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/blob - releases/6.6.26/net-txgbe-fix-i2c-dev-name-cannot-match-clkdev.patch
Linux 6.6.26
[thirdparty/kernel/stable-queue.git] / releases / 6.6.26 / net-txgbe-fix-i2c-dev-name-cannot-match-clkdev.patch
1 From c644920ce9220d83e070f575a4df711741c07f07 Mon Sep 17 00:00:00 2001
2 From: Duanqiang Wen <duanqiangwen@net-swift.com>
3 Date: Tue, 2 Apr 2024 10:18:43 +0800
4 Subject: net: txgbe: fix i2c dev name cannot match clkdev
5
6 From: Duanqiang Wen <duanqiangwen@net-swift.com>
7
8 commit c644920ce9220d83e070f575a4df711741c07f07 upstream.
9
10 txgbe clkdev shortened clk_name, so i2c_dev info_name
11 also need to shorten. Otherwise, i2c_dev cannot initialize
12 clock.
13
14 Fixes: e30cef001da2 ("net: txgbe: fix clk_name exceed MAX_DEV_ID limits")
15 Signed-off-by: Duanqiang Wen <duanqiangwen@net-swift.com>
16 Link: https://lore.kernel.org/r/20240402021843.126192-1-duanqiangwen@net-swift.com
17 Signed-off-by: Jakub Kicinski <kuba@kernel.org>
18 Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
19 ---
20 drivers/net/ethernet/wangxun/txgbe/txgbe_phy.c | 8 +++++---
21 1 file changed, 5 insertions(+), 3 deletions(-)
22
23 --- a/drivers/net/ethernet/wangxun/txgbe/txgbe_phy.c
24 +++ b/drivers/net/ethernet/wangxun/txgbe/txgbe_phy.c
25 @@ -20,6 +20,8 @@
26 #include "txgbe_phy.h"
27 #include "txgbe_hw.h"
28
29 +#define TXGBE_I2C_CLK_DEV_NAME "i2c_dw"
30 +
31 static int txgbe_swnodes_register(struct txgbe *txgbe)
32 {
33 struct txgbe_nodes *nodes = &txgbe->nodes;
34 @@ -551,8 +553,8 @@ static int txgbe_clock_register(struct t
35 char clk_name[32];
36 struct clk *clk;
37
38 - snprintf(clk_name, sizeof(clk_name), "i2c_dw.%d",
39 - pci_dev_id(pdev));
40 + snprintf(clk_name, sizeof(clk_name), "%s.%d",
41 + TXGBE_I2C_CLK_DEV_NAME, pci_dev_id(pdev));
42
43 clk = clk_register_fixed_rate(NULL, clk_name, NULL, 0, 156250000);
44 if (IS_ERR(clk))
45 @@ -614,7 +616,7 @@ static int txgbe_i2c_register(struct txg
46
47 info.parent = &pdev->dev;
48 info.fwnode = software_node_fwnode(txgbe->nodes.group[SWNODE_I2C]);
49 - info.name = "i2c_designware";
50 + info.name = TXGBE_I2C_CLK_DEV_NAME;
51 info.id = pci_dev_id(pdev);
52
53 info.res = &DEFINE_RES_IRQ(pdev->irq);