From owner-freebsd-questions Mon Apr 14 20:49:28 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id UAA11574 for questions-outgoing; Mon, 14 Apr 1997 20:49:28 -0700 (PDT) Received: from root.com (implode.root.com [198.145.90.17]) by freefall.freebsd.org (8.8.5/8.8.5) with ESMTP id UAA11561 for ; Mon, 14 Apr 1997 20:49:24 -0700 (PDT) Received: from localhost (localhost [127.0.0.1]) by root.com (8.8.5/8.6.5) with SMTP id UAA18002; Mon, 14 Apr 1997 20:50:44 -0700 (PDT) Message-Id: <199704150350.UAA18002@root.com> X-Authentication-Warning: implode.root.com: localhost [127.0.0.1] didn't use HELO protocol To: "Daniel M. Eischen" cc: krygier@kph.uni-mainz.de, questions@FreeBSD.ORG Subject: Re: special memory device In-reply-to: Your message of "Mon, 14 Apr 1997 21:47:41 CDT." <199704150247.VAA15380@iworks.InterWorks.org> From: David Greenman Reply-To: dg@root.com Date: Mon, 14 Apr 1997 20:50:43 -0700 Sender: owner-questions@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk >The problem I have, is that if I create a driver for this chip, >how do I ask the PCI support code for 4 consecutive 16MB regions >of the PCI bus? From what I can tell, the PCI code will only let >you map an address space as it is defined in the PCI configuration >space registers. For the Tundra Universe chip, the registers >that configure the special PCI slave image are not in the PCI >configuration space. The obvious question this raises is: How do you do address space conflict resolution if you ignore the assignments made by the PCI BIOS? It is possible to map any arbitrary physical address range when not using the PCI map routine. In fact if you use a device driver to do this (via the device mmap interface, which uses the VM "device pager"), the PCI mapping code wouldn't be involved in any case. For examples of this, look at the handling of /dev/vga (ttyv0...syscons.c...scmmap()). Very trivial. -DG David Greenman Core-team/Principal Architect, The FreeBSD Project