mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-12-02 09:30:10 +00:00
64f79f88a7
Add sfc and flash node to device tree and config options to enable support for booting from SPI NOR flash on Radxa ROCK 3 Model A. Unlike prior generation SoCs the BootRom in RK3568 can read all data and look for idbloader at 0x8000, same as on SD and eMMC. Use the rksd format and modify the mkimage offset to generate a bootable u-boot-rockchip-spi.bin that can be written to 0x0 of SPI NOR flash. The FIT image is loaded from 0x60000. => sf probe SF: Detected mx25u12835f with page size 256 Bytes, erase size 4 KiB, total 16 MiB => load mmc 1:1 10000000 u-boot-rockchip-spi.bin 1384448 bytes read in 119 ms (11.1 MiB/s) => sf update $fileaddr 0 $filesize device 0 offset 0x0, size 0x152000 1179648 bytes written, 204800 bytes skipped in 9.901s, speed 143185 B/s Signed-off-by: Jonas Karlman <jonas@kwiboo.se> Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
120 lines
1.3 KiB
Text
120 lines
1.3 KiB
Text
// SPDX-License-Identifier: GPL-2.0+
|
|
/*
|
|
* (C) Copyright 2021 Rockchip Electronics Co., Ltd
|
|
* (C) Copyright 2023 Akash Gajjar <gajjar04akash@gmail.com>
|
|
*/
|
|
|
|
#include "rk356x-u-boot.dtsi"
|
|
|
|
/ {
|
|
aliases {
|
|
spi0 = &sfc;
|
|
};
|
|
|
|
chosen {
|
|
stdout-path = &uart2;
|
|
};
|
|
};
|
|
|
|
&emmc_bus8 {
|
|
bootph-all;
|
|
};
|
|
|
|
&emmc_clk {
|
|
bootph-all;
|
|
};
|
|
|
|
&emmc_cmd {
|
|
bootph-all;
|
|
};
|
|
|
|
&emmc_datastrobe {
|
|
bootph-all;
|
|
};
|
|
|
|
&fspi_pins {
|
|
bootph-all;
|
|
};
|
|
|
|
&pinctrl {
|
|
bootph-all;
|
|
};
|
|
|
|
&pcfg_pull_none {
|
|
bootph-all;
|
|
};
|
|
|
|
&pcfg_pull_up_drv_level_2 {
|
|
bootph-all;
|
|
};
|
|
|
|
&pcfg_pull_up {
|
|
bootph-all;
|
|
};
|
|
|
|
&sdmmc0_bus4 {
|
|
bootph-all;
|
|
};
|
|
|
|
&sdmmc0_clk {
|
|
bootph-all;
|
|
};
|
|
|
|
&sdmmc0_cmd {
|
|
bootph-all;
|
|
};
|
|
|
|
&sdmmc0_det {
|
|
bootph-all;
|
|
};
|
|
|
|
&sdhci {
|
|
cap-mmc-highspeed;
|
|
mmc-ddr-1_8v;
|
|
mmc-hs200-1_8v;
|
|
mmc-hs400-1_8v;
|
|
mmc-hs400-enhanced-strobe;
|
|
};
|
|
|
|
&sfc {
|
|
bootph-pre-ram;
|
|
u-boot,spl-sfc-no-dma;
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
status = "okay";
|
|
|
|
flash@0 {
|
|
bootph-pre-ram;
|
|
compatible = "jedec,spi-nor";
|
|
reg = <0>;
|
|
spi-max-frequency = <24000000>;
|
|
spi-rx-bus-width = <4>;
|
|
spi-tx-bus-width = <1>;
|
|
};
|
|
};
|
|
|
|
&sdmmc2 {
|
|
status = "disabled";
|
|
};
|
|
|
|
&uart1 {
|
|
status = "disabled";
|
|
};
|
|
|
|
&uart2m0_xfer {
|
|
bootph-all;
|
|
};
|
|
|
|
&uart2 {
|
|
clock-frequency = <24000000>;
|
|
bootph-all;
|
|
status = "okay";
|
|
};
|
|
|
|
&vcc5v0_usb_host {
|
|
regulator-boot-on;
|
|
};
|
|
|
|
&vcc5v0_usb_hub {
|
|
regulator-boot-on;
|
|
};
|