keystone2: k2g: add env script to load firmware initramfs as part of boot flow
authorMurali Karicheri <m-karicheri2@ti.com>
Thu, 15 Sep 2016 13:44:32 +0000 (19:14 +0530)
committerTom Rini <trini@konsulko.com>
Sun, 2 Oct 2016 00:05:08 +0000 (20:05 -0400)
On K2G, the PCIe SerDes h/w is a re-use from other K2 devices and SerDes
driver requires a firmware image to initialize the SerDes h/w device.
This is firmware is part of the initramfs file that is loaded to memory
in u-boot and passed to kernel as in other K2 platforms. This patch
customize the u-boot env to have this done automatically when the K2G EVM
boots up. With this, a user may be able to boot the EVM with a standard
PCIe card at the x1 PCIe slot and release image and test PCIe devices
such as NIC, SATA etc.

Signed-off-by: Murali Karicheri <m-karicheri2@ti.com>
Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
include/configs/k2g_evm.h

index 71b0037..d73543f 100644 (file)
@@ -18,6 +18,7 @@
 #define CONFIG_EXTRA_ENV_KS2_BOARD_SETTINGS                            \
        DEFAULT_MMC_TI_ARGS                                             \
        DEFAULT_PMMC_BOOT_ENV                                           \
+       DEFAULT_FW_INITRAMFS_BOOT_ENV                                   \
        "boot=mmc\0"                                                    \
        "console=ttyS0,115200n8\0"                                      \
        "bootpart=0:2\0"                                                \
@@ -31,6 +32,8 @@
        "name_ubi=k2g-evm-ubifs.ubi\0"                                  \
        "name_uboot=u-boot-spi-k2g-evm.gph\0"                           \
        "init_mmc=run args_all args_mmc\0"                              \
+       "init_fw_rd_mmc=load mmc ${bootpart} ${rdaddr} "                \
+               "${bootdir}/${name_fw_rd}; run set_rd_spec\0"           \
        "soc_variant=k2g\0"                                             \
        "get_fdt_mmc=load mmc ${bootpart} ${fdtaddr} ${bootdir}/${name_fdt}\0"\
        "get_kern_mmc=load mmc ${bootpart} ${loadaddr} "                \
@@ -40,7 +43,8 @@
 
 #define CONFIG_BOOTCOMMAND                                             \
        "run envboot; "                                                 \
-       "run set_name_pmmc init_${boot} get_pmmc_${boot} run_pmmc "     \
+       "run set_name_pmmc init_${boot} init_fw_rd_${boot} "            \
+       "get_pmmc_${boot} run_pmmc "                                    \
        "get_fdt_${boot} get_mon_${boot} get_kern_${boot} "             \
        "run_mon run_kern"