From nobody Sun Feb 8 11:44:28 2026 Received: from mail-pj1-f43.google.com (mail-pj1-f43.google.com [209.85.216.43]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id A0D43368271 for ; Wed, 14 Jan 2026 06:26:19 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.216.43 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768371986; cv=none; b=BnUvmC6pRYyN8AGTqC7W2YcXs3eaAJHUwRu98CIeXnFrbqLvjGB4qwhZ5hUFHvUPQNrsLlczIXINFrfmx1KvL/rzJ6Os1VVD19omRzizUQkgT5RO2JTIEck57sU1xsrdaDGSbbDBbV+jdAf0h5BIC8YG9SVw8haIEZN/Ts8GhzU= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768371986; c=relaxed/simple; bh=1O/1xtihqEw90//JWJoqX9A+ZAh9hRYTi9jOFvgpqdA=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References; b=VrMF1Twwo41WIiKml0F3ds9RCeg48cDbyLAw/B+S2X88KKAKTyC+GuYjc7J5JE/gy5VOYQnF/bI5woDpJIk5ByGterY8N9lLQNaGTr/lFOHoGRpkebVB56i4ZjLzTQ+vl1OCp+tDbuX5tS0Z7kFZLMiqCfG2CgRzB19vfMfa02I= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=C/HSGJKj; arc=none smtp.client-ip=209.85.216.43 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="C/HSGJKj" Received: by mail-pj1-f43.google.com with SMTP id 98e67ed59e1d1-34e90f7b49cso4787020a91.3 for ; Tue, 13 Jan 2026 22:26:19 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1768371973; x=1768976773; darn=vger.kernel.org; h=references:in-reply-to:message-id:date:subject:cc:to:from:from:to :cc:subject:date:message-id:reply-to; bh=GqboQ4ROVgM/dfJzro4IzHUtcI9B21cZXNDgBmCYmWI=; b=C/HSGJKjryiAz0MPxy0E5xe3w3qhym1vRhu0V8ioNtLdisI1PVoe+RVF/G88pwRwKe 6dAXYyYGhsZ5j9ZI6xvlYqXI79NhLhGL43c94jjhndeLdjFsfK10Y1LD1Zl1paB0s9qd SCTnHg9zveL/7pP9MXTtKu9iPyxLnbLSBqr9pSy+xGETLrvEdS3sBDYIJpSgHiWAtVqL dsl4kt3vYhc+og41npqTC2olkZ/ku6b+/2Hwj+Dvno79r9+NX/0XdvA6uGYHWusBIbMt RGyFc6dDm+CJMR1VMVdEVl7vDRN+8ZpLk0CWWaEyjQn+lV25YfmCM0dVuq5kHI3dXkQc rICA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1768371973; x=1768976773; h=references:in-reply-to:message-id:date:subject:cc:to:from:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=GqboQ4ROVgM/dfJzro4IzHUtcI9B21cZXNDgBmCYmWI=; b=FXBle4NIiYQTQtJXMM78sBLu9nVNvOtSHTB6ixbqJa7S9KEIFwXtYtgHXGqm7tIVRF rAhOEHFgmwyxj/viXMzVnaCILNK8bVXL2iyHc/HEnyHap5qwc+FpRX+2StH0Xd4MPk1B ktJKjcYsOfPXP12ghhBEvTa+r+AKgSb/zpGyERPDxRtSFVZWS11exAilk9zNdIzyQrRv 2SIS2+C8gndXA8fiidyPVjuVIYhoA8oU165u02svwYJd/KcpR8BM2urGnVa2ppvlUVd6 dkkJ5yvNcPK1VO4535OUqWNwxgtOzHXZSPv3WurEXDpUYBH8iMUlYpx705WGpbic/oyr WugA== X-Forwarded-Encrypted: i=1; AJvYcCWqMjJWC7bO7aPki0xNC6Q6bP14bvLr4xlJWSNal1MYQXs5PNxyV0IJXB+0b1qPvB63N0J6+Yw30Ruy9fA=@vger.kernel.org X-Gm-Message-State: AOJu0YyE+I9PJLfD0kBefagxliLDOdkaYpxnPkfgSpM+elO/A8d5vufZ 2LUoF0aq7nC/N2g+ajMHsImebQll96ewAhGJTldnJStQOH2WIjclXAED X-Gm-Gg: AY/fxX6AQVpn0MSiY3X/O0gZNQwafYCyXDsi2K6UBVoxokECi8bGc3q8Ua2XvIqa0q4 Vnjx4kJgcKvuKWT50J6tOS0Sjd7VqhIc6RnIA6NA0Ekva5Za3Rat6PcgHUvbSJyLaUqtEBdYewK rzs1jT3rD1vVFJWF65F7BAzw5INEzNmgtA1+JoMl7KhKMwqRiqbms8YjQylod+3lHkHnD6ojvCb +YMWKfm8oT8WDD8+yU8meaKvuF4bfdzONg9uiT9Wll0X9Bb4kZdtzarmLP+mHqX3Bo8FCaSwMfi z2QQG3tKzKdUOetefXcv/1xwUzWfXklV3d5gQFeoRxqY40I0m3WbWDHnErNIHZpgJLaqRzaAIhX Qp3e8C+7/S7ifTWUKZMkGURCDD0oVI2yXkVNPMYkS698/nSkFE291oRIZ3HhvTLRCHArI1Ybbzu 84YRvbNW0= X-Received: by 2002:a17:90a:e7cc:b0:340:bb56:79de with SMTP id 98e67ed59e1d1-351091780eemr1590209a91.30.1768371973579; Tue, 13 Jan 2026 22:26:13 -0800 (PST) Received: from localhost.localdomain ([47.82.78.41]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-35109d88f0esm891791a91.5.2026.01.13.22.26.10 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 13 Jan 2026 22:26:13 -0800 (PST) From: Nick Xie X-Google-Original-From: Nick Xie To: neil.armstrong@linaro.org, khilman@baylibre.com, jbrunet@baylibre.com, martin.blumenstingl@googlemail.com, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-amlogic@lists.infradead.org Cc: xianwei.zhao@amlogic.com, christianshewitt@gmail.com, krzk+dt@kernel.org, robh@kernel.org, conor+dt@kernel.org, nick@khadas.com Subject: [PATCH v2 2/2] arm64: dts: add initial device-tree for Khadas VIM1S Date: Wed, 14 Jan 2026 14:25:49 +0800 Message-Id: <20260114062549.68954-3-nick@khadas.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20260114062549.68954-1-nick@khadas.com> References: <20260114062549.68954-1-nick@khadas.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" 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 - 100 Base-T 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 --- arch/arm64/boot/dts/amlogic/Makefile | 1 + .../amlogic/meson-s4-s905y4-khadas-vim1s.dts | 190 ++++++++++++++++++ 2 files changed, 191 insertions(+) create mode 100644 arch/arm64/boot/dts/amlogic/meson-s4-s905y4-khadas-vim1= s.dts diff --git a/arch/arm64/boot/dts/amlogic/Makefile b/arch/arm64/boot/dts/aml= ogic/Makefile index 219fb088c704d..15f9c817e5023 100644 --- a/arch/arm64/boot/dts/amlogic/Makefile +++ b/arch/arm64/boot/dts/amlogic/Makefile @@ -85,6 +85,7 @@ dtb-$(CONFIG_ARCH_MESON) +=3D meson-gxm-ugoos-am3.dtb dtb-$(CONFIG_ARCH_MESON) +=3D meson-gxm-vega-s96.dtb dtb-$(CONFIG_ARCH_MESON) +=3D meson-gxm-wetek-core2.dtb dtb-$(CONFIG_ARCH_MESON) +=3D meson-s4-s805x2-aq222.dtb +dtb-$(CONFIG_ARCH_MESON) +=3D meson-s4-s905y4-khadas-vim1s.dtb dtb-$(CONFIG_ARCH_MESON) +=3D meson-sm1-a95xf3-air-gbit.dtb dtb-$(CONFIG_ARCH_MESON) +=3D meson-sm1-a95xf3-air.dtb dtb-$(CONFIG_ARCH_MESON) +=3D meson-sm1-bananapi-m2-pro.dtb diff --git a/arch/arm64/boot/dts/amlogic/meson-s4-s905y4-khadas-vim1s.dts b= /arch/arm64/boot/dts/amlogic/meson-s4-s905y4-khadas-vim1s.dts new file mode 100644 index 0000000000000..a371ddcdb5e99 --- /dev/null +++ b/arch/arm64/boot/dts/amlogic/meson-s4-s905y4-khadas-vim1s.dts @@ -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 =3D "Khadas VIM1S"; + compatible =3D "khadas,vim1s", "amlogic,s4"; + interrupt-parent =3D <&gic>; + #address-cells =3D <2>; + #size-cells =3D <2>; + + aliases { + mmc0 =3D &emmc; /* eMMC */ + mmc1 =3D &sd; /* SD card */ + mmc2 =3D &sdio; /* SDIO */ + serial0 =3D &uart_b; + }; + + memory@0 { + device_type =3D "memory"; + reg =3D <0x0 0x0 0x0 0x80000000>; + }; + + reserved-memory { + #address-cells =3D <2>; + #size-cells =3D <2>; + ranges; + + /* 52 MiB reserved for ARM Trusted Firmware */ + secmon_reserved: secmon@5000000 { + reg =3D <0x0 0x05000000 0x0 0x3400000>; + no-map; + }; + }; + + sdio_32k: sdio-32k { + compatible =3D "pwm-clock"; + #clock-cells =3D <0>; + clock-frequency =3D <32768>; + pwms =3D <&pwm_ef 0 30518 0>; /* PWM_E at 32.768KHz */ + }; + + sdio_pwrseq: sdio-pwrseq { + compatible =3D "mmc-pwrseq-simple"; + reset-gpios =3D <&gpio GPIOX_6 GPIO_ACTIVE_LOW>; + clocks =3D <&sdio_32k>; + clock-names =3D "ext_clock"; + }; + + main_5v: regulator-main-5v { + compatible =3D "regulator-fixed"; + regulator-name =3D "5V"; + regulator-min-microvolt =3D <5000000>; + regulator-max-microvolt =3D <5000000>; + regulator-always-on; + }; + + sd_3v3: regulator-sd-3v3 { + compatible =3D "regulator-fixed"; + regulator-name =3D "SD_3V3"; + regulator-min-microvolt =3D <3300000>; + regulator-max-microvolt =3D <3300000>; + gpio =3D <&gpio GPIOD_4 GPIO_ACTIVE_LOW>; + regulator-always-on; + }; + + vddio_sd: regulator-vddio-sd { + compatible =3D "regulator-gpio"; + regulator-name =3D "VDDIO_SD"; + regulator-min-microvolt =3D <1800000>; + regulator-max-microvolt =3D <3300000>; + gpios =3D <&gpio GPIOD_9 GPIO_ACTIVE_HIGH>; + gpios-states =3D <1>; + states =3D <1800000 1 + 3300000 0>; + }; + + /* SY8120B1ABC DC/DC Regulator. */ + vddcpu: regulator-vddcpu { + compatible =3D "pwm-regulator"; + + regulator-name =3D "VDDCPU"; + regulator-min-microvolt =3D <689000>; + regulator-max-microvolt =3D <1049000>; + + vin-supply =3D <&main_5v>; + + pwms =3D <&pwm_ij 1 1500 0>; + pwm-dutycycle-range =3D <100 0>; + + regulator-boot-on; + regulator-always-on; + /* Voltage Duty-Cycle */ + voltage-table =3D <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 =3D "okay"; + phy-handle =3D <&internal_ephy>; + phy-mode =3D "rmii"; +}; + +&ir { + status =3D "okay"; + pinctrl-0 =3D <&remote_pins>; + pinctrl-names =3D "default"; +}; + +&pwm_ef { + status =3D "okay"; + pinctrl-0 =3D <&pwm_e_pins1>; + pinctrl-names =3D "default"; +}; + +&pwm_ij { + status =3D "okay"; +}; + +&sd { + status =3D "okay"; + pinctrl-0 =3D <&sdcard_pins>; + pinctrl-1 =3D <&sdcard_clk_gate_pins>; + pinctrl-names =3D "default", "clk-gate"; + bus-width =3D <4>; + cap-sd-highspeed; + sd-uhs-sdr12; + sd-uhs-sdr25; + sd-uhs-sdr50; + sd-uhs-sdr104; + max-frequency =3D <200000000>; + disable-wp; + + cd-gpios =3D <&gpio GPIOC_6 GPIO_ACTIVE_LOW>; + + vmmc-supply =3D <&sd_3v3>; + vqmmc-supply =3D <&vddio_sd>; +}; + +&spicc0 { + status =3D "okay"; + pinctrl-names =3D "default"; + pinctrl-0 =3D <&spicc0_pins_x>; + cs-gpios =3D <&gpio GPIOX_10 GPIO_ACTIVE_LOW>; +}; + +&uart_b { + status =3D "okay"; +}; --=20 2.34.1