plat/poplar: migrate to mmc framework
authorHaojian Zhuang <haojian.zhuang@linaro.org>
Sat, 4 Aug 2018 10:07:26 +0000 (18:07 +0800)
committerHaojian Zhuang <haojian.zhuang@linaro.org>
Fri, 10 Aug 2018 09:11:12 +0000 (17:11 +0800)
Migrate from emmc framework to mmc framework.

Signed-off-by: Haojian Zhuang <haojian.zhuang@linaro.org>
plat/hisilicon/poplar/bl1_plat_setup.c
plat/hisilicon/poplar/bl2_plat_setup.c
plat/hisilicon/poplar/include/hi3798cv200.h
plat/hisilicon/poplar/plat_storage.c
plat/hisilicon/poplar/platform.mk

index 25eed5938cf3c129ad1fbb3b4c04b5889d964795..6fc4f3328c508b31e9cc3e5957b087e59bb2dc6b 100644 (file)
@@ -10,9 +10,9 @@
 #include <console.h>
 #include <debug.h>
 #include <dw_mmc.h>
-#include <emmc.h>
 #include <errno.h>
 #include <generic_delay_timer.h>
+#include <mmc.h>
 #include <mmio.h>
 #include <pl061_gpio.h>
 #include <platform.h>
@@ -92,6 +92,7 @@ void bl1_plat_arch_setup(void)
 void bl1_platform_setup(void)
 {
        int i;
+       struct mmc_device_info info;
 #if !POPLAR_RECOVERY
        dw_mmc_params_t params = EMMC_INIT_PARAMS(POPLAR_EMMC_DESC_BASE);
 #endif
@@ -105,7 +106,8 @@ void bl1_platform_setup(void)
 #if !POPLAR_RECOVERY
        /* SoC-specific emmc register are initialized/configured by bootrom */
        INFO("BL1: initializing emmc\n");
-       dw_mmc_init(&params);
+       info.mmc_dev_type = MMC_IS_EMMC;
+       dw_mmc_init(&params, &info);
 #endif
 
        plat_io_setup();
index 2671994a2ad32fbc85365cadf6d76abc64177ad7..041ed4ad5e83a7c00bc578489b26dca7cd69a5b2 100644 (file)
@@ -11,9 +11,9 @@
 #include <debug.h>
 #include <desc_image_load.h>
 #include <dw_mmc.h>
-#include <emmc.h>
 #include <errno.h>
 #include <generic_delay_timer.h>
+#include <mmc.h>
 #include <mmio.h>
 #include <optee_utils.h>
 #include <partition/partition.h>
@@ -333,6 +333,8 @@ void bl2_plat_get_bl33_meminfo(meminfo_t *bl33_meminfo)
 
 void bl2_early_platform_setup(meminfo_t *mem_layout)
 {
+       struct mmc_device_info info;
+
 #if !POPLAR_RECOVERY
        dw_mmc_params_t params = EMMC_INIT_PARAMS(POPLAR_EMMC_DESC_BASE);
 #endif
@@ -347,7 +349,8 @@ void bl2_early_platform_setup(meminfo_t *mem_layout)
 #if !POPLAR_RECOVERY
        /* SoC-specific emmc register are initialized/configured by bootrom */
        INFO("BL2: initializing emmc\n");
-       dw_mmc_init(&params);
+       info.mmc_dev_type = MMC_IS_EMMC;
+       dw_mmc_init(&params, &info);
 #endif
 
        plat_io_setup();
index 125b04841b95b976dc1a260556c8af186269692f..254b35715d7a5ef43e99393cd53636d84f7d1f76 100644 (file)
 
 #define EMMC_DESC_SIZE                 U(0x00100000) /* 1MB */
 #define EMMC_INIT_PARAMS(base)                         \
-       {       .bus_width = EMMC_BUS_WIDTH_8,          \
+       {       .bus_width = MMC_BUS_WIDTH_8,           \
                .clk_rate = 25 * 1000 * 1000,           \
                .desc_base = (base),    \
                .desc_size = EMMC_DESC_SIZE,            \
-               .flags =  EMMC_FLAG_CMD23,              \
+               .flags =  MMC_FLAG_CMD23,               \
                .reg_base = REG_BASE_MCI,               \
        }
 
index db52c67626f22c46d2d8e34dc2c688db784186c6..925274ce4e4aa2c0f19c6461ab3bcf518c8a469e 100644 (file)
@@ -7,13 +7,13 @@
 #include <arch_helpers.h>
 #include <assert.h>
 #include <debug.h>
-#include <emmc.h>
 #include <firmware_image_package.h>
 #include <io_block.h>
 #include <io_driver.h>
 #include <io_fip.h>
 #include <io_memmap.h>
 #include <io_storage.h>
+#include <mmc.h>
 #include <mmio.h>
 #include <partition/partition.h>
 #include <semihosting.h>
@@ -38,10 +38,10 @@ static const io_block_dev_spec_t emmc_dev_spec = {
                .length = POPLAR_EMMC_DATA_SIZE,
        },
        .ops            = {
-               .read   = emmc_read_blocks,
-               .write  = emmc_write_blocks,
+               .read   = mmc_read_blocks,
+               .write  = mmc_write_blocks,
        },
-       .block_size     = EMMC_BLOCK_SIZE,
+       .block_size     = MMC_BLOCK_SIZE,
 };
 #else
 static const io_dev_connector_t *mmap_dev_con;
index 14ffa99ea1fcd8bc9226c0cac575b3129b7decc1..3cdbe5999b10d760884f0d87a036bf7a13cceb6c 100644 (file)
@@ -82,7 +82,7 @@ PLAT_BL_COMMON_SOURCES        :=                                              \
 BL1_SOURCES    +=                                                      \
                lib/cpus/aarch64/cortex_a53.S                           \
                drivers/arm/pl061/pl061_gpio.c                          \
-               drivers/emmc/emmc.c                                     \
+               drivers/mmc/mmc.c                                       \
                drivers/synopsys/emmc/dw_mmc.c                          \
                drivers/io/io_storage.c                                 \
                drivers/io/io_block.c                                   \
@@ -94,7 +94,7 @@ BL1_SOURCES   +=                                                      \
 
 BL2_SOURCES    +=                                                      \
                drivers/arm/pl061/pl061_gpio.c                          \
-               drivers/emmc/emmc.c                                     \
+               drivers/mmc/mmc.c                                       \
                drivers/synopsys/emmc/dw_mmc.c                          \
                drivers/io/io_storage.c                                 \
                drivers/io/io_block.c                                   \