1e6f2e902SMarian Balakowicz /* 2e6f2e902SMarian Balakowicz * (C) Copyright 2005 3e6f2e902SMarian Balakowicz * Wolfgang Denk, DENX Software Engineering, wd@denx.de. 4e6f2e902SMarian Balakowicz * 5*1a459660SWolfgang Denk * SPDX-License-Identifier: GPL-2.0+ 6e6f2e902SMarian Balakowicz */ 7e6f2e902SMarian Balakowicz 8e6f2e902SMarian Balakowicz /* 9e6f2e902SMarian Balakowicz * TQM8349 board configuration file 10e6f2e902SMarian Balakowicz */ 11e6f2e902SMarian Balakowicz 12e6f2e902SMarian Balakowicz #ifndef __CONFIG_H 13e6f2e902SMarian Balakowicz #define __CONFIG_H 14e6f2e902SMarian Balakowicz 15e6f2e902SMarian Balakowicz /* 16e6f2e902SMarian Balakowicz * High Level Configuration Options 17e6f2e902SMarian Balakowicz */ 18e6f2e902SMarian Balakowicz #define CONFIG_E300 1 /* E300 Family */ 192c7920afSPeter Tyser #define CONFIG_MPC834x 1 /* MPC834x specific */ 209ca880a2STimur Tabi #define CONFIG_MPC8349 1 /* MPC8349 specific */ 21e6f2e902SMarian Balakowicz #define CONFIG_TQM834X 1 /* TQM834X board specific */ 22e6f2e902SMarian Balakowicz 232ae18241SWolfgang Denk #define CONFIG_SYS_TEXT_BASE 0x80000000 242ae18241SWolfgang Denk 2516263087SMike Williams /* IMMR Base Address Register, use Freescale default: 0xff400000 */ 266d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_IMMR 0xff400000 27e6f2e902SMarian Balakowicz 28e6f2e902SMarian Balakowicz /* System clock. Primary input clock when in PCI host mode */ 29e6f2e902SMarian Balakowicz #define CONFIG_83XX_CLKIN 66666000 /* 66,666 MHz */ 30e6f2e902SMarian Balakowicz 31e6f2e902SMarian Balakowicz /* 32e6f2e902SMarian Balakowicz * Local Bus LCRR 33e6f2e902SMarian Balakowicz * LCRR: DLL bypass, Clock divider is 8 34e6f2e902SMarian Balakowicz * 35e6f2e902SMarian Balakowicz * for CSB = 266 MHz it gives LCB clock frequency = 33 MHz 36e6f2e902SMarian Balakowicz * 37e6f2e902SMarian Balakowicz * External Local Bus rate is 38e6f2e902SMarian Balakowicz * CLKIN * HRCWL_CSB_TO_CLKIN / HRCWL_LCL_BUS_TO_SCB_CLK / LCRR_CLKDIV 39e6f2e902SMarian Balakowicz */ 40c7190f02SKim Phillips #define CONFIG_SYS_LCRR_DBYP LCRR_DBYP 41c7190f02SKim Phillips #define CONFIG_SYS_LCRR_CLKDIV LCRR_CLKDIV_8 42e6f2e902SMarian Balakowicz 43e6f2e902SMarian Balakowicz /* board pre init: do not call, nothing to do */ 44e6f2e902SMarian Balakowicz 45e6f2e902SMarian Balakowicz /* detect the number of flash banks */ 46e6f2e902SMarian Balakowicz #define CONFIG_BOARD_EARLY_INIT_R 47e6f2e902SMarian Balakowicz 48e6f2e902SMarian Balakowicz /* 49e6f2e902SMarian Balakowicz * DDR Setup 50e6f2e902SMarian Balakowicz */ 51df939e16SJoe Hershberger /* DDR is system memory*/ 52df939e16SJoe Hershberger #define CONFIG_SYS_DDR_BASE 0x00000000 536d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_SDRAM_BASE CONFIG_SYS_DDR_BASE 546d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DDR_SDRAM_BASE CONFIG_SYS_DDR_BASE 55e6f2e902SMarian Balakowicz #define DDR_CASLAT_25 /* CASLAT set to 2.5 */ 56e6f2e902SMarian Balakowicz #undef CONFIG_DDR_ECC /* only for ECC DDR module */ 57e6f2e902SMarian Balakowicz #undef CONFIG_SPD_EEPROM /* do not use SPD EEPROM for DDR setup */ 58e6f2e902SMarian Balakowicz 596d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #undef CONFIG_SYS_DRAM_TEST /* memory test, takes time */ 606d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_MEMTEST_START 0x00000000 /* memtest region */ 616d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_MEMTEST_END 0x00100000 62e6f2e902SMarian Balakowicz 63e6f2e902SMarian Balakowicz /* 64e6f2e902SMarian Balakowicz * FLASH on the Local Bus 65e6f2e902SMarian Balakowicz */ 666d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_FLASH_CFI /* use the Common Flash Interface */ 6700b1883aSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_FLASH_CFI_DRIVER /* use the CFI driver */ 686d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #undef CONFIG_SYS_FLASH_CHECKSUM 696d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_FLASH_BASE 0x80000000 /* start of FLASH */ 706d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_FLASH_SIZE 8 /* FLASH size in MB */ 71a3455c00SWolfgang Denk #define CONFIG_SYS_FLASH_EMPTY_INFO /* print 'E' for empty sectors */ 72a3455c00SWolfgang Denk #define CONFIG_SYS_FLASH_USE_BUFFER_WRITE 73e6f2e902SMarian Balakowicz 74e6f2e902SMarian Balakowicz /* 75e6f2e902SMarian Balakowicz * FLASH bank number detection 76e6f2e902SMarian Balakowicz */ 77e6f2e902SMarian Balakowicz 78e6f2e902SMarian Balakowicz /* 79df939e16SJoe Hershberger * When CONFIG_SYS_MAX_FLASH_BANKS_DETECT is defined, the actual number of 80df939e16SJoe Hershberger * Flash banks has to be determined at runtime and stored in a gloabl variable 81df939e16SJoe Hershberger * tqm834x_num_flash_banks. The value of CONFIG_SYS_MAX_FLASH_BANKS_DETECT is 82df939e16SJoe Hershberger * only used instead of CONFIG_SYS_MAX_FLASH_BANKS to allocate the array 83df939e16SJoe Hershberger * flash_info, and should be made sufficiently large to accomodate the number 84df939e16SJoe Hershberger * of banks that might actually be detected. Since most (all?) Flash related 85df939e16SJoe Hershberger * functions use CONFIG_SYS_MAX_FLASH_BANKS as the number of actual banks on 86df939e16SJoe Hershberger * the board, it is defined as tqm834x_num_flash_banks. 87e6f2e902SMarian Balakowicz */ 886d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_MAX_FLASH_BANKS_DETECT 2 89e6f2e902SMarian Balakowicz 906d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_MAX_FLASH_SECT 512 /* max sectors per device */ 91e6f2e902SMarian Balakowicz 92e6f2e902SMarian Balakowicz /* 32 bit device at 0x80000000 via GPCM (0x8000_1801) */ 93df939e16SJoe Hershberger #define CONFIG_SYS_BR0_PRELIM ((CONFIG_SYS_FLASH_BASE & BR_BA) \ 94df939e16SJoe Hershberger | BR_MS_GPCM \ 95df939e16SJoe Hershberger | BR_PS_32 \ 96df939e16SJoe Hershberger | BR_V) 97e6f2e902SMarian Balakowicz 98e6f2e902SMarian Balakowicz /* FLASH timing (0x0000_0c54) */ 99df939e16SJoe Hershberger #define CONFIG_SYS_OR_TIMING_FLASH (OR_GPCM_CSNT \ 100df939e16SJoe Hershberger | OR_GPCM_ACS_DIV4 \ 101df939e16SJoe Hershberger | OR_GPCM_SCY_5 \ 102df939e16SJoe Hershberger | OR_GPCM_TRLX) 103e6f2e902SMarian Balakowicz 1047d6a0982SJoe Hershberger #define CONFIG_SYS_PRELIM_OR_AM OR_AM_1GB /* OR addr mask: 1 GiB */ 105e6f2e902SMarian Balakowicz 106df939e16SJoe Hershberger #define CONFIG_SYS_OR0_PRELIM (CONFIG_SYS_PRELIM_OR_AM \ 107df939e16SJoe Hershberger | CONFIG_SYS_OR_TIMING_FLASH) 108e6f2e902SMarian Balakowicz 1097d6a0982SJoe Hershberger #define CONFIG_SYS_LBLAWAR0_PRELIM (LBLAWAR_EN | LBLAWAR_1GB) 1106902df56SRafal Jaworowski 111df939e16SJoe Hershberger /* Window base at flash base */ 112df939e16SJoe Hershberger #define CONFIG_SYS_LBLAWBAR0_PRELIM CONFIG_SYS_FLASH_BASE 113e6f2e902SMarian Balakowicz 114e6f2e902SMarian Balakowicz /* disable remaining mappings */ 1156d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_BR1_PRELIM 0x00000000 1166d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_OR1_PRELIM 0x00000000 1176d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_LBLAWBAR1_PRELIM 0x00000000 1186d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_LBLAWAR1_PRELIM 0x00000000 119e6f2e902SMarian Balakowicz 1206d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_BR2_PRELIM 0x00000000 1216d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_OR2_PRELIM 0x00000000 1226d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_LBLAWBAR2_PRELIM 0x00000000 1236d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_LBLAWAR2_PRELIM 0x00000000 124e6f2e902SMarian Balakowicz 1256d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_BR3_PRELIM 0x00000000 1266d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_OR3_PRELIM 0x00000000 1276d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_LBLAWBAR3_PRELIM 0x00000000 1286d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_LBLAWAR3_PRELIM 0x00000000 129e6f2e902SMarian Balakowicz 130e6f2e902SMarian Balakowicz /* 131e6f2e902SMarian Balakowicz * Monitor config 132e6f2e902SMarian Balakowicz */ 13314d0a02aSWolfgang Denk #define CONFIG_SYS_MONITOR_BASE CONFIG_SYS_TEXT_BASE /* start of monitor */ 134e6f2e902SMarian Balakowicz 1356d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #if (CONFIG_SYS_MONITOR_BASE < CONFIG_SYS_FLASH_BASE) 1366d0f6bcfSJean-Christophe PLAGNIOL-VILLARD # define CONFIG_SYS_RAMBOOT 137e6f2e902SMarian Balakowicz #else 1386d0f6bcfSJean-Christophe PLAGNIOL-VILLARD # undef CONFIG_SYS_RAMBOOT 139e6f2e902SMarian Balakowicz #endif 140e6f2e902SMarian Balakowicz 1416d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_INIT_RAM_LOCK 1 1426d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_INIT_RAM_ADDR 0x20000000 /* Initial RAM address */ 143553f0982SWolfgang Denk #define CONFIG_SYS_INIT_RAM_SIZE 0x1000 /* Size of used area in RAM*/ 144e6f2e902SMarian Balakowicz 145df939e16SJoe Hershberger #define CONFIG_SYS_GBL_DATA_OFFSET \ 146df939e16SJoe Hershberger (CONFIG_SYS_INIT_RAM_SIZE - GENERATED_GBL_DATA_SIZE) 1476d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_INIT_SP_OFFSET CONFIG_SYS_GBL_DATA_OFFSET 148e6f2e902SMarian Balakowicz 149df939e16SJoe Hershberger /* Reserve 384 kB = 3 sect. for Mon */ 150df939e16SJoe Hershberger #define CONFIG_SYS_MONITOR_LEN (384 * 1024) 151df939e16SJoe Hershberger /* Reserve 512 kB for malloc */ 152df939e16SJoe Hershberger #define CONFIG_SYS_MALLOC_LEN (512 * 1024) 153e6f2e902SMarian Balakowicz 154e6f2e902SMarian Balakowicz /* 155e6f2e902SMarian Balakowicz * Serial Port 156e6f2e902SMarian Balakowicz */ 157e6f2e902SMarian Balakowicz #define CONFIG_CONS_INDEX 1 1586d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_NS16550_SERIAL 1596d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_NS16550_REG_SIZE 1 1606d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_NS16550_CLK get_bus_freq(0) 161e6f2e902SMarian Balakowicz 1626d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_BAUDRATE_TABLE \ 163e6f2e902SMarian Balakowicz {300, 600, 1200, 2400, 4800, 9600, 19200, 38400, 115200} 164e6f2e902SMarian Balakowicz 1656d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_NS16550_COM1 (CONFIG_SYS_IMMR + 0x4500) 1666d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_NS16550_COM2 (CONFIG_SYS_IMMR + 0x4600) 167e6f2e902SMarian Balakowicz 168e6f2e902SMarian Balakowicz /* 169e6f2e902SMarian Balakowicz * I2C 170e6f2e902SMarian Balakowicz */ 17100f792e0SHeiko Schocher #define CONFIG_SYS_I2C 17200f792e0SHeiko Schocher #define CONFIG_SYS_I2C_FSL 17300f792e0SHeiko Schocher #define CONFIG_SYS_FSL_I2C_SPEED 400000 17400f792e0SHeiko Schocher #define CONFIG_SYS_FSL_I2C_SLAVE 0x7F 17500f792e0SHeiko Schocher #define CONFIG_SYS_FSL_I2C_OFFSET 0x3000 176e6f2e902SMarian Balakowicz 177e6f2e902SMarian Balakowicz /* I2C EEPROM, configuration for onboard EEPROMs 24C256 and 24C32 */ 1786d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_I2C_EEPROM_ADDR 0x50 /* 1010000x */ 1796d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_I2C_EEPROM_ADDR_LEN 2 /* 16 bit */ 180df939e16SJoe Hershberger #define CONFIG_SYS_EEPROM_PAGE_WRITE_BITS 5 /* 32 bytes/write */ 1816d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_EEPROM_PAGE_WRITE_DELAY_MS 12 /* 10ms +/- 20% */ 182e6f2e902SMarian Balakowicz 183e6f2e902SMarian Balakowicz /* I2C RTC */ 184e6f2e902SMarian Balakowicz #define CONFIG_RTC_DS1337 /* use ds1337 rtc via i2c */ 1856d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_I2C_RTC_ADDR 0x68 /* at address 0x68 */ 186e6f2e902SMarian Balakowicz 187e6f2e902SMarian Balakowicz /* 188e6f2e902SMarian Balakowicz * TSEC 189e6f2e902SMarian Balakowicz */ 190e6f2e902SMarian Balakowicz #define CONFIG_TSEC_ENET /* tsec ethernet support */ 191e6f2e902SMarian Balakowicz #define CONFIG_MII 192e6f2e902SMarian Balakowicz 1936d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_TSEC1_OFFSET 0x24000 1946d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_TSEC1 (CONFIG_SYS_IMMR + CONFIG_SYS_TSEC1_OFFSET) 1956d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_TSEC2_OFFSET 0x25000 1966d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_TSEC2 (CONFIG_SYS_IMMR + CONFIG_SYS_TSEC2_OFFSET) 197e6f2e902SMarian Balakowicz 198e6f2e902SMarian Balakowicz #if defined(CONFIG_TSEC_ENET) 199e6f2e902SMarian Balakowicz 200255a3577SKim Phillips #define CONFIG_TSEC1 1 201255a3577SKim Phillips #define CONFIG_TSEC1_NAME "TSEC0" 202255a3577SKim Phillips #define CONFIG_TSEC2 1 203255a3577SKim Phillips #define CONFIG_TSEC2_NAME "TSEC1" 204b6f84356SWolfgang Denk #define TSEC1_PHY_ADDR 2 205e6f2e902SMarian Balakowicz #define TSEC2_PHY_ADDR 1 206e6f2e902SMarian Balakowicz #define TSEC1_PHYIDX 0 207e6f2e902SMarian Balakowicz #define TSEC2_PHYIDX 0 2083a79013eSAndy Fleming #define TSEC1_FLAGS TSEC_GIGABIT 2093a79013eSAndy Fleming #define TSEC2_FLAGS TSEC_GIGABIT 210e6f2e902SMarian Balakowicz 211e6f2e902SMarian Balakowicz /* Options are: TSEC[0-1] */ 212e6f2e902SMarian Balakowicz #define CONFIG_ETHPRIME "TSEC0" 213e6f2e902SMarian Balakowicz 214e6f2e902SMarian Balakowicz #endif /* CONFIG_TSEC_ENET */ 215e6f2e902SMarian Balakowicz 216e6f2e902SMarian Balakowicz #if defined(CONFIG_PCI) 217e6f2e902SMarian Balakowicz 2186902df56SRafal Jaworowski #define CONFIG_PCI_SCAN_SHOW /* show pci devices on startup */ 2196902df56SRafal Jaworowski 2206902df56SRafal Jaworowski /* PCI1 host bridge */ 22127c5248dSKim Phillips #define CONFIG_SYS_PCI1_MEM_BASE 0x90000000 2226d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_PCI1_MEM_PHYS CONFIG_SYS_PCI1_MEM_BASE 2239993e196SKim Phillips #define CONFIG_SYS_PCI1_MEM_SIZE 0x10000000 /* 256M */ 224df939e16SJoe Hershberger #define CONFIG_SYS_PCI1_MMIO_BASE \ 225df939e16SJoe Hershberger (CONFIG_SYS_PCI1_MEM_BASE + CONFIG_SYS_PCI1_MEM_SIZE) 2269993e196SKim Phillips #define CONFIG_SYS_PCI1_MMIO_PHYS CONFIG_SYS_PCI1_MMIO_BASE 2279993e196SKim Phillips #define CONFIG_SYS_PCI1_MMIO_SIZE 0x10000000 /* 256M */ 2286d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_PCI1_IO_BASE 0xe2000000 2296d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_PCI1_IO_PHYS CONFIG_SYS_PCI1_IO_BASE 2306d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_PCI1_IO_SIZE 0x1000000 /* 16M */ 2316902df56SRafal Jaworowski 232e6f2e902SMarian Balakowicz #undef CONFIG_EEPRO100 23363ff004cSMarian Balakowicz #define CONFIG_EEPRO100 234e6f2e902SMarian Balakowicz #undef CONFIG_TULIP 235e6f2e902SMarian Balakowicz 236e6f2e902SMarian Balakowicz #if !defined(CONFIG_PCI_PNP) 2376d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define PCI_ENET0_IOADDR CONFIG_SYS_PCI1_IO_BASE 2386d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define PCI_ENET0_MEMADDR CONFIG_SYS_PCI1_MEM_BASE 2396902df56SRafal Jaworowski #define PCI_IDSEL_NUMBER 0x1c /* slot0 (IDSEL) = 28 */ 240e6f2e902SMarian Balakowicz #endif 241e6f2e902SMarian Balakowicz 2426d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_PCI_SUBSYS_VENDORID 0x1957 /* Freescale */ 243e6f2e902SMarian Balakowicz 244e6f2e902SMarian Balakowicz #endif /* CONFIG_PCI */ 245e6f2e902SMarian Balakowicz 246e6f2e902SMarian Balakowicz /* 247e6f2e902SMarian Balakowicz * Environment 248e6f2e902SMarian Balakowicz */ 249df939e16SJoe Hershberger #define CONFIG_ENV_ADDR \ 250df939e16SJoe Hershberger (CONFIG_SYS_MONITOR_BASE + CONFIG_SYS_MONITOR_LEN) 251929b79a0SWolfgang Denk #define CONFIG_ENV_SECT_SIZE 0x20000 /* 128K (one sector) for env */ 252929b79a0SWolfgang Denk #define CONFIG_ENV_SIZE 0x8000 /* 32K max size */ 253929b79a0SWolfgang Denk #define CONFIG_ENV_ADDR_REDUND (CONFIG_ENV_ADDR + CONFIG_ENV_SECT_SIZE) 254929b79a0SWolfgang Denk #define CONFIG_ENV_SIZE_REDUND (CONFIG_ENV_SIZE) 255929b79a0SWolfgang Denk 256e6f2e902SMarian Balakowicz #define CONFIG_LOADS_ECHO 1 /* echo on for serial download */ 2576d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_LOADS_BAUD_CHANGE 1 /* allow baudrate change */ 258e6f2e902SMarian Balakowicz 2592694690eSJon Loeliger /* 260a1aa0bb5SJon Loeliger * BOOTP options 261a1aa0bb5SJon Loeliger */ 262a1aa0bb5SJon Loeliger #define CONFIG_BOOTP_BOOTFILESIZE 263a1aa0bb5SJon Loeliger #define CONFIG_BOOTP_BOOTPATH 264a1aa0bb5SJon Loeliger #define CONFIG_BOOTP_GATEWAY 265a1aa0bb5SJon Loeliger #define CONFIG_BOOTP_HOSTNAME 266a1aa0bb5SJon Loeliger 267a1aa0bb5SJon Loeliger /* 268e6f2e902SMarian Balakowicz * Miscellaneous configurable options 269e6f2e902SMarian Balakowicz */ 2706d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_LONGHELP /* undef to save memory */ 2716d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_LOAD_ADDR 0x2000000 /* default load address */ 272e6f2e902SMarian Balakowicz 2732751a95aSWolfgang Denk #define CONFIG_CMDLINE_EDITING 1 /* add command line history */ 274a059e90eSKim Phillips #define CONFIG_AUTO_COMPLETE /* add autocompletion support */ 275a059e90eSKim Phillips 276e6f2e902SMarian Balakowicz #undef CONFIG_WATCHDOG /* watchdog disabled */ 277e6f2e902SMarian Balakowicz 278e6f2e902SMarian Balakowicz /* 279e6f2e902SMarian Balakowicz * For booting Linux, the board info and command line data 2809f530d59SIra W. Snyder * have to be in the first 256 MB of memory, since this is 281e6f2e902SMarian Balakowicz * the maximum mapped by the Linux kernel during initialization. 282e6f2e902SMarian Balakowicz */ 283df939e16SJoe Hershberger /* Initial Memory map for Linux */ 284df939e16SJoe Hershberger #define CONFIG_SYS_BOOTMAPSZ (256 << 20) 285e6f2e902SMarian Balakowicz 2866d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_HRCW_LOW (\ 287e6f2e902SMarian Balakowicz HRCWL_LCL_BUS_TO_SCB_CLK_1X1 |\ 288e6f2e902SMarian Balakowicz HRCWL_DDR_TO_SCB_CLK_1X1 |\ 289e6f2e902SMarian Balakowicz HRCWL_CSB_TO_CLKIN_4X1 |\ 290e6f2e902SMarian Balakowicz HRCWL_VCO_1X2 |\ 291e6f2e902SMarian Balakowicz HRCWL_CORE_TO_CSB_2X1) 292e6f2e902SMarian Balakowicz 293e6f2e902SMarian Balakowicz #if defined(PCI_64BIT) 2946d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_HRCW_HIGH (\ 295e6f2e902SMarian Balakowicz HRCWH_PCI_HOST |\ 296e6f2e902SMarian Balakowicz HRCWH_64_BIT_PCI |\ 297e6f2e902SMarian Balakowicz HRCWH_PCI1_ARBITER_ENABLE |\ 298e6f2e902SMarian Balakowicz HRCWH_PCI2_ARBITER_DISABLE |\ 299e6f2e902SMarian Balakowicz HRCWH_CORE_ENABLE |\ 300e6f2e902SMarian Balakowicz HRCWH_FROM_0X00000100 |\ 301e6f2e902SMarian Balakowicz HRCWH_BOOTSEQ_DISABLE |\ 302e6f2e902SMarian Balakowicz HRCWH_SW_WATCHDOG_DISABLE |\ 303e6f2e902SMarian Balakowicz HRCWH_ROM_LOC_LOCAL_16BIT |\ 304e6f2e902SMarian Balakowicz HRCWH_TSEC1M_IN_GMII |\ 305e6f2e902SMarian Balakowicz HRCWH_TSEC2M_IN_GMII) 306e6f2e902SMarian Balakowicz #else 3076d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_HRCW_HIGH (\ 308e6f2e902SMarian Balakowicz HRCWH_PCI_HOST |\ 309e6f2e902SMarian Balakowicz HRCWH_32_BIT_PCI |\ 310e6f2e902SMarian Balakowicz HRCWH_PCI1_ARBITER_ENABLE |\ 3116902df56SRafal Jaworowski HRCWH_PCI2_ARBITER_DISABLE |\ 312e6f2e902SMarian Balakowicz HRCWH_CORE_ENABLE |\ 313e6f2e902SMarian Balakowicz HRCWH_FROM_0X00000100 |\ 314e6f2e902SMarian Balakowicz HRCWH_BOOTSEQ_DISABLE |\ 315e6f2e902SMarian Balakowicz HRCWH_SW_WATCHDOG_DISABLE |\ 316e6f2e902SMarian Balakowicz HRCWH_ROM_LOC_LOCAL_16BIT |\ 317e6f2e902SMarian Balakowicz HRCWH_TSEC1M_IN_GMII |\ 318e6f2e902SMarian Balakowicz HRCWH_TSEC2M_IN_GMII) 319e6f2e902SMarian Balakowicz #endif 320e6f2e902SMarian Balakowicz 3219260a561SKumar Gala /* System IO Config */ 3223c9b1ee1SKim Phillips #define CONFIG_SYS_SICRH 0 3236d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_SICRL SICRL_LDP_A 3249260a561SKumar Gala 325e6f2e902SMarian Balakowicz /* i-cache and d-cache disabled */ 3266d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_HID0_INIT 0x000000000 3271a2e203bSKim Phillips #define CONFIG_SYS_HID0_FINAL (CONFIG_SYS_HID0_INIT | \ 3281a2e203bSKim Phillips HID0_ENABLE_INSTRUCTION_CACHE) 3296d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_HID2 HID2_HBE 330e6f2e902SMarian Balakowicz 33131d82672SBecky Bruce #define CONFIG_HIGH_BATS 1 /* High BATs supported */ 33231d82672SBecky Bruce 3332688e2f9SKumar Gala /* DDR 0 - 512M */ 334df939e16SJoe Hershberger #define CONFIG_SYS_IBAT0L (CONFIG_SYS_SDRAM_BASE \ 33572cd4087SJoe Hershberger | BATL_PP_RW \ 336df939e16SJoe Hershberger | BATL_MEMCOHERENCE) 337df939e16SJoe Hershberger #define CONFIG_SYS_IBAT0U (CONFIG_SYS_SDRAM_BASE \ 338df939e16SJoe Hershberger | BATU_BL_256M \ 339df939e16SJoe Hershberger | BATU_VS \ 340df939e16SJoe Hershberger | BATU_VP) 341df939e16SJoe Hershberger #define CONFIG_SYS_IBAT1L (CONFIG_SYS_SDRAM_BASE + 0x10000000 \ 34272cd4087SJoe Hershberger | BATL_PP_RW \ 343df939e16SJoe Hershberger | BATL_MEMCOHERENCE) 344df939e16SJoe Hershberger #define CONFIG_SYS_IBAT1U (CONFIG_SYS_SDRAM_BASE + 0x10000000 \ 345df939e16SJoe Hershberger | BATU_BL_256M \ 346df939e16SJoe Hershberger | BATU_VS \ 347df939e16SJoe Hershberger | BATU_VP) 3482688e2f9SKumar Gala 3492688e2f9SKumar Gala /* stack in DCACHE @ 512M (no backing mem) */ 350df939e16SJoe Hershberger #define CONFIG_SYS_IBAT2L (CONFIG_SYS_INIT_RAM_ADDR \ 35172cd4087SJoe Hershberger | BATL_PP_RW \ 352df939e16SJoe Hershberger | BATL_MEMCOHERENCE) 353df939e16SJoe Hershberger #define CONFIG_SYS_IBAT2U (CONFIG_SYS_INIT_RAM_ADDR \ 354df939e16SJoe Hershberger | BATU_BL_128K \ 355df939e16SJoe Hershberger | BATU_VS \ 356df939e16SJoe Hershberger | BATU_VP) 3572688e2f9SKumar Gala 3582688e2f9SKumar Gala /* PCI */ 3596fe16a87SRafal Jaworowski #ifdef CONFIG_PCI 360842033e6SGabor Juhos #define CONFIG_PCI_INDIRECT_BRIDGE 361df939e16SJoe Hershberger #define CONFIG_SYS_IBAT3L (CONFIG_SYS_PCI1_MEM_BASE \ 36272cd4087SJoe Hershberger | BATL_PP_RW \ 363df939e16SJoe Hershberger | BATL_MEMCOHERENCE) 364df939e16SJoe Hershberger #define CONFIG_SYS_IBAT3U (CONFIG_SYS_PCI1_MEM_BASE \ 365df939e16SJoe Hershberger | BATU_BL_256M \ 366df939e16SJoe Hershberger | BATU_VS \ 367df939e16SJoe Hershberger | BATU_VP) 368df939e16SJoe Hershberger #define CONFIG_SYS_IBAT4L (CONFIG_SYS_PCI1_MMIO_BASE \ 36972cd4087SJoe Hershberger | BATL_PP_RW \ 370df939e16SJoe Hershberger | BATL_MEMCOHERENCE \ 371df939e16SJoe Hershberger | BATL_GUARDEDSTORAGE) 372df939e16SJoe Hershberger #define CONFIG_SYS_IBAT4U (CONFIG_SYS_PCI1_MMIO_BASE \ 373df939e16SJoe Hershberger | BATU_BL_256M \ 374df939e16SJoe Hershberger | BATU_VS \ 375df939e16SJoe Hershberger | BATU_VP) 376df939e16SJoe Hershberger #define CONFIG_SYS_IBAT5L (CONFIG_SYS_PCI1_IO_BASE \ 37772cd4087SJoe Hershberger | BATL_PP_RW \ 378df939e16SJoe Hershberger | BATL_CACHEINHIBIT \ 379df939e16SJoe Hershberger | BATL_GUARDEDSTORAGE) 380df939e16SJoe Hershberger #define CONFIG_SYS_IBAT5U (CONFIG_SYS_PCI1_IO_BASE \ 381df939e16SJoe Hershberger | BATU_BL_16M \ 382df939e16SJoe Hershberger | BATU_VS \ 383df939e16SJoe Hershberger | BATU_VP) 3846fe16a87SRafal Jaworowski #else 3856d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_IBAT3L (0) 3866d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_IBAT3U (0) 3876d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_IBAT4L (0) 3886d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_IBAT4U (0) 3896d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_IBAT5L (0) 3906d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_IBAT5U (0) 3916fe16a87SRafal Jaworowski #endif 3922688e2f9SKumar Gala 3932688e2f9SKumar Gala /* IMMRBAR */ 394df939e16SJoe Hershberger #define CONFIG_SYS_IBAT6L (CONFIG_SYS_IMMR \ 39572cd4087SJoe Hershberger | BATL_PP_RW \ 396df939e16SJoe Hershberger | BATL_CACHEINHIBIT \ 397df939e16SJoe Hershberger | BATL_GUARDEDSTORAGE) 398df939e16SJoe Hershberger #define CONFIG_SYS_IBAT6U (CONFIG_SYS_IMMR \ 399df939e16SJoe Hershberger | BATU_BL_1M \ 400df939e16SJoe Hershberger | BATU_VS \ 401df939e16SJoe Hershberger | BATU_VP) 4022688e2f9SKumar Gala 4032688e2f9SKumar Gala /* FLASH */ 404df939e16SJoe Hershberger #define CONFIG_SYS_IBAT7L (CONFIG_SYS_FLASH_BASE \ 40572cd4087SJoe Hershberger | BATL_PP_RW \ 406df939e16SJoe Hershberger | BATL_CACHEINHIBIT \ 407df939e16SJoe Hershberger | BATL_GUARDEDSTORAGE) 408df939e16SJoe Hershberger #define CONFIG_SYS_IBAT7U (CONFIG_SYS_FLASH_BASE \ 409df939e16SJoe Hershberger | BATU_BL_256M \ 410df939e16SJoe Hershberger | BATU_VS \ 411df939e16SJoe Hershberger | BATU_VP) 4122688e2f9SKumar Gala 4136d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DBAT0L CONFIG_SYS_IBAT0L 4146d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DBAT0U CONFIG_SYS_IBAT0U 4156d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DBAT1L CONFIG_SYS_IBAT1L 4166d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DBAT1U CONFIG_SYS_IBAT1U 4176d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DBAT2L CONFIG_SYS_IBAT2L 4186d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DBAT2U CONFIG_SYS_IBAT2U 4196d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DBAT3L CONFIG_SYS_IBAT3L 4206d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DBAT3U CONFIG_SYS_IBAT3U 4216d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DBAT4L CONFIG_SYS_IBAT4L 4226d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DBAT4U CONFIG_SYS_IBAT4U 4236d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DBAT5L CONFIG_SYS_IBAT5L 4246d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DBAT5U CONFIG_SYS_IBAT5U 4256d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DBAT6L CONFIG_SYS_IBAT6L 4266d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DBAT6U CONFIG_SYS_IBAT6U 4276d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DBAT7L CONFIG_SYS_IBAT7L 4286d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DBAT7U CONFIG_SYS_IBAT7U 4292688e2f9SKumar Gala 4302694690eSJon Loeliger #if defined(CONFIG_CMD_KGDB) 431e6f2e902SMarian Balakowicz #define CONFIG_KGDB_BAUDRATE 230400 /* speed of kgdb serial port */ 432e6f2e902SMarian Balakowicz #endif 433e6f2e902SMarian Balakowicz 434e6f2e902SMarian Balakowicz /* 435e6f2e902SMarian Balakowicz * Environment Configuration 436e6f2e902SMarian Balakowicz */ 437e6f2e902SMarian Balakowicz 438df939e16SJoe Hershberger /* default location for tftp and bootm */ 439df939e16SJoe Hershberger #define CONFIG_LOADADDR 400000 440e6f2e902SMarian Balakowicz 441e6f2e902SMarian Balakowicz #define CONFIG_PREBOOT "echo;" \ 44232bf3d14SWolfgang Denk "echo Type \\\"run flash_nfs\\\" to mount root filesystem over NFS;" \ 443e6f2e902SMarian Balakowicz "echo" 444e6f2e902SMarian Balakowicz 445e6f2e902SMarian Balakowicz #define CONFIG_EXTRA_ENV_SETTINGS \ 446e6f2e902SMarian Balakowicz "netdev=eth0\0" \ 447b931b3a9SWolfgang Denk "hostname=tqm834x\0" \ 448e6f2e902SMarian Balakowicz "nfsargs=setenv bootargs root=/dev/nfs rw " \ 449fe126d8bSWolfgang Denk "nfsroot=${serverip}:${rootpath}\0" \ 450e6f2e902SMarian Balakowicz "ramargs=setenv bootargs root=/dev/ram rw\0" \ 451fe126d8bSWolfgang Denk "addip=setenv bootargs ${bootargs} " \ 452fe126d8bSWolfgang Denk "ip=${ipaddr}:${serverip}:${gatewayip}:${netmask}" \ 453fe126d8bSWolfgang Denk ":${hostname}:${netdev}:off panic=1\0" \ 4544681e673SWolfgang Denk "addcons=setenv bootargs ${bootargs} console=ttyS0,${baudrate}\0" \ 4554681e673SWolfgang Denk "flash_nfs_old=run nfsargs addip addcons;" \ 456fe126d8bSWolfgang Denk "bootm ${kernel_addr}\0" \ 4574681e673SWolfgang Denk "flash_nfs=run nfsargs addip addcons;" \ 4584681e673SWolfgang Denk "bootm ${kernel_addr} - ${fdt_addr}\0" \ 4594681e673SWolfgang Denk "flash_self_old=run ramargs addip addcons;" \ 460fe126d8bSWolfgang Denk "bootm ${kernel_addr} ${ramdisk_addr}\0" \ 4614681e673SWolfgang Denk "flash_self=run ramargs addip addcons;" \ 4624681e673SWolfgang Denk "bootm ${kernel_addr} ${ramdisk_addr} ${fdt_addr}\0" \ 4634681e673SWolfgang Denk "net_nfs_old=tftp 400000 ${bootfile};" \ 4644681e673SWolfgang Denk "run nfsargs addip addcons;bootm\0" \ 4654681e673SWolfgang Denk "net_nfs=tftp ${kernel_addr_r} ${bootfile}; " \ 4664681e673SWolfgang Denk "tftp ${fdt_addr_r} ${fdt_file}; " \ 4674681e673SWolfgang Denk "run nfsargs addip addcons; " \ 4684681e673SWolfgang Denk "bootm ${kernel_addr_r} - ${fdt_addr_r}\0" \ 469e6f2e902SMarian Balakowicz "rootpath=/opt/eldk/ppc_6xx\0" \ 4704681e673SWolfgang Denk "bootfile=tqm834x/uImage\0" \ 4714681e673SWolfgang Denk "fdtfile=tqm834x/tqm834x.dtb\0" \ 4724681e673SWolfgang Denk "kernel_addr_r=400000\0" \ 4734681e673SWolfgang Denk "fdt_addr_r=600000\0" \ 4744681e673SWolfgang Denk "ramdisk_addr_r=800000\0" \ 4754681e673SWolfgang Denk "kernel_addr=800C0000\0" \ 4764681e673SWolfgang Denk "fdt_addr=800A0000\0" \ 4774681e673SWolfgang Denk "ramdisk_addr=80300000\0" \ 4784681e673SWolfgang Denk "u-boot=tqm834x/u-boot.bin\0" \ 4794681e673SWolfgang Denk "load=tftp 200000 ${u-boot}\0" \ 4804681e673SWolfgang Denk "update=protect off 80000000 +${filesize};" \ 4814681e673SWolfgang Denk "era 80000000 +${filesize};" \ 4824681e673SWolfgang Denk "cp.b 200000 80000000 ${filesize}\0" \ 483d8ab58b2SDetlev Zundel "upd=run load update\0" \ 484e6f2e902SMarian Balakowicz "" 485e6f2e902SMarian Balakowicz 486e6f2e902SMarian Balakowicz #define CONFIG_BOOTCOMMAND "run flash_self" 487e6f2e902SMarian Balakowicz 488e6f2e902SMarian Balakowicz /* 489e6f2e902SMarian Balakowicz * JFFS2 partitions 490e6f2e902SMarian Balakowicz */ 491e6f2e902SMarian Balakowicz /* mtdparts command line support */ 492942556a9SStefan Roese #define CONFIG_FLASH_CFI_MTD 493e6f2e902SMarian Balakowicz #define MTDIDS_DEFAULT "nor0=TQM834x-0" 494e6f2e902SMarian Balakowicz 495e6f2e902SMarian Balakowicz /* default mtd partition table */ 496a877004dSJens Gehrlein #define MTDPARTS_DEFAULT "mtdparts=TQM834x-0:256k(u-boot),256k(env)," \ 497e6f2e902SMarian Balakowicz "1m(kernel),2m(initrd)," \ 498e6f2e902SMarian Balakowicz "-(user);" \ 499e6f2e902SMarian Balakowicz 500e6f2e902SMarian Balakowicz #endif /* __CONFIG_H */ 501