[PATCH v8 20/22] wifi: nxpwifi: add NXP vendor and IW61x device IDs to sdio_ids.h

Jeff Chen posted 22 patches 2 weeks ago
[PATCH v8 20/22] wifi: nxpwifi: add NXP vendor and IW61x device IDs to sdio_ids.h
Posted by Jeff Chen 2 weeks ago
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@nxp.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@nxp.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
Re: [PATCH v8 20/22] wifi: nxpwifi: add NXP vendor and IW61x device IDs to sdio_ids.h
Posted by Krzysztof Kozlowski 2 weeks ago
On 05/12/2025 07:55, Jeff Chen wrote:
> 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.

Only limited review because you did not care to even cc maintainers -
don't describe drivers. Describe hardware.

> 
> Signed-off-by: Jeff Chen <jeff.chen_1@nxp.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@nxp.com>
> +
> +description:
> +  This node provides properties for describing the NXP SDIO wireless device.

Describe hardware, not DT. We know how DT works.

Not reviewing the rest, NAK.

Please run scripts/checkpatch.pl on the patches and fix reported
warnings. After that, run also 'scripts/checkpatch.pl --strict' on the
patches and (probably) fix more warnings. Some warnings can be ignored,
especially from --strict run, but the code here looks like it needs a
fix. Feel free to get in touch if the warning is not clear.

Please use subject prefixes matching the subsystem. You can get them for
example with `git log --oneline -- DIRECTORY_OR_FILE` on the directory
your patch is touching. For bindings, the preferred subjects are
explained here:
https://www.kernel.org/doc/html/latest/devicetree/bindings/submitting-patches.html#i-for-patch-submitters

Please use scripts/get_maintainers.pl to get a list of necessary people
and lists to CC. It might happen, that command when run on an older
kernel, gives you outdated entries. Therefore please be sure you base
your patches on recent Linux kernel.

Tools like b4 or scripts/get_maintainer.pl provide you proper list of
people, so fix your workflow. Tools might also fail if you work on some
ancient tree (don't, instead use mainline) or work on fork of kernel
(don't, instead use mainline). Just use b4 and everything should be
fine, although remember about `b4 prep --auto-to-cc` if you added new
patches to the patchset.

You missed at least devicetree list (maybe more), so this won't be
tested by automated tooling. Performing review on untested code might be
a waste of time.

Please kindly resend and include all necessary To/Cc entries.


Best regards,
Krzysztof