⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 commonchip.cfg

📁 flash programming STI 5.5.1.4 DCU3
💻 CFG
📖 第 1 页 / 共 5 页
字号:
  register AUD_ADA  (addr+0x6c) -group AudioMPEG -char  -readonly
  register AUD_DIV  (addr+0x6e) -group AudioMPEG -char
  register AUD_DIF  (addr+0x6f) -group AudioMPEG -char
  register AUD_BBE  (addr+0x70) -group AudioMPEG -char

  if (chiptype == "5510") {
    register AUD_LAT  (addr+0x3c) -group AudioMPEG -char
    register AUD_REV  (addr+0x6d) -group AudioMPEG -char -readonly
  }
}
 

proc AudioAC3DecoderRegisters addr=$1 i=0 {
  if (clsymbol ST_reg_debug) { write "AudioAC3DecoderRegisters @ " -x (addr) }
  register VERSION         (addr+0x00) -group AudioDecode -char -readonly
  register IDENT           (addr+0x01) -group AudioDecode -char -readonly
  register SFREQ           (addr+0x05) -group AudioDecode -char
  register EMPH            (addr+0x06) -group AudioDecode -char
  register INTE            (addr+0x07) -group AudioDecode -p BigEndian2Register
  register INT             (addr+0x09) -group AudioDecode -p BigEndian2Register -readonly
  register SIN_SETUP       (addr+0x0c) -group AudioDecode -char
  register CAN_SETUP       (addr+0x0d) -group AudioDecode -char
  register DATAIN          (addr+0x0e) -group AudioDecode -char -writeonly
  register ERROR           (addr+0x0f) -group AudioDecode -char -readonly
  register SOFTRESET       (addr+0x10) -group AudioDecode -char -writeonly
  register PLLPCM          (addr+0x12) -group AudioDecode -char
  register PLAY            (addr+0x13) -group AudioDecode -char
  register MUTE            (addr+0x14) -group AudioDecode -char
  register SYNCSTATUS      (addr+0x40) -group AudioDecode -char
  register ANCCOUNT        (addr+0x41) -group AudioDecode -char -readonly
  register HEAD            (addr+0x42) -group AudioDecode -p BigEndian4Register -readonly
  register PTS2            (addr+0x46) -group AudioDecode -char -readonly
  register PTS1            (addr+0x47) -group AudioDecode -p BigEndian4Register -readonly
  register USER            (addr+0x4b) -group AudioDecode -char
  register STREAMSEL       (addr+0x4c) -group AudioDecode -char
  register DECODESEL       (addr+0x4d) -group AudioDecode -char
  register BAL_LR          (addr+0x4e) -group AudioDecode -char
  register PACKET_LOCK     (addr+0x4f) -group AudioDecode -char
  register AUDIO_ID_EN     (addr+0x50) -group AudioDecode -char
  register AUDIO_ID        (addr+0x51) -group AudioDecode -char
  register AUDIO_ID_EXT    (addr+0x52) -group AudioDecode -char
  register SYNC_LOCK       (addr+0x53) -group AudioDecode -char
  register PCMDIVIDER      (addr+0x54) -group AudioDecode -char
  register PCM_CONF        (addr+0x55) -group AudioDecode -char
  register IEC958_CMD      (addr+0x5e) -group AudioDecode -char
  register IEC958_CAT      (addr+0x5f) -group AudioDecode -char
  register IEC958_CONF     (addr+0x60) -group AudioDecode -char
  register IEC958_STATUS   (addr+0x61) -group AudioDecode -char
  register PDEC            (addr+0x62) -group AudioDecode -char
  register PCM_SCALE       (addr+0x67) -group AudioDecode -char
  register COMP_MOD        (addr+0x69) -group AudioDecode -char
  register HDR             (addr+0x6a) -group AudioDecode -char
  register LDR             (addr+0x6b) -group AudioDecode -char
  register RPC             (addr+0x6c) -group AudioDecode -char
  register KARAMODE        (addr+0x6d) -group AudioDecode -char
  register DUALMODE        (addr+0x6e) -group AudioDecode -char
  register DOWNMIX         (addr+0x6f) -group AudioDecode -char
  register DWSMODE         (addr+0x70) -group AudioDecode -char
  register SOFTVER         (addr+0x71) -group AudioDecode -char
  register RUN             (addr+0x72) -group AudioDecode -char
  register SKIP_MUTE_CMD   (addr+0x73) -group AudioDecode -char
  register SKIP_MUTE_VALUE (addr+0x74) -group AudioDecode -char
  register IEC958_REP_TIME (addr+0x75) -group AudioDecode -char
  for (i=0;i<8;i++) {
    register ("STATUS"+mkstr(i)) (addr+0x76+i) -group AudioDecode -char -readonly
  }
  register IEC958_LATENCY  (addr+0x7e) -group AudioDecode -char
  register IEC958_DTDI     (addr+0x7f) -group AudioDecode -char
}

proc AudioAC3Decoder2Registers addr=$1 {
  ## 5508 chip
   if (clsymbol ST_reg_debug) { write "AudioAC3Decoder2Registers @ " -x (addr) }
   register AUD_VERSION 	(addr + 0x00) -group AudioMPEG  -char -readonly
   register AUD_IDENT 		(addr + 0x01) -group AudioMPEG  -char -readonly
   register AUD_SFREQ 		(addr + 0x05) -group AudioMPEG  -char -p SerialRegister
   register AUD_EMPH 		(addr + 0x06) -group AudioMPEG  -char
   register AUD_INTEL  		(addr + 0x07) -group AudioMPEG  -char
   register AUD_INTE  		(addr + 0x08) -group AudioMPEG  -char
   register AUD_INTL 		(addr + 0x09) -group AudioMPEG  -char
   register AUD_INT  		(addr + 0x0A) -group AudioMPEG  -char
   register AUD_SIN_SETUP 	(addr + 0x0C) -group AudioMPEG  -char
   register AUD_CAN_SETUP 	(addr + 0x0D) -group AudioMPEG  -char
   register AUD_ERROR		(addr + 0x0F) -group AudioMPEG  -char -readonly
   register AUD_SOFTRESET 	(addr + 0x10) -group AudioMPEG  -char -writeonly
   register AUD_RESERVED 	(addr + 0x11) -group AudioMPEG  -char
   register AUD_PLLPCM 		(addr + 0x12) -group AudioMPEG  -char
   register AUD_PLAY 		(addr + 0x13) -group AudioMPEG  -char
   register AUD_MUTE 		(addr + 0x14) -group AudioMPEG  -char
   register AUD_PLLMASK 	(addr + 0x18) -group AudioMPEG  -char -writeonly
   register AUD_SYNCSTATUS 	(addr + 0x40) -group AudioMPEG  -char -readonly
   register AUD_ANCCOUNT 	(addr + 0x41) -group AudioMPEG  -char -readonly
   register AUD_HEAD0 		(addr + 0x42) -group AudioMPEG  -char -readonly
   register AUD_HEAD1 		(addr + 0x43) -group AudioMPEG  -char -readonly
   register AUD_HEADLEN0 	(addr + 0x44) -group AudioMPEG  -char -readonly
   register AUD_HEADLEN1 	(addr + 0x45) -group AudioMPEG  -char -readonly
   register AUD_PTS0 		(addr + 0x46) -group AudioMPEG  -char
   register AUD_PTS1 		(addr + 0x47) -group AudioMPEG  -char
   register AUD_PTS2 		(addr + 0x48) -group AudioMPEG  -char
   register AUD_PTS3 		(addr + 0x49) -group AudioMPEG  -char
   register AUD_PTS4 		(addr + 0x4A) -group AudioMPEG  -char
   register AUD_STREAMSEL 	(addr + 0x4C) -group AudioMPEG  -char
   register AUD_DECODESEL 	(addr + 0x4D) -group AudioMPEG  -char
   register AUD_VOLUME0 	(addr + 0x4E) -group AudioMPEG  -char
   register AUD_PACKET_LOCK 	(addr + 0x4F) -group AudioMPEG  -char
   register AUD_AUDIO_ID_EN 	(addr + 0x50) -group AudioMPEG  -char
   register AUD_AUDIO_ID 	(addr + 0x51) -group AudioMPEG  -char
   register AUD_AUDIO_ID_EXT 	(addr + 0x52) -group AudioMPEG  -char
   register AUD_SYNC_LOCK 	(addr + 0x53) -group AudioMPEG  -char
   register AUD_PCMDIVIDER 	(addr + 0x54) -group AudioMPEG  -char
   register AUD_PCM_CONF 	(addr + 0x55) -group AudioMPEG  -char
   register AUD_PCM_CROSS	(addr + 0x56) -group AudioMPEG  -char
   register AUD_LDLY 		(addr + 0x57) -group AudioMPEG  -char
   register AUD_RDLY 		(addr + 0x58) -group AudioMPEG  -char
   register AUD_CDLY 		(addr + 0x59) -group AudioMPEG  -char
   register AUD_SUBDLY 		(addr + 0x5A) -group AudioMPEG  -char
   register AUD_LSDLY 		(addr + 0x5B) -group AudioMPEG  -char
   register AUD_RSDLY 		(addr + 0x5C) -group AudioMPEG  -char
   register AUD_DLYUPDATE 	(addr + 0x5D) -group AudioMPEG  -char
   register AUD_IEC958_CMD 	(addr + 0x5E) -group AudioMPEG  -char
   register AUD_IEC958_CAT 	(addr + 0x5F) -group AudioMPEG  -char
   register AUD_IEC958_CONF 	(addr + 0x60) -group AudioMPEG  -char
   register AUD_IEC958_STATUS 	(addr + 0x61) -group AudioMPEG  -char
   register AUD_PDEC 		(addr + 0x62) -group AudioMPEG  -char
   register AUD_VOLUME1 	(addr + 0x63) -group AudioMPEG  -char
   register AUD_PL_AB 		(addr + 0x64) -group AudioMPEG  -char
   register AUD_PL_DWNX 	(addr + 0x65) -group AudioMPEG  -char
   register AUD_OCFG 		(addr + 0x66) -group AudioMPEG  -char
   register AUD_CHAN_IDX 	(addr + 0x67) -group AudioMPEG  -char
   register AUD_DECODE_LFE 	(addr + 0x68) -group AudioMPEG  -char
   register AUD_MP_SKIP_LFE 	(addr + 0x68) -group AudioMPEG  -char
   register AUD_COMP_MOD 	(addr + 0x69) -group AudioMPEG  -char
   ## why is next same address as previous?
   register AUD_MP_PROG_NO	(addr + 0x69) -group AudioMPEG  -char 
   register AUD_AC3_HDR 	(addr + 0x6A) -group AudioMPEG  -char
   register AUD_MP_DRC 		(addr + 0x6A) -group AudioMPEG  -char
   register AUD_AC3_LDR 	(addr + 0x6B) -group AudioMPEG  -char
   register AUD_AC3_CRC_OFF 	(addr + 0x6C) -group AudioMPEG  -char
   register AUD_MP_CRC_OFF 	(addr + 0x6C) -group AudioMPEG  -char
   register AUD_AC3_KARAMODE 	(addr + 0x6D) -group AudioMPEG  -char
   register AUD_MP_MC_OFF 	(addr + 0x6D) -group AudioMPEG  -char
   register AUD_AC3_DUALMODE 	(addr + 0x6E) -group AudioMPEG  -char
   register AUD_MP_DUAL 	(addr + 0x6E) -group AudioMPEG  -char
   register AUD_AC3_DOWNMIX 	(addr + 0x6F) -group AudioMPEG  -char
   register AUD_MP_DOWNMIX 	(addr + 0x6F) -group AudioMPEG  -char
   register AUD_DWSMODE 	(addr + 0x70) -group AudioMPEG  -char
   register AUD_SOFTVER 	(addr + 0x71) -group AudioMPEG  -char
   register AUD_RUN 		(addr + 0x72) -group AudioMPEG  -char
   register AUD_SKIP_MUTE_CMD 	(addr + 0x73) -group AudioMPEG  -char
   register AUD_SKIP_MUTE_VALUE (addr + 0x74) -group AudioMPEG  -char
   register AUD_IEC958_REP_TIME (addr + 0x75) -group AudioMPEG  -char
   register AUD_STATUS0 	(addr + 0x76) -group AudioMPEG  -char -readonly
   register AUD_MP_STATUS0 	(addr + 0x76) -group AudioMPEG  -char -readonly
   register AUD_LPCM_STATUS0 	(addr + 0x76) -group AudioMPEG  -char
   register AUD_STATUS1 	(addr + 0x77) -group AudioMPEG  -char -readonly
   register AUD_MP_STATUS1 	(addr + 0x77) -group AudioMPEG  -char -readonly
   register AUD_LPCM_STATUS1 	(addr + 0x77) -group AudioMPEG  -char
   register AUD_STATUS2 	(addr + 0x78) -group AudioMPEG  -char -readonly
   register AUD_MP_STATUS2 	(addr + 0x78) -group AudioMPEG  -char -readonly
   register AUD_LPCM_STATUS2 	(addr + 0x78) -group AudioMPEG  -char
   register AUD_STATUS3 	(addr + 0x79) -group AudioMPEG  -char -readonly
   register AUD_MP_STATUS3 	(addr + 0x79) -group AudioMPEG  -char -readonly
   register AUD_STATUS4 	(addr + 0x7A) -group AudioMPEG  -char -readonly
   register AUD_MP_STATUS4 	(addr + 0x7A) -group AudioMPEG  -char -readonly
   register AUD_STATUS5 	(addr + 0x7B) -group AudioMPEG  -char -readonly
   register AUD_MP_STATUS5 	(addr + 0x7B) -group AudioMPEG  -char -readonly
   register AUD_STATUS6 	(addr + 0x7C) -group AudioMPEG  -char -readonly
   register AUD_STATUS7 	(addr + 0x7D) -group AudioMPEG  -char -readonly
   register AUD_IEC958_LATENCY 	(addr + 0x7E) -group AudioMPEG  -char
   register AUD_IEC958_DTDI 	(addr + 0x7F) -group AudioMPEG  -char
}

proc BlockMoveDMAControllerRegisters addr=$1 {
  if (clsymbol ST_reg_debug) { write "BlockMoveDMAControllerRegisters @ " -x (addr) }
  register BMDMASrcAddress  (addr)      -group BMDMA -writeonly
  register BMDMADestAddress (addr+0x4)  -group BMDMA -writeonly
  register BMDMACount       (addr+0x8)  -group BMDMA -writeonly
  register BMDMAIntEn       (addr+0xc)  -group BMDMA
  register BMDMAStatus      (addr+0x10) -group BMDMA -readonly
  register BMDMAIntAck      (addr+0x14) -group BMDMA -writeonly
  register BMDMAAbort       (addr+0x18) -group BMDMA -writeonly
}

proc CacheControl1Registers addr=$1 {
  ## For earlier caches, eg STi5500 and STi5505
  if (clsymbol ST_reg_debug) { write "CacheControl1Registers @ " -x (addr) }
  register CacheControl     (addr)       -group CacheControl
  register SelectCache      (addr+0x100) -group CacheControl -writeonly
  register InvalidateDCache (addr+0x200) -group CacheControl -writeonly
  register InvalidateICache (addr+0x300) -group CacheControl -writeonly
  register FlushDCache      (addr+0x400) -group CacheControl -writeonly
  register CacheControlLock (addr+0x500) -group CacheControl
}

proc CacheControl2Registers addr=$1 i=0 {
  ## For later caches, eg ST20TP3 and STi5510
  if (clsymbol ST_reg_debug) { write "CacheControl2Registers @ " -x (addr) }
  for (i=0;i<4;i++) {
    register ("CacheControl"+(mkstr(i))) (addr+(i*0x100)) -group CacheControl
  }
  register DCacheNotSRAM    (addr+0x400) -group CacheControl -writeonly
  register InvalidateDCache (addr+0x500) -group CacheControl -writeonly
  register FlushDCache      (addr+0x600) -group CacheControl -writeonly
  register EnableICache     (addr+0x700) -group CacheControl -writeonly
  register InvalidateICache (addr+0x800) -group CacheControl -writeonly
  register CacheStatus      (addr+0x900) -group CacheControl -readonly
  register CacheControlLock (addr+0xa00) -group CacheControl
}

proc CacheControl3Registers addr=$1 instruction=$2 i=0 group prefix {
  ## For ST20-DC1 and ST20C2_C200 based parts
  if (clsymbol ST_reg_debug) { write "CacheControl3Registers @ " -x (addr) }

  if (instruction == true) {
    group = "InstructionCache"
    prefix = "I"
  } else {
    group = "DataCache"
    prefix = "D"
  }

  register (prefix+"CacheEnable")         (addr+0x000) -group (group)
  register (prefix+"Lock")                (addr+0x004) -group (group)
  register (prefix+"Invalidate")          (addr+0x010) -group (group) -writeonly
  if (instruction != true) {
    register (prefix+"Flush") (addr+0x014) -group (group) -writeonly
  }
  register (prefix+"Status")              (addr+0x018) -group (group) -readonly
  register (prefix+"Region0Enable")       (addr+0x020) -group (group)
  register (prefix+"Region1BlockEnable")  (addr+0x028) -group (group)
  register (prefix+"Region1TopEnable")    (addr+0x02C) -group (group)
  register (prefix+"Region2Enable")       (addr+0x030) -group (group)
  register (prefix+"Region3BlockEnable")  (addr+0x038) -group (group)
  register (prefix+"Region3BankEnable")   (addr+0x03c) -group (group)
}

proc ChanBlockMoveDMAControllerRegisters addr=$1 {
  if (clsymbol ST_reg_debug) { write "ChanBlockMoveDMAControllerRegisters @ " -x (addr) }
  register BMDMADestAddress (addr) -group DMAController -writeonly
}

proc ClockGeneratorRegisters addr=$1 dvd=$2 {
  if (clsymbol ST_reg_debug) { write "ClockGeneratorRegisters @ " -x (addr) " dvd=" (dvd)}
  register CKG_PLL (addr+0x30) -group ClockGen -char
  register CKG_CFG (addr+0x31) -group ClockGen -char
  register CKG_SMC (addr+0x32) -group ClockGen -char -p Serial4Register
  register CKG_LNK (addr+0x33) -group ClockGen -char -p Serial4Register
  register CKG_MCK (addr+0x36) -group ClockGen -char -p Serial4Register
  if (dvd == true) {
    register CKG_AUD (addr+0x35) -group ClockGen -char -p Serial4Register
    register CKG_AUX (addr+0x37) -group ClockGen -char -p Serial4Register
  } else {
    register CKG_PXC (addr+0x34) -group ClockGen -char -p Serial4Register
  }

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -