[U-Boot-Users] Dual-Port SRAM
Bob White
bwhite at perigee.com
Mon May 3 22:18:32 CEST 2004
I've got a board with a dual-port SRAM attached to the 440GP on the
peripheral bus (at CS1_N). I can map the TLB and access the device
from the bdi2000 and the u-boot command prompt (see gigeth.cfg below.)
What configuration is necessary to map this memory into the kernel?
Can you point me to some examples? How does it then get accessed from
a user program?
Thanks.
================ gigeth.cfg ================
[INIT]
; Setup TLB
WTLB 0xFF000075 0x1FF0003F ;Flash TLB Entry - 16Mb page
WTLB 0x00000098 0x0000003F ;SDRAM 256MB @ 0x00000000
; Setup Peripheral Bus
;
; Flash -- 8MB @ FF800000
;
WDCR 0x12 0x00000010 ;Select EBC0_B0AP
WDCR 0x13 0x9B015480 ;B0AP: Flash and SRAM
WDCR 0x12 0x00000000 ;Select EBC0_B0CR
WDCR 0x13 0xFF87A000 ;B0CR: 8MB at 0xFF800000, r/w, 16bit
;
; Dual-port -- 128KB @ FF600000
; -- @ FF700000 CS2_N for Semaphore
;
WDCR 0x12 0x00000011 ;Select EBC0_B1AP
WDCR 0x13 0x9B015480 ;B1AP: Flash and SRAM
WDCR 0x12 0x00000001 ;Select EBC0_B1CR
WDCR 0x13 0xff61e000 ;B1CR: 1MB at 0xFF600000, r/w, 32bit
; (We really only have 128KB, but 1MB
; block is the smallest that we can
; define.)
WDCR 0x12 0x00000012 ;Select EBC0_B2AP
WDCR 0x13 0x9B015480 ;B2AP: Flash and SRAM
WDCR 0x12 0x00000002 ;Select EBC0_B2CR
WDCR 0x13 0xff71e000 ;B2CR: 1MB at 0xFF700000, r/w, 32bit
; (We really map this space to set
; the semaphore connected as CS2_N)
; Setup SDRAM Controller (DDR SDRAM)
WDCR 0x10 0x00000082 ;Select SDRAM0_CLKTR
WDCR 0x11 0x40000000 ;CLKTR: Advance 90 degrees
WDCR 0x10 0x00000080 ;Select SDRAM0_TR0
WDCR 0x11 0x410A4012 ;TR0: V2.0
;WDCR 0x11 0x41054009 ;TR0: V1.0
WDCR 0x10 0x00000081 ;Select SDRAM0_TR1
WDCR 0x11 0x8080082B ;TR1: V2.0
;WDCR 0x11 0x40400800 ;TR1: V1.0
WDCR 0x10 0x00000040 ;Select SDRAM0_B0CR
WDCR 0x11 0x00062001 ;B0CR: 32MByte @ 0x00000000 Mode 2
WDCR 0x10 0x00000030 ;Select SDRAM0_RTR
WDCR 0x11 0x08200000 ;RTR: V2.0
;WDCR 0x11 0x06180000 ;RTR: V1.0
WDCR 0x10 0x00000020 ;Select SDRAM0_CFG0
WDCR 0x11 0x04000000 ;CFG0: 32bit, PMU disable
WDCR 0x11 0x84800000 ;CFG0: enable SDRAM
[TARGET]
JTAGCLOCK 1 ;use 8 MHz JTAG clock
CPUTYPE 440 ;the used target CPU type
;BDIMODE LOADONLY ;the BDI working mode (LOADONLY |
AGENT)
BDIMODE AGENT
BREAKMODE HARD ;SOFT or HARD, HARD uses PPC hardware
breakpoint
STEPMODE HWBP ;JTAG or HWBP, HWBP uses one or two
hardware breakpoints
;VECTOR CATCH ;catch unhandled exceptions
STARTUP RESET
WORKSPACE 0x00005000
;MMU XLAT 0xC0000000 ;enable virtual address mode
;PTBASE 0x00000000 ;address where kernel/user stores
pointer to page table
;SIO 7 9600 ;TCP port for serial IO
WAKEUP 1000
[HOST]
;IP 151.120.25.118 ;Linux host
IP 192.168.0.49 ;Windows host
FILE vmlinux
FORMAT BIN 0x00000000
START 0x00000000
LOAD MANUAL ;load code MANUAL or AUTO after reset
DEBUGPORT 2001
DUMP dump.bin
;DUMP dump.bin ;Linux: dump.bin must already exist
and public writable
[FLASH]
WORKSPACE 0x00004000 ;workspace in SDRAM for fast programming
algorithm
;WORKSPACE 0xFFC00000 ;workspace in SRAM for fast programming
algorithm
CHIPTYPE STRATAX16 ;Flash type (AM29F | AM29BX8 | AM29BX16 |
I28BX8 | I28BX16)
CHIPSIZE 0x800000 ;The size of one flash chip in bytes (e.g.
AM29F040 = 0x80000)
BUSWIDTH 16 ;The width of the flash memory bus in bits (8
| 16 | 32)
FILE u-boot.bin ;The file to program
ERASE 0xFFF80000 ;erase U-Boot sector 1
ERASE 0xFFFA0000 ;erase U-Boot sector 2
ERASE 0xFFFE0000 ;erase U-Boot sector 4 (3 is environment)
[REGS]
IDCR1 0x010 0x011 ;SDRAM0_CFGADDR and SDRAM0_CFGDATA
IDCR2 0x012 0x013 ;EBC0_CFGADDR and EBC0_CFGDATA
IDCR3 0x014 0x015 ;EBM0_CFGADDR and EBM0_CFGDATA
IDCR4 0x016 0x017 ;PPM0_CFGADDR and PPM0_CFGDATA
FILE reg440gp.def
============================================
Bob
--
Robert B. White Perigee, A Division of Sensis Corp
Software Design Engr 316 Commerce Blvd.
TEL: 315.453.7842x29 Liverpool, NY 13088
FAX: 315.453.7917 www.Perigee.com
------- End of forwarded message -------Bob
--
Robert B. White Perigee, A Division of Sensis Corp
Software Design Engr 316 Commerce Blvd.
TEL: 315.453.7842x29 Liverpool, NY 13088
FAX: 315.453.7917 www.Perigee.com
Bob
--
Robert B. White Perigee, A Division of Sensis Corp
Software Design Engr 316 Commerce Blvd.
TEL: 315.453.7842x29 Liverpool, NY 13088
FAX: 315.453.7917 www.Perigee.com
More information about the U-Boot
mailing list