azx_dev->period_updating = 0; 
static irqreturn_t azx_interrupt(int irq, void* dev_id, struct pt_regs *regs){	azx_t *chip = dev_id;	azx_dev_t *azx_dev;	u32 status;	int i;	spin_lock(&chip->reg_lock);	status = azx_readl(chip, INTSTS);	if (status == 0) {		spin_unlock(&chip->reg_lock);		return IRQ_NONE;	}		for (i = 0; i < chip->num_streams; i++) {		azx_dev = &chip->azx_dev[i];		if (status & azx_dev->sd_int_sta_mask) {			azx_sd_writeb(azx_dev, SD_STS, SD_INT_MASK);			if (azx_dev->substream && azx_dev->running) {				spin_unlock(&chip->reg_lock);				snd_pcm_period_elapsed(azx_dev->substream);				spin_lock(&chip->reg_lock);			}		}	}	/* clear rirb int */	status = azx_readb(chip, RIRBSTS);	if (status & RIRB_INT_MASK) {		if (status & RIRB_INT_RESPONSE)			azx_update_rirb(chip);		azx_writeb(chip, RIRBSTS, RIRB_INT_MASK);	}#if 0	/* clear state status int */	if (azx_readb(chip, STATESTS) & 0x04)		azx_writeb(chip, STATESTS, 0x04);#endif	spin_unlock(&chip->reg_lock);		return IRQ_HANDLED;}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/0be3b5d3fb94c36c517655d18a936681d7108667/hda_intel.c/clean/sound/pci/hda/hda_intel.c