Re: [PATCH 01/34] dt-bindings: net: bcm4329-fmac: Add Apple properties & chips

From: Rob Herring
Date: Mon Dec 27 2021 - 11:36:40 EST


On Mon, Dec 27, 2021 at 12:35:51AM +0900, Hector Martin wrote:
> This binding is currently used for SDIO devices, but these chips are
> also used as PCIe devices on DT platforms and may be represented in the
> DT. Re-use the existing binding and add chip compatibles used by Apple
> T2 and M1 platforms (the T2 ones are not known to be used in DT
> platforms, but we might as well document them).
>
> Then, add properties required for firmware selection and calibration on
> M1 machines.
>
> Signed-off-by: Hector Martin <marcan@xxxxxxxxx>
> ---
> .../net/wireless/brcm,bcm4329-fmac.yaml | 32 +++++++++++++++++--
> 1 file changed, 29 insertions(+), 3 deletions(-)
>
> diff --git a/Documentation/devicetree/bindings/net/wireless/brcm,bcm4329-fmac.yaml b/Documentation/devicetree/bindings/net/wireless/brcm,bcm4329-fmac.yaml
> index c11f23b20c4c..2530ff3e7b90 100644
> --- a/Documentation/devicetree/bindings/net/wireless/brcm,bcm4329-fmac.yaml
> +++ b/Documentation/devicetree/bindings/net/wireless/brcm,bcm4329-fmac.yaml
> @@ -4,7 +4,7 @@
> $id: http://devicetree.org/schemas/net/wireless/brcm,bcm4329-fmac.yaml#
> $schema: http://devicetree.org/meta-schemas/core.yaml#
>
> -title: Broadcom BCM4329 family fullmac wireless SDIO devices
> +title: Broadcom BCM4329 family fullmac wireless SDIO/PCIE devices
>
> maintainers:
> - Arend van Spriel <arend@xxxxxxxxxxxx>
> @@ -36,16 +36,22 @@ properties:
> - brcm,bcm43455-fmac
> - brcm,bcm43456-fmac
> - brcm,bcm4354-fmac
> + - brcm,bcm4355c1-fmac
> - brcm,bcm4356-fmac
> - brcm,bcm4359-fmac
> + - brcm,bcm4364b2-fmac
> + - brcm,bcm4364b3-fmac
> + - brcm,bcm4377b3-fmac
> + - brcm,bcm4378b1-fmac
> + - brcm,bcm4387c2-fmac
> - cypress,cyw4373-fmac
> - cypress,cyw43012-fmac
> - const: brcm,bcm4329-fmac
> - const: brcm,bcm4329-fmac
>
> reg:
> - description: SDIO function number for the device, for most cases
> - this will be 1.
> + description: SDIO function number for the device (for most cases
> + this will be 1) or PCI device identifier.
>
> interrupts:
> maxItems: 1
> @@ -75,6 +81,26 @@ properties:
> items:
> pattern: '^[A-Z][A-Z]-[A-Z][0-9A-Z]-[0-9]+$'
>
> + brcm,cal-blob:
> + $ref: /schemas/types.yaml#/definitions/uint8-array
> + description: A per-device calibration blob for the Wi-Fi radio. This
> + should be filled in by the bootloader from platform configuration
> + data, if necessary, and will be uploaded to the device if present.
> +
> + apple,module-instance:
> + $ref: /schemas/types.yaml#/definitions/string
> + description: Module codename used to identify a specific board on
> + Apple platforms. This is used to build the firmware filenames, to allow
> + different platforms to have different firmware and/or NVRAM config.
> +
> + apple,antenna-sku:
> + $def: /schemas/types.yaml#/definitions/string
> + description: Antenna SKU used to identify a specific antenna configuration
> + on Apple platforms. This is use to build firmware filenames, to allow
> + platforms with different antenna configs to have different firmware and/or
> + NVRAM. This would normally be filled in by the bootloader from platform
> + configuration data.

Is there a known set of strings that can be defined?

There's also the somewhat standard 'firmware-name' property that serves
similar purpose, but if there's multiple files, then I guess this
approach is fine.

Rob