* [PATCH 1/2] dt-bindings: arm: amlogic: add OSMC Vero 4K
@ 2024-06-06 9:54 Christian Hewitt
2024-06-06 9:54 ` [PATCH 2/2] arm64: dts: meson: add support for " Christian Hewitt
2024-06-06 12:35 ` [PATCH 1/2] dt-bindings: arm: amlogic: add " Krzysztof Kozlowski
0 siblings, 2 replies; 5+ messages in thread
From: Christian Hewitt @ 2024-06-06 9:54 UTC (permalink / raw)
To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Neil Armstrong,
Kevin Hilman, Jerome Brunet, Martin Blumenstingl, devicetree,
linux-arm-kernel, linux-amlogic, linux-kernel
Cc: Christian Hewitt
Add support for the OSMC Vero 4K Linux-based STB
Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
---
Documentation/devicetree/bindings/arm/amlogic.yaml | 1 +
1 file changed, 1 insertion(+)
diff --git a/Documentation/devicetree/bindings/arm/amlogic.yaml b/Documentation/devicetree/bindings/arm/amlogic.yaml
index b39eb17abbba..0647851ae1f5 100644
--- a/Documentation/devicetree/bindings/arm/amlogic.yaml
+++ b/Documentation/devicetree/bindings/arm/amlogic.yaml
@@ -91,6 +91,7 @@ properties:
- libretech,aml-s905x-cc
- libretech,aml-s905x-cc-v2
- nexbox,a95x
+ - osmc,vero4k
- const: amlogic,s905x
- const: amlogic,meson-gxl
--
2.34.1
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [PATCH 2/2] arm64: dts: meson: add support for OSMC Vero 4K
2024-06-06 9:54 [PATCH 1/2] dt-bindings: arm: amlogic: add OSMC Vero 4K Christian Hewitt
@ 2024-06-06 9:54 ` Christian Hewitt
2024-06-07 8:07 ` Neil Armstrong
2024-06-06 12:35 ` [PATCH 1/2] dt-bindings: arm: amlogic: add " Krzysztof Kozlowski
1 sibling, 1 reply; 5+ messages in thread
From: Christian Hewitt @ 2024-06-06 9:54 UTC (permalink / raw)
To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Neil Armstrong,
Kevin Hilman, Jerome Brunet, Martin Blumenstingl, devicetree,
linux-arm-kernel, linux-amlogic, linux-kernel
Cc: Christian Hewitt
The OSMC Vero 4K device is based on the Amlogic S905X (P212)
reference design with the following specifications:
- 2GB DDR4 RAM
- 16GB eMMC
- HDMI 2.1 video
- S/PDIF optical output
- AV output
- 10/100 Ethernet
- AP6255 Wireless (802.11 a/b/g/n/ac, BT 4.2)
- 2x USB 2.0 ports (1x OTG)
- IR receiver (internal)
- IR extender port (external)
- 1x micro SD card slot
- 1x Power LED (red)
- 1x Reset button (in AV jack)
Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
---
arch/arm64/boot/dts/amlogic/Makefile | 7 +
.../dts/amlogic/meson-gxl-s905x-vero4k.dts | 202 ++++++++++++++++++
2 files changed, 209 insertions(+)
create mode 100644 arch/arm64/boot/dts/amlogic/meson-gxl-s905x-vero4k.dts
diff --git a/arch/arm64/boot/dts/amlogic/Makefile b/arch/arm64/boot/dts/amlogic/Makefile
index 4addcae2c54e..78941ddd3136 100644
--- a/arch/arm64/boot/dts/amlogic/Makefile
+++ b/arch/arm64/boot/dts/amlogic/Makefile
@@ -55,6 +55,13 @@ dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s905d-p231.dtb
dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s905d-phicomm-n1.dtb
dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s905d-sml5442tw.dtb
dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s905d-vero4k-plus.dtb
+dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s905x-hwacom-amazetv.dtb
+dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s905x-khadas-vim.dtb
+dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s905x-libretech-cc.dtb
+dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s905x-libretech-cc-v2.dtb
+dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s905x-nexbox-a95x.dtb
+dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s905x-p212.dtb
+dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s905x-vero4k.dtb
dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s905w-jethome-jethub-j80.dtb
dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s905w-p281.dtb
dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s905w-tx3-mini.dtb
diff --git a/arch/arm64/boot/dts/amlogic/meson-gxl-s905x-vero4k.dts b/arch/arm64/boot/dts/amlogic/meson-gxl-s905x-vero4k.dts
new file mode 100644
index 000000000000..b325cd75a792
--- /dev/null
+++ b/arch/arm64/boot/dts/amlogic/meson-gxl-s905x-vero4k.dts
@@ -0,0 +1,202 @@
+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
+/*
+ * Copyright (c) 2024 Christian Hewitt <christianshewitt@gmail.com>
+ */
+
+/dts-v1/;
+
+#include "meson-gxl-s905x-p212.dtsi"
+#include <dt-bindings/input/input.h>
+#include <dt-bindings/leds/common.h>
+#include <dt-bindings/sound/meson-aiu.h>
+
+/ {
+ compatible = "osmc,vero4k", "amlogic,s905x", "amlogic,meson-gxl";
+ model = "OSMC Vero 4K";
+
+ reserved-memory {
+ /* 32 MiB reserved for ARM Trusted Firmware (BL32) */
+ secmon_reserved_bl32: secmon@5300000 {
+ reg = <0x0 0x05300000 0x0 0x2000000>;
+ no-map;
+ };
+ };
+
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ poll-interval = <20>;
+
+ button {
+ label = "power";
+ linux,code = <KEY_POWER>;
+ gpios = <&gpio_ao GPIOAO_2 GPIO_ACTIVE_HIGH>;
+ };
+ };
+
+ leds {
+ compatible = "gpio-leds";
+
+ led-standby {
+ color = <LED_COLOR_ID_RED>;
+ function = LED_FUNCTION_POWER;
+ gpios = <&gpio GPIODV_24 GPIO_ACTIVE_LOW>;
+ default-state = "off";
+ panic-indicator;
+ };
+ };
+
+ dio2133: analog-amplifier {
+ compatible = "simple-audio-amplifier";
+ sound-name-prefix = "AU2";
+ VCC-supply = <&hdmi_5v>;
+ enable-gpios = <&gpio GPIOH_5 GPIO_ACTIVE_HIGH>;
+ };
+
+ spdif_dit: audio-codec-0 {
+ #sound-dai-cells = <0>;
+ compatible = "linux,spdif-dit";
+ sound-name-prefix = "DIT";
+ };
+
+ cvbs-connector {
+ compatible = "composite-video-connector";
+
+ port {
+ cvbs_connector_in: endpoint {
+ remote-endpoint = <&cvbs_vdac_out>;
+ };
+ };
+ };
+
+ hdmi-connector {
+ compatible = "hdmi-connector";
+ type = "a";
+
+ port {
+ hdmi_connector_in: endpoint {
+ remote-endpoint = <&hdmi_tx_tmds_out>;
+ };
+ };
+ };
+
+ sound {
+ compatible = "amlogic,gx-sound-card";
+ model = "VERO4K";
+ audio-aux-devs = <&dio2133>;
+ audio-widgets = "Line", "Lineout";
+ audio-routing = "AU2 INL", "ACODEC LOLP",
+ "AU2 INR", "ACODEC LORP",
+ "AU2 INL", "ACODEC LOLN",
+ "AU2 INR", "ACODEC LORN",
+ "Lineout", "AU2 OUTL",
+ "Lineout", "AU2 OUTR";
+
+ dai-link-0 {
+ sound-dai = <&aiu AIU_CPU CPU_I2S_FIFO>;
+ };
+
+ dai-link-1 {
+ sound-dai = <&aiu AIU_CPU CPU_SPDIF_FIFO>;
+ };
+
+ dai-link-2 {
+ sound-dai = <&aiu AIU_CPU CPU_I2S_ENCODER>;
+ dai-format = "i2s";
+ mclk-fs = <256>;
+
+ codec-0 {
+ sound-dai = <&aiu AIU_HDMI CTRL_I2S>;
+ };
+
+ codec-1 {
+ sound-dai = <&aiu AIU_ACODEC CTRL_I2S>;
+ };
+ };
+
+ dai-link-3 {
+ sound-dai = <&aiu AIU_CPU CPU_SPDIF_ENCODER>;
+
+ codec-0 {
+ sound-dai = <&spdif_dit>;
+ };
+ };
+
+ dai-link-4 {
+ sound-dai = <&aiu AIU_HDMI CTRL_OUT>;
+
+ codec-0 {
+ sound-dai = <&hdmi_tx>;
+ };
+ };
+
+ dai-link-5 {
+ sound-dai = <&aiu AIU_ACODEC CTRL_OUT>;
+
+ codec-0 {
+ sound-dai = <&acodec>;
+ };
+ };
+ };
+};
+
+&acodec {
+ AVDD-supply = <&vddio_ao18>;
+ status = "okay";
+};
+
+&aiu {
+ status = "okay";
+ pinctrl-0 = <&spdif_out_h_pins>;
+ pinctrl-names = "default";
+};
+
+&cec_AO {
+ status = "okay";
+ pinctrl-0 = <&ao_cec_pins>;
+ pinctrl-names = "default";
+ hdmi-phandle = <&hdmi_tx>;
+};
+
+&clkc {
+ assigned-clocks = <&clkc CLKID_MPLL0>,
+ <&clkc CLKID_MPLL1>,
+ <&clkc CLKID_MPLL2>;
+ assigned-clock-parents = <0>, <0>, <0>;
+ assigned-clock-rates = <294912000>,
+ <270950400>,
+ <393216000>;
+};
+
+&cvbs_vdac_port {
+ cvbs_vdac_out: endpoint {
+ remote-endpoint = <&cvbs_connector_in>;
+ };
+};
+
+ðmac {
+ phy-mode = "rmii";
+ phy-handle = <&internal_phy>;
+};
+
+&hdmi_tx {
+ status = "okay";
+ pinctrl-0 = <&hdmi_hpd_pins>, <&hdmi_i2c_pins>;
+ pinctrl-names = "default";
+ hdmi-supply = <&hdmi_5v>;
+};
+
+&hdmi_tx_tmds_port {
+ hdmi_tx_tmds_out: endpoint {
+ remote-endpoint = <&hdmi_connector_in>;
+ };
+};
+
+&internal_phy {
+ pinctrl-0 = <ð_link_led_pins>, <ð_act_led_pins>;
+ pinctrl-names = "default";
+};
+
+/* This UART is brought out to the DB9 connector */
+&uart_AO {
+ status = "okay";
+};
--
2.34.1
^ permalink raw reply related [flat|nested] 5+ messages in thread
* Re: [PATCH 1/2] dt-bindings: arm: amlogic: add OSMC Vero 4K
2024-06-06 9:54 [PATCH 1/2] dt-bindings: arm: amlogic: add OSMC Vero 4K Christian Hewitt
2024-06-06 9:54 ` [PATCH 2/2] arm64: dts: meson: add support for " Christian Hewitt
@ 2024-06-06 12:35 ` Krzysztof Kozlowski
1 sibling, 0 replies; 5+ messages in thread
From: Krzysztof Kozlowski @ 2024-06-06 12:35 UTC (permalink / raw)
To: Christian Hewitt, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
Neil Armstrong, Kevin Hilman, Jerome Brunet, Martin Blumenstingl,
devicetree, linux-arm-kernel, linux-amlogic, linux-kernel
On 06/06/2024 11:54, Christian Hewitt wrote:
> Add support for the OSMC Vero 4K Linux-based STB
>
> Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
> ---
> Documentation/devicetree/bindings/arm/amlogic.yaml | 1 +
Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Best regards,
Krzysztof
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH 2/2] arm64: dts: meson: add support for OSMC Vero 4K
2024-06-06 9:54 ` [PATCH 2/2] arm64: dts: meson: add support for " Christian Hewitt
@ 2024-06-07 8:07 ` Neil Armstrong
2024-06-19 14:07 ` Neil Armstrong
0 siblings, 1 reply; 5+ messages in thread
From: Neil Armstrong @ 2024-06-07 8:07 UTC (permalink / raw)
To: Christian Hewitt, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
Kevin Hilman, Jerome Brunet, Martin Blumenstingl, devicetree,
linux-arm-kernel, linux-amlogic, linux-kernel
On 06/06/2024 11:54, Christian Hewitt wrote:
> The OSMC Vero 4K device is based on the Amlogic S905X (P212)
> reference design with the following specifications:
>
> - 2GB DDR4 RAM
> - 16GB eMMC
> - HDMI 2.1 video
> - S/PDIF optical output
> - AV output
> - 10/100 Ethernet
> - AP6255 Wireless (802.11 a/b/g/n/ac, BT 4.2)
> - 2x USB 2.0 ports (1x OTG)
> - IR receiver (internal)
> - IR extender port (external)
> - 1x micro SD card slot
> - 1x Power LED (red)
> - 1x Reset button (in AV jack)
>
> Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
> ---
> arch/arm64/boot/dts/amlogic/Makefile | 7 +
> .../dts/amlogic/meson-gxl-s905x-vero4k.dts | 202 ++++++++++++++++++
> 2 files changed, 209 insertions(+)
> create mode 100644 arch/arm64/boot/dts/amlogic/meson-gxl-s905x-vero4k.dts
>
> diff --git a/arch/arm64/boot/dts/amlogic/Makefile b/arch/arm64/boot/dts/amlogic/Makefile
> index 4addcae2c54e..78941ddd3136 100644
> --- a/arch/arm64/boot/dts/amlogic/Makefile
> +++ b/arch/arm64/boot/dts/amlogic/Makefile
> @@ -55,6 +55,13 @@ dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s905d-p231.dtb
> dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s905d-phicomm-n1.dtb
> dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s905d-sml5442tw.dtb
> dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s905d-vero4k-plus.dtb
> +dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s905x-hwacom-amazetv.dtb
> +dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s905x-khadas-vim.dtb
> +dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s905x-libretech-cc.dtb
> +dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s905x-libretech-cc-v2.dtb
> +dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s905x-nexbox-a95x.dtb
> +dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s905x-p212.dtb
> +dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s905x-vero4k.dtb
> dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s905w-jethome-jethub-j80.dtb
> dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s905w-p281.dtb
> dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s905w-tx3-mini.dtb
> diff --git a/arch/arm64/boot/dts/amlogic/meson-gxl-s905x-vero4k.dts b/arch/arm64/boot/dts/amlogic/meson-gxl-s905x-vero4k.dts
> new file mode 100644
> index 000000000000..b325cd75a792
> --- /dev/null
> +++ b/arch/arm64/boot/dts/amlogic/meson-gxl-s905x-vero4k.dts
> @@ -0,0 +1,202 @@
> +// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
> +/*
> + * Copyright (c) 2024 Christian Hewitt <christianshewitt@gmail.com>
> + */
> +
> +/dts-v1/;
> +
> +#include "meson-gxl-s905x-p212.dtsi"
> +#include <dt-bindings/input/input.h>
> +#include <dt-bindings/leds/common.h>
> +#include <dt-bindings/sound/meson-aiu.h>
> +
> +/ {
> + compatible = "osmc,vero4k", "amlogic,s905x", "amlogic,meson-gxl";
> + model = "OSMC Vero 4K";
> +
> + reserved-memory {
> + /* 32 MiB reserved for ARM Trusted Firmware (BL32) */
> + secmon_reserved_bl32: secmon@5300000 {
> + reg = <0x0 0x05300000 0x0 0x2000000>;
> + no-map;
> + };
> + };
> +
> + gpio-keys-polled {
> + compatible = "gpio-keys-polled";
> + poll-interval = <20>;
> +
> + button {
> + label = "power";
> + linux,code = <KEY_POWER>;
> + gpios = <&gpio_ao GPIOAO_2 GPIO_ACTIVE_HIGH>;
> + };
> + };
> +
> + leds {
> + compatible = "gpio-leds";
> +
> + led-standby {
> + color = <LED_COLOR_ID_RED>;
> + function = LED_FUNCTION_POWER;
> + gpios = <&gpio GPIODV_24 GPIO_ACTIVE_LOW>;
> + default-state = "off";
> + panic-indicator;
> + };
> + };
> +
> + dio2133: analog-amplifier {
> + compatible = "simple-audio-amplifier";
> + sound-name-prefix = "AU2";
> + VCC-supply = <&hdmi_5v>;
> + enable-gpios = <&gpio GPIOH_5 GPIO_ACTIVE_HIGH>;
> + };
> +
> + spdif_dit: audio-codec-0 {
> + #sound-dai-cells = <0>;
> + compatible = "linux,spdif-dit";
> + sound-name-prefix = "DIT";
> + };
> +
> + cvbs-connector {
> + compatible = "composite-video-connector";
> +
> + port {
> + cvbs_connector_in: endpoint {
> + remote-endpoint = <&cvbs_vdac_out>;
> + };
> + };
> + };
> +
> + hdmi-connector {
> + compatible = "hdmi-connector";
> + type = "a";
> +
> + port {
> + hdmi_connector_in: endpoint {
> + remote-endpoint = <&hdmi_tx_tmds_out>;
> + };
> + };
> + };
> +
> + sound {
> + compatible = "amlogic,gx-sound-card";
> + model = "VERO4K";
> + audio-aux-devs = <&dio2133>;
> + audio-widgets = "Line", "Lineout";
> + audio-routing = "AU2 INL", "ACODEC LOLP",
> + "AU2 INR", "ACODEC LORP",
> + "AU2 INL", "ACODEC LOLN",
> + "AU2 INR", "ACODEC LORN",
> + "Lineout", "AU2 OUTL",
> + "Lineout", "AU2 OUTR";
> +
> + dai-link-0 {
> + sound-dai = <&aiu AIU_CPU CPU_I2S_FIFO>;
> + };
> +
> + dai-link-1 {
> + sound-dai = <&aiu AIU_CPU CPU_SPDIF_FIFO>;
> + };
> +
> + dai-link-2 {
> + sound-dai = <&aiu AIU_CPU CPU_I2S_ENCODER>;
> + dai-format = "i2s";
> + mclk-fs = <256>;
> +
> + codec-0 {
> + sound-dai = <&aiu AIU_HDMI CTRL_I2S>;
> + };
> +
> + codec-1 {
> + sound-dai = <&aiu AIU_ACODEC CTRL_I2S>;
> + };
> + };
> +
> + dai-link-3 {
> + sound-dai = <&aiu AIU_CPU CPU_SPDIF_ENCODER>;
> +
> + codec-0 {
> + sound-dai = <&spdif_dit>;
> + };
> + };
> +
> + dai-link-4 {
> + sound-dai = <&aiu AIU_HDMI CTRL_OUT>;
> +
> + codec-0 {
> + sound-dai = <&hdmi_tx>;
> + };
> + };
> +
> + dai-link-5 {
> + sound-dai = <&aiu AIU_ACODEC CTRL_OUT>;
> +
> + codec-0 {
> + sound-dai = <&acodec>;
> + };
> + };
> + };
> +};
> +
> +&acodec {
> + AVDD-supply = <&vddio_ao18>;
> + status = "okay";
> +};
> +
> +&aiu {
> + status = "okay";
> + pinctrl-0 = <&spdif_out_h_pins>;
> + pinctrl-names = "default";
> +};
> +
> +&cec_AO {
> + status = "okay";
> + pinctrl-0 = <&ao_cec_pins>;
> + pinctrl-names = "default";
> + hdmi-phandle = <&hdmi_tx>;
> +};
> +
> +&clkc {
> + assigned-clocks = <&clkc CLKID_MPLL0>,
> + <&clkc CLKID_MPLL1>,
> + <&clkc CLKID_MPLL2>;
> + assigned-clock-parents = <0>, <0>, <0>;
> + assigned-clock-rates = <294912000>,
> + <270950400>,
> + <393216000>;
> +};
> +
> +&cvbs_vdac_port {
> + cvbs_vdac_out: endpoint {
> + remote-endpoint = <&cvbs_connector_in>;
> + };
> +};
> +
> +ðmac {
> + phy-mode = "rmii";
> + phy-handle = <&internal_phy>;
> +};
> +
> +&hdmi_tx {
> + status = "okay";
> + pinctrl-0 = <&hdmi_hpd_pins>, <&hdmi_i2c_pins>;
> + pinctrl-names = "default";
> + hdmi-supply = <&hdmi_5v>;
> +};
> +
> +&hdmi_tx_tmds_port {
> + hdmi_tx_tmds_out: endpoint {
> + remote-endpoint = <&hdmi_connector_in>;
> + };
> +};
> +
> +&internal_phy {
> + pinctrl-0 = <ð_link_led_pins>, <ð_act_led_pins>;
> + pinctrl-names = "default";
> +};
> +
> +/* This UART is brought out to the DB9 connector */
> +&uart_AO {
> + status = "okay";
> +};
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org>
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH 2/2] arm64: dts: meson: add support for OSMC Vero 4K
2024-06-07 8:07 ` Neil Armstrong
@ 2024-06-19 14:07 ` Neil Armstrong
0 siblings, 0 replies; 5+ messages in thread
From: Neil Armstrong @ 2024-06-19 14:07 UTC (permalink / raw)
To: Christian Hewitt, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
Kevin Hilman, Jerome Brunet, Martin Blumenstingl, devicetree,
linux-arm-kernel, linux-amlogic, linux-kernel
On 07/06/2024 10:07, Neil Armstrong wrote:
> On 06/06/2024 11:54, Christian Hewitt wrote:
>> The OSMC Vero 4K device is based on the Amlogic S905X (P212)
>> reference design with the following specifications:
>>
>> - 2GB DDR4 RAM
>> - 16GB eMMC
>> - HDMI 2.1 video
>> - S/PDIF optical output
>> - AV output
>> - 10/100 Ethernet
>> - AP6255 Wireless (802.11 a/b/g/n/ac, BT 4.2)
>> - 2x USB 2.0 ports (1x OTG)
>> - IR receiver (internal)
>> - IR extender port (external)
>> - 1x micro SD card slot
>> - 1x Power LED (red)
>> - 1x Reset button (in AV jack)
>>
>> Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
>> ---
>> arch/arm64/boot/dts/amlogic/Makefile | 7 +
>> .../dts/amlogic/meson-gxl-s905x-vero4k.dts | 202 ++++++++++++++++++
>> 2 files changed, 209 insertions(+)
>> create mode 100644 arch/arm64/boot/dts/amlogic/meson-gxl-s905x-vero4k.dts
>>
>> diff --git a/arch/arm64/boot/dts/amlogic/Makefile b/arch/arm64/boot/dts/amlogic/Makefile
>> index 4addcae2c54e..78941ddd3136 100644
>> --- a/arch/arm64/boot/dts/amlogic/Makefile
>> +++ b/arch/arm64/boot/dts/amlogic/Makefile
>> @@ -55,6 +55,13 @@ dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s905d-p231.dtb
>> dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s905d-phicomm-n1.dtb
>> dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s905d-sml5442tw.dtb
>> dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s905d-vero4k-plus.dtb
>> +dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s905x-hwacom-amazetv.dtb
>> +dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s905x-khadas-vim.dtb
>> +dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s905x-libretech-cc.dtb
>> +dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s905x-libretech-cc-v2.dtb
>> +dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s905x-nexbox-a95x.dtb
>> +dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s905x-p212.dtb
>> +dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s905x-vero4k.dtb
>> dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s905w-jethome-jethub-j80.dtb
>> dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s905w-p281.dtb
>> dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s905w-tx3-mini.dtb
>> diff --git a/arch/arm64/boot/dts/amlogic/meson-gxl-s905x-vero4k.dts b/arch/arm64/boot/dts/amlogic/meson-gxl-s905x-vero4k.dts
>> new file mode 100644
>> index 000000000000..b325cd75a792
>> --- /dev/null
>> +++ b/arch/arm64/boot/dts/amlogic/meson-gxl-s905x-vero4k.dts
>> @@ -0,0 +1,202 @@
>> +// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
>> +/*
>> + * Copyright (c) 2024 Christian Hewitt <christianshewitt@gmail.com>
>> + */
>> +
>> +/dts-v1/;
>> +
>> +#include "meson-gxl-s905x-p212.dtsi"
>> +#include <dt-bindings/input/input.h>
>> +#include <dt-bindings/leds/common.h>
>> +#include <dt-bindings/sound/meson-aiu.h>
>> +
>> +/ {
>> + compatible = "osmc,vero4k", "amlogic,s905x", "amlogic,meson-gxl";
>> + model = "OSMC Vero 4K";
>> +
>> + reserved-memory {
>> + /* 32 MiB reserved for ARM Trusted Firmware (BL32) */
>> + secmon_reserved_bl32: secmon@5300000 {
>> + reg = <0x0 0x05300000 0x0 0x2000000>;
>> + no-map;
>> + };
>> + };
>> +
>> + gpio-keys-polled {
>> + compatible = "gpio-keys-polled";
>> + poll-interval = <20>;
>> +
>> + button {
>> + label = "power";
>> + linux,code = <KEY_POWER>;
>> + gpios = <&gpio_ao GPIOAO_2 GPIO_ACTIVE_HIGH>;
>> + };
>> + };
>> +
>> + leds {
>> + compatible = "gpio-leds";
>> +
>> + led-standby {
>> + color = <LED_COLOR_ID_RED>;
>> + function = LED_FUNCTION_POWER;
>> + gpios = <&gpio GPIODV_24 GPIO_ACTIVE_LOW>;
>> + default-state = "off";
>> + panic-indicator;
>> + };
>> + };
>> +
>> + dio2133: analog-amplifier {
>> + compatible = "simple-audio-amplifier";
>> + sound-name-prefix = "AU2";
>> + VCC-supply = <&hdmi_5v>;
>> + enable-gpios = <&gpio GPIOH_5 GPIO_ACTIVE_HIGH>;
>> + };
>> +
>> + spdif_dit: audio-codec-0 {
>> + #sound-dai-cells = <0>;
>> + compatible = "linux,spdif-dit";
>> + sound-name-prefix = "DIT";
>> + };
>> +
>> + cvbs-connector {
>> + compatible = "composite-video-connector";
>> +
>> + port {
>> + cvbs_connector_in: endpoint {
>> + remote-endpoint = <&cvbs_vdac_out>;
>> + };
>> + };
>> + };
>> +
>> + hdmi-connector {
>> + compatible = "hdmi-connector";
>> + type = "a";
>> +
>> + port {
>> + hdmi_connector_in: endpoint {
>> + remote-endpoint = <&hdmi_tx_tmds_out>;
>> + };
>> + };
>> + };
>> +
>> + sound {
>> + compatible = "amlogic,gx-sound-card";
>> + model = "VERO4K";
>> + audio-aux-devs = <&dio2133>;
>> + audio-widgets = "Line", "Lineout";
>> + audio-routing = "AU2 INL", "ACODEC LOLP",
>> + "AU2 INR", "ACODEC LORP",
>> + "AU2 INL", "ACODEC LOLN",
>> + "AU2 INR", "ACODEC LORN",
>> + "Lineout", "AU2 OUTL",
>> + "Lineout", "AU2 OUTR";
>> +
>> + dai-link-0 {
>> + sound-dai = <&aiu AIU_CPU CPU_I2S_FIFO>;
>> + };
>> +
>> + dai-link-1 {
>> + sound-dai = <&aiu AIU_CPU CPU_SPDIF_FIFO>;
>> + };
>> +
>> + dai-link-2 {
>> + sound-dai = <&aiu AIU_CPU CPU_I2S_ENCODER>;
>> + dai-format = "i2s";
>> + mclk-fs = <256>;
>> +
>> + codec-0 {
>> + sound-dai = <&aiu AIU_HDMI CTRL_I2S>;
>> + };
>> +
>> + codec-1 {
>> + sound-dai = <&aiu AIU_ACODEC CTRL_I2S>;
>> + };
>> + };
>> +
>> + dai-link-3 {
>> + sound-dai = <&aiu AIU_CPU CPU_SPDIF_ENCODER>;
>> +
>> + codec-0 {
>> + sound-dai = <&spdif_dit>;
>> + };
>> + };
>> +
>> + dai-link-4 {
>> + sound-dai = <&aiu AIU_HDMI CTRL_OUT>;
>> +
>> + codec-0 {
>> + sound-dai = <&hdmi_tx>;
>> + };
>> + };
>> +
>> + dai-link-5 {
>> + sound-dai = <&aiu AIU_ACODEC CTRL_OUT>;
>> +
>> + codec-0 {
>> + sound-dai = <&acodec>;
>> + };
>> + };
>> + };
>> +};
>> +
>> +&acodec {
>> + AVDD-supply = <&vddio_ao18>;
>> + status = "okay";
>> +};
>> +
>> +&aiu {
>> + status = "okay";
>> + pinctrl-0 = <&spdif_out_h_pins>;
>> + pinctrl-names = "default";
>> +};
>> +
>> +&cec_AO {
>> + status = "okay";
>> + pinctrl-0 = <&ao_cec_pins>;
>> + pinctrl-names = "default";
>> + hdmi-phandle = <&hdmi_tx>;
>> +};
>> +
>> +&clkc {
>> + assigned-clocks = <&clkc CLKID_MPLL0>,
>> + <&clkc CLKID_MPLL1>,
>> + <&clkc CLKID_MPLL2>;
>> + assigned-clock-parents = <0>, <0>, <0>;
>> + assigned-clock-rates = <294912000>,
>> + <270950400>,
>> + <393216000>;
>> +};
>> +
>> +&cvbs_vdac_port {
>> + cvbs_vdac_out: endpoint {
>> + remote-endpoint = <&cvbs_connector_in>;
>> + };
>> +};
>> +
>> +ðmac {
>> + phy-mode = "rmii";
>> + phy-handle = <&internal_phy>;
>> +};
>> +
>> +&hdmi_tx {
>> + status = "okay";
>> + pinctrl-0 = <&hdmi_hpd_pins>, <&hdmi_i2c_pins>;
>> + pinctrl-names = "default";
>> + hdmi-supply = <&hdmi_5v>;
>> +};
>> +
>> +&hdmi_tx_tmds_port {
>> + hdmi_tx_tmds_out: endpoint {
>> + remote-endpoint = <&hdmi_connector_in>;
>> + };
>> +};
>> +
>> +&internal_phy {
>> + pinctrl-0 = <ð_link_led_pins>, <ð_act_led_pins>;
>> + pinctrl-names = "default";
>> +};
>> +
>> +/* This UART is brought out to the DB9 connector */
>> +&uart_AO {
>> + status = "okay";
>> +};
>
> Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org>
Same here, Can you resent but keeping the assigned-clocks in the sound card node ?
BTW keep the reviewed-by.
Thanks,
Neil
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2024-06-19 14:07 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-06-06 9:54 [PATCH 1/2] dt-bindings: arm: amlogic: add OSMC Vero 4K Christian Hewitt
2024-06-06 9:54 ` [PATCH 2/2] arm64: dts: meson: add support for " Christian Hewitt
2024-06-07 8:07 ` Neil Armstrong
2024-06-19 14:07 ` Neil Armstrong
2024-06-06 12:35 ` [PATCH 1/2] dt-bindings: arm: amlogic: add " Krzysztof Kozlowski
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).