]>
Commit | Line | Data |
---|---|---|
64a93860 MV |
1 | /* |
2 | * Copyright (C) 2013 Marek Vasut <marex@denx.de> | |
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 | |
5434caf5 | 15 | /* Memory configuration */ |
2feae93a OS |
16 | #define CONFIG_NR_DRAM_BANKS 1 /* 1 bank of DRAM */ |
17 | #define PHYS_SDRAM_1 0x40000000 /* Base address */ | |
18 | #define PHYS_SDRAM_1_SIZE 0x08000000 /* Max 128 MB RAM */ | |
2feae93a | 19 | #define CONFIG_SYS_SDRAM_BASE PHYS_SDRAM_1 |
64a93860 | 20 | |
5434caf5 | 21 | /* Environment */ |
5434caf5 | 22 | #define CONFIG_ENV_OVERWRITE |
64a93860 | 23 | |
5434caf5 MV |
24 | /* Environment is in MMC */ |
25 | #if defined(CONFIG_CMD_MMC) && defined(CONFIG_ENV_IS_IN_MMC) | |
26 | #define CONFIG_ENV_OFFSET (256 * 1024) | |
27 | #define CONFIG_ENV_SIZE (16 * 1024) | |
28 | #define CONFIG_SYS_MMC_ENV_DEV 0 | |
29 | #endif | |
64a93860 | 30 | |
5434caf5 | 31 | /* Status LED */ |
36c7c925 | 32 | |
ebe1d170 | 33 | /* USB */ |
2feae93a | 34 | #ifdef CONFIG_CMD_USB |
2feae93a OS |
35 | #define CONFIG_EHCI_MXS_PORT0 |
36 | #define CONFIG_USB_MAX_CONTROLLER_COUNT 1 | |
ebe1d170 OS |
37 | #endif |
38 | ||
b8bd75af | 39 | /* Ethernet */ |
b8bd75af | 40 | |
5434caf5 | 41 | /* Booting Linux */ |
2feae93a OS |
42 | #define CONFIG_BOOTFILE "uImage" |
43 | #define CONFIG_LOADADDR 0x42000000 | |
44 | #define CONFIG_SYS_LOAD_ADDR CONFIG_LOADADDR | |
64a93860 | 45 | |
5434caf5 | 46 | /* Extra Environment */ |
38fc15d8 OS |
47 | #define CONFIG_EXTRA_ENV_SETTINGS \ |
48 | "update_sd_firmware_filename=u-boot.sd\0" \ | |
49 | "update_sd_firmware=" /* Update the SD firmware partition */ \ | |
50 | "if mmc rescan ; then " \ | |
51 | "if tftp ${update_sd_firmware_filename} ; then " \ | |
52 | "setexpr fw_sz ${filesize} / 0x200 ; " /* SD block size */ \ | |
53 | "setexpr fw_sz ${fw_sz} + 1 ; " \ | |
54 | "mmc write ${loadaddr} 0x800 ${fw_sz} ; " \ | |
55 | "fi ; " \ | |
56 | "fi\0" \ | |
57 | "script=boot.scr\0" \ | |
58 | "uimage=uImage\0" \ | |
59 | "console=ttyAMA0\0" \ | |
60 | "fdt_file=imx23-olinuxino.dtb\0" \ | |
61 | "fdt_addr=0x41000000\0" \ | |
62 | "boot_fdt=try\0" \ | |
b8bd75af | 63 | "ip_dyn=yes\0" \ |
38fc15d8 OS |
64 | "mmcdev=0\0" \ |
65 | "mmcpart=2\0" \ | |
66 | "mmcroot=/dev/mmcblk0p3 rw rootwait\0" \ | |
67 | "mmcargs=setenv bootargs console=${console},${baudrate} " \ | |
68 | "root=${mmcroot}\0" \ | |
69 | "loadbootscript=" \ | |
70 | "fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${script};\0" \ | |
71 | "bootscript=echo Running bootscript from mmc ...; " \ | |
72 | "source\0" \ | |
73 | "loaduimage=fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${uimage}\0" \ | |
74 | "loadfdt=fatload mmc ${mmcdev}:${mmcpart} ${fdt_addr} ${fdt_file}\0" \ | |
75 | "mmcboot=echo Booting from mmc ...; " \ | |
76 | "run mmcargs; " \ | |
77 | "if test ${boot_fdt} = yes || test ${boot_fdt} = try; then " \ | |
78 | "if run loadfdt; then " \ | |
79 | "bootm ${loadaddr} - ${fdt_addr}; " \ | |
80 | "else " \ | |
81 | "if test ${boot_fdt} = try; then " \ | |
82 | "bootm; " \ | |
83 | "else " \ | |
84 | "echo WARN: Cannot load the DT; " \ | |
85 | "fi; " \ | |
86 | "fi; " \ | |
87 | "else " \ | |
88 | "bootm; " \ | |
b8bd75af | 89 | "fi;\0" \ |
50cea244 | 90 | "netargs=setenv bootargs console=${console},${baudrate} " \ |
b8bd75af OS |
91 | "root=/dev/nfs " \ |
92 | "ip=dhcp nfsroot=${serverip}:${nfsroot},v3,tcp\0" \ | |
93 | "netboot=echo Booting from net ...; " \ | |
94 | "usb start; " \ | |
95 | "run netargs; " \ | |
96 | "if test ${ip_dyn} = yes; then " \ | |
97 | "setenv get_cmd dhcp; " \ | |
98 | "else " \ | |
99 | "setenv get_cmd tftp; " \ | |
100 | "fi; " \ | |
101 | "${get_cmd} ${uimage}; " \ | |
102 | "if test ${boot_fdt} = yes; then " \ | |
103 | "if ${get_cmd} ${fdt_addr} ${fdt_file}; then " \ | |
104 | "bootm ${loadaddr} - ${fdt_addr}; " \ | |
105 | "else " \ | |
106 | "if test ${boot_fdt} = try; then " \ | |
107 | "bootm; " \ | |
108 | "else " \ | |
109 | "echo WARN: Cannot load the DT; " \ | |
110 | "fi;" \ | |
111 | "fi; " \ | |
112 | "else " \ | |
113 | "bootm; " \ | |
38fc15d8 OS |
114 | "fi;\0" |
115 | ||
116 | #define CONFIG_BOOTCOMMAND \ | |
117 | "mmc dev ${mmcdev}; if mmc rescan; then " \ | |
118 | "if run loadbootscript; then " \ | |
119 | "run bootscript; " \ | |
120 | "else " \ | |
121 | "if run loaduimage; then " \ | |
122 | "run mmcboot; " \ | |
b8bd75af | 123 | "else run netboot; " \ |
38fc15d8 OS |
124 | "fi; " \ |
125 | "fi; " \ | |
b8bd75af | 126 | "else run netboot; fi" |
38fc15d8 | 127 | |
5434caf5 MV |
128 | /* The rest of the configuration is shared */ |
129 | #include <configs/mxs.h> | |
130 | ||
131 | #endif /* __CONFIGS_MX23_OLINUXINO_H__ */ |