blob: afaa90840629002369f8fab51856528de6326738 [file] [log] [blame]
Tom Rini83d290c2018-05-06 17:58:06 -04001/* SPDX-License-Identifier: GPL-2.0+ */
Eric Nelsond67b0d92013-03-11 08:44:53 +00002/*
3 * Copyright (C) 2010-2011 Freescale Semiconductor, Inc.
4 *
5 * Configuration settings for the Boundary Devices Nitrogen6X
6 * and Freescale i.MX6Q Sabre Lite boards.
Eric Nelsond67b0d92013-03-11 08:44:53 +00007 */
8
9#ifndef __CONFIG_H
10#define __CONFIG_H
11
Eric Nelson02824dc2013-11-26 17:40:30 -070012#include "mx6_common.h"
Eric Nelsond67b0d92013-03-11 08:44:53 +000013
14#define CONFIG_MACH_TYPE 3769
15
Eric Nelsond67b0d92013-03-11 08:44:53 +000016/* Size of malloc() pool */
17#define CONFIG_SYS_MALLOC_LEN (10 * 1024 * 1024)
18
Troy Kiskyf3d7cff2013-09-25 18:41:18 -070019#define CONFIG_USBD_HS
Troy Kiskyf3d7cff2013-09-25 18:41:18 -070020#define CONFIG_NETCONSOLE
Eric Nelsond67b0d92013-03-11 08:44:53 +000021
Eric Nelsond67b0d92013-03-11 08:44:53 +000022#define CONFIG_MXC_UART
23#define CONFIG_MXC_UART_BASE UART2_BASE
24
Eric Nelsond67b0d92013-03-11 08:44:53 +000025/* I2C Configs */
tremb089d032013-09-21 18:13:36 +020026#define CONFIG_SYS_I2C
27#define CONFIG_SYS_I2C_MXC
Albert ARIBAUD \\(3ADEV\\)03544c62015-09-21 22:43:38 +020028#define CONFIG_SYS_I2C_MXC_I2C1 /* enable I2C bus 1 */
29#define CONFIG_SYS_I2C_MXC_I2C2 /* enable I2C bus 2 */
York Sunf8cb1012015-03-20 10:20:40 -070030#define CONFIG_SYS_I2C_MXC_I2C3 /* enable I2C bus 3 */
Eric Nelsond67b0d92013-03-11 08:44:53 +000031#define CONFIG_SYS_I2C_SPEED 100000
Eric Nelson5dbdc3c2014-10-02 12:16:47 -070032#define CONFIG_I2C_EDID
Eric Nelsond67b0d92013-03-11 08:44:53 +000033
Eric Nelsond67b0d92013-03-11 08:44:53 +000034/* MMC Configs */
Eric Nelsond67b0d92013-03-11 08:44:53 +000035#define CONFIG_SYS_FSL_ESDHC_ADDR 0
36#define CONFIG_SYS_FSL_USDHC_NUM 2
37
Eric Nelsond67b0d92013-03-11 08:44:53 +000038/*
39 * SATA Configs
40 */
41#ifdef CONFIG_CMD_SATA
Eric Nelsond67b0d92013-03-11 08:44:53 +000042#define CONFIG_SYS_SATA_MAX_DEVICE 1
43#define CONFIG_DWC_AHSATA_PORT_ID 0
44#define CONFIG_DWC_AHSATA_BASE_ADDR SATA_ARB_BASE_ADDR
45#define CONFIG_LBA48
Eric Nelsond67b0d92013-03-11 08:44:53 +000046#endif
47
Eric Nelsond67b0d92013-03-11 08:44:53 +000048#define CONFIG_FEC_MXC
Eric Nelsond67b0d92013-03-11 08:44:53 +000049#define IMX_FEC_BASE ENET_BASE_ADDR
50#define CONFIG_FEC_XCV_TYPE RGMII
51#define CONFIG_ETHPRIME "FEC"
52#define CONFIG_FEC_MXC_PHYADDR 6
Eric Nelsond67b0d92013-03-11 08:44:53 +000053
54/* USB Configs */
Troy Kiskyd1a52862013-10-10 15:27:59 -070055#define CONFIG_USB_MAX_CONTROLLER_COUNT 2
56#define CONFIG_EHCI_HCD_INIT_AFTER_RESET /* For OTG port */
Eric Nelsond67b0d92013-03-11 08:44:53 +000057#define CONFIG_MXC_USB_PORTSC (PORT_PTS_UTMI | PORT_PTS_PTW)
58#define CONFIG_MXC_USB_FLAGS 0
59
Eric Nelsond67b0d92013-03-11 08:44:53 +000060/* Framebuffer and LCD */
Eric Nelsond67b0d92013-03-11 08:44:53 +000061#define CONFIG_VIDEO_BMP_RLE8
62#define CONFIG_SPLASH_SCREEN
Eric Nelson761bc192015-04-16 11:31:33 -070063#define CONFIG_SPLASH_SCREEN_ALIGN
64#define CONFIG_VIDEO_BMP_GZIP
65#define CONFIG_SYS_VIDEO_LOGO_MAX_SIZE (6 * 1024 * 1024)
Eric Nelsond67b0d92013-03-11 08:44:53 +000066#define CONFIG_BMP_16BPP
Pardeep Kumar Singla5ea7f0e2013-07-25 12:12:13 -050067#define CONFIG_IMX_HDMI
Eric Benarda47e4492014-04-04 19:05:53 +020068#define CONFIG_IMX_VIDEO_SKIP
Eric Nelsond67b0d92013-03-11 08:44:53 +000069
Eric Nelsond67b0d92013-03-11 08:44:53 +000070#define CONFIG_PREBOOT ""
71
Guillaume GARDETcc5d7dc2018-04-18 17:04:58 +020072#ifdef CONFIG_CMD_MMC
73#define DISTRO_BOOT_DEV_MMC(func) func(MMC, mmc, 0) func(MMC, mmc, 1)
Eric Nelsond67b0d92013-03-11 08:44:53 +000074#else
Guillaume GARDETcc5d7dc2018-04-18 17:04:58 +020075#define DISTRO_BOOT_DEV_MMC(func)
Eric Nelsond67b0d92013-03-11 08:44:53 +000076#endif
77
Guillaume GARDETcc5d7dc2018-04-18 17:04:58 +020078#ifdef CONFIG_CMD_SATA
79#define DISTRO_BOOT_DEV_SATA(func) func(SATA, sata, 0)
Eric Nelsond67b0d92013-03-11 08:44:53 +000080#else
Guillaume GARDETcc5d7dc2018-04-18 17:04:58 +020081#define DISTRO_BOOT_DEV_SATA(func)
Eric Nelsond67b0d92013-03-11 08:44:53 +000082#endif
83
Diego Rondini5b7103e2014-10-02 12:16:41 -070084#ifdef CONFIG_USB_STORAGE
Guillaume GARDETcc5d7dc2018-04-18 17:04:58 +020085#define DISTRO_BOOT_DEV_USB(func) func(USB, usb, 0)
Diego Rondini5b7103e2014-10-02 12:16:41 -070086#else
Guillaume GARDETcc5d7dc2018-04-18 17:04:58 +020087#define DISTRO_BOOT_DEV_USB(func)
Diego Rondini5b7103e2014-10-02 12:16:41 -070088#endif
89
Guillaume GARDETcc5d7dc2018-04-18 17:04:58 +020090#ifdef CONFIG_CMD_PXE
91#define DISTRO_BOOT_DEV_PXE(func) func(PXE, pxe, na)
92#else
93#define DISTRO_BOOT_DEV_PXE(func)
94#endif
95
96#ifdef CONFIG_CMD_DHCP
97#define DISTRO_BOOT_DEV_DHCP(func) func(DHCP, dhcp, na)
98#else
99#define DISTRO_BOOT_DEV_DHCP(func)
100#endif
101
Eric Nelsond67b0d92013-03-11 08:44:53 +0000102
Fabio Estevamf8b1e862013-07-26 11:37:17 -0300103#if defined(CONFIG_SABRELITE)
Guillaume GARDETcc5d7dc2018-04-18 17:04:58 +0200104#define FDTFILE "fdtfile=imx6q-sabrelite.dtb\0"
105#else
106/* FIXME: nitrogen6x covers multiple configs. Define fdtfile for each supported config. */
107#define FDTFILE
108#endif
109
110#define BOOT_TARGET_DEVICES(func) \
111 DISTRO_BOOT_DEV_MMC(func) \
112 DISTRO_BOOT_DEV_SATA(func) \
113 DISTRO_BOOT_DEV_USB(func) \
114 DISTRO_BOOT_DEV_PXE(func) \
115 DISTRO_BOOT_DEV_DHCP(func)
116
117#include <config_distro_bootcmd.h>
118
Fabio Estevamf8b1e862013-07-26 11:37:17 -0300119#define CONFIG_EXTRA_ENV_SETTINGS \
Fabio Estevamf8b1e862013-07-26 11:37:17 -0300120 "console=ttymxc1\0" \
121 "fdt_high=0xffffffff\0" \
122 "initrd_high=0xffffffff\0" \
Guillaume GARDETcc5d7dc2018-04-18 17:04:58 +0200123 "fdt_addr_r=0x18000000\0" \
124 FDTFILE \
125 "kernel_addr_r=" __stringify(CONFIG_LOADADDR) "\0" \
126 "pxefile_addr_r=" __stringify(CONFIG_LOADADDR) "\0" \
127 "scriptaddr=" __stringify(CONFIG_LOADADDR) "\0" \
128 "ramdisk_addr_r=0x13000000\0" \
129 "ramdiskaddr=0x13000000\0" \
Fabio Estevamf8b1e862013-07-26 11:37:17 -0300130 "ip_dyn=yes\0" \
Gary Bisson1c3e62d2017-01-12 12:18:44 +0100131 "usb_pgood_delay=2000\0" \
Guillaume GARDETcc5d7dc2018-04-18 17:04:58 +0200132 BOOTENV
Fabio Estevamf8b1e862013-07-26 11:37:17 -0300133
Eric Nelsond67b0d92013-03-11 08:44:53 +0000134/* Miscellaneous configurable options */
Eric Nelsond67b0d92013-03-11 08:44:53 +0000135#define CONFIG_SYS_MEMTEST_START 0x10000000
136#define CONFIG_SYS_MEMTEST_END 0x10010000
137#define CONFIG_SYS_MEMTEST_SCRATCH 0x10800000
138
Eric Nelsond67b0d92013-03-11 08:44:53 +0000139/* Physical Memory Map */
Eric Nelsond67b0d92013-03-11 08:44:53 +0000140#define PHYS_SDRAM MMDC0_ARB_BASE_ADDR
141
142#define CONFIG_SYS_SDRAM_BASE PHYS_SDRAM
143#define CONFIG_SYS_INIT_RAM_ADDR IRAM_BASE_ADDR
144#define CONFIG_SYS_INIT_RAM_SIZE IRAM_SIZE
145
146#define CONFIG_SYS_INIT_SP_OFFSET \
147 (CONFIG_SYS_INIT_RAM_SIZE - GENERATED_GBL_DATA_SIZE)
148#define CONFIG_SYS_INIT_SP_ADDR \
149 (CONFIG_SYS_INIT_RAM_ADDR + CONFIG_SYS_INIT_SP_OFFSET)
150
Peter Robinson056845c2015-05-22 17:30:45 +0100151/* Environment organization */
Eric Nelsond67b0d92013-03-11 08:44:53 +0000152#define CONFIG_ENV_SIZE (8 * 1024)
153
Eric Nelsond67b0d92013-03-11 08:44:53 +0000154#if defined(CONFIG_ENV_IS_IN_MMC)
155#define CONFIG_ENV_OFFSET (6 * 64 * 1024)
156#define CONFIG_SYS_MMC_ENV_DEV 0
157#elif defined(CONFIG_ENV_IS_IN_SPI_FLASH)
158#define CONFIG_ENV_OFFSET (768 * 1024)
159#define CONFIG_ENV_SECT_SIZE (8 * 1024)
Eric Nelsond67b0d92013-03-11 08:44:53 +0000160#endif
161
Marek Vasut147f8fa2013-12-14 05:55:29 +0100162/*
163 * PCI express
164 */
Marek Vasut147f8fa2013-12-14 05:55:29 +0100165#ifdef CONFIG_CMD_PCI
Marek Vasut147f8fa2013-12-14 05:55:29 +0100166#define CONFIG_PCI_SCAN_SHOW
167#define CONFIG_PCIE_IMX
168#endif
169
Eric Nelsond67b0d92013-03-11 08:44:53 +0000170#endif /* __CONFIG_H */