On 10/01/2018 06:20, Peng Fan wrote:
> Move get_boot_device to cpu.c to prepare adding i.MX8M support,
> because i.MX8M share same code with i.MX7.
> 
> Signed-off-by: Peng Fan <peng....@nxp.com>
> Cc: Stefano Babic <sba...@denx.de>
> Cc: Fabio Estevam <fabio.este...@nxp.com>
> ---
>  arch/arm/include/asm/arch-mx7/imx-regs.h  |  8 -------
>  arch/arm/include/asm/mach-imx/boot_mode.h |  9 ++++++++
>  arch/arm/mach-imx/cpu.c                   | 38 
> +++++++++++++++++++++++++++++++
>  arch/arm/mach-imx/mx7/soc.c               | 35 ----------------------------
>  4 files changed, 47 insertions(+), 43 deletions(-)
> 
> diff --git a/arch/arm/include/asm/arch-mx7/imx-regs.h 
> b/arch/arm/include/asm/arch-mx7/imx-regs.h
> index a421b9bc04..3726f02af5 100644
> --- a/arch/arm/include/asm/arch-mx7/imx-regs.h
> +++ b/arch/arm/include/asm/arch-mx7/imx-regs.h
> @@ -1210,14 +1210,6 @@ extern void pcie_power_off(void);
>       readl(USBOTG2_IPS_BASE_ADDR + 0x158))
>  #define      disconnect_from_pc(void) writel(0x0, USBOTG1_IPS_BASE_ADDR + 
> 0x140)
>  
> -/* Boot device type */
> -#define BOOT_TYPE_SD         0x1
> -#define BOOT_TYPE_MMC                0x2
> -#define BOOT_TYPE_NAND               0x3
> -#define BOOT_TYPE_QSPI               0x4
> -#define BOOT_TYPE_WEIM               0x5
> -#define BOOT_TYPE_SPINOR     0x6
> -
>  struct bootrom_sw_info {
>       u8 reserved_1;
>       u8 boot_dev_instance;
> diff --git a/arch/arm/include/asm/mach-imx/boot_mode.h 
> b/arch/arm/include/asm/mach-imx/boot_mode.h
> index e3ed046b25..300868a45e 100644
> --- a/arch/arm/include/asm/mach-imx/boot_mode.h
> +++ b/arch/arm/include/asm/mach-imx/boot_mode.h
> @@ -31,6 +31,15 @@ enum boot_device {
>       BOOT_DEV_NUM = UNKNOWN_BOOT,
>  };
>  
> +/* Boot device type */
> +#define BOOT_TYPE_SD         0x1
> +#define BOOT_TYPE_MMC                0x2
> +#define BOOT_TYPE_NAND               0x3
> +#define BOOT_TYPE_QSPI               0x4
> +#define BOOT_TYPE_WEIM               0x5
> +#define BOOT_TYPE_SPINOR     0x6
> +#define BOOT_TYPE_USB                0xF
> +
>  struct boot_mode {
>       const char *name;
>       unsigned cfg_val;
> diff --git a/arch/arm/mach-imx/cpu.c b/arch/arm/mach-imx/cpu.c
> index fd6d08c533..a7d89f2033 100644
> --- a/arch/arm/mach-imx/cpu.c
> +++ b/arch/arm/mach-imx/cpu.c
> @@ -16,6 +16,7 @@
>  #include <asm/arch/clock.h>
>  #include <asm/arch/sys_proto.h>
>  #include <asm/arch/crm_regs.h>
> +#include <asm/mach-imx/boot_mode.h>
>  #include <imx_thermal.h>
>  #include <ipu_pixfmt.h>
>  #include <thermal.h>
> @@ -409,6 +410,43 @@ u32 get_cpu_temp_grade(int *minc, int *maxc)
>  }
>  #endif
>  
> +#if defined(CONFIG_MX7)
> +enum boot_device get_boot_device(void)
> +{
> +     struct bootrom_sw_info **p =
> +             (struct bootrom_sw_info **)(ulong)ROM_SW_INFO_ADDR;
> +
> +     enum boot_device boot_dev = SD1_BOOT;
> +     u8 boot_type = (*p)->boot_dev_type;
> +     u8 boot_instance = (*p)->boot_dev_instance;
> +
> +     switch (boot_type) {
> +     case BOOT_TYPE_SD:
> +             boot_dev = boot_instance + SD1_BOOT;
> +             break;
> +     case BOOT_TYPE_MMC:
> +             boot_dev = boot_instance + MMC1_BOOT;
> +             break;
> +     case BOOT_TYPE_NAND:
> +             boot_dev = NAND_BOOT;
> +             break;
> +     case BOOT_TYPE_QSPI:
> +             boot_dev = QSPI_BOOT;
> +             break;
> +     case BOOT_TYPE_WEIM:
> +             boot_dev = WEIM_NOR_BOOT;
> +             break;
> +     case BOOT_TYPE_SPINOR:
> +             boot_dev = SPI_NOR_BOOT;
> +             break;
> +     default:
> +             break;
> +     }
> +
> +     return boot_dev;
> +}
> +#endif
> +
>  #ifdef CONFIG_NXP_BOARD_REVISION
>  int nxp_board_rev(void)
>  {
> diff --git a/arch/arm/mach-imx/mx7/soc.c b/arch/arm/mach-imx/mx7/soc.c
> index 72dbd625c9..62bd3a0e5f 100644
> --- a/arch/arm/mach-imx/mx7/soc.c
> +++ b/arch/arm/mach-imx/mx7/soc.c
> @@ -250,41 +250,6 @@ const struct boot_mode soc_boot_modes[] = {
>       {NULL,          0},
>  };
>  
> -enum boot_device get_boot_device(void)
> -{
> -     struct bootrom_sw_info **p =
> -             (struct bootrom_sw_info **)ROM_SW_INFO_ADDR;
> -
> -     enum boot_device boot_dev = SD1_BOOT;
> -     u8 boot_type = (*p)->boot_dev_type;
> -     u8 boot_instance = (*p)->boot_dev_instance;
> -
> -     switch (boot_type) {
> -     case BOOT_TYPE_SD:
> -             boot_dev = boot_instance + SD1_BOOT;
> -             break;
> -     case BOOT_TYPE_MMC:
> -             boot_dev = boot_instance + MMC1_BOOT;
> -             break;
> -     case BOOT_TYPE_NAND:
> -             boot_dev = NAND_BOOT;
> -             break;
> -     case BOOT_TYPE_QSPI:
> -             boot_dev = QSPI_BOOT;
> -             break;
> -     case BOOT_TYPE_WEIM:
> -             boot_dev = WEIM_NOR_BOOT;
> -             break;
> -     case BOOT_TYPE_SPINOR:
> -             boot_dev = SPI_NOR_BOOT;
> -             break;
> -     default:
> -             break;
> -     }
> -
> -     return boot_dev;
> -}
> -
>  #ifdef CONFIG_ENV_IS_IN_MMC
>  __weak int board_mmc_get_env_dev(int devno)
>  {

> 

Reviewed-by: Stefano Babic <sba...@denx.de>

Best regards,
Stefano Babic
-- 
=====================================================================
DENX Software Engineering GmbH,      Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: +49-8142-66989-53 Fax: +49-8142-66989-80 Email: sba...@denx.de
=====================================================================
_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot

Reply via email to