mirror of
https://github.com/torvalds/linux.git
synced 2024-12-18 17:12:55 +00:00
dt-bindings: fix sifive gpio properties
The sifive gpio IP block supports up to 32 GPIOs. Reflect that in the interrupts property description and maxItems. Also add the standard ngpios property to describe the number of GPIOs available on the implementation. Also add the "canaan,k210-gpiohs" compatible string to indicate the use of this gpio controller in the Canaan Kendryte K210 SoC. If this compatible string is used, do not define the clocks property as required as the K210 SoC does not have a software controllable clock for the Sifive gpio IP block. Signed-off-by: Damien Le Moal <damien.lemoal@wdc.com> Reviewed-by: Rob Herring <robh@kernel.org> Signed-off-by: Palmer Dabbelt <palmerdabbelt@google.com>
This commit is contained in:
parent
8fc8719c28
commit
3933cf6afd
@ -16,6 +16,7 @@ properties:
|
||||
- enum:
|
||||
- sifive,fu540-c000-gpio
|
||||
- sifive,fu740-c000-gpio
|
||||
- canaan,k210-gpiohs
|
||||
- const: sifive,gpio0
|
||||
|
||||
reg:
|
||||
@ -23,9 +24,9 @@ properties:
|
||||
|
||||
interrupts:
|
||||
description:
|
||||
interrupt mapping one per GPIO. Maximum 16 GPIOs.
|
||||
Interrupt mapping, one per GPIO. Maximum 32 GPIOs.
|
||||
minItems: 1
|
||||
maxItems: 16
|
||||
maxItems: 32
|
||||
|
||||
interrupt-controller: true
|
||||
|
||||
@ -38,6 +39,14 @@ properties:
|
||||
"#gpio-cells":
|
||||
const: 2
|
||||
|
||||
ngpios:
|
||||
description:
|
||||
The number of GPIOs available on the controller implementation.
|
||||
It is 16 for the SiFive SoCs and 32 for the Canaan K210.
|
||||
minimum: 1
|
||||
maximum: 32
|
||||
default: 16
|
||||
|
||||
gpio-controller: true
|
||||
|
||||
required:
|
||||
@ -46,10 +55,20 @@ required:
|
||||
- interrupts
|
||||
- interrupt-controller
|
||||
- "#interrupt-cells"
|
||||
- clocks
|
||||
- "#gpio-cells"
|
||||
- gpio-controller
|
||||
|
||||
if:
|
||||
properties:
|
||||
compatible:
|
||||
contains:
|
||||
enum:
|
||||
- sifive,fu540-c000-gpio
|
||||
- sifive,fu740-c000-gpio
|
||||
then:
|
||||
required:
|
||||
- clocks
|
||||
|
||||
additionalProperties: false
|
||||
|
||||
examples:
|
||||
|
Loading…
Reference in New Issue
Block a user