65 lines · yaml
1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)2%YAML 1.23---4$id: http://devicetree.org/schemas/serio/ps2-gpio.yaml#5$schema: http://devicetree.org/meta-schemas/core.yaml#6 7title: GPIO based PS/28 9maintainers:10 - Danilo Krummrich <danilokrummrich@dk-develop.de>11 12properties:13 compatible:14 const: ps2-gpio15 16 data-gpios:17 description:18 the gpio used for the data signal - this should be flagged as19 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 by21 definition22 maxItems: 123 24 clk-gpios:25 description:26 the gpio used for the clock signal - this should be flagged as27 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 by29 definition30 maxItems: 131 32 interrupts:33 description:34 The given interrupt should trigger on the falling edge of the clock line.35 maxItems: 136 37 write-enable:38 type: boolean39 description:40 Indicates whether write function is provided to serio device. Possibly41 providing the write function will not work, because of the tough timing42 requirements.43 44required:45 - compatible46 - data-gpios47 - clk-gpios48 - interrupts49 50additionalProperties: false51 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