1. 24 10月, 2014 1 次提交
    • E
      iwlwifi: configure the LTR · 9180ac50
      Emmanuel Grumbach 提交于
      The LTR is the handshake between the device and the root
      complex about the latency allowed when the bus exits power
      save. This configuration was missing and this led to high
      latency in the link power up. The end user could experience
      high latency in the network because of this.
      
      Cc: <stable@vger.kernel.org> [3.10+]
      Signed-off-by: NEmmanuel Grumbach <emmanuel.grumbach@intel.com>
      9180ac50
  2. 21 9月, 2014 1 次提交
  3. 14 9月, 2014 2 次提交
  4. 04 9月, 2014 1 次提交
  5. 23 7月, 2014 3 次提交
  6. 06 7月, 2014 1 次提交
  7. 25 6月, 2014 3 次提交
    • L
      iwlwifi: update trans->hw_rev 8000 hw family format · b513ee7f
      Liad Kaufman 提交于
      The format of the CSR_HW_REV register has changed in 8000
      HW family. To keep backwards compatibility, we store the
      value of this register as usual in trans->hw_rev, only we
      store it in the old format in this variable.
      Signed-off-by: NLiad Kaufman <liad.kaufman@intel.com>
      Signed-off-by: NEmmanuel Grumbach <emmanuel.grumbach@intel.com>
      b513ee7f
    • A
      iwlwifi: pcie: improve debugfs queue info · f40faf62
      Andy Lutomirski 提交于
      This adds need_update and write_actual to rx_queue and need_update
      and an HCMD indicator to tx_queue.
      
      On my card, rx_queue now looks like:
      
      read: 181
      write: 180
      write_actual: 176
      need_update: 0
      free_count: 40
      closed_rb_num: 181
      
      tx_queue now looks like:
      
      hwq 00: read=29 write=30 use=1 stop=0 need_update=0
      hwq 01: read=0 write=0 use=1 stop=0 need_update=0
      hwq 02: read=128 write=128 use=1 stop=0 need_update=0
      hwq 03: read=0 write=0 use=1 stop=0 need_update=0
      hwq 04: read=94 write=94 use=1 stop=0 need_update=0 HCMD
      hwq 05: read=0 write=0 use=0 stop=0 need_update=0
      hwq 06: read=0 write=0 use=0 stop=0 need_update=0
      hwq 07: read=0 write=0 use=0 stop=0 need_update=0
      hwq 08: read=0 write=0 use=0 stop=0 need_update=0
      hwq 09: read=0 write=0 use=0 stop=0 need_update=0
      hwq 10: read=0 write=0 use=0 stop=0 need_update=0
      hwq 11: read=0 write=0 use=0 stop=0 need_update=0
      hwq 12: read=0 write=0 use=0 stop=0 need_update=0
      hwq 13: read=0 write=0 use=0 stop=0 need_update=0
      hwq 14: read=0 write=0 use=0 stop=0 need_update=0
      hwq 15: read=0 write=0 use=0 stop=0 need_update=0
      hwq 16: read=0 write=0 use=0 stop=0 need_update=0
      hwq 17: read=0 write=0 use=0 stop=0 need_update=0
      hwq 18: read=0 write=0 use=0 stop=0 need_update=0
      hwq 19: read=0 write=0 use=0 stop=0 need_update=0
      
      This may help with debugging queue stalls.
      Signed-off-by: NAndy Lutomirski <luto@amacapital.net>
      Signed-off-by: NEmmanuel Grumbach <emmanuel.grumbach@intel.com>
      f40faf62
    • E
      iwlwifi: pcie: add firmware monitor capabilities · c2d20201
      Emmanuel Grumbach 提交于
      This allows to use the firmware monitor. This capability
      uses a lot of contiguous memory (up to 64MB), so make its
      usage module parameter dependent.
      
      The driver will try to allocate as much contiguous memory
      as possible downgrading its requirements until the
      allocation succeeds.
      
      Dump this data into the fw-error dump file when an error
      happens.
      Signed-off-by: NEmmanuel Grumbach <emmanuel.grumbach@intel.com>
      c2d20201
  8. 11 5月, 2014 1 次提交
  9. 08 5月, 2014 1 次提交
  10. 07 5月, 2014 2 次提交
  11. 13 4月, 2014 5 次提交
  12. 10 3月, 2014 2 次提交
    • J
      iwlwifi: return whether to stop from rfkill method · 14cfca71
      Johannes Berg 提交于
      When indicating RF-kill toggle to the higher layer, that
      may in turn call back to the transport (for MVM at least)
      to turn off the device quickly. Instead of that, allow it
      to return whether or not the device should be turned off,
      this gets rid of the call indirection and will help make
      the API more consistent when we go back to non-threaded
      interrupts again for PCIe.
      Signed-off-by: NJohannes Berg <johannes.berg@intel.com>
      Signed-off-by: NEmmanuel Grumbach <emmanuel.grumbach@intel.com>
      14cfca71
    • A
      iwlwifi: pcie: enable LP XTAL to reduce power consumption · a812cba9
      Alexander Bondar 提交于
      1. Enable LP XTAL to avoid HW bug where device may consume much
      power if FW is not loaded after device reset. LP XTAL is
      disabled by default after device HW reset. Configure device's
      "persistence" mode to avoid resetting XTAL again when SHRD_HW_RST
      occurs in S3.
      
      2. Add methods to access SHR (shared block memory space) directly from PCI
      bus w/o need to power up MAC HW.
      
      Shared internal registers (e.g. SHR_APMG_GP1, SHR_APMG_XTAL_CFG)can be
      accessed directly from PCI bus through SHR arbiter even when MAC HW is
      powered down. This is possible due to indirect read/write via
      HEEP_CTRL_WRD_PCIEX_CTRL (0xEC) and HEEP_CTRL_WRD_PCIEX_DATA (0xF4)
      registers.
      
      Use iwl_write32()/iwl_read32() family to access these registers. The MAC HW
      need not be powered up so no "grab inc access" is required.
      
      For example, to read from SHR_APMG_GP1 register (0x1DC),
      first, write to the control register:
      HEEP_CTRL_WRD_PCIEX_CTRL[15:0] = 0x1DC (offset of the SHR_APMG_GP1 register)
      HEEP_CTRL_WRD_PCIEX_CTRL[29:28] = 2 (read access)
      second, read from the data register HEEP_CTRL_WRD_PCIEX_DATA[31:0].
      
      To write the register, first, write to the data register
      HEEP_CTRL_WRD_PCIEX_DATA[31:0] and then:
      HEEP_CTRL_WRD_PCIEX_CTRL[15:0] = 0x1DC (offset of the SHR_APMG_GP1 register)
      HEEP_CTRL_WRD_PCIEX_CTRL[29:28] = 3 (write access)
      Signed-off-by: NAlexander Bondar <alexander.bondar@intel.com>
      Signed-off-by: NEmmanuel Grumbach <emmanuel.grumbach@intel.com>
      a812cba9
  13. 04 2月, 2014 6 次提交
  14. 14 1月, 2014 1 次提交
  15. 01 1月, 2014 4 次提交
  16. 22 12月, 2013 1 次提交
  17. 18 12月, 2013 4 次提交
  18. 26 11月, 2013 1 次提交
    • E
      iwlwifi: pcie: fix interrupt coalescing for 7260 / 3160 · 6960a059
      Emmanuel Grumbach 提交于
      We changed the timeout for the interrupt coealescing for
      calibration, but that wasn't effective since we changed
      that value back before loading the firmware. Since
      calibrations are notification from firmware and not Rx
      packets, this doesn't change anyway - the firmware will
      fire an interrupt straight away regardless of the interrupt
      coalescing value.
      Also, a HW issue has been discovered in 7000 devices series.
      The work around is to disable the new interrupt coalescing
      timeout feature - do this by setting bit 31 in
      CSR_INT_COALESCING.
      This has been fixed in 7265 which means that we can't rely
      on the device family and must have a hint in the iwl_cfg
      structure.
      
      Cc: stable@vger.kernel.org [3.10+]
      Fixes: 99cd4714 ("iwlwifi: add 7000 series device configuration")
      Reviewed-by: NJohannes Berg <johannes.berg@intel.com>
      Signed-off-by: NEmmanuel Grumbach <emmanuel.grumbach@intel.com>
      6960a059