afaa90840629002369f8fab51856528de6326738
[platform/kernel/u-boot.git] / include / configs / nitrogen6x.h
1 /* SPDX-License-Identifier: GPL-2.0+ */
2 /*
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.
7  */
8
9 #ifndef __CONFIG_H
10 #define __CONFIG_H
11
12 #include "mx6_common.h"
13
14 #define CONFIG_MACH_TYPE        3769
15
16 /* Size of malloc() pool */
17 #define CONFIG_SYS_MALLOC_LEN           (10 * 1024 * 1024)
18
19 #define CONFIG_USBD_HS
20 #define CONFIG_NETCONSOLE
21
22 #define CONFIG_MXC_UART
23 #define CONFIG_MXC_UART_BASE           UART2_BASE
24
25 /* I2C Configs */
26 #define CONFIG_SYS_I2C
27 #define CONFIG_SYS_I2C_MXC
28 #define CONFIG_SYS_I2C_MXC_I2C1         /* enable I2C bus 1 */
29 #define CONFIG_SYS_I2C_MXC_I2C2         /* enable I2C bus 2 */
30 #define CONFIG_SYS_I2C_MXC_I2C3         /* enable I2C bus 3 */
31 #define CONFIG_SYS_I2C_SPEED            100000
32 #define CONFIG_I2C_EDID
33
34 /* MMC Configs */
35 #define CONFIG_SYS_FSL_ESDHC_ADDR      0
36 #define CONFIG_SYS_FSL_USDHC_NUM       2
37
38 /*
39  * SATA Configs
40  */
41 #ifdef CONFIG_CMD_SATA
42 #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
46 #endif
47
48 #define CONFIG_FEC_MXC
49 #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
53
54 /* USB Configs */
55 #define CONFIG_USB_MAX_CONTROLLER_COUNT 2
56 #define CONFIG_EHCI_HCD_INIT_AFTER_RESET        /* For OTG port */
57 #define CONFIG_MXC_USB_PORTSC   (PORT_PTS_UTMI | PORT_PTS_PTW)
58 #define CONFIG_MXC_USB_FLAGS    0
59
60 /* Framebuffer and LCD */
61 #define CONFIG_VIDEO_BMP_RLE8
62 #define CONFIG_SPLASH_SCREEN
63 #define CONFIG_SPLASH_SCREEN_ALIGN
64 #define CONFIG_VIDEO_BMP_GZIP
65 #define CONFIG_SYS_VIDEO_LOGO_MAX_SIZE (6 * 1024 * 1024)
66 #define CONFIG_BMP_16BPP
67 #define CONFIG_IMX_HDMI
68 #define CONFIG_IMX_VIDEO_SKIP
69
70 #define CONFIG_PREBOOT                 ""
71
72 #ifdef CONFIG_CMD_MMC
73 #define DISTRO_BOOT_DEV_MMC(func) func(MMC, mmc, 0) func(MMC, mmc, 1)
74 #else
75 #define DISTRO_BOOT_DEV_MMC(func)
76 #endif
77
78 #ifdef CONFIG_CMD_SATA
79 #define DISTRO_BOOT_DEV_SATA(func) func(SATA, sata, 0)
80 #else
81 #define DISTRO_BOOT_DEV_SATA(func)
82 #endif
83
84 #ifdef CONFIG_USB_STORAGE
85 #define DISTRO_BOOT_DEV_USB(func) func(USB, usb, 0)
86 #else
87 #define DISTRO_BOOT_DEV_USB(func)
88 #endif
89
90 #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
102
103 #if defined(CONFIG_SABRELITE)
104 #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
119 #define CONFIG_EXTRA_ENV_SETTINGS \
120         "console=ttymxc1\0" \
121         "fdt_high=0xffffffff\0" \
122         "initrd_high=0xffffffff\0" \
123         "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" \
130         "ip_dyn=yes\0" \
131         "usb_pgood_delay=2000\0" \
132         BOOTENV
133
134 /* Miscellaneous configurable options */
135 #define CONFIG_SYS_MEMTEST_START       0x10000000
136 #define CONFIG_SYS_MEMTEST_END         0x10010000
137 #define CONFIG_SYS_MEMTEST_SCRATCH     0x10800000
138
139 /* Physical Memory Map */
140 #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
151 /* Environment organization */
152 #define CONFIG_ENV_SIZE                 (8 * 1024)
153
154 #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)
160 #endif
161
162 /*
163  * PCI express
164  */
165 #ifdef CONFIG_CMD_PCI
166 #define CONFIG_PCI_SCAN_SHOW
167 #define CONFIG_PCIE_IMX
168 #endif
169
170 #endif         /* __CONFIG_H */