eNET.h 23 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621
  1. /*
  2. * (C) Copyright 2008
  3. * Graeme Russ, graeme.russ@gmail.com.
  4. *
  5. * See file CREDITS for list of people who contributed to this
  6. * project.
  7. *
  8. * This program is free software; you can redistribute it and/or
  9. * modify it under the terms of the GNU General Public License as
  10. * published by the Free Software Foundation; either version 2 of
  11. * the License, or (at your option) any later version.
  12. *
  13. * This program is distributed in the hope that it will be useful,
  14. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  15. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  16. * GNU General Public License for more details.
  17. *
  18. * You should have received a copy of the GNU General Public License
  19. * along with this program; if not, write to the Free Software
  20. * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
  21. * MA 02111-1307 USA
  22. */
  23. #include <asm/ibmpc.h>
  24. /*
  25. * board/config.h - configuration options, board specific
  26. */
  27. #ifndef __CONFIG_H
  28. #define __CONFIG_H
  29. /*
  30. * High Level Configuration Options
  31. * (easy to change)
  32. */
  33. #define CONFIG_SYS_SC520
  34. #define CONFIG_SYS_SC520_SSI
  35. #define CONFIG_SHOW_BOOT_PROGRESS
  36. #define CONFIG_LAST_STAGE_INIT
  37. /*-----------------------------------------------------------------------
  38. * Watchdog Configuration
  39. * NOTE: If CONFIG_HW_WATCHDOG is NOT defined, the watchdog jumper on the
  40. * bottom (processor) board MUST be removed!
  41. */
  42. #undef CONFIG_WATCHDOG
  43. #define CONFIG_HW_WATCHDOG
  44. /*-----------------------------------------------------------------------
  45. * Real Time Clock Configuration
  46. */
  47. #define CONFIG_RTC_MC146818
  48. #define CONFIG_SYS_ISA_IO_BASE_ADDRESS 0
  49. /*-----------------------------------------------------------------------
  50. * Serial Configuration
  51. */
  52. #define CONFIG_SERIAL_MULTI
  53. #define CONFIG_CONS_INDEX 1
  54. #define CONFIG_SYS_NS16550
  55. #define CONFIG_SYS_NS16550_SERIAL
  56. #define CONFIG_SYS_NS16550_REG_SIZE 1
  57. #define CONFIG_SYS_NS16550_CLK 1843200
  58. #define CONFIG_BAUDRATE 9600
  59. #define CONFIG_SYS_BAUDRATE_TABLE {300, 600, 1200, 2400, 4800, \
  60. 9600, 19200, 38400, 115200}
  61. #define CONFIG_SYS_NS16550_COM1 UART0_BASE
  62. #define CONFIG_SYS_NS16550_COM2 UART1_BASE
  63. #define CONFIG_SYS_NS16550_COM3 (0x1000 + UART0_BASE)
  64. #define CONFIG_SYS_NS16550_COM4 (0x1000 + UART1_BASE)
  65. #define CONFIG_SYS_NS16550_PORT_MAPPED
  66. /*-----------------------------------------------------------------------
  67. * Video Configuration
  68. */
  69. #undef CONFIG_VIDEO
  70. #undef CONFIG_CFB_CONSOLE
  71. /*-----------------------------------------------------------------------
  72. * Command line configuration.
  73. */
  74. #include <config_cmd_default.h>
  75. #define CONFIG_CMD_BDI
  76. #define CONFIG_CMD_BOOTD
  77. #define CONFIG_CMD_CONSOLE
  78. #define CONFIG_CMD_DATE
  79. #define CONFIG_CMD_ECHO
  80. #define CONFIG_CMD_FLASH
  81. #define CONFIG_CMD_FPGA
  82. #define CONFIG_CMD_IMI
  83. #define CONFIG_CMD_IMLS
  84. #define CONFIG_CMD_IRQ
  85. #define CONFIG_CMD_ITEST
  86. #define CONFIG_CMD_LOADB
  87. #define CONFIG_CMD_LOADS
  88. #define CONFIG_CMD_MEMORY
  89. #define CONFIG_CMD_MISC
  90. #define CONFIG_CMD_NET
  91. #undef CONFIG_CMD_NFS
  92. #define CONFIG_CMD_PCI
  93. #define CONFIG_CMD_PING
  94. #define CONFIG_CMD_RUN
  95. #define CONFIG_CMD_SAVEENV
  96. #define CONFIG_CMD_SETGETDCR
  97. #define CONFIG_CMD_SOURCE
  98. #define CONFIG_CMD_XIMG
  99. #define CONFIG_BOOTDELAY 15
  100. #define CONFIG_BOOTARGS "root=/dev/mtdblock0 console=ttyS0,9600"
  101. #if defined(CONFIG_CMD_KGDB)
  102. #define CONFIG_KGDB_BAUDRATE 115200
  103. #define CONFIG_KGDB_SER_INDEX 2
  104. #endif
  105. /*
  106. * Miscellaneous configurable options
  107. */
  108. #define CONFIG_SYS_LONGHELP
  109. #define CONFIG_SYS_PROMPT "boot > "
  110. #define CONFIG_SYS_CBSIZE 256
  111. #define CONFIG_SYS_PBSIZE (CONFIG_SYS_CBSIZE + \
  112. sizeof(CONFIG_SYS_PROMPT) + \
  113. 16)
  114. #define CONFIG_SYS_MAXARGS 16
  115. #define CONFIG_SYS_BARGSIZE CONFIG_SYS_CBSIZE
  116. #define CONFIG_SYS_MEMTEST_START 0x00100000
  117. #define CONFIG_SYS_MEMTEST_END 0x01000000
  118. #define CONFIG_SYS_LOAD_ADDR 0x100000
  119. #define CONFIG_SYS_HZ 1000
  120. /*-----------------------------------------------------------------------
  121. * SDRAM Configuration
  122. */
  123. #define CONFIG_SYS_SDRAM_DRCTMCTL 0x18
  124. #define CONFIG_SYS_SDRAM_REFRESH_RATE 156
  125. #define CONFIG_NR_DRAM_BANKS 4
  126. /* CONFIG_SYS_SDRAM_DRCTMCTL Overrides the following*/
  127. #undef CONFIG_SYS_SDRAM_PRECHARGE_DELAY
  128. #undef CONFIG_SYS_SDRAM_RAS_CAS_DELAY
  129. #undef CONFIG_SYS_SDRAM_CAS_LATENCY_2T
  130. #undef CONFIG_SYS_SDRAM_CAS_LATENCY_3T
  131. /*-----------------------------------------------------------------------
  132. * CPU Features
  133. */
  134. #define CONFIG_SYS_SC520_HIGH_SPEED 0
  135. #define CONFIG_SYS_SC520_RESET
  136. #define CONFIG_SYS_SC520_TIMER
  137. #undef CONFIG_SYS_GENERIC_TIMER
  138. #define CONFIG_SYS_PCAT_INTERRUPTS
  139. #define CONFIG_SYS_NUM_IRQS 16
  140. /*-----------------------------------------------------------------------
  141. * Memory organization:
  142. * 32kB Stack
  143. * 16kB Cache-As-RAM @ 0x19200000
  144. * 256kB Monitor
  145. * (128kB + Environment Sector Size) malloc pool
  146. */
  147. #define CONFIG_SYS_STACK_SIZE (32 * 1024)
  148. #define CONFIG_SYS_CAR_ADDR 0x19200000
  149. #define CONFIG_SYS_CAR_SIZE (16 * 1024)
  150. #define CONFIG_SYS_INIT_SP_ADDR (CONFIG_SYS_CAR_ADDR + \
  151. CONFIG_SYS_CAR_SIZE)
  152. #define CONFIG_SYS_MONITOR_BASE CONFIG_SYS_TEXT_BASE
  153. #define CONFIG_SYS_MONITOR_LEN (256 * 1024)
  154. #define CONFIG_SYS_MALLOC_LEN (CONFIG_ENV_SECT_SIZE + \
  155. 128*1024)
  156. /* Address of temporary Global Data */
  157. #define CONFIG_SYS_INIT_GD_ADDR CONFIG_SYS_CAR_ADDR
  158. /* allow to overwrite serial and ethaddr */
  159. #define CONFIG_ENV_OVERWRITE
  160. /*-----------------------------------------------------------------------
  161. * FLASH configuration
  162. * 512kB Boot Flash @ 0x38000000 (Monitor @ 38040000)
  163. * 16MB StrataFlash #1 @ 0x10000000
  164. * 16MB StrataFlash #2 @ 0x11000000
  165. */
  166. #define CONFIG_FLASH_CFI_DRIVER
  167. #define CONFIG_FLASH_CFI_LEGACY
  168. #define CONFIG_SYS_FLASH_CFI
  169. #define CONFIG_SYS_MAX_FLASH_BANKS 3
  170. #define CONFIG_SYS_FLASH_BASE 0x38000000
  171. #define CONFIG_SYS_FLASH_BASE_1 0x10000000
  172. #define CONFIG_SYS_FLASH_BASE_2 0x11000000
  173. #define CONFIG_SYS_FLASH_BANKS_LIST {CONFIG_SYS_FLASH_BASE, \
  174. CONFIG_SYS_FLASH_BASE_1, \
  175. CONFIG_SYS_FLASH_BASE_2}
  176. #define CONFIG_SYS_FLASH_EMPTY_INFO
  177. #undef CONFIG_SYS_FLASH_USE_BUFFER_WRITE
  178. #define CONFIG_SYS_MAX_FLASH_SECT 128
  179. #define CONFIG_SYS_FLASH_CFI_WIDTH FLASH_CFI_8BIT
  180. #define CONFIG_SYS_FLASH_LEGACY_512Kx8
  181. #define CONFIG_SYS_FLASH_ERASE_TOUT 2000 /* ms */
  182. #define CONFIG_SYS_FLASH_WRITE_TOUT 2000 /* ms */
  183. /*-----------------------------------------------------------------------
  184. * Environment configuration
  185. * - Boot flash is 512kB with 64kB sectors
  186. * - StrataFlash is 32MB with 128kB sectors
  187. * - Redundant embedded environment is 25% of the Boot flash
  188. * - Redundant StrataFlash environment is <1% of the StrataFlash
  189. * - Environment is therefore located in StrataFlash
  190. * - Primary copy is located in first sector of first flash
  191. * - Redundant copy is located in second sector of first flash
  192. * - Stack is only 32kB, so environment size is limited to 4kB
  193. */
  194. #define CONFIG_ENV_IS_IN_FLASH
  195. #define CONFIG_ENV_SECT_SIZE 0x20000
  196. #define CONFIG_ENV_SIZE 0x01000
  197. #define CONFIG_ENV_ADDR CONFIG_SYS_FLASH_BASE_1
  198. #define CONFIG_ENV_ADDR_REDUND (CONFIG_SYS_FLASH_BASE_1 + \
  199. CONFIG_ENV_SECT_SIZE)
  200. #define CONFIG_ENV_SIZE_REDUND CONFIG_ENV_SIZE
  201. /*-----------------------------------------------------------------------
  202. * PCI configuration
  203. */
  204. #define CONFIG_PCI
  205. #define CONFIG_PCI_PNP
  206. #define CONFIG_SYS_FIRST_PCI_IRQ 10
  207. #define CONFIG_SYS_SECOND_PCI_IRQ 9
  208. #define CONFIG_SYS_THIRD_PCI_IRQ 11
  209. #define CONFIG_SYS_FORTH_PCI_IRQ 15
  210. /*-----------------------------------------------------------------------
  211. * Network device (TRL8100B) support
  212. */
  213. #define CONFIG_RTL8139
  214. /*-----------------------------------------------------------------------
  215. * BOOTCS Control (for AM29LV040B-120JC)
  216. *
  217. * 000 0 00 0 000 11 0 011 }- 0x0033
  218. * \ / | \| | \ / \| | \ /
  219. * | | | | | | | |
  220. * | | | | | | | +---- 3 Wait States (First Access)
  221. * | | | | | | +------- Reserved
  222. * | | | | | +--------- 3 Wait States (Subsequent Access)
  223. * | | | | +------------- Reserved
  224. * | | | +---------------- Non-Paged Mode
  225. * | | +------------------ 8 Bit Wide
  226. * | +--------------------- GP Bus
  227. * +------------------------ Reserved
  228. */
  229. #define CONFIG_SYS_SC520_BOOTCS_CTRL 0x0033
  230. /*-----------------------------------------------------------------------
  231. * ROMCS Control (for E28F128J3A-150 StrataFlash)
  232. *
  233. * 000 0 01 1 000 01 0 101 }- 0x0615
  234. * \ / | \| | \ / \| | \ /
  235. * | | | | | | | |
  236. * | | | | | | | +---- 5 Wait States (First Access)
  237. * | | | | | | +------- Reserved
  238. * | | | | | +--------- 1 Wait State (Subsequent Access)
  239. * | | | | +------------- Reserved
  240. * | | | +---------------- Paged Mode
  241. * | | +------------------ 16 Bit Wide
  242. * | +--------------------- GP Bus
  243. * +------------------------ Reserved
  244. */
  245. #define CONFIG_SYS_SC520_ROMCS1_CTRL 0x0615
  246. #define CONFIG_SYS_SC520_ROMCS2_CTRL 0x0615
  247. /*-----------------------------------------------------------------------
  248. * SC520 General Purpose Bus configuration
  249. *
  250. * Chip Select Offset 1 Clock Cycle
  251. * Chip Select Pulse Width 8 Clock Cycles
  252. * Chip Select Read Offset 2 Clock Cycles
  253. * Chip Select Read Width 6 Clock Cycles
  254. * Chip Select Write Offset 2 Clock Cycles
  255. * Chip Select Write Width 6 Clock Cycles
  256. * Chip Select Recovery Time 2 Clock Cycles
  257. *
  258. * Timing Diagram (from SC520 Register Set Manual - Order #22005B)
  259. *
  260. * |<-------------General Purpose Bus Cycle---------------->|
  261. * | |
  262. * ----------------------\__________________/------------------
  263. * |<--(GPCSOFF + 1)-->|<--(GPCSPW + 1)-->|<-(GPCSRT + 1)-> |
  264. *
  265. * ------------------------\_______________/-------------------
  266. * |<---(GPRDOFF + 1)--->|<-(GPRDW + 1)->|
  267. *
  268. * --------------------------\_______________/-----------------
  269. * |<----(GPWROFF + 1)---->|<-(GPWRW + 1)->|
  270. *
  271. * ________/-----------\_______________________________________
  272. * |<--->|<--------->|
  273. * ^ ^
  274. * (GPALEOFF + 1) |
  275. * |
  276. * (GPALEW + 1)
  277. */
  278. #define CONFIG_SYS_SC520_GPCSOFF 0x00
  279. #define CONFIG_SYS_SC520_GPCSPW 0x07
  280. #define CONFIG_SYS_SC520_GPRDOFF 0x01
  281. #define CONFIG_SYS_SC520_GPRDW 0x05
  282. #define CONFIG_SYS_SC520_GPWROFF 0x01
  283. #define CONFIG_SYS_SC520_GPWRW 0x05
  284. #define CONFIG_SYS_SC520_GPCSRT 0x01
  285. /*-----------------------------------------------------------------------
  286. * SC520 Programmable I/O configuration
  287. *
  288. * Pin Mode Dir. Description
  289. * ----------------------------------------------------------------------
  290. * PIO0 PIO Output Unused
  291. * PIO1 GPBHE# Output GP Bus Byte High Enable (active low)
  292. * PIO2 PIO Output Auxiliary power output enable
  293. * PIO3 GPAEN Output GP Bus Address Enable
  294. * PIO4 PIO Output Top Board Enable (active low)
  295. * PIO5 PIO Output StrataFlash 16 bit mode (low = 8 bit mode)
  296. * PIO6 PIO Input Data output of Power Supply ADC
  297. * PIO7 PIO Output Clock input to Power Supply ADC
  298. * PIO8 PIO Output Chip Select input of Power Supply ADC
  299. * PIO9 PIO Output StrataFlash 1 Reset / Power Down (active low)
  300. * PIO10 PIO Output StrataFlash 2 Reset / Power Down (active low)
  301. * PIO11 PIO Input StrataFlash 1 Status
  302. * PIO12 PIO Input StrataFlash 2 Status
  303. * PIO13 GPIRQ10# Input Can Bus / I2C IRQ (active low)
  304. * PIO14 PIO Input Low Input Voltage Warning (active low)
  305. * PIO15 PIO Output Watchdog (must toggle at least every 1.6s)
  306. * PIO16 PIO Input Power Fail
  307. * PIO17 GPIRQ6 Input Compact Flash 1 IRQ (active low)
  308. * PIO18 GPIRQ5 Input Compact Flash 2 IRQ (active low)
  309. * PIO19 GPIRQ4# Input Dual-Port RAM IRQ (active low)
  310. * PIO20 GPIRQ3 Input UART D IRQ
  311. * PIO21 GPIRQ2 Input UART C IRQ
  312. * PIO22 GPIRQ1 Input UART B IRQ
  313. * PIO23 GPIRQ0 Input UART A IRQ
  314. * PIO24 GPDBUFOE# Output GP Bus Data Bus Buffer Output Enable
  315. * PIO25 PIO Input Battery OK Indication
  316. * PIO26 GPMEMCS16# Input GP Bus Memory Chip-Select 16-bit access
  317. * PIO27 GPCS0# Output SRAM 1 Chip Select
  318. * PIO28 PIO Input Top Board UART CTS
  319. * PIO29 PIO Output FPGA Program Mode (active low)
  320. * PIO30 PIO Input FPGA Initialised (active low)
  321. * PIO31 PIO Input FPGA Done (active low)
  322. */
  323. #define CONFIG_SYS_SC520_PIOPFS15_0 0x200a
  324. #define CONFIG_SYS_SC520_PIOPFS31_16 0x0dfe
  325. #define CONFIG_SYS_SC520_PIODIR15_0 0x87bf
  326. #define CONFIG_SYS_SC520_PIODIR31_16 0x2900
  327. /*-----------------------------------------------------------------------
  328. * PIO Pin defines
  329. */
  330. #define CONFIG_SYS_ENET_AUX_PWR 0x0004
  331. #define CONFIG_SYS_ENET_TOP_BRD_PWR 0x0010
  332. #define CONFIG_SYS_ENET_SF_WIDTH 0x0020
  333. #define CONFIG_SYS_ENET_PWR_ADC_DATA 0x0040
  334. #define CONFIG_SYS_ENET_PWR_ADC_CLK 0x0080
  335. #define CONFIG_SYS_ENET_PWR_ADC_CS 0x0100
  336. #define CONFIG_SYS_ENET_SF1_MODE 0x0200
  337. #define CONFIG_SYS_ENET_SF2_MODE 0x0400
  338. #define CONFIG_SYS_ENET_SF1_STATUS 0x0800
  339. #define CONFIG_SYS_ENET_SF2_STATUS 0x1000
  340. #define CONFIG_SYS_ENET_PWR_STATUS 0x4000
  341. #define CONFIG_SYS_ENET_WATCHDOG 0x8000
  342. #define CONFIG_SYS_ENET_PWR_FAIL 0x0001
  343. #define CONFIG_SYS_ENET_BAT_OK 0x0200
  344. #define CONFIG_SYS_ENET_TOP_BRD_CTS 0x1000
  345. #define CONFIG_SYS_ENET_FPGA_PROG 0x2000
  346. #define CONFIG_SYS_ENET_FPGA_INIT 0x4000
  347. #define CONFIG_SYS_ENET_FPGA_DONE 0x8000
  348. /*-----------------------------------------------------------------------
  349. * Chip Select Pin Function Select
  350. *
  351. * 1 1 1 1 1 0 0 0 }- 0xf8
  352. * | | | | | | | |
  353. * | | | | | | | +--- Reserved
  354. * | | | | | | +----- GPCS1_SEL = ROMCS1#
  355. * | | | | | +------- GPCS2_SEL = ROMCS2#
  356. * | | | | +--------- GPCS3_SEL = GPCS3
  357. * | | | +----------- GPCS4_SEL = GPCS4
  358. * | | +------------- GPCS5_SEL = GPCS5
  359. * | +--------------- GPCS6_SEL = GPCS6
  360. * +----------------- GPCS7_SEL = GPCS7
  361. */
  362. #define CONFIG_SYS_SC520_CSPFS 0xf8
  363. /*-----------------------------------------------------------------------
  364. * Clock Select (CLKTIMER[CLKTEST] pin)
  365. *
  366. * 0 111 00 1 0 }- 0x72
  367. * | \ / \| | |
  368. * | | | | +--- Pin Disabled
  369. * | | | +----- Pin is an output
  370. * | | +------- Reserved
  371. * | +----------- Disabled (pin stays Low)
  372. * +-------------- Reserved
  373. */
  374. #define CONFIG_SYS_SC520_CLKSEL 0x72
  375. /*-----------------------------------------------------------------------
  376. * Address Decode Control
  377. *
  378. * 0 00 0 0 0 0 0 }- 0x00
  379. * | \| | | | | |
  380. * | | | | | | +--- Integrated UART 1 is enabled
  381. * | | | | | +----- Integrated UART 2 is enabled
  382. * | | | | +------- Integrated RTC is enabled
  383. * | | | +--------- Reserved
  384. * | | +----------- I/O Hole accesses are forwarded to the external GP bus
  385. * | +------------- Reserved
  386. * +---------------- Write-protect violations do not generate an IRQ
  387. */
  388. #define CONFIG_SYS_SC520_ADDDECCTL 0x00
  389. /*-----------------------------------------------------------------------
  390. * UART Control
  391. *
  392. * 00000 1 1 1 }- 0x07
  393. * \___/ | | |
  394. * | | | +--- Transmit TC interrupt enable
  395. * | | +----- Receive TC interrupt enable
  396. * | +------- 1.8432 MHz
  397. * +----------- Reserved
  398. */
  399. #define CONFIG_SYS_SC520_UART1CTL 0x07
  400. #define CONFIG_SYS_SC520_UART2CTL 0x07
  401. /*-----------------------------------------------------------------------
  402. * System Arbiter Control
  403. *
  404. * 00000 1 1 0 }- 0x06
  405. * \___/ | | |
  406. * | | | +--- Disable PCI Bus Arbiter Grant Time-Out Interrupt
  407. * | | +----- The system arbiter operates in concurrent mode
  408. * | +------- Park the PCI bus on the last master that acquired the bus
  409. * +----------- Reserved
  410. */
  411. #define CONFIG_SYS_SC520_SYSARBCTL 0x06
  412. /*-----------------------------------------------------------------------
  413. * System Arbiter Master Enable
  414. *
  415. * 00000000000 0 0 0 1 1 }- 0x06
  416. * \_________/ | | | | |
  417. * | | | | | +--- PCI master REQ0 enabled (Ethernet 1)
  418. * | | | | +----- PCI master REQ1 enabled (Ethernet 2)
  419. * | | | +------- PCI master REQ2 disabled
  420. * | | +--------- PCI master REQ3 disabled
  421. * | +----------- PCI master REQ4 disabled
  422. * +------------------ Reserved
  423. */
  424. #define CONFIG_SYS_SC520_SYSARBMENB 0x0003
  425. /*-----------------------------------------------------------------------
  426. * System Arbiter Master Enable
  427. *
  428. * 0 0000 0 00 0000 1 000 }- 0x06
  429. * | \__/ | \| \__/ | \_/
  430. * | | | | | | +---- Reserved
  431. * | | | | | +------- Enable CPU-to-PCI bus write posting
  432. * | | | | +---------- Reserved
  433. * | | | +-------------- PCI bus reads to SDRAM are not automatically
  434. * | | | retried
  435. * | | +----------------- Target read FIFOs are not snooped during write
  436. * | | transactions
  437. * | +-------------------- Reserved
  438. * +------------------------ Deassert the PCI bus reset signal
  439. */
  440. #define CONFIG_SYS_SC520_HBCTL 0x08
  441. /*-----------------------------------------------------------------------
  442. * PAR for Boot Flash - 512kB @ 0x38000000, BOOTCS
  443. * 100 0 1 0 1 00000000111 11100000000000 }- 0x8a01f800
  444. * \ / | | | | \----+----/ \-----+------/
  445. * | | | | | | +---------- Start at 0x38000000
  446. * | | | | | +----------------------- 512kB Region Size
  447. * | | | | | ((7 + 1) * 64kB)
  448. * | | | | +------------------------------ 64kB Page Size
  449. * | | | +-------------------------------- Writes Enabled (So it can be
  450. * | | | reprogrammed!)
  451. * | | +---------------------------------- Caching Disabled
  452. * | +------------------------------------ Execution Enabled
  453. * +--------------------------------------- BOOTCS
  454. */
  455. #define CONFIG_SYS_SC520_BOOTCS_PAR 0x8a01f800
  456. /*-----------------------------------------------------------------------
  457. * Cache-As-RAM (Targets Boot Flash)
  458. *
  459. * 100 1 0 0 0 0001111 011001001000000000 }- 0x903d9200
  460. * \ / | | | | \--+--/ \-------+--------/
  461. * | | | | | | +------------ Start at 0x19200000
  462. * | | | | | +------------------------- 64k Region Size
  463. * | | | | | ((15 + 1) * 4kB)
  464. * | | | | +------------------------------ 4kB Page Size
  465. * | | | +-------------------------------- Writes Enabled
  466. * | | +---------------------------------- Caching Enabled
  467. * | +------------------------------------ Execution Prevented
  468. * +--------------------------------------- BOOTCS
  469. */
  470. #define CONFIG_SYS_SC520_CAR_PAR 0x903d9200
  471. /*-----------------------------------------------------------------------
  472. * PAR for Low Level I/O (LEDs, Hex Switches etc) - 33 Bytes @ 0x1000, GPCS6
  473. *
  474. * 001 110 0 000100000 0001000000000000 }- 0x38201000
  475. * \ / \ / | \---+---/ \------+-------/
  476. * | | | | +----------- Start at 0x00001000
  477. * | | | +------------------------ 33 Bytes (0x20 + 1)
  478. * | | +------------------------------ Ignored
  479. * | +--------------------------------- GPCS6
  480. * +------------------------------------- GP Bus I/O
  481. */
  482. #define CONFIG_SYS_SC520_LLIO_PAR 0x38201000
  483. /*-----------------------------------------------------------------------
  484. * PAR for Compact Flash Port #1 - 4kB @ 0x200000000, CS5
  485. * PAR for Compact Flash Port #2 - 4kB @ 0x200010000, CS7
  486. *
  487. * 010 101 0 0000000 100000000000000000 }- 0x54020000
  488. * 010 111 0 0000000 100000000000000001 }- 0x5c020001
  489. * \ / \ / | \--+--/ \-------+--------/
  490. * | | | | +------------ Start at 0x200000000
  491. * | | | | 0x200010000
  492. * | | | +------------------------- 4kB Region Size
  493. * | | | ((0 + 1) * 4kB)
  494. * | | +------------------------------ 4k Page Size
  495. * | +--------------------------------- GPCS5
  496. * | GPCS7
  497. * +------------------------------------- GP Bus Memory
  498. */
  499. #define CONFIG_SYS_SC520_CF1_PAR 0x54020000
  500. #define CONFIG_SYS_SC520_CF2_PAR 0x5c020001
  501. /*-----------------------------------------------------------------------
  502. * PAR for Extra 16550 UART A - 8 bytes @ 0x013f8, GPCS0
  503. * PAR for Extra 16550 UART B - 8 bytes @ 0x012f8, GPCS3
  504. * PAR for Extra 16550 UART C - 8 bytes @ 0x011f8, GPCS4
  505. * PAR for Extra 16550 UART D - 8 bytes @ 0x010f8, GPCS5
  506. *
  507. * 001 000 0 000000111 0001001111111000 }- 0x200713f8
  508. * 001 011 0 000000111 0001001011111000 }- 0x2c0712f8
  509. * 001 011 0 000000111 0001001011111000 }- 0x300711f8
  510. * 001 011 0 000000111 0001001011111000 }- 0x340710f8
  511. * \ / \ / | \---+---/ \------+-------/
  512. * | | | | +----------- Start at 0x013f8
  513. * | | | | 0x012f8
  514. * | | | | 0x011f8
  515. * | | | | 0x010f8
  516. * | | | +------------------------ 33 Bytes (32 + 1)
  517. * | | +------------------------------ Ignored
  518. * | +--------------------------------- GPCS6
  519. * +------------------------------------- GP Bus I/O
  520. */
  521. #define CONFIG_SYS_SC520_UARTA_PAR 0x200713f8
  522. #define CONFIG_SYS_SC520_UARTB_PAR 0x2c0712f8
  523. #define CONFIG_SYS_SC520_UARTC_PAR 0x300711f8
  524. #define CONFIG_SYS_SC520_UARTD_PAR 0x340710f8
  525. /*-----------------------------------------------------------------------
  526. * PAR for StrataFlash #1 - 16MB @ 0x10000000, ROMCS1
  527. * PAR for StrataFlash #2 - 16MB @ 0x11000000, ROMCS2
  528. *
  529. * 101 0 1 0 1 00011111111 01000000000000 }- 0xaa3fd000
  530. * 110 0 1 0 1 00011111111 01000100000000 }- 0xca3fd100
  531. * \ / | | | | \----+----/ \-----+------/
  532. * | | | | | | +---------- Start at 0x10000000
  533. * | | | | | | 0x11000000
  534. * | | | | | +----------------------- 16MB Region Size
  535. * | | | | | ((255 + 1) * 64kB)
  536. * | | | | +------------------------------ 64kB Page Size
  537. * | | | +-------------------------------- Writes Enabled
  538. * | | +---------------------------------- Caching Disabled
  539. * | +------------------------------------ Execution Enabled
  540. * +--------------------------------------- ROMCS1
  541. * ROMCS2
  542. */
  543. #define CONFIG_SYS_SC520_SF1_PAR 0xaa3fd000
  544. #define CONFIG_SYS_SC520_SF2_PAR 0xca3fd100
  545. /*-----------------------------------------------------------------------
  546. * PAR for SRAM #1 - 1MB @ 0x19000000, GPCS0
  547. * PAR for SRAM #2 - 1MB @ 0x19100000, GPCS3
  548. *
  549. * 010 000 1 00000001111 01100100000000 }- 0x4203d900
  550. * 010 011 1 00000001111 01100100010000 }- 0x4e03d910
  551. * \ / \ / | \----+----/ \-----+------/
  552. * | | | | +---------- Start at 0x19000000
  553. * | | | | 0x19100000
  554. * | | | +----------------------- 1MB Region Size
  555. * | | | ((15 + 1) * 64kB)
  556. * | | +------------------------------ 64kB Page Size
  557. * | +--------------------------------- GPCS0
  558. * | GPCS3
  559. * +------------------------------------- GP Bus Memory
  560. */
  561. #define CONFIG_SYS_SC520_SRAM1_PAR 0x4203d900
  562. #define CONFIG_SYS_SC520_SRAM2_PAR 0x4e03d910
  563. /*-----------------------------------------------------------------------
  564. * PAR for Dual-Port RAM - 4kB @ 0x18100000, GPCS4
  565. *
  566. * 010 100 0 00000000 11000000100000000 }- 0x50018100
  567. * \ / \ / | \---+--/ \-------+-------/
  568. * | | | | +----------- Start at 0x18100000
  569. * | | | +------------------------ 4kB Region Size
  570. * | | | ((0 + 1) * 4kB)
  571. * | | +------------------------------ 4kB Page Size
  572. * | +--------------------------------- GPCS4
  573. * +------------------------------------- GP Bus Memory
  574. */
  575. #define CONFIG_SYS_SC520_DPRAM_PAR 0x50018100
  576. #endif /* __CONFIG_H */