155 lines
5.2 KiB
YAML
155 lines
5.2 KiB
YAML
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
|
|
%YAML 1.2
|
|
---
|
|
$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/PCIE devices
|
|
|
|
maintainers:
|
|
- Arend van Spriel <arend@broadcom.com>
|
|
|
|
description:
|
|
The Broadcom Single chip MAC part for the BCM4329 family and
|
|
later Cypress chips in the same family named CYW4373 and similar.
|
|
These chips also have a Bluetooth portion described in a separate
|
|
binding.
|
|
|
|
allOf:
|
|
- $ref: ieee80211.yaml#
|
|
|
|
properties:
|
|
compatible:
|
|
oneOf:
|
|
- items:
|
|
- enum:
|
|
- brcm,bcm43143-fmac
|
|
- brcm,bcm4341b0-fmac
|
|
- brcm,bcm4341b4-fmac
|
|
- brcm,bcm4341b5-fmac
|
|
- brcm,bcm4329-fmac
|
|
- brcm,bcm4330-fmac
|
|
- brcm,bcm4334-fmac
|
|
- brcm,bcm43340-fmac
|
|
- brcm,bcm4335-fmac
|
|
- brcm,bcm43362-fmac
|
|
- brcm,bcm4339-fmac
|
|
- brcm,bcm43430a0-fmac
|
|
- brcm,bcm43430a1-fmac
|
|
- brcm,bcm43455-fmac
|
|
- brcm,bcm43456-fmac
|
|
- brcm,bcm4354-fmac
|
|
- brcm,bcm4356-fmac
|
|
- brcm,bcm4359-fmac
|
|
- brcm,bcm4366-fmac
|
|
- cypress,cyw4373-fmac
|
|
- cypress,cyw43012-fmac
|
|
- const: brcm,bcm4329-fmac
|
|
- enum:
|
|
- brcm,bcm4329-fmac
|
|
- pci14e4,43dc # BCM4355
|
|
- pci14e4,4464 # BCM4364
|
|
- pci14e4,4488 # BCM4377
|
|
- pci14e4,4425 # BCM4378
|
|
- pci14e4,4433 # BCM4387
|
|
|
|
reg:
|
|
description: SDIO function number for the device (for most cases
|
|
this will be 1) or PCI device identifier.
|
|
|
|
interrupts:
|
|
maxItems: 1
|
|
description: Out-of-band (OOB) IRQ line for waking up the host
|
|
in response to WLAN activity. This corresponds to the HOST_WAKE
|
|
line into the chip.
|
|
|
|
interrupt-names:
|
|
description: Name for the OOB IRQ, this must be set to "host-wake".
|
|
const: host-wake
|
|
|
|
brcm,drive-strength:
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
description: Drive strength used for the SDIO pins on the device in mA.
|
|
minimum: 0
|
|
maximum: 32
|
|
|
|
reset-gpios:
|
|
maxItems: 1
|
|
description: A GPIO line connected to the WL_RST line, if present
|
|
this shall be flagged as active low.
|
|
|
|
brcm,ccode-map:
|
|
$ref: /schemas/types.yaml#/definitions/string-array
|
|
description: Multiple strings for translating ISO3166 country code to
|
|
brcmfmac firmware country code and revision.
|
|
items:
|
|
pattern: '^[A-Z][A-Z]-[A-Z][0-9A-Z]-[0-9]+$'
|
|
|
|
brcm,ccode-map-trivial:
|
|
description: |
|
|
Use a trivial mapping of ISO3166 country codes to brcmfmac firmware
|
|
country code and revision: cc -> { cc, 0 }. In other words, assume that
|
|
the CLM blob firmware uses ISO3166 country codes as well, and that all
|
|
revisions are zero. This property is mutually exclusive with
|
|
brcm,ccode-map. If both properties are specified, then brcm,ccode-map
|
|
takes precedence.
|
|
type: boolean
|
|
|
|
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.
|
|
|
|
brcm,board-type:
|
|
$ref: /schemas/types.yaml#/definitions/string
|
|
description: Overrides the board type, which is normally the compatible of
|
|
the root node. This can be used to decouple the overall system board or
|
|
device name from the board type for WiFi purposes, which is used to
|
|
construct firmware and NVRAM configuration filenames, allowing for
|
|
multiple devices that share the same module or characteristics for the
|
|
WiFi subsystem to share the same firmware/NVRAM files. On Apple platforms,
|
|
this should be the Apple module-instance codename prefixed by "apple,",
|
|
e.g. "apple,honshu".
|
|
|
|
apple,antenna-sku:
|
|
$ref: /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.
|
|
|
|
required:
|
|
- compatible
|
|
- reg
|
|
|
|
unevaluatedProperties: false
|
|
|
|
examples:
|
|
- |
|
|
#include <dt-bindings/interrupt-controller/irq.h>
|
|
#include <dt-bindings/gpio/gpio.h>
|
|
mmc@80118000 {
|
|
compatible = "arm,pl18x", "arm,primecell";
|
|
reg = <0x80118000 0x1000>;
|
|
clocks = <&clk 0>, <&clk 1>;
|
|
clock-names = "mclk", "apb_pclk";
|
|
interrupts = <0 60 IRQ_TYPE_LEVEL_HIGH>;
|
|
bus-width = <4>;
|
|
non-removable;
|
|
vmmc-supply = <&wl_bt_reg>;
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
|
|
wifi@1 {
|
|
compatible = "brcm,bcm4334-fmac", "brcm,bcm4329-fmac";
|
|
reg = <1>;
|
|
interrupt-parent = <&gpio>;
|
|
interrupts = <24 IRQ_TYPE_EDGE_FALLING>;
|
|
interrupt-names = "host-wake";
|
|
reset-gpios = <&gpio 23 GPIO_ACTIVE_LOW>;
|
|
brcm,ccode-map = "JP-JP-78", "US-Q2-86";
|
|
};
|
|
};
|