1. 10 May, 2018 20 commits
  2. 09 May, 2018 15 commits
  3. 08 May, 2018 5 commits
    • David S. Miller's avatar
      Merge branch 'bnxt_en-Fixes-for-net-next' · 8d42eada
      David S. Miller authored
      Michael Chan says:
      
      ====================
      bnxt_en: Fixes for net-next.
      
      This series includes a bug fix for a regression in firmware message polling
      introduced recently on net-next.  There are 3 additional minor fixes for
      unsupported link speed checking, VF MAC address handling, and setting
      PHY eeprom length.
      ====================
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      8d42eada
    • Michael Chan's avatar
      bnxt_en: Always forward VF MAC address to the PF. · 707e7e96
      Michael Chan authored
      The current code already forwards the VF MAC address to the PF, except
      in one case.  If the VF driver gets a valid MAC address from the firmware
      during probe time, it will not forward the MAC address to the PF,
      incorrectly assuming that the PF already knows the MAC address.  This
      causes "ip link show" to show zero VF MAC addresses for this case.
      
      This assumption is not correct.  Newer firmware remembers the VF MAC
      address last used by the VF and provides it to the VF driver during
      probe.  So we need to always forward the VF MAC address to the PF.
      
      The forwarded MAC address may now be the PF assigned MAC address and so we
      need to make sure we approve it for this case.
      Signed-off-by: default avatarMichael Chan <michael.chan@broadcom.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      707e7e96
    • Vasundhara Volam's avatar
      bnxt_en: Read phy eeprom A2h address only when optical diagnostics is supported. · 7328a23c
      Vasundhara Volam authored
      For SFP+ modules, 0xA2 page is available only when Diagnostic Monitoring
      Type [Address A0h, Byte 92] is implemented. Extend bnxt_get_module_info(),
      to read optical diagnostics support at offset 92(0x5c) and set eeprom_len
      length to ETH_MODULE_SFF_8436_LEN (to exclude A2 page), if dianostics is
      not supported.
      
      Also in bnxt_get_module_info(), module id is read from offset 0x5e which
      is not correct. It was working by accident, as offset was not effective
      without setting enables flag in the firmware request. SFP module id is
      present at location 0. Fix this by removing the offset and read it
      from location 0.
      Signed-off-by: default avatarVasundhara Volam <vasundhara-v.volam@broadcom.com>
      Signed-off-by: default avatarMichael Chan <michael.chan@broadcom.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      7328a23c
    • Michael Chan's avatar
      bnxt_en: Check unsupported speeds in bnxt_update_link() on PF only. · dac04907
      Michael Chan authored
      Only non-NPAR PFs need to actively check and manage unsupported link
      speeds.  NPAR functions and VFs do not control the link speed and
      should skip the unsupported speed detection logic, to avoid warning
      messages from firmware rejecting the unsupported firmware calls.
      Signed-off-by: default avatarMichael Chan <michael.chan@broadcom.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      dac04907
    • Michael Chan's avatar
      bnxt_en: Fix firmware message delay loop regression. · cc559c1a
      Michael Chan authored
      A recent change to reduce delay granularity waiting for firmware
      reponse has caused a regression.  With a tighter delay loop,
      the driver may see the beginning part of the response faster.
      The original 5 usec delay to wait for the rest of the message
      is not long enough and some messages are detected as invalid.
      
      Increase the maximum wait time from 5 usec to 20 usec.  Also, fix
      the debug message that shows the total delay time for the response
      when the message times out.  With the new logic, the delay time
      is not fixed per iteration of the loop, so we define a macro to
      show the total delay time.
      
      Fixes: 9751e8e7 ("bnxt_en: reduce timeout on initial HWRM calls")
      Signed-off-by: default avatarMichael Chan <michael.chan@broadcom.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      cc559c1a