1. 16 12月, 2015 1 次提交
    • S
      iwlwifi: mvm: change protocol offload flows · c97dab40
      Sara Sharon 提交于
      RFC4862 states that "In all cases, a node MUST NOT respond to
      a Neighbor Solicitation for a tentative address".
      Currently the driver configures the NS offload and does not wait
      for address to become permanent, thus violating the RFC.
      Just removing the address from the address list is not good enough
      for all cases, since the NS messages are needed for the duplicate
      address detection and should not be discarded.
      
      For d0i3 disable NS offload. Put tentative address in the address
      list so the NS packet will not be filtered out by ucode.
      For D3 the platform will not wake from NS packets - so enable
      NS offload while removing the tentative address from the list.
      
      Given that now NS offload might be disabled, and that the ucode
      uses the IP data for other puroposes (L3 filtering) add two
      independent flags indicating if IPv4\IPv6 data is valid.
      Signed-off-by: NSara Sharon <sara.sharon@intel.com>
      Signed-off-by: NEmmanuel Grumbach <emmanuel.grumbach@intel.com>
      c97dab40
  2. 13 12月, 2015 3 次提交
    • L
      iwlwifi: replace d0i3_mode and wowlan_d0i3 with more generic variables · b7282643
      Luca Coelho 提交于
      The d0i3_mode variable is used to distinguish between transports that
      handle d0i3 entry during suspend by themselves (i.e. the slave
      transports) and those which rely on the op_mode layer to do it.  The
      reason why the former do it by themselves is that they need to
      transition from d0i3 in runtime_suspend into d0i3 in system-wide
      suspend and this transition needs to happen before the op_mode's
      suspend flow is called.
      
      The wowlan_d0i3 element is also a bit confusing, because it just
      reflects the wowlan->any value for the trans to understand.  This is a
      bit unclear in the code and not generic enough for future use.
      
      To make it clearer and to generalize the platform power mode settings,
      introduce two variables to indicate the platform power management
      modes used by the transport.
      
      Additionally, in order not to take too big a step in one patch, treat
      this new variables semantically in the same way as the old d0i3_mode
      element, introducing a iwl_mvm_enter_d0i3_on_suspend() function to
      help with that.
      
      This commit also adds the foundation for a new concept where the
      firmware configuration state (i.e. D0, D3 or D0i3) is abstracted from
      the platform PM mode we are in (i.e. runtime suspend or system-wide
      suspend).
      Signed-off-by: NLuca Coelho <luciano.coelho@intel.com>
      Signed-off-by: NEmmanuel Grumbach <emmanuel.grumbach@intel.com>
      b7282643
    • E
      iwlwifi: avoid d0i3 commands when no/init ucode is loaded · 08f0d23d
      Eliad Peller 提交于
      d0i3 commands are not supported in the init image, so take
      a reference to ensure we don't enter d0i3 during init image,
      and additional checks to prevent d0i3 commands when no
      fw image is loaded.
      
      Add a few WARN_ON_ONCE to the d0i3 enter/exit commands
      to ensure we send d0i3 commands only when the normal
      ucode is loaded.
      Signed-off-by: NEliad Peller <eliadx.peller@intel.com>
      Signed-off-by: NEmmanuel Grumbach <emmanuel.grumbach@intel.com>
      08f0d23d
    • A
      iwlwifi: mvm: configure scheduled scan according to traffic conditions · 355346ba
      Avraham Stern 提交于
      Change scan configuration (dwell time, suspend time etc.) according
      to traffic conditions. This is useful for scans that are managed by
      the FW (e.g. scheduled scan).
      Signed-off-by: NAvraham Stern <avraham.stern@intel.com>
      Signed-off-by: NEmmanuel Grumbach <emmanuel.grumbach@intel.com>
      355346ba
  3. 02 12月, 2015 2 次提交
  4. 26 11月, 2015 8 次提交
  5. 18 11月, 2015 1 次提交
  6. 25 10月, 2015 1 次提交
  7. 05 10月, 2015 6 次提交
  8. 04 10月, 2015 1 次提交
  9. 28 8月, 2015 3 次提交
  10. 16 8月, 2015 1 次提交
  11. 05 8月, 2015 3 次提交
    • O
      iwlwifi: mvm: add the ability to trigger only monitor dumps · 36fb9017
      Oren Givon 提交于
      Change the FW debug trigger tlv to include a monitor only
      option. Setting this option to true will cause fw dump triggers
      to only collect monitor data and skip other dumps such as
      SMEM, SRAM, CSR, PRPH, etc.
      This option is used when accessing the different parts of the
      firmware memory is not wanted and can cause unwanted behavior
      like when debugging TX latency.
      Signed-off-by: NOren Givon <oren.givon@intel.com>
      Signed-off-by: NEmmanuel Grumbach <emmanuel.grumbach@intel.com>
      36fb9017
    • M
      iwlwifi: mvm: Add FW paging mechanism for the UMAC on PCI · a6c4fb44
      Matti Gottlieb 提交于
      Family 8000 products has 2 embedded processors, the first
      known as LMAC (lower MAC) and implements the functionality from
      previous products, the second one is known as UMAC (upper MAC)
      and is used mainly for driver offloads as well as new features.
      The UMAC is typically “less” real-time than the LMAC and is used
      for higher level controls.
      The UMAC's code/data size is estimated to be in the mega-byte arena,
      taking into account the code it needs to replace in the driver and
      the set of new features.
      
      In order to allow the UMAC to execute code that is bigger than its code
      memory, we allow the UMAC embedded processor to page out code pages on
      DRAM.
      
      When the device is master on the bus(PCI) the driver saves the UMAC's
      image pages in blocks of 32K in the DRAM and sends the layout of the
      pages to the FW. The FW can load / unload the pages on its own.
      
      The driver can support up to 1 MB of pages.
      
      Add paging mechanism for the UMAC on PCI in order to allow the program
      to use a larger virtual space while using less physical memory on the
      device.
      Signed-off-by: NEran Harary <eran.harary@intel.com>
      Signed-off-by: NMatti Gottlieb <matti.gottlieb@intel.com>
      Signed-off-by: NEmmanuel Grumbach <emmanuel.grumbach@intel.com>
      a6c4fb44
    • J
      iwlwifi: mvm: move TX PN assignment for CCMP to the driver · ca8c0f4b
      Johannes Berg 提交于
      Move the TX PN assignment (for CCMP only) to the driver. This prepares
      the driver for future DSO (driver segmentation offload) where it will
      split an SKB into multiple MPDUs by itself.
      
      For TDLS, split out the CCMP TX command handling so that it won't get
      a PN assigned, the firmware assigns the PN in that case.
      Signed-off-by: NJohannes Berg <johannes.berg@intel.com>
      Signed-off-by: NEmmanuel Grumbach <emmanuel.grumbach@intel.com>
      ca8c0f4b
  12. 04 8月, 2015 6 次提交
  13. 17 7月, 2015 1 次提交
    • J
      mac80211: don't store napi struct · af9f9b22
      Johannes Berg 提交于
      When introducing multiple RX queues, a single NAPI struct will not
      be sufficient. Instead of trying to store multiple, simply change
      the API to have the NAPI struct passed to the RX function. This of
      course means that drivers using rx_irqsafe() cannot use NAPI, but
      that seems a reasonable trade-off, particularly since only two of
      all drivers are currently using it at all.
      
      While at it, we can now remove the IEEE80211_RX_REORDER_TIMER flag
      again since this code path cannot have a napi struct anyway.
      Signed-off-by: NJohannes Berg <johannes.berg@intel.com>
      af9f9b22
  14. 03 6月, 2015 2 次提交
  15. 28 5月, 2015 1 次提交