Re: bus device driver
- From: John Baldwin <jhb@xxxxxxxxxxx>
- Date: Tue, 14 Jul 2009 08:49:51 -0400
On Tuesday 14 July 2009 3:08:40 am Norbert Koch wrote:
from
John Baldwin schrieb:
On Monday 13 July 2009 10:05:15 am Norbert Koch wrote:
Hello.
I just started to write a device
driver for a multi-function pci card.
This card replaces a number of
independant isa hardware devices.
This pci card contains memory, i/o
and interrupt sources.
I want my device driver to
serve as a bus driver between
the pci driver and the specific
device drivers.
Do I need more than the following (see below)?
Do I have to do any bookkeeping for allocated resources?
How do the child devices receive resources? Do they suballocate regions
BARs in the PCI device or is your device a subtractive bridge that willI am not quite sure that I understand what you mean. What is the difference?
forward requests for ISA ranges and your devices all use ISA ranges?
My old device drivers were isa based. We had all our resources in the
15-16M isa hole.
So I want to change them to just allocate resources from the pci bus
through the bus device driver.
I thought it would be sufficient to just forward *_alloc_resource calls
directly to the pci driver.
Clearly, my drivers will have to know that they are just forwarded
through to pci
and have to know what sub-resources to allocate.
From a hardware perspective, how do your devices know which addresses to
decode? Do they consume subranges of BARs or are they assigned fixed
addresses somehow? Do they have programmable decoders of some sort
themselves? If you wish to have the PCI bus assign you resources then that
implies that your PCI device has a BAR and that you want to request resources
for that BAR and then hand out subranges of that to your children. If that
is the case, then you will need to allocate the resources for the BAR for the
PCI device from the PCI bus. Then your bus driver for the PCI device will
need to suballoc from that BAR to your children devices.
--
John Baldwin
_______________________________________________
freebsd-hackers@xxxxxxxxxxx mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to "freebsd-hackers-unsubscribe@xxxxxxxxxxx"
- Follow-Ups:
- Re: bus device driver
- From: Norbert Koch
- Re: bus device driver
- References:
- bus device driver
- From: Norbert Koch
- Re: bus device driver
- From: John Baldwin
- Re: bus device driver
- From: Norbert Koch
- bus device driver
- Prev by Date: Re: bus device driver
- Next by Date: Re: bus device driver
- Previous by thread: Re: bus device driver
- Next by thread: Re: bus device driver
- Index(es):
Relevant Pages
|