Open Sound System |
Do you have problems with sound/audio application development? Don't panic! Click here for help! |
Confidential & Proprietary Private & Confidential Creative Confidential
Copyright (C) Creative Technology, Ltd., 2007. All rights reserved.
#ifndef _201kreg_H #define _20k1reg_H // PCI config registers #define PCI_CFGHDR_VENDORID 0x00 #define PCI_CFGHDR_DEVICEID 0x02 #define PCI_CFGHDR_CMDREG 0x04 #define PCI_CFGHDR_STATUSREG 0x06 #define PCI_CFGHDR_REVID 0x08 #define PCI_CFGHDR_DEVCLASS 0x09 #define PCI_CFGHDR_CACHESIZE 0x0C #define PCI_CFGHDR_LATENCY 0x0D #define PCI_CFGHDR_HEADERTYPE 0x0E #define PCI_CFGHDR_BIST 0x0F #define PCI_CFGHDR_BASEREG0 0x10 #define PCI_CFGHDR_BASEREG1 0x14 #define PCI_CFGHDR_BASEREG2 0x18 #define PCI_CFGHDR_BASEREG3 0x1C #define PCI_CFGHDR_BASEREG4 0x20 #define PCI_CFGHDR_BASEREG5 0x24 #define PCI_CFGHDR_RESERVED1 0x28 #define PCI_CFGHDR_SUBVENDORID 0x2C #define PCI_CFGHDR_SUBSYSTEMID 0x2E #define PCI_CFGHDR_EXPANDROM 0x30 #define PCI_CFGHDR_RESERVED2 0x34 #define PCI_CFGHDR_CAPS_PTR 0x34 #define PCI_CFGHDR_IRQLINE 0x3C #define PCI_CFGHDR_IRQPIN 0x3D #define PCI_CFGHDR_MINGRANT 0x3E #define PCI_CFGHDR_MAXLATENCY 0x3F #define PCI_CFGHDR_LACR1 0x40 #define PCI_CFGHDR_LACR2 0x41 #define PCI_CFGHDR_LACR3 0x42 #define PCI_CFGHDR_LACR4 0x43 // 20k1 registers #define DSPXRAM_START 0x000000 #define DSPXRAM_END 0x013FFC #define DSPAXRAM_START 0x020000 #define DSPAXRAM_END 0x023FFC #define DSPYRAM_START 0x040000 #define DSPYRAM_END 0x04FFFC #define DSPAYRAM_START 0x020000 #define DSPAYRAM_END 0x063FFC #define DSPMICRO_START 0x080000 #define DSPMICRO_END 0x0B3FFC #define DSP0IO_START 0x100000 #define DSP0IO_END 0x101FFC #define AUDIORINGIPDSP0_START 0x100000 #define AUDIORINGIPDSP0_END 0x1003FC #define AUDIORINGOPDSP0_START 0x100400 #define AUDIORINGOPDSP0_END 0x1007FC #define AUDPARARINGIODSP0_START 0x100800 #define AUDPARARINGIODSP0_END 0x100BFC #define DSP0LOCALHWREG_START 0x100C00 #define DSP0LOCALHWREG_END 0x100C3C #define DSP0XYRAMAGINDEX_START 0x100C40 #define DSP0XYRAMAGINDEX_END 0x100C5C #define DSP0XYRAMAGMDFR_START 0x100C60 #define DSP0XYRAMAGMDFR_END 0x100C7C #define DSP0INTCONTLVEC_START 0x100C80 #define DSP0INTCONTLVEC_END 0x100CD8 #define INTCONTLGLOBALREG_START 0x100D1C #define INTCONTLGLOBALREG_END 0x100D3C #define HOSTINTFPORTADDRCONTDSP0 0x100D40 #define HOSTINTFPORTDATADSP0 0x100D44 #define TIME0PERENBDSP0 0x100D60 #define TIME0COUNTERDSP0 0x100D64 #define TIME1PERENBDSP0 0x100D68 #define TIME1COUNTERDSP0 0x100D6C #define TIME2PERENBDSP0 0x100D70 #define TIME2COUNTERDSP0 0x100D74 #define TIME3PERENBDSP0 0x100D78 #define TIME3COUNTERDSP0 0x100D7C #define XRAMINDOPERREFNOUP_STARTDSP0 0x100D80 #define XRAMINDOPERREFNOUP_ENDDSP0 0x100D9C #define XRAMINDOPERREFUP_STARTDSP0 0x100DA0 #define XRAMINDOPERREFUP_ENDDSP0 0x100DBC #define YRAMINDOPERREFNOUP_STARTDSP0 0x100DC0 #define YRAMINDOPERREFNOUP_ENDDSP0 0x100DDC #define YRAMINDOPERREFUP_STARTDSP0 0x100DE0 #define YRAMINDOPERREFUP_ENDDSP0 0x100DFC #define DSP0CONDCODE 0x100E00 #define DSP0STACKFLAG 0x100E04 #define DSP0PROGCOUNTSTACKPTREG 0x100E08 #define DSP0PROGCOUNTSTACKDATAREG 0x100E0C #define DSP0CURLOOPADDRREG 0x100E10 #define DSP0CURLOOPCOUNT 0x100E14 #define DSP0TOPLOOPCOUNTSTACK 0x100E18 #define DSP0TOPLOOPADDRSTACK 0x100E1C #define DSP0LOOPSTACKPTR 0x100E20 #define DSP0STASSTACKDATAREG 0x100E24 #define DSP0STASSTACKPTR 0x100E28 #define DSP0PROGCOUNT 0x100E2C #define GLOBDSPDEBGREG 0x100E30 #define GLOBDSPBREPTRREG 0x100E30 #define DSP0XYRAMBASE_START 0x100EA0 #define DSP0XYRAMBASE_END 0x100EBC #define DSP0XYRAMLENG_START 0x100EC0 #define DSP0XYRAMLENG_END 0x100EDC #define SEMAPHOREREGDSP0 0x100EE0 #define DSP0INTCONTMASKREG 0x100EE4 #define DSP0INTCONTPENDREG 0x100EE8 #define DSP0INTCONTSERVINT 0x100EEC #define DSPINTCONTEXTINTMODREG 0x100EEC #define GPIODSP0 0x100EFC #define DMADSPBASEADDRREG_STARTDSP0 0x100F00 #define DMADSPBASEADDRREG_ENDDSP0 0x100F1C #define DMAHOSTBASEADDRREG_STARTDSP0 0x100F20 #define DMAHOSTBASEADDRREG_ENDDSP0 0x100F3C #define DMADSPCURADDRREG_STARTDSP0 0x100F40 #define DMADSPCURADDRREG_ENDDSP0 0x100F5C #define DMAHOSTCURADDRREG_STARTDSP0 0x100F60 #define DMAHOSTCURADDRREG_ENDDSP0 0x100F7C #define DMATANXCOUNTREG_STARTDSP0 0x100F80 #define DMATANXCOUNTREG_ENDDSP0 0x100F9C #define DMATIMEBUGREG_STARTDSP0 0x100FA0 #define DMATIMEBUGREG_ENDDSP0 0x100FAC #define DMACNTLMODFREG_STARTDSP0 0x100FA0 #define DMACNTLMODFREG_ENDDSP0 0x100FAC #define DMAGLOBSTATSREGDSP0 0x100FEC #define DSP0XGPRAM_START 0x101000 #define DSP0XGPRAM_END 0x1017FC #define DSP0YGPRAM_START 0x101800 #define DSP0YGPRAM_END 0x101FFC #define AUDIORINGIPDSP1_START 0x102000 #define AUDIORINGIPDSP1_END 0x1023FC #define AUDIORINGOPDSP1_START 0x102400 #define AUDIORINGOPDSP1_END 0x1027FC #define AUDPARARINGIODSP1_START 0x102800 #define AUDPARARINGIODSP1_END 0x102BFC #define DSP1LOCALHWREG_START 0x102C00 #define DSP1LOCALHWREG_END 0x102C3C #define DSP1XYRAMAGINDEX_START 0x102C40 #define DSP1XYRAMAGINDEX_END 0x102C5C #define DSP1XYRAMAGMDFR_START 0x102C60 #define DSP1XYRAMAGMDFR_END 0x102C7C #define DSP1INTCONTLVEC_START 0x102C80 #define DSP1INTCONTLVEC_END 0x102CD8 #define HOSTINTFPORTADDRCONTDSP1 0x102D40 #define HOSTINTFPORTDATADSP1 0x102D44 #define TIME0PERENBDSP1 0x102D60 #define TIME0COUNTERDSP1 0x102D64 #define TIME1PERENBDSP1 0x102D68 #define TIME1COUNTERDSP1 0x102D6C #define TIME2PERENBDSP1 0x102D70 #define TIME2COUNTERDSP1 0x102D74 #define TIME3PERENBDSP1 0x102D78 #define TIME3COUNTERDSP1 0x102D7C #define XRAMINDOPERREFNOUP_STARTDSP1 0x102D80 #define XRAMINDOPERREFNOUP_ENDDSP1 0x102D9C #define XRAMINDOPERREFUP_STARTDSP1 0x102DA0 #define XRAMINDOPERREFUP_ENDDSP1 0x102DBC #define YRAMINDOPERREFNOUP_STARTDSP1 0x102DC0 #define YRAMINDOPERREFNOUP_ENDDSP1 0x102DDC #define YRAMINDOPERREFUP_STARTDSP1 0x102DE0 #define YRAMINDOPERREFUP_ENDDSP1 0x102DFC #define DSP1CONDCODE 0x102E00 #define DSP1STACKFLAG 0x102E04 #define DSP1PROGCOUNTSTACKPTREG 0x102E08 #define DSP1PROGCOUNTSTACKDATAREG 0x102E0C #define DSP1CURLOOPADDRREG 0x102E10 #define DSP1CURLOOPCOUNT 0x102E14 #define DSP1TOPLOOPCOUNTSTACK 0x102E18 #define DSP1TOPLOOPADDRSTACK 0x102E1C #define DSP1LOOPSTACKPTR 0x102E20 #define DSP1STASSTACKDATAREG 0x102E24 #define DSP1STASSTACKPTR 0x102E28 #define DSP1PROGCOUNT 0x102E2C #define DSP1XYRAMBASE_START 0x102EA0 #define DSP1XYRAMBASE_END 0x102EBC #define DSP1XYRAMLENG_START 0x102EC0 #define DSP1XYRAMLENG_END 0x102EDC #define SEMAPHOREREGDSP1 0x102EE0 #define DSP1INTCONTMASKREG 0x102EE4 #define DSP1INTCONTPENDREG 0x102EE8 #define DSP1INTCONTSERVINT 0x102EEC #define GPIODSP1 0x102EFC #define DMADSPBASEADDRREG_STARTDSP1 0x102F00 #define DMADSPBASEADDRREG_ENDDSP1 0x102F1C #define DMAHOSTBASEADDRREG_STARTDSP1 0x102F20 #define DMAHOSTBASEADDRREG_ENDDSP1 0x102F3C #define DMADSPCURADDRREG_STARTDSP1 0x102F40 #define DMADSPCURADDRREG_ENDDSP1 0x102F5C #define DMAHOSTCURADDRREG_STARTDSP1 0x102F60 #define DMAHOSTCURADDRREG_ENDDSP1 0x102F7C #define DMATANXCOUNTREG_STARTDSP1 0x102F80 #define DMATANXCOUNTREG_ENDDSP1 0x102F9C #define DMATIMEBUGREG_STARTDSP1 0x102FA0 #define DMATIMEBUGREG_ENDDSP1 0x102FAC #define DMACNTLMODFREG_STARTDSP1 0x102FA0 #define DMACNTLMODFREG_ENDDSP1 0x102FAC #define DMAGLOBSTATSREGDSP1 0x102FEC #define DSP1XGPRAM_START 0x103000 #define DSP1XGPRAM_END 0x1033FC #define DSP1YGPRAM_START 0x103400 #define DSP1YGPRAM_END 0x1037FC #define AUDIORINGIPDSP2_START 0x104000 #define AUDIORINGIPDSP2_END 0x1043FC #define AUDIORINGOPDSP2_START 0x104400 #define AUDIORINGOPDSP2_END 0x1047FC #define AUDPARARINGIODSP2_START 0x104800 #define AUDPARARINGIODSP2_END 0x104BFC #define DSP2LOCALHWREG_START 0x104C00 #define DSP2LOCALHWREG_END 0x104C3C #define DSP2XYRAMAGINDEX_START 0x104C40 #define DSP2XYRAMAGINDEX_END 0x104C5C #define DSP2XYRAMAGMDFR_START 0x104C60 #define DSP2XYRAMAGMDFR_END 0x104C7C #define DSP2INTCONTLVEC_START 0x104C80 #define DSP2INTCONTLVEC_END 0x104CD8 #define HOSTINTFPORTADDRCONTDSP2 0x104D40 #define HOSTINTFPORTDATADSP2 0x104D44 #define TIME0PERENBDSP2 0x104D60 #define TIME0COUNTERDSP2 0x104D64 #define TIME1PERENBDSP2 0x104D68 #define TIME1COUNTERDSP2 0x104D6C #define TIME2PERENBDSP2 0x104D70 #define TIME2COUNTERDSP2 0x104D74 #define TIME3PERENBDSP2 0x104D78 #define TIME3COUNTERDSP2 0x104D7C #define XRAMINDOPERREFNOUP_STARTDSP2 0x104D80 #define XRAMINDOPERREFNOUP_ENDDSP2 0x104D9C #define XRAMINDOPERREFUP_STARTDSP2 0x104DA0 #define XRAMINDOPERREFUP_ENDDSP2 0x104DBC #define YRAMINDOPERREFNOUP_STARTDSP2 0x104DC0 #define YRAMINDOPERREFNOUP_ENDDSP2 0x104DDC #define YRAMINDOPERREFUP_STARTDSP2 0x104DE0 #define YRAMINDOPERREFUP_ENDDSP2 0x104DFC #define DSP2CONDCODE 0x104E00 #define DSP2STACKFLAG 0x104E04 #define DSP2PROGCOUNTSTACKPTREG 0x104E08 #define DSP2PROGCOUNTSTACKDATAREG 0x104E0C #define DSP2CURLOOPADDRREG 0x104E10 #define DSP2CURLOOPCOUNT 0x104E14 #define DSP2TOPLOOPCOUNTSTACK 0x104E18 #define DSP2TOPLOOPADDRSTACK 0x104E1C #define DSP2LOOPSTACKPTR 0x104E20 #define DSP2STASSTACKDATAREG 0x104E24 #define DSP2STASSTACKPTR 0x104E28 #define DSP2PROGCOUNT 0x104E2C #define DSP2XYRAMBASE_START 0x104EA0 #define DSP2XYRAMBASE_END 0x104EBC #define DSP2XYRAMLENG_START 0x104EC0 #define DSP2XYRAMLENG_END 0x104EDC #define SEMAPHOREREGDSP2 0x104EE0 #define DSP2INTCONTMASKREG 0x104EE4 #define DSP2INTCONTPENDREG 0x104EE8 #define DSP2INTCONTSERVINT 0x104EEC #define GPIODSP2 0x104EFC #define DMADSPBASEADDRREG_STARTDSP2 0x104F00 #define DMADSPBASEADDRREG_ENDDSP2 0x104F1C #define DMAHOSTBASEADDRREG_STARTDSP2 0x104F20 #define DMAHOSTBASEADDRREG_ENDDSP2 0x104F3C #define DMADSPCURADDRREG_STARTDSP2 0x104F40 #define DMADSPCURADDRREG_ENDDSP2 0x104F5C #define DMAHOSTCURADDRREG_STARTDSP2 0x104F60 #define DMAHOSTCURADDRREG_ENDDSP2 0x104F7C #define DMATANXCOUNTREG_STARTDSP2 0x104F80 #define DMATANXCOUNTREG_ENDDSP2 0x104F9C #define DMATIMEBUGREG_STARTDSP2 0x104FA0 #define DMATIMEBUGREG_ENDDSP2 0x104FAC #define DMACNTLMODFREG_STARTDSP2 0x104FA0 #define DMACNTLMODFREG_ENDDSP2 0x104FAC #define DMAGLOBSTATSREGDSP2 0x104FEC #define DSP2XGPRAM_START 0x105000 #define DSP2XGPRAM_END 0x1051FC #define DSP2YGPRAM_START 0x105800 #define DSP2YGPRAM_END 0x1059FC #define AUDIORINGIPDSP3_START 0x106000 #define AUDIORINGIPDSP3_END 0x1063FC #define AUDIORINGOPDSP3_START 0x106400 #define AUDIORINGOPDSP3_END 0x1067FC #define AUDPARARINGIODSP3_START 0x106800 #define AUDPARARINGIODSP3_END 0x106BFC #define DSP3LOCALHWREG_START 0x106C00 #define DSP3LOCALHWREG_END 0x106C3C #define DSP3XYRAMAGINDEX_START 0x106C40 #define DSP3XYRAMAGINDEX_END 0x106C5C #define DSP3XYRAMAGMDFR_START 0x106C60 #define DSP3XYRAMAGMDFR_END 0x106C7C #define DSP3INTCONTLVEC_START 0x106C80 #define DSP3INTCONTLVEC_END 0x106CD8 #define HOSTINTFPORTADDRCONTDSP3 0x106D40 #define HOSTINTFPORTDATADSP3 0x106D44 #define TIME0PERENBDSP3 0x106D60 #define TIME0COUNTERDSP3 0x106D64 #define TIME1PERENBDSP3 0x106D68 #define TIME1COUNTERDSP3 0x106D6C #define TIME2PERENBDSP3 0x106D70 #define TIME2COUNTERDSP3 0x106D74 #define TIME3PERENBDSP3 0x106D78 #define TIME3COUNTERDSP3 0x106D7C #define XRAMINDOPERREFNOUP_STARTDSP3 0x106D80 #define XRAMINDOPERREFNOUP_ENDDSP3 0x106D9C #define XRAMINDOPERREFUP_STARTDSP3 0x106DA0 #define XRAMINDOPERREFUP_ENDDSP3 0x106DBC #define YRAMINDOPERREFNOUP_STARTDSP3 0x106DC0 #define YRAMINDOPERREFNOUP_ENDDSP3 0x106DDC #define YRAMINDOPERREFUP_STARTDSP3 0x106DE0 #define YRAMINDOPERREFUP_ENDDSP3 0x100DFC #define DSP3CONDCODE 0x106E00 #define DSP3STACKFLAG 0x106E04 #define DSP3PROGCOUNTSTACKPTREG 0x106E08 #define DSP3PROGCOUNTSTACKDATAREG 0x106E0C #define DSP3CURLOOPADDRREG 0x106E10 #define DSP3CURLOOPCOUNT 0x106E14 #define DSP3TOPLOOPCOUNTSTACK 0x106E18 #define DSP3TOPLOOPADDRSTACK 0x106E1C #define DSP3LOOPSTACKPTR 0x106E20 #define DSP3STASSTACKDATAREG 0x106E24 #define DSP3STASSTACKPTR 0x106E28 #define DSP3PROGCOUNT 0x106E2C #define DSP3XYRAMBASE_START 0x106EA0 #define DSP3XYRAMBASE_END 0x106EBC #define DSP3XYRAMLENG_START 0x106EC0 #define DSP3XYRAMLENG_END 0x106EDC #define SEMAPHOREREGDSP3 0x106EE0 #define DSP3INTCONTMASKREG 0x106EE4 #define DSP3INTCONTPENDREG 0x106EE8 #define DSP3INTCONTSERVINT 0x106EEC #define GPIODSP3 0x106EFC #define DMADSPBASEADDRREG_STARTDSP3 0x106F00 #define DMADSPBASEADDRREG_ENDDSP3 0x106F1C #define DMAHOSTBASEADDRREG_STARTDSP3 0x106F20 #define DMAHOSTBASEADDRREG_ENDDSP3 0x106F3C #define DMADSPCURADDRREG_STARTDSP3 0x106F40 #define DMADSPCURADDRREG_ENDDSP3 0x106F5C #define DMAHOSTCURADDRREG_STARTDSP3 0x106F60 #define DMAHOSTCURADDRREG_ENDDSP3 0x106F7C #define DMATANXCOUNTREG_STARTDSP3 0x106F80 #define DMATANXCOUNTREG_ENDDSP3 0x106F9C #define DMATIMEBUGREG_STARTDSP3 0x106FA0 #define DMATIMEBUGREG_ENDDSP3 0x106FAC #define DMACNTLMODFREG_STARTDSP3 0x106FA0 #define DMACNTLMODFREG_ENDDSP3 0x106FAC #define DMAGLOBSTATSREGDSP3 0x106FEC #define DSP3XGPRAM_START 0x107000 #define DSP3XGPRAM_END 0x1071FC #define DSP3YGPRAM_START 0x107800 #define DSP3YGPRAM_END 0x1079FC //end of DSP reg definitions #define DSPAIMAP_START 0x108000 #define DSPAIMAP_END 0x1083FC #define DSPPIMAP_START 0x108400 #define DSPPIMAP_END 0x1087FC #define DSPPOMAP_START 0x108800 #define DSPPOMAP_END 0x108BFC #define DSPPOCTL 0x108C00 #define TKCTL_START 0x110000 #define TKCTL_END 0x110FFC #define TKCC_START 0x111000 #define TKCC_END 0x111FFC #define TKIMAP_START 0x112000 #define TKIMAP_END 0x112FFC #define TKDCTR16 0x113000 #define TKPB16 0x113004 #define TKBS16 0x113008 #define TKDCTR32 0x11300C #define TKPB32 0x113010 #define TKBS32 0x113014 #define ICDCTR16 0x113018 #define ITBS16 0x11301C #define ICDCTR32 0x113020 #define ITBS32 0x113024 #define ITSTART 0x113028 #define TKSQ 0x11302C #define TKSCCTL_START 0x114000 #define TKSCCTL_END 0x11403C #define TKSCADR_START 0x114100 #define TKSCADR_END 0x11413C #define TKSCDATAX_START 0x114800 #define TKSCDATAX_END 0x1149FC #define TKPCDATAX_START 0x120000 #define TKPCDATAX_END 0x12FFFC #define MALSA 0x130000 #define MAPPHA 0x130004 #define MAPPLA 0x130008 #define MALSB 0x130010 #define MAPPHB 0x130014 #define MAPPLB 0x130018 #define TANSPORTMAPABREGS_START 0x130020 #define TANSPORTMAPABREGS_END 0x13A2FC #define PTPAHX 0x13B000 #define PTPALX 0x13B004 //#define PTPALX 0x13B004 #define TANSPPAGETABLEPHYADDR015_START 0x13B008 #define TANSPPAGETABLEPHYADDR015_END 0x13B07C #define TRNQADRX_START 0x13B100 #define TRNQADRX_END 0x13B13C #define TRNQTIMX_START 0x13B200 #define TRNQTIMX_END 0x13B23C #define TRNQAPARMX_START 0x13B300 #define TRNQAPARMX_END 0x13B33C #define TRNQCNT 0x13B400 #define TRNCTL 0x13B404 #define TRNIS 0x13B408 #define TRNCURTS 0x13B40C #define AMOP_START(n) 0x140000+(8*(n)) #define AMOP_END 0x147FFC #define PMOP_START 0x148000 #define PMOP_END 0x14FFFC #define PCURR_START 0x150000 #define PCURR_END 0x153FFC #define PTRAG_START 0x154000 #define PTRAG_END 0x157FFC #define PSR_START 0x158000 #define PSR_END 0x15BFFC #define PFSTAT4SEG_START 0x160000 #define PFSTAT4SEG_END 0x160BFC #define PFSTAT2SEG_START 0x160C00 #define PFSTAT2SEG_END 0x1617FC #define PFTARG4SEG_START 0x164000 #define PFTARG4SEG_END 0x164BFC #define PFTARG2SEG_START 0x164C00 #define PFTARG2SEG_END 0x1657FC #define PFSR4SEG_START 0x168000 #define PFSR4SEG_END 0x168BFC #define PFSR2SEG_START 0x168C00 #define PFSR2SEG_END 0x1697FC #define PCURRMS4SEG_START 0x16C000 #define PCURRMS4SEG_END 0x16CCFC #define PCURRMS2SEG_START 0x16CC00 #define PCURRMS2SEG_END 0x16D7FC #define PTARGMS4SEG_START 0x170000 #define PTARGMS4SEG_END 0x172FFC #define PTARGMS2SEG_START 0x173000 #define PTARGMS2SEG_END 0x1747FC #define PSRMS4SEG_START 0x170000 #define PSRMS4SEG_END 0x172FFC #define PSRMS2SEG_START 0x173000 #define PSRMS2SEG_END 0x1747FC #define PRING_LO_START 0x190000 #define PRING_LO_END 0x193FFC #define PRING_HI_START 0x194000 #define PRING_HI_END 0x197FFC #define PRING_LO_HI_START(n) 0x198000+(4*(n)) #define PRING_LO_HI_END 0x19BFFC #define PINTFIFO 0x1A0000 #define SRCCTL(n) 0x1B0000+((n)*0x100) # define SRCCTL_ILSZ (1<<16) // bits 16-19 # define SRCCTL_IE (1<<15) #define SRCCCR(n) 0x1B0004+(0x100*(n)) #define SRCIMAP(n) 0x1B0008+(0x100*(n)) #define SRCODDC 0x1B000C #define SRCCA(n) 0x1B0010+((n)*0x100) #define SRCCF(n) 0x1B0014+((n)*0x100) #define SRCSA(n) 0x1B0018+((n)*0x100) #define SRCLA(n) 0x1B001C+((n)*0x100) #define SRCCTLSWR 0x1B0020 ///SRC HERE #define SRCALBA 0x1B002C #define SRCMCTL 0x1B012C #define SRCCERR 0x1B022C #define SRCITB 0x1B032C #define SRCIPM 0x1B082C #define SRCIP(n) 0x1B102C+((n)*0x100) #define SRCENBSTAT 0x1B202C #define SRCENBLO 0x1B212C #define SRCENBHI 0x1B222C #define SRCENBS 0x1B352C #define SRCENB07 0x1B282C #define SRCENBS07 0x1B302C #define SRCDN0Z0 0x1B0030 #define SRCDN0Z1 0x1B0034 #define SRCDN0Z2 0x1B0038 #define SRCDN0Z3 0x1B003C #define SRCDN1Z0 0x1B0040 #define SRCDN1Z1 0x1B0044 #define SRCDN1Z2 0x1B0048 #define SRCDN1Z3 0x1B004C #define SRCDN1Z4 0x1B0050 #define SRCDN1Z5 0x1B0054 #define SRCDN1Z6 0x1B0058 #define SRCDN1Z7 0x1B005C #define SRCUPZ0 0x1B0060 #define SRCUPZ1 0x1B0064 #define SRCUPZ2 0x1B0068 #define SRCUPZ3 0x1B006C #define SRCUPZ4 0x1B0070 #define SRCUPZ5 0x1B0074 #define SRCUPZ6 0x1B0078 #define SRCUPZ7 0x1B007C #define SRCCD0 0x1B0080 #define SRCCD1 0x1B0084 #define SRCCD2 0x1B0088 #define SRCCD3 0x1B008C #define SRCCD4 0x1B0090 #define SRCCD5 0x1B0094 #define SRCCD6 0x1B0098 #define SRCCD7 0x1B009C #define SRCCD8 0x1B00A0 #define SRCCD9 0x1B00A4 #define SRCCDA 0x1B00A8 #define SRCCDB 0x1B00AC #define SRCCDC 0x1B00B0 #define SRCCDD 0x1B00B4 #define SRCCDE 0x1B00B8 #define SRCCDF 0x1B00BC #define SRCCD10 0x1B00C0 #define SRCCD11 0x1B00C4 #define SRCCD12 0x1B00C8 #define SRCCD13 0x1B00CC #define SRCCD14 0x1B00D0 #define SRCCD15 0x1B00D4 #define SRCCD16 0x1B00D8 #define SRCCD17 0x1B00DC #define SRCCD18 0x1B00E0 #define SRCCD19 0x1B00E4 #define SRCCD1A 0x1B00E8 #define SRCCD1B 0x1B00EC #define SRCCD1C 0x1B00F0 #define SRCCD1D 0x1B00F4 #define SRCCD1E 0x1B00F8 #define SRCCD1F 0x1B00FC #define SRCCONTRBLOCK_START 0x1B0100 #define SRCCONTRBLOCK_END 0x1BFFFC #define FILTOP_START 0x1C0000 #define FILTOP_END 0x1C05FC #define FILTIMAP_START 0x1C0800 #define FILTIMAP_END 0x1C0DFC #define FILTZ1_START 0x1C1000 #define FILTZ1_END 0x1C15FC #define FILTZ2_START 0x1C1800 #define FILTZ2_END 0x1C1DFC #define DAOIMAP_START(n) 0x1C5000+(4*(n)) #define DAOIMAP_END 0x1C5124 #define AC97D 0x1C5400 #define AC97A 0x1C5404 #define AC97CTL 0x1C5408 #define I2SCTL 0x1C5420 #define SPOSA 0x1C5440 #define SPOSB 0x1C5444 #define SPOSC 0x1C5448 #define SPOSD 0x1C544C #define SPISA 0x1C5450 #define SPISB 0x1C5454 #define SPISC 0x1C5458 #define SPISD 0x1C545C #define SPFSCTL 0x1C5460 #define SPFS0 0x1C5468 #define SPFS1 0x1C546C #define SPFS2 0x1C5470 #define SPFS3 0x1C5474 #define SPFS4 0x1C5478 #define SPFS5 0x1C547C #define SPOCTL 0x1C5480 #define SPICTL 0x1C5484 #define SPISTS 0x1C5488 #define SPINTP 0x1C548C #define SPINTE 0x1C5490 #define SPUTCTLAB 0x1C5494 #define SPUTCTLCD 0x1C5498 #define SRTSPA 0x1C54C0 #define SRTSPB 0x1C54C4 #define SRTSPC 0x1C54C8 #define SRTSPD 0x1C54CC #define SRTSCTLA 0x1C54D0 #define SRTSCTLB 0x1C54D4 #define SRTSCTLC 0x1C54D8 #define SRTSCTLD 0x1C54DC #define SRTI2S 0x1C54E0 #define SRTICTL 0x1C54F0 #define WC 0x1C6000 #define TIMR 0x1C6004 # define TIMR_IE (1<<15) # define TIMR_IP (1<<14) #define GIP 0x1C6010 # define PLL_INT (1<<10) # define FI_INT (1<<9) # define IT_INT (1<<8) # define PCI_INT (1<<7) # define URT_INT (1<<6) # define GPI_INT (1<<5) # define MIX_INT (1<<4) # define DAI_INT (1<<3) # define TP_INT (1<<2) # define DSP_INT (1<<1) # define SRC_INT (1<<0) #define GIE 0x1C6014 #define DIE 0x1C6018 #define DIC 0x1C601C #define GPIO 0x1C6020 #define GPIOCTL 0x1C6024 #define GPIP 0x1C6028 #define GPIE 0x1C602C #define DSPINT0 0x1C6030 #define DSPEIOC 0x1C6034 //#define MUADAT 0x00700000L /* Midi Uart A DATa */ //#define MUACMD 0x00710000L /* Midi Uart A CoMmanD */ //#define MUASTAT 0x00710000L /* Midi Uart A STATus */ //#define MUBDAT 0x00720000L /* Midi Uart B DATa */ //#define MUBCMD 0x00730000L /* Midi Uart B CoMmanD */ //#define MUBSTAT 0x00730000L /* Midi Uart B STATus */ #define MUADAT 0x1C6040 #define MUACMD 0x1C6044 #define MUASTAT 0x1C6044 #define MUBDAT 0x1C6048 #define MUBCMD 0x1C604C #define MUBSTAT 0x1C604C #define UARTCMA 0x1C6050 #define UARTCMB 0x1C6054 #define UARTIP 0x1C6058 #define UARTIE 0x1C605C #define PLLCTL 0x1C6060 #define PLLDCD 0x1C6064 #define GCTL 0x1C6070 #define ID0 0x1C6080 #define ID1 0x1C6084 #define ID2 0x1C6088 #define ID3 0x1C608C #define SDRCTL 0x1C7000 #define I2SA_L 0x0L #define I2SA_R 0x1L #define I2SB_L 0x8L #define I2SB_R 0x9L #define I2SC_L 0x10L #define I2SC_R 0x11L #define I2SD_L 0x18L #define I2SD_R 0x19L typedef enum { //block 0 FIL_CH_0 = 0, SRC_CH_0 = 0x1, MIXER_SUM_CH_0 = 0xc, //block 1 FIL_CH_1 = 0x10, SRC_CH_1 = 0x11, MIXER_SUM_CH_1 = 0x1c, DAI_CH_AC97L = 0x5e5, DAI_CH_AC97R = 0x7e5, DAI_CH_AC97MIC = 0xde5, //daoi i2s out block DAI_CH_I2SAL = 0x0, DAI_CH_I2SAR = 0x1, DAI_CH_I2SA1L = 0x2, DAI_CH_I2SA1R = 0x3, DAI_CH_I2SA2L = 0x4, DAI_CH_I2SA2R = 0x5, DAI_CH_I2SA3L = 0x6, DAI_CH_I2SA3R = 0x7, DAI_CH_I2SBL = 0x8, DAI_CH_I2SBR = 0x9, DAI_CH_I2SB1L = 0xa, DAI_CH_I2SB1R = 0xb, DAI_CH_I2SB2L = 0xc, DAI_CH_I2SB2R = 0xd, DAI_CH_I2SB3L = 0xe, DAI_CH_I2SB3R = 0xf, DAI_CH_I2SCL = 0x10, DAI_CH_I2SCR = 0x11, DAI_CH_I2SC1L = 0x12, DAI_CH_I2SC1R = 0x13, DAI_CH_I2SC2L = 0x14, DAI_CH_I2SC2R = 0x15, DAI_CH_I2SC3L = 0x16, DAI_CH_I2SC3R = 0x17, DAI_CH_I2SDL = 0x18, DAI_CH_I2SDR = 0x19, DAI_CH_I2SD1L = 0x1a, DAI_CH_I2SD1R = 0x1b, DAI_CH_I2SD2L = 0x1c, DAI_CH_I2SD2R = 0x1d, DAI_CH_I2SD3L = 0x1e, DAI_CH_I2SD3R = 0x1f, //daoi spdif out DAI_CH_SPDIFAL = 0x20, DAI_CH_SPDIFAR = 0x21, DAI_CH_SPDIFA1L = 0x22, DAI_CH_SPDIFA1R = 0x23, DAI_CH_SPDIFA2L = 0x24, DAI_CH_SPDIFA2R = 0x25, DAI_CH_SPDIFA3L = 0x26, DAI_CH_SPDIFA3R = 0x27, DAI_CH_SPDIFBL = 0x28, DAI_CH_SPDIFBR = 0x29, DAI_CH_SPDIFB1L = 0x2a, DAI_CH_SPDIFB1R = 0x2b, DAI_CH_SPDIFB2L = 0x2c, DAI_CH_SPDIFB2R = 0x2d, DAI_CH_SPDIFB3L = 0x2e, DAI_CH_SPDIFB3R = 0x2f, DAI_CH_SPDIFCL = 0x30, DAI_CH_SPDIFCR = 0x31, DAI_CH_SPDIFC1L = 0x32, DAI_CH_SPDIFC1R = 0x33, DAI_CH_SPDIFC2L = 0x34, DAI_CH_SPDIFC2R = 0x35, DAI_CH_SPDIFC3L = 0x36, DAI_CH_SPDIFC3R = 0x37, DAI_CH_SPDIFDL = 0x38, DAI_CH_SPDIFDR = 0x39, DAI_CH_SPDIFD1L = 0x3a, DAI_CH_SPDIFD1R = 0x3b, DAI_CH_SPDIFD2L = 0x3c, DAI_CH_SPDIFD2R = 0x3d, DAI_CH_SPDIFD3L = 0x3e, DAI_CH_SPDIFD3R = 0x3f, //daio i2s block(in) DAI_CH_I2SINA1L = 0x035, DAI_CH_I2SINA1R = 0x03D, DAI_CH_I2SINB1L = 0x0B5, DAI_CH_I2SINB1R = 0x0BD, DAI_CH_I2SINC1L = 0x135, DAI_CH_I2SINC1R = 0x13D, DAI_CH_I2SIND1L = 0x1B5, DAI_CH_I2SIND1R = 0x1BD, DAI_CH_I2SINA2L = 0x235, DAI_CH_I2SINA2R = 0x23D, DAI_CH_I2SINB2L = 0x2B5, DAI_CH_I2SINB2R = 0x2BD, DAI_CH_I2SINC2L = 0x335, DAI_CH_I2SINC2R = 0x33D, DAI_CH_I2SIND2L = 0x3B5, DAI_CH_I2SIND2R = 0x3BD, DAI_CH_I2SINA3L = 0x435, DAI_CH_I2SINA3R = 0x43D, DAI_CH_I2SINB3L = 0x4B5, DAI_CH_I2SINB3R = 0x4BD, DAI_CH_I2SINC3L = 0x535, DAI_CH_I2SINC3R = 0x53D, DAI_CH_I2SIND3L = 0x5B5, DAI_CH_I2SIND3R = 0x5BD, DAI_CH_I2SINA4L = 0x635, DAI_CH_I2SINA4R = 0x63D, DAI_CH_I2SINB4L = 0x6B5, DAI_CH_I2SINB4R = 0x6BD, DAI_CH_I2SINC4L = 0x735, DAI_CH_I2SINC4R = 0x73D, DAI_CH_I2SIND4L = 0x7B5, DAI_CH_I2SIND4R = 0x7BD, DAI_CH_I2SINA5L = 0x835, DAI_CH_I2SINA5R = 0x83D, DAI_CH_I2SINB5L = 0x8B5, DAI_CH_I2SINB5R = 0x8BD, DAI_CH_I2SINC5L = 0x935, DAI_CH_I2SINC5R = 0x93D, DAI_CH_I2SIND5L = 0x9B5, DAI_CH_I2SIND5R = 0x9BD, DAI_CH_I2SINA6L = 0xA35, DAI_CH_I2SINA6R = 0xA3D, DAI_CH_I2SINB6L = 0xAB5, DAI_CH_I2SINB6R = 0xABD, DAI_CH_I2SINC6L = 0xB35, DAI_CH_I2SINC6R = 0xB3D, DAI_CH_I2SIND6L = 0xBB5, DAI_CH_I2SIND6R = 0xBBD, DAI_CH_I2SINA7L = 0xC35, DAI_CH_I2SINA7R = 0xC3D, DAI_CH_I2SINB7L = 0xCB5, DAI_CH_I2SINB7R = 0xCBD, DAI_CH_I2SINC7L = 0xD35, DAI_CH_I2SINC7R = 0xD3D, DAI_CH_I2SIND7L = 0xDB5, DAI_CH_I2SIND7R = 0xDBD, DAI_CH_I2SINA8L = 0xE35, DAI_CH_I2SINA8R = 0xE3D, DAI_CH_I2SINB8L = 0xEB5, DAI_CH_I2SINB8R = 0xEBD, DAI_CH_I2SINC8L = 0xF35, DAI_CH_I2SINC8R = 0xF3D, DAI_CH_I2SIND8L = 0xFB5, DAI_CH_I2SIND8R = 0xFBD, //daio cd-spidf block DAI_CH_CDSPDIFINA1L = 0x015, DAI_CH_CDSPDIFINA1R = 0x01D, DAI_CH_CDSPDIFINB1L = 0x095, DAI_CH_CDSPDIFINB1R = 0x09D, DAI_CH_CDSPDIFINC1L = 0x115, DAI_CH_CDSPDIFINC1R = 0x11D, DAI_CH_CDSPDIFIND1L = 0x195, DAI_CH_CDSPDIFIND1R = 0x19D, DAI_CH_CDSPDIFINA2L = 0x215, DAI_CH_CDSPDIFINA2R = 0x21D, DAI_CH_CDSPDIFINB2L = 0x295, DAI_CH_CDSPDIFINB2R = 0x29D, DAI_CH_CDSPDIFINC2L = 0x315, DAI_CH_CDSPDIFINC2R = 0x31D, DAI_CH_CDSPDIFIND2L = 0x395, DAI_CH_CDSPDIFIND2R = 0x39D, DAI_CH_CDSPDIFINA3L = 0x415, DAI_CH_CDSPDIFINA3R = 0x41D, DAI_CH_CDSPDIFINB3L = 0x495, DAI_CH_CDSPDIFINB3R = 0x49D, DAI_CH_CDSPDIFINC3L = 0x515, DAI_CH_CDSPDIFINC3R = 0x51D, DAI_CH_CDSPDIFIND3L = 0x595, DAI_CH_CDSPDIFIND3R = 0x59D, DAI_CH_CDSPDIFINA4L = 0x615, DAI_CH_CDSPDIFINA4R = 0x61D, DAI_CH_CDSPDIFINB4L = 0x695, DAI_CH_CDSPDIFINB4R = 0x69D, DAI_CH_CDSPDIFINC4L = 0x715, DAI_CH_CDSPDIFINC4R = 0x71D, DAI_CH_CDSPDIFIND4L = 0x795, DAI_CH_CDSPDIFIND4R = 0x79D, DAI_CH_CDSPDIFINA5L = 0x815, DAI_CH_CDSPDIFINA5R = 0x81D, DAI_CH_CDSPDIFINB5L = 0x895, DAI_CH_CDSPDIFINB5R = 0x89D, DAI_CH_CDSPDIFINC5L = 0x915, DAI_CH_CDSPDIFINC5R = 0x91D, DAI_CH_CDSPDIFIND5L = 0x995, DAI_CH_CDSPDIFIND5R = 0x99D, DAI_CH_CDSPDIFINA6L = 0xA15, DAI_CH_CDSPDIFINA6R = 0xA1D, DAI_CH_CDSPDIFINB6L = 0xA95, DAI_CH_CDSPDIFINB6R = 0xA9D, DAI_CH_CDSPDIFINC6L = 0xB15, DAI_CH_CDSPDIFINC6R = 0xB1D, DAI_CH_CDSPDIFIND6L = 0xB95, DAI_CH_CDSPDIFIND6R = 0xB9D, DAI_CH_CDSPDIFINA7L = 0xC15, DAI_CH_CDSPDIFINA7R = 0xC1D, DAI_CH_CDSPDIFINB7L = 0xC95, DAI_CH_CDSPDIFINB7R = 0xC9D, DAI_CH_CDSPDIFINC7L = 0xD15, DAI_CH_CDSPDIFINC7R = 0xD1D, DAI_CH_CDSPDIFIND7L = 0xD95, DAI_CH_CDSPDIFIND7R = 0xD9D, DAI_CH_CDSPDIFINA8L = 0xE15, DAI_CH_CDSPDIFINA8R = 0xE1D, DAI_CH_CDSPDIFINB8L = 0xE95, DAI_CH_CDSPDIFINB8R = 0xE9D, DAI_CH_CDSPDIFINC8L = 0xF15, DAI_CH_CDSPDIFINC8R = 0xF1D, DAI_CH_CDSPDIFIND8L = 0xF95, DAI_CH_CDSPDIFIND8R = 0xF9D } ARCHANNEL; #endif