1. 16 1月, 2009 3 次提交
  2. 04 9月, 2008 1 次提交
    • E
      bnx2x: Accessing un-mapped page · 437cf2f1
      Eilon Greenstein 提交于
      The allocated RX buffer size was 64 bytes bigger than the PCI mapped
      size with no good reason. If the packet was actually using the buffer up
      to its limit and if the last 64 bytes of the buffer crossed 4KB boundary
      then an unmapped PCI page was accessed. The fix is to use only one
      parameter for the buffer size - there is no need to differentiate
      between the buffer size and the PCI mapping size since the extra 64
      bytes can actually be used by the FW to align the Ethernet payload to
      64 bytes.
      
      Also updating the driver version and date
      Signed-off-by: NEilon Greenstein <eilong@broadcom.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      437cf2f1
  3. 26 8月, 2008 1 次提交
    • E
      bnx2x: Rx work check · 2772f903
      Eilon Greenstein 提交于
      The has Rx work check was wrong: when the FW was at the end of the page,
      the driver was already at the beginning of the next page. Since the
      check only validated that both driver and FW are pointing to the same
      place, it concluded that there is still work to be done. This caused
      some serious issues including long latency results on ping-pong test and
      lockups while unloading the driver in that condition.
      Signed-off-by: NEilon Greenstein <eilong@broadcom.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      2772f903
  4. 14 8月, 2008 9 次提交
  5. 24 6月, 2008 5 次提交
    • V
      bnx2x: Add TPA, Broadcoms HW LRO · 7a9b2557
      Vladislav Zolotarov 提交于
      The TPA stands for Transparent Packet Aggregation. When enabled, the FW
      aggregate in-order TCP packets according to the 4-tuple match and sends
      1 big packet to the driver. This packet is stored on an SGL in which
      each SGE is 1 page. The FW also implements a timeout algorithm and it
      honors all TCP flag, including the push flag as a trigger to halt
      aggregation.
      
      After receiving Ben Hutchings comments, we also added ethtool support,
      so now, thanks to Ben's patch, when forwarding is enabled, our
      aggregation is turned off using the LRO flags.
      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>
      7a9b2557
    • Y
      bnx2x: New statistics code · bb2a0f7a
      Yitchak Gertner 提交于
      To avoid race conditions with link up/down and driver up/down - the
      statistics handling was re-written in a form of state machine.
      Also supporting statistics for 57711
      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>
      bb2a0f7a
    • 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
    • E
      bnx2x: New init infrastructure · ad8d3948
      Eilon Greenstein 提交于
      This new initialization code supports the 57711 HW. It also supports
      the emulation and FPGA for the 57711 and 57710 initializations values
      (very small amount of code which is very helpful in the lab - less
      than 30 lines).
      
      The initialization is done via DMAE after the DMAE block is ready -
      before it is ready, some of the initialization is done via PCI
      configuration transactions (referred to as indirect write).  A mutex
      to protect the DMAE from being overlapped was added.  There are few
      new registers which needs to be initialized by SW - the full comment
      for those registers is added to the register file.  A place holder for
      the 57711 (referred to as E1H) microcode was added- the microcode
      itself is too big and it is split over the following 4 patches
      Signed-off-by: NEilon Greenstein <eilong@broadcom.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      ad8d3948
    • 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
  6. 13 6月, 2008 1 次提交
  7. 29 2月, 2008 7 次提交
  8. 29 1月, 2008 1 次提交