Lines Matching refs:chip

40 	struct snd_vxpocket *chip = to_vxpocket(_chip);
41 return chip->port + vxp_reg_offset[reg];
48 static unsigned char vxp_inb(struct vx_core *chip, int offset)
50 return inb(vxp_reg_addr(chip, offset));
58 static void vxp_outb(struct vx_core *chip, int offset, unsigned char val)
60 outb(val, vxp_reg_addr(chip, offset));
67 #define vx_inb(chip,reg) vxp_inb((struct vx_core *)(chip), VX_##reg)
69 #define vx_outb(chip,reg,val) vxp_outb((struct vx_core *)(chip), VX_##reg,val)
77 static int vx_check_magic(struct vx_core *chip)
82 c = vx_inb(chip, CDSP);
100 struct snd_vxpocket *chip = to_vxpocket(_chip);
103 vx_outb(chip, CDSP, chip->regCDSP | VXP_CDSP_DSP_RESET_MASK);
104 vx_inb(chip, CDSP);
107 chip->regCDSP &= ~VXP_CDSP_DSP_RESET_MASK;
108 vx_outb(chip, CDSP, chip->regCDSP);
109 vx_inb(chip, CDSP);
118 struct snd_vxpocket *chip = to_vxpocket(_chip);
121 vx_outb(chip, CDSP, chip->regCDSP | VXP_CDSP_CODEC_RESET_MASK);
122 vx_inb(chip, CDSP);
125 chip->regCDSP &= ~VXP_CDSP_CODEC_RESET_MASK;
126 vx_outb(chip, CDSP, chip->regCDSP);
127 vx_inb(chip, CDSP);
137 struct snd_vxpocket *chip = to_vxpocket(_chip);
145 chip->regDIALOG |= VXP_DLG_XILINX_REPROG_MASK;
146 vx_outb(chip, DIALOG, chip->regDIALOG);
149 regCSUER = vx_inb(chip, CSUER);
150 regRUER = vx_inb(chip, RUER);
153 vx_outb(chip, ICR, 0);
161 vx_outb(chip, ICR, ICR_HF1);
167 vx_outb(chip, TXL, data);
171 c = vx_inb(chip, RXL);
177 vx_outb(chip, ICR, 0);
187 c = (int)vx_inb(chip, RXH) << 16;
188 c |= (int)vx_inb(chip, RXM) << 8;
189 c |= vx_inb(chip, RXL);
193 vx_outb(chip, ICR, ICR_HF0);
203 vx_outb(chip, CSUER, regCSUER);
204 vx_outb(chip, RUER, regRUER);
207 chip->regDIALOG |= VXP_DLG_XILINX_REPROG_MASK;
208 vx_outb(chip, DIALOG, chip->regDIALOG);
209 vx_inb(chip, DIALOG);
211 chip->regDIALOG &= ~VXP_DLG_XILINX_REPROG_MASK;
212 vx_outb(chip, DIALOG, chip->regDIALOG);
213 vx_inb(chip, DIALOG);
222 vx_outb(chip, CSUER, regCSUER);
223 vx_outb(chip, RUER, regRUER);
224 chip->regDIALOG &= ~VXP_DLG_XILINX_REPROG_MASK;
225 vx_outb(chip, DIALOG, chip->regDIALOG);
272 struct snd_vxpocket *chip = to_vxpocket(_chip);
278 if (! (vx_inb(chip, DIALOG) & VXP_DLG_MEMIRQ_MASK))
283 vx_outb(chip, DIALOG, chip->regDIALOG | VXP_DLG_ACK_MEMIRQ_MASK);
287 vx_inb(chip, DIALOG);
288 vx_outb(chip, DIALOG, chip->regDIALOG & ~VXP_DLG_ACK_MEMIRQ_MASK);
299 struct snd_vxpocket *chip = to_vxpocket(_chip);
303 chip->regCDSP |= VXP_CDSP_VALID_IRQ_MASK;
305 chip->regCDSP &= ~VXP_CDSP_VALID_IRQ_MASK;
306 vx_outb(chip, CDSP, chip->regCDSP);
315 struct snd_vxpocket *chip = to_vxpocket(_chip);
318 vx_outb(chip, ICR, do_write ? ICR_TREQ : ICR_RREQ);
320 vx_inb(chip, ISR);
321 vx_outb(chip, ISR, 0);
324 chip->regDIALOG |= VXP_DLG_DMA16_SEL_MASK;
325 chip->regDIALOG |= do_write ? VXP_DLG_DMAWRITE_SEL_MASK : VXP_DLG_DMAREAD_SEL_MASK;
326 vx_outb(chip, DIALOG, chip->regDIALOG);
335 struct snd_vxpocket *chip = to_vxpocket(_chip);
338 chip->regDIALOG &= ~(VXP_DLG_DMAWRITE_SEL_MASK|
341 vx_outb(chip, DIALOG, chip->regDIALOG);
343 vx_outb(chip, ICR, 0);
353 static void vxp_dma_write(struct vx_core *chip, struct snd_pcm_runtime *runtime,
356 long port = vxp_reg_addr(chip, VX_DMA);
360 vx_setup_pseudo_dma(chip, 1);
380 vx_release_pseudo_dma(chip);
392 static void vxp_dma_read(struct vx_core *chip, struct snd_pcm_runtime *runtime,
395 struct snd_vxpocket *pchip = to_vxpocket(chip);
396 long port = vxp_reg_addr(chip, VX_DMA);
402 vx_setup_pseudo_dma(chip, 0);
420 vx_outb(chip, DIALOG, pchip->regDIALOG);
425 vx_outb(chip, DIALOG, pchip->regDIALOG);
427 vx_outb(chip, ICR, 0);
434 static void vxp_write_codec_reg(struct vx_core *chip, int codec, unsigned int data)
440 vx_inb(chip, LOFREQ);
442 vx_inb(chip, CODEC2);
446 vx_outb(chip, DATA, ((data & 0x800000) ? VX_DATA_CODEC_MASK : 0));
449 vx_inb(chip, HIFREQ);
457 void vx_set_mic_boost(struct vx_core *chip, int boost)
459 struct snd_vxpocket *pchip = to_vxpocket(chip);
461 if (chip->chip_status & VX_STAT_IS_STALE)
464 mutex_lock(&chip->lock);
475 vx_outb(chip, CDSP, pchip->regCDSP);
477 mutex_unlock(&chip->lock);
499 void vx_set_mic_level(struct vx_core *chip, int level)
501 struct snd_vxpocket *pchip = to_vxpocket(chip);
503 if (chip->chip_status & VX_STAT_IS_STALE)
506 mutex_lock(&chip->lock);
509 vx_outb(chip, MICRO, level);
511 mutex_unlock(&chip->lock);
520 struct snd_vxpocket *chip = to_vxpocket(_chip);
524 chip->regCDSP |= VXP_CDSP_DATAIN_SEL_MASK;
525 vx_outb(chip, CDSP, chip->regCDSP);
528 chip->regCDSP &= ~VXP_CDSP_DATAIN_SEL_MASK;
530 chip->regCDSP &= ~P24_CDSP_MICS_SEL_MASK;
532 chip->regCDSP &= ~VXP_CDSP_MIC_SEL_MASK;
533 vx_outb(chip, CDSP, chip->regCDSP);
536 chip->regCDSP &= ~VXP_CDSP_DATAIN_SEL_MASK;
539 chip->regCDSP &= ~P24_CDSP_MICS_SEL_MASK;
540 if (chip->mic_level)
541 chip->regCDSP |= P24_CDSP_MIC38_SEL_MASK;
543 chip->regCDSP |= P24_CDSP_MIC20_SEL_MASK;
544 vx_outb(chip, CDSP, chip->regCDSP);
546 chip->regCDSP |= VXP_CDSP_MIC_SEL_MASK;
547 vx_outb(chip, CDSP, chip->regCDSP);
548 vx_outb(chip, MICRO, vx_compute_mic_level(chip->mic_level));
560 struct snd_vxpocket *chip = to_vxpocket(_chip);
563 chip->regCDSP &= ~VXP_CDSP_CLOCKIN_SEL_MASK;
565 chip->regCDSP |= VXP_CDSP_CLOCKIN_SEL_MASK;
566 vx_outb(chip, CDSP, chip->regCDSP);
575 struct snd_vxpocket *chip = to_vxpocket(_chip);
577 chip->regCDSP = 0;
578 chip->regDIALOG = 0;