1*2cce6f54SAdam Ford /* SPDX-License-Identifier: GPL-2.0+ */ 2*2cce6f54SAdam Ford /* 3*2cce6f54SAdam Ford * Configuation settings for the WB45N CPU Module. 4*2cce6f54SAdam Ford */ 5*2cce6f54SAdam Ford 6*2cce6f54SAdam Ford #ifndef __CONFIG_H__ 7*2cce6f54SAdam Ford #define __CONFIG_H__ 8*2cce6f54SAdam Ford 9*2cce6f54SAdam Ford #include <asm/hardware.h> 10*2cce6f54SAdam Ford 11*2cce6f54SAdam Ford /* ARM asynchronous clock */ 12*2cce6f54SAdam Ford #define CONFIG_SYS_AT91_SLOW_CLOCK 32768 13*2cce6f54SAdam Ford #define CONFIG_SYS_AT91_MAIN_CLOCK 12000000 /* 12 MHz crystal */ 14*2cce6f54SAdam Ford 15*2cce6f54SAdam Ford #define CONFIG_CMDLINE_TAG /* enable passing of ATAGs */ 16*2cce6f54SAdam Ford #define CONFIG_SETUP_MEMORY_TAGS 17*2cce6f54SAdam Ford #define CONFIG_INITRD_TAG 18*2cce6f54SAdam Ford #define CONFIG_SKIP_LOWLEVEL_INIT 19*2cce6f54SAdam Ford 20*2cce6f54SAdam Ford /* general purpose I/O */ 21*2cce6f54SAdam Ford #define CONFIG_ATMEL_LEGACY /* required until (g)pio is fixed */ 22*2cce6f54SAdam Ford #define CONFIG_AT91_GPIO 23*2cce6f54SAdam Ford 24*2cce6f54SAdam Ford /* serial console */ 25*2cce6f54SAdam Ford #define CONFIG_ATMEL_USART 26*2cce6f54SAdam Ford #define CONFIG_USART_BASE ATMEL_BASE_DBGU 27*2cce6f54SAdam Ford #define CONFIG_USART_ID ATMEL_ID_SYS 28*2cce6f54SAdam Ford 29*2cce6f54SAdam Ford /* 30*2cce6f54SAdam Ford * BOOTP options 31*2cce6f54SAdam Ford */ 32*2cce6f54SAdam Ford #define CONFIG_BOOTP_BOOTFILESIZE 33*2cce6f54SAdam Ford 34*2cce6f54SAdam Ford /* SDRAM */ 35*2cce6f54SAdam Ford #define CONFIG_NR_DRAM_BANKS 1 36*2cce6f54SAdam Ford #define CONFIG_SYS_SDRAM_BASE 0x20000000 37*2cce6f54SAdam Ford #define CONFIG_SYS_SDRAM_SIZE 0x04000000 /* 64 MB */ 38*2cce6f54SAdam Ford 39*2cce6f54SAdam Ford #define CONFIG_SYS_INIT_SP_ADDR \ 40*2cce6f54SAdam Ford (CONFIG_SYS_SDRAM_BASE + 4 * 1024 - GENERATED_GBL_DATA_SIZE) 41*2cce6f54SAdam Ford 42*2cce6f54SAdam Ford /* NAND flash */ 43*2cce6f54SAdam Ford #define CONFIG_SYS_MAX_NAND_DEVICE 1 44*2cce6f54SAdam Ford #define CONFIG_SYS_NAND_BASE 0x40000000 45*2cce6f54SAdam Ford /* our ALE is AD21 */ 46*2cce6f54SAdam Ford #define CONFIG_SYS_NAND_MASK_ALE (1 << 21) 47*2cce6f54SAdam Ford /* our CLE is AD22 */ 48*2cce6f54SAdam Ford #define CONFIG_SYS_NAND_MASK_CLE (1 << 22) 49*2cce6f54SAdam Ford #define CONFIG_SYS_NAND_ENABLE_PIN AT91_PIN_PD4 50*2cce6f54SAdam Ford #define CONFIG_SYS_NAND_READY_PIN AT91_PIN_PD5 51*2cce6f54SAdam Ford #define CONFIG_RBTREE 52*2cce6f54SAdam Ford #define CONFIG_LZO 53*2cce6f54SAdam Ford 54*2cce6f54SAdam Ford /* Ethernet */ 55*2cce6f54SAdam Ford #define CONFIG_MACB 56*2cce6f54SAdam Ford #define CONFIG_RMII 57*2cce6f54SAdam Ford #define CONFIG_NET_RETRY_COUNT 20 58*2cce6f54SAdam Ford #define CONFIG_MACB_SEARCH_PHY 59*2cce6f54SAdam Ford #define CONFIG_ETHADDR C0:EE:40:00:00:00 60*2cce6f54SAdam Ford #define CONFIG_ENV_OVERWRITE 1 61*2cce6f54SAdam Ford 62*2cce6f54SAdam Ford /* System */ 63*2cce6f54SAdam Ford #define CONFIG_SYS_LOAD_ADDR 0x22000000 /* load address */ 64*2cce6f54SAdam Ford #define CONFIG_SYS_MEMTEST_START CONFIG_SYS_SDRAM_BASE 65*2cce6f54SAdam Ford #define CONFIG_SYS_MEMTEST_END 0x23e00000 66*2cce6f54SAdam Ford 67*2cce6f54SAdam Ford #ifdef CONFIG_SYS_USE_NANDFLASH 68*2cce6f54SAdam Ford /* bootstrap + u-boot + env + linux in nandflash */ 69*2cce6f54SAdam Ford #define CONFIG_ENV_OFFSET 0xa0000 70*2cce6f54SAdam Ford #define CONFIG_ENV_OFFSET_REDUND 0xc0000 71*2cce6f54SAdam Ford #define CONFIG_ENV_SIZE 0x20000 /* 1 block = 128 kB */ 72*2cce6f54SAdam Ford 73*2cce6f54SAdam Ford #define CONFIG_BOOTCOMMAND "nand read 0x22000000 0xe0000 0x280000; " \ 74*2cce6f54SAdam Ford "run _mtd; bootm" 75*2cce6f54SAdam Ford 76*2cce6f54SAdam Ford #define MTDIDS_DEFAULT "nand0=atmel_nand" 77*2cce6f54SAdam Ford #define MTDPARTS_DEFAULT "mtdparts=atmel_nand:" \ 78*2cce6f54SAdam Ford "128K(at91bs)," \ 79*2cce6f54SAdam Ford "512K(u-boot)," \ 80*2cce6f54SAdam Ford "128K(u-boot-env)," \ 81*2cce6f54SAdam Ford "128K(redund-env)," \ 82*2cce6f54SAdam Ford "2560K(kernel-a)," \ 83*2cce6f54SAdam Ford "2560K(kernel-b)," \ 84*2cce6f54SAdam Ford "38912K(rootfs-a)," \ 85*2cce6f54SAdam Ford "38912K(rootfs-b)," \ 86*2cce6f54SAdam Ford "46208K(user)," \ 87*2cce6f54SAdam Ford "512K(logs)" 88*2cce6f54SAdam Ford 89*2cce6f54SAdam Ford #else 90*2cce6f54SAdam Ford #error No boot method selected, please select 'CONFIG_SYS_USE_NANDFLASH' 91*2cce6f54SAdam Ford #endif 92*2cce6f54SAdam Ford 93*2cce6f54SAdam Ford #define CONFIG_BOOTARGS "console=ttyS0,115200 earlyprintk " \ 94*2cce6f54SAdam Ford "rw noinitrd mem=64M " \ 95*2cce6f54SAdam Ford "rootfstype=ubifs root=ubi0:rootfs ubi.mtd=6" 96*2cce6f54SAdam Ford 97*2cce6f54SAdam Ford #define CONFIG_EXTRA_ENV_SETTINGS \ 98*2cce6f54SAdam Ford "_mtd=mtdparts default; setenv bootargs ${bootargs} ${mtdparts}\0" \ 99*2cce6f54SAdam Ford "autoload=no\0" \ 100*2cce6f54SAdam Ford "autostart=no\0" \ 101*2cce6f54SAdam Ford "ethaddr=" __stringify(CONFIG_ETHADDR) "\0" \ 102*2cce6f54SAdam Ford "\0" 103*2cce6f54SAdam Ford 104*2cce6f54SAdam Ford #define CONFIG_SYS_CBSIZE 256 105*2cce6f54SAdam Ford #define CONFIG_SYS_MAXARGS 16 106*2cce6f54SAdam Ford 107*2cce6f54SAdam Ford /* 108*2cce6f54SAdam Ford * Size of malloc() pool 109*2cce6f54SAdam Ford */ 110*2cce6f54SAdam Ford #define CONFIG_SYS_MALLOC_LEN (512 * 1024 + 0x1000) 111*2cce6f54SAdam Ford 112*2cce6f54SAdam Ford /* SPL */ 113*2cce6f54SAdam Ford #define CONFIG_SPL_TEXT_BASE 0x300000 114*2cce6f54SAdam Ford #define CONFIG_SPL_MAX_SIZE 0x6000 115*2cce6f54SAdam Ford #define CONFIG_SPL_STACK 0x308000 116*2cce6f54SAdam Ford 117*2cce6f54SAdam Ford #define CONFIG_SPL_BSS_START_ADDR 0x20000000 118*2cce6f54SAdam Ford #define CONFIG_SPL_BSS_MAX_SIZE 0x80000 119*2cce6f54SAdam Ford #define CONFIG_SYS_SPL_MALLOC_START 0x20080000 120*2cce6f54SAdam Ford #define CONFIG_SYS_SPL_MALLOC_SIZE 0x80000 121*2cce6f54SAdam Ford 122*2cce6f54SAdam Ford #define CONFIG_SYS_MONITOR_LEN (512 << 10) 123*2cce6f54SAdam Ford 124*2cce6f54SAdam Ford #define CONFIG_SYS_MASTER_CLOCK 132096000 125*2cce6f54SAdam Ford #define CONFIG_SYS_AT91_PLLA 0x20c73f03 126*2cce6f54SAdam Ford #define CONFIG_SYS_MCKR 0x1301 127*2cce6f54SAdam Ford #define CONFIG_SYS_MCKR_CSS 0x1302 128*2cce6f54SAdam Ford 129*2cce6f54SAdam Ford #define CONFIG_SPL_NAND_DRIVERS 130*2cce6f54SAdam Ford #define CONFIG_SPL_NAND_BASE 131*2cce6f54SAdam Ford #define CONFIG_SYS_NAND_U_BOOT_OFFS 0x20000 132*2cce6f54SAdam Ford #define CONFIG_SYS_NAND_5_ADDR_CYCLE 133*2cce6f54SAdam Ford #define CONFIG_SYS_NAND_PAGE_SIZE 0x800 134*2cce6f54SAdam Ford #define CONFIG_SYS_NAND_PAGE_COUNT 64 135*2cce6f54SAdam Ford #define CONFIG_SYS_NAND_OOBSIZE 64 136*2cce6f54SAdam Ford #define CONFIG_SYS_NAND_BLOCK_SIZE 0x20000 137*2cce6f54SAdam Ford #define CONFIG_SYS_NAND_BAD_BLOCK_POS 0x0 138*2cce6f54SAdam Ford 139*2cce6f54SAdam Ford #endif /* __CONFIG_H__ */ 140