Messages in this thread | | | From | Pat Gefre <> | Subject | Altix I/O code reorganization | Date | Wed, 4 Aug 2004 15:14:08 -0500 (CDT) |
| |
We have reorganized the I/O layer in the Altix code.
We are posting this code for review before submitting for inclusion in the 2.5 tree.
The patch set is at: ftp://oss.sgi.com/projects/sn2/sn2-update/
It is based off the http://lia64.bkbits.net/to-linus-2.5 tree
The general changes are: o added new hardware support o code cleanup (typedefs, include files, etc.) o simplified the directory structure (all files were arch/ia64/sn/io/ are now under arch/ia64/sn/ioif/) o code size reduced by >50% o major reorg of the code itself o copyright updates
The patches and a short comment for each:
001-deleted-files # contains all the files that are no longer needed
002-pci-fixup # The io_init.c file replaces the pci_bus_cvlink.c. A diff of the files # would not make much sense as the functionalities provided in pci_bus_cvlink.c # are no longer needed. The new functions needed are: # # 1. Getting Platform Specific Information for PCI Buses/Devices. # 2. Getting Hardware Workaround Information. # 3. Getting I/O Hub Information. # # The io_init.c file basically contains all the routines that are needed to # allow a PCI Device Driver to perform Interrupts, PIOs and DMAs.
003-pci-support # There are some minor changes in these files. The biggest change is that we have # broken up the SN Platform Specific DMA mapping interfaces into 3 different # routines: # # 1. 32Bit Direct Mapping. # 2. 32Bit PMU Mapping. # 3. 64Bit Direct Mapping. # # The SN Platform has 3 different PCI/PCIX Bridges. They are not all exactly the # same, however they do provide the same functionality. We have abstracted # the DMA mapping calls so that the caller will not have to be aware of the # hardware differences. Example: # # *dma_handle = (*provider->dmatrans_direct64)(pcidev_info, phys_addr, # PCIIO_DMA_CMD | PCIIO_DMA_A64); # # The Bus Driver for this card, determines the appropriate method. #
004-pci-bridge-drivers # This set of new files supports 2 of our 3 PCI Bridges, PIC and TIOCP. # pcibr_dma.c is new and provides the PCI DMA Mapping routines. # pcibr_sal_interfaces.c is new and provides the SAL Interfaces. # pcibr_provider.c is new and defines the Chipset specific Provider Tables. # # The rest of the file changes are mostly cleanup.
005-klconfig # Moved a file, but mostly cleanup
006-bte # Changes needed to remove hwgraph
007-io-hub-provider # Files needed to provide services for our I/O Hub devices
008-kdb-support-functions # KDB support functions
009-misc-sources # code cleanup # ran thru Lindent # changes needed for new I/O structure
010-new-includes # New includes with definitions for PCI devices, buses, and I/O hubs
011-misc-include-changes # code cleanup # misc changes needed for new I/O structure - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |