Tom Rini | 83d290c | 2018-05-06 17:58:06 -0400 | [diff] [blame] | 1 | /* SPDX-License-Identifier: GPL-2.0+ */ |
Mingkai Hu | 4f1d1b7 | 2011-07-07 12:29:15 +0800 | [diff] [blame] | 2 | /* |
ramneek mehresh | 3d7506f | 2012-04-18 19:39:53 +0000 | [diff] [blame] | 3 | * Copyright 2011-2012 Freescale Semiconductor, Inc. |
Rajesh Bhagat | a97a071 | 2021-11-09 16:30:38 +0530 | [diff] [blame] | 4 | * Copyright 2020-2021 NXP |
Mingkai Hu | 4f1d1b7 | 2011-07-07 12:29:15 +0800 | [diff] [blame] | 5 | */ |
| 6 | |
| 7 | /* |
| 8 | * P2041 RDB board configuration file |
Scott Wood | 3e978f5 | 2012-08-14 10:14:51 +0000 | [diff] [blame] | 9 | * Also supports P2040 RDB |
Mingkai Hu | 4f1d1b7 | 2011-07-07 12:29:15 +0800 | [diff] [blame] | 10 | */ |
| 11 | #ifndef __CONFIG_H |
| 12 | #define __CONFIG_H |
| 13 | |
Mingkai Hu | 4f1d1b7 | 2011-07-07 12:29:15 +0800 | [diff] [blame] | 14 | #ifdef CONFIG_RAMBOOT_PBL |
Tom Rini | 3db78c8 | 2022-12-04 10:13:40 -0500 | [diff] [blame] | 15 | #define CFG_RESET_VECTOR_ADDRESS 0xfffffffc |
Mingkai Hu | 4f1d1b7 | 2011-07-07 12:29:15 +0800 | [diff] [blame] | 16 | #endif |
| 17 | |
Liu Gang | 461632b | 2012-08-09 05:10:03 +0000 | [diff] [blame] | 18 | #ifdef CONFIG_SRIO_PCIE_BOOT_SLAVE |
Liu Gang | ff65f12 | 2012-08-09 05:09:59 +0000 | [diff] [blame] | 19 | /* Set 1M boot space */ |
Tom Rini | a322afc | 2022-11-16 13:10:40 -0500 | [diff] [blame] | 20 | #define CFG_SYS_SRIO_PCIE_BOOT_SLAVE_ADDR (CONFIG_TEXT_BASE & 0xfff00000) |
| 21 | #define CFG_SYS_SRIO_PCIE_BOOT_SLAVE_ADDR_PHYS \ |
| 22 | (0x300000000ull | CFG_SYS_SRIO_PCIE_BOOT_SLAVE_ADDR) |
Tom Rini | 3db78c8 | 2022-12-04 10:13:40 -0500 | [diff] [blame] | 23 | #define CFG_RESET_VECTOR_ADDRESS 0xfffffffc |
Liu Gang | ff65f12 | 2012-08-09 05:09:59 +0000 | [diff] [blame] | 24 | #endif |
| 25 | |
Mingkai Hu | 4f1d1b7 | 2011-07-07 12:29:15 +0800 | [diff] [blame] | 26 | /* High Level Configuration Options */ |
Mingkai Hu | 4f1d1b7 | 2011-07-07 12:29:15 +0800 | [diff] [blame] | 27 | |
Tom Rini | 3db78c8 | 2022-12-04 10:13:40 -0500 | [diff] [blame] | 28 | #ifndef CFG_RESET_VECTOR_ADDRESS |
| 29 | #define CFG_RESET_VECTOR_ADDRESS 0xeffffffc |
Mingkai Hu | 4f1d1b7 | 2011-07-07 12:29:15 +0800 | [diff] [blame] | 30 | #endif |
| 31 | |
Tom Rini | cdc5ed8 | 2022-11-16 13:10:29 -0500 | [diff] [blame] | 32 | #define CFG_SYS_NUM_CPC CONFIG_SYS_NUM_DDR_CTLRS |
Mingkai Hu | 4f1d1b7 | 2011-07-07 12:29:15 +0800 | [diff] [blame] | 33 | |
Shaohui Xie | 44d50f0 | 2011-09-13 17:55:11 +0800 | [diff] [blame] | 34 | #ifndef __ASSEMBLY__ |
Simon Glass | 1af3c7f | 2020-05-10 11:40:09 -0600 | [diff] [blame] | 35 | #include <linux/stringify.h> |
Shaohui Xie | 44d50f0 | 2011-09-13 17:55:11 +0800 | [diff] [blame] | 36 | #endif |
Mingkai Hu | 4f1d1b7 | 2011-07-07 12:29:15 +0800 | [diff] [blame] | 37 | |
| 38 | /* |
| 39 | * These can be toggled for performance analysis, otherwise use default. |
| 40 | */ |
Tom Rini | 65cc0e2 | 2022-11-16 13:10:41 -0500 | [diff] [blame] | 41 | #define CFG_SYS_INIT_L2CSR0 L2CSR0_L2E |
Mingkai Hu | 4f1d1b7 | 2011-07-07 12:29:15 +0800 | [diff] [blame] | 42 | |
Tom Rini | 9cebc4a | 2022-11-19 18:45:44 -0500 | [diff] [blame] | 43 | #define CFG_POST CFG_SYS_POST_MEMORY /* test POST memory test */ |
Mingkai Hu | 4f1d1b7 | 2011-07-07 12:29:15 +0800 | [diff] [blame] | 44 | |
| 45 | /* |
| 46 | * Config the L3 Cache as L3 SRAM |
| 47 | */ |
Tom Rini | 308520b | 2022-12-02 16:42:31 -0500 | [diff] [blame] | 48 | #define CFG_SYS_INIT_L3_ADDR CONFIG_TEXT_BASE |
Mingkai Hu | 4f1d1b7 | 2011-07-07 12:29:15 +0800 | [diff] [blame] | 49 | #ifdef CONFIG_PHYS_64BIT |
Tom Rini | 308520b | 2022-12-02 16:42:31 -0500 | [diff] [blame] | 50 | #define CFG_SYS_INIT_L3_ADDR_PHYS (0xf00000000ull | CONFIG_TEXT_BASE) |
Mingkai Hu | 4f1d1b7 | 2011-07-07 12:29:15 +0800 | [diff] [blame] | 51 | #else |
Tom Rini | 65cc0e2 | 2022-11-16 13:10:41 -0500 | [diff] [blame] | 52 | #define CFG_SYS_INIT_L3_ADDR_PHYS CFG_SYS_INIT_L3_ADDR |
Mingkai Hu | 4f1d1b7 | 2011-07-07 12:29:15 +0800 | [diff] [blame] | 53 | #endif |
Mingkai Hu | 4f1d1b7 | 2011-07-07 12:29:15 +0800 | [diff] [blame] | 54 | |
Mingkai Hu | 4f1d1b7 | 2011-07-07 12:29:15 +0800 | [diff] [blame] | 55 | #ifdef CONFIG_PHYS_64BIT |
Tom Rini | 65cc0e2 | 2022-11-16 13:10:41 -0500 | [diff] [blame] | 56 | #define CFG_SYS_DCSRBAR 0xf0000000 |
| 57 | #define CFG_SYS_DCSRBAR_PHYS 0xf00000000ull |
Mingkai Hu | 4f1d1b7 | 2011-07-07 12:29:15 +0800 | [diff] [blame] | 58 | #endif |
| 59 | |
Mingkai Hu | 4f1d1b7 | 2011-07-07 12:29:15 +0800 | [diff] [blame] | 60 | /* |
| 61 | * DDR Setup |
| 62 | */ |
Tom Rini | 65cc0e2 | 2022-11-16 13:10:41 -0500 | [diff] [blame] | 63 | #define CFG_SYS_DDR_SDRAM_BASE 0x00000000 |
| 64 | #define CFG_SYS_SDRAM_BASE CFG_SYS_DDR_SDRAM_BASE |
Mingkai Hu | 4f1d1b7 | 2011-07-07 12:29:15 +0800 | [diff] [blame] | 65 | |
Mingkai Hu | 4f1d1b7 | 2011-07-07 12:29:15 +0800 | [diff] [blame] | 66 | #define SPD_EEPROM_ADDRESS 0x52 |
Tom Rini | aa6e94d | 2022-11-16 13:10:37 -0500 | [diff] [blame] | 67 | #define CFG_SYS_SDRAM_SIZE 4096 /* for fixed parameter use */ |
Mingkai Hu | 4f1d1b7 | 2011-07-07 12:29:15 +0800 | [diff] [blame] | 68 | |
| 69 | /* |
| 70 | * Local Bus Definitions |
| 71 | */ |
| 72 | |
| 73 | /* Set the local bus clock 1/8 of platform clock */ |
Tom Rini | 65cc0e2 | 2022-11-16 13:10:41 -0500 | [diff] [blame] | 74 | #define CFG_SYS_LBC_LCRR LCRR_CLKDIV_8 |
Mingkai Hu | 4f1d1b7 | 2011-07-07 12:29:15 +0800 | [diff] [blame] | 75 | |
York Sun | ca1b0b8 | 2012-10-26 16:40:15 +0000 | [diff] [blame] | 76 | /* |
| 77 | * This board doesn't have a promjet connector. |
| 78 | * However, it uses commone corenet board LAW and TLB. |
| 79 | * It is necessary to use the same start address with proper offset. |
| 80 | */ |
Tom Rini | 65cc0e2 | 2022-11-16 13:10:41 -0500 | [diff] [blame] | 81 | #define CFG_SYS_FLASH_BASE 0xe0000000 |
Mingkai Hu | 4f1d1b7 | 2011-07-07 12:29:15 +0800 | [diff] [blame] | 82 | #ifdef CONFIG_PHYS_64BIT |
Tom Rini | 65cc0e2 | 2022-11-16 13:10:41 -0500 | [diff] [blame] | 83 | #define CFG_SYS_FLASH_BASE_PHYS 0xfe0000000ull |
Mingkai Hu | 4f1d1b7 | 2011-07-07 12:29:15 +0800 | [diff] [blame] | 84 | #else |
Tom Rini | 65cc0e2 | 2022-11-16 13:10:41 -0500 | [diff] [blame] | 85 | #define CFG_SYS_FLASH_BASE_PHYS CFG_SYS_FLASH_BASE |
Mingkai Hu | 4f1d1b7 | 2011-07-07 12:29:15 +0800 | [diff] [blame] | 86 | #endif |
| 87 | |
Mingkai Hu | 4f1d1b7 | 2011-07-07 12:29:15 +0800 | [diff] [blame] | 88 | #define CPLD_BASE 0xffdf0000 /* CPLD registers */ |
| 89 | #ifdef CONFIG_PHYS_64BIT |
| 90 | #define CPLD_BASE_PHYS 0xfffdf0000ull |
| 91 | #else |
| 92 | #define CPLD_BASE_PHYS CPLD_BASE |
| 93 | #endif |
| 94 | |
Mingkai Hu | 4f1d1b7 | 2011-07-07 12:29:15 +0800 | [diff] [blame] | 95 | #define PIXIS_LBMAP_SWITCH 7 |
| 96 | #define PIXIS_LBMAP_MASK 0xf0 |
| 97 | #define PIXIS_LBMAP_SHIFT 4 |
| 98 | #define PIXIS_LBMAP_ALTBANK 0x40 |
| 99 | |
Shaohui Xie | c9b2fea | 2012-02-28 23:28:07 +0000 | [diff] [blame] | 100 | /* Nand Flash */ |
| 101 | #ifdef CONFIG_NAND_FSL_ELBC |
Tom Rini | 4e59094 | 2022-11-12 17:36:51 -0500 | [diff] [blame] | 102 | #define CFG_SYS_NAND_BASE 0xffa00000 |
Shaohui Xie | c9b2fea | 2012-02-28 23:28:07 +0000 | [diff] [blame] | 103 | #ifdef CONFIG_PHYS_64BIT |
Tom Rini | 4e59094 | 2022-11-12 17:36:51 -0500 | [diff] [blame] | 104 | #define CFG_SYS_NAND_BASE_PHYS 0xfffa00000ull |
Shaohui Xie | c9b2fea | 2012-02-28 23:28:07 +0000 | [diff] [blame] | 105 | #else |
Tom Rini | 4e59094 | 2022-11-12 17:36:51 -0500 | [diff] [blame] | 106 | #define CFG_SYS_NAND_BASE_PHYS CFG_SYS_NAND_BASE |
Shaohui Xie | c9b2fea | 2012-02-28 23:28:07 +0000 | [diff] [blame] | 107 | #endif |
| 108 | |
Tom Rini | 4e59094 | 2022-11-12 17:36:51 -0500 | [diff] [blame] | 109 | #define CFG_SYS_NAND_BASE_LIST {CFG_SYS_NAND_BASE} |
Shaohui Xie | c9b2fea | 2012-02-28 23:28:07 +0000 | [diff] [blame] | 110 | |
| 111 | /* NAND flash config */ |
Tom Rini | 4e59094 | 2022-11-12 17:36:51 -0500 | [diff] [blame] | 112 | #define CFG_SYS_NAND_BR_PRELIM (BR_PHYS_ADDR(CFG_SYS_NAND_BASE_PHYS) \ |
Shaohui Xie | c9b2fea | 2012-02-28 23:28:07 +0000 | [diff] [blame] | 113 | | (2<<BR_DECC_SHIFT) /* Use HW ECC */ \ |
| 114 | | BR_PS_8 /* Port Size = 8 bit */ \ |
| 115 | | BR_MS_FCM /* MSEL = FCM */ \ |
| 116 | | BR_V) /* valid */ |
Tom Rini | 4e59094 | 2022-11-12 17:36:51 -0500 | [diff] [blame] | 117 | #define CFG_SYS_NAND_OR_PRELIM (0xFFFC0000 /* length 256K */ \ |
Shaohui Xie | c9b2fea | 2012-02-28 23:28:07 +0000 | [diff] [blame] | 118 | | OR_FCM_PGS /* Large Page*/ \ |
| 119 | | OR_FCM_CSCT \ |
| 120 | | OR_FCM_CST \ |
| 121 | | OR_FCM_CHT \ |
| 122 | | OR_FCM_SCY_1 \ |
| 123 | | OR_FCM_TRLX \ |
| 124 | | OR_FCM_EHTR) |
Shaohui Xie | c9b2fea | 2012-02-28 23:28:07 +0000 | [diff] [blame] | 125 | #endif /* CONFIG_NAND_FSL_ELBC */ |
| 126 | |
Tom Rini | 65cc0e2 | 2022-11-16 13:10:41 -0500 | [diff] [blame] | 127 | #define CFG_SYS_FLASH_BANKS_LIST {CFG_SYS_FLASH_BASE_PHYS + 0x8000000} |
Mingkai Hu | 4f1d1b7 | 2011-07-07 12:29:15 +0800 | [diff] [blame] | 128 | |
Mingkai Hu | 4f1d1b7 | 2011-07-07 12:29:15 +0800 | [diff] [blame] | 129 | /* define to use L1 as initial stack */ |
Tom Rini | 65cc0e2 | 2022-11-16 13:10:41 -0500 | [diff] [blame] | 130 | #define CFG_SYS_INIT_RAM_ADDR 0xffd00000 /* Initial L1 address */ |
Mingkai Hu | 4f1d1b7 | 2011-07-07 12:29:15 +0800 | [diff] [blame] | 131 | #ifdef CONFIG_PHYS_64BIT |
Tom Rini | 65cc0e2 | 2022-11-16 13:10:41 -0500 | [diff] [blame] | 132 | #define CFG_SYS_INIT_RAM_ADDR_PHYS_HIGH 0xf |
| 133 | #define CFG_SYS_INIT_RAM_ADDR_PHYS_LOW CFG_SYS_INIT_RAM_ADDR |
Mingkai Hu | 4f1d1b7 | 2011-07-07 12:29:15 +0800 | [diff] [blame] | 134 | /* The assembler doesn't like typecast */ |
Tom Rini | 65cc0e2 | 2022-11-16 13:10:41 -0500 | [diff] [blame] | 135 | #define CFG_SYS_INIT_RAM_ADDR_PHYS \ |
| 136 | ((CFG_SYS_INIT_RAM_ADDR_PHYS_HIGH * 1ull << 32) | \ |
| 137 | CFG_SYS_INIT_RAM_ADDR_PHYS_LOW) |
Mingkai Hu | 4f1d1b7 | 2011-07-07 12:29:15 +0800 | [diff] [blame] | 138 | #else |
Tom Rini | 65cc0e2 | 2022-11-16 13:10:41 -0500 | [diff] [blame] | 139 | #define CFG_SYS_INIT_RAM_ADDR_PHYS CFG_SYS_INIT_RAM_ADDR |
| 140 | #define CFG_SYS_INIT_RAM_ADDR_PHYS_HIGH 0 |
| 141 | #define CFG_SYS_INIT_RAM_ADDR_PHYS_LOW CFG_SYS_INIT_RAM_ADDR_PHYS |
Mingkai Hu | 4f1d1b7 | 2011-07-07 12:29:15 +0800 | [diff] [blame] | 142 | #endif |
Tom Rini | 65cc0e2 | 2022-11-16 13:10:41 -0500 | [diff] [blame] | 143 | #define CFG_SYS_INIT_RAM_SIZE 0x00004000 |
Mingkai Hu | 4f1d1b7 | 2011-07-07 12:29:15 +0800 | [diff] [blame] | 144 | |
Tom Rini | 65cc0e2 | 2022-11-16 13:10:41 -0500 | [diff] [blame] | 145 | #define CFG_SYS_INIT_SP_OFFSET (CFG_SYS_INIT_RAM_SIZE - GENERATED_GBL_DATA_SIZE) |
Mingkai Hu | 4f1d1b7 | 2011-07-07 12:29:15 +0800 | [diff] [blame] | 146 | |
Mingkai Hu | 4f1d1b7 | 2011-07-07 12:29:15 +0800 | [diff] [blame] | 147 | /* Serial Port - controlled on board with jumper J8 |
| 148 | * open - index 2 |
| 149 | * shorted - index 1 |
| 150 | */ |
Tom Rini | 9109213 | 2022-11-16 13:10:28 -0500 | [diff] [blame] | 151 | #define CFG_SYS_NS16550_CLK (get_bus_freq(0)/2) |
Mingkai Hu | 4f1d1b7 | 2011-07-07 12:29:15 +0800 | [diff] [blame] | 152 | |
Tom Rini | 65cc0e2 | 2022-11-16 13:10:41 -0500 | [diff] [blame] | 153 | #define CFG_SYS_BAUDRATE_TABLE \ |
Mingkai Hu | 4f1d1b7 | 2011-07-07 12:29:15 +0800 | [diff] [blame] | 154 | {300, 600, 1200, 2400, 4800, 9600, 19200, 38400, 57600, 115200} |
| 155 | |
Tom Rini | 65cc0e2 | 2022-11-16 13:10:41 -0500 | [diff] [blame] | 156 | #define CFG_SYS_NS16550_COM1 (CFG_SYS_CCSRBAR+0x11C500) |
| 157 | #define CFG_SYS_NS16550_COM2 (CFG_SYS_CCSRBAR+0x11C600) |
| 158 | #define CFG_SYS_NS16550_COM3 (CFG_SYS_CCSRBAR+0x11D500) |
| 159 | #define CFG_SYS_NS16550_COM4 (CFG_SYS_CCSRBAR+0x11D600) |
Mingkai Hu | 4f1d1b7 | 2011-07-07 12:29:15 +0800 | [diff] [blame] | 160 | |
Mingkai Hu | 4f1d1b7 | 2011-07-07 12:29:15 +0800 | [diff] [blame] | 161 | /* I2C */ |
Biwen Li | 2f3bb4a | 2020-05-01 20:04:05 +0800 | [diff] [blame] | 162 | |
Mingkai Hu | 4f1d1b7 | 2011-07-07 12:29:15 +0800 | [diff] [blame] | 163 | |
| 164 | /* |
| 165 | * RapidIO |
| 166 | */ |
Tom Rini | a322afc | 2022-11-16 13:10:40 -0500 | [diff] [blame] | 167 | #define CFG_SYS_SRIO1_MEM_VIRT 0xa0000000 |
Mingkai Hu | 4f1d1b7 | 2011-07-07 12:29:15 +0800 | [diff] [blame] | 168 | #ifdef CONFIG_PHYS_64BIT |
Tom Rini | a322afc | 2022-11-16 13:10:40 -0500 | [diff] [blame] | 169 | #define CFG_SYS_SRIO1_MEM_PHYS 0xc20000000ull |
Mingkai Hu | 4f1d1b7 | 2011-07-07 12:29:15 +0800 | [diff] [blame] | 170 | #else |
Tom Rini | a322afc | 2022-11-16 13:10:40 -0500 | [diff] [blame] | 171 | #define CFG_SYS_SRIO1_MEM_PHYS 0xa0000000 |
Mingkai Hu | 4f1d1b7 | 2011-07-07 12:29:15 +0800 | [diff] [blame] | 172 | #endif |
Tom Rini | a322afc | 2022-11-16 13:10:40 -0500 | [diff] [blame] | 173 | #define CFG_SYS_SRIO1_MEM_SIZE 0x10000000 /* 256M */ |
Mingkai Hu | 4f1d1b7 | 2011-07-07 12:29:15 +0800 | [diff] [blame] | 174 | |
Tom Rini | a322afc | 2022-11-16 13:10:40 -0500 | [diff] [blame] | 175 | #define CFG_SYS_SRIO2_MEM_VIRT 0xb0000000 |
Mingkai Hu | 4f1d1b7 | 2011-07-07 12:29:15 +0800 | [diff] [blame] | 176 | #ifdef CONFIG_PHYS_64BIT |
Tom Rini | a322afc | 2022-11-16 13:10:40 -0500 | [diff] [blame] | 177 | #define CFG_SYS_SRIO2_MEM_PHYS 0xc30000000ull |
Mingkai Hu | 4f1d1b7 | 2011-07-07 12:29:15 +0800 | [diff] [blame] | 178 | #else |
Tom Rini | a322afc | 2022-11-16 13:10:40 -0500 | [diff] [blame] | 179 | #define CFG_SYS_SRIO2_MEM_PHYS 0xb0000000 |
Mingkai Hu | 4f1d1b7 | 2011-07-07 12:29:15 +0800 | [diff] [blame] | 180 | #endif |
Tom Rini | a322afc | 2022-11-16 13:10:40 -0500 | [diff] [blame] | 181 | #define CFG_SYS_SRIO2_MEM_SIZE 0x10000000 /* 256M */ |
Mingkai Hu | 4f1d1b7 | 2011-07-07 12:29:15 +0800 | [diff] [blame] | 182 | |
| 183 | /* |
Liu Gang | ff65f12 | 2012-08-09 05:09:59 +0000 | [diff] [blame] | 184 | * for slave u-boot IMAGE instored in master memory space, |
| 185 | * PHYS must be aligned based on the SIZE |
| 186 | */ |
Tom Rini | a322afc | 2022-11-16 13:10:40 -0500 | [diff] [blame] | 187 | #define CFG_SRIO_PCIE_BOOT_IMAGE_MEM_PHYS 0xfef200000ull |
| 188 | #define CFG_SRIO_PCIE_BOOT_IMAGE_MEM_BUS1 0xfff00000ull |
| 189 | #define CFG_SRIO_PCIE_BOOT_IMAGE_SIZE 0x100000 /* 1M */ |
| 190 | #define CFG_SRIO_PCIE_BOOT_IMAGE_MEM_BUS2 0x3fff00000ull |
Liu Gang | ff65f12 | 2012-08-09 05:09:59 +0000 | [diff] [blame] | 191 | /* |
| 192 | * for slave UCODE and ENV instored in master memory space, |
| 193 | * PHYS must be aligned based on the SIZE |
| 194 | */ |
Tom Rini | a322afc | 2022-11-16 13:10:40 -0500 | [diff] [blame] | 195 | #define CFG_SRIO_PCIE_BOOT_UCODE_ENV_MEM_PHYS 0xfef100000ull |
| 196 | #define CFG_SRIO_PCIE_BOOT_UCODE_ENV_MEM_BUS 0x3ffe00000ull |
| 197 | #define CFG_SRIO_PCIE_BOOT_UCODE_ENV_SIZE 0x40000 /* 256K */ |
Liu Gang | ff65f12 | 2012-08-09 05:09:59 +0000 | [diff] [blame] | 198 | |
| 199 | /* slave core release by master*/ |
Tom Rini | a322afc | 2022-11-16 13:10:40 -0500 | [diff] [blame] | 200 | #define CFG_SRIO_PCIE_BOOT_BRR_OFFSET 0xe00e4 |
| 201 | #define CFG_SRIO_PCIE_BOOT_RELEASE_MASK 0x00000001 /* release core 0 */ |
Liu Gang | ff65f12 | 2012-08-09 05:09:59 +0000 | [diff] [blame] | 202 | |
| 203 | /* |
Liu Gang | 461632b | 2012-08-09 05:10:03 +0000 | [diff] [blame] | 204 | * SRIO_PCIE_BOOT - SLAVE |
Liu Gang | ff65f12 | 2012-08-09 05:09:59 +0000 | [diff] [blame] | 205 | */ |
Liu Gang | 461632b | 2012-08-09 05:10:03 +0000 | [diff] [blame] | 206 | #ifdef CONFIG_SRIO_PCIE_BOOT_SLAVE |
Tom Rini | a322afc | 2022-11-16 13:10:40 -0500 | [diff] [blame] | 207 | #define CFG_SYS_SRIO_PCIE_BOOT_UCODE_ENV_ADDR 0xFFE00000 |
| 208 | #define CFG_SYS_SRIO_PCIE_BOOT_UCODE_ENV_ADDR_PHYS \ |
| 209 | (0x300000000ull | CFG_SYS_SRIO_PCIE_BOOT_UCODE_ENV_ADDR) |
Liu Gang | ff65f12 | 2012-08-09 05:09:59 +0000 | [diff] [blame] | 210 | #endif |
| 211 | |
| 212 | /* |
Mingkai Hu | 4f1d1b7 | 2011-07-07 12:29:15 +0800 | [diff] [blame] | 213 | * eSPI - Enhanced SPI |
| 214 | */ |
Mingkai Hu | 4f1d1b7 | 2011-07-07 12:29:15 +0800 | [diff] [blame] | 215 | |
| 216 | /* |
| 217 | * General PCI |
| 218 | * Memory space is mapped 1-1, but I/O space must start from 0. |
| 219 | */ |
| 220 | |
| 221 | /* controller 1, direct to uli, tgtid 3, Base address 20000 */ |
Tom Rini | ecc8d42 | 2022-11-16 13:10:33 -0500 | [diff] [blame] | 222 | #define CFG_SYS_PCIE1_MEM_VIRT 0x80000000 |
| 223 | #define CFG_SYS_PCIE1_MEM_PHYS 0xc00000000ull |
| 224 | #define CFG_SYS_PCIE1_IO_VIRT 0xf8000000 |
| 225 | #define CFG_SYS_PCIE1_IO_PHYS 0xff8000000ull |
Mingkai Hu | 4f1d1b7 | 2011-07-07 12:29:15 +0800 | [diff] [blame] | 226 | |
| 227 | /* controller 2, Slot 2, tgtid 2, Base address 201000 */ |
Tom Rini | ecc8d42 | 2022-11-16 13:10:33 -0500 | [diff] [blame] | 228 | #define CFG_SYS_PCIE2_MEM_VIRT 0xa0000000 |
| 229 | #define CFG_SYS_PCIE2_MEM_PHYS 0xc20000000ull |
| 230 | #define CFG_SYS_PCIE2_IO_VIRT 0xf8010000 |
| 231 | #define CFG_SYS_PCIE2_IO_PHYS 0xff8010000ull |
Mingkai Hu | 4f1d1b7 | 2011-07-07 12:29:15 +0800 | [diff] [blame] | 232 | |
| 233 | /* controller 3, Slot 1, tgtid 1, Base address 202000 */ |
Tom Rini | ecc8d42 | 2022-11-16 13:10:33 -0500 | [diff] [blame] | 234 | #define CFG_SYS_PCIE3_MEM_VIRT 0xc0000000 |
| 235 | #define CFG_SYS_PCIE3_MEM_PHYS 0xc40000000ull |
Mingkai Hu | 4f1d1b7 | 2011-07-07 12:29:15 +0800 | [diff] [blame] | 236 | |
| 237 | /* Qman/Bman */ |
Tom Rini | 65cc0e2 | 2022-11-16 13:10:41 -0500 | [diff] [blame] | 238 | #define CFG_SYS_BMAN_NUM_PORTALS 10 |
| 239 | #define CFG_SYS_BMAN_MEM_BASE 0xf4000000 |
Mingkai Hu | 4f1d1b7 | 2011-07-07 12:29:15 +0800 | [diff] [blame] | 240 | #ifdef CONFIG_PHYS_64BIT |
Tom Rini | 65cc0e2 | 2022-11-16 13:10:41 -0500 | [diff] [blame] | 241 | #define CFG_SYS_BMAN_MEM_PHYS 0xff4000000ull |
Mingkai Hu | 4f1d1b7 | 2011-07-07 12:29:15 +0800 | [diff] [blame] | 242 | #else |
Tom Rini | 65cc0e2 | 2022-11-16 13:10:41 -0500 | [diff] [blame] | 243 | #define CFG_SYS_BMAN_MEM_PHYS CFG_SYS_BMAN_MEM_BASE |
Mingkai Hu | 4f1d1b7 | 2011-07-07 12:29:15 +0800 | [diff] [blame] | 244 | #endif |
Tom Rini | 65cc0e2 | 2022-11-16 13:10:41 -0500 | [diff] [blame] | 245 | #define CFG_SYS_BMAN_MEM_SIZE 0x00200000 |
| 246 | #define CFG_SYS_BMAN_SP_CENA_SIZE 0x4000 |
| 247 | #define CFG_SYS_BMAN_SP_CINH_SIZE 0x1000 |
| 248 | #define CFG_SYS_BMAN_CENA_BASE CFG_SYS_BMAN_MEM_BASE |
| 249 | #define CFG_SYS_BMAN_CENA_SIZE (CFG_SYS_BMAN_MEM_SIZE >> 1) |
| 250 | #define CFG_SYS_BMAN_CINH_BASE (CFG_SYS_BMAN_MEM_BASE + \ |
| 251 | CFG_SYS_BMAN_CENA_SIZE) |
| 252 | #define CFG_SYS_BMAN_CINH_SIZE (CFG_SYS_BMAN_MEM_SIZE >> 1) |
| 253 | #define CFG_SYS_BMAN_SWP_ISDR_REG 0xE08 |
| 254 | #define CFG_SYS_QMAN_NUM_PORTALS 10 |
| 255 | #define CFG_SYS_QMAN_MEM_BASE 0xf4200000 |
Mingkai Hu | 4f1d1b7 | 2011-07-07 12:29:15 +0800 | [diff] [blame] | 256 | #ifdef CONFIG_PHYS_64BIT |
Tom Rini | 65cc0e2 | 2022-11-16 13:10:41 -0500 | [diff] [blame] | 257 | #define CFG_SYS_QMAN_MEM_PHYS 0xff4200000ull |
Mingkai Hu | 4f1d1b7 | 2011-07-07 12:29:15 +0800 | [diff] [blame] | 258 | #else |
Tom Rini | 65cc0e2 | 2022-11-16 13:10:41 -0500 | [diff] [blame] | 259 | #define CFG_SYS_QMAN_MEM_PHYS CFG_SYS_QMAN_MEM_BASE |
Mingkai Hu | 4f1d1b7 | 2011-07-07 12:29:15 +0800 | [diff] [blame] | 260 | #endif |
Tom Rini | 65cc0e2 | 2022-11-16 13:10:41 -0500 | [diff] [blame] | 261 | #define CFG_SYS_QMAN_MEM_SIZE 0x00200000 |
| 262 | #define CFG_SYS_QMAN_SP_CINH_SIZE 0x1000 |
| 263 | #define CFG_SYS_QMAN_CENA_SIZE (CFG_SYS_QMAN_MEM_SIZE >> 1) |
| 264 | #define CFG_SYS_QMAN_CINH_BASE (CFG_SYS_QMAN_MEM_BASE + \ |
| 265 | CFG_SYS_QMAN_CENA_SIZE) |
| 266 | #define CFG_SYS_QMAN_CINH_SIZE (CFG_SYS_QMAN_MEM_SIZE >> 1) |
| 267 | #define CFG_SYS_QMAN_SWP_ISDR_REG 0xE08 |
Mingkai Hu | 4f1d1b7 | 2011-07-07 12:29:15 +0800 | [diff] [blame] | 268 | |
Mingkai Hu | 4f1d1b7 | 2011-07-07 12:29:15 +0800 | [diff] [blame] | 269 | #ifdef CONFIG_FMAN_ENET |
Tom Rini | 65cc0e2 | 2022-11-16 13:10:41 -0500 | [diff] [blame] | 270 | #define CFG_SYS_FM1_DTSEC1_PHY_ADDR 0x2 |
| 271 | #define CFG_SYS_FM1_DTSEC2_PHY_ADDR 0x3 |
| 272 | #define CFG_SYS_FM1_DTSEC3_PHY_ADDR 0x4 |
| 273 | #define CFG_SYS_FM1_DTSEC4_PHY_ADDR 0x1 |
| 274 | #define CFG_SYS_FM1_DTSEC5_PHY_ADDR 0x0 |
Mingkai Hu | 4f1d1b7 | 2011-07-07 12:29:15 +0800 | [diff] [blame] | 275 | |
Tom Rini | 65cc0e2 | 2022-11-16 13:10:41 -0500 | [diff] [blame] | 276 | #define CFG_SYS_FM1_DTSEC1_RISER_PHY_ADDR 0x1c |
| 277 | #define CFG_SYS_FM1_DTSEC2_RISER_PHY_ADDR 0x1d |
| 278 | #define CFG_SYS_FM1_DTSEC3_RISER_PHY_ADDR 0x1e |
| 279 | #define CFG_SYS_FM1_DTSEC4_RISER_PHY_ADDR 0x1f |
Mingkai Hu | 4f1d1b7 | 2011-07-07 12:29:15 +0800 | [diff] [blame] | 280 | |
Tom Rini | 65cc0e2 | 2022-11-16 13:10:41 -0500 | [diff] [blame] | 281 | #define CFG_SYS_FM1_10GEC1_PHY_ADDR 0 |
Mingkai Hu | 0787ecc | 2011-07-19 16:20:13 +0800 | [diff] [blame] | 282 | |
Tom Rini | 65cc0e2 | 2022-11-16 13:10:41 -0500 | [diff] [blame] | 283 | #define CFG_SYS_TBIPA_VALUE 8 |
Mingkai Hu | 4f1d1b7 | 2011-07-07 12:29:15 +0800 | [diff] [blame] | 284 | #endif |
| 285 | |
Mingkai Hu | 4f1d1b7 | 2011-07-07 12:29:15 +0800 | [diff] [blame] | 286 | #ifdef CONFIG_MMC |
Tom Rini | 6cc0454 | 2022-10-28 20:27:13 -0400 | [diff] [blame] | 287 | #define CFG_SYS_FSL_ESDHC_ADDR CFG_SYS_MPC85xx_ESDHC_ADDR |
Mingkai Hu | 4f1d1b7 | 2011-07-07 12:29:15 +0800 | [diff] [blame] | 288 | #endif |
| 289 | |
| 290 | /* |
| 291 | * Miscellaneous configurable options |
| 292 | */ |
Mingkai Hu | 4f1d1b7 | 2011-07-07 12:29:15 +0800 | [diff] [blame] | 293 | |
| 294 | /* |
| 295 | * For booting Linux, the board info and command line data |
| 296 | * have to be in the first 64 MB of memory, since this is |
| 297 | * the maximum mapped by the Linux kernel during initialization. |
| 298 | */ |
Tom Rini | 65cc0e2 | 2022-11-16 13:10:41 -0500 | [diff] [blame] | 299 | #define CFG_SYS_BOOTMAPSZ (64 << 20) /* Initial Memory for Linux */ |
Mingkai Hu | 4f1d1b7 | 2011-07-07 12:29:15 +0800 | [diff] [blame] | 300 | |
Mingkai Hu | 4f1d1b7 | 2011-07-07 12:29:15 +0800 | [diff] [blame] | 301 | /* |
| 302 | * Environment Configuration |
| 303 | */ |
Mingkai Hu | 4f1d1b7 | 2011-07-07 12:29:15 +0800 | [diff] [blame] | 304 | |
Mingkai Hu | 4f1d1b7 | 2011-07-07 12:29:15 +0800 | [diff] [blame] | 305 | #define __USB_PHY_TYPE utmi |
| 306 | |
Tom Rini | 0613c36 | 2022-12-04 10:03:50 -0500 | [diff] [blame] | 307 | #define CFG_EXTRA_ENV_SETTINGS \ |
Mingkai Hu | 4f1d1b7 | 2011-07-07 12:29:15 +0800 | [diff] [blame] | 308 | "hwconfig=fsl_ddr:ctlr_intlv=cacheline," \ |
| 309 | "bank_intlv=cs0_cs1\0" \ |
| 310 | "netdev=eth0\0" \ |
Tom Rini | 54f80dd | 2022-12-02 16:42:27 -0500 | [diff] [blame] | 311 | "uboot=" CONFIG_UBOOTPATH "\0" \ |
Simon Glass | 9846390 | 2022-10-20 18:22:39 -0600 | [diff] [blame] | 312 | "ubootaddr=" __stringify(CONFIG_TEXT_BASE) "\0" \ |
Mingkai Hu | 4f1d1b7 | 2011-07-07 12:29:15 +0800 | [diff] [blame] | 313 | "tftpflash=tftpboot $loadaddr $uboot && " \ |
| 314 | "protect off $ubootaddr +$filesize && " \ |
| 315 | "erase $ubootaddr +$filesize && " \ |
| 316 | "cp.b $loadaddr $ubootaddr $filesize && " \ |
| 317 | "protect on $ubootaddr +$filesize && " \ |
| 318 | "cmp.b $loadaddr $ubootaddr $filesize\0" \ |
| 319 | "consoledev=ttyS0\0" \ |
Marek Vasut | 5368c55 | 2012-09-23 17:41:24 +0200 | [diff] [blame] | 320 | "usb_phy_type=" __stringify(__USB_PHY_TYPE) "\0" \ |
Mingkai Hu | 4f1d1b7 | 2011-07-07 12:29:15 +0800 | [diff] [blame] | 321 | "usb_dr_mode=host\0" \ |
| 322 | "ramdiskaddr=2000000\0" \ |
| 323 | "ramdiskfile=p2041rdb/ramdisk.uboot\0" \ |
Scott Wood | b24a4f6 | 2016-07-19 17:52:06 -0500 | [diff] [blame] | 324 | "fdtaddr=1e00000\0" \ |
Mingkai Hu | 4f1d1b7 | 2011-07-07 12:29:15 +0800 | [diff] [blame] | 325 | "fdtfile=p2041rdb/p2041rdb.dtb\0" \ |
Kim Phillips | 3246584 | 2014-05-14 19:33:45 -0500 | [diff] [blame] | 326 | "bdev=sda3\0" |
Mingkai Hu | 4f1d1b7 | 2011-07-07 12:29:15 +0800 | [diff] [blame] | 327 | |
Mingkai Hu | 4f1d1b7 | 2011-07-07 12:29:15 +0800 | [diff] [blame] | 328 | #include <asm/fsl_secure_boot.h> |
Mingkai Hu | 4f1d1b7 | 2011-07-07 12:29:15 +0800 | [diff] [blame] | 329 | |
Mingkai Hu | 4f1d1b7 | 2011-07-07 12:29:15 +0800 | [diff] [blame] | 330 | #endif /* __CONFIG_H */ |