1. 02 Apr, 2009 6 commits
    • Ramkrishna Vepa's avatar
      Neterion: New driver: Main entry points · 703da5a1
      Ramkrishna Vepa authored
      This patch implements all the driver entry point functions.
      - Definition of all module loadable paramters.
      - Implementation of all driver entry point functions.
      
      - Changes in this submission -
              - Fixed compilation error when enabling debug statements
              - Fixed few warnings when CONFIG_PCI_MSI is not defined
              - Removed unnecessary volatile variables
              - Removed compare_ether_addr as it causes unaligned memory access on
                the sparc64 platform.
      
      - Changes in previous submissions -
              - As per Stephen Hemminger's comments removed the following loadable
                parameters - gro, rx_& tx max_indicate_pkts, exec_mode, rx & tx
                pause_enable, tx_steering_type and intr_type.
              - Added Device ID definition in vxge-main.h instead of
                include/linux/pci_ids.h file - Reported by David Miller
       - Incorporated following review comments from Ben Hutchings
              - NAPI is always enabled (no option to turn it OFF).
              - Loadable parameters
               rx_steering_type: This loadable option is removed.
               ring_blocks: This loadable option is removed.
               The driver default settings work well in most if not all cases.
               Another patch to configure these parameters with ethtool will be
               released in the future.
       - LRO has been deprecated in favour of GRO - Bill Fink & Dave Miller's comment
       - Fixed sparse warnings - Reported by Andi Kleen
       - Removed unused variables
      Signed-off-by: default avatarSivakumar Subramani <sivakumar.subramani@neterion.com>
      Signed-off-by: default avatarRastapur Santosh <santosh.rastapur@neterion.com>
      Signed-off-by: default avatarRamkrishna Vepa <ram.vepa@neterion.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      703da5a1
    • Ramkrishna Vepa's avatar
      Neterion: New driver: Traffic & alarm handler · 11324132
      Ramkrishna Vepa authored
      This patch takes care of trafic handling related APIS.
      - Interrupt Enable and disable
      - Mask / Unmask Interrupt
      - Traffic Interrupt handling.
      - Alarm Interrupt handling.
      
      - Changes in this submission -
              - General clean up - removed redundant includes, defines and macros.
      
      - Changes in previous submissions -
       - General cleanup - removed unused functions and variables.
       - Use asserts where necessary - Reported by Andi Kleen
       - Fixed sparse warnings - Reported by Andi Kleen
       - Use a prefix, "__vxge" in front of hw functions to make them globally
         unique - Ben Hutchings
      Signed-off-by: default avatarSivakumar Subramani <sivakumar.subramani@neterion.com>
      Signed-off-by: default avatarRastapur Santosh <santosh.rastapur@neterion.com>
      Signed-off-by: default avatarRamkrishna Vepa <ram.vepa@neterion.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      11324132
    • Ramkrishna Vepa's avatar
      Neterion: New driver: Hardware init & configuration · 40a3a915
      Ramkrishna Vepa authored
      This patch takes care of Initialization and configuration steps of
      Neterion Inc's X3100 Series 10GbE PCIe I/O Virtualized Server Adapter.
      - Device Initialization.
      - Verification and setting of device config parameters.
      - Allocation of Tx FIFO and Rx Ring descriptors (DTR).
      - APIs to get various type of hw stats
      - APIs to configure RTS (Receive Traffic Steering)
      
      - Changes in this submission -
              - Include vmalloc header without which a compilation error occured
                on sparc64, ppc64 and IA64 plaforms.
      	- Fixed compilation warning in register_poll, write32_upper,
                write32_lower and the special write64 functions on ppc64.
              - General cleanup - removed redundant includes and defines.
      
      - Changes in previous submissions -
              - Add readq/writeq implementation for the driver for 32 bit systems -
                reported by Dave Miller.
      - Incorporated following comments from Ben Hutchings
              - Start a comment with "/**" to make it a kernel-doc comment.
              - Use prefix, "__vxge" in front of hw functions to make them globally
                unique.
              - Fixed unnecessary clearing members of *channel just before freeing
              - Use backslashes only for macro definitions and not in multi-line
                statements.
              - Used pci_find_capability instead of redefining it.
              - Used device and revision ids that are already in pdev - no need to
                read them again.
              - Used pci_save_state() and pci_restore_state() around resets.
              - Used udelay and mdelay directly instead of wrapper.
              - In __vxge_hw_device_register_poll() reset i to 0 after the
                microsecond delay loop to commence the millisecond delay loop.
              - Corrected spelling "sapper" - should be "swapper"
              - Remove too much vertical whitespace.
              - Replaced magic numbers with appropriate macros
      - Incorporated following comments from Andi Kleen [andi@firstfloor.org]
              - Reduced the arguments in functions or refactored them into smaller
              functions.
              - Allocate page sized memories used in slow path with vmalloc.
              - Use asserts where necessary.
              - Use macros instead of magic numbers.
              - Use the pci layer code instead of defining own functions
              - Remove driver wrappers such as xge_hw_device_private_set().
              - Fixed sparse warnings.
      Signed-off-by: default avatarSivakumar Subramani <sivakumar.subramani@neterion.com>
      Signed-off-by: default avatarRastapur Santosh <santosh.rastapur@neterion.com>
      Signed-off-by: default avatarRamkrishna Vepa <ram.vepa@neterion.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      40a3a915
    • Ramkrishna Vepa's avatar
      Neterion: New driver: register set - vxge-reg.h · 66d97fed
      Ramkrishna Vepa authored
      - Complete Register map details of Neterion Inc's X3100 Series 10GbE PCIe I/O
        Virtualized Server Adapter.
      
      - No change from previous submission.
      
      - Changes in previous submissions -
      - Incorporated following comments from Ben Hutchings
              - Use original macros for endian checks
              - Remove VXGE_OS_PLATFORM_* macros as they are unused.
              - Converted multiple bVALX macros into single with additional
                width parameter and renamed it to vxge_bVALn.
              - Using __packed instead of pragma pack(1)
              - Added a comment of the use of a hw swapper so driver code is
                portable (does not have to change the byte order for register
                access as well as dma operations) on different ENDIAN platforms.
              - Using the <linux/pci_regs.h> definitions instead of redefing them.
              - Using the PCI capabilities registers in <linux/pci_regs.h>
                instead of redefing them.
      Signed-off-by: default avatarSivakumar Subramani <sivakumar.subramani@neterion.com>
      Signed-off-by: default avatarRastapur Santosh <santosh.rastapur@neterion.com>
      Signed-off-by: default avatarRamkrishna Vepa <ram.vepa@neterion.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      66d97fed
    • Ramkrishna Vepa's avatar
      Neterion: New driver: Update Maintainer list · b136d1cb
      Ramkrishna Vepa authored
      - update to Maintainer list of S2IO 10GbE drivers (xframe/vxge).
      Signed-off-by: default avatarSivakumar Subramani <sivakumar.subramani@neterion.com>
      Signed-off-by: default avatarRastapur Santosh <santosh.rastapur@neterion.com>
      Signed-off-by: default avatarRamkrishna Vepa <ram.vepa@neterion.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      b136d1cb
    • Ramkrishna Vepa's avatar
      Neterion: Driver help file · 5adfb64b
      Ramkrishna Vepa authored
      - vxge driver help text file.
      
      - No change from previous submission.
      
      - Changes in previous submissions -
        Removed the performance tuning section with instructions to disable
        time stamps and change sysctl settings - Reported by Dave Miller
        General clean up.
       - Removed tx/rx_pause, exec_mode, tx_steering_type, rx_steering_type, gro,
         intr_type, rx & tx max_indicate_pkts and exec_mode loadable parameters. The
         driver default settings work well in most if not all cases. Another patch
         to configure these parameters with ethtool will be released in the future -
         Reported by Stephen Hemminger.
      - Incorporated following fixes based on comments from Ben Hutchings
              Removed references to earlier kernel versions.
              Removed sections that are similar for all drivers -
                      Load/Unload
                      Identifying the adapter/interface
                      Boot time configuration
              Removed loadable parameter -
                      NAPI - Napi is always enabled.
                      rx_steering_type & ring_blocks - The driver default settings
                      work well in most if not all cases. Another patch to configure
                      these parameters with ethtool will be released in the future.
              Removed ethtool support section - No need to duplicate ethtool
                      docs here.
              Removed Known Issue on SUSE 9 - Doesn't apply when using a
                      current kernel.
              Removed Common Problems section - These don't apply to in-tree modules.
              Removed Available Downloads section - Not sure this belongs in-tree.
              Removed Copyright information - This notice doesn't belong in
                      the kernel.
      Signed-off-by: default avatarSivakumar Subramani <sivakumar.subramani@neterion.com>
      Signed-off-by: default avatarRastapur Santosh <santosh.rastapur@neterion.com>
      Signed-off-by: default avatarRamkrishna Vepa <ram.vepa@neterion.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      5adfb64b
  2. 31 Mar, 2009 5 commits
  3. 30 Mar, 2009 3 commits
  4. 29 Mar, 2009 14 commits
  5. 28 Mar, 2009 12 commits