this 1049 dev/pci/azalia.c azalia_codec_init(codec_t *this)
this 1055 dev/pci/azalia.c this->comresp = azalia_codec_comresp;
this 1056 dev/pci/azalia.c addr = this->address;
this 1058 dev/pci/azalia.c XNAME(this->az), addr));
this 1060 dev/pci/azalia.c err = this->comresp(this, CORB_NID_ROOT, CORB_GET_PARAMETER,
this 1064 dev/pci/azalia.c err = this->comresp(this, CORB_NID_ROOT, CORB_GET_PARAMETER,
this 1068 dev/pci/azalia.c this->vid = id;
this 1069 dev/pci/azalia.c this->subid = this->az->subid;
this 1070 dev/pci/azalia.c azalia_codec_init_vtbl(this);
this 1072 dev/pci/azalia.c printf("%s: codec:", XNAME(this->az));
this 1073 dev/pci/azalia.c if (this->name == NULL) {
this 1080 dev/pci/azalia.c printf(" %s", this->name);
this 1086 dev/pci/azalia.c err = this->comresp(this, CORB_NID_ROOT, CORB_GET_PARAMETER,
this 1090 dev/pci/azalia.c this->nfunctions = COP_NSUBNODES(result);
this 1092 dev/pci/azalia.c printf("%s: No function groups\n", XNAME(this->az));
this 1098 dev/pci/azalia.c __func__, n, this->nfunctions));
this 1099 dev/pci/azalia.c this->audiofunc = -1;
this 1100 dev/pci/azalia.c for (i = 0; i < this->nfunctions; i++) {
this 1101 dev/pci/azalia.c err = this->comresp(this, n + i, CORB_GET_PARAMETER,
this 1107 dev/pci/azalia.c this->audiofunc = n + i;
this 1111 dev/pci/azalia.c XNAME(this->az), addr);
this 1114 dev/pci/azalia.c if (this->audiofunc < 0) {
this 1116 dev/pci/azalia.c XNAME(this->az), addr);
this 1121 dev/pci/azalia.c this->comresp(this, this->audiofunc, CORB_SET_POWER_STATE, CORB_PS_D0, &result);
this 1125 dev/pci/azalia.c err = this->comresp(this, this->audiofunc,
this 1131 dev/pci/azalia.c this->wstart = COP_START_NID(result);
this 1132 dev/pci/azalia.c if (this->wstart < 2) {
this 1133 dev/pci/azalia.c printf("%s: invalid node structure\n", XNAME(this->az));
this 1136 dev/pci/azalia.c this->wend = this->wstart + COP_NSUBNODES(result);
this 1137 dev/pci/azalia.c this->w = malloc(sizeof(widget_t) * this->wend, M_DEVBUF, M_NOWAIT);
this 1138 dev/pci/azalia.c if (this->w == NULL) {
this 1139 dev/pci/azalia.c printf("%s: out of memory\n", XNAME(this->az));
this 1142 dev/pci/azalia.c bzero(this->w, sizeof(widget_t) * this->wend);
this 1145 dev/pci/azalia.c this->comresp(this, this->audiofunc, CORB_GET_PARAMETER,
this 1147 dev/pci/azalia.c this->w[this->audiofunc].d.audio.encodings = result;
this 1148 dev/pci/azalia.c this->comresp(this, this->audiofunc, CORB_GET_PARAMETER,
this 1150 dev/pci/azalia.c this->w[this->audiofunc].d.audio.bits_rates = result;
this 1151 dev/pci/azalia.c this->comresp(this, this->audiofunc, CORB_GET_PARAMETER,
this 1153 dev/pci/azalia.c this->w[this->audiofunc].inamp_cap = result;
this 1154 dev/pci/azalia.c this->comresp(this, this->audiofunc, CORB_GET_PARAMETER,
this 1156 dev/pci/azalia.c this->w[this->audiofunc].outamp_cap = result;
this 1158 dev/pci/azalia.c azalia_widget_print_audio(&this->w[this->audiofunc], "\t");
this 1159 dev/pci/azalia.c result = this->w[this->audiofunc].inamp_cap;
this 1163 dev/pci/azalia.c result = this->w[this->audiofunc].outamp_cap;
this 1169 dev/pci/azalia.c strlcpy(this->w[CORB_NID_ROOT].name, "root",
this 1170 dev/pci/azalia.c sizeof(this->w[CORB_NID_ROOT].name));
this 1171 dev/pci/azalia.c strlcpy(this->w[this->audiofunc].name, "hdaudio",
this 1172 dev/pci/azalia.c sizeof(this->w[this->audiofunc].name));
this 1173 dev/pci/azalia.c FOR_EACH_WIDGET(this, i) {
this 1174 dev/pci/azalia.c err = azalia_widget_init(&this->w[i], this, i);
this 1179 dev/pci/azalia.c err = this->init_dacgroup(this);
this 1183 dev/pci/azalia.c for (i = 0; i < this->dacs.ngroups; i++) {
this 1185 dev/pci/azalia.c for (n = 0; n < this->dacs.groups[i].nconv; n++) {
this 1186 dev/pci/azalia.c DPRINTF((" %2.2x", this->dacs.groups[i].conv[n]));
this 1193 dev/pci/azalia.c this->dacs.cur = -1;
this 1194 dev/pci/azalia.c this->adcs.cur = -1;
this 1195 dev/pci/azalia.c err = azalia_codec_construct_format(this, 0, 0);
this 1199 dev/pci/azalia.c return this->mixer_init(this);
this 1203 dev/pci/azalia.c azalia_codec_delete(codec_t *this)
this 1205 dev/pci/azalia.c if (this->mixer_delete != NULL)
this 1206 dev/pci/azalia.c this->mixer_delete(this);
this 1207 dev/pci/azalia.c if (this->formats != NULL) {
this 1208 dev/pci/azalia.c free(this->formats, M_DEVBUF);
this 1209 dev/pci/azalia.c this->formats = NULL;
this 1212 dev/pci/azalia.c auconv_delete_encodings(this->encodings);
this 1213 dev/pci/azalia.c this->encodings = NULL;
this 1218 dev/pci/azalia.c azalia_codec_construct_format(codec_t *this, int newdac, int newadc)
this 1227 dev/pci/azalia.c prev_dac = this->dacs.cur;
this 1228 dev/pci/azalia.c this->dacs.cur = newdac;
this 1229 dev/pci/azalia.c group = &this->dacs.groups[this->dacs.cur];
this 1230 dev/pci/azalia.c bits_rates = this->w[group->conv[0]].d.audio.bits_rates;
this 1244 dev/pci/azalia.c XNAME(this->az), __FILE__, __LINE__, bits_rates);
this 1249 dev/pci/azalia.c prev_adc = this->adcs.cur;
this 1250 dev/pci/azalia.c this->adcs.cur = newadc;
this 1251 dev/pci/azalia.c group = &this->adcs.groups[this->adcs.cur];
this 1252 dev/pci/azalia.c bits_rates = this->w[group->conv[0]].d.audio.bits_rates;
this 1266 dev/pci/azalia.c XNAME(this->az), __FILE__, __LINE__, bits_rates);
this 1271 dev/pci/azalia.c if (this->formats != NULL)
this 1272 dev/pci/azalia.c free(this->formats, M_DEVBUF);
this 1273 dev/pci/azalia.c this->nformats = 0;
this 1274 dev/pci/azalia.c this->formats = malloc(sizeof(struct audio_format) *
this 1276 dev/pci/azalia.c if (this->formats == NULL) {
this 1278 dev/pci/azalia.c XNAME(this->az), __func__);
this 1281 dev/pci/azalia.c bzero(this->formats, sizeof(struct audio_format) *
this 1285 dev/pci/azalia.c group = &this->dacs.groups[this->dacs.cur];
this 1288 dev/pci/azalia.c bits_rates = this->w[nid].d.audio.bits_rates;
this 1291 dev/pci/azalia.c chan += WIDGET_CHANNELS(&this->w[group->conv[c]]);
this 1292 dev/pci/azalia.c azalia_codec_add_bits(this, chan, bits_rates, AUMODE_PLAY);
this 1296 dev/pci/azalia.c group = &this->adcs.groups[this->adcs.cur];
this 1299 dev/pci/azalia.c bits_rates = this->w[nid].d.audio.bits_rates;
this 1302 dev/pci/azalia.c chan += WIDGET_CHANNELS(&this->w[group->conv[c]]);
this 1303 dev/pci/azalia.c azalia_codec_add_bits(this, chan, bits_rates, AUMODE_RECORD);
this 1306 dev/pci/azalia.c err = azalia_create_encodings(this->formats, this->nformats,
this 1307 dev/pci/azalia.c &this->encodings);
this 1314 dev/pci/azalia.c azalia_codec_add_bits(codec_t *this, int chan, uint32_t bits_rates, int mode)
this 1317 dev/pci/azalia.c azalia_codec_add_format(this, chan, 8, 16, bits_rates, mode);
this 1319 dev/pci/azalia.c azalia_codec_add_format(this, chan, 16, 16, bits_rates, mode);
this 1321 dev/pci/azalia.c azalia_codec_add_format(this, chan, 20, 32, bits_rates, mode);
this 1323 dev/pci/azalia.c azalia_codec_add_format(this, chan, 24, 32, bits_rates, mode);
this 1325 dev/pci/azalia.c azalia_codec_add_format(this, chan, 32, 32, bits_rates, mode);
this 1329 dev/pci/azalia.c azalia_codec_add_format(codec_t *this, int chan, int valid, int prec,
this 1334 dev/pci/azalia.c f = &this->formats[this->nformats++];
this 1401 dev/pci/azalia.c azalia_codec_connect_stream(codec_t *this, int dir, uint16_t fmt, int number)
this 1411 dev/pci/azalia.c group = &this->adcs.groups[this->adcs.cur];
this 1413 dev/pci/azalia.c group = &this->dacs.groups[this->dacs.cur];
this 1415 dev/pci/azalia.c (WIDGET_CHANNELS(&this->w[group->conv[0]]) == 2) &&
this 1416 dev/pci/azalia.c (WIDGET_CHANNELS(&this->w[group->conv[1]]) == 2) &&
this 1417 dev/pci/azalia.c (WIDGET_CHANNELS(&this->w[group->conv[2]]) == 2);
this 1430 dev/pci/azalia.c err = this->comresp(this, nid, CORB_SET_CONVERTER_FORMAT, fmt, NULL);
this 1433 dev/pci/azalia.c err = this->comresp(this, nid, CORB_SET_CONVERTER_STREAM_CHANNEL,
this 1438 dev/pci/azalia.c startchan += WIDGET_CHANNELS(&this->w[nid]);
this 1456 dev/pci/azalia.c azalia_widget_init(widget_t *this, const codec_t *codec, nid_t nid)
this 1465 dev/pci/azalia.c this->nid = nid;
this 1466 dev/pci/azalia.c this->widgetcap = result;
this 1467 dev/pci/azalia.c this->type = COP_AWCAP_TYPE(result);
this 1469 dev/pci/azalia.c if (this->widgetcap & COP_AWCAP_POWER) {
this 1473 dev/pci/azalia.c switch (this->type) {
this 1475 dev/pci/azalia.c snprintf(this->name, sizeof(this->name), "dac%2.2x", nid);
this 1476 dev/pci/azalia.c DPRINTF(("%s wcap=%b\n", this->name,
this 1477 dev/pci/azalia.c this->widgetcap, WIDGETCAP_BITS));
this 1478 dev/pci/azalia.c azalia_widget_init_audio(this, codec);
this 1481 dev/pci/azalia.c snprintf(this->name, sizeof(this->name), "adc%2.2x", nid);
this 1482 dev/pci/azalia.c DPRINTF(("%s wcap=%b\n", this->name,
this 1483 dev/pci/azalia.c this->widgetcap, WIDGETCAP_BITS));
this 1484 dev/pci/azalia.c azalia_widget_init_audio(this, codec);
this 1487 dev/pci/azalia.c snprintf(this->name, sizeof(this->name), "mix%2.2x", nid);
this 1488 dev/pci/azalia.c DPRINTF(("%s wcap=%b\n", this->name,
this 1489 dev/pci/azalia.c this->widgetcap, WIDGETCAP_BITS));
this 1492 dev/pci/azalia.c snprintf(this->name, sizeof(this->name), "sel%2.2x", nid);
this 1493 dev/pci/azalia.c DPRINTF(("%s wcap=%b\n", this->name,
this 1494 dev/pci/azalia.c this->widgetcap, WIDGETCAP_BITS));
this 1497 dev/pci/azalia.c azalia_widget_init_pin(this, codec);
this 1498 dev/pci/azalia.c snprintf(this->name, sizeof(this->name), "%s%2.2x",
this 1499 dev/pci/azalia.c pin_colors[this->d.pin.color], nid);
this 1500 dev/pci/azalia.c DPRINTF(("%s wcap=%b\n", this->name,
this 1501 dev/pci/azalia.c this->widgetcap, WIDGETCAP_BITS));
this 1502 dev/pci/azalia.c azalia_widget_print_pin(this);
this 1505 dev/pci/azalia.c snprintf(this->name, sizeof(this->name), "pow%2.2x", nid);
this 1506 dev/pci/azalia.c DPRINTF(("%s wcap=%b\n", this->name,
this 1507 dev/pci/azalia.c this->widgetcap, WIDGETCAP_BITS));
this 1510 dev/pci/azalia.c snprintf(this->name, sizeof(this->name), "volume%2.2x", nid);
this 1511 dev/pci/azalia.c DPRINTF(("%s wcap=%b\n", this->name,
this 1512 dev/pci/azalia.c this->widgetcap, WIDGETCAP_BITS));
this 1516 dev/pci/azalia.c this->d.volume.cap = result;
this 1523 dev/pci/azalia.c snprintf(this->name, sizeof(this->name), "beep%2.2x", nid);
this 1524 dev/pci/azalia.c DPRINTF(("%s wcap=%b\n", this->name,
this 1525 dev/pci/azalia.c this->widgetcap, WIDGETCAP_BITS));
this 1528 dev/pci/azalia.c snprintf(this->name, sizeof(this->name), "widget%2.2x", nid);
this 1529 dev/pci/azalia.c DPRINTF(("%s wcap=%b\n", this->name,
this 1530 dev/pci/azalia.c this->widgetcap, WIDGETCAP_BITS));
this 1533 dev/pci/azalia.c azalia_widget_init_connection(this, codec);
this 1536 dev/pci/azalia.c if (this->widgetcap & COP_AWCAP_INAMP) {
this 1537 dev/pci/azalia.c if (this->widgetcap & COP_AWCAP_AMPOV)
this 1539 dev/pci/azalia.c COP_INPUT_AMPCAP, &this->inamp_cap);
this 1541 dev/pci/azalia.c this->inamp_cap = codec->w[codec->audiofunc].inamp_cap;
this 1543 dev/pci/azalia.c (this->inamp_cap & COP_AMPCAP_MUTE) != 0,
this 1544 dev/pci/azalia.c COP_AMPCAP_STEPSIZE(this->inamp_cap),
this 1545 dev/pci/azalia.c COP_AMPCAP_NUMSTEPS(this->inamp_cap),
this 1546 dev/pci/azalia.c COP_AMPCAP_OFFSET(this->inamp_cap)));
this 1548 dev/pci/azalia.c if (this->widgetcap & COP_AWCAP_OUTAMP) {
this 1549 dev/pci/azalia.c if (this->widgetcap & COP_AWCAP_AMPOV)
this 1551 dev/pci/azalia.c COP_OUTPUT_AMPCAP, &this->outamp_cap);
this 1553 dev/pci/azalia.c this->outamp_cap = codec->w[codec->audiofunc].outamp_cap;
this 1555 dev/pci/azalia.c (this->outamp_cap & COP_AMPCAP_MUTE) != 0,
this 1556 dev/pci/azalia.c COP_AMPCAP_STEPSIZE(this->outamp_cap),
this 1557 dev/pci/azalia.c COP_AMPCAP_NUMSTEPS(this->outamp_cap),
this 1558 dev/pci/azalia.c COP_AMPCAP_OFFSET(this->outamp_cap)));
this 1561 dev/pci/azalia.c codec->init_widget(codec, this, nid);
this 1566 dev/pci/azalia.c azalia_widget_init_audio(widget_t *this, const codec_t *codec)
this 1572 dev/pci/azalia.c if (this->widgetcap & COP_AWCAP_FORMATOV) {
this 1573 dev/pci/azalia.c err = codec->comresp(codec, this->nid,
this 1577 dev/pci/azalia.c this->d.audio.encodings = result;
this 1580 dev/pci/azalia.c this->d.audio.encodings =
this 1582 dev/pci/azalia.c this->d.audio.bits_rates =
this 1587 dev/pci/azalia.c XNAME(codec->az), this->name, result);
this 1590 dev/pci/azalia.c err = codec->comresp(codec, this->nid, CORB_GET_PARAMETER,
this 1594 dev/pci/azalia.c this->d.audio.bits_rates = result;
this 1596 dev/pci/azalia.c this->d.audio.bits_rates = result;
this 1598 dev/pci/azalia.c this->d.audio.encodings =
this 1600 dev/pci/azalia.c this->d.audio.bits_rates =
this 1604 dev/pci/azalia.c azalia_widget_print_audio(this, "\t");
this 1616 dev/pci/azalia.c azalia_widget_print_audio(const widget_t *this, const char *lead)
this 1618 dev/pci/azalia.c printf("%sencodings=%b\n", lead, this->d.audio.encodings,
this 1620 dev/pci/azalia.c printf("%sPCM formats=%b\n", lead, this->d.audio.bits_rates,
this 1626 dev/pci/azalia.c azalia_widget_init_pin(widget_t *this, const codec_t *codec)
this 1631 dev/pci/azalia.c err = codec->comresp(codec, this->nid, CORB_GET_CONFIGURATION_DEFAULT,
this 1635 dev/pci/azalia.c this->d.pin.config = result;
this 1636 dev/pci/azalia.c this->d.pin.sequence = CORB_CD_SEQUENCE(result);
this 1637 dev/pci/azalia.c this->d.pin.association = CORB_CD_ASSOCIATION(result);
this 1638 dev/pci/azalia.c this->d.pin.color = CORB_CD_COLOR(result);
this 1639 dev/pci/azalia.c this->d.pin.device = CORB_CD_DEVICE(result);
this 1641 dev/pci/azalia.c err = codec->comresp(codec, this->nid, CORB_GET_PARAMETER,
this 1645 dev/pci/azalia.c this->d.pin.cap = result;
this 1653 dev/pci/azalia.c azalia_widget_print_pin(const widget_t *this)
this 1656 dev/pci/azalia.c pin_devices[this->d.pin.device], pin_colors[this->d.pin.color],
this 1657 dev/pci/azalia.c this->d.pin.association, this->d.pin.sequence));
this 1658 dev/pci/azalia.c DPRINTF((" cap=%b\n", this->d.pin.cap, PINCAP_BITS));
this 1663 dev/pci/azalia.c azalia_widget_init_connection(widget_t *this, const codec_t *codec)
this 1670 dev/pci/azalia.c this->selected = -1;
this 1671 dev/pci/azalia.c if ((this->widgetcap & COP_AWCAP_CONNLIST) == 0)
this 1674 dev/pci/azalia.c err = codec->comresp(codec, this->nid, CORB_GET_PARAMETER,
this 1682 dev/pci/azalia.c this->nconnections = length;
this 1683 dev/pci/azalia.c this->connections = malloc(sizeof(nid_t) * (length + 3),
this 1685 dev/pci/azalia.c if (this->connections == NULL) {
this 1691 dev/pci/azalia.c err = codec->comresp(codec, this->nid,
this 1695 dev/pci/azalia.c this->connections[i++] = CORB_CLE_LONG_0(result);
this 1696 dev/pci/azalia.c this->connections[i++] = CORB_CLE_LONG_1(result);
this 1700 dev/pci/azalia.c err = codec->comresp(codec, this->nid,
this 1704 dev/pci/azalia.c this->connections[i++] = CORB_CLE_SHORT_0(result);
this 1705 dev/pci/azalia.c this->connections[i++] = CORB_CLE_SHORT_1(result);
this 1706 dev/pci/azalia.c this->connections[i++] = CORB_CLE_SHORT_2(result);
this 1707 dev/pci/azalia.c this->connections[i++] = CORB_CLE_SHORT_3(result);
this 1711 dev/pci/azalia.c DPRINTF(("\tconnections=0x%x", this->connections[0]));
this 1713 dev/pci/azalia.c DPRINTF((",0x%x", this->connections[i]));
this 1716 dev/pci/azalia.c err = codec->comresp(codec, this->nid,
this 1720 dev/pci/azalia.c this->selected = CORB_CSC_INDEX(result);
this 1721 dev/pci/azalia.c DPRINTF(("; selected=0x%x\n", this->connections[result]));
this 1731 dev/pci/azalia.c azalia_stream_init(stream_t *this, azalia_t *az, int regindex, int strnum, int dir)
this 1735 dev/pci/azalia.c this->az = az;
this 1736 dev/pci/azalia.c this->regbase = HDA_SD_BASE + regindex * HDA_SD_SIZE;
this 1737 dev/pci/azalia.c this->intr_bit = 1 << regindex;
this 1738 dev/pci/azalia.c this->number = strnum;
this 1739 dev/pci/azalia.c this->dir = dir;
this 1743 dev/pci/azalia.c 128, &this->bdlist);
this 1752 dev/pci/azalia.c azalia_stream_delete(stream_t *this, azalia_t *az)
this 1754 dev/pci/azalia.c if (this->bdlist.addr == NULL)
this 1756 dev/pci/azalia.c azalia_free_dmamem(az, &this->bdlist);
this 1761 dev/pci/azalia.c azalia_stream_reset(stream_t *this)
this 1768 dev/pci/azalia.c ctl = STR_READ_2(this, CTL);
this 1770 dev/pci/azalia.c STR_WRITE_2(this, CTL, ctl);
this 1773 dev/pci/azalia.c ctl = STR_READ_2(this, CTL);
this 1774 dev/pci/azalia.c STR_WRITE_2(this, CTL, ctl | HDA_SD_CTL_SRST);
this 1777 dev/pci/azalia.c ctl = STR_READ_2(this, CTL);
this 1782 dev/pci/azalia.c printf("%s: stream reset failure 1\n", XNAME(this->az));
this 1787 dev/pci/azalia.c STR_WRITE_2(this, CTL, ctl & ~HDA_SD_CTL_SRST);
this 1790 dev/pci/azalia.c ctl = STR_READ_2(this, CTL);
this 1795 dev/pci/azalia.c printf("%s: stream reset failure 2\n", XNAME(this->az));
this 1799 dev/pci/azalia.c sts = STR_READ_1(this, STS);
this 1801 dev/pci/azalia.c STR_WRITE_1(this, STS, sts);
this 1807 dev/pci/azalia.c azalia_stream_start(stream_t *this, void *start, void *end, int blk,
this 1816 dev/pci/azalia.c this->intr = intr;
this 1817 dev/pci/azalia.c this->intr_arg = arg;
this 1819 dev/pci/azalia.c err = azalia_stream_reset(this);
this 1825 dev/pci/azalia.c STR_WRITE_4(this, BDPL, 0);
this 1826 dev/pci/azalia.c STR_WRITE_4(this, BDPU, 0);
this 1829 dev/pci/azalia.c dmaaddr = AZALIA_DMA_DMAADDR(&this->buffer);
this 1831 dev/pci/azalia.c bdlist = (bdlist_entry_t*)this->bdlist.addr;
this 1844 dev/pci/azalia.c dmaaddr = AZALIA_DMA_DMAADDR(&this->bdlist);
this 1845 dev/pci/azalia.c STR_WRITE_4(this, BDPL, dmaaddr);
this 1846 dev/pci/azalia.c STR_WRITE_4(this, BDPU, PTR_UPPER32(dmaaddr));
this 1847 dev/pci/azalia.c STR_WRITE_2(this, LVI, (index - 1) & HDA_SD_LVI_LVI);
this 1848 dev/pci/azalia.c ctl2 = STR_READ_1(this, CTL2);
this 1849 dev/pci/azalia.c STR_WRITE_1(this, CTL2,
this 1850 dev/pci/azalia.c (ctl2 & ~HDA_SD_CTL2_STRM) | (this->number << HDA_SD_CTL2_STRM_SHIFT));
this 1851 dev/pci/azalia.c STR_WRITE_4(this, CBL, ((caddr_t)end - (caddr_t)start));
this 1852 dev/pci/azalia.c STR_WRITE_2(this, FMT, fmt);
this 1854 dev/pci/azalia.c err = azalia_codec_connect_stream(&this->az->codecs[this->az->codecno],
this 1855 dev/pci/azalia.c this->dir, fmt, this->number);
this 1859 dev/pci/azalia.c intctl = AZ_READ_4(this->az, INTCTL);
this 1860 dev/pci/azalia.c intctl |= this->intr_bit;
this 1861 dev/pci/azalia.c AZ_WRITE_4(this->az, INTCTL, intctl);
this 1863 dev/pci/azalia.c STR_WRITE_1(this, CTL, STR_READ_1(this, CTL) |
this 1871 dev/pci/azalia.c azalia_stream_halt(stream_t *this)
this 1875 dev/pci/azalia.c ctl = STR_READ_2(this, CTL);
this 1877 dev/pci/azalia.c STR_WRITE_2(this, CTL, ctl);
this 1878 dev/pci/azalia.c AZ_WRITE_4(this->az, INTCTL,
this 1879 dev/pci/azalia.c AZ_READ_4(this->az, INTCTL) & ~this->intr_bit);
this 1886 dev/pci/azalia.c azalia_stream_intr(stream_t *this, uint32_t intsts)
this 1890 dev/pci/azalia.c if ((intsts & this->intr_bit) == 0)
this 1893 dev/pci/azalia.c sts = STR_READ_1(this, STS);
this 1894 dev/pci/azalia.c STR_WRITE_1(this, STS, sts |
this 1898 dev/pci/azalia.c printf("%s: stream %d: sts=%b\n", XNAME(this->az),
this 1899 dev/pci/azalia.c this->number, sts, HDA_SD_STS_BITS);
this 1901 dev/pci/azalia.c this->intr(this->intr_arg);
this 550 dev/pci/azalia.h #define FOR_EACH_WIDGET(this, i) for (i = (this)->wstart; i < (this)->wend; i++)
this 117 dev/pci/azalia_codec.c azalia_codec_init_vtbl(codec_t *this)
this 122 dev/pci/azalia_codec.c DPRINTF(("%s: vid=%08x subid=%08x\n", __func__, this->vid, this->subid));
this 123 dev/pci/azalia_codec.c this->name = NULL;
this 124 dev/pci/azalia_codec.c this->init_dacgroup = azalia_generic_codec_init_dacgroup;
this 125 dev/pci/azalia_codec.c this->mixer_init = azalia_generic_mixer_init;
this 126 dev/pci/azalia_codec.c this->mixer_delete = azalia_generic_mixer_delete;
this 127 dev/pci/azalia_codec.c this->set_port = azalia_generic_set_port;
this 128 dev/pci/azalia_codec.c this->get_port = azalia_generic_get_port;
this 129 dev/pci/azalia_codec.c switch (this->vid) {
this 131 dev/pci/azalia_codec.c this->name = "Realtek ALC260";
this 132 dev/pci/azalia_codec.c this->mixer_init = azalia_alc260_mixer_init;
this 133 dev/pci/azalia_codec.c this->init_dacgroup = azalia_alc260_init_dacgroup;
this 134 dev/pci/azalia_codec.c this->set_port = azalia_alc260_set_port;
this 137 dev/pci/azalia_codec.c this->name = "Realtek ALC880";
this 138 dev/pci/azalia_codec.c this->init_dacgroup = azalia_alc880_init_dacgroup;
this 141 dev/pci/azalia_codec.c this->name = "Realtek ALC882";
this 142 dev/pci/azalia_codec.c this->init_dacgroup = azalia_alc882_init_dacgroup;
this 143 dev/pci/azalia_codec.c this->mixer_init = azalia_alc882_mixer_init;
this 144 dev/pci/azalia_codec.c this->get_port = azalia_alc882_get_port;
this 145 dev/pci/azalia_codec.c this->set_port = azalia_alc882_set_port;
this 149 dev/pci/azalia_codec.c this->name = "Realtek ALC883";
this 150 dev/pci/azalia_codec.c this->init_dacgroup = azalia_alc883_init_dacgroup;
this 151 dev/pci/azalia_codec.c this->mixer_init = azalia_alc883_mixer_init;
this 152 dev/pci/azalia_codec.c this->get_port = azalia_alc882_get_port;
this 153 dev/pci/azalia_codec.c this->set_port = azalia_alc882_set_port;
this 157 dev/pci/azalia_codec.c this->name = "Analog Devices AD1981HD";
this 158 dev/pci/azalia_codec.c this->init_widget = azalia_ad1981hd_init_widget;
this 159 dev/pci/azalia_codec.c this->mixer_init = azalia_ad1981hd_mixer_init;
this 163 dev/pci/azalia_codec.c this->name = "Analog Devices AD1983";
this 166 dev/pci/azalia_codec.c this->name = "CMedia CMI9880";
this 167 dev/pci/azalia_codec.c this->init_dacgroup = azalia_cmi9880_init_dacgroup;
this 168 dev/pci/azalia_codec.c this->mixer_init = azalia_cmi9880_mixer_init;
this 171 dev/pci/azalia_codec.c this->name = "Sigmatel STAC9221";
this 172 dev/pci/azalia_codec.c this->init_dacgroup = azalia_stac9221_init_dacgroup;
this 173 dev/pci/azalia_codec.c if (this->subid == 0x76808384) {
this 174 dev/pci/azalia_codec.c this->init_dacgroup =
this 176 dev/pci/azalia_codec.c this->mixer_init =
this 182 dev/pci/azalia_codec.c this->name = "Sigmatel STAC9221D";
this 183 dev/pci/azalia_codec.c this->init_dacgroup = azalia_stac9221_init_dacgroup;
this 187 dev/pci/azalia_codec.c this->name = "Sigmatel STAC9200";
this 188 dev/pci/azalia_codec.c this->mixer_init = azalia_stac9200_mixer_init;
this 189 dev/pci/azalia_codec.c this->unsol_event = azalia_stac9200_unsol_event;
this 192 dev/pci/azalia_codec.c this->name = "Sigmatel STAC9200D";
this 195 dev/pci/azalia_codec.c this->name = "Sigmatel 83847661";
this 196 dev/pci/azalia_codec.c this->init_dacgroup = azalia_stac7661_init_dacgroup;
this 197 dev/pci/azalia_codec.c this->mixer_init = azalia_stac7661_mixer_init;
this 198 dev/pci/azalia_codec.c this->get_port = azalia_stac7661_get_port;
this 199 dev/pci/azalia_codec.c this->set_port = azalia_stac7661_set_port;
this 210 dev/pci/azalia_codec.c azalia_generic_codec_init_dacgroup(codec_t *this)
this 221 dev/pci/azalia_codec.c this->dacs.ngroups = 0;
this 223 dev/pci/azalia_codec.c azalia_generic_codec_add_dacgroup(this, assoc, 0);
this 224 dev/pci/azalia_codec.c azalia_generic_codec_add_dacgroup(this, assoc, COP_AWCAP_DIGITAL);
this 229 dev/pci/azalia_codec.c FOR_EACH_WIDGET(this, i) {
this 232 dev/pci/azalia_codec.c if (this->w[i].type != COP_AWTYPE_AUDIO_OUTPUT)
this 235 dev/pci/azalia_codec.c for (group = 0; group < this->dacs.ngroups; group++) {
this 236 dev/pci/azalia_codec.c for (j = 0; j < this->dacs.groups[group].nconv; j++) {
this 237 dev/pci/azalia_codec.c if (i == this->dacs.groups[group].conv[j]) {
this 239 dev/pci/azalia_codec.c group = this->dacs.ngroups;
this 246 dev/pci/azalia_codec.c if (this->dacs.ngroups >= 32)
this 248 dev/pci/azalia_codec.c this->dacs.groups[this->dacs.ngroups].nconv = 1;
this 249 dev/pci/azalia_codec.c this->dacs.groups[this->dacs.ngroups].conv[0] = i;
this 250 dev/pci/azalia_codec.c this->dacs.ngroups++;
this 252 dev/pci/azalia_codec.c this->dacs.cur = 0;
this 255 dev/pci/azalia_codec.c this->adcs.ngroups = 0;
this 256 dev/pci/azalia_codec.c FOR_EACH_WIDGET(this, i) {
this 257 dev/pci/azalia_codec.c if (this->w[i].type != COP_AWTYPE_AUDIO_INPUT)
this 259 dev/pci/azalia_codec.c this->adcs.groups[this->adcs.ngroups].nconv = 1;
this 260 dev/pci/azalia_codec.c this->adcs.groups[this->adcs.ngroups].conv[0] = i;
this 261 dev/pci/azalia_codec.c this->adcs.ngroups++;
this 262 dev/pci/azalia_codec.c if (this->adcs.ngroups >= 32)
this 265 dev/pci/azalia_codec.c this->adcs.cur = 0;
this 270 dev/pci/azalia_codec.c azalia_generic_codec_add_dacgroup(codec_t *this, int assoc, uint32_t digital)
this 276 dev/pci/azalia_codec.c i = azalia_generic_codec_find_pin(this, assoc, seq, digital);
this 279 dev/pci/azalia_codec.c dac = azalia_generic_codec_find_dac(this, i, 0);
this 284 dev/pci/azalia_codec.c if (this->dacs.groups[this->dacs.ngroups].conv[j] == dac)
this 289 dev/pci/azalia_codec.c this->dacs.groups[this->dacs.ngroups].conv[n++] = dac;
this 291 dev/pci/azalia_codec.c __func__, assoc, seq, this->dacs.ngroups, n-1));
this 295 dev/pci/azalia_codec.c this->dacs.groups[this->dacs.ngroups].nconv = n;
this 298 dev/pci/azalia_codec.c for (i = 0; i < this->dacs.ngroups; i++) {
this 299 dev/pci/azalia_codec.c if (n != this->dacs.groups[i].nconv)
this 302 dev/pci/azalia_codec.c if (this->dacs.groups[this->dacs.ngroups].conv[j] !=
this 303 dev/pci/azalia_codec.c this->dacs.groups[i].conv[j])
this 310 dev/pci/azalia_codec.c this->dacs.ngroups++;
this 315 dev/pci/azalia_codec.c azalia_generic_codec_find_pin(const codec_t *this, int assoc, int seq, uint32_t digital)
this 319 dev/pci/azalia_codec.c FOR_EACH_WIDGET(this, i) {
this 320 dev/pci/azalia_codec.c if (this->w[i].type != COP_AWTYPE_PIN_COMPLEX)
this 322 dev/pci/azalia_codec.c if ((this->w[i].d.pin.cap & COP_PINCAP_OUTPUT) == 0)
this 324 dev/pci/azalia_codec.c if ((this->w[i].widgetcap & COP_AWCAP_DIGITAL) != digital)
this 326 dev/pci/azalia_codec.c if (this->w[i].d.pin.association != assoc)
this 328 dev/pci/azalia_codec.c if (this->w[i].d.pin.sequence == seq) {
this 336 dev/pci/azalia_codec.c azalia_generic_codec_find_dac(const codec_t *this, int index, int depth)
this 341 dev/pci/azalia_codec.c w = &this->w[index];
this 352 dev/pci/azalia_codec.c if (VALID_WIDGET_NID(j, this)) {
this 353 dev/pci/azalia_codec.c ret = azalia_generic_codec_find_dac(this, j, depth);
this 363 dev/pci/azalia_codec.c if (!VALID_WIDGET_NID(j, this))
this 365 dev/pci/azalia_codec.c ret = azalia_generic_codec_find_dac(this, j, depth);
this 380 dev/pci/azalia_codec.c azalia_generic_mixer_init(codec_t *this)
this 392 dev/pci/azalia_codec.c this->maxmixers = 10;
this 393 dev/pci/azalia_codec.c this->nmixers = 0;
this 394 dev/pci/azalia_codec.c this->mixers = malloc(sizeof(mixer_item_t) * this->maxmixers,
this 396 dev/pci/azalia_codec.c if (this->mixers == NULL) {
this 397 dev/pci/azalia_codec.c printf("%s: out of memory in %s\n", XNAME(this), __func__);
this 400 dev/pci/azalia_codec.c bzero(this->mixers, sizeof(mixer_item_t) * this->maxmixers);
this 404 dev/pci/azalia_codec.c m = &this->mixers[AZ_CLASS_INPUT];
this 414 dev/pci/azalia_codec.c m = &this->mixers[AZ_CLASS_OUTPUT];
this 424 dev/pci/azalia_codec.c m = &this->mixers[AZ_CLASS_RECORD];
this 434 dev/pci/azalia_codec.c this->nmixers = AZ_CLASS_RECORD + 1;
this 438 dev/pci/azalia_codec.c err = azalia_generic_mixer_ensure_capacity(this, this->nmixers + 1); \
this 441 dev/pci/azalia_codec.c m = &this->mixers[this->nmixers]; \
this 445 dev/pci/azalia_codec.c FOR_EACH_WIDGET(this, i) {
this 448 dev/pci/azalia_codec.c w = &this->w[i];
this 465 dev/pci/azalia_codec.c if (!VALID_WIDGET_NID(w->connections[j], this))
this 468 dev/pci/azalia_codec.c this->w[w->connections[j]].name));
this 471 dev/pci/azalia_codec.c this->w[w->connections[j]].name,
this 476 dev/pci/azalia_codec.c this->nmixers++;
this 503 dev/pci/azalia_codec.c this->nmixers++;
this 532 dev/pci/azalia_codec.c this->nmixers++;
this 559 dev/pci/azalia_codec.c this->nmixers++;
this 563 dev/pci/azalia_codec.c if (!VALID_WIDGET_NID(w->connections[j], this))
this 566 dev/pci/azalia_codec.c w->name, this->w[w->connections[j]].name));
this 569 dev/pci/azalia_codec.c this->w[w->connections[j]].name);
this 585 dev/pci/azalia_codec.c this->nmixers++;
this 617 dev/pci/azalia_codec.c this->nmixers++;
this 621 dev/pci/azalia_codec.c if (!VALID_WIDGET_NID(w->connections[j], this))
this 624 dev/pci/azalia_codec.c w->name, this->w[w->connections[j]].name));
this 627 dev/pci/azalia_codec.c this->w[w->connections[j]].name);
this 646 dev/pci/azalia_codec.c this->nmixers++;
this 669 dev/pci/azalia_codec.c this->nmixers++;
this 689 dev/pci/azalia_codec.c this->nmixers++;
this 705 dev/pci/azalia_codec.c this->nmixers++;
this 710 dev/pci/azalia_codec.c if (this->dacs.ngroups > 1) {
this 717 dev/pci/azalia_codec.c for (i = 0; i < this->dacs.ngroups && i < 32; i++) {
this 719 dev/pci/azalia_codec.c for (j = 0; j < this->dacs.groups[i].nconv; j++) {
this 724 dev/pci/azalia_codec.c this->dacs.groups[i].conv[j]);
this 728 dev/pci/azalia_codec.c this->nmixers++;
this 732 dev/pci/azalia_codec.c if (this->adcs.ngroups > 1) {
this 739 dev/pci/azalia_codec.c for (i = 0; i < this->adcs.ngroups && i < 32; i++) {
this 741 dev/pci/azalia_codec.c for (j = 0; j < this->adcs.groups[i].nconv; j++) {
this 746 dev/pci/azalia_codec.c this->adcs.groups[i].conv[j]);
this 750 dev/pci/azalia_codec.c this->nmixers++;
this 753 dev/pci/azalia_codec.c azalia_generic_mixer_fix_indexes(this);
this 754 dev/pci/azalia_codec.c azalia_generic_mixer_default(this);
this 759 dev/pci/azalia_codec.c azalia_generic_mixer_ensure_capacity(codec_t *this, size_t newsize)
this 764 dev/pci/azalia_codec.c if (this->maxmixers >= newsize)
this 766 dev/pci/azalia_codec.c newmax = this->maxmixers + 10;
this 771 dev/pci/azalia_codec.c printf("%s: out of memory in %s\n", XNAME(this), __func__);
this 775 dev/pci/azalia_codec.c bcopy(this->mixers, newbuf, this->maxmixers * sizeof(mixer_item_t));
this 776 dev/pci/azalia_codec.c free(this->mixers, M_DEVBUF);
this 777 dev/pci/azalia_codec.c this->mixers = newbuf;
this 778 dev/pci/azalia_codec.c this->maxmixers = newmax;
this 783 dev/pci/azalia_codec.c azalia_generic_mixer_fix_indexes(codec_t *this)
this 788 dev/pci/azalia_codec.c for (i = 0; i < this->nmixers; i++) {
this 789 dev/pci/azalia_codec.c d = &this->mixers[i].devinfo;
this 805 dev/pci/azalia_codec.c azalia_generic_mixer_default(codec_t *this)
this 811 dev/pci/azalia_codec.c for (i = 0; i < this->nmixers; i++) {
this 814 dev/pci/azalia_codec.c m = &this->mixers[i];
this 823 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, m->nid, m->target, &mc);
this 832 dev/pci/azalia_codec.c for (i = 0; i < this->nmixers; i++) {
this 835 dev/pci/azalia_codec.c m = &this->mixers[i];
this 840 dev/pci/azalia_codec.c switch (this->w[m->nid].d.pin.device) {
this 852 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, m->nid, m->target, &mc);
this 857 dev/pci/azalia_codec.c for (i = 0; i < this->nmixers; i++) {
this 860 dev/pci/azalia_codec.c m = &this->mixers[i];
this 872 dev/pci/azalia_codec.c WIDGET_CHANNELS(&this->w[m->nid]) == 2) {
this 876 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, m->nid, m->target, &mc);
this 883 dev/pci/azalia_codec.c azalia_generic_mixer_delete(codec_t *this)
this 885 dev/pci/azalia_codec.c if (this->mixers == NULL)
this 887 dev/pci/azalia_codec.c free(this->mixers, M_DEVBUF);
this 888 dev/pci/azalia_codec.c this->mixers = NULL;
this 896 dev/pci/azalia_codec.c azalia_generic_mixer_get(const codec_t *this, nid_t nid, int target, mixer_ctrl_t *mc)
this 904 dev/pci/azalia_codec.c err = this->comresp(this, nid, CORB_GET_AMPLIFIER_GAIN_MUTE,
this 914 dev/pci/azalia_codec.c err = this->comresp(this, nid, CORB_GET_AMPLIFIER_GAIN_MUTE,
this 919 dev/pci/azalia_codec.c mc->un.value.level[0] = azalia_generic_mixer_from_device_value(this,
this 921 dev/pci/azalia_codec.c if (this->w[nid].type == COP_AWTYPE_AUDIO_SELECTOR ||
this 922 dev/pci/azalia_codec.c this->w[nid].type == COP_AWTYPE_AUDIO_MIXER) {
this 923 dev/pci/azalia_codec.c n = this->w[nid].connections[MI_TARGET_INAMP(target)];
this 925 dev/pci/azalia_codec.c if (!VALID_WIDGET_NID(n, this)) {
this 927 dev/pci/azalia_codec.c __func__, nid, this->w[nid].nconnections,
this 934 dev/pci/azalia_codec.c mc->un.value.num_channels = WIDGET_CHANNELS(&this->w[n]);
this 936 dev/pci/azalia_codec.c err = this->comresp(this, nid,
this 943 dev/pci/azalia_codec.c (this, nid, target, CORB_GAGM_GAIN(result));
this 949 dev/pci/azalia_codec.c err = this->comresp(this, nid, CORB_GET_AMPLIFIER_GAIN_MUTE,
this 958 dev/pci/azalia_codec.c err = this->comresp(this, nid, CORB_GET_AMPLIFIER_GAIN_MUTE,
this 962 dev/pci/azalia_codec.c mc->un.value.level[0] = azalia_generic_mixer_from_device_value(this,
this 964 dev/pci/azalia_codec.c mc->un.value.num_channels = WIDGET_CHANNELS(&this->w[nid]);
this 966 dev/pci/azalia_codec.c err = this->comresp(this, nid,
this 972 dev/pci/azalia_codec.c (this, nid, target, CORB_GAGM_GAIN(result));
this 978 dev/pci/azalia_codec.c err = this->comresp(this, nid,
this 983 dev/pci/azalia_codec.c if (!VALID_WIDGET_NID(this->w[nid].connections[result], this))
this 991 dev/pci/azalia_codec.c err = this->comresp(this, nid,
this 1000 dev/pci/azalia_codec.c err = this->comresp(this, nid,
this 1009 dev/pci/azalia_codec.c mc->un.ord = this->dacs.cur;
this 1014 dev/pci/azalia_codec.c mc->un.ord = this->adcs.cur;
this 1019 dev/pci/azalia_codec.c err = this->comresp(this, nid, CORB_GET_VOLUME_KNOB,
this 1023 dev/pci/azalia_codec.c mc->un.value.level[0] = azalia_generic_mixer_from_device_value(this,
this 1030 dev/pci/azalia_codec.c XNAME(this), __func__, target);
this 1037 dev/pci/azalia_codec.c azalia_generic_mixer_set(codec_t *this, nid_t nid, int target, const mixer_ctrl_t *mc)
this 1045 dev/pci/azalia_codec.c err = this->comresp(this, nid, CORB_GET_AMPLIFIER_GAIN_MUTE,
this 1055 dev/pci/azalia_codec.c err = this->comresp(this, nid, CORB_SET_AMPLIFIER_GAIN_MUTE,
this 1059 dev/pci/azalia_codec.c if (WIDGET_CHANNELS(&this->w[nid]) == 2) {
this 1060 dev/pci/azalia_codec.c err = this->comresp(this, nid,
this 1071 dev/pci/azalia_codec.c err = this->comresp(this, nid,
this 1082 dev/pci/azalia_codec.c if (!azalia_generic_mixer_validate_value(this, nid, target,
this 1085 dev/pci/azalia_codec.c err = this->comresp(this, nid, CORB_GET_AMPLIFIER_GAIN_MUTE,
this 1090 dev/pci/azalia_codec.c value = azalia_generic_mixer_to_device_value(this, nid, target,
this 1096 dev/pci/azalia_codec.c err = this->comresp(this, nid, CORB_SET_AMPLIFIER_GAIN_MUTE,
this 1101 dev/pci/azalia_codec.c WIDGET_CHANNELS(&this->w[nid]) == 2) {
this 1102 dev/pci/azalia_codec.c if (!azalia_generic_mixer_validate_value(this, nid, target,
this 1105 dev/pci/azalia_codec.c err = this->comresp(this, nid,
this 1111 dev/pci/azalia_codec.c value = azalia_generic_mixer_to_device_value(this, nid, target,
this 1117 dev/pci/azalia_codec.c err = this->comresp(this, nid,
this 1126 dev/pci/azalia_codec.c err = this->comresp(this, nid, CORB_GET_AMPLIFIER_GAIN_MUTE,
this 1133 dev/pci/azalia_codec.c err = this->comresp(this, nid, CORB_SET_AMPLIFIER_GAIN_MUTE,
this 1137 dev/pci/azalia_codec.c if (WIDGET_CHANNELS(&this->w[nid]) == 2) {
this 1138 dev/pci/azalia_codec.c err = this->comresp(this, nid,
this 1147 dev/pci/azalia_codec.c err = this->comresp(this, nid,
this 1158 dev/pci/azalia_codec.c if (!azalia_generic_mixer_validate_value(this, nid, target,
this 1161 dev/pci/azalia_codec.c err = this->comresp(this, nid, CORB_GET_AMPLIFIER_GAIN_MUTE,
this 1165 dev/pci/azalia_codec.c value = azalia_generic_mixer_to_device_value(this, nid, target,
this 1170 dev/pci/azalia_codec.c err = this->comresp(this, nid, CORB_SET_AMPLIFIER_GAIN_MUTE,
this 1175 dev/pci/azalia_codec.c WIDGET_CHANNELS(&this->w[nid]) == 2) {
this 1176 dev/pci/azalia_codec.c if (!azalia_generic_mixer_validate_value(this, nid, target,
this 1179 dev/pci/azalia_codec.c err = this->comresp(this, nid,
this 1184 dev/pci/azalia_codec.c value = azalia_generic_mixer_to_device_value(this, nid, target,
this 1189 dev/pci/azalia_codec.c err = this->comresp(this, nid,
this 1199 dev/pci/azalia_codec.c mc->un.ord >= this->w[nid].nconnections ||
this 1200 dev/pci/azalia_codec.c !VALID_WIDGET_NID(this->w[nid].connections[mc->un.ord], this))
this 1202 dev/pci/azalia_codec.c err = this->comresp(this, nid,
this 1212 dev/pci/azalia_codec.c err = this->comresp(this, nid,
this 1223 dev/pci/azalia_codec.c err = this->comresp(this, nid,
this 1233 dev/pci/azalia_codec.c err = this->comresp(this, nid,
this 1242 dev/pci/azalia_codec.c err = this->comresp(this, nid,
this 1250 dev/pci/azalia_codec.c if (this->running)
this 1252 dev/pci/azalia_codec.c if (mc->un.ord >= this->dacs.ngroups)
this 1254 dev/pci/azalia_codec.c return azalia_codec_construct_format(this,
this 1255 dev/pci/azalia_codec.c mc->un.ord, this->adcs.cur);
this 1260 dev/pci/azalia_codec.c if (this->running)
this 1262 dev/pci/azalia_codec.c if (mc->un.ord >= this->adcs.ngroups)
this 1264 dev/pci/azalia_codec.c return azalia_codec_construct_format(this,
this 1265 dev/pci/azalia_codec.c this->dacs.cur, mc->un.ord);
this 1272 dev/pci/azalia_codec.c if (!azalia_generic_mixer_validate_value(this, nid,
this 1275 dev/pci/azalia_codec.c value = azalia_generic_mixer_to_device_value(this, nid, target,
this 1277 dev/pci/azalia_codec.c err = this->comresp(this, nid, CORB_SET_VOLUME_KNOB,
this 1285 dev/pci/azalia_codec.c XNAME(this), __func__, target);
this 1292 dev/pci/azalia_codec.c azalia_generic_mixer_pinctrl(codec_t *this, nid_t nid, uint32_t value)
this 1297 dev/pci/azalia_codec.c err = this->comresp(this, nid, CORB_GET_PIN_WIDGET_CONTROL, 0, &result);
this 1302 dev/pci/azalia_codec.c return this->comresp(this, nid,
this 1307 dev/pci/azalia_codec.c azalia_generic_mixer_from_device_value(const codec_t *this, nid_t nid, int target,
this 1314 dev/pci/azalia_codec.c dmax = COP_AMPCAP_NUMSTEPS(this->w[nid].inamp_cap);
this 1316 dev/pci/azalia_codec.c dmax = COP_AMPCAP_NUMSTEPS(this->w[nid].outamp_cap);
this 1318 dev/pci/azalia_codec.c dmax = COP_VKCAP_NUMSTEPS(this->w[nid].d.volume.cap);
this 1334 dev/pci/azalia_codec.c azalia_generic_mixer_to_device_value(const codec_t *this, nid_t nid, int target,
this 1341 dev/pci/azalia_codec.c dmax = COP_AMPCAP_NUMSTEPS(this->w[nid].inamp_cap);
this 1343 dev/pci/azalia_codec.c dmax = COP_AMPCAP_NUMSTEPS(this->w[nid].outamp_cap);
this 1345 dev/pci/azalia_codec.c dmax = COP_VKCAP_NUMSTEPS(this->w[nid].d.volume.cap);
this 1361 dev/pci/azalia_codec.c azalia_generic_mixer_max(const codec_t *this, nid_t nid, int target)
this 1369 dev/pci/azalia_codec.c dmax = COP_AMPCAP_NUMSTEPS(this->w[nid].inamp_cap);
this 1371 dev/pci/azalia_codec.c dmax = COP_AMPCAP_NUMSTEPS(this->w[nid].outamp_cap);
this 1373 dev/pci/azalia_codec.c dmax = COP_VKCAP_NUMSTEPS(this->w[nid].d.volume.cap);
this 1379 dev/pci/azalia_codec.c azalia_generic_mixer_validate_value(const codec_t *this, nid_t nid, int target,
this 1385 dev/pci/azalia_codec.c return uv <= generic_mixer_max(this, nid, target);
this 1390 dev/pci/azalia_codec.c azalia_generic_set_port(codec_t *this, mixer_ctrl_t *mc)
this 1394 dev/pci/azalia_codec.c if (mc->dev >= this->nmixers)
this 1396 dev/pci/azalia_codec.c m = &this->mixers[mc->dev];
this 1401 dev/pci/azalia_codec.c return azalia_generic_mixer_set(this, m->nid, m->target, mc);
this 1405 dev/pci/azalia_codec.c azalia_generic_get_port(codec_t *this, mixer_ctrl_t *mc)
this 1409 dev/pci/azalia_codec.c if (mc->dev >= this->nmixers)
this 1411 dev/pci/azalia_codec.c m = &this->mixers[mc->dev];
this 1415 dev/pci/azalia_codec.c return azalia_generic_mixer_get(this, m->nid, m->target, mc);
this 1563 dev/pci/azalia_codec.c azalia_alc260_mixer_init(codec_t *this)
this 1568 dev/pci/azalia_codec.c switch (this->subid) {
this 1570 dev/pci/azalia_codec.c this->nmixers = sizeof(alc260_loox_mixer_items) / sizeof(mixer_item_t);
this 1574 dev/pci/azalia_codec.c this->nmixers = sizeof(alc260_mixer_items) / sizeof(mixer_item_t);
this 1577 dev/pci/azalia_codec.c this->mixers = malloc(sizeof(mixer_item_t) * this->nmixers,
this 1579 dev/pci/azalia_codec.c if (this->mixers == NULL) {
this 1580 dev/pci/azalia_codec.c printf("%s: out of memory in %s\n", XNAME(this), __func__);
this 1583 dev/pci/azalia_codec.c bzero(this->mixers, sizeof(mixer_item_t) * this->nmixers);
this 1584 dev/pci/azalia_codec.c memcpy(this->mixers, mi, sizeof(mixer_item_t) * this->nmixers);
this 1585 dev/pci/azalia_codec.c azalia_generic_mixer_fix_indexes(this);
this 1586 dev/pci/azalia_codec.c azalia_generic_mixer_default(this);
this 1591 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, 0x0f, MI_TARGET_PINDIR, &mc); /* lineout */
this 1592 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, 0x10, MI_TARGET_PINDIR, &mc); /* headphones */
this 1594 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, 0x12, MI_TARGET_PINDIR, &mc); /* mic1 */
this 1595 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, 0x13, MI_TARGET_PINDIR, &mc); /* mic2 */
this 1596 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, 0x14, MI_TARGET_PINDIR, &mc); /* line1 */
this 1597 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, 0x15, MI_TARGET_PINDIR, &mc); /* line2 */
this 1599 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, 0x08, MI_TARGET_INAMP(0), &mc);
this 1600 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, 0x08, MI_TARGET_INAMP(1), &mc);
this 1601 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, 0x09, MI_TARGET_INAMP(0), &mc);
this 1602 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, 0x09, MI_TARGET_INAMP(1), &mc);
this 1603 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, 0x0a, MI_TARGET_INAMP(0), &mc);
this 1604 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, 0x0a, MI_TARGET_INAMP(1), &mc);
this 1605 dev/pci/azalia_codec.c if (this->subid == ALC260_FUJITSU_ID) {
this 1607 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, 0x14, MI_TARGET_PINDIR, &mc); /* line1 */
this 1609 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, 0x05, MI_TARGET_CONNLIST, &mc);
this 1615 dev/pci/azalia_codec.c azalia_alc260_init_dacgroup(codec_t *this)
this 1627 dev/pci/azalia_codec.c this->dacs = dacs;
this 1628 dev/pci/azalia_codec.c this->adcs = adcs;
this 1633 dev/pci/azalia_codec.c azalia_alc260_set_port(codec_t *this, mixer_ctrl_t *mc)
this 1639 dev/pci/azalia_codec.c if (mc->dev >= this->nmixers)
this 1641 dev/pci/azalia_codec.c m = &this->mixers[mc->dev];
this 1648 dev/pci/azalia_codec.c err = azalia_generic_mixer_set(this, m->nid, m->target, mc);
this 1650 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, 0x09, m->target, mc);
this 1655 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, 0x0a, m->target, &mc2);
this 1660 dev/pci/azalia_codec.c err = azalia_generic_mixer_set(this, m->nid, m->target, mc);
this 1662 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, 0x09, m->target, mc);
this 1663 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, 0x0a, m->target, mc);
this 1677 dev/pci/azalia_codec.c return azalia_generic_mixer_set(this, m->nid, m->target, mc);
this 1685 dev/pci/azalia_codec.c azalia_alc880_init_dacgroup(codec_t *this)
this 1696 dev/pci/azalia_codec.c this->dacs = dacs;
this 1697 dev/pci/azalia_codec.c this->adcs = adcs;
this 1823 dev/pci/azalia_codec.c azalia_alc882_mixer_init(codec_t *this)
this 1827 dev/pci/azalia_codec.c this->nmixers = sizeof(alc882_mixer_items) / sizeof(mixer_item_t);
this 1828 dev/pci/azalia_codec.c this->mixers = malloc(sizeof(mixer_item_t) * this->nmixers,
this 1830 dev/pci/azalia_codec.c if (this->mixers == NULL) {
this 1831 dev/pci/azalia_codec.c printf("%s: out of memory in %s\n", XNAME(this), __func__);
this 1834 dev/pci/azalia_codec.c bzero(this->mixers, sizeof(mixer_item_t) * this->maxmixers);
this 1835 dev/pci/azalia_codec.c memcpy(this->mixers, alc882_mixer_items,
this 1836 dev/pci/azalia_codec.c sizeof(mixer_item_t) * this->nmixers);
this 1837 dev/pci/azalia_codec.c azalia_generic_mixer_fix_indexes(this);
this 1838 dev/pci/azalia_codec.c azalia_generic_mixer_default(this);
this 1843 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, 0x14, MI_TARGET_PINDIR, &mc);
this 1844 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, 0x1b, MI_TARGET_PINDIR, &mc);
this 1845 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, 0x15, MI_TARGET_PINDIR, &mc);
this 1846 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, 0x16, MI_TARGET_PINDIR, &mc);
this 1847 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, 0x17, MI_TARGET_PINDIR, &mc);
this 1849 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, 0x14, MI_TARGET_CONNLIST, &mc);
this 1850 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, 0x1b, MI_TARGET_CONNLIST, &mc);
this 1852 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, 0x15, MI_TARGET_CONNLIST, &mc);
this 1854 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, 0x16, MI_TARGET_CONNLIST, &mc);
this 1856 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, 0x17, MI_TARGET_CONNLIST, &mc);
this 1859 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, 0x18, MI_TARGET_PINDIR, &mc);
this 1860 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, 0x19, MI_TARGET_PINDIR, &mc);
this 1861 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, 0x1a, MI_TARGET_PINDIR, &mc);
this 1865 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, 0x24, MI_TARGET_INAMP(0), &mc);
this 1866 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, 0x23, MI_TARGET_INAMP(1), &mc);
this 1867 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, 0x22, MI_TARGET_INAMP(2), &mc);
this 1872 dev/pci/azalia_codec.c azalia_alc882_init_dacgroup(codec_t *this)
this 1891 dev/pci/azalia_codec.c this->dacs = dacs;
this 1892 dev/pci/azalia_codec.c this->adcs = adcs;
this 1897 dev/pci/azalia_codec.c azalia_alc882_set_port(codec_t *this, mixer_ctrl_t *mc)
this 1904 dev/pci/azalia_codec.c if (mc->dev >= this->nmixers)
this 1906 dev/pci/azalia_codec.c m = &this->mixers[mc->dev];
this 1918 dev/pci/azalia_codec.c for (i = 0; i < this->w[m->nid].nconnections && i < 32; i++) {
this 1920 dev/pci/azalia_codec.c err = azalia_generic_mixer_set(this, m->nid,
this 1928 dev/pci/azalia_codec.c return azalia_generic_mixer_set(this, m->nid, m->target, mc);
this 1932 dev/pci/azalia_codec.c azalia_alc882_get_port(codec_t *this, mixer_ctrl_t *mc)
this 1938 dev/pci/azalia_codec.c if (mc->dev >= this->nmixers)
this 1940 dev/pci/azalia_codec.c m = &this->mixers[mc->dev];
this 1949 dev/pci/azalia_codec.c for (i = 0; i < this->w[m->nid].nconnections && i < 32; i++) {
this 1950 dev/pci/azalia_codec.c err = this->comresp(this, m->nid, CORB_GET_AMPLIFIER_GAIN_MUTE,
this 1962 dev/pci/azalia_codec.c return azalia_generic_mixer_get(this, m->nid, m->target, mc);
this 1971 dev/pci/azalia_codec.c azalia_alc883_init_dacgroup(codec_t *this)
this 1983 dev/pci/azalia_codec.c this->dacs = dacs;
this 1984 dev/pci/azalia_codec.c this->adcs = adcs;
this 2089 dev/pci/azalia_codec.c azalia_alc883_mixer_init(codec_t *this)
this 2093 dev/pci/azalia_codec.c this->nmixers = sizeof(alc883_mixer_items) / sizeof(mixer_item_t);
this 2094 dev/pci/azalia_codec.c this->mixers = malloc(sizeof(mixer_item_t) * this->nmixers,
this 2096 dev/pci/azalia_codec.c if (this->mixers == NULL) {
this 2097 dev/pci/azalia_codec.c printf("%s: out of memory in %s\n", XNAME(this), __func__);
this 2100 dev/pci/azalia_codec.c bzero(this->mixers, sizeof(mixer_item_t) * this->maxmixers);
this 2101 dev/pci/azalia_codec.c memcpy(this->mixers, alc883_mixer_items,
this 2102 dev/pci/azalia_codec.c sizeof(mixer_item_t) * this->nmixers);
this 2103 dev/pci/azalia_codec.c azalia_generic_mixer_fix_indexes(this);
this 2104 dev/pci/azalia_codec.c azalia_generic_mixer_default(this);
this 2109 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, 0x14, MI_TARGET_PINDIR, &mc);
this 2110 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, 0x1b, MI_TARGET_PINDIR, &mc);
this 2111 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, 0x15, MI_TARGET_PINDIR, &mc);
this 2112 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, 0x16, MI_TARGET_PINDIR, &mc);
this 2113 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, 0x17, MI_TARGET_PINDIR, &mc);
this 2115 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, 0x14, MI_TARGET_CONNLIST, &mc);
this 2116 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, 0x1b, MI_TARGET_CONNLIST, &mc);
this 2118 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, 0x15, MI_TARGET_CONNLIST, &mc);
this 2120 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, 0x16, MI_TARGET_CONNLIST, &mc);
this 2122 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, 0x17, MI_TARGET_CONNLIST, &mc);
this 2125 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, 0x18, MI_TARGET_PINDIR, &mc);
this 2126 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, 0x19, MI_TARGET_PINDIR, &mc);
this 2127 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, 0x1a, MI_TARGET_PINDIR, &mc);
this 2131 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, 0x23, MI_TARGET_INAMP(1), &mc);
this 2132 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, 0x22, MI_TARGET_INAMP(2), &mc);
this 2144 dev/pci/azalia_codec.c azalia_ad1981hd_init_widget(const codec_t *this, widget_t *w, nid_t nid)
this 2182 dev/pci/azalia_codec.c azalia_ad1981hd_mixer_init(codec_t *this)
this 2187 dev/pci/azalia_codec.c err = azalia_generic_mixer_init(this);
this 2190 dev/pci/azalia_codec.c if (this->subid == AD1981HD_THINKPAD) {
this 2194 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, 0x09, MI_TARGET_PINDIR, &mc);
this 2243 dev/pci/azalia_codec.c azalia_cmi9880_mixer_init(codec_t *this)
this 2247 dev/pci/azalia_codec.c this->nmixers = sizeof(cmi9880_mixer_items) / sizeof(mixer_item_t);
this 2248 dev/pci/azalia_codec.c this->mixers = malloc(sizeof(mixer_item_t) * this->nmixers,
this 2250 dev/pci/azalia_codec.c if (this->mixers == NULL) {
this 2251 dev/pci/azalia_codec.c printf("%s: out of memory in %s\n", XNAME(this), __func__);
this 2254 dev/pci/azalia_codec.c bzero(this->mixers, sizeof(mixer_item_t) * this->maxmixers);
this 2255 dev/pci/azalia_codec.c memcpy(this->mixers, cmi9880_mixer_items,
this 2256 dev/pci/azalia_codec.c sizeof(mixer_item_t) * this->nmixers);
this 2257 dev/pci/azalia_codec.c azalia_generic_mixer_fix_indexes(this);
this 2258 dev/pci/azalia_codec.c azalia_generic_mixer_default(this);
this 2263 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, 0x08, MI_TARGET_CONNLIST, &mc);
this 2265 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, 0x09, MI_TARGET_CONNLIST, &mc);
this 2267 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, 0x0b, MI_TARGET_PINDIR, &mc);
this 2268 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, 0x0c, MI_TARGET_PINDIR, &mc);
this 2269 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, 0x0d, MI_TARGET_PINDIR, &mc);
this 2270 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, 0x0e, MI_TARGET_PINDIR, &mc);
this 2271 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, 0x0f, MI_TARGET_PINDIR, &mc);
this 2273 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, 0x0f, MI_TARGET_CONNLIST, &mc);
this 2275 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, 0x10, MI_TARGET_PINDIR, &mc); /* mic */
this 2276 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, 0x13, MI_TARGET_PINDIR, &mc); /* SPDIF-in */
this 2277 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, 0x1f, MI_TARGET_PINDIR, &mc); /* line1 */
this 2278 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, 0x20, MI_TARGET_PINDIR, &mc); /* line2 */
this 2283 dev/pci/azalia_codec.c azalia_cmi9880_init_dacgroup(codec_t *this)
this 2294 dev/pci/azalia_codec.c this->dacs = dacs;
this 2295 dev/pci/azalia_codec.c this->adcs = adcs;
this 2304 dev/pci/azalia_codec.c azalia_stac9221_init_dacgroup(codec_t *this)
this 2316 dev/pci/azalia_codec.c this->dacs = dacs;
this 2317 dev/pci/azalia_codec.c this->adcs = adcs;
this 2374 dev/pci/azalia_codec.c azalia_stac9200_mixer_init(codec_t *this)
this 2378 dev/pci/azalia_codec.c this->nmixers = sizeof(stac9200_mixer_items) / sizeof(mixer_item_t);
this 2379 dev/pci/azalia_codec.c this->mixers = malloc(sizeof(mixer_item_t) * this->nmixers,
this 2381 dev/pci/azalia_codec.c if (this->mixers == NULL) {
this 2382 dev/pci/azalia_codec.c printf("%s: out of memory in %s\n", XNAME(this), __func__);
this 2385 dev/pci/azalia_codec.c bzero(this->mixers, sizeof(mixer_item_t) * this->maxmixers);
this 2386 dev/pci/azalia_codec.c memcpy(this->mixers, stac9200_mixer_items,
this 2387 dev/pci/azalia_codec.c sizeof(mixer_item_t) * this->nmixers);
this 2388 dev/pci/azalia_codec.c azalia_generic_mixer_fix_indexes(this);
this 2389 dev/pci/azalia_codec.c azalia_generic_mixer_default(this);
this 2394 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, 0x0d, MI_TARGET_PINDIR, &mc); /* headphones */
this 2395 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, 0x0e, MI_TARGET_PINDIR, &mc); /* speaker */
this 2397 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, 0x0f, MI_TARGET_PINDIR, &mc); /* mic2 */
this 2398 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, 0x10, MI_TARGET_PINDIR, &mc); /* mic1 */
this 2401 dev/pci/azalia_codec.c mc.un.value.level[0] = azalia_generic_mixer_max(this, 0x0c, MI_TARGET_OUTAMP);
this 2403 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, 0x0c, MI_TARGET_OUTAMP, &mc);
this 2410 dev/pci/azalia_codec.c this->comresp(this, STAC9200_NID_HP,
this 2414 dev/pci/azalia_codec.c azalia_stac9200_unsol_event(this, STAC9200_EVENT_HP);
this 2419 dev/pci/azalia_codec.c azalia_stac9200_unsol_event(codec_t *this, int tag)
this 2426 dev/pci/azalia_codec.c err = this->comresp(this, STAC9200_NID_HP,
this 2432 dev/pci/azalia_codec.c azalia_generic_mixer_pinctrl(this,
this 2436 dev/pci/azalia_codec.c azalia_generic_mixer_pinctrl(this,
this 2447 dev/pci/azalia_codec.c azalia_stac9221_apple_init_dacgroup(codec_t *this)
this 2458 dev/pci/azalia_codec.c this->dacs = dacs;
this 2459 dev/pci/azalia_codec.c this->adcs = adcs;
this 2493 dev/pci/azalia_codec.c azalia_stac9221_apple_mixer_init(codec_t *this)
this 2497 dev/pci/azalia_codec.c this->nmixers = sizeof(stac9221_apple_mixer_items) / sizeof(mixer_item_t);
this 2498 dev/pci/azalia_codec.c this->mixers = malloc(sizeof(mixer_item_t) * this->nmixers,
this 2500 dev/pci/azalia_codec.c if (this->mixers == NULL) {
this 2501 dev/pci/azalia_codec.c printf("%s: out of memory in %s\n", XNAME(this), __func__);
this 2504 dev/pci/azalia_codec.c bzero(this->mixers, sizeof(mixer_item_t) * this->maxmixers);
this 2505 dev/pci/azalia_codec.c memcpy(this->mixers, stac9221_apple_mixer_items,
this 2506 dev/pci/azalia_codec.c sizeof(mixer_item_t) * this->nmixers);
this 2507 dev/pci/azalia_codec.c azalia_generic_mixer_fix_indexes(this);
this 2508 dev/pci/azalia_codec.c azalia_generic_mixer_default(this);
this 2513 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, 0x0a, MI_TARGET_PINDIR, &mc); /* headphones */
this 2514 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, 0x0b, MI_TARGET_PINDIR, &mc); /* mic, set to output */
this 2515 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, 0x0c, MI_TARGET_PINDIR, &mc); /* speaker */
this 2516 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, 0x0d, MI_TARGET_PINDIR, &mc); /* line out */
this 2517 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, 0x0f, MI_TARGET_PINDIR, &mc); /* another line out */
this 2522 dev/pci/azalia_codec.c mc.un.value.level[0] = azalia_generic_mixer_max(this, 0x02, MI_TARGET_OUTAMP);
this 2524 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, 0x02, MI_TARGET_OUTAMP, &mc);
this 2526 dev/pci/azalia_codec.c mc.un.value.level[0] = azalia_generic_mixer_max(this, 0x03, MI_TARGET_OUTAMP);
this 2528 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, 0x03, MI_TARGET_OUTAMP, &mc);
this 2530 dev/pci/azalia_codec.c mc.un.value.level[0] = azalia_generic_mixer_max(this, 0x04, MI_TARGET_OUTAMP);
this 2532 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, 0x04, MI_TARGET_OUTAMP, &mc);
this 2534 dev/pci/azalia_codec.c mc.un.value.level[0] = azalia_generic_mixer_max(this, 0x05, MI_TARGET_OUTAMP);
this 2536 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, 0x05, MI_TARGET_OUTAMP, &mc);
this 2538 dev/pci/azalia_codec.c azalia_stac9221_gpio_unmute(this, 0);
this 2539 dev/pci/azalia_codec.c azalia_stac9221_gpio_unmute(this, 1);
this 2545 dev/pci/azalia_codec.c azalia_stac9221_gpio_unmute(codec_t *this, int pin)
this 2549 dev/pci/azalia_codec.c this->comresp(this, this->audiofunc, CORB_GET_GPIO_DATA, 0, &data);
this 2550 dev/pci/azalia_codec.c this->comresp(this, this->audiofunc, CORB_GET_GPIO_ENABLE_MASK, 0, &mask);
this 2551 dev/pci/azalia_codec.c this->comresp(this, this->audiofunc, CORB_GET_GPIO_DIRECTION, 0, &dir);
this 2557 dev/pci/azalia_codec.c this->comresp(this, this->audiofunc, 0x7e7, 0, NULL);
this 2558 dev/pci/azalia_codec.c this->comresp(this, this->audiofunc, CORB_SET_GPIO_ENABLE_MASK, mask, NULL);
this 2559 dev/pci/azalia_codec.c this->comresp(this, this->audiofunc, CORB_SET_GPIO_DIRECTION, dir, NULL);
this 2561 dev/pci/azalia_codec.c this->comresp(this, this->audiofunc, CORB_SET_GPIO_DATA, data, NULL);
this 2571 dev/pci/azalia_codec.c azalia_stac7661_init_dacgroup(codec_t *this)
this 2581 dev/pci/azalia_codec.c this->dacs = dacs;
this 2582 dev/pci/azalia_codec.c this->adcs = adcs;
this 2621 dev/pci/azalia_codec.c azalia_stac7661_mixer_init(codec_t *this)
this 2625 dev/pci/azalia_codec.c this->nmixers = sizeof(stac7661_mixer_items) / sizeof(mixer_item_t);
this 2626 dev/pci/azalia_codec.c this->mixers = malloc(sizeof(mixer_item_t) * this->nmixers,
this 2628 dev/pci/azalia_codec.c if (this->mixers == NULL) {
this 2629 dev/pci/azalia_codec.c printf("%s: out of memory in %s\n", XNAME(this), __func__);
this 2632 dev/pci/azalia_codec.c bzero(this->mixers, sizeof(mixer_item_t) * this->maxmixers);
this 2633 dev/pci/azalia_codec.c memcpy(this->mixers, stac7661_mixer_items,
this 2634 dev/pci/azalia_codec.c sizeof(mixer_item_t) * this->nmixers);
this 2635 dev/pci/azalia_codec.c azalia_generic_mixer_fix_indexes(this);
this 2636 dev/pci/azalia_codec.c azalia_generic_mixer_default(this);
this 2640 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, 0x0a, MI_TARGET_PINDIR, &mc); /* headphones */
this 2641 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, 0x0f, MI_TARGET_PINDIR, &mc); /* speaker */
this 2642 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, 0x09, MI_TARGET_INAMP(0), &mc); /* mute input */
this 2644 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, 0x0d, MI_TARGET_PINDIR, &mc); /* mic */
this 2645 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, 0x14, MI_TARGET_PINDIR, &mc); /* internal mic */
this 2647 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, 0x15, MI_TARGET_CONNLIST, &mc);
this 2650 dev/pci/azalia_codec.c mc.un.value.level[0] = azalia_generic_mixer_max(this, 0x17, MI_TARGET_VOLUME);
this 2651 dev/pci/azalia_codec.c azalia_generic_mixer_set(this, 0x17, MI_TARGET_VOLUME, &mc);
this 2657 dev/pci/azalia_codec.c azalia_stac7661_set_port(codec_t *this, mixer_ctrl_t *mc)
this 2662 dev/pci/azalia_codec.c if (mc->dev >= this->nmixers)
this 2664 dev/pci/azalia_codec.c m = &this->mixers[mc->dev];
this 2670 dev/pci/azalia_codec.c err = azalia_generic_mixer_set(this, STAC7661_DAC_HP,
this 2672 dev/pci/azalia_codec.c err = azalia_generic_mixer_set(this, STAC7661_DAC_SPEAKER,
this 2676 dev/pci/azalia_codec.c return azalia_generic_mixer_set(this, m->nid, m->target, mc);
this 2679 dev/pci/azalia_codec.c azalia_stac7661_get_port(codec_t *this, mixer_ctrl_t *mc)
this 2683 dev/pci/azalia_codec.c if (mc->dev >= this->nmixers)
this 2685 dev/pci/azalia_codec.c m = &this->mixers[mc->dev];
this 2690 dev/pci/azalia_codec.c return azalia_generic_mixer_get(this, m->nid,
this 2692 dev/pci/azalia_codec.c return azalia_generic_mixer_get(this, m->nid, m->target, mc);
this 548 dev/usb/usbdi.c XXX should we do this?
this 256 lib/libz/infback.c code this; /* current decoding table entry */
this 404 lib/libz/infback.c this = state->lencode[BITS(state->lenbits)];
this 405 lib/libz/infback.c if ((unsigned)(this.bits) <= bits) break;
this 408 lib/libz/infback.c if (this.val < 16) {
this 409 lib/libz/infback.c NEEDBITS(this.bits);
this 410 lib/libz/infback.c DROPBITS(this.bits);
this 411 lib/libz/infback.c state->lens[state->have++] = this.val;
this 414 lib/libz/infback.c if (this.val == 16) {
this 415 lib/libz/infback.c NEEDBITS(this.bits + 2);
this 416 lib/libz/infback.c DROPBITS(this.bits);
this 426 lib/libz/infback.c else if (this.val == 17) {
this 427 lib/libz/infback.c NEEDBITS(this.bits + 3);
this 428 lib/libz/infback.c DROPBITS(this.bits);
this 434 lib/libz/infback.c NEEDBITS(this.bits + 7);
this 435 lib/libz/infback.c DROPBITS(this.bits);
this 491 lib/libz/infback.c this = state->lencode[BITS(state->lenbits)];
this 492 lib/libz/infback.c if ((unsigned)(this.bits) <= bits) break;
this 495 lib/libz/infback.c if (this.op && (this.op & 0xf0) == 0) {
this 496 lib/libz/infback.c last = this;
this 498 lib/libz/infback.c this = state->lencode[last.val +
this 500 lib/libz/infback.c if ((unsigned)(last.bits + this.bits) <= bits) break;
this 505 lib/libz/infback.c DROPBITS(this.bits);
this 506 lib/libz/infback.c state->length = (unsigned)this.val;
this 509 lib/libz/infback.c if (this.op == 0) {
this 510 lib/libz/infback.c Tracevv((stderr, this.val >= 0x20 && this.val < 0x7f ?
this 512 lib/libz/infback.c "inflate: literal 0x%02x\n", this.val));
this 521 lib/libz/infback.c if (this.op & 32) {
this 528 lib/libz/infback.c if (this.op & 64) {
this 535 lib/libz/infback.c state->extra = (unsigned)(this.op) & 15;
this 545 lib/libz/infback.c this = state->distcode[BITS(state->distbits)];
this 546 lib/libz/infback.c if ((unsigned)(this.bits) <= bits) break;
this 549 lib/libz/infback.c if ((this.op & 0xf0) == 0) {
this 550 lib/libz/infback.c last = this;
this 552 lib/libz/infback.c this = state->distcode[last.val +
this 554 lib/libz/infback.c if ((unsigned)(last.bits + this.bits) <= bits) break;
this 559 lib/libz/infback.c DROPBITS(this.bits);
this 560 lib/libz/infback.c if (this.op & 64) {
this 565 lib/libz/infback.c state->offset = (unsigned)this.val;
this 568 lib/libz/infback.c state->extra = (unsigned)(this.op) & 15;
this 91 lib/libz/inffast.c code this; /* retrieved table entry */
this 128 lib/libz/inffast.c this = lcode[hold & lmask];
this 130 lib/libz/inffast.c op = (unsigned)(this.bits);
this 133 lib/libz/inffast.c op = (unsigned)(this.op);
this 135 lib/libz/inffast.c Tracevv((stderr, this.val >= 0x20 && this.val < 0x7f ?
this 137 lib/libz/inffast.c "inflate: literal 0x%02x\n", this.val));
this 138 lib/libz/inffast.c PUP(out) = (unsigned char)(this.val);
this 141 lib/libz/inffast.c len = (unsigned)(this.val);
this 159 lib/libz/inffast.c this = dcode[hold & dmask];
this 161 lib/libz/inffast.c op = (unsigned)(this.bits);
this 164 lib/libz/inffast.c op = (unsigned)(this.op);
this 166 lib/libz/inffast.c dist = (unsigned)(this.val);
this 267 lib/libz/inffast.c this = dcode[this.val + (hold & ((1U << op) - 1))];
this 281 lib/libz/inffast.c this = lcode[this.val + (hold & ((1U << op) - 1))];
this 568 lib/libz/inflate.c code this; /* current decoding table entry */
this 923 lib/libz/inflate.c this = state->lencode[BITS(state->lenbits)];
this 924 lib/libz/inflate.c if ((unsigned)(this.bits) <= bits) break;
this 927 lib/libz/inflate.c if (this.val < 16) {
this 928 lib/libz/inflate.c NEEDBITS(this.bits);
this 929 lib/libz/inflate.c DROPBITS(this.bits);
this 930 lib/libz/inflate.c state->lens[state->have++] = this.val;
this 933 lib/libz/inflate.c if (this.val == 16) {
this 934 lib/libz/inflate.c NEEDBITS(this.bits + 2);
this 935 lib/libz/inflate.c DROPBITS(this.bits);
this 949 lib/libz/inflate.c else if (this.val == 17) {
this 950 lib/libz/inflate.c NEEDBITS(this.bits + 3);
this 951 lib/libz/inflate.c DROPBITS(this.bits);
this 957 lib/libz/inflate.c NEEDBITS(this.bits + 7);
this 958 lib/libz/inflate.c DROPBITS(this.bits);
this 1020 lib/libz/inflate.c this = state->lencode[BITS(state->lenbits)];
this 1021 lib/libz/inflate.c if ((unsigned)(this.bits) <= bits) break;
this 1024 lib/libz/inflate.c if (this.op && (this.op & 0xf0) == 0) {
this 1025 lib/libz/inflate.c last = this;
this 1027 lib/libz/inflate.c this = state->lencode[last.val +
this 1029 lib/libz/inflate.c if ((unsigned)(last.bits + this.bits) <= bits) break;
this 1034 lib/libz/inflate.c DROPBITS(this.bits);
this 1035 lib/libz/inflate.c state->length = (unsigned)this.val;
this 1036 lib/libz/inflate.c if ((int)(this.op) == 0) {
this 1037 lib/libz/inflate.c Tracevv((stderr, this.val >= 0x20 && this.val < 0x7f ?
this 1039 lib/libz/inflate.c "inflate: literal 0x%02x\n", this.val));
this 1043 lib/libz/inflate.c if (this.op & 32) {
this 1048 lib/libz/inflate.c if (this.op & 64) {
this 1057 lib/libz/inflate.c state->extra = (unsigned)(this.op) & 15;
this 1069 lib/libz/inflate.c this = state->distcode[BITS(state->distbits)];
this 1070 lib/libz/inflate.c if ((unsigned)(this.bits) <= bits) break;
this 1073 lib/libz/inflate.c if ((this.op & 0xf0) == 0) {
this 1074 lib/libz/inflate.c last = this;
this 1076 lib/libz/inflate.c this = state->distcode[last.val +
this 1078 lib/libz/inflate.c if ((unsigned)(last.bits + this.bits) <= bits) break;
this 1083 lib/libz/inflate.c DROPBITS(this.bits);
this 1084 lib/libz/inflate.c if (this.op & 64) {
this 1093 lib/libz/inflate.c state->offset = (unsigned)this.val;
this 1094 lib/libz/inflate.c state->extra = (unsigned)(this.op) & 15;
this 54 lib/libz/inftrees.c code this; /* table entry for duplication */
this 119 lib/libz/inftrees.c this.op = (unsigned char)64; /* invalid code marker */
this 120 lib/libz/inftrees.c this.bits = (unsigned char)1;
this 121 lib/libz/inftrees.c this.val = (unsigned short)0;
this 122 lib/libz/inftrees.c *(*table)++ = this; /* make a table to force an error */
this 123 lib/libz/inftrees.c *(*table)++ = this;
this 219 lib/libz/inftrees.c this.bits = (unsigned char)(len - drop);
this 221 lib/libz/inftrees.c this.op = (unsigned char)0;
this 222 lib/libz/inftrees.c this.val = work[sym];
this 225 lib/libz/inftrees.c this.op = (unsigned char)(extra[work[sym]]);
this 226 lib/libz/inftrees.c this.val = base[work[sym]];
this 229 lib/libz/inftrees.c this.op = (unsigned char)(32 + 64); /* end of block */
this 230 lib/libz/inftrees.c this.val = 0;
this 239 lib/libz/inftrees.c next[(huff >> drop) + fill] = this;
this 299 lib/libz/inftrees.c this.op = (unsigned char)64; /* invalid code marker */
this 300 lib/libz/inftrees.c this.bits = (unsigned char)(len - drop);
this 301 lib/libz/inftrees.c this.val = (unsigned short)0;
this 308 lib/libz/inftrees.c this.bits = (unsigned char)len;
this 312 lib/libz/inftrees.c next[huff >> drop] = this;