FreeBSD kernel sound device code
|
#include <dev/sound/pcm/sound.h>
#include <sys/ctype.h>
#include <sys/taskqueue.h>
#include <dev/sound/pci/hda/hdac.h>
#include <dev/sound/pci/hda/hdaa.h>
#include <dev/sound/pci/hda/hda_reg.h>
#include "mixer_if.h"
Go to the source code of this file.
Data Structures | |
struct | matrix |
Macros | |
#define | hdaa_lock(devinfo) snd_mtxlock((devinfo)->lock) |
#define | hdaa_unlock(devinfo) snd_mtxunlock((devinfo)->lock) |
#define | hdaa_lockassert(devinfo) snd_mtxassert((devinfo)->lock) |
#define | HDA_PARSE_MAXDEPTH 10 |
#define | HDA_RATE_TAB_LEN (sizeof(hda_rate_tab) / sizeof(hda_rate_tab[0])) |
#define | CONN_RMASK(e) (1 << ((32 / (e)) - 1)) |
#define | CONN_NMASK(e) (CONN_RMASK(e) - 1) |
#define | CONN_RESVAL(r, e, n) ((r) >> ((32 / (e)) * (n))) |
#define | CONN_RANGE(r, e, n) (CONN_RESVAL(r, e, n) & CONN_RMASK(e)) |
#define | CONN_CNID(r, e, n) (CONN_RESVAL(r, e, n) & CONN_NMASK(e)) |
Functions | |
SND_DECLARE_FILE ("$FreeBSD$") | |
MALLOC_DEFINE (M_HDAA, "hdaa", "HDA Audio") | |
static int | hdaa_pcmchannel_setup (struct hdaa_chan *) |
static void | hdaa_widget_connection_select (struct hdaa_widget *, uint8_t) |
static void | hdaa_audio_ctl_amp_set (struct hdaa_audio_ctl *, uint32_t, int, int) |
static struct hdaa_audio_ctl * | hdaa_audio_ctl_amp_get (struct hdaa_devinfo *, nid_t, int, int, int) |
static void | hdaa_audio_ctl_amp_set_internal (struct hdaa_devinfo *, nid_t, int, int, int, int, int, int) |
static void | hdaa_dump_pin_config (struct hdaa_widget *w, uint32_t conf) |
static char * | hdaa_audio_ctl_ossmixer_mask2allname (uint32_t mask, char *buf, size_t len) |
static struct hdaa_audio_ctl * | hdaa_audio_ctl_each (struct hdaa_devinfo *devinfo, int *index) |
static void | hdaa_channels_handler (struct hdaa_audio_as *as) |
static void | hdaa_hpredir_handler (struct hdaa_widget *w) |
static void | hdaa_autorecsrc_handler (struct hdaa_audio_as *as, struct hdaa_widget *w) |
static void | hdaa_presence_handler (struct hdaa_widget *w) |
static void | hdaa_jack_poll_callback (void *arg) |
static void | hdaa_eld_dump (struct hdaa_widget *w) |
static void | hdaa_eld_handler (struct hdaa_widget *w) |
static void | hdaa_sense_init (struct hdaa_devinfo *devinfo) |
static void | hdaa_sense_deinit (struct hdaa_devinfo *devinfo) |
uint32_t | hdaa_widget_pin_patch (uint32_t config, const char *str) |
uint32_t | hdaa_gpio_patch (uint32_t gpio, const char *str) |
static void | hdaa_local_patch_pin (struct hdaa_widget *w) |
static void | hdaa_dump_audio_formats_sb (struct sbuf *sb, uint32_t fcap, uint32_t pcmcap) |
static void | hdaa_dump_pin_sb (struct sbuf *sb, struct hdaa_widget *w) |
static void | hdaa_dump_amp_sb (struct sbuf *sb, uint32_t cap, const char *banner) |
static int | hdaa_sysctl_caps (SYSCTL_HANDLER_ARGS) |
static int | hdaa_sysctl_config (SYSCTL_HANDLER_ARGS) |
static void | hdaa_config_fetch (const char *str, uint32_t *on, uint32_t *off) |
static int | hdaa_sysctl_quirks (SYSCTL_HANDLER_ARGS) |
static void | hdaa_local_patch (struct hdaa_devinfo *devinfo) |
static void | hdaa_widget_connection_parse (struct hdaa_widget *w) |
static void | hdaa_widget_parse (struct hdaa_widget *w) |
static void | hdaa_widget_postprocess (struct hdaa_widget *w) |
struct hdaa_widget * | hdaa_widget_get (struct hdaa_devinfo *devinfo, nid_t nid) |
static void * | hdaa_channel_init (kobj_t obj, void *data, struct snd_dbuf *b, struct pcm_channel *c, int dir) |
static int | hdaa_channel_setformat (kobj_t obj, void *data, uint32_t format) |
static uint32_t | hdaa_channel_setspeed (kobj_t obj, void *data, uint32_t speed) |
static uint16_t | hdaa_stream_format (struct hdaa_chan *ch) |
static int | hdaa_allowed_stripes (uint16_t fmt) |
static void | hdaa_audio_setup (struct hdaa_chan *ch) |
static unsigned | gcd (unsigned a, unsigned b) |
static unsigned | lcm (unsigned a, unsigned b) |
static int | hdaa_channel_setfragments (kobj_t obj, void *data, uint32_t blksz, uint32_t blkcnt) |
static uint32_t | hdaa_channel_setblocksize (kobj_t obj, void *data, uint32_t blksz) |
static void | hdaa_channel_stop (struct hdaa_chan *ch) |
static int | hdaa_channel_start (struct hdaa_chan *ch) |
static int | hdaa_channel_trigger (kobj_t obj, void *data, int go) |
static uint32_t | hdaa_channel_getptr (kobj_t obj, void *data) |
static struct pcmchan_caps * | hdaa_channel_getcaps (kobj_t obj, void *data) |
CHANNEL_DECLARE (hdaa_channel) | |
static int | hdaa_audio_ctl_ossmixer_init (struct snd_mixer *m) |
static void | hdaa_audio_ctl_dev_set (struct hdaa_audio_ctl *ctl, int ossdev, int mute, int *left, int *right) |
static void | hdaa_audio_ctl_source_volume (struct hdaa_pcm_devinfo *pdevinfo, int ossdev, nid_t nid, int index, int mute, int left, int right, int depth) |
static void | hdaa_audio_ctl_dest_volume (struct hdaa_pcm_devinfo *pdevinfo, int ossdev, nid_t nid, int index, int mute, int left, int right, int depth) |
static void | hdaa_audio_ctl_dev_volume (struct hdaa_pcm_devinfo *pdevinfo, unsigned dev) |
static int | hdaa_audio_ctl_ossmixer_set (struct snd_mixer *m, unsigned dev, unsigned left, unsigned right) |
static void | hdaa_audio_ctl_set_defaults (struct hdaa_pcm_devinfo *pdevinfo) |
static uint32_t | hdaa_audio_ctl_recsel_comm (struct hdaa_pcm_devinfo *pdevinfo, uint32_t src, nid_t nid, int depth) |
static uint32_t | hdaa_audio_ctl_ossmixer_setrecsrc (struct snd_mixer *m, uint32_t src) |
MIXER_DECLARE (hdaa_audio_ctl_ossmixer) | |
static void | hdaa_dump_gpi (struct hdaa_devinfo *devinfo) |
static void | hdaa_dump_gpio (struct hdaa_devinfo *devinfo) |
static void | hdaa_dump_gpo (struct hdaa_devinfo *devinfo) |
static void | hdaa_audio_parse (struct hdaa_devinfo *devinfo) |
static void | hdaa_audio_postprocess (struct hdaa_devinfo *devinfo) |
static void | hdaa_audio_ctl_parse (struct hdaa_devinfo *devinfo) |
static void | hdaa_audio_as_parse (struct hdaa_devinfo *devinfo) |
static nid_t | hdaa_audio_trace_dac (struct hdaa_devinfo *devinfo, int as, int seq, nid_t nid, int dupseq, int min, int only, int depth) |
static nid_t | hdaa_audio_trace_adc (struct hdaa_devinfo *devinfo, int as, int seq, nid_t nid, int mixed, int min, int only, int depth, int *length, int onlylength) |
static void | hdaa_audio_undo_trace (struct hdaa_devinfo *devinfo, int as, int seq) |
static int | hdaa_audio_trace_as_out (struct hdaa_devinfo *devinfo, int as, int seq) |
static int | hdaa_audio_dacs_equal (struct hdaa_widget *w1, struct hdaa_widget *w2) |
static int | hdaa_audio_adcs_equal (struct hdaa_widget *w1, struct hdaa_widget *w2) |
static void | hdaa_audio_adddac (struct hdaa_devinfo *devinfo, int asid) |
static int | hdaa_audio_trace_as_in (struct hdaa_devinfo *devinfo, int as) |
static int | hdaa_audio_trace_as_in_mch (struct hdaa_devinfo *devinfo, int as, int seq) |
static int | hdaa_audio_trace_to_out (struct hdaa_devinfo *devinfo, nid_t nid, int depth) |
static void | hdaa_audio_trace_as_extra (struct hdaa_devinfo *devinfo) |
static void | hdaa_audio_bind_as (struct hdaa_devinfo *devinfo) |
static void | hdaa_audio_disable_nonaudio (struct hdaa_devinfo *devinfo) |
static void | hdaa_audio_disable_useless (struct hdaa_devinfo *devinfo) |
static void | hdaa_audio_disable_unas (struct hdaa_devinfo *devinfo) |
static void | hdaa_audio_disable_notselected (struct hdaa_devinfo *devinfo) |
static void | hdaa_audio_disable_crossas (struct hdaa_devinfo *devinfo) |
static int | hdaa_audio_ctl_source_amp (struct hdaa_devinfo *devinfo, nid_t nid, int index, int ossdev, int ctlable, int depth, int *minamp, int *maxamp) |
static int | hdaa_audio_ctl_dest_amp (struct hdaa_devinfo *devinfo, nid_t nid, int index, int ossdev, int depth, int *minamp, int *maxamp) |
static void | hdaa_audio_assign_names (struct hdaa_devinfo *devinfo) |
static void | hdaa_audio_build_tree (struct hdaa_devinfo *devinfo) |
static void | hdaa_adjust_amp (struct hdaa_widget *w, int ossdev, int found, int minamp, int maxamp) |
static void | hdaa_audio_assign_mixers (struct hdaa_devinfo *devinfo) |
static void | hdaa_audio_prepare_pin_ctrl (struct hdaa_devinfo *devinfo) |
static void | hdaa_audio_ctl_commit (struct hdaa_devinfo *devinfo) |
static void | hdaa_gpio_commit (struct hdaa_devinfo *devinfo) |
static void | hdaa_gpo_commit (struct hdaa_devinfo *devinfo) |
static void | hdaa_audio_commit (struct hdaa_devinfo *devinfo) |
static void | hdaa_powerup (struct hdaa_devinfo *devinfo) |
static void | hdaa_prepare_pcms (struct hdaa_devinfo *devinfo) |
static void | hdaa_create_pcms (struct hdaa_devinfo *devinfo) |
static void | hdaa_dump_ctls (struct hdaa_pcm_devinfo *pdevinfo, const char *banner, uint32_t flag) |
static void | hdaa_dump_audio_formats (device_t dev, uint32_t fcap, uint32_t pcmcap) |
static void | hdaa_dump_pin (struct hdaa_widget *w) |
static void | hdaa_dump_pin_configs (struct hdaa_devinfo *devinfo) |
static void | hdaa_dump_amp (device_t dev, uint32_t cap, const char *banner) |
static void | hdaa_dump_nodes (struct hdaa_devinfo *devinfo) |
static void | hdaa_dump_dst_nid (struct hdaa_pcm_devinfo *pdevinfo, nid_t nid, int depth) |
static void | hdaa_dump_dac (struct hdaa_pcm_devinfo *pdevinfo) |
static void | hdaa_dump_adc (struct hdaa_pcm_devinfo *pdevinfo) |
static void | hdaa_dump_mix (struct hdaa_pcm_devinfo *pdevinfo) |
static void | hdaa_pindump (device_t dev) |
static void | hdaa_configure (device_t dev) |
static void | hdaa_unconfigure (device_t dev) |
static int | hdaa_sysctl_gpi_state (SYSCTL_HANDLER_ARGS) |
static int | hdaa_sysctl_gpio_state (SYSCTL_HANDLER_ARGS) |
static int | hdaa_sysctl_gpio_config (SYSCTL_HANDLER_ARGS) |
static int | hdaa_sysctl_gpo_state (SYSCTL_HANDLER_ARGS) |
static int | hdaa_sysctl_gpo_config (SYSCTL_HANDLER_ARGS) |
static int | hdaa_sysctl_reconfig (SYSCTL_HANDLER_ARGS) |
static int | hdaa_suspend (device_t dev) |
static int | hdaa_resume (device_t dev) |
static int | hdaa_probe (device_t dev) |
static int | hdaa_attach (device_t dev) |
static int | hdaa_detach (device_t dev) |
static int | hdaa_print_child (device_t dev, device_t child) |
static int | hdaa_child_location (device_t dev, device_t child, struct sbuf *sb) |
static void | hdaa_stream_intr (device_t dev, int dir, int stream) |
static void | hdaa_unsol_intr (device_t dev, uint32_t resp) |
DRIVER_MODULE (snd_hda, hdacc, hdaa_driver, hdaa_devclass, NULL, NULL) | |
static void | hdaa_chan_formula (struct hdaa_devinfo *devinfo, int asid, char *buf, int buflen) |
static int | hdaa_chan_type (struct hdaa_devinfo *devinfo, int asid) |
static int | hdaa_sysctl_32bit (SYSCTL_HANDLER_ARGS) |
static int | hdaa_pcm_probe (device_t dev) |
static int | hdaa_pcm_attach (device_t dev) |
static int | hdaa_pcm_detach (device_t dev) |
DRIVER_MODULE (snd_hda_pcm, hdaa, hdaa_pcm_driver, pcm_devclass, NULL, NULL) | |
MODULE_DEPEND (snd_hda, sound, SOUND_MINVER, SOUND_PREFVER, SOUND_MAXVER) | |
MODULE_VERSION (snd_hda, 1) | |
Variables | |
struct { | |
const char * key | |
uint32_t value | |
} | hdaa_quirks_tab [] |
static const char * | HDA_COLORS [16] |
static const char * | HDA_DEVS [16] |
static const char * | HDA_CONNS [4] = {"Jack", "None", "Fixed", "Both"} |
static const char * | HDA_CONNECTORS [16] |
static const char * | HDA_LOCS [64] |
static const char * | HDA_GPIO_ACTIONS [8] |
static const char * | HDA_HDMI_CODING_TYPES [18] |
static uint32_t | hdaa_fmt [] |
static struct pcmchan_caps | hdaa_caps = {48000, 48000, hdaa_fmt, 0} |
struct { | |
uint32_t rate | |
int valid | |
uint16_t base | |
uint16_t mul | |
uint16_t div | |
} | hda_rate_tab [] |
static const char * | ossnames [] = SOUND_DEVICE_NAMES |
static const struct matrix | matrixes [] |
static const char * | channel_names [] = SND_CHN_T_NAMES |
static kobj_method_t | hdaa_channel_methods [] |
static kobj_method_t | hdaa_audio_ctl_ossmixer_methods [] |
static device_method_t | hdaa_methods [] |
static driver_t | hdaa_driver |
static devclass_t | hdaa_devclass |
static device_method_t | hdaa_pcm_methods [] |
static driver_t | hdaa_pcm_driver |
#define CONN_CNID | ( | r, | |
e, | |||
n | |||
) | (CONN_RESVAL(r, e, n) & CONN_NMASK(e)) |
#define CONN_NMASK | ( | e | ) | (CONN_RMASK(e) - 1) |
#define CONN_RANGE | ( | r, | |
e, | |||
n | |||
) | (CONN_RESVAL(r, e, n) & CONN_RMASK(e)) |
#define CONN_RMASK | ( | e | ) | (1 << ((32 / (e)) - 1)) |
#define HDA_RATE_TAB_LEN (sizeof(hda_rate_tab) / sizeof(hda_rate_tab[0])) |
#define hdaa_lock | ( | devinfo | ) | snd_mtxlock((devinfo)->lock) |
#define hdaa_lockassert | ( | devinfo | ) | snd_mtxassert((devinfo)->lock) |
#define hdaa_unlock | ( | devinfo | ) | snd_mtxunlock((devinfo)->lock) |
CHANNEL_DECLARE | ( | hdaa_channel | ) |
DRIVER_MODULE | ( | snd_hda | , |
hdacc | , | ||
hdaa_driver | , | ||
hdaa_devclass | , | ||
NULL | , | ||
NULL | |||
) |
DRIVER_MODULE | ( | snd_hda_pcm | , |
hdaa | , | ||
hdaa_pcm_driver | , | ||
pcm_devclass | , | ||
NULL | , | ||
NULL | |||
) |
|
static |
|
static |
Definition at line 4921 of file hdaa.c.
References hdaa_widget::bindas, hdaa_widget::devinfo, devinfo, hdaa_pcm_devinfo::maxamp, hdaa_pcm_devinfo::minamp, and hdaa_pcm_devinfo::ossmask.
Referenced by hdaa_audio_assign_mixers().
|
static |
Definition at line 1829 of file hdaa.c.
Referenced by hdaa_channel_start().
|
static |
Definition at line 6595 of file hdaa.c.
References dev, devinfo, HDA_BOOTHVERBOSE, HDA_BOOTVERBOSE, HDA_CMD_GET_PARAMETER, hda_command, HDA_PARAM_SUB_NODE_COUNT, HDA_PARAM_SUB_NODE_COUNT_START, HDA_PARAM_SUB_NODE_COUNT_TOTAL, hdaa_audio_parse(), hdaa_configure(), hdaa_dump_pin_configs(), hdaa_lock, hdaa_powerup(), hdaa_sysctl_gpi_state(), hdaa_sysctl_gpio_config(), hdaa_sysctl_gpio_state(), hdaa_sysctl_gpo_config(), hdaa_sysctl_gpo_state(), hdaa_sysctl_quirks(), hdaa_sysctl_reconfig(), hdaa_unlock, and hdaa_devinfo::nid.
|
static |
Definition at line 3660 of file hdaa.c.
References hdaa_widget::bindas, hdaa_widget::bindseqmask, hdaa_widget::conns, hdaa_widget::devinfo, devinfo, hdaa_widget::enable, hdaa_widget_get(), hdaa_widget::nconns, hdaa_widget::param, and hdaa_widget::type.
Referenced by hdaa_audio_adddac().
|
static |
Definition at line 3699 of file hdaa.c.
References hdaa_widget::bindas, hdaa_widget::bindseqmask, hdaa_widget::conns, hdaa_audio_as::dacs, devinfo, hdaa_audio_as::dir, hdaa_widget::enable, HDA_BOOTVERBOSE, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_AUDIO_INPUT, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_AUDIO_OUTPUT, hdaa_audio_adcs_equal(), hdaa_audio_dacs_equal(), HDAA_CTL_OUT, hdaa_widget_get(), hdaa_audio_as::index, hdaa_audio_as::num_chans, and hdaa_widget::type.
Referenced by hdaa_audio_build_tree().
|
static |
Definition at line 3160 of file hdaa.c.
References hdaa_widget::cap, hdaa_widget::config, devinfo, hdaa_audio_as::digital, hdaa_audio_as::dir, dir, hdaa_widget::enable, hdaa_audio_as::enable, HDA_BOOTVERBOSE, HDA_CONFIG_DEFAULTCONF_ASSOCIATION, HDA_CONFIG_DEFAULTCONF_DEVICE_DIGITAL_OTHER_OUT, HDA_CONFIG_DEFAULTCONF_DEVICE_HP_OUT, HDA_CONFIG_DEFAULTCONF_DEVICE_LINE_OUT, HDA_CONFIG_DEFAULTCONF_DEVICE_MASK, HDA_CONFIG_DEFAULTCONF_DEVICE_SPDIF_OUT, HDA_CONFIG_DEFAULTCONF_DEVICE_SPEAKER, HDA_CONFIG_DEFAULTCONF_LOCATION, HDA_CONFIG_DEFAULTCONF_SEQUENCE, HDA_PARAM_AUDIO_WIDGET_CAP_DIGITAL, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_PIN_COMPLEX, HDA_PARAM_PIN_CAP_DP, HDA_PARAM_PIN_CAP_HDMI, HDAA_CTL_IN, HDAA_CTL_OUT, hdaa_widget_get(), hdaa_audio_as::hpredir, hdaa_audio_as::index, hdaa_audio_as::location, max, hdaa_audio_as::mixed, hdaa_widget::nid, hdaa_audio_as::num_chans, hdaa_widget::param, hdaa_widget::pin, hdaa_audio_as::pincnt, hdaa_audio_as::pins, hdaa_widget::type, type, hdaa_widget::wclass, and hdaa_widget::widget_cap.
Referenced by hdaa_configure().
|
static |
Definition at line 4949 of file hdaa.c.
References hdaa_widget::bindas, hdaa_widget::conns, hdaa_widget::connsenable, devinfo, hdaa_audio_as::dir, hdaa_widget::enable, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_AUDIO_INPUT, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_AUDIO_OUTPUT, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_BEEP_WIDGET, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_PIN_COMPLEX, HDAA_ADC_MONITOR, hdaa_adjust_amp(), hdaa_audio_ctl_dest_amp(), hdaa_audio_ctl_source_amp(), HDAA_CTL_IN, HDAA_CTL_OUT, HDAA_IMIX_AS_DST, hdaa_widget_get(), hdaa_widget::nconns, hdaa_widget::nid, hdaa_widget::ossdev, hdaa_widget::pflags, and hdaa_widget::type.
Referenced by hdaa_configure().
|
static |
Definition at line 4715 of file hdaa.c.
References hdaa_widget::bindas, hdaa_widget::config, devinfo, hdaa_audio_as::dir, hdaa_widget::enable, HDA_CONFIG_DEFAULTCONF_CONNECTIVITY_JACK, HDA_CONFIG_DEFAULTCONF_CONNECTIVITY_MASK, HDA_CONFIG_DEFAULTCONF_DEVICE_AUX, HDA_CONFIG_DEFAULTCONF_DEVICE_CD, HDA_CONFIG_DEFAULTCONF_DEVICE_DIGITAL_OTHER_IN, HDA_CONFIG_DEFAULTCONF_DEVICE_DIGITAL_OTHER_OUT, HDA_CONFIG_DEFAULTCONF_DEVICE_HP_OUT, HDA_CONFIG_DEFAULTCONF_DEVICE_LINE_IN, HDA_CONFIG_DEFAULTCONF_DEVICE_LINE_OUT, HDA_CONFIG_DEFAULTCONF_DEVICE_MASK, HDA_CONFIG_DEFAULTCONF_DEVICE_MIC_IN, HDA_CONFIG_DEFAULTCONF_DEVICE_SPDIF_IN, HDA_CONFIG_DEFAULTCONF_DEVICE_SPDIF_OUT, HDA_CONFIG_DEFAULTCONF_DEVICE_SPEAKER, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_AUDIO_OUTPUT, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_BEEP_WIDGET, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_PIN_COMPLEX, HDAA_CTL_OUT, hdaa_widget_get(), hdaa_widget::ossdev, hdaa_widget::pin, hdaa_widget::type, type, and hdaa_widget::wclass.
Referenced by hdaa_configure().
|
static |
Definition at line 4070 of file hdaa.c.
References hdaa_chan::as, devinfo, enable, free, HDAA_CTL_IN, hdaa_pcmchannel_setup(), hdaa_audio_as::num_chans, PCMDIR_PLAY, and PCMDIR_REC.
Referenced by hdaa_configure().
|
static |
Definition at line 4862 of file hdaa.c.
References devinfo, dir, hdaa_audio_as::enable, enable, hdaa_audio_as::fakeredir, HDA_BOOTVERBOSE, hdaa_audio_adddac(), hdaa_audio_trace_as_extra(), hdaa_audio_trace_as_in(), hdaa_audio_trace_as_in_mch(), hdaa_audio_trace_as_out(), HDAA_CTL_OUT, hdaa_audio_as::hpredir, hdaa_audio_as::index, hdaa_audio_as::mixed, and retry.
Referenced by hdaa_configure().
|
static |
Definition at line 5209 of file hdaa.c.
References hdaa_widget::ctrl, devinfo, hdaa_widget::eapdbtl, HDA_CMD_SET_EAPD_BTL_ENABLE, HDA_CMD_SET_EAPD_BTL_ENABLE_EAPD, HDA_CMD_SET_PIN_WIDGET_CTRL, hda_command, HDA_INVALID, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_PIN_COMPLEX, hdaa_audio_ctl_commit(), hdaa_gpio_commit(), hdaa_gpo_commit(), HDAA_QUIRK_EAPDINV, hdaa_widget_connection_select(), hdaa_widget::nconns, hdaa_widget::nid, hdaa_widget::param, hdaa_widget::pin, hdaa_widget::selconn, hdaa_widget::type, val, hdaa_widget::waspin, and hdaa_widget::wclass.
Referenced by hdaa_configure(), and hdaa_resume().
|
static |
Definition at line 212 of file hdaa.c.
References devinfo, hdaa_audio_ctl::dir, dir, hdaa_audio_ctl::enable, hdaa_audio_ctl_each(), HDAA_CTL_IN, hdaa_audio_ctl::index, hdaa_audio_ctl::ndir, hdaa_widget::nid, and hdaa_audio_ctl::widget.
Referenced by hdaa_audio_ctl_dest_amp(), hdaa_audio_ctl_dest_volume(), hdaa_audio_ctl_recsel_comm(), hdaa_audio_ctl_source_amp(), hdaa_audio_ctl_source_volume(), hdaa_audio_disable_unas(), and hdaa_hpredir_handler().
|
static |
Definition at line 1675 of file hdaa.c.
References hdaa_widget::devinfo, hdaa_audio_ctl::dir, hdaa_audio_ctl::forcemute, HDAA_AMP_LEFT_MUTED, HDAA_AMP_MUTE_DEFAULT, HDAA_AMP_RIGHT_MUTED, HDAA_AMP_VOL_DEFAULT, hdaa_audio_ctl_amp_set_internal(), HDAA_CTL_IN, HDAA_CTL_OUT, hdaa_audio_ctl::index, left, hdaa_audio_ctl::left, hdaa_audio_ctl::muted, hdaa_widget::nid, right, hdaa_audio_ctl::right, and hdaa_audio_ctl::widget.
Referenced by hdaa_audio_ctl_commit(), hdaa_audio_ctl_dev_set(), hdaa_audio_ctl_recsel_comm(), and hdaa_hpredir_handler().
|
static |
Definition at line 1648 of file hdaa.c.
References devinfo, dir, HDA_BOOTHVERBOSE, HDA_CMD_SET_AMP_GAIN_MUTE, hda_command, index, left, hdaa_widget::nid, and right.
Referenced by hdaa_audio_ctl_amp_set().
|
static |
Definition at line 5107 of file hdaa.c.
References devinfo, hdaa_audio_ctl::enable, HDAA_AMP_MUTE_ALL, HDAA_AMP_MUTE_NONE, hdaa_audio_ctl_amp_set(), hdaa_audio_ctl_each(), hdaa_audio_ctl::offset, hdaa_audio_ctl::ossmask, and hdaa_audio_ctl::step.
Referenced by hdaa_audio_commit().
|
static |
Definition at line 4621 of file hdaa.c.
References hdaa_widget::bindas, hdaa_widget::bindseqmask, hdaa_widget::conns, hdaa_widget::connsenable, devinfo, hdaa_widget::enable, hdaa_audio_as::fakeredir, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_PIN_COMPLEX, HDA_PARSE_MAXDEPTH, hdaa_audio_ctl_amp_get(), hdaa_audio_ctl_dest_amp(), HDAA_CTL_IN, HDAA_CTL_OUT, hdaa_widget_get(), hdaa_audio_as::hpredir, hdaa_audio_ctl::index, MAXQDB, MINQDB, hdaa_widget::nconns, hdaa_widget::nid, hdaa_audio_ctl::ossmask, and hdaa_widget::type.
Referenced by hdaa_audio_assign_mixers(), and hdaa_audio_ctl_dest_amp().
|
static |
Definition at line 2428 of file hdaa.c.
References hdaa_widget::bindas, hdaa_widget::bindseqmask, hdaa_widget::conns, hdaa_widget::connsenable, hdaa_pcm_devinfo::devinfo, devinfo, hdaa_widget::enable, hdaa_audio_as::fakeredir, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_PIN_COMPLEX, HDA_PARSE_MAXDEPTH, hdaa_audio_ctl_amp_get(), hdaa_audio_ctl_dest_volume(), hdaa_audio_ctl_dev_set(), HDAA_CTL_IN, HDAA_CTL_OUT, hdaa_widget_get(), hdaa_audio_as::hpredir, hdaa_audio_ctl::index, left, hdaa_audio_ctl::mute, hdaa_widget::nconns, hdaa_widget::nid, right, and hdaa_widget::type.
Referenced by hdaa_audio_ctl_dest_volume(), and hdaa_audio_ctl_dev_volume().
|
static |
Definition at line 2323 of file hdaa.c.
References hdaa_audio_ctl::devleft, hdaa_audio_ctl::devmute, hdaa_audio_ctl::devright, hdaa_audio_ctl_amp_set(), left, hdaa_widget::ossdev, QDB2VAL, right, and VAL2QDB.
Referenced by hdaa_audio_ctl_dest_volume(), and hdaa_audio_ctl_source_volume().
|
static |
Definition at line 2499 of file hdaa.c.
References hdaa_widget::bindas, hdaa_widget::conns, hdaa_widget::connsenable, dev, hdaa_pcm_devinfo::devinfo, devinfo, hdaa_widget::enable, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_AUDIO_INPUT, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_PIN_COMPLEX, HDAA_ADC_MONITOR, HDAA_AMP_MUTE_LEFT, HDAA_AMP_MUTE_RIGHT, hdaa_audio_ctl_dest_volume(), hdaa_audio_ctl_source_volume(), HDAA_CTL_IN, HDAA_CTL_OUT, HDAA_IMIX_AS_DST, hdaa_widget_get(), hdaa_pcm_devinfo::index, hdaa_pcm_devinfo::left, hdaa_pcm_devinfo::maxamp, hdaa_pcm_devinfo::minamp, hdaa_widget::nconns, hdaa_widget::nid, hdaa_widget::ossdev, hdaa_widget::pflags, hdaa_pcm_devinfo::playas, hdaa_pcm_devinfo::recas, hdaa_pcm_devinfo::right, and hdaa_widget::type.
Referenced by hdaa_audio_ctl_ossmixer_set(), and hdaa_audio_ctl_ossmixer_setrecsrc().
|
static |
Definition at line 201 of file hdaa.c.
References devinfo, and hdaa_audio_ctl::index.
Referenced by hdaa_audio_ctl_amp_get(), hdaa_audio_ctl_commit(), hdaa_audio_ctl_ossmixer_setrecsrc(), hdaa_audio_disable_crossas(), hdaa_audio_disable_useless(), and hdaa_dump_ctls().
|
static |
Definition at line 2222 of file hdaa.c.
References hdaa_widget::bindas, hdaa_widget::conns, hdaa_widget::connsenable, hdaa_pcm_devinfo::dev, hdaa_pcm_devinfo::devinfo, devinfo, hdaa_widget::eapdbtl, hdaa_widget::enable, HDA_BOOTHVERBOSE, HDA_INVALID, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_PIN_COMPLEX, hdaa_lock, HDAA_QUIRK_SOFTPCMVOL, hdaa_unlock, hdaa_widget_get(), hdaa_pcm_devinfo::left, m, mask, hdaa_pcm_devinfo::maxamp, hdaa_pcm_devinfo::minamp, mix_getdevinfo(), mix_setdevs(), mix_setparentchild(), mix_setrealdev(), mix_setrecdevs(), hdaa_pcm_devinfo::mixer, hdaa_widget::nconns, hdaa_widget::ossmask, hdaa_pcm_devinfo::ossmask, hdaa_widget::param, pcm_getflags(), pcm_setflags(), hdaa_pcm_devinfo::playas, hdaa_pcm_devinfo::recas, recmask, hdaa_pcm_devinfo::right, SD_F_SOFTPCMVOL, and hdaa_widget::type.
|
static |
Definition at line 184 of file hdaa.c.
References buf, len, mask, and ossnames.
Referenced by hdaa_audio_ctl_recsel_comm(), hdaa_autorecsrc_handler(), hdaa_dump_ctls(), hdaa_dump_dst_nid(), hdaa_dump_nodes(), and hdaa_sysctl_caps().
|
static |
Definition at line 2577 of file hdaa.c.
References dev, hdaa_pcm_devinfo::devinfo, devinfo, hdaa_widget::eapdbtl, hdaa_widget::enable, HDA_CMD_SET_EAPD_BTL_ENABLE, HDA_CMD_SET_EAPD_BTL_ENABLE_EAPD, hda_command, HDA_INVALID, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_PIN_COMPLEX, hdaa_audio_ctl_dev_volume(), hdaa_lock, HDAA_QUIRK_EAPDINV, hdaa_unlock, hdaa_widget_get(), left, hdaa_pcm_devinfo::left, m, mix_getdevinfo(), hdaa_widget::nid, hdaa_widget::param, right, hdaa_pcm_devinfo::right, hdaa_widget::type, and val.
|
static |
Definition at line 2754 of file hdaa.c.
References hdaa_chan::as, hdaa_widget::bindas, hdaa_pcm_devinfo::devinfo, devinfo, hdaa_audio_ctl::devleft, hdaa_audio_ctl::devmute, hdaa_audio_ctl::devright, hdaa_widget::enable, hdaa_audio_ctl::enable, hdaa_audio_ctl_dev_volume(), hdaa_audio_ctl_each(), hdaa_audio_ctl_recsel_comm(), hdaa_lock, hdaa_unlock, hdaa_widget_get(), hdaa_pcm_devinfo::index, hdaa_chan::io, m, mix_getdevinfo(), mix_getrecdevs(), hdaa_audio_ctl::ossmask, hdaa_chan::pdevinfo, hdaa_pcm_devinfo::playas, hdaa_pcm_devinfo::recas, hdaa_pcm_devinfo::recsrc, src, and hdaa_audio_ctl::widget.
|
static |
Definition at line 2998 of file hdaa.c.
References hdaa_audio_ctl::childwidget, hdaa_widget::conns, devinfo, hdaa_audio_ctl::dir, hdaa_widget::enable, hdaa_audio_ctl::enable, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_AUDIO_MIXER, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_AUDIO_SELECTOR, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_PIN_COMPLEX, HDA_PARAM_OUTPUT_AMP_CAP_MUTE_CAP, HDA_PARAM_OUTPUT_AMP_CAP_NUMSTEPS, HDA_PARAM_OUTPUT_AMP_CAP_OFFSET, HDA_PARAM_OUTPUT_AMP_CAP_STEPSIZE, HDAA_CTL_IN, HDAA_CTL_OUT, hdaa_widget_get(), hdaa_widget::inamp_cap, hdaa_audio_ctl::index, hdaa_audio_ctl::left, max, hdaa_audio_ctl::mute, hdaa_widget::nconns, hdaa_audio_ctl::ndir, hdaa_audio_ctl::offset, offset, hdaa_widget::outamp_cap, hdaa_widget::param, hdaa_audio_ctl::right, hdaa_audio_ctl::size, size, hdaa_audio_ctl::step, hdaa_widget::type, hdaa_widget::waspin, and hdaa_audio_ctl::widget.
Referenced by hdaa_configure().
|
static |
Definition at line 2680 of file hdaa.c.
References hdaa_widget::bindas, buf, hdaa_widget::conns, hdaa_widget::connsenable, hdaa_pcm_devinfo::dev, hdaa_pcm_devinfo::devinfo, devinfo, hdaa_widget::enable, hdaa_audio_ctl::forcemute, HDA_BOOTHVERBOSE, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_AUDIO_MIXER, HDA_PARSE_MAXDEPTH, HDAA_AMP_MUTE_DEFAULT, HDAA_AMP_VOL_DEFAULT, hdaa_audio_ctl_amp_get(), hdaa_audio_ctl_amp_set(), hdaa_audio_ctl_ossmixer_mask2allname(), hdaa_audio_ctl_recsel_comm(), HDAA_CTL_IN, hdaa_widget_connection_select(), hdaa_widget_get(), hdaa_audio_ctl::muted, hdaa_widget::nconns, hdaa_widget::nid, hdaa_widget::ossdev, hdaa_widget::ossmask, src, and hdaa_widget::type.
Referenced by hdaa_audio_ctl_ossmixer_setrecsrc(), and hdaa_audio_ctl_recsel_comm().
|
static |
Definition at line 2638 of file hdaa.c.
References hdaa_pcm_devinfo::dev, dev, hdaa_pcm_devinfo::digital, hdaa_pcm_devinfo::maxamp, hdaa_pcm_devinfo::minamp, mix_set(), hdaa_pcm_devinfo::mixer, hdaa_pcm_devinfo::ossmask, and ossnames.
Referenced by hdaa_pcm_attach().
|
static |
Definition at line 4515 of file hdaa.c.
References hdaa_widget::conns, hdaa_widget::connsenable, devinfo, hdaa_widget::enable, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_AUDIO_INPUT, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_AUDIO_MIXER, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_PIN_COMPLEX, HDA_PARSE_MAXDEPTH, hdaa_audio_ctl_amp_get(), hdaa_audio_ctl_source_amp(), HDAA_CTL_IN, HDAA_CTL_OUT, hdaa_widget_get(), hdaa_audio_ctl::index, MAXQDB, MINQDB, hdaa_widget::nconns, hdaa_widget::nid, hdaa_widget::ossdev, hdaa_widget::ossmask, hdaa_audio_ctl::ossmask, and hdaa_widget::type.
Referenced by hdaa_audio_assign_mixers(), and hdaa_audio_ctl_source_amp().
|
static |
Definition at line 2352 of file hdaa.c.
References hdaa_widget::conns, hdaa_widget::connsenable, hdaa_pcm_devinfo::devinfo, devinfo, hdaa_widget::enable, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_AUDIO_INPUT, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_AUDIO_MIXER, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_PIN_COMPLEX, HDA_PARSE_MAXDEPTH, hdaa_audio_ctl_amp_get(), hdaa_audio_ctl_dev_set(), hdaa_audio_ctl_source_volume(), HDAA_CTL_IN, HDAA_CTL_OUT, hdaa_widget_get(), hdaa_audio_ctl::index, left, hdaa_audio_ctl::mute, hdaa_widget::nconns, hdaa_widget::nid, hdaa_widget::ossdev, right, hdaa_widget::selconn, and hdaa_widget::type.
Referenced by hdaa_audio_ctl_dev_volume(), and hdaa_audio_ctl_source_volume().
|
static |
Definition at line 3621 of file hdaa.c.
References hdaa_widget::bindas, hdaa_widget::conns, hdaa_widget::connsenable, hdaa_widget::devinfo, devinfo, hdaa_widget::enable, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_AUDIO_MIXER, hdaa_widget_get(), hdaa_widget::nconns, hdaa_widget::nid, hdaa_widget::param, and hdaa_widget::type.
Referenced by hdaa_audio_adddac().
|
static |
Definition at line 4413 of file hdaa.c.
References hdaa_widget::bindas, hdaa_widget::bindseqmask, hdaa_audio_ctl::childwidget, hdaa_widget::conns, hdaa_widget::connsenable, devinfo, hdaa_audio_as::dir, hdaa_widget::enable, hdaa_audio_ctl::enable, hdaa_audio_ctl::forcemute, HDA_BOOTHVERBOSE, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_AUDIO_MIXER, HDAA_ADC_MONITOR, HDAA_AMP_MUTE_ALL, hdaa_audio_ctl_each(), HDAA_CTL_IN, HDAA_CTL_OUT, hdaa_widget_get(), hdaa_audio_ctl::index, hdaa_audio_ctl::left, hdaa_audio_as::mixed, hdaa_audio_ctl::muted, hdaa_widget::nconns, hdaa_audio_ctl::ndir, hdaa_widget::nid, hdaa_widget::pflags, hdaa_audio_ctl::right, hdaa_widget::type, and hdaa_audio_ctl::widget.
Referenced by hdaa_configure().
|
static |
Definition at line 4127 of file hdaa.c.
References devinfo, hdaa_widget::enable, HDA_BOOTHVERBOSE, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_POWER_WIDGET, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_VOLUME_WIDGET, hdaa_widget_get(), hdaa_widget::nid, and hdaa_widget::type.
Referenced by hdaa_configure().
|
static |
Definition at line 4379 of file hdaa.c.
References hdaa_widget::bindas, hdaa_widget::connsenable, devinfo, hdaa_audio_as::dir, hdaa_widget::enable, HDA_BOOTHVERBOSE, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_AUDIO_MIXER, HDAA_CTL_IN, hdaa_widget_get(), hdaa_widget::nconns, hdaa_widget::selconn, and hdaa_widget::type.
Referenced by hdaa_configure().
|
static |
Definition at line 4284 of file hdaa.c.
References hdaa_widget::bindas, hdaa_widget::conns, hdaa_widget::connsenable, devinfo, hdaa_audio_as::dir, hdaa_widget::enable, hdaa_audio_ctl::enable, hdaa_audio_ctl::forcemute, HDA_BOOTHVERBOSE, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_PIN_COMPLEX, HDAA_AMP_MUTE_ALL, hdaa_audio_ctl_amp_get(), HDAA_CTL_IN, HDAA_CTL_OUT, hdaa_widget_get(), k, hdaa_audio_ctl::left, hdaa_audio_ctl::muted, hdaa_widget::nconns, hdaa_widget::nid, hdaa_audio_ctl::right, and hdaa_widget::type.
Referenced by hdaa_configure().
|
static |
Definition at line 4151 of file hdaa.c.
References hdaa_audio_ctl::childwidget, hdaa_widget::config, hdaa_widget::conns, hdaa_widget::connsenable, devinfo, hdaa_widget::enable, hdaa_audio_ctl::enable, hdaa_audio_ctl::forcemute, HDA_BOOTHVERBOSE, HDA_CONFIG_DEFAULTCONF_ASSOCIATION_MASK, HDA_CONFIG_DEFAULTCONF_CONNECTIVITY_MASK, HDA_CONFIG_DEFAULTCONF_CONNECTIVITY_NONE, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_AUDIO_MIXER, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_AUDIO_SELECTOR, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_PIN_COMPLEX, HDAA_AMP_MUTE_ALL, hdaa_audio_ctl_each(), HDAA_CTL_IN, hdaa_widget_get(), hdaa_audio_ctl::index, k, hdaa_audio_ctl::left, hdaa_audio_ctl::muted, hdaa_widget::nconns, hdaa_audio_ctl::ndir, hdaa_widget::nid, hdaa_widget::pin, hdaa_audio_ctl::right, hdaa_widget::type, hdaa_widget::wclass, and hdaa_audio_ctl::widget.
Referenced by hdaa_configure().
|
static |
Definition at line 2922 of file hdaa.c.
References hdaa_widget::bindas, hdaa_widget::devinfo, devinfo, hdaa_widget::eapdbtl, hdaa_widget::enable, HDA_BOOTVERBOSE, HDA_CMD_GET_PARAMETER, hda_command, HDA_INVALID, HDA_PARAM_GPIO_COUNT, HDA_PARAM_GPIO_COUNT_GPI_UNSOL, HDA_PARAM_GPIO_COUNT_GPI_WAKE, HDA_PARAM_GPIO_COUNT_NUM_GPI, HDA_PARAM_GPIO_COUNT_NUM_GPIO, HDA_PARAM_GPIO_COUNT_NUM_GPO, HDA_PARAM_INPUT_AMP_CAP, HDA_PARAM_OUTPUT_AMP_CAP, HDA_PARAM_SUPP_PCM_SIZE_RATE, HDA_PARAM_SUPP_STREAM_FORMATS, hdaa_dump_gpi(), hdaa_dump_gpio(), hdaa_dump_gpo(), hdaa_widget_get(), hdaa_widget_parse(), hdaa_widget::nid, hdaa_widget::ossdev, hdaa_widget::param, hdaa_widget::pflags, and hdaa_widget::selconn.
Referenced by hdaa_attach().
|
static |
Definition at line 2984 of file hdaa.c.
References devinfo, hdaa_widget_get(), and hdaa_widget_postprocess().
Referenced by hdaa_configure().
|
static |
Definition at line 5017 of file hdaa.c.
References hdaa_widget::bindas, hdaa_widget::cap, hdaa_widget::config, hdaa_widget::ctrl, devinfo, hdaa_audio_as::dir, hdaa_widget::enable, hdaa_audio_as::enable, HDA_CMD_PIN_WIDGET_CTRL_VREF_ENABLE_100, HDA_CMD_PIN_WIDGET_CTRL_VREF_ENABLE_50, HDA_CMD_PIN_WIDGET_CTRL_VREF_ENABLE_80, HDA_CMD_SET_PIN_WIDGET_CTRL_HPHN_ENABLE, HDA_CMD_SET_PIN_WIDGET_CTRL_IN_ENABLE, HDA_CMD_SET_PIN_WIDGET_CTRL_OUT_ENABLE, HDA_CMD_SET_PIN_WIDGET_CTRL_VREF_ENABLE, HDA_CMD_SET_PIN_WIDGET_CTRL_VREF_ENABLE_MASK, HDA_CONFIG_DEFAULTCONF_DEVICE_HP_OUT, HDA_CONFIG_DEFAULTCONF_DEVICE_MASK, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_PIN_COMPLEX, HDA_PARAM_PIN_CAP_HEADPHONE_CAP, HDA_PARAM_PIN_CAP_INPUT_CAP, HDA_PARAM_PIN_CAP_OUTPUT_CAP, HDA_PARAM_PIN_CAP_VREF_CTRL_100, HDA_PARAM_PIN_CAP_VREF_CTRL_50, HDA_PARAM_PIN_CAP_VREF_CTRL_80, HDAA_CTL_IN, HDAA_QUIRK_IVREF100, HDAA_QUIRK_IVREF50, HDAA_QUIRK_IVREF80, HDAA_QUIRK_OVREF100, HDAA_QUIRK_OVREF50, HDAA_QUIRK_OVREF80, hdaa_widget::pin, hdaa_widget::type, hdaa_widget::waspin, and hdaa_widget::wclass.
Referenced by hdaa_configure().
|
static |
Definition at line 1841 of file hdaa.c.
References AFMT_CHANNEL, AFMT_EXTCHANNEL, hdaa_devinfo::as, hdaa_chan::as, hdaa_chan::asindex, c, hdaa_widget::cap, hdaa_widget::ctrl, hdaa_audio_as::dacs, hdaa_pcm_devinfo::dev, hdaa_devinfo::dev, hdaa_chan::devinfo, hdaa_chan::dir, hdaa_widget::eld, hdaa_widget::eld_len, hdaa_audio_as::fakeredir, fmt, hdaa_chan::fmt, HDA_BOOTHVERBOSE, HDA_CMD_SET_CONV_CHAN_COUNT, HDA_CMD_SET_CONV_FMT, HDA_CMD_SET_CONV_STREAM_CHAN, HDA_CMD_SET_DIGITAL_CONV_FMT1, HDA_CMD_SET_DIGITAL_CONV_FMT1_DIGEN, HDA_CMD_SET_DIGITAL_CONV_FMT1_NAUDIO, HDA_CMD_SET_HDMI_CHAN_SLOT, HDA_CMD_SET_HDMI_DIP_DATA, HDA_CMD_SET_HDMI_DIP_INDEX, HDA_CMD_SET_HDMI_DIP_XMIT, HDA_CMD_SET_PIN_WIDGET_CTRL, HDA_CMD_SET_STRIPE_CONTROL, hda_command, HDA_PARAM_AUDIO_WIDGET_CAP_CC, HDA_PARAM_AUDIO_WIDGET_CAP_DIGITAL, HDA_PARAM_AUDIO_WIDGET_CAP_STRIPE, HDA_PARAM_PIN_CAP_DP, HDA_PARAM_PIN_CAP_HBR, HDA_PARAM_PIN_CAP_HDMI, hdaa_stream_format(), hdaa_widget_get(), hdaa_chan::io, k, hdaa_widget::nid, hdaa_widget::param, PCMDIR_PLAY, hdaa_chan::pdevinfo, hdaa_widget::pin, hdaa_audio_as::pincnt, hdaa_audio_as::pins, hdaa_audio_as::pinset, hdaa_chan::sid, hdaa_chan::spd, hdaa_chan::stripectl, hdaa_widget::wclass, and hdaa_widget::widget_cap.
Referenced by hdaa_channel_start().
|
static |
Definition at line 3429 of file hdaa.c.
References hdaa_widget::bindas, hdaa_widget::bindseqmask, hdaa_widget::conns, hdaa_widget::connsenable, devinfo, hdaa_widget::enable, HDA_BOOTHVERBOSE, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_AUDIO_INPUT, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_AUDIO_MIXER, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_AUDIO_SELECTOR, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_PIN_COMPLEX, HDA_PARSE_MAXDEPTH, hdaa_audio_trace_adc(), hdaa_widget_get(), m, hdaa_widget::nconns, hdaa_widget::nid, hdaa_widget::selconn, and hdaa_widget::type.
Referenced by hdaa_audio_trace_adc(), hdaa_audio_trace_as_in(), and hdaa_audio_trace_as_in_mch().
|
static |
Definition at line 3974 of file hdaa.c.
References hdaa_widget::bindas, devinfo, hdaa_audio_as::dir, hdaa_widget::enable, HDA_BOOTHVERBOSE, HDA_BOOTVERBOSE, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_AUDIO_MIXER, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_BEEP_WIDGET, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_PIN_COMPLEX, hdaa_audio_trace_to_out(), HDAA_CTL_IN, hdaa_widget_get(), hdaa_widget::nid, hdaa_widget::ossdev, and hdaa_widget::type.
Referenced by hdaa_audio_build_tree().
|
static |
Definition at line 3776 of file hdaa.c.
References hdaa_widget::bindas, hdaa_audio_as::dacs, devinfo, hdaa_widget::enable, HDA_BOOTHVERBOSE, HDA_BOOTVERBOSE, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_AUDIO_INPUT, hdaa_audio_trace_adc(), hdaa_audio_undo_trace(), hdaa_widget_get(), k, hdaa_audio_as::pins, and hdaa_widget::type.
Referenced by hdaa_audio_build_tree().
|
static |
Definition at line 3832 of file hdaa.c.
References hdaa_audio_as::dacs, devinfo, HDA_BOOTHVERBOSE, HDA_BOOTVERBOSE, hdaa_audio_trace_adc(), hdaa_audio_trace_as_in_mch(), hdaa_audio_undo_trace(), and hdaa_audio_as::pins.
Referenced by hdaa_audio_build_tree(), and hdaa_audio_trace_as_in_mch().
|
static |
Definition at line 3553 of file hdaa.c.
References hdaa_audio_as::dacs, devinfo, hdaa_audio_as::fakeredir, HDA_BOOTHVERBOSE, HDA_BOOTVERBOSE, hdaa_audio_trace_as_out(), hdaa_audio_trace_dac(), hdaa_audio_undo_trace(), hdaa_audio_as::hpredir, and hdaa_audio_as::pins.
Referenced by hdaa_audio_build_tree(), and hdaa_audio_trace_as_out().
|
static |
Definition at line 3318 of file hdaa.c.
References hdaa_widget::bindas, hdaa_widget::bindseqmask, hdaa_widget::conns, hdaa_widget::connsenable, devinfo, hdaa_widget::enable, HDA_BOOTHVERBOSE, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_AUDIO_INPUT, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_AUDIO_MIXER, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_AUDIO_OUTPUT, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_AUDIO_SELECTOR, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_PIN_COMPLEX, HDA_PARSE_MAXDEPTH, hdaa_audio_trace_dac(), hdaa_widget_get(), m, hdaa_widget::nconns, hdaa_widget::nid, hdaa_widget::selconn, and hdaa_widget::type.
Referenced by hdaa_audio_trace_as_out(), and hdaa_audio_trace_dac().
|
static |
Definition at line 3890 of file hdaa.c.
References hdaa_widget::bindas, hdaa_widget::conns, hdaa_widget::connsenable, devinfo, hdaa_audio_as::dir, hdaa_widget::enable, HDA_BOOTHVERBOSE, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_AUDIO_INPUT, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_AUDIO_SELECTOR, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_PIN_COMPLEX, HDA_PARSE_MAXDEPTH, HDAA_ADC_MONITOR, hdaa_audio_trace_to_out(), HDAA_CTL_OUT, hdaa_widget_get(), hdaa_widget::nconns, hdaa_widget::nid, hdaa_widget::pflags, hdaa_widget::selconn, and hdaa_widget::type.
Referenced by hdaa_audio_trace_as_extra(), and hdaa_audio_trace_to_out().
|
static |
Definition at line 3524 of file hdaa.c.
References hdaa_widget::bindas, hdaa_widget::bindseqmask, devinfo, hdaa_widget::enable, hdaa_widget_get(), and hdaa_widget::selconn.
Referenced by hdaa_audio_trace_as_in(), hdaa_audio_trace_as_in_mch(), and hdaa_audio_trace_as_out().
|
static |
Definition at line 462 of file hdaa.c.
References hdaa_pcm_devinfo::autorecsrc, buf, hdaa_widget::connected, hdaa_pcm_devinfo::dev, hdaa_pcm_devinfo::devinfo, devinfo, hdaa_widget::enable, HDA_BOOTVERBOSE, hdaa_audio_ctl_ossmixer_mask2allname(), hdaa_lock, hdaa_unlock, hdaa_widget_get(), mask, mix_setrecsrc(), hdaa_audio_as::mixed, hdaa_pcm_devinfo::mixer, hdaa_widget::ossdev, hdaa_audio_as::pdevinfo, hdaa_widget::pin, hdaa_audio_as::pins, hdaa_pcm_devinfo::recsrc, and hdaa_widget::wclass.
Referenced by hdaa_pcm_attach(), and hdaa_presence_handler().
|
static |
Definition at line 6856 of file hdaa.c.
References buf, c, hdaa_audio_as::chans, devinfo, hdaa_audio_as::hpredir, and hdaa_audio_as::pinset.
Referenced by hdaa_pcm_probe().
|
static |
Definition at line 6886 of file hdaa.c.
References hdaa_widget::config, devinfo, hdaa_widget::enable, HDA_CONFIG_DEFAULTCONF_DEVICE, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_PIN_COMPLEX, hdaa_widget_get(), hdaa_widget::pin, hdaa_audio_as::pins, hdaa_widget::type, and hdaa_widget::wclass.
Referenced by hdaa_pcm_probe().
|
static |
Definition at line 2203 of file hdaa.c.
References pcmchan_caps::caps, and data.
|
static |
Definition at line 2177 of file hdaa.c.
References hdaa_chan::blkcnt, hdaa_chan::blksz, data, hdaa_chan::devinfo, devinfo, hdaa_chan::dir, hdaa_chan::dmapos, HDA_BLK_ALIGN, hdaa_lock, hdaa_unlock, PCMDIR_PLAY, and hdaa_chan::sid.
|
static |
Definition at line 1730 of file hdaa.c.
References hdaa_chan::b, b, hdaa_chan::blkcnt, hdaa_chan::blksz, hdaa_chan::c, c, hdaa_chan::caps, hdaa_pcm_devinfo::chan_blkcnt, hdaa_pcm_devinfo::chan_size, data, hdaa_pcm_devinfo::devinfo, devinfo, hdaa_chan::dir, dir, hdaa_lock, HDAA_QUIRK_FIXEDRATE, hdaa_unlock, pcmchan_caps::maxspeed, pcmchan_caps::minspeed, hdaa_chan::pcmrates, hdaa_chan::pdevinfo, and sndbuf_alloc().
|
static |
Definition at line 2090 of file hdaa.c.
References hdaa_chan::blksz, blksz, hdaa_pcm_devinfo::chan_blkcnt, data, hdaa_channel_setfragments(), and hdaa_chan::pdevinfo.
|
static |
Definition at line 1760 of file hdaa.c.
References hdaa_chan::caps, data, hdaa_chan::fmt, pcmchan_caps::fmtlist, and format.
|
static |
Definition at line 2052 of file hdaa.c.
References hdaa_chan::b, hdaa_chan::blkcnt, blkcnt, hdaa_chan::blksz, blksz, data, hdaa_devinfo::dev, hdaa_chan::devinfo, HDA_BDL_MAX, HDA_BDL_MIN, HDA_BLK_MIN, HDA_DMA_ALIGNMENT, lcm(), sndbuf_getalign(), sndbuf_getblkcnt(), sndbuf_getblksz(), sndbuf_getmaxsize(), and sndbuf_resize().
Referenced by hdaa_channel_setblocksize().
|
static |
Definition at line 1776 of file hdaa.c.
References data, hdaa_chan::pcmrates, hdaa_chan::spd, spd, and speed.
|
static |
Definition at line 2128 of file hdaa.c.
References hdaa_chan::b, hdaa_chan::blkcnt, hdaa_chan::blksz, hdaa_chan::devinfo, devinfo, hdaa_chan::dir, hdaa_chan::dmapos, hdaa_chan::flags, fmt, hdaa_allowed_stripes(), hdaa_audio_setup(), HDAA_CHN_RUNNING, hdaa_stream_format(), PCMDIR_PLAY, hdaa_chan::sid, sndbuf_getbufaddr(), hdaa_chan::stripecap, and hdaa_chan::stripectl.
Referenced by hdaa_channel_trigger(), and hdaa_resume().
|
static |
Definition at line 2100 of file hdaa.c.
References hdaa_chan::devinfo, devinfo, hdaa_chan::dir, hdaa_chan::flags, HDA_CMD_SET_CONV_STREAM_CHAN, HDA_CMD_SET_DIGITAL_CONV_FMT1, hda_command, HDA_PARAM_AUDIO_WIDGET_CAP_DIGITAL, HDAA_CHN_RUNNING, hdaa_widget_get(), hdaa_chan::io, hdaa_widget::param, PCMDIR_PLAY, hdaa_chan::sid, and hdaa_widget::widget_cap.
Referenced by hdaa_channel_trigger(), and hdaa_suspend().
|
static |
Definition at line 2151 of file hdaa.c.
References data, hdaa_chan::devinfo, error, go, hdaa_channel_start(), hdaa_channel_stop(), hdaa_lock, hdaa_unlock, PCMTRIG_ABORT, PCMTRIG_COMMON, PCMTRIG_START, and PCMTRIG_STOP.
|
static |
Definition at line 265 of file hdaa.c.
References matrix::analog, hdaa_chan::as, channel_names, hdaa_chan::channels, pcmchan_matrix::channels, hdaa_widget::connected, hdaa_pcm_devinfo::dev, hdaa_pcm_devinfo::devinfo, devinfo, hdaa_audio_as::dir, hdaa_widget::eld, hdaa_widget::eld_len, pcmchan_matrix::ext, HDA_BOOTVERBOSE, HDAA_CTL_OUT, hdaa_widget_get(), hdaa_audio_as::hpredir, matrix::m, m, pcmchan_matrix::mask, matrixes, hdaa_audio_as::mixed, hdaa_audio_as::pdevinfo, hdaa_widget::pin, hdaa_audio_as::pins, hdaa_audio_as::pinset, SND_CHN_T_MASK_BC, SND_CHN_T_MASK_BL, SND_CHN_T_MASK_BR, SND_CHN_T_MASK_FC, SND_CHN_T_MASK_FL, SND_CHN_T_MASK_FLC, SND_CHN_T_MASK_FR, SND_CHN_T_MASK_FRC, SND_CHN_T_MASK_LF, SND_CHN_T_MASK_SL, SND_CHN_T_MASK_SR, SND_CHN_T_MAX, and hdaa_widget::wclass.
Referenced by hdaa_eld_handler(), hdaa_pcm_attach(), and hdaa_presence_handler().
|
static |
Definition at line 6749 of file hdaa.c.
References child, dev, devinfo, hdaa_audio_as::pdevinfo, hdaa_audio_as::pins, hdaa_pcm_devinfo::playas, and hdaa_pcm_devinfo::recas.
|
static |
Definition at line 1256 of file hdaa.c.
References hdaa_quirks_tab, k, key, and len.
Referenced by hdaa_local_patch(), and hdaa_sysctl_quirks().
|
static |
Definition at line 6112 of file hdaa.c.
References dev, devinfo, HDA_BOOTHVERBOSE, HDA_BOOTVERBOSE, hdaa_audio_as_parse(), hdaa_audio_assign_mixers(), hdaa_audio_assign_names(), hdaa_audio_bind_as(), hdaa_audio_build_tree(), hdaa_audio_commit(), hdaa_audio_ctl_parse(), hdaa_audio_disable_crossas(), hdaa_audio_disable_nonaudio(), hdaa_audio_disable_notselected(), hdaa_audio_disable_unas(), hdaa_audio_disable_useless(), hdaa_audio_postprocess(), hdaa_audio_prepare_pin_ctrl(), hdaa_create_pcms(), hdaa_dump_pin_configs(), hdaa_local_patch(), hdaa_patch(), hdaa_patch_direct(), hdaa_prepare_pcms(), and hdaa_sense_init().
Referenced by hdaa_attach(), and hdaa_sysctl_reconfig().
|
static |
Definition at line 5539 of file hdaa.c.
References hdaa_pcm_devinfo::dev, and devinfo.
Referenced by hdaa_configure().
|
static |
Definition at line 6691 of file hdaa.c.
References dev, devinfo, error, free, hdaa_lock, hdaa_unconfigure(), and hdaa_unlock.
|
static |
Definition at line 5981 of file hdaa.c.
References hdaa_widget::bindas, hdaa_pcm_devinfo::dev, hdaa_pcm_devinfo::devinfo, devinfo, hdaa_widget::enable, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_AUDIO_INPUT, hdaa_dump_audio_formats(), hdaa_dump_dst_nid(), hdaa_widget_get(), hdaa_pcm_devinfo::recas, and hdaa_widget::type.
Referenced by hdaa_pcm_attach().
|
static |
Definition at line 5783 of file hdaa.c.
References hdaa_widget::cap, dev, HDA_PARAM_OUTPUT_AMP_CAP_MUTE_CAP, HDA_PARAM_OUTPUT_AMP_CAP_NUMSTEPS, HDA_PARAM_OUTPUT_AMP_CAP_OFFSET, HDA_PARAM_OUTPUT_AMP_CAP_STEPSIZE, offset, and size.
Referenced by hdaa_dump_nodes().
|
static |
Definition at line 1115 of file hdaa.c.
References hdaa_widget::cap, HDA_PARAM_OUTPUT_AMP_CAP_MUTE_CAP, HDA_PARAM_OUTPUT_AMP_CAP_NUMSTEPS, HDA_PARAM_OUTPUT_AMP_CAP_OFFSET, HDA_PARAM_OUTPUT_AMP_CAP_STEPSIZE, offset, and size.
Referenced by hdaa_sysctl_caps().
|
static |
Definition at line 5623 of file hdaa.c.
References dev, HDA_PARAM_SUPP_PCM_SIZE_RATE_11KHZ, HDA_PARAM_SUPP_PCM_SIZE_RATE_16BIT, HDA_PARAM_SUPP_PCM_SIZE_RATE_16KHZ, HDA_PARAM_SUPP_PCM_SIZE_RATE_176KHZ, HDA_PARAM_SUPP_PCM_SIZE_RATE_192KHZ, HDA_PARAM_SUPP_PCM_SIZE_RATE_20BIT, HDA_PARAM_SUPP_PCM_SIZE_RATE_22KHZ, HDA_PARAM_SUPP_PCM_SIZE_RATE_24BIT, HDA_PARAM_SUPP_PCM_SIZE_RATE_32BIT, HDA_PARAM_SUPP_PCM_SIZE_RATE_32KHZ, HDA_PARAM_SUPP_PCM_SIZE_RATE_44KHZ, HDA_PARAM_SUPP_PCM_SIZE_RATE_88KHZ, HDA_PARAM_SUPP_PCM_SIZE_RATE_8BIT, HDA_PARAM_SUPP_PCM_SIZE_RATE_8KHZ, HDA_PARAM_SUPP_PCM_SIZE_RATE_96KHZ, HDA_PARAM_SUPP_STREAM_FORMATS_AC3, HDA_PARAM_SUPP_STREAM_FORMATS_FLOAT32, and HDA_PARAM_SUPP_STREAM_FORMATS_PCM.
Referenced by hdaa_dump_adc(), hdaa_dump_dac(), and hdaa_dump_nodes().
|
static |
Definition at line 981 of file hdaa.c.
References hdaa_widget::cap, HDA_PARAM_SUPP_PCM_SIZE_RATE_11KHZ, HDA_PARAM_SUPP_PCM_SIZE_RATE_16BIT, HDA_PARAM_SUPP_PCM_SIZE_RATE_16KHZ, HDA_PARAM_SUPP_PCM_SIZE_RATE_176KHZ, HDA_PARAM_SUPP_PCM_SIZE_RATE_192KHZ, HDA_PARAM_SUPP_PCM_SIZE_RATE_20BIT, HDA_PARAM_SUPP_PCM_SIZE_RATE_22KHZ, HDA_PARAM_SUPP_PCM_SIZE_RATE_24BIT, HDA_PARAM_SUPP_PCM_SIZE_RATE_32BIT, HDA_PARAM_SUPP_PCM_SIZE_RATE_32KHZ, HDA_PARAM_SUPP_PCM_SIZE_RATE_44KHZ, HDA_PARAM_SUPP_PCM_SIZE_RATE_88KHZ, HDA_PARAM_SUPP_PCM_SIZE_RATE_8BIT, HDA_PARAM_SUPP_PCM_SIZE_RATE_8KHZ, HDA_PARAM_SUPP_PCM_SIZE_RATE_96KHZ, HDA_PARAM_SUPP_STREAM_FORMATS_AC3, HDA_PARAM_SUPP_STREAM_FORMATS_FLOAT32, and HDA_PARAM_SUPP_STREAM_FORMATS_PCM.
Referenced by hdaa_sysctl_caps().
|
static |
Definition at line 5552 of file hdaa.c.
References hdaa_widget::bindas, buf, hdaa_pcm_devinfo::dev, hdaa_pcm_devinfo::devinfo, devinfo, hdaa_audio_ctl::dir, hdaa_widget::enable, hdaa_audio_ctl::enable, hdaa_audio_ctl_each(), hdaa_audio_ctl_ossmixer_mask2allname(), HDAA_CTL_IN, hdaa_audio_ctl::index, hdaa_pcm_devinfo::index, hdaa_pcm_devinfo::maxamp, MAXQDB, hdaa_pcm_devinfo::minamp, MINQDB, hdaa_audio_ctl::mute, hdaa_audio_ctl::ndir, hdaa_widget::nid, hdaa_audio_ctl::ossmask, hdaa_pcm_devinfo::ossmask, hdaa_pcm_devinfo::playas, hdaa_pcm_devinfo::recas, hdaa_audio_ctl::step, and hdaa_audio_ctl::widget.
Referenced by hdaa_pcm_attach().
|
static |
Definition at line 5942 of file hdaa.c.
References hdaa_pcm_devinfo::dev, hdaa_pcm_devinfo::devinfo, devinfo, hdaa_widget::enable, hdaa_dump_audio_formats(), hdaa_dump_dst_nid(), hdaa_widget_get(), hdaa_audio_as::pins, and hdaa_pcm_devinfo::playas.
Referenced by hdaa_pcm_attach().
|
static |
Definition at line 5895 of file hdaa.c.
References hdaa_widget::bindas, buf, hdaa_widget::conns, hdaa_widget::connsenable, hdaa_pcm_devinfo::dev, hdaa_pcm_devinfo::devinfo, devinfo, hdaa_widget::enable, HDA_PARSE_MAXDEPTH, hdaa_audio_ctl_ossmixer_mask2allname(), hdaa_dump_dst_nid(), hdaa_widget_get(), hdaa_widget::name, hdaa_widget::nconns, hdaa_widget::nid, hdaa_widget::ossdev, and hdaa_widget::ossmask.
Referenced by hdaa_dump_adc(), hdaa_dump_dac(), hdaa_dump_dst_nid(), and hdaa_dump_mix().
|
static |
Definition at line 2841 of file hdaa.c.
References data, dev, devinfo, HDA_CMD_GET_GPI_DATA, HDA_CMD_GET_GPI_STICKY_MASK, HDA_CMD_GET_GPI_UNSOLICITED_ENABLE_MASK, HDA_CMD_GET_GPI_WAKE_ENABLE_MASK, hda_command, and HDA_PARAM_GPIO_COUNT_NUM_GPI.
Referenced by hdaa_audio_parse(), and hdaa_pindump().
|
static |
Definition at line 2867 of file hdaa.c.
References data, dev, devinfo, dir, enable, HDA_CMD_GET_GPIO_DATA, HDA_CMD_GET_GPIO_DIRECTION, HDA_CMD_GET_GPIO_ENABLE_MASK, HDA_CMD_GET_GPIO_STICKY_MASK, HDA_CMD_GET_GPIO_UNSOLICITED_ENABLE_MASK, HDA_CMD_GET_GPIO_WAKE_ENABLE_MASK, hda_command, and HDA_PARAM_GPIO_COUNT_NUM_GPIO.
Referenced by hdaa_audio_parse(), hdaa_gpio_commit(), and hdaa_pindump().
|
static |
Definition at line 2905 of file hdaa.c.
References data, dev, devinfo, HDA_CMD_GET_GPO_DATA, hda_command, and HDA_PARAM_GPIO_COUNT_NUM_GPO.
Referenced by hdaa_audio_parse(), hdaa_gpo_commit(), and hdaa_pindump().
|
static |
Definition at line 6020 of file hdaa.c.
References hdaa_widget::bindas, hdaa_pcm_devinfo::dev, hdaa_pcm_devinfo::devinfo, devinfo, hdaa_widget::enable, hdaa_dump_dst_nid(), hdaa_widget_get(), hdaa_widget::ossdev, and hdaa_pcm_devinfo::recas.
Referenced by hdaa_pcm_attach().
|
static |
Definition at line 5800 of file hdaa.c.
References hdaa_widget::bindas, hdaa_widget::bindseqmask, buf, hdaa_widget::conns, hdaa_widget::connsenable, hdaa_widget::conv, devinfo, hdaa_widget::eapdbtl, hdaa_widget::enable, HDA_INVALID, HDA_PARAM_AUDIO_WIDGET_CAP_CC, HDA_PARAM_AUDIO_WIDGET_CAP_DIGITAL, HDA_PARAM_AUDIO_WIDGET_CAP_IN_AMP, HDA_PARAM_AUDIO_WIDGET_CAP_LR_SWAP, HDA_PARAM_AUDIO_WIDGET_CAP_OUT_AMP, HDA_PARAM_AUDIO_WIDGET_CAP_POWER_CTRL, HDA_PARAM_AUDIO_WIDGET_CAP_PROC_WIDGET, HDA_PARAM_AUDIO_WIDGET_CAP_STRIPE, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_AUDIO_INPUT, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_AUDIO_MIXER, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_AUDIO_OUTPUT, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_PIN_COMPLEX, HDA_PARAM_AUDIO_WIDGET_CAP_UNSOL_CAP, hdaa_audio_ctl_ossmixer_mask2allname(), hdaa_dump_amp(), hdaa_dump_audio_formats(), hdaa_dump_pin(), hdaa_widget_get(), hdaa_widget::inamp_cap, hdaa_widget::name, hdaa_widget::nconns, hdaa_widget::nid, hdaa_widget::ossdev, hdaa_widget::ossmask, ossnames, hdaa_widget::outamp_cap, hdaa_widget::param, hdaa_widget::selconn, hdaa_widget::stripecap, hdaa_widget::supp_pcm_size_rate, hdaa_widget::supp_stream_formats, hdaa_widget::type, hdaa_widget::waspin, hdaa_widget::wclass, and hdaa_widget::widget_cap.
|
static |
Definition at line 5678 of file hdaa.c.
References hdaa_widget::cap, hdaa_widget::config, hdaa_widget::ctrl, hdaa_devinfo::dev, hdaa_widget::devinfo, HDA_CMD_SET_PIN_WIDGET_CTRL_HPHN_ENABLE, HDA_CMD_SET_PIN_WIDGET_CTRL_IN_ENABLE, HDA_CMD_SET_PIN_WIDGET_CTRL_OUT_ENABLE, HDA_CMD_SET_PIN_WIDGET_CTRL_VREF_ENABLE_MASK, HDA_PARAM_AUDIO_WIDGET_CAP_DIGITAL, HDA_PARAM_PIN_CAP_BALANCED_IO_PINS, HDA_PARAM_PIN_CAP_DP, HDA_PARAM_PIN_CAP_EAPD_CAP, HDA_PARAM_PIN_CAP_HBR, HDA_PARAM_PIN_CAP_HDMI, HDA_PARAM_PIN_CAP_HEADPHONE_CAP, HDA_PARAM_PIN_CAP_IMP_SENSE_CAP, HDA_PARAM_PIN_CAP_INPUT_CAP, HDA_PARAM_PIN_CAP_OUTPUT_CAP, HDA_PARAM_PIN_CAP_PRESENCE_DETECT_CAP, HDA_PARAM_PIN_CAP_TRIGGER_REQD, HDA_PARAM_PIN_CAP_VREF_CTRL, HDA_PARAM_PIN_CAP_VREF_CTRL_100, HDA_PARAM_PIN_CAP_VREF_CTRL_50, HDA_PARAM_PIN_CAP_VREF_CTRL_80, HDA_PARAM_PIN_CAP_VREF_CTRL_GROUND, HDA_PARAM_PIN_CAP_VREF_CTRL_HIZ, hdaa_widget::param, hdaa_widget::pin, hdaa_widget::wclass, and hdaa_widget::widget_cap.
Referenced by hdaa_dump_nodes().
|
static |
Definition at line 5747 of file hdaa.c.
References hdaa_devinfo::dev, hdaa_widget::devinfo, hdaa_widget::enable, HDA_COLORS, HDA_CONFIG_DEFAULTCONF_ASSOCIATION, HDA_CONFIG_DEFAULTCONF_COLOR, HDA_CONFIG_DEFAULTCONF_CONNECTION_TYPE, HDA_CONFIG_DEFAULTCONF_CONNECTIVITY, HDA_CONFIG_DEFAULTCONF_DEVICE, HDA_CONFIG_DEFAULTCONF_LOCATION, HDA_CONFIG_DEFAULTCONF_MISC, HDA_CONFIG_DEFAULTCONF_SEQUENCE, HDA_CONNECTORS, HDA_CONNS, HDA_DEVS, HDA_LOCS, and hdaa_widget::nid.
Referenced by hdaa_dump_pin_configs(), and hdaa_pindump().
|
static |
Definition at line 5765 of file hdaa.c.
References hdaa_widget::config, devinfo, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_PIN_COMPLEX, hdaa_dump_pin_config(), hdaa_widget_get(), hdaa_widget::pin, hdaa_widget::type, and hdaa_widget::wclass.
Referenced by hdaa_attach(), and hdaa_configure().
|
static |
Definition at line 1036 of file hdaa.c.
References hdaa_widget::cap, hdaa_widget::config, hdaa_widget::ctrl, HDA_CMD_SET_PIN_WIDGET_CTRL_HPHN_ENABLE, HDA_CMD_SET_PIN_WIDGET_CTRL_IN_ENABLE, HDA_CMD_SET_PIN_WIDGET_CTRL_OUT_ENABLE, HDA_CMD_SET_PIN_WIDGET_CTRL_VREF_ENABLE_MASK, HDA_COLORS, HDA_CONFIG_DEFAULTCONF_ASSOCIATION, HDA_CONFIG_DEFAULTCONF_COLOR, HDA_CONFIG_DEFAULTCONF_CONNECTION_TYPE, HDA_CONFIG_DEFAULTCONF_CONNECTIVITY, HDA_CONFIG_DEFAULTCONF_DEVICE, HDA_CONFIG_DEFAULTCONF_LOCATION, HDA_CONFIG_DEFAULTCONF_MISC, HDA_CONFIG_DEFAULTCONF_SEQUENCE, HDA_CONNECTORS, HDA_CONNS, HDA_DEVS, HDA_LOCS, HDA_PARAM_AUDIO_WIDGET_CAP_DIGITAL, HDA_PARAM_PIN_CAP_BALANCED_IO_PINS, HDA_PARAM_PIN_CAP_DP, HDA_PARAM_PIN_CAP_EAPD_CAP, HDA_PARAM_PIN_CAP_HBR, HDA_PARAM_PIN_CAP_HDMI, HDA_PARAM_PIN_CAP_HEADPHONE_CAP, HDA_PARAM_PIN_CAP_IMP_SENSE_CAP, HDA_PARAM_PIN_CAP_INPUT_CAP, HDA_PARAM_PIN_CAP_OUTPUT_CAP, HDA_PARAM_PIN_CAP_PRESENCE_DETECT_CAP, HDA_PARAM_PIN_CAP_TRIGGER_REQD, HDA_PARAM_PIN_CAP_VREF_CTRL, HDA_PARAM_PIN_CAP_VREF_CTRL_100, HDA_PARAM_PIN_CAP_VREF_CTRL_50, HDA_PARAM_PIN_CAP_VREF_CTRL_80, HDA_PARAM_PIN_CAP_VREF_CTRL_GROUND, HDA_PARAM_PIN_CAP_VREF_CTRL_HIZ, hdaa_widget::param, hdaa_widget::pin, hdaa_widget::wclass, and hdaa_widget::widget_cap.
Referenced by hdaa_sysctl_caps().
|
static |
Definition at line 603 of file hdaa.c.
References dev, hdaa_widget::devinfo, devinfo, hdaa_widget::eld, hdaa_widget::eld_len, fmt, HDA_HDMI_CODING_TYPE_AACLC, HDA_HDMI_CODING_TYPE_AC3, HDA_HDMI_CODING_TYPE_ATRAC, HDA_HDMI_CODING_TYPE_DTS, HDA_HDMI_CODING_TYPE_LPCM, HDA_HDMI_CODING_TYPE_MP3, HDA_HDMI_CODING_TYPE_MPEG1, HDA_HDMI_CODING_TYPE_MPEG2, HDA_HDMI_CODING_TYPE_REF_CTX, HDA_HDMI_CODING_TYPE_WMAPRO, HDA_HDMI_CODING_TYPES, len, and hdaa_widget::nid.
Referenced by hdaa_eld_handler().
|
static |
Definition at line 684 of file hdaa.c.
References hdaa_widget::bindas, hdaa_widget::cap, hdaa_widget::config, hdaa_widget::devinfo, devinfo, hdaa_widget::eld, hdaa_widget::eld_len, hdaa_widget::enable, free, HDA_BOOTVERBOSE, HDA_CMD_GET_HDMI_DIP_SIZE, HDA_CMD_GET_HDMI_ELDD, HDA_CMD_GET_PIN_SENSE, HDA_CMD_GET_PIN_SENSE_ELD_VALID, HDA_CMD_GET_PIN_SENSE_PRESENCE_DETECT, hda_command, HDA_CONFIG_DEFAULTCONF_MISC, HDA_INVALID, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_PIN_COMPLEX, HDA_PARAM_PIN_CAP_PRESENCE_DETECT_CAP, hdaa_channels_handler(), hdaa_eld_dump(), hdaa_widget::nid, hdaa_widget::pin, hdaa_widget::type, and hdaa_widget::wclass.
Referenced by hdaa_sense_init(), and hdaa_unsol_intr().
|
static |
Definition at line 5130 of file hdaa.c.
References devinfo, HDA_BOOTVERBOSE, HDA_CMD_GET_GPIO_DATA, HDA_CMD_GET_GPIO_DIRECTION, HDA_CMD_GET_GPIO_ENABLE_MASK, HDA_CMD_SET_GPIO_DATA, HDA_CMD_SET_GPIO_DIRECTION, HDA_CMD_SET_GPIO_ENABLE_MASK, hda_command, HDA_PARAM_GPIO_COUNT_NUM_GPIO, hdaa_dump_gpio(), HDAA_GPIO_CLEAR, HDAA_GPIO_DISABLE, HDAA_GPIO_INPUT, HDAA_GPIO_MASK, and HDAA_GPIO_SET.
Referenced by hdaa_audio_commit(), and hdaa_sysctl_gpio_config().
uint32_t hdaa_gpio_patch | ( | uint32_t | gpio, |
const char * | str | ||
) |
Definition at line 915 of file hdaa.c.
References buf, gpio, HDA_GPIO_ACTIONS, HDAA_GPIO_SHIFT, key, and value.
Referenced by hdaa_local_patch(), hdaa_sysctl_gpio_config(), and hdaa_sysctl_gpo_config().
|
static |
Definition at line 5179 of file hdaa.c.
References devinfo, HDA_BOOTVERBOSE, HDA_CMD_GET_GPO_DATA, HDA_CMD_SET_GPO_DATA, hda_command, HDA_PARAM_GPIO_COUNT_NUM_GPO, hdaa_dump_gpo(), HDAA_GPIO_CLEAR, HDAA_GPIO_MASK, and HDAA_GPIO_SET.
Referenced by hdaa_audio_commit(), and hdaa_sysctl_gpo_config().
|
static |
Definition at line 380 of file hdaa.c.
References hdaa_widget::bindas, hdaa_widget::connected, hdaa_widget::ctrl, hdaa_pcm_devinfo::dev, hdaa_widget::devinfo, devinfo, hdaa_audio_ctl::forcemute, HDA_BOOTVERBOSE, HDA_CMD_SET_PIN_WIDGET_CTRL, HDA_CMD_SET_PIN_WIDGET_CTRL_OUT_ENABLE, hda_command, HDAA_AMP_MUTE_DEFAULT, HDAA_AMP_VOL_DEFAULT, hdaa_audio_ctl_amp_get(), hdaa_audio_ctl_amp_set(), HDAA_CTL_IN, hdaa_widget_get(), hdaa_audio_ctl::mute, hdaa_widget::nid, hdaa_audio_as::pdevinfo, hdaa_widget::pin, hdaa_audio_as::pins, val, and hdaa_widget::wclass.
Referenced by hdaa_presence_handler().
|
static |
Definition at line 577 of file hdaa.c.
References devinfo, hdaa_widget::enable, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_PIN_COMPLEX, hdaa_jack_poll_callback(), hdaa_lock, hdaa_presence_handler(), hdaa_unlock, hdaa_widget_get(), and hdaa_widget::type.
Referenced by hdaa_jack_poll_callback(), and hdaa_sense_init().
|
static |
Definition at line 1322 of file hdaa.c.
References devinfo, HDA_BOOTHVERBOSE, HDA_GPIO_ACTIONS, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_PIN_COMPLEX, hdaa_config_fetch(), HDAA_GPIO_MASK, hdaa_gpio_patch(), HDAA_GPIO_SHIFT, hdaa_local_patch_pin(), hdaa_widget_get(), quirks_off, quirks_on, and hdaa_widget::type.
Referenced by hdaa_configure().
|
static |
Definition at line 942 of file hdaa.c.
References buf, hdaa_widget::config, hdaa_devinfo::dev, dev, hdaa_widget::devinfo, HDA_BOOTVERBOSE, hdaa_widget_pin_patch(), hdaa_widget::newconf, hdaa_widget::nid, hdaa_widget::pin, and hdaa_widget::wclass.
Referenced by hdaa_local_patch().
|
static |
Definition at line 7007 of file hdaa.c.
References hdaa_pcm_devinfo::autorecsrc, hdaa_pcm_devinfo::chan_blkcnt, hdaa_pcm_devinfo::chan_size, hdaa_audio_as::chans, dev, hdaa_pcm_devinfo::devinfo, devinfo, HDA_BDL_DEFAULT, HDA_BDL_MAX, HDA_BDL_MIN, HDA_BLK_ALIGN, HDA_BLK_MIN, HDA_BOOTHVERBOSE, HDA_BOOTVERBOSE, HDA_BUFSZ_DEFAULT, HDA_BUFSZ_MAX, HDA_BUFSZ_MIN, hdaa_audio_ctl_set_defaults(), hdaa_autorecsrc_handler(), hdaa_channels_handler(), hdaa_dump_adc(), hdaa_dump_ctls(), hdaa_dump_dac(), hdaa_dump_mix(), hdaa_lock, hdaa_sysctl_32bit(), hdaa_unlock, hdaa_pcm_devinfo::mixer, mixer_init(), hdaa_audio_as::num_chans, pcm_addchan(), pcm_getbuffersize(), pcm_getflags(), PCM_KLDSTRING, pcm_register(), pcm_setflags(), pcm_setstatus(), PCMDIR_PLAY, PCMDIR_REC, snddev_info::play_sysctl_tree, hdaa_pcm_devinfo::playas, snddev_info::rec_sysctl_ctx, snddev_info::rec_sysctl_tree, hdaa_pcm_devinfo::recas, hdaa_pcm_devinfo::registered, SD_F_MPSAFE, SND_STATUSLEN, and snddev_info::status.
|
static |
Definition at line 7131 of file hdaa.c.
References dev, pcm_unregister(), and hdaa_pcm_devinfo::registered.
|
static |
Definition at line 6940 of file hdaa.c.
References buf, dev, hdaa_pcm_devinfo::devinfo, devinfo, hdaa_pcm_devinfo::digital, HDA_DEVS, HDA_LOCS, hdaa_chan_formula(), hdaa_chan_type(), hdaa_pcm_devinfo::playas, and hdaa_pcm_devinfo::recas.
|
static |
Definition at line 5268 of file hdaa.c.
References hdaa_chan::as, hdaa_chan::asindex, hdaa_chan::bit16, hdaa_chan::bit32, hdaa_widget::cap, hdaa_chan::caps, hdaa_chan::channels, hdaa_widget::conv, hdaa_audio_as::dacs, hdaa_chan::devinfo, devinfo, hdaa_widget::enable, hdaa_audio_as::fakeredir, hdaa_chan::fmtlist, pcmchan_caps::fmtlist, HDA_PARAM_AUDIO_WIDGET_CAP_CC, HDA_PARAM_AUDIO_WIDGET_CAP_DIGITAL, HDA_PARAM_SUPP_PCM_SIZE_RATE_11KHZ, HDA_PARAM_SUPP_PCM_SIZE_RATE_16BIT, HDA_PARAM_SUPP_PCM_SIZE_RATE_16KHZ, HDA_PARAM_SUPP_PCM_SIZE_RATE_176KHZ, HDA_PARAM_SUPP_PCM_SIZE_RATE_192KHZ, HDA_PARAM_SUPP_PCM_SIZE_RATE_20BIT, HDA_PARAM_SUPP_PCM_SIZE_RATE_22KHZ, HDA_PARAM_SUPP_PCM_SIZE_RATE_24BIT, HDA_PARAM_SUPP_PCM_SIZE_RATE_32BIT, HDA_PARAM_SUPP_PCM_SIZE_RATE_32KHZ, HDA_PARAM_SUPP_PCM_SIZE_RATE_44KHZ, HDA_PARAM_SUPP_PCM_SIZE_RATE_88KHZ, HDA_PARAM_SUPP_PCM_SIZE_RATE_8BIT, HDA_PARAM_SUPP_PCM_SIZE_RATE_8KHZ, HDA_PARAM_SUPP_PCM_SIZE_RATE_96KHZ, HDA_PARAM_SUPP_STREAM_FORMATS_AC3, HDA_PARAM_SUPP_STREAM_FORMATS_AC3_MASK, HDA_PARAM_SUPP_STREAM_FORMATS_PCM, hdaa_caps, HDAA_QUIRK_FORCESTEREO, hdaa_widget_get(), hdaa_audio_as::hpredir, hdaa_chan::io, pcmchan_caps::maxspeed, pcmchan_caps::minspeed, hdaa_audio_as::mixed, hdaa_widget::param, hdaa_chan::pcmrates, hdaa_audio_as::pinset, SND_FORMAT, hdaa_widget::stripecap, hdaa_chan::stripecap, hdaa_widget::supp_pcm_size_rate, hdaa_chan::supp_pcm_size_rate, hdaa_widget::supp_stream_formats, hdaa_chan::supp_stream_formats, hdaa_widget::wclass, and hdaa_widget::widget_cap.
Referenced by hdaa_audio_bind_as().
|
static |
Definition at line 6047 of file hdaa.c.
References hdaa_widget::cap, hdaa_widget::config, dev, devinfo, HDA_CMD_GET_PIN_SENSE, HDA_CMD_GET_PIN_SENSE_ELD_VALID, HDA_CMD_GET_PIN_SENSE_PRESENCE_DETECT, HDA_CMD_SET_PIN_SENSE, hda_command, HDA_PARAM_AUDIO_WIDGET_CAP_DIGITAL, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_PIN_COMPLEX, HDA_PARAM_GPIO_COUNT_GPI_UNSOL, HDA_PARAM_GPIO_COUNT_GPI_WAKE, HDA_PARAM_GPIO_COUNT_NUM_GPI, HDA_PARAM_GPIO_COUNT_NUM_GPIO, HDA_PARAM_GPIO_COUNT_NUM_GPO, HDA_PARAM_PIN_CAP_EAPD_CAP, HDA_PARAM_PIN_CAP_HEADPHONE_CAP, HDA_PARAM_PIN_CAP_IMP_SENSE_CAP, HDA_PARAM_PIN_CAP_INPUT_CAP, HDA_PARAM_PIN_CAP_OUTPUT_CAP, HDA_PARAM_PIN_CAP_PRESENCE_DETECT_CAP, HDA_PARAM_PIN_CAP_TRIGGER_REQD, HDA_PARAM_PIN_CAP_VREF_CTRL, hdaa_dump_gpi(), hdaa_dump_gpio(), hdaa_dump_gpo(), hdaa_dump_pin_config(), hdaa_widget_get(), hdaa_widget::nid, hdaa_widget::param, hdaa_widget::pin, hdaa_widget::type, hdaa_widget::wclass, and hdaa_widget::widget_cap.
|
static |
Definition at line 5250 of file hdaa.c.
References devinfo, HDA_CMD_POWER_STATE_D0, HDA_CMD_SET_POWER_STATE, and hda_command.
Referenced by hdaa_attach(), and hdaa_resume().
|
static |
Definition at line 5472 of file hdaa.c.
References hdaa_audio_as::chans, devinfo, hdaa_audio_as::digital, dir, enable, HDAA_CTL_IN, k, max, hdaa_audio_as::num_chans, and hdaa_audio_as::pdevinfo.
Referenced by hdaa_configure().
|
static |
Definition at line 533 of file hdaa.c.
References hdaa_widget::bindas, hdaa_widget::cap, hdaa_widget::config, hdaa_widget::connected, hdaa_widget::devinfo, devinfo, hdaa_audio_as::dir, hdaa_widget::enable, HDA_BOOTVERBOSE, HDA_CMD_GET_PIN_SENSE, HDA_CMD_GET_PIN_SENSE_PRESENCE_DETECT, hda_command, HDA_CONFIG_DEFAULTCONF_MISC, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_PIN_COMPLEX, HDA_PARAM_PIN_CAP_PRESENCE_DETECT_CAP, hdaa_autorecsrc_handler(), hdaa_channels_handler(), HDAA_CTL_IN, hdaa_hpredir_handler(), HDAA_QUIRK_SENSEINV, hdaa_audio_as::hpredir, hdaa_widget::nid, hdaa_widget::pin, hdaa_audio_as::pins, hdaa_widget::type, and hdaa_widget::wclass.
Referenced by hdaa_jack_poll_callback(), hdaa_sense_init(), and hdaa_unsol_intr().
|
static |
Definition at line 6711 of file hdaa.c.
References child, dev, devinfo, hdaa_audio_as::pdevinfo, hdaa_audio_as::pins, hdaa_pcm_devinfo::playas, and hdaa_pcm_devinfo::recas.
|
static |
Definition at line 6580 of file hdaa.c.
References buf, dev, and HDA_PARAM_FCT_GRP_TYPE_NODE_TYPE_AUDIO.
|
static |
Definition at line 6524 of file hdaa.c.
References hdaa_pcm_devinfo::dev, dev, devinfo, HDA_BOOTHVERBOSE, hdaa_audio_commit(), hdaa_channel_start(), HDAA_CHN_SUSPEND, hdaa_lock, hdaa_patch_direct(), hdaa_powerup(), hdaa_sense_init(), hdaa_unlock, and mixer_reinit().
|
static |
Definition at line 798 of file hdaa.c.
References devinfo, hdaa_widget::enable, HDA_CMD_SET_UNSOLICITED_RESPONSE, hda_command, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_PIN_COMPLEX, hdaa_widget_get(), hdaa_widget::nid, hdaa_widget::type, and hdaa_widget::unsol.
Referenced by hdaa_unconfigure().
|
static |
Definition at line 745 of file hdaa.c.
References hdaa_widget::bindas, hdaa_widget::cap, hdaa_widget::config, devinfo, hdaa_widget::enable, HDA_BOOTVERBOSE, HDA_CMD_SET_UNSOLICITED_RESPONSE, HDA_CMD_SET_UNSOLICITED_RESPONSE_ENABLE, hda_command, HDA_CONFIG_DEFAULTCONF_MISC, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_PIN_COMPLEX, HDA_PARAM_AUDIO_WIDGET_CAP_UNSOL_CAP, HDA_PARAM_PIN_CAP_DP, HDA_PARAM_PIN_CAP_HDMI, HDA_PARAM_PIN_CAP_PRESENCE_DETECT_CAP, hdaa_eld_handler(), hdaa_jack_poll_callback(), hdaa_presence_handler(), hdaa_widget_get(), hdaa_audio_as::hpredir, hdaa_widget::nid, hdaa_widget::param, hdaa_widget::pin, hdaa_audio_as::pins, hdaa_widget::type, hdaa_widget::unsol, hdaa_widget::wclass, and hdaa_widget::widget_cap.
Referenced by hdaa_configure(), and hdaa_resume().
|
static |
Definition at line 1803 of file hdaa.c.
References AFMT_CHANNEL, hdaa_chan::bit16, hdaa_chan::bit32, fmt, hdaa_chan::fmt, hda_rate_tab, HDA_RATE_TAB_LEN, hdaa_chan::spd, and valid.
Referenced by hdaa_audio_setup(), and hdaa_channel_start().
|
static |
Definition at line 6780 of file hdaa.c.
References hdaa_chan::c, chn_intr(), dev, devinfo, hdaa_chan::dir, dir, hdaa_chan::flags, HDAA_CHN_RUNNING, hdaa_lock, hdaa_unlock, PCMDIR_PLAY, PCMDIR_REC, hdaa_chan::sid, and stream.
|
static |
Definition at line 6488 of file hdaa.c.
References dev, devinfo, HDA_BOOTHVERBOSE, HDA_CMD_POWER_STATE_D3, HDA_CMD_SET_POWER_STATE, hda_command, hdaa_channel_stop(), HDAA_CHN_RUNNING, HDAA_CHN_SUSPEND, hdaa_lock, and hdaa_unlock.
|
static |
Definition at line 6910 of file hdaa.c.
References hdaa_audio_as::chans, hdaa_pcm_devinfo::devinfo, devinfo, error, HDA_PARAM_SUPP_PCM_SIZE_RATE_20BIT, HDA_PARAM_SUPP_PCM_SIZE_RATE_24BIT, HDA_PARAM_SUPP_PCM_SIZE_RATE_32BIT, hdaa_audio_as::num_chans, hdaa_audio_as::pdevinfo, req, and val.
Referenced by hdaa_pcm_attach().
|
static |
Definition at line 1132 of file hdaa.c.
References hdaa_widget::bindas, hdaa_widget::bindseqmask, buf, hdaa_widget::conns, hdaa_widget::connsenable, hdaa_widget::conv, hdaa_widget::devinfo, devinfo, hdaa_widget::eapdbtl, hdaa_widget::enable, error, HDA_CMD_SET_EAPD_BTL_ENABLE_BTL, HDA_CMD_SET_EAPD_BTL_ENABLE_EAPD, HDA_CMD_SET_EAPD_BTL_ENABLE_LR_SWAP, HDA_INVALID, HDA_PARAM_AUDIO_WIDGET_CAP_CC, HDA_PARAM_AUDIO_WIDGET_CAP_DIGITAL, HDA_PARAM_AUDIO_WIDGET_CAP_IN_AMP, HDA_PARAM_AUDIO_WIDGET_CAP_LR_SWAP, HDA_PARAM_AUDIO_WIDGET_CAP_OUT_AMP, HDA_PARAM_AUDIO_WIDGET_CAP_POWER_CTRL, HDA_PARAM_AUDIO_WIDGET_CAP_PROC_WIDGET, HDA_PARAM_AUDIO_WIDGET_CAP_STRIPE, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_AUDIO_INPUT, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_AUDIO_MIXER, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_AUDIO_OUTPUT, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_PIN_COMPLEX, HDA_PARAM_AUDIO_WIDGET_CAP_UNSOL_CAP, hdaa_audio_ctl_ossmixer_mask2allname(), hdaa_dump_amp_sb(), hdaa_dump_audio_formats_sb(), hdaa_dump_pin_sb(), hdaa_widget_get(), hdaa_widget::inamp_cap, hdaa_widget::name, hdaa_widget::nconns, hdaa_widget::ossdev, hdaa_widget::ossmask, ossnames, hdaa_widget::outamp_cap, hdaa_widget::param, req, hdaa_widget::selconn, hdaa_widget::stripecap, hdaa_widget::supp_pcm_size_rate, hdaa_widget::supp_stream_formats, hdaa_widget::type, hdaa_widget::waspin, hdaa_widget::wclass, and hdaa_widget::widget_cap.
Referenced by hdaa_widget_parse().
|
static |
Definition at line 1226 of file hdaa.c.
References buf, error, HDA_COLORS, HDA_CONFIG_DEFAULTCONF_ASSOCIATION, HDA_CONFIG_DEFAULTCONF_COLOR, HDA_CONFIG_DEFAULTCONF_CONNECTION_TYPE, HDA_CONFIG_DEFAULTCONF_CONNECTIVITY, HDA_CONFIG_DEFAULTCONF_DEVICE, HDA_CONFIG_DEFAULTCONF_LOCATION, HDA_CONFIG_DEFAULTCONF_MISC, HDA_CONFIG_DEFAULTCONF_SEQUENCE, HDA_CONNECTORS, HDA_CONNS, HDA_DEVS, HDA_LOCS, hdaa_widget_pin_patch(), and req.
Referenced by hdaa_widget_parse().
|
static |
Definition at line 6306 of file hdaa.c.
References buf, data, dev, devinfo, HDA_CMD_GET_GPI_DATA, hda_command, HDA_PARAM_GPIO_COUNT_NUM_GPI, hdaa_lock, hdaa_unlock, n, and req.
Referenced by hdaa_attach().
|
static |
Definition at line 6364 of file hdaa.c.
References buf, devinfo, error, gpio, HDA_GPIO_ACTIONS, HDA_PARAM_GPIO_COUNT_NUM_GPIO, hdaa_gpio_commit(), HDAA_GPIO_MASK, hdaa_gpio_patch(), HDAA_GPIO_SHIFT, hdaa_lock, hdaa_unlock, n, and req.
Referenced by hdaa_attach().
|
static |
Definition at line 6330 of file hdaa.c.
References buf, data, dev, devinfo, dir, enable, HDA_CMD_GET_GPIO_DATA, HDA_CMD_GET_GPIO_DIRECTION, HDA_CMD_GET_GPIO_ENABLE_MASK, hda_command, HDA_PARAM_GPIO_COUNT_NUM_GPIO, hdaa_lock, hdaa_unlock, n, and req.
Referenced by hdaa_attach().
|
static |
Definition at line 6418 of file hdaa.c.
References buf, devinfo, error, hdaa_devinfo::gpo, HDA_GPIO_ACTIONS, HDA_PARAM_GPIO_COUNT_NUM_GPO, HDAA_GPIO_MASK, hdaa_gpio_patch(), HDAA_GPIO_SHIFT, hdaa_gpo_commit(), hdaa_lock, hdaa_unlock, n, and req.
Referenced by hdaa_attach().
|
static |
Definition at line 6394 of file hdaa.c.
References buf, data, dev, devinfo, HDA_CMD_GET_GPO_DATA, hda_command, HDA_PARAM_GPIO_COUNT_NUM_GPO, hdaa_lock, hdaa_unlock, n, and req.
Referenced by hdaa_attach().
|
static |
Definition at line 1295 of file hdaa.c.
References buf, error, hdaa_config_fetch(), hdaa_quirks_tab, n, quirks, quirks_off, req, and value.
Referenced by hdaa_attach().
|
static |
Definition at line 6448 of file hdaa.c.
References dev, devinfo, error, HDA_BOOTHVERBOSE, hdaa_configure(), hdaa_lock, hdaa_unconfigure(), hdaa_unlock, req, and val.
Referenced by hdaa_attach().
|
static |
Definition at line 6260 of file hdaa.c.
References hdaa_widget::bindas, hdaa_widget::bindseqmask, hdaa_widget::config, hdaa_widget::connsenable, dev, devinfo, hdaa_widget::eld, hdaa_widget::eld_len, hdaa_widget::enable, free, HDA_BOOTHVERBOSE, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_PIN_COMPLEX, hdaa_sense_deinit(), hdaa_widget_get(), hdaa_widget::nconns, hdaa_widget::newconf, hdaa_widget::ossdev, hdaa_widget::ossmask, hdaa_widget::pflags, hdaa_widget::pin, hdaa_widget::selconn, hdaa_widget::type, and hdaa_widget::wclass.
Referenced by hdaa_detach(), and hdaa_sysctl_reconfig().
|
static |
Definition at line 6800 of file hdaa.c.
References hdaa_widget::cap, dev, devinfo, hdaa_widget::enable, HDA_BOOTHVERBOSE, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_PIN_COMPLEX, HDA_PARAM_PIN_CAP_DP, HDA_PARAM_PIN_CAP_HDMI, hdaa_eld_handler(), hdaa_presence_handler(), hdaa_widget_get(), hdaa_widget::pin, resp, tag, hdaa_widget::type, hdaa_widget::unsol, and hdaa_widget::wclass.
|
static |
Definition at line 1381 of file hdaa.c.
References CONN_CNID, CONN_RANGE, hdaa_widget::conns, hdaa_widget::connsenable, hdaa_devinfo::dev, hdaa_widget::devinfo, devinfo, hdaa_devinfo::endnode, HDA_BOOTVERBOSE, HDA_CMD_GET_CONN_LIST_ENTRY, HDA_CMD_GET_PARAMETER, hda_command, HDA_PARAM_CONN_LIST_LENGTH, HDA_PARAM_CONN_LIST_LENGTH_LIST_LENGTH, HDA_PARAM_CONN_LIST_LENGTH_LONG_FORM, max, hdaa_widget::nconns, and hdaa_widget::nid.
Referenced by hdaa_widget_parse().
|
static |
Definition at line 1712 of file hdaa.c.
References hdaa_devinfo::dev, hdaa_widget::devinfo, HDA_BOOTHVERBOSE, HDA_CMD_SET_CONNECTION_SELECT_CONTROL, hda_command, index, hdaa_widget::nconns, hdaa_widget::nid, and hdaa_widget::selconn.
Referenced by hdaa_audio_commit(), and hdaa_audio_ctl_recsel_comm().
struct hdaa_widget * hdaa_widget_get | ( | struct hdaa_devinfo * | devinfo, |
nid_t | nid | ||
) |
Definition at line 1639 of file hdaa.c.
References devinfo, and hdaa_widget::nid.
Referenced by hdaa_audio_adcs_equal(), hdaa_audio_adddac(), hdaa_audio_as_parse(), hdaa_audio_assign_mixers(), hdaa_audio_assign_names(), hdaa_audio_ctl_dest_amp(), hdaa_audio_ctl_dest_volume(), hdaa_audio_ctl_dev_volume(), hdaa_audio_ctl_ossmixer_init(), hdaa_audio_ctl_ossmixer_set(), hdaa_audio_ctl_ossmixer_setrecsrc(), hdaa_audio_ctl_parse(), hdaa_audio_ctl_recsel_comm(), hdaa_audio_ctl_source_amp(), hdaa_audio_ctl_source_volume(), hdaa_audio_dacs_equal(), hdaa_audio_disable_crossas(), hdaa_audio_disable_nonaudio(), hdaa_audio_disable_notselected(), hdaa_audio_disable_unas(), hdaa_audio_disable_useless(), hdaa_audio_parse(), hdaa_audio_postprocess(), hdaa_audio_setup(), hdaa_audio_trace_adc(), hdaa_audio_trace_as_extra(), hdaa_audio_trace_as_in(), hdaa_audio_trace_dac(), hdaa_audio_trace_to_out(), hdaa_audio_undo_trace(), hdaa_autorecsrc_handler(), hdaa_chan_type(), hdaa_channel_stop(), hdaa_channels_handler(), hdaa_dump_adc(), hdaa_dump_dac(), hdaa_dump_dst_nid(), hdaa_dump_mix(), hdaa_dump_nodes(), hdaa_dump_pin_configs(), hdaa_hpredir_handler(), hdaa_jack_poll_callback(), hdaa_local_patch(), hdaa_patch(), hdaa_pcmchannel_setup(), hdaa_pindump(), hdaa_sense_deinit(), hdaa_sense_init(), hdaa_sysctl_caps(), hdaa_unconfigure(), and hdaa_unsol_intr().
|
static |
Definition at line 1466 of file hdaa.c.
References buf, hdaa_widget::cap, hdaa_widget::config, hdaa_widget::connected, hdaa_widget::conv, hdaa_widget::ctrl, hdaa_devinfo::dev, dev, hdaa_widget::devinfo, hdaa_widget::eapdbtl, HDA_CMD_GET_CONFIGURATION_DEFAULT, HDA_CMD_GET_EAPD_BTL_ENABLE, HDA_CMD_GET_PARAMETER, HDA_CMD_GET_PIN_WIDGET_CTRL, HDA_CMD_GET_STRIPE_CONTROL, HDA_CMD_SET_EAPD_BTL_ENABLE_EAPD, hda_command, HDA_INVALID, HDA_PARAM_AUDIO_WIDGET_CAP, HDA_PARAM_AUDIO_WIDGET_CAP_AMP_OVR, HDA_PARAM_AUDIO_WIDGET_CAP_FORMAT_OVR, HDA_PARAM_AUDIO_WIDGET_CAP_IN_AMP, HDA_PARAM_AUDIO_WIDGET_CAP_OUT_AMP, HDA_PARAM_AUDIO_WIDGET_CAP_STRIPE, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_AUDIO_INPUT, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_AUDIO_OUTPUT, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_PIN_COMPLEX, HDA_PARAM_INPUT_AMP_CAP, HDA_PARAM_OUTPUT_AMP_CAP, HDA_PARAM_PIN_CAP, HDA_PARAM_PIN_CAP_EAPD_CAP, HDA_PARAM_SUPP_PCM_SIZE_RATE, HDA_PARAM_SUPP_STREAM_FORMATS, hdaa_lock, hdaa_sysctl_caps(), hdaa_sysctl_config(), hdaa_unlock, hdaa_widget_connection_parse(), hdaa_widget::inamp_cap, hdaa_devinfo::inamp_cap, hdaa_widget::newconf, hdaa_widget::nid, hdaa_widget::original, hdaa_widget::outamp_cap, hdaa_devinfo::outamp_cap, hdaa_widget::param, hdaa_widget::pin, hdaa_widget::stripecap, hdaa_widget::supp_pcm_size_rate, hdaa_devinfo::supp_pcm_size_rate, hdaa_widget::supp_stream_formats, hdaa_devinfo::supp_stream_formats, hdaa_widget::type, hdaa_widget::unsol, hdaa_widget::wclass, and hdaa_widget::widget_cap.
Referenced by hdaa_audio_parse().
uint32_t hdaa_widget_pin_patch | ( | uint32_t | config, |
const char * | str | ||
) |
Definition at line 821 of file hdaa.c.
References buf, hdaa_widget::config, HDA_COLORS, HDA_CONFIG_DEFAULTCONF_ASSOCIATION_MASK, HDA_CONFIG_DEFAULTCONF_ASSOCIATION_SHIFT, HDA_CONFIG_DEFAULTCONF_COLOR_MASK, HDA_CONFIG_DEFAULTCONF_COLOR_SHIFT, HDA_CONFIG_DEFAULTCONF_CONNECTION_TYPE_MASK, HDA_CONFIG_DEFAULTCONF_CONNECTION_TYPE_SHIFT, HDA_CONFIG_DEFAULTCONF_CONNECTIVITY_MASK, HDA_CONFIG_DEFAULTCONF_CONNECTIVITY_SHIFT, HDA_CONFIG_DEFAULTCONF_DEVICE_MASK, HDA_CONFIG_DEFAULTCONF_DEVICE_SHIFT, HDA_CONFIG_DEFAULTCONF_LOCATION_MASK, HDA_CONFIG_DEFAULTCONF_LOCATION_SHIFT, HDA_CONFIG_DEFAULTCONF_MISC_MASK, HDA_CONFIG_DEFAULTCONF_MISC_SHIFT, HDA_CONFIG_DEFAULTCONF_SEQUENCE_MASK, HDA_CONFIG_DEFAULTCONF_SEQUENCE_SHIFT, HDA_CONNECTORS, HDA_CONNS, HDA_DEVS, HDA_LOCS, key, and value.
Referenced by hdaa_local_patch_pin(), hdaa_sysctl_config(), and hdac_pin_patch().
|
static |
Definition at line 1575 of file hdaa.c.
References hdaa_widget::config, HDA_COLORS, HDA_CONFIG_DEFAULTCONF_COLOR_MASK, HDA_CONFIG_DEFAULTCONF_COLOR_SHIFT, HDA_CONFIG_DEFAULTCONF_CONNECTIVITY_MASK, HDA_CONFIG_DEFAULTCONF_CONNECTIVITY_SHIFT, HDA_CONFIG_DEFAULTCONF_DEVICE_MASK, HDA_CONFIG_DEFAULTCONF_DEVICE_SHIFT, HDA_CONNS, HDA_DEVS, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_AUDIO_INPUT, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_AUDIO_MIXER, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_AUDIO_OUTPUT, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_AUDIO_SELECTOR, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_BEEP_WIDGET, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_PIN_COMPLEX, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_POWER_WIDGET, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_VENDOR_WIDGET, HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_VOLUME_WIDGET, hdaa_widget::name, hdaa_widget::param, hdaa_widget::pin, hdaa_widget::type, hdaa_widget::wclass, and hdaa_widget::widget_cap.
Referenced by hdaa_audio_postprocess().
|
static |
Definition at line 2045 of file hdaa.c.
Referenced by hdaa_channel_setfragments().
MALLOC_DEFINE | ( | M_HDAA | , |
"hdaa" | , | ||
"HDA Audio" | |||
) |
MIXER_DECLARE | ( | hdaa_audio_ctl_ossmixer | ) |
MODULE_DEPEND | ( | snd_hda | , |
sound | , | ||
SOUND_MINVER | , | ||
SOUND_PREFVER | , | ||
SOUND_MAXVER | |||
) |
MODULE_VERSION | ( | snd_hda | , |
1 | |||
) |
SND_DECLARE_FILE | ( | "$FreeBSD$" | ) |
uint16_t base |
Definition at line 124 of file hdaa.c.
Referenced by alloc_resource(), cmi_dma_prog(), ess_dmasetup(), gusisa_probe(), guspcm_attach(), ich_filldtbl(), nm_setch(), opti_detect(), sv_dma_set_config(), and viachan_getptr().
|
static |
Definition at line 259 of file hdaa.c.
Referenced by hdaa_channels_handler().
|
static |
Definition at line 80 of file hdaa.c.
Referenced by hdaa_dump_pin_config(), hdaa_dump_pin_sb(), hdaa_sysctl_config(), hdaa_widget_pin_patch(), and hdaa_widget_postprocess().
|
static |
Definition at line 90 of file hdaa.c.
Referenced by hdaa_dump_pin_config(), hdaa_dump_pin_sb(), hdaa_sysctl_config(), and hdaa_widget_pin_patch().
|
static |
Definition at line 88 of file hdaa.c.
Referenced by hdaa_dump_pin_config(), hdaa_dump_pin_sb(), hdaa_sysctl_config(), hdaa_widget_pin_patch(), and hdaa_widget_postprocess().
|
static |
Definition at line 84 of file hdaa.c.
Referenced by hdaa_dump_pin_config(), hdaa_dump_pin_sb(), hdaa_pcm_probe(), hdaa_sysctl_config(), hdaa_widget_pin_patch(), and hdaa_widget_postprocess().
|
static |
Definition at line 104 of file hdaa.c.
Referenced by hdaa_gpio_patch(), hdaa_local_patch(), hdaa_sysctl_gpio_config(), and hdaa_sysctl_gpo_config().
|
static |
Definition at line 107 of file hdaa.c.
Referenced by hdaa_eld_dump().
|
static |
Definition at line 94 of file hdaa.c.
Referenced by hdaa_dump_pin_config(), hdaa_dump_pin_sb(), hdaa_pcm_probe(), hdaa_sysctl_config(), and hdaa_widget_pin_patch().
const struct { ... } hda_rate_tab[] |
Referenced by hdaa_stream_format().
|
static |
|
static |
Definition at line 119 of file hdaa.c.
Referenced by hdaa_pcmchannel_setup().
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
const struct { ... } hdaa_quirks_tab[] |
Referenced by hdaa_config_fetch(), and hdaa_sysctl_quirks().
const char* key |
Definition at line 57 of file hdaa.c.
Referenced by hdaa_config_fetch(), hdaa_gpio_patch(), hdaa_widget_pin_patch(), and seq_chncommon().
|
static |
Referenced by hdaa_channels_handler().
uint16_t mul |
Definition at line 125 of file hdaa.c.
Referenced by feed_matrix_setup().
|
static |
Definition at line 166 of file hdaa.c.
Referenced by hdaa_audio_ctl_ossmixer_mask2allname(), hdaa_audio_ctl_set_defaults(), hdaa_dump_nodes(), and hdaa_sysctl_caps().
int valid |
Definition at line 123 of file hdaa.c.
Referenced by hdaa_stream_format().
uint32_t value |
Definition at line 58 of file hdaa.c.
Referenced by atiixp_chan_setformat(), atiixp_chan_trigger(), atiixp_chip_pre_init(), atiixp_disable_dma(), atiixp_enable_dma(), atiixp_enable_interrupts(), atiixp_pci_suspend(), atiixp_reset_aclink(), conf_wr(), ess_setmixer(), feed_eq_set(), feed_format_set(), feed_mixer_set(), feed_volume_set(), gus_wr(), hdaa_gpio_patch(), hdaa_sysctl_quirks(), hdaa_widget_pin_patch(), hdspechan_enable(), onyx_write(), opti_wr(), sb_setmixer(), and z_resampler_set().