Skip to contentSkip to conversation

Add support for Airoha EN7523 SoC

PATCH In review Bert Vermeulen 3 participants 9 messages Sep 8, 2021 – Sep 21, 2021

Subsystems (3)
lore
Share & tools
lore
#0 lore raw

v3 cover Add support for Airoha EN7523 SoC

This patchset adds support for the Airoha EN7523 SoC, intended primarily for xPON/xDSL routers.

v3:
- s/armv7/armv8 in commit message
- Fixed dt-bindings vendor ordering
- Removed CONFIG_COMMON_CLK_EN7523 reference for now

v2:
- The company changed name from EcoNet to Airoha.
- Removed Makefile text offset in lieu of /memreserve/ DTS node (see
https://lists.infradead.org/pipermail/linux-arm-kernel/2021-September/681898.html)
- DTS: Moved /memory node, fixed CPU compatible, removed GIC_CPU_MASK_SIMPLE from timer interrupts node, changed timer compatible, and minor fixes.

John Crispin (5):
dt-bindings: Add vendor prefix for Airoha
dt-bindings: arm: airoha: Add binding for EN7523 SoC and EVB
ARM: dts: Add basic support for Airoha EN7523
ARM: Add basic support for Airoha EN7523 SoC
ARM: multi_v7_defconfig: Add support for Airoha EN7523 SoC

 .../devicetree/bindings/arm/airoha.yaml       |  27 +++++
 .../devicetree/bindings/vendor-prefixes.yaml  |   2 +
 arch/arm/Kconfig                              |  14 +++
 arch/arm/boot/dts/Makefile                    |   2 +
 arch/arm/boot/dts/en7523-evb.dts              |  26 ++++
 arch/arm/boot/dts/en7523.dtsi                 | 114 ++++++++++++++++++
 arch/arm/configs/multi_v7_defconfig           |   1 +
 7 files changed, 186 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/arm/airoha.yaml
 create mode 100644 arch/arm/boot/dts/en7523-evb.dts
 create mode 100644 arch/arm/boot/dts/en7523.dtsi
Signature · 1 line
2.25.1
#1 lore raw

PATCH v3 1/5 dt-bindings: Add vendor prefix for Airoha

From: John Crispin <[email protected]>

Add vendor prefix "airoha" for Airoha.

---
 Documentation/devicetree/bindings/vendor-prefixes.yaml | 2 ++
 1 file changed, 2 insertions(+)
Documentation/devicetree/bindings/vendor-prefixes.yaml +2 -0
index 07fb0d25fc15..4090589fabbe 100644
@@ -59,6 +59,8 @@ patternProperties:
     description: Aeroflex Gaisler AB
   "^aesop,.*":
     description: AESOP Embedded Forum
+  "^airoha,.*":
+    description: Airoha
   "^al,.*":
     description: Annapurna Labs
   "^alcatel,.*":
Signature · 1 line
2.25.1
maintainer Acked-by on v3 1/5
#2 lore raw

Re: [PATCH v3 1/5] dt-bindings: Add vendor prefix for Airoha

Quoted 10 lines · Bert Vermeulen

From: John Crispin <[email protected]>

Add vendor prefix "airoha" for Airoha.

---
 Documentation/devicetree/bindings/vendor-prefixes.yaml | 2 ++
 1 file changed, 2 insertions(+)

_______________________________________________
linux-arm-kernel mailing list
[email protected]
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

#3 lore raw

PATCH v3 2/5 dt-bindings: arm: airoha: Add binding for EN7523 SoC and EVB

In reply to Bert Vermeulen

From: John Crispin <[email protected]>

Add devicetree binding for Airoha EN7523 SoC and evaluation board.

---
 .../devicetree/bindings/arm/airoha.yaml       | 27 +++++++++++++++++++
 1 file changed, 27 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/arm/airoha.yaml
Documentation/devicetree/bindings/arm/airoha.yaml new file +27 -0
new file mode 100644
index 000000000000..f2661ba81109
@@ -0,0 +1,27 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/arm/airoha.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Airoha SoC based Platforms Device Tree Bindings
+
+maintainers:
+  - Felix Fietkau <[email protected]>
+  - John Crispin <[email protected]>
+description: |
+  Boards with an Airoha SoC shall have the following properties.
+
+properties:
+  $nodename:
+    const: '/'
+  compatible:
+    oneOf:
+      - items:
+          - enum:
+              - airoha,en7523-evb
+          - const: airoha,en7523
+
+additionalProperties: true
+
+...
Signature · 1 line
2.25.1
maintainer
#4 lore raw

Re: [PATCH v3 2/5] dt-bindings: arm: airoha: Add binding for EN7523 SoC and EVB

Quoted 18 lines · Bert Vermeulen

From: John Crispin <[email protected]>

Add devicetree binding for Airoha EN7523 SoC and evaluation board.

---
 .../devicetree/bindings/arm/airoha.yaml       | 27 +++++++++++++++++++
 1 file changed, 27 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/arm/airoha.yaml
Documentation/devicetree/bindings/arm/airoha.yaml new file +1 -0
new file mode 100644
index 000000000000..f2661ba81109
@@ -0,0 +1,27 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)

Documentation/devicetree/bindings/arm/airoha.yaml line 11

Quoted 10 lines
Documentation/devicetree/bindings/arm/airoha.yaml new file +10 -0
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/arm/airoha.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Airoha SoC based Platforms Device Tree Bindings
+
+maintainers:
+  - Felix Fietkau <[email protected]>
+  - John Crispin <[email protected]>

Blank line.

Documentation/devicetree/bindings/arm/airoha.yaml line 12

Quoted 1 line
Documentation/devicetree/bindings/arm/airoha.yaml new file +1 -0
+description: |

Don't need '|' here.

Documentation/devicetree/bindings/arm/airoha.yaml line 19

Quoted 7 lines
Documentation/devicetree/bindings/arm/airoha.yaml new file +7 -0
+  Boards with an Airoha SoC shall have the following properties.
+
+properties:
+  $nodename:
+    const: '/'
+  compatible:
+    oneOf:

Don't need oneOf with only 1 entry.

Quoted 12 lines
Documentation/devicetree/bindings/arm/airoha.yaml new file +8 -0
+      - items:
+          - enum:
+              - airoha,en7523-evb
+          - const: airoha,en7523
+
+additionalProperties: true
+
+...
Signature · 1 line
2.25.1

_______________________________________________
linux-arm-kernel mailing list
[email protected]
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

#5 lore raw

PATCH v3 3/5 ARM: dts: Add basic support for Airoha EN7523

In reply to Bert Vermeulen

From: John Crispin <[email protected]>

Add basic support for Airoha EN7523, enough for booting to console.

The UART is basically 8250-compatible, except for the clock selection. A clock-frequency value is synthesized to get this to run at 115200 bps.

---
 arch/arm/boot/dts/Makefile       |   2 +
 arch/arm/boot/dts/en7523-evb.dts |  26 +++++++
 arch/arm/boot/dts/en7523.dtsi    | 114 +++++++++++++++++++++++++++++++
 3 files changed, 142 insertions(+)
 create mode 100644 arch/arm/boot/dts/en7523-evb.dts
 create mode 100644 arch/arm/boot/dts/en7523.dtsi
arch/arm/boot/dts/Makefile +2 -0
index 863347b6b65e..3525ace2d2e0 100644
@@ -174,6 +174,8 @@ dtb-$(CONFIG_ARCH_DAVINCI) += \
 	da850-lego-ev3.dtb
 dtb-$(CONFIG_ARCH_DIGICOLOR) += \
 	cx92755_equinox.dtb
+dtb-$(CONFIG_ARCH_AIROHA) += \
+	en7523-evb.dtb
 dtb-$(CONFIG_ARCH_EXYNOS3) += \
 	exynos3250-artik5-eval.dtb \
 	exynos3250-monk.dtb \
arch/arm/boot/dts/en7523-evb.dts new file +26 -0
new file mode 100644
index 000000000000..fa595b97bdd8
@@ -0,0 +1,26 @@
+// SPDX-License-Identifier: GPL-2.0
+/dts-v1/;
+
+/* Bootloader installs ATF here */
+/memreserve/ 0x80000000 0x80000;
+
+#include "en7523.dtsi"
+
+/ {
+	model = "Airoha EN7523 Evaluation Board";
+	compatible = "airoha,en7523-evb", "airoha,en7523";
+
+	aliases {
+		serial0 = &uart1;
+	};
+
+	chosen {
+		bootargs = "earlycon=uart8250,mmio32,0x1fbf0000 console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
+	};
+
+	memory@80000000 {
+		device_type = "memory";
+		reg = <0x80000000 0x20000000>;
+	};
+};
arch/arm/boot/dts/en7523.dtsi new file +114 -0

114 lines not on this page · raw message

Signature · 1 line
2.25.1
#6 lore raw

PATCH v3 4/5 ARM: Add basic support for Airoha EN7523 SoC

In reply to Bert Vermeulen

From: John Crispin <[email protected]>

EN7523 is an armv8 based silicon used inside broadband access type devices such as xPON and xDSL. It shares various silicon blocks with MediaTek silicon such as the MT7622.

---
 arch/arm/Kconfig | 14 ++++++++++++++
 1 file changed, 14 insertions(+)
arch/arm/Kconfig +14 -0
index 82f908fa5676..4c210df05c77 100644
@@ -580,6 +580,20 @@ config ARCH_VIRT
 	select HAVE_ARM_ARCH_TIMER
 	select ARCH_SUPPORTS_BIG_ENDIAN
 
+config ARCH_AIROHA
+	bool "Airoha SoC Support"
+	depends on ARCH_MULTI_V7
+	select ARM_AMBA
+	select ARM_GIC
+	select ARM_GIC_V3
+	select ARM_DMA_USE_IOMMU
+	select ARM_PSCI
+	select HAVE_ARM_ARCH_TIMER
+	select IOMMU_DMA
+	select COMMON_CLK
+	help
+	  Support for Airoha EN7523 SoCs
+
 #
 # This is sorted alphabetically by mach-* pathname.  However, plat-*
 # Kconfigs may be included either alphabetically (according to the
Signature · 1 line
2.25.1
#7 lore raw

PATCH v3 5/5 ARM: multi_v7_defconfig: Add support for Airoha EN7523 SoC

In reply to Bert Vermeulen

From: John Crispin <[email protected]>

This enables basic bootup support for the Airoha EN7523 SoC.

---
 arch/arm/configs/multi_v7_defconfig | 1 +
 1 file changed, 1 insertion(+)
arch/arm/configs/multi_v7_defconfig +1 -0
index d9abaae118dd..922650200d74 100644
@@ -31,6 +31,7 @@ CONFIG_MACH_BERLIN_BG2=y
 CONFIG_MACH_BERLIN_BG2CD=y
 CONFIG_MACH_BERLIN_BG2Q=y
 CONFIG_ARCH_DIGICOLOR=y
+CONFIG_ARCH_AIROHA=y
 CONFIG_ARCH_EXYNOS=y
 CONFIG_ARCH_HIGHBANK=y
 CONFIG_ARCH_HISI=y
Signature · 1 line
2.25.1
Reviewed-by on the v3 series
#8 lore raw
In reply to Bert Vermeulen
Quoted 7 lines · Bert Vermeulen

This patchset adds support for the Airoha EN7523 SoC, intended primarily for xPON/xDSL routers.

v3:
- s/armv7/armv8 in commit message
- Fixed dt-bindings vendor ordering
- Removed CONFIG_COMMON_CLK_EN7523 reference for now

This v3 patch set looks good to me.

Yours,
Linus Walleij