Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit c5c079e3 authored by Sergei Shtylyov's avatar Sergei Shtylyov Committed by Jaroslav Kysela
Browse files

[ALSA] AMD Au1x00: AC'97 controller is memory mapped



Modules: MIPS AU1x00 driver

AMD Au1x00 ALSA driver erroneously calls request_region() for AC'97
controller registers -- the controller is actually memory mapped at
addresses 0x10000000 thru 0x100FFFFF.

Signed-off-by: default avatarSergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
parent bb160b85
Loading
Loading
Loading
Loading
+4 −3
Original line number Diff line number Diff line
@@ -561,12 +561,13 @@ snd_au1000_ac97_new(struct snd_au1000 *au1000)
		.read = snd_au1000_ac97_read,
	};

	if ((au1000->ac97_res_port = request_region(AC97C_CONFIG,
	       		sizeof(struct au1000_ac97_reg), "Au1x00 AC97")) == NULL) {
	if ((au1000->ac97_res_port = request_mem_region(CPHYSADDR(AC97C_CONFIG),
	       		0x100000, "Au1x00 AC97")) == NULL) {
		snd_printk(KERN_ERR "ALSA AC97: can't grap AC97 port\n");
		return -EBUSY;
	}
	au1000->ac97_ioport = (struct au1000_ac97_reg *) au1000->ac97_res_port->start;
	au1000->ac97_ioport = (struct au1000_ac97_reg *)
		KSEG1ADDR(au1000->ac97_res_port->start);

	spin_lock_init(&au1000->ac97_lock);