0001 // SPDX-License-Identifier: (GPL-2.0+ OR MIT)
0002 /*
0003 * Copyright (c) 2017 Carlo Caione
0004 * Copyright (c) 2016 BayLibre, Inc.
0005 * Author: Neil Armstrong <narmstrong@kernel.org>
0006 */
0007
0008 /dts-v1/;
0009
0010 #include "meson-gxl-s905x.dtsi"
0011
0012 / {
0013 compatible = "hwacom,amazetv", "amlogic,s905x", "amlogic,meson-gxl";
0014 model = "Hwacom AmazeTV (S905X)";
0015
0016 aliases {
0017 serial0 = &uart_AO;
0018 ethernet0 = ðmac;
0019 };
0020
0021 chosen {
0022 stdout-path = "serial0:115200n8";
0023 };
0024
0025 memory@0 {
0026 device_type = "memory";
0027 reg = <0x0 0x0 0x0 0x80000000>;
0028 };
0029
0030 vddio_card: gpio-regulator {
0031 compatible = "regulator-gpio";
0032
0033 regulator-name = "VDDIO_CARD";
0034 regulator-min-microvolt = <1800000>;
0035 regulator-max-microvolt = <3300000>;
0036
0037 gpios = <&gpio_ao GPIOAO_5 GPIO_ACTIVE_HIGH>;
0038 gpios-states = <1>;
0039
0040 /* Based on P200 schematics, signal CARD_1.8V/3.3V_CTR */
0041 states = <1800000 0>,
0042 <3300000 1>;
0043 };
0044
0045 vddio_boot: regulator-vddio_boot {
0046 compatible = "regulator-fixed";
0047 regulator-name = "VDDIO_BOOT";
0048 regulator-min-microvolt = <1800000>;
0049 regulator-max-microvolt = <1800000>;
0050 };
0051
0052 vddao_3v3: regulator-vddao_3v3 {
0053 compatible = "regulator-fixed";
0054 regulator-name = "VDDAO_3V3";
0055 regulator-min-microvolt = <3300000>;
0056 regulator-max-microvolt = <3300000>;
0057 };
0058
0059 vcc_3v3: regulator-vcc_3v3 {
0060 compatible = "regulator-fixed";
0061 regulator-name = "VCC_3V3";
0062 regulator-min-microvolt = <3300000>;
0063 regulator-max-microvolt = <3300000>;
0064 };
0065
0066 emmc_pwrseq: emmc-pwrseq {
0067 compatible = "mmc-pwrseq-emmc";
0068 reset-gpios = <&gpio BOOT_9 GPIO_ACTIVE_LOW>;
0069 };
0070
0071 wifi32k: wifi32k {
0072 compatible = "pwm-clock";
0073 #clock-cells = <0>;
0074 clock-frequency = <32768>;
0075 pwms = <&pwm_ef 0 30518 0>; /* PWM_E at 32.768KHz */
0076 };
0077
0078 sdio_pwrseq: sdio-pwrseq {
0079 compatible = "mmc-pwrseq-simple";
0080 reset-gpios = <&gpio GPIOX_6 GPIO_ACTIVE_LOW>;
0081 clocks = <&wifi32k>;
0082 clock-names = "ext_clock";
0083 };
0084
0085 cvbs-connector {
0086 compatible = "composite-video-connector";
0087
0088 port {
0089 cvbs_connector_in: endpoint {
0090 remote-endpoint = <&cvbs_vdac_out>;
0091 };
0092 };
0093 };
0094 };
0095
0096 &cvbs_vdac_port {
0097 cvbs_vdac_out: endpoint {
0098 remote-endpoint = <&cvbs_connector_in>;
0099 };
0100 };
0101
0102 ðmac {
0103 status = "okay";
0104 phy-mode = "rmii";
0105 phy-handle = <&internal_phy>;
0106 };
0107
0108 &ir {
0109 status = "okay";
0110 pinctrl-0 = <&remote_input_ao_pins>;
0111 pinctrl-names = "default";
0112 };
0113
0114 &pwm_ef {
0115 status = "okay";
0116 pinctrl-0 = <&pwm_e_pins>;
0117 pinctrl-names = "default";
0118 clocks = <&clkc CLKID_FCLK_DIV4>;
0119 clock-names = "clkin0";
0120 };
0121
0122 /* SD card */
0123 &sd_emmc_b {
0124 status = "okay";
0125 pinctrl-0 = <&sdcard_pins>;
0126 pinctrl-1 = <&sdcard_clk_gate_pins>;
0127 pinctrl-names = "default", "clk-gate";
0128
0129 bus-width = <4>;
0130 cap-sd-highspeed;
0131 max-frequency = <100000000>;
0132 disable-wp;
0133
0134 cd-gpios = <&gpio CARD_6 GPIO_ACTIVE_LOW>;
0135
0136 vmmc-supply = <&vddao_3v3>;
0137 vqmmc-supply = <&vddio_card>;
0138 };
0139
0140 /* eMMC */
0141 &sd_emmc_c {
0142 status = "okay";
0143 pinctrl-0 = <&emmc_pins>, <&emmc_ds_pins>;
0144 pinctrl-1 = <&emmc_clk_gate_pins>;
0145 pinctrl-names = "default", "clk-gate";
0146
0147 bus-width = <8>;
0148 cap-mmc-highspeed;
0149 max-frequency = <100000000>;
0150 non-removable;
0151 disable-wp;
0152 mmc-ddr-1_8v;
0153 mmc-hs200-1_8v;
0154
0155 mmc-pwrseq = <&emmc_pwrseq>;
0156 vmmc-supply = <&vcc_3v3>;
0157 vqmmc-supply = <&vddio_boot>;
0158 };
0159
0160 &uart_AO {
0161 status = "okay";
0162 pinctrl-0 = <&uart_ao_a_pins>;
0163 pinctrl-names = "default";
0164 };