:orphan:
.. raw:: html
.. dtcompatible:: rohm,bd8lb600fs-gpio
.. _dtbinding_rohm_bd8lb600fs_gpio:
rohm,bd8lb600fs-gpio (on bd8lb600fs bus)
########################################
Vendor: :ref:`ROHM Semiconductor Co., Ltd `
.. note::
An implementation of a driver matching this compatible is available in
:zephyr_file:`drivers/gpio/gpio_bd8lb600fs.c`.
Description
***********
.. code-block:: none
This is a representation of the Rohm BD8LB600FS SPI Gpio Expander.
Multiple instances may be daisy chained, which can be configured
via the number of supported GPIOs.
Properties
**********
Top level properties
====================
These property descriptions apply to "rohm,bd8lb600fs-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 pins for the expander. This must be a multiple of 8.
The number of pins also defines how many devices are daisy chained.
Set to 8 for one instance without daisy chaining.
This property is **required**.
Default value: ``32``
Legal values: ``8``, ``16``, ``24``, ``32``
* - ``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 "rohm,bd8lb600fs-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