1# SPDX-FileCopyrightText: Copyright (c) 2024 Navimatix GmbH
2# SPDX-License-Identifier: Apache-2.0
3
4description: |
5  TI DRV8424 stepper motor driver.
6  SAFETY:
7  The counter needs to support both set_top_value functionalities: Setting a new top value and
8  attaching an ISR to the turnaround.
9  SAFETY:
10  The step gpio pin needs to be connected directly to the SOC GPIO controller, connecting the
11  pin to a controller connected via a bus such as i2c or others will lead to undefined behaviour.
12
13  Example:
14  drv8424: drv8424 {
15    status = "okay";
16    compatible = "ti,drv8424";
17
18    dir-gpios = <&arduino_header 18 0>;
19    step-gpios = <&arduino_header 19 0>;
20    sleep-gpios = <&arduino_header 15 GPIO_ACTIVE_LOW>;
21    en-gpios  = <&arduino_header 14 0>;
22    m0-gpios = <&mikroe_stepper_gpios 0 0>;
23    m1-gpios = <&mikroe_stepper_gpios 1 0>;
24    counter = <&counter2>;
25  };
26
27
28compatible: "ti,drv8424"
29
30include:
31  - name: stepper-controller.yaml
32    property-allowlist:
33      - micro-step-res
34      - step-gpios
35      - dir-gpios
36      - en-gpios
37      - counter
38
39properties:
40  fault-gpios:
41    type: phandle-array
42    description: Fault pin.
43
44  sleep-gpios:
45    type: phandle-array
46    description: Sleep pin (active low).
47
48  m0-gpios:
49    required: true
50    type: phandle-array
51    description: Microstep configuration pin 0.
52
53  m1-gpios:
54    required: true
55    type: phandle-array
56    description: Microstep configuration pin 1.
57