diff mbox series

[U-Boot,V5,17/31] imx: mx7: move get_boot_device to cpu.c

Message ID 20180110052048.4425-18-peng.fan@nxp.com
State Awaiting Upstream
Delegated to: Stefano Babic
Headers show
Series imx: add i.MX8M support and i.MX8MQ EVK | expand

Commit Message

Peng Fan Jan. 10, 2018, 5:20 a.m. UTC
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.fan@nxp.com>
Cc: Stefano Babic <sbabic@denx.de>
Cc: Fabio Estevam <fabio.estevam@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(-)

Comments

Stefano Babic Jan. 21, 2018, 4:33 p.m. UTC | #1
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.fan@nxp.com>
> Cc: Stefano Babic <sbabic@denx.de>
> Cc: Fabio Estevam <fabio.estevam@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 <sbabic@denx.de>

Best regards,
Stefano Babic
diff mbox series

Patch

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)
 {