Merge tag 'u-boot-atmel-fixes-2019.10-a' of https://gitlab.denx.de/u-boot/custodians...
[platform/kernel/u-boot.git] / include / configs / pico-imx6ul.h
index e8e4c87..cd051bf 100644 (file)
 #include <linux/sizes.h>
 #include "mx6_common.h"
 #include <asm/mach-imx/gpio.h>
+#include "imx6_spl.h"
+
+#ifdef CONFIG_SPL_OS_BOOT
+/* Falcon Mode */
+#define CONFIG_SPL_FS_LOAD_ARGS_NAME   "args"
+#define CONFIG_SPL_FS_LOAD_KERNEL_NAME "uImage"
+#define CONFIG_SYS_SPL_ARGS_ADDR   0x88000000
+
+/* Falcon Mode - 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 */
+#endif
 
 /* Network support */
 
@@ -27,9 +40,7 @@
 #define CONFIG_MXC_UART_BASE           UART6_BASE_ADDR
 
 /* MMC Configs */
-#define CONFIG_FSL_USDHC
 #define CONFIG_SYS_FSL_ESDHC_ADDR      USDHC1_BASE_ADDR
-#define CONFIG_SUPPORT_EMMC_BOOT
 
 /* USB Configs */
 #define CONFIG_EHCI_HCD_INIT_AFTER_RESET
 #define DFU_DEFAULT_POLL_TIMEOUT 300
 
 #define CONFIG_DFU_ENV_SETTINGS \
-       "dfu_alt_info=uboot raw 0x2 0x400 mmcpart 1;" \
-               "boot part 0 1;" \
-               "/zImage ext4 0 1;" \
-               "/imx6ul-pico-hobbit.dtb ext4 0 1;" \
-               "rootfs part 0 2\0" \
+       "dfu_alt_info=" \
+               "spl raw 0x2 0x400;" \
+               "u-boot raw 0x8a 0x400;" \
+               "/boot/zImage ext4 0 1;" \
+               "/boot/imx6ul-pico-hobbit.dtb ext4 0 1;" \
+               "/boot/imx6ul-pico-pi.dtb ext4 0 1;" \
+               "rootfs part 0 1\0" \
+
+#define BOOTMENU_ENV \
+       "bootmenu_0=Boot using PICO-Hobbit baseboard=" \
+               "setenv fdtfile imx6ul-pico-hobbit.dtb\0" \
+       "bootmenu_1=Boot using PICO-Pi baseboard=" \
+               "setenv fdtfile imx6ul-pico-pi.dtb\0" \
 
 #define CONFIG_SYS_MMC_IMG_LOAD_PART   1
 
@@ -58,6 +77,7 @@
        "fdt_high=0xffffffff\0" \
        "initrd_high=0xffffffff\0" \
        "fdtfile=" CONFIG_DEFAULT_FDT_FILE "\0" \
+       BOOTMENU_ENV \
        "fdt_addr=0x83000000\0" \
        "fdt_addr_r=0x83000000\0" \
        "kernel_addr_r=" __stringify(CONFIG_LOADADDR) "\0" \
        "scriptaddr=" __stringify(CONFIG_LOADADDR) "\0" \
        "mmcautodetect=yes\0" \
        CONFIG_DFU_ENV_SETTINGS \
+       "findfdt=" \
+               "if test $fdtfile = ask ; then " \
+                       "bootmenu -1; fi;" \
+               "if test $fdtfile != ask ; then " \
+                       "saveenv; fi;\0" \
        "finduuid=part uuid mmc 0:1 uuid\0" \
        "partitions=" \
                "uuid_disk=${uuid_gpt_disk};" \
 
 #define BOOT_TARGET_DEVICES(func) \
        func(MMC, mmc, 0) \
+       func(USB, usb, 0) \
+       func(PXE, pxe, na) \
        func(DHCP, dhcp, na)
 
 #include <config_distro_bootcmd.h>
        (CONFIG_SYS_INIT_RAM_ADDR + CONFIG_SYS_INIT_SP_OFFSET)
 
 /* I2C configs */
-#define CONFIG_SYS_I2C
 #define CONFIG_SYS_I2C_MXC
-#define CONFIG_SYS_I2C_MXC_I2C1
 #define CONFIG_SYS_I2C_SPEED           100000
 
-/* PMIC */
-#define CONFIG_POWER
-#define CONFIG_POWER_I2C
-#define CONFIG_POWER_PFUZE3000
-#define CONFIG_POWER_PFUZE3000_I2C_ADDR        0x08
-
 /* environment organization */
 #define CONFIG_ENV_SIZE                        SZ_8K
 #define CONFIG_ENV_OFFSET              (8 * SZ_64K)