mirror of
https://github.com/Fishwaldo/u-boot.git
synced 2025-04-21 05:41:33 +00:00
sunxi: Split out common board design for ALL-H3-CC device tree
The Libre Computer Project ALL-H3-CC has three models, all using the same board design, but with different pin compatible SoCs and amount of DRAM. Currently only the H3 1GB DRAM variant is supported. To support the two other variants, first split the original device tree into a common board design part and an SoC specific part. The SoC part only defines which SoC is used and model name, and includes the SoC specific dtsi file and the common design dtsi file. Also fix up the SPDX identifier line to use the correct comment style, and place it on the first line. Signed-off-by: Chen-Yu Tsai <wens@csie.org> Acked-by: Maxime Ripard <maxime.ripard@bootlin.com> Reviewed-by: Jagan Teki <jagan@openedev.com>
This commit is contained in:
parent
dccff21312
commit
d7b17f1c24
2 changed files with 170 additions and 164 deletions
|
@ -1,175 +1,13 @@
|
||||||
|
// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
|
||||||
/*
|
/*
|
||||||
* Copyright (C) 2017 Chen-Yu Tsai <wens@csie.org>
|
* Copyright (C) 2017 Chen-Yu Tsai <wens@csie.org>
|
||||||
*
|
|
||||||
* SPDX-License-Identifier: (GPL-2.0+ OR MIT)
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/dts-v1/;
|
/dts-v1/;
|
||||||
#include "sun8i-h3.dtsi"
|
#include "sun8i-h3.dtsi"
|
||||||
|
#include "sunxi-libretech-all-h3-cc.dtsi"
|
||||||
#include <dt-bindings/gpio/gpio.h>
|
|
||||||
#include <dt-bindings/input/input.h>
|
|
||||||
|
|
||||||
/ {
|
/ {
|
||||||
model = "Libre Computer Board ALL-H3-CC H3";
|
model = "Libre Computer Board ALL-H3-CC H3";
|
||||||
compatible = "libretech,all-h3-cc-h3", "allwinner,sun8i-h3";
|
compatible = "libretech,all-h3-cc-h3", "allwinner,sun8i-h3";
|
||||||
|
|
||||||
aliases {
|
|
||||||
ethernet0 = &emac;
|
|
||||||
serial0 = &uart0;
|
|
||||||
};
|
|
||||||
|
|
||||||
chosen {
|
|
||||||
stdout-path = "serial0:115200n8";
|
|
||||||
};
|
|
||||||
|
|
||||||
leds {
|
|
||||||
compatible = "gpio-leds";
|
|
||||||
|
|
||||||
pwr_led {
|
|
||||||
label = "librecomputer:green:pwr";
|
|
||||||
gpios = <&r_pio 0 10 GPIO_ACTIVE_HIGH>; /* PL10 */
|
|
||||||
default-state = "on";
|
|
||||||
};
|
|
||||||
|
|
||||||
status_led {
|
|
||||||
label = "librecomputer:blue:status";
|
|
||||||
gpios = <&pio 0 7 GPIO_ACTIVE_HIGH>; /* PA7 */
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
gpio_keys {
|
|
||||||
compatible = "gpio-keys";
|
|
||||||
|
|
||||||
power {
|
|
||||||
label = "power";
|
|
||||||
linux,code = <KEY_POWER>;
|
|
||||||
gpios = <&r_pio 0 2 GPIO_ACTIVE_LOW>; /* PL2 */
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
reg_vcc1v2: vcc1v2 {
|
|
||||||
compatible = "regulator-fixed";
|
|
||||||
regulator-name = "vcc1v2";
|
|
||||||
regulator-min-microvolt = <3300000>;
|
|
||||||
regulator-max-microvolt = <3300000>;
|
|
||||||
regulator-always-on;
|
|
||||||
regulator-boot-on;
|
|
||||||
vin-supply = <®_vcc5v0>;
|
|
||||||
gpio = <&r_pio 0 8 GPIO_ACTIVE_HIGH>; /* PL8 */
|
|
||||||
enable-active-high;
|
|
||||||
};
|
|
||||||
|
|
||||||
reg_vcc3v3: vcc3v3 {
|
|
||||||
compatible = "regulator-fixed";
|
|
||||||
regulator-name = "vcc3v3";
|
|
||||||
regulator-min-microvolt = <3300000>;
|
|
||||||
regulator-max-microvolt = <3300000>;
|
|
||||||
vin-supply = <®_vcc5v0>;
|
|
||||||
};
|
|
||||||
|
|
||||||
/* This represents the board's 5V input */
|
|
||||||
reg_vcc5v0: vcc5v0 {
|
|
||||||
compatible = "regulator-fixed";
|
|
||||||
regulator-name = "vcc5v0";
|
|
||||||
regulator-min-microvolt = <5000000>;
|
|
||||||
regulator-max-microvolt = <5000000>;
|
|
||||||
};
|
|
||||||
|
|
||||||
reg_vcc_dram: vcc-dram {
|
|
||||||
compatible = "regulator-fixed";
|
|
||||||
regulator-name = "vcc-dram";
|
|
||||||
regulator-min-microvolt = <1500000>;
|
|
||||||
regulator-max-microvolt = <1500000>;
|
|
||||||
regulator-always-on;
|
|
||||||
regulator-boot-on;
|
|
||||||
vin-supply = <®_vcc5v0>;
|
|
||||||
gpio = <&r_pio 0 9 GPIO_ACTIVE_HIGH>; /* PL9 */
|
|
||||||
enable-active-high;
|
|
||||||
};
|
|
||||||
|
|
||||||
reg_vcc_io: vcc-io {
|
|
||||||
compatible = "regulator-fixed";
|
|
||||||
regulator-name = "vcc-io";
|
|
||||||
regulator-min-microvolt = <3300000>;
|
|
||||||
regulator-max-microvolt = <3300000>;
|
|
||||||
regulator-always-on;
|
|
||||||
regulator-boot-on;
|
|
||||||
vin-supply = <®_vcc3v3>;
|
|
||||||
gpio = <&r_pio 0 5 GPIO_ACTIVE_LOW>; /* PL5 */
|
|
||||||
};
|
|
||||||
|
|
||||||
reg_vdd_cpux: vdd-cpux {
|
|
||||||
compatible = "regulator-fixed";
|
|
||||||
regulator-name = "vdd-cpux";
|
|
||||||
regulator-min-microvolt = <3300000>;
|
|
||||||
regulator-max-microvolt = <3300000>;
|
|
||||||
regulator-always-on;
|
|
||||||
regulator-boot-on;
|
|
||||||
vin-supply = <®_vcc5v0>;
|
|
||||||
gpio = <&r_pio 0 8 GPIO_ACTIVE_HIGH>; /* PL8 */
|
|
||||||
enable-active-high;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
&ehci1 {
|
|
||||||
status = "okay";
|
|
||||||
};
|
|
||||||
|
|
||||||
&ehci2 {
|
|
||||||
status = "okay";
|
|
||||||
};
|
|
||||||
|
|
||||||
&ehci3 {
|
|
||||||
status = "okay";
|
|
||||||
};
|
|
||||||
|
|
||||||
&emac {
|
|
||||||
phy-handle = <&int_mii_phy>;
|
|
||||||
phy-mode = "mii";
|
|
||||||
allwinner,leds-active-low;
|
|
||||||
status = "okay";
|
|
||||||
};
|
|
||||||
|
|
||||||
&ir {
|
|
||||||
pinctrl-names = "default";
|
|
||||||
pinctrl-0 = <&ir_pins_a>;
|
|
||||||
status = "okay";
|
|
||||||
};
|
|
||||||
|
|
||||||
&mmc0 {
|
|
||||||
pinctrl-names = "default";
|
|
||||||
pinctrl-0 = <&mmc0_pins_a>;
|
|
||||||
vmmc-supply = <®_vcc_io>;
|
|
||||||
bus-width = <4>;
|
|
||||||
cd-gpios = <&pio 5 6 GPIO_ACTIVE_HIGH>; /* PF6 */
|
|
||||||
cd-inverted;
|
|
||||||
status = "okay";
|
|
||||||
};
|
|
||||||
|
|
||||||
&ohci1 {
|
|
||||||
status = "okay";
|
|
||||||
};
|
|
||||||
|
|
||||||
&ohci2 {
|
|
||||||
status = "okay";
|
|
||||||
};
|
|
||||||
|
|
||||||
&ohci3 {
|
|
||||||
status = "okay";
|
|
||||||
};
|
|
||||||
|
|
||||||
&uart0 {
|
|
||||||
pinctrl-names = "default";
|
|
||||||
pinctrl-0 = <&uart0_pins_a>;
|
|
||||||
status = "okay";
|
|
||||||
};
|
|
||||||
|
|
||||||
&usbphy {
|
|
||||||
/* VBUS on USB ports are always on */
|
|
||||||
usb0_vbus-supply = <®_vcc5v0>;
|
|
||||||
usb1_vbus-supply = <®_vcc5v0>;
|
|
||||||
usb2_vbus-supply = <®_vcc5v0>;
|
|
||||||
usb3_vbus-supply = <®_vcc5v0>;
|
|
||||||
status = "okay";
|
|
||||||
};
|
};
|
||||||
|
|
168
arch/arm/dts/sunxi-libretech-all-h3-cc.dtsi
Normal file
168
arch/arm/dts/sunxi-libretech-all-h3-cc.dtsi
Normal file
|
@ -0,0 +1,168 @@
|
||||||
|
// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
|
||||||
|
/*
|
||||||
|
* Copyright (C) 2017 Chen-Yu Tsai <wens@csie.org>
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <dt-bindings/gpio/gpio.h>
|
||||||
|
#include <dt-bindings/input/input.h>
|
||||||
|
|
||||||
|
/ {
|
||||||
|
aliases {
|
||||||
|
ethernet0 = &emac;
|
||||||
|
serial0 = &uart0;
|
||||||
|
};
|
||||||
|
|
||||||
|
chosen {
|
||||||
|
stdout-path = "serial0:115200n8";
|
||||||
|
};
|
||||||
|
|
||||||
|
leds {
|
||||||
|
compatible = "gpio-leds";
|
||||||
|
|
||||||
|
pwr_led {
|
||||||
|
label = "librecomputer:green:pwr";
|
||||||
|
gpios = <&r_pio 0 10 GPIO_ACTIVE_HIGH>; /* PL10 */
|
||||||
|
default-state = "on";
|
||||||
|
};
|
||||||
|
|
||||||
|
status_led {
|
||||||
|
label = "librecomputer:blue:status";
|
||||||
|
gpios = <&pio 0 7 GPIO_ACTIVE_HIGH>; /* PA7 */
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
gpio_keys {
|
||||||
|
compatible = "gpio-keys";
|
||||||
|
|
||||||
|
power {
|
||||||
|
label = "power";
|
||||||
|
linux,code = <KEY_POWER>;
|
||||||
|
gpios = <&r_pio 0 2 GPIO_ACTIVE_LOW>; /* PL2 */
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
reg_vcc1v2: vcc1v2 {
|
||||||
|
compatible = "regulator-fixed";
|
||||||
|
regulator-name = "vcc1v2";
|
||||||
|
regulator-min-microvolt = <3300000>;
|
||||||
|
regulator-max-microvolt = <3300000>;
|
||||||
|
regulator-always-on;
|
||||||
|
regulator-boot-on;
|
||||||
|
vin-supply = <®_vcc5v0>;
|
||||||
|
gpio = <&r_pio 0 8 GPIO_ACTIVE_HIGH>; /* PL8 */
|
||||||
|
enable-active-high;
|
||||||
|
};
|
||||||
|
|
||||||
|
reg_vcc3v3: vcc3v3 {
|
||||||
|
compatible = "regulator-fixed";
|
||||||
|
regulator-name = "vcc3v3";
|
||||||
|
regulator-min-microvolt = <3300000>;
|
||||||
|
regulator-max-microvolt = <3300000>;
|
||||||
|
vin-supply = <®_vcc5v0>;
|
||||||
|
};
|
||||||
|
|
||||||
|
/* This represents the board's 5V input */
|
||||||
|
reg_vcc5v0: vcc5v0 {
|
||||||
|
compatible = "regulator-fixed";
|
||||||
|
regulator-name = "vcc5v0";
|
||||||
|
regulator-min-microvolt = <5000000>;
|
||||||
|
regulator-max-microvolt = <5000000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
reg_vcc_dram: vcc-dram {
|
||||||
|
compatible = "regulator-fixed";
|
||||||
|
regulator-name = "vcc-dram";
|
||||||
|
regulator-min-microvolt = <1500000>;
|
||||||
|
regulator-max-microvolt = <1500000>;
|
||||||
|
regulator-always-on;
|
||||||
|
regulator-boot-on;
|
||||||
|
vin-supply = <®_vcc5v0>;
|
||||||
|
gpio = <&r_pio 0 9 GPIO_ACTIVE_HIGH>; /* PL9 */
|
||||||
|
enable-active-high;
|
||||||
|
};
|
||||||
|
|
||||||
|
reg_vcc_io: vcc-io {
|
||||||
|
compatible = "regulator-fixed";
|
||||||
|
regulator-name = "vcc-io";
|
||||||
|
regulator-min-microvolt = <3300000>;
|
||||||
|
regulator-max-microvolt = <3300000>;
|
||||||
|
regulator-always-on;
|
||||||
|
regulator-boot-on;
|
||||||
|
vin-supply = <®_vcc3v3>;
|
||||||
|
gpio = <&r_pio 0 5 GPIO_ACTIVE_LOW>; /* PL5 */
|
||||||
|
};
|
||||||
|
|
||||||
|
reg_vdd_cpux: vdd-cpux {
|
||||||
|
compatible = "regulator-fixed";
|
||||||
|
regulator-name = "vdd-cpux";
|
||||||
|
regulator-min-microvolt = <3300000>;
|
||||||
|
regulator-max-microvolt = <3300000>;
|
||||||
|
regulator-always-on;
|
||||||
|
regulator-boot-on;
|
||||||
|
vin-supply = <®_vcc5v0>;
|
||||||
|
gpio = <&r_pio 0 8 GPIO_ACTIVE_HIGH>; /* PL8 */
|
||||||
|
enable-active-high;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&ehci1 {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&ehci2 {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&ehci3 {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&emac {
|
||||||
|
phy-handle = <&int_mii_phy>;
|
||||||
|
phy-mode = "mii";
|
||||||
|
allwinner,leds-active-low;
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&ir {
|
||||||
|
pinctrl-names = "default";
|
||||||
|
pinctrl-0 = <&ir_pins_a>;
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&mmc0 {
|
||||||
|
pinctrl-names = "default";
|
||||||
|
pinctrl-0 = <&mmc0_pins_a>;
|
||||||
|
vmmc-supply = <®_vcc_io>;
|
||||||
|
bus-width = <4>;
|
||||||
|
cd-gpios = <&pio 5 6 GPIO_ACTIVE_HIGH>; /* PF6 */
|
||||||
|
cd-inverted;
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&ohci1 {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&ohci2 {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&ohci3 {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&uart0 {
|
||||||
|
pinctrl-names = "default";
|
||||||
|
pinctrl-0 = <&uart0_pins_a>;
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&usbphy {
|
||||||
|
/* VBUS on USB ports are always on */
|
||||||
|
usb0_vbus-supply = <®_vcc5v0>;
|
||||||
|
usb1_vbus-supply = <®_vcc5v0>;
|
||||||
|
usb2_vbus-supply = <®_vcc5v0>;
|
||||||
|
usb3_vbus-supply = <®_vcc5v0>;
|
||||||
|
status = "okay";
|
||||||
|
};
|
Loading…
Add table
Reference in a new issue