1#if !defined(_HDA_VERBS_H_)
4#define AC_NODE_ROOT 0x00
17#define AC_VERB_GET_STREAM_FORMAT 0x0a00
18#define AC_VERB_GET_AMP_GAIN_MUTE 0x0b00
19#define AC_VERB_GET_PROC_COEF 0x0c00
20#define AC_VERB_GET_COEF_INDEX 0x0d00
21#define AC_VERB_PARAMETERS 0x0f00
22#define AC_VERB_GET_CONNECT_SEL 0x0f01
23#define AC_VERB_GET_CONNECT_LIST 0x0f02
24#define AC_VERB_GET_PROC_STATE 0x0f03
25#define AC_VERB_GET_SDI_SELECT 0x0f04
26#define AC_VERB_GET_POWER_STATE 0x0f05
27#define AC_VERB_GET_CONV 0x0f06
28#define AC_VERB_GET_PIN_WIDGET_CONTROL 0x0f07
29#define AC_VERB_GET_UNSOLICITED_RESPONSE 0x0f08
30#define AC_VERB_GET_PIN_SENSE 0x0f09
31#define AC_VERB_GET_BEEP_CONTROL 0x0f0a
32#define AC_VERB_GET_EAPD_BTLENABLE 0x0f0c
33#define AC_VERB_GET_DIGI_CONVERT_1 0x0f0d
34#define AC_VERB_GET_DIGI_CONVERT_2 0x0f0e
35#define AC_VERB_GET_VOLUME_KNOB_CONTROL 0x0f0f
37#define AC_VERB_GET_GPIO_DATA 0x0f15
38#define AC_VERB_GET_GPIO_MASK 0x0f16
39#define AC_VERB_GET_GPIO_DIRECTION 0x0f17
40#define AC_VERB_GET_GPIO_WAKE_MASK 0x0f18
41#define AC_VERB_GET_GPIO_UNSOLICITED_RSP_MASK 0x0f19
42#define AC_VERB_GET_GPIO_STICKY_MASK 0x0f1a
43#define AC_VERB_GET_CONFIG_DEFAULT 0x0f1c
45#define AC_VERB_GET_SUBSYSTEM_ID 0x0f20
46#define AC_VERB_GET_STRIPE_CONTROL 0x0f24
47#define AC_VERB_GET_CVT_CHAN_COUNT 0x0f2d
48#define AC_VERB_GET_HDMI_DIP_SIZE 0x0f2e
49#define AC_VERB_GET_HDMI_ELDD 0x0f2f
50#define AC_VERB_GET_HDMI_DIP_INDEX 0x0f30
51#define AC_VERB_GET_HDMI_DIP_DATA 0x0f31
52#define AC_VERB_GET_HDMI_DIP_XMIT 0x0f32
53#define AC_VERB_GET_HDMI_CP_CTRL 0x0f33
54#define AC_VERB_GET_HDMI_CHAN_SLOT 0x0f34
55#define AC_VERB_GET_DEVICE_SEL 0xf35
56#define AC_VERB_GET_DEVICE_LIST 0xf36
61#define AC_VERB_SET_STREAM_FORMAT 0x200
62#define AC_VERB_SET_AMP_GAIN_MUTE 0x300
63#define AC_VERB_SET_PROC_COEF 0x400
64#define AC_VERB_SET_COEF_INDEX 0x500
65#define AC_VERB_SET_CONNECT_SEL 0x701
66#define AC_VERB_SET_PROC_STATE 0x703
67#define AC_VERB_SET_SDI_SELECT 0x704
68#define AC_VERB_SET_POWER_STATE 0x705
69#define AC_VERB_SET_CHANNEL_STREAMID 0x706
70#define AC_VERB_SET_PIN_WIDGET_CONTROL 0x707
71#define AC_VERB_SET_UNSOLICITED_ENABLE 0x708
72#define AC_VERB_SET_PIN_SENSE 0x709
73#define AC_VERB_SET_BEEP_CONTROL 0x70a
74#define AC_VERB_SET_EAPD_BTLENABLE 0x70c
75#define AC_VERB_SET_DIGI_CONVERT_1 0x70d
76#define AC_VERB_SET_DIGI_CONVERT_2 0x70e
77#define AC_VERB_SET_DIGI_CONVERT_3 0x73e
78#define AC_VERB_SET_VOLUME_KNOB_CONTROL 0x70f
79#define AC_VERB_SET_GPIO_DATA 0x715
80#define AC_VERB_SET_GPIO_MASK 0x716
81#define AC_VERB_SET_GPIO_DIRECTION 0x717
82#define AC_VERB_SET_GPIO_WAKE_MASK 0x718
83#define AC_VERB_SET_GPIO_UNSOLICITED_RSP_MASK 0x719
84#define AC_VERB_SET_GPIO_STICKY_MASK 0x71a
85#define AC_VERB_SET_CONFIG_DEFAULT_BYTES_0 0x71c
86#define AC_VERB_SET_CONFIG_DEFAULT_BYTES_1 0x71d
87#define AC_VERB_SET_CONFIG_DEFAULT_BYTES_2 0x71e
88#define AC_VERB_SET_CONFIG_DEFAULT_BYTES_3 0x71f
89#define AC_VERB_SET_EAPD 0x788
90#define AC_VERB_SET_CODEC_RESET 0x7ff
91#define AC_VERB_SET_STRIPE_CONTROL 0x724
92#define AC_VERB_SET_CVT_CHAN_COUNT 0x72d
93#define AC_VERB_SET_HDMI_DIP_INDEX 0x730
94#define AC_VERB_SET_HDMI_DIP_DATA 0x731
95#define AC_VERB_SET_HDMI_DIP_XMIT 0x732
96#define AC_VERB_SET_HDMI_CP_CTRL 0x733
97#define AC_VERB_SET_HDMI_CHAN_SLOT 0x734
98#define AC_VERB_SET_DEVICE_SEL 0x735
103#define AC_PAR_VENDOR_ID 0x00
104#define AC_PAR_SUBSYSTEM_ID 0x01
105#define AC_PAR_REV_ID 0x02
106#define AC_PAR_NODE_COUNT 0x04
107#define AC_PAR_FUNCTION_TYPE 0x05
108#define AC_PAR_AUDIO_FG_CAP 0x08
109#define AC_PAR_AUDIO_WIDGET_CAP 0x09
110#define AC_PAR_PCM 0x0a
111#define AC_PAR_STREAM 0x0b
112#define AC_PAR_PIN_CAP 0x0c
113#define AC_PAR_AMP_IN_CAP 0x0d
114#define AC_PAR_CONNLIST_LEN 0x0e
115#define AC_PAR_POWER_STATE 0x0f
116#define AC_PAR_PROC_CAP 0x10
117#define AC_PAR_GPIO_CAP 0x11
118#define AC_PAR_AMP_OUT_CAP 0x12
119#define AC_PAR_VOL_KNB_CAP 0x13
120#define AC_PAR_DEVLIST_LEN 0x15
121#define AC_PAR_HDMI_LPCM_CAP 0x20
128#define AC_FGT_TYPE (0xff<<0)
129#define AC_FGT_TYPE_SHIFT 0
130#define AC_FGT_UNSOL_CAP (1<<8)
133#define AC_AFG_OUT_DELAY (0xf<<0)
134#define AC_AFG_IN_DELAY (0xf<<8)
135#define AC_AFG_BEEP_GEN (1<<16)
138#define AC_WCAP_STEREO (1<<0)
139#define AC_WCAP_IN_AMP (1<<1)
140#define AC_WCAP_OUT_AMP (1<<2)
141#define AC_WCAP_AMP_OVRD (1<<3)
142#define AC_WCAP_FORMAT_OVRD (1<<4)
143#define AC_WCAP_STRIPE (1<<5)
144#define AC_WCAP_PROC_WID (1<<6)
145#define AC_WCAP_UNSOL_CAP (1<<7)
146#define AC_WCAP_CONN_LIST (1<<8)
147#define AC_WCAP_DIGITAL (1<<9)
148#define AC_WCAP_POWER (1<<10)
149#define AC_WCAP_LR_SWAP (1<<11)
150#define AC_WCAP_CP_CAPS (1<<12)
151#define AC_WCAP_CHAN_CNT_EXT (7<<13)
152#define AC_WCAP_DELAY (0xf<<16)
153#define AC_WCAP_DELAY_SHIFT 16
154#define AC_WCAP_TYPE (0xf<<20)
155#define AC_WCAP_TYPE_SHIFT 20
158#define AC_SUPPCM_RATES (0xfff << 0)
159#define AC_SUPPCM_BITS_8 (1<<16)
160#define AC_SUPPCM_BITS_16 (1<<17)
161#define AC_SUPPCM_BITS_20 (1<<18)
162#define AC_SUPPCM_BITS_24 (1<<19)
163#define AC_SUPPCM_BITS_32 (1<<20)
166#define AC_SUPFMT_PCM (1<<0)
167#define AC_SUPFMT_FLOAT32 (1<<1)
168#define AC_SUPFMT_AC3 (1<<2)
171#define AC_GPIO_IO_COUNT (0xff<<0)
172#define AC_GPIO_O_COUNT (0xff<<8)
173#define AC_GPIO_O_COUNT_SHIFT 8
174#define AC_GPIO_I_COUNT (0xff<<16)
175#define AC_GPIO_I_COUNT_SHIFT 16
176#define AC_GPIO_UNSOLICITED (1<<30)
177#define AC_GPIO_WAKE (1<<31)
180#define AC_CONV_CHANNEL (0xf<<0)
181#define AC_CONV_STREAM (0xf<<4)
182#define AC_CONV_STREAM_SHIFT 4
185#define AC_SDI_SELECT (0xf<<0)
188#define AC_FMT_CHAN_SHIFT 0
189#define AC_FMT_CHAN_MASK (0x0f << 0)
190#define AC_FMT_BITS_SHIFT 4
191#define AC_FMT_BITS_MASK (7 << 4)
192#define AC_FMT_BITS_8 (0 << 4)
193#define AC_FMT_BITS_16 (1 << 4)
194#define AC_FMT_BITS_20 (2 << 4)
195#define AC_FMT_BITS_24 (3 << 4)
196#define AC_FMT_BITS_32 (4 << 4)
197#define AC_FMT_DIV_SHIFT 8
198#define AC_FMT_DIV_MASK (7 << 8)
199#define AC_FMT_MULT_SHIFT 11
200#define AC_FMT_MULT_MASK (7 << 11)
201#define AC_FMT_BASE_SHIFT 14
202#define AC_FMT_BASE_48K (0 << 14)
203#define AC_FMT_BASE_44K (1 << 14)
204#define AC_FMT_TYPE_SHIFT 15
205#define AC_FMT_TYPE_PCM (0 << 15)
206#define AC_FMT_TYPE_NON_PCM (1 << 15)
209#define AC_UNSOL_TAG (0x3f<<0)
210#define AC_UNSOL_ENABLED (1<<7)
211#define AC_USRSP_EN AC_UNSOL_ENABLED
214#define AC_UNSOL_RES_TAG (0x3f<<26)
215#define AC_UNSOL_RES_TAG_SHIFT 26
216#define AC_UNSOL_RES_SUBTAG (0x1f<<21)
217#define AC_UNSOL_RES_SUBTAG_SHIFT 21
218#define AC_UNSOL_RES_DE (0x3f<<15)
221#define AC_UNSOL_RES_DE_SHIFT 15
222#define AC_UNSOL_RES_IA (1<<2)
223#define AC_UNSOL_RES_ELDV (1<<1)
224#define AC_UNSOL_RES_PD (1<<0)
225#define AC_UNSOL_RES_CP_STATE (1<<1)
226#define AC_UNSOL_RES_CP_READY (1<<0)
229#define AC_PINCAP_IMP_SENSE (1<<0)
230#define AC_PINCAP_TRIG_REQ (1<<1)
231#define AC_PINCAP_PRES_DETECT (1<<2)
232#define AC_PINCAP_HP_DRV (1<<3)
233#define AC_PINCAP_OUT (1<<4)
234#define AC_PINCAP_IN (1<<5)
235#define AC_PINCAP_BALANCE (1<<6)
239#define AC_PINCAP_LR_SWAP (1<<7)
243#define AC_PINCAP_HDMI (1<<7)
244#define AC_PINCAP_DP (1<<24)
247#define AC_PINCAP_VREF (0x37<<8)
248#define AC_PINCAP_VREF_SHIFT 8
249#define AC_PINCAP_EAPD (1<<16)
250#define AC_PINCAP_HBR (1<<27)
252#define AC_PINCAP_VREF_HIZ (1<<0)
253#define AC_PINCAP_VREF_50 (1<<1)
254#define AC_PINCAP_VREF_GRD (1<<2)
255#define AC_PINCAP_VREF_80 (1<<4)
256#define AC_PINCAP_VREF_100 (1<<5)
259#define AC_AMPCAP_OFFSET (0x7f<<0)
260#define AC_AMPCAP_OFFSET_SHIFT 0
261#define AC_AMPCAP_NUM_STEPS (0x7f<<8)
262#define AC_AMPCAP_NUM_STEPS_SHIFT 8
263#define AC_AMPCAP_STEP_SIZE (0x7f<<16)
266#define AC_AMPCAP_STEP_SIZE_SHIFT 16
267#define AC_AMPCAP_MUTE (1<<31)
268#define AC_AMPCAP_MUTE_SHIFT 31
271#define AC_AMPCAP_MIN_MUTE (1 << 30)
274#define AC_CLIST_LENGTH (0x7f<<0)
275#define AC_CLIST_LONG (1<<7)
278#define AC_PWRST_D0SUP (1<<0)
279#define AC_PWRST_D1SUP (1<<1)
280#define AC_PWRST_D2SUP (1<<2)
281#define AC_PWRST_D3SUP (1<<3)
282#define AC_PWRST_D3COLDSUP (1<<4)
283#define AC_PWRST_S3D3COLDSUP (1<<29)
284#define AC_PWRST_CLKSTOP (1<<30)
285#define AC_PWRST_EPSS (1U<<31)
288#define AC_PWRST_SETTING (0xf<<0)
289#define AC_PWRST_ACTUAL (0xf<<4)
290#define AC_PWRST_ACTUAL_SHIFT 4
291#define AC_PWRST_D0 0x00
292#define AC_PWRST_D1 0x01
293#define AC_PWRST_D2 0x02
294#define AC_PWRST_D3 0x03
295#define AC_PWRST_ERROR (1<<8)
296#define AC_PWRST_CLK_STOP_OK (1<<9)
297#define AC_PWRST_SETTING_RESET (1<<10)
300#define AC_PCAP_BENIGN (1<<0)
301#define AC_PCAP_NUM_COEF (0xff<<8)
302#define AC_PCAP_NUM_COEF_SHIFT 8
305#define AC_KNBCAP_NUM_STEPS (0x7f<<0)
306#define AC_KNBCAP_DELTA (1<<7)
309#define AC_LPCMCAP_48K_CP_CHNS (0x0f<<0)
310#define AC_LPCMCAP_48K_NO_CHNS (0x0f<<4)
311#define AC_LPCMCAP_48K_20BIT (1<<8)
312#define AC_LPCMCAP_48K_24BIT (1<<9)
313#define AC_LPCMCAP_96K_CP_CHNS (0x0f<<10)
314#define AC_LPCMCAP_96K_NO_CHNS (0x0f<<14)
315#define AC_LPCMCAP_96K_20BIT (1<<18)
316#define AC_LPCMCAP_96K_24BIT (1<<19)
317#define AC_LPCMCAP_192K_CP_CHNS (0x0f<<20)
318#define AC_LPCMCAP_192K_NO_CHNS (0x0f<<24)
319#define AC_LPCMCAP_192K_20BIT (1<<28)
320#define AC_LPCMCAP_192K_24BIT (1<<29)
321#define AC_LPCMCAP_44K (1<<30)
322#define AC_LPCMCAP_44K_MS (1<<31)
325#define AC_DEV_LIST_LEN_MASK 0x3f
326#define AC_MAX_DEV_LIST_LEN 64
333#define AC_AMP_MUTE (1<<7)
334#define AC_AMP_GAIN (0x7f)
335#define AC_AMP_GET_INDEX (0xf<<0)
337#define AC_AMP_GET_LEFT (1<<13)
338#define AC_AMP_GET_RIGHT (0<<13)
339#define AC_AMP_GET_OUTPUT (1<<15)
340#define AC_AMP_GET_INPUT (0<<15)
342#define AC_AMP_SET_INDEX (0xf<<8)
343#define AC_AMP_SET_INDEX_SHIFT 8
344#define AC_AMP_SET_RIGHT (1<<12)
345#define AC_AMP_SET_LEFT (1<<13)
346#define AC_AMP_SET_INPUT (1<<14)
347#define AC_AMP_SET_OUTPUT (1<<15)
350#define AC_DIG1_ENABLE (1<<0)
351#define AC_DIG1_V (1<<1)
352#define AC_DIG1_VCFG (1<<2)
353#define AC_DIG1_EMPHASIS (1<<3)
354#define AC_DIG1_COPYRIGHT (1<<4)
355#define AC_DIG1_NONAUDIO (1<<5)
356#define AC_DIG1_PROFESSIONAL (1<<6)
357#define AC_DIG1_LEVEL (1<<7)
360#define AC_DIG2_CC (0x7f<<0)
363#define AC_DIG3_ICT (0xf<<0)
364#define AC_DIG3_KAE (1<<7)
367#define AC_PINCTL_EPT (0x3<<0)
368#define AC_PINCTL_EPT_NATIVE 0
369#define AC_PINCTL_EPT_HBR 3
370#define AC_PINCTL_VREFEN (0x7<<0)
371#define AC_PINCTL_VREF_HIZ 0
372#define AC_PINCTL_VREF_50 1
373#define AC_PINCTL_VREF_GRD 2
374#define AC_PINCTL_VREF_80 4
375#define AC_PINCTL_VREF_100 5
376#define AC_PINCTL_IN_EN (1<<5)
377#define AC_PINCTL_OUT_EN (1<<6)
378#define AC_PINCTL_HP_EN (1<<7)
381#define AC_PINSENSE_IMPEDANCE_MASK (0x7fffffff)
382#define AC_PINSENSE_PRESENCE (1<<31)
383#define AC_PINSENSE_ELDV (1<<30)
386#define AC_EAPDBTL_BALANCED (1<<0)
387#define AC_EAPDBTL_EAPD (1<<1)
388#define AC_EAPDBTL_LR_SWAP (1<<2)
391#define AC_ELDD_ELD_VALID (1<<31)
392#define AC_ELDD_ELD_DATA 0xff
395#define AC_DIPSIZE_ELD_BUF (1<<3)
396#define AC_DIPSIZE_PACK_IDX (0x07<<0)
399#define AC_DIPIDX_PACK_IDX (0x07<<5)
400#define AC_DIPIDX_BYTE_IDX (0x1f<<0)
403#define AC_DIPXMIT_MASK (0x3<<6)
404#define AC_DIPXMIT_DISABLE (0x0<<6)
405#define AC_DIPXMIT_ONCE (0x2<<6)
406#define AC_DIPXMIT_BEST (0x3<<6)
409#define AC_CPCTRL_CES (1<<9)
410#define AC_CPCTRL_READY (1<<8)
411#define AC_CPCTRL_SUBTAG (0x1f<<3)
412#define AC_CPCTRL_STATE (3<<0)
415#define AC_CVTMAP_HDMI_SLOT (0xf<<0)
416#define AC_CVTMAP_CHAN (0xf<<4)
419#define AC_DEFCFG_SEQUENCE (0xf<<0)
420#define AC_DEFCFG_DEF_ASSOC (0xf<<4)
421#define AC_DEFCFG_ASSOC_SHIFT 4
422#define AC_DEFCFG_MISC (0xf<<8)
423#define AC_DEFCFG_MISC_SHIFT 8
424#define AC_DEFCFG_MISC_NO_PRESENCE (1<<0)
425#define AC_DEFCFG_COLOR (0xf<<12)
426#define AC_DEFCFG_COLOR_SHIFT 12
427#define AC_DEFCFG_CONN_TYPE (0xf<<16)
428#define AC_DEFCFG_CONN_TYPE_SHIFT 16
429#define AC_DEFCFG_DEVICE (0xf<<20)
430#define AC_DEFCFG_DEVICE_SHIFT 20
431#define AC_DEFCFG_LOCATION (0x3f<<24)
432#define AC_DEFCFG_LOCATION_SHIFT 24
433#define AC_DEFCFG_PORT_CONN (0x3<<30)
434#define AC_DEFCFG_PORT_CONN_SHIFT 30
437#define AC_DE_PD (1<<0)
438#define AC_DE_ELDV (1<<1)
439#define AC_DE_IA (1<<2)
533#define HDA_MAX_CODEC_ADDRESS 0x0f
@ AC_JACK_MODEM_HAND_SIDE
@ AC_JACK_MODEM_LINE_SIDE
@ AC_JACK_CONN_OTHER_DIGITAL
@ AC_JACK_CONN_OTHER_ANALOG