st20tp3addr.cfg
来自「flash programming STI 5.5.1.4 DCU3」· CFG 代码 · 共 108 行
CFG
108 行
if (!(clsymbol TP3ADDR)) {
TP3ADDR=1
## addresses of onchip tp3 devices
Devices.index=0
Devices.EMIindex=Devices.index++
Devices[Devices.EMIindex].symname = "EMIAddr"
Devices[Devices.EMIindex].addr = 0x2000
Devices.DCU2index=Devices.index++
Devices[Devices.DCU2index].symname = "DCU2Addr"
Devices[Devices.DCU2index].addr = 0x3000
Devices.CACHEindex=Devices.index++
Devices[Devices.CACHEindex].symname = "CacheControlAddr"
Devices[Devices.CACHEindex].addr = 0x4000
Devices.INTCTRLindex=Devices.index++
Devices[Devices.INTCTRLindex].symname = "InterruptControllerAddr"
Devices[Devices.INTCTRLindex].addr = 0x20000000
Devices.INTCTRLLEVELSindex=Devices.index++
Devices[Devices.INTCTRLLEVELSindex].symname = "InterruptControllerLevels"
Devices[Devices.INTCTRLLEVELSindex].addr = 8
Devices.LPCTRLindex=Devices.index++
Devices[Devices.LPCTRLindex].symname = "LowPowerControllerAddr"
Devices[Devices.LPCTRLindex].addr = 0x20000400
Devices.ASCindex=Devices.index
Devices.NUMASC=4
for (i=0;i<Devices.NUMASC;i++) {
Devices[Devices.ASCindex+i].symname = "ASC"+(mkstr(i))+"Addr"
Devices[Devices.ASCindex+i].addr = 0x20003000 + (i * 0x1000)
}
Devices.index += Devices.NUMASC
Devices.SCIindex=Devices.index
Devices.NUMSCI=2
for (i=0;i<Devices.NUMSCI;i++) {
Devices[Devices.SCIindex+i].symname = "SCI"+(mkstr(i))+"Addr"
Devices[Devices.SCIindex+i].addr = 0x20007000 + (i * 0x1000)
}
Devices.index += Devices.NUMSCI
Devices.SCCindex=Devices.index
Devices.NUMSCC=2
for (i=0;i<Devices.NUMSCC;i++) {
Devices[Devices.SCCindex+i].symname = "SCC"+(mkstr(i))+"Addr"
Devices[Devices.SCCindex+i].addr = 0x20009000 + (i * 0x1000)
}
Devices.index += Devices.NUMSCC
Devices.PWMCTRLindex=Devices.index++
Devices[Devices.PWMCTRLindex].symname = "PWMControllerAddr"
Devices[Devices.PWMCTRLindex].addr = 0x2000B000
Devices.PIOindex=Devices.index
Devices.NUMPIO=5
for (i=0;i<Devices.NUMPIO;i++) {
Devices[Devices.PIOindex+i].symname = "PIOController"+(mkstr(i))+"Addr"
Devices[Devices.PIOindex+i].addr = 0x2000c000 + (i * 0x1000)
}
Devices.index += Devices.NUMPIO
Devices.INTLEVELCTRLindex=Devices.index++
Devices[Devices.INTLEVELCTRLindex].symname = "InterruptLevelControllerAddr"
Devices[Devices.INTLEVELCTRLindex].addr = 0x20011000
Devices.INTLEVELCTRLNUMINPUTSindex=Devices.index++
Devices[Devices.INTLEVELCTRLNUMINPUTSindex].symname = "InterruptLevelControllerNumInputs"
Devices[Devices.INTLEVELCTRLNUMINPUTSindex].addr = 21
Devices.INTLEVELCTRLINPUTOFFSETindex=Devices.index++
Devices[Devices.INTLEVELCTRLINPUTOFFSETindex].symname = "InterruptLevelControllerInputOffset"
Devices[Devices.INTLEVELCTRLINPUTOFFSETindex].addr = 31
Devices.TTindex=Devices.index++
Devices[Devices.TTindex].symname = "TeletextInterfaceAddr"
Devices[Devices.TTindex].addr = 0x20024000
Devices.IEEE1284index=Devices.index++
Devices[Devices.IEEE1284index].symname = "IEEE1284ParallelPortAddr"
Devices[Devices.IEEE1284index].addr = 0x20025000
Devices.BlockMoveindex=Devices.index++
Devices[Devices.BlockMoveindex].symname = "BlockMoveDMAControllerAddr"
Devices[Devices.BlockMoveindex].addr = 0x20026000
Devices.IEEE1394index=Devices.index++
Devices[Devices.IEEE1394index].symname = "IEEE1394LLIAddr"
Devices[Devices.IEEE1394index].addr = 0x20027000
Devices.PTIindex=Devices.index++
Devices[Devices.PTIindex].symname = "PTIAddr"
Devices[Devices.PTIindex].addr = 0x20030000
}
proc tp3memory {
memory INTERNAL 0x80000000 (6*K) RAM
memory SYSTEM 0x80000000 (0x140) RESERVED
memory ONCHIPDEVICES 0 0x5000 DEVICE ## can be word accessed via DCU
memory ONCHIPPERIPHERALS 0x20000000 0x1000000 PERIPHERAL ## cannot be accessed via DCU
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?