blob: b96483b2b4236b2506d12b17d654d24efe027f9c [file] [log] [blame]
Jason Liu938080d2011-05-13 01:58:55 +00001/*
2 * Copyright (C) 2011 Freescale Semiconductor, Inc.
3 * Jason Liu <r64343@freescale.com>
4 *
5 * Configuration settings for Freescale MX53 low cost board.
6 *
Wolfgang Denk3765b3e2013-10-07 13:07:26 +02007 * SPDX-License-Identifier: GPL-2.0+
Jason Liu938080d2011-05-13 01:58:55 +00008 */
9
10#ifndef __CONFIG_H
11#define __CONFIG_H
12
Fabio Estevam9df82892011-09-22 08:07:19 +000013#define CONFIG_MACH_TYPE MACH_TYPE_MX53_LOCO
14
Jason Liu938080d2011-05-13 01:58:55 +000015#include <asm/arch/imx-regs.h>
16
17#define CONFIG_CMDLINE_TAG
Jason Liu938080d2011-05-13 01:58:55 +000018#define CONFIG_SETUP_MEMORY_TAGS
19#define CONFIG_INITRD_TAG
20
Gong Qianyu18fb0e32015-10-26 19:47:42 +080021#define CONFIG_SYS_FSL_CLK
Fabio Estevam6ca896f2014-04-22 15:34:54 -030022
Jason Liu938080d2011-05-13 01:58:55 +000023/* Size of malloc() pool */
Fabio Estevamf714b0a2012-05-10 15:07:35 +000024#define CONFIG_SYS_MALLOC_LEN (10 * 1024 * 1024)
Jason Liu938080d2011-05-13 01:58:55 +000025
Fabio Estevam54cd1de2012-05-08 03:40:49 +000026#define CONFIG_REVISION_TAG
Jason Liu938080d2011-05-13 01:58:55 +000027
28#define CONFIG_MXC_UART
Stefano Babic40f6fff2011-11-22 15:22:39 +010029#define CONFIG_MXC_UART_BASE UART1_BASE
Jason Liu938080d2011-05-13 01:58:55 +000030
31/* MMC Configs */
Jason Liu938080d2011-05-13 01:58:55 +000032#define CONFIG_SYS_FSL_ESDHC_ADDR 0
33#define CONFIG_SYS_FSL_ESDHC_NUM 2
34
Jason Liu938080d2011-05-13 01:58:55 +000035/* Eth Configs */
Jason Liu938080d2011-05-13 01:58:55 +000036#define CONFIG_MII
Jason Liu938080d2011-05-13 01:58:55 +000037
38#define CONFIG_FEC_MXC
39#define IMX_FEC_BASE FEC_BASE_ADDR
40#define CONFIG_FEC_MXC_PHYADDR 0x1F
41
Wolfgang Grandegger45cf6ad2011-11-11 14:03:37 +010042/* USB Configs */
Wolfgang Grandegger45cf6ad2011-11-11 14:03:37 +010043#define CONFIG_USB_EHCI_MX5
Wolfgang Grandegger45cf6ad2011-11-11 14:03:37 +010044#define CONFIG_MXC_USB_PORT 1
45#define CONFIG_MXC_USB_PORTSC (PORT_PTS_UTMI | PORT_PTS_PTW)
46#define CONFIG_MXC_USB_FLAGS 0
47
Fabio Estevame7e33722012-04-30 08:12:04 +000048/* I2C Configs */
tremb089d032013-09-21 18:13:36 +020049#define CONFIG_SYS_I2C
50#define CONFIG_SYS_I2C_MXC
Albert ARIBAUD \\(3ADEV\\)03544c62015-09-21 22:43:38 +020051#define CONFIG_SYS_I2C_MXC_I2C1 /* enable I2C bus 1 */
52#define CONFIG_SYS_I2C_MXC_I2C2 /* enable I2C bus 2 */
York Sunf8cb1012015-03-20 10:20:40 -070053#define CONFIG_SYS_I2C_MXC_I2C3 /* enable I2C bus 3 */
Fabio Estevame7e33722012-04-30 08:12:04 +000054
55/* PMIC Controller */
Łukasz Majewskibe3b51a2012-11-13 03:22:14 +000056#define CONFIG_POWER
57#define CONFIG_POWER_I2C
Łukasz Majewski2988e862012-11-13 03:22:15 +000058#define CONFIG_DIALOG_POWER
Łukasz Majewskibe3b51a2012-11-13 03:22:14 +000059#define CONFIG_POWER_FSL
Simon Glass913702c2014-05-20 06:01:34 -060060#define CONFIG_POWER_FSL_MC13892
Fabio Estevame7e33722012-04-30 08:12:04 +000061#define CONFIG_SYS_DIALOG_PMIC_I2C_ADDR 0x48
Fabio Estevam5b547f32012-05-07 10:25:59 +000062#define CONFIG_SYS_FSL_PMIC_I2C_ADDR 0x8
Fabio Estevame7e33722012-04-30 08:12:04 +000063
Jason Liu938080d2011-05-13 01:58:55 +000064/* allow to overwrite serial and ethaddr */
65#define CONFIG_ENV_OVERWRITE
Jason Liu938080d2011-05-13 01:58:55 +000066
67/* Command definition */
Jason Liu938080d2011-05-13 01:58:55 +000068
Jason Liu938080d2011-05-13 01:58:55 +000069
Wolfgang Grandegger28b119e2011-10-17 08:21:56 +000070#define CONFIG_ETHPRIME "FEC0"
Jason Liu938080d2011-05-13 01:58:55 +000071
Otavio Salvadorfe51f782012-12-21 06:59:05 +000072#define CONFIG_LOADADDR 0x72000000 /* loadaddr env var */
Jason Liu938080d2011-05-13 01:58:55 +000073
74#define CONFIG_EXTRA_ENV_SETTINGS \
75 "script=boot.scr\0" \
Otavio Salvadorf28154b2014-01-16 19:58:01 -020076 "image=zImage\0" \
Otavio Salvadore0df5352013-01-10 09:45:07 +000077 "fdt_addr=0x71000000\0" \
78 "boot_fdt=try\0" \
79 "ip_dyn=yes\0" \
Jason Liu938080d2011-05-13 01:58:55 +000080 "mmcdev=0\0" \
Otavio Salvador254fd8d2013-06-28 18:52:39 -030081 "mmcpart=1\0" \
82 "mmcroot=/dev/mmcblk0p2 rw rootwait\0" \
Otavio Salvadore0df5352013-01-10 09:45:07 +000083 "mmcargs=setenv bootargs console=ttymxc0,${baudrate} root=${mmcroot}\0" \
Jason Liu938080d2011-05-13 01:58:55 +000084 "loadbootscript=" \
Guillaume GARDET54e0f962015-06-16 11:48:48 +020085 "load mmc ${mmcdev}:${mmcpart} ${loadaddr} ${script};\0" \
Jason Liu938080d2011-05-13 01:58:55 +000086 "bootscript=echo Running bootscript from mmc ...; " \
87 "source\0" \
Guillaume GARDET54e0f962015-06-16 11:48:48 +020088 "loadimage=load mmc ${mmcdev}:${mmcpart} ${loadaddr} ${image}\0" \
89 "loadfdt=load mmc ${mmcdev}:${mmcpart} ${fdt_addr} ${fdt_file}\0" \
Jason Liu938080d2011-05-13 01:58:55 +000090 "mmcboot=echo Booting from mmc ...; " \
91 "run mmcargs; " \
Otavio Salvadore0df5352013-01-10 09:45:07 +000092 "if test ${boot_fdt} = yes || test ${boot_fdt} = try; then " \
93 "if run loadfdt; then " \
Otavio Salvadorf28154b2014-01-16 19:58:01 -020094 "bootz ${loadaddr} - ${fdt_addr}; " \
Otavio Salvadore0df5352013-01-10 09:45:07 +000095 "else " \
96 "if test ${boot_fdt} = try; then " \
Otavio Salvadorf28154b2014-01-16 19:58:01 -020097 "bootz; " \
Otavio Salvadore0df5352013-01-10 09:45:07 +000098 "else " \
99 "echo WARN: Cannot load the DT; " \
100 "fi; " \
101 "fi; " \
102 "else " \
Otavio Salvadorf28154b2014-01-16 19:58:01 -0200103 "bootz; " \
Otavio Salvadore0df5352013-01-10 09:45:07 +0000104 "fi;\0" \
Jason Liu938080d2011-05-13 01:58:55 +0000105 "netargs=setenv bootargs console=ttymxc0,${baudrate} " \
106 "root=/dev/nfs " \
107 "ip=dhcp nfsroot=${serverip}:${nfsroot},v3,tcp\0" \
108 "netboot=echo Booting from net ...; " \
109 "run netargs; " \
Otavio Salvadore0df5352013-01-10 09:45:07 +0000110 "if test ${ip_dyn} = yes; then " \
111 "setenv get_cmd dhcp; " \
112 "else " \
113 "setenv get_cmd tftp; " \
114 "fi; " \
Otavio Salvadorf28154b2014-01-16 19:58:01 -0200115 "${get_cmd} ${image}; " \
Otavio Salvadore0df5352013-01-10 09:45:07 +0000116 "if test ${boot_fdt} = yes || test ${boot_fdt} = try; then " \
117 "if ${get_cmd} ${fdt_addr} ${fdt_file}; then " \
Otavio Salvadorf28154b2014-01-16 19:58:01 -0200118 "bootz ${loadaddr} - ${fdt_addr}; " \
Otavio Salvadore0df5352013-01-10 09:45:07 +0000119 "else " \
120 "if test ${boot_fdt} = try; then " \
Otavio Salvadorf28154b2014-01-16 19:58:01 -0200121 "bootz; " \
Otavio Salvadore0df5352013-01-10 09:45:07 +0000122 "else " \
123 "echo ERROR: Cannot load the DT; " \
124 "exit; " \
125 "fi; " \
126 "fi; " \
127 "else " \
Otavio Salvadorf28154b2014-01-16 19:58:01 -0200128 "bootz; " \
Otavio Salvadore0df5352013-01-10 09:45:07 +0000129 "fi;\0"
Jason Liu938080d2011-05-13 01:58:55 +0000130
131#define CONFIG_BOOTCOMMAND \
Andrew Bradford66968112012-10-01 05:06:52 +0000132 "mmc dev ${mmcdev}; if mmc rescan; then " \
Jason Liu938080d2011-05-13 01:58:55 +0000133 "if run loadbootscript; then " \
134 "run bootscript; " \
135 "else " \
Otavio Salvadorf28154b2014-01-16 19:58:01 -0200136 "if run loadimage; then " \
Jason Liu938080d2011-05-13 01:58:55 +0000137 "run mmcboot; " \
138 "else run netboot; " \
139 "fi; " \
140 "fi; " \
141 "else run netboot; fi"
142
143#define CONFIG_ARP_TIMEOUT 200UL
144
145/* Miscellaneous configurable options */
Otavio Salvadore0df5352013-01-10 09:45:07 +0000146#define CONFIG_SYS_CBSIZE 512 /* Console I/O Buffer Size */
Jason Liu938080d2011-05-13 01:58:55 +0000147
Jason Liu938080d2011-05-13 01:58:55 +0000148#define CONFIG_SYS_MEMTEST_START 0x70000000
149#define CONFIG_SYS_MEMTEST_END 0x70010000
150
151#define CONFIG_SYS_LOAD_ADDR CONFIG_LOADADDR
152
Jason Liu938080d2011-05-13 01:58:55 +0000153/* Physical Memory Map */
154#define CONFIG_NR_DRAM_BANKS 2
Marek Vasut31c832f2014-03-28 08:30:59 +0100155#define PHYS_SDRAM_1 CSD0_BASE_ADDR
156#define PHYS_SDRAM_1_SIZE (gd->bd->bi_dram[0].size)
157#define PHYS_SDRAM_2 CSD1_BASE_ADDR
158#define PHYS_SDRAM_2_SIZE (gd->bd->bi_dram[1].size)
159#define PHYS_SDRAM_SIZE (gd->ram_size)
Jason Liu938080d2011-05-13 01:58:55 +0000160
161#define CONFIG_SYS_SDRAM_BASE (PHYS_SDRAM_1)
162#define CONFIG_SYS_INIT_RAM_ADDR (IRAM_BASE_ADDR)
163#define CONFIG_SYS_INIT_RAM_SIZE (IRAM_SIZE)
164
165#define CONFIG_SYS_INIT_SP_OFFSET \
166 (CONFIG_SYS_INIT_RAM_SIZE - GENERATED_GBL_DATA_SIZE)
167#define CONFIG_SYS_INIT_SP_ADDR \
168 (CONFIG_SYS_INIT_RAM_ADDR + CONFIG_SYS_INIT_SP_OFFSET)
169
Masahiro Yamadae856bdc2017-02-11 22:43:54 +0900170/* environment organization */
Jason Liu938080d2011-05-13 01:58:55 +0000171#define CONFIG_ENV_OFFSET (6 * 64 * 1024)
172#define CONFIG_ENV_SIZE (8 * 1024)
Jason Liu938080d2011-05-13 01:58:55 +0000173#define CONFIG_SYS_MMC_ENV_DEV 0
174
Stefano Babicf92e4e62012-02-22 00:24:41 +0000175#ifdef CONFIG_CMD_SATA
Stefano Babicf92e4e62012-02-22 00:24:41 +0000176 #define CONFIG_SYS_SATA_MAX_DEVICE 1
177 #define CONFIG_DWC_AHSATA_PORT_ID 0
178 #define CONFIG_DWC_AHSATA_BASE_ADDR SATA_BASE_ADDR
179 #define CONFIG_LBA48
Stefano Babicf92e4e62012-02-22 00:24:41 +0000180#endif
181
Fabio Estevamf714b0a2012-05-10 15:07:35 +0000182/* Framebuffer and LCD */
183#define CONFIG_PREBOOT
Fabio Estevam695af9a2012-05-31 07:23:56 +0000184#define CONFIG_VIDEO_IPUV3
Fabio Estevamf714b0a2012-05-10 15:07:35 +0000185#define CONFIG_VIDEO_BMP_RLE8
186#define CONFIG_SPLASH_SCREEN
187#define CONFIG_BMP_16BPP
188#define CONFIG_VIDEO_LOGO
189
Jason Liu938080d2011-05-13 01:58:55 +0000190#endif /* __CONFIG_H */