Home | History | Annotate | Download | only in dts
      1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT)
      2 /*
      3  * Copyright (c) 2016 Martin Blumenstingl <martin.blumenstingl (a] googlemail.com>.
      4  * Based on meson-gx-p23x-q20x.dtsi:
      5  * - Copyright (c) 2016 Endless Computers, Inc.
      6  *   Author: Carlo Caione <carlo (a] endlessm.com>
      7  * - Copyright (c) 2016 BayLibre, SAS.
      8  *   Author: Neil Armstrong <narmstrong (a] baylibre.com>
      9  */
     10 
     11 /* Common DTSI for devices which are based on the P212 reference board. */
     12 
     13 #include "meson-gxl-s905x.dtsi"
     14 
     15 / {
     16 	aliases {
     17 		serial0 = &uart_AO;
     18 		serial1 = &uart_A;
     19 		ethernet0 = &ethmac;
     20 	};
     21 
     22 	chosen {
     23 		stdout-path = "serial0:115200n8";
     24 	};
     25 
     26 	memory@0 {
     27 		device_type = "memory";
     28 		reg = <0x0 0x0 0x0 0x80000000>;
     29 	};
     30 
     31 	hdmi_5v: regulator-hdmi-5v {
     32 		compatible = "regulator-fixed";
     33 
     34 		regulator-name = "HDMI_5V";
     35 		regulator-min-microvolt = <5000000>;
     36 		regulator-max-microvolt = <5000000>;
     37 
     38 		gpio = <&gpio GPIOH_3 GPIO_ACTIVE_HIGH>;
     39 		enable-active-high;
     40 		regulator-always-on;
     41 	};
     42 
     43 	vddio_boot: regulator-vddio_boot {
     44 		compatible = "regulator-fixed";
     45 		regulator-name = "VDDIO_BOOT";
     46 		regulator-min-microvolt = <1800000>;
     47 		regulator-max-microvolt = <1800000>;
     48 	};
     49 
     50 	vddao_3v3: regulator-vddao_3v3 {
     51 		compatible = "regulator-fixed";
     52 		regulator-name = "VDDAO_3V3";
     53 		regulator-min-microvolt = <3300000>;
     54 		regulator-max-microvolt = <3300000>;
     55 	};
     56 
     57 	vddio_ao18: regulator-vddio_ao18 {
     58 		compatible = "regulator-fixed";
     59 		regulator-name = "VDDIO_AO18";
     60 		regulator-min-microvolt = <1800000>;
     61 		regulator-max-microvolt = <1800000>;
     62 	};
     63 
     64 	vcc_3v3: regulator-vcc_3v3 {
     65 		compatible = "regulator-fixed";
     66 		regulator-name = "VCC_3V3";
     67 		regulator-min-microvolt = <3300000>;
     68 		regulator-max-microvolt = <3300000>;
     69 	};
     70 
     71 	emmc_pwrseq: emmc-pwrseq {
     72 		compatible = "mmc-pwrseq-emmc";
     73 		reset-gpios = <&gpio BOOT_9 GPIO_ACTIVE_LOW>;
     74 	};
     75 
     76 	wifi32k: wifi32k {
     77 		compatible = "pwm-clock";
     78 		#clock-cells = <0>;
     79 		clock-frequency = <32768>;
     80 		pwms = <&pwm_ef 0 30518 0>; /* PWM_E at 32.768KHz */
     81 	};
     82 
     83 	sdio_pwrseq: sdio-pwrseq {
     84 		compatible = "mmc-pwrseq-simple";
     85 		reset-gpios = <&gpio GPIOX_6 GPIO_ACTIVE_LOW>;
     86 		clocks = <&wifi32k>;
     87 		clock-names = "ext_clock";
     88 	};
     89 };
     90 
     91 &ethmac {
     92 	status = "okay";
     93 };
     94 
     95 &ir {
     96 	status = "okay";
     97 	pinctrl-0 = <&remote_input_ao_pins>;
     98 	pinctrl-names = "default";
     99 };
    100 
    101 &saradc {
    102 	status = "okay";
    103 	vref-supply = <&vddio_ao18>;
    104 };
    105 
    106 /* Wireless SDIO Module */
    107 &sd_emmc_a {
    108 	status = "okay";
    109 	pinctrl-0 = <&sdio_pins>;
    110 	pinctrl-1 = <&sdio_clk_gate_pins>;
    111 	pinctrl-names = "default", "clk-gate";
    112 	#address-cells = <1>;
    113 	#size-cells = <0>;
    114 
    115 	bus-width = <4>;
    116 	cap-sd-highspeed;
    117 	max-frequency = <100000000>;
    118 
    119 	non-removable;
    120 	disable-wp;
    121 
    122 	mmc-pwrseq = <&sdio_pwrseq>;
    123 
    124 	vmmc-supply = <&vddao_3v3>;
    125 	vqmmc-supply = <&vddio_boot>;
    126 };
    127 
    128 /* SD card */
    129 &sd_emmc_b {
    130 	status = "okay";
    131 	pinctrl-0 = <&sdcard_pins>;
    132 	pinctrl-1 = <&sdcard_clk_gate_pins>;
    133 	pinctrl-names = "default", "clk-gate";
    134 
    135 	bus-width = <4>;
    136 	cap-sd-highspeed;
    137 	max-frequency = <100000000>;
    138 	disable-wp;
    139 
    140 	cd-gpios = <&gpio CARD_6 GPIO_ACTIVE_HIGH>;
    141 	cd-inverted;
    142 
    143 	vmmc-supply = <&vddao_3v3>;
    144 	vqmmc-supply = <&vddio_boot>;
    145 };
    146 
    147 /* eMMC */
    148 &sd_emmc_c {
    149 	status = "okay";
    150 	pinctrl-0 = <&emmc_pins>, <&emmc_ds_pins>;
    151 	pinctrl-1 = <&emmc_clk_gate_pins>;
    152 	pinctrl-names = "default", "clk-gate";
    153 
    154 	bus-width = <8>;
    155 	cap-mmc-highspeed;
    156 	max-frequency = <200000000>;
    157 	non-removable;
    158 	disable-wp;
    159 	mmc-ddr-1_8v;
    160 	mmc-hs200-1_8v;
    161 
    162 	mmc-pwrseq = <&emmc_pwrseq>;
    163 	vmmc-supply = <&vcc_3v3>;
    164 	vqmmc-supply = <&vddio_boot>;
    165 };
    166 
    167 &pwm_ef {
    168 	status = "okay";
    169 	pinctrl-0 = <&pwm_e_pins>;
    170 	pinctrl-names = "default";
    171 	clocks = <&clkc CLKID_FCLK_DIV4>;
    172 	clock-names = "clkin0";
    173 };
    174 
    175 /* This is connected to the Bluetooth module: */
    176 &uart_A {
    177 	status = "okay";
    178 	pinctrl-0 = <&uart_a_pins>, <&uart_a_cts_rts_pins>;
    179 	pinctrl-names = "default";
    180 	uart-has-rtscts;
    181 };
    182 
    183 &uart_AO {
    184 	status = "okay";
    185 	pinctrl-0 = <&uart_ao_a_pins>;
    186 	pinctrl-names = "default";
    187 };
    188 
    189 &usb0 {
    190 	status = "okay";
    191 };
    192