From owner-freebsd-hackers Tue May 25 4:20:18 1999 Delivered-To: freebsd-hackers@freebsd.org Received: from smtp2.vnet.net (smtp2.vnet.net [166.82.1.32]) by hub.freebsd.org (Postfix) with ESMTP id A318F14DA1 for ; Tue, 25 May 1999 04:20:16 -0700 (PDT) (envelope-from rivers@dignus.com) Received: from dignus.com (ponds.vnet.net [166.82.177.48]) by smtp2.vnet.net (8.9.1a/8.9.1) with ESMTP id HAA29787; Tue, 25 May 1999 07:21:09 -0400 (EDT) Received: from lakes.dignus.com (lakes.dignus.com [10.0.0.3]) by dignus.com (8.9.2/8.8.5) with ESMTP id HAA19221; Tue, 25 May 1999 07:20:12 -0400 (EDT) Received: (from rivers@localhost) by lakes.dignus.com (8.9.2/8.6.9) id HAA04710; Tue, 25 May 1999 07:20:12 -0400 (EDT) Date: Tue, 25 May 1999 07:20:12 -0400 (EDT) From: Thomas David Rivers Message-Id: <199905251120.HAA04710@lakes.dignus.com> To: hackers@FreeBSD.ORG, roger@cs.strath.ac.uk Subject: Re: How to find the PCI chipset type inside a driver In-Reply-To: <374A83BB.90DA6EC@cs.strath.ac.uk> Sender: owner-freebsd-hackers@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG > Hi, > > I need the bt848/bt878 driver to find out the motherboard's PCI chipset. > IE, Is this Bt878 card sitting on a VIA, SIS, OPTi or INTEL motherboard. > > Can this be done? > > The Bt878 can be programmed to run in > "Intel (Full PCI2.1 ompatible) Mode" > "Intel 440FX mode" > "SIS/VIA/OPTi" mode. > Each mode drives the PCI bus mastering slightly differently to cater > for bugs/features in various PCI chipsets. > > Setting the Bt878 to SIS/VIA/OPTi mode fixed some strange > machine hangs experienced by a UK user yesterday. > > > I'd like the Bt848 driver to inquire about the PCI bus. > To get the VENDOR and DEVICE_ID codes. > > It can then automatically enable the right mode on Bt878 > chips. > > Any ideas? > Ideally I need a method for 2.2.x, 3.x and -current. > > Bye > Roger > -- > Roger Hardiman > Strathclyde Uni Telepresence Research Group, Glasgow, Scotland. > http://telepresence.dmem.strath.ac.uk 0141 548 2897 > roger@cs.strath.ac.uk Roger - Just a thought - not really an answer to your question... but... I struck me that since bt848 isn't in the default kernel (you have to build your own kernel for it) - couldn't you just make this a flag in the config file? Then, a couple of #ifdef's in the bt848 driver would handle it. Granted - the kernel becomes quite machine specific at that point, so - this is definately not the best answer (automatically determining as you suggest, would be better.) - Dave Rivers - To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-hackers" in the body of the message