diff options
author | Aidan MacDonald <amachronic@protonmail.com> | 2021-06-10 23:54:07 +0100 |
---|---|---|
committer | Aidan MacDonald <amachronic@protonmail.com> | 2021-06-14 20:45:14 +0100 |
commit | 89f40647431713b663e416329341a733c457df32 (patch) | |
tree | dba54c935784a53b0e9abc4ad45771c92ed89d84 /utils/reggen-ng | |
parent | 2d6ddd0c5be78678ec2a349b9a912cc1999c1c68 (diff) |
x1000: Extend CPM registers for dual boot
Change-Id: I283834a653506fd95ff8b56897e5f3afaf375cf5
Diffstat (limited to 'utils/reggen-ng')
-rw-r--r-- | utils/reggen-ng/x1000.reggen | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/utils/reggen-ng/x1000.reggen b/utils/reggen-ng/x1000.reggen index f77f55b8b9..339deef483 100644 --- a/utils/reggen-ng/x1000.reggen +++ b/utils/reggen-ng/x1000.reggen @@ -509,6 +509,14 @@ node CPM { fld 3 0 CLKDIV } + reg MACCDR 0x54 { + bit 31 CLKSRC { enum SCLK_A 0; enum MPLL 1; } + bit 29 CE + bit 28 BUSY + bit 27 STOP + fld 7 0 CLKDIV + } + reg I2SCDR 0x60 { bit 31 PCS { enum SCLK_A 0; enum MPLL 1; } bit 30 CS { enum EXCLK 0; enum PLL 1; } @@ -564,6 +572,35 @@ node CPM { fld 7 0 CLKDIV } + reg CIMCDR 0x7c { + bit 31 CLKSRC { enum SCLK_A 1; enum MPLL 1 } + bit 29 CE + bit 28 BUSY + bit 27 STOP + fld 7 0 CLKDIV + } + + reg PCMCDR 0x84 { + # Hardware manual says this is the correct definition, but based + # on Ingenic's sources, the format is actually like I2SCDR. + #fld 31 30 CLKSRC { enum SCLK_A 0; enum EXCLK 1; enum MPLL 2 } + + # Note this format hasn't been verified to work because none of + # the X1000 targets are using a PCM interface. + bit 31 PCS { enum SCLK_A 0; enum MPLL 1; } + bit 30 CS { enum EXCLK 0; enum PLL 1; } + + bit 29 CE + fld 21 13 DIV_M + fld 12 0 DIV_N + } + + reg PCMCDR1 0xe0 { + bit 31 N_EN + bit 30 D_EN + fld 12 0 DIV_D + } + reg INTR 0xb0 { bit 1 VBUS bit 0 ADEV |