arm64: Amlogic DT updates for v4.21

Some highlights:
 - new boards: Phicomm N1 (S905D), Libretech S805-AC
 - fixes for pinmux pad bias, GPIO line names
 - AXG: enable SCPI, add secure monitor
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEEe4dGDhaSf6n1v/EMWTcYmtP7xmUFAlwATzUACgkQWTcYmtP7
 xmXNnw/5AU72YPDILN2tLywGYfBc/jlRgSVUo4411oGU5muxfNRYaOIHtLHhBWpV
 xbq4+gQQMxxXdflhYDJbuVmUQUYkuZMW0wePPEn0a/ZV9D/mPD559vl1erCJp0FL
 HuJH+EefFWYMzp2gT8BKDvOrYrEz499C2Xo2bqun21iCmDz649ypI+ODd5ojWWID
 eeatpq7VeRoKzrZrDNTGKbqBsLtRoSshBaYYbrw2iXRTA+AsD/sD7Tg6eus47m3p
 AmUVsUdJE/Czk/dzJoOwCKiWKEVk1FvssvzwjXFtYUbWQCwf6aWPsqDxLrAsKw88
 KzQ126Qc/3sFmtU++rOh2vI0GvyXtgQ81cPc3Eup+1by4tmxqMFIjVE92oWXecYd
 qrvyTyns6gMedHAgIKtvQFEPcaYj204b+aaDaZIA2qD/3b24BjcFwADSuxtl66to
 q8B6Ldvw7wr+C8LqO4eIwy3cS0YAeEz15SMGx5zMVAaQseNcqFwJW/eS/5Cgg4OH
 Ooic3qmkMR6oDGNJ0ied+J/98UtYGseR05EpGzAe1tRRuPPK/I4dQhnVIlz/d3Dq
 6ajkRTMWNH9rn0FTNeOX8GeUTLnS+hdmJ/JDxtgsk5Jy9nkv3+JlLY62F8sA5uu6
 0nX0GE6bxkqglx3LT1/qvhD4BN+zg7uA0QYVJzWyOT5VNHMBwxc=
 =dZPc
 -----END PGP SIGNATURE-----

Merge tag 'amlogic-dt64' of https://git.kernel.org/pub/scm/linux/kernel/git/khilman/linux-amlogic into next/dt

arm64: Amlogic DT updates for v4.21
Some highlights:
- new boards: Phicomm N1 (S905D), Libretech S805-AC
- fixes for pinmux pad bias, GPIO line names
- AXG: enable SCPI, add secure monitor

* tag 'amlogic-dt64' of https://git.kernel.org/pub/scm/linux/kernel/git/khilman/linux-amlogic: (26 commits)
  arm64: dts: meson-gx: Add Internal Clock Measurer node
  arm64: dts: amlogic: Add all CPUs in cooling maps
  arm64: dts: meson: add libretech aml-s805x-ac board
  dt-bindings: arm: amlogic: add libretech aml-s805x-ac bindings
  dt-bindings: arm: amlogic: Add Phicomm N1
  dt-bindings: Add vendor prefix for PHICOMM Co., Ltd.
  arm64: dts: meson-gxl: add support for phicomm n1
  arm64: dts: meson: consistently disable pin bias
  arm64: dts: meson: disable pad bias for mmc pinmuxes
  arm64: dts: meson: remove extra subnode in mmc clk_gate pinmux
  arm64: dts: meson: s400: add bcm bluetooth device
  arm64: dts: meson: p230: disable advertisement EEE for GbE.
  arm64: dts: meson-axg: enable SCPI
  Documentation: bindings: Add missing Amlogic SCPI sensor bindings
  arm64: dts: meson-axg: correct sram shared mem unit-address
  arm64: dts: meson-axg: fix mailbox address
  arm64: dts: meson-gx: Add hdmi_5v regulator as hdmi tx supply
  arm64: dts: meson-axg: add secure monitor
  arm64: dts: meson-axg: s400: add cts-rts to the bluetooth uart
  arm64: dts: meson-gxl-khadas-vim: fix GPIO lines names
  ...

Signed-off-by: Olof Johansson <olof@lixom.net>
This commit is contained in:
Olof Johansson 2018-11-30 15:18:30 -08:00
commit f6332990f6
19 changed files with 590 additions and 66 deletions

View File

@ -17,4 +17,11 @@ Required sub-node properties:
- compatible : should be "amlogic,meson-gxbb-scp-shmem" for SRAM based shared
memory on Amlogic GXBB SoC.
Sensor bindings for the sensors based on SCPI Message Protocol
--------------------------------------------------------------
SCPI provides an API to access the various sensors on the SoC.
Required properties:
- compatible : should be "amlogic,meson-gxbb-scpi-sensors".
[0] Documentation/devicetree/bindings/arm/arm,scpi.txt

View File

@ -91,8 +91,10 @@ Board compatible values (alphabetically, grouped by SoC):
- "amlogic,p230" (Meson gxl s905d)
- "amlogic,p231" (Meson gxl s905d)
- "phicomm,n1" (Meson gxl s905d)
- "amlogic,p241" (Meson gxl s805x)
- "libretech,aml-s805x-ac" (Meson gxl s805x)
- "amlogic,p281" (Meson gxl s905w)
- "oranth,tx3-mini" (Meson gxl s905w)

View File

@ -296,6 +296,7 @@ panasonic Panasonic Corporation
parade Parade Technologies Inc.
pericom Pericom Technology Inc.
pervasive Pervasive Displays, Inc.
phicomm PHICOMM Co., Ltd.
phytec PHYTEC Messtechnik GmbH
picochip Picochip Ltd
pine64 Pine64

View File

@ -11,6 +11,7 @@ dtb-$(CONFIG_ARCH_MESON) += meson-gxbb-vega-s95-meta.dtb
dtb-$(CONFIG_ARCH_MESON) += meson-gxbb-vega-s95-telos.dtb
dtb-$(CONFIG_ARCH_MESON) += meson-gxbb-wetek-hub.dtb
dtb-$(CONFIG_ARCH_MESON) += meson-gxbb-wetek-play2.dtb
dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s805x-libretech-ac.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
@ -18,6 +19,7 @@ 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-s905d-p230.dtb
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-s805x-p241.dtb
dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s905w-p281.dtb
dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s905w-tx3-mini.dtb

View File

@ -60,7 +60,7 @@ aliases {
serial1 = &uart_A;
};
linein: audio-codec@0 {
linein: audio-codec-0 {
#sound-dai-cells = <0>;
compatible = "everest,es7241";
VDDA-supply = <&vcc_3v3>;
@ -70,7 +70,7 @@ linein: audio-codec@0 {
sound-name-prefix = "Linein";
};
lineout: audio-codec@1 {
lineout: audio-codec-1 {
#sound-dai-cells = <0>;
compatible = "everest,es7154";
VDD-supply = <&vcc_3v3>;
@ -79,14 +79,14 @@ lineout: audio-codec@1 {
sound-name-prefix = "Lineout";
};
spdif_dit: audio-codec@2 {
spdif_dit: audio-codec-2 {
#sound-dai-cells = <0>;
compatible = "linux,spdif-dit";
status = "okay";
sound-name-prefix = "DIT";
};
dmics: audio-codec@3 {
dmics: audio-codec-3 {
#sound-dai-cells = <0>;
compatible = "dmic-codec";
num-channels = <7>;
@ -272,31 +272,31 @@ sound {
<393216000>;
status = "okay";
dai-link@0 {
dai-link-0 {
sound-dai = <&frddr_a>;
};
dai-link@1 {
dai-link-1 {
sound-dai = <&frddr_b>;
};
dai-link@2 {
dai-link-2 {
sound-dai = <&frddr_c>;
};
dai-link@3 {
dai-link-3 {
sound-dai = <&toddr_a>;
};
dai-link@4 {
dai-link-4 {
sound-dai = <&toddr_b>;
};
dai-link@5 {
dai-link-5 {
sound-dai = <&toddr_c>;
};
dai-link@6 {
dai-link-6 {
sound-dai = <&tdmif_c>;
dai-format = "i2s";
dai-tdm-slot-tx-mask-2 = <1 1>;
@ -317,7 +317,7 @@ codec@2 {
};
dai-link@7 {
dai-link-7 {
sound-dai = <&spdifout>;
codec {
@ -325,7 +325,7 @@ codec {
};
};
dai-link@8 {
dai-link-8 {
sound-dai = <&pdm>;
codec {
@ -543,8 +543,14 @@ &toddr_c {
&uart_A {
status = "okay";
pinctrl-0 = <&uart_a_pins>;
pinctrl-0 = <&uart_a_pins>, <&uart_a_cts_rts_pins>;
pinctrl-names = "default";
uart-has-rtscts;
bluetooth {
compatible = "brcm,bcm43438-bt";
shutdown-gpios = <&gpio GPIOX_21 GPIO_ACTIVE_HIGH>;
};
};
&uart_AO {

View File

@ -20,7 +20,7 @@ / {
#address-cells = <2>;
#size-cells = <2>;
tdmif_a: audio-controller@0 {
tdmif_a: audio-controller-0 {
compatible = "amlogic,axg-tdm-iface";
#sound-dai-cells = <0>;
sound-name-prefix = "TDM_A";
@ -31,7 +31,7 @@ tdmif_a: audio-controller@0 {
status = "disabled";
};
tdmif_b: audio-controller@1 {
tdmif_b: audio-controller-1 {
compatible = "amlogic,axg-tdm-iface";
#sound-dai-cells = <0>;
sound-name-prefix = "TDM_B";
@ -42,7 +42,7 @@ tdmif_b: audio-controller@1 {
status = "disabled";
};
tdmif_c: audio-controller@2 {
tdmif_c: audio-controller-2 {
compatible = "amlogic,axg-tdm-iface";
#sound-dai-cells = <0>;
sound-name-prefix = "TDM_C";
@ -79,6 +79,7 @@ cpu0: cpu@0 {
reg = <0x0 0x0>;
enable-method = "psci";
next-level-cache = <&l2>;
clocks = <&scpi_dvfs 0>;
};
cpu1: cpu@1 {
@ -87,6 +88,7 @@ cpu1: cpu@1 {
reg = <0x0 0x1>;
enable-method = "psci";
next-level-cache = <&l2>;
clocks = <&scpi_dvfs 0>;
};
cpu2: cpu@2 {
@ -95,6 +97,7 @@ cpu2: cpu@2 {
reg = <0x0 0x2>;
enable-method = "psci";
next-level-cache = <&l2>;
clocks = <&scpi_dvfs 0>;
};
cpu3: cpu@3 {
@ -103,6 +106,7 @@ cpu3: cpu@3 {
reg = <0x0 0x3>;
enable-method = "psci";
next-level-cache = <&l2>;
clocks = <&scpi_dvfs 0>;
};
l2: l2-cache0 {
@ -110,6 +114,10 @@ l2: l2-cache0 {
};
};
sm: secure-monitor {
compatible = "amlogic,meson-gxbb-sm";
};
psci {
compatible = "arm,psci-1.0";
method = "smc";
@ -133,6 +141,28 @@ secmon_reserved: secmon@5000000 {
};
};
scpi {
compatible = "arm,scpi-pre-1.0";
mboxes = <&mailbox 1 &mailbox 2>;
shmem = <&cpu_scp_lpri &cpu_scp_hpri>;
scpi_clocks: clocks {
compatible = "arm,scpi-clocks";
scpi_dvfs: clock-controller {
compatible = "arm,scpi-dvfs-clocks";
#clock-cells = <1>;
clock-indices = <0>;
clock-output-names = "vcpu";
};
};
scpi_sensors: sensors {
compatible = "amlogic,meson-gxbb-scpi-sensors";
#thermal-sensor-cells = <1>;
};
};
soc {
compatible = "simple-bus";
#address-cells = <2>;
@ -200,6 +230,7 @@ mux {
groups = "i2c0_sck",
"i2c0_sda";
function = "i2c0";
bias-disable;
};
};
@ -208,6 +239,7 @@ mux {
groups = "i2c1_sck_x",
"i2c1_sda_x";
function = "i2c1";
bias-disable;
};
};
@ -216,6 +248,7 @@ mux {
groups = "i2c1_sck_z",
"i2c1_sda_z";
function = "i2c1";
bias-disable;
};
};
@ -224,6 +257,7 @@ mux {
groups = "i2c2_sck_a",
"i2c2_sda_a";
function = "i2c2";
bias-disable;
};
};
@ -232,6 +266,7 @@ mux {
groups = "i2c2_sck_x",
"i2c2_sda_x";
function = "i2c2";
bias-disable;
};
};
@ -240,6 +275,7 @@ mux {
groups = "i2c3_sda_a6",
"i2c3_sck_a7";
function = "i2c3";
bias-disable;
};
};
@ -248,6 +284,7 @@ mux {
groups = "i2c3_sda_a12",
"i2c3_sck_a13";
function = "i2c3";
bias-disable;
};
};
@ -256,6 +293,7 @@ mux {
groups = "i2c3_sda_a19",
"i2c3_sck_a20";
function = "i2c3";
bias-disable;
};
};
@ -273,6 +311,7 @@ mux {
"emmc_cmd",
"emmc_ds";
function = "emmc";
bias-disable;
};
};
@ -280,9 +319,6 @@ emmc_clk_gate_pins: emmc_clk_gate {
mux {
groups = "BOOT_8";
function = "gpio_periphs";
};
cfg-pull-down {
pins = "BOOT_8";
bias-pull-down;
};
};
@ -304,6 +340,7 @@ mux {
"eth_txd2_rgmii",
"eth_txd3_rgmii";
function = "eth";
bias-disable;
};
};
@ -324,6 +361,7 @@ mux {
"eth_txd2_rgmii",
"eth_txd3_rgmii";
function = "eth";
bias-disable;
};
};
@ -339,6 +377,7 @@ mux {
"eth_txd0_x",
"eth_txd1_x";
function = "eth";
bias-disable;
};
};
@ -354,6 +393,7 @@ mux {
"eth_txd0_y",
"eth_txd1_y";
function = "eth";
bias-disable;
};
};
@ -361,6 +401,7 @@ mclk_b_pins: mclk_b {
mux {
groups = "mclk_b";
function = "mclk_b";
bias-disable;
};
};
@ -368,6 +409,7 @@ mclk_c_pins: mclk_c {
mux {
groups = "mclk_c";
function = "mclk_c";
bias-disable;
};
};
@ -375,6 +417,7 @@ pdm_dclk_a14_pins: pdm_dclk_a14 {
mux {
groups = "pdm_dclk_a14";
function = "pdm";
bias-disable;
};
};
@ -382,6 +425,7 @@ pdm_dclk_a19_pins: pdm_dclk_a19 {
mux {
groups = "pdm_dclk_a19";
function = "pdm";
bias-disable;
};
};
@ -389,6 +433,7 @@ pdm_din0_pins: pdm_din0 {
mux {
groups = "pdm_din0";
function = "pdm";
bias-disable;
};
};
@ -396,6 +441,7 @@ pdm_din1_pins: pdm_din1 {
mux {
groups = "pdm_din1";
function = "pdm";
bias-disable;
};
};
@ -403,6 +449,7 @@ pdm_din2_pins: pdm_din2 {
mux {
groups = "pdm_din2";
function = "pdm";
bias-disable;
};
};
@ -410,6 +457,7 @@ pdm_din3_pins: pdm_din3 {
mux {
groups = "pdm_din3";
function = "pdm";
bias-disable;
};
};
@ -417,6 +465,7 @@ pwm_a_a_pins: pwm_a_a {
mux {
groups = "pwm_a_a";
function = "pwm_a";
bias-disable;
};
};
@ -424,6 +473,7 @@ pwm_a_x18_pins: pwm_a_x18 {
mux {
groups = "pwm_a_x18";
function = "pwm_a";
bias-disable;
};
};
@ -431,6 +481,7 @@ pwm_a_x20_pins: pwm_a_x20 {
mux {
groups = "pwm_a_x20";
function = "pwm_a";
bias-disable;
};
};
@ -438,6 +489,7 @@ pwm_a_z_pins: pwm_a_z {
mux {
groups = "pwm_a_z";
function = "pwm_a";
bias-disable;
};
};
@ -445,6 +497,7 @@ pwm_b_a_pins: pwm_b_a {
mux {
groups = "pwm_b_a";
function = "pwm_b";
bias-disable;
};
};
@ -452,6 +505,7 @@ pwm_b_x_pins: pwm_b_x {
mux {
groups = "pwm_b_x";
function = "pwm_b";
bias-disable;
};
};
@ -459,6 +513,7 @@ pwm_b_z_pins: pwm_b_z {
mux {
groups = "pwm_b_z";
function = "pwm_b";
bias-disable;
};
};
@ -466,6 +521,7 @@ pwm_c_a_pins: pwm_c_a {
mux {
groups = "pwm_c_a";
function = "pwm_c";
bias-disable;
};
};
@ -473,6 +529,7 @@ pwm_c_x10_pins: pwm_c_x10 {
mux {
groups = "pwm_c_x10";
function = "pwm_c";
bias-disable;
};
};
@ -480,6 +537,7 @@ pwm_c_x17_pins: pwm_c_x17 {
mux {
groups = "pwm_c_x17";
function = "pwm_c";
bias-disable;
};
};
@ -487,6 +545,7 @@ pwm_d_x11_pins: pwm_d_x11 {
mux {
groups = "pwm_d_x11";
function = "pwm_d";
bias-disable;
};
};
@ -494,6 +553,7 @@ pwm_d_x16_pins: pwm_d_x16 {
mux {
groups = "pwm_d_x16";
function = "pwm_d";
bias-disable;
};
};
@ -506,6 +566,7 @@ mux {
"sdio_cmd",
"sdio_clk";
function = "sdio";
bias-disable;
};
};
@ -513,9 +574,6 @@ sdio_clk_gate_pins: sdio_clk_gate {
mux {
groups = "GPIOX_4";
function = "gpio_periphs";
};
cfg-pull-down {
pins = "GPIOX_4";
bias-pull-down;
};
};
@ -524,6 +582,7 @@ spdif_in_z_pins: spdif_in_z {
mux {
groups = "spdif_in_z";
function = "spdif_in";
bias-disable;
};
};
@ -531,6 +590,7 @@ spdif_in_a1_pins: spdif_in_a1 {
mux {
groups = "spdif_in_a1";
function = "spdif_in";
bias-disable;
};
};
@ -538,6 +598,7 @@ spdif_in_a7_pins: spdif_in_a7 {
mux {
groups = "spdif_in_a7";
function = "spdif_in";
bias-disable;
};
};
@ -545,6 +606,7 @@ spdif_in_a19_pins: spdif_in_a19 {
mux {
groups = "spdif_in_a19";
function = "spdif_in";
bias-disable;
};
};
@ -552,6 +614,7 @@ spdif_in_a20_pins: spdif_in_a20 {
mux {
groups = "spdif_in_a20";
function = "spdif_in";
bias-disable;
};
};
@ -559,6 +622,7 @@ spdif_out_a1_pins: spdif_out_a1 {
mux {
groups = "spdif_out_a1";
function = "spdif_out";
bias-disable;
};
};
@ -566,6 +630,7 @@ spdif_out_a11_pins: spdif_out_a11 {
mux {
groups = "spdif_out_a11";
function = "spdif_out";
bias-disable;
};
};
@ -573,6 +638,7 @@ spdif_out_a19_pins: spdif_out_a19 {
mux {
groups = "spdif_out_a19";
function = "spdif_out";
bias-disable;
};
};
@ -580,6 +646,7 @@ spdif_out_a20_pins: spdif_out_a20 {
mux {
groups = "spdif_out_a20";
function = "spdif_out";
bias-disable;
};
};
@ -587,6 +654,7 @@ spdif_out_z_pins: spdif_out_z {
mux {
groups = "spdif_out_z";
function = "spdif_out";
bias-disable;
};
};
@ -596,6 +664,7 @@ mux {
"spi0_mosi",
"spi0_clk";
function = "spi0";
bias-disable;
};
};
@ -603,6 +672,7 @@ spi0_ss0_pins: spi0_ss0 {
mux {
groups = "spi0_ss0";
function = "spi0";
bias-disable;
};
};
@ -610,6 +680,7 @@ spi0_ss1_pins: spi0_ss1 {
mux {
groups = "spi0_ss1";
function = "spi0";
bias-disable;
};
};
@ -617,6 +688,7 @@ spi0_ss2_pins: spi0_ss2 {
mux {
groups = "spi0_ss2";
function = "spi0";
bias-disable;
};
};
@ -626,6 +698,7 @@ mux {
"spi1_mosi_a",
"spi1_clk_a";
function = "spi1";
bias-disable;
};
};
@ -633,6 +706,7 @@ spi1_ss0_a_pins: spi1_ss0_a {
mux {
groups = "spi1_ss0_a";
function = "spi1";
bias-disable;
};
};
@ -640,6 +714,7 @@ spi1_ss1_pins: spi1_ss1 {
mux {
groups = "spi1_ss1";
function = "spi1";
bias-disable;
};
};
@ -649,6 +724,7 @@ mux {
"spi1_mosi_x",
"spi1_clk_x";
function = "spi1";
bias-disable;
};
};
@ -656,6 +732,7 @@ spi1_ss0_x_pins: spi1_ss0_x {
mux {
groups = "spi1_ss0_x";
function = "spi1";
bias-disable;
};
};
@ -663,6 +740,7 @@ tdma_din0_pins: tdma_din0 {
mux {
groups = "tdma_din0";
function = "tdma";
bias-disable;
};
};
@ -670,6 +748,7 @@ tdma_dout0_x14_pins: tdma_dout0_x14 {
mux {
groups = "tdma_dout0_x14";
function = "tdma";
bias-disable;
};
};
@ -677,6 +756,7 @@ tdma_dout0_x15_pins: tdma_dout0_x15 {
mux {
groups = "tdma_dout0_x15";
function = "tdma";
bias-disable;
};
};
@ -684,6 +764,7 @@ tdma_dout1_pins: tdma_dout1 {
mux {
groups = "tdma_dout1";
function = "tdma";
bias-disable;
};
};
@ -691,6 +772,7 @@ tdma_din1_pins: tdma_din1 {
mux {
groups = "tdma_din1";
function = "tdma";
bias-disable;
};
};
@ -698,6 +780,7 @@ tdma_fs_pins: tdma_fs {
mux {
groups = "tdma_fs";
function = "tdma";
bias-disable;
};
};
@ -705,6 +788,7 @@ tdma_fs_slv_pins: tdma_fs_slv {
mux {
groups = "tdma_fs_slv";
function = "tdma";
bias-disable;
};
};
@ -712,6 +796,7 @@ tdma_sclk_pins: tdma_sclk {
mux {
groups = "tdma_sclk";
function = "tdma";
bias-disable;
};
};
@ -719,6 +804,7 @@ tdma_sclk_slv_pins: tdma_sclk_slv {
mux {
groups = "tdma_sclk_slv";
function = "tdma";
bias-disable;
};
};
@ -726,6 +812,7 @@ tdmb_din0_pins: tdmb_din0 {
mux {
groups = "tdmb_din0";
function = "tdmb";
bias-disable;
};
};
@ -733,6 +820,7 @@ tdmb_din1_pins: tdmb_din1 {
mux {
groups = "tdmb_din1";
function = "tdmb";
bias-disable;
};
};
@ -740,6 +828,7 @@ tdmb_din2_pins: tdmb_din2 {
mux {
groups = "tdmb_din2";
function = "tdmb";
bias-disable;
};
};
@ -747,6 +836,7 @@ tdmb_din3_pins: tdmb_din3 {
mux {
groups = "tdmb_din3";
function = "tdmb";
bias-disable;
};
};
@ -754,6 +844,7 @@ tdmb_dout0_pins: tdmb_dout0 {
mux {
groups = "tdmb_dout0";
function = "tdmb";
bias-disable;
};
};
@ -761,6 +852,7 @@ tdmb_dout1_pins: tdmb_dout1 {
mux {
groups = "tdmb_dout1";
function = "tdmb";
bias-disable;
};
};
@ -768,6 +860,7 @@ tdmb_dout2_pins: tdmb_dout2 {
mux {
groups = "tdmb_dout2";
function = "tdmb";
bias-disable;
};
};
@ -775,6 +868,7 @@ tdmb_dout3_pins: tdmb_dout3 {
mux {
groups = "tdmb_dout3";
function = "tdmb";
bias-disable;
};
};
@ -782,6 +876,7 @@ tdmb_fs_pins: tdmb_fs {
mux {
groups = "tdmb_fs";
function = "tdmb";
bias-disable;
};
};
@ -789,6 +884,7 @@ tdmb_fs_slv_pins: tdmb_fs_slv {
mux {
groups = "tdmb_fs_slv";
function = "tdmb";
bias-disable;
};
};
@ -796,6 +892,7 @@ tdmb_sclk_pins: tdmb_sclk {
mux {
groups = "tdmb_sclk";
function = "tdmb";
bias-disable;
};
};
@ -803,6 +900,7 @@ tdmb_sclk_slv_pins: tdmb_sclk_slv {
mux {
groups = "tdmb_sclk_slv";
function = "tdmb";
bias-disable;
};
};
@ -810,6 +908,7 @@ tdmc_fs_pins: tdmc_fs {
mux {
groups = "tdmc_fs";
function = "tdmc";
bias-disable;
};
};
@ -817,6 +916,7 @@ tdmc_fs_slv_pins: tdmc_fs_slv {
mux {
groups = "tdmc_fs_slv";
function = "tdmc";
bias-disable;
};
};
@ -824,6 +924,7 @@ tdmc_sclk_pins: tdmc_sclk {
mux {
groups = "tdmc_sclk";
function = "tdmc";
bias-disable;
};
};
@ -831,6 +932,7 @@ tdmc_sclk_slv_pins: tdmc_sclk_slv {
mux {
groups = "tdmc_sclk_slv";
function = "tdmc";
bias-disable;
};
};
@ -838,6 +940,7 @@ tdmc_din0_pins: tdmc_din0 {
mux {
groups = "tdmc_din0";
function = "tdmc";
bias-disable;
};
};
@ -845,6 +948,7 @@ tdmc_din1_pins: tdmc_din1 {
mux {
groups = "tdmc_din1";
function = "tdmc";
bias-disable;
};
};
@ -852,6 +956,7 @@ tdmc_din2_pins: tdmc_din2 {
mux {
groups = "tdmc_din2";
function = "tdmc";
bias-disable;
};
};
@ -859,6 +964,7 @@ tdmc_din3_pins: tdmc_din3 {
mux {
groups = "tdmc_din3";
function = "tdmc";
bias-disable;
};
};
@ -866,6 +972,7 @@ tdmc_dout0_pins: tdmc_dout0 {
mux {
groups = "tdmc_dout0";
function = "tdmc";
bias-disable;
};
};
@ -873,6 +980,7 @@ tdmc_dout1_pins: tdmc_dout1 {
mux {
groups = "tdmc_dout1";
function = "tdmc";
bias-disable;
};
};
@ -880,6 +988,7 @@ tdmc_dout2_pins: tdmc_dout2 {
mux {
groups = "tdmc_dout2";
function = "tdmc";
bias-disable;
};
};
@ -887,6 +996,7 @@ tdmc_dout3_pins: tdmc_dout3 {
mux {
groups = "tdmc_dout3";
function = "tdmc";
bias-disable;
};
};
@ -895,6 +1005,7 @@ mux {
groups = "uart_tx_a",
"uart_rx_a";
function = "uart_a";
bias-disable;
};
};
@ -903,6 +1014,7 @@ mux {
groups = "uart_cts_a",
"uart_rts_a";
function = "uart_a";
bias-disable;
};
};
@ -911,6 +1023,7 @@ mux {
groups = "uart_tx_b_x",
"uart_rx_b_x";
function = "uart_b";
bias-disable;
};
};
@ -919,6 +1032,7 @@ mux {
groups = "uart_cts_b_x",
"uart_rts_b_x";
function = "uart_b";
bias-disable;
};
};
@ -927,6 +1041,7 @@ mux {
groups = "uart_tx_b_z",
"uart_rx_b_z";
function = "uart_b";
bias-disable;
};
};
@ -935,6 +1050,7 @@ mux {
groups = "uart_cts_b_z",
"uart_rts_b_z";
function = "uart_b";
bias-disable;
};
};
@ -943,6 +1059,7 @@ mux {
groups = "uart_ao_tx_b_z",
"uart_ao_rx_b_z";
function = "uart_ao_b_z";
bias-disable;
};
};
@ -951,6 +1068,7 @@ mux {
groups = "uart_ao_cts_b_z",
"uart_ao_rts_b_z";
function = "uart_ao_b_z";
bias-disable;
};
};
};
@ -975,9 +1093,9 @@ clkc: clock-controller {
};
};
mailbox: mailbox@ff63dc00 {
mailbox: mailbox@ff63c404 {
compatible = "amlogic,meson-gx-mhu", "amlogic,meson-gxbb-mhu";
reg = <0 0xff63dc00 0 0x400>;
reg = <0 0xff63c404 0 0x4c>;
interrupts = <GIC_SPI 208 IRQ_TYPE_EDGE_RISING>,
<GIC_SPI 209 IRQ_TYPE_EDGE_RISING>,
<GIC_SPI 210 IRQ_TYPE_EDGE_RISING>;
@ -1239,6 +1357,7 @@ i2c_ao_sck_4_pins: i2c_ao_sck_4 {
mux {
groups = "i2c_ao_sck_4";
function = "i2c_ao";
bias-disable;
};
};
@ -1246,6 +1365,7 @@ i2c_ao_sck_8_pins: i2c_ao_sck_8 {
mux {
groups = "i2c_ao_sck_8";
function = "i2c_ao";
bias-disable;
};
};
@ -1253,6 +1373,7 @@ i2c_ao_sck_10_pins: i2c_ao_sck_10 {
mux {
groups = "i2c_ao_sck_10";
function = "i2c_ao";
bias-disable;
};
};
@ -1260,6 +1381,7 @@ i2c_ao_sda_5_pins: i2c_ao_sda_5 {
mux {
groups = "i2c_ao_sda_5";
function = "i2c_ao";
bias-disable;
};
};
@ -1267,6 +1389,7 @@ i2c_ao_sda_9_pins: i2c_ao_sda_9 {
mux {
groups = "i2c_ao_sda_9";
function = "i2c_ao";
bias-disable;
};
};
@ -1274,6 +1397,7 @@ i2c_ao_sda_11_pins: i2c_ao_sda_11 {
mux {
groups = "i2c_ao_sda_11";
function = "i2c_ao";
bias-disable;
};
};
@ -1281,6 +1405,7 @@ remote_input_ao_pins: remote_input_ao {
mux {
groups = "remote_input_ao";
function = "remote_input_ao";
bias-disable;
};
};
@ -1289,6 +1414,7 @@ mux {
groups = "uart_ao_tx_a",
"uart_ao_rx_a";
function = "uart_ao_a";
bias-disable;
};
};
@ -1297,6 +1423,7 @@ mux {
groups = "uart_ao_cts_a",
"uart_ao_rts_a";
function = "uart_ao_a";
bias-disable;
};
};
@ -1305,6 +1432,7 @@ mux {
groups = "uart_ao_tx_b",
"uart_ao_rx_b";
function = "uart_ao_b";
bias-disable;
};
};
@ -1313,6 +1441,7 @@ mux {
groups = "uart_ao_cts_b",
"uart_ao_rts_b";
function = "uart_ao_b";
bias-disable;
};
};
};
@ -1556,12 +1685,12 @@ sram: sram@fffc0000 {
#size-cells = <1>;
ranges = <0 0x0 0xfffc0000 0x20000>;
cpu_scp_lpri: scp-shmem@0 {
cpu_scp_lpri: scp-shmem@13000 {
compatible = "amlogic,meson-axg-scp-shmem";
reg = <0x13000 0x400>;
};
cpu_scp_hpri: scp-shmem@200 {
cpu_scp_hpri: scp-shmem@13400 {
compatible = "amlogic,meson-axg-scp-shmem";
reg = <0x13400 0x400>;
};

View File

@ -125,6 +125,7 @@ &hdmi_tx {
status = "okay";
pinctrl-0 = <&hdmi_hpd_pins>, <&hdmi_i2c_pins>;
pinctrl-names = "default";
hdmi-supply = <&hdmi_5v>;
};
&hdmi_tx_tmds_port {

View File

@ -262,6 +262,11 @@ uart_C: serial@8700 {
status = "disabled";
};
clock-measure@8758 {
compatible = "amlogic,meson-gx-clk-measure";
reg = <0x0 0x8758 0x0 0x10>;
};
i2c_B: i2c@87c0 {
compatible = "amlogic,meson-gx-i2c", "amlogic,meson-gxbb-i2c";
reg = <0x0 0x087c0 0x0 0x20>;

View File

@ -191,7 +191,7 @@ &ir {
pinctrl-names = "default";
};
&pinctrl_aobus {
&gpio_ao {
gpio-line-names = "UART TX", "UART RX", "Power Control", "Power Key In",
"VCCK En", "CON1 Header Pin31",
"I2S Header Pin6", "IR In", "I2S Header Pin7",
@ -201,7 +201,7 @@ &pinctrl_aobus {
"";
};
&pinctrl_periphs {
&gpio {
gpio-line-names = /* Bank GPIOZ */
"Eth MDIO", "Eth MDC", "Eth RGMII RX Clk",
"Eth RX DV", "Eth RX D0", "Eth RX D1", "Eth RX D2",

View File

@ -187,7 +187,7 @@ &ir {
pinctrl-names = "default";
};
&pinctrl_aobus {
&gpio_ao {
gpio-line-names = "UART TX", "UART RX", "VCCK En", "TF 3V3/1V8 En",
"USB HUB nRESET", "USB OTG Power En",
"J7 Header Pin2", "IR In", "J7 Header Pin4",
@ -197,7 +197,7 @@ &pinctrl_aobus {
"";
};
&pinctrl_periphs {
&gpio {
gpio-line-names = /* Bank GPIOZ */
"Eth MDIO", "Eth MDC", "Eth RGMII RX Clk",
"Eth RX DV", "Eth RX D0", "Eth RX D1", "Eth RX D2",

View File

@ -81,6 +81,7 @@ uart_ao_a_pins: uart_ao_a {
mux {
groups = "uart_tx_ao_a", "uart_rx_ao_a";
function = "uart_ao";
bias-disable;
};
};
@ -89,6 +90,7 @@ mux {
groups = "uart_cts_ao_a",
"uart_rts_ao_a";
function = "uart_ao";
bias-disable;
};
};
@ -96,6 +98,7 @@ uart_ao_b_pins: uart_ao_b {
mux {
groups = "uart_tx_ao_b", "uart_rx_ao_b";
function = "uart_ao_b";
bias-disable;
};
};
@ -104,6 +107,7 @@ mux {
groups = "uart_cts_ao_b",
"uart_rts_ao_b";
function = "uart_ao_b";
bias-disable;
};
};
@ -111,6 +115,7 @@ remote_input_ao_pins: remote_input_ao {
mux {
groups = "remote_input_ao";
function = "remote_input_ao";
bias-disable;
};
};
@ -119,6 +124,7 @@ mux {
groups = "i2c_sck_ao",
"i2c_sda_ao";
function = "i2c_ao";
bias-disable;
};
};
@ -126,6 +132,7 @@ pwm_ao_a_3_pins: pwm_ao_a_3 {
mux {
groups = "pwm_ao_a_3";
function = "pwm_ao_a_3";
bias-disable;
};
};
@ -133,6 +140,7 @@ pwm_ao_a_6_pins: pwm_ao_a_6 {
mux {
groups = "pwm_ao_a_6";
function = "pwm_ao_a_6";
bias-disable;
};
};
@ -140,6 +148,7 @@ pwm_ao_a_12_pins: pwm_ao_a_12 {
mux {
groups = "pwm_ao_a_12";
function = "pwm_ao_a_12";
bias-disable;
};
};
@ -147,6 +156,7 @@ pwm_ao_b_pins: pwm_ao_b {
mux {
groups = "pwm_ao_b";
function = "pwm_ao_b";
bias-disable;
};
};
@ -154,6 +164,7 @@ i2s_am_clk_pins: i2s_am_clk {
mux {
groups = "i2s_am_clk";
function = "i2s_out_ao";
bias-disable;
};
};
@ -161,6 +172,7 @@ i2s_out_ao_clk_pins: i2s_out_ao_clk {
mux {
groups = "i2s_out_ao_clk";
function = "i2s_out_ao";
bias-disable;
};
};
@ -168,6 +180,7 @@ i2s_out_lr_clk_pins: i2s_out_lr_clk {
mux {
groups = "i2s_out_lr_clk";
function = "i2s_out_ao";
bias-disable;
};
};
@ -175,6 +188,7 @@ i2s_out_ch01_ao_pins: i2s_out_ch01_ao {
mux {
groups = "i2s_out_ch01_ao";
function = "i2s_out_ao";
bias-disable;
};
};
@ -182,6 +196,7 @@ i2s_out_ch23_ao_pins: i2s_out_ch23_ao {
mux {
groups = "i2s_out_ch23_ao";
function = "i2s_out_ao";
bias-disable;
};
};
@ -189,6 +204,7 @@ i2s_out_ch45_ao_pins: i2s_out_ch45_ao {
mux {
groups = "i2s_out_ch45_ao";
function = "i2s_out_ao";
bias-disable;
};
};
@ -203,6 +219,7 @@ spdif_out_ao_13_pins: spdif_out_ao_13 {
mux {
groups = "spdif_out_ao_13";
function = "spdif_out_ao";
bias-disable;
};
};
@ -210,6 +227,7 @@ ao_cec_pins: ao_cec {
mux {
groups = "ao_cec";
function = "cec_ao";
bias-disable;
};
};
@ -217,6 +235,7 @@ ee_cec_pins: ee_cec {
mux {
groups = "ee_cec";
function = "cec_ao";
bias-disable;
};
};
};
@ -282,6 +301,10 @@ &clkc_AO {
compatible = "amlogic,meson-gxbb-aoclkc", "amlogic,meson-gx-aoclkc";
};
&efuse {
clocks = <&clkc CLKID_EFUSE>;
};
&ethmac {
clocks = <&clkc CLKID_ETH>,
<&clkc CLKID_FCLK_DIV2>,
@ -359,6 +382,7 @@ mux {
"emmc_cmd",
"emmc_clk";
function = "emmc";
bias-disable;
};
};
@ -366,6 +390,7 @@ emmc_ds_pins: emmc-ds {
mux {
groups = "emmc_ds";
function = "emmc";
bias-disable;
};
};
@ -373,9 +398,6 @@ emmc_clk_gate_pins: emmc_clk_gate {
mux {
groups = "BOOT_8";
function = "gpio_periphs";
};
cfg-pull-down {
pins = "BOOT_8";
bias-pull-down;
};
};
@ -387,6 +409,7 @@ mux {
"nor_c",
"nor_cs";
function = "nor";
bias-disable;
};
};
@ -396,6 +419,7 @@ mux {
"spi_mosi",
"spi_sclk";
function = "spi";
bias-disable;
};
};
@ -403,6 +427,7 @@ spi_ss0_pins: spi-ss0 {
mux {
groups = "spi_ss0";
function = "spi";
bias-disable;
};
};
@ -415,6 +440,7 @@ mux {
"sdcard_cmd",
"sdcard_clk";
function = "sdcard";
bias-disable;
};
};
@ -422,9 +448,6 @@ sdcard_clk_gate_pins: sdcard_clk_gate {
mux {
groups = "CARD_2";
function = "gpio_periphs";
};
cfg-pull-down {
pins = "CARD_2";
bias-pull-down;
};
};
@ -438,6 +461,7 @@ mux {
"sdio_cmd",
"sdio_clk";
function = "sdio";
bias-disable;
};
};
@ -445,9 +469,6 @@ sdio_clk_gate_pins: sdio_clk_gate {
mux {
groups = "GPIOX_4";
function = "gpio_periphs";
};
cfg-pull-down {
pins = "GPIOX_4";
bias-pull-down;
};
};
@ -456,6 +477,7 @@ sdio_irq_pins: sdio_irq {
mux {
groups = "sdio_irq";
function = "sdio";
bias-disable;
};
};
@ -464,6 +486,7 @@ mux {
groups = "uart_tx_a",
"uart_rx_a";
function = "uart_a";
bias-disable;
};
};
@ -472,6 +495,7 @@ mux {
groups = "uart_cts_a",
"uart_rts_a";
function = "uart_a";
bias-disable;
};
};
@ -480,6 +504,7 @@ mux {
groups = "uart_tx_b",
"uart_rx_b";
function = "uart_b";
bias-disable;
};
};
@ -488,6 +513,7 @@ mux {
groups = "uart_cts_b",
"uart_rts_b";
function = "uart_b";
bias-disable;
};
};
@ -496,6 +522,7 @@ mux {
groups = "uart_tx_c",
"uart_rx_c";
function = "uart_c";
bias-disable;
};
};
@ -504,6 +531,7 @@ mux {
groups = "uart_cts_c",
"uart_rts_c";
function = "uart_c";
bias-disable;
};
};
@ -512,6 +540,7 @@ mux {
groups = "i2c_sck_a",
"i2c_sda_a";
function = "i2c_a";
bias-disable;
};
};
@ -520,6 +549,7 @@ mux {
groups = "i2c_sck_b",
"i2c_sda_b";
function = "i2c_b";
bias-disable;
};
};
@ -528,6 +558,7 @@ mux {
groups = "i2c_sck_c",
"i2c_sda_c";
function = "i2c_c";
bias-disable;
};
};
@ -548,6 +579,7 @@ mux {
"eth_txd2",
"eth_txd3";
function = "eth";
bias-disable;
};
};
@ -563,6 +595,7 @@ mux {
"eth_txd0",
"eth_txd1";
function = "eth";
bias-disable;
};
};
@ -570,6 +603,7 @@ pwm_a_x_pins: pwm_a_x {
mux {
groups = "pwm_a_x";
function = "pwm_a_x";
bias-disable;
};
};
@ -577,6 +611,7 @@ pwm_a_y_pins: pwm_a_y {
mux {
groups = "pwm_a_y";
function = "pwm_a_y";
bias-disable;
};
};
@ -584,6 +619,7 @@ pwm_b_pins: pwm_b {
mux {
groups = "pwm_b";
function = "pwm_b";
bias-disable;
};
};
@ -591,6 +627,7 @@ pwm_d_pins: pwm_d {
mux {
groups = "pwm_d";
function = "pwm_d";
bias-disable;
};
};
@ -598,6 +635,7 @@ pwm_e_pins: pwm_e {
mux {
groups = "pwm_e";
function = "pwm_e";
bias-disable;
};
};
@ -605,6 +643,7 @@ pwm_f_x_pins: pwm_f_x {
mux {
groups = "pwm_f_x";
function = "pwm_f_x";
bias-disable;
};
};
@ -612,6 +651,7 @@ pwm_f_y_pins: pwm_f_y {
mux {
groups = "pwm_f_y";
function = "pwm_f_y";
bias-disable;
};
};
@ -619,6 +659,7 @@ hdmi_hpd_pins: hdmi_hpd {
mux {
groups = "hdmi_hpd";
function = "hdmi_hpd";
bias-disable;
};
};
@ -626,6 +667,7 @@ hdmi_i2c_pins: hdmi_i2c {
mux {
groups = "hdmi_sda", "hdmi_scl";
function = "hdmi_i2c";
bias-disable;
};
};
@ -633,6 +675,7 @@ i2sout_ch23_y_pins: i2sout_ch23_y {
mux {
groups = "i2sout_ch23_y";
function = "i2s_out";
bias-disable;
};
};
@ -640,6 +683,7 @@ i2sout_ch45_y_pins: i2sout_ch45_y {
mux {
groups = "i2sout_ch45_y";
function = "i2s_out";
bias-disable;
};
};
@ -647,6 +691,7 @@ i2sout_ch67_y_pins: i2sout_ch67_y {
mux {
groups = "i2sout_ch67_y";
function = "i2s_out";
bias-disable;
};
};
@ -654,6 +699,7 @@ spdif_out_y_pins: spdif_out_y {
mux {
groups = "spdif_out_y";
function = "spdif_out";
bias-disable;
};
};
};

View File

@ -0,0 +1,248 @@
// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
/*
* Copyright (c) 2018 BayLibre, SAS.
* Author: Neil Armstrong <narmstrong@baylibre.com>
* Author: Jerome Brunet <jbrunet@baylibre.com>
*/
/dts-v1/;
#include <dt-bindings/input/input.h>
#include "meson-gxl-s905x.dtsi"
/ {
compatible = "libretech,aml-s805x-ac", "amlogic,s805x",
"amlogic,meson-gxl";
model = "Libre Computer Board AML-S805X-AC";
aliases {
serial0 = &uart_AO;
ethernet0 = &ethmac;
spi0 = &spifc;
};
chosen {
stdout-path = "serial0:115200n8";
};
cvbs-connector {
/*
* The pads are present but no connector is soldered on
* 2J2, so keep this off by default.
*/
status = "disabled";
compatible = "composite-video-connector";
port {
cvbs_connector_in: endpoint {
remote-endpoint = <&cvbs_vdac_out>;
};
};
};
dc_5v: regulator-dc_5v {
compatible = "regulator-fixed";
regulator-name = "DC_5V";
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
regulator-always-on;
};
emmc_pwrseq: emmc-pwrseq {
compatible = "mmc-pwrseq-emmc";
reset-gpios = <&gpio BOOT_9 GPIO_ACTIVE_LOW>;
};
hdmi-connector {
compatible = "hdmi-connector";
type = "a";
port {
hdmi_connector_in: endpoint {
remote-endpoint = <&hdmi_tx_tmds_out>;
};
};
};
memory@0 {
device_type = "memory";
reg = <0x0 0x0 0x0 0x20000000>;
};
vcck: regulator-vcck {
compatible = "regulator-fixed";
regulator-name = "VCCK";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
vin-supply = <&dc_5v>;
/*
* This is controlled by GPIOAO_9 we reserve this but
* claiming it as done below reset the board anyway
* Need to investigate this
*
* gpio = <&gpio_ao GPIOAO_9 GPIO_ACTIVE_HIGH>;
* enable-active-high;
*/
regulator-always-on;
};
vcc_3v3: regulator-vcc_3v3 {
compatible = "regulator-fixed";
regulator-name = "VCC_3V3";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
vin-supply = <&dc_5v>;
regulator-always-on;
};
vddio_boot: regulator-vddio_boot {
compatible = "regulator-fixed";
regulator-name = "VDDIO_BOOT";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
vin-supply = <&vcc_3v3>;
regulator-always-on;
};
};
&cec_AO {
status = "okay";
pinctrl-0 = <&ao_cec_pins>;
pinctrl-names = "default";
hdmi-phandle = <&hdmi_tx>;
};
&cvbs_vdac_port {
cvbs_vdac_out: endpoint {
remote-endpoint = <&cvbs_connector_in>;
};
};
&ethmac {
status = "okay";
};
&internal_phy {
pinctrl-0 = <&eth_link_led_pins>, <&eth_act_led_pins>;
pinctrl-names = "default";
};
&ir {
status = "okay";
pinctrl-0 = <&remote_input_ao_pins>;
pinctrl-names = "default";
};
&hdmi_tx {
status = "okay";
pinctrl-0 = <&hdmi_hpd_pins>, <&hdmi_i2c_pins>;
pinctrl-names = "default";
};
&hdmi_tx_tmds_port {
hdmi_tx_tmds_out: endpoint {
remote-endpoint = <&hdmi_connector_in>;
};
};
&gpio_ao {
gpio-line-names = "UART TX",
"UART RX",
"7J1 Header Pin31",
"", "", "", "",
"IR In",
"HDMI CEC",
"5V VCCK Regulator",
/* GPIO_TEST_N */
"";
};
&gpio {
gpio-line-names = /* Bank GPIOZ */
"", "", "", "", "", "", "",
"", "", "", "", "", "", "",
"Eth Link LED", "Eth Activity LED",
/* Bank GPIOH */
"HDMI HPD", "HDMI SDA", "HDMI SCL",
"", "7J1 Header Pin13",
"7J1 Header Pin15",
"7J1 Header Pin7",
"7J1 Header Pin12",
"7J1 Header Pin16",
"7J1 Header Pin18",
/* Bank BOOT */
"eMMC D0", "eMMC D1", "eMMC D2", "eMMC D3",
"eMMC D4", "eMMC D5", "eMMC D6", "eMMC D7",
"eMMC Clk", "eMMC Reset", "eMMC CMD",
"SPI NOR MOSI", "SPI NOR MISO", "SPI NOR Clk",
"", "SPI NOR Chip Select",
/* Bank CARD */
"", "", "", "", "", "", "",
/* Bank GPIODV */
"", "", "", "", "", "", "", "", "", "", "", "",
"", "", "", "", "", "", "", "", "", "", "", "",
"7J1 Header Pin27", "7J1 Header Pin28", "",
"7J1 Header Pin29",
"VCCK Regulator", "VDDEE Regulator",
/* Bank GPIOX */
"7J1 Header Pin22", "7J1 Header Pin26",
"7J1 Header Pin36", "7J1 Header Pin38",
"7J1 Header Pin40", "7J1 Header Pin37",
"7J1 Header Pin33", "7J1 Header Pin35",
"7J1 Header Pin19", "7J1 Header Pin21",
"7J1 Header Pin24", "7J1 Header Pin23",
"7J1 Header Pin8", "7J1 Header Pin10",
"", "", "7J1 Header Pin32", "", "",
/* Bank GPIOCLK */
"", "";
};
&saradc {
status = "okay";
vref-supply = <&vddio_boot>;
};
/* eMMC */
&sd_emmc_c {
status = "okay";
pinctrl-0 = <&emmc_pins>;
pinctrl-1 = <&emmc_clk_gate_pins>;
pinctrl-names = "default", "clk-gate";
bus-width = <8>;
cap-mmc-highspeed;
mmc-ddr-1_8v;
mmc-hs200-1_8v;
max-frequency = <200000000>;
disable-wp;
mmc-pwrseq = <&emmc_pwrseq>;
vmmc-supply = <&vcc_3v3>;
vqmmc-supply = <&vddio_boot>;
};
&spifc {
status = "okay";
pinctrl-0 = <&nor_pins>;
pinctrl-names = "default";
w25q32: spi-flash@0 {
#address-cells = <1>;
#size-cells = <1>;
compatible = "jedec,spi-nor";
reg = <0>;
spi-max-frequency = <3000000>;
};
};
&uart_AO {
status = "okay";
pinctrl-0 = <&uart_ao_a_pins>;
pinctrl-names = "default";
};
&usb0 {
status = "okay";
};

View File

@ -86,6 +86,7 @@ external_phy: ethernet-phy@0 {
max-speed = <1000>;
interrupt-parent = <&gpio_intc>;
interrupts = <29 IRQ_TYPE_LEVEL_LOW>;
eee-broken-1000t;
};
};

View File

@ -0,0 +1,21 @@
// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
/*
* Copyright (c) 2018 He Yangxuan
*/
/dts-v1/;
#include "meson-gxl-s905d-p230.dts"
/ {
compatible = "phicomm,n1", "amlogic,s905d", "amlogic,meson-gxl";
model = "Phicomm N1";
cvbs-connector {
status = "disabled";
};
};
&cvbs_vdac_port {
status = "disabled";
};

View File

@ -78,6 +78,7 @@ &hdmi_tx {
status = "okay";
pinctrl-0 = <&hdmi_hpd_pins>, <&hdmi_i2c_pins>;
pinctrl-names = "default";
hdmi-supply = <&hdmi_5v>;
};
&hdmi_tx_tmds_port {
@ -112,7 +113,7 @@ &ir {
linux,rc-map-name = "rc-geekbox";
};
&pinctrl_aobus {
&gpio_ao {
gpio-line-names = "UART TX",
"UART RX",
"Power Key In",
@ -127,7 +128,7 @@ &pinctrl_aobus {
"";
};
&pinctrl_periphs {
&gpio {
gpio-line-names = /* Bank GPIOZ */
"", "", "", "", "", "", "",
"", "", "", "", "", "", "",
@ -187,6 +188,13 @@ brcmf: wifi@1 {
};
};
&uart_A {
bluetooth {
compatible = "brcm,bcm43438-bt";
shutdown-gpios = <&gpio GPIOX_17 GPIO_ACTIVE_HIGH>;
};
};
/* This is brought out on the Linux_RX (18) and Linux_TX (19) pins: */
&uart_AO {
status = "okay";

View File

@ -155,6 +155,7 @@ &hdmi_tx {
status = "okay";
pinctrl-0 = <&hdmi_hpd_pins>, <&hdmi_i2c_pins>;
pinctrl-names = "default";
hdmi-supply = <&hdmi_5v>;
};
&hdmi_tx_tmds_port {
@ -163,7 +164,7 @@ hdmi_tx_tmds_out: endpoint {
};
};
&pinctrl_aobus {
&gpio_ao {
gpio-line-names = "UART TX",
"UART RX",
"Blue LED",
@ -178,7 +179,7 @@ &pinctrl_aobus {
"7J1 Header Pin15";
};
&pinctrl_periphs {
&gpio {
gpio-line-names = /* Bank GPIOZ */
"", "", "", "", "", "", "",
"", "", "", "", "", "", "",

View File

@ -51,6 +51,7 @@ &hdmi_tx {
status = "okay";
pinctrl-0 = <&hdmi_hpd_pins>, <&hdmi_i2c_pins>;
pinctrl-names = "default";
hdmi-supply = <&hdmi_5v>;
};
&hdmi_tx_tmds_port {

View File

@ -75,6 +75,10 @@ usb3_phy: phy@78080 {
};
};
&efuse {
clocks = <&clkc CLKID_EFUSE>;
};
&ethmac {
reg = <0x0 0xc9410000 0x0 0x10000
0x0 0xc8834540 0x0 0x4>;
@ -112,6 +116,7 @@ uart_ao_a_pins: uart_ao_a {
mux {
groups = "uart_tx_ao_a", "uart_rx_ao_a";
function = "uart_ao";
bias-disable;
};
};
@ -120,6 +125,7 @@ mux {
groups = "uart_cts_ao_a",
"uart_rts_ao_a";
function = "uart_ao";
bias-disable;
};
};
@ -127,6 +133,7 @@ uart_ao_b_pins: uart_ao_b {
mux {
groups = "uart_tx_ao_b", "uart_rx_ao_b";
function = "uart_ao_b";
bias-disable;
};
};
@ -134,6 +141,7 @@ uart_ao_b_0_1_pins: uart_ao_b_0_1 {
mux {
groups = "uart_tx_ao_b_0", "uart_rx_ao_b_1";
function = "uart_ao_b";
bias-disable;
};
};
@ -142,6 +150,7 @@ mux {
groups = "uart_cts_ao_b",
"uart_rts_ao_b";
function = "uart_ao_b";
bias-disable;
};
};
@ -149,6 +158,7 @@ remote_input_ao_pins: remote_input_ao {
mux {
groups = "remote_input_ao";
function = "remote_input_ao";
bias-disable;
};
};
@ -157,6 +167,7 @@ mux {
groups = "i2c_sck_ao",
"i2c_sda_ao";
function = "i2c_ao";
bias-disable;
};
};
@ -164,6 +175,7 @@ pwm_ao_a_3_pins: pwm_ao_a_3 {
mux {
groups = "pwm_ao_a_3";
function = "pwm_ao_a";
bias-disable;
};
};
@ -171,6 +183,7 @@ pwm_ao_a_8_pins: pwm_ao_a_8 {
mux {
groups = "pwm_ao_a_8";
function = "pwm_ao_a";
bias-disable;
};
};
@ -178,6 +191,7 @@ pwm_ao_b_pins: pwm_ao_b {
mux {
groups = "pwm_ao_b";
function = "pwm_ao_b";
bias-disable;
};
};
@ -185,6 +199,7 @@ pwm_ao_b_6_pins: pwm_ao_b_6 {
mux {
groups = "pwm_ao_b_6";
function = "pwm_ao_b";
bias-disable;
};
};
@ -192,6 +207,7 @@ i2s_out_ch23_ao_pins: i2s_out_ch23_ao {
mux {
groups = "i2s_out_ch23_ao";
function = "i2s_out_ao";
bias-disable;
};
};
@ -199,6 +215,7 @@ i2s_out_ch45_ao_pins: i2s_out_ch45_ao {
mux {
groups = "i2s_out_ch45_ao";
function = "i2s_out_ao";
bias-disable;
};
};
@ -206,6 +223,7 @@ spdif_out_ao_6_pins: spdif_out_ao_6 {
mux {
groups = "spdif_out_ao_6";
function = "spdif_out_ao";
bias-disable;
};
};
@ -213,6 +231,7 @@ spdif_out_ao_9_pins: spdif_out_ao_9 {
mux {
groups = "spdif_out_ao_9";
function = "spdif_out_ao";
bias-disable;
};
};
@ -220,6 +239,7 @@ ao_cec_pins: ao_cec {
mux {
groups = "ao_cec";
function = "cec_ao";
bias-disable;
};
};
@ -227,6 +247,7 @@ ee_cec_pins: ee_cec {
mux {
groups = "ee_cec";
function = "cec_ao";
bias-disable;
};
};
};
@ -306,6 +327,7 @@ mux {
"emmc_cmd",
"emmc_clk";
function = "emmc";
bias-disable;
};
};
@ -313,6 +335,7 @@ emmc_ds_pins: emmc-ds {
mux {
groups = "emmc_ds";
function = "emmc";
bias-disable;
};
};
@ -320,9 +343,6 @@ emmc_clk_gate_pins: emmc_clk_gate {
mux {
groups = "BOOT_8";
function = "gpio_periphs";
};
cfg-pull-down {
pins = "BOOT_8";
bias-pull-down;
};
};
@ -334,6 +354,7 @@ mux {
"nor_c",
"nor_cs";
function = "nor";
bias-disable;
};
};
@ -343,6 +364,7 @@ mux {
"spi_mosi",
"spi_sclk";
function = "spi";
bias-disable;
};
};
@ -350,6 +372,7 @@ spi_ss0_pins: spi-ss0 {
mux {
groups = "spi_ss0";
function = "spi";
bias-disable;
};
};
@ -362,6 +385,7 @@ mux {
"sdcard_cmd",
"sdcard_clk";
function = "sdcard";
bias-disable;
};
};
@ -369,9 +393,6 @@ sdcard_clk_gate_pins: sdcard_clk_gate {
mux {
groups = "CARD_2";
function = "gpio_periphs";
};
cfg-pull-down {
pins = "CARD_2";
bias-pull-down;
};
};
@ -385,6 +406,7 @@ mux {
"sdio_cmd",
"sdio_clk";
function = "sdio";
bias-disable;
};
};
@ -392,9 +414,6 @@ sdio_clk_gate_pins: sdio_clk_gate {
mux {
groups = "GPIOX_4";
function = "gpio_periphs";
};
cfg-pull-down {
pins = "GPIOX_4";
bias-pull-down;
};
};
@ -403,6 +422,7 @@ sdio_irq_pins: sdio_irq {
mux {
groups = "sdio_irq";
function = "sdio";
bias-disable;
};
};
@ -411,6 +431,7 @@ mux {
groups = "uart_tx_a",
"uart_rx_a";
function = "uart_a";
bias-disable;
};
};
@ -419,6 +440,7 @@ mux {
groups = "uart_cts_a",
"uart_rts_a";
function = "uart_a";
bias-disable;
};
};
@ -427,6 +449,7 @@ mux {
groups = "uart_tx_b",
"uart_rx_b";
function = "uart_b";
bias-disable;
};
};
@ -435,6 +458,7 @@ mux {
groups = "uart_cts_b",
"uart_rts_b";
function = "uart_b";
bias-disable;
};
};
@ -443,6 +467,7 @@ mux {
groups = "uart_tx_c",
"uart_rx_c";
function = "uart_c";
bias-disable;
};
};
@ -451,6 +476,7 @@ mux {
groups = "uart_cts_c",
"uart_rts_c";
function = "uart_c";
bias-disable;
};
};
@ -459,6 +485,7 @@ mux {
groups = "i2c_sck_a",
"i2c_sda_a";
function = "i2c_a";
bias-disable;
};
};
@ -467,6 +494,7 @@ mux {
groups = "i2c_sck_b",
"i2c_sda_b";
function = "i2c_b";
bias-disable;
};
};
@ -475,6 +503,7 @@ mux {
groups = "i2c_sck_c",
"i2c_sda_c";
function = "i2c_c";
bias-disable;
};
};
@ -495,6 +524,7 @@ mux {
"eth_txd2",
"eth_txd3";
function = "eth";
bias-disable;
};
};
@ -502,6 +532,7 @@ eth_link_led_pins: eth_link_led {
mux {
groups = "eth_link_led";
function = "eth_led";
bias-disable;
};
};
@ -516,6 +547,7 @@ pwm_a_pins: pwm_a {
mux {
groups = "pwm_a";
function = "pwm_a";
bias-disable;
};
};
@ -523,6 +555,7 @@ pwm_b_pins: pwm_b {
mux {
groups = "pwm_b";
function = "pwm_b";
bias-disable;
};
};
@ -530,6 +563,7 @@ pwm_c_pins: pwm_c {
mux {
groups = "pwm_c";
function = "pwm_c";
bias-disable;
};
};
@ -537,6 +571,7 @@ pwm_d_pins: pwm_d {
mux {
groups = "pwm_d";
function = "pwm_d";
bias-disable;
};
};
@ -544,6 +579,7 @@ pwm_e_pins: pwm_e {
mux {
groups = "pwm_e";
function = "pwm_e";
bias-disable;
};
};
@ -551,6 +587,7 @@ pwm_f_clk_pins: pwm_f_clk {
mux {
groups = "pwm_f_clk";
function = "pwm_f";
bias-disable;
};
};
@ -558,6 +595,7 @@ pwm_f_x_pins: pwm_f_x {
mux {
groups = "pwm_f_x";
function = "pwm_f";
bias-disable;
};
};
@ -565,6 +603,7 @@ hdmi_hpd_pins: hdmi_hpd {
mux {
groups = "hdmi_hpd";
function = "hdmi_hpd";
bias-disable;
};
};
@ -572,6 +611,7 @@ hdmi_i2c_pins: hdmi_i2c {
mux {
groups = "hdmi_sda", "hdmi_scl";
function = "hdmi_i2c";
bias-disable;
};
};
@ -579,6 +619,7 @@ i2s_am_clk_pins: i2s_am_clk {
mux {
groups = "i2s_am_clk";
function = "i2s_out";
bias-disable;
};
};
@ -586,6 +627,7 @@ i2s_out_ao_clk_pins: i2s_out_ao_clk {
mux {
groups = "i2s_out_ao_clk";
function = "i2s_out";
bias-disable;
};
};
@ -593,6 +635,7 @@ i2s_out_lr_clk_pins: i2s_out_lr_clk {
mux {
groups = "i2s_out_lr_clk";
function = "i2s_out";
bias-disable;
};
};
@ -600,12 +643,14 @@ i2s_out_ch01_pins: i2s_out_ch01 {
mux {
groups = "i2s_out_ch01";
function = "i2s_out";
bias-disable;
};
};
i2sout_ch23_z_pins: i2sout_ch23_z {
mux {
groups = "i2sout_ch23_z";
function = "i2s_out";
bias-disable;
};
};
@ -613,6 +658,7 @@ i2sout_ch45_z_pins: i2sout_ch45_z {
mux {
groups = "i2sout_ch45_z";
function = "i2s_out";
bias-disable;
};
};
@ -620,6 +666,7 @@ i2sout_ch67_z_pins: i2sout_ch67_z {
mux {
groups = "i2sout_ch67_z";
function = "i2s_out";
bias-disable;
};
};
@ -627,6 +674,7 @@ spdif_out_h_pins: spdif_out_ao_h {
mux {
groups = "spdif_out_h";
function = "spdif_out";
bias-disable;
};
};
};

View File

@ -132,19 +132,15 @@ map0 {
map1 {
trip = <&cpu_alert1>;
cooling-device = <&gpio_fan 2 THERMAL_NO_LIMIT>;
};
map2 {
trip = <&cpu_alert1>;
cooling-device =
<&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
};
map3 {
trip = <&cpu_alert1>;
cooling-device =
<&cpu4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
cooling-device = <&gpio_fan 2 THERMAL_NO_LIMIT>,
<&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
};
};
};
@ -271,6 +267,7 @@ &hdmi_tx {
status = "okay";
pinctrl-0 = <&hdmi_hpd_pins>, <&hdmi_i2c_pins>;
pinctrl-names = "default";
hdmi-supply = <&hdmi_5v>;
};
&hdmi_tx_tmds_port {