driver for usr 3409 pci ta

[ Available lists | Index of freebsd-isdn | Month of Sep 2004 | Week of 26 Sep 2004 | Raw email | View thread | Wrap long lines | Reply | Tag ]
From
n0g0013 <ttz@cobbled.net>
Date
26 Sep 2004 12:47:09
Subject
driver for usr 3409 pci ta
Message-ID
20040926124720.GA39113@eyore.cobbled.net


[ Hide this part ]
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


Elapsed time: 0.219 seconds