ALSA: intel8x0m: Proper endian notations
The BD address tables in intel8x0m driver are in little-endian, hence they should be represented as __le32 instead u32. Spotted by sparse, warnings like: sound/pci/intel8x0m.c:406:40: warning: incorrect type in assignment (different base types) Signed-off-by: Takashi Iwai <tiwai@suse.de>
This commit is contained in:
parent
3c164e2ce6
commit
7752a7de25
|
@ -168,7 +168,7 @@ enum { ALID_MDMIN, ALID_MDMOUT, ALID_MDMLAST = ALID_MDMOUT };
|
|||
struct ichdev {
|
||||
unsigned int ichd; /* ich device number */
|
||||
unsigned long reg_offset; /* offset to bmaddr */
|
||||
u32 *bdbar; /* CPU address (32bit) */
|
||||
__le32 *bdbar; /* CPU address (32bit) */
|
||||
unsigned int bdbar_addr; /* PCI bus address (32bit) */
|
||||
struct snd_pcm_substream *substream;
|
||||
unsigned int physbuf; /* physical address (32bit) */
|
||||
|
@ -395,7 +395,7 @@ static unsigned short snd_intel8x0m_codec_read(struct snd_ac97 *ac97,
|
|||
static void snd_intel8x0m_setup_periods(struct intel8x0m *chip, struct ichdev *ichdev)
|
||||
{
|
||||
int idx;
|
||||
u32 *bdbar = ichdev->bdbar;
|
||||
__le32 *bdbar = ichdev->bdbar;
|
||||
unsigned long port = ichdev->reg_offset;
|
||||
|
||||
iputdword(chip, port + ICH_REG_OFF_BDBAR, ichdev->bdbar_addr);
|
||||
|
@ -1217,7 +1217,7 @@ static int snd_intel8x0m_create(struct snd_card *card,
|
|||
int_sta_masks = 0;
|
||||
for (i = 0; i < chip->bdbars_count; i++) {
|
||||
ichdev = &chip->ichd[i];
|
||||
ichdev->bdbar = ((u32 *)chip->bdbars.area) + (i * ICH_MAX_FRAGS * 2);
|
||||
ichdev->bdbar = ((__le32 *)chip->bdbars.area) + (i * ICH_MAX_FRAGS * 2);
|
||||
ichdev->bdbar_addr = chip->bdbars.addr + (i * sizeof(u32) * ICH_MAX_FRAGS * 2);
|
||||
int_sta_masks |= ichdev->int_sta_mask;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue