ccb18c7d51d2ede383f79c7ca979b41827ee084d
[openwrt/openwrt.git] / target / linux / bcm4908 / patches-5.4 / 075-v5.13-0005-net-dsa-bcm_sf2-fix-BCM4908-RGMII-reg-s.patch
1 From 6859d91549341c2ad769d482de58129f080c0f04 Mon Sep 17 00:00:00 2001
2 From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= <rafal@milecki.pl>
3 Date: Thu, 18 Mar 2021 09:01:43 +0100
4 Subject: [PATCH 2/2] net: dsa: bcm_sf2: fix BCM4908 RGMII reg(s)
5 MIME-Version: 1.0
6 Content-Type: text/plain; charset=UTF-8
7 Content-Transfer-Encoding: 8bit
8
9 BCM4908 has only 1 RGMII reg for controlling port 7.
10
11 Fixes: 73b7a6047971 ("net: dsa: bcm_sf2: support BCM4908's integrated switch")
12 Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
13 Acked-by: Florian Fainelli <f.fainelli@gmail.com>
14 Signed-off-by: David S. Miller <davem@davemloft.net>
15 ---
16 drivers/net/dsa/bcm_sf2.c | 11 +++++++----
17 drivers/net/dsa/bcm_sf2_regs.h | 1 +
18 2 files changed, 8 insertions(+), 4 deletions(-)
19
20 --- a/drivers/net/dsa/bcm_sf2.c
21 +++ b/drivers/net/dsa/bcm_sf2.c
22 @@ -35,7 +35,12 @@ static u16 bcm_sf2_reg_rgmii_cntrl(struc
23 {
24 switch (priv->type) {
25 case BCM4908_DEVICE_ID:
26 - /* TODO */
27 + switch (port) {
28 + case 7:
29 + return REG_RGMII_11_CNTRL;
30 + default:
31 + break;
32 + }
33 break;
34 default:
35 switch (port) {
36 @@ -1077,9 +1082,7 @@ static const u16 bcm_sf2_4908_reg_offset
37 [REG_PHY_REVISION] = 0x14,
38 [REG_SPHY_CNTRL] = 0x24,
39 [REG_CROSSBAR] = 0xc8,
40 - [REG_RGMII_0_CNTRL] = 0xe0,
41 - [REG_RGMII_1_CNTRL] = 0xec,
42 - [REG_RGMII_2_CNTRL] = 0xf8,
43 + [REG_RGMII_11_CNTRL] = 0x014c,
44 [REG_LED_0_CNTRL] = 0x40,
45 [REG_LED_1_CNTRL] = 0x4c,
46 [REG_LED_2_CNTRL] = 0x58,
47 --- a/drivers/net/dsa/bcm_sf2_regs.h
48 +++ b/drivers/net/dsa/bcm_sf2_regs.h
49 @@ -21,6 +21,7 @@ enum bcm_sf2_reg_offs {
50 REG_RGMII_0_CNTRL,
51 REG_RGMII_1_CNTRL,
52 REG_RGMII_2_CNTRL,
53 + REG_RGMII_11_CNTRL,
54 REG_LED_0_CNTRL,
55 REG_LED_1_CNTRL,
56 REG_LED_2_CNTRL,