Advertisement
Guest User

Untitled

a guest
Mar 3rd, 2015
546
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
XML 10.12 KB | None | 0 0
  1. <?xml version="1.0" encoding="utf-16"?>
  2. <RegisterMap xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  3.  
  4. <!--
  5.    Information:
  6.        The attribute 'Name' is meant for register names from datasheets, debug messages or manually defined in upper case [A-Z0-9_]. e.g. "SDBUFCTR"
  7.            (this data will be generated into a header file, so really pick uppercase C-like names without spaces)
  8.        The attribute 'Text' is meant for the HUMAN READABLE form of what the register does. e.g. "Status Register" ro "Unknown"
  9.        The attribute 'Description' is meant for a descrption or notes related to this register.
  10.        Add a '?' suffix to mark the Name/Text as guessed/supposed.
  11. -->
  12.     <EngineDescriptions>
  13.         <EngineDescription Name="SIO">
  14.             <Registers>
  15.                 <Register Offset="0x04" Name="Flags">
  16.                     <RegisterFields>
  17.                         <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" />
  18.                     </RegisterFields>
  19.                 </Register>
  20.                 <Register Offset="0x0C" Name="" Text="Setup register" Description="The lowest bits are the bit count (8 LSB?). Maybe leading clocks, polarity, phase etc."/>
  21.                 <Register Offset="0x14" Name="" Text="Setup register" Description="maybe clock speed?"/>
  22.                 <Register Offset="0x18" Name="TXDAT" Text="TX-Data" Description=""/>
  23.                 <Register Offset="0x1C" Name="RXDAT" Text="RX-Data" Description=""/>
  24.             </Registers>
  25.         </EngineDescription>
  26.        
  27.         <EngineDescription Name="FlashIF">
  28.             <Registers>
  29.                 <Register Offset="0x00" Name="" Text="Write Protect Control 0xF8000000">
  30.                     <RegisterFields>
  31.                         <RegisterField xsi:type="Bit" Pos="24" Name="" Text="Disable Write Protect" Description="" />
  32.                     </RegisterFields>
  33.                 </Register>
  34.                 <Register Offset="0x04" Name="" Text="Write Protect Control 0xF0000000">
  35.                     <RegisterFields>
  36.                         <RegisterField xsi:type="Bit" Pos="24" Name="" Text="Disable Write Protect" Description="" />
  37.                     </RegisterFields>
  38.                 </Register>
  39.                 <Register Offset="0x10" Name="" Text="Write Protect Key" Description="Write 0xD9C5 into the fields to disable WP">
  40.                     <RegisterFields>
  41.                         <RegisterField xsi:type="Bits" Start="0" End="15" Name="" Text="Write Protect Key 0xF8000000" Description="" />
  42.                         <RegisterField xsi:type="Bits" Start="16" End="31" Name="" Text="Write Protect Key 0xF0000000" Description="" />
  43.                     </RegisterFields>
  44.                 </Register>
  45.             </Registers>
  46.         </EngineDescription>
  47.        
  48.         <EngineDescription Name="SDCON">
  49.             <Registers>
  50.                 <Register Offset="0x000" Name="" Text="Unknown" Description="Set to 0x00 on init"/>
  51.                 <Register Offset="0x004" Name="" Text="Unknown" Description="Set to 0x01 on init"/>
  52.                 <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?"/>
  53.                 <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"/>
  54.                 <Register Offset="0x010" Name="" Text="Status Register" Description="">
  55.                     <RegisterFields>
  56.                         <RegisterField xsi:type="Bit" Pos="0" Name="" Text="Transfer finished" Description="" />
  57.                         <RegisterField xsi:type="Bit" Pos="1" Name="" Text="Error during transfer" Description="" />
  58.                         <RegisterField xsi:type="Bit" Pos="20" Name="" Text="DAT transfer data available in reg +0x06C?" Description="" />
  59.                         <RegisterField xsi:type="Bit" Pos="21" Name="" Text="DAT transfer finished?" Description="" />
  60.                     </RegisterFields>
  61.                 </Register>
  62.                 <Register Offset="0x014" Name="" Text="Unknown" Description="Set to 0x03 before transfer start, 0x00 on ISR"/>
  63.                 <Register Offset="0x018" Name="" Text="Unknown" Description="Set to 0x08 on init"/>
  64.                 <Register Offset="0x020" Name="" Text="Command frame lower 32 bits" Description="needs 0x0001 being set (end bit)"/>
  65.                 <Register Offset="0x024" Name="" Text="Command frame upper 16 bits" Description="needs 0x4000 being set (transmission bit)"/>
  66.                 <Register Offset="0x028" Name="" Text="Unknown" Description="Written with 0x88/0x30/0x30 before CMD"/>
  67.                 <Register Offset="0x02C" Name="" Text="Unknown" Description="Written with 0x7F08/0x2701/0x80000000 before CMD"/>
  68.                
  69.                 <Register Offset="0x034" Name="" Text="Data received lower 32 bits" Description=""/>
  70.                 <Register Offset="0x038" Name="" Text="Data received upper 16 bits" Description=""/>
  71.                
  72.                 <Register Offset="0x058" Name="" Text="SD bus width" Description="">
  73.                     <RegisterFields>
  74.                         <RegisterField xsi:type="Bits" Start="0" End="4" Name="" Text="0---0  1 bit" Description="" />
  75.                         <RegisterField xsi:type="Bits" Start="0" End="4" Name="" Text="0---1  4 bit" Description="" />
  76.                         <RegisterField xsi:type="Bits" Start="0" End="4" Name="" Text="1---0  8 bit" Description="" />
  77.                     </RegisterFields>
  78.                 </Register>
  79.                 <Register Offset="0x05C" Name="" Text="Write transfer block size" Description=""/>
  80.                 <Register Offset="0x064" Name="" Text="SD bus width" Description="">
  81.                     <RegisterFields>
  82.                         <RegisterField xsi:type="Bits" Start="0" End="4" Name="" Text="0---0  1 bit" Description="" />
  83.                         <RegisterField xsi:type="Bits" Start="0" End="4" Name="" Text="0---1  4 bit" Description="" />
  84.                         <RegisterField xsi:type="Bits" Start="0" End="4" Name="" Text="1---0  8 bit" Description="" />
  85.                         <RegisterField xsi:type="Bits" Start="20" End="27" Name="" Text="01100000  1 bit" Description="" />
  86.                         <RegisterField xsi:type="Bits" Start="20" End="27" Name="" Text="01100000  4 bit" Description="" />
  87.                         <RegisterField xsi:type="Bits" Start="20" End="27" Name="" Text="01110000  8 bit" Description="" />
  88.                     </RegisterFields>
  89.                 </Register>
  90.                 <Register Offset="0x068" Name="" Text="Read transfer block size" Description=""/>
  91.                 <Register Offset="0x070" Name="" Text="Some flags" Description="set to 0x39 before transfer">
  92.                     <RegisterFields>
  93.                         <RegisterField xsi:type="Bit" Pos="0" Name="Transfer running" Text="" Description="" />
  94.                     </RegisterFields>
  95.                 </Register>
  96.                 <Register Offset="0x07C" Name="" Text="Read/Write transfer block count" Description=""/>
  97.                 <Register Offset="0x080" Name="" Text="Transferred blocks" Description=""/>
  98.                 <Register Offset="0x084" Name="SDREP" Text="Status register/error codes" Description=""/>
  99.                 <Register Offset="0x088" Name="SDBUFCTR" Text="Buffer counter?" Description="Set to 0x03 before reading/writing"/>
  100.             </Registers>
  101.         </EngineDescription>
  102.        
  103.         <EngineDescription Name="SDDMA">
  104.             <Registers>
  105.                 <Register Offset="0x000" Name="" Text="Transfer memory address" Description=""/>
  106.                 <Register Offset="0x004" Name="" Text="Transfer byte count" Description=""/>
  107.                 <Register Offset="0x010" Name="" Text="Flags/Status" Description="set to 0x39 before read transfer start, 0x29|0x04 before write">
  108.                     <RegisterFields>
  109.                         <RegisterField xsi:type="Bit" Pos="0" Name="" Text="Transfer finished" Description="" />
  110.                         <RegisterField xsi:type="Bit" Pos="2" Name="" Text="Write  transfer" Description="" />
  111.                         <RegisterField xsi:type="Bit" Pos="4" Name="" Text="use 16 byte wide DMA transfers" Description="" />
  112.                     </RegisterFields>
  113.                 </Register>
  114.                 <Register Offset="0x018" Name="" Text="Transferred bytes?" Description="Written with zero before transfer start. position?"/>
  115.             </Registers>
  116.         </EngineDescription>
  117.        
  118.     </EngineDescriptions>
  119.    
  120.     <Implementations>
  121.         <Group Name="SDCON Engines" Engine="SDCON" Device="Digic">
  122.             <Engines>
  123.                 <Engine Address="0xC0C10000" Name="SDCON0"/>
  124.                 <Engine Address="0xC0C20000" Name="SDCON1"/>
  125.                 <Engine Address="0xC0C30000" Name="SDCON2"/>
  126.                 <Engine Address="0xC0C40000" Name="SDCON3"/>
  127.             </Engines>
  128.         </Group>
  129.         <Group Name="SDDMA Engines" Engine="SDDMA" Device="Digic">
  130.             <Engines>
  131.                 <Engine Address="0xC0510060" Name="SDDMA0"/>
  132.                 <Engine Address="0xC0520060" Name="SDDMA1"/>
  133.                 <Engine Address="0xC0530060" Name="SDDMA2"/>
  134.                 <Engine Address="0xC0540060" Name="SDDMA3"/>
  135.             </Engines>
  136.         </Group>
  137.         <Group Name="FlashIF" Engine="FlashIF" Device="Digic">
  138.             <Engines>
  139.                 <Engine Address="0xC0000000" Name="FlashIF"/>
  140.             </Engines>
  141.         </Group>
  142.         <Group Name="SIO Engines" Engine="SIO" Device="Digic">
  143.             <Engines>
  144.                 <Engine Address="0xC0820000" Name="SIO0"/>
  145.                 <Engine Address="0xC0820100" Name="SIO1"/>
  146.                 <Engine Address="0xC0820200" Name="SIO2"/>
  147.                 <Engine Address="0xC0820300" Name="SIO3"/>
  148.             </Engines>
  149.         </Group>
  150.     </Implementations>
  151.    
  152. </RegisterMap>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement