Signed-off-by: Andrey Smirnov <andrew.smir...@gmail.com>
---
 arch/arm/mach-imx/boot.c | 14 ++++++++++++--
 1 file changed, 12 insertions(+), 2 deletions(-)

diff --git a/arch/arm/mach-imx/boot.c b/arch/arm/mach-imx/boot.c
index cdfe3749d..0398804b0 100644
--- a/arch/arm/mach-imx/boot.c
+++ b/arch/arm/mach-imx/boot.c
@@ -362,6 +362,16 @@ static unsigned int imx7_bootsource_internal(uint32_t r)
        return sbmr(r, 15, 12); /* BOOT_CFG[15:12] */
 }
 
+static int imx7_boot_instance_spi_nor(uint32_t r)
+{
+       return sbmr(r, 11, 9);  /* BOOT_CFG[11:9] */
+}
+
+static int imx7_boot_instance_mmc(uint32_t r)
+{
+       return sbmr(r, 11, 10); /* BOOT_CFG[11:10] */
+}
+
 struct imx_boot_sw_info {
        uint8_t  reserved_1;
        uint8_t  boot_device_instance;
@@ -417,14 +427,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 */
-- 
2.14.3


_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox

Reply via email to