rockbox/utils/regtools/desc/regs-example-v1.xml
Amaury Pouly 0f701a64be regtools: update v2 specification, library and tools
A v2 register description file can now include register variants and instances
addresses can now be a list (previously it could only be a stride or a formula).
Update the library to deal with that. The convert option of swiss_knife was
updated and one incompatible change was introduce: if a v1 device has several
addresses, those are converted to a single v2 instance with list (instead of
several single instances). This should have been the behaviour from the start.
Swiss_knife can now also convert regdumps, in which case it needs to be given
both the dump and register description file. Also introduce two register
descriptions files (vsoc1000 and vsoc2000) which give more complicated examples
of v2 register description files.

Change-Id: Id9415b8363269ffaf9216abfc6dd1bd1adbfcf8d
2016-02-06 15:12:55 +00:00

91 lines
4 KiB
XML

<?xml version="1.0"?>
<soc name="example" desc="i.MX233">
<dev name="APBH" long_name="APHB DMA" desc="AHB-to-APBH Bridge with DMA" version="3.2.0">
<addr name="APBH" addr="0x80004000"/>
<reg name="CTRL0" desc="" sct="yes">
<addr name="CTRL0" addr="0x0"/>
<field name="SFTRST" desc="" bitrange="31:31"/>
<field name="CLKGATE" desc="" bitrange="30:30"/>
<field name="AHB_BURST8_EN" desc="" bitrange="29:29"/>
<field name="APB_BURST4_EN" desc="" bitrange="28:28"/>
<field name="RSVD0" desc="" bitrange="27:24"/>
<field name="RESET_CHANNEL" desc="" bitrange="23:16">
<value name="SSP1" value="0x2" desc=""/>
<value name="SSP2" value="0x4" desc=""/>
<value name="ATA" value="0x10" desc=""/>
<value name="NAND0" value="0x10" desc=""/>
<value name="NAND1" value="0x20" desc=""/>
<value name="NAND2" value="0x40" desc=""/>
<value name="NAND3" value="0x80" desc=""/>
</field>
<field name="CLKGATE_CHANNEL" desc="" bitrange="15:8">
<value name="SSP1" value="0x2" desc=""/>
<value name="SSP2" value="0x4" desc=""/>
<value name="ATA" value="0x10" desc=""/>
<value name="NAND0" value="0x10" desc=""/>
<value name="NAND1" value="0x20" desc=""/>
<value name="NAND2" value="0x40" desc=""/>
<value name="NAND3" value="0x80" desc=""/>
</field>
<field name="FREEZE_CHANNEL" desc="" bitrange="7:0">
<value name="SSP1" value="0x2" desc=""/>
<value name="SSP2" value="0x4" desc=""/>
<value name="ATA" value="0x10" desc=""/>
<value name="NAND0" value="0x10" desc=""/>
<value name="NAND1" value="0x20" desc=""/>
<value name="NAND2" value="0x40" desc=""/>
<value name="NAND3" value="0x80" desc=""/>
</field>
</reg>
<reg name="CTRL1" desc="" sct="yes">
<addr name="CTRL1" addr="0x10"/>
<field name="RSVD1" desc="" bitrange="31:24"/>
<field name="CH_CMDCMPLT_IRQ_EN" desc="" bitrange="23:16"/>
<field name="RSVD0" desc="" bitrange="15:8"/>
<field name="CH_CMDCMPLT_IRQ" desc="" bitrange="7:0"/>
</reg>
<reg name="CHn_CMD" desc="">
<formula string="0x60+n*0x70"/>
<addr name="CH0_CMD" addr="0x60"/>
<addr name="CH1_CMD" addr="0xd0"/>
<addr name="CH2_CMD" addr="0x140"/>
<addr name="CH3_CMD" addr="0x1b0"/>
<addr name="CH4_CMD" addr="0x220"/>
<addr name="CH5_CMD" addr="0x290"/>
<addr name="CH6_CMD" addr="0x300"/>
<addr name="CH7_CMD" addr="0x370"/>
<field name="XFER_COUNT" desc="" bitrange="31:16"/>
<field name="CMDWORDS" desc="" bitrange="15:12"/>
<field name="RSVD1" desc="" bitrange="11:9"/>
<field name="HALTONTERMINATE" desc="" bitrange="8:8"/>
<field name="WAIT4ENDCMD" desc="" bitrange="7:7"/>
<field name="SEMAPHORE" desc="" bitrange="6:6"/>
<field name="NANDWAIT4READY" desc="" bitrange="5:5"/>
<field name="NANDLOCK" desc="" bitrange="4:4"/>
<field name="IRQONCMPLT" desc="" bitrange="3:3"/>
<field name="CHAIN" desc="" bitrange="2:2"/>
<field name="COMMAND" desc="" bitrange="1:0">
<value name="NO_DMA_XFER" value="0x0" desc=""/>
<value name="DMA_WRITE" value="0x1" desc=""/>
<value name="DMA_READ" value="0x2" desc=""/>
<value name="DMA_SENSE" value="0x3" desc=""/>
</field>
</reg>
</dev>
<dev name="SAIF" long_name="Sync Audio Interface" desc="Sync Audio Interface (SAIF)" version="3.2.0">
<addr name="SAIF1" addr="0x80042000"/>
<addr name="SAIF2" addr="0x80046000"/>
<reg name="DATA" desc="" sct="yes">
<addr name="DATA" addr="0x20"/>
<field name="PCM_RIGHT" desc="" bitrange="31:16"/>
<field name="PCM_LEFT" desc="" bitrange="15:0"/>
</reg>
<reg name="VERSION" desc="">
<addr name="VERSION" addr="0x30"/>
<field name="MAJOR" desc="" bitrange="31:24"/>
<field name="MINOR" desc="" bitrange="23:16"/>
<field name="STEP" desc="" bitrange="15:0"/>
</reg>
</dev>
</soc>