diff --git a/arch/arm/boot/dts/rv1106-thunder-boot-emmc.dtsi b/arch/arm/boot/dts/rv1106-thunder-boot-emmc.dtsi new file mode 100644 index 000000000000..dbb61987602c --- /dev/null +++ b/arch/arm/boot/dts/rv1106-thunder-boot-emmc.dtsi @@ -0,0 +1,31 @@ +// SPDX-License-Identifier: (GPL-2.0+ OR MIT) +/* + * Copyright (c) 2022 Rockchip Electronics Co., Ltd. + */ + +#include "rv1106-thunder-boot.dtsi" + +/ { + reserved-memory { + mmc_ecsd: mmc@3fe00 { + reg = <0x3fe00 0x00000800>; + }; + + mmc_idmac: mmc@100000 { + reg = <0x00100000 0x00100000>; + }; + }; + + thunder_boot_mmc: thunder-boot-mmc { + compatible = "rockchip,thunder-boot-mmc"; + reg = <0xffa90000 0x4000>; + memory-region-src = <&ramdisk_c>; + memory-region-dst = <&ramdisk_r>; + memory-region-idmac = <&mmc_idmac>; + }; +}; + +&emmc { + memory-region-ecsd = <&mmc_ecsd>; + post-power-on-delay-ms = <0>; +}; diff --git a/arch/arm/boot/dts/rv1106-thunder-boot-spi-nor.dtsi b/arch/arm/boot/dts/rv1106-thunder-boot-spi-nor.dtsi new file mode 100644 index 000000000000..e1e79bd710a0 --- /dev/null +++ b/arch/arm/boot/dts/rv1106-thunder-boot-spi-nor.dtsi @@ -0,0 +1,15 @@ +// SPDX-License-Identifier: (GPL-2.0+ OR MIT) +/* + * Copyright (c) 2022 Rockchip Electronics Co., Ltd. + */ + +#include "rv1106-thunder-boot.dtsi" + +/ { + thunder_boot_spi_nor: thunder-boot-spi-nor { + compatible = "rockchip,thunder-boot-sfc"; + reg = <0xffac0000 0x4000>; + memory-region-src = <&ramdisk_c>; + memory-region-dst = <&ramdisk_r>; + }; +}; diff --git a/arch/arm/boot/dts/rv1106-thunder-boot.dtsi b/arch/arm/boot/dts/rv1106-thunder-boot.dtsi new file mode 100644 index 000000000000..d934815aa0db --- /dev/null +++ b/arch/arm/boot/dts/rv1106-thunder-boot.dtsi @@ -0,0 +1,35 @@ +// SPDX-License-Identifier: (GPL-2.0+ OR MIT) +/* + * Copyright (c) 2022 Rockchip Electronics Co., Ltd. + */ + +/ { + memory: memory { + device_type = "memory"; + reg = <0x00000000 0x08000000>; + }; + + ramdisk: ramdisk { + compatible = "rockchip,ramdisk"; + memory-region = <&ramdisk_r>; + }; + + reserved-memory { + #address-cells = <1>; + #size-cells = <1>; + ranges; + + ramdisk_r: ramdisk@a00000 { + reg = <0x00a00000 (10 * 0x00100000)>; + }; + + ramdisk_c: ramdisk@1900000 { + reg = <0x001900000 (5 * 0x00100000)>; + }; + }; +}; + +&hw_decompress { + status = "okay"; + memory-region = <&ramdisk_c>; +};