From owner-freebsd-arm@FreeBSD.ORG Thu Mar 22 17:17:44 2007 Return-Path: X-Original-To: freebsd-arm@freebsd.org Delivered-To: freebsd-arm@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 5554716A400 for ; Thu, 22 Mar 2007 17:17:44 +0000 (UTC) (envelope-from jhay@meraka.csir.co.za) Received: from zibbi.meraka.csir.co.za (zibbi.meraka.csir.co.za [146.64.24.58]) by mx1.freebsd.org (Postfix) with ESMTP id E213C13C44C for ; Thu, 22 Mar 2007 17:17:43 +0000 (UTC) (envelope-from jhay@meraka.csir.co.za) Received: by zibbi.meraka.csir.co.za (Postfix, from userid 3973) id 41FB833CAE; Thu, 22 Mar 2007 19:17:42 +0200 (SAST) Date: Thu, 22 Mar 2007 19:17:42 +0200 From: John Hay To: Olivier Houchard Message-ID: <20070322171742.GA76915@zibbi.meraka.csir.co.za> References: <20070322080335.GA52745@zibbi.meraka.csir.co.za> <46029AF5.20903@errno.com> <20070322152708.GA79016@ci0.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20070322152708.GA79016@ci0.org> User-Agent: Mutt/1.4.2.1i Cc: freebsd-arm@freebsd.org Subject: Re: progress on the adi pronghorn metro board X-BeenThere: freebsd-arm@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting FreeBSD to the StrongARM Processor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 22 Mar 2007 17:17:44 -0000 On Thu, Mar 22, 2007 at 04:27:08PM +0100, Olivier Houchard wrote: > On Thu, Mar 22, 2007 at 08:04:21AM -0700, Sam Leffler wrote: > > John Hay wrote: > > > Hi Guys, > > > > > > With this patch I am at the stage where both an Avila 2348-4 and the > > > ADI Pronghorn Metro boot from the same kernel binary. The "main" stuff > > > is working, ie. console, ethernet and mini-pci slots. The iic bus on > > > the Avila is still working. The one for the Pronghorn is configured, > > > but I must still write a driver for their max6652 temperature/voltage > > > sensor before I will know if it is really working. > > > > > > The biggest difference between the 2 boards are in the 16 GPIO pins. > > > I think there is only 1 pin that have the same function. :-/ > > > > > > So what I did was to create a structure and then have 2 instances of > > > it, one with Avila values in it and one with Pronghorn values. Then > > > early in the boot phase, the board type gets detected and a pointer > > > gets set to the relevant structure. All the drivers then use this > > > pointer to get the correct values. The efect is that most of the > > > drivers needs no checks for the different boards. > > > > > > What I would like to know is, if this approach is acceptable? Should > > > I use different files to put the stuff in? > > > > > > My code is not finished yet, but I thought that I would like to get > > > some feedback. I still have to replace some of the numbers in the > > > structure with defined values. I would also like to try and really > > > probe the iic devices and not just assume that they are there. > > > > I'm not sure whether it makes sense to support different boards in a > > single binary (variations on a board design yes). My experience is that > > embedded applications are often cycle starved and giving up cycles for > > flexibility like this is ok only for devel/bringup. I suspect > > compile-time configuration is preferable. > > > > However if this flexibility is desirable it might be better to use > > ivar's hung off the nexus. > > > > Sam > > I tend to agree. > I think one config file per board is not too much to handle, and detecting > which board we're currently running can be difficult. > > Olivier I think my code changes are mostly in the attach routines or routines that are used by them, so I don't think it will have an influence on run-time speed. The biggest win for me would be that one could build a single distro that would be able to run any of the two boards. They are so similar, same cpu, 2 ethernets, 4 mini-pcis. But I guess in reality few groups/companies will source more than one board for a product. John -- John Hay -- John.Hay@meraka.csir.co.za / jhay@FreeBSD.org