blob: 66004a6eb2a362e37678f2e62077e2ae9cb86abe [file] [log] [blame]
Tom Rini10e47792018-05-06 17:58:06 -04001/* SPDX-License-Identifier: GPL-2.0+ */
Adam Forda2965c92017-04-07 10:25:34 -05002/*
3 * Copyright (C) 2017 Logic PD, Inc.
4 *
5 * Configuration settings for the LogicPD i.MX6 SOM.
Adam Forda2965c92017-04-07 10:25:34 -05006 */
7
8#ifndef __IMX6LOGIC_CONFIG_H
9#define __IMX6LOGIC_CONFIG_H
10
Tom Rinia17aa192022-12-04 10:04:55 -050011#define CFG_MXC_UART_BASE UART1_BASE
Adam Forda2965c92017-04-07 10:25:34 -050012#define CONSOLE_DEV "ttymxc0"
13
Adam Forda2965c92017-04-07 10:25:34 -050014#include "mx6_common.h"
15
Adam Forda2965c92017-04-07 10:25:34 -050016/* MMC Configs */
Tom Rini376b88a2022-10-28 20:27:13 -040017#define CFG_SYS_FSL_ESDHC_ADDR 0
18#define CFG_SYS_FSL_USDHC_NUM 2
Adam Fordfef998b2019-03-03 16:22:45 -060019
Adam Forda2965c92017-04-07 10:25:34 -050020/* Ethernet Configs */
Tom Rini4e3c8a62022-12-04 10:03:53 -050021#define CFG_FEC_MXC_PHYADDR 0
Adam Forda2965c92017-04-07 10:25:34 -050022
Tom Rinic9edebe2022-12-04 10:03:50 -050023#define CFG_EXTRA_ENV_SETTINGS \
Adam Forda2965c92017-04-07 10:25:34 -050024 "script=boot.scr\0" \
25 "image=zImage\0" \
26 "bootm_size=0x10000000\0" \
Adam Ford4f28f692020-08-20 08:56:49 -050027 "fdt_addr_r=0x14000000\0" \
28 "ramdisk_addr_r=0x14080000\0" \
Tom Rini9004ee02021-08-23 10:25:30 -040029 "kernel_addr_r=" __stringify(CONFIG_SYS_LOAD_ADDR) "\0" \
Adam Forda2965c92017-04-07 10:25:34 -050030 "ramdisk_file=rootfs.cpio.uboot\0" \
31 "boot_fdt=try\0" \
32 "ip_dyn=yes\0" \
33 "console=" CONSOLE_DEV "\0" \
34 "mmcdev=1\0" \
35 "mmcpart=1\0" \
Adam Fordfef998b2019-03-03 16:22:45 -060036 "finduuid=part uuid mmc ${mmcdev}:2 uuid\0" \
Adam Forda2965c92017-04-07 10:25:34 -050037 "nandroot=ubi0:rootfs rootfstype=ubifs\0" \
38 "mmcargs=setenv bootargs console=${console},${baudrate}" \
Adam Ford3d37e622019-04-11 13:46:09 -050039 " root=PARTUUID=${uuid} rootwait rw ${mtdparts} ${optargs}\0" \
Adam Forda2965c92017-04-07 10:25:34 -050040 "nandargs=setenv bootargs console=${console},${baudrate}" \
Adam Ford3d37e622019-04-11 13:46:09 -050041 " ubi.mtd=fs root=${nandroot} ${mtdparts} ${optargs}\0" \
Adam Forda2965c92017-04-07 10:25:34 -050042 "ramargs=setenv bootargs console=${console},${baudrate}" \
Adam Ford3d37e622019-04-11 13:46:09 -050043 " root=/dev/ram rw ${mtdparts} ${optargs}\0" \
Adam Forda2965c92017-04-07 10:25:34 -050044 "loadbootscript=" \
45 "fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${script};\0" \
46 "bootscript=echo Running bootscript from mmc ...;" \
47 " source\0" \
48 "loadimage=fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${image};" \
49 " setenv kernelsize ${filesize}\0" \
Adam Ford886d2342018-07-20 08:25:53 -050050 "loadfdt=fatload mmc ${mmcdev}:${mmcpart} ${fdt_addr_r} ${fdt_file}\0" \
51 "loadramdisk=fatload mmc ${mmcdev}:${mmcpart} ${ramdisk_addr_r}" \
Adam Forda2965c92017-04-07 10:25:34 -050052 " ${ramdisk_file}; setenv ramdisksize ${filesize}\0" \
Adam Fordfef998b2019-03-03 16:22:45 -060053 "mmcboot=echo Booting from mmc...; run finduuid; run mmcargs;" \
54 "run loadimage; run loadfdt; bootz ${loadaddr} - ${fdt_addr_r}\0" \
Adam Forda2965c92017-04-07 10:25:34 -050055 "mmcramboot=run ramargs; run loadimage;" \
56 " run loadfdt; run loadramdisk;" \
Adam Ford886d2342018-07-20 08:25:53 -050057 " bootz ${loadaddr} ${ramdisk_addr_r} ${fdt_addr_r}\0" \
Adam Forda2965c92017-04-07 10:25:34 -050058 "nandboot=echo Booting from nand ...; " \
59 " run nandargs;" \
60 " nand read ${loadaddr} kernel ${kernelsize};" \
Adam Forda732ec02019-02-16 14:09:45 -060061 " nand read ${fdt_addr_r} dtb;" \
62 " bootz ${loadaddr} - ${fdt_addr_r}\0" \
Adam Forda2965c92017-04-07 10:25:34 -050063 "nandramboot=echo Booting RAMdisk from nand ...; " \
Adam Ford886d2342018-07-20 08:25:53 -050064 " nand read ${ramdisk_addr_r} fs ${ramdisksize};" \
Adam Forda2965c92017-04-07 10:25:34 -050065 " nand read ${loadaddr} kernel ${kernelsize};" \
Adam Ford886d2342018-07-20 08:25:53 -050066 " nand read ${fdt_addr_r} dtb;" \
Adam Forda2965c92017-04-07 10:25:34 -050067 " run ramargs;" \
Adam Ford886d2342018-07-20 08:25:53 -050068 " bootz ${loadaddr} ${ramdisk_addr_r} ${fdt_addr_r}\0" \
Adam Forda2965c92017-04-07 10:25:34 -050069 "netargs=setenv bootargs console=${console},${baudrate} " \
70 "root=/dev/nfs" \
71 " ip=dhcp nfsroot=${serverip}:${nfsroot},v3,tcp\0" \
72 "netboot=echo Booting from net ...; " \
73 "run netargs; " \
74 "if test ${ip_dyn} = yes; then " \
75 "setenv get_cmd dhcp; " \
76 "else " \
77 "setenv get_cmd tftp; " \
78 "fi; " \
79 "${get_cmd} ${image}; " \
80 "if test ${boot_fdt} = yes || test ${boot_fdt} = try; then " \
Adam Forda732ec02019-02-16 14:09:45 -060081 "if ${get_cmd} ${fdt_addr_r} ${fdt_file}; then " \
82 "bootz ${loadaddr} - ${fdt_addr_r}; " \
Adam Forda2965c92017-04-07 10:25:34 -050083 "else " \
84 "if test ${boot_fdt} = try; then " \
85 "bootz; " \
86 "else " \
87 "echo WARN: Cannot load the DT; " \
88 "fi; " \
89 "fi; " \
90 "else " \
91 "bootz; " \
92 "fi;\0" \
93 "autoboot=mmc dev ${mmcdev};" \
94 "if mmc rescan; then " \
95 "if run loadbootscript; then " \
96 "run bootscript; " \
97 "else " \
98 "if run loadimage; then " \
99 "run mmcboot; " \
100 "else run netboot; " \
101 "fi; " \
102 "fi; " \
103 "else run netboot; fi"
Adam Forda2965c92017-04-07 10:25:34 -0500104
Adam Forda2965c92017-04-07 10:25:34 -0500105/* Physical Memory Map */
Adam Forda2965c92017-04-07 10:25:34 -0500106#define PHYS_SDRAM MMDC0_ARB_BASE_ADDR
Tom Rinibb4dd962022-11-16 13:10:37 -0500107#define CFG_SYS_SDRAM_BASE PHYS_SDRAM
Tom Rini6a5dccc2022-11-16 13:10:41 -0500108#define CFG_SYS_INIT_RAM_ADDR IRAM_BASE_ADDR
109#define CFG_SYS_INIT_RAM_SIZE IRAM_SIZE
Adam Forda2965c92017-04-07 10:25:34 -0500110
Adam Forda2965c92017-04-07 10:25:34 -0500111/* Environment organization */
Adam Forda2965c92017-04-07 10:25:34 -0500112
113/* NAND stuff */
Tom Rinib4213492022-11-12 17:36:51 -0500114#define CFG_SYS_NAND_BASE 0x40000000
115#define CFG_SYS_NAND_U_BOOT_START CONFIG_TEXT_BASE
Adam Ford01aa34b2019-01-12 17:24:52 -0600116
Adam Ford1b546992018-07-05 20:58:24 -0500117/* USB Configs */
118#ifdef CONFIG_CMD_USB
Tom Rinib9796e82022-12-04 10:04:56 -0500119#define CFG_MXC_USB_PORTSC (PORT_PTS_UTMI | PORT_PTS_PTW)
120#define CFG_MXC_USB_FLAGS 0
Adam Ford1b546992018-07-05 20:58:24 -0500121#endif
122
123/* Falcon Mode */
Adam Ford1b546992018-07-05 20:58:24 -0500124
125/* Falcon Mode - MMC support: args@1MB kernel@2MB */
Adam Ford1b546992018-07-05 20:58:24 -0500126
Adam Forda2965c92017-04-07 10:25:34 -0500127#endif /* __IMX6LOGIC_CONFIG_H */