lkml.org 
[lkml]   [2004]   [Aug]   [4]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    From
    SubjectAltix I/O code reorganization
    Date

    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/

    \
     
     \ /
      Last update: 2005-03-22 14:04    [W:0.025 / U:62.992 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site