From 392be3a8b32331132e7453e3b03fb123683e6990 Mon Sep 17 00:00:00 2001 From: Vijay Kumar B Date: Wed, 19 Sep 2018 15:23:59 +0530 Subject: [PATCH] drivers: ethernet: Add DTS support for Stellaris Ethernet controller. * Add DTS support for Stellaris ethernet controller. * Add base DTS binding definition for Ethernet. * Add DTS binding definition for Stellaris ethernet controller. Signed-off-by: Fadhel Habeeb Signed-off-by: Nirav Parmar Signed-off-by: Vijay Kumar B --- boards/arm/qemu_cortex_m3/qemu_cortex_m3.dts | 4 +++ dts/arm/ti/lm3s6965.dtsi | 9 ++++++ .../ethernet/ti,stellaris-ethernet.yaml | 31 +++++++++++++++++++ soc/arm/ti_lm3s6965/dts_fixup.h | 10 ++++++ 4 files changed, 54 insertions(+) create mode 100644 dts/bindings/ethernet/ti,stellaris-ethernet.yaml diff --git a/boards/arm/qemu_cortex_m3/qemu_cortex_m3.dts b/boards/arm/qemu_cortex_m3/qemu_cortex_m3.dts index 34e0d56247b..4e810713aa3 100644 --- a/boards/arm/qemu_cortex_m3/qemu_cortex_m3.dts +++ b/boards/arm/qemu_cortex_m3/qemu_cortex_m3.dts @@ -36,3 +36,7 @@ status = "ok"; current-speed = <115200>; }; + +ð { + status = "ok"; +}; diff --git a/dts/arm/ti/lm3s6965.dtsi b/dts/arm/ti/lm3s6965.dtsi index ffa3a19df59..fa4dbe7bf70 100644 --- a/dts/arm/ti/lm3s6965.dtsi +++ b/dts/arm/ti/lm3s6965.dtsi @@ -47,6 +47,15 @@ status = "disabled"; label = "UART_2"; }; + + eth: ethernet@40048000 { + compatible = "ti,stellaris-ethernet"; + reg = <0x40048000 0x3c>; + interrupts = <42 0>; + status = "disabled"; + local-mac-address = [00 00 94 00 83 00]; + label = "ETH"; + }; }; }; diff --git a/dts/bindings/ethernet/ti,stellaris-ethernet.yaml b/dts/bindings/ethernet/ti,stellaris-ethernet.yaml new file mode 100644 index 00000000000..44a5a4dd71a --- /dev/null +++ b/dts/bindings/ethernet/ti,stellaris-ethernet.yaml @@ -0,0 +1,31 @@ +# +# Copyright (c) 2018 Zilogic Systems +# SPDX-License-Identifier: Apache-2.0 +# +--- +title: TI Stellaris Ethernet +version: 0.1 + +description: > + This binding gives a base representation of the TI Stellaris Ethernet + +inherits: + !include ethernet.yaml + +properties: + compatible: + type: string + category: required + description: compatible strings + constraint: "ti,stellaris-ethernet" + reg: + type: array + description: mmio register space + generation: define + category: required + interrupts: + type: array + category: required + description: required interrupts + generation: define +... diff --git a/soc/arm/ti_lm3s6965/dts_fixup.h b/soc/arm/ti_lm3s6965/dts_fixup.h index 147293ac548..514f9e2e415 100644 --- a/soc/arm/ti_lm3s6965/dts_fixup.h +++ b/soc/arm/ti_lm3s6965/dts_fixup.h @@ -1,5 +1,15 @@ /* SoC level DTS fixup file */ #define DT_NUM_IRQ_PRIO_BITS DT_ARM_V7M_NVIC_E000E100_ARM_NUM_IRQ_PRIORITY_BITS +#define DT_ETH_BASE_ADDR DT_TI_STELLARIS_ETHERNET_40048000_BASE_ADDRESS +#define DT_ETH_DRV_NAME DT_TI_STELLARIS_ETHERNET_40048000_LABEL +#define DT_ETH_IRQ DT_TI_STELLARIS_ETHERNET_40048000_IRQ_0 +#define DT_ETH_IRQ_PRIO DT_TI_STELLARIS_ETHERNET_40048000_IRQ_0_PRIORITY +#define DT_ETH_MAC_ADDR_0 DT_TI_STELLARIS_ETHERNET_40048000_LOCAL_MAC_ADDRESS_0 +#define DT_ETH_MAC_ADDR_1 DT_TI_STELLARIS_ETHERNET_40048000_LOCAL_MAC_ADDRESS_1 +#define DT_ETH_MAC_ADDR_2 DT_TI_STELLARIS_ETHERNET_40048000_LOCAL_MAC_ADDRESS_2 +#define DT_ETH_MAC_ADDR_3 DT_TI_STELLARIS_ETHERNET_40048000_LOCAL_MAC_ADDRESS_3 +#define DT_ETH_MAC_ADDR_4 DT_TI_STELLARIS_ETHERNET_40048000_LOCAL_MAC_ADDRESS_4 +#define DT_ETH_MAC_ADDR_5 DT_TI_STELLARIS_ETHERNET_40048000_LOCAL_MAC_ADDRESS_5 /* End of SoC Level DTS fixup file */