100 lines · yaml
1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)2%YAML 1.23---4$id: http://devicetree.org/schemas/mfd/atmel,sama5d2-flexcom.yaml#5$schema: http://devicetree.org/meta-schemas/core.yaml#6 7title: Microchip Flexcom (Flexible Serial Communication Unit)8 9maintainers:10 - Kavyasree Kotagiri <kavyasree.kotagiri@microchip.com>11 12description:13 The Microchip Flexcom is just a wrapper which embeds a SPI controller,14 an I2C controller and an USART. Only one function can be used at a15 time and is chosen at boot time according to the device tree.16 17properties:18 compatible:19 oneOf:20 - const: atmel,sama5d2-flexcom21 - items:22 - const: microchip,sam9x7-flexcom23 - const: atmel,sama5d2-flexcom24 - items:25 - const: microchip,sama7g5-flexcom26 - const: atmel,sama5d2-flexcom27 28 29 reg:30 maxItems: 131 32 clocks:33 maxItems: 134 35 "#address-cells":36 const: 137 38 "#size-cells":39 const: 140 41 ranges:42 description:43 One range for the full I/O register region. (including USART,44 TWI and SPI registers).45 items:46 maxItems: 347 48 atmel,flexcom-mode:49 description: |50 Specifies the flexcom mode as follows:51 1: USART52 2: SPI53 3: I2C.54 $ref: /schemas/types.yaml#/definitions/uint3255 enum: [1, 2, 3]56 57patternProperties:58 "^serial@[0-9a-f]+$":59 type: object60 description:61 Child node describing USART. See atmel-usart.txt for details62 of USART bindings.63 64 "^spi@[0-9a-f]+$":65 type: object66 description:67 Child node describing SPI. See ../spi/spi_atmel.txt for details68 of SPI bindings.69 70 "^i2c@[0-9a-f]+$":71 $ref: /schemas/i2c/atmel,at91sam-i2c.yaml72 description:73 Child node describing I2C.74 75required:76 - compatible77 - reg78 - clocks79 - "#address-cells"80 - "#size-cells"81 - ranges82 - atmel,flexcom-mode83 84additionalProperties: false85 86examples:87 - |88 #include <dt-bindings/interrupt-controller/arm-gic.h>89 90 flx0: flexcom@f8034000 {91 compatible = "atmel,sama5d2-flexcom";92 reg = <0xf8034000 0x200>;93 clocks = <&flx0_clk>;94 #address-cells = <1>;95 #size-cells = <1>;96 ranges = <0x0 0xf8034000 0x800>;97 atmel,flexcom-mode = <2>;98 };99...100