Tom Rini | 10e4779 | 2018-05-06 17:58:06 -0400 | [diff] [blame] | 1 | /* SPDX-License-Identifier: GPL-2.0+ */ |
Sanchayan Maity | cc4d78f | 2015-04-15 16:24:26 +0530 | [diff] [blame] | 2 | /* |
Marcel Ziswiler | 510c2dd | 2019-03-25 17:25:01 +0100 | [diff] [blame] | 3 | * Copyright 2015-2019 Toradex, Inc. |
Sanchayan Maity | cc4d78f | 2015-04-15 16:24:26 +0530 | [diff] [blame] | 4 | * |
Marcel Ziswiler | d92dee5 | 2016-11-16 17:49:23 +0100 | [diff] [blame] | 5 | * Configuration settings for the Toradex VF50/VF61 modules. |
Sanchayan Maity | cc4d78f | 2015-04-15 16:24:26 +0530 | [diff] [blame] | 6 | * |
| 7 | * Based on vf610twr.h: |
| 8 | * Copyright 2013 Freescale Semiconductor, Inc. |
Sanchayan Maity | cc4d78f | 2015-04-15 16:24:26 +0530 | [diff] [blame] | 9 | */ |
| 10 | |
| 11 | #ifndef __CONFIG_H |
| 12 | #define __CONFIG_H |
| 13 | |
| 14 | #include <asm/arch/imx-regs.h> |
Marcel Ziswiler | 2e3b3d5 | 2019-03-25 17:25:02 +0100 | [diff] [blame] | 15 | #include <linux/sizes.h> |
Sanchayan Maity | cc4d78f | 2015-04-15 16:24:26 +0530 | [diff] [blame] | 16 | |
Gong Qianyu | 52de2e5 | 2015-10-26 19:47:42 +0800 | [diff] [blame] | 17 | #define CONFIG_SYS_FSL_CLK |
Sanchayan Maity | cc4d78f | 2015-04-15 16:24:26 +0530 | [diff] [blame] | 18 | |
Sanchayan Maity | cc4d78f | 2015-04-15 16:24:26 +0530 | [diff] [blame] | 19 | #define CONFIG_SKIP_LOWLEVEL_INIT |
| 20 | |
Stefan Agner | 1301175 | 2017-04-11 11:12:14 +0530 | [diff] [blame] | 21 | #ifdef CONFIG_VIDEO_FSL_DCU_FB |
Stefan Agner | 1301175 | 2017-04-11 11:12:14 +0530 | [diff] [blame] | 22 | #define CONFIG_SPLASH_SCREEN_ALIGN |
| 23 | #define CONFIG_VIDEO_LOGO |
| 24 | #define CONFIG_VIDEO_BMP_LOGO |
| 25 | #define CONFIG_SYS_FSL_DCU_LE |
| 26 | |
| 27 | #define CONFIG_SYS_DCU_ADDR DCU0_BASE_ADDR |
| 28 | #define DCU_LAYER_MAX_NUM 64 |
| 29 | #endif |
| 30 | |
Sanchayan Maity | cc4d78f | 2015-04-15 16:24:26 +0530 | [diff] [blame] | 31 | /* Size of malloc() pool */ |
Marcel Ziswiler | 2e3b3d5 | 2019-03-25 17:25:02 +0100 | [diff] [blame] | 32 | #define CONFIG_SYS_MALLOC_LEN (CONFIG_ENV_SIZE + 2 * SZ_1M) |
Sanchayan Maity | cc4d78f | 2015-04-15 16:24:26 +0530 | [diff] [blame] | 33 | |
Sanchayan Maity | cc4d78f | 2015-04-15 16:24:26 +0530 | [diff] [blame] | 34 | /* Allow to overwrite serial and ethaddr */ |
| 35 | #define CONFIG_ENV_OVERWRITE |
Sanchayan Maity | cc4d78f | 2015-04-15 16:24:26 +0530 | [diff] [blame] | 36 | |
| 37 | /* NAND support */ |
Stefan Agner | 4ce682a | 2015-05-08 19:07:13 +0200 | [diff] [blame] | 38 | #define CONFIG_SYS_NAND_ONFI_DETECTION |
Sanchayan Maity | cc4d78f | 2015-04-15 16:24:26 +0530 | [diff] [blame] | 39 | #define CONFIG_SYS_MAX_NAND_DEVICE 1 |
Sanchayan Maity | cc4d78f | 2015-04-15 16:24:26 +0530 | [diff] [blame] | 40 | |
| 41 | #define CONFIG_IPADDR 192.168.10.2 |
| 42 | #define CONFIG_NETMASK 255.255.255.0 |
| 43 | #define CONFIG_SERVERIP 192.168.10.1 |
| 44 | |
Sanchayan Maity | cc4d78f | 2015-04-15 16:24:26 +0530 | [diff] [blame] | 45 | #define CONFIG_LOADADDR 0x80008000 |
| 46 | #define CONFIG_FDTADDR 0x84000000 |
| 47 | |
| 48 | /* We boot from the gfxRAM area of the OCRAM. */ |
Stefan Agner | 1faaa3c | 2017-10-17 13:59:19 +0200 | [diff] [blame] | 49 | #define CONFIG_BOARD_SIZE_LIMIT 520192 |
Sanchayan Maity | cc4d78f | 2015-04-15 16:24:26 +0530 | [diff] [blame] | 50 | |
Stefan Agner | c059483 | 2019-03-25 17:25:03 +0100 | [diff] [blame] | 51 | #define MEM_LAYOUT_ENV_SETTINGS \ |
| 52 | "bootm_size=0x10000000\0" \ |
| 53 | "fdt_addr_r=0x82000000\0" \ |
Stefan Agner | c059483 | 2019-03-25 17:25:03 +0100 | [diff] [blame] | 54 | "kernel_addr_r=0x81000000\0" \ |
| 55 | "pxefile_addr_r=0x87100000\0" \ |
| 56 | "ramdisk_addr_r=0x82100000\0" \ |
| 57 | "scriptaddr=0x87000000\0" |
Sanchayan Maity | cc4d78f | 2015-04-15 16:24:26 +0530 | [diff] [blame] | 58 | |
Igor Opaniuk | af80e15 | 2019-12-09 12:33:32 +0200 | [diff] [blame] | 59 | #define UBOOT_UPDATE \ |
| 60 | "update_uboot=nand erase.part u-boot && " \ |
| 61 | "nand write ${loadaddr} u-boot ${filesize}\0" \ |
| 62 | |
Sanchayan Maity | cc4d78f | 2015-04-15 16:24:26 +0530 | [diff] [blame] | 63 | #define NFS_BOOTCMD \ |
| 64 | "nfsargs=ip=:::::eth0: root=/dev/nfs\0" \ |
| 65 | "nfsboot=run setup; " \ |
| 66 | "setenv bootargs ${defargs} ${nfsargs} ${mtdparts} " \ |
| 67 | "${setupargs} ${vidargs}; echo Booting from NFS...;" \ |
| 68 | "dhcp ${kernel_addr_r} && " \ |
| 69 | "tftp ${fdt_addr_r} ${soc}-colibri-${fdt_board}.dtb && " \ |
Sanchayan Maity | a48b427 | 2016-12-02 14:28:27 +0530 | [diff] [blame] | 70 | "run fdt_fixup && bootz ${kernel_addr_r} - ${fdt_addr_r}\0" \ |
Sanchayan Maity | cc4d78f | 2015-04-15 16:24:26 +0530 | [diff] [blame] | 71 | |
Stefan Agner | c059483 | 2019-03-25 17:25:03 +0100 | [diff] [blame] | 72 | #define SD_BOOTCMD \ |
Igor Opaniuk | 81a8756 | 2019-05-29 13:00:41 +0300 | [diff] [blame] | 73 | "set_sdargs=setenv sdargs root=PARTUUID=${uuid} ro rootwait\0" \ |
| 74 | "sdboot=run setup; run sdfinduuid; run set_sdargs; " \ |
| 75 | "setenv bootargs ${defargs} ${sdargs} ${mtdparts} " \ |
Stefan Agner | c059483 | 2019-03-25 17:25:03 +0100 | [diff] [blame] | 76 | "${setupargs} ${vidargs}; echo Booting from MMC/SD card...; " \ |
Igor Opaniuk | 81a8756 | 2019-05-29 13:00:41 +0300 | [diff] [blame] | 77 | "load mmc ${sddev}:${sdbootpart} ${kernel_addr_r} ${kernel_file} && " \ |
| 78 | "load mmc ${sddev}:${sdbootpart} ${fdt_addr_r} " \ |
| 79 | "${soc}-colibri-${fdt_board}.dtb && " \ |
Stefan Agner | c059483 | 2019-03-25 17:25:03 +0100 | [diff] [blame] | 80 | "run fdt_fixup && bootz ${kernel_addr_r} - ${fdt_addr_r}\0" \ |
Igor Opaniuk | 81a8756 | 2019-05-29 13:00:41 +0300 | [diff] [blame] | 81 | "sdbootpart=1\0" \ |
| 82 | "sddev=0\0" \ |
| 83 | "sdfinduuid=part uuid mmc ${sddev}:${sdrootpart} uuid\0" \ |
| 84 | "sdrootpart=2\0" |
| 85 | |
Stefan Agner | c059483 | 2019-03-25 17:25:03 +0100 | [diff] [blame] | 86 | |
| 87 | #define UBI_BOOTCMD \ |
Sanchayan Maity | cc4d78f | 2015-04-15 16:24:26 +0530 | [diff] [blame] | 88 | "ubiargs=ubi.mtd=ubi root=ubi0:rootfs rootfstype=ubifs " \ |
| 89 | "ubi.fm_autoconvert=1\0" \ |
| 90 | "ubiboot=run setup; " \ |
| 91 | "setenv bootargs ${defargs} ${ubiargs} ${mtdparts} " \ |
| 92 | "${setupargs} ${vidargs}; echo Booting from NAND...; " \ |
Sanchayan Maity | 27e4e10 | 2016-11-25 16:19:17 +0530 | [diff] [blame] | 93 | "ubi part ubi && " \ |
| 94 | "ubi read ${kernel_addr_r} kernel && " \ |
| 95 | "ubi read ${fdt_addr_r} dtb && " \ |
Sanchayan Maity | a48b427 | 2016-12-02 14:28:27 +0530 | [diff] [blame] | 96 | "run fdt_fixup && bootz ${kernel_addr_r} - ${fdt_addr_r}\0" \ |
Sanchayan Maity | cc4d78f | 2015-04-15 16:24:26 +0530 | [diff] [blame] | 97 | |
Stefan Agner | 7f411a5 | 2019-03-25 17:25:04 +0100 | [diff] [blame] | 98 | #define CONFIG_BOOTCOMMAND "run ubiboot; " \ |
| 99 | "setenv fdtfile ${soc}-colibri-${fdt_board}.dtb && run distro_bootcmd;" |
Stefan Agner | c059483 | 2019-03-25 17:25:03 +0100 | [diff] [blame] | 100 | |
| 101 | #define BOOT_TARGET_DEVICES(func) \ |
| 102 | func(MMC, mmc, 0) \ |
| 103 | func(USB, usb, 0) \ |
| 104 | func(DHCP, dhcp, na) |
| 105 | #include <config_distro_bootcmd.h> |
| 106 | #undef BOOTENV_RUN_NET_USB_START |
| 107 | #define BOOTENV_RUN_NET_USB_START "" |
Sanchayan Maity | cc4d78f | 2015-04-15 16:24:26 +0530 | [diff] [blame] | 108 | |
Sanchayan Maity | 7755e53 | 2015-04-17 18:56:42 +0530 | [diff] [blame] | 109 | #define DFU_ALT_NAND_INFO "vf-bcb part 0,1;u-boot part 0,2;ubi part 0,4" |
| 110 | |
Sanchayan Maity | cc4d78f | 2015-04-15 16:24:26 +0530 | [diff] [blame] | 111 | #define CONFIG_EXTRA_ENV_SETTINGS \ |
Stefan Agner | c059483 | 2019-03-25 17:25:03 +0100 | [diff] [blame] | 112 | BOOTENV \ |
| 113 | MEM_LAYOUT_ENV_SETTINGS \ |
| 114 | NFS_BOOTCMD \ |
| 115 | SD_BOOTCMD \ |
| 116 | UBI_BOOTCMD \ |
Igor Opaniuk | af80e15 | 2019-12-09 12:33:32 +0200 | [diff] [blame] | 117 | UBOOT_UPDATE \ |
Stefan Agner | c059483 | 2019-03-25 17:25:03 +0100 | [diff] [blame] | 118 | "console=ttyLP0\0" \ |
Stefan Agner | b093f0f | 2019-03-25 17:25:07 +0100 | [diff] [blame] | 119 | "defargs=user_debug=30\0" \ |
Stefan Agner | c059483 | 2019-03-25 17:25:03 +0100 | [diff] [blame] | 120 | "dfu_alt_info=" DFU_ALT_NAND_INFO "\0" \ |
Sanchayan Maity | cc4d78f | 2015-04-15 16:24:26 +0530 | [diff] [blame] | 121 | "fdt_board=eval-v3\0" \ |
Sanchayan Maity | a48b427 | 2016-12-02 14:28:27 +0530 | [diff] [blame] | 122 | "fdt_fixup=;\0" \ |
Stefan Agner | c059483 | 2019-03-25 17:25:03 +0100 | [diff] [blame] | 123 | "kernel_file=zImage\0" \ |
| 124 | "mtdparts=" CONFIG_MTDPARTS_DEFAULT "\0" \ |
Sanchayan Maity | cc4d78f | 2015-04-15 16:24:26 +0530 | [diff] [blame] | 125 | "setsdupdate=mmc rescan && set interface mmc && " \ |
Stefan Agner | c059483 | 2019-03-25 17:25:03 +0100 | [diff] [blame] | 126 | "fatload ${interface} 0:1 ${loadaddr} flash_blk.img && " \ |
| 127 | "source ${loadaddr}\0" \ |
| 128 | "setup=setenv setupargs console=tty1 console=${console}" \ |
| 129 | ",${baudrate}n8 ${memargs}\0" \ |
Sanchayan Maity | cc4d78f | 2015-04-15 16:24:26 +0530 | [diff] [blame] | 130 | "setupdate=run setsdupdate || run setusbupdate\0" \ |
Stefan Agner | c059483 | 2019-03-25 17:25:03 +0100 | [diff] [blame] | 131 | "setusbupdate=usb start && set interface usb && " \ |
| 132 | "fatload ${interface} 0:1 ${loadaddr} flash_blk.img && " \ |
| 133 | "source ${loadaddr}\0" \ |
Stefan Agner | 1301175 | 2017-04-11 11:12:14 +0530 | [diff] [blame] | 134 | "splashpos=m,m\0" \ |
Stefan Agner | c059483 | 2019-03-25 17:25:03 +0100 | [diff] [blame] | 135 | "video-mode=dcufb:640x480-16@60,monitor=lcd\0" |
Sanchayan Maity | cc4d78f | 2015-04-15 16:24:26 +0530 | [diff] [blame] | 136 | |
| 137 | /* Miscellaneous configurable options */ |
Sanchayan Maity | 0d92de4 | 2015-06-08 12:40:41 +0530 | [diff] [blame] | 138 | #define CONFIG_SYS_CBSIZE 1024 /* Console I/O Buffer Size */ |
Sanchayan Maity | cc4d78f | 2015-04-15 16:24:26 +0530 | [diff] [blame] | 139 | #define CONFIG_SYS_BARGSIZE CONFIG_SYS_CBSIZE |
| 140 | |
Sanchayan Maity | cc4d78f | 2015-04-15 16:24:26 +0530 | [diff] [blame] | 141 | #define CONFIG_SYS_LOAD_ADDR CONFIG_LOADADDR |
| 142 | #define CONFIG_SYS_HZ 1000 |
Sanchayan Maity | cc4d78f | 2015-04-15 16:24:26 +0530 | [diff] [blame] | 143 | |
Sanchayan Maity | cc4d78f | 2015-04-15 16:24:26 +0530 | [diff] [blame] | 144 | /* Physical memory map */ |
Sanchayan Maity | cc4d78f | 2015-04-15 16:24:26 +0530 | [diff] [blame] | 145 | #define PHYS_SDRAM (0x80000000) |
Marcel Ziswiler | 2e3b3d5 | 2019-03-25 17:25:02 +0100 | [diff] [blame] | 146 | #define PHYS_SDRAM_SIZE (256 * SZ_1M) |
Sanchayan Maity | cc4d78f | 2015-04-15 16:24:26 +0530 | [diff] [blame] | 147 | |
| 148 | #define CONFIG_SYS_SDRAM_BASE PHYS_SDRAM |
| 149 | #define CONFIG_SYS_INIT_RAM_ADDR IRAM_BASE_ADDR |
| 150 | #define CONFIG_SYS_INIT_RAM_SIZE IRAM_SIZE |
| 151 | |
| 152 | #define CONFIG_SYS_INIT_SP_OFFSET \ |
| 153 | (CONFIG_SYS_INIT_RAM_SIZE - GENERATED_GBL_DATA_SIZE) |
| 154 | #define CONFIG_SYS_INIT_SP_ADDR \ |
| 155 | (CONFIG_SYS_INIT_RAM_ADDR + CONFIG_SYS_INIT_SP_OFFSET) |
| 156 | |
| 157 | /* Environment organization */ |
Sanchayan Maity | cc4d78f | 2015-04-15 16:24:26 +0530 | [diff] [blame] | 158 | #ifdef CONFIG_ENV_IS_IN_NAND |
Sanchayan Maity | cc4d78f | 2015-04-15 16:24:26 +0530 | [diff] [blame] | 159 | #define CONFIG_ENV_RANGE (4 * 64 * 2048) |
Sanchayan Maity | cc4d78f | 2015-04-15 16:24:26 +0530 | [diff] [blame] | 160 | #endif |
| 161 | |
Sanchayan Maity | 7755e53 | 2015-04-17 18:56:42 +0530 | [diff] [blame] | 162 | /* USB Host Support */ |
Sanchayan Maity | 7755e53 | 2015-04-17 18:56:42 +0530 | [diff] [blame] | 163 | #define CONFIG_USB_MAX_CONTROLLER_COUNT 2 |
| 164 | #define CONFIG_EHCI_HCD_INIT_AFTER_RESET |
| 165 | |
Sanchayan Maity | 7755e53 | 2015-04-17 18:56:42 +0530 | [diff] [blame] | 166 | /* USB DFU */ |
Marcel Ziswiler | 2e3b3d5 | 2019-03-25 17:25:02 +0100 | [diff] [blame] | 167 | #define CONFIG_SYS_DFU_DATA_BUF_SIZE (SZ_1M) |
Sanchayan Maity | 7755e53 | 2015-04-17 18:56:42 +0530 | [diff] [blame] | 168 | |
Sanchayan Maity | cc4d78f | 2015-04-15 16:24:26 +0530 | [diff] [blame] | 169 | #endif /* __CONFIG_H */ |