Skip to content
Permalink
Emmanuel-Grumb…
Switch branches/tags

Commits on Apr 12, 2021

  1. iwlwifi: integrate with iwlmei

    This allows to cooperate with iwlmei.
    
    Co-Developed-by: Ayala Beker <ayala.beker@intel.com>
    Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
    Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
    egrumbach authored and intel-lab-lkp committed Apr 12, 2021
  2. iwlwifi: mei: add the driver to allow cooperation with CSME

    iwlmei is a driver that handles the communication with the
    Wireless driver of the CSME firmware.
    More details in the documentation included in this patch.
    
    Co-Developed-by: Ayala Beker <ayala.beker@intel.com>
    Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
    Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
    egrumbach authored and intel-lab-lkp committed Apr 12, 2021
  3. mei: bus: add client dma interface

    Expose the client dma mapping via mei client bus interface.
    The client dma has to be mapped before the device is enabled,
    therefore we need to create device linking already during mapping
    and we need to unmap after the client is disable hence we need to
    postpone the unlink and flush till unmapping or when
    destroying the device.
    
    Signed-off-by: Alexander Usyskin <alexander.usyskin@intel.com>
    Co-developed-by: Tomas Winkler <tomas.winkler@intel.com>
    Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
    Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
    Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
    ausyskin authored and intel-lab-lkp committed Apr 12, 2021

Commits on Apr 11, 2021

  1. iwlegacy: avoid -Wempty-body warning

    There are a couple of warnings in this driver when building with W=1:
    
    drivers/net/wireless/intel/iwlegacy/common.c: In function 'il_power_set_mode':
    drivers/net/wireless/intel/iwlegacy/common.c:1195:60: error: suggest braces around empty body in an 'if' statement [-Werror=empty-body]
     1195 |                                 il->chain_noise_data.state);
          |                                                            ^
    drivers/net/wireless/intel/iwlegacy/common.c: In function 'il_do_scan_abort':
    drivers/net/wireless/intel/iwlegacy/common.c:1343:57: error: suggest braces around empty body in an 'else' statement [-Werror=empty-body]
    
    Change the empty debug macros to no_printk(), which avoids the
    warnings and adds useful format string checks.
    
    Signed-off-by: Arnd Bergmann <arnd@arndb.de>
    Acked-by: Stanislaw Gruszka <stf_xl@wp.pl>
    Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
    Link: https://lore.kernel.org/r/20210322104343.948660-3-arnd@kernel.org
    arndb authored and Kalle Valo committed Apr 11, 2021
  2. mt7601u: enable TDLS support

    Notify mac80211 the mt7601u chipset support 802.11 TDLS. The feature has
    been tested with a mt7610u peer.
    
    Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org>
    Acked-by: Jakub Kicinski <kuba@kernel.org>
    Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
    Link: https://lore.kernel.org/r/8f9fd662cdbbb70ba896f1bea80e696b15011d3f.1614536496.git.lorenzo@kernel.org
    LorenzoBianconi authored and Kalle Valo committed Apr 11, 2021
  3. mt7601u: fix always true expression

    Currently the expression ~nic_conf1 is always true because nic_conf1
    is a u16 and according to 6.5.3.3 of the C standard the ~ operator
    promotes the u16 to an integer before flipping all the bits. Thus
    the top 16 bits of the integer result are all set so the expression
    is always true.  If the intention was to flip all the bits of nic_conf1
    then casting the integer result back to a u16 is a suitabel fix.
    
    Interestingly static analyzers seem to thing a bitwise ! should be
    used instead of ~ for this scenario, so I think the original intent
    of the expression may need some extra consideration.
    
    Addresses-Coverity: ("Logical vs. bitwise operator")
    Fixes: c869f77 ("add mt7601u driver")
    Signed-off-by: Colin Ian King <colin.king@canonical.com>
    Acked-by: Jakub Kicinski <kubakici@wp.pl>
    Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
    Link: https://lore.kernel.org/r/20210225183241.1002129-1-colin.king@canonical.com
    Colin Ian King authored and Kalle Valo committed Apr 11, 2021
  4. rtw88: Fix an error code in rtw_debugfs_set_rsvd_page()

    The sscanf() function returns the number of matches (0 or 1 in this
    case).  It doesn't return error codes.  We should return -EINVAL if the
    string is invalid
    
    Fixes: c376c1f ("rtw88: add h2c command in debugfs")
    Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
    Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
    Link: https://lore.kernel.org/r/YE8nmatMDBDDWkjq@mwanda
    error27 authored and Kalle Valo committed Apr 11, 2021
  5. rtw88: coex: fix A2DP stutters while WL busy + WL scan

    While WL scan, WL is more high priority than BT. The packets from AP
    will be a big interference to A2DP. It will lead to A2DP stutters. Stop
    answering CTS to AP to decrease AP's packets Tx while WL scan + WL busy.
    Enable BT AFH feature to make BT leave away from WL channel.
    
    Desired BT firmware BT-COEX version: 0x1c
    Desired WL firmware version: 9.9.x
    
    Signed-off-by: Ching-Te Ku <ku920601@realtek.com>
    Signed-off-by: Ping-Ke Shih <pkshih@realtek.com>
    Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
    Link: https://lore.kernel.org/r/20210319054218.3319-8-pkshih@realtek.com
    Ching-Te Ku authored and Kalle Valo committed Apr 11, 2021
  6. rtw88: 8822c: add LC calibration for RTL8822C

    Fix power tracking issue by replacing unnecessary IQ calibration
    with LC calibration.
    When thermal difference exceeds limitation, let RF circuit adjsut
    its characteristic to fit in current environment.
    
    Signed-off-by: Po-Hao Huang <phhuang@realtek.com>
    Signed-off-by: Ping-Ke Shih <pkshih@realtek.com>
    Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
    Link: https://lore.kernel.org/r/20210319054218.3319-6-pkshih@realtek.com
    Po-Hao Huang authored and Kalle Valo committed Apr 11, 2021
  7. rtw88: 8822c: update tx power limit table to RF v40.1

    update tx power limits to RF v40 and apply fix on FCC's channel 12 and 13,
    so change the patch level to 1.
    
    Signed-off-by: Zong-Zhe Yang <kevin_yang@realtek.com>
    Signed-off-by: Ping-Ke Shih <pkshih@realtek.com>
    Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
    Link: https://lore.kernel.org/r/20210319054218.3319-5-pkshih@realtek.com
    Zong-Zhe Yang authored and Kalle Valo committed Apr 11, 2021
  8. rtw88: fix DIG min setting

    DIG min is expected to be set according to chip. And actually we assigned
    it under each chip information. However, we didn't use the setting when we
    did DIG process. It is unexpected, so we fix it.
    
    Signed-off-by: Zong-Zhe Yang <kevin_yang@realtek.com>
    Signed-off-by: Ping-Ke Shih <pkshih@realtek.com>
    Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
    Link: https://lore.kernel.org/r/20210319054218.3319-4-pkshih@realtek.com
    Zong-Zhe Yang authored and Kalle Valo committed Apr 11, 2021
  9. rtw88: add flush hci support

    Though mac queue flushing has been supported, sometimes data may be waiting
    on interface from host to chip. If it occurs, there may still be data that
    flows into mac just after we do flush. To avoid that, we add the hci part
    of flushing.
    
    Signed-off-by: Zong-Zhe Yang <kevin_yang@realtek.com>
    Signed-off-by: Ping-Ke Shih <pkshih@realtek.com>
    Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
    Link: https://lore.kernel.org/r/20210319054218.3319-2-pkshih@realtek.com
    Zong-Zhe Yang authored and Kalle Valo committed Apr 11, 2021

Commits on Mar 15, 2021

  1. rtw88: 8822c: support FW crash dump when FW crash

    Although FW crash logs are already supported for dumping in driver, the
    logs may not be sufficient to analyze field issues. To improve this part,
    we add a support to dump FW memory.
    
    When driver receives FW crash notifications, driver uses DDMA, which is a
    HW ability, to copy specified FW memory to FW fifo. Driver can then dump
    these information from FW fifo. With this support, not only FW crash log
    but also specified FW memory will be dumped while FW crash. Besides,
    specified registers are also dumped.
    
    This feature is implemeted on 8822C first due to difference of FW layouts
    between ICs. In addition, we add a debugfs to trigger FW crash. It can
    simulate the process of crash, dump and reset. Through it, we can also
    check if a reset is ongoing.
    
    Signed-off-by: Zong-Zhe Yang <kevin_yang@realtek.com>
    Signed-off-by: Ping-Ke Shih <pkshih@realtek.com>
    Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
    Link: https://lore.kernel.org/r/20210309060121.9099-1-pkshih@realtek.com
    Zong-Zhe Yang authored and Kalle Valo committed Mar 15, 2021
  2. wilc1000: use wilc handler as cookie in request_threaded_irq()

    Use same cookie for request_threaded_irq() & free_irq() to properly free
    IRQ during module unload. free_irq() already uses *wilc* handler so the
    changes are required for request_threaded_irq().
    
    Signed-off-by: Ajay Singh <ajay.kathat@microchip.com>
    Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
    Link: https://lore.kernel.org/r/20210225042302.17048-1-ajay.kathat@microchip.com
    ajaykathat authored and Kalle Valo committed Mar 15, 2021
  3. wilc1000: write value to WILC_INTR2_ENABLE register

    Write the value instead of reading it twice.
    
    Fixes: c5c77ba ("staging: wilc1000: Add SDIO/SPI 802.11 driver")
    Signed-off-by: Marcus Folkesson <marcus.folkesson@gmail.com>
    Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
    Link: https://lore.kernel.org/r/20210224163706.519658-1-marcus.folkesson@gmail.com
    marcusfolkesson authored and Kalle Valo committed Mar 15, 2021
  4. wilc1000: Support chip sleep over SPI

    chip_allow_sleep() only supported wakeup via SDIO, which made the
    driver unusable over SPI.  This code is a straight forward port from
    the driver in the linux-at91 repository.
    
    Signed-off-by: David Mosberger-Tang <davidm@egauge.net>
    Acked-by: Ajay Singh <ajay.kathat@microchip.com>
    Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
    Link: https://lore.kernel.org/r/20210224033317.1507603-1-davidm@egauge.net
    dmosberger authored and Kalle Valo committed Mar 15, 2021
  5. rtw88: remove unnecessary variable

    The variable ret is defined at the beginning and initialized
    to 0 until the function returns ret, and the variable ret is
    not reassigned.Therefore, we do not need to define the variable
    ret, just return 0 directly at the end of the function.
    
    Signed-off-by: wengjianfeng <wengjianfeng@yulong.com>
    Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
    Link: https://lore.kernel.org/r/20210223075438.13676-1-samirweng1979@163.com
    wengjianfeng authored and Kalle Valo committed Mar 15, 2021
  6. rtw88: coex: add power off setting

    Clear WL/BT on/off bit in scoreboard register that is used to exchange
    WL/BT status. Since the status is preserved after warm reboot, we must
    clear it when WL is going to down.
    
    Signed-off-by: Ping-Ke Shih <pkshih@realtek.com>
    Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
    Link: https://lore.kernel.org/r/20210219054140.7835-1-pkshih@realtek.com
    Ping-Ke Shih authored and Kalle Valo committed Mar 15, 2021
  7. Merge ath-next from git://git.kernel.org/pub/scm/linux/kernel/git/kva…

    …lo/ath.git
    
    ath.git patches for v5.13. Major changes:
    
    ath11k
    
    * add initial support for QCN9074, but not enabled yet due to firmware problems
    
    * enable radar detection for 160MHz secondary segment
    
    * handle beacon misses in station mode
    Kalle Valo committed Mar 15, 2021

Commits on Mar 14, 2021

  1. Merge branch 'psample-Add-additional-metadata-attributes'

    Ido Schimmel says:
    
    ====================
    psample: Add additional metadata attributes
    
    This series extends the psample module to expose additional metadata to
    user space for packets sampled via act_sample. The new metadata (e.g.,
    transit delay) can then be consumed by applications such as hsflowd [1]
    for better network observability.
    
    netdevsim is extended with a dummy psample implementation that
    periodically reports "sampled" packets to the psample module. In
    addition to testing of the psample module, it enables the development
    and demonstration of user space applications (e.g., hsflowd) that are
    interested in the new metadata even without access to specialized
    hardware (e.g., Spectrum ASIC) that can provide it.
    
    mlxsw is also extended to provide the new metadata to psample.
    
    A Wireshark dissector for psample netlink packets [2] will be submitted
    upstream after the kernel patches are accepted. In addition, a libpcap
    capture module for psample is currently in the works. Eventually, users
    should be able to run:
    
     # tshark -i psample
    
    In order to consume sampled packets along with their metadata.
    
    Series overview:
    
    Patch #1 makes it easier to extend the metadata provided to psample
    
    Patch #2 adds the new metadata attributes to psample
    
    Patch #3 extends netdevsim to periodically report "sampled" packets to
    psample. Various debugfs knobs are added to control the reporting
    
    Patch #4 adds a selftest over netdevsim
    
    Patches #5-torvalds#10 gradually add support for the new metadata in mlxsw
    
    Patch torvalds#11 adds a selftest over mlxsw
    
    [1] https://sflow.org/draft4_sflow_transit.txt
    [2] https://gitlab.com/amitcohen1/wireshark/-/commit/3d711143024e032aef1b056dd23f0266c54fab56
    ====================
    
    Signed-off-by: David S. Miller <davem@davemloft.net>
    davem330 committed Mar 14, 2021
  2. selftests: mlxsw: Add tc sample tests

    Test that packets are sampled when tc-sample is used and that reported
    metadata is correct. Two sets of hosts (with and without LAG) are used,
    since metadata extraction in mlxsw is a bit different when LAG is
    involved.
    
     # ./tc_sample.sh
     TEST: tc sample rate (forward)                                      [ OK ]
     TEST: tc sample rate (local receive)                                [ OK ]
     TEST: tc sample maximum rate                                        [ OK ]
     TEST: tc sample group conflict test                                 [ OK ]
     TEST: tc sample iif                                                 [ OK ]
     TEST: tc sample lag iif                                             [ OK ]
     TEST: tc sample oif                                                 [ OK ]
     TEST: tc sample lag oif                                             [ OK ]
     TEST: tc sample out-tc                                              [ OK ]
     TEST: tc sample out-tc-occ                                          [ OK ]
    
    Signed-off-by: Ido Schimmel <idosch@nvidia.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    idosch authored and davem330 committed Mar 14, 2021
  3. mlxsw: spectrum: Report extra metadata to psample module

    Make use of the previously added metadata and report it to the psample
    module. The metadata is read from the skb's control block, which was
    initialized by the bus driver (i.e., 'mlxsw_pci') after decoding the
    packet's Completion Queue Element (CQE).
    
    Signed-off-by: Ido Schimmel <idosch@nvidia.com>
    Reviewed-by: Jiri Pirko <jiri@nvidia.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    idosch authored and davem330 committed Mar 14, 2021
  4. mlxsw: spectrum: Remove mlxsw_sp_sample_receive()

    The function resolves the psample sampling group from the Rx port
    because this is the only form of sampling the driver currently supports.
    Subsequent patches are going to add support for Tx-based and
    policy-based sampling, in which case the sampling group would not be
    resolved from the Rx port.
    
    Therefore, move this code to the Rx-specific sampling listener.
    
    Signed-off-by: Ido Schimmel <idosch@nvidia.com>
    Reviewed-by: Jiri Pirko <jiri@nvidia.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    idosch authored and davem330 committed Mar 14, 2021
  5. mlxsw: spectrum: Remove unnecessary RCU read-side critical section

    Since commit 7d8e8f3 ("mlxsw: core: Increase scope of RCU read-side
    critical section"), all Rx handlers are called from an RCU read-side
    critical section.
    
    Remove the unnecessary rcu_read_lock() / rcu_read_unlock().
    
    Signed-off-by: Ido Schimmel <idosch@nvidia.com>
    Reviewed-by: Jiri Pirko <jiri@nvidia.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    idosch authored and davem330 committed Mar 14, 2021
  6. mlxsw: pci: Set extra metadata in skb control block

    Packets that are mirrored / sampled to the CPU have extra metadata
    encoded in their corresponding Completion Queue Element (CQE). Retrieve
    this metadata from the CQE and set it in the skb control block so that
    it could be accessed by the switch driver (i.e., 'mlxsw_spectrum').
    
    Signed-off-by: Ido Schimmel <idosch@nvidia.com>
    Reviewed-by: Jiri Pirko <jiri@nvidia.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    idosch authored and davem330 committed Mar 14, 2021
  7. mlxsw: Create dedicated field for Rx metadata in skb control block

    Next patch will need to encode more Rx metadata in the skb control
    block, so create a dedicated field for it and move the cookie index
    there.
    
    Signed-off-by: Ido Schimmel <idosch@nvidia.com>
    Reviewed-by: Jiri Pirko <jiri@nvidia.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    idosch authored and davem330 committed Mar 14, 2021
  8. mlxsw: pci: Add more metadata fields to CQEv2

    The Completion Queue Element version 2 (CQEv2) includes various metadata
    fields for packets that are mirrored / sampled to the CPU.
    
    Add these fields so that they could be used by a later patch.
    
    Signed-off-by: Ido Schimmel <idosch@nvidia.com>
    Reviewed-by: Jiri Pirko <jiri@nvidia.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    idosch authored and davem330 committed Mar 14, 2021
  9. selftests: netdevsim: Test psample functionality

    Test various aspects of psample functionality over netdevsim and in
    particular test that the psample module correctly reports the provided
    metadata.
    
    Example:
    
     # ./psample.sh
     TEST: psample enable / disable                                      [ OK ]
     TEST: psample group number                                          [ OK ]
     TEST: psample metadata                                              [ OK ]
    
    Signed-off-by: Ido Schimmel <idosch@nvidia.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    idosch authored and davem330 committed Mar 14, 2021
  10. netdevsim: Add dummy psample implementation

    Allow netdevsim to report "sampled" packets to the psample module by
    periodically generating packets from a work queue. The behavior can be
    enabled / disabled (default) and the various meta data attributes can be
    controlled via debugfs knobs.
    
    This implementation enables both testing of the psample module with all
    the optional attributes as well as development of user space
    applications on top of psample such as hsflowd and a Wireshark dissector
    for psample generic netlink packets.
    
    Signed-off-by: Ido Schimmel <idosch@nvidia.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    idosch authored and davem330 committed Mar 14, 2021
  11. psample: Add additional metadata attributes

    Extend psample to report the following attributes when available:
    
    * Output traffic class as a 16-bit value
    * Output traffic class occupancy in bytes as a 64-bit value
    * End-to-end latency of the packet in nanoseconds resolution
    * Software timestamp in nanoseconds resolution (always available)
    * Packet's protocol. Needed for packet dissection in user space (always
      available)
    
    Signed-off-by: Ido Schimmel <idosch@nvidia.com>
    Reviewed-by: Jiri Pirko <jiri@nvidia.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    idosch authored and davem330 committed Mar 14, 2021
  12. psample: Encapsulate packet metadata in a struct

    Currently, callers of psample_sample_packet() pass three metadata
    attributes: Ingress port, egress port and truncated size. Subsequent
    patches are going to add more attributes (e.g., egress queue occupancy),
    which also need an indication whether they are valid or not.
    
    Encapsulate packet metadata in a struct in order to keep the number of
    arguments reasonable.
    
    Signed-off-by: Ido Schimmel <idosch@nvidia.com>
    Reviewed-by: Jiri Pirko <jiri@nvidia.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    idosch authored and davem330 committed Mar 14, 2021
  13. Merge branch 'skbuff-micro-optimize-flow-dissection'

    Alexander Lobakin says:
    
    ====================
    skbuff: micro-optimize flow dissection
    
    This little number makes all of the flow dissection functions take
    raw input data pointer as const (1-5) and shuffles the branches in
    __skb_header_pointer() according to their hit probability.
    
    The result is +20 Mbps per flow/core with one Flow Dissector pass
    per packet. This affects RPS (with software hashing), drivers that
    use eth_get_headlen() on their Rx path and so on.
    
    From v2 [1]:
     - reword some commit messages as a potential fix for NIPA;
     - no functional changes.
    
    From v1 [0]:
     - rebase on top of the latest net-next. This was super-weird, but
       I double-checked that the series applies with no conflicts, and
       then on Patchwork it didn't;
     - no other changes.
    
    [0] https://lore.kernel.org/netdev/20210312194538.337504-1-alobakin@pm.me
    [1] https://lore.kernel.org/netdev/20210313113645.5949-1-alobakin@pm.me
    ====================
    
    Signed-off-by: David S. Miller <davem@davemloft.net>
    davem330 committed Mar 14, 2021
  14. skbuff: micro-optimize {,__}skb_header_pointer()

    {,__}skb_header_pointer() helpers exist mainly for preventing
    accesses-beyond-end of the linear data.
    In the vast majorify of cases, they bail out on the first condition.
    All code going after is mostly a fallback.
    Mark the most common branch as 'likely' one to move it in-line.
    Also, skb_copy_bits() can return negative values only when the input
    arguments are invalid, e.g. offset is greater than skb->len. It can
    be safely marked as 'unlikely' branch, assuming that hotpath code
    provides sane input to not fail here.
    
    These two bump the throughput with a single Flow Dissector pass on
    every packet (e.g. with RPS or driver that uses eth_get_headlen())
    on 20 Mbps per flow/core.
    
    Signed-off-by: Alexander Lobakin <alobakin@pm.me>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    solbjorn authored and davem330 committed Mar 14, 2021
  15. ethernet: constify eth_get_headlen()'s data argument

    It's used only for flow dissection, which now takes constant data
    pointers.
    
    Signed-off-by: Alexander Lobakin <alobakin@pm.me>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    solbjorn authored and davem330 committed Mar 14, 2021
  16. linux/etherdevice.h: misc trailing whitespace cleanup

    Caught by the text editor. Fix it separately from the actual changes.
    
    Signed-off-by: Alexander Lobakin <alobakin@pm.me>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    solbjorn authored and davem330 committed Mar 14, 2021
Older