2012-08-14 15:50:58 +00:00
|
|
|
/*
|
|
|
|
* (C) Copyright 2012
|
|
|
|
* Texas Instruments, <www.ti.com>
|
|
|
|
*
|
2013-07-08 07:37:19 +00:00
|
|
|
* SPDX-License-Identifier: GPL-2.0+
|
2012-08-14 15:50:58 +00:00
|
|
|
*/
|
|
|
|
#ifndef _ASM_ARCH_SPL_H_
|
2014-03-19 01:02:55 +00:00
|
|
|
#define _ASM_ARCH_SPL_H_
|
2012-08-14 15:50:58 +00:00
|
|
|
|
2013-07-02 10:05:59 +00:00
|
|
|
#if defined(CONFIG_TI816X)
|
|
|
|
#define BOOT_DEVICE_XIP 2
|
|
|
|
#define BOOT_DEVICE_NAND 3
|
|
|
|
#define BOOT_DEVICE_MMC1 6
|
|
|
|
#define BOOT_DEVICE_MMC2 5
|
|
|
|
#define BOOT_DEVICE_UART 0x43
|
2013-12-10 09:32:18 +00:00
|
|
|
#elif defined(CONFIG_AM43XX)
|
|
|
|
#define BOOT_DEVICE_NOR 1
|
|
|
|
#define BOOT_DEVICE_NAND 5
|
|
|
|
#define BOOT_DEVICE_MMC1 7
|
|
|
|
#define BOOT_DEVICE_MMC2 8
|
|
|
|
#define BOOT_DEVICE_SPI 10
|
2014-01-16 17:23:30 +00:00
|
|
|
#define BOOT_DEVICE_USB 13
|
2013-12-10 09:32:18 +00:00
|
|
|
#define BOOT_DEVICE_UART 65
|
|
|
|
#define BOOT_DEVICE_CPGMAC 71
|
2013-07-02 10:05:59 +00:00
|
|
|
#else
|
2012-09-18 04:30:51 +00:00
|
|
|
#define BOOT_DEVICE_XIP 2
|
2012-08-14 15:50:58 +00:00
|
|
|
#define BOOT_DEVICE_NAND 5
|
2013-12-10 09:32:18 +00:00
|
|
|
#if defined(CONFIG_AM33XX)
|
2012-08-14 15:50:58 +00:00
|
|
|
#define BOOT_DEVICE_MMC1 8
|
|
|
|
#define BOOT_DEVICE_MMC2 9 /* eMMC or daughter card */
|
2013-03-15 10:07:06 +00:00
|
|
|
#elif defined(CONFIG_TI814X)
|
|
|
|
#define BOOT_DEVICE_MMC1 9
|
|
|
|
#define BOOT_DEVICE_MMC2 8 /* ROM only supports 2nd instance */
|
|
|
|
#endif
|
2012-10-16 13:06:07 +00:00
|
|
|
#define BOOT_DEVICE_SPI 11
|
2012-08-14 15:50:58 +00:00
|
|
|
#define BOOT_DEVICE_UART 65
|
2013-02-05 11:36:25 +00:00
|
|
|
#define BOOT_DEVICE_USBETH 68
|
2012-09-18 00:22:50 +00:00
|
|
|
#define BOOT_DEVICE_CPGMAC 70
|
2013-07-02 10:05:59 +00:00
|
|
|
#endif
|
2013-12-10 09:32:18 +00:00
|
|
|
#define BOOT_DEVICE_MMC2_2 0xFF
|
OMAP3/4/5/AM33xx: Correct logic for checking FAT or RAW MMC
In the case of booting from certain peripherals, such as UART, we must
not see what the device descriptor says for RAW or FAT mode because in
addition to being nonsensical, it leads to a hang. This is why we have
a test currently for the boot mode being within range. The problem
however is that on some platforms we get MMC2_2 as the boot mode and not
the defined value for MMC2, and in others we get the value for MMC2_2.
This is required to fix eMMC booting on omap5_uevm.
Tested on am335x_evm (UART, NAND, SD), omap3_beagle (NAND, SD on
classic, SD only on xM rev C5) and omap5_uevm (SD, eMMC).
Signed-off-by: Tom Rini <trini@ti.com>
2013-04-05 06:21:44 +00:00
|
|
|
|
2014-01-16 17:23:30 +00:00
|
|
|
#if defined(CONFIG_AM33XX)
|
|
|
|
#define MMC_BOOT_DEVICES_START BOOT_DEVICE_MMC1
|
|
|
|
#define MMC_BOOT_DEVICES_END BOOT_DEVICE_MMC2
|
|
|
|
#elif defined(CONFIG_AM43XX)
|
|
|
|
#define MMC_BOOT_DEVICES_START BOOT_DEVICE_MMC1
|
|
|
|
#ifdef CONFIG_SPL_USB_SUPPORT
|
|
|
|
#define MMC_BOOT_DEVICES_END BOOT_DEVICE_USB
|
|
|
|
#else
|
|
|
|
#define MMC_BOOT_DEVICES_END BOOT_DEVICE_MMC2
|
|
|
|
#endif
|
2013-07-02 10:05:59 +00:00
|
|
|
#elif defined(CONFIG_TI81XX)
|
2013-04-09 15:40:40 +00:00
|
|
|
#define MMC_BOOT_DEVICES_START BOOT_DEVICE_MMC2
|
|
|
|
#define MMC_BOOT_DEVICES_END BOOT_DEVICE_MMC1
|
|
|
|
#endif
|
2012-08-14 15:50:58 +00:00
|
|
|
#endif
|