xref: /freebsd/sys/contrib/device-tree/Bindings/spi/rockchip-sfc.yaml (revision 84943d6f38e936ac3b7a3947ca26eeb27a39f938)
1354d7675SEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2354d7675SEmmanuel Vadot%YAML 1.2
3354d7675SEmmanuel Vadot---
4354d7675SEmmanuel Vadot$id: http://devicetree.org/schemas/spi/rockchip-sfc.yaml#
5354d7675SEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
6354d7675SEmmanuel Vadot
7354d7675SEmmanuel Vadottitle: Rockchip Serial Flash Controller (SFC)
8354d7675SEmmanuel Vadot
9354d7675SEmmanuel Vadotmaintainers:
10354d7675SEmmanuel Vadot  - Heiko Stuebner <heiko@sntech.de>
11354d7675SEmmanuel Vadot  - Chris Morgan <macromorgan@hotmail.com>
12354d7675SEmmanuel Vadot
13354d7675SEmmanuel VadotallOf:
14354d7675SEmmanuel Vadot  - $ref: spi-controller.yaml#
15354d7675SEmmanuel Vadot
16354d7675SEmmanuel Vadotproperties:
17354d7675SEmmanuel Vadot  compatible:
18354d7675SEmmanuel Vadot    const: rockchip,sfc
19354d7675SEmmanuel Vadot    description:
20354d7675SEmmanuel Vadot      The rockchip sfc controller is a standalone IP with version register,
21354d7675SEmmanuel Vadot      and the driver can handle all the feature difference inside the IP
22354d7675SEmmanuel Vadot      depending on the version register.
23354d7675SEmmanuel Vadot
24354d7675SEmmanuel Vadot  reg:
25354d7675SEmmanuel Vadot    maxItems: 1
26354d7675SEmmanuel Vadot
27354d7675SEmmanuel Vadot  interrupts:
28354d7675SEmmanuel Vadot    maxItems: 1
29354d7675SEmmanuel Vadot
30354d7675SEmmanuel Vadot  clocks:
31354d7675SEmmanuel Vadot    items:
32354d7675SEmmanuel Vadot      - description: Bus Clock
33354d7675SEmmanuel Vadot      - description: Module Clock
34354d7675SEmmanuel Vadot
35354d7675SEmmanuel Vadot  clock-names:
36354d7675SEmmanuel Vadot    items:
37354d7675SEmmanuel Vadot      - const: clk_sfc
38354d7675SEmmanuel Vadot      - const: hclk_sfc
39354d7675SEmmanuel Vadot
40354d7675SEmmanuel Vadot  power-domains:
41354d7675SEmmanuel Vadot    maxItems: 1
42354d7675SEmmanuel Vadot
43354d7675SEmmanuel Vadot  rockchip,sfc-no-dma:
44354d7675SEmmanuel Vadot    description: Disable DMA and utilize FIFO mode only
45354d7675SEmmanuel Vadot    type: boolean
46354d7675SEmmanuel Vadot
47354d7675SEmmanuel VadotpatternProperties:
48354d7675SEmmanuel Vadot  "^flash@[0-3]$":
49354d7675SEmmanuel Vadot    type: object
50*84943d6fSEmmanuel Vadot    additionalProperties: true
51*84943d6fSEmmanuel Vadot
52354d7675SEmmanuel Vadot    properties:
53354d7675SEmmanuel Vadot      reg:
54354d7675SEmmanuel Vadot        minimum: 0
55354d7675SEmmanuel Vadot        maximum: 3
56354d7675SEmmanuel Vadot
57354d7675SEmmanuel Vadotrequired:
58354d7675SEmmanuel Vadot  - compatible
59354d7675SEmmanuel Vadot  - reg
60354d7675SEmmanuel Vadot  - interrupts
61354d7675SEmmanuel Vadot  - clocks
62354d7675SEmmanuel Vadot  - clock-names
63354d7675SEmmanuel Vadot
64354d7675SEmmanuel VadotunevaluatedProperties: false
65354d7675SEmmanuel Vadot
66354d7675SEmmanuel Vadotexamples:
67354d7675SEmmanuel Vadot  - |
68354d7675SEmmanuel Vadot    #include <dt-bindings/clock/px30-cru.h>
69354d7675SEmmanuel Vadot    #include <dt-bindings/interrupt-controller/arm-gic.h>
70354d7675SEmmanuel Vadot    #include <dt-bindings/power/px30-power.h>
71354d7675SEmmanuel Vadot
72354d7675SEmmanuel Vadot    sfc: spi@ff3a0000 {
73354d7675SEmmanuel Vadot        compatible = "rockchip,sfc";
74354d7675SEmmanuel Vadot        reg = <0xff3a0000 0x4000>;
75354d7675SEmmanuel Vadot        interrupts = <GIC_SPI 56 IRQ_TYPE_LEVEL_HIGH>;
76354d7675SEmmanuel Vadot        clocks = <&cru SCLK_SFC>, <&cru HCLK_SFC>;
77354d7675SEmmanuel Vadot        clock-names = "clk_sfc", "hclk_sfc";
78354d7675SEmmanuel Vadot        pinctrl-0 = <&sfc_clk &sfc_cs &sfc_bus2>;
79354d7675SEmmanuel Vadot        pinctrl-names = "default";
80354d7675SEmmanuel Vadot        power-domains = <&power PX30_PD_MMC_NAND>;
81354d7675SEmmanuel Vadot        #address-cells = <1>;
82354d7675SEmmanuel Vadot        #size-cells = <0>;
83354d7675SEmmanuel Vadot
84354d7675SEmmanuel Vadot        flash@0 {
85354d7675SEmmanuel Vadot            compatible = "jedec,spi-nor";
86354d7675SEmmanuel Vadot            reg = <0>;
87354d7675SEmmanuel Vadot            spi-max-frequency = <108000000>;
88354d7675SEmmanuel Vadot            spi-rx-bus-width = <2>;
89354d7675SEmmanuel Vadot            spi-tx-bus-width = <2>;
90354d7675SEmmanuel Vadot        };
91354d7675SEmmanuel Vadot    };
92354d7675SEmmanuel Vadot
93354d7675SEmmanuel Vadot...
94