From owner-freebsd-arch Tue Jul 18 20:13:17 2000 Delivered-To: freebsd-arch@freebsd.org Received: from rover.village.org (rover.village.org [204.144.255.49]) by hub.freebsd.org (Postfix) with ESMTP id 6954637BAF7; Tue, 18 Jul 2000 20:13:14 -0700 (PDT) (envelope-from imp@harmony.village.org) Received: from harmony.village.org (harmony.village.org [10.0.0.6]) by rover.village.org (8.9.3/8.9.3) with ESMTP id VAA89188; Tue, 18 Jul 2000 21:13:13 -0600 (MDT) (envelope-from imp@harmony.village.org) Received: from harmony.village.org (localhost.village.org [127.0.0.1]) by harmony.village.org (8.9.3/8.8.3) with ESMTP id VAA76846; Tue, 18 Jul 2000 21:13:04 -0600 (MDT) Message-Id: <200007190313.VAA76846@harmony.village.org> To: obrien@FreeBSD.ORG Subject: Re: removal of kvtop() on i386 Cc: arch@FreeBSD.ORG In-reply-to: Your message of "Tue, 18 Jul 2000 18:45:00 PDT." <20000718184500.E15761@dragon.nuxi.com> References: <20000718184500.E15761@dragon.nuxi.com> <20000717155552.A19233@cichlids.cichlids.com> <200007171828.LAA10544@mass.osd.bsdi.com> Date: Tue, 18 Jul 2000 21:13:04 -0600 From: Warner Losh Sender: owner-freebsd-arch@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG In message <20000718184500.E15761@dragon.nuxi.com> "David O'Brien" writes: : I have to agree with Mike. Please do not dirty the Alpha code with : obsoleted interfaces. The Alpha is a lot cleaner than our i386 code. Yes. Although the old pccard interface uses kvtop, it does so in a very bad way. It should bus_alloc_resource followed by a rman_get_vmaddr() for the stuff it does. It can't[*] use the DMA routines, because there's no DMA. Just the need to know where the device lives in bus space (so it can tell the device) and where it lives in virtual space (so it can access it). If one was really ambitious, one would convert the current direct access (via char *foo = vmaddr; *foo = blah;) with busspace (bus_read_1(...)). However, since that code is on its glide path to retirement, that might be too much work that would be better spend on other things. If the ed driver (or any other network driver) needs to access the memory directly, it should use the busspace routines to do it. In fact, since many of our network drivers don't use the busdma routines, it is very hard to get FreeBSD to run on an intel with > 4G of RAM (processors since the PPro have supported 36 or more address lines). kvtop is one of the things that is holding us back from doing that easily. Warner To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-arch" in the body of the message