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

Commit 76039358 authored by Arnd Bergmann's avatar Arnd Bergmann Committed by Takashi Iwai
Browse files

ALSA: ali5451: use mdelay instead of large udelay constants



ARM cannot handle udelay for more than 2 miliseconds, so we
should use mdelay instead for those.

Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
parent 2fc565e4
Loading
Loading
Loading
Loading
+4 −4
Original line number Original line Diff line number Diff line
@@ -451,10 +451,10 @@ static int snd_ali_reset_5451(struct snd_ali *codec)
	if (pci_dev) {
	if (pci_dev) {
		pci_read_config_dword(pci_dev, 0x7c, &dwVal);
		pci_read_config_dword(pci_dev, 0x7c, &dwVal);
		pci_write_config_dword(pci_dev, 0x7c, dwVal | 0x08000000);
		pci_write_config_dword(pci_dev, 0x7c, dwVal | 0x08000000);
		udelay(5000);
		mdelay(5);
		pci_read_config_dword(pci_dev, 0x7c, &dwVal);
		pci_read_config_dword(pci_dev, 0x7c, &dwVal);
		pci_write_config_dword(pci_dev, 0x7c, dwVal & 0xf7ffffff);
		pci_write_config_dword(pci_dev, 0x7c, dwVal & 0xf7ffffff);
		udelay(5000);
		mdelay(5);
	}
	}
	
	
	pci_dev = codec->pci;
	pci_dev = codec->pci;
@@ -463,14 +463,14 @@ static int snd_ali_reset_5451(struct snd_ali *codec)
	udelay(500);
	udelay(500);
	pci_read_config_dword(pci_dev, 0x44, &dwVal);
	pci_read_config_dword(pci_dev, 0x44, &dwVal);
	pci_write_config_dword(pci_dev, 0x44, dwVal & 0xfffbffff);
	pci_write_config_dword(pci_dev, 0x44, dwVal & 0xfffbffff);
	udelay(5000);
	mdelay(5);
	
	
	wCount = 200;
	wCount = 200;
	while(wCount--) {
	while(wCount--) {
		wReg = snd_ali_codec_peek(codec, 0, AC97_POWERDOWN);
		wReg = snd_ali_codec_peek(codec, 0, AC97_POWERDOWN);
		if ((wReg & 0x000f) == 0x000f)
		if ((wReg & 0x000f) == 0x000f)
			return 0;
			return 0;
		udelay(5000);
		mdelay(5);
	}
	}


	/* non-fatal if you have a non PM capable codec */
	/* non-fatal if you have a non PM capable codec */