Skip to contentSkip to conversation

ARM64: amlogic: add support for the S905W and two boards

PATCH New Martin Blumenstingl 3 participants 12 messages Jul 14, 2018 – Jul 20, 2018

Subsystems (2)
lore
Share & tools
lore

Martin Blumenstingl

author reviewer
#0 lore raw

v2 cover ARM64: amlogic: add support for the S905W and two boards

The goal of this series is to to add support for the Amlogic S905W SoC along with Amlogic's P281 development board and the Tanix TX3 Mini (which both use the S905W SoC).

I am sending this as request-for-comments because I would like to get feedback specifically on:
- the naming of the new vendor "Oranth" and their brand "Tanix". more information regarding their relation can be found in patch #1
- I do not have access to the P281 development board (nor any documentation apart from what is available in Amlogic's GPL kernel sources). thus it would be great if someone from Amlogic could confirm that my .dts is working
- the S905W SoC is a cost-reduced version of the S905X SoC. I have documented the differences that I am aware of in patch #2. none of these changes require adjustments to any existing driver/binding because these changes are either handled in the SCPI firmware (CPU frequency and DDR interface) or there is no Linux support for them yet (4k HDMI resolutions and the HW video decoder)

changes since RfC v1 at [0]:
- dropped RfC prefix
- collected Rob's Reviewed-by on patches 1-3
- dropped meson-gxl-s905w.dtsi and include meson-gxl-s905x.dtsi instead as suggested by Kevin and as already done with the new P241 board (which uses the GXL S805X SoC instead of S905W though)
- rebased on top of Kevin's v4.19/dt64 branch to apply cleanly on top of f51b3da8f18d50 ("ARM64: dts: add S805X based P241 board")

[0] http://lists.infradead.org/pipermail/linux-amlogic/2018-June/007517.html

Martin Blumenstingl (5):
dt-bindings: add vendor prefix for Shenzhen Oranth Technology Co.,
Ltd.
dt-bindings: arm: amlogic: Add support for GXL S905W and the P281
board
dt-bindings: arm: amlogic: Add support for the Oranth Tanix TX3 Mini
ARM64: dts: meson-gxl: add support for the S905W SoC and the P281
board
ARM64: dts: meson-gxl: add support for the Oranth Tanix TX3 Mini

 .../devicetree/bindings/arm/amlogic.txt       |  7 ++++++
 .../devicetree/bindings/vendor-prefixes.txt   |  1 +
 arch/arm64/boot/dts/amlogic/Makefile          |  2 ++
 .../boot/dts/amlogic/meson-gxl-s905w-p281.dts | 22 +++++++++++++++++++
 .../dts/amlogic/meson-gxl-s905w-tx3-mini.dts  | 22 +++++++++++++++++++
 5 files changed, 54 insertions(+)
 create mode 100644 arch/arm64/boot/dts/amlogic/meson-gxl-s905w-p281.dts
 create mode 100644 arch/arm64/boot/dts/amlogic/meson-gxl-s905w-tx3-mini.dts
Signature · 1 line
2.18.0
author reviewer
#1 lore raw

PATCH v2 1/5 dt-bindings: add vendor prefix for Shenzhen Oranth Technology Co., Ltd.

According to their website (http://www.oranth.com/about-oranth/)
Shenzhen Oranth Technology Co., Ltd. (or simply "Oranth") "is a professional Design House & Manufacturer for Android TV Box established in 2014". One of their brands is Tanix (sometimes also spelled "TANIX").

One of their most popular devices is the "Tanix TX3 Mini" TV box (which uses the Amlogic S905W chipset).

---
 Documentation/devicetree/bindings/vendor-prefixes.txt | 1 +
 1 file changed, 1 insertion(+)
Documentation/devicetree/bindings/vendor-prefixes.txt +1 -0
index 7cad066191ee..5b9a96d863ee 100644
@@ -271,6 +271,7 @@ opalkelly	Opal Kelly Incorporated
 opencores	OpenCores.org
 openrisc	OpenRISC.io
 option	Option NV
+oranth	Shenzhen Oranth Technology Co., Ltd.
 ORCL	Oracle Corporation
 orisetech	Orise Technology
 ortustech	Ortus Technology Co., Ltd.
Signature · 1 line
2.18.0
author reviewer
#2 lore raw

PATCH v2 2/5 dt-bindings: arm: amlogic: Add support for GXL S905W and the P281 board

In reply to Martin Blumenstingl

S905W SoC is another SoC from the GXL family. It is a cost-reduced version of the S905X SoC. The following differences are known:
- S905W supports HDMI resolutions up to 4k at 30fps (while S905X support resolutions up to 4k at 60fps)
- the built-in video decoders of S905W decode up to 4k at 30fps (while S905X supports decoding up to 4k at 60fps)
- CPU speed on S905W is limited to 1.2GHz (compared to 1.5GHz on S905X, this is handled in the SCPI firmware)
- the DRAM interface on S905W is limited to 16-bit (GXL supports both, 16-bit and 32-bit)

Notes based on Amlogic's GPL kernel sources:
- the P281 is a development board from Amlogic which uses the S905W SoC. Amlogic's GPL kernel sources indicate that it uses the same PCB layout as the "P231" board (and simply replaces the S905D from the original P231 board with a S905W SoC).
- it is assumed that the S905W SoC is pin-compatible with the S905X SoC since Amlogic's GPL kernel sources use the same driver for both SoCs.
- gxl_p281_1g.dts contains a comment which mentions that "max gp pll for gpu is 650M, temporarily disabled". However, it seems to boot fine with 744MHz (as used on GXBB and the other GXL SoCs).

---
 Documentation/devicetree/bindings/arm/amlogic.txt | 6 ++++++
 1 file changed, 6 insertions(+)
Documentation/devicetree/bindings/arm/amlogic.txt +6 -0
index 849834cb1766..8178da8742c3 100644
@@ -45,6 +45,10 @@ Boards with the Amlogic Meson GXL S805X SoC shall have the following properties:
   Required root node property:
     compatible: "amlogic,s805x", "amlogic,meson-gxl";
 
+Boards with the Amlogic Meson GXL S905W SoC shall have the following properties:
+  Required root node property:
+    compatible: "amlogic,s905w", "amlogic,meson-gxl";
+
 Boards with the Amlogic Meson GXM S912 SoC shall have the following properties:
   Required root node property:
     compatible: "amlogic,s912", "amlogic,meson-gxm";
@@ -85,6 +89,8 @@ Board compatible values (alphabetically, grouped by SoC):
 
   - "amlogic,p241" (Meson gxl s805x)
 
+  - "amlogic,p281" (Meson gxl s905w)
+
   - "amlogic,q200" (Meson gxm s912)
   - "amlogic,q201" (Meson gxm s912)
   - "khadas,vim2" (Meson gxm s912)
Signature · 1 line
2.18.0
#3 lore raw

PATCH v2 2/5 dt-bindings: arm: amlogic: Add support for GXL S905W and the P281 board

Hi Martin,

Quoted 45 lines · Martin Blumenstingl

S905W SoC is another SoC from the GXL family. It is a cost-reduced version of the S905X SoC. The following differences are known:
- S905W supports HDMI resolutions up to 4k at 30fps (while S905X support resolutions up to 4k at 60fps)
- the built-in video decoders of S905W decode up to 4k at 30fps (while S905X supports decoding up to 4k at 60fps)
- CPU speed on S905W is limited to 1.2GHz (compared to 1.5GHz on S905X, this is handled in the SCPI firmware)
- the DRAM interface on S905W is limited to 16-bit (GXL supports both, 16-bit and 32-bit)

Notes based on Amlogic's GPL kernel sources:
- the P281 is a development board from Amlogic which uses the S905W SoC. Amlogic's GPL kernel sources indicate that it uses the same PCB layout as the "P231" board (and simply replaces the S905D from the original P231 board with a S905W SoC).
- it is assumed that the S905W SoC is pin-compatible with the S905X SoC since Amlogic's GPL kernel sources use the same driver for both SoCs.
- gxl_p281_1g.dts contains a comment which mentions that "max gp pll for gpu is 650M, temporarily disabled". However, it seems to boot fine with 744MHz (as used on GXBB and the other GXL SoCs).

---
 Documentation/devicetree/bindings/arm/amlogic.txt | 6 ++++++
 1 file changed, 6 insertions(+)
Documentation/devicetree/bindings/arm/amlogic.txt +4 -0
index 849834cb1766..8178da8742c3 100644
@@ -45,6 +45,10 @@ Boards with the Amlogic Meson GXL S805X SoC shall have the following properties:
   Required root node property:
     compatible: "amlogic,s805x", "amlogic,meson-gxl";
 
+Boards with the Amlogic Meson GXL S905W SoC shall have the following properties:
+  Required root node property:
+    compatible: "amlogic,s905w", "amlogic,meson-gxl";
+
 Boards with the Amlogic Meson GXM S912 SoC shall have the following properties:
   Required root node property:
     compatible: "amlogic,s912", "amlogic,meson-gxm";

Documentation/devicetree/bindings/arm/amlogic.txt Board compatible values (alphabetically, grouped by SoC): · line 96

Quoted 8 lines
Documentation/devicetree/bindings/arm/amlogic.txt +2 -0
@@ -85,6 +89,8 @@ Board compatible values (alphabetically, grouped by SoC):
 
   - "amlogic,p241" (Meson gxl s805x)
 
+  - "amlogic,p281" (Meson gxl s905w)
+
   - "amlogic,q200" (Meson gxm s912)
   - "amlogic,q201" (Meson gxm s912)
   - "khadas,vim2" (Meson gxm s912)
author reviewer
#4 lore raw

PATCH v2 3/5 dt-bindings: arm: amlogic: Add support for the Oranth Tanix TX3 Mini

In reply to Martin Blumenstingl

The Tanix TX3 Mini is a TV box based on the Amlogic S905W chipset. It comes with:
- 1 GiB or 2 GiB of DDR3 memory depending on the model
- 8 GB or 16 GB eMMC flash depending on the model
- 802.11 b/g/n wifi (Silicon Valley Microelectronics SSV6051, does not support Bluetooth, not supported by any mailine driver)
- an LED 7 segment display with an FD628 controller (not supported by any mainline driver)
- HDMI and AV (CVBS) output
- 2x USB (utilizing both USB ports provided by the SoC)
- micro SD card slot

The board seems to be very similar to the P23x and Q20x reference boards:
- eMMC reset routed to BOOT_9
- the SDIO wifi chip's reset line is routed to GPIOX_6 and the reference clock is 32.768KHz on PWM_E
- SD card detection is routed to CARD_6
- vqmmc of all MMC controllers is hard-wired to 1.8V (VDDIO_BOOT)
- uart_AO can be accessed after opening the case and soldering RX, TX and GND lines onto the exposed solder points (marked with RX, TX and GND)

---
 Documentation/devicetree/bindings/arm/amlogic.txt | 1 +
 1 file changed, 1 insertion(+)
Documentation/devicetree/bindings/arm/amlogic.txt +1 -0
index 8178da8742c3..b5c2b5c35766 100644
@@ -90,6 +90,7 @@ Board compatible values (alphabetically, grouped by SoC):
   - "amlogic,p241" (Meson gxl s805x)
 
   - "amlogic,p281" (Meson gxl s905w)
+  - "oranth,tx3-mini" (Meson gxl s905w)
 
   - "amlogic,q200" (Meson gxm s912)
   - "amlogic,q201" (Meson gxm s912)
Signature · 1 line
2.18.0
#5 lore raw

PATCH v2 3/5 dt-bindings: arm: amlogic: Add support for the Oranth Tanix TX3 Mini

Hi Martin,

Quoted 8 lines · Martin Blumenstingl

The Tanix TX3 Mini is a TV box based on the Amlogic S905W chipset. It comes with:
- 1 GiB or 2 GiB of DDR3 memory depending on the model
- 8 GB or 16 GB eMMC flash depending on the model
- 802.11 b/g/n wifi (Silicon Valley Microelectronics SSV6051, does not support Bluetooth, not supported by any mailine driver)
- an LED 7 segment display with an FD628 controller (not supported by any mainline driver)

Because all the 7segments drivers were rejected since forever ! Some google guys tried once to push a sort of framework, but they lacked multiple drivers using their framework...

Quoted 27 lines

- HDMI and AV (CVBS) output
- 2x USB (utilizing both USB ports provided by the SoC)
- micro SD card slot

The board seems to be very similar to the P23x and Q20x reference boards:
- eMMC reset routed to BOOT_9
- the SDIO wifi chip's reset line is routed to GPIOX_6 and the reference clock is 32.768KHz on PWM_E
- SD card detection is routed to CARD_6
- vqmmc of all MMC controllers is hard-wired to 1.8V (VDDIO_BOOT)
- uart_AO can be accessed after opening the case and soldering RX, TX and GND lines onto the exposed solder points (marked with RX, TX and GND)

---
 Documentation/devicetree/bindings/arm/amlogic.txt | 1 +
 1 file changed, 1 insertion(+)
Documentation/devicetree/bindings/arm/amlogic.txt +0 -0
index 8178da8742c3..b5c2b5c35766 100644

Documentation/devicetree/bindings/arm/amlogic.txt Board compatible values (alphabetically, grouped by SoC): · line 96

Quoted 7 lines
Documentation/devicetree/bindings/arm/amlogic.txt +1 -0
@@ -90,6 +90,7 @@ Board compatible values (alphabetically, grouped by SoC):
   - "amlogic,p241" (Meson gxl s805x)
 
   - "amlogic,p281" (Meson gxl s905w)
+  - "oranth,tx3-mini" (Meson gxl s905w)
 
   - "amlogic,q200" (Meson gxm s912)
   - "amlogic,q201" (Meson gxm s912)
author reviewer
#6 lore raw

PATCH v2 4/5 ARM64: dts: meson-gxl: add support for the S905W SoC and the P281 board

In reply to Martin Blumenstingl

S905W is a new SoC from the GXL series. It is a cost-reduced version of the S905X.
The P281 development board from Amlogic uses the same layout as the P231 (S905D development board). Thus the new P281 board inherits meson-gx-p23x-q20x.dtsi to avoid code-duplication.

---
 arch/arm64/boot/dts/amlogic/Makefile          |  1 +
 .../boot/dts/amlogic/meson-gxl-s905w-p281.dts | 22 +++++++++++++++++++
 2 files changed, 23 insertions(+)
 create mode 100644 arch/arm64/boot/dts/amlogic/meson-gxl-s905w-p281.dts
arch/arm64/boot/dts/amlogic/Makefile +1 -0
index 4dcffb0e3536..e55156dec237 100644
@@ -18,6 +18,7 @@ dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s905x-p212.dtb
 dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s905d-p230.dtb
 dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s905d-p231.dtb
 dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s805x-p241.dtb
+dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s905w-p281.dtb
 dtb-$(CONFIG_ARCH_MESON) += meson-gxm-khadas-vim2.dtb
 dtb-$(CONFIG_ARCH_MESON) += meson-gxm-nexbox-a1.dtb
 dtb-$(CONFIG_ARCH_MESON) += meson-gxm-q200.dtb
arch/arm64/boot/dts/amlogic/meson-gxl-s905w-p281.dts new file +22 -0
new file mode 100644
index 000000000000..6509c4950950
@@ -0,0 +1,22 @@
+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
+/*
+ * Copyright (c) 2018 Martin Blumenstingl <[email protected]>.
+ * Based on meson-gxl-s905d-p231.dts:
+ * - Copyright (c) 2016 Endless Computers, Inc.
+ *   Author: Carlo Caione <[email protected]>
+ */
+
+/dts-v1/;
+
+#include "meson-gxl-s905x.dtsi"
+#include "meson-gx-p23x-q20x.dtsi"
+
+/ {
+	compatible = "amlogic,p281", "amlogic,s905w", "amlogic,meson-gxl";
+	model = "Amlogic Meson GXL (S905W) P281 Development Board";
+
+	memory at 0 {
+		device_type = "memory";
+		reg = <0x0 0x0 0x0 0x40000000>;
+	};
+};
Signature · 1 line
2.18.0
#7 lore raw

PATCH v2 4/5 ARM64: dts: meson-gxl: add support for the S905W SoC and the P281 board

Quoted 2 lines · Martin Blumenstingl

S905W is a new SoC from the GXL series. It is a cost-reduced version of the S905X.

I'd say it's a variant of the already-cost-reduced S905X with the S905D package, but seems your description is still valid !

Quoted 42 lines

The P281 development board from Amlogic uses the same layout as the P231 (S905D development board). Thus the new P281 board inherits meson-gx-p23x-q20x.dtsi to avoid code-duplication.

---
 arch/arm64/boot/dts/amlogic/Makefile          |  1 +
 .../boot/dts/amlogic/meson-gxl-s905w-p281.dts | 22 +++++++++++++++++++
 2 files changed, 23 insertions(+)
 create mode 100644 arch/arm64/boot/dts/amlogic/meson-gxl-s905w-p281.dts
arch/arm64/boot/dts/amlogic/Makefile +1 -0
index 4dcffb0e3536..e55156dec237 100644
@@ -18,6 +18,7 @@ dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s905x-p212.dtb
 dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s905d-p230.dtb
 dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s905d-p231.dtb
 dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s805x-p241.dtb
+dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s905w-p281.dtb
 dtb-$(CONFIG_ARCH_MESON) += meson-gxm-khadas-vim2.dtb
 dtb-$(CONFIG_ARCH_MESON) += meson-gxm-nexbox-a1.dtb
 dtb-$(CONFIG_ARCH_MESON) += meson-gxm-q200.dtb
arch/arm64/boot/dts/amlogic/meson-gxl-s905w-p281.dts new file +12 -0
new file mode 100644
index 000000000000..6509c4950950
@@ -0,0 +1,22 @@
+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
+/*
+ * Copyright (c) 2018 Martin Blumenstingl <[email protected]>.
+ * Based on meson-gxl-s905d-p231.dts:
+ * - Copyright (c) 2016 Endless Computers, Inc.
+ *   Author: Carlo Caione <[email protected]>
+ */
+
+/dts-v1/;
+
+#include "meson-gxl-s905x.dtsi"
+#include "meson-gx-p23x-q20x.dtsi"

arch/arm64/boot/dts/amlogic/meson-gxl-s905w-p281.dts line 22

Quoted 10 lines
arch/arm64/boot/dts/amlogic/meson-gxl-s905w-p281.dts new file +10 -0
+
+/ {
+	compatible = "amlogic,p281", "amlogic,s905w", "amlogic,meson-gxl";
+	model = "Amlogic Meson GXL (S905W) P281 Development Board";
+
+	memory at 0 {
+		device_type = "memory";
+		reg = <0x0 0x0 0x0 0x40000000>;
+	};
+};
author reviewer
#8 lore raw

PATCH v2 5/5 ARM64: dts: meson-gxl: add support for the Oranth Tanix TX3 Mini

In reply to Martin Blumenstingl

The Tanix TX3 Mini is a TV box based on the Amlogic S905W chipset. There are two variants:
- 1 GiB or 2 GiB of DDR3 memory
- 8 GB or 16 GB eMMC flash

Both variants come with:
- 802.11 b/g/n wifi (Silicon Valley Microelectronics SSV6051, does not support Bluetooth)
- an LED 7 segment display with an FD628 controller
- HDMI and AV (CVBS) output
- 2x USB (utilizing both USB ports provided by the SoC)
- micro SD card slot
- serial console (uart_AO) has to be soldered after opening the case

The board seems to be very similar to the P23x and Q20x reference boards, which is why it includes meson-gx-p23x-q20x.dtsi:
- eMMC reset routed to BOOT_9
- the SDIO wifi chip's reset line is routed to GPIOX_6 and the reference clock is 32.768KHz on PWM_E
- SD card detection is routed to CARD_6
- vqmmc of all MMC controllers is hard-wired to 1.8V (VDDIO_BOOT)
- uart_AO can be accessed after opening the case and soldering RX, TX and GND lines onto the exposed solder points (marked with RX, TX and GND)

---
 arch/arm64/boot/dts/amlogic/Makefile          |  1 +
 .../dts/amlogic/meson-gxl-s905w-tx3-mini.dts  | 22 +++++++++++++++++++
 2 files changed, 23 insertions(+)
 create mode 100644 arch/arm64/boot/dts/amlogic/meson-gxl-s905w-tx3-mini.dts
arch/arm64/boot/dts/amlogic/Makefile +1 -0
index e55156dec237..a97c0e2d7bc6 100644
@@ -19,6 +19,7 @@ dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s905d-p230.dtb
 dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s905d-p231.dtb
 dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s805x-p241.dtb
 dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s905w-p281.dtb
+dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s905w-tx3-mini.dtb
 dtb-$(CONFIG_ARCH_MESON) += meson-gxm-khadas-vim2.dtb
 dtb-$(CONFIG_ARCH_MESON) += meson-gxm-nexbox-a1.dtb
 dtb-$(CONFIG_ARCH_MESON) += meson-gxm-q200.dtb
arch/arm64/boot/dts/amlogic/meson-gxl-s905w-tx3-mini.dts new file +22 -0
new file mode 100644
index 000000000000..789c819c99c4
@@ -0,0 +1,22 @@
+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
+/*
+ * Copyright (c) 2018 Martin Blumenstingl <[email protected]>.
+ * Based on meson-gxl-s905d-p231.dts:
+ * - Copyright (c) 2016 Endless Computers, Inc.
+ *   Author: Carlo Caione <[email protected]>
+ */
+
+/dts-v1/;
+
+#include "meson-gxl-s905x.dtsi"
+#include "meson-gx-p23x-q20x.dtsi"
+
+/ {
+	compatible = "oranth,tx3-mini", "amlogic,s905w", "amlogic,meson-gxl";
+	model = "Oranth Tanix TX3 Mini";
+
+	memory at 0 {
+		device_type = "memory";
+		reg = <0x0 0x0 0x0 0x40000000>; /* 1 GiB or 2 GiB */
+	};
+};
Signature · 1 line
2.18.0
#9 lore raw

PATCH v2 5/5 ARM64: dts: meson-gxl: add support for the Oranth Tanix TX3 Mini

Quoted 5 lines · Martin Blumenstingl

The Tanix TX3 Mini is a TV box based on the Amlogic S905W chipset. There are two variants:
- 1 GiB or 2 GiB of DDR3 memory
- 8 GB or 16 GB eMMC flash

Quoted 8 lines

Both variants come with:
- 802.11 b/g/n wifi (Silicon Valley Microelectronics SSV6051, does not support Bluetooth)
- an LED 7 segment display with an FD628 controller
- HDMI and AV (CVBS) output
- 2x USB (utilizing both USB ports provided by the SoC)
- micro SD card slot
- serial console (uart_AO) has to be soldered after opening the case

So it's 10/100 ethernet ? Only to confirm !

Quoted 50 lines

The board seems to be very similar to the P23x and Q20x reference boards, which is why it includes meson-gx-p23x-q20x.dtsi:
- eMMC reset routed to BOOT_9
- the SDIO wifi chip's reset line is routed to GPIOX_6 and the reference clock is 32.768KHz on PWM_E
- SD card detection is routed to CARD_6
- vqmmc of all MMC controllers is hard-wired to 1.8V (VDDIO_BOOT)
- uart_AO can be accessed after opening the case and soldering RX, TX and GND lines onto the exposed solder points (marked with RX, TX and GND)

---
 arch/arm64/boot/dts/amlogic/Makefile          |  1 +
 .../dts/amlogic/meson-gxl-s905w-tx3-mini.dts  | 22 +++++++++++++++++++
 2 files changed, 23 insertions(+)
 create mode 100644 arch/arm64/boot/dts/amlogic/meson-gxl-s905w-tx3-mini.dts
arch/arm64/boot/dts/amlogic/Makefile +1 -0
index e55156dec237..a97c0e2d7bc6 100644
@@ -19,6 +19,7 @@ dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s905d-p230.dtb
 dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s905d-p231.dtb
 dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s805x-p241.dtb
 dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s905w-p281.dtb
+dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s905w-tx3-mini.dtb
 dtb-$(CONFIG_ARCH_MESON) += meson-gxm-khadas-vim2.dtb
 dtb-$(CONFIG_ARCH_MESON) += meson-gxm-nexbox-a1.dtb
 dtb-$(CONFIG_ARCH_MESON) += meson-gxm-q200.dtb
arch/arm64/boot/dts/amlogic/meson-gxl-s905w-tx3-mini.dts new file +12 -0
new file mode 100644
index 000000000000..789c819c99c4
@@ -0,0 +1,22 @@
+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
+/*
+ * Copyright (c) 2018 Martin Blumenstingl <[email protected]>.
+ * Based on meson-gxl-s905d-p231.dts:
+ * - Copyright (c) 2016 Endless Computers, Inc.
+ *   Author: Carlo Caione <[email protected]>
+ */
+
+/dts-v1/;
+
+#include "meson-gxl-s905x.dtsi"
+#include "meson-gx-p23x-q20x.dtsi"

arch/arm64/boot/dts/amlogic/meson-gxl-s905w-tx3-mini.dts line 22

Quoted 10 lines
arch/arm64/boot/dts/amlogic/meson-gxl-s905w-tx3-mini.dts new file +10 -0
+
+/ {
+	compatible = "oranth,tx3-mini", "amlogic,s905w", "amlogic,meson-gxl";
+	model = "Oranth Tanix TX3 Mini";
+
+	memory at 0 {
+		device_type = "memory";
+		reg = <0x0 0x0 0x0 0x40000000>; /* 1 GiB or 2 GiB */
+	};
+};
author reviewer
#10 lore raw

PATCH v2 5/5 ARM64: dts: meson-gxl: add support for the Oranth Tanix TX3 Mini

Quoted 16 lines · Neil Armstrong
Quoted 5 lines · Martin Blumenstingl

The Tanix TX3 Mini is a TV box based on the Amlogic S905W chipset. There are two variants:
- 1 GiB or 2 GiB of DDR3 memory
- 8 GB or 16 GB eMMC flash

Quoted 8 lines

Both variants come with:
- 802.11 b/g/n wifi (Silicon Valley Microelectronics SSV6051, does not support Bluetooth)
- an LED 7 segment display with an FD628 controller
- HDMI and AV (CVBS) output
- 2x USB (utilizing both USB ports provided by the SoC)
- micro SD card slot
- serial console (uart_AO) has to be soldered after opening the case

Quoted 1 line

So it's 10/100 ethernet ? Only to confirm !

yes, 10/100 Ethernet (using the internal PHY) is available as well

Quoted 54 lines
Quoted 54 lines

The board seems to be very similar to the P23x and Q20x reference boards, which is why it includes meson-gx-p23x-q20x.dtsi:
- eMMC reset routed to BOOT_9
- the SDIO wifi chip's reset line is routed to GPIOX_6 and the reference clock is 32.768KHz on PWM_E
- SD card detection is routed to CARD_6
- vqmmc of all MMC controllers is hard-wired to 1.8V (VDDIO_BOOT)
- uart_AO can be accessed after opening the case and soldering RX, TX and GND lines onto the exposed solder points (marked with RX, TX and GND)

---
 arch/arm64/boot/dts/amlogic/Makefile          |  1 +
 .../dts/amlogic/meson-gxl-s905w-tx3-mini.dts  | 22 +++++++++++++++++++
 2 files changed, 23 insertions(+)
 create mode 100644 arch/arm64/boot/dts/amlogic/meson-gxl-s905w-tx3-mini.dts
arch/arm64/boot/dts/amlogic/Makefile +1 -0
index e55156dec237..a97c0e2d7bc6 100644
@@ -19,6 +19,7 @@ dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s905d-p230.dtb
 dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s905d-p231.dtb
 dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s805x-p241.dtb
 dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s905w-p281.dtb
+dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s905w-tx3-mini.dtb
 dtb-$(CONFIG_ARCH_MESON) += meson-gxm-khadas-vim2.dtb
 dtb-$(CONFIG_ARCH_MESON) += meson-gxm-nexbox-a1.dtb
 dtb-$(CONFIG_ARCH_MESON) += meson-gxm-q200.dtb
arch/arm64/boot/dts/amlogic/meson-gxl-s905w-tx3-mini.dts new file +17 -0
new file mode 100644
index 000000000000..789c819c99c4
@@ -0,0 +1,22 @@
+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
+/*
+ * Copyright (c) 2018 Martin Blumenstingl <[email protected]>.
+ * Based on meson-gxl-s905d-p231.dts:
+ * - Copyright (c) 2016 Endless Computers, Inc.
+ *   Author: Carlo Caione <[email protected]>
+ */
+
+/dts-v1/;
+
+#include "meson-gxl-s905x.dtsi"
+#include "meson-gx-p23x-q20x.dtsi"
+
+/ {
+     compatible = "oranth,tx3-mini", "amlogic,s905w", "amlogic,meson-gxl";
+     model = "Oranth Tanix TX3 Mini";
+
Quoted 8 lines

arch/arm64/boot/dts/amlogic/meson-gxl-s905w-tx3-mini.dts line 22

Quoted 6 lines
arch/arm64/boot/dts/amlogic/meson-gxl-s905w-tx3-mini.dts new file +5 -0
+     memory at 0 {
+             device_type = "memory";
+             reg = <0x0 0x0 0x0 0x40000000>; /* 1 GiB or 2 GiB */
+     };
+};

thank you for reviewing the whole series!

Regards
Martin

maintainer
#11 lore raw

v2 cover ARM64: amlogic: add support for the S905W and two boards

In reply to Martin Blumenstingl
Quoted 6 lines · Martin Blumenstingl

The goal of this series is to to add support for the Amlogic S905W SoC along with Amlogic's P281 development board and the Tanix TX3 Mini (which both use the S905W SoC).

I am sending this as request-for-comments because I would like to get feedback specifically on:

You still mention RFC here, but since it's removed from the subject, I'm guessing you're not still looking for comments.

So, applied to v4.19/dt64 with Neil's tags.

Kevin