aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/at91/patches-5.10/148-net-macb-Add-default-usrio-config-to-default-gem-con.patch
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/at91/patches-5.10/148-net-macb-Add-default-usrio-config-to-default-gem-con.patch')
-rw-r--r--target/linux/at91/patches-5.10/148-net-macb-Add-default-usrio-config-to-default-gem-con.patch63
1 files changed, 63 insertions, 0 deletions
diff --git a/target/linux/at91/patches-5.10/148-net-macb-Add-default-usrio-config-to-default-gem-con.patch b/target/linux/at91/patches-5.10/148-net-macb-Add-default-usrio-config-to-default-gem-con.patch
new file mode 100644
index 0000000000..2e149cefc5
--- /dev/null
+++ b/target/linux/at91/patches-5.10/148-net-macb-Add-default-usrio-config-to-default-gem-con.patch
@@ -0,0 +1,63 @@
+From 096f58e564aed56936ef6de42a44c3101e9b8ed1 Mon Sep 17 00:00:00 2001
+From: Atish Patra <atish.patra@wdc.com>
+Date: Wed, 3 Mar 2021 11:55:49 -0800
+Subject: [PATCH 148/247] net: macb: Add default usrio config to default gem
+ config
+
+There is no usrio config defined for default gem config leading to
+a kernel panic devices that don't define a data. This issue can be
+reprdouced with microchip polar fire soc where compatible string
+is defined as "cdns,macb".
+
+Fixes: edac63861db7 ("add userio bits as platform configuration")
+
+Signed-off-by: Atish Patra <atish.patra@wdc.com>
+Acked-by: Nicolas Ferre <nicolas.ferre@microchip.com>
+Signed-off-by: David S. Miller <davem@davemloft.net>
+---
+ drivers/net/ethernet/cadence/macb_main.c | 15 ++++++++-------
+ 1 file changed, 8 insertions(+), 7 deletions(-)
+
+diff --git a/drivers/net/ethernet/cadence/macb_main.c b/drivers/net/ethernet/cadence/macb_main.c
+index d5bd640d3fa4..a8d266d72779 100644
+--- a/drivers/net/ethernet/cadence/macb_main.c
++++ b/drivers/net/ethernet/cadence/macb_main.c
+@@ -3837,6 +3837,13 @@ static int macb_init(struct platform_device *pdev)
+ return 0;
+ }
+
++static const struct macb_usrio_config macb_default_usrio = {
++ .mii = MACB_BIT(MII),
++ .rmii = MACB_BIT(RMII),
++ .rgmii = GEM_BIT(RGMII),
++ .refclk = MACB_BIT(CLKEN),
++};
++
+ #if defined(CONFIG_OF)
+ /* 1518 rounded up */
+ #define AT91ETHER_MAX_RBUFF_SZ 0x600
+@@ -4352,13 +4359,6 @@ static int fu540_c000_init(struct platform_device *pdev)
+ return macb_init(pdev);
+ }
+
+-static const struct macb_usrio_config macb_default_usrio = {
+- .mii = MACB_BIT(MII),
+- .rmii = MACB_BIT(RMII),
+- .rgmii = GEM_BIT(RGMII),
+- .refclk = MACB_BIT(CLKEN),
+-};
+-
+ static const struct macb_usrio_config sama7g5_usrio = {
+ .mii = 0,
+ .rmii = 1,
+@@ -4507,6 +4507,7 @@ static const struct macb_config default_gem_config = {
+ .dma_burst_length = 16,
+ .clk_init = macb_clk_init,
+ .init = macb_init,
++ .usrio = &macb_default_usrio,
+ .jumbo_max_len = 10240,
+ };
+
+--
+2.32.0
+