blob: b96341a587c4f4c0b00c525ba90502d37a697aa2 [file] [log] [blame]
Tom Rini83d290c2018-05-06 17:58:06 -04001/* SPDX-License-Identifier: GPL-2.0+ */
Adrian Alonso1a8150d2015-09-03 11:49:28 -05002/*
3 * Copyright (C) 2015 Freescale Semiconductor, Inc.
4 *
5 * Configuration settings for the Freescale i.MX7D SABRESD board.
Adrian Alonso1a8150d2015-09-03 11:49:28 -05006 */
7
8#ifndef __MX7D_SABRESD_CONFIG_H
9#define __MX7D_SABRESD_CONFIG_H
10
11#include "mx7_common.h"
12
Adrian Alonso1a8150d2015-09-03 11:49:28 -050013#define PHYS_SDRAM_SIZE SZ_1G
14
Peng Fan79e355f2016-01-28 16:55:08 +080015#ifdef CONFIG_IMX_BOOTAUX
Peng Fan79e355f2016-01-28 16:55:08 +080016
17#define UPDATE_M4_ENV \
18 "m4image=m4_qspi.bin\0" \
19 "loadm4image=fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${m4image}\0" \
20 "update_m4_from_sd=" \
21 "if sf probe 0:0; then " \
22 "if run loadm4image; then " \
23 "setexpr fw_sz ${filesize} + 0xffff; " \
24 "setexpr fw_sz ${fw_sz} / 0x10000; " \
25 "setexpr fw_sz ${fw_sz} * 0x10000; " \
26 "sf erase 0x0 ${fw_sz}; " \
27 "sf write ${loadaddr} 0x0 ${filesize}; " \
28 "fi; " \
29 "fi\0" \
Tom Rini56fc54a2022-06-25 11:02:47 -040030 "m4boot=sf probe 0:0; bootaux 0x60000000\0"
Peng Fan79e355f2016-01-28 16:55:08 +080031#else
32#define UPDATE_M4_ENV ""
33#endif
34
Adrian Alonso1a8150d2015-09-03 11:49:28 -050035#define CONFIG_MFG_ENV_SETTINGS \
36 "mfgtool_args=setenv bootargs console=${console},${baudrate} " \
37 "rdinit=/linuxrc " \
38 "g_mass_storage.stall=0 g_mass_storage.removable=1 " \
39 "g_mass_storage.idVendor=0x066F g_mass_storage.idProduct=0x37FF "\
40 "g_mass_storage.iSerialNumber=\"\" "\
41 "clk_ignore_unused "\
42 "\0" \
43 "initrd_addr=0x83800000\0" \
44 "initrd_high=0xffffffff\0" \
45 "bootcmd_mfg=run mfgtool_args;bootz ${loadaddr} ${initrd_addr} ${fdt_addr};\0" \
46
Tzu-Jung Lee73f1b802015-10-27 23:00:50 +000047#define CONFIG_DFU_ENV_SETTINGS \
48 "dfu_alt_info=image raw 0 0x800000;"\
49 "u-boot raw 0 0x4000;"\
50 "bootimg part 0 1;"\
51 "rootfs part 0 2\0" \
52
Adrian Alonso1a8150d2015-09-03 11:49:28 -050053#define CONFIG_EXTRA_ENV_SETTINGS \
Peng Fan79e355f2016-01-28 16:55:08 +080054 UPDATE_M4_ENV \
Adrian Alonso1a8150d2015-09-03 11:49:28 -050055 CONFIG_MFG_ENV_SETTINGS \
Tzu-Jung Lee73f1b802015-10-27 23:00:50 +000056 CONFIG_DFU_ENV_SETTINGS \
Adrian Alonso1a8150d2015-09-03 11:49:28 -050057 "script=boot.scr\0" \
58 "image=zImage\0" \
59 "console=ttymxc0\0" \
60 "fdt_high=0xffffffff\0" \
Joris Offouga80e62e32019-12-08 18:02:31 +010061 "finduuid=part uuid mmc 0:1 uuid\0" \
Adrian Alonso1a8150d2015-09-03 11:49:28 -050062 "initrd_high=0xffffffff\0" \
Joris Offouga80e62e32019-12-08 18:02:31 +010063 "fdtfile=imx7d-sdb.dtb\0" \
Adrian Alonso1a8150d2015-09-03 11:49:28 -050064 "fdt_addr=0x83000000\0" \
Joris Offouga80e62e32019-12-08 18:02:31 +010065 "fdt_addr_r=0x83000000\0" \
Tom Rini72d81362021-08-23 10:25:30 -040066 "kernel_addr_r=" __stringify(CONFIG_SYS_LOAD_ADDR) "\0" \
67 "pxefile_addr_r=" __stringify(CONFIG_SYS_LOAD_ADDR) "\0" \
Jan Kiszkac94f4052020-03-16 12:50:09 +010068 "ramdisk_addr_r=0x83100000\0" \
69 "ramdiskaddr=0x83100000\0" \
Tom Rini72d81362021-08-23 10:25:30 -040070 "scriptaddr=" __stringify(CONFIG_SYS_LOAD_ADDR) "\0" \
Peng Fanebe517b2015-10-29 15:54:53 +080071 "videomode=video=ctfb:x:480,y:272,depth:24,pclk:108695,le:8,ri:4,up:2,lo:4,hs:41,vs:10,sync:0,vmode:0\0" \
Joris Offouga80e62e32019-12-08 18:02:31 +010072 BOOTENV
Adrian Alonso1a8150d2015-09-03 11:49:28 -050073
Joris Offouga80e62e32019-12-08 18:02:31 +010074#define BOOT_TARGET_DEVICES(func) \
75 func(MMC, mmc, 0) \
76 func(DHCP, dhcp, na) \
77 func(PXE, pxe, na)
78
79#include <config_distro_bootcmd.h>
Adrian Alonso1a8150d2015-09-03 11:49:28 -050080
Adrian Alonso1a8150d2015-09-03 11:49:28 -050081/* Physical Memory Map */
Adrian Alonso1a8150d2015-09-03 11:49:28 -050082#define PHYS_SDRAM MMDC0_ARB_BASE_ADDR
83
84#define CONFIG_SYS_SDRAM_BASE PHYS_SDRAM
85#define CONFIG_SYS_INIT_RAM_ADDR IRAM_BASE_ADDR
86#define CONFIG_SYS_INIT_RAM_SIZE IRAM_SIZE
87
Masahiro Yamadae856bdc2017-02-11 22:43:54 +090088/* environment organization */
Peng Fan6e1a41c2015-12-22 17:04:24 +080089
90/*
91 * If want to use nand, define CONFIG_NAND_MXS and rework board
92 * to support nand, since emmc has pin conflicts with nand
93 */
94#ifdef CONFIG_NAND_MXS
Peng Fan6e1a41c2015-12-22 17:04:24 +080095/* NAND stuff */
96#define CONFIG_SYS_MAX_NAND_DEVICE 1
97#define CONFIG_SYS_NAND_BASE 0x40000000
Peng Fan6e1a41c2015-12-22 17:04:24 +080098
99/* DMA stuff, needed for GPMI/MXS NAND support */
Peng Fan6e1a41c2015-12-22 17:04:24 +0800100#endif
101
Adrian Alonso1a8150d2015-09-03 11:49:28 -0500102/* USB Configs */
Adrian Alonso1a8150d2015-09-03 11:49:28 -0500103#define CONFIG_MXC_USB_PORTSC (PORT_PTS_UTMI | PORT_PTS_PTW)
Adrian Alonso1a8150d2015-09-03 11:49:28 -0500104
Tzu-Jung Lee73f1b802015-10-27 23:00:50 +0000105#define CONFIG_USBD_HS
Tzu-Jung Lee73f1b802015-10-27 23:00:50 +0000106
Adrian Alonso1a8150d2015-09-03 11:49:28 -0500107#endif /* __CONFIG_H */