]> git.proxmox.com Git - mirror_ubuntu-artful-kernel.git/blame - sound/hda/local.h
UBUNTU: Ubuntu-4.13.0-45.50
[mirror_ubuntu-artful-kernel.git] / sound / hda / local.h
CommitLineData
7639a06c
TI
1/*
2 * Local helper macros and functions for HD-audio core drivers
3 */
4
5#ifndef __HDAC_LOCAL_H
6#define __HDAC_LOCAL_H
7
8#define get_wcaps(codec, nid) \
9 snd_hdac_read_parm(codec, nid, AC_PAR_AUDIO_WIDGET_CAP)
10
11/* get the widget type from widget capability bits */
12static inline int get_wcaps_type(unsigned int wcaps)
13{
14 if (!wcaps)
15 return -1; /* invalid type */
16 return (wcaps & AC_WCAP_TYPE) >> AC_WCAP_TYPE_SHIFT;
17}
18
9fc7c862
SP
19static inline unsigned int get_wcaps_channels(u32 wcaps)
20{
21 unsigned int chans;
22
23 chans = (wcaps & AC_WCAP_CHAN_CNT_EXT) >> 13;
24 chans = (chans + 1) * 2;
25
26 return chans;
27}
28
3256be65
TI
29extern const struct attribute_group *hdac_dev_attr_groups[];
30int hda_widget_sysfs_init(struct hdac_device *codec);
31void hda_widget_sysfs_exit(struct hdac_device *codec);
32
7639a06c 33#endif /* __HDAC_LOCAL_H */