1# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/net/wireless/brcm,bcm4329-fmac.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Broadcom BCM4329 family fullmac wireless SDIO devices
8
9maintainers:
10  - Arend van Spriel <arend@broadcom.com>
11
12description:
13  The Broadcom Single chip MAC part for the BCM4329 family and
14  later Cypress chips in the same family named CYW4373 and similar.
15  These chips also have a Bluetooth portion described in a separate
16  binding.
17
18properties:
19  compatible:
20    oneOf:
21      - items:
22          - enum:
23              - brcm,bcm43143-fmac
24              - brcm,bcm4341b0-fmac
25              - brcm,bcm4341b4-fmac
26              - brcm,bcm4341b5-fmac
27              - brcm,bcm4329-fmac
28              - brcm,bcm4330-fmac
29              - brcm,bcm4334-fmac
30              - brcm,bcm43340-fmac
31              - brcm,bcm4335-fmac
32              - brcm,bcm43362-fmac
33              - brcm,bcm4339-fmac
34              - brcm,bcm43430a0-fmac
35              - brcm,bcm43430a1-fmac
36              - brcm,bcm43455-fmac
37              - brcm,bcm43456-fmac
38              - brcm,bcm4354-fmac
39              - brcm,bcm4356-fmac
40              - brcm,bcm4359-fmac
41              - cypress,cyw4373-fmac
42              - cypress,cyw43012-fmac
43          - const: brcm,bcm4329-fmac
44      - const: brcm,bcm4329-fmac
45
46  reg:
47    description: SDIO function number for the device, for most cases
48      this will be 1.
49
50  interrupts:
51    maxItems: 1
52    description: Out-of-band (OOB) IRQ line for waking up the host
53      in response to WLAN activity. This corresponds to the HOST_WAKE
54      line into the chip.
55
56  interrupt-names:
57    description: Name for the OOB IRQ, this must be set to "host-wake".
58    const: host-wake
59
60  brcm,drive-strength:
61    $ref: /schemas/types.yaml#/definitions/uint32
62    description: Drive strength used for the SDIO pins on the device in mA.
63    minimum: 0
64    maximum: 32
65
66  reset-gpios:
67    maxItems: 1
68    description: A GPIO line connected to the WL_RST line, if present
69      this shall be flagged as active low.
70
71  brcm,ccode-map:
72    $ref: /schemas/types.yaml#/definitions/string-array
73    description: Multiple strings for translating ISO3166 country code to
74      brcmfmac firmware country code and revision.
75    items:
76      pattern: '^[A-Z][A-Z]-[A-Z][0-9A-Z]-[0-9]+$'
77
78required:
79  - compatible
80  - reg
81
82additionalProperties: false
83
84examples:
85  - |
86    #include <dt-bindings/interrupt-controller/irq.h>
87    #include <dt-bindings/gpio/gpio.h>
88    mmc@80118000 {
89      compatible = "arm,pl18x", "arm,primecell";
90      reg = <0x80118000 0x1000>;
91      clocks = <&clk 0>, <&clk 1>;
92      clock-names = "mclk", "apb_pclk";
93      interrupts = <0 60 IRQ_TYPE_LEVEL_HIGH>;
94      bus-width = <4>;
95      non-removable;
96      vmmc-supply = <&wl_bt_reg>;
97      #address-cells = <1>;
98      #size-cells = <0>;
99
100      wifi@1 {
101        compatible = "brcm,bcm4334-fmac", "brcm,bcm4329-fmac";
102        reg = <1>;
103        interrupt-parent = <&gpio>;
104        interrupts = <24 IRQ_TYPE_EDGE_FALLING>;
105        interrupt-names = "host-wake";
106        reset-gpios = <&gpio 23 GPIO_ACTIVE_LOW>;
107        brcm,ccode-map = "JP-JP-78", "US-Q2-86";
108      };
109    };
110