First, there are only 15 patches in this series. The last two are additions of commands directly to fileio. Both may be of interest but should be discussed separately.
This series started with the need to get the pc386 BSP working on an embedded PC without legacy PCI BIOS and with a COM1 port on the PCI and not in I/O space. This target board does not have an IDE/ATA controller. The probe hangs so the build disables that. The first patches eliminate the need for the pc386 specific pcibios.h and add dynamic detection of using PCI BIOS or I/O space accesses for PCI Configuration Space. It also added a shared implementation of pci_find_device() and later patches use this to eliminate copies in other BSPs. A ticket will be filed for the last case. There are patches to add boot command line arguments for --printk=XXX to specify printk output go somewhere besides the --console=XXX device. There is also a --disable-com1-com4 boot command line argument to disable those at run-time. The BSP is booted with these arguments: The PCI UART is added as /dev/pcicom1. It uses a UART PCI table from FreeBSD and probes for all PCI UARTs. These are dynamically installed. The dynamic registration support in the shared console was enhanced to be able to be called multiple times. kernel tftp://192.168.1.92/fileio.exe --console=pcicom1 --printk=vgacons --disable-com1-com4 boot fileio.exe Along the way, there is also miscellaneous clean up to comments, a warning in bsp_fatal_halt.c, etc. I hope the description helps. --joel Joel Sherrill (17): pc386: Eliminate pcibios.h and begin removal obsolete PCI BIOS API uses i386/shared/pci/pcibios.c: Remove unused pcib_special_cycle() i386/shared/pci/pcibios.c: Remove unused pcib_find_by_class() pc386/configure.ac: Delete incorrect and unused AM_CONDITIONAL Add shared PCI support and enhance pc386 to support non-legacy PCI configuration space pc386: Improve boot command arguments for console/printk device selection console_private.h: Remove prototypes for non-existent methods bsp_com_inch() and bsp_com_outch() console_private.h: Improve comment for vt_ioctl() pc386: Add PCI UART support pc386/startup/bspstart.c: Reformat and cleanup file header pc386/startup/bsp_fatal_halt.c: Fix noreturn does return warning libbsp/shared/console.c: Clean up memory allocation for per device data pc386: Add --disable-com1-com4 boot argument mips/malta: Use shared pci_find_device() and removed unused pci_list_devices() powerpc/mvme5500: Use shared pci_find_device() fileio: lspci candidate command fileio: Add command "com" to write to files c/src/lib/libbsp/Makefile.am | 3 + c/src/lib/libbsp/i386/Makefile.am | 2 +- c/src/lib/libbsp/i386/pc386/Makefile.am | 8 +- c/src/lib/libbsp/i386/pc386/configure.ac | 1 - c/src/lib/libbsp/i386/pc386/console/conscfg.c | 29 +- .../lib/libbsp/i386/pc386/console/console_select.c | 217 +++++++++-- c/src/lib/libbsp/i386/pc386/console/uart_bus_pci.c | 398 +++++++++++++++++++++ c/src/lib/libbsp/i386/pc386/include/bsp.h | 10 + c/src/lib/libbsp/i386/pc386/preinstall.am | 4 - .../lib/libbsp/i386/pc386/startup/bsp_fatal_halt.c | 3 + c/src/lib/libbsp/i386/pc386/startup/bspstart.c | 102 ++++-- c/src/lib/libbsp/i386/shared/pci/pci_io.c | 200 +++++++++++ c/src/lib/libbsp/i386/shared/pci/pcibios.c | 246 ++----------- c/src/lib/libbsp/i386/shared/pci/pcibios.h | 62 ---- c/src/lib/libbsp/mips/malta/Makefile.am | 3 +- c/src/lib/libbsp/mips/malta/include/pci.h | 32 -- c/src/lib/libbsp/mips/malta/pci/pcifinddevice.c | 277 -------------- c/src/lib/libbsp/mips/malta/pci/pcilistdevices.c | 102 ------ c/src/lib/libbsp/powerpc/mvme5500/Makefile.am | 6 +- .../libbsp/powerpc/mvme5500/pci/pcifinddevice.c | 62 ---- c/src/lib/libbsp/shared/console.c | 57 ++- c/src/lib/libbsp/shared/console_private.h | 35 +- c/src/lib/libbsp/shared/pci/pci_bus_count.c | 67 ++++ c/src/lib/libbsp/shared/pci/pci_find_device.c | 274 ++++++++++++++ c/src/libchip/network/if_fxp.c | 43 ++- testsuites/samples/fileio/Makefile.am | 2 +- testsuites/samples/fileio/init.c | 7 +- testsuites/samples/fileio/main_com.c | 129 +++++++ testsuites/samples/fileio/main_lspci.c | 43 +++ 29 files changed, 1540 insertions(+), 884 deletions(-) create mode 100644 c/src/lib/libbsp/i386/pc386/console/uart_bus_pci.c create mode 100644 c/src/lib/libbsp/i386/shared/pci/pci_io.c delete mode 100644 c/src/lib/libbsp/i386/shared/pci/pcibios.h delete mode 100644 c/src/lib/libbsp/mips/malta/pci/pcifinddevice.c delete mode 100644 c/src/lib/libbsp/mips/malta/pci/pcilistdevices.c delete mode 100644 c/src/lib/libbsp/powerpc/mvme5500/pci/pcifinddevice.c create mode 100644 c/src/lib/libbsp/shared/pci/pci_bus_count.c create mode 100644 c/src/lib/libbsp/shared/pci/pci_find_device.c create mode 100644 testsuites/samples/fileio/main_com.c create mode 100644 testsuites/samples/fileio/main_lspci.c -- 1.8.3.1 _______________________________________________ devel mailing list devel@rtems.org http://lists.rtems.org/mailman/listinfo/devel