1. 13 Mar, 2022 9 commits
  2. 12 Mar, 2022 23 commits
  3. 11 Mar, 2022 8 commits
    • Jakub Kicinski's avatar
      Merge tag 'wireless-next-2022-03-11' of... · 0b366069
      Jakub Kicinski authored
      Merge tag 'wireless-next-2022-03-11' of git://git.kernel.org/pub/scm/linux/kernel/git/wireless/wireless-next
      
      Johannes Berg says:
      
      ====================
      brcmfmac
       * add BCM43454/6 support
      
      rtw89
       * add support for 160 MHz channels and 6 GHz band
       * hardware scan support
      
      iwlwifi
       * support UHB TAS enablement via BIOS
       * remove a bunch of W=1 warnings
       * add support for channel switch offload
       * support 32 Rx AMPDU sessions in newer devices
       * add support for a couple of new devices
       * add support for band disablement via BIOS
      
      mt76
       * mt7915 thermal management improvements
       * SAR support for more mt76 drivers
       * mt7986 wmac support on mt7915
      
      ath11k
       * debugfs interface to configure firmware debug log level
       * debugfs interface to test Target Wake Time (TWT)
       * provide 802.11ax High Efficiency (HE) data via radiotap
      
      ath9k
       * use hw_random API instead of directly dumping into random.c
      
      wcn36xx
       * fix wcn3660 to work on 5 GHz band
      
      ath6kl
       * add device ID for WLU5150-D81
      
      cfg80211/mac80211
       * initial EHT (from 802.11be) support
         (EHT rates, 320 MHz, larger block-ack)
       * support disconnect on HW restart
      
      * tag 'wireless-next-2022-03-11' of git://git.kernel.org/pub/scm/linux/kernel/git/wireless/wireless-next: (247 commits)
        mac80211: Add support to trigger sta disconnect on hardware restart
        mac80211: fix potential double free on mesh join
        mac80211: correct legacy rates check in ieee80211_calc_rx_airtime
        nl80211: fix typo of NL80211_IF_TYPE_OCB in documentation
        mac80211: Use GFP_KERNEL instead of GFP_ATOMIC when possible
        mac80211: replace DEFINE_SIMPLE_ATTRIBUTE with DEFINE_DEBUGFS_ATTRIBUTE
        rtw89: 8852c: process logic efuse map
        rtw89: 8852c: process efuse of phycap
        rtw89: support DAV efuse reading operation
        rtw89: 8852c: add chip::dle_mem
        rtw89: add page_regs to handle v1 chips
        rtw89: add chip_info::{h2c,c2h}_reg to support more chips
        rtw89: add hci_func_en_addr to support variant generation
        rtw89: add power_{on/off}_func
        rtw89: read chip version depends on chip ID
        rtw89: pci: use a struct to describe all registers address related to DMA channel
        rtw89: pci: add V1 of PCI channel address
        rtw89: pci: add struct rtw89_pci_info
        rtw89: 8852c: add 8852c empty files
        MAINTAINERS: add devicetree bindings entry for mt76
        ...
      
      ====================
      
      Link: https://lore.kernel.org/r/20220311124029.213470-1-johannes@sipsolutions.netSigned-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      0b366069
    • Marcin Szycik's avatar
      ice: Support GTP-U and GTP-C offload in switchdev · 9a225f81
      Marcin Szycik authored
      Add support for creating filters for GTP-U and GTP-C in switchdev mode. Add
      support for parsing GTP-specific options (QFI and PDU type) and TEID.
      
      By default, a filter for GTP-U will be added. To add a filter for GTP-C,
      specify enc_dst_port = 2123, e.g.:
      
      tc filter add dev $GTP0 ingress prio 1 flower enc_key_id 1337 \
      enc_dst_port 2123 action mirred egress redirect dev $VF1_PR
      
      Note: GTP-U with outer IPv6 offload is not supported yet.
      Note: GTP-U with no payload offload is not supported yet.
      Signed-off-by: default avatarMarcin Szycik <marcin.szycik@linux.intel.com>
      Reviewed-by: default avatarMichal Swiatkowski <michal.swiatkowski@linux.intel.com>
      Tested-by: default avatarSandeep Penigalapati <sandeep.penigalapati@intel.com>
      Signed-off-by: default avatarTony Nguyen <anthony.l.nguyen@intel.com>
      9a225f81
    • Michal Swiatkowski's avatar
      ice: Fix FV offset searching · e5dd661b
      Michal Swiatkowski authored
      Checking only protocol ids while searching for correct FVs can lead to a
      situation, when incorrect FV will be added to the list. Incorrect means
      that FV has correct protocol id but incorrect offset.
      
      Call ice_get_sw_fv_list with ice_prot_lkup_ext struct which contains all
      protocol ids with offsets.
      
      With this modification allocating and collecting protocol ids list is
      not longer needed.
      Signed-off-by: default avatarMichal Swiatkowski <michal.swiatkowski@linux.intel.com>
      Tested-by: default avatarSandeep Penigalapati <sandeep.penigalapati@intel.com>
      Signed-off-by: default avatarTony Nguyen <anthony.l.nguyen@intel.com>
      e5dd661b
    • Wojciech Drewek's avatar
      gtp: Add support for checking GTP device type · 81dd9849
      Wojciech Drewek authored
      Add a function that checks if a net device type is GTP.
      Signed-off-by: default avatarWojciech Drewek <wojciech.drewek@intel.com>
      Reviewed-by: default avatarHarald Welte <laforge@gnumonks.org>
      Signed-off-by: default avatarTony Nguyen <anthony.l.nguyen@intel.com>
      81dd9849
    • Wojciech Drewek's avatar
      net/sched: Allow flower to match on GTP options · e3acda7a
      Wojciech Drewek authored
      Options are as follows: PDU_TYPE:QFI and they refernce to
      the fields from the  PDU Session Protocol. PDU Session data
      is conveyed in GTP-U Extension Header.
      
      GTP-U Extension Header is described in 3GPP TS 29.281.
      PDU Session Protocol is described in 3GPP TS 38.415.
      
      PDU_TYPE -  indicates the type of the PDU Session Information (4 bits)
      QFI      -  QoS Flow Identifier (6 bits)
      
        # ip link add gtp_dev type gtp role sgsn
        # tc qdisc add dev gtp_dev ingress
        # tc filter add dev gtp_dev protocol ip parent ffff: \
            flower \
              enc_key_id 11 \
              gtp_opts 1:8/ff:ff \
            action mirred egress redirect dev eth0
      Signed-off-by: default avatarWojciech Drewek <wojciech.drewek@intel.com>
      Signed-off-by: default avatarTony Nguyen <anthony.l.nguyen@intel.com>
      e3acda7a
    • Wojciech Drewek's avatar
      gtp: Implement GTP echo request · d33bd757
      Wojciech Drewek authored
      Adding GTP device through ip link creates the situation where
      GTP instance is not able to send GTP echo requests.
      Echo requests are used to check if GTP peer is still alive.
      With this patch, gtp_genl_ops are extended by new cmd (GTP_CMD_ECHOREQ)
      which allows to send echo request in the given version of GTP
      protocol (v0 or v1), from the given ms address to he given
      peer. TID is not inclued because in all path management
      messages it should be equal to 0.
      
      When GTP echo response is detected, multicast message is
      send to everyone in the gtp_genl_family. Message contains
      GTP version, ms address and peer address.
      Suggested-by: default avatarHarald Welte <laforge@gnumonks.org>
      Signed-off-by: default avatarWojciech Drewek <wojciech.drewek@intel.com>
      Reviewed-by: default avatarHarald Welte <laforge@gnumonks.org>
      Signed-off-by: default avatarTony Nguyen <anthony.l.nguyen@intel.com>
      d33bd757
    • Wojciech Drewek's avatar
      gtp: Implement GTP echo response · 9af41cc3
      Wojciech Drewek authored
      Adding GTP device through ip link creates the situation where
      there is no userspace daemon which would handle GTP messages
      (Echo Request for example). GTP-U instance which would not respond
      to echo requests would violate GTP specification.
      
      When GTP packet arrives with GTP_ECHO_REQ message type,
      GTP_ECHO_RSP is send to the sender. GTP_ECHO_RSP message
      should contain information element with GTPIE_RECOVERY tag and
      restart counter value. For GTPv1 restart counter is not used
      and should be equal to 0, for GTPv0 restart counter contains
      information provided from userspace(IFLA_GTP_RESTART_COUNT).
      Signed-off-by: default avatarWojciech Drewek <wojciech.drewek@intel.com>
      Suggested-by: default avatarHarald Welte <laforge@gnumonks.org>
      Reviewed-by: default avatarHarald Welte <laforge@gnumonks.org>
      Tested-by: default avatarHarald Welte <laforge@gnumonks.org>
      Signed-off-by: default avatarTony Nguyen <anthony.l.nguyen@intel.com>
      9af41cc3
    • Wojciech Drewek's avatar
      gtp: Allow to create GTP device without FDs · b20dc3c6
      Wojciech Drewek authored
      Currently, when the user wants to create GTP device, he has to
      provide file handles to the sockets created in userspace (IFLA_GTP_FD0,
      IFLA_GTP_FD1). This behaviour is not ideal, considering the option of
      adding support for GTP device creation through ip link. Ip link
      application is not a good place to create such sockets.
      
      This patch allows to create GTP device without providing
      IFLA_GTP_FD0 and IFLA_GTP_FD1 arguments. If the user sets
      IFLA_GTP_CREATE_SOCKETS attribute, then GTP module takes care
      of creating UDP sockets by itself. Sockets are created with the
      commonly known UDP ports used for GTP protocol (GTP0_PORT and
      GTP1U_PORT). In this case we don't have to provide encap_destroy
      because no extra deinitialization is needed, everything is covered
      by udp_tunnel_sock_release.
      
      Note: GTP instance created with only this change applied, does
      not handle GTP Echo Requests. This is implemented in the following
      patch.
      Signed-off-by: default avatarWojciech Drewek <wojciech.drewek@intel.com>
      Signed-off-by: default avatarTony Nguyen <anthony.l.nguyen@intel.com>
      b20dc3c6