1. 27 3月, 2020 2 次提交
    • L
      iwlwifi: move integrated, extra_phy and soc_latency to trans_cfg · 7897dfa2
      Luca Coelho 提交于
      These values are selected based on the PCI device ID, so the decision
      to use them can be made early.  By moving them to the trans_cfg, we
      avoid duplicating the large cfg structs for small pieces of
      data (sometimes a single boolean).  This will also allow us to make
      more decisions based on, for instance, the SoC type in used.
      
      The trans_cfg concept changes a bit, because previously it was used
      only to boot the device before reading further characteristics and now
      it also contains more data that is associated with the device ID.
      
      Change-Id: Ib71b07ea9e322eb74571dc5e8aa58f17eece5c9c
      Signed-off-by: NLuca Coelho <luciano.coelho@intel.com>
      7897dfa2
    • L
      iwlwifi: pcie: implement read_config32 · 7f1fe1d4
      Luca Coelho 提交于
      Add the read_config32 op to allow dumping the config space when
      needed.
      
      Change-Id: Ib2d254a38a4bfb95dcc3d04eec91781827a0c623
      Signed-off-by: NLuca Coelho <luciano.coelho@intel.com>
      7f1fe1d4
  2. 24 12月, 2019 2 次提交
    • L
      iwlwifi: pcie: always disable L0S states · cc894b85
      Luca Coelho 提交于
      L0S states have been found to be unstable with our devices and in
      newer hardware they are not supported at all, so we must always set
      the L0S_DISABLED bit.  Previously we were only disabling L0S states if
      L1 was supported, because the assumption was that transitions from L0S
      to L1 state was the problematic case.  But now we should never use
      L0S, so do it regardless of whether L1 is supported or not.
      Signed-off-by: NLuca Coelho <luciano.coelho@intel.com>
      cc894b85
    • L
      iwlwifi: pcie: rename L0S_ENABLED bit to L0S_DISABLED · 3d1b28fd
      Luca Coelho 提交于
      This bit has been misnamed since the initial implementation of the
      driver.  The correct semantics is that setting this bit disables L0S
      states, and we already clearly use it as such in the code.  Rename it
      to avoid confusion.
      Signed-off-by: NLuca Coelho <luciano.coelho@intel.com>
      3d1b28fd
  3. 23 12月, 2019 4 次提交
  4. 10 12月, 2019 1 次提交
  5. 15 11月, 2019 2 次提交
  6. 25 10月, 2019 3 次提交
  7. 09 10月, 2019 2 次提交
    • J
      iwlwifi: pcie: fix rb_allocator workqueue allocation · 8188a18e
      Johannes Berg 提交于
      We don't handle failures in the rb_allocator workqueue allocation
      correctly. To fix that, move the code earlier so the cleanup is
      easier and we don't have to undo all the interrupt allocations in
      this case.
      Signed-off-by: NJohannes Berg <johannes.berg@intel.com>
      Signed-off-by: NLuca Coelho <luciano.coelho@intel.com>
      8188a18e
    • J
      iwlwifi: pcie: fix indexing in command dump for new HW · 08326a97
      Johannes Berg 提交于
      We got a crash in iwl_trans_pcie_get_cmdlen(), while the TFD was
      being accessed to sum up the lengths.
      
      We want to access the TFD here, which is the information for the
      hardware. We always only allocate 32 buffers for the cmd queue,
      but on newer hardware (using TFH) we can also allocate only a
      shorter hardware array, also only 32 TFDs. Prior to the TFH, we
      had to allocate a bigger TFD array but would make those point to
      a smaller set of buffers.
      
      Additionally, now max_tfd_queue_size is up to 65536, so we can
      access *way* out of bounds of a really only 32-entry array, so
      it crashes.
      
      Fix this by making the TFD index depend on which hardware we are
      using right now.
      
      While changing the calculation, also fix it to not use void ptr
      arithmetic, but cast to u8 * before.
      Signed-off-by: NJohannes Berg <johannes.berg@intel.com>
      Signed-off-by: NLuca Coelho <luciano.coelho@intel.com>
      08326a97
  8. 06 9月, 2019 18 次提交
  9. 29 8月, 2019 1 次提交
  10. 28 8月, 2019 1 次提交
  11. 20 8月, 2019 1 次提交
  12. 29 6月, 2019 3 次提交