mirror of
https://github.com/openwrt/openwrt.git
synced 2024-12-25 08:21:14 +00:00
e58cd453d5
Add kernel support for SAMA7G5 by back-porting mainline kernel patches. Among SAMA7G5 features could be remembered: - ARM Cortex-A7 - double data rate multi-port dynamic RAM controller supporting DDR2, DDR3, DDR3L, LPDDR2, LPDDR3 up to 533MHz - peripherals for audio, video processing - 1 gigabit + 1 megabit Ethernet controllers - 6 CAN controllers - trust zone support - DVFS for CPU - criptography IPs Signed-off-by: Claudiu Beznea <claudiu.beznea@microchip.com>
60 lines
2.1 KiB
Diff
60 lines
2.1 KiB
Diff
From 0085cd8576ceeaddeedf973b939b41ba96e3f77c Mon Sep 17 00:00:00 2001
|
|
From: Claudiu Beznea <claudiu.beznea@microchip.com>
|
|
Date: Wed, 9 Dec 2020 15:03:38 +0200
|
|
Subject: [PATCH 119/247] net: macb: add support for sama7g5 gem interface
|
|
|
|
Add support for SAMA7G5 gigabit ethernet interface.
|
|
|
|
Signed-off-by: Claudiu Beznea <claudiu.beznea@microchip.com>
|
|
Reviewed-by: Andrew Lunn <andrew@lunn.ch>
|
|
Signed-off-by: David S. Miller <davem@davemloft.net>
|
|
---
|
|
drivers/net/ethernet/cadence/macb_main.c | 17 +++++++++++++++++
|
|
1 file changed, 17 insertions(+)
|
|
|
|
diff --git a/drivers/net/ethernet/cadence/macb_main.c b/drivers/net/ethernet/cadence/macb_main.c
|
|
index c8d66f966a8b..ebcc46d8aa9d 100644
|
|
--- a/drivers/net/ethernet/cadence/macb_main.c
|
|
+++ b/drivers/net/ethernet/cadence/macb_main.c
|
|
@@ -4359,6 +4359,14 @@ static const struct macb_usrio_config macb_default_usrio = {
|
|
.refclk = MACB_BIT(CLKEN),
|
|
};
|
|
|
|
+static const struct macb_usrio_config sama7g5_usrio = {
|
|
+ .mii = 0,
|
|
+ .rmii = 1,
|
|
+ .rgmii = 2,
|
|
+ .refclk = BIT(2),
|
|
+ .hdfctlen = BIT(6),
|
|
+};
|
|
+
|
|
static const struct macb_config fu540_c000_config = {
|
|
.caps = MACB_CAPS_GIGABIT_MODE_AVAILABLE | MACB_CAPS_JUMBO |
|
|
MACB_CAPS_GEM_HAS_PTP,
|
|
@@ -4452,6 +4460,14 @@ static const struct macb_config zynq_config = {
|
|
.usrio = &macb_default_usrio,
|
|
};
|
|
|
|
+static const struct macb_config sama7g5_gem_config = {
|
|
+ .caps = MACB_CAPS_GIGABIT_MODE_AVAILABLE | MACB_CAPS_CLK_HW_CHG,
|
|
+ .dma_burst_length = 16,
|
|
+ .clk_init = macb_clk_init,
|
|
+ .init = macb_init,
|
|
+ .usrio = &sama7g5_usrio,
|
|
+};
|
|
+
|
|
static const struct of_device_id macb_dt_ids[] = {
|
|
{ .compatible = "cdns,at32ap7000-macb" },
|
|
{ .compatible = "cdns,at91sam9260-macb", .data = &at91sam9260_config },
|
|
@@ -4469,6 +4485,7 @@ static const struct of_device_id macb_dt_ids[] = {
|
|
{ .compatible = "cdns,zynqmp-gem", .data = &zynqmp_config},
|
|
{ .compatible = "cdns,zynq-gem", .data = &zynq_config },
|
|
{ .compatible = "sifive,fu540-c000-gem", .data = &fu540_c000_config },
|
|
+ { .compatible = "microchip,sama7g5-gem", .data = &sama7g5_gem_config },
|
|
{ /* sentinel */ }
|
|
};
|
|
MODULE_DEVICE_TABLE(of, macb_dt_ids);
|
|
--
|
|
2.32.0
|
|
|