blob: 99848bc34f6e6fbb947c50ff45d05fbb611922f6 [file] [log] [blame]
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/serio/ps2-gpio.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: GPIO based PS/2
maintainers:
- Danilo Krummrich <danilokrummrich@dk-develop.de>
properties:
compatible:
const: ps2-gpio
data-gpios:
description:
the gpio used for the data signal - this should be flagged as
active high using open drain with (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)
from <dt-bindings/gpio/gpio.h> since the signal is open drain by
definition
maxItems: 1
clk-gpios:
description:
the gpio used for the clock signal - this should be flagged as
active high using open drain with (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)
from <dt-bindings/gpio/gpio.h> since the signal is open drain by
definition
maxItems: 1
interrupts:
description:
The given interrupt should trigger on the falling edge of the clock line.
maxItems: 1
write-enable:
type: boolean
description:
Indicates whether write function is provided to serio device. Possibly
providing the write function will not work, because of the tough timing
requirements.
required:
- compatible
- data-gpios
- clk-gpios
- interrupts
additionalProperties: false
examples:
- |
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/interrupt-controller/irq.h>
ps2 {
compatible = "ps2-gpio";
interrupt-parent = <&gpio>;
interrupts = <23 IRQ_TYPE_EDGE_FALLING>;
data-gpios = <&gpio 24 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
clk-gpios = <&gpio 23 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
write-enable;
};