Lines Matching refs:apu
468 u8 apu[4]; member
541 unsigned char apu[NR_APUS]; member
925 offset = apu_get_register(chip, es->apu[0], 5); in snd_es1968_get_dma_ptr()
932 static void snd_es1968_apu_set_freq(struct es1968 *chip, int apu, int freq) in snd_es1968_apu_set_freq() argument
934 apu_set_register(chip, apu, 2, in snd_es1968_apu_set_freq()
935 (apu_get_register(chip, apu, 2) & 0x00FF) | in snd_es1968_apu_set_freq()
937 apu_set_register(chip, apu, 3, freq >> 8); in snd_es1968_apu_set_freq()
941 static inline void snd_es1968_trigger_apu(struct es1968 *esm, int apu, int mode) in snd_es1968_trigger_apu() argument
944 __apu_set_register(esm, apu, 0, in snd_es1968_trigger_apu()
945 (__apu_get_register(esm, apu, 0) & 0xff0f) | in snd_es1968_trigger_apu()
952 __apu_set_register(chip, es->apu[0], 5, es->base[0]); in snd_es1968_pcm_start()
953 snd_es1968_trigger_apu(chip, es->apu[0], es->apu_mode[0]); in snd_es1968_pcm_start()
955 __apu_set_register(chip, es->apu[2], 5, es->base[2]); in snd_es1968_pcm_start()
956 snd_es1968_trigger_apu(chip, es->apu[2], es->apu_mode[2]); in snd_es1968_pcm_start()
959 __apu_set_register(chip, es->apu[1], 5, es->base[1]); in snd_es1968_pcm_start()
960 snd_es1968_trigger_apu(chip, es->apu[1], es->apu_mode[1]); in snd_es1968_pcm_start()
962 __apu_set_register(chip, es->apu[3], 5, es->base[3]); in snd_es1968_pcm_start()
963 snd_es1968_trigger_apu(chip, es->apu[3], es->apu_mode[3]); in snd_es1968_pcm_start()
972 snd_es1968_trigger_apu(chip, es->apu[0], 0); in snd_es1968_pcm_stop()
973 snd_es1968_trigger_apu(chip, es->apu[1], 0); in snd_es1968_pcm_stop()
975 snd_es1968_trigger_apu(chip, es->apu[2], 0); in snd_es1968_pcm_stop()
976 snd_es1968_trigger_apu(chip, es->apu[3], 0); in snd_es1968_pcm_stop()
995 wave_set_register(chip, es->apu[channel] << 3, tmpval); in snd_es1968_program_wavecache()
1008 int channel, apu; in snd_es1968_playback_setup() local
1019 apu = es->apu[channel]; in snd_es1968_playback_setup()
1043 apu_set_register(chip, apu, i, 0x0000); in snd_es1968_playback_setup()
1046 apu_set_register(chip, apu, 4, ((pa >> 16) & 0xFF) << 8); in snd_es1968_playback_setup()
1047 apu_set_register(chip, apu, 5, pa & 0xFFFF); in snd_es1968_playback_setup()
1048 apu_set_register(chip, apu, 6, (pa + size) & 0xFFFF); in snd_es1968_playback_setup()
1050 apu_set_register(chip, apu, 7, size); in snd_es1968_playback_setup()
1053 apu_set_register(chip, apu, 8, 0x0000); in snd_es1968_playback_setup()
1055 apu_set_register(chip, apu, 9, 0xD000); in snd_es1968_playback_setup()
1058 apu_set_register(chip, apu, 11, 0x0000); in snd_es1968_playback_setup()
1060 apu_set_register(chip, apu, 0, 0x400F); in snd_es1968_playback_setup()
1073 apu_set_register(chip, apu, 10, in snd_es1968_playback_setup()
1077 apu_set_register(chip, apu, 10, 0x8F08); in snd_es1968_playback_setup()
1101 snd_es1968_apu_set_freq(chip, es->apu[0], freq); in snd_es1968_playback_setup()
1102 snd_es1968_apu_set_freq(chip, es->apu[1], freq); in snd_es1968_playback_setup()
1110 int i, apu = es->apu[channel]; in init_capture_apu() local
1128 apu_set_register(chip, apu, i, 0x0000); in init_capture_apu()
1132 apu_set_register(chip, apu, 2, 0x8); in init_capture_apu()
1135 apu_set_register(chip, apu, 4, ((pa >> 16) & 0xFF) << 8); in init_capture_apu()
1136 apu_set_register(chip, apu, 5, pa & 0xFFFF); in init_capture_apu()
1137 apu_set_register(chip, apu, 6, (pa + bsize) & 0xFFFF); in init_capture_apu()
1138 apu_set_register(chip, apu, 7, bsize); in init_capture_apu()
1140 apu_set_register(chip, apu, 8, 0x00F0); in init_capture_apu()
1142 apu_set_register(chip, apu, 9, 0x0000); in init_capture_apu()
1144 apu_set_register(chip, apu, 10, 0x8F08); in init_capture_apu()
1146 apu_set_register(chip, apu, 11, route); in init_capture_apu()
1148 apu_set_register(chip, apu, 0, 0x400F); in init_capture_apu()
1177 ESM_APU_SRCONVERTOR, es->apu[2]); in snd_es1968_capture_setup()
1187 ESM_APU_SRCONVERTOR, es->apu[3]); in snd_es1968_capture_setup()
1200 snd_es1968_apu_set_freq(chip, es->apu[0], freq); in snd_es1968_capture_setup()
1201 snd_es1968_apu_set_freq(chip, es->apu[1], freq); in snd_es1968_capture_setup()
1205 snd_es1968_apu_set_freq(chip, es->apu[2], freq); in snd_es1968_capture_setup()
1206 snd_es1968_apu_set_freq(chip, es->apu[3], freq); in snd_es1968_capture_setup()
1524 int apu; in snd_es1968_alloc_apu_pair() local
1526 for (apu = 0; apu < NR_APUS; apu += 2) { in snd_es1968_alloc_apu_pair()
1527 if (chip->apu[apu] == ESM_APU_FREE && in snd_es1968_alloc_apu_pair()
1528 chip->apu[apu + 1] == ESM_APU_FREE) { in snd_es1968_alloc_apu_pair()
1529 chip->apu[apu] = chip->apu[apu + 1] = type; in snd_es1968_alloc_apu_pair()
1530 return apu; in snd_es1968_alloc_apu_pair()
1539 static void snd_es1968_free_apu_pair(struct es1968 *chip, int apu) in snd_es1968_free_apu_pair() argument
1541 chip->apu[apu] = chip->apu[apu + 1] = ESM_APU_FREE; in snd_es1968_free_apu_pair()
1567 es->apu[0] = apu1; in snd_es1968_playback_open()
1568 es->apu[1] = apu1 + 1; in snd_es1968_playback_open()
1610 es->apu[0] = apu1; in snd_es1968_capture_open()
1611 es->apu[1] = apu1 + 1; in snd_es1968_capture_open()
1612 es->apu[2] = apu2; in snd_es1968_capture_open()
1613 es->apu[3] = apu2 + 1; in snd_es1968_capture_open()
1655 snd_es1968_free_apu_pair(chip, es->apu[0]); in snd_es1968_playback_close()
1673 snd_es1968_free_apu_pair(chip, es->apu[0]); in snd_es1968_capture_close()
1674 snd_es1968_free_apu_pair(chip, es->apu[2]); in snd_es1968_capture_close()
1710 int i, apu; in es1968_measure_clock() local
1720 if ((apu = snd_es1968_alloc_apu_pair(chip, ESM_APU_PCM_PLAY)) < 0) { in es1968_measure_clock()
1728 snd_es1968_free_apu_pair(chip, apu); in es1968_measure_clock()
1734 wave_set_register(chip, apu << 3, (memory->buf.addr - 0x10) & 0xfff8); in es1968_measure_clock()
1741 apu_set_register(chip, apu, i, 0x0000); in es1968_measure_clock()
1743 apu_set_register(chip, apu, 0, 0x400f); in es1968_measure_clock()
1744 apu_set_register(chip, apu, 4, ((pa >> 16) & 0xff) << 8); in es1968_measure_clock()
1745 apu_set_register(chip, apu, 5, pa & 0xffff); in es1968_measure_clock()
1746 apu_set_register(chip, apu, 6, (pa + CLOCK_MEASURE_BUFSIZE/2) & 0xffff); in es1968_measure_clock()
1747 apu_set_register(chip, apu, 7, CLOCK_MEASURE_BUFSIZE/2); in es1968_measure_clock()
1748 apu_set_register(chip, apu, 8, 0x0000); in es1968_measure_clock()
1749 apu_set_register(chip, apu, 9, 0xD000); in es1968_measure_clock()
1750 apu_set_register(chip, apu, 10, 0x8F08); in es1968_measure_clock()
1751 apu_set_register(chip, apu, 11, 0x0000); in es1968_measure_clock()
1757 snd_es1968_apu_set_freq(chip, apu, ((unsigned int)48000 << 16) / chip->clock); /* 48000 Hz */ in es1968_measure_clock()
1760 chip->measure_apu = apu; in es1968_measure_clock()
1763 __apu_set_register(chip, apu, 5, pa & 0xffff); in es1968_measure_clock()
1764 snd_es1968_trigger_apu(chip, apu, ESM_APU_16BITLINEAR); in es1968_measure_clock()
1769 offset = __apu_get_register(chip, apu, 5); in es1968_measure_clock()
1771 snd_es1968_trigger_apu(chip, apu, 0); /* stop */ in es1968_measure_clock()
1795 snd_es1968_free_apu_pair(chip, apu); in es1968_measure_clock()
2741 chip->apu[i] = ESM_APU_FREE; in snd_es1968_create()