Date: Wed, 10 Sep 1997 23:46:36 +0200 From: Ollivier Robert <roberto@keltia.freenix.fr> To: FREEBSD <freebsd-hackers@freebsd.org> Cc: Philippe.Brun@eurocontrol.fr Subject: Re: Port an arinc isa bus driver from HP Unix Message-ID: <19970910234636.15636@keltia.freenix.fr> In-Reply-To: <19970910172336.17475@lemis.com>; from Greg Lehey on Wed, Sep 10, 1997 at 05:23:36PM %2B0930 References: <3416CCEB@brteec1> <19970910172336.17475@lemis.com>
next in thread | previous in thread | raw e-mail | index | archive | help
According to Greg Lehey: > If you don't, nobody will. Where did it panic? What was the > instruction? There's no reason to assume it happened in the function > you list. The code in isa.c tries to configure the card and tries to deference the address given in the config line (maddr 0xf0000) and kvtop() panics. The trace from memory is kvtop config_isadev_c config_isadev the line triggering the panic()is the following: isa.c: if (isdp->id_maddr) printf(" maddr 0x%lx", kvtop(isdp->id_maddr)); isdp->is_maddr is given to kvtop() as 0xf0f0000 (where it should probably be 0xf0000 I guess) and kvtop() can't find the address in the page tables. The main problem that I see is that the card wants to have its shared memory segment at 0xf0000 (that is, outside the usual 384 KB segment). I'm not a kernel guru and I see a problem where the kernel think it is using a virtual address where it is given a physical one (or the reverse). (in case one is wondering, Philippe is working in the same firm as I do and I'm responsible for him using FreeBSD instead of Linux :-) -- Ollivier ROBERT -=- FreeBSD: There are no limits -=- roberto@keltia.freenix.fr FreeBSD keltia.freenix.fr 3.0-CURRENT #31: Sat Sep 6 21:58:17 CEST 1997
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?19970910234636.15636>