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
13enum 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