summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndrey Smirnov <andrew.smirnov@gmail.com>2018-04-16 12:31:54 -0700
committerSascha Hauer <s.hauer@pengutronix.de>2018-04-17 09:13:07 +0200
commit499ac217c6f56b4bf32fd7c0ce75510020deab60 (patch)
treef4b6bafb57d35a123c2382e07e5c761dbd3c5bf0
parent7dd4facd21b73c6b7935ae792e4b25b8187a6d6e (diff)
downloadbarebox-499ac217c6f56b4bf32fd7c0ce75510020deab60.tar.gz
barebox-499ac217c6f56b4bf32fd7c0ce75510020deab60.tar.xz
ARM: i.MX7: boot: Move magic numbers into utility functions
Signed-off-by: Andrey Smirnov <andrew.smirnov@gmail.com> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
-rw-r--r--arch/arm/mach-imx/boot.c14
1 files changed, 12 insertions, 2 deletions
diff --git a/arch/arm/mach-imx/boot.c b/arch/arm/mach-imx/boot.c
index 0714633f6e..b08b122509 100644
--- a/arch/arm/mach-imx/boot.c
+++ b/arch/arm/mach-imx/boot.c
@@ -455,6 +455,16 @@ static unsigned int imx7_bootsource_internal(uint32_t r)
return FIELD_GET(BOOT_CFG(15, 12), r);
}
+static int imx7_boot_instance_spi_nor(uint32_t r)
+{
+ return FIELD_GET(BOOT_CFG(11, 9), r);
+}
+
+static int imx7_boot_instance_mmc(uint32_t r)
+{
+ return FIELD_GET(BOOT_CFG(11, 10), r);
+}
+
struct imx_boot_sw_info {
uint8_t reserved_1;
uint8_t boot_device_instance;
@@ -510,14 +520,14 @@ void imx7_get_boot_source(enum bootsource *src, int *instance)
case 1:
case 2:
*src = BOOTSOURCE_MMC;
- *instance = (sbmr1 >> 10 & 0x3);
+ *instance = imx7_boot_instance_mmc(sbmr1);
break;
case 3:
*src = BOOTSOURCE_NAND;
break;
case 6:
*src = BOOTSOURCE_SPI_NOR,
- *instance = (sbmr1 >> 9 & 0x7);
+ *instance = imx7_boot_instance_spi_nor(sbmr1);
break;
case 4:
*src = BOOTSOURCE_SPI; /* Really: qspi */