mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-12-22 11:13:07 +00:00
d08c000821
Enable SDP protocol support in SPL for DH i.MX6 DHSOM, now that those components fit into the SPL due to LTO. To start U-Boot via SDP upload on i.MX6 DHSOM based board, proceed as follows: - Compile imx_usb [1] . - Power off the i.MX6 DHSOM based board. - Connect both USB-serial console and USB-OTG miniB ports to host PC. - Switch board to USB boot mode. - Power on the board. - Verify using '$ dmesg' that a new device has been detected as follows: New USB device found, idVendor=15a2, idProduct=0054, bcdDevice= 0.01 New USB device strings: Mfr=1, Product=2, SerialNumber=0 Product: SE Blank ARIK Manufacturer: Freescale SemiConductor Inc - Upload U-Boot SPL: $ imx_usb u-boot-with-spl.imx - Wait for SPL to come up, the following print ought to be the last on UART console: SDP: handle requests... - Upload U-Boot proper: $ imx_usb u-boot.img [1] https://github.com/boundarydevices/imx_usb_loader.git Signed-off-by: Marek Vasut <marex@denx.de>
76 lines
1.8 KiB
C
76 lines
1.8 KiB
C
/* SPDX-License-Identifier: GPL-2.0+ */
|
|
/*
|
|
* DHCOM DH-iMX6 PDK board configuration
|
|
*
|
|
* Copyright (C) 2017 Marek Vasut <marex@denx.de>
|
|
*/
|
|
|
|
#ifndef __DH_IMX6_CONFIG_H
|
|
#define __DH_IMX6_CONFIG_H
|
|
|
|
#include <asm/arch/imx-regs.h>
|
|
|
|
#include "mx6_common.h"
|
|
|
|
/*
|
|
* SPI NOR layout:
|
|
* 0x00_0000-0x00_ffff ... U-Boot SPL
|
|
* 0x01_0000-0x0f_ffff ... U-Boot
|
|
* 0x10_0000-0x10_ffff ... U-Boot env #1
|
|
* 0x11_0000-0x11_ffff ... U-Boot env #2
|
|
* 0x12_0000-0x1f_ffff ... UNUSED
|
|
*/
|
|
|
|
/* Miscellaneous configurable options */
|
|
|
|
/* MMC Configs */
|
|
#define CFG_SYS_FSL_ESDHC_ADDR 0
|
|
#define CFG_SYS_FSL_USDHC_NUM 3
|
|
|
|
/* UART */
|
|
#define CFG_MXC_UART_BASE UART1_BASE
|
|
|
|
/* USB Configs */
|
|
#define CFG_MXC_USB_PORTSC (PORT_PTS_UTMI | PORT_PTS_PTW)
|
|
#define CFG_MXC_USB_FLAGS 0
|
|
|
|
/* USB Gadget (DFU, UMS) */
|
|
#if defined(CONFIG_CMD_DFU) || defined(CONFIG_CMD_USB_MASS_STORAGE)
|
|
#define DFU_DEFAULT_POLL_TIMEOUT 300
|
|
#endif
|
|
|
|
#define CFG_EXTRA_ENV_SETTINGS \
|
|
"console=ttymxc0,115200\0" \
|
|
"fdt_addr=0x18000000\0" \
|
|
"fdt_high=0xffffffff\0" \
|
|
"initrd_high=0xffffffff\0" \
|
|
"kernel_addr_r=0x10008000\0" \
|
|
"fdt_addr_r=0x13000000\0" \
|
|
"ramdisk_addr_r=0x18000000\0" \
|
|
"scriptaddr=0x14000000\0" \
|
|
"fdtfile=imx6q-dhcom-pdk2.dtb\0"\
|
|
"update_sf=" /* Erase SPI NOR and install U-Boot from SD */ \
|
|
"load mmc 0:1 ${loadaddr} /boot/u-boot-with-spl.imx && "\
|
|
"sf probe && sf update ${loadaddr} 0x400 ${filesize}\0" \
|
|
BOOTENV
|
|
|
|
#define BOOT_TARGET_DEVICES(func) \
|
|
func(MMC, mmc, 0) \
|
|
func(MMC, mmc, 1) \
|
|
func(MMC, mmc, 2) \
|
|
func(USB, usb, 1) \
|
|
func(SATA, sata, 0) \
|
|
func(DHCP, dhcp, na)
|
|
|
|
#include <config_distro_bootcmd.h>
|
|
|
|
/* Physical Memory Map */
|
|
#define PHYS_SDRAM MMDC0_ARB_BASE_ADDR
|
|
|
|
#define CFG_SYS_SDRAM_BASE PHYS_SDRAM
|
|
#define CFG_SYS_INIT_RAM_ADDR IRAM_BASE_ADDR
|
|
#define CFG_SYS_INIT_RAM_SIZE IRAM_SIZE
|
|
|
|
/* Environment */
|
|
|
|
#endif /* __DH_IMX6_CONFIG_H */
|