1/* SPDX-License-Identifier: GPL-2.0+ */ 2/* 3 * Copyright (C) 2017 NXP Semiconductors 4 * 5 * Configuration settings for the i.MX7D Pico board. 6 */ 7 8#ifndef __PICO_IMX7D_CONFIG_H 9#define __PICO_IMX7D_CONFIG_H 10 11#include "mx7_common.h" 12 13#define CFG_MXC_UART_BASE UART5_IPS_BASE_ADDR 14 15/* MMC Config */ 16#define CFG_SYS_FSL_ESDHC_ADDR USDHC3_BASE_ADDR 17 18#define CFG_DFU_ENV_SETTINGS \ 19 "dfu_alt_info=" \ 20 "spl raw 0x2 0x400;" \ 21 "u-boot raw 0x8a 0x1000;" \ 22 "/boot/zImage ext4 0 1;" \ 23 "/boot/imx7d-pico-hobbit.dtb ext4 0 1;" \ 24 "/boot/imx7d-pico-pi.dtb ext4 0 1;" \ 25 "rootfs part 0 1\0" \ 26 27/* When booting with FIT specify the node entry containing boot.scr */ 28#if defined(CONFIG_FIT) 29#define PICO_BOOT_ENV \ 30 BOOTENV \ 31 "fdtovaddr=0x83100000\0" \ 32 "scriptaddr=0x83200000\0" \ 33 "mmcargs=setenv bootargs console=${console},${baudrate} " \ 34 "rootwait rw\0" \ 35 "boot_a_script=" \ 36 "load ${devtype} ${devnum}:${distro_bootpart} " \ 37 "${scriptaddr} ${prefix}${script}; " \ 38 "iminfo ${scriptaddr};" \ 39 "if test $? -eq 1; then hab_failsafe; fi;" \ 40 "source ${scriptaddr}:bootscr\0" 41#else 42#define PICO_BOOT_ENV \ 43 "bootmenu_0=Boot using PICO-Hobbit baseboard=" \ 44 "setenv fdtfile imx7d-pico-hobbit.dtb\0" \ 45 "bootmenu_1=Boot using PICO-Dwarf baseboard=" \ 46 "setenv fdtfile imx7d-pico-dwarf.dtb\0" \ 47 "bootmenu_2=Boot using PICO-Nymph baseboard=" \ 48 "setenv fdtfile imx7d-pico-nymph.dtb\0" \ 49 "bootmenu_3=Boot using PICO-Pi baseboard=" \ 50 "setenv fdtfile imx7d-pico-pi.dtb\0" \ 51 BOOTENV 52#endif 53 54#define CFG_EXTRA_ENV_SETTINGS \ 55 "image=zImage\0" \ 56 "splashpos=m,m\0" \ 57 "splashimage=" __stringify(CONFIG_SYS_LOAD_ADDR) "\0" \ 58 "console=ttymxc4\0" \ 59 "fdt_high=0xffffffff\0" \ 60 "initrd_high=0xffffffff\0" \ 61 "fdtfile=" CONFIG_DEFAULT_FDT_FILE "\0" \ 62 "videomode=video=ctfb:x:800,y:480,depth:24,mode:0,pclk:30000,le:46,ri:210,up:22,lo:23,hs:20,vs:10,sync:0,vmode:0\0" \ 63 "fdt_addr=0x83000000\0" \ 64 "fdt_addr_r=0x83000000\0" \ 65 "kernel_addr_r=" __stringify(CONFIG_SYS_LOAD_ADDR) "\0" \ 66 "pxefile_addr_r=" __stringify(CONFIG_SYS_LOAD_ADDR) "\0" \ 67 "ramdisk_addr_r=0x83000000\0" \ 68 "ramdiskaddr=0x83000000\0" \ 69 "scriptaddr=" __stringify(CONFIG_SYS_LOAD_ADDR) "\0" \ 70 CFG_DFU_ENV_SETTINGS \ 71 "findfdt=" \ 72 "if test $fdtfile = ask ; then " \ 73 "bootmenu -1; fi;" \ 74 "if test $fdtfile != ask ; then " \ 75 "saveenv; fi;\0" \ 76 "finduuid=part uuid mmc 0:1 uuid\0" \ 77 "partitions=" \ 78 "uuid_disk=${uuid_gpt_disk};" \ 79 "name=rootfs,size=0,uuid=${uuid_gpt_rootfs}\0" \ 80 "fastboot_partition_alias_system=rootfs\0" \ 81 "setup_emmc=mmc dev 0; gpt write mmc 0 $partitions; reset;\0" \ 82 "mmcautodetect=yes\0" \ 83 PICO_BOOT_ENV 84 85#define BOOT_TARGET_DEVICES(func) \ 86 func(MMC, mmc, 1) \ 87 func(MMC, mmc, 0) \ 88 func(USB, usb, 0) \ 89 func(PXE, pxe, na) \ 90 func(DHCP, dhcp, na) 91 92#include <config_distro_bootcmd.h> 93#include <linux/stringify.h> 94 95/* Physical Memory Map */ 96#define PHYS_SDRAM MMDC0_ARB_BASE_ADDR 97 98#define CFG_SYS_SDRAM_BASE PHYS_SDRAM 99#define CFG_SYS_INIT_RAM_ADDR IRAM_BASE_ADDR 100#define CFG_SYS_INIT_RAM_SIZE IRAM_SIZE 101 102/* FLASH and environment organization */ 103 104/* Environment starts at 768k = 768 * 1024 = 786432 */ 105 106#define CFG_SYS_FSL_USDHC_NUM 2 107 108/* USB Configs */ 109#define CFG_MXC_USB_PORTSC (PORT_PTS_UTMI | PORT_PTS_PTW) 110#define CFG_MXC_USB_FLAGS 0 111 112#endif 113