Commit f43f0cd2 authored by Jakub Kicinski's avatar Jakub Kicinski
Browse files

Merge tag 'wireless-next-2022-05-03' of...

Merge tag 'wireless-next-2022-05-03' of git://git.kernel.org/pub/scm/linux/kernel/git/wireless/wireless-next

Kalle Valo says:

====================
wireless-next patches for v5.19

First set of patches for v5.19 and this is a big one. We have two new
drivers, a change in mac80211 STA API affecting most drivers and
ath11k getting support for WCN6750. And as usual lots of fixes and
cleanups all over.

Major changes:

new drivers
 - wfx: silicon labs devices
 - plfxlc: pureLiFi X, XL, XC devices

mac80211
 - host based BSS color collision detection
 - prepare sta handling for IEEE 802.11be Multi-Link Operation (MLO) support

rtw88
 - support TP-Link T2E devices

rtw89
 - support firmware crash simulation
 - preparation for 8852ce hardware support

ath11k
 - Wake-on-WLAN support for QCA6390 and WCN6855
 - device recovery (firmware restart) support for QCA6390 and WCN6855
 - support setting Specific Absorption Rate (SAR) for WCN6855
 - read country code from SMBIOS for WCN6855/QCA6390
 - support for WCN6750

wcn36xx
 - support for transmit rate reporting to user space

* tag 'wireless-next-2022-05-03' of git://git.kernel.org/pub/scm/linux/kernel/git/wireless/wireless-next: (228 commits)
  rtw89: 8852c: rfk: add DPK
  rtw89: 8852c: rfk: add IQK
  rtw89: 8852c: rfk: add RX DCK
  rtw89: 8852c: rfk: add RCK
  rtw89: 8852c: rfk: add TSSI
  rtw89: 8852c: rfk: add LCK
  rtw89: 8852c: rfk: add DACK
  rtw89: 8852c: rfk: add RFK tables
  plfxlc: fix le16_to_cpu warning for beacon_interval
  rtw88: remove a copy of the NAPI_POLL_WEIGHT define
  carl9170: tx: fix an incorrect use of list iterator
  wil6210: use NAPI_POLL_WEIGHT for napi budget
  ath10k: remove a copy of the NAPI_POLL_WEIGHT define
  ath11k: Add support for WCN6750 device
  ath11k: Datapath changes to support WCN6750
  ath11k: HAL changes to support WCN6750
  ath11k: Add QMI changes for WCN6750
  ath11k: Fetch device information via QMI for WCN6750
  ath11k: Add register access logic for WCN6750
  ath11k: Add HW params for WCN6750
  ...
====================

Link: https://lore.kernel.org/r/20220503153622.C1671C385A4@smtp.kernel.org


Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
parents 58caed3d f39af96d
Loading
Loading
Loading
Loading
+252 −109
Original line number Diff line number Diff line
@@ -20,10 +20,70 @@ properties:
    enum:
      - qcom,ipq8074-wifi
      - qcom,ipq6018-wifi
      - qcom,wcn6750-wifi

  reg:
    maxItems: 1

  interrupts:
    minItems: 32
    maxItems: 52

  interrupt-names:
    maxItems: 52

  qcom,rproc:
    $ref: /schemas/types.yaml#/definitions/phandle
    description:
      DT entry of q6v5-wcss remoteproc driver.
      Phandle to a node that can contain the following properties
        * compatible
        * reg
        * reg-names

  qcom,ath11k-calibration-variant:
    $ref: /schemas/types.yaml#/definitions/string
    description:
      string to uniquely identify variant of the calibration data in the
      board-2.bin for designs with colliding bus and device specific ids

  memory-region:
    minItems: 1
    maxItems: 2
    description:
      phandle to a node describing reserved memory (System RAM memory)
      used by ath11k firmware (see bindings/reserved-memory/reserved-memory.txt)

  iommus:
    minItems: 1
    maxItems: 2

  wifi-firmware:
    type: object
    description: |
      WCN6750 wifi node can contain one optional firmware subnode.
      Firmware subnode is needed when the platform does not have Trustzone.
    required:
      - iommus

required:
  - compatible
  - reg
  - interrupts
  - qcom,rproc

additionalProperties: false

allOf:
  - if:
      properties:
        compatible:
          contains:
            enum:
              - qcom,ipq8074-wifi
              - qcom,ipq6018-wifi
    then:
      properties:
        interrupts:
          items:
            - description: misc-pulse1 interrupt events
@@ -78,8 +138,6 @@ properties:
            - description: interrupt event for ring wbm2host-tx-completions-ring2
            - description: interrupt event for ring wbm2host-tx-completions-ring1
            - description: interrupt event for ring tcl2host-status-ring


        interrupt-names:
          items:
            - const: misc-pulse1
@@ -135,35 +193,59 @@ properties:
            - const: wbm2host-tx-completions-ring1
            - const: tcl2host-status-ring

  qcom,rproc:
    $ref: /schemas/types.yaml#/definitions/phandle
    description:
      DT entry of q6v5-wcss remoteproc driver.
      Phandle to a node that can contain the following properties
        * compatible
        * reg
        * reg-names

  qcom,ath11k-calibration-variant:
    $ref: /schemas/types.yaml#/definitions/string
    description:
      string to uniquely identify variant of the calibration data in the
      board-2.bin for designs with colliding bus and device specific ids

  memory-region:
    maxItems: 1
    description:
      phandle to a node describing reserved memory (System RAM memory)
      used by ath11k firmware (see bindings/reserved-memory/reserved-memory.txt)

  - if:
      properties:
        compatible:
          contains:
            enum:
              - qcom,ipq8074-wifi
              - qcom,ipq6018-wifi
    then:
      required:
  - compatible
  - reg
  - interrupts
        - interrupt-names
  - qcom,rproc

additionalProperties: false
  - if:
      properties:
        compatible:
          contains:
            enum:
              - qcom,wcn6750-wifi
    then:
      properties:
        interrupts:
          items:
            - description: interrupt event for ring CE1
            - description: interrupt event for ring CE2
            - description: interrupt event for ring CE3
            - description: interrupt event for ring CE4
            - description: interrupt event for ring CE5
            - description: interrupt event for ring CE6
            - description: interrupt event for ring CE7
            - description: interrupt event for ring CE8
            - description: interrupt event for ring CE9
            - description: interrupt event for ring CE10
            - description: interrupt event for ring DP1
            - description: interrupt event for ring DP2
            - description: interrupt event for ring DP3
            - description: interrupt event for ring DP4
            - description: interrupt event for ring DP5
            - description: interrupt event for ring DP6
            - description: interrupt event for ring DP7
            - description: interrupt event for ring DP8
            - description: interrupt event for ring DP9
            - description: interrupt event for ring DP10
            - description: interrupt event for ring DP11
            - description: interrupt event for ring DP12
            - description: interrupt event for ring DP13
            - description: interrupt event for ring DP14
            - description: interrupt event for ring DP15
            - description: interrupt event for ring DP16
            - description: interrupt event for ring DP17
            - description: interrupt event for ring DP18
            - description: interrupt event for ring DP19
            - description: interrupt event for ring DP20
            - description: interrupt event for ring DP21
            - description: interrupt event for ring DP22

examples:
  - |
@@ -309,3 +391,64 @@ examples:
            };
        };
    };

  - |
    #include <dt-bindings/interrupt-controller/arm-gic.h>

    reserved-memory {
        #address-cells = <2>;
        #size-cells = <2>;

        wlan_ce_mem: memory@4cd000 {
            no-map;
            reg = <0x0 0x004cd000 0x0 0x1000>;
        };

        wlan_fw_mem: memory@80c00000 {
            no-map;
            reg = <0x0 0x80c00000 0x0 0xc00000>;
        };
    };

    wifi: wifi@17a10040 {
        compatible = "qcom,wcn6750-wifi";
        reg = <0x17a10040 0x0>;
        iommus = <&apps_smmu 0x1c00 0x1>;
        interrupts = <GIC_SPI 768 IRQ_TYPE_EDGE_RISING>,
                     <GIC_SPI 769 IRQ_TYPE_EDGE_RISING>,
                     <GIC_SPI 770 IRQ_TYPE_EDGE_RISING>,
                     <GIC_SPI 771 IRQ_TYPE_EDGE_RISING>,
                     <GIC_SPI 772 IRQ_TYPE_EDGE_RISING>,
                     <GIC_SPI 773 IRQ_TYPE_EDGE_RISING>,
                     <GIC_SPI 774 IRQ_TYPE_EDGE_RISING>,
                     <GIC_SPI 775 IRQ_TYPE_EDGE_RISING>,
                     <GIC_SPI 776 IRQ_TYPE_EDGE_RISING>,
                     <GIC_SPI 777 IRQ_TYPE_EDGE_RISING>,
                     <GIC_SPI 778 IRQ_TYPE_EDGE_RISING>,
                     <GIC_SPI 779 IRQ_TYPE_EDGE_RISING>,
                     <GIC_SPI 780 IRQ_TYPE_EDGE_RISING>,
                     <GIC_SPI 781 IRQ_TYPE_EDGE_RISING>,
                     <GIC_SPI 782 IRQ_TYPE_EDGE_RISING>,
                     <GIC_SPI 783 IRQ_TYPE_EDGE_RISING>,
                     <GIC_SPI 784 IRQ_TYPE_EDGE_RISING>,
                     <GIC_SPI 785 IRQ_TYPE_EDGE_RISING>,
                     <GIC_SPI 786 IRQ_TYPE_EDGE_RISING>,
                     <GIC_SPI 787 IRQ_TYPE_EDGE_RISING>,
                     <GIC_SPI 788 IRQ_TYPE_EDGE_RISING>,
                     <GIC_SPI 789 IRQ_TYPE_EDGE_RISING>,
                     <GIC_SPI 790 IRQ_TYPE_EDGE_RISING>,
                     <GIC_SPI 791 IRQ_TYPE_EDGE_RISING>,
                     <GIC_SPI 792 IRQ_TYPE_EDGE_RISING>,
                     <GIC_SPI 793 IRQ_TYPE_EDGE_RISING>,
                     <GIC_SPI 794 IRQ_TYPE_EDGE_RISING>,
                     <GIC_SPI 795 IRQ_TYPE_EDGE_RISING>,
                     <GIC_SPI 796 IRQ_TYPE_EDGE_RISING>,
                     <GIC_SPI 797 IRQ_TYPE_EDGE_RISING>,
                     <GIC_SPI 798 IRQ_TYPE_EDGE_RISING>,
                     <GIC_SPI 799 IRQ_TYPE_EDGE_RISING>;
        qcom,rproc = <&remoteproc_wpss>;
        memory-region = <&wlan_fw_mem>, <&wlan_ce_mem>;
        wifi-firmware {
                iommus = <&apps_smmu 0x1c02 0x1>;
        };
    };
+1 −1
Original line number Diff line number Diff line
@@ -3,7 +3,7 @@
%YAML 1.2
---

$id: http://devicetree.org/schemas/staging/net/wireless/silabs,wfx.yaml#
$id: http://devicetree.org/schemas/net/wireless/silabs,wfx.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Silicon Labs WFxxx devicetree bindings
+8 −2
Original line number Diff line number Diff line
@@ -15989,6 +15989,12 @@ T: git git://linuxtv.org/media_tree.git
F:	Documentation/admin-guide/media/pulse8-cec.rst
F:	drivers/media/cec/usb/pulse8/
PURELIFI PLFXLC DRIVER
M:	Srinivasan Raju <srini.raju@purelifi.com>
L:	linux-wireless@vger.kernel.org
S:	Supported
F:	drivers/net/wireless/purelifi/plfxlc/
PVRUSB2 VIDEO4LINUX DRIVER
M:	Mike Isely <isely@pobox.com>
L:	pvrusb2@isely.net	(subscribers-only)
@@ -17997,8 +18003,8 @@ F: drivers/platform/x86/touchscreen_dmi.c
SILICON LABS WIRELESS DRIVERS (for WFxxx series)
M:	Jérôme Pouiller <jerome.pouiller@silabs.com>
S:	Supported
F:	Documentation/devicetree/bindings/staging/net/wireless/silabs,wfx.yaml
F:	drivers/staging/wfx/
F:	Documentation/devicetree/bindings/net/wireless/silabs,wfx.yaml
F:	drivers/net/wireless/silabs/wfx/
SILICON MOTION SM712 FRAME BUFFER DRIVER
M:	Sudip Mukherjee <sudipm.mukherjee@gmail.com>
+2 −0
Original line number Diff line number Diff line
@@ -28,9 +28,11 @@ source "drivers/net/wireless/intersil/Kconfig"
source "drivers/net/wireless/marvell/Kconfig"
source "drivers/net/wireless/mediatek/Kconfig"
source "drivers/net/wireless/microchip/Kconfig"
source "drivers/net/wireless/purelifi/Kconfig"
source "drivers/net/wireless/ralink/Kconfig"
source "drivers/net/wireless/realtek/Kconfig"
source "drivers/net/wireless/rsi/Kconfig"
source "drivers/net/wireless/silabs/Kconfig"
source "drivers/net/wireless/st/Kconfig"
source "drivers/net/wireless/ti/Kconfig"
source "drivers/net/wireless/zydas/Kconfig"
+2 −0
Original line number Diff line number Diff line
@@ -13,9 +13,11 @@ obj-$(CONFIG_WLAN_VENDOR_INTERSIL) += intersil/
obj-$(CONFIG_WLAN_VENDOR_MARVELL) += marvell/
obj-$(CONFIG_WLAN_VENDOR_MEDIATEK) += mediatek/
obj-$(CONFIG_WLAN_VENDOR_MICROCHIP) += microchip/
obj-$(CONFIG_WLAN_VENDOR_PURELIFI) += purelifi/
obj-$(CONFIG_WLAN_VENDOR_RALINK) += ralink/
obj-$(CONFIG_WLAN_VENDOR_REALTEK) += realtek/
obj-$(CONFIG_WLAN_VENDOR_RSI) += rsi/
obj-$(CONFIG_WLAN_VENDOR_SILABS) += silabs/
obj-$(CONFIG_WLAN_VENDOR_ST) += st/
obj-$(CONFIG_WLAN_VENDOR_TI) += ti/
obj-$(CONFIG_WLAN_VENDOR_ZYDAS) += zydas/
Loading