mirror of
https://github.com/torvalds/linux.git
synced 2026-05-25 23:52:08 +02:00
arm64: dts: meson-s4-s905y4-khadas-vim1s: add initial device tree
The Khadas VIM1S uses the Amlogic S905Y4 SoC, based on the Amlogic S4 SoC family, on a board with the same form factor as the VIM/VIM2/VIM3/VIM4 models. Serial debug console, ethernet, SD card work with this initial device tree. It features: - 2GB LPDDR4 RAM - 16GB eMMC 5.1 storage - 32MB SPI flash - 100M Ethernet - AP6256 Wireless (802.11 a/b/g/n/ac, BT5.0) - HDMI 2.1 video - 2x USB 2.0 ports - 1x USB-C (power) with USB 2.0 OTG - 2x LED's (1x red, 1x white) - 3x buttons (power, function, reset) - IR receiver - 40pin GPIO Header - 1x micro SD card slot Signed-off-by: Nick Xie <nick@khadas.com> Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org> Link: https://patch.msgid.link/20260115030015.1334517-4-nick@khadas.com Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
This commit is contained in:
parent
31b72cc32c
commit
44e3f867fd
|
|
@ -85,6 +85,7 @@ dtb-$(CONFIG_ARCH_MESON) += meson-gxm-ugoos-am3.dtb
|
|||
dtb-$(CONFIG_ARCH_MESON) += meson-gxm-vega-s96.dtb
|
||||
dtb-$(CONFIG_ARCH_MESON) += meson-gxm-wetek-core2.dtb
|
||||
dtb-$(CONFIG_ARCH_MESON) += meson-s4-s805x2-aq222.dtb
|
||||
dtb-$(CONFIG_ARCH_MESON) += meson-s4-s905y4-khadas-vim1s.dtb
|
||||
dtb-$(CONFIG_ARCH_MESON) += meson-sm1-a95xf3-air-gbit.dtb
|
||||
dtb-$(CONFIG_ARCH_MESON) += meson-sm1-a95xf3-air.dtb
|
||||
dtb-$(CONFIG_ARCH_MESON) += meson-sm1-bananapi-m2-pro.dtb
|
||||
|
|
|
|||
190
arch/arm64/boot/dts/amlogic/meson-s4-s905y4-khadas-vim1s.dts
Normal file
190
arch/arm64/boot/dts/amlogic/meson-s4-s905y4-khadas-vim1s.dts
Normal file
|
|
@ -0,0 +1,190 @@
|
|||
// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
|
||||
/*
|
||||
* Copyright (c) 2026 Khadas Technology Co., Ltd.
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
|
||||
#include "meson-s4.dtsi"
|
||||
|
||||
/ {
|
||||
model = "Khadas VIM1S";
|
||||
compatible = "khadas,vim1s", "amlogic,s905y4", "amlogic,s4";
|
||||
interrupt-parent = <&gic>;
|
||||
#address-cells = <2>;
|
||||
#size-cells = <2>;
|
||||
|
||||
aliases {
|
||||
mmc0 = &emmc; /* eMMC */
|
||||
mmc1 = &sd; /* SD card */
|
||||
mmc2 = &sdio; /* SDIO */
|
||||
serial0 = &uart_b;
|
||||
};
|
||||
|
||||
memory@0 {
|
||||
device_type = "memory";
|
||||
reg = <0x0 0x0 0x0 0x80000000>;
|
||||
};
|
||||
|
||||
reserved-memory {
|
||||
#address-cells = <2>;
|
||||
#size-cells = <2>;
|
||||
ranges;
|
||||
|
||||
/* 52 MiB reserved for ARM Trusted Firmware */
|
||||
secmon_reserved: secmon@5000000 {
|
||||
reg = <0x0 0x05000000 0x0 0x3400000>;
|
||||
no-map;
|
||||
};
|
||||
};
|
||||
|
||||
sdio_32k: sdio-32k {
|
||||
compatible = "pwm-clock";
|
||||
#clock-cells = <0>;
|
||||
clock-frequency = <32768>;
|
||||
pwms = <&pwm_ef 0 30518 0>; /* PWM_E at 32.768KHz */
|
||||
};
|
||||
|
||||
sdio_pwrseq: sdio-pwrseq {
|
||||
compatible = "mmc-pwrseq-simple";
|
||||
reset-gpios = <&gpio GPIOX_6 GPIO_ACTIVE_LOW>;
|
||||
clocks = <&sdio_32k>;
|
||||
clock-names = "ext_clock";
|
||||
};
|
||||
|
||||
main_5v: regulator-main-5v {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "5V";
|
||||
regulator-min-microvolt = <5000000>;
|
||||
regulator-max-microvolt = <5000000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
sd_3v3: regulator-sd-3v3 {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "SD_3V3";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
gpio = <&gpio GPIOD_4 GPIO_ACTIVE_LOW>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
vddio_sd: regulator-vddio-sd {
|
||||
compatible = "regulator-gpio";
|
||||
regulator-name = "VDDIO_SD";
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
gpios = <&gpio GPIOD_9 GPIO_ACTIVE_HIGH>;
|
||||
gpios-states = <1>;
|
||||
states = <1800000 1
|
||||
3300000 0>;
|
||||
};
|
||||
|
||||
/* SY8120B1ABC DC/DC Regulator. */
|
||||
vddcpu: regulator-vddcpu {
|
||||
compatible = "pwm-regulator";
|
||||
|
||||
regulator-name = "VDDCPU";
|
||||
regulator-min-microvolt = <689000>;
|
||||
regulator-max-microvolt = <1049000>;
|
||||
|
||||
vin-supply = <&main_5v>;
|
||||
|
||||
pwms = <&pwm_ij 1 1500 0>;
|
||||
pwm-dutycycle-range = <100 0>;
|
||||
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
/* Voltage Duty-Cycle */
|
||||
voltage-table = <1049000 0>,
|
||||
<1039000 3>,
|
||||
<1029000 6>,
|
||||
<1019000 9>,
|
||||
<1009000 12>,
|
||||
<999000 14>,
|
||||
<989000 17>,
|
||||
<979000 20>,
|
||||
<969000 23>,
|
||||
<959000 26>,
|
||||
<949000 29>,
|
||||
<939000 31>,
|
||||
<929000 34>,
|
||||
<919000 37>,
|
||||
<909000 40>,
|
||||
<899000 43>,
|
||||
<889000 45>,
|
||||
<879000 48>,
|
||||
<869000 51>,
|
||||
<859000 54>,
|
||||
<849000 56>,
|
||||
<839000 59>,
|
||||
<829000 62>,
|
||||
<819000 65>,
|
||||
<809000 68>,
|
||||
<799000 70>,
|
||||
<789000 73>,
|
||||
<779000 76>,
|
||||
<769000 79>,
|
||||
<759000 81>,
|
||||
<749000 84>,
|
||||
<739000 87>,
|
||||
<729000 89>,
|
||||
<719000 92>,
|
||||
<709000 95>,
|
||||
<699000 98>,
|
||||
<689000 100>;
|
||||
};
|
||||
};
|
||||
|
||||
ðmac {
|
||||
status = "okay";
|
||||
phy-handle = <&internal_ephy>;
|
||||
phy-mode = "rmii";
|
||||
};
|
||||
|
||||
&ir {
|
||||
status = "okay";
|
||||
pinctrl-0 = <&remote_pins>;
|
||||
pinctrl-names = "default";
|
||||
};
|
||||
|
||||
&pwm_ef {
|
||||
status = "okay";
|
||||
pinctrl-0 = <&pwm_e_pins1>;
|
||||
pinctrl-names = "default";
|
||||
};
|
||||
|
||||
&pwm_ij {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&sd {
|
||||
status = "okay";
|
||||
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-sdr104;
|
||||
max-frequency = <200000000>;
|
||||
disable-wp;
|
||||
|
||||
cd-gpios = <&gpio GPIOC_6 GPIO_ACTIVE_LOW>;
|
||||
|
||||
vmmc-supply = <&sd_3v3>;
|
||||
vqmmc-supply = <&vddio_sd>;
|
||||
};
|
||||
|
||||
&spicc0 {
|
||||
status = "okay";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&spicc0_pins_x>;
|
||||
cs-gpios = <&gpio GPIOX_10 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
&uart_b {
|
||||
status = "okay";
|
||||
};
|
||||
Loading…
Reference in New Issue
Block a user