From owner-freebsd-isdn@FreeBSD.ORG Sun Sep 26 12:47:09 2004 Return-Path: Delivered-To: freebsd-isdn@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 8C60716A4D7 for ; Sun, 26 Sep 2004 12:47:09 +0000 (GMT) Received: from ni-mail3.dna.utvinternet.net (ni-mail3.dna.utvinternet.net [194.46.8.37]) by mx1.FreeBSD.org (Postfix) with ESMTP id B50A643D46 for ; Sun, 26 Sep 2004 12:47:08 +0000 (GMT) (envelope-from fergus@cobbled.net) Received: from eyore.public.cobbled.net (unverified [195.218.110.221]) by ni-mail3.dna.utvinternet.net for ; Sun, 26 Sep 2004 13:47:06 +0100 Received: from eyore.public.cobbled.net (localhost [127.0.0.1]) i8QClLEX039159 for ; Sun, 26 Sep 2004 13:47:21 +0100 (BST) (envelope-from fergus@eyore.public.cobbled.net) Received: (from fergus@localhost) by eyore.public.cobbled.net (8.12.10/8.12.10/Submit) id i8QClK0c039158 for freebsd-isdn@freebsd.org; Sun, 26 Sep 2004 13:47:21 +0100 (BST) (envelope-from fergus) Date: Sun, 26 Sep 2004 13:47:20 +0100 From: n0g0013 To: freebsd-isdn@freebsd.org Message-ID: <20040926124720.GA39113@eyore.cobbled.net> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Subject: driver for usr 3409 pci ta X-BeenThere: freebsd-isdn@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Using ISDN with FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 26 Sep 2004 12:47:09 -0000 hello again. started work on this driver but, as this is my first ever attempt at writing a device driver i'm struggling. my basic problem is a general understanding of PCI architecture and operation. i've read the handbook documentation and some other refs i dug up on the web. unfortunately they appear to have a basic understanding of hardware (and PCI) as a requisite. so, here's the question. since this thing is a TA i figure all i need is some pretty simple IO to the card. but i can't find any references to using memory mapped or direct IO. i remember a lot of IO used to be byte pairs, one in, one out and an IRQ channel for control but a little scared to start dumping data into memory mapped resource space or IO channels as it's been a long time since i even looked at this stuff. also, are there standard PCI register information or are these completely card specific? these are accessed with the PCIR_BAR macros, right? so PCIR_BAR(1) will get me PCI register one . . . but i don't understand the relationship of these macros to the resource id for the bus_*_resource calls. i guess what i need is a base line reference (pci interest group will sell me specs i don't need) or a very simple PCI driver that illustrates the above. going to continue hacking in the mean time. thanks for any help you can offer. P.S: here is the output from pciconf -lv none2@pci0:11:0: class=0x028000 card=0x340916ec \ chip=0x66921050 rev=0x01 hdr=0x00 vendor = 'Winbond Electronics Corp.' device = 'W6692/92A/92CF PCI BusISDN S/T-Controller' class = network P.P.S: if this is a TA then i don't expect the iwic driver \ will work. + the subdevice id's don't match any in the \ source -- t t z