Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?xml version="1.0" encoding="utf-16"?>
- <RegisterMap xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
- <!--
- Information:
- The attribute 'Name' is meant for register names from datasheets, debug messages or manually defined in upper case [A-Z0-9_]. e.g. "SDBUFCTR"
- (this data will be generated into a header file, so really pick uppercase C-like names without spaces)
- The attribute 'Text' is meant for the HUMAN READABLE form of what the register does. e.g. "Status Register" ro "Unknown"
- The attribute 'Description' is meant for a descrption or notes related to this register.
- Add a '?' suffix to mark the Name/Text as guessed/supposed.
- -->
- <EngineDescriptions>
- <EngineDescription Name="SIO">
- <Registers>
- <Register Offset="0x04" Name="Flags">
- <RegisterFields>
- <RegisterField xsi:type="Bit" Pos="0" Name="BUSY" Text="" Description="Set this bit when data to write should be transmitted. SIO controller will clear this bit if its done" />
- </RegisterFields>
- </Register>
- <Register Offset="0x0C" Name="" Text="Setup register" Description="The lowest bits are the bit count (8 LSB?). Maybe leading clocks, polarity, phase etc."/>
- <Register Offset="0x14" Name="" Text="Setup register" Description="maybe clock speed?"/>
- <Register Offset="0x18" Name="TXDAT" Text="TX-Data" Description=""/>
- <Register Offset="0x1C" Name="RXDAT" Text="RX-Data" Description=""/>
- </Registers>
- </EngineDescription>
- <EngineDescription Name="FlashIF">
- <Registers>
- <Register Offset="0x00" Name="" Text="Write Protect Control 0xF8000000">
- <RegisterFields>
- <RegisterField xsi:type="Bit" Pos="24" Name="" Text="Disable Write Protect" Description="" />
- </RegisterFields>
- </Register>
- <Register Offset="0x04" Name="" Text="Write Protect Control 0xF0000000">
- <RegisterFields>
- <RegisterField xsi:type="Bit" Pos="24" Name="" Text="Disable Write Protect" Description="" />
- </RegisterFields>
- </Register>
- <Register Offset="0x10" Name="" Text="Write Protect Key" Description="Write 0xD9C5 into the fields to disable WP">
- <RegisterFields>
- <RegisterField xsi:type="Bits" Start="0" End="15" Name="" Text="Write Protect Key 0xF8000000" Description="" />
- <RegisterField xsi:type="Bits" Start="16" End="31" Name="" Text="Write Protect Key 0xF0000000" Description="" />
- </RegisterFields>
- </Register>
- </Registers>
- </EngineDescription>
- <EngineDescription Name="SDCON">
- <Registers>
- <Register Offset="0x000" Name="" Text="Unknown" Description="Set to 0x00 on init"/>
- <Register Offset="0x004" Name="" Text="Unknown" Description="Set to 0x01 on init"/>
- <Register Offset="0x008" Name="" Text="Unknown" Description="Set to 0x00 on init, 0x01/0xF1 before read/write, not used for status block. means: use DMA?"/>
- <Register Offset="0x00C" Name="" Text="Unknown" Description="Set to 0x14/0x13/0x12/0x11/0x02 on command, after writing regs +0x024, +0x020 and +0x010, with 0x11, registers +0x028/+0x02C is ignored probably"/>
- <Register Offset="0x010" Name="" Text="Status Register" Description="">
- <RegisterFields>
- <RegisterField xsi:type="Bit" Pos="0" Name="" Text="Transfer finished" Description="" />
- <RegisterField xsi:type="Bit" Pos="1" Name="" Text="Error during transfer" Description="" />
- <RegisterField xsi:type="Bit" Pos="20" Name="" Text="DAT transfer data available in reg +0x06C?" Description="" />
- <RegisterField xsi:type="Bit" Pos="21" Name="" Text="DAT transfer finished?" Description="" />
- </RegisterFields>
- </Register>
- <Register Offset="0x014" Name="" Text="Unknown" Description="Set to 0x03 before transfer start, 0x00 on ISR"/>
- <Register Offset="0x018" Name="" Text="Unknown" Description="Set to 0x08 on init"/>
- <Register Offset="0x020" Name="" Text="Command frame lower 32 bits" Description="needs 0x0001 being set (end bit)"/>
- <Register Offset="0x024" Name="" Text="Command frame upper 16 bits" Description="needs 0x4000 being set (transmission bit)"/>
- <Register Offset="0x028" Name="" Text="Unknown" Description="Written with 0x88/0x30/0x30 before CMD"/>
- <Register Offset="0x02C" Name="" Text="Unknown" Description="Written with 0x7F08/0x2701/0x80000000 before CMD"/>
- <Register Offset="0x034" Name="" Text="Data received lower 32 bits" Description=""/>
- <Register Offset="0x038" Name="" Text="Data received upper 16 bits" Description=""/>
- <Register Offset="0x058" Name="" Text="SD bus width" Description="">
- <RegisterFields>
- <RegisterField xsi:type="Bits" Start="0" End="4" Name="" Text="0---0 1 bit" Description="" />
- <RegisterField xsi:type="Bits" Start="0" End="4" Name="" Text="0---1 4 bit" Description="" />
- <RegisterField xsi:type="Bits" Start="0" End="4" Name="" Text="1---0 8 bit" Description="" />
- </RegisterFields>
- </Register>
- <Register Offset="0x05C" Name="" Text="Write transfer block size" Description=""/>
- <Register Offset="0x064" Name="" Text="SD bus width" Description="">
- <RegisterFields>
- <RegisterField xsi:type="Bits" Start="0" End="4" Name="" Text="0---0 1 bit" Description="" />
- <RegisterField xsi:type="Bits" Start="0" End="4" Name="" Text="0---1 4 bit" Description="" />
- <RegisterField xsi:type="Bits" Start="0" End="4" Name="" Text="1---0 8 bit" Description="" />
- <RegisterField xsi:type="Bits" Start="20" End="27" Name="" Text="01100000 1 bit" Description="" />
- <RegisterField xsi:type="Bits" Start="20" End="27" Name="" Text="01100000 4 bit" Description="" />
- <RegisterField xsi:type="Bits" Start="20" End="27" Name="" Text="01110000 8 bit" Description="" />
- </RegisterFields>
- </Register>
- <Register Offset="0x068" Name="" Text="Read transfer block size" Description=""/>
- <Register Offset="0x070" Name="" Text="Some flags" Description="set to 0x39 before transfer">
- <RegisterFields>
- <RegisterField xsi:type="Bit" Pos="0" Name="Transfer running" Text="" Description="" />
- </RegisterFields>
- </Register>
- <Register Offset="0x07C" Name="" Text="Read/Write transfer block count" Description=""/>
- <Register Offset="0x080" Name="" Text="Transferred blocks" Description=""/>
- <Register Offset="0x084" Name="SDREP" Text="Status register/error codes" Description=""/>
- <Register Offset="0x088" Name="SDBUFCTR" Text="Buffer counter?" Description="Set to 0x03 before reading/writing"/>
- </Registers>
- </EngineDescription>
- <EngineDescription Name="SDDMA">
- <Registers>
- <Register Offset="0x000" Name="" Text="Transfer memory address" Description=""/>
- <Register Offset="0x004" Name="" Text="Transfer byte count" Description=""/>
- <Register Offset="0x010" Name="" Text="Flags/Status" Description="set to 0x39 before read transfer start, 0x29|0x04 before write">
- <RegisterFields>
- <RegisterField xsi:type="Bit" Pos="0" Name="" Text="Transfer finished" Description="" />
- <RegisterField xsi:type="Bit" Pos="2" Name="" Text="Write transfer" Description="" />
- <RegisterField xsi:type="Bit" Pos="4" Name="" Text="use 16 byte wide DMA transfers" Description="" />
- </RegisterFields>
- </Register>
- <Register Offset="0x018" Name="" Text="Transferred bytes?" Description="Written with zero before transfer start. position?"/>
- </Registers>
- </EngineDescription>
- </EngineDescriptions>
- <Implementations>
- <Group Name="SDCON Engines" Engine="SDCON" Device="Digic">
- <Engines>
- <Engine Address="0xC0C10000" Name="SDCON0"/>
- <Engine Address="0xC0C20000" Name="SDCON1"/>
- <Engine Address="0xC0C30000" Name="SDCON2"/>
- <Engine Address="0xC0C40000" Name="SDCON3"/>
- </Engines>
- </Group>
- <Group Name="SDDMA Engines" Engine="SDDMA" Device="Digic">
- <Engines>
- <Engine Address="0xC0510060" Name="SDDMA0"/>
- <Engine Address="0xC0520060" Name="SDDMA1"/>
- <Engine Address="0xC0530060" Name="SDDMA2"/>
- <Engine Address="0xC0540060" Name="SDDMA3"/>
- </Engines>
- </Group>
- <Group Name="FlashIF" Engine="FlashIF" Device="Digic">
- <Engines>
- <Engine Address="0xC0000000" Name="FlashIF"/>
- </Engines>
- </Group>
- <Group Name="SIO Engines" Engine="SIO" Device="Digic">
- <Engines>
- <Engine Address="0xC0820000" Name="SIO0"/>
- <Engine Address="0xC0820100" Name="SIO1"/>
- <Engine Address="0xC0820200" Name="SIO2"/>
- <Engine Address="0xC0820300" Name="SIO3"/>
- </Engines>
- </Group>
- </Implementations>
- </RegisterMap>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement