1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2%YAML 1.2 3--- 4$id: http://devicetree.org/schemas/serio/ps2-gpio.yaml# 5$schema: http://devicetree.org/meta-schemas/core.yaml# 6 7title: Bindings for GPIO based PS/2 8 9maintainers: 10 - Danilo Krummrich <danilokrummrich@dk-develop.de> 11 12properties: 13 compatible: 14 const: ps2-gpio 15 16 data-gpios: 17 description: 18 the gpio used for the data signal - this should be flagged as 19 active high using open drain with (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN) 20 from <dt-bindings/gpio/gpio.h> since the signal is open drain by 21 definition 22 maxItems: 1 23 24 clk-gpios: 25 description: 26 the gpio used for the clock signal - this should be flagged as 27 active high using open drain with (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN) 28 from <dt-bindings/gpio/gpio.h> since the signal is open drain by 29 definition 30 maxItems: 1 31 32 interrupts: 33 description: 34 The given interrupt should trigger on the falling edge of the clock line. 35 maxItems: 1 36 37 write-enable: 38 type: boolean 39 description: 40 Indicates whether write function is provided to serio device. Possibly 41 providing the write function will not work, because of the tough timing 42 requirements. 43 44required: 45 - compatible 46 - data-gpios 47 - clk-gpios 48 - interrupts 49 50additionalProperties: false 51 52examples: 53 - | 54 #include <dt-bindings/gpio/gpio.h> 55 #include <dt-bindings/interrupt-controller/irq.h> 56 57 ps2 { 58 compatible = "ps2-gpio"; 59 interrupt-parent = <&gpio>; 60 interrupts = <23 IRQ_TYPE_EDGE_FALLING>; 61 data-gpios = <&gpio 24 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 62 clk-gpios = <&gpio 23 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 63 write-enable; 64 }; 65