:orphan:
.. raw:: html
.. dtcompatible:: adi,adp5585-gpio
.. _dtbinding_adi_adp5585_gpio:
adi,adp5585-gpio
################
Vendor: :ref:`Analog Devices, Inc. `
.. note::
An implementation of a driver matching this compatible is available in
:zephyr_file:`drivers/gpio/gpio_adp5585.c`.
Description
***********
.. code-block:: none
ADP5585 GPIO Controller
Properties
**********
Top level properties
====================
These property descriptions apply to "adi,adp5585-gpio"
nodes themselves. This page also describes child node
properties in the following sections.
.. tabs::
.. group-tab:: Node specific properties
Properties not inherited from the base binding file.
.. list-table::
:widths: 1 1 4
:header-rows: 1
* - Name
- Type
- Details
* - ``#gpio-cells``
- ``int``
- .. code-block:: none
Number of items to expect in a GPIO specifier
This property is **required**.
Constant value: ``2``
* - ``ngpios``
- ``int``
- .. code-block:: none
Number of GPIOs available on port expander.
Default value: ``32``
Constant value: ``13``
* - ``gpio-reserved-ranges``
- ``array``
- .. code-block:: none
Ranges of GPIOs reserved unavailable on port expander.
The ADP5585 has 10 GPIO lines divided in 2 groups. GPIO number
5, 6, 7 is reserved. That's to say, GPIO R0~R4 occupy line
number 0~4, GPIO C0~C4 occupy line number 8~12.
This property is **required**.
Constant value: ``[5, 3]``
* - ``gpio-controller``
- ``boolean``
- .. code-block:: none
Convey's this node is a GPIO controller
This property is **required**.
* - ``gpio-line-names``
- ``string-array``
- .. code-block:: none
This is an array of strings defining the names of the GPIO lines
going out of the GPIO controller
.. group-tab:: Deprecated node specific properties
Deprecated properties not inherited from the base binding file.
(None)
.. group-tab:: Base properties
Properties inherited from the base binding file, which defines
common properties that may be set on many nodes. Not all of these
may apply to the "adi,adp5585-gpio" compatible.
(None)
Child node properties
=====================
.. list-table::
:widths: 1 1 4
:header-rows: 1
* - Name
- Type
- Details
* - ``gpio-hog``
- ``boolean``
- .. code-block:: none
Conveys this node is a GPIO hog.
This property is **required**.
* - ``gpios``
- ``array``
- .. code-block:: none
This is an array of GPIO specifiers (e.g. pin, flags) to be hogged. The number of array
entries must be an integer multiple of the number of GPIO specifier cells for the parent
GPIO controller.
This property is **required**.
* - ``input``
- ``boolean``
- .. code-block:: none
If this property is set, the GPIO is configured as an input. This property takes
precedence over the output-low and output-high properties.
* - ``output-low``
- ``boolean``
- .. code-block:: none
If this property is set, the GPIO is configured as an output set to logical low. This
property takes precedence over the output-high property.
* - ``output-high``
- ``boolean``
- .. code-block:: none
If this property is set, the GPIO is configured as an output set to logical high.
* - ``line-name``
- ``string``
- .. code-block:: none
Optional GPIO line name.
Specifier cell names
********************
- gpio cells: pin, flags