summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libbsp/i386/shared/pci/pcibios.c (unfollow)
Commit message (Collapse)AuthorFilesLines
2018-04-23bsps: Move PCI drivers to bspsSebastian Huber1-479/+0
This patch is a part of the BSP source reorganization. Update #3285.
2016-03-15pc386: Do not include rtems/pci.h from bsp.h. Add bsp/bspimpl.hJoel Sherrill1-0/+6
Start to migrate private symbols to bsp/bspimpl.h.
2016-03-10Add shared PCI support and enhance pc386 to support non-legacy PCI ↵Joel Sherrill1-130/+19
configuration space This patch fundamentally results from enhancements to the pc386 BSP to support systems which do **NOT** have the legacy PCI BIOS. The patch adds support for detecting when legacy PCI BIOS is not present and then using IO space to access to PCI Configuration Space. This resulted in dynamically selected between two implementations of PCI and refactoring out the shared methods. This patch adds shared implementations of pci_bus_count() and pci_find_device(). Subsequent patches will remove implementations of these methods in other BSPs where possible.
2016-03-10i386/shared/pci/pcibios.c: Remove unused pcib_find_by_class()Joel Sherrill1-36/+0
2016-03-10i386/shared/pci/pcibios.c: Remove unused pcib_special_cycle()Joel Sherrill1-30/+0
2016-03-10pc386: Eliminate pcibios.h and begin removal obsolete PCI BIOS API usesJoel Sherrill1-17/+24
This first step eliminates the following as public APIs for the pc386 BSP: + pcib_conf_read8 + pcib_conf_read16 + pcib_conf_read32 + pcib_conf_write8 + pcib_conf_write16 + pcib_conf_write32 The if_fxp.c driver uses these enough where I provided local macros to allow the code to be mostly unmodified. On other architectures these names have been used privately. It will take multiple patches to completely eliminate these symbols from the RTEMS source tree. The focus of the first effort is just to eliminate these as a public pc386 API so support can be added for systems without legacy PCI BIOS.
2014-12-23pc386: scan all functions of multi-function PCI devicesTill Strauman1-7/+23
The current algorithm scans all PCI busses (0..ff) and all devices (0..31) on each bus for bridges and determines the maximum of all subordinate busses encountered. However, the algorithm does not scan all functions present in multi-function devices -- I have a PCI express root complex (82801H) where multiple (non-zero index) functions are 'PCI bridges' whose subordinate bus number is missed by the original algorithm. This commit makes sure that the scan is extended to all functions of multi-function devices. See #2067
2014-10-16libbsp/i386/shared: Fix warningsJoel Sherrill1-18/+0
2012-05-16pci.h cleanup - Consolidate common defines to cpukit pci.hJoel Sherrill1-2/+0
+ libbsp/sparc/shared/include/pci.h was largely a copy of an older version of the cpukit pci.h. Removed much of the contents and included <rtems/pci.h>. + sparc/*/pci*.c - Move to <rtems/pci.h> required updating to use uint32_t for dword accesses. + Rename PCI_MULTI_FUNCTION to PCI_HEADER_TYPE_MULTI_FUNCTION + Define PCI_HEADER_TYPE_MULTI_FUNCTION in cpukit pci.h and remove PCI_MULTI_FUNCTION definitions in C files. + Move PCI_INVALID_VENDORDEVICEID definitions from various C files to cpukit pci.h
2012-05-11Remove All CVS Id Strings Possible Using a ScriptJoel Sherrill1-2/+0
Script does what is expected and tries to do it as smartly as possible. + remove occurrences of two blank comment lines next to each other after Id string line removed. + remove entire comment blocks which only exited to contain CVS Ids + If the processing left a blank line at the top of a file, it was removed.
2011-12-092011-12-09 Ralf Corsépius <ralf.corsepius@rtems.org>Ralf Corsepius1-1/+1
* shared/pci/pcibios.c: Make pcib_find_by_devid static.
2011-02-112011-02-11 Ralf Corsépius <ralf.corsepius@rtems.org>Ralf Corsepius1-124/+124
* shared/comm/gdb_glue.c, shared/comm/i386-stub.c, shared/comm/i386_io.h, shared/comm/uart.c, shared/irq/idt.c, shared/pci/pcibios.c: Use "__asm__" instead of "asm" for improved c99-compliance.
2009-12-112009-12-11 Ralf Corsépius <ralf.corsepius@rtems.org>Ralf Corsepius1-1/+1
PR 1483/cpukit * shared/pci/pcibios.c: Rename pci_config into rtems_pci_config_t.
2009-11-30Whitespace removal.Ralf Corsepius1-6/+6
2009-10-012009-10-01 Ralf Corsépius <ralf.corsepius@rtems.org>Ralf Corsepius1-12/+12
PR 1445/BSPs * shared/pci/pcibios.c: Rename indirect_pci_* into BSP_pci_*.
2009-05-062009-05-06 Joel Sherrill <joel.sherrill@oarcorp.com>Joel Sherrill1-1/+1
* shared/comm/i386-stub-glue.c, shared/comm/uart.c, shared/irq/irq.c, shared/pci/pcibios.c: Fixed warnings.
2007-03-30Reflect changes to rtems/pci.h.Ralf Corsepius1-9/+9
Convert to using stdint fixed-size types.
2006-07-13 * shared/pci/pcibios.c: let pci_find_device() returnTill Straumann1-1/+1
-1 on failure, not just non-zero status. I found that some driver(s) [e.g. dec21140] explicitely check for -1.
2005-11-032005-11-02 straumanatslacdotstanford.eduTill Straumann1-49/+11
* shared/pci/pcibios.c: replaced pci_find_device implementation by a pcibios call which already provides the functionality
2005-05-102005-05-10 Ralf Corsepius <ralf.corsepius@rtems.org>Ralf Corsepius1-1/+1
* pci/pcibios.c: Eliminate unsigned8.
2005-05-042005-05-04 Jennifer Averett <jennifer.averett@oarcorp.com>Jennifer Averett1-220/+293
* pci/pcibios.c, pci/pcibios.h: Corrected spacing Name modifications for a generic PCI interface Added wrapper routines for pci read/write configuration data
2005-04-262005-04-26 Joel Sherrill <joel@OARcorp.com>Joel Sherrill1-19/+17
* pci/pcibios.c: Reformatted.
2005-03-142005-03-14 Joel Sherrill <joel@OARcorp.com>Joel Sherrill1-0/+21
* pci/pcibios.c, pci/pcibios.h: Continue PCI API unification. All use pci_find_device().
2005-03-042005-03-04 Joel Sherrill <joel@OARcorp.com>Joel Sherrill1-14/+3
* shared/pci/pcibios.c, shared/pci/pcibios.h: Make PCI initialize function part of the unified PCI API as pci_initialize().
2004-09-272004-09-27 Greg Menke <gregory.menke@gsfc.nasa.gov>Joel Sherrill1-32/+114
PR 608/bsps * pci/pcibios.c: BusCountPCI().
2004-04-21Remove duplicate white lines.Ralf Corsepius1-15/+0
2004-04-21Remove stray white spaces.Ralf Corsepius1-40/+40
2004-03-312004-03-31 Ralf Corsepius <ralf_corsepius@rtems.org>Ralf Corsepius1-10/+0
* pci/pcibios.c: Convert to using c99 fixed size types.
2003-07-182003-07-16 Greg Menke <gregory.menke@gsfc.nasa.gov>Joel Sherrill1-0/+63
PR 428/bsps PR 432/bsps * pci/pcibios.c, pci/pcibios.h: Added BSP_pci_Find_Device() which is copied from motorola_shared.
2002-09-022002-09-02 Ralf Corsepius <corsepiu@faw.uni-ulm.de>Ralf Corsepius1-0/+2
* pci/pcibios.c: #include <string.h>.
2002-08-052002-08-05 Eric Norum <eric.norum@usask.ca>Joel Sherrill1-15/+0
* pci/pcibios.c: Per PR262, removed all asserts so probes for devices that are not present will work. This lets you have multiple PCI Ethernet drivers in an application and dynamically use the one for the card othat is present.
1998-10-05Large patch from Erik Ivanenko <erik.ivanenko@utoronto.ca> whichJoel Sherrill1-0/+499
moves pieces of the pc386 bsp up to a shared level for all i386 BSPs and modifies the i386ex BSP to use those shared pieces. Serial remote debugging is included for both targets. Erik's notes: There are several workarounds in it: 1) #define NEXT_GAS is hardcoded in pc386/start/start.s 2) #define NEXT_GAS is hardcoded in i386ex/start/start.s 3) #define NEW_GAS is hardcoded in pc386/start16.s 4) #undef __assert and redeclare _assert hardcoded in console.c for both pc386 and i386ex due to my egcs1.1b ~ newlib problem. Should have modified t-rtems.cfg ( no time ) I've tested pc386 with both video and serial consoles and GDB remote. All work fine, except that GDB acts weird. ( re: other posting) I hope this will work for you. It took quite some time to locate the autoconf error. The remainder was just grunt work. Unfortunately, I think I've unwound the removal of the IBMPCInitVideo stuff. Sorry. I REALLY can't spend more time... I've been at this conversion to 4.0 locally and updating the release since Sept. 8th, and have yet to compile my network driver.... This is as much as I can do right now. I look forward to the next patch to really test i368ex. I did make sure that the sample tests worked for pc386.