]> git.ipfire.org Git - thirdparty/u-boot.git/commitdiff
zynqmp: mini: Add mini uboot support for eMMC
authorSiva Durga Prasad Paladugu <siva.durga.paladugu@xilinx.com>
Tue, 13 Dec 2016 14:28:46 +0000 (19:58 +0530)
committerMichal Simek <michal.simek@xilinx.com>
Wed, 14 Dec 2016 08:15:56 +0000 (09:15 +0100)
Add mini uboot support for eMMc, in which both
sd controllers were enabled, dcc is used for
uart.

Signed-off-by: Siva Durga Prasad Paladugu <sivadur@xilinx.com>
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
arch/arm/dts/Makefile
arch/arm/dts/zynqmp-mini-emmc.dts [new file with mode: 0644]
configs/xilinx_zynqmp_mini_emmc_defconfig [new file with mode: 0644]
include/configs/xilinx_zynqmp_mini.h

index 20940b4c4bf115c3e438a24935dd10ee24e07e4c..aed06fc8cf4c50cd9b01546ff772984a740161c0 100644 (file)
@@ -111,7 +111,8 @@ dtb-$(CONFIG_ARCH_ZYNQMP) += \
        zynqmp-zc1751-xm018-dc4.dtb             \
        zynqmp-zc1751-xm019-dc5.dtb             \
        zynqmp-mini-qspi.dtb                    \
-       zynqmp-mini-nand.dtb
+       zynqmp-mini-nand.dtb                    \
+       zynqmp-mini-emmc.dtb
 dtb-$(CONFIG_AM33XX) += am335x-boneblack.dtb am335x-bone.dtb \
        am335x-draco.dtb \
        am335x-evm.dtb \
diff --git a/arch/arm/dts/zynqmp-mini-emmc.dts b/arch/arm/dts/zynqmp-mini-emmc.dts
new file mode 100644 (file)
index 0000000..12fac9c
--- /dev/null
@@ -0,0 +1,78 @@
+/*
+ * dts file for Xilinx ZynqMP Mini Configuration
+ *
+ * (C) Copyright 2016, Xilinx, Inc.
+ *
+ * Siva Durga Prasad <siva.durga.paladugu@xilinx.com>
+ *
+ * SPDX-License-Identifier:    GPL-2.0+
+ */
+
+/dts-v1/;
+
+/ {
+       model = "ZynqMP MINI EMMC";
+       compatible = "xlnx,zynqmp";
+       #address-cells = <2>;
+       #size-cells = <2>;
+
+       aliases {
+               serial0 = &dcc;
+               mmc0 = &sdhci0;
+               mmc1 = &sdhci1;
+       };
+
+       chosen {
+               stdout-path = "serial0:115200n8";
+       };
+
+       memory@0 {
+               device_type = "memory";
+               reg = <0x0 0x0 0x0 0x20000000>;
+       };
+
+       dcc: dcc {
+               compatible = "arm,dcc";
+               status = "disabled";
+               u-boot,dm-pre-reloc;
+       };
+
+       amba: amba {
+               compatible = "simple-bus";
+               #address-cells = <2>;
+               #size-cells = <2>;
+               ranges;
+
+               sdhci0: sdhci@ff160000 {
+                       u-boot,dm-pre-reloc;
+                       compatible = "xlnx,zynqmp-8.9a", "arasan,sdhci-8.9a";
+                       status = "disabled";
+                       interrupts = <0 48 4>;
+                       reg = <0x0 0xff160000 0x0 0x1000>;
+                       clock-names = "clk_xin", "clk_ahb";
+                       xlnx,device_id = <0>;
+               };
+
+               sdhci1: sdhci@ff170000 {
+                       u-boot,dm-pre-reloc;
+                       compatible = "xlnx,zynqmp-8.9a", "arasan,sdhci-8.9a";
+                       status = "disabled";
+                       interrupts = <0 49 4>;
+                       reg = <0x0 0xff170000 0x0 0x1000>;
+                       clock-names = "clk_xin", "clk_ahb";
+                       xlnx,device_id = <1>;
+               };
+       };
+};
+
+&dcc {
+       status = "okay";
+};
+
+&sdhci0 {
+       status = "okay";
+};
+
+&sdhci1 {
+       status = "okay";
+};
diff --git a/configs/xilinx_zynqmp_mini_emmc_defconfig b/configs/xilinx_zynqmp_mini_emmc_defconfig
new file mode 100644 (file)
index 0000000..64b64c6
--- /dev/null
@@ -0,0 +1,41 @@
+CONFIG_ARM=y
+CONFIG_SYS_CONFIG_NAME="xilinx_zynqmp_mini"
+CONFIG_ARCH_ZYNQMP=y
+CONFIG_SYS_TEXT_BASE=0x10000
+CONFIG_DEFAULT_DEVICE_TREE="zynqmp-mini-emmc"
+CONFIG_FIT=y
+CONFIG_SYS_EXTRA_OPTIONS="MINI_EMMC"
+CONFIG_SYS_PROMPT="ZynqMP> "
+# CONFIG_CMD_BDI is not set
+# CONFIG_CMD_CONSOLE is not set
+# CONFIG_CMD_BOOTD is not set
+# CONFIG_CMD_BOOTM is not set
+# CONFIG_CMD_GO is not set
+# CONFIG_CMD_RUN is not set
+# CONFIG_CMD_IMI is not set
+# CONFIG_CMD_IMLS is not set
+# CONFIG_CMD_XIMG is not set
+# CONFIG_CMD_EXPORTENV is not set
+# CONFIG_CMD_IMPORTENV is not set
+# CONFIG_CMD_EDITENV is not set
+# CONFIG_CMD_SAVEENV is not set
+# CONFIG_CMD_ENV_EXISTS is not set
+# CONFIG_CMD_CRC32 is not set
+# CONFIG_CMD_DM is not set
+# CONFIG_CMD_LOADB is not set
+# CONFIG_CMD_LOADS is not set
+# CONFIG_CMD_FLASH is not set
+# CONFIG_CMD_FPGA is not set
+# CONFIG_CMD_ECHO is not set
+# CONFIG_CMD_ITEST is not set
+# CONFIG_CMD_SOURCE is not set
+# CONFIG_CMD_SETEXPR is not set
+# CONFIG_CMD_NET is not set
+# CONFIG_CMD_NFS is not set
+CONFIG_OF_EMBED=y
+# CONFIG_DM_WARN is not set
+# CONFIG_DM_DEVICE_REMOVE is not set
+CONFIG_CMD_MMC=y
+CONFIG_DM_MMC=y
+CONFIG_ZYNQ_SDHCI=y
+# CONFIG_EFI_LOADER is not set
index 3a2158d8f6bc28ca95fc17cbbc9fd4265667319f..1192beffeeceded70495de5de441cd2260f97755 100644 (file)
 # define CONFIG_SYS_INIT_SP_ADDR       (CONFIG_SYS_SDRAM_BASE + 0x40000)
 # define CONFIG_SYS_MALLOC_LEN         0x800000
 
+#elif defined(CONFIG_MINI_EMMC)
+# define CONFIG_ENV_SIZE               0x10000
+# define CONFIG_SYS_INIT_SP_ADDR       CONFIG_SYS_TEXT_BASE
+# define CONFIG_SYS_MALLOC_LEN         0x800000
+# define CONFIG_DOS_PARTITION
+# define CONFIG_SYS_LONGHELP
+# define CONFIG_CMD_FAT
+# define CONFIG_CMD_FS_GENERIC
 #endif
 
 #endif /* __CONFIG_ZYNQMP_MINI_H */