]>
Commit | Line | Data |
---|---|---|
64a93860 MV |
1 | /* |
2 | * Copyright (C) 2013 Marek Vasut <[email protected]> | |
3 | * | |
3765b3e7 | 4 | * SPDX-License-Identifier: GPL-2.0+ |
64a93860 | 5 | */ |
5434caf5 MV |
6 | #ifndef __CONFIGS_MX23_OLINUXINO_H__ |
7 | #define __CONFIGS_MX23_OLINUXINO_H__ | |
64a93860 | 8 | |
5434caf5 | 9 | /* System configurations */ |
2feae93a | 10 | #define CONFIG_MX23 /* i.MX23 SoC */ |
2feae93a | 11 | #define CONFIG_MACH_TYPE 4105 |
64a93860 | 12 | |
5434caf5 | 13 | /* U-Boot Commands */ |
2feae93a | 14 | #define CONFIG_SYS_NO_FLASH |
64a93860 | 15 | #include <config_cmd_default.h> |
2feae93a OS |
16 | #define CONFIG_DISPLAY_CPUINFO |
17 | #define CONFIG_DOS_PARTITION | |
18 | ||
19 | #define CONFIG_CMD_CACHE | |
20 | #define CONFIG_CMD_DHCP | |
21 | #define CONFIG_CMD_EXT2 | |
22 | #define CONFIG_CMD_FAT | |
23 | #define CONFIG_CMD_GPIO | |
24 | #define CONFIG_CMD_LED | |
25 | #define CONFIG_CMD_MMC | |
26 | #define CONFIG_CMD_NET | |
27 | #define CONFIG_CMD_USB | |
64a93860 | 28 | |
5434caf5 | 29 | /* Memory configuration */ |
2feae93a OS |
30 | #define CONFIG_NR_DRAM_BANKS 1 /* 1 bank of DRAM */ |
31 | #define PHYS_SDRAM_1 0x40000000 /* Base address */ | |
32 | #define PHYS_SDRAM_1_SIZE 0x08000000 /* Max 128 MB RAM */ | |
2feae93a | 33 | #define CONFIG_SYS_SDRAM_BASE PHYS_SDRAM_1 |
64a93860 | 34 | |
5434caf5 MV |
35 | /* Environment */ |
36 | #define CONFIG_ENV_IS_IN_MMC | |
37 | #define CONFIG_ENV_OVERWRITE | |
64a93860 | 38 | |
5434caf5 MV |
39 | /* Environment is in MMC */ |
40 | #if defined(CONFIG_CMD_MMC) && defined(CONFIG_ENV_IS_IN_MMC) | |
41 | #define CONFIG_ENV_OFFSET (256 * 1024) | |
42 | #define CONFIG_ENV_SIZE (16 * 1024) | |
43 | #define CONFIG_SYS_MMC_ENV_DEV 0 | |
44 | #endif | |
64a93860 | 45 | |
5434caf5 | 46 | /* Status LED */ |
2feae93a OS |
47 | #define CONFIG_STATUS_LED |
48 | #define CONFIG_GPIO_LED | |
49 | #define CONFIG_BOARD_SPECIFIC_LED | |
5434caf5 MV |
50 | #define STATUS_LED_BOOT 0 |
51 | #define STATUS_LED_BIT MX23_PAD_SSP1_DETECT__GPIO_2_1 | |
2feae93a OS |
52 | #define STATUS_LED_STATE STATUS_LED_ON |
53 | #define STATUS_LED_PERIOD (CONFIG_SYS_HZ / 2) | |
36c7c925 | 54 | |
ebe1d170 | 55 | /* USB */ |
2feae93a | 56 | #ifdef CONFIG_CMD_USB |
2feae93a OS |
57 | #define CONFIG_EHCI_MXS_PORT0 |
58 | #define CONFIG_USB_MAX_CONTROLLER_COUNT 1 | |
2feae93a | 59 | #define CONFIG_USB_STORAGE |
ebe1d170 OS |
60 | #endif |
61 | ||
b8bd75af | 62 | /* Ethernet */ |
2feae93a OS |
63 | #ifdef CONFIG_CMD_NET |
64 | #define CONFIG_USB_HOST_ETHER | |
65 | #define CONFIG_USB_ETHER_SMSC95XX | |
b8bd75af OS |
66 | #endif |
67 | ||
5434caf5 | 68 | /* Booting Linux */ |
2feae93a OS |
69 | #define CONFIG_BOOTDELAY 3 |
70 | #define CONFIG_BOOTFILE "uImage" | |
71 | #define CONFIG_LOADADDR 0x42000000 | |
72 | #define CONFIG_SYS_LOAD_ADDR CONFIG_LOADADDR | |
64a93860 | 73 | |
5434caf5 | 74 | /* Extra Environment */ |
38fc15d8 OS |
75 | #define CONFIG_EXTRA_ENV_SETTINGS \ |
76 | "update_sd_firmware_filename=u-boot.sd\0" \ | |
77 | "update_sd_firmware=" /* Update the SD firmware partition */ \ | |
78 | "if mmc rescan ; then " \ | |
79 | "if tftp ${update_sd_firmware_filename} ; then " \ | |
80 | "setexpr fw_sz ${filesize} / 0x200 ; " /* SD block size */ \ | |
81 | "setexpr fw_sz ${fw_sz} + 1 ; " \ | |
82 | "mmc write ${loadaddr} 0x800 ${fw_sz} ; " \ | |
83 | "fi ; " \ | |
84 | "fi\0" \ | |
85 | "script=boot.scr\0" \ | |
86 | "uimage=uImage\0" \ | |
87 | "console=ttyAMA0\0" \ | |
88 | "fdt_file=imx23-olinuxino.dtb\0" \ | |
89 | "fdt_addr=0x41000000\0" \ | |
90 | "boot_fdt=try\0" \ | |
b8bd75af | 91 | "ip_dyn=yes\0" \ |
38fc15d8 OS |
92 | "mmcdev=0\0" \ |
93 | "mmcpart=2\0" \ | |
94 | "mmcroot=/dev/mmcblk0p3 rw rootwait\0" \ | |
95 | "mmcargs=setenv bootargs console=${console},${baudrate} " \ | |
96 | "root=${mmcroot}\0" \ | |
97 | "loadbootscript=" \ | |
98 | "fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${script};\0" \ | |
99 | "bootscript=echo Running bootscript from mmc ...; " \ | |
100 | "source\0" \ | |
101 | "loaduimage=fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${uimage}\0" \ | |
102 | "loadfdt=fatload mmc ${mmcdev}:${mmcpart} ${fdt_addr} ${fdt_file}\0" \ | |
103 | "mmcboot=echo Booting from mmc ...; " \ | |
104 | "run mmcargs; " \ | |
105 | "if test ${boot_fdt} = yes || test ${boot_fdt} = try; then " \ | |
106 | "if run loadfdt; then " \ | |
107 | "bootm ${loadaddr} - ${fdt_addr}; " \ | |
108 | "else " \ | |
109 | "if test ${boot_fdt} = try; then " \ | |
110 | "bootm; " \ | |
111 | "else " \ | |
112 | "echo WARN: Cannot load the DT; " \ | |
113 | "fi; " \ | |
114 | "fi; " \ | |
115 | "else " \ | |
116 | "bootm; " \ | |
b8bd75af | 117 | "fi;\0" \ |
50cea244 | 118 | "netargs=setenv bootargs console=${console},${baudrate} " \ |
b8bd75af OS |
119 | "root=/dev/nfs " \ |
120 | "ip=dhcp nfsroot=${serverip}:${nfsroot},v3,tcp\0" \ | |
121 | "netboot=echo Booting from net ...; " \ | |
122 | "usb start; " \ | |
123 | "run netargs; " \ | |
124 | "if test ${ip_dyn} = yes; then " \ | |
125 | "setenv get_cmd dhcp; " \ | |
126 | "else " \ | |
127 | "setenv get_cmd tftp; " \ | |
128 | "fi; " \ | |
129 | "${get_cmd} ${uimage}; " \ | |
130 | "if test ${boot_fdt} = yes; then " \ | |
131 | "if ${get_cmd} ${fdt_addr} ${fdt_file}; then " \ | |
132 | "bootm ${loadaddr} - ${fdt_addr}; " \ | |
133 | "else " \ | |
134 | "if test ${boot_fdt} = try; then " \ | |
135 | "bootm; " \ | |
136 | "else " \ | |
137 | "echo WARN: Cannot load the DT; " \ | |
138 | "fi;" \ | |
139 | "fi; " \ | |
140 | "else " \ | |
141 | "bootm; " \ | |
38fc15d8 OS |
142 | "fi;\0" |
143 | ||
144 | #define CONFIG_BOOTCOMMAND \ | |
145 | "mmc dev ${mmcdev}; if mmc rescan; then " \ | |
146 | "if run loadbootscript; then " \ | |
147 | "run bootscript; " \ | |
148 | "else " \ | |
149 | "if run loaduimage; then " \ | |
150 | "run mmcboot; " \ | |
b8bd75af | 151 | "else run netboot; " \ |
38fc15d8 OS |
152 | "fi; " \ |
153 | "fi; " \ | |
b8bd75af | 154 | "else run netboot; fi" |
38fc15d8 | 155 | |
5434caf5 MV |
156 | /* The rest of the configuration is shared */ |
157 | #include <configs/mxs.h> | |
158 | ||
159 | #endif /* __CONFIGS_MX23_OLINUXINO_H__ */ |