Portál AbcLinuxu, 12. května 2025 09:23

Dotaz: Driver zvukovky: No 8bit DMA enabled - kde je problém?

18.2.2011 19:08 Návštěvník
Driver zvukovky: No 8bit DMA enabled - kde je problém?
Přečteno: 151×
Odpovědět | Admin
Příloha:
Zkouším zprovoznit zvukovou kartu s driverem snd-cs5530. Zavedení driveru ale selže s hláškou "No 8bit DMA enabled".

Ani pod dlouhém hledání netuším, zda je problém v HW zvukovky, v ovladači nebo ve špatně sestaveném kernelu, který nemá podporu pro 8bit DMA.

Upřímně řečeno vůbec netuším, co ta hláška znamená a nemám se tudíž čeho chytit. Za jakoukoli radu budu vděčný.

V příloze je patch, kterým byl do kernelu přidán tento driver (prostě zdroják driveru).
Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

18.2.2011 20:30 dustin | skóre: 63 | blog: dustin
Rozbalit Rozbalit vše Re: Driver zvukovky: No 8bit DMA enabled - kde je problém?
Odpovědět | | Sbalit | Link | Blokovat | Admin
Jseš si jistý, že ten driver je určen pro tvůj systém? Protože to hlásí, když v čipsetu CS5530 nenašel požadovanou konfiguraci. Snad tvůj HW není nakonfigurován v režimu emulace soundblasteru. Něco takového ten kus kódu generující tu chybovou hlášku testuje, při zavádění ovladače. Ovladač je vlastně jen rozšíření ovladače pro soundblaster.
18.2.2011 20:56 Návštěvník
Rozbalit Rozbalit vše Re: Driver zvukovky: No 8bit DMA enabled - kde je problém?
Slovo jistý bych asi s jistotou nepoužil :-)

lspci vypíše toto: 0000:00:12.3 Multimedia audio controller: Cyrix Corporation 5530 Audio [Kahlua]

Driver snd-cs5530 je přitom pouze portem původního Kahlua OSS driveru do ALSA.

Domnívám se, že ovladač by měl být skutečně tento. Např. alsaconf zvukovku korektně rozpozná a tváří se, že je vše OK, jenže ono není...

Z toho, co píšeš, soudím, že to asi bude marný boj.
18.2.2011 21:46 dustin | skóre: 63 | blog: dustin
Rozbalit Rozbalit vše Re: Driver zvukovky: No 8bit DMA enabled - kde je problém?
Koukal jsi do toho patche? Jednak ta chyba se zahlásí, když určitý registr neobsahuje nějaký nastavený bit:
dma8 = snd_cs5530_mixer_read(sb_base, 0x81);

if (dma8 & 0x01)
		dma8 = 0;
	else if (dma8 & 02)
		dma8 = 1;
	else if (dma8 & 0x08)
		dma8 = 3;
	else {
		printk(KERN_ERR "CS5530: No 8bit DMA enabled\n");
		snd_cs5530_free(chip);
		return -ENODEV;
	}
S tím sotva něco uděláš. A hlavně se tam píše:
* XpressAudio(tm) is used on the Cyrix MediaGX (now NatSemi Geode) systems.
* The older version (VSA1) provides fairly good soundblaster emulation
* although there are a couple of bugs: large DMA buffers break record,
* and the MPU event handling seems suspect. VSA2 allows the native driver
* to control the AC97 audio engine directly and requires a different driver.
*
Tipnul bych si, že máš tu novější verzi.

18.2.2011 22:04 Návštěvník
Rozbalit Rozbalit vše Re: Driver zvukovky: No 8bit DMA enabled - kde je problém?
No, abych tomu mohl rozumět, musel bych toho prostudovat mnohem víc než jen ten zdroják (což jsem samozřejmě udělal). V hardware se bohužel nevyznám, ok, díky za pomoc - přes ovladač snd-cs5530 nejspíš cesta nevede.
18.2.2011 22:15 frr | skóre: 34
Rozbalit Rozbalit vše Re: Driver zvukovky: No 8bit DMA enabled - kde je problém?
V BIOS Setupu nic není?
[:wq]
18.2.2011 22:13 frr | skóre: 34
Rozbalit Rozbalit vše Re: Driver zvukovky: No 8bit DMA enabled - kde je problém?
Nnnno... trochu mě zaráží, že by ta zvukárna uměla chodit ve dvou (či více?) různých režimech, a přitom by byla vidět na PCI pořád jako totéž zařízení (vendor/device). A ten ovladač, když hlásí při inicializaci tu divnou hlášku, tak se chytil právě na PCI device ID's zvukárny, jinak by inicializační rutinu vůbec nespustil. Hehe... sb_base... to je nějaká IO adresa z ISA rozsahu. On ten ovladač si sice přečte PCI BAR a udělá si IOremap takto zjištěného IOMEM okna, ale jenom aby z nějakého registru zjistil sb_base, což je skutečně ISA IO base, jedna z 0x200,0x220,0x240,0x260. Asi bych hledal v BIOS Setupu, jestli se tam dá něco relevantního konfigurovat. Ten ovladač taky zjevně bazíruje na tom, že chce mít povolené 8bit i 16bit DMA. Což by neměl být až tak nehorázný požadavek, vzhledem k tomu že CS5530 audio je vždycky integrované v čipsetu, který je pokaždé stejný = CS5530 south bridge (Geode). Čili jediné, co se na tom může případně nepovést, je BIOS... (Pamatuju jak moje první 386DX skutečně neuměla 16bit DMA, a SB16 musel používat 8bit DMA i pro 16bitová data.)
[:wq]

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.