Date: 07 Dec 2000 11:00:59 +0100 From: Eric Masson <e-masson@kisoft-services.com> To: Martin Machacek <m@m3a.cz> Cc: questions@FreeBSD.ORG Subject: Re: NeoMagic 256AV in Dell Lattitude LS Message-ID: <86g0k0a6uc.fsf@notbsdems.nantes.kisoft-services.com> In-Reply-To: <20001206211847.A32348@ns.gnupg.cz> References: <20001206211847.A32348@ns.gnupg.cz>
next in thread | previous in thread | raw e-mail | index | archive | help
>>>>> "Martin" == Martin Machacek <m@m3a.cz> writes: Martin> I have problem with the audio part of the NeoMagic 256AV/ZX Martin> chip in my Dell Lattitude LS notebook. Martin> The systems hangs while booting just after detecting the Martin> chip. The audio part is being detected as: Martin> pcm0: <NeoMagic 256AV> mem Martin> 0xfea00000-0xfeafffff,0xf7800000-0xf7bfffff irq 10 at device Martin> 0.1 on pci 1 Martin> This is also the last line I can see before the system hangs. Martin> The only recovery is hard reset. Looks like a 256AV without AC97 Codec. Boot the machine without pcm enabled, then issue as root pciconf -l, you should see an output like this one : chip0@pci0:0:0: class=0x060000 card=0x00000000 chip=0x71928086 rev=0x02 hdr=0x00 isab0@pci0:2:0: class=0x068000 card=0x00000000 chip=0x71108086 rev=0x02 hdr=0x00 atapci0@pci0:2:1: class=0x010180 card=0x00000000 chip=0x71118086 rev=0x01 hdr=0x00 uhci0@pci0:2:2: class=0x0c0300 card=0x00000000 chip=0x71128086 rev=0x01 hdr=0x00 intpm0@pci0:2:3: class=0x068000 card=0x00000000 chip=0x71138086 rev=0x02 hdr=0x00 pcic-pci0@pci0:3:0: class=0x060700 card=0x00921014 chip=0xac16104c rev=0x02 hdr=0x02 pcic-pci1@pci0:3:1: class=0x060700 card=0x00921014 chip=0xac16104c rev=0x02 hdr=0x02 none0@pci0:5:0: class=0x030000 card=0x00dd1014 chip=0x000510c8 rev=0x12 hdr=0x00 chip1@pci0:5:1: class=0x040100 card=0x00dd1014 chip=0x800510c8 rev=0x12 hdr=0x00 On my laptop, the neomagic is the 0x00dd1014 card. Check the card number corresponding in your laptop and then add it to the badcards struct in neomagic.c /usr/src/sys/dev/sound/pci/neomagic.c ... static void nm_wrbuf(struct sc_info *, int, u_int32_t, int); static u_int32_t badcards[] = { 0x0007103c, 0x008f1028, 0x00dd1014, /* add after this one */ }; #define NUM_BADCARDS (sizeof(badcards) / sizeof(u_int32_t)) ... Recompile your kernel with pcm enabled, the machine shouldn't hang anymore. device pcm doesn't work on my box, I have to use the following : device pcm0 at isa? port 0x530 irq 5 drq 0 flags 0x11 following the settings found in bios and man pcm. HTH Eric Masson -- Progress (n) : What led from smart users in front of dumb terminals to dumb users in front of smart terminals. To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-questions" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?86g0k0a6uc.fsf>