Yellow USB mass storage support (#2035)

* Enable USB OTG in the Yellow device tree

* Enable U-Boot USB mass storage command

* Enable UMS mode when blue button is pressed
This commit is contained in:
Stefan Agner 2022-07-27 23:54:17 +02:00 committed by GitHub
parent 084b20e4df
commit 364196614b
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
13 changed files with 83 additions and 48 deletions

View File

@ -1,8 +1,8 @@
From 2d3d8c091bc692999a1c519c1dc1570cc8be2358 Mon Sep 17 00:00:00 2001
Message-Id: <2d3d8c091bc692999a1c519c1dc1570cc8be2358.1651085802.git.stefan@agner.ch>
Message-Id: <2d3d8c091bc692999a1c519c1dc1570cc8be2358.1658843713.git.stefan@agner.ch>
From: Stefan Agner <stefan@agner.ch>
Date: Mon, 11 Apr 2022 14:47:59 +0200
Subject: [PATCH 01/10] ARM: dts: bcm2711: Add device tree for Home Assistant
Subject: [PATCH 01/11] ARM: dts: bcm2711: Add device tree for Home Assistant
Yellow
Add device tree for Home Assistant Yellow, a Compute Module 4 based I/O
@ -656,5 +656,5 @@ index 000000000000..fdc5ec5bc956
@@ -0,0 +1 @@
+#include "../../../../arm/boot/dts/bcm2711-rpi-cm4-ha-yellow.dts"
--
2.36.0
2.37.1

View File

@ -1,10 +1,10 @@
From a4a63bb6f6789c00762b92f0469d10bac525d1f9 Mon Sep 17 00:00:00 2001
Message-Id: <a4a63bb6f6789c00762b92f0469d10bac525d1f9.1651085802.git.stefan@agner.ch>
In-Reply-To: <2d3d8c091bc692999a1c519c1dc1570cc8be2358.1651085802.git.stefan@agner.ch>
References: <2d3d8c091bc692999a1c519c1dc1570cc8be2358.1651085802.git.stefan@agner.ch>
Message-Id: <a4a63bb6f6789c00762b92f0469d10bac525d1f9.1658843713.git.stefan@agner.ch>
In-Reply-To: <2d3d8c091bc692999a1c519c1dc1570cc8be2358.1658843713.git.stefan@agner.ch>
References: <2d3d8c091bc692999a1c519c1dc1570cc8be2358.1658843713.git.stefan@agner.ch>
From: Stefan Agner <stefan@agner.ch>
Date: Thu, 4 Mar 2021 14:33:09 +0100
Subject: [PATCH 02/10] ARM: dts: bcm2711: yellow: Mux UART4 for SiLabs radio
Subject: [PATCH 02/11] ARM: dts: bcm2711: yellow: Mux UART4 for SiLabs radio
module
Enable UART4 by default and mux pins including hardware flow control.
@ -57,5 +57,5 @@ index 61d8c81d3de4..8db71876a78c 100644
uart5_pins: uart5_pins {
--
2.36.0
2.37.1

View File

@ -1,10 +1,10 @@
From c0ddd45166d5aa922045da915202540db3ef2dc2 Mon Sep 17 00:00:00 2001
Message-Id: <c0ddd45166d5aa922045da915202540db3ef2dc2.1651085802.git.stefan@agner.ch>
In-Reply-To: <2d3d8c091bc692999a1c519c1dc1570cc8be2358.1651085802.git.stefan@agner.ch>
References: <2d3d8c091bc692999a1c519c1dc1570cc8be2358.1651085802.git.stefan@agner.ch>
Message-Id: <c0ddd45166d5aa922045da915202540db3ef2dc2.1658843713.git.stefan@agner.ch>
In-Reply-To: <2d3d8c091bc692999a1c519c1dc1570cc8be2358.1658843713.git.stefan@agner.ch>
References: <2d3d8c091bc692999a1c519c1dc1570cc8be2358.1658843713.git.stefan@agner.ch>
From: Stefan Agner <stefan@agner.ch>
Date: Thu, 4 Mar 2021 14:44:23 +0100
Subject: [PATCH 03/10] ARM: dts: bcm2711: yellow: Mux debug UART5
Subject: [PATCH 03/11] ARM: dts: bcm2711: yellow: Mux debug UART5
Signed-off-by: Stefan Agner <stefan@agner.ch>
---
@ -46,5 +46,5 @@ index 8db71876a78c..d1dea0a214a6 100644
aliases {
--
2.36.0
2.37.1

View File

@ -1,10 +1,10 @@
From 606dcdc896ffc18001ad4983d45a2e23cacd040a Mon Sep 17 00:00:00 2001
Message-Id: <606dcdc896ffc18001ad4983d45a2e23cacd040a.1651085802.git.stefan@agner.ch>
In-Reply-To: <2d3d8c091bc692999a1c519c1dc1570cc8be2358.1651085802.git.stefan@agner.ch>
References: <2d3d8c091bc692999a1c519c1dc1570cc8be2358.1651085802.git.stefan@agner.ch>
Message-Id: <606dcdc896ffc18001ad4983d45a2e23cacd040a.1658843713.git.stefan@agner.ch>
In-Reply-To: <2d3d8c091bc692999a1c519c1dc1570cc8be2358.1658843713.git.stefan@agner.ch>
References: <2d3d8c091bc692999a1c519c1dc1570cc8be2358.1658843713.git.stefan@agner.ch>
From: Stefan Agner <stefan@agner.ch>
Date: Thu, 4 Mar 2021 14:48:48 +0100
Subject: [PATCH 04/10] ARM: dts: bcm2711: yellow: Enable I2C6 by default
Subject: [PATCH 04/11] ARM: dts: bcm2711: yellow: Enable I2C6 by default
The main I2C bus used on Yellow is I2C6. Enable it by default.
@ -31,5 +31,5 @@ index d1dea0a214a6..0bdbfdd44aed 100644
pinctrl-names = "default";
pinctrl-0 = <&i2s_pins>;
--
2.36.0
2.37.1

View File

@ -1,10 +1,10 @@
From 298d5254c1c2151b34eaf87f7e2f44205d34d909 Mon Sep 17 00:00:00 2001
Message-Id: <298d5254c1c2151b34eaf87f7e2f44205d34d909.1651085802.git.stefan@agner.ch>
In-Reply-To: <2d3d8c091bc692999a1c519c1dc1570cc8be2358.1651085802.git.stefan@agner.ch>
References: <2d3d8c091bc692999a1c519c1dc1570cc8be2358.1651085802.git.stefan@agner.ch>
Message-Id: <298d5254c1c2151b34eaf87f7e2f44205d34d909.1658843713.git.stefan@agner.ch>
In-Reply-To: <2d3d8c091bc692999a1c519c1dc1570cc8be2358.1658843713.git.stefan@agner.ch>
References: <2d3d8c091bc692999a1c519c1dc1570cc8be2358.1658843713.git.stefan@agner.ch>
From: Stefan Agner <stefan@agner.ch>
Date: Thu, 4 Mar 2021 17:19:01 +0100
Subject: [PATCH 05/10] ARM: dts: bcm2711: yellow: add I2S audio codec
Subject: [PATCH 05/11] ARM: dts: bcm2711: yellow: add I2S audio codec
Add TI PCM5122 I2S audio codec.
@ -63,5 +63,5 @@ index 0bdbfdd44aed..f6f42bf45c92 100644
pinctrl-names = "default";
pinctrl-0 = <&audio_pins>;
--
2.36.0
2.37.1

View File

@ -1,10 +1,10 @@
From 41127a02d66d07d0a17e904557899b15a067a692 Mon Sep 17 00:00:00 2001
Message-Id: <41127a02d66d07d0a17e904557899b15a067a692.1651085802.git.stefan@agner.ch>
In-Reply-To: <2d3d8c091bc692999a1c519c1dc1570cc8be2358.1651085802.git.stefan@agner.ch>
References: <2d3d8c091bc692999a1c519c1dc1570cc8be2358.1651085802.git.stefan@agner.ch>
Message-Id: <41127a02d66d07d0a17e904557899b15a067a692.1658843713.git.stefan@agner.ch>
In-Reply-To: <2d3d8c091bc692999a1c519c1dc1570cc8be2358.1658843713.git.stefan@agner.ch>
References: <2d3d8c091bc692999a1c519c1dc1570cc8be2358.1658843713.git.stefan@agner.ch>
From: Stefan Agner <stefan@agner.ch>
Date: Tue, 9 Mar 2021 15:02:53 +0100
Subject: [PATCH 06/10] ARM: dts: bcm2711: yellow: enable GPIO keys
Subject: [PATCH 06/11] ARM: dts: bcm2711: yellow: enable GPIO keys
Signed-off-by: Stefan Agner <stefan@agner.ch>
---
@ -68,5 +68,5 @@ index f6f42bf45c92..e2fa42a11cc9 100644
brcm,pins = <9 10 11>;
brcm,function = <BCM2835_FSEL_ALT0>;
--
2.36.0
2.37.1

View File

@ -1,10 +1,10 @@
From efe5e827dc0653066ebc9f71de2ccf391a4bb27e Mon Sep 17 00:00:00 2001
Message-Id: <efe5e827dc0653066ebc9f71de2ccf391a4bb27e.1651085802.git.stefan@agner.ch>
In-Reply-To: <2d3d8c091bc692999a1c519c1dc1570cc8be2358.1651085802.git.stefan@agner.ch>
References: <2d3d8c091bc692999a1c519c1dc1570cc8be2358.1651085802.git.stefan@agner.ch>
Message-Id: <efe5e827dc0653066ebc9f71de2ccf391a4bb27e.1658843713.git.stefan@agner.ch>
In-Reply-To: <2d3d8c091bc692999a1c519c1dc1570cc8be2358.1658843713.git.stefan@agner.ch>
References: <2d3d8c091bc692999a1c519c1dc1570cc8be2358.1658843713.git.stefan@agner.ch>
From: Stefan Agner <stefan@agner.ch>
Date: Thu, 28 Oct 2021 19:38:04 +0200
Subject: [PATCH 07/10] ARM: dts: bcm2711: yellow: add user LED
Subject: [PATCH 07/11] ARM: dts: bcm2711: yellow: add user LED
Add yellow user LED.
@ -39,5 +39,5 @@ index e2fa42a11cc9..6039c7894796 100644
&pwm1 {
--
2.36.0
2.37.1

View File

@ -1,10 +1,10 @@
From 31ab383d0803e39e94472eea192e712fcc6e3cd6 Mon Sep 17 00:00:00 2001
Message-Id: <31ab383d0803e39e94472eea192e712fcc6e3cd6.1651085802.git.stefan@agner.ch>
In-Reply-To: <2d3d8c091bc692999a1c519c1dc1570cc8be2358.1651085802.git.stefan@agner.ch>
References: <2d3d8c091bc692999a1c519c1dc1570cc8be2358.1651085802.git.stefan@agner.ch>
Message-Id: <31ab383d0803e39e94472eea192e712fcc6e3cd6.1658843713.git.stefan@agner.ch>
In-Reply-To: <2d3d8c091bc692999a1c519c1dc1570cc8be2358.1658843713.git.stefan@agner.ch>
References: <2d3d8c091bc692999a1c519c1dc1570cc8be2358.1658843713.git.stefan@agner.ch>
From: Stefan Agner <stefan@agner.ch>
Date: Fri, 12 Nov 2021 17:33:32 +0100
Subject: [PATCH 08/10] ARM: dts: bcm2711: yellow: add NXP PCF85063A RTC
Subject: [PATCH 08/11] ARM: dts: bcm2711: yellow: add NXP PCF85063A RTC
Signed-off-by: Stefan Agner <stefan@agner.ch>
---
@ -28,5 +28,5 @@ index 6039c7894796..f78428ea64f3 100644
&i2s {
--
2.36.0
2.37.1

View File

@ -1,10 +1,10 @@
From f1553f413c8f53694d2f27db5b5c43d19cf1ff4f Mon Sep 17 00:00:00 2001
Message-Id: <f1553f413c8f53694d2f27db5b5c43d19cf1ff4f.1651085802.git.stefan@agner.ch>
In-Reply-To: <2d3d8c091bc692999a1c519c1dc1570cc8be2358.1651085802.git.stefan@agner.ch>
References: <2d3d8c091bc692999a1c519c1dc1570cc8be2358.1651085802.git.stefan@agner.ch>
Message-Id: <f1553f413c8f53694d2f27db5b5c43d19cf1ff4f.1658843713.git.stefan@agner.ch>
In-Reply-To: <2d3d8c091bc692999a1c519c1dc1570cc8be2358.1658843713.git.stefan@agner.ch>
References: <2d3d8c091bc692999a1c519c1dc1570cc8be2358.1658843713.git.stefan@agner.ch>
From: Stefan Agner <stefan@agner.ch>
Date: Fri, 7 Jan 2022 17:10:00 +0100
Subject: [PATCH 09/10] ARM: dts: bcm2711: yellow: enable USB host mode by
Subject: [PATCH 09/11] ARM: dts: bcm2711: yellow: enable USB host mode by
default
The DWC2 controller is disable by default. Enable it since Home
@ -36,5 +36,5 @@ index f78428ea64f3..711a09441ad0 100644
led-modes = <0x00 0x08>; /* link/activity link */
};
--
2.36.0
2.37.1

View File

@ -1,10 +1,10 @@
From 6f5e8133651df38d187c05bc27fd8fa25f0216da Mon Sep 17 00:00:00 2001
Message-Id: <6f5e8133651df38d187c05bc27fd8fa25f0216da.1651085802.git.stefan@agner.ch>
In-Reply-To: <2d3d8c091bc692999a1c519c1dc1570cc8be2358.1651085802.git.stefan@agner.ch>
References: <2d3d8c091bc692999a1c519c1dc1570cc8be2358.1651085802.git.stefan@agner.ch>
Message-Id: <6f5e8133651df38d187c05bc27fd8fa25f0216da.1658843713.git.stefan@agner.ch>
In-Reply-To: <2d3d8c091bc692999a1c519c1dc1570cc8be2358.1658843713.git.stefan@agner.ch>
References: <2d3d8c091bc692999a1c519c1dc1570cc8be2358.1658843713.git.stefan@agner.ch>
From: Stefan Agner <stefan@agner.ch>
Date: Wed, 27 Apr 2022 20:36:19 +0200
Subject: [PATCH 10/10] ARM: dts: bcm2711: yellow: use generic activity trigger
Subject: [PATCH 10/11] ARM: dts: bcm2711: yellow: use generic activity trigger
for green LED
Use the generic trigger "activity" for the green LED so that any
@ -29,5 +29,5 @@ index 711a09441ad0..f2f4f1a49592 100644
};
--
2.36.0
2.37.1

View File

@ -0,0 +1,32 @@
From f626368d2e2c7b5fc9066e80ef33d58071c297b6 Mon Sep 17 00:00:00 2001
Message-Id: <f626368d2e2c7b5fc9066e80ef33d58071c297b6.1658843713.git.stefan@agner.ch>
In-Reply-To: <2d3d8c091bc692999a1c519c1dc1570cc8be2358.1658843713.git.stefan@agner.ch>
References: <2d3d8c091bc692999a1c519c1dc1570cc8be2358.1658843713.git.stefan@agner.ch>
From: Stefan Agner <stefan@agner.ch>
Date: Tue, 26 Jul 2022 15:53:59 +0200
Subject: [PATCH 11/11] ARM: dts: bcm2711: yellow: use USB OTG mode by default
OTG seems to work fine, and allows to use the USB-C port as a USB
peripheral (e.g. in U-Boot via UMS command).
Signed-off-by: Stefan Agner <stefan@agner.ch>
---
arch/arm/boot/dts/bcm2711-rpi-cm4-ha-yellow.dts | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/arm/boot/dts/bcm2711-rpi-cm4-ha-yellow.dts b/arch/arm/boot/dts/bcm2711-rpi-cm4-ha-yellow.dts
index f2f4f1a49592..f354bfb69093 100644
--- a/arch/arm/boot/dts/bcm2711-rpi-cm4-ha-yellow.dts
+++ b/arch/arm/boot/dts/bcm2711-rpi-cm4-ha-yellow.dts
@@ -601,7 +601,7 @@ &sdhost {
&usb {
compatible = "brcm,bcm2835-usb";
- dr_mode = "host";
+ dr_mode = "otg";
g-np-tx-fifo-size = <32>;
g-rx-fifo-size = <558>;
g-tx-fifo-size = <512 512 512 512 512 256 256>;
--
2.37.1

View File

@ -34,6 +34,8 @@ if gpio input GPIO27; then
echo "Device wipe button has been pressed, setting wipe flag..."
setenv bootargs_hassos "${bootargs_hassos} haos.wipe=1"
fi
elif gpio input GPIO26; then
ums 0 mmc 0
fi
# HassOS system A/B

View File

@ -1,2 +1,3 @@
CONFIG_CMD_NVME=y
CONFIG_NVME=y
CONFIG_CMD_USB_MASS_STORAGE=y