Lines Matching +full:ext +full:- +full:regs
1 // SPDX-License-Identifier: GPL-2.0-or-later
46 snd_iprintf(buffer, "%-17s: %3d.%d dBV %c %2d/fs %s\n", in snd_ac97_proc_read_functions()
48 (info & 0x8000 ? -1 : 1) * ((info & 0x7000) >> 12) * 3 / 2, in snd_ac97_proc_read_functions()
50 info & 0x0400 ? 'X' : '-', in snd_ac97_proc_read_functions()
95 unsigned short val, tmp, ext, mext; in snd_ac97_proc_read_main() local
101 snd_ac97_get_name(NULL, ac97->id, name, 0); in snd_ac97_proc_read_main()
102 snd_iprintf(buffer, "%d-%d/%d: %s\n\n", ac97->addr, ac97->num, subidx, name); in snd_ac97_proc_read_main()
104 if ((ac97->scaps & AC97_SCAP_AUDIO) == 0) in snd_ac97_proc_read_main()
108 ac97->subsystem_vendor); in snd_ac97_proc_read_main()
110 ac97->subsystem_device); in snd_ac97_proc_read_main()
112 snd_iprintf(buffer, "Flags: %x\n", ac97->flags); in snd_ac97_proc_read_main()
114 if ((ac97->ext_id & AC97_EI_REV_MASK) >= AC97_EI_REV_23) { in snd_ac97_proc_read_main()
130 val = ac97->caps; in snd_ac97_proc_read_main()
132 val & AC97_BC_DEDICATED_MIC ? " -dedicated MIC PCM IN channel-" : "", in snd_ac97_proc_read_main()
133 val & AC97_BC_RESERVED1 ? " -reserved1-" : "", in snd_ac97_proc_read_main()
134 val & AC97_BC_BASS_TREBLE ? " -bass & treble-" : "", in snd_ac97_proc_read_main()
135 val & AC97_BC_SIM_STEREO ? " -simulated stereo-" : "", in snd_ac97_proc_read_main()
136 val & AC97_BC_HEADPHONE ? " -headphone out-" : "", in snd_ac97_proc_read_main()
137 val & AC97_BC_LOUDNESS ? " -loudness-" : ""); in snd_ac97_proc_read_main()
138 tmp = ac97->caps & AC97_BC_DAC_MASK; in snd_ac97_proc_read_main()
140 tmp == AC97_BC_16BIT_DAC ? "16-bit" : "", in snd_ac97_proc_read_main()
141 tmp == AC97_BC_18BIT_DAC ? "18-bit" : "", in snd_ac97_proc_read_main()
142 tmp == AC97_BC_20BIT_DAC ? "20-bit" : "", in snd_ac97_proc_read_main()
144 tmp = ac97->caps & AC97_BC_ADC_MASK; in snd_ac97_proc_read_main()
146 tmp == AC97_BC_16BIT_ADC ? "16-bit" : "", in snd_ac97_proc_read_main()
147 tmp == AC97_BC_18BIT_ADC ? "18-bit" : "", in snd_ac97_proc_read_main()
148 tmp == AC97_BC_20BIT_ADC ? "20-bit" : "", in snd_ac97_proc_read_main()
154 …snd_iprintf(buffer, "Mic gain : %s [%s]\n", val & 0x0040 ? "+20dB" : "+0dB", ac97->regs[AC… in snd_ac97_proc_read_main()
170 if (ac97->ext_id & AC97_EI_DRA) in snd_ac97_proc_read_main()
174 ext = snd_ac97_read(ac97, AC97_EXTENDED_ID); in snd_ac97_proc_read_main()
175 if (ext == 0) in snd_ac97_proc_read_main()
179 (ext & AC97_EI_ADDR_MASK) >> AC97_EI_ADDR_SHIFT, in snd_ac97_proc_read_main()
180 (ext & AC97_EI_REV_MASK) >> AC97_EI_REV_SHIFT, in snd_ac97_proc_read_main()
181 ext & AC97_EI_AMAP ? " AMAP" : "", in snd_ac97_proc_read_main()
182 ext & AC97_EI_LDAC ? " LDAC" : "", in snd_ac97_proc_read_main()
183 ext & AC97_EI_SDAC ? " SDAC" : "", in snd_ac97_proc_read_main()
184 ext & AC97_EI_CDAC ? " CDAC" : "", in snd_ac97_proc_read_main()
185 (ext & AC97_EI_DACS_SLOT_MASK) >> AC97_EI_DACS_SLOT_SHIFT, in snd_ac97_proc_read_main()
186 ext & AC97_EI_VRM ? " VRM" : "", in snd_ac97_proc_read_main()
187 ext & AC97_EI_SPDIF ? " SPDIF" : "", in snd_ac97_proc_read_main()
188 ext & AC97_EI_DRA ? " DRA" : "", in snd_ac97_proc_read_main()
189 ext & AC97_EI_VRA ? " VRA" : ""); in snd_ac97_proc_read_main()
201 … ext & AC97_EI_SPDIF ? spdif_slots[(val & AC97_EA_SPSA_SLOT_MASK) >> AC97_EA_SPSA_SLOT_SHIFT] : "", in snd_ac97_proc_read_main()
206 if (ext & AC97_EI_VRA) { /* VRA */ in snd_ac97_proc_read_main()
209 if (ext & AC97_EI_SDAC) { in snd_ac97_proc_read_main()
213 if (ext & AC97_EI_LDAC) { in snd_ac97_proc_read_main()
220 if (ext & AC97_EI_VRM) { in snd_ac97_proc_read_main()
224 if ((ext & AC97_EI_SPDIF) || (ac97->flags & AC97_CS_SPDIF) || in snd_ac97_proc_read_main()
225 (ac97->id == AC97_ID_YMF743)) { in snd_ac97_proc_read_main()
226 if (ac97->flags & AC97_CS_SPDIF) in snd_ac97_proc_read_main()
228 else if (ac97->id == AC97_ID_YMF743) { in snd_ac97_proc_read_main()
236 val & AC97_SC_NAUDIO ? " Non-audio" : " PCM", in snd_ac97_proc_read_main()
241 (ac97->flags & AC97_CS_SPDIF) ? in snd_ac97_proc_read_main()
244 (ac97->flags & AC97_CS_SPDIF) ? in snd_ac97_proc_read_main()
247 (ac97->flags & AC97_CS_SPDIF) ? in snd_ac97_proc_read_main()
251 if ((ac97->id & 0xfffffff0) == 0x414c4720 && in snd_ac97_proc_read_main()
258 val & AC97_ALC650_NAUDIO ? " Non-audio" : " PCM", in snd_ac97_proc_read_main()
274 if ((ac97->ext_id & AC97_EI_REV_MASK) >= AC97_EI_REV_23) { in snd_ac97_proc_read_main()
330 struct snd_ac97 *ac97 = entry->private_data; in snd_ac97_proc_read()
332 mutex_lock(&ac97->page_mutex); in snd_ac97_proc_read()
333 if ((ac97->id & 0xffffff40) == AC97_ID_AD1881) { // Analog Devices AD1881/85/86 in snd_ac97_proc_read()
336 if (ac97->spec.ad18xx.id[idx]) { in snd_ac97_proc_read()
339 ac97->spec.ad18xx.unchained[idx] | ac97->spec.ad18xx.chained[idx]); in snd_ac97_proc_read()
348 ac97->spec.ad18xx.unchained[0], in snd_ac97_proc_read()
349 ac97->spec.ad18xx.unchained[1], in snd_ac97_proc_read()
350 ac97->spec.ad18xx.unchained[2]); in snd_ac97_proc_read()
352 ac97->spec.ad18xx.chained[0], in snd_ac97_proc_read()
353 ac97->spec.ad18xx.chained[1], in snd_ac97_proc_read()
354 ac97->spec.ad18xx.chained[2]); in snd_ac97_proc_read()
358 mutex_unlock(&ac97->page_mutex); in snd_ac97_proc_read()
365 struct snd_ac97 *ac97 = entry->private_data; in snd_ac97_proc_regs_write()
368 mutex_lock(&ac97->page_mutex); in snd_ac97_proc_regs_write()
376 mutex_unlock(&ac97->page_mutex); in snd_ac97_proc_regs_write()
393 struct snd_ac97 *ac97 = entry->private_data; in snd_ac97_proc_regs_read()
395 mutex_lock(&ac97->page_mutex); in snd_ac97_proc_regs_read()
396 if ((ac97->id & 0xffffff40) == AC97_ID_AD1881) { // Analog Devices AD1881/85/86 in snd_ac97_proc_regs_read()
400 if (ac97->spec.ad18xx.id[idx]) { in snd_ac97_proc_regs_read()
403 ac97->spec.ad18xx.unchained[idx] | ac97->spec.ad18xx.chained[idx]); in snd_ac97_proc_regs_read()
411 mutex_unlock(&ac97->page_mutex); in snd_ac97_proc_regs_read()
420 if (ac97->bus->proc == NULL) in snd_ac97_proc_init()
423 sprintf(name, "%s#%d-%d", prefix, ac97->addr, ac97->num); in snd_ac97_proc_init()
424 entry = snd_info_create_card_entry(ac97->bus->card, name, in snd_ac97_proc_init()
425 ac97->bus->proc); in snd_ac97_proc_init()
428 ac97->proc = entry; in snd_ac97_proc_init()
429 sprintf(name, "%s#%d-%d+regs", prefix, ac97->addr, ac97->num); in snd_ac97_proc_init()
430 entry = snd_info_create_card_entry(ac97->bus->card, name, in snd_ac97_proc_init()
431 ac97->bus->proc); in snd_ac97_proc_init()
435 entry->mode |= 0200; in snd_ac97_proc_init()
436 entry->c.text.write = snd_ac97_proc_regs_write; in snd_ac97_proc_init()
439 ac97->proc_regs = entry; in snd_ac97_proc_init()
444 snd_info_free_entry(ac97->proc_regs); in snd_ac97_proc_done()
445 ac97->proc_regs = NULL; in snd_ac97_proc_done()
446 snd_info_free_entry(ac97->proc); in snd_ac97_proc_done()
447 ac97->proc = NULL; in snd_ac97_proc_done()
455 sprintf(name, "codec97#%d", bus->num); in snd_ac97_bus_proc_init()
456 entry = snd_info_create_card_entry(bus->card, name, in snd_ac97_bus_proc_init()
457 bus->card->proc_root); in snd_ac97_bus_proc_init()
459 entry->mode = S_IFDIR | 0555; in snd_ac97_bus_proc_init()
460 bus->proc = entry; in snd_ac97_bus_proc_init()
465 snd_info_free_entry(bus->proc); in snd_ac97_bus_proc_done()
466 bus->proc = NULL; in snd_ac97_bus_proc_done()