forked from luck/tmp_suning_uos_patched
arm64: dts: Amlogic updates for v5.6
- new boards: libretech-pc (S912 and S905D versions) - new board: Videostrong KII Pro - A1: add reset controller -----BEGIN PGP SIGNATURE----- iQIzBAABCAAdFiEEe4dGDhaSf6n1v/EMWTcYmtP7xmUFAl4Xc/IACgkQWTcYmtP7 xmVWVQ//UoVRudraCl55cRr01VSWeciO2ccDau6ohZgnEs0lQauBEB36Z5SjrHbz pF1b1cR/qgcMG5Y5d7dkhHSP0CaHfhqHoWD+ePo1HuGeqnQ0YC6cIvXxLltohS0O jTqImL01vVbWZdg+CgwWLTXOa+eUYRKaQmilrSFgZwDrUM0yA1g5a88pEsl0ZHhM +6rXuWyunuojSkxS5JUFZU4gqq2A6h0UYysixI3YCtB6aOVvWvR/twM48wAtzUwR PyANvh1LuAUiUMcOPTVuM3+rjswmuczQZg7gLSk0QO+wNZwP0jpzolNTw2Y8Q90a JfiJMs+HG+REL83h1+S+pEsG2N7+rDkqXoPA0yKR68lDd0CN824/qv6pjOSUnAXz QS41H5hktWeWGeOwzx4flC73PSPgqiMIui2r7U+857zgNpLLOXbH8LfWTOS8TsPx hKsaz0LfW9+QffZHmA82yw5qDf8mHB9lDwyWWd9fulRRqnwDvr97NN9EAftmkIm1 crZA+u1LDxRLHwdhCRt7gnbsTUTMBBsB3R4SscDa5759ClTLkCwm6OXuV62vmV0N /UKDAUjtMxxbEEhZ2TFtRUUP1yiqAOsqgcMfqwOQJe5N5QrN7HSxdc1431tYY/Il i13Y3mtFob6AA5M40hDPETs3v7B3TKPJypDf5hatcLN/a6uu9EA= =ye5+ -----END PGP SIGNATURE----- Merge tag 'amlogic-dt64' of https://git.kernel.org/pub/scm/linux/kernel/git/khilman/linux-amlogic into arm/dt arm64: dts: Amlogic updates for v5.6 - new boards: libretech-pc (S912 and S905D versions) - new board: Videostrong KII Pro - A1: add reset controller * tag 'amlogic-dt64' of https://git.kernel.org/pub/scm/linux/kernel/git/khilman/linux-amlogic: arm64: dts: meson: add audio fifo depths arm64: dts: meson: add libretech-pc boards support dt-bindings: arm: amlogic: add libretech-pc bindings arm64: dts: meson: gxl: add i2c C pins arm64: dts: meson-sm1: add video decoder compatible arm64: dts: meson-g12-common: add video decoder node arm64: dts: meson-gxbb: add support for Videostrong KII Pro dt-bindings: arm: amlogic: add Videostrong KII Pro bindings dt-bindings: Add vendor prefix for Videostrong arm64: dts: meson: a1: add pinctrl controller support arm64: dts: meson: add reset controller for Meson-A1 SoC Link: https://lore.kernel.org/r/7hsgkidi3k.fsf@baylibre.com Signed-off-by: Olof Johansson <olof@lixom.net>
This commit is contained in:
commit
5a74e85ae4
|
@ -59,6 +59,7 @@ properties:
|
|||
- friendlyarm,nanopi-k2
|
||||
- hardkernel,odroid-c2
|
||||
- nexbox,a95x
|
||||
- videostrong,kii-pro
|
||||
- wetek,hub
|
||||
- wetek,play2
|
||||
- const: amlogic,meson-gxbb
|
||||
|
@ -104,6 +105,7 @@ properties:
|
|||
- enum:
|
||||
- amlogic,p230
|
||||
- amlogic,p231
|
||||
- libretech,aml-s905d-pc
|
||||
- phicomm,n1
|
||||
- const: amlogic,s905d
|
||||
- const: amlogic,meson-gxl
|
||||
|
@ -115,6 +117,7 @@ properties:
|
|||
- amlogic,q201
|
||||
- khadas,vim2
|
||||
- kingnovel,r-box-pro
|
||||
- libretech,aml-s912-pc
|
||||
- nexbox,a1
|
||||
- tronsmart,vega-s96
|
||||
- const: amlogic,s912
|
||||
|
|
|
@ -1012,6 +1012,8 @@ patternProperties:
|
|||
description: Variscite Ltd.
|
||||
"^via,.*":
|
||||
description: VIA Technologies, Inc.
|
||||
"^videostrong,.*":
|
||||
description: Videostrong Technology Co., Ltd.
|
||||
"^virtio,.*":
|
||||
description: Virtual I/O Device Specification, developed by the OASIS consortium
|
||||
"^vishay,.*":
|
||||
|
|
|
@ -7,6 +7,7 @@ dtb-$(CONFIG_ARCH_MESON) += meson-g12b-a311d-khadas-vim3.dtb
|
|||
dtb-$(CONFIG_ARCH_MESON) += meson-g12b-s922x-khadas-vim3.dtb
|
||||
dtb-$(CONFIG_ARCH_MESON) += meson-g12b-odroid-n2.dtb
|
||||
dtb-$(CONFIG_ARCH_MESON) += meson-g12b-ugoos-am6.dtb
|
||||
dtb-$(CONFIG_ARCH_MESON) += meson-gxbb-kii-pro.dtb
|
||||
dtb-$(CONFIG_ARCH_MESON) += meson-gxbb-nanopi-k2.dtb
|
||||
dtb-$(CONFIG_ARCH_MESON) += meson-gxbb-nexbox-a95x.dtb
|
||||
dtb-$(CONFIG_ARCH_MESON) += meson-gxbb-odroidc2.dtb
|
||||
|
@ -29,11 +30,13 @@ 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
|
||||
dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s905d-libretech-pc.dtb
|
||||
dtb-$(CONFIG_ARCH_MESON) += meson-gxm-khadas-vim2.dtb
|
||||
dtb-$(CONFIG_ARCH_MESON) += meson-gxm-nexbox-a1.dtb
|
||||
dtb-$(CONFIG_ARCH_MESON) += meson-gxm-q200.dtb
|
||||
dtb-$(CONFIG_ARCH_MESON) += meson-gxm-q201.dtb
|
||||
dtb-$(CONFIG_ARCH_MESON) += meson-gxm-rbox-pro.dtb
|
||||
dtb-$(CONFIG_ARCH_MESON) += meson-gxm-s912-libretech-pc.dtb
|
||||
dtb-$(CONFIG_ARCH_MESON) += meson-gxm-vega-s96.dtb
|
||||
dtb-$(CONFIG_ARCH_MESON) += meson-sm1-sei610.dtb
|
||||
dtb-$(CONFIG_ARCH_MESON) += meson-sm1-khadas-vim3l.dtb
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
|
||||
#include <dt-bindings/interrupt-controller/irq.h>
|
||||
#include <dt-bindings/interrupt-controller/arm-gic.h>
|
||||
#include <dt-bindings/gpio/meson-a1-gpio.h>
|
||||
|
||||
/ {
|
||||
compatible = "amlogic,a1";
|
||||
|
@ -74,6 +75,30 @@ apb: bus@fe000000 {
|
|||
#size-cells = <2>;
|
||||
ranges = <0x0 0x0 0x0 0xfe000000 0x0 0x1000000>;
|
||||
|
||||
|
||||
reset: reset-controller@0 {
|
||||
compatible = "amlogic,meson-a1-reset";
|
||||
reg = <0x0 0x0 0x0 0x8c>;
|
||||
#reset-cells = <1>;
|
||||
};
|
||||
|
||||
periphs_pinctrl: pinctrl@0400 {
|
||||
compatible = "amlogic,meson-a1-periphs-pinctrl";
|
||||
#address-cells = <2>;
|
||||
#size-cells = <2>;
|
||||
ranges;
|
||||
|
||||
gpio: bank@0400 {
|
||||
reg = <0x0 0x0400 0x0 0x003c>,
|
||||
<0x0 0x0480 0x0 0x0118>;
|
||||
reg-names = "mux", "gpio";
|
||||
gpio-controller;
|
||||
#gpio-cells = <2>;
|
||||
gpio-ranges = <&periphs_pinctrl 0 0 62>;
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
uart_AO: serial@1c00 {
|
||||
compatible = "amlogic,meson-gx-uart",
|
||||
"amlogic,meson-ao-uart";
|
||||
|
|
|
@ -1169,6 +1169,7 @@ toddr_a: audio-controller@100 {
|
|||
interrupts = <GIC_SPI 84 IRQ_TYPE_EDGE_RISING>;
|
||||
clocks = <&clkc_audio AUD_CLKID_TODDR_A>;
|
||||
resets = <&arb AXG_ARB_TODDR_A>;
|
||||
amlogic,fifo-depth = <512>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
|
@ -1180,6 +1181,7 @@ toddr_b: audio-controller@140 {
|
|||
interrupts = <GIC_SPI 85 IRQ_TYPE_EDGE_RISING>;
|
||||
clocks = <&clkc_audio AUD_CLKID_TODDR_B>;
|
||||
resets = <&arb AXG_ARB_TODDR_B>;
|
||||
amlogic,fifo-depth = <256>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
|
@ -1191,6 +1193,7 @@ toddr_c: audio-controller@180 {
|
|||
interrupts = <GIC_SPI 86 IRQ_TYPE_EDGE_RISING>;
|
||||
clocks = <&clkc_audio AUD_CLKID_TODDR_C>;
|
||||
resets = <&arb AXG_ARB_TODDR_C>;
|
||||
amlogic,fifo-depth = <256>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
|
@ -1202,6 +1205,7 @@ frddr_a: audio-controller@1c0 {
|
|||
interrupts = <GIC_SPI 88 IRQ_TYPE_EDGE_RISING>;
|
||||
clocks = <&clkc_audio AUD_CLKID_FRDDR_A>;
|
||||
resets = <&arb AXG_ARB_FRDDR_A>;
|
||||
amlogic,fifo-depth = <512>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
|
@ -1213,6 +1217,7 @@ frddr_b: audio-controller@200 {
|
|||
interrupts = <GIC_SPI 89 IRQ_TYPE_EDGE_RISING>;
|
||||
clocks = <&clkc_audio AUD_CLKID_FRDDR_B>;
|
||||
resets = <&arb AXG_ARB_FRDDR_B>;
|
||||
amlogic,fifo-depth = <256>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
|
@ -1224,6 +1229,7 @@ frddr_c: audio-controller@240 {
|
|||
interrupts = <GIC_SPI 90 IRQ_TYPE_EDGE_RISING>;
|
||||
clocks = <&clkc_audio AUD_CLKID_FRDDR_C>;
|
||||
resets = <&arb AXG_ARB_FRDDR_C>;
|
||||
amlogic,fifo-depth = <256>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
|
|
|
@ -1968,6 +1968,29 @@ saradc: adc@9000 {
|
|||
};
|
||||
};
|
||||
|
||||
vdec: video-decoder@ff620000 {
|
||||
compatible = "amlogic,g12a-vdec";
|
||||
reg = <0x0 0xff620000 0x0 0x10000>,
|
||||
<0x0 0xffd0e180 0x0 0xe4>;
|
||||
reg-names = "dos", "esparser";
|
||||
interrupts = <GIC_SPI 44 IRQ_TYPE_EDGE_RISING>,
|
||||
<GIC_SPI 32 IRQ_TYPE_EDGE_RISING>;
|
||||
interrupt-names = "vdec", "esparser";
|
||||
|
||||
amlogic,ao-sysctrl = <&rti>;
|
||||
amlogic,canvas = <&canvas>;
|
||||
|
||||
clocks = <&clkc CLKID_PARSER>,
|
||||
<&clkc CLKID_DOS>,
|
||||
<&clkc CLKID_VDEC_1>,
|
||||
<&clkc CLKID_VDEC_HEVC>,
|
||||
<&clkc CLKID_VDEC_HEVCF>;
|
||||
clock-names = "dos_parser", "dos", "vdec_1",
|
||||
"vdec_hevc", "vdec_hevcf";
|
||||
resets = <&reset RESET_PARSER>;
|
||||
reset-names = "esparser";
|
||||
};
|
||||
|
||||
vpu: vpu@ff900000 {
|
||||
compatible = "amlogic,meson-g12a-vpu";
|
||||
reg = <0x0 0xff900000 0x0 0x100000>,
|
||||
|
|
|
@ -106,6 +106,7 @@ toddr_a: audio-controller@100 {
|
|||
resets = <&arb AXG_ARB_TODDR_A>,
|
||||
<&clkc_audio AUD_RESET_TODDR_A>;
|
||||
reset-names = "arb", "rst";
|
||||
amlogic,fifo-depth = <512>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
|
@ -120,6 +121,7 @@ toddr_b: audio-controller@140 {
|
|||
resets = <&arb AXG_ARB_TODDR_B>,
|
||||
<&clkc_audio AUD_RESET_TODDR_B>;
|
||||
reset-names = "arb", "rst";
|
||||
amlogic,fifo-depth = <256>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
|
@ -134,6 +136,7 @@ toddr_c: audio-controller@180 {
|
|||
resets = <&arb AXG_ARB_TODDR_C>,
|
||||
<&clkc_audio AUD_RESET_TODDR_C>;
|
||||
reset-names = "arb", "rst";
|
||||
amlogic,fifo-depth = <256>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
|
@ -148,6 +151,7 @@ frddr_a: audio-controller@1c0 {
|
|||
resets = <&arb AXG_ARB_FRDDR_A>,
|
||||
<&clkc_audio AUD_RESET_FRDDR_A>;
|
||||
reset-names = "arb", "rst";
|
||||
amlogic,fifo-depth = <512>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
|
@ -162,6 +166,7 @@ frddr_b: audio-controller@200 {
|
|||
resets = <&arb AXG_ARB_FRDDR_B>,
|
||||
<&clkc_audio AUD_RESET_FRDDR_B>;
|
||||
reset-names = "arb", "rst";
|
||||
amlogic,fifo-depth = <256>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
|
@ -176,6 +181,7 @@ frddr_c: audio-controller@240 {
|
|||
resets = <&arb AXG_ARB_FRDDR_C>,
|
||||
<&clkc_audio AUD_RESET_FRDDR_C>;
|
||||
reset-names = "arb", "rst";
|
||||
amlogic,fifo-depth = <256>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
|
|
375
arch/arm64/boot/dts/amlogic/meson-gx-libretech-pc.dtsi
Normal file
375
arch/arm64/boot/dts/amlogic/meson-gx-libretech-pc.dtsi
Normal file
|
@ -0,0 +1,375 @@
|
|||
// SPDX-License-Identifier: GPL-2.0
|
||||
/*
|
||||
* Copyright (c) 2019 BayLibre SAS.
|
||||
* Author: Jerome Brunet <jbrunet@baylibre.com>
|
||||
*/
|
||||
|
||||
/* Libretech Amlogic GX PC form factor - AKA: Tartiflette */
|
||||
|
||||
#include <dt-bindings/input/input.h>
|
||||
#include <dt-bindings/leds/common.h>
|
||||
|
||||
/ {
|
||||
adc-keys {
|
||||
compatible = "adc-keys";
|
||||
io-channels = <&saradc 0>;
|
||||
io-channel-names = "buttons";
|
||||
keyup-threshold-microvolt = <1800000>;
|
||||
|
||||
update-button {
|
||||
label = "update";
|
||||
linux,code = <KEY_VENDOR>;
|
||||
press-threshold-microvolt = <1300000>;
|
||||
};
|
||||
};
|
||||
|
||||
aliases {
|
||||
serial0 = &uart_AO;
|
||||
ethernet0 = ðmac;
|
||||
spi0 = &spifc;
|
||||
};
|
||||
|
||||
chosen {
|
||||
stdout-path = "serial0:115200n8";
|
||||
};
|
||||
|
||||
cvbs-connector {
|
||||
compatible = "composite-video-connector";
|
||||
status = "disabled";
|
||||
|
||||
port {
|
||||
cvbs_connector_in: endpoint {
|
||||
remote-endpoint = <&cvbs_vdac_out>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
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>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
gpio-keys-polled {
|
||||
compatible = "gpio-keys-polled";
|
||||
poll-interval = <100>;
|
||||
|
||||
power-button {
|
||||
label = "power";
|
||||
linux,code = <KEY_POWER>;
|
||||
gpios = <&gpio_ao GPIOAO_2 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
};
|
||||
|
||||
memory@0 {
|
||||
device_type = "memory";
|
||||
reg = <0x0 0x0 0x0 0x80000000>;
|
||||
};
|
||||
|
||||
ao_5v: regulator-ao_5v {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "AO_5V";
|
||||
regulator-min-microvolt = <5000000>;
|
||||
regulator-max-microvolt = <5000000>;
|
||||
vin-supply = <&dc_in>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
dc_in: regulator-dc_in {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "DC_IN";
|
||||
regulator-min-microvolt = <5000000>;
|
||||
regulator-max-microvolt = <5000000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
leds {
|
||||
compatible = "gpio-leds";
|
||||
|
||||
green {
|
||||
color = <LED_COLOR_ID_GREEN>;
|
||||
function = LED_FUNCTION_DISK_ACTIVITY;
|
||||
gpios = <&gpio_ao GPIOAO_9 GPIO_ACTIVE_HIGH>;
|
||||
linux,default-trigger = "disk-activity";
|
||||
};
|
||||
|
||||
blue {
|
||||
color = <LED_COLOR_ID_BLUE>;
|
||||
function = LED_FUNCTION_STATUS;
|
||||
gpios = <&gpio GPIODV_28 GPIO_ACTIVE_HIGH>;
|
||||
linux,default-trigger = "heartbeat";
|
||||
panic-indicator;
|
||||
};
|
||||
};
|
||||
|
||||
vcc_card: regulator-vcc_card {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "VCC_CARD";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
vin-supply = <&vddio_ao3v3>;
|
||||
|
||||
gpio = <&gpio GPIODV_4 GPIO_ACTIVE_HIGH>;
|
||||
enable-active-high;
|
||||
};
|
||||
|
||||
vcc5v: regulator-vcc5v {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "VCC5V";
|
||||
regulator-min-microvolt = <5000000>;
|
||||
regulator-max-microvolt = <5000000>;
|
||||
vin-supply = <&ao_5v>;
|
||||
|
||||
gpio = <&gpio GPIOH_3 GPIO_OPEN_DRAIN>;
|
||||
};
|
||||
|
||||
vddio_ao18: regulator-vddio_ao18 {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "VDDIO_AO18";
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <1800000>;
|
||||
vin-supply = <&ao_5v>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
vddio_ao3v3: regulator-vddio_ao3v3 {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "VDDIO_AO3V3";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
vin-supply = <&ao_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 = <&vddio_ao3v3>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
vddio_card: regulator-vddio-card {
|
||||
compatible = "regulator-gpio";
|
||||
regulator-name = "VDDIO_CARD";
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
|
||||
gpios = <&gpio GPIODV_5 GPIO_ACTIVE_HIGH>;
|
||||
gpios-states = <0>;
|
||||
|
||||
states = <3300000 0>,
|
||||
<1800000 1>;
|
||||
|
||||
regulator-settling-time-up-us = <200>;
|
||||
regulator-settling-time-down-us = <50000>;
|
||||
};
|
||||
};
|
||||
|
||||
&cec_AO {
|
||||
pinctrl-0 = <&ao_cec_pins>;
|
||||
pinctrl-names = "default";
|
||||
hdmi-phandle = <&hdmi_tx>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&cvbs_vdac_port {
|
||||
cvbs_vdac_out: endpoint {
|
||||
remote-endpoint = <&cvbs_connector_in>;
|
||||
};
|
||||
};
|
||||
|
||||
ðmac {
|
||||
pinctrl-0 = <ð_pins>, <ð_phy_irq_pins>;
|
||||
pinctrl-names = "default";
|
||||
phy-handle = <&external_phy>;
|
||||
amlogic,tx-delay-ns = <2>;
|
||||
phy-mode = "rgmii";
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&external_mdio {
|
||||
external_phy: ethernet-phy@0 {
|
||||
reg = <0>;
|
||||
max-speed = <1000>;
|
||||
reset-assert-us = <10000>;
|
||||
reset-deassert-us = <30000>;
|
||||
reset-gpios = <&gpio GPIOZ_14 GPIO_ACTIVE_LOW>;
|
||||
interrupt-parent = <&gpio_intc>;
|
||||
interrupts = <25 IRQ_TYPE_LEVEL_LOW>;
|
||||
};
|
||||
};
|
||||
|
||||
&pinctrl_periphs {
|
||||
/*
|
||||
* Make sure the reset pin of the usb HUB is driven high to take
|
||||
* it out of reset.
|
||||
*/
|
||||
usb1_rst_pins: usb1_rst_irq {
|
||||
mux {
|
||||
groups = "GPIODV_3";
|
||||
function = "gpio_periphs";
|
||||
bias-disable;
|
||||
output-high;
|
||||
};
|
||||
};
|
||||
|
||||
/* Make sure the phy irq pin is properly configured as input */
|
||||
eth_phy_irq_pins: eth_phy_irq {
|
||||
mux {
|
||||
groups = "GPIOZ_15";
|
||||
function = "gpio_periphs";
|
||||
bias-disable;
|
||||
output-disable;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&hdmi_tx {
|
||||
pinctrl-0 = <&hdmi_hpd_pins>, <&hdmi_i2c_pins>;
|
||||
pinctrl-names = "default";
|
||||
hdmi-supply = <&vcc5v>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&hdmi_tx_tmds_port {
|
||||
hdmi_tx_tmds_out: endpoint {
|
||||
remote-endpoint = <&hdmi_connector_in>;
|
||||
};
|
||||
};
|
||||
|
||||
&ir {
|
||||
pinctrl-0 = <&remote_input_ao_pins>;
|
||||
pinctrl-names = "default";
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&i2c_C {
|
||||
pinctrl-0 = <&i2c_c_dv18_pins>;
|
||||
pinctrl-names = "default";
|
||||
status = "okay";
|
||||
|
||||
rtc: rtc@51 {
|
||||
reg = <0x51>;
|
||||
compatible = "nxp,pcf8563";
|
||||
#clock-cells = <0>;
|
||||
clock-output-names = "rtc_clkout";
|
||||
};
|
||||
};
|
||||
|
||||
&pwm_AO_ab {
|
||||
pinctrl-0 = <&pwm_ao_a_3_pins>;
|
||||
pinctrl-names = "default";
|
||||
clocks = <&clkc CLKID_FCLK_DIV4>;
|
||||
clock-names = "clkin0";
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&pwm_ab {
|
||||
pinctrl-0 = <&pwm_b_pins>;
|
||||
pinctrl-names = "default";
|
||||
clocks = <&clkc CLKID_FCLK_DIV4>;
|
||||
clock-names = "clkin0";
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&pwm_ef {
|
||||
pinctrl-0 = <&pwm_e_pins>, <&pwm_f_clk_pins>;
|
||||
pinctrl-names = "default";
|
||||
clocks = <&clkc CLKID_FCLK_DIV4>;
|
||||
clock-names = "clkin0";
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&saradc {
|
||||
vref-supply = <&vddio_ao18>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
/* SD card */
|
||||
&sd_emmc_b {
|
||||
pinctrl-0 = <&sdcard_pins>;
|
||||
pinctrl-1 = <&sdcard_clk_gate_pins>;
|
||||
pinctrl-names = "default", "clk-gate";
|
||||
|
||||
bus-width = <4>;
|
||||
cap-sd-highspeed;
|
||||
sd-uhs-sdr12;
|
||||
sd-uhs-sdr25;
|
||||
sd-uhs-sdr50;
|
||||
sd-uhs-ddr50;
|
||||
max-frequency = <200000000>;
|
||||
disable-wp;
|
||||
|
||||
cd-gpios = <&gpio CARD_6 GPIO_ACTIVE_LOW>;
|
||||
|
||||
vmmc-supply = <&vcc_card>;
|
||||
vqmmc-supply = <&vddio_card>;
|
||||
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
/* eMMC */
|
||||
&sd_emmc_c {
|
||||
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 = <&vddio_ao3v3>;
|
||||
vqmmc-supply = <&vddio_boot>;
|
||||
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&spifc {
|
||||
pinctrl-0 = <&nor_pins>;
|
||||
pinctrl-names = "default";
|
||||
status = "okay";
|
||||
|
||||
gd25lq128: spi-flash@0 {
|
||||
compatible = "jedec,spi-nor";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
reg = <0>;
|
||||
spi-max-frequency = <12000000>;
|
||||
};
|
||||
};
|
||||
|
||||
&uart_AO {
|
||||
pinctrl-0 = <&uart_ao_a_pins>;
|
||||
pinctrl-names = "default";
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usb0 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usb2_phy0 {
|
||||
pinctrl-0 = <&usb1_rst_pins>;
|
||||
pinctrl-names = "default";
|
||||
phy-supply = <&vcc5v>;
|
||||
};
|
||||
|
||||
&usb2_phy1 {
|
||||
phy-supply = <&vcc5v>;
|
||||
};
|
78
arch/arm64/boot/dts/amlogic/meson-gxbb-kii-pro.dts
Normal file
78
arch/arm64/boot/dts/amlogic/meson-gxbb-kii-pro.dts
Normal file
|
@ -0,0 +1,78 @@
|
|||
// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
|
||||
/*
|
||||
* Copyright (c) 2019 Mohammad Rasim <mohammad.rasim96@gmail.com>
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
|
||||
#include "meson-gxbb-p20x.dtsi"
|
||||
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/input/input.h>
|
||||
#include <dt-bindings/leds/common.h>
|
||||
/ {
|
||||
compatible = "videostrong,kii-pro", "amlogic,p201", "amlogic,s905", "amlogic,meson-gxbb";
|
||||
model = "Videostrong KII Pro";
|
||||
|
||||
leds {
|
||||
compatible = "gpio-leds";
|
||||
status {
|
||||
gpios = <&gpio_ao GPIOAO_13 GPIO_ACTIVE_LOW>;
|
||||
default-state = "off";
|
||||
color = <LED_COLOR_ID_RED>;
|
||||
function = LED_FUNCTION_STATUS;
|
||||
};
|
||||
};
|
||||
|
||||
gpio-keys-polled {
|
||||
compatible = "gpio-keys-polled";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
poll-interval = <20>;
|
||||
|
||||
button-reset {
|
||||
label = "reset";
|
||||
linux,code = <KEY_POWER>;
|
||||
gpios = <&gpio_ao GPIOAO_3 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
|
||||
|
||||
&uart_A {
|
||||
status = "okay";
|
||||
pinctrl-0 = <&uart_a_pins>, <&uart_a_cts_rts_pins>;
|
||||
pinctrl-names = "default";
|
||||
uart-has-rtscts;
|
||||
|
||||
bluetooth {
|
||||
compatible = "brcm,bcm4335a0";
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
|
||||
ðmac {
|
||||
status = "okay";
|
||||
pinctrl-0 = <ð_rmii_pins>;
|
||||
pinctrl-names = "default";
|
||||
|
||||
phy-handle = <ð_phy0>;
|
||||
phy-mode = "rmii";
|
||||
|
||||
mdio {
|
||||
compatible = "snps,dwmac-mdio";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
eth_phy0: ethernet-phy@0 {
|
||||
/* IC Plus IP101GR (0x02430c54) */
|
||||
reg = <0>;
|
||||
reset-assert-us = <10000>;
|
||||
reset-deassert-us = <10000>;
|
||||
reset-gpios = <&gpio GPIOZ_14 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
};
|
||||
};
|
16
arch/arm64/boot/dts/amlogic/meson-gxl-s905d-libretech-pc.dts
Normal file
16
arch/arm64/boot/dts/amlogic/meson-gxl-s905d-libretech-pc.dts
Normal file
|
@ -0,0 +1,16 @@
|
|||
// SPDX-License-Identifier: GPL-2.0
|
||||
/*
|
||||
* Copyright (c) 2019 BayLibre SAS. All rights reserved.
|
||||
* Author: Jerome Brunet <jbrunet@baylibre.com>
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
|
||||
#include "meson-gxl-s905d.dtsi"
|
||||
#include "meson-gx-libretech-pc.dtsi"
|
||||
|
||||
/ {
|
||||
compatible = "libretech,aml-s905d-pc", "amlogic,s905d",
|
||||
"amlogic,meson-gxl";
|
||||
model = "Libre Computer AML-S905D-PC";
|
||||
};
|
|
@ -533,6 +533,15 @@ mux {
|
|||
};
|
||||
};
|
||||
|
||||
i2c_c_dv18_pins: i2c_c_dv18 {
|
||||
mux {
|
||||
groups = "i2c_sck_c_dv19",
|
||||
"i2c_sda_c_dv18";
|
||||
function = "i2c_c";
|
||||
bias-disable;
|
||||
};
|
||||
};
|
||||
|
||||
eth_pins: eth_c {
|
||||
mux {
|
||||
groups = "eth_mdio",
|
||||
|
|
62
arch/arm64/boot/dts/amlogic/meson-gxm-s912-libretech-pc.dts
Normal file
62
arch/arm64/boot/dts/amlogic/meson-gxm-s912-libretech-pc.dts
Normal file
|
@ -0,0 +1,62 @@
|
|||
// SPDX-License-Identifier: GPL-2.0
|
||||
/*
|
||||
* Copyright (c) 2019 BayLibre SAS. All rights reserved.
|
||||
* Author: Jerome Brunet <jbrunet@baylibre.com>
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
|
||||
#include "meson-gxm.dtsi"
|
||||
#include "meson-gx-libretech-pc.dtsi"
|
||||
|
||||
/ {
|
||||
compatible = "libretech,aml-s912-pc", "amlogic,s912",
|
||||
"amlogic,meson-gxm";
|
||||
model = "Libre Computer AML-S912-PC";
|
||||
|
||||
typec2_vbus: regulator-typec2_vbus {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "TYPEC2_VBUS";
|
||||
regulator-min-microvolt = <5000000>;
|
||||
regulator-max-microvolt = <5000000>;
|
||||
vin-supply = <&vcc5v>;
|
||||
|
||||
gpio = <&gpio GPIODV_1 GPIO_ACTIVE_HIGH>;
|
||||
enable-active-high;
|
||||
};
|
||||
};
|
||||
|
||||
&pinctrl_periphs {
|
||||
/*
|
||||
* Make sure the irq pin of the TYPE C controller is not driven
|
||||
* by the SoC.
|
||||
*/
|
||||
fusb302_irq_pins: fusb302_irq {
|
||||
mux {
|
||||
groups = "GPIODV_0";
|
||||
function = "gpio_periphs";
|
||||
bias-pull-up;
|
||||
output-disable;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&i2c_C {
|
||||
fusb302@22 {
|
||||
compatible = "fcs,fusb302";
|
||||
reg = <0x22>;
|
||||
|
||||
pinctrl-0 = <&fusb302_irq_pins>;
|
||||
pinctrl-names = "default";
|
||||
interrupt-parent = <&gpio_intc>;
|
||||
interrupts = <59 IRQ_TYPE_LEVEL_LOW>;
|
||||
|
||||
vbus-supply = <&typec2_vbus>;
|
||||
|
||||
status = "okay";
|
||||
};
|
||||
};
|
||||
|
||||
&usb2_phy2 {
|
||||
phy-supply = <&typec2_vbus>;
|
||||
};
|
|
@ -201,6 +201,7 @@ toddr_a: audio-controller@100 {
|
|||
resets = <&arb AXG_ARB_TODDR_A>,
|
||||
<&clkc_audio AUD_RESET_TODDR_A>;
|
||||
reset-names = "arb", "rst";
|
||||
amlogic,fifo-depth = <8192>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
|
@ -215,6 +216,7 @@ toddr_b: audio-controller@140 {
|
|||
resets = <&arb AXG_ARB_TODDR_B>,
|
||||
<&clkc_audio AUD_RESET_TODDR_B>;
|
||||
reset-names = "arb", "rst";
|
||||
amlogic,fifo-depth = <256>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
|
@ -229,6 +231,7 @@ toddr_c: audio-controller@180 {
|
|||
resets = <&arb AXG_ARB_TODDR_C>,
|
||||
<&clkc_audio AUD_RESET_TODDR_C>;
|
||||
reset-names = "arb", "rst";
|
||||
amlogic,fifo-depth = <256>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
|
@ -243,6 +246,7 @@ frddr_a: audio-controller@1c0 {
|
|||
resets = <&arb AXG_ARB_FRDDR_A>,
|
||||
<&clkc_audio AUD_RESET_FRDDR_A>;
|
||||
reset-names = "arb", "rst";
|
||||
amlogic,fifo-depth = <512>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
|
@ -257,6 +261,7 @@ frddr_b: audio-controller@200 {
|
|||
resets = <&arb AXG_ARB_FRDDR_B>,
|
||||
<&clkc_audio AUD_RESET_FRDDR_B>;
|
||||
reset-names = "arb", "rst";
|
||||
amlogic,fifo-depth = <256>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
|
@ -271,6 +276,7 @@ frddr_c: audio-controller@240 {
|
|||
resets = <&arb AXG_ARB_FRDDR_C>,
|
||||
<&clkc_audio AUD_RESET_FRDDR_C>;
|
||||
reset-names = "arb", "rst";
|
||||
amlogic,fifo-depth = <256>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
|
@ -412,6 +418,7 @@ toddr_d: audio-controller@840 {
|
|||
resets = <&arb AXG_ARB_TODDR_D>,
|
||||
<&clkc_audio AUD_RESET_TODDR_D>;
|
||||
reset-names = "arb", "rst";
|
||||
amlogic,fifo-depth = <256>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
|
@ -426,6 +433,7 @@ frddr_d: audio-controller@880 {
|
|||
resets = <&arb AXG_ARB_FRDDR_D>,
|
||||
<&clkc_audio AUD_RESET_FRDDR_D>;
|
||||
reset-names = "arb", "rst";
|
||||
amlogic,fifo-depth = <256>;
|
||||
status = "disabled";
|
||||
};
|
||||
};
|
||||
|
@ -482,6 +490,10 @@ &simplefb_hdmi {
|
|||
power-domains = <&pwrc PWRC_SM1_VPU_ID>;
|
||||
};
|
||||
|
||||
&vdec {
|
||||
compatible = "amlogic,sm1-vdec";
|
||||
};
|
||||
|
||||
&vpu {
|
||||
power-domains = <&pwrc PWRC_SM1_VPU_ID>;
|
||||
};
|
||||
|
|
Loading…
Reference in New Issue
Block a user