1. 14 8月, 2008 4 次提交
    • E
      bnx2x: HW attention lock · 3fcaf2e5
      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: NEilon Greenstein <eilong@broadcom.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      3fcaf2e5
    • Y
      bnx2x: HW lock mechanism · 4a37fb66
      Yitchak Gertner 提交于
      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: NYitchak Gertner <gertner@broadcom.com>
      Signed-off-by: NEilon Greenstein <eilong@broadcom.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      4a37fb66
    • V
      bnx2x: Load/Unload under traffic · da5a662a
      Vladislav Zolotarov 提交于
      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: NVladislav Zolotarov <vladz@broadcom.com>
      Signed-off-by: NEilon Greenstein <eilong@broadcom.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      da5a662a
    • Y
      bnx2x: Statistics · 66e855f3
      Yitchak Gertner 提交于
      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: NYitchak Gertner <gertner@broadcom.com>
      Signed-off-by: NEilon Greenstein <eilong@broadcom.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      66e855f3
  2. 24 6月, 2008 2 次提交
    • E
      bnx2x: Add support for BCM57711 HW · 34f80b04
      Eilon Greenstein 提交于
      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: NEilon Greenstein <eilong@broadcom.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      34f80b04
    • Y
      bnx2x: New link code · c18487ee
      Yaniv Rosner 提交于
      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: NYaniv Rosner <yanivr@broadcom.com>
      Signed-off-by: NEilon Greenstein <eilong@broadcom.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      c18487ee
  3. 29 2月, 2008 1 次提交
    • E
      [BNX2X]: Correct Link management · f1410647
      Eliezer Tamir 提交于
      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: NEliezer Tamir <eliezert@broadcom.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      f1410647
  4. 29 1月, 2008 1 次提交