From nobody Fri Apr 3 22:12:20 2026 Received: from hall.aurel32.net (hall.aurel32.net [195.154.119.183]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id C369D342CBD; Sun, 22 Mar 2026 20:34:11 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=195.154.119.183 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774211653; cv=none; b=PLGoSLRWM9IvJQpIowdPQdqEYRGwnVzfq5F1VuRS3jvqXxXlUIRUAAh8cPOvk/xN/tg5C50/i22YqJHGGV4/QBV2TuqjV1+l3y09ZLLw/FogMMNSJqW8M5RvzYZykScOwKfwLPvGM2DRRb057VcEIfwLeb9kmWPEt6ssW7OIo0w= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774211653; c=relaxed/simple; bh=OAItUeG74ahjjo8oZd4VgZvypGJC9+n6qB6wy8O2X+I=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=b9DZvXQvp+Xo5i619T5WiBPQTrmkoUOiYnEL9nt0j8lTmiWUm6FyRtTOsoQAYQN+ppjGAM2rXGzDoeDAKfrALBB+7s/mPx3ctez4TGPx0HxoE042J8JkLr2RWS0KksWJ5+o3VDIT/cP58D1ElrZNCXUG1mM+t5DB1qHG7s9Fxc4= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=aurel32.net; spf=pass smtp.mailfrom=aurel32.net; dkim=pass (2048-bit key) header.d=aurel32.net header.i=@aurel32.net header.b=aTGTYXfS; arc=none smtp.client-ip=195.154.119.183 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=aurel32.net Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=aurel32.net Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=aurel32.net header.i=@aurel32.net header.b="aTGTYXfS" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=aurel32.net ; s=202004.hall; h=Content-Transfer-Encoding:MIME-Version:References: In-Reply-To:Message-ID:Date:Subject:Cc:To:From:Content-Type:From:Reply-To: Subject:Content-ID:Content-Description:X-Debbugs-Cc; bh=75/9iWxl7mUOFlOK6TjH/8LkMUC/M5zfIetQ2CUajbA=; b=aTGTYXfSGi5/5xOWV/cO3ElCTg BXmvv9rv4KyjM1RB4tf6B3mF0Mce5Ijk7/NHlis4mtU/H4fqnX1WDyR8DK28JrF2zIwlzge+wUI5X EbKQn75UfvlUh7VbbY/wlNtgmWHc6hLpMbKDmUg3xnFbxpcSTUUlodPnkZkPNQEMIlM474ppmkLvM jJ7QzIdLl+QbF7WufrfsSqaXeOgDtlZHDJbBAZR0JDpJU8AHWbGulMlILX5qH3QM/VL/OwNvSsCmh AtrgG6LVpGTYi1EnBnT7cgVJQ4XlT1qxBllu+cjeBELlBDR/WlPxaaXDI/WoDePHFpYtmhCrxm5Pq Z5XcAltA==; Received: from authenticated user by hall.aurel32.net with esmtpsa (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.98.2) (envelope-from ) id 1w4PUv-0000000Ase5-46Kd; Sun, 22 Mar 2026 21:34:09 +0100 From: Aurelien Jarno To: linux-kernel@vger.kernel.org, Rob Herring , Krzysztof Kozlowski , Conor Dooley , Yixun Lan , Paul Walmsley , Palmer Dabbelt , Albert Ou , Alexandre Ghiti Cc: Aurelien Jarno , devicetree@vger.kernel.org (open list:OPEN FIRMWARE AND FLATTENED DEVICE TREE BINDINGS), linux-riscv@lists.infradead.org (open list:RISC-V ARCHITECTURE), spacemit@lists.linux.dev (open list:RISC-V SPACEMIT SoC Support) Subject: [PATCH 1/6] riscv: dts: spacemit: add LEDs for Milk-V Jupiter board Date: Sun, 22 Mar 2026 21:28:32 +0100 Message-ID: <20260322203356.2206927-2-aurelien@aurel32.net> X-Mailer: git-send-email 2.51.0 In-Reply-To: <20260322203356.2206927-1-aurelien@aurel32.net> References: <20260322203356.2206927-1-aurelien@aurel32.net> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" The Milk-V Jupiter board provides support for two LEDs through the front panel header. The "Power LED" indicates the system is running, and the "HDD LED" shows disk activity. Configure the corresponding LED triggers accordingly. Caveats: - The LEDs are driven through a 4.7k series resistor, making them quite faint. - The disk activity trigger requires a storage controller on the M.2 or PCIe interface. That said, it matches the purpose and the vendor kernel. Signed-off-by: Aurelien Jarno Reviewed-by: Javier Martinez Canillas --- .../boot/dts/spacemit/k1-milkv-jupiter.dts | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/arch/riscv/boot/dts/spacemit/k1-milkv-jupiter.dts b/arch/riscv= /boot/dts/spacemit/k1-milkv-jupiter.dts index 9959c8023ece0..3cd83c5924e4f 100644 --- a/arch/riscv/boot/dts/spacemit/k1-milkv-jupiter.dts +++ b/arch/riscv/boot/dts/spacemit/k1-milkv-jupiter.dts @@ -21,6 +21,23 @@ chosen { stdout-path =3D "serial0"; }; =20 + leds { + compatible =3D "gpio-leds"; + + led1 { + label =3D "pwr-led"; + gpios =3D <&gpio K1_GPIO(96) GPIO_ACTIVE_HIGH>; + linux,default-trigger =3D "default-on"; + default-state =3D "on"; + }; + + led2 { + label =3D "hdd-led"; + gpios =3D <&gpio K1_GPIO(92) GPIO_ACTIVE_HIGH>; + linux,default-trigger =3D "disk-activity"; + }; + }; + reg_dc_in: regulator-dc-in-12v { compatible =3D "regulator-fixed"; regulator-name =3D "dc_in_12v"; --=20 2.51.0 From nobody Fri Apr 3 22:12:20 2026 Received: from hall.aurel32.net (hall.aurel32.net [195.154.119.183]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 84C6A34DCD9; Sun, 22 Mar 2026 20:34:12 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=195.154.119.183 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774211653; cv=none; b=bVHg/Qt41z+UJPsa1zGsefzhsR1vGoKU7AoOpggd0vI9n4Q+yd6YUIGWBySD8sxm73OxdD9Bdcs50JAJxW66D6sf0rjkylIs1lVQeDi5OxsAs9v3Y8VWtmW4kA7w08ybOHym8RKMNkrNvG9/t7JT83kwx6N642NnTgmyYwn8d/c= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774211653; c=relaxed/simple; bh=mwoHXnM/pxo6GxOzjIDCCqIQKAwDWHtO0cQX9CuQc3A=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=du6eNPPhzOfLTK3FtS04NfEtfD84UrAr47ZMw7HhGCQLe5KClgFve90KxLtrUb0hOmURqXcuV+u9jhWNNg+2NAGj6bkhw5gG7dnuAvvsqzQ5W67IThPkag5G1OtRgLpcBv+hOGnK7aH2TcpmNtYnBaDMotwHEgZxqj18cwRumms= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=aurel32.net; spf=pass smtp.mailfrom=aurel32.net; dkim=pass (2048-bit key) header.d=aurel32.net header.i=@aurel32.net header.b=t+BQsLVQ; arc=none smtp.client-ip=195.154.119.183 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=aurel32.net Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=aurel32.net Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=aurel32.net header.i=@aurel32.net header.b="t+BQsLVQ" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=aurel32.net ; s=202004.hall; h=Content-Transfer-Encoding:MIME-Version:References: In-Reply-To:Message-ID:Date:Subject:Cc:To:From:Content-Type:From:Reply-To: Subject:Content-ID:Content-Description:X-Debbugs-Cc; bh=ydfM6LMwzB3xWLIuz6b1o5GNPNVH4RVJhYsd3HhRMIU=; b=t+BQsLVQib7a7op1itwU9Lr3xi wg6/lswBoDU4ArirScsnxuJH5EzHipPLTpEauZgZVERQATQ+MLX04VPF2w5bAURaJ3nAuph71081/ jS163ZHOvd8y3Y3GbanP9wVjFpvth9lRV7GYbQE7/EiwS1qQKdHXODvqAmv/9G49UC+9sH/uzCpGr Py4G1JQ18cBEHecNK5FPf3CLBypakawyeEYOIB6H8tHGNrnkVzgee37M8AfaTLVEbKNgmHE22ONRx uBApRCuXS1fcWFrGUvzqaLz4yaJluA30OLG7jr8oCA+bKD2vPcNIjFYWpZoY1DeWAEvf8/Dlfy0rH K/E52dOA==; Received: from authenticated user by hall.aurel32.net with esmtpsa (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.98.2) (envelope-from ) id 1w4PUw-0000000AseM-3KP2; Sun, 22 Mar 2026 21:34:10 +0100 From: Aurelien Jarno To: linux-kernel@vger.kernel.org, Rob Herring , Krzysztof Kozlowski , Conor Dooley , Yixun Lan , Paul Walmsley , Palmer Dabbelt , Albert Ou , Alexandre Ghiti Cc: Aurelien Jarno , devicetree@vger.kernel.org (open list:OPEN FIRMWARE AND FLATTENED DEVICE TREE BINDINGS), linux-riscv@lists.infradead.org (open list:RISC-V ARCHITECTURE), spacemit@lists.linux.dev (open list:RISC-V SPACEMIT SoC Support) Subject: [PATCH 2/6] riscv: dts: spacemit: add 24c04 eeprom on Milk-V Jupiter Date: Sun, 22 Mar 2026 21:28:33 +0100 Message-ID: <20260322203356.2206927-3-aurelien@aurel32.net> X-Mailer: git-send-email 2.51.0 In-Reply-To: <20260322203356.2206927-1-aurelien@aurel32.net> References: <20260322203356.2206927-1-aurelien@aurel32.net> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" The Milk-V Jupiter board includes a 24c04 eeprom on the i2c2 bus. The eeprom contains an ONIE TLV table, which on the board I tested only provides a product-name entry. Expose it via an onie,tlv-layout nvmem layout. The eeprom is marked as read-only since its contents are not supposed to be modified. Signed-off-by: Aurelien Jarno Reviewed-by: Javier Martinez Canillas --- .../boot/dts/spacemit/k1-milkv-jupiter.dts | 22 +++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/arch/riscv/boot/dts/spacemit/k1-milkv-jupiter.dts b/arch/riscv= /boot/dts/spacemit/k1-milkv-jupiter.dts index 3cd83c5924e4f..bd48208a370cf 100644 --- a/arch/riscv/boot/dts/spacemit/k1-milkv-jupiter.dts +++ b/arch/riscv/boot/dts/spacemit/k1-milkv-jupiter.dts @@ -108,6 +108,28 @@ &pdma { status =3D "okay"; }; =20 +&i2c2 { + pinctrl-0 =3D <&i2c2_0_cfg>; + pinctrl-names =3D "default"; + status =3D "okay"; + + eeprom@50 { + compatible =3D "atmel,24c04"; + reg =3D <0x50>; + vcc-supply =3D <&buck3_1v8>; /* EEPROM_VCC18 */ + pagesize =3D <16>; + read-only; + size =3D <512>; + + nvmem-layout { + compatible =3D "onie,tlv-layout"; + + product-name { + }; + }; + }; +}; + &i2c8 { pinctrl-0 =3D <&i2c8_cfg>; pinctrl-names =3D "default"; --=20 2.51.0 From nobody Fri Apr 3 22:12:20 2026 Received: from hall.aurel32.net (hall.aurel32.net [195.154.119.183]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 6B2D837C93F; Sun, 22 Mar 2026 20:34:13 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=195.154.119.183 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774211654; cv=none; b=fzzA/RhTRNfL74FS9Ba/3FuhU/fXesYhiz0v/VSslc3FzE6QX8GVrTwpjluXmGc6MwkI19/af2eR2UdR/dHv79m8w1FsefUcZ3Zzu2vBH1RaAlkrdPLcDxrmmj/09DmasjahgqIUmD0eRVfPDyHYDtg6ulccRt1ieJwgrKEBI2g= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774211654; c=relaxed/simple; bh=cPHAbrK6FTfyPvGvlBb7XogSjZH5hirz7BUWC3jvX9Q=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=YGnsTyumEjpYuJSexjQIr2gv+O1DQyszwLYIHkCqVi7xCYsDxdjvoepBKsL/3jUc9j2V3g5nTzqJyHoWuwgTfgbhKSdK/45dXG6wmQC2V9axraHjtgGUF4Gkqyob1g6gQTPRshwryTdc5aWGHe02mXic2UHBy4cHhsScQN2yEfw= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=aurel32.net; spf=pass smtp.mailfrom=aurel32.net; dkim=pass (2048-bit key) header.d=aurel32.net header.i=@aurel32.net header.b=ibKSkx3e; arc=none smtp.client-ip=195.154.119.183 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=aurel32.net Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=aurel32.net Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=aurel32.net header.i=@aurel32.net header.b="ibKSkx3e" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=aurel32.net ; s=202004.hall; h=Content-Transfer-Encoding:MIME-Version:References: In-Reply-To:Message-ID:Date:Subject:Cc:To:From:Content-Type:From:Reply-To: Subject:Content-ID:Content-Description:X-Debbugs-Cc; bh=mkmin+8R4y9Bt/u7qbGdhBTJiWo5NovMdSsDVKb9cOU=; b=ibKSkx3e8/KCDizysi1x6SaJaX cUqVcopPZITy1XEWpGQLCNCUC+En+sv7CueSvNM54yHgwRdPmJ3YvBfDvhZvUVox7C/sB2wRXpCqp bKUYmrMcl0o5C2Rb/mWpbhVozC93cVl9r0OkoHU8f3HVlj9FOyGr6e4/Ufcsc1zBnmLzsRZm5Y424 +WEtFJUufqi+oACjEoAMbd8KvuUXDevxqsqRmhpd3M7s7vz4f4SdUuOjxd+FX5tr0n4yp9Llqt616 l51JwNM73km5inJMFLeuigmD+1kiUwSjbbV9qME8uKJGRP6g0NFqfn4AoIngkpm7rI/fDON+dXTGX 00dERMrQ==; Received: from authenticated user by hall.aurel32.net with esmtpsa (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.98.2) (envelope-from ) id 1w4PUx-0000000Aseb-2Ja8; Sun, 22 Mar 2026 21:34:11 +0100 From: Aurelien Jarno To: linux-kernel@vger.kernel.org, Rob Herring , Krzysztof Kozlowski , Conor Dooley , Yixun Lan , Paul Walmsley , Palmer Dabbelt , Albert Ou , Alexandre Ghiti Cc: Aurelien Jarno , devicetree@vger.kernel.org (open list:OPEN FIRMWARE AND FLATTENED DEVICE TREE BINDINGS), linux-riscv@lists.infradead.org (open list:RISC-V ARCHITECTURE), spacemit@lists.linux.dev (open list:RISC-V SPACEMIT SoC Support) Subject: [PATCH 3/6] riscv: dts: spacemit: add i2c aliases on Milk-V Jupiter Date: Sun, 22 Mar 2026 21:28:34 +0100 Message-ID: <20260322203356.2206927-4-aurelien@aurel32.net> X-Mailer: git-send-email 2.51.0 In-Reply-To: <20260322203356.2206927-1-aurelien@aurel32.net> References: <20260322203356.2206927-1-aurelien@aurel32.net> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Add i2c aliases for i2c2 and i2c8 on Milk-V Jupiter. This is useful to keep a stable number for the /dev entries after loading the i2c-dev module. Signed-off-by: Aurelien Jarno Reviewed-by: Javier Martinez Canillas --- arch/riscv/boot/dts/spacemit/k1-milkv-jupiter.dts | 2 ++ 1 file changed, 2 insertions(+) diff --git a/arch/riscv/boot/dts/spacemit/k1-milkv-jupiter.dts b/arch/riscv= /boot/dts/spacemit/k1-milkv-jupiter.dts index bd48208a370cf..836311c3f035c 100644 --- a/arch/riscv/boot/dts/spacemit/k1-milkv-jupiter.dts +++ b/arch/riscv/boot/dts/spacemit/k1-milkv-jupiter.dts @@ -15,6 +15,8 @@ aliases { ethernet0 =3D ð0; ethernet1 =3D ð1; serial0 =3D &uart0; + i2c2 =3D &i2c2; + i2c8 =3D &i2c8; }; =20 chosen { --=20 2.51.0 From nobody Fri Apr 3 22:12:20 2026 Received: from hall.aurel32.net (hall.aurel32.net [195.154.119.183]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id D8C5837E2E2; Sun, 22 Mar 2026 20:34:13 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=195.154.119.183 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774211655; cv=none; b=u41FERGW1z0Z9VziOqLtHL0ryCM2no7ZbU8yyUtgwPzd6g8jVQ1QexY6+dsi8e2P9omKcaodyRkEWgTr1MIdUPDVSh21S07ghWshqY4H/D/nQQkcyLGI9bq/yACjHtPcYXzh2iFJ1BvJNwAimTDcbbFeyJcqS5ZKGiYRLU3zPAU= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774211655; c=relaxed/simple; bh=40bDsfLBfIMAkeSyiFV0WzYzeWf0ubUhF4jk7BdStds=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=VLRtCJ4gT79DXo4/NJaVs/DRJB4wGKxoyggoEK2xC8cNIp4RxPUpXPK9vh1OCbO20mPGM1zouJJ7TGw5vtVQi5T/WyOaKUy2TY1AcPQq7feC/zqqth77v4CgVGo1mLAnjf0HblYRrU2ntpKLAJHnO7195/RAt2kTbRCHFZ0A4V8= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=aurel32.net; spf=pass smtp.mailfrom=aurel32.net; dkim=pass (2048-bit key) header.d=aurel32.net header.i=@aurel32.net header.b=dFcm5q/5; arc=none smtp.client-ip=195.154.119.183 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=aurel32.net Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=aurel32.net Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=aurel32.net header.i=@aurel32.net header.b="dFcm5q/5" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=aurel32.net ; s=202004.hall; h=Content-Transfer-Encoding:MIME-Version:References: In-Reply-To:Message-ID:Date:Subject:Cc:To:From:Content-Type:From:Reply-To: Subject:Content-ID:Content-Description:X-Debbugs-Cc; bh=Q9zYMQ/+P5ZH+YqXhnTOnd4b/fagZS5108Ie9UShcTA=; b=dFcm5q/5A9pxnqsWTkpjpaDRmO oCbtuXQVCbxCSyU/oPISkI2KMBzZiqjXbXQPIHxNsYBxH1x8Qp4eyji/3P5+nugVPuYQsFr8FvlON YvZ5l0UYoRLIoIXGPrOirDP/2OsQ2+WsDoRTeQfPi2QdCkuR5kqYcHFw9VQ3mxAR69PsrODO1F1Mr FNc1Jm82EQZSc3JB7fB0zuwM9MkmkATebRYSfQIObVyV5QjFaDKufv/L3gBZS3e1l5GoUEhVK9Z3H GFHFS31YCj6QO9CBh5DaaSZgDmTm3gdzwTU1/3vu4ZhvE4h5PabvKxHvaUoFjLeZxARnmwWy0k1Ll dYEo1Wog==; Received: from authenticated user by hall.aurel32.net with esmtpsa (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.98.2) (envelope-from ) id 1w4PUy-0000000Aseo-0wcf; Sun, 22 Mar 2026 21:34:12 +0100 From: Aurelien Jarno To: linux-kernel@vger.kernel.org, Rob Herring , Krzysztof Kozlowski , Conor Dooley , Paul Walmsley , Palmer Dabbelt , Albert Ou , Alexandre Ghiti , Yixun Lan Cc: Aurelien Jarno , devicetree@vger.kernel.org (open list:OPEN FIRMWARE AND FLATTENED DEVICE TREE BINDINGS), linux-riscv@lists.infradead.org (open list:RISC-V ARCHITECTURE), spacemit@lists.linux.dev (open list:RISC-V SPACEMIT SoC Support) Subject: [PATCH 4/6] riscv: dts: spacemit: enable QSPI and add SPI NOR on Milk-V Jupiter Date: Sun, 22 Mar 2026 21:28:35 +0100 Message-ID: <20260322203356.2206927-5-aurelien@aurel32.net> X-Mailer: git-send-email 2.51.0 In-Reply-To: <20260322203356.2206927-1-aurelien@aurel32.net> References: <20260322203356.2206927-1-aurelien@aurel32.net> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Add the QSPI controller node for the Milk-V Jupiter board and describe the attached SPI NOR flash (GD25Q64E). The flash supports a frequency up to 133MHz (80 MHz for reads), and the SoC supports a frequency up to 104 MHz. However tests have shown that the flash is not reliably detected above 26.5 MHz, consistent with frequency used in the vendor kernel. Therefore, use this frequency. The m25p,fast-read properties is taken from the vendor kernel. Add a corresponding flash partition layout, matching the layout and the names used in the vendor U-Boot. Also add the bootph-pre-ram property to make the device tree usable by early firmware/bootloaders without modification, as U-Boot is stored on this NOR flash. Signed-off-by: Aurelien Jarno --- .../boot/dts/spacemit/k1-milkv-jupiter.dts | 44 ++++++++++++++++++- 1 file changed, 43 insertions(+), 1 deletion(-) diff --git a/arch/riscv/boot/dts/spacemit/k1-milkv-jupiter.dts b/arch/riscv= /boot/dts/spacemit/k1-milkv-jupiter.dts index 836311c3f035c..05ab5df50be51 100644 --- a/arch/riscv/boot/dts/spacemit/k1-milkv-jupiter.dts +++ b/arch/riscv/boot/dts/spacemit/k1-milkv-jupiter.dts @@ -173,7 +173,7 @@ buck3_1v8: buck3 { regulator-always-on; }; =20 - buck4 { + buck4_3v3: buck4 { regulator-min-microvolt =3D <500000>; regulator-max-microvolt =3D <3300000>; regulator-ramp-delay =3D <5000>; @@ -256,6 +256,48 @@ dldo7 { }; }; =20 +&qspi { + pinctrl-names =3D "default"; + pinctrl-0 =3D <&qspi_cfg>; + status =3D "okay"; + + flash@0 { + compatible =3D "jedec,spi-nor"; + reg =3D <0>; + spi-max-frequency =3D <26500000>; + spi-rx-bus-width =3D <4>; + spi-tx-bus-width =3D <4>; + vcc-supply =3D <&buck4_3v3>; /* QSPI_VCC1833 */ + m25p,fast-read; + bootph-pre-ram; + + partitions { + compatible =3D "fixed-partitions"; + #address-cells =3D <1>; + #size-cells =3D <1>; + + bootinfo@0 { + reg =3D <0x0 0x10000>; + }; + private@10000 { + reg =3D <0x10000 0x10000>; + }; + fsbl@20000 { + reg =3D <0x20000 0x40000>; + }; + env@60000 { + reg =3D <0x60000 0x10000>; + }; + opensbi@70000 { + reg =3D <0x70000 0x30000>; + }; + uboot@a00000 { + reg =3D <0xa0000 0x760000>; + }; + }; + }; +}; + &uart0 { pinctrl-names =3D "default"; pinctrl-0 =3D <&uart0_2_cfg>; --=20 2.51.0 From nobody Fri Apr 3 22:12:20 2026 Received: from hall.aurel32.net (hall.aurel32.net [195.154.119.183]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 908AD37F010; Sun, 22 Mar 2026 20:34:14 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=195.154.119.183 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774211655; cv=none; b=CqYqcX0dsoyNG0W8QS7nvT2YVBFk9L/LCaVIYreJiz32lrFtv8+BNYm81VRQR79eYr2JsRgu7S6jG+HRqB9Z71VM/UtCd8VzuBl566P4uUjjlbzwkPi9JaifuWJ7as4NMip1DJ0o8h7UqLqpH/euPEMc3fwOZ6TuF3Z+nqEYOLE= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774211655; c=relaxed/simple; bh=vIIRo5xwsBTbcJvZebY7emOeHg6k4AKKso78AhcKIG8=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=CBAi+rHc6ptMMUJTmqL/NyQAXuhk0Of1vPUnvSytgkCtC7PLof/4GVcWiE0xph7+/11W2t7mBFOwREa3aKYlEjfDK5kR568YDC8ZuVGEYheFyw8JbRPnC/1X74IOTWpZx8i6QjuqZvfYb9oN9jmXpIDKUiSSduokeKC1+3buBck= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=aurel32.net; spf=pass smtp.mailfrom=aurel32.net; dkim=pass (2048-bit key) header.d=aurel32.net header.i=@aurel32.net header.b=yODLePpr; arc=none smtp.client-ip=195.154.119.183 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=aurel32.net Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=aurel32.net Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=aurel32.net header.i=@aurel32.net header.b="yODLePpr" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=aurel32.net ; s=202004.hall; h=Content-Transfer-Encoding:MIME-Version:References: In-Reply-To:Message-ID:Date:Subject:Cc:To:From:Content-Type:From:Reply-To: Subject:Content-ID:Content-Description:X-Debbugs-Cc; bh=x7LUD3o/+agONjZ/pcY7X7Tdpjecq2+mWUSgKTwTkp4=; b=yODLePprKPq0hrFJm0okKD/umr 7AQLTfjfsQPx8EG7kqaARThoUZu01+yr5C8IUfIMuxHErT7vHRZwFWcCOPztPLz7iqtn1U4kc6QVj XQK6uUwmErDgLyW/cCIzn0kBmjqa9wypE5cV94y/3VUwdz3OV2xc4ANWUJ982IifITyi+NZw0A08f HiiGD4OOYk5pd6k20sQnfjx765ynPGyVDlszh8Qc35/KA27hbVc9qBbb1rlSqdrmcH0y54fgE4srl BpJE2Ku8xeo1BAYKW/2sS6msa2KXk/tqWrOF0JwCttJChPuZQhs4mQwF6Cl6AFSsrzjWD5vM+ykZa rcUEWxAA==; Received: from authenticated user by hall.aurel32.net with esmtpsa (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.98.2) (envelope-from ) id 1w4PUy-0000000Asf5-3pOd; Sun, 22 Mar 2026 21:34:12 +0100 From: Aurelien Jarno To: linux-kernel@vger.kernel.org, Rob Herring , Krzysztof Kozlowski , Conor Dooley , Paul Walmsley , Palmer Dabbelt , Albert Ou , Alexandre Ghiti , Yixun Lan Cc: Aurelien Jarno , devicetree@vger.kernel.org (open list:OPEN FIRMWARE AND FLATTENED DEVICE TREE BINDINGS), linux-riscv@lists.infradead.org (open list:RISC-V SPACEMIT SoC Support), spacemit@lists.linux.dev (open list:RISC-V SPACEMIT SoC Support) Subject: [PATCH 5/6] riscv: dts: spacemit: enable USB 3 ports on Milk-V Jupiter Date: Sun, 22 Mar 2026 21:28:36 +0100 Message-ID: <20260322203356.2206927-6-aurelien@aurel32.net> X-Mailer: git-send-email 2.51.0 In-Reply-To: <20260322203356.2206927-1-aurelien@aurel32.net> References: <20260322203356.2206927-1-aurelien@aurel32.net> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Enable the DWC3 USB 3.0 controller (USB#2 port in the K1 datasheet) and its associated combo_phy (USB 3 PHY) and usbphy2 (USB 2 PHY) on the Milk-V Jupiter board. The board uses a VLI VL817 hub, providing four ports. Two are routed to the 3.0 type-A connectors, and two to the F_USB3 front USB header. The hub requires two separate 5V power supplies: one for the hub itself and one for the USB connectors. Add an always-on regulator sourcing 5V from the DC-IN input, along with two GPIO-controlled fixed regulators to manage the hub and connectors power supplies. Note that the board also provides four USB 2.0 ports (two via type-A connectors and two via the F_USB2 front USB header), but these are handled by a different controller (USB#1 port in the K1 datasheet). Signed-off-by: Aurelien Jarno Reviewed-by: Javier Martinez Canillas --- .../boot/dts/spacemit/k1-milkv-jupiter.dts | 62 +++++++++++++++++++ 1 file changed, 62 insertions(+) diff --git a/arch/riscv/boot/dts/spacemit/k1-milkv-jupiter.dts b/arch/riscv= /boot/dts/spacemit/k1-milkv-jupiter.dts index 05ab5df50be51..4432f8287eb5c 100644 --- a/arch/riscv/boot/dts/spacemit/k1-milkv-jupiter.dts +++ b/arch/riscv/boot/dts/spacemit/k1-milkv-jupiter.dts @@ -58,6 +58,41 @@ reg_vcc_4v: regulator-vcc-4v { regulator-always-on; vin-supply =3D <®_dc_in>; }; + + reg_vcc_5v: regulator-vcc-5v { + compatible =3D "regulator-fixed"; + regulator-name =3D "vcc_5v"; + regulator-min-microvolt =3D <5000000>; + regulator-max-microvolt =3D <5000000>; + regulator-boot-on; + regulator-always-on; + vin-supply =3D <®_dc_in>; + }; + + regulator-usb3-vbus-5v { + compatible =3D "regulator-fixed"; + regulator-name =3D "USB30_VBUS"; + regulator-min-microvolt =3D <5000000>; + regulator-max-microvolt =3D <5000000>; + regulator-always-on; + vin-supply =3D <®_vcc_5v>; + gpio =3D <&gpio K1_GPIO(97) GPIO_ACTIVE_HIGH>; + enable-active-high; + }; + + usb3_hub_5v: regulator-usb3-hub-5v { + compatible =3D "regulator-fixed"; + regulator-name =3D "USB30_HUB"; + regulator-min-microvolt =3D <5000000>; + regulator-max-microvolt =3D <5000000>; + vin-supply =3D <®_vcc_5v>; + gpio =3D <&gpio K1_GPIO(123) GPIO_ACTIVE_HIGH>; + enable-active-high; + }; +}; + +&combo_phy { + status =3D "okay"; }; =20 ð0 { @@ -303,3 +338,30 @@ &uart0 { pinctrl-0 =3D <&uart0_2_cfg>; status =3D "okay"; }; + +&usbphy2 { + status =3D "okay"; +}; + +&usb_dwc3 { + dr_mode =3D "host"; + #address-cells =3D <1>; + #size-cells =3D <0>; + status =3D "okay"; + + hub_2_0: hub@1 { + compatible =3D "usb2109,2817"; + reg =3D <0x1>; + vdd-supply =3D <&usb3_hub_5v>; + peer-hub =3D <&hub_3_0>; + reset-gpios =3D <&gpio K1_GPIO(124) GPIO_ACTIVE_LOW>; + }; + + hub_3_0: hub@2 { + compatible =3D "usb2109,817"; + reg =3D <0x2>; + vdd-supply =3D <&usb3_hub_5v>; + peer-hub =3D <&hub_2_0>; + reset-gpios =3D <&gpio K1_GPIO(124) GPIO_ACTIVE_LOW>; + }; +}; --=20 2.51.0 From nobody Fri Apr 3 22:12:20 2026 Received: from hall.aurel32.net (hall.aurel32.net [195.154.119.183]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 2990737F74D; Sun, 22 Mar 2026 20:34:15 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=195.154.119.183 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774211656; cv=none; b=dnCQkPMaQQUorScfHPjEbkeCUx1GeAXVYOGFYTZSmWgq/Al2yWTX8cIILzUdp3/stKxUOUJsjo7QTfUDdUbjYAOvx49vDKldFtTxdERYMNNZmdBQLq1i9EzYMZIJOQuuj3U2WwDzYvxz8MmYOHTdZCfxNQTqfhugFay6rl4nADU= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774211656; c=relaxed/simple; bh=hXtOE/S/BD2vKjhdLlu+s5UL9v4tk7IWjKSM57AF9c8=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=BCaNeYJ90TgrIBmQPgAKrPUiuPuxPdS4g1+x3B0xEnwGKC03k1hdJUTDJGTrnRMklBAIYm+xv/KJWXrbiC92Z33HS+KDHLU1x2RV6mrVP6UUCY9DBLjYBaegkVicKHhRsstcfPhBMvPCDO5pnE/KVXLHQqNnqPE0kUnluy9C5PY= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=aurel32.net; spf=pass smtp.mailfrom=aurel32.net; dkim=pass (2048-bit key) header.d=aurel32.net header.i=@aurel32.net header.b=z2FEIz/a; arc=none smtp.client-ip=195.154.119.183 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=aurel32.net Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=aurel32.net Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=aurel32.net header.i=@aurel32.net header.b="z2FEIz/a" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=aurel32.net ; s=202004.hall; h=Content-Transfer-Encoding:MIME-Version:References: In-Reply-To:Message-ID:Date:Subject:Cc:To:From:Content-Type:From:Reply-To: Subject:Content-ID:Content-Description:X-Debbugs-Cc; bh=h2XgC87QhZKmEL4LkPO3nDr8p/ZxtRxNQZuSqKpeYJM=; b=z2FEIz/aZkvVPsY+4chklYQSqG 1zReuu4agcLAYpOn3ZCy5IuZfOtmhvYyPv8UUUb+JZK0Zk5cBfuwczkp9pF5C5I/ARmp0n+zvRVR/ CeeMZOLEI5svyOAqG1/z9B8ULt7LUMykz41/+MRiMJTJ+M8liim3bZAzrgQLnLVOcyVfWs/WdofEv c2FVVC5YOl5xOg1n84N8holWP03pE+9an5satwv8n/sNkiSHXqtfuOSH+QkEzjzTam1ELTnmoXYs+ 7bs9pH+eENW1clTkVdq7Z6QExVIvrd/cyyqxCOf8lTVLIp3SeMcVsUxZndipaDMdcvRume/MKp1z1 eN/lSsgA==; Received: from authenticated user by hall.aurel32.net with esmtpsa (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.98.2) (envelope-from ) id 1w4PUz-0000000AsfJ-2PHS; Sun, 22 Mar 2026 21:34:13 +0100 From: Aurelien Jarno To: linux-kernel@vger.kernel.org, Rob Herring , Krzysztof Kozlowski , Conor Dooley , Yixun Lan , Paul Walmsley , Palmer Dabbelt , Albert Ou , Alexandre Ghiti Cc: Aurelien Jarno , devicetree@vger.kernel.org (open list:OPEN FIRMWARE AND FLATTENED DEVICE TREE BINDINGS), linux-riscv@lists.infradead.org (open list:RISC-V SPACEMIT SoC Support), spacemit@lists.linux.dev (open list:RISC-V SPACEMIT SoC Support) Subject: [PATCH 6/6] riscv: dts: spacemit: enable PCIe ports on Milk-V Jupiter Date: Sun, 22 Mar 2026 21:28:37 +0100 Message-ID: <20260322203356.2206927-7-aurelien@aurel32.net> X-Mailer: git-send-email 2.51.0 In-Reply-To: <20260322203356.2206927-1-aurelien@aurel32.net> References: <20260322203356.2206927-1-aurelien@aurel32.net> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Enable the two PCIe controller along with and their associated PHY. They are routed to the M.2 M-key connector and to the the PCIe x8 slot. Add an always-on regulator sourcing 3.3V from the DC-IN input, to power the PCIe ports. Signed-off-by: Aurelien Jarno Reviewed-by: Javier Martinez Canillas --- .../boot/dts/spacemit/k1-milkv-jupiter.dts | 42 +++++++++++++++++++ 1 file changed, 42 insertions(+) diff --git a/arch/riscv/boot/dts/spacemit/k1-milkv-jupiter.dts b/arch/riscv= /boot/dts/spacemit/k1-milkv-jupiter.dts index 4432f8287eb5c..d59dea4149ae7 100644 --- a/arch/riscv/boot/dts/spacemit/k1-milkv-jupiter.dts +++ b/arch/riscv/boot/dts/spacemit/k1-milkv-jupiter.dts @@ -40,6 +40,16 @@ led2 { }; }; =20 + pcie_vcc_3v3: regulator-pcie-vcc3v3 { + compatible =3D "regulator-fixed"; + regulator-name =3D "pcie_vcc3v3"; + regulator-min-microvolt =3D <3300000>; + regulator-max-microvolt =3D <3300000>; + regulator-boot-on; + regulator-always-on; + vin-supply =3D <®_dc_in>; + }; + reg_dc_in: regulator-dc-in-12v { compatible =3D "regulator-fixed"; regulator-name =3D "dc_in_12v"; @@ -291,6 +301,38 @@ dldo7 { }; }; =20 +&pcie1_phy { + pinctrl-names =3D "default"; + pinctrl-0 =3D <&pcie1_3_cfg>; + status =3D "okay"; +}; + +&pcie1_port { + phys =3D <&pcie1_phy>; + vpcie3v3-supply =3D <&pcie_vcc_3v3>; +}; + +&pcie1 { + vpcie3v3-supply =3D <&pcie_vcc_3v3>; + status =3D "okay"; +}; + +&pcie2_phy { + pinctrl-names =3D "default"; + pinctrl-0 =3D <&pcie2_4_cfg>; + status =3D "okay"; +}; + +&pcie2_port { + phys =3D <&pcie2_phy>; + vpcie3v3-supply =3D <&pcie_vcc_3v3>; +}; + +&pcie2 { + vpcie3v3-supply =3D <&pcie_vcc_3v3>; + status =3D "okay"; +}; + &qspi { pinctrl-names =3D "default"; pinctrl-0 =3D <&qspi_cfg>; --=20 2.51.0