From owner-freebsd-mobile Fri Apr 9 1:37:19 1999 Delivered-To: freebsd-mobile@freebsd.org Received: from herring.nlsystems.com (nlsys.demon.co.uk [158.152.125.33]) by hub.freebsd.org (Postfix) with ESMTP id 3F50714DED for ; Fri, 9 Apr 1999 01:37:14 -0700 (PDT) (envelope-from dfr@nlsystems.com) Received: from localhost (dfr@localhost) by herring.nlsystems.com (8.9.3/8.8.8) with ESMTP id JAA30418; Fri, 9 Apr 1999 09:36:59 +0100 (BST) (envelope-from dfr@nlsystems.com) Date: Fri, 9 Apr 1999 09:36:59 +0100 (BST) From: Doug Rabson To: Mike Smith Cc: Ted Faber , Nate Williams , "Daniel C. Sobral" , NAKAGAWA Yoshihisa , Nick Sayer , freebsd-mobile@freebsd.org Subject: Re: Any success with CirrusLogic 6729/6730??? In-Reply-To: <199904082000.NAA01215@dingo.cdrom.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-freebsd-mobile@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.org On Thu, 8 Apr 1999, Mike Smith wrote: > > >> I think the issue of is it or isn't it is most germane to whether we > > >> can supply the ISA irq and port on a config line, as we can for the > > >> devices that are definitely ISA drivers. Presumably using that > > >> configuration mechanism means tying it to the kernel data structures > > >> for ISA devices, and herein lies the problem. > > > > > >What he said. > > > > Ummm, not that I dislike being agreed with, but can you tell us a > > little more about those problems? Even one example would help. > > The problem is that with the static configuration technologies (config, > newconfig) under discussion, there is an array of per-bus data > structures constructed at compile-time containing the parametric > information. > > By making the pcic driver an ISA driver, you tie it to the data > structure that config generates. This is a fundamental problem with > our current bus code. > > Because there must be one instance of this structure per instance of > the device, you can't dynamically create new instances when you > discover more pcics. Because the supporting code for these structures > doesn't understand things arriving and leaving at arbitrary times, you > can't support dynamism. > > The "new bus" philosophy on this is to write code which knows how to > find the pcics, and attach the driver to whichever point the bridge is > logically connected. > > The major point of contention at the moment seems to rest around how > you pass per-instance parameters to the driver, to tell it where to put > the pcic (I/O, interrupt resources). I don't think that this should > actually be an issue - we should be able to determine these numbers > automatically. The current code has an abstraction system for resources which allows the driver to just ask for its memory region (or whatever) and let the parent device (pcic, cardbus etc) handle the request in an appropriate fashion. -- Doug Rabson Mail: dfr@nlsystems.com Nonlinear Systems Ltd. Phone: +44 181 442 9037 To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-mobile" in the body of the message