:orphan:
.. raw:: html
.. dtcompatible:: infineon,tle9104-gpio
.. _dtbinding_infineon_tle9104_gpio:
infineon,tle9104-gpio (on tle9104 bus)
######################################
Vendor: :ref:`Infineon Technologies `
.. note::
An implementation of a driver matching this compatible is available in
:zephyr_file:`drivers/gpio/gpio_tle9104.c`.
Description
***********
.. code-block:: none
Infineon TLE9104 4-channel powertrain switch GPIO instance
Properties
**********
Top level properties
====================
These property descriptions apply to "infineon,tle9104-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 supported
This property is **required**.
Default value: ``32``
Constant value: ``4``
* - ``gpio-controller``
- ``boolean``
- .. code-block:: none
Convey's this node is a GPIO controller
This property is **required**.
* - ``gpio-reserved-ranges``
- ``array``
- .. code-block:: none
If not all the GPIOs at offsets 0...N-1 are usable for ngpios = , then
this property contains an additional set of tuples which specify which GPIOs
are unusable. This property indicates the start and size of the GPIOs
that can't be used.
For example, setting "gpio-reserved-ranges = <3 2>, <10 1>;" means that
GPIO offsets 3, 4, and 10 are not usable, even if ngpios = <18>.
* - ``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 "infineon,tle9104-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