From owner-freebsd-hackers@FreeBSD.ORG Tue Jul 14 07:09:09 2009 Return-Path: Delivered-To: freebsd-hackers@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 88855106566B for ; Tue, 14 Jul 2009 07:09:09 +0000 (UTC) (envelope-from nkoch@demig.de) Received: from www61.your-server.de (www61.your-server.de [213.133.104.61]) by mx1.freebsd.org (Postfix) with ESMTP id 190238FC17 for ; Tue, 14 Jul 2009 07:09:08 +0000 (UTC) (envelope-from nkoch@demig.de) Received: from [217.7.243.216] (helo=firewall.demig.intra) by www61.your-server.de with esmtpsa (TLSv1:AES256-SHA:256) (Exim 4.69) (envelope-from ) id 1MQc8Q-0007ps-DQ; Tue, 14 Jul 2009 09:09:06 +0200 Received: from [192.168.148.72] (ws-pr-3.demig.intra [192.168.148.72]) by firewall.demig.intra (8.14.3/8.14.0) with ESMTP id n6E78es1006157; Tue, 14 Jul 2009 09:08:40 +0200 (CEST) (envelope-from nkoch@demig.de) Message-ID: <4A5C2EF8.3080208@demig.de> Date: Tue, 14 Jul 2009 07:08:40 +0000 From: Norbert Koch Organization: demig Prozessautomatisierung GmbH User-Agent: Thunderbird 2.0.0.22 (Windows/20090605) MIME-Version: 1.0 To: John Baldwin References: <4A5B3F1B.3040207@demig.de> <200907131435.30452.jhb@freebsd.org> In-Reply-To: <200907131435.30452.jhb@freebsd.org> Content-Type: text/plain; charset=ISO-8859-15; format=flowed Content-Transfer-Encoding: 7bit Content-Disposition: inline X-Scanned-By: MIMEDefang 2.64 on 192.168.148.235 X-Authenticated-Sender: webmaster@demig.de X-Virus-Scanned: Clear (ClamAV 0.95.1/9560/Tue Jul 14 02:13:16 2009) Cc: freebsd-hackers@freebsd.org Subject: Re: bus device driver X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 14 Jul 2009 07:09:09 -0000 John Baldwin schrieb: > On Monday 13 July 2009 10:05:15 am Norbert Koch wrote: > >> Hello. >> >> I just started to write a device >> driver for a multi-function pci card. >> This card replaces a number of >> independant isa hardware devices. >> This pci card contains memory, i/o >> and interrupt sources. >> I want my device driver to >> serve as a bus driver between >> the pci driver and the specific >> device drivers. >> >> Do I need more than the following (see below)? >> Do I have to do any bookkeeping for allocated resources? >> > > How do the child devices receive resources? Do they suballocate regions from > BARs in the PCI device or is your device a subtractive bridge that will > forward requests for ISA ranges and your devices all use ISA ranges? > > I am not quite sure that I understand what you mean. What is the difference? My old device drivers were isa based. We had all our resources in the 15-16M isa hole. So I want to change them to just allocate resources from the pci bus through the bus device driver. I thought it would be sufficient to just forward *_alloc_resource calls directly to the pci driver. Clearly, my drivers will have to know that they are just forwarded through to pci and have to know what sub-resources to allocate. -- Dipl.-Ing. Norbert Koch Entwicklung Prozessregler ***************************************** * demig Prozessautomatisierung GmbH * * * * Anschrift: Haardtstrasse 40 * * D-57076 Siegen * * Registergericht: Siegen HRB 2819 * * Geschaeftsfuehrer: Joachim Herbst, * * Winfried Held * * Telefon: +49 271 772020 * * Telefax: +49 271 74704 * * E-Mail: info@demig.de * * http://www.demig.de * *****************************************