[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20251205065545.3325032-21-jeff.chen_1@nxp.com>
Date: Fri, 5 Dec 2025 14:55:43 +0800
From: Jeff Chen <jeff.chen_1@....com>
To: linux-wireless@...r.kernel.org
Cc: linux-kernel@...r.kernel.org,
briannorris@...omium.org,
johannes@...solutions.net,
francesco@...cini.it,
tsung-hsien.hsieh@....com,
s.hauer@...gutronix.de,
Jeff Chen <jeff.chen_1@....com>
Subject: [PATCH v8 20/22] wifi: nxpwifi: add NXP vendor and IW61x device IDs to sdio_ids.h
Register NXP's SDIO vendor ID (0x0471) and IW61x device ID (0x0205)
in the global SDIO ID list. This allows the nxpwifi SDIO driver to
match and bind to supported NXP Wi-Fi chips via the SDIO bus.
Signed-off-by: Jeff Chen <jeff.chen_1@....com>
---
.../bindings/net/wireless/nxp,iw61x.yaml | 85 +++++++++++++++++++
include/linux/mmc/sdio_ids.h | 3 +
2 files changed, 88 insertions(+)
create mode 100644 Documentation/devicetree/bindings/net/wireless/nxp,iw61x.yaml
diff --git a/Documentation/devicetree/bindings/net/wireless/nxp,iw61x.yaml b/Documentation/devicetree/bindings/net/wireless/nxp,iw61x.yaml
new file mode 100644
index 000000000000..358714796868
--- /dev/null
+++ b/Documentation/devicetree/bindings/net/wireless/nxp,iw61x.yaml
@@ -0,0 +1,85 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/net/wireless/nxp,iw61x.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: NXP IW61x SDIO devices
+
+maintainers:
+ - Jeff Chen <jeff.chen_1@....com>
+
+description:
+ This node provides properties for describing the NXP SDIO wireless device.
+ The node is expected to be specified as a child node to the SDIO controller that
+ connects the device to the system.
+
+properties:
+ compatible:
+ enum:
+ - nxp,iw612
+
+ reg:
+ maxItems: 1
+
+ interrupts:
+ maxItems: 1
+
+ wakeup-source: true
+
+ nxp,caldata-txpwrlimit-2g:
+ $ref: /schemas/types.yaml#/definitions/uint8-array
+ description: Calibration data for the 2GHz band.
+ maxItems: 566
+
+ nxp,caldata-txpwrlimit-5g-sub0:
+ $ref: /schemas/types.yaml#/definitions/uint8-array
+ description: Calibration data for sub-band 0 in the 5GHz band.
+ maxItems: 502
+
+ nxp,caldata-txpwrlimit-5g-sub1:
+ $ref: /schemas/types.yaml#/definitions/uint8-array
+ description: Calibration data for sub-band 1 in the 5GHz band.
+ maxItems: 688
+
+ nxp,caldata-txpwrlimit-5g-sub2:
+ $ref: /schemas/types.yaml#/definitions/uint8-array
+ description: Calibration data for sub-band 2 in the 5GHz band.
+ maxItems: 750
+
+ nxp,caldata-txpwrlimit-5g-sub3:
+ $ref: /schemas/types.yaml#/definitions/uint8-array
+ description: Calibration data for sub-band 3 in the 5GHz band.
+ maxItems: 502
+
+ nxp,wakeup-pin:
+ $ref: /schemas/types.yaml#/definitions/uint32
+ description:
+ Provides the pin number for the wakeup pin from the device's point of
+ view. The wakeup pin is used for the device to wake the host system
+ from sleep. This property is only necessary if the wakeup pin is
+ wired in a non-standard way, such that the default pin assignments
+ are invalid.
+
+required:
+ - compatible
+ - reg
+
+additionalProperties: false
+
+examples:
+ - |
+ #include <dt-bindings/interrupt-controller/irq.h>
+
+ mmc {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ wifi@1 {
+ compatible = "nxp,iw612";
+ reg = <1>;
+ interrupt-parent = <&pio>;
+ interrupts = <38 IRQ_TYPE_LEVEL_LOW>;
+ nxp,wakeup-pin = <3>;
+ };
+ };
diff --git a/include/linux/mmc/sdio_ids.h b/include/linux/mmc/sdio_ids.h
index 673cbdf43453..39ac2b612e4a 100644
--- a/include/linux/mmc/sdio_ids.h
+++ b/include/linux/mmc/sdio_ids.h
@@ -116,6 +116,9 @@
#define SDIO_VENDOR_ID_MICROCHIP_WILC 0x0296
#define SDIO_DEVICE_ID_MICROCHIP_WILC1000 0x5347
+#define SDIO_VENDOR_ID_NXP 0x0471
+#define SDIO_DEVICE_ID_NXP_IW61X 0x0205
+
#define SDIO_VENDOR_ID_REALTEK 0x024c
#define SDIO_DEVICE_ID_REALTEK_RTW8723BS 0xb723
#define SDIO_DEVICE_ID_REALTEK_RTW8821BS 0xb821
--
2.34.1
Powered by blists - more mailing lists