Lines Matching refs:icode

472 static void snd_emu10k1_write_op(struct snd_emu10k1_fx8010_code *icode,  in snd_emu10k1_write_op()  argument
479 code = (u_int32_t __force *)icode->code + (*ptr) * 2; in snd_emu10k1_write_op()
480 set_bit(*ptr, icode->code_valid); in snd_emu10k1_write_op()
486 #define OP(icode, ptr, op, r, a, x, y) \ argument
487 snd_emu10k1_write_op(icode, ptr, op, r, a, x, y)
489 static void snd_emu10k1_audigy_write_op(struct snd_emu10k1_fx8010_code *icode, in snd_emu10k1_audigy_write_op() argument
496 code = (u_int32_t __force *)icode->code + (*ptr) * 2; in snd_emu10k1_audigy_write_op()
497 set_bit(*ptr, icode->code_valid); in snd_emu10k1_audigy_write_op()
503 #define A_OP(icode, ptr, op, r, a, x, y) \ argument
504 snd_emu10k1_audigy_write_op(icode, ptr, op, r, a, x, y)
519 struct snd_emu10k1_fx8010_code *icode, in snd_emu10k1_gpr_poke() argument
526 if (!test_bit(gpr, icode->gpr_valid)) in snd_emu10k1_gpr_poke()
529 val = *(__force u32 *)&icode->gpr_map[gpr]; in snd_emu10k1_gpr_poke()
530 else if (get_user(val, &icode->gpr_map[gpr])) in snd_emu10k1_gpr_poke()
538 struct snd_emu10k1_fx8010_code *icode) in snd_emu10k1_gpr_peek() argument
544 set_bit(gpr, icode->gpr_valid); in snd_emu10k1_gpr_peek()
546 if (put_user(val, &icode->gpr_map[gpr])) in snd_emu10k1_gpr_peek()
553 struct snd_emu10k1_fx8010_code *icode, in snd_emu10k1_tram_poke() argument
560 if (!test_bit(tram, icode->tram_valid)) in snd_emu10k1_tram_poke()
563 val = *(__force u32 *)&icode->tram_data_map[tram]; in snd_emu10k1_tram_poke()
564 addr = *(__force u32 *)&icode->tram_addr_map[tram]; in snd_emu10k1_tram_poke()
566 if (get_user(val, &icode->tram_data_map[tram]) || in snd_emu10k1_tram_poke()
567 get_user(addr, &icode->tram_addr_map[tram])) in snd_emu10k1_tram_poke()
582 struct snd_emu10k1_fx8010_code *icode) in snd_emu10k1_tram_peek() argument
587 memset(icode->tram_valid, 0, sizeof(icode->tram_valid)); in snd_emu10k1_tram_peek()
589 set_bit(tram, icode->tram_valid); in snd_emu10k1_tram_peek()
597 if (put_user(val, &icode->tram_data_map[tram]) || in snd_emu10k1_tram_peek()
598 put_user(addr, &icode->tram_addr_map[tram])) in snd_emu10k1_tram_peek()
605 struct snd_emu10k1_fx8010_code *icode, in snd_emu10k1_code_poke() argument
611 if (!test_bit(pc / 2, icode->code_valid)) in snd_emu10k1_code_poke()
614 lo = *(__force u32 *)&icode->code[pc + 0]; in snd_emu10k1_code_poke()
615 hi = *(__force u32 *)&icode->code[pc + 1]; in snd_emu10k1_code_poke()
617 if (get_user(lo, &icode->code[pc + 0]) || in snd_emu10k1_code_poke()
618 get_user(hi, &icode->code[pc + 1])) in snd_emu10k1_code_poke()
628 struct snd_emu10k1_fx8010_code *icode) in snd_emu10k1_code_peek() argument
632 memset(icode->code_valid, 0, sizeof(icode->code_valid)); in snd_emu10k1_code_peek()
634 set_bit(pc / 2, icode->code_valid); in snd_emu10k1_code_peek()
635 if (put_user(snd_emu10k1_efx_read(emu, pc + 0), &icode->code[pc + 0])) in snd_emu10k1_code_peek()
637 if (put_user(snd_emu10k1_efx_read(emu, pc + 1), &icode->code[pc + 1])) in snd_emu10k1_code_peek()
726 struct snd_emu10k1_fx8010_code *icode, in snd_emu10k1_verify_controls() argument
735 for (i = 0, _id = icode->gpr_del_controls; in snd_emu10k1_verify_controls()
736 i < icode->gpr_del_control_count; i++, _id++) { in snd_emu10k1_verify_controls()
748 for (i = 0; i < icode->gpr_add_control_count; i++) { in snd_emu10k1_verify_controls()
749 if (copy_gctl(emu, gctl, icode->gpr_add_controls, i, in snd_emu10k1_verify_controls()
769 for (i = 0; i < icode->gpr_list_control_count; i++) { in snd_emu10k1_verify_controls()
771 if (copy_gctl(emu, gctl, icode->gpr_list_controls, i, in snd_emu10k1_verify_controls()
794 struct snd_emu10k1_fx8010_code *icode, in snd_emu10k1_add_controls() argument
813 for (i = 0; i < icode->gpr_add_control_count; i++) { in snd_emu10k1_add_controls()
814 if (copy_gctl(emu, gctl, icode->gpr_add_controls, i, in snd_emu10k1_add_controls()
888 struct snd_emu10k1_fx8010_code *icode, in snd_emu10k1_del_controls() argument
897 for (i = 0, _id = icode->gpr_del_controls; in snd_emu10k1_del_controls()
898 i < icode->gpr_del_control_count; i++, _id++) { in snd_emu10k1_del_controls()
913 struct snd_emu10k1_fx8010_code *icode) in snd_emu10k1_list_controls() argument
927 if (icode->gpr_list_controls && in snd_emu10k1_list_controls()
928 i < icode->gpr_list_control_count) { in snd_emu10k1_list_controls()
945 if (copy_gctl_to_user(emu, icode->gpr_list_controls, in snd_emu10k1_list_controls()
953 icode->gpr_list_control_total = total; in snd_emu10k1_list_controls()
959 struct snd_emu10k1_fx8010_code *icode, in snd_emu10k1_icode_poke() argument
965 err = snd_emu10k1_verify_controls(emu, icode, in_kernel); in snd_emu10k1_icode_poke()
968 strlcpy(emu->fx8010.name, icode->name, sizeof(emu->fx8010.name)); in snd_emu10k1_icode_poke()
976 err = snd_emu10k1_del_controls(emu, icode, in_kernel); in snd_emu10k1_icode_poke()
979 err = snd_emu10k1_gpr_poke(emu, icode, in_kernel); in snd_emu10k1_icode_poke()
982 err = snd_emu10k1_tram_poke(emu, icode, in_kernel); in snd_emu10k1_icode_poke()
985 err = snd_emu10k1_code_poke(emu, icode, in_kernel); in snd_emu10k1_icode_poke()
988 err = snd_emu10k1_add_controls(emu, icode, in_kernel); in snd_emu10k1_icode_poke()
1002 struct snd_emu10k1_fx8010_code *icode) in snd_emu10k1_icode_peek() argument
1007 strlcpy(icode->name, emu->fx8010.name, sizeof(icode->name)); in snd_emu10k1_icode_peek()
1009 err = snd_emu10k1_gpr_peek(emu, icode); in snd_emu10k1_icode_peek()
1011 err = snd_emu10k1_tram_peek(emu, icode); in snd_emu10k1_icode_peek()
1013 err = snd_emu10k1_code_peek(emu, icode); in snd_emu10k1_icode_peek()
1015 err = snd_emu10k1_list_controls(emu, icode); in snd_emu10k1_icode_peek()
1177 struct snd_emu10k1_fx8010_code *icode, in snd_emu10k1_audigy_dsp_convert_32_to_2x16() argument
1181 A_OP(icode, ptr, iACC3, A_GPR(tmp + 1), reg_in, A_C_00000000, A_C_00000000); in snd_emu10k1_audigy_dsp_convert_32_to_2x16()
1182 A_OP(icode, ptr, iANDXOR, A_GPR(tmp), A_GPR(tmp + 1), A_GPR(bit_shifter16 - 1), A_C_00000000); in snd_emu10k1_audigy_dsp_convert_32_to_2x16()
1183 A_OP(icode, ptr, iTSTNEG, A_GPR(tmp + 2), A_GPR(tmp), A_C_80000000, A_GPR(bit_shifter16 - 2)); in snd_emu10k1_audigy_dsp_convert_32_to_2x16()
1184 A_OP(icode, ptr, iANDXOR, A_GPR(tmp + 2), A_GPR(tmp + 2), A_C_80000000, A_C_00000000); in snd_emu10k1_audigy_dsp_convert_32_to_2x16()
1185 A_OP(icode, ptr, iANDXOR, A_GPR(tmp), A_GPR(tmp), A_GPR(bit_shifter16 - 3), A_C_00000000); in snd_emu10k1_audigy_dsp_convert_32_to_2x16()
1186 A_OP(icode, ptr, iMACINT0, A_GPR(tmp), A_C_00000000, A_GPR(tmp), A_C_00010000); in snd_emu10k1_audigy_dsp_convert_32_to_2x16()
1187 A_OP(icode, ptr, iANDXOR, reg_out, A_GPR(tmp), A_C_ffffffff, A_GPR(tmp + 2)); in snd_emu10k1_audigy_dsp_convert_32_to_2x16()
1188 A_OP(icode, ptr, iACC3, reg_out + 1, A_GPR(tmp + 1), A_C_00000000, A_C_00000000); in snd_emu10k1_audigy_dsp_convert_32_to_2x16()
1205 struct snd_emu10k1_fx8010_code *icode = NULL; in _snd_emu10k1_audigy_init_efx() local
1210 icode = kzalloc(sizeof(*icode), GFP_KERNEL); in _snd_emu10k1_audigy_init_efx()
1211 if (!icode) in _snd_emu10k1_audigy_init_efx()
1214 icode->gpr_map = (u_int32_t __user *) kcalloc(512 + 256 + 256 + 2 * 1024, in _snd_emu10k1_audigy_init_efx()
1216 if (!icode->gpr_map) in _snd_emu10k1_audigy_init_efx()
1223 gpr_map = (u32 __force *)icode->gpr_map; in _snd_emu10k1_audigy_init_efx()
1225 icode->tram_data_map = icode->gpr_map + 512; in _snd_emu10k1_audigy_init_efx()
1226 icode->tram_addr_map = icode->tram_data_map + 256; in _snd_emu10k1_audigy_init_efx()
1227 icode->code = icode->tram_addr_map + 256; in _snd_emu10k1_audigy_init_efx()
1231 set_bit(i, icode->gpr_valid); in _snd_emu10k1_audigy_init_efx()
1235 set_bit(i, icode->tram_valid); in _snd_emu10k1_audigy_init_efx()
1237 strcpy(icode->name, "Audigy DSP code for ALSA"); in _snd_emu10k1_audigy_init_efx()
1255 A_OP(icode, &ptr, iMAC0, A_GPR(playback), A_C_00000000, A_GPR(gpr), A_FXBUS(FXBUS_PCM_LEFT_FRONT)); in _snd_emu10k1_audigy_init_efx()
1256 …A_OP(icode, &ptr, iMAC0, A_GPR(playback+1), A_C_00000000, A_GPR(gpr+1), A_FXBUS(FXBUS_PCM_RIGHT_FR… in _snd_emu10k1_audigy_init_efx()
1261 …A_OP(icode, &ptr, iMAC0, A_GPR(playback+2), A_C_00000000, A_GPR(gpr), A_FXBUS(FXBUS_PCM_LEFT_REAR)… in _snd_emu10k1_audigy_init_efx()
1262 …A_OP(icode, &ptr, iMAC0, A_GPR(playback+3), A_C_00000000, A_GPR(gpr+1), A_FXBUS(FXBUS_PCM_RIGHT_RE… in _snd_emu10k1_audigy_init_efx()
1268 …A_OP(icode, &ptr, iMAC0, A_GPR(playback+6), A_C_00000000, A_GPR(gpr), A_FXBUS(FXBUS_PCM_LEFT_SIDE)… in _snd_emu10k1_audigy_init_efx()
1269 …A_OP(icode, &ptr, iMAC0, A_GPR(playback+7), A_C_00000000, A_GPR(gpr+1), A_FXBUS(FXBUS_PCM_RIGHT_SI… in _snd_emu10k1_audigy_init_efx()
1275 A_OP(icode, &ptr, iMAC0, A_GPR(playback+4), A_C_00000000, A_GPR(gpr), A_FXBUS(FXBUS_PCM_CENTER)); in _snd_emu10k1_audigy_init_efx()
1280 A_OP(icode, &ptr, iMAC0, A_GPR(playback+5), A_C_00000000, A_GPR(gpr), A_FXBUS(FXBUS_PCM_LFE)); in _snd_emu10k1_audigy_init_efx()
1288 A_OP(icode, &ptr, iMAC0, A_GPR(stereo_mix), A_C_00000000, A_GPR(gpr), A_FXBUS(FXBUS_PCM_LEFT)); in _snd_emu10k1_audigy_init_efx()
1289 …A_OP(icode, &ptr, iMAC0, A_GPR(stereo_mix+1), A_C_00000000, A_GPR(gpr+1), A_FXBUS(FXBUS_PCM_RIGHT)… in _snd_emu10k1_audigy_init_efx()
1294 …A_OP(icode, &ptr, iMAC0, A_GPR(stereo_mix+0), A_GPR(stereo_mix+0), A_GPR(gpr), A_FXBUS(FXBUS_MIDI_… in _snd_emu10k1_audigy_init_efx()
1295 …A_OP(icode, &ptr, iMAC0, A_GPR(stereo_mix+1), A_GPR(stereo_mix+1), A_GPR(gpr+1), A_FXBUS(FXBUS_MID… in _snd_emu10k1_audigy_init_efx()
1300 A_OP(icode, &ptr, iMAC0, A_GPR(capture+0), A_C_00000000, A_GPR(gpr), A_FXBUS(FXBUS_PCM_LEFT)); in _snd_emu10k1_audigy_init_efx()
1301 A_OP(icode, &ptr, iMAC0, A_GPR(capture+1), A_C_00000000, A_GPR(gpr+1), A_FXBUS(FXBUS_PCM_RIGHT)); in _snd_emu10k1_audigy_init_efx()
1306 A_OP(icode, &ptr, iMAC0, A_GPR(capture+0), A_GPR(capture+0), A_GPR(gpr), A_FXBUS(FXBUS_MIDI_LEFT)); in _snd_emu10k1_audigy_init_efx()
1307 …A_OP(icode, &ptr, iMAC0, A_GPR(capture+1), A_GPR(capture+1), A_GPR(gpr+1), A_FXBUS(FXBUS_MIDI_RIGH… in _snd_emu10k1_audigy_init_efx()
1315 A_OP(icode, &ptr, iMAC0, A_GPR(var), A_GPR(var), A_GPR(vol), A_EXTIN(input)) in _snd_emu10k1_audigy_init_efx()
1321 A_OP(icode, &ptr, iMACINT0, A_GPR(tmp), A_C_00000000, A3_EMU32IN(0x0), A_C_00000001); in _snd_emu10k1_audigy_init_efx()
1322 A_OP(icode, &ptr, iMAC0, A_GPR(capture+0), A_GPR(capture+0), A_GPR(gpr), A_GPR(tmp)); in _snd_emu10k1_audigy_init_efx()
1323 A_OP(icode, &ptr, iMACINT0, A_GPR(tmp), A_C_00000000, A3_EMU32IN(0x1), A_C_00000001); in _snd_emu10k1_audigy_init_efx()
1324 A_OP(icode, &ptr, iMAC0, A_GPR(capture+1), A_GPR(capture+1), A_GPR(gpr), A_GPR(tmp)); in _snd_emu10k1_audigy_init_efx()
1326 A_OP(icode, &ptr, iMAC0, A_GPR(capture+0), A_GPR(capture+0), A_GPR(gpr), A_P16VIN(0x0)); in _snd_emu10k1_audigy_init_efx()
1327 A_OP(icode, &ptr, iMAC0, A_GPR(capture+1), A_GPR(capture+1), A_GPR(gpr+1), A_P16VIN(0x1)); in _snd_emu10k1_audigy_init_efx()
1344 …A_OP(icode, &ptr, iINTERP, A_EXTOUT(A_EXTOUT_MIC_CAP), A_EXTIN(A_EXTIN_AC97_L), 0xcd, A_EXTIN(A_EX… in _snd_emu10k1_audigy_init_efx()
1414 A_OP(icode, &ptr, iMAC0, A_GPR(playback), A_GPR(playback), A_GPR(gpr), A_GPR(stereo_mix)); in _snd_emu10k1_audigy_init_efx()
1415 A_OP(icode, &ptr, iMAC0, A_GPR(playback+1), A_GPR(playback+1), A_GPR(gpr+1), A_GPR(stereo_mix+1)); in _snd_emu10k1_audigy_init_efx()
1420 A_OP(icode, &ptr, iMAC0, A_GPR(playback+2), A_GPR(playback+2), A_GPR(gpr), A_GPR(stereo_mix)); in _snd_emu10k1_audigy_init_efx()
1421 A_OP(icode, &ptr, iMAC0, A_GPR(playback+3), A_GPR(playback+3), A_GPR(gpr+1), A_GPR(stereo_mix+1)); in _snd_emu10k1_audigy_init_efx()
1427 A_OP(icode, &ptr, iINTERP, A_GPR(tmp), A_GPR(stereo_mix), 0xcd, A_GPR(stereo_mix+1)); in _snd_emu10k1_audigy_init_efx()
1428 A_OP(icode, &ptr, iMAC0, A_GPR(playback+4), A_GPR(playback+4), A_GPR(gpr), A_GPR(tmp)); in _snd_emu10k1_audigy_init_efx()
1433 A_OP(icode, &ptr, iMAC0, A_GPR(playback+5), A_GPR(playback+5), A_GPR(gpr), A_GPR(tmp)); in _snd_emu10k1_audigy_init_efx()
1439 A_OP(icode, &ptr, iMAC0, A_GPR(playback+6), A_GPR(playback+6), A_GPR(gpr), A_GPR(stereo_mix)); in _snd_emu10k1_audigy_init_efx()
1440 A_OP(icode, &ptr, iMAC0, A_GPR(playback+7), A_GPR(playback+7), A_GPR(gpr+1), A_GPR(stereo_mix+1)); in _snd_emu10k1_audigy_init_efx()
1448 #define A_PUT_OUTPUT(out,src) A_OP(icode, &ptr, iACC3, A_EXTOUT(out), A_C_00000000, A_C_00000000, A… in _snd_emu10k1_audigy_init_efx()
1452 #define _A_SWITCH(icode, ptr, dst, src, sw) \ in _snd_emu10k1_audigy_init_efx() argument
1453 A_OP((icode), ptr, iMACINT0, dst, A_C_00000000, src, sw); in _snd_emu10k1_audigy_init_efx()
1454 #define A_SWITCH(icode, ptr, dst, src, sw) \ in _snd_emu10k1_audigy_init_efx() argument
1455 _A_SWITCH(icode, ptr, A_GPR(dst), A_GPR(src), A_GPR(sw)) in _snd_emu10k1_audigy_init_efx()
1456 #define _A_SWITCH_NEG(icode, ptr, dst, src) \ in _snd_emu10k1_audigy_init_efx() argument
1457 A_OP((icode), ptr, iANDXOR, dst, src, A_C_00000001, A_C_00000001); in _snd_emu10k1_audigy_init_efx()
1458 #define A_SWITCH_NEG(icode, ptr, dst, src) \ in _snd_emu10k1_audigy_init_efx() argument
1459 _A_SWITCH_NEG(icode, ptr, A_GPR(dst), A_GPR(src)) in _snd_emu10k1_audigy_init_efx()
1465 …A_OP(icode, &ptr, iACC3, A_GPR(playback + SND_EMU10K1_PLAYBACK_CHANNELS + 0), A_GPR(playback + 0),… in _snd_emu10k1_audigy_init_efx()
1466 …A_OP(icode, &ptr, iACC3, A_GPR(playback + SND_EMU10K1_PLAYBACK_CHANNELS + 1), A_GPR(playback + 1),… in _snd_emu10k1_audigy_init_efx()
1467 …A_OP(icode, &ptr, iACC3, A_GPR(playback + SND_EMU10K1_PLAYBACK_CHANNELS + 2), A_GPR(playback + 2),… in _snd_emu10k1_audigy_init_efx()
1468 …A_OP(icode, &ptr, iACC3, A_GPR(playback + SND_EMU10K1_PLAYBACK_CHANNELS + 3), A_GPR(playback + 3),… in _snd_emu10k1_audigy_init_efx()
1469 …A_OP(icode, &ptr, iACC3, A_GPR(playback + SND_EMU10K1_PLAYBACK_CHANNELS + 4), A_GPR(playback + 4),… in _snd_emu10k1_audigy_init_efx()
1470 …A_OP(icode, &ptr, iACC3, A_GPR(playback + SND_EMU10K1_PLAYBACK_CHANNELS + 5), A_GPR(playback + 5),… in _snd_emu10k1_audigy_init_efx()
1472 …A_OP(icode, &ptr, iACC3, A_GPR(playback + SND_EMU10K1_PLAYBACK_CHANNELS + 6), A_GPR(playback + 6),… in _snd_emu10k1_audigy_init_efx()
1473 …A_OP(icode, &ptr, iACC3, A_GPR(playback + SND_EMU10K1_PLAYBACK_CHANNELS + 7), A_GPR(playback + 7),… in _snd_emu10k1_audigy_init_efx()
1513 A_OP(icode, &ptr, iMAC0, A_C_00000000, A_C_00000000, A_GPR(d), A_GPR(BASS_GPR + 0 + j)); in _snd_emu10k1_audigy_init_efx()
1514 A_OP(icode, &ptr, iMACMV, A_GPR(k+1), A_GPR(k), A_GPR(k+1), A_GPR(BASS_GPR + 4 + j)); in _snd_emu10k1_audigy_init_efx()
1515 A_OP(icode, &ptr, iMACMV, A_GPR(k), A_GPR(d), A_GPR(k), A_GPR(BASS_GPR + 2 + j)); in _snd_emu10k1_audigy_init_efx()
1516 A_OP(icode, &ptr, iMACMV, A_GPR(k+3), A_GPR(k+2), A_GPR(k+3), A_GPR(BASS_GPR + 8 + j)); in _snd_emu10k1_audigy_init_efx()
1517 A_OP(icode, &ptr, iMAC0, A_GPR(k+2), A_GPR_ACCU, A_GPR(k+2), A_GPR(BASS_GPR + 6 + j)); in _snd_emu10k1_audigy_init_efx()
1518 A_OP(icode, &ptr, iACC3, A_GPR(k+2), A_GPR(k+2), A_GPR(k+2), A_C_00000000); in _snd_emu10k1_audigy_init_efx()
1520 A_OP(icode, &ptr, iMAC0, A_C_00000000, A_C_00000000, A_GPR(k+2), A_GPR(TREBLE_GPR + 0 + j)); in _snd_emu10k1_audigy_init_efx()
1521 A_OP(icode, &ptr, iMACMV, A_GPR(l+1), A_GPR(l), A_GPR(l+1), A_GPR(TREBLE_GPR + 4 + j)); in _snd_emu10k1_audigy_init_efx()
1522 A_OP(icode, &ptr, iMACMV, A_GPR(l), A_GPR(k+2), A_GPR(l), A_GPR(TREBLE_GPR + 2 + j)); in _snd_emu10k1_audigy_init_efx()
1523 A_OP(icode, &ptr, iMACMV, A_GPR(l+3), A_GPR(l+2), A_GPR(l+3), A_GPR(TREBLE_GPR + 8 + j)); in _snd_emu10k1_audigy_init_efx()
1524 A_OP(icode, &ptr, iMAC0, A_GPR(l+2), A_GPR_ACCU, A_GPR(l+2), A_GPR(TREBLE_GPR + 6 + j)); in _snd_emu10k1_audigy_init_efx()
1525 A_OP(icode, &ptr, iMACINT0, A_GPR(l+2), A_C_00000000, A_GPR(l+2), A_C_00000010); in _snd_emu10k1_audigy_init_efx()
1527 A_OP(icode, &ptr, iACC3, A_GPR(d), A_GPR(l+2), A_C_00000000, A_C_00000000); in _snd_emu10k1_audigy_init_efx()
1539 A_SWITCH(icode, &ptr, tmp + 0, playback + SND_EMU10K1_PLAYBACK_CHANNELS + z, gpr + 0); in _snd_emu10k1_audigy_init_efx()
1540 A_SWITCH_NEG(icode, &ptr, tmp + 1, gpr + 0); in _snd_emu10k1_audigy_init_efx()
1541 A_SWITCH(icode, &ptr, tmp + 1, playback + z, tmp + 1); in _snd_emu10k1_audigy_init_efx()
1542 …A_OP(icode, &ptr, iACC3, A_GPR(playback + SND_EMU10K1_PLAYBACK_CHANNELS + z), A_GPR(tmp + 0), A_GP… in _snd_emu10k1_audigy_init_efx()
1548 …A_OP(icode, &ptr, iMAC0, A_GPR(playback+0+SND_EMU10K1_PLAYBACK_CHANNELS), A_C_00000000, A_GPR(gpr)… in _snd_emu10k1_audigy_init_efx()
1549 …A_OP(icode, &ptr, iMAC0, A_GPR(playback+1+SND_EMU10K1_PLAYBACK_CHANNELS), A_C_00000000, A_GPR(gpr)… in _snd_emu10k1_audigy_init_efx()
1550 …A_OP(icode, &ptr, iMAC0, A_GPR(playback+2+SND_EMU10K1_PLAYBACK_CHANNELS), A_C_00000000, A_GPR(gpr)… in _snd_emu10k1_audigy_init_efx()
1551 …A_OP(icode, &ptr, iMAC0, A_GPR(playback+3+SND_EMU10K1_PLAYBACK_CHANNELS), A_C_00000000, A_GPR(gpr)… in _snd_emu10k1_audigy_init_efx()
1552 …A_OP(icode, &ptr, iMAC0, A_GPR(playback+4+SND_EMU10K1_PLAYBACK_CHANNELS), A_C_00000000, A_GPR(gpr)… in _snd_emu10k1_audigy_init_efx()
1553 …A_OP(icode, &ptr, iMAC0, A_GPR(playback+5+SND_EMU10K1_PLAYBACK_CHANNELS), A_C_00000000, A_GPR(gpr)… in _snd_emu10k1_audigy_init_efx()
1554 …A_OP(icode, &ptr, iMAC0, A_GPR(playback+6+SND_EMU10K1_PLAYBACK_CHANNELS), A_C_00000000, A_GPR(gpr)… in _snd_emu10k1_audigy_init_efx()
1555 …A_OP(icode, &ptr, iMAC0, A_GPR(playback+7+SND_EMU10K1_PLAYBACK_CHANNELS), A_C_00000000, A_GPR(gpr)… in _snd_emu10k1_audigy_init_efx()
1577 …A_OP(icode, &ptr, iACC3, A3_EMU32OUT(z), A_GPR(playback + SND_EMU10K1_PLAYBACK_CHANNELS + z), A_C_… in _snd_emu10k1_audigy_init_efx()
1579 …A_OP(icode, &ptr, iACC3, A_EMU32OUTL(z), A_GPR(playback + SND_EMU10K1_PLAYBACK_CHANNELS + z), A_C_… in _snd_emu10k1_audigy_init_efx()
1589 A_OP(icode, &ptr, iMAC0, A_GPR(tmp + 2), A_FXBUS(FXBUS_PT_LEFT + z), A_C_00000000, A_C_00000000); in _snd_emu10k1_audigy_init_efx()
1590 A_OP(icode, &ptr, iSKIP, A_GPR_COND, A_GPR_COND, A_GPR(gpr - 2), A_C_00000001); in _snd_emu10k1_audigy_init_efx()
1591 A_OP(icode, &ptr, iACC3, A_GPR(tmp + 2), A_C_00000000, A_C_00010000, A_GPR(tmp + 2)); in _snd_emu10k1_audigy_init_efx()
1592 A_OP(icode, &ptr, iANDXOR, A_GPR(tmp + 2), A_GPR(tmp + 2), A_GPR(gpr - 1), A_C_00000000); in _snd_emu10k1_audigy_init_efx()
1593 A_SWITCH(icode, &ptr, tmp + 0, tmp + 2, gpr + z); in _snd_emu10k1_audigy_init_efx()
1594 A_SWITCH_NEG(icode, &ptr, tmp + 1, gpr + z); in _snd_emu10k1_audigy_init_efx()
1595 A_SWITCH(icode, &ptr, tmp + 1, playback + SND_EMU10K1_PLAYBACK_CHANNELS + z, tmp + 1); in _snd_emu10k1_audigy_init_efx()
1601 …A_OP(icode, &ptr, iACC3, A_EXTOUT(A_EXTOUT_FRONT_L + z), A_GPR(gpr - 3), A_C_00000000, A_C_0000000… in _snd_emu10k1_audigy_init_efx()
1602 A_OP(icode, &ptr, iACC3, A_GPR(gpr - 3), A_GPR(tmp + 0), A_GPR(tmp + 1), A_C_00000000); in _snd_emu10k1_audigy_init_efx()
1604 …A_OP(icode, &ptr, iACC3, A_EXTOUT(A_EXTOUT_FRONT_L + z), A_GPR(tmp + 0), A_GPR(tmp + 1), A_C_00000… in _snd_emu10k1_audigy_init_efx()
1626 snd_emu10k1_audigy_dsp_convert_32_to_2x16( icode, &ptr, tmp, in _snd_emu10k1_audigy_init_efx()
1644 …snd_emu10k1_audigy_dsp_convert_32_to_2x16( icode, &ptr, tmp, bit_shifter16, A_P16VIN(0x0), A_FXBUS… in _snd_emu10k1_audigy_init_efx()
1652 …snd_emu10k1_audigy_dsp_convert_32_to_2x16( icode, &ptr, tmp, bit_shifter16, A_GPR(gpr - 1), A_FXBU… in _snd_emu10k1_audigy_init_efx()
1653 A_OP(icode, &ptr, iACC3, A_GPR(gpr - 1), A_P16VIN(0x1), A_C_00000000, A_C_00000000); in _snd_emu10k1_audigy_init_efx()
1655 …snd_emu10k1_audigy_dsp_convert_32_to_2x16( icode, &ptr, tmp, bit_shifter16, A_GPR(gpr - 1), A_FXBU… in _snd_emu10k1_audigy_init_efx()
1656 A_OP(icode, &ptr, iACC3, A_GPR(gpr - 1), A_P16VIN(0x2), A_C_00000000, A_C_00000000); in _snd_emu10k1_audigy_init_efx()
1658 …snd_emu10k1_audigy_dsp_convert_32_to_2x16( icode, &ptr, tmp, bit_shifter16, A_GPR(gpr - 1), A_FXBU… in _snd_emu10k1_audigy_init_efx()
1659 A_OP(icode, &ptr, iACC3, A_GPR(gpr - 1), A_P16VIN(0x3), A_C_00000000, A_C_00000000); in _snd_emu10k1_audigy_init_efx()
1663 …snd_emu10k1_audigy_dsp_convert_32_to_2x16( icode, &ptr, tmp, bit_shifter16, A_GPR(gpr - 1), A_FXBU… in _snd_emu10k1_audigy_init_efx()
1664 A_OP(icode, &ptr, iACC3, A_GPR(gpr - 1), A_P16VIN(0x4), A_C_00000000, A_C_00000000); in _snd_emu10k1_audigy_init_efx()
1667 …snd_emu10k1_audigy_dsp_convert_32_to_2x16( icode, &ptr, tmp, bit_shifter16, A_GPR(gpr - 1), A_FXBU… in _snd_emu10k1_audigy_init_efx()
1668 A_OP(icode, &ptr, iACC3, A_GPR(gpr - 1), A_P16VIN(0x5), A_C_00000000, A_C_00000000); in _snd_emu10k1_audigy_init_efx()
1670 …snd_emu10k1_audigy_dsp_convert_32_to_2x16( icode, &ptr, tmp, bit_shifter16, A_GPR(gpr - 1), A_FXBU… in _snd_emu10k1_audigy_init_efx()
1671 A_OP(icode, &ptr, iACC3, A_GPR(gpr - 1), A_P16VIN(0x6), A_C_00000000, A_C_00000000); in _snd_emu10k1_audigy_init_efx()
1673 …snd_emu10k1_audigy_dsp_convert_32_to_2x16( icode, &ptr, tmp, bit_shifter16, A_GPR(gpr - 1), A_FXBU… in _snd_emu10k1_audigy_init_efx()
1674 A_OP(icode, &ptr, iACC3, A_GPR(gpr - 1), A_P16VIN(0x7), A_C_00000000, A_C_00000000); in _snd_emu10k1_audigy_init_efx()
1680 snd_emu10k1_audigy_dsp_convert_32_to_2x16(icode, &ptr, tmp, in _snd_emu10k1_audigy_init_efx()
1684 A_OP(icode, &ptr, iACC3, A_GPR(gpr - 1), A_P16VIN(0x8), in _snd_emu10k1_audigy_init_efx()
1687 snd_emu10k1_audigy_dsp_convert_32_to_2x16(icode, &ptr, tmp, in _snd_emu10k1_audigy_init_efx()
1691 A_OP(icode, &ptr, iACC3, A_GPR(gpr - 1), A_P16VIN(0x9), in _snd_emu10k1_audigy_init_efx()
1694 snd_emu10k1_audigy_dsp_convert_32_to_2x16(icode, &ptr, tmp, in _snd_emu10k1_audigy_init_efx()
1698 A_OP(icode, &ptr, iACC3, A_GPR(gpr - 1), A_P16VIN(0xa), in _snd_emu10k1_audigy_init_efx()
1701 snd_emu10k1_audigy_dsp_convert_32_to_2x16(icode, &ptr, tmp, in _snd_emu10k1_audigy_init_efx()
1705 A_OP(icode, &ptr, iACC3, A_GPR(gpr - 1), A_P16VIN(0xb), in _snd_emu10k1_audigy_init_efx()
1708 snd_emu10k1_audigy_dsp_convert_32_to_2x16(icode, &ptr, tmp, in _snd_emu10k1_audigy_init_efx()
1712 A_OP(icode, &ptr, iACC3, A_GPR(gpr - 1), A_P16VIN(0xc), in _snd_emu10k1_audigy_init_efx()
1715 snd_emu10k1_audigy_dsp_convert_32_to_2x16(icode, &ptr, tmp, in _snd_emu10k1_audigy_init_efx()
1719 A_OP(icode, &ptr, iACC3, A_GPR(gpr - 1), A_P16VIN(0xd), in _snd_emu10k1_audigy_init_efx()
1722 snd_emu10k1_audigy_dsp_convert_32_to_2x16(icode, &ptr, tmp, in _snd_emu10k1_audigy_init_efx()
1726 A_OP(icode, &ptr, iACC3, A_GPR(gpr - 1), A_P16VIN(0xe), in _snd_emu10k1_audigy_init_efx()
1729 snd_emu10k1_audigy_dsp_convert_32_to_2x16(icode, &ptr, tmp, in _snd_emu10k1_audigy_init_efx()
1733 A_OP(icode, &ptr, iACC3, A_GPR(gpr - 1), A_P16VIN(0xf), in _snd_emu10k1_audigy_init_efx()
1739 A_OP(icode, &ptr, iACC3, A_FXBUS2(z), A_C_00000000, A_C_00000000, A_C_00000000); in _snd_emu10k1_audigy_init_efx()
1742 A_OP(icode, &ptr, iACC3, A_FXBUS2(z), A_C_00000000, A_C_00000000, A_C_00000000); in _snd_emu10k1_audigy_init_efx()
1749 A_OP(icode, &ptr, iACC3, A_FXBUS2(z), A_C_00000000, A_C_00000000, A_EXTIN(z)); in _snd_emu10k1_audigy_init_efx()
1765 A_OP(icode, &ptr, 0x0f, 0xc0, 0xc0, 0xcf, 0xc0); in _snd_emu10k1_audigy_init_efx()
1767 icode->gpr_add_control_count = nctl; in _snd_emu10k1_audigy_init_efx()
1768 icode->gpr_add_controls = (struct snd_emu10k1_fx8010_control_gpr __user *)controls; in _snd_emu10k1_audigy_init_efx()
1770 err = snd_emu10k1_icode_poke(emu, icode, true); in _snd_emu10k1_audigy_init_efx()
1776 kfree((void __force *)icode->gpr_map); in _snd_emu10k1_audigy_init_efx()
1778 kfree(icode); in _snd_emu10k1_audigy_init_efx()
1789 static void _volume(struct snd_emu10k1_fx8010_code *icode, u32 *ptr, u32 dst, u32 src, u32 vol) in _volume() argument
1791 OP(icode, ptr, iMAC0, dst, C_00000000, src, vol); in _volume()
1792 OP(icode, ptr, iANDXOR, C_00000000, vol, C_ffffffff, C_7fffffff); in _volume()
1793 OP(icode, ptr, iSKIP, GPR_COND, GPR_COND, CC_REG_NONZERO, C_00000001); in _volume()
1794 OP(icode, ptr, iACC3, dst, src, C_00000000, C_00000000); in _volume()
1796 static void _volume_add(struct snd_emu10k1_fx8010_code *icode, u32 *ptr, u32 dst, u32 src, u32 vol) in _volume_add() argument
1798 OP(icode, ptr, iANDXOR, C_00000000, vol, C_ffffffff, C_7fffffff); in _volume_add()
1799 OP(icode, ptr, iSKIP, GPR_COND, GPR_COND, CC_REG_NONZERO, C_00000002); in _volume_add()
1800 OP(icode, ptr, iMACINT0, dst, dst, src, C_00000001); in _volume_add()
1801 OP(icode, ptr, iSKIP, C_00000000, C_7fffffff, C_7fffffff, C_00000001); in _volume_add()
1802 OP(icode, ptr, iMAC0, dst, dst, src, vol); in _volume_add()
1804 static void _volume_out(struct snd_emu10k1_fx8010_code *icode, u32 *ptr, u32 dst, u32 src, u32 vol) in _volume_out() argument
1806 OP(icode, ptr, iANDXOR, C_00000000, vol, C_ffffffff, C_7fffffff); in _volume_out()
1807 OP(icode, ptr, iSKIP, GPR_COND, GPR_COND, CC_REG_NONZERO, C_00000002); in _volume_out()
1808 OP(icode, ptr, iACC3, dst, src, C_00000000, C_00000000); in _volume_out()
1809 OP(icode, ptr, iSKIP, C_00000000, C_7fffffff, C_7fffffff, C_00000001); in _volume_out()
1810 OP(icode, ptr, iMAC0, dst, C_00000000, src, vol); in _volume_out()
1813 #define VOLUME(icode, ptr, dst, src, vol) \ argument
1814 _volume(icode, ptr, GPR(dst), GPR(src), GPR(vol))
1815 #define VOLUME_IN(icode, ptr, dst, src, vol) \ argument
1816 _volume(icode, ptr, GPR(dst), EXTIN(src), GPR(vol))
1817 #define VOLUME_ADD(icode, ptr, dst, src, vol) \ argument
1818 _volume_add(icode, ptr, GPR(dst), GPR(src), GPR(vol))
1819 #define VOLUME_ADDIN(icode, ptr, dst, src, vol) \ argument
1820 _volume_add(icode, ptr, GPR(dst), EXTIN(src), GPR(vol))
1821 #define VOLUME_OUT(icode, ptr, dst, src, vol) \ argument
1822 _volume_out(icode, ptr, EXTOUT(dst), GPR(src), GPR(vol))
1823 #define _SWITCH(icode, ptr, dst, src, sw) \ argument
1824 OP((icode), ptr, iMACINT0, dst, C_00000000, src, sw);
1825 #define SWITCH(icode, ptr, dst, src, sw) \ argument
1826 _SWITCH(icode, ptr, GPR(dst), GPR(src), GPR(sw))
1827 #define SWITCH_IN(icode, ptr, dst, src, sw) \ argument
1828 _SWITCH(icode, ptr, GPR(dst), EXTIN(src), GPR(sw))
1829 #define _SWITCH_NEG(icode, ptr, dst, src) \ argument
1830 OP((icode), ptr, iANDXOR, dst, src, C_00000001, C_00000001);
1831 #define SWITCH_NEG(icode, ptr, dst, src) \ argument
1832 _SWITCH_NEG(icode, ptr, GPR(dst), GPR(src))
1839 struct snd_emu10k1_fx8010_code *icode; in _snd_emu10k1_init_efx() local
1845 icode = kzalloc(sizeof(*icode), GFP_KERNEL); in _snd_emu10k1_init_efx()
1846 if (!icode) in _snd_emu10k1_init_efx()
1849 icode->gpr_map = (u_int32_t __user *) kcalloc(256 + 160 + 160 + 2 * 512, in _snd_emu10k1_init_efx()
1851 if (!icode->gpr_map) in _snd_emu10k1_init_efx()
1864 gpr_map = (u32 __force *)icode->gpr_map; in _snd_emu10k1_init_efx()
1866 icode->tram_data_map = icode->gpr_map + 256; in _snd_emu10k1_init_efx()
1867 icode->tram_addr_map = icode->tram_data_map + 160; in _snd_emu10k1_init_efx()
1868 icode->code = icode->tram_addr_map + 160; in _snd_emu10k1_init_efx()
1872 set_bit(i, icode->gpr_valid); in _snd_emu10k1_init_efx()
1876 set_bit(i, icode->tram_valid); in _snd_emu10k1_init_efx()
1878 strcpy(icode->name, "SB Live! FX8010 code for ALSA v1.2 by Jaroslav Kysela"); in _snd_emu10k1_init_efx()
1894 OP(icode, &ptr, iMACINT0, GPR(0), C_00000000, FXBUS(FXBUS_PCM_LEFT), C_00000004); in _snd_emu10k1_init_efx()
1895 OP(icode, &ptr, iMACINT0, GPR(1), C_00000000, FXBUS(FXBUS_PCM_RIGHT), C_00000004); in _snd_emu10k1_init_efx()
1896 OP(icode, &ptr, iMACINT0, GPR(2), C_00000000, FXBUS(FXBUS_MIDI_LEFT), C_00000004); in _snd_emu10k1_init_efx()
1897 OP(icode, &ptr, iMACINT0, GPR(3), C_00000000, FXBUS(FXBUS_MIDI_RIGHT), C_00000004); in _snd_emu10k1_init_efx()
1898 OP(icode, &ptr, iMACINT0, GPR(4), C_00000000, FXBUS(FXBUS_PCM_LEFT_REAR), C_00000004); in _snd_emu10k1_init_efx()
1899 OP(icode, &ptr, iMACINT0, GPR(5), C_00000000, FXBUS(FXBUS_PCM_RIGHT_REAR), C_00000004); in _snd_emu10k1_init_efx()
1900 OP(icode, &ptr, iMACINT0, GPR(6), C_00000000, FXBUS(FXBUS_PCM_CENTER), C_00000004); in _snd_emu10k1_init_efx()
1901 OP(icode, &ptr, iMACINT0, GPR(7), C_00000000, FXBUS(FXBUS_PCM_LFE), C_00000004); in _snd_emu10k1_init_efx()
1902 OP(icode, &ptr, iMACINT0, GPR(8), C_00000000, C_00000000, C_00000000); /* S/PDIF left */ in _snd_emu10k1_init_efx()
1903 OP(icode, &ptr, iMACINT0, GPR(9), C_00000000, C_00000000, C_00000000); /* S/PDIF right */ in _snd_emu10k1_init_efx()
1904 OP(icode, &ptr, iMACINT0, GPR(10), C_00000000, FXBUS(FXBUS_PCM_LEFT_FRONT), C_00000004); in _snd_emu10k1_init_efx()
1905 OP(icode, &ptr, iMACINT0, GPR(11), C_00000000, FXBUS(FXBUS_PCM_RIGHT_FRONT), C_00000004); in _snd_emu10k1_init_efx()
1936 /* 00: */ OP(icode, &ptr, iMAC0, C_00000000, GPR(ipcm->gpr_trigger), C_00000000, C_00000000); in _snd_emu10k1_init_efx()
1937 /* 01: */ OP(icode, &ptr, iSKIP, GPR_COND, GPR_COND, CC_REG_ZERO, GPR(gpr + 6)); in _snd_emu10k1_init_efx()
1939 /* 02: */ OP(icode, &ptr, iMAC0, C_00000000, GPR(ipcm->gpr_running), C_00000000, C_00000000); in _snd_emu10k1_init_efx()
1940 /* 03: */ OP(icode, &ptr, iSKIP, GPR_COND, GPR_COND, CC_REG_NONZERO, C_00000004); in _snd_emu10k1_init_efx()
1942 /* 04: */ OP(icode, &ptr, iANDXOR, GPR(tmp + 0), GPR_DBAC, GPR(gpr + 4), C_00000000); in _snd_emu10k1_init_efx()
1943 /* 05: */ OP(icode, &ptr, iMACINT0, C_00000000, GPR(tmp + 0), C_ffffffff, GPR(gpr + 5)); in _snd_emu10k1_init_efx()
1944 /* 06: */ OP(icode, &ptr, iSKIP, GPR_COND, GPR_COND, CC_REG_NONZERO, GPR(gpr + 7)); in _snd_emu10k1_init_efx()
1945 /* 07: */ OP(icode, &ptr, iACC3, GPR(gpr + 12), C_00000010, C_00000001, C_00000000); in _snd_emu10k1_init_efx()
1947 …/* 08: */ OP(icode, &ptr, iANDXOR, GPR(ipcm->gpr_running), GPR(ipcm->gpr_running), C_00000000, C_0… in _snd_emu10k1_init_efx()
1948 /* 09: */ OP(icode, &ptr, iACC3, GPR(gpr + 12), GPR(gpr + 12), C_ffffffff, C_00000000); in _snd_emu10k1_init_efx()
1949 /* 0a: */ OP(icode, &ptr, iSKIP, GPR_COND, GPR_COND, CC_REG_NONZERO, GPR(gpr + 11)); in _snd_emu10k1_init_efx()
1950 /* 0b: */ OP(icode, &ptr, iACC3, GPR(gpr + 12), C_00000001, C_00000000, C_00000000); in _snd_emu10k1_init_efx()
1952 …/* 0c: */ OP(icode, &ptr, iANDXOR, GPR(tmp + 0), ETRAM_DATA(ipcm->etram[0]), GPR(gpr + 0), C_00000… in _snd_emu10k1_init_efx()
1953 /* 0d: */ OP(icode, &ptr, iLOG, GPR(tmp + 0), GPR(tmp + 0), GPR(gpr + 3), C_00000000); in _snd_emu10k1_init_efx()
1954 /* 0e: */ OP(icode, &ptr, iANDXOR, GPR(8), GPR(tmp + 0), GPR(gpr + 1), GPR(gpr + 2)); in _snd_emu10k1_init_efx()
1955 /* 0f: */ OP(icode, &ptr, iSKIP, C_00000000, GPR_COND, CC_REG_MINUS, C_00000001); in _snd_emu10k1_init_efx()
1956 /* 10: */ OP(icode, &ptr, iANDXOR, GPR(8), GPR(8), GPR(gpr + 1), GPR(gpr + 2)); in _snd_emu10k1_init_efx()
1958 …/* 11: */ OP(icode, &ptr, iANDXOR, GPR(tmp + 0), ETRAM_DATA(ipcm->etram[1]), GPR(gpr + 0), C_00000… in _snd_emu10k1_init_efx()
1959 /* 12: */ OP(icode, &ptr, iLOG, GPR(tmp + 0), GPR(tmp + 0), GPR(gpr + 3), C_00000000); in _snd_emu10k1_init_efx()
1960 /* 13: */ OP(icode, &ptr, iANDXOR, GPR(9), GPR(tmp + 0), GPR(gpr + 1), GPR(gpr + 2)); in _snd_emu10k1_init_efx()
1961 /* 14: */ OP(icode, &ptr, iSKIP, C_00000000, GPR_COND, CC_REG_MINUS, C_00000001); in _snd_emu10k1_init_efx()
1962 /* 15: */ OP(icode, &ptr, iANDXOR, GPR(9), GPR(9), GPR(gpr + 1), GPR(gpr + 2)); in _snd_emu10k1_init_efx()
1964 /* 16: */ OP(icode, &ptr, iACC3, GPR(tmp + 0), GPR(ipcm->gpr_ptr), C_00000001, C_00000000); in _snd_emu10k1_init_efx()
1965 /* 17: */ OP(icode, &ptr, iMACINT0, C_00000000, GPR(tmp + 0), C_ffffffff, GPR(ipcm->gpr_size)); in _snd_emu10k1_init_efx()
1966 /* 18: */ OP(icode, &ptr, iSKIP, GPR_COND, GPR_COND, CC_REG_MINUS, C_00000001); in _snd_emu10k1_init_efx()
1967 /* 19: */ OP(icode, &ptr, iACC3, GPR(tmp + 0), C_00000000, C_00000000, C_00000000); in _snd_emu10k1_init_efx()
1968 /* 1a: */ OP(icode, &ptr, iACC3, GPR(ipcm->gpr_ptr), GPR(tmp + 0), C_00000000, C_00000000); in _snd_emu10k1_init_efx()
1970 …/* 1b: */ OP(icode, &ptr, iACC3, GPR(ipcm->gpr_tmpcount), GPR(ipcm->gpr_tmpcount), C_ffffffff, C_0… in _snd_emu10k1_init_efx()
1971 /* 1c: */ OP(icode, &ptr, iSKIP, GPR_COND, GPR_COND, CC_REG_NONZERO, C_00000002); in _snd_emu10k1_init_efx()
1972 …/* 1d: */ OP(icode, &ptr, iACC3, GPR(ipcm->gpr_tmpcount), GPR(ipcm->gpr_count), C_00000000, C_0000… in _snd_emu10k1_init_efx()
1973 /* 1e: */ OP(icode, &ptr, iACC3, GPR_IRQ, C_80000000, C_00000000, C_00000000); in _snd_emu10k1_init_efx()
1974 …/* 1f: */ OP(icode, &ptr, iANDXOR, GPR(ipcm->gpr_running), GPR(ipcm->gpr_running), C_00000001, C_0… in _snd_emu10k1_init_efx()
1976 …/* 20: */ OP(icode, &ptr, iANDXOR, GPR(ipcm->gpr_running), GPR(ipcm->gpr_running), C_00010000, C_0… in _snd_emu10k1_init_efx()
1977 /* 21: */ OP(icode, &ptr, iSKIP, C_00000000, C_7fffffff, C_7fffffff, C_00000002); in _snd_emu10k1_init_efx()
1979 …/* 22: */ OP(icode, &ptr, iMACINT1, ETRAM_ADDR(ipcm->etram[0]), GPR(gpr + 8), GPR_DBAC, C_ffffffff… in _snd_emu10k1_init_efx()
1980 …/* 23: */ OP(icode, &ptr, iMACINT1, ETRAM_ADDR(ipcm->etram[1]), GPR(gpr + 9), GPR_DBAC, C_ffffffff… in _snd_emu10k1_init_efx()
1987 VOLUME(icode, &ptr, playback + z, z, gpr + z); in _snd_emu10k1_init_efx()
1993 VOLUME(icode, &ptr, playback + 2 + z, z, gpr + z); in _snd_emu10k1_init_efx()
1998 OP(icode, &ptr, iACC3, GPR(tmp + 0), FXBUS(FXBUS_PCM_LEFT), FXBUS(FXBUS_PCM_RIGHT), C_00000000); in _snd_emu10k1_init_efx()
1999 OP(icode, &ptr, iMACINT0, GPR(tmp + 0), C_00000000, GPR(tmp + 0), C_00000002); in _snd_emu10k1_init_efx()
2000 VOLUME(icode, &ptr, playback + 4, tmp + 0, gpr); in _snd_emu10k1_init_efx()
2002 VOLUME(icode, &ptr, playback + 5, tmp + 0, gpr); in _snd_emu10k1_init_efx()
2007 SWITCH(icode, &ptr, tmp + 0, z, gpr + 2 + z); in _snd_emu10k1_init_efx()
2008 VOLUME(icode, &ptr, capture + z, tmp + 0, gpr + z); in _snd_emu10k1_init_efx()
2016 VOLUME_ADD(icode, &ptr, playback + z, 2 + z, gpr + z); in _snd_emu10k1_init_efx()
2022 SWITCH(icode, &ptr, tmp + 0, 2 + z, gpr + 2 + z); in _snd_emu10k1_init_efx()
2023 VOLUME_ADD(icode, &ptr, capture + z, tmp + 0, gpr + z); in _snd_emu10k1_init_efx()
2031 VOLUME_ADD(icode, &ptr, playback + 2 + z, 4 + z, gpr + z); in _snd_emu10k1_init_efx()
2037 SWITCH(icode, &ptr, tmp + 0, 4 + z, gpr + 2 + z); in _snd_emu10k1_init_efx()
2038 VOLUME_ADD(icode, &ptr, capture + z, tmp + 0, gpr + z); in _snd_emu10k1_init_efx()
2045 VOLUME_ADD(icode, &ptr, playback + 4, 6, gpr); in _snd_emu10k1_init_efx()
2049 VOLUME_ADD(icode, &ptr, playback + 5, 7, gpr); in _snd_emu10k1_init_efx()
2054 VOLUME_ADD(icode, &ptr, playback + z, 10 + z, gpr + z); in _snd_emu10k1_init_efx()
2060 SWITCH(icode, &ptr, tmp + 0, 10 + z, gpr + 2); in _snd_emu10k1_init_efx()
2061 VOLUME_ADD(icode, &ptr, capture + z, tmp + 0, gpr + z); in _snd_emu10k1_init_efx()
2073 VOLUME_ADDIN(icode, &ptr, playback + 0, EXTIN_AC97_L, gpr); gpr++; in _snd_emu10k1_init_efx()
2074 VOLUME_ADDIN(icode, &ptr, playback + 1, EXTIN_AC97_R, gpr); gpr++; in _snd_emu10k1_init_efx()
2077 VOLUME_ADDIN(icode, &ptr, capture + 0, EXTIN_AC97_L, gpr); gpr++; in _snd_emu10k1_init_efx()
2078 VOLUME_ADDIN(icode, &ptr, capture + 1, EXTIN_AC97_R, gpr); gpr++; in _snd_emu10k1_init_efx()
2085 VOLUME_ADDIN(icode, &ptr, playback + z, EXTIN_SPDIF_CD_L + z, gpr + z); in _snd_emu10k1_init_efx()
2091 SWITCH_IN(icode, &ptr, tmp + 0, EXTIN_SPDIF_CD_L + z, gpr + 2 + z); in _snd_emu10k1_init_efx()
2092 VOLUME_ADD(icode, &ptr, capture + z, tmp + 0, gpr + z); in _snd_emu10k1_init_efx()
2102 VOLUME_ADDIN(icode, &ptr, playback + z, EXTIN_ZOOM_L + z, gpr + z); in _snd_emu10k1_init_efx()
2108 SWITCH_IN(icode, &ptr, tmp + 0, EXTIN_ZOOM_L + z, gpr + 2 + z); in _snd_emu10k1_init_efx()
2109 VOLUME_ADD(icode, &ptr, capture + z, tmp + 0, gpr + z); in _snd_emu10k1_init_efx()
2119 VOLUME_ADDIN(icode, &ptr, playback + z, EXTIN_TOSLINK_L + z, gpr + z); in _snd_emu10k1_init_efx()
2125 SWITCH_IN(icode, &ptr, tmp + 0, EXTIN_TOSLINK_L + z, gpr + 2 + z); in _snd_emu10k1_init_efx()
2126 VOLUME_ADD(icode, &ptr, capture + z, tmp + 0, gpr + z); in _snd_emu10k1_init_efx()
2136 VOLUME_ADDIN(icode, &ptr, playback + z, EXTIN_LINE1_L + z, gpr + z); in _snd_emu10k1_init_efx()
2142 SWITCH_IN(icode, &ptr, tmp + 0, EXTIN_LINE1_L + z, gpr + 2 + z); in _snd_emu10k1_init_efx()
2143 VOLUME_ADD(icode, &ptr, capture + z, tmp + 0, gpr + z); in _snd_emu10k1_init_efx()
2153 VOLUME_ADDIN(icode, &ptr, playback + z, EXTIN_COAX_SPDIF_L + z, gpr + z); in _snd_emu10k1_init_efx()
2159 SWITCH_IN(icode, &ptr, tmp + 0, EXTIN_COAX_SPDIF_L + z, gpr + 2 + z); in _snd_emu10k1_init_efx()
2160 VOLUME_ADD(icode, &ptr, capture + z, tmp + 0, gpr + z); in _snd_emu10k1_init_efx()
2170 VOLUME_ADDIN(icode, &ptr, playback + z, EXTIN_LINE2_L + z, gpr + z); in _snd_emu10k1_init_efx()
2177 SWITCH_IN(icode, &ptr, tmp + 0, EXTIN_LINE2_L + z, gpr + 2 + z); in _snd_emu10k1_init_efx()
2178 VOLUME_ADD(icode, &ptr, capture + z, tmp + 0, gpr + z); in _snd_emu10k1_init_efx()
2190 …OP(icode, &ptr, iACC3, GPR(playback + SND_EMU10K1_PLAYBACK_CHANNELS + 0), GPR(playback + 0), C_000… in _snd_emu10k1_init_efx()
2191 …OP(icode, &ptr, iACC3, GPR(playback + SND_EMU10K1_PLAYBACK_CHANNELS + 1), GPR(playback + 1), C_000… in _snd_emu10k1_init_efx()
2192 …OP(icode, &ptr, iACC3, GPR(playback + SND_EMU10K1_PLAYBACK_CHANNELS + 2), GPR(playback + 2), C_000… in _snd_emu10k1_init_efx()
2193 …OP(icode, &ptr, iACC3, GPR(playback + SND_EMU10K1_PLAYBACK_CHANNELS + 3), GPR(playback + 3), C_000… in _snd_emu10k1_init_efx()
2194 …OP(icode, &ptr, iACC3, GPR(playback + SND_EMU10K1_PLAYBACK_CHANNELS + 4), GPR(playback + 4), C_000… in _snd_emu10k1_init_efx()
2195 …OP(icode, &ptr, iACC3, GPR(playback + SND_EMU10K1_PLAYBACK_CHANNELS + 5), GPR(playback + 5), C_000… in _snd_emu10k1_init_efx()
2235 OP(icode, &ptr, iMAC0, C_00000000, C_00000000, GPR(d), GPR(BASS_GPR + 0 + j)); in _snd_emu10k1_init_efx()
2236 OP(icode, &ptr, iMACMV, GPR(k+1), GPR(k), GPR(k+1), GPR(BASS_GPR + 4 + j)); in _snd_emu10k1_init_efx()
2237 OP(icode, &ptr, iMACMV, GPR(k), GPR(d), GPR(k), GPR(BASS_GPR + 2 + j)); in _snd_emu10k1_init_efx()
2238 OP(icode, &ptr, iMACMV, GPR(k+3), GPR(k+2), GPR(k+3), GPR(BASS_GPR + 8 + j)); in _snd_emu10k1_init_efx()
2239 OP(icode, &ptr, iMAC0, GPR(k+2), GPR_ACCU, GPR(k+2), GPR(BASS_GPR + 6 + j)); in _snd_emu10k1_init_efx()
2240 OP(icode, &ptr, iACC3, GPR(k+2), GPR(k+2), GPR(k+2), C_00000000); in _snd_emu10k1_init_efx()
2242 OP(icode, &ptr, iMAC0, C_00000000, C_00000000, GPR(k+2), GPR(TREBLE_GPR + 0 + j)); in _snd_emu10k1_init_efx()
2243 OP(icode, &ptr, iMACMV, GPR(l+1), GPR(l), GPR(l+1), GPR(TREBLE_GPR + 4 + j)); in _snd_emu10k1_init_efx()
2244 OP(icode, &ptr, iMACMV, GPR(l), GPR(k+2), GPR(l), GPR(TREBLE_GPR + 2 + j)); in _snd_emu10k1_init_efx()
2245 OP(icode, &ptr, iMACMV, GPR(l+3), GPR(l+2), GPR(l+3), GPR(TREBLE_GPR + 8 + j)); in _snd_emu10k1_init_efx()
2246 OP(icode, &ptr, iMAC0, GPR(l+2), GPR_ACCU, GPR(l+2), GPR(TREBLE_GPR + 6 + j)); in _snd_emu10k1_init_efx()
2247 OP(icode, &ptr, iMACINT0, GPR(l+2), C_00000000, GPR(l+2), C_00000010); in _snd_emu10k1_init_efx()
2249 OP(icode, &ptr, iACC3, GPR(d), GPR(l+2), C_00000000, C_00000000); in _snd_emu10k1_init_efx()
2261 SWITCH(icode, &ptr, tmp + 0, playback + SND_EMU10K1_PLAYBACK_CHANNELS + z, gpr + 0); in _snd_emu10k1_init_efx()
2262 SWITCH_NEG(icode, &ptr, tmp + 1, gpr + 0); in _snd_emu10k1_init_efx()
2263 SWITCH(icode, &ptr, tmp + 1, playback + z, tmp + 1); in _snd_emu10k1_init_efx()
2264 …OP(icode, &ptr, iACC3, GPR(playback + SND_EMU10K1_PLAYBACK_CHANNELS + z), GPR(tmp + 0), GPR(tmp + … in _snd_emu10k1_init_efx()
2276 …OP(icode, &ptr, iACC3, EXTOUT(EXTOUT_AC97_L + z), GPR(playback + SND_EMU10K1_PLAYBACK_CHANNELS + z… in _snd_emu10k1_init_efx()
2283 SWITCH(icode, &ptr, tmp + 0, 8 + z, gpr + z); in _snd_emu10k1_init_efx()
2284 SWITCH_NEG(icode, &ptr, tmp + 1, gpr + z); in _snd_emu10k1_init_efx()
2285 SWITCH(icode, &ptr, tmp + 1, playback + SND_EMU10K1_PLAYBACK_CHANNELS + z, tmp + 1); in _snd_emu10k1_init_efx()
2286 OP(icode, &ptr, iACC3, EXTOUT(EXTOUT_TOSLINK_L + z), GPR(tmp + 0), GPR(tmp + 1), C_00000000); in _snd_emu10k1_init_efx()
2288 OP(icode, &ptr, iACC3, EXTOUT(EXTOUT_ADC_CAP_L + z), GPR(tmp + 0), GPR(tmp + 1), C_00000000); in _snd_emu10k1_init_efx()
2300 SWITCH(icode, &ptr, tmp + 0, playback + SND_EMU10K1_PLAYBACK_CHANNELS + 4 + z, gpr + 2 + z); in _snd_emu10k1_init_efx()
2301 SWITCH_NEG(icode, &ptr, tmp + 1, gpr + 2 + z); in _snd_emu10k1_init_efx()
2302 SWITCH(icode, &ptr, tmp + 1, playback + SND_EMU10K1_PLAYBACK_CHANNELS + z, tmp + 1); in _snd_emu10k1_init_efx()
2303 OP(icode, &ptr, iACC3, GPR(tmp + 0), GPR(tmp + 0), GPR(tmp + 1), C_00000000); in _snd_emu10k1_init_efx()
2304 VOLUME_OUT(icode, &ptr, EXTOUT_HEADPHONE_L + z, tmp + 0, gpr + z); in _snd_emu10k1_init_efx()
2319 …OP(icode, &ptr, iACC3, EXTOUT(EXTOUT_REAR_L + z), GPR(playback + SND_EMU10K1_PLAYBACK_CHANNELS + 2… in _snd_emu10k1_init_efx()
2323 …OP(icode, &ptr, iACC3, EXTOUT(EXTOUT_AC97_REAR_L + z), GPR(playback + SND_EMU10K1_PLAYBACK_CHANNEL… in _snd_emu10k1_init_efx()
2327 …OP(icode, &ptr, iACC3, EXTOUT(EXTOUT_AC97_CENTER), GPR(playback + SND_EMU10K1_PLAYBACK_CHANNELS + … in _snd_emu10k1_init_efx()
2328 …OP(icode, &ptr, iACC3, EXTOUT(EXTOUT_ACENTER), GPR(playback + SND_EMU10K1_PLAYBACK_CHANNELS + 4), … in _snd_emu10k1_init_efx()
2330 …OP(icode, &ptr, iACC3, EXTOUT(EXTOUT_AC97_CENTER), GPR(playback + SND_EMU10K1_PLAYBACK_CHANNELS + … in _snd_emu10k1_init_efx()
2331 …OP(icode, &ptr, iACC3, EXTOUT(EXTOUT_ACENTER), GPR(playback + SND_EMU10K1_PLAYBACK_CHANNELS + 0), … in _snd_emu10k1_init_efx()
2337 …OP(icode, &ptr, iACC3, EXTOUT(EXTOUT_AC97_LFE), GPR(playback + SND_EMU10K1_PLAYBACK_CHANNELS + 5),… in _snd_emu10k1_init_efx()
2338 …OP(icode, &ptr, iACC3, EXTOUT(EXTOUT_ALFE), GPR(playback + SND_EMU10K1_PLAYBACK_CHANNELS + 5), C_0… in _snd_emu10k1_init_efx()
2340 …OP(icode, &ptr, iACC3, EXTOUT(EXTOUT_AC97_LFE), GPR(playback + SND_EMU10K1_PLAYBACK_CHANNELS + 1),… in _snd_emu10k1_init_efx()
2341 …OP(icode, &ptr, iACC3, EXTOUT(EXTOUT_ALFE), GPR(playback + SND_EMU10K1_PLAYBACK_CHANNELS + 1), C_0… in _snd_emu10k1_init_efx()
2347 OP(icode, &ptr, iACC3, EXTOUT(EXTOUT_ADC_CAP_L + z), GPR(capture + z), C_00000000, C_00000000); in _snd_emu10k1_init_efx()
2351 OP(icode, &ptr, iACC3, EXTOUT(EXTOUT_MIC_CAP), GPR(capture + 2), C_00000000, C_00000000); in _snd_emu10k1_init_efx()
2364 OP(icode, &ptr, iACC3, FXBUS2(14), C_00000000, C_00000000, EXTIN(0)); in _snd_emu10k1_init_efx()
2365 OP(icode, &ptr, iACC3, FXBUS2(15), C_00000000, C_00000000, EXTIN(1)); in _snd_emu10k1_init_efx()
2366 OP(icode, &ptr, iACC3, FXBUS2(0), C_00000000, C_00000000, EXTIN(2)); in _snd_emu10k1_init_efx()
2367 OP(icode, &ptr, iACC3, FXBUS2(3), C_00000000, C_00000000, EXTIN(3)); in _snd_emu10k1_init_efx()
2369 OP(icode, &ptr, iACC3, FXBUS2(z), C_00000000, C_00000000, EXTIN(z)); in _snd_emu10k1_init_efx()
2372 OP(icode, &ptr, iACC3, FXBUS2(z), C_00000000, C_00000000, EXTIN(z)); in _snd_emu10k1_init_efx()
2389 OP(icode, &ptr, iACC3, C_00000000, C_00000000, C_00000000, C_00000000); in _snd_emu10k1_init_efx()
2393 icode->gpr_add_control_count = i; in _snd_emu10k1_init_efx()
2394 icode->gpr_add_controls = (struct snd_emu10k1_fx8010_control_gpr __user *)controls; in _snd_emu10k1_init_efx()
2396 err = snd_emu10k1_icode_poke(emu, icode, true); in _snd_emu10k1_init_efx()
2405 kfree((void __force *)icode->gpr_map); in _snd_emu10k1_init_efx()
2407 kfree(icode); in _snd_emu10k1_init_efx()
2532 struct snd_emu10k1_fx8010_code *icode; in snd_emu10k1_fx8010_ioctl() local
2557 icode = memdup_user(argp, sizeof(*icode)); in snd_emu10k1_fx8010_ioctl()
2558 if (IS_ERR(icode)) in snd_emu10k1_fx8010_ioctl()
2559 return PTR_ERR(icode); in snd_emu10k1_fx8010_ioctl()
2560 res = snd_emu10k1_icode_poke(emu, icode, false); in snd_emu10k1_fx8010_ioctl()
2561 kfree(icode); in snd_emu10k1_fx8010_ioctl()
2564 icode = memdup_user(argp, sizeof(*icode)); in snd_emu10k1_fx8010_ioctl()
2565 if (IS_ERR(icode)) in snd_emu10k1_fx8010_ioctl()
2566 return PTR_ERR(icode); in snd_emu10k1_fx8010_ioctl()
2567 res = snd_emu10k1_icode_peek(emu, icode); in snd_emu10k1_fx8010_ioctl()
2568 if (res == 0 && copy_to_user(argp, icode, sizeof(*icode))) { in snd_emu10k1_fx8010_ioctl()
2569 kfree(icode); in snd_emu10k1_fx8010_ioctl()
2572 kfree(icode); in snd_emu10k1_fx8010_ioctl()