configs: imx6dl-mamoj: Add Falcon mode support

Add Falcon mode support to boot Linux directly after SPL.

Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
This commit is contained in:
Jagan Teki 2018-05-07 11:21:39 +05:30 committed by Stefano Babic
parent 129ceda202
commit 9e759ce904
4 changed files with 51 additions and 0 deletions

View file

@ -15,6 +15,8 @@ The following methods can be used for booting Mamoj boards:
2. eMMC boot (via DFU)
3. Falcon mode
1. USB SDP boot:
---------------
@ -92,6 +94,31 @@ The following methods can be used for booting Mamoj boards:
Poweroff and Poweron the board and see U-Boot booting from eMMC.
3. Falcon mode:
--------------
- Skip 10M space and create dual partitions for eMMC, start sector is 20480
Partition Map for MMC device 2 -- Partition Type: DOS
Part Start Sector Num Sectors UUID Type
1 20480 131072 c52e78be-01 83
2 151552 7581696 c52e78be-02 83
- Write uImage
=> fatload mmc 2:1 $kernel_addr_r uImage
=> mmc write $kernel_addr_r 0x1000 0x4000
- Write dtb and args
=> setenv bootargs console=ttymxc2,115200 root=/dev/mmcblk0p2 rootfstype=ext4 rootwait rw quiet
=> fatload mmc 2:1 $fdt_addr_r imx6dl-mamoj.dtb
=> spl export fdt $kernel_addr_r - $fdt_addr_r
=> mmc write 0x13000000 0x800 0x800
Poweroff and Poweron the board and see Linux booting directly after SPL.
--
Jagan Teki <jagan@amarulasolutions.com>
03/12/18

View file

@ -30,6 +30,17 @@ static iomux_v3_cfg_t const uart3_pads[] = {
IOMUX_PADS(PAD_EIM_D25__UART3_RX_DATA | MUX_PAD_CTRL(UART_PAD_CTRL)),
};
#ifdef CONFIG_SPL_OS_BOOT
int spl_start_uboot(void)
{
/* break into full u-boot on 'c' */
if (serial_tstc() && serial_getc() == 'c')
return 1;
return 0;
}
#endif
struct mx6sdl_iomux_ddr_regs mx6sdl_ddr_ioregs = {
.dram_sdclk_0 = IMX6SDL_DRIVE_STRENGTH,
.dram_sdclk_1 = IMX6SDL_DRIVE_STRENGTH,

View file

@ -3,6 +3,7 @@ CONFIG_ARCH_MX6=y
CONFIG_SYS_TEXT_BASE=0x17800000
CONFIG_SYS_MALLOC_F_LEN=0x2000
CONFIG_TARGET_MX6DL_MAMOJ=y
CONFIG_SPL_OS_BOOT=y
# CONFIG_CMD_BMODE is not set
CONFIG_DEFAULT_DEVICE_TREE="imx6dl-mamoj"
CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=arch/arm/mach-imx/spl_sd.cfg"

View file

@ -64,6 +64,18 @@
#define CONFIG_MXC_USB_FLAGS 0
#define CONFIG_USB_MAX_CONTROLLER_COUNT 2
/* Falcon */
#define CONFIG_SPL_FS_LOAD_ARGS_NAME "args"
#define CONFIG_SPL_FS_LOAD_KERNEL_NAME "uImage"
#define CONFIG_CMD_SPL
#define CONFIG_SYS_SPL_ARGS_ADDR 0x13000000
#define CONFIG_CMD_SPL_WRITE_SIZE (128 * SZ_1K)
/* MMC support: args@1MB kernel@2MB */
#define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR 0x800 /* 1MB */
#define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS (CONFIG_CMD_SPL_WRITE_SIZE / 512)
#define CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR 0x1000 /* 2MB */
/* Miscellaneous configurable options */
#define CONFIG_SYS_MEMTEST_START 0x80000000
#define CONFIG_SYS_MEMTEST_END (CONFIG_SYS_MEMTEST_START + 0x8000000)