blob: 37cb39a3a62e6b477f0c9e5a3abba730353cc270 [file] [log] [blame]
Tom Rini53633a82024-02-29 12:33:36 -05001# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/net/bluetooth/brcm,bcm4377-bluetooth.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Broadcom BCM4377 family PCIe Bluetooth Chips
8
9maintainers:
10 - Sven Peter <sven@svenpeter.dev>
11
12description:
13 This binding describes Broadcom BCM4377 family PCIe-attached bluetooth chips
14 usually found in Apple machines. The Wi-Fi part of the chip is described in
15 bindings/net/wireless/brcm,bcm4329-fmac.yaml.
16
17allOf:
18 - $ref: bluetooth-controller.yaml#
19
20properties:
21 compatible:
22 enum:
23 - pci14e4,5fa0 # BCM4377
24 - pci14e4,5f69 # BCM4378
25 - pci14e4,5f71 # BCM4387
26
27 reg:
28 maxItems: 1
29
30 brcm,board-type:
31 $ref: /schemas/types.yaml#/definitions/string
32 description: Board type of the Bluetooth chip. This is used to decouple
33 the overall system board from the Bluetooth module and used to construct
34 firmware and calibration data filenames.
35 On Apple platforms, this should be the Apple module-instance codename
36 prefixed by "apple,", e.g. "apple,atlantisb".
37 pattern: '^apple,.*'
38
39 brcm,taurus-cal-blob:
40 $ref: /schemas/types.yaml#/definitions/uint8-array
41 description: A per-device calibration blob for the Bluetooth radio. This
42 should be filled in by the bootloader from platform configuration
43 data, if necessary, and will be uploaded to the device.
44 This blob is used if the chip stepping of the Bluetooth module does not
45 support beamforming.
46
47 brcm,taurus-bf-cal-blob:
48 $ref: /schemas/types.yaml#/definitions/uint8-array
49 description: A per-device calibration blob for the Bluetooth radio. This
50 should be filled in by the bootloader from platform configuration
51 data, if necessary, and will be uploaded to the device.
52 This blob is used if the chip stepping of the Bluetooth module supports
53 beamforming.
54
55 local-bd-address: true
56
57required:
58 - compatible
59 - reg
60 - local-bd-address
61 - brcm,board-type
62
63additionalProperties: false
64
65examples:
66 - |
67 pcie@a0000000 {
68 #address-cells = <3>;
69 #size-cells = <2>;
70 reg = <0xa0000000 0x1000000>;
71 device_type = "pci";
72 ranges = <0x43000000 0x6 0xa0000000 0xa0000000 0x0 0x20000000>;
73
74 bluetooth@0,1 {
75 compatible = "pci14e4,5f69";
76 reg = <0x100 0x0 0x0 0x0 0x0>;
77 brcm,board-type = "apple,honshu";
78 /* To be filled by the bootloader */
79 local-bd-address = [00 00 00 00 00 00];
80 };
81 };