mx6: thermal: Check cpu temperature via thermal sensor
[oweals/u-boot.git] / arch / arm / imx-common / spl.c
index 9a02a644bc48997f785d37ee984d6fd24493e663..477c38c1e20bc8a111f8310f16ff7e42d85c0214 100644 (file)
 #include <spl.h>
 
 #if defined(CONFIG_MX6)
-/* determine boot device from SRC_SBMR1 register (BOOT_CFG[4:1]) */
+/* determine boot device from SRC_SBMR1 (BOOT_CFG[4:1]) or SRC_GPR9 register */
 u32 spl_boot_device(void)
 {
        struct src *psrc = (struct src *)SRC_BASE_ADDR;
-       unsigned reg = readl(&psrc->sbmr1);
+       unsigned int gpr10_boot = readl(&psrc->gpr10) & (1 << 28);
+       unsigned reg = gpr10_boot ? readl(&psrc->gpr9) : readl(&psrc->sbmr1);
 
        /* BOOT_CFG1[7:4] - see IMX6DQRM Table 8-8 */
        switch ((reg & 0x000000FF) >> 4) {
@@ -68,7 +69,7 @@ u32 spl_boot_mode(void)
        case BOOT_DEVICE_MMC1:
        case BOOT_DEVICE_MMC2:
 #ifdef CONFIG_SPL_FAT_SUPPORT
-               return MMCSD_MODE_FAT;
+               return MMCSD_MODE_FS;
 #else
                return MMCSD_MODE_RAW;
 #endif