[alsa-devel] [PATCH 3/3] ALSA: hda - use azx_writew() for 16-bit length register

Takashi Iwai tiwai at suse.de
Wed Jul 24 16:00:27 CEST 2013


At Mon, 22 Jul 2013 03:19:18 -0400,
Wang Xingchao wrote:
> 
> Register STATESTS is 16-bit length, use correct API for read/write.
> 
> Signed-off-by: Wang Xingchao <xingchao.wang at linux.intel.com>

Applied this patch now, as this is a proper fix.


thanks,

Takashi

> ---
>  sound/pci/hda/hda_intel.c | 8 ++++----
>  1 file changed, 4 insertions(+), 4 deletions(-)
> 
> diff --git a/sound/pci/hda/hda_intel.c b/sound/pci/hda/hda_intel.c
> index a7ac7fd..c6f7c19 100644
> --- a/sound/pci/hda/hda_intel.c
> +++ b/sound/pci/hda/hda_intel.c
> @@ -1160,7 +1160,7 @@ static int azx_reset(struct azx *chip, int full_reset)
>  		goto __skip;
>  
>  	/* clear STATESTS */
> -	azx_writeb(chip, STATESTS, STATESTS_INT_MASK);
> +	azx_writew(chip, STATESTS, STATESTS_INT_MASK);
>  
>  	/* reset controller */
>  	azx_enter_link_reset(chip);
> @@ -1242,7 +1242,7 @@ static void azx_int_clear(struct azx *chip)
>  	}
>  
>  	/* clear STATESTS */
> -	azx_writeb(chip, STATESTS, STATESTS_INT_MASK);
> +	azx_writew(chip, STATESTS, STATESTS_INT_MASK);
>  
>  	/* clear rirb status */
>  	azx_writeb(chip, RIRBSTS, RIRB_INT_MASK);
> @@ -1451,8 +1451,8 @@ static irqreturn_t azx_interrupt(int irq, void *dev_id)
>  
>  #if 0
>  	/* clear state status int */
> -	if (azx_readb(chip, STATESTS) & 0x04)
> -		azx_writeb(chip, STATESTS, 0x04);
> +	if (azx_readw(chip, STATESTS) & 0x04)
> +		azx_writew(chip, STATESTS, 0x04);
>  #endif
>  	spin_unlock(&chip->reg_lock);
>  	
> -- 
> 1.8.3.2
> 


More information about the Alsa-devel mailing list