[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Unified PCI API




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@OARcorp.com                 On-Line Applications Research
Ask me about RTEMS: a free RTOS  Huntsville AL 35805
   Support Available             (256) 722-9985