From owner-freebsd-hackers@FreeBSD.ORG Wed Aug 6 03:18:32 2003 Return-Path: Delivered-To: freebsd-hackers@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 5A2E937B401 for ; Wed, 6 Aug 2003 03:18:32 -0700 (PDT) Received: from phk.freebsd.dk (phk.freebsd.dk [212.242.86.175]) by mx1.FreeBSD.org (Postfix) with ESMTP id 65DC443F93 for ; Wed, 6 Aug 2003 03:18:31 -0700 (PDT) (envelope-from phk@phk.freebsd.dk) Received: from critter.freebsd.dk (critter.freebsd.dk [212.242.86.163]) by phk.freebsd.dk (8.12.8/8.12.8) with ESMTP id h76AISV3028942; Wed, 6 Aug 2003 10:18:28 GMT (envelope-from phk@phk.freebsd.dk) Received: from critter.freebsd.dk (localhost [127.0.0.1]) by critter.freebsd.dk (8.12.9/8.12.9) with ESMTP id h76AISPI040314; Wed, 6 Aug 2003 12:18:28 +0200 (CEST) (envelope-from phk@phk.freebsd.dk) To: ticso@cicely.de From: "Poul-Henning Kamp" In-Reply-To: Your message of "Wed, 06 Aug 2003 12:11:49 +0200." <20030806101148.GC32228@cicely12.cicely.de> Date: Wed, 06 Aug 2003 12:18:28 +0200 Message-ID: <40313.1060165108@critter.freebsd.dk> cc: freebsd-hackers@freebsd.org Subject: Re: How to get a device_t X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 06 Aug 2003 10:18:32 -0000 In message <20030806101148.GC32228@cicely12.cicely.de>, Bernd Walter writes: >I need to add I2C support for a Elan520 based soekris system. >The system has the required GPIO pins and there is the iicbb driver >to handle generic bitbang code - just needing a simple layer driver to >enable, disable and read pins. >But unlike normal isa/pci hardware probing the existence of the GPIO >line is a bit difficult. >The current elan-mmcr.c gets started from i386/pci/pci_bus.c at >host bridge probing, because that's seems to be the only place to >safely detect this special CPU. That's my doing, based on my reading of the datasheet from AMD. It would be better if we could detect the Elan in the normal CPU identification stuff, but I couldn't seem to find a reliable way. >>From the logicaly standpoint the extensions had to be attached to >nexus, but nowhere is the current code path there is a handle for >nexus or any other device_t. In fact what you may want to do is hang the entire MMCR off the nexus as a bus, and hang the various drivers off that bus. -- Poul-Henning Kamp | UNIX since Zilog Zeus 3.20 phk@FreeBSD.ORG | TCP/IP since RFC 956 FreeBSD committer | BSD since 4.3-tahoe Never attribute to malice what can adequately be explained by incompetence.