Date: Mon, 2 Jun 1997 05:53:16 +1000 From: Bruce Evans <bde@zeta.org.au> To: ache@nagual.pp.ru, bde@zeta.org.au Cc: current@FreeBSD.ORG, se@FreeBSD.ORG Subject: Re: Shared irq's broke sounddriver badly Message-ID: <199706011953.FAA32060@godzilla.zeta.org.au>
next in thread | raw e-mail | index | archive | help
>> >opl0 at 0x388-0x38b irq 31 on isa >> > ^^^^^^ >> >> What was it originally? > >There is no IRQ for this device at all (according to config line). This is another old, previously unreported, bug. soundcard.c corrupts no-IRQ to irq 31 via the following operations: hw_config.irq = ipri_to_irq(dev->id_irq); /* in sndprobe() */ dev->id_irq = (1 << hw_config.irq); /* in sndattach() */ ipri_to_irq(0) = (unsigned short)-1 = 0xffff (assuming 16-bit unsigned shorts). 1 << 0xffff = 1 < (0xfffff) & 0x1f) = 1 << 31 (assuming a 386). Bruce
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199706011953.FAA32060>