1 /* 2 * SiS 7018, Trident 4D Wave DX/NX, Acer Lab M5451 Sound Driver. 3 * Copyright (c) 2002, 2008-2011 S.Zharski <imker@gmx.li> 4 * Distributed under the terms of the MIT license. 5 * 6 * Copyright for ali5451 support: 7 * (c) 2009, Krzysztof Ćwiertnia (krzysiek.bmkx_gmail_com). 8 */ 9 #ifndef _SiS7018_REGISTERS_H_ 10 #define _SiS7018_REGISTERS_H_ 11 12 13 enum Registers { 14 // shared registers 15 RegCodecWrite = 0x40, 16 RegCodecRead = 0x44, 17 RegCodecStatus = 0x48, 18 CodecStatusSBCtrl = 0x40, 19 CodecStatusActive = 0x20, 20 CodecStatusReady = 0x10, 21 CodecStatusADCON = 0x08, 22 CodecStatusDACON = 0x02, 23 CodecStatusReset = 0x01, 24 CodecTimeout = 0xffff, 25 26 RegRecChannel = 0x70, 27 RegStartA = 0x80, 28 RegStopA = 0x84, 29 RegCurSPFA = 0x90, 30 RegAddrINTA = 0x98, 31 RegChIndex = 0xa0, 32 ChIndexMask = 0x0000003f, 33 ChIndexEndEna = 0x00001000, 34 ChIndexMidEna = 0x00002000, 35 RegEnaINTA = 0xa4, 36 RegMiscINT = 0xb0, 37 RegStartB = 0xb4, 38 RegStopB = 0xb8, 39 RegCurSPFB = 0xbc, 40 RegAddrINTB = 0xd8, 41 RegEnaINTB = 0xdc, 42 RegCSOAlphaFMS = 0xe0, 43 RegLBA_PPTR = 0xe4, 44 RegDeltaESO = 0xe8, 45 RegRVolCVolFMC = 0xec, 46 RegGVSelVolCtrl = 0xf0, 47 RegEBuf1 = 0xf4, 48 RegEBuf2 = 0xf8, 49 50 51 // SiS7018 specific registers 52 RegSiSCodecWrite = RegCodecWrite, 53 RegSiSCodecRead = RegCodecRead, 54 RegSiSCodecStatus = RegCodecStatus, 55 SiSCodecResetOff = 0x000f0000, 56 RegSiSCodecGPIO = 0x4c, 57 ChIndexSiSEnaB = 0x00010000, 58 59 // ALi5451 registers 60 RegALiVolumeA = 0xa8, 61 RegALiMPUR2 = 0x22, 62 RegALiSTimer = 0xc8, 63 RegALiDigiMixer = 0xd4, 64 ALiDigiMixerPCMIn = 0x80000000, 65 66 // Trident NX specific registers 67 RegNXCodecStatus = 0x40, 68 NXCodecStatusReady2 = 0x40, 69 NXCodecStatusADC2ON = 0x20, 70 NXCodecStatusDAC2ON = 0x10, 71 NXCodecStatusReady1 = 0x08, 72 NXCodecStatusADC1ON = 0x04, 73 NXCodecStatusDAC1ON = 0x02, 74 NXCodecStatusReset = 0x01, 75 RegNXCodecWrite = 0x44, 76 RegNXCodecRead = 0x48, 77 RegNXCodecRead2 = 0x4c 78 }; 79 80 81 #endif // _SIS7018_REGISTERS_H_ 82 83