You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

113 lines
2.7 KiB

  1. # Intel "Lubbock" Development Board with PXA255 (dbpxa255)
  2. # Obsolete; this was Intel's original PXA255 development system
  3. # Board also had CPU cards for SA1100, PXA210, PXA250, and more.
  4. source [find target/pxa255.cfg]
  5. jtag_nsrst_delay 250
  6. jtag_ntrst_delay 250
  7. # NOTE: until after pinmux and such are set up, only CS0 is
  8. # available ... not 2nd bank of CFI, or FPGA, SRAM, ENET, etc.
  9. # CS0, CS1 -- two banks of CFI flash, 32 MBytes each
  10. # each bank is 32-bits wide, two 16-bit chips in parallel
  11. set _FLASHNAME $_CHIPNAME.flash
  12. flash bank $_FLASHNAME cfi 0x00000000 0x02000000 2 4 $_TARGETNAME
  13. set _FLASHNAME $_CHIPNAME.flash
  14. flash bank $_FLASHNAME cfi 0x04000000 0x02000000 2 4 $_TARGETNAME
  15. # CS2 low -- FPGA registers
  16. # CS2 high -- 1 MByte SRAM at 0x0a00.0000 ... last 64K for scratch
  17. $_TARGETNAME configure -work-area-phys 0x0a0f0000
  18. $_TARGETNAME configure -event reset-assert-pre \
  19. "$_TARGETNAME configure -work-area-size 0"
  20. # Make the hex led display a number, assuming CS2 is set up
  21. # and all digits have been enabled through the FPGA.
  22. proc hexled {u32} {
  23. mww 0x08000010 $u32
  24. }
  25. # CS3 -- Ethernet
  26. # CS4 -- SA1111
  27. # CS5 -- PCMCIA
  28. # NOTE: system console normally uses the FF UART connector
  29. proc lubbock_init {target} {
  30. puts "Initialize PXA255 Lubbock board"
  31. # (1) pinmux
  32. # GPSR0..GPSR2
  33. mww 0x40e00018 0x00008000
  34. mww 0x40e0001c 0x00FC0382
  35. mww 0x40e00020 0x0001FFFF
  36. # GPDR0..GPDR2
  37. mww 0x40e0000c 0x0060A800
  38. mww 0x40e00010 0x00FF0382
  39. mww 0x40e00014 0x0001C000
  40. # GAFR0_[LU]..GAFR2_[LU]
  41. mww 0x40e00054 0x98400000
  42. mww 0x40e00058 0x00002950
  43. mww 0x40e0005c 0x000A9558
  44. mww 0x40e00060 0x0005AAAA
  45. mww 0x40e00064 0xA0000000
  46. mww 0x40e00068 0x00000002
  47. # write PSSR, enable GPIOs
  48. mww 0x40f00000 0x00000020
  49. # write LED ctrl register ... ones disable
  50. # high byte, 8 hex leds; low byte, 8 discretes
  51. mwh 0x08000040 0xf0ff
  52. hexled 0x0000
  53. # (2) Address space setup
  54. # MSC0/MSC1/MSC2
  55. mww 0x48000008 0x23f223f2
  56. mww 0x4800000c 0x3ff1a441
  57. mww 0x48000010 0x7ff97ff1
  58. # pcmcia/cf
  59. mww 0x48000014 0x00000000
  60. mww 0x48000028 0x00010504
  61. mww 0x4800002c 0x00010504
  62. mww 0x48000030 0x00010504
  63. mww 0x48000034 0x00010504
  64. mww 0x48000038 0x00004715
  65. mww 0x4800003c 0x00004715
  66. hexled 0x1111
  67. # (3) SDRAM setup
  68. # REVISIT this looks dubious ... no refresh cycles
  69. mww 0x48000004 0x03CA4018
  70. mww 0x48000004 0x004B4018
  71. mww 0x48000004 0x000B4018
  72. mww 0x48000004 0x000BC018
  73. mww 0x48000000 0x00001AC8
  74. mww 0x48000000 0x00001AC9
  75. mww 0x48000040 0x00000000
  76. # FIXME -- setup:
  77. # CLOCKS (and faster JTAG)
  78. # enable icache
  79. # FIXME SRAM isn't working
  80. # $target configure -work-area-size 0x10000
  81. hexled 0x2222
  82. flash probe 0
  83. flash probe 1
  84. hexled 0xcafe
  85. }
  86. $_TARGETNAME configure -event reset-init "lubbock_init $_TARGETNAME"