xref: /freebsd/sys/contrib/device-tree/Bindings/net/wireless/qca,ath9k.yaml (revision 8cc087a1eee9ec1ca9f7ac1e63ad51bdb5a682eb)
1*8cc087a1SEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2*8cc087a1SEmmanuel Vadot%YAML 1.2
3*8cc087a1SEmmanuel Vadot---
4*8cc087a1SEmmanuel Vadot$id: http://devicetree.org/schemas/net/wireless/qca,ath9k.yaml#
5*8cc087a1SEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
6*8cc087a1SEmmanuel Vadot
7*8cc087a1SEmmanuel Vadottitle: Qualcomm Atheros ath9k wireless devices Generic Binding
8*8cc087a1SEmmanuel Vadot
9*8cc087a1SEmmanuel Vadotmaintainers:
10*8cc087a1SEmmanuel Vadot  - Kalle Valo <kvalo@codeaurora.org>
11*8cc087a1SEmmanuel Vadot
12*8cc087a1SEmmanuel Vadotdescription: |
13*8cc087a1SEmmanuel Vadot  This node provides properties for configuring the ath9k wireless device.
14*8cc087a1SEmmanuel Vadot  The node is expected to be specified as a child node of the PCI controller
15*8cc087a1SEmmanuel Vadot  to which the wireless chip is connected.
16*8cc087a1SEmmanuel Vadot
17*8cc087a1SEmmanuel VadotallOf:
18*8cc087a1SEmmanuel Vadot  - $ref: ieee80211.yaml#
19*8cc087a1SEmmanuel Vadot
20*8cc087a1SEmmanuel Vadotproperties:
21*8cc087a1SEmmanuel Vadot  compatible:
22*8cc087a1SEmmanuel Vadot    enum:
23*8cc087a1SEmmanuel Vadot      - pci168c,0023  # AR5416
24*8cc087a1SEmmanuel Vadot      - pci168c,0024  # AR5418
25*8cc087a1SEmmanuel Vadot      - pci168c,0027  # AR9160
26*8cc087a1SEmmanuel Vadot      - pci168c,0029  # AR9220 and AR9223
27*8cc087a1SEmmanuel Vadot      - pci168c,002a  # AR9280 and AR9283
28*8cc087a1SEmmanuel Vadot      - pci168c,002b  # AR9285
29*8cc087a1SEmmanuel Vadot      - pci168c,002c  # AR2427 - 802.11n bonded out
30*8cc087a1SEmmanuel Vadot      - pci168c,002d  # AR9227
31*8cc087a1SEmmanuel Vadot      - pci168c,002e  # AR9287
32*8cc087a1SEmmanuel Vadot      - pci168c,0030  # AR9380, AR9381 and AR9382
33*8cc087a1SEmmanuel Vadot      - pci168c,0032  # AR9485
34*8cc087a1SEmmanuel Vadot      - pci168c,0033  # AR9580 and AR9590
35*8cc087a1SEmmanuel Vadot      - pci168c,0034  # AR9462
36*8cc087a1SEmmanuel Vadot      - pci168c,0036  # AR9565
37*8cc087a1SEmmanuel Vadot      - pci168c,0037  # AR1111 and AR9485
38*8cc087a1SEmmanuel Vadot
39*8cc087a1SEmmanuel Vadot  reg:
40*8cc087a1SEmmanuel Vadot    maxItems: 1
41*8cc087a1SEmmanuel Vadot
42*8cc087a1SEmmanuel Vadot  interrupts:
43*8cc087a1SEmmanuel Vadot    maxItems: 1
44*8cc087a1SEmmanuel Vadot
45*8cc087a1SEmmanuel Vadot  ieee80211-freq-limit: true
46*8cc087a1SEmmanuel Vadot
47*8cc087a1SEmmanuel Vadot  qca,no-eeprom:
48*8cc087a1SEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/flag
49*8cc087a1SEmmanuel Vadot    description:
50*8cc087a1SEmmanuel Vadot      Indicates that there is no physical EEPROM connected
51*8cc087a1SEmmanuel Vadot
52*8cc087a1SEmmanuel Vadot  nvmem-cells:
53*8cc087a1SEmmanuel Vadot    items:
54*8cc087a1SEmmanuel Vadot      - description: Reference to an nvmem node for the MAC address
55*8cc087a1SEmmanuel Vadot      - description: Reference to an nvmem node for calibration data
56*8cc087a1SEmmanuel Vadot
57*8cc087a1SEmmanuel Vadot  nvmem-cell-names:
58*8cc087a1SEmmanuel Vadot    items:
59*8cc087a1SEmmanuel Vadot      - const: mac-address
60*8cc087a1SEmmanuel Vadot      - const: calibration
61*8cc087a1SEmmanuel Vadot
62*8cc087a1SEmmanuel Vadotrequired:
63*8cc087a1SEmmanuel Vadot  - compatible
64*8cc087a1SEmmanuel Vadot  - reg
65*8cc087a1SEmmanuel Vadot
66*8cc087a1SEmmanuel VadotadditionalProperties: false
67*8cc087a1SEmmanuel Vadot
68*8cc087a1SEmmanuel Vadotexamples:
69*8cc087a1SEmmanuel Vadot  - |
70*8cc087a1SEmmanuel Vadot    pcie0 {
71*8cc087a1SEmmanuel Vadot      #address-cells = <3>;
72*8cc087a1SEmmanuel Vadot      #size-cells = <2>;
73*8cc087a1SEmmanuel Vadot      wifi@0,0 {
74*8cc087a1SEmmanuel Vadot        compatible = "pci168c,002d";
75*8cc087a1SEmmanuel Vadot        reg = <0 0 0 0 0>;
76*8cc087a1SEmmanuel Vadot        interrupts = <3>;
77*8cc087a1SEmmanuel Vadot        qca,no-eeprom;
78*8cc087a1SEmmanuel Vadot      };
79*8cc087a1SEmmanuel Vadot    };
80*8cc087a1SEmmanuel Vadot  - |
81*8cc087a1SEmmanuel Vadot    pci0 {
82*8cc087a1SEmmanuel Vadot      #address-cells = <3>;
83*8cc087a1SEmmanuel Vadot      #size-cells = <2>;
84*8cc087a1SEmmanuel Vadot      wifi@0,11 {
85*8cc087a1SEmmanuel Vadot        compatible = "pci168c,0029";
86*8cc087a1SEmmanuel Vadot        reg = <0x8800 0 0 0 0>;
87*8cc087a1SEmmanuel Vadot        nvmem-cells = <&macaddr_art_c>, <&cal_art_1000>;
88*8cc087a1SEmmanuel Vadot        nvmem-cell-names = "mac-address", "calibration";
89*8cc087a1SEmmanuel Vadot      };
90*8cc087a1SEmmanuel Vadot    };
91