Re: [PATCH 1/3] dt-bindings: Add a binding for the RPi firmware GPIO driver.

From: Linus Walleij
Date: Fri Sep 23 2016 - 04:57:36 EST


On Mon, Sep 19, 2016 at 6:13 PM, Eric Anholt <eric@xxxxxxxxxx> wrote:

> The RPi firmware exposes all of the board's GPIO lines through
> property calls. Linux chooses to control most lines directly through
> the pinctrl driver, but for the FXL6408 GPIO expander on the Pi3, we
> need to access them through the firmware.
>
> Signed-off-by: Eric Anholt <eric@xxxxxxxxxx>

Aha

> +++ b/Documentation/devicetree/bindings/gpio/gpio-raspberrypi-firmware.txt
> @@ -0,0 +1,22 @@
> +Raspberry Pi power domain driver

Really? :)

> +Required properties:
> +
> +- compatible: Should be "raspberrypi,firmware-gpio"

Usually this is vendor,compat, is the vendors name "raspberrypi"?

> +- gpio-controller: Marks the device node as a gpio controller
> +- #gpio-cells: Should be <2> for GPIO number and flags
> +- ngpios: Number of GPIO lines to control. See gpio.txt

Is this ever anything else than 8? Else omit it and hardcode
8 in the driver instead.

> +- firmware: Reference to the RPi firmware device node

Reference the DT binding for this.

> +- raspberrypi,firmware-gpio-offset:
> + Number the firmware uses for the first GPIO line
> + controlled by this driver

Does this differ between different instances of this hardware or
can it just be open coded in the driver instead?

Yours,
Linus Walleij