• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /netgear-WNDR4500v2-V1.0.0.60_1.0.38/src/linux/linux-2.6/sound/oss/

Lines Matching refs:devc

73 #define REG(x)	(devc->base+x)
144 static pss_confdata *devc = &pss_data;
153 static void pss_write(pss_confdata *devc, int data)
182 devc->base = hw_config->io_base;
183 irq = devc->irq = hw_config->irq;
184 dma = devc->dma = hw_config->dma;
185 devc->osp = hw_config->osp;
187 if (devc->base != 0x220 && devc->base != 0x240)
188 if (devc->base != 0x230 && devc->base != 0x250) /* Some cards use these */
191 if (!request_region(devc->base, 0x10, "PSS mixer, SB emulation")) {
197 printk(KERN_ERR "No PSS signature detected at 0x%x (0x%x)\n", devc->base, id);
198 release_region(devc->base, 0x10);
201 if (!request_region(devc->base + 0x10, 0x9, "PSS config")) {
203 release_region(devc->base, 0x10);
209 static int set_irq(pss_confdata * devc, int dev, int irq)
235 static int set_io_base(pss_confdata * devc, int dev, int base)
245 static int set_dma(pss_confdata * devc, int dev, int dma)
269 static int pss_reset_dsp(pss_confdata * devc)
280 static int pss_put_dspword(pss_confdata * devc, unsigned short word)
296 static int pss_get_dspword(pss_confdata * devc, unsigned short *word)
312 static int pss_download_boot(pss_confdata * devc, unsigned char *block, int size, int flags)
328 pss_reset_dsp(devc);
402 static void set_master_volume(pss_confdata *devc, int left, int right)
415 pss_write(devc, 0x0010);
416 pss_write(devc, log_scale[left] | 0x0000);
417 pss_write(devc, 0x0010);
418 pss_write(devc, log_scale[right] | 0x0100);
421 static void set_synth_volume(pss_confdata *devc, int volume)
424 pss_write(devc, 0x0080);
425 pss_write(devc, vol);
426 pss_write(devc, 0x0081);
427 pss_write(devc, vol);
430 static void set_bass(pss_confdata *devc, int level)
433 pss_write(devc, 0x0010);
434 pss_write(devc, vol | 0x0200);
437 static void set_treble(pss_confdata *devc, int level)
440 pss_write(devc, 0x0010);
441 pss_write(devc, vol | 0x0300);
444 static void pss_mixer_reset(pss_confdata *devc)
446 set_master_volume(devc, 33, 33);
447 set_bass(devc, 50);
448 set_treble(devc, 50);
449 set_synth_volume(devc, 30);
450 pss_write (devc, 0x0010);
451 pss_write (devc, 0x0800 | 0xce); /* Stereo */
455 devc->mixer.volume_l = devc->mixer.volume_r = 33;
456 devc->mixer.bass = 50;
457 devc->mixer.treble = 50;
458 devc->mixer.synth = 30;
504 static int call_ad_mixer(pss_confdata *devc,unsigned int cmd, void __user *arg)
506 if (devc->ad_mixer_dev != NO_WSS_MIXER)
507 return mixer_devs[devc->ad_mixer_dev]->ioctl(devc->ad_mixer_dev, cmd, arg);
514 pss_confdata *devc = mixer_devs[dev]->devc;
523 return call_ad_mixer(devc, cmd, arg);
534 if (devc->ad_mixer_dev != NO_WSS_MIXER)
535 return call_ad_mixer(devc, cmd, arg);
547 &devc->mixer.volume_l,
548 &devc->mixer.volume_r))
550 set_master_volume(devc, devc->mixer.volume_l,
551 devc->mixer.volume_r);
552 return ret_vol_stereo(devc->mixer.volume_l,
553 devc->mixer.volume_r);
556 if (set_volume_mono(arg, &devc->mixer.bass))
558 set_bass(devc, devc->mixer.bass);
559 return ret_vol_mono(devc->mixer.bass);
562 if (set_volume_mono(arg, &devc->mixer.treble))
564 set_treble(devc, devc->mixer.treble);
565 return ret_vol_mono(devc->mixer.treble);
568 if (set_volume_mono(arg, &devc->mixer.synth))
570 set_synth_volume(devc, devc->mixer.synth);
571 return ret_vol_mono(devc->mixer.synth);
586 if (call_ad_mixer(devc, cmd, arg) == -EINVAL)
593 if (call_ad_mixer(devc, cmd, arg) == -EINVAL)
600 if (devc->ad_mixer_dev != NO_WSS_MIXER)
601 return call_ad_mixer(devc, cmd, arg);
605 if (devc->ad_mixer_dev != NO_WSS_MIXER)
606 return call_ad_mixer(devc, cmd, arg);
611 if (devc->ad_mixer_dev != NO_WSS_MIXER)
612 return call_ad_mixer(devc, cmd, arg);
616 or_mask = ret_vol_stereo(devc->mixer.volume_l, devc->mixer.volume_r);
620 or_mask = ret_vol_mono(devc->mixer.bass);
624 or_mask = ret_vol_mono(devc->mixer.treble);
628 or_mask = ret_vol_mono(devc->mixer.synth);
684 else if(!set_io_base(devc, CONF_CDROM, pss_cdrom_port))
699 devc->base = hw_config->io_base;
700 devc->irq = hw_config->irq;
701 devc->dma = hw_config->dma;
702 devc->osp = hw_config->osp;
703 devc->ad_mixer_dev = NO_WSS_MIXER;
724 if (!set_irq(devc, CONF_PSS, devc->irq))
731 if (!set_dma(devc, CONF_PSS, devc->dma))
761 if (!set_io_base(devc, CONF_MIDI, hw_config->io_base)) {
765 if (!set_irq(devc, CONF_MIDI, hw_config->irq)) {
773 if (!pss_download_boot(devc, pss_synth, pss_synthLen, CPF_FIRST | CPF_LAST)) {
814 if (!pss_download_boot(devc, pss_synth, pss_synthLen, CPF_FIRST | CPF_LAST))
836 if (!pss_download_boot(devc, pss_synth, pss_synthLen, CPF_FIRST | CPF_LAST))
848 if (!pss_download_boot(devc, buf->data, buf->len, buf->flags))
897 if (!pss_put_dspword(devc, *data++)) {
918 if (!pss_get_dspword(devc, data++)) {
934 if (!pss_put_dspword(devc, 0x00d0)) {
938 if (!pss_put_dspword(devc, (unsigned short)(dbuf.parm1 & 0xffff))) {
942 if (!pss_get_dspword(devc, &tmp)) {
956 if (!pss_put_dspword(devc, 0x00d1)) {
960 if (!pss_put_dspword(devc, (unsigned short) (dbuf.parm1 & 0xffff))) {
965 if (!pss_put_dspword(devc, tmp)) {
976 if (!pss_put_dspword(devc, 0x00d3)) {
980 if (!pss_put_dspword(devc, (unsigned short)(dbuf.parm1 & 0xffff))) {
985 if (!pss_put_dspword(devc, tmp)) {
990 if (!pss_put_dspword(devc, tmp)) {
1001 if (!pss_put_dspword(devc, 0x00d2)) {
1005 if (!pss_put_dspword(devc, (unsigned short)(dbuf.parm1 & 0xffff))) {
1009 if (!pss_get_dspword(devc, &tmp)) { /* Read MSB */
1014 if (!pss_get_dspword(devc, &tmp)) { /* Read LSB */
1060 if (!set_io_base(devc, CONF_WSS, hw_config->io_base)) {
1064 if (!set_irq(devc, CONF_WSS, hw_config->irq)) {
1068 if (!set_dma(devc, CONF_WSS, hw_config->dma)) {
1091 devc->ad_mixer_dev = NO_WSS_MIXER;
1098 devc)) < 0)
1104 pss_mixer_reset(devc);
1114 devc->ad_mixer_dev = audio_devs[hw_config->slots[0]]->mixer_dev;