Unified PCI API

Joel Sherrill <joel@OARcorp.com> joel.sherrill at OARcorp.com
Sun Feb 20 00:49:57 UTC 2005


Since there is so much discussion on another thread about the PowerPC 
and IRQs, I think a comment I made on the PCI API was taken wrong.
I think the PCI API is independent of the Interrupt/Exception API
and PowerPC cleanup.

The current situation is that the PowerPC pci.h was used as a baseline 
PCI API and the .h file defining 90+% of the API is now defined in 
cpukit/include/rtems/pci.h.  My current plan is to modify the x86 port 
to follow this API except for a couple of warts in the current API which 
I intend to fix.

   + the x86 PCI API includes a "PCI Bus initialize" function missing in
     the cpukit pci.h
   + the "find device by ID" routine in the original PowerPC PCI API has
     an ugly name.
   + the x86 has some "find device by XXX" alternatives which would be
      nice to include in the cpukit pci.h

At this time, I am unifying the API and modifying all impacted code.
I will NOT alter any exception/interrupt/IRQ interface specifications
as part of this work.  Also this is COMPLETELY independent of any 
PowerPC movement or cleanup.

For those who care, the x86 PCI API uses a "signature u32" to identify
devices while the PowerPC/cpukit API uses a "bus, device" combination to
identify devices.

I am willing to listen to suggestions on the unified API but they better 
be backed up by help. :)

-- 
Joel Sherrill, Ph.D.             Director of Research & Development
joel at OARcorp.com                 On-Line Applications Research
Ask me about RTEMS: a free RTOS  Huntsville AL 35805
    Support Available             (256) 722-9985




More information about the users mailing list