Marek Behún | 80af1a9 | 2018-04-24 17:21:31 +0200 | [diff] [blame] | 1 | /* SPDX-License-Identifier: GPL-2.0+ */ |
| 2 | /* |
| 3 | * Copyright (C) 2018 Marek Behun <marek.behun@nic.cz> |
| 4 | * |
| 5 | * Based on mvebu_armada-37xx.h by Stefan Roese <sr@denx.de> |
| 6 | */ |
| 7 | |
| 8 | #ifndef _CONFIG_TURRIS_MOX_H |
| 9 | #define _CONFIG_TURRIS_MOX_H |
| 10 | |
Marek Behún | 7a6f60d | 2018-12-17 16:10:10 +0100 | [diff] [blame] | 11 | #define CONFIG_SYS_BOOTM_LEN (64 << 20) |
| 12 | |
Marek Behún | 80af1a9 | 2018-04-24 17:21:31 +0200 | [diff] [blame] | 13 | #define CONFIG_LAST_STAGE_INIT |
| 14 | |
| 15 | /* |
| 16 | * High Level Configuration Options (easy to change) |
| 17 | */ |
| 18 | #define CONFIG_DISPLAY_BOARDINFO_LATE |
| 19 | |
| 20 | /* additions for new ARM relocation support */ |
| 21 | #define CONFIG_SYS_SDRAM_BASE 0x00000000 |
| 22 | |
Marek Behún | 80af1a9 | 2018-04-24 17:21:31 +0200 | [diff] [blame] | 23 | /* auto boot */ |
Marek Behún | 80af1a9 | 2018-04-24 17:21:31 +0200 | [diff] [blame] | 24 | |
Pali Rohár | 7d9e9f5 | 2021-05-25 19:42:42 +0200 | [diff] [blame] | 25 | #define CONFIG_SYS_BAUDRATE_TABLE { 300, 600, 1200, 1800, 2400, 4800, \ |
| 26 | 9600, 19200, 38400, 57600, 115200, \ |
| 27 | 230400, 460800, 500000, 576000, \ |
| 28 | 921600, 1000000, 1152000, 1500000, \ |
| 29 | 2000000, 2500000, 3000000, 3500000, \ |
| 30 | 4000000, 4500000, 5000000, 5500000, \ |
| 31 | 6000000 } |
Marek Behún | 80af1a9 | 2018-04-24 17:21:31 +0200 | [diff] [blame] | 32 | |
| 33 | /* |
| 34 | * For booting Linux, the board info and command line data |
| 35 | * have to be in the first 8 MB of memory, since this is |
| 36 | * the maximum mapped by the Linux kernel during initialization. |
| 37 | */ |
| 38 | #define CONFIG_CMDLINE_TAG /* enable passing of ATAGs */ |
| 39 | #define CONFIG_INITRD_TAG /* enable INITRD tag */ |
| 40 | #define CONFIG_SETUP_MEMORY_TAGS /* enable memory tag */ |
| 41 | |
| 42 | #define CONFIG_SYS_CBSIZE 1024 /* Console I/O Buff Size */ |
| 43 | |
| 44 | /* |
| 45 | * Size of malloc() pool |
| 46 | */ |
| 47 | #define CONFIG_SYS_MALLOC_LEN (4 << 20) /* 4MiB for malloc() */ |
| 48 | |
| 49 | /* |
| 50 | * Other required minimal configurations |
| 51 | */ |
Marek Behún | 80af1a9 | 2018-04-24 17:21:31 +0200 | [diff] [blame] | 52 | #define CONFIG_SYS_LOAD_ADDR 0x00800000 /* default load adr- 8M */ |
Marek Behún | 80af1a9 | 2018-04-24 17:21:31 +0200 | [diff] [blame] | 53 | #define CONFIG_SYS_RESET_ADDRESS 0xffff0000 /* Rst Vector Adr */ |
| 54 | #define CONFIG_SYS_MAXARGS 32 /* max number of command args */ |
| 55 | |
Marek Behún | 80af1a9 | 2018-04-24 17:21:31 +0200 | [diff] [blame] | 56 | /* End of 16M scrubbed by training in bootrom */ |
| 57 | #define CONFIG_SYS_INIT_SP_ADDR (CONFIG_SYS_TEXT_BASE + 0xFF0000) |
| 58 | |
| 59 | /* |
| 60 | * I2C |
| 61 | */ |
| 62 | #define CONFIG_I2C_MV |
| 63 | #define CONFIG_SYS_I2C_SLAVE 0x0 |
| 64 | |
Marek Behún | 80af1a9 | 2018-04-24 17:21:31 +0200 | [diff] [blame] | 65 | /* Environment in SPI NOR flash */ |
Marek Behún | 80af1a9 | 2018-04-24 17:21:31 +0200 | [diff] [blame] | 66 | |
| 67 | /* |
| 68 | * Ethernet Driver configuration |
| 69 | */ |
Marek Behún | 80af1a9 | 2018-04-24 17:21:31 +0200 | [diff] [blame] | 70 | #define CONFIG_ARP_TIMEOUT 200 |
| 71 | #define CONFIG_NET_RETRY_COUNT 50 |
Marek Behún | 80af1a9 | 2018-04-24 17:21:31 +0200 | [diff] [blame] | 72 | |
| 73 | #define CONFIG_USB_MAX_CONTROLLER_COUNT (3 + 3) |
| 74 | |
| 75 | #define BOOT_TARGET_DEVICES(func) \ |
| 76 | func(MMC, mmc, 0) \ |
| 77 | func(USB, usb, 0) \ |
| 78 | func(PXE, pxe, na) \ |
| 79 | func(DHCP, dhcp, na) |
| 80 | |
| 81 | #include <config_distro_bootcmd.h> |
| 82 | |
Marek Behún | ec3784d | 2021-06-07 16:34:47 +0200 | [diff] [blame] | 83 | #define TURRIS_MOX_BOOTCMD_RESCUE \ |
| 84 | "setenv bootargs \"console=ttyMV0,115200 " \ |
| 85 | "earlycon=ar3700_uart,0xd0012000\" && " \ |
| 86 | "sf probe && " \ |
| 87 | "sf read 0x5000000 0x190000 && " \ |
| 88 | "lzmadec 0x5000000 0x5800000 && " \ |
| 89 | "bootm 0x5800000" |
| 90 | |
Marek Behún | 80af1a9 | 2018-04-24 17:21:31 +0200 | [diff] [blame] | 91 | #define CONFIG_EXTRA_ENV_SETTINGS \ |
| 92 | "scriptaddr=0x4d00000\0" \ |
| 93 | "pxefile_addr_r=0x4e00000\0" \ |
| 94 | "fdt_addr_r=0x4f00000\0" \ |
| 95 | "kernel_addr_r=0x5000000\0" \ |
| 96 | "ramdisk_addr_r=0x8000000\0" \ |
Marek Behún | 8805647 | 2021-06-07 16:34:49 +0200 | [diff] [blame] | 97 | "fdtfile=marvell/" CONFIG_DEFAULT_DEVICE_TREE ".dtb\0" \ |
Marek Behún | ec3784d | 2021-06-07 16:34:47 +0200 | [diff] [blame] | 98 | "bootcmd_rescue=" TURRIS_MOX_BOOTCMD_RESCUE "\0" \ |
Marek Behún | 80af1a9 | 2018-04-24 17:21:31 +0200 | [diff] [blame] | 99 | BOOTENV |
| 100 | |
| 101 | #endif /* _CONFIG_TURRIS_MOX_H */ |