Lines Matching +full:spi +full:- +full:controller
1 # SPDX-License-Identifier: GPL-2.0 OR BSD-2-Clause
3 ---
4 $id: http://devicetree.org/schemas/spi/brcm,bcm63xx-hsspi.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: Broadcom Broadband SoC High Speed SPI controller
10 - William Zhang <william.zhang@broadcom.com>
11 - Kursad Oney <kursad.oney@broadcom.com>
12 - Jonas Gorski <jonas.gorski@gmail.com>
15 Broadcom Broadband SoC supports High Speed SPI master controller since the
17 controller was carried over to recent ARM based chips, such as BCM63138,
19 brcm,bcm6328-hsspi compatible string. The recent ARM based chip is required to
20 use the brcm,bcmbca-hsspi-v1.0 as part of its compatible string list as
23 This rev 1.0 controller has a limitation that can not keep the chip select line
24 active between the SPI transfers within the same SPI message. This can
25 terminate the transaction to some SPI devices prematurely. The issue can be
26 worked around by either the controller's prepend mode or using the dummy chip
30 The newer SoCs such as BCM6756, BCM4912 and BCM6855 include an updated SPI
31 controller rev 1.1 that add the capability to allow the driver to control chip
32 select explicitly. This solves the issue in the old controller.
37 - const: brcm,bcm6328-hsspi
38 - items:
39 - enum:
40 - brcm,bcm47622-hsspi
41 - brcm,bcm4908-hsspi
42 - brcm,bcm63138-hsspi
43 - brcm,bcm63146-hsspi
44 - brcm,bcm63148-hsspi
45 - brcm,bcm63158-hsspi
46 - brcm,bcm63178-hsspi
47 - brcm,bcm6846-hsspi
48 - brcm,bcm6856-hsspi
49 - brcm,bcm6858-hsspi
50 - brcm,bcm6878-hsspi
51 - const: brcm,bcmbca-hsspi-v1.0
52 - items:
53 - enum:
54 - brcm,bcm4912-hsspi
55 - brcm,bcm6756-hsspi
56 - brcm,bcm6813-hsspi
57 - brcm,bcm6855-hsspi
58 - const: brcm,bcmbca-hsspi-v1.1
62 - description: main registers
63 - description: miscellaneous control registers
66 reg-names:
68 - const: hsspi
69 - const: spim-ctrl
74 - description: SPI master reference clock
75 - description: SPI master pll clock
77 clock-names:
79 - const: hsspi
80 - const: pll
86 - compatible
87 - reg
88 - clocks
89 - clock-names
90 - interrupts
93 - $ref: spi-controller.yaml#
94 - if:
99 - brcm,bcm6328-hsspi
100 - brcm,bcmbca-hsspi-v1.0
105 reg-names:
112 reg-names:
116 - reg-names
121 - |
122 #include <dt-bindings/interrupt-controller/arm-gic.h>
123 spi@ff801000 {
124 compatible = "brcm,bcm6756-hsspi", "brcm,bcmbca-hsspi-v1.1";
127 reg-names = "hsspi", "spim-ctrl";
130 clock-names = "hsspi", "pll";
131 num-cs = <8>;
132 #address-cells = <1>;
133 #size-cells = <0>;