]>
Commit | Line | Data |
---|---|---|
f38f5f4b MZ |
1 | /* |
2 | * Copyright (c) 2017 Toradex, Inc. | |
3 | * | |
4 | * Configuration settings for the Toradex Apalis TK1 modules. | |
5 | * | |
6 | * SPDX-License-Identifier: GPL-2.0+ | |
7 | */ | |
8 | ||
9 | #ifndef __CONFIG_H | |
10 | #define __CONFIG_H | |
11 | ||
12 | #include <linux/sizes.h> | |
13 | ||
f38f5f4b MZ |
14 | #include "tegra124-common.h" |
15 | ||
16 | #define CONFIG_ARCH_MISC_INIT | |
17 | ||
18 | /* High-level configuration options */ | |
19 | #define CONFIG_DISPLAY_BOARDINFO_LATE /* Calls show_board_info() */ | |
20 | ||
21 | /* Board-specific serial config */ | |
22 | #define CONFIG_TEGRA_ENABLE_UARTA | |
23 | #define CONFIG_SYS_NS16550_COM1 NV_PA_APB_UARTA_BASE | |
24 | ||
25 | /* I2C */ | |
26 | #define CONFIG_SYS_I2C_TEGRA | |
27 | ||
28 | /* SD/MMC support */ | |
29 | #define CONFIG_SUPPORT_EMMC_BOOT /* eMMC specific */ | |
30 | ||
31 | /* Environment in eMMC, before config block at the end of 1st "boot sector" */ | |
32 | #define CONFIG_ENV_IS_IN_MMC | |
33 | #define CONFIG_ENV_OFFSET (-CONFIG_ENV_SIZE + \ | |
34 | CONFIG_TDX_CFG_BLOCK_OFFSET) | |
35 | #define CONFIG_SYS_MMC_ENV_DEV 0 | |
36 | #define CONFIG_SYS_MMC_ENV_PART 1 | |
37 | ||
38 | /* USB host support */ | |
39 | #define CONFIG_USB_EHCI | |
40 | #define CONFIG_USB_EHCI_TEGRA | |
41 | ||
42 | /* PCI host support */ | |
43 | #undef CONFIG_PCI_SCAN_SHOW | |
44 | #define CONFIG_CMD_PCI | |
45 | ||
46 | /* PCI networking support */ | |
47 | #define CONFIG_E1000_NO_NVM | |
48 | ||
49 | /* General networking support */ | |
50 | #define CONFIG_IP_DEFRAG | |
51 | #define CONFIG_TFTP_BLOCKSIZE 16352 | |
52 | #define CONFIG_TFTP_TSIZE | |
53 | ||
54 | /* Miscellaneous commands */ | |
55 | #define CONFIG_FAT_WRITE | |
56 | ||
57 | #undef CONFIG_IPADDR | |
58 | #define CONFIG_IPADDR 192.168.10.2 | |
59 | #define CONFIG_NETMASK 255.255.255.0 | |
60 | #undef CONFIG_SERVERIP | |
61 | #define CONFIG_SERVERIP 192.168.10.1 | |
62 | ||
63 | #define CONFIG_BOOTCOMMAND \ | |
64 | "run emmcboot; setenv fdtfile ${soc}-apalis-${fdt_board}.dtb && " \ | |
65 | "run distro_bootcmd" | |
66 | ||
67 | #define DFU_ALT_EMMC_INFO "apalis-tk1.img raw 0x0 0x500 mmcpart 1; " \ | |
68 | "boot part 0 1 mmcpart 0; " \ | |
69 | "rootfs part 0 2 mmcpart 0; " \ | |
70 | "uImage fat 0 1 mmcpart 0; " \ | |
71 | "tegra124-apalis-eval.dtb fat 0 1 mmcpart 0" | |
72 | ||
73 | #define EMMC_BOOTCMD \ | |
74 | "emmcargs=ip=off root=/dev/mmcblk0p2 rw rootfstype=ext3 rootwait\0" \ | |
75 | "emmcboot=run setup; setenv bootargs ${defargs} ${emmcargs} " \ | |
76 | "${setupargs} ${vidargs}; echo Booting from internal eMMC " \ | |
77 | "chip...; run emmcdtbload; load mmc 0:1 ${kernel_addr_r} " \ | |
78 | "${boot_file} && run fdt_fixup && " \ | |
79 | "bootm ${kernel_addr_r} - ${dtbparam}\0" \ | |
80 | "emmcdtbload=setenv dtbparam; load mmc 0:1 ${fdt_addr_r} " \ | |
81 | "${soc}-apalis-${fdt_board}.dtb && " \ | |
82 | "setenv dtbparam ${fdt_addr_r}\0" | |
83 | ||
84 | #define NFS_BOOTCMD \ | |
85 | "nfsargs=ip=:::::eth0:on root=/dev/nfs rw\0" \ | |
86 | "nfsboot=pci enum; run setup; setenv bootargs ${defargs} ${nfsargs} " \ | |
87 | "${setupargs} ${vidargs}; echo Booting via DHCP/TFTP/NFS...; " \ | |
88 | "run nfsdtbload; dhcp ${kernel_addr_r} " \ | |
89 | "&& run fdt_fixup && bootm ${kernel_addr_r} - ${dtbparam}\0" \ | |
90 | "nfsdtbload=setenv dtbparam; tftp ${fdt_addr_r} " \ | |
91 | "${soc}-apalis-${fdt_board}.dtb " \ | |
92 | "&& setenv dtbparam ${fdt_addr_r}\0" | |
93 | ||
94 | #define SD_BOOTCMD \ | |
95 | "sdargs=ip=off root=/dev/mmcblk1p2 rw rootfstype=ext3 rootwait\0" \ | |
96 | "sdboot=run setup; setenv bootargs ${defargs} ${sdargs} ${setupargs} " \ | |
97 | "${vidargs}; echo Booting from SD card in 8bit slot...; " \ | |
98 | "run sddtbload; load mmc 1:1 ${kernel_addr_r} " \ | |
99 | "${boot_file} && run fdt_fixup && " \ | |
100 | "bootm ${kernel_addr_r} - ${dtbparam}\0" \ | |
101 | "sddtbload=setenv dtbparam; load mmc 1:1 ${fdt_addr_r} " \ | |
102 | "${soc}-apalis-${fdt_board}.dtb " \ | |
103 | "&& setenv dtbparam ${fdt_addr_r}\0" | |
104 | ||
105 | #define USB_BOOTCMD \ | |
106 | "usbargs=ip=off root=/dev/sda2 rw rootfstype=ext3 rootwait\0" \ | |
107 | "usbboot=run setup; setenv bootargs ${defargs} ${setupargs} " \ | |
108 | "${usbargs} ${vidargs}; echo Booting from USB stick...; " \ | |
109 | "usb start && run usbdtbload; load usb 0:1 ${kernel_addr_r} " \ | |
110 | "${boot_file} && run fdt_fixup && " \ | |
111 | "bootm ${kernel_addr_r} - ${dtbparam}\0" \ | |
112 | "usbdtbload=setenv dtbparam; load usb 0:1 ${fdt_addr_r} " \ | |
113 | "${soc}-apalis-${fdt_board}.dtb " \ | |
114 | "&& setenv dtbparam ${fdt_addr_r}\0" | |
115 | ||
116 | #define BOARD_EXTRA_ENV_SETTINGS \ | |
117 | "boot_file=uImage\0" \ | |
118 | "console=ttyS0\0" \ | |
119 | "defargs=lp0_vec=2064@0xf46ff000 core_edp_mv=1150 core_edp_ma=4000 " \ | |
120 | "usb_port_owner_info=2 lane_owner_info=6 emc_max_dvfs=0\0" \ | |
121 | "dfu_alt_info=" DFU_ALT_EMMC_INFO "\0" \ | |
122 | EMMC_BOOTCMD \ | |
123 | "fdt_board=eval\0" \ | |
124 | "fdt_fixup=;\0" \ | |
125 | NFS_BOOTCMD \ | |
126 | SD_BOOTCMD \ | |
127 | "setethupdate=if env exists ethaddr; then; else setenv ethaddr " \ | |
128 | "00:14:2d:00:00:00; fi; pci enum && tftpboot ${loadaddr} " \ | |
129 | "flash_eth.img && source ${loadaddr}\0" \ | |
130 | "setsdupdate=setenv interface mmc; setenv drive 1; mmc rescan; " \ | |
131 | "load ${interface} ${drive}:1 ${loadaddr} flash_blk.img " \ | |
132 | "|| setenv drive 2; mmc rescan; load ${interface} ${drive}:1 " \ | |
133 | "${loadaddr} flash_blk.img && " \ | |
134 | "source ${loadaddr}\0" \ | |
135 | "setup=setenv setupargs igb_mac=${ethaddr} " \ | |
136 | "consoleblank=0 no_console_suspend=1 console=tty1 " \ | |
137 | "console=${console},${baudrate}n8 debug_uartport=lsport,0 " \ | |
138 | "${memargs}\0" \ | |
139 | "setupdate=run setsdupdate || run setusbupdate || run setethupdate\0" \ | |
140 | "setusbupdate=usb start && setenv interface usb; setenv drive 0; " \ | |
141 | "load ${interface} ${drive}:1 ${loadaddr} flash_blk.img && " \ | |
142 | "source ${loadaddr}\0" \ | |
143 | USB_BOOTCMD \ | |
144 | "vidargs=video=tegrafb0:640x480-16@60 fbcon=map:1\0" | |
145 | ||
146 | /* Increase console I/O buffer size */ | |
147 | #undef CONFIG_SYS_CBSIZE | |
148 | #define CONFIG_SYS_CBSIZE 1024 | |
149 | ||
150 | /* Increase arguments buffer size */ | |
151 | #undef CONFIG_SYS_BARGSIZE | |
152 | #define CONFIG_SYS_BARGSIZE CONFIG_SYS_CBSIZE | |
153 | ||
154 | /* Increase print buffer size */ | |
155 | #define CONFIG_SYS_PBSIZE (CONFIG_SYS_CBSIZE + sizeof(CONFIG_SYS_PROMPT) + 16) | |
156 | ||
157 | /* Increase maximum number of arguments */ | |
158 | #undef CONFIG_SYS_MAXARGS | |
159 | #define CONFIG_SYS_MAXARGS 32 | |
160 | ||
161 | #define CONFIG_CMD_TIME | |
162 | ||
163 | #define CONFIG_SUPPORT_RAW_INITRD | |
164 | #define CONFIG_SYS_BOOT_RAMDISK_HIGH | |
165 | ||
166 | #include "tegra-common-usb-gadget.h" | |
167 | #include "tegra-common-post.h" | |
168 | ||
169 | /* Reserve top 1M for secure RAM */ | |
170 | #define CONFIG_ARMV7_SECURE_BASE 0xfff00000 | |
171 | #define CONFIG_ARMV7_SECURE_RESERVE_SIZE 0x00100000 | |
172 | ||
173 | #endif /* __CONFIG_H */ |