04 Oct, 2006

2 commits


23 Jun, 2005

1 commit

  • - Use extern prefix for functions required.
    - Removed a lot of wrappers, including t1_read/write_reg_4.
    - Removed various macros, using native kernel calls now.
    - Enumerated various #defines.
    - Removed a lot of shared code which is not currently used in "NIC only" mode.
    - Removed dead code.

    Documentation/networking/cxgb.txt:
    - Updated release notes for version 2.1.1

    drivers/net/chelsio/ch_ethtool.h
    - removed file, no longer using ETHTOOL namespace.

    drivers/net/chelsio/common.h
    - moved code from osdep.h to common.h
    - added comment to #endif indicating which symbol it closes.

    drivers/net/chelsio/cphy.h
    - removed dead code.
    - added comment to #endif indicating which symbol it closes.

    drivers/net/chelsio/cxgb2.c
    - use DMA_{32,64}BIT_MASK in include/linux/dma-mapping.h.
    - removed unused code.
    - use printk message for link info resembling drivers/net/mii.c.
    - no longer using the MODULE_xxx namespace.
    - no longer using "pci_" namespace.
    - no longer using ETHTOOL namespace.

    drivers/net/chelsio/cxgb2.h
    - removed file, merged into common.h

    drivers/net/chelsio/elmer0.h
    - removed dead code.
    - added various enums.
    - added comment to #endif indicating which symbol it closes.

    drivers/net/chelsio/espi.c
    - removed various macros, using native kernel calls now.
    - removed a lot of wrappers, including t1_read/write_reg_4.

    drivers/net/chelsio/espi.h
    - added comment to #endif indicating which symbol it closes.

    drivers/net/chelsio/gmac.h
    - added comment to #endif indicating which symbol it closes.

    drivers/net/chelsio/mv88x201x.c
    - changes to sync with Chelsio TOT.

    drivers/net/chelsio/osdep.h
    - removed file, consolidation. osdep was used to translate wrapper functions
    since our code supports multiple OSs. removed wrappers.

    drivers/net/chelsio/pm3393.c
    - removed various macros, using native kernel calls now.
    - removed a lot of wrappers, including t1_read/write_reg_4.
    - removed unused code.

    drivers/net/chelsio/regs.h
    - added a few register entries for future and current feature support.
    - added comment to #endif indicating which symbol it closes.

    drivers/net/chelsio/sge.c
    - rewrote large portion of scatter-gather engine to stabilize
    performance.
    - using u8/u16/u32 kernel types instead of __u8/__u16/__u32 compiler
    types.

    drivers/net/chelsio/sge.h
    - rewrote large portion of scatter-gather engine to stabilize
    performance.
    - added comment to #endif indicating which symbol it closes.

    drivers/net/chelsio/subr.c
    - merged tp.c into subr.c
    - removed various macros, using native kernel calls now.
    - removed a lot of wrappers, including t1_read/write_reg_4.
    - removed unused code.

    drivers/net/chelsio/suni1x10gexp_regs.h
    - modified copyright and authorship of file.
    - added comment to #endif indicating which symbol it closes.

    drivers/net/chelsio/tp.c
    - removed file, merged into subr.c.

    drivers/net/chelsio/tp.h
    - removed file.

    include/linux/pci_ids.h
    - patched to include PCI_VENDOR_ID_CHELSIO 0x1425, removed define from
    our code.

    Scott Bardone
     

16 May, 2005

1 commit

  • A Linux driver for the Chelsio 10Gb Ethernet Network Controller by Chelsio
    (http://www.chelsio.com). This driver supports the Chelsio N210 NIC and is
    backward compatible with the Chelsio N110 model 10Gb NICs. It supports
    AMD64, EM64T and x86 systems.

    Signed-off-by: Tina Yang
    Signed-off-by: Scott Bardone
    Signed-off-by: Christoph Lameter

    Adrian said:

    - my3126.c is unused (because t1_my3126_ops isn't used anywhere)
    - what are the EXTRA_CFLAGS in drivers/net/chelsio/Makefile for?
    - $(cxgb-y) in drivers/net/chelsio/Makefile seems to be unneeded
    - completely unused global functions:
    - espi.c: t1_espi_get_intr_counts
    - sge.c: t1_sge_get_intr_counts
    - the following functions can be made static:
    - sge.c: t1_espi_workaround
    - sge.c: t1_sge_tx
    - subr.c: __t1_tpi_read
    - subr.c: __t1_tpi_write
    - subr.c: t1_wait_op_done

    shemminger said:

    The performance recommendations in cxgb.txt are common to all fast devices,
    and should be in one file rather than just for this device. I would rather
    see ip-sysctl.txt updated or a new file on tuning recommendations started.
    Some of them have consequences that aren't documented well.
    For example, turning off TCP timestamps risks data corruption from sequence wrap.

    A new driver shouldn't need so may #ifdef's unless you want to putit on older
    vendor versions of 2.4

    Some accessor and wrapper functions like:
    t1_pci_read_config_4
    adapter_name
    t1_malloc
    are just annoying noise.

    Why have useless dead code like:

    /* Interrupt handler */
    +static int pm3393_interrupt_handler(struct cmac *cmac)
    +{
    + u32 master_intr_status;
    +/*
    + 1. Read master interrupt register.
    + 2. Read BLOCK's interrupt status registers.
    + 3. Handle BLOCK interrupts.
    +*/

    Jeff said:

    step 1: kill all the OS wrappers.

    And do you really need hooks for multiple MACs, when only one MAC is
    really supported? Typically these hooks are at a higher level anyway --
    struct net_device.

    From: Christoph Lameter
    Signed-off-by: Christoph Lameter
    Signed-off-by: Andrew Morton

    diff -puN /dev/null Documentation/networking/cxgb.txt

    Christoph Lameter