burgundy.c (75bf465f0bc33e9b776a46d6a1b9b990f5fb7c37) | burgundy.c (c031b0cc77a1bef980eb360e317a6bbd54211326) |
---|---|
1// SPDX-License-Identifier: GPL-2.0-or-later 2/* 3 * PMac Burgundy lowlevel functions 4 * 5 * Copyright (c) by Takashi Iwai <tiwai@suse.de> 6 * code based on dmasound.c. 7 */ 8 --- 440 unchanged lines hidden (view full) --- 449 .get = snd_pmac_burgundy_get_switch_b,\ 450 .put = snd_pmac_burgundy_put_switch_b,\ 451 .private_value = ((lmask) | ((rmask) << 8)\ 452 | (ADDR2BASE(addr) << 16) | ((stereo) << 24)) } 453 454/* 455 * Burgundy mixers 456 */ | 1// SPDX-License-Identifier: GPL-2.0-or-later 2/* 3 * PMac Burgundy lowlevel functions 4 * 5 * Copyright (c) by Takashi Iwai <tiwai@suse.de> 6 * code based on dmasound.c. 7 */ 8 --- 440 unchanged lines hidden (view full) --- 449 .get = snd_pmac_burgundy_get_switch_b,\ 450 .put = snd_pmac_burgundy_put_switch_b,\ 451 .private_value = ((lmask) | ((rmask) << 8)\ 452 | (ADDR2BASE(addr) << 16) | ((stereo) << 24)) } 453 454/* 455 * Burgundy mixers 456 */ |
457static struct snd_kcontrol_new snd_pmac_burgundy_mixers[] = { | 457static const struct snd_kcontrol_new snd_pmac_burgundy_mixers[] = { |
458 BURGUNDY_VOLUME_W("Master Playback Volume", 0, 459 MASK_ADDR_BURGUNDY_MASTER_VOLUME, 8), 460 BURGUNDY_VOLUME_W("CD Capture Volume", 0, 461 MASK_ADDR_BURGUNDY_VOLCD, 16), 462 BURGUNDY_VOLUME_2B("Input Capture Volume", 0, 463 MASK_ADDR_BURGUNDY_VOLMIX01, 2), 464 BURGUNDY_VOLUME_2B("Mixer Playback Volume", 0, 465 MASK_ADDR_BURGUNDY_VOLMIX23, 0), --- 11 unchanged lines hidden (view full) --- 477 * MASK_ADDR_BURGUNDY_HOSTIFAD, 0x02, 0, 0), 478 * BURGUNDY_SWITCH_B("Mixer Capture Switch", 0, 479 * MASK_ADDR_BURGUNDY_HOSTIFAD, 0x01, 0, 0), 480 * BURGUNDY_SWITCH_B("PCM out Capture Switch", 0, 481 * MASK_ADDR_BURGUNDY_HOSTIFEH, 0x02, 0, 0), 482 */ BURGUNDY_SWITCH_B("PCM Capture Switch", 0, 483 MASK_ADDR_BURGUNDY_HOSTIFEH, 0x01, 0, 0) 484}; | 458 BURGUNDY_VOLUME_W("Master Playback Volume", 0, 459 MASK_ADDR_BURGUNDY_MASTER_VOLUME, 8), 460 BURGUNDY_VOLUME_W("CD Capture Volume", 0, 461 MASK_ADDR_BURGUNDY_VOLCD, 16), 462 BURGUNDY_VOLUME_2B("Input Capture Volume", 0, 463 MASK_ADDR_BURGUNDY_VOLMIX01, 2), 464 BURGUNDY_VOLUME_2B("Mixer Playback Volume", 0, 465 MASK_ADDR_BURGUNDY_VOLMIX23, 0), --- 11 unchanged lines hidden (view full) --- 477 * MASK_ADDR_BURGUNDY_HOSTIFAD, 0x02, 0, 0), 478 * BURGUNDY_SWITCH_B("Mixer Capture Switch", 0, 479 * MASK_ADDR_BURGUNDY_HOSTIFAD, 0x01, 0, 0), 480 * BURGUNDY_SWITCH_B("PCM out Capture Switch", 0, 481 * MASK_ADDR_BURGUNDY_HOSTIFEH, 0x02, 0, 0), 482 */ BURGUNDY_SWITCH_B("PCM Capture Switch", 0, 483 MASK_ADDR_BURGUNDY_HOSTIFEH, 0x01, 0, 0) 484}; |
485static struct snd_kcontrol_new snd_pmac_burgundy_mixers_imac[] = { | 485static const struct snd_kcontrol_new snd_pmac_burgundy_mixers_imac[] = { |
486 BURGUNDY_VOLUME_W("Line in Capture Volume", 0, 487 MASK_ADDR_BURGUNDY_VOLLINE, 16), 488 BURGUNDY_VOLUME_W("Mic Capture Volume", 0, 489 MASK_ADDR_BURGUNDY_VOLMIC, 16), 490 BURGUNDY_VOLUME_B("Line in Gain Capture Volume", 0, 491 MASK_ADDR_BURGUNDY_GAINLINE, 1, 0), 492 BURGUNDY_VOLUME_B("Mic Gain Capture Volume", 0, 493 MASK_ADDR_BURGUNDY_GAINMIC, 1, 0), --- 9 unchanged lines hidden (view full) --- 503 MASK_ADDR_BURGUNDY_CAPTURESELECTS, 2, 18, 1), 504 BURGUNDY_SWITCH_W("Line in Playback Switch", 0, 505 MASK_ADDR_BURGUNDY_OUTPUTSELECTS, 1, 17, 1), 506 BURGUNDY_SWITCH_W("Mic Playback Switch", 0, 507 MASK_ADDR_BURGUNDY_OUTPUTSELECTS, 2, 18, 1), 508 BURGUNDY_SWITCH_B("Mic Boost Capture Switch", 0, 509 MASK_ADDR_BURGUNDY_INPBOOST, 0x40, 0x80, 1) 510}; | 486 BURGUNDY_VOLUME_W("Line in Capture Volume", 0, 487 MASK_ADDR_BURGUNDY_VOLLINE, 16), 488 BURGUNDY_VOLUME_W("Mic Capture Volume", 0, 489 MASK_ADDR_BURGUNDY_VOLMIC, 16), 490 BURGUNDY_VOLUME_B("Line in Gain Capture Volume", 0, 491 MASK_ADDR_BURGUNDY_GAINLINE, 1, 0), 492 BURGUNDY_VOLUME_B("Mic Gain Capture Volume", 0, 493 MASK_ADDR_BURGUNDY_GAINMIC, 1, 0), --- 9 unchanged lines hidden (view full) --- 503 MASK_ADDR_BURGUNDY_CAPTURESELECTS, 2, 18, 1), 504 BURGUNDY_SWITCH_W("Line in Playback Switch", 0, 505 MASK_ADDR_BURGUNDY_OUTPUTSELECTS, 1, 17, 1), 506 BURGUNDY_SWITCH_W("Mic Playback Switch", 0, 507 MASK_ADDR_BURGUNDY_OUTPUTSELECTS, 2, 18, 1), 508 BURGUNDY_SWITCH_B("Mic Boost Capture Switch", 0, 509 MASK_ADDR_BURGUNDY_INPBOOST, 0x40, 0x80, 1) 510}; |
511static struct snd_kcontrol_new snd_pmac_burgundy_mixers_pmac[] = { | 511static const struct snd_kcontrol_new snd_pmac_burgundy_mixers_pmac[] = { |
512 BURGUNDY_VOLUME_W("Line in Capture Volume", 0, 513 MASK_ADDR_BURGUNDY_VOLMIC, 16), 514 BURGUNDY_VOLUME_B("Line in Gain Capture Volume", 0, 515 MASK_ADDR_BURGUNDY_GAINMIC, 1, 0), 516 BURGUNDY_VOLUME_B("Speaker Playback Volume", 0, 517 MASK_ADDR_BURGUNDY_ATTENMONO, 0, 1), 518 BURGUNDY_VOLUME_B("Line out Playback Volume", 0, 519 MASK_ADDR_BURGUNDY_ATTENSPEAKER, 1, 1), 520 BURGUNDY_SWITCH_W("Line in Capture Switch", 0, 521 MASK_ADDR_BURGUNDY_CAPTURESELECTS, 2, 18, 1), 522 BURGUNDY_SWITCH_W("Line in Playback Switch", 0, 523 MASK_ADDR_BURGUNDY_OUTPUTSELECTS, 2, 18, 1), 524/* BURGUNDY_SWITCH_B("Line in Boost Capture Switch", 0, 525 * MASK_ADDR_BURGUNDY_INPBOOST, 0x40, 0x80, 1) */ 526}; | 512 BURGUNDY_VOLUME_W("Line in Capture Volume", 0, 513 MASK_ADDR_BURGUNDY_VOLMIC, 16), 514 BURGUNDY_VOLUME_B("Line in Gain Capture Volume", 0, 515 MASK_ADDR_BURGUNDY_GAINMIC, 1, 0), 516 BURGUNDY_VOLUME_B("Speaker Playback Volume", 0, 517 MASK_ADDR_BURGUNDY_ATTENMONO, 0, 1), 518 BURGUNDY_VOLUME_B("Line out Playback Volume", 0, 519 MASK_ADDR_BURGUNDY_ATTENSPEAKER, 1, 1), 520 BURGUNDY_SWITCH_W("Line in Capture Switch", 0, 521 MASK_ADDR_BURGUNDY_CAPTURESELECTS, 2, 18, 1), 522 BURGUNDY_SWITCH_W("Line in Playback Switch", 0, 523 MASK_ADDR_BURGUNDY_OUTPUTSELECTS, 2, 18, 1), 524/* BURGUNDY_SWITCH_B("Line in Boost Capture Switch", 0, 525 * MASK_ADDR_BURGUNDY_INPBOOST, 0x40, 0x80, 1) */ 526}; |
527static struct snd_kcontrol_new snd_pmac_burgundy_master_sw_imac = | 527static const struct snd_kcontrol_new snd_pmac_burgundy_master_sw_imac = |
528BURGUNDY_SWITCH_B("Master Playback Switch", 0, 529 MASK_ADDR_BURGUNDY_MORE_OUTPUTENABLES, 530 BURGUNDY_OUTPUT_LEFT | BURGUNDY_LINEOUT_LEFT | BURGUNDY_HP_LEFT, 531 BURGUNDY_OUTPUT_RIGHT | BURGUNDY_LINEOUT_RIGHT | BURGUNDY_HP_RIGHT, 1); | 528BURGUNDY_SWITCH_B("Master Playback Switch", 0, 529 MASK_ADDR_BURGUNDY_MORE_OUTPUTENABLES, 530 BURGUNDY_OUTPUT_LEFT | BURGUNDY_LINEOUT_LEFT | BURGUNDY_HP_LEFT, 531 BURGUNDY_OUTPUT_RIGHT | BURGUNDY_LINEOUT_RIGHT | BURGUNDY_HP_RIGHT, 1); |
532static struct snd_kcontrol_new snd_pmac_burgundy_master_sw_pmac = | 532static const struct snd_kcontrol_new snd_pmac_burgundy_master_sw_pmac = |
533BURGUNDY_SWITCH_B("Master Playback Switch", 0, 534 MASK_ADDR_BURGUNDY_MORE_OUTPUTENABLES, 535 BURGUNDY_OUTPUT_INTERN 536 | BURGUNDY_OUTPUT_LEFT, BURGUNDY_OUTPUT_RIGHT, 1); | 533BURGUNDY_SWITCH_B("Master Playback Switch", 0, 534 MASK_ADDR_BURGUNDY_MORE_OUTPUTENABLES, 535 BURGUNDY_OUTPUT_INTERN 536 | BURGUNDY_OUTPUT_LEFT, BURGUNDY_OUTPUT_RIGHT, 1); |
537static struct snd_kcontrol_new snd_pmac_burgundy_speaker_sw_imac = | 537static const struct snd_kcontrol_new snd_pmac_burgundy_speaker_sw_imac = |
538BURGUNDY_SWITCH_B("Speaker Playback Switch", 0, 539 MASK_ADDR_BURGUNDY_MORE_OUTPUTENABLES, 540 BURGUNDY_OUTPUT_LEFT, BURGUNDY_OUTPUT_RIGHT, 1); | 538BURGUNDY_SWITCH_B("Speaker Playback Switch", 0, 539 MASK_ADDR_BURGUNDY_MORE_OUTPUTENABLES, 540 BURGUNDY_OUTPUT_LEFT, BURGUNDY_OUTPUT_RIGHT, 1); |
541static struct snd_kcontrol_new snd_pmac_burgundy_speaker_sw_pmac = | 541static const struct snd_kcontrol_new snd_pmac_burgundy_speaker_sw_pmac = |
542BURGUNDY_SWITCH_B("Speaker Playback Switch", 0, 543 MASK_ADDR_BURGUNDY_MORE_OUTPUTENABLES, 544 BURGUNDY_OUTPUT_INTERN, 0, 0); | 542BURGUNDY_SWITCH_B("Speaker Playback Switch", 0, 543 MASK_ADDR_BURGUNDY_MORE_OUTPUTENABLES, 544 BURGUNDY_OUTPUT_INTERN, 0, 0); |
545static struct snd_kcontrol_new snd_pmac_burgundy_line_sw_imac = | 545static const struct snd_kcontrol_new snd_pmac_burgundy_line_sw_imac = |
546BURGUNDY_SWITCH_B("Line out Playback Switch", 0, 547 MASK_ADDR_BURGUNDY_MORE_OUTPUTENABLES, 548 BURGUNDY_LINEOUT_LEFT, BURGUNDY_LINEOUT_RIGHT, 1); | 546BURGUNDY_SWITCH_B("Line out Playback Switch", 0, 547 MASK_ADDR_BURGUNDY_MORE_OUTPUTENABLES, 548 BURGUNDY_LINEOUT_LEFT, BURGUNDY_LINEOUT_RIGHT, 1); |
549static struct snd_kcontrol_new snd_pmac_burgundy_line_sw_pmac = | 549static const struct snd_kcontrol_new snd_pmac_burgundy_line_sw_pmac = |
550BURGUNDY_SWITCH_B("Line out Playback Switch", 0, 551 MASK_ADDR_BURGUNDY_MORE_OUTPUTENABLES, 552 BURGUNDY_OUTPUT_LEFT, BURGUNDY_OUTPUT_RIGHT, 1); | 550BURGUNDY_SWITCH_B("Line out Playback Switch", 0, 551 MASK_ADDR_BURGUNDY_MORE_OUTPUTENABLES, 552 BURGUNDY_OUTPUT_LEFT, BURGUNDY_OUTPUT_RIGHT, 1); |
553static struct snd_kcontrol_new snd_pmac_burgundy_hp_sw_imac = | 553static const struct snd_kcontrol_new snd_pmac_burgundy_hp_sw_imac = |
554BURGUNDY_SWITCH_B("Headphone Playback Switch", 0, 555 MASK_ADDR_BURGUNDY_MORE_OUTPUTENABLES, 556 BURGUNDY_HP_LEFT, BURGUNDY_HP_RIGHT, 1); 557 558 559#ifdef PMAC_SUPPORT_AUTOMUTE 560/* 561 * auto-mute stuffs --- 158 unchanged lines hidden --- | 554BURGUNDY_SWITCH_B("Headphone Playback Switch", 0, 555 MASK_ADDR_BURGUNDY_MORE_OUTPUTENABLES, 556 BURGUNDY_HP_LEFT, BURGUNDY_HP_RIGHT, 1); 557 558 559#ifdef PMAC_SUPPORT_AUTOMUTE 560/* 561 * auto-mute stuffs --- 158 unchanged lines hidden --- |