[PATCH] pc386 BSP: initialization of PCI bus
Karel Gardas
kgardas at objectsecurity.com
Thu Aug 18 19:00:59 UTC 2005
Hello,
IIRC Gregory Melke recommended to initializa PCI bus in bsp_startup
function of pc386 BSP early this year. Attach patch tries to implement
this. It is tested on two x86 systems one with 3C905C-TX and other with
Intel's Ethernet NICs.
Since till now, initialization of PCI bus was done in appropriate device
driver on pc386 BSP, I hope it is right to place its initialization after
all needed initializations of IRQ and exceptions management code.
Cheers,
Karel
--
Karel Gardas kgardas at objectsecurity.com
ObjectSecurity Ltd. http://www.objectsecurity.com
-------------- next part --------------
Index: c/src/lib/libbsp/i386/pc386/ChangeLog
===================================================================
RCS file: /usr1/CVS/rtems/c/src/lib/libbsp/i386/pc386/ChangeLog,v
retrieving revision 1.125
diff -u -r1.125 ChangeLog
--- c/src/lib/libbsp/i386/pc386/ChangeLog 18 Jul 2005 14:34:41 -0000 1.125
+++ c/src/lib/libbsp/i386/pc386/ChangeLog 18 Aug 2005 18:51:22 -0000
@@ -1,3 +1,7 @@
+2005-08-18 Karel Gardas <kgardas at objectsecurity.com>
+
+ * startup/bspstart.c: Initialize PCI bus in bsp_start function.
+
2005-07-18 Lars Munch <lars at segv.dk>
PR 813/networking
Index: c/src/lib/libbsp/i386/pc386/startup/bspstart.c
===================================================================
RCS file: /usr1/CVS/rtems/c/src/lib/libbsp/i386/pc386/startup/bspstart.c,v
retrieving revision 1.33
diff -u -r1.33 bspstart.c
--- c/src/lib/libbsp/i386/pc386/startup/bspstart.c 21 May 2004 15:30:30 -0000 1.33
+++ c/src/lib/libbsp/i386/pc386/startup/bspstart.c 18 Aug 2005 18:51:23 -0000
@@ -33,6 +33,7 @@
#include <bsp.h>
#include <rtems/libio.h>
#include <rtems/libcsupport.h>
+#include <rtems/pci.h>
#include <libcpu/cpuModel.h>
/*-------------------------------------------------------------------------+
@@ -134,6 +135,7 @@
+--------------------------------------------------------------------------*/
void bsp_start_default( void )
{
+ int pci_init_retval;
void Calibrate_loop_1ms(void);
/*
@@ -173,6 +175,15 @@
* Init rtems exceptions management
*/
rtems_exception_init_mngt();
+
+ /*
+ * init PCI Bios interface...
+ */
+ pci_init_retval = pci_initialize();
+ if (pci_init_retval != PCIB_ERR_SUCCESS) {
+ printk("PCI bus: could not initialize PCI BIOS interface\n");
+ }
+
/*
* The following information is very useful when debugging.
*/
More information about the users
mailing list