10 Dec, 2009

1 commit

  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: (42 commits)
    tree-wide: fix misspelling of "definition" in comments
    reiserfs: fix misspelling of "journaled"
    doc: Fix a typo in slub.txt.
    inotify: remove superfluous return code check
    hdlc: spelling fix in find_pvc() comment
    doc: fix regulator docs cut-and-pasteism
    mtd: Fix comment in Kconfig
    doc: Fix IRQ chip docs
    tree-wide: fix assorted typos all over the place
    drivers/ata/libata-sff.c: comment spelling fixes
    fix typos/grammos in Documentation/edac.txt
    sysctl: add missing comments
    fs/debugfs/inode.c: fix comment typos
    sgivwfb: Make use of ARRAY_SIZE.
    sky2: fix sky2_link_down copy/paste comment error
    tree-wide: fix typos "couter" -> "counter"
    tree-wide: fix typos "offest" -> "offset"
    fix kerneldoc for set_irq_msi()
    spidev: fix double "of of" in comment
    comment typo fix: sybsystem -> subsystem
    ...

    Linus Torvalds
     

04 Dec, 2009

1 commit

  • That is "success", "unknown", "through", "performance", "[re|un]mapping"
    , "access", "default", "reasonable", "[con]currently", "temperature"
    , "channel", "[un]used", "application", "example","hierarchy", "therefore"
    , "[over|under]flow", "contiguous", "threshold", "enough" and others.

    Signed-off-by: André Goddard Rosa
    Signed-off-by: Jiri Kosina

    André Goddard Rosa
     

06 Nov, 2009

3 commits

  • Signed-off-by: Yaniv Rosner
    Signed-off-by: Eilon Greenstein
    Signed-off-by: David S. Miller

    Yaniv Rosner
     
  • When parallel detect is used, flow-control is set to the
    req_fc_auto_adv instead of none.

    Motive: when 577xx is FC configuration is set to AUTO, while LP speed
    is set to FORCE mode and FC to force RX/TX, link would come up using
    parallel detect, and the FC will be set to NONE since FC capabilities
    were not negotiated, although the LP is setting FC to force RX/TX.

    Signed-off-by: Yaniv Rosner
    Signed-off-by: Eilon Greenstein
    Signed-off-by: David S. Miller

    Yaniv Rosner
     
  • - Advertise 1G KX4 in CL73 when 1G speed capability is enabled
    - Add flow-control negotiation over CL73
    - External loopback test on Serdes should be done in FORCE mode, since in
    CL73 it is unable to link up with the same core using AUTONEG
    - Fix bnx2x_set_led function to support CL73 link leds

    Signed-off-by: Yaniv Rosner
    Signed-off-by: Eilon Greenstein
    Signed-off-by: David S. Miller

    Yaniv Rosner
     

21 Sep, 2009

1 commit


13 Aug, 2009

6 commits


31 Jul, 2009

1 commit


22 Jul, 2009

2 commits

  • Adding support for BCM8727 - a dual port SFP+ PHY. That includes verification of
    the optic module vendor and part number - the list of approved modules resides
    on the nvram and the module is verified by the FW. Since not all users would
    like to use this verification feature, it can be disabled. The default behavior
    is to issue a warning if the module is not approved, but still allow using it -
    but it is also possible to disable the link if the module is not approved.

    Signed-off-by: Yaniv Rosner
    Signed-off-by: Eilon Greenstein
    Signed-off-by: David S. Miller

    Eilon Greenstein
     
  • Since management traffic cannot go on the wire while configured to loopback,
    simply stop it to avoid race condition when the MAC is set to loopback in the
    middle of a packet

    Signed-off-by: Eilon Greenstein
    Signed-off-by: David S. Miller

    Eilon Greenstein
     

03 Mar, 2009

2 commits


16 Feb, 2009

11 commits

  • Signed-off-by: Eilon Greenstein
    Signed-off-by: David S. Miller

    Eilon Greenstein
     
  • Supporting non-default pre-emphasis settings for the internal and some external
    PHYs

    Signed-off-by: Yaniv Rosner
    Signed-off-by: Eilon Greenstein
    Signed-off-by: David S. Miller

    Eilon Greenstein
     
  • This 1G interface (on top of the 4 lanes 10G interface) requires additional
    setting to work in CL45

    Signed-off-by: Yaniv Rosner
    Signed-off-by: Eilon Greenstein
    Signed-off-by: David S. Miller

    Eilon Greenstein
     
  • The NIG_ENABLE does not reset the emac. Replace it with explicit reset

    Signed-off-by: Yaniv Rosner
    Signed-off-by: Eilon Greenstein
    Signed-off-by: David S. Miller

    Eilon Greenstein
     
  • Some dual port PHY require HW lock since they are used by both interfaces
    (different driver instances). Since this list is getting longer, update a
    parameter at load time instead of calculating it on runtime

    Signed-off-by: Eilon Greenstein
    Signed-off-by: David S. Miller

    Eilon Greenstein
     
  • Also adding the ability to recognize the optic module and disable it if it is
    not authorized for safety reasons - since this feature might upset some users
    which are willing to take the risk, it is optional and can be disabled by
    setting an nvram bit (or a trivial driver patch to set this bit).
    This dual port PHY requires special handling if the ports are swapped.

    Signed-off-by: Yaniv Rosner
    Signed-off-by: Eilon Greenstein
    Signed-off-by: David S. Miller

    Eilon Greenstein
     
  • A GPIO is used with the 8726 PHY. Adding the GPIO related functions in this

    Signed-off-by: Eilon Greenstein
    Signed-off-by: David S. Miller

    Eilon Greenstein
     
  • Setting better HW thresholds and enabling FW capabilities for better
    enforcement. Also set the HW to more efficiently use the internal buffers if
    this is a single port design

    Signed-off-by: Eilon Greenstein
    Signed-off-by: David S. Miller

    Eilon Greenstein
     
  • Before initializing the chip after iSCSI boot, the interrupts of the function
    that was used to boot must be disabled. That means that the driver needs to set
    the chip as if it is the iSCSI PCI function - this bug is exposed only with MSI

    Signed-off-by: Eilon Greenstein
    Signed-off-by: David S. Miller

    Eilon Greenstein
     
  • Enabling MSI on top of MSI-X and INTA. Also changing the module parameter to
    allow choosing INTA or MSI even when MSI-X is available. The default status
    block should not be reversed for endianity. Since MSI can issue
    re-configuration, the interrupt disable function now requires mmiowb

    Signed-off-by: Eilon Greenstein
    Signed-off-by: David S. Miller

    Eilon Greenstein
     
  • This is the FW blob and the relevant definitions without any logic. It
    also contains the minimal mandatory code changes to work with this FW
    but it does not contain enabling of the new features that this FW
    provides.

    This FW is needed for:
    - More efficient multi-queue
    - per queue statistics
    - Big-endian issue with MSI
    - Improved pause response

    Signed-off-by: Eilon Greenstein
    Signed-off-by: David S. Miller

    Eilon Greenstein
     

20 Jan, 2009

1 commit


14 Aug, 2008

8 commits

  • Spelling mistakes
    Spelling has to L's in it...

    Signed-off-by: Eilon Greenstein
    Signed-off-by: David S. Miller

    Eilon Greenstein
     
  • Pause settings
    - 1G pause was not working due to missing write to the emac block
    (TX_MODE_FLOW_EN)
    - The flow control should use the negotiated result (after autoneg) so
    we should save both the requested autoneg and the result
    - The HW credits with flow control at 1G speed were not optimized and
    caused low throughput
    - It is recommended to turn off flow control if the MTU is bigger than
    5000B due to internal buffers size

    Signed-off-by: Yaniv Rosner
    Signed-off-by: Eilon Greenstein
    Signed-off-by: David S. Miller

    Yaniv Rosner
     
  • Link order with external PHY
    When external PHY exists (second chip with the PHY to translate to
    another physical medium) the link with the eternal PHY and the network
    should be established before setting the link between the 5771x and the
    PHY. This is the right order and it is important when using autoneg -
    the link to the network should use the autoneg and the link between the
    two chips should be forced to the network result.

    Signed-off-by: Yaniv Rosner
    Signed-off-by: Eilon Greenstein
    Signed-off-by: David S. Miller

    Yaniv Rosner
     
  • PBA Table Page Alignment Workaround
    The PBA table starts on the middle of the page and that's causing very
    low performance with virtualization. The solution is not to update via
    the BAR directly but via chip access to the same memory

    Signed-off-by: Eilon Greenstein
    Signed-off-by: David S. Miller

    Eilon Greenstein
     
  • HW attention lock
    Making sure that only one function will handle the HW attention. This
    makes the device parameter aeu_mask redundant so it is removed

    Signed-off-by: Eilon Greenstein
    Signed-off-by: David S. Miller

    Eilon Greenstein
     
  • HW lock mechanism
    Enhancing the HW lock to work per function and not only per port - this
    is needed for the next patch that protects races over HW attention
    detection between the different functions. At this chance, changing the
    functions names to be more inline with the current naming convention

    Signed-off-by: Yitchak Gertner
    Signed-off-by: Eilon Greenstein
    Signed-off-by: David S. Miller

    Yitchak Gertner
     
  • Load/Unload under traffic
    Few issues were found when loading and unloading under traffic:
    - When receiving Tx interrupt call netif_wake_queue if the queue is
    stopped but the state is open
    - Check that interrupts are enabled before doing anything else on the
    msix_fp_int function
    - In nic_load, enable the interrupts only when needed and ready for it
    - Function stop_leading returns status since it can fail
    - Add 1ms delay when unloading the driver to validate that there are no
    open transactions that already started by the FW
    - Splitting the "has work" function into Tx and Rx so the same function
    will be used on unload and interrupts
    - Do not request for WoL if only resetting the device (save the time
    that it takes the FW to set the link after reset)
    - Fixing the device reset after iSCSI boot and before driver load - all
    internal buffers must be cleared before the driver is loaded

    Signed-off-by: Vladislav Zolotarov
    Signed-off-by: Eilon Greenstein
    Signed-off-by: David S. Miller

    Vladislav Zolotarov
     
  • Statistics
    - Making sure that each drop is accounted for in the driver statistics
    - Clearing the FW statistics when driver is loaded to prevent
    inconsistency with HW statistics
    - Once error is detected (bnx2x_panic_dump), stop the statistics
    before other actions (currently it is stopped last and can corrupt
    the data) - Adding HW checksum error counter to the statistics
    - Removing unused variable stats_ticks
    - Using macros instead of magic numbers to indicate which statistics are
    shared per port and which are per function

    Signed-off-by: Yitchak Gertner
    Signed-off-by: Eilon Greenstein
    Signed-off-by: David S. Miller

    Yitchak Gertner
     

24 Jun, 2008

2 commits

  • Supporting the 57711 and 57711E - refers to in the code as E1H. The
    57710 is referred to as E1.

    To support the new members in the family, the bnx2x structure was
    divided to 3 parts: common, port and function. These changes caused some
    rearrangement in the bnx2x.h file.

    A set of accessories macros were added to make access to the bnx2x
    structure more readable

    Signed-off-by: Eilon Greenstein
    Signed-off-by: David S. Miller

    Eilon Greenstein
     
  • New Link code:
    Moving all the link related code (including the calculations, the
    initialization of the MAC and PHY and the external PHY's code) into
    a separated file. The changes from the code that used to be part of
    bnx2x.c (now called bnx2x_main.c) are:
    - Using separate structures for link inputs and link outputs to clearly
    identify what was configured and what is the outcome
    - Adding code to read external PHY FW version and print it as part of
    ethtool -i
    - Adding code to upgrade external PHY FW from ethtool -E with special
    magic number - Changing the link down indication to ERR level
    - Adding a lock on all PHY access to prevent an interrupt and
    setting changes to overlap
    - Adding support for emulation and FPGA (small chunk of code that really
    helps in the lab) - Adding support for 1G on BCM8706 PHY
    - Adding clear debug print incase of fan failure (the PHY type is now
    "failure")

    Signed-off-by: Yaniv Rosner
    Signed-off-by: Eilon Greenstein
    Signed-off-by: David S. Miller

    Yaniv Rosner
     

29 Feb, 2008

1 commit

  • Properly protect PHY access between two devices on the same board with
    a HW lock.

    Use GPIO to clear all previous configurations before changing link
    parameters.

    Shut down the external PHY in case of fan failure.

    Reducing the MDC/MDIO clock to 2.5MHz due to problems with some
    devices.

    Resolve the flow control response according to autoneg with external
    PHY.

    Unmasking all PHY interrupts in single write to prevent a race in the
    interrupts order.

    LASI indication fixes to work with peculiarities of PHYs.

    Disable MAC RX to avoid a HW bug when closing the MAC under traffic.

    Disable parallel detection on HiGig due to HW limitation.

    Updating the shared memory structure to work with the current
    bootcode.

    Signed-off-by: Eliezer Tamir
    Signed-off-by: David S. Miller

    Eliezer Tamir