Google
 

Open Sound System
The Hitchhiker's Guide to OSS 4.1 Internals

Do you have problems with sound/audio application development? Don't panic! Click here for help!

oss_sbxfi/20k1reg.h

Source file oss-current/kernel/drv/oss_sbxfi/20k1reg.h

Description




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

Copyright (C) 4Front Technologies, 2007. All rights reserved.

Back to index OSS web site


Copyright (C) 4Front Technologies, 2007. All rights reserved.
Back to index OSS web site