| # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) |
| %YAML 1.2 |
| --- |
| $id: http://devicetree.org/schemas/pinctrl/mobileye,eyeq5-pinctrl.yaml# |
| $schema: http://devicetree.org/meta-schemas/core.yaml# |
| |
| title: Mobileye EyeQ5 pin controller |
| |
| description: > |
| The EyeQ5 pin controller handles the two pin banks of the system. It belongs |
| to a system-controller block called OLB. |
| |
| Pin control is about bias (pull-down, pull-up), drive strength and muxing. Pin |
| muxing supports two functions for each pin: first is GPIO, second is |
| pin-dependent. |
| |
| Pins and groups are bijective. |
| |
| maintainers: |
| - Grégory Clement <gregory.clement@bootlin.com> |
| - Théo Lebrun <theo.lebrun@bootlin.com> |
| - Vladimir Kondratiev <vladimir.kondratiev@mobileye.com> |
| |
| $ref: pinctrl.yaml# |
| |
| properties: |
| compatible: |
| enum: |
| - mobileye,eyeq5-pinctrl |
| |
| reg: |
| maxItems: 1 |
| |
| patternProperties: |
| "-pins?$": |
| type: object |
| description: Pin muxing configuration. |
| $ref: pinmux-node.yaml# |
| additionalProperties: false |
| properties: |
| pins: true |
| function: |
| enum: [gpio, |
| # Bank A |
| timer0, timer1, timer2, timer5, uart0, uart1, can0, can1, spi0, |
| spi1, refclk0, |
| # Bank B |
| timer3, timer4, timer6, uart2, can2, spi2, spi3, mclk0] |
| bias-disable: true |
| bias-pull-down: true |
| bias-pull-up: true |
| drive-strength: true |
| required: |
| - pins |
| - function |
| allOf: |
| - if: |
| properties: |
| function: |
| const: gpio |
| then: |
| properties: |
| pins: |
| items: # PA0 - PA28, PB0 - PB22 |
| pattern: '^(P(A|B)1?[0-9]|PA2[0-8]|PB2[0-2])$' |
| - if: |
| properties: |
| function: |
| const: timer0 |
| then: |
| properties: |
| pins: |
| items: |
| enum: [PA0, PA1] |
| - if: |
| properties: |
| function: |
| const: timer1 |
| then: |
| properties: |
| pins: |
| items: |
| enum: [PA2, PA3] |
| - if: |
| properties: |
| function: |
| const: timer2 |
| then: |
| properties: |
| pins: |
| items: |
| enum: [PA4, PA5] |
| - if: |
| properties: |
| function: |
| const: timer5 |
| then: |
| properties: |
| pins: |
| items: |
| enum: [PA6, PA7, PA8, PA9] |
| - if: |
| properties: |
| function: |
| const: uart0 |
| then: |
| properties: |
| pins: |
| items: |
| enum: [PA10, PA11] |
| - if: |
| properties: |
| function: |
| const: uart1 |
| then: |
| properties: |
| pins: |
| items: |
| enum: [PA12, PA13] |
| - if: |
| properties: |
| function: |
| const: can0 |
| then: |
| properties: |
| pins: |
| items: |
| enum: [PA14, PA15] |
| - if: |
| properties: |
| function: |
| const: can1 |
| then: |
| properties: |
| pins: |
| items: |
| enum: [PA16, PA17] |
| - if: |
| properties: |
| function: |
| const: spi0 |
| then: |
| properties: |
| pins: |
| items: |
| enum: [PA18, PA19, PA20, PA21, PA22] |
| - if: |
| properties: |
| function: |
| const: spi1 |
| then: |
| properties: |
| pins: |
| items: |
| enum: [PA23, PA24, PA25, PA26, PA27] |
| - if: |
| properties: |
| function: |
| const: refclk0 |
| then: |
| properties: |
| pins: |
| items: |
| enum: [PA28] |
| - if: |
| properties: |
| function: |
| const: timer3 |
| then: |
| properties: |
| pins: |
| items: |
| enum: [PB0, PB1] |
| - if: |
| properties: |
| function: |
| const: timer4 |
| then: |
| properties: |
| pins: |
| items: |
| enum: [PB2, PB3] |
| - if: |
| properties: |
| function: |
| const: timer6 |
| then: |
| properties: |
| pins: |
| items: |
| enum: [PB4, PB5, PB6, PB7] |
| - if: |
| properties: |
| function: |
| const: uart2 |
| then: |
| properties: |
| pins: |
| items: |
| enum: [PB8, PB9] |
| - if: |
| properties: |
| function: |
| const: can2 |
| then: |
| properties: |
| pins: |
| items: |
| enum: [PB10, PB11] |
| - if: |
| properties: |
| function: |
| const: spi2 |
| then: |
| properties: |
| pins: |
| items: |
| enum: [PB12, PB13, PB14, PB15, PB16] |
| - if: |
| properties: |
| function: |
| const: spi3 |
| then: |
| properties: |
| pins: |
| items: |
| enum: [PB17, PB18, PB19, PB20, PB21] |
| - if: |
| properties: |
| function: |
| const: mclk0 |
| then: |
| properties: |
| pins: |
| items: |
| enum: [PB22] |
| |
| required: |
| - compatible |
| - reg |
| |
| additionalProperties: false |