
On Sat, 9 Jul 2022 08:59:45 +0200 Michal Suchanek msuchanek@suse.de wrote:
Hi Michal,
The device tree should include generic "jedec,spi-nor" compatible, and a manufacturer-specific one. The macronix part is what is shipped on the boards that come with a flash chip.
thanks for taking care and trying to bring those fixes upstream!
It seems that this patch alone doesn't do anything, as SPI0 is still disabled in the DT. Also we normally don't pick single DT changes from Linux, unless they fix a very particular U-Boot issue. Instead we try to sync the DT files in batches, once they reached a certain maturity state in the Linux tree (for instance merged into Linus' tree).
So as this one here doesn't do anything, we will just pick it up as part of the next sync, which I guess is around Linux 5.20-rc1, due in about a month.
As mentioned on IRC, I would be interested in solving this "SPI flash is optional" issue. IIUC there was pushback in Linux against blanketly enabling the SPI flash on this board, as there were boards sold without the chip? (Do you have a link to that discussion?) So the plan would be to detect the availability of the SPI flash in U-Boot, and then disable it (in the DT passed to the kernel), when the chip is not populated. Then we can send a patch to Linux to enable it in the DT, and sync that back. I would be grateful if someone could investigate the code it takes to pull this off.
Thanks, Andre
Fixes: 280294c5df ("sunxi: boards: Enable SPI flash support in U-Boot proper") Signed-off-by: Michal Suchanek msuchanek@suse.de
v2: cherry-pick from Linux arch/arm/dts/sun8i-h2-plus-orangepi-zero.dts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/arm/dts/sun8i-h2-plus-orangepi-zero.dts b/arch/arm/dts/sun8i-h2-plus-orangepi-zero.dts index b08e84c616..80c1e66b38 100644 --- a/arch/arm/dts/sun8i-h2-plus-orangepi-zero.dts +++ b/arch/arm/dts/sun8i-h2-plus-orangepi-zero.dts @@ -170,7 +170,7 @@ flash@0 { #address-cells = <1>; #size-cells = <1>;
compatible = "mxicy,mx25l1606e", "winbond,w25q128";
reg = <0>; spi-max-frequency = <40000000>; };compatible = "mxicy,mx25l1606e", "jedec,spi-nor";