From: baruch@tkos.co.il (Baruch Siach)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v5 0/5] gpio: driver for the RPi3 GPIO expander
Date: Tue, 20 Feb 2018 14:19:30 +0200 [thread overview]
Message-ID: <cover.1519128054.git.baruch@tkos.co.il> (raw)
The Raspberry Pi 3 has a GPIO expander that controls, among others, the
activity LED, and the camera connector GPIOs. The GPIO expander on an I2C bus
that is not directly controlled from the ARM core. The VC4 firmware controls
the I2C bus, and allows the ARM core to set/get GPIO settings over its mailbox
interface.
This series adds support for the RPi3 expander.
The driver is ported from the downstream kernel at
https://github.com/raspberrypi/linux/, branch rpi-4.9.y.
This series is based on commit v4.16-rc2.
Changes in v5:
* Remove the 'firmware' property from the binding as suggested by Rob
Herring. The firmware node is the parent of the gpio node, so use
of_get_parent() instead of a phandle.
Changes in v4:
* Move the gpio expander node under the firmware node; this requires an
addtional patch that makes the firmware node into a bus
* Rename the gpio node to just 'gpio'
* Drop the platform driver .owner set
Changes in v3:
* Kconfig tweaks
* Check rpi_exp_gpio_get_polarity() return value
* Redundant header removal
* Redundant platform_set_drvdata() call removal
* Small coding style changes
Changes in v2:
* Driver renamed to gpio-raspberrypi-exp
* Compatible string renamed to "raspberrypi,firmware-gpio"
* Firmware error check
* Smaller tweaks listed in individual patches
Baruch Siach (4):
ARM: bcm2835: sync firmware properties with downstream
dt-bindings: gpio: add raspberry pi GPIO expander binding
ARM: dts: bcm2835: make the firmware node into a bus
ARM: dts: bcm2837-rpi-3-b: add GPIO expander
Dave Stevenson (1):
gpio: raspberrypi-exp: Driver for RPi3 GPIO expander via mailbox
service
.../bindings/gpio/raspberrypi,firmware-gpio.txt | 30 +++
arch/arm/boot/dts/bcm2835-rpi.dtsi | 4 +-
arch/arm/boot/dts/bcm2837-rpi-3-b.dts | 17 ++
drivers/gpio/Kconfig | 9 +
drivers/gpio/Makefile | 1 +
drivers/gpio/gpio-raspberrypi-exp.c | 252 +++++++++++++++++++++
include/soc/bcm2835/raspberrypi-firmware.h | 18 ++
7 files changed, 330 insertions(+), 1 deletion(-)
create mode 100644 Documentation/devicetree/bindings/gpio/raspberrypi,firmware-gpio.txt
create mode 100644 drivers/gpio/gpio-raspberrypi-exp.c
--
2.16.1
next reply other threads:[~2018-02-20 12:19 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-02-20 12:19 Baruch Siach [this message]
2018-02-20 12:19 ` [PATCH v5 1/5] ARM: bcm2835: sync firmware properties with downstream Baruch Siach
2018-02-22 12:47 ` Linus Walleij
2018-02-20 12:19 ` [PATCH v5 2/5] dt-bindings: gpio: add raspberry pi GPIO expander binding Baruch Siach
2018-02-20 13:40 ` Rob Herring
2018-02-22 12:49 ` Linus Walleij
2018-02-20 12:19 ` [PATCH v5 3/5] gpio: raspberrypi-exp: Driver for RPi3 GPIO expander via mailbox service Baruch Siach
2018-02-22 12:50 ` Linus Walleij
2018-02-20 12:19 ` [PATCH v5 4/5] ARM: dts: bcm2835: make the firmware node into a bus Baruch Siach
2018-02-22 12:51 ` Linus Walleij
2018-02-20 12:19 ` [PATCH v5 5/5] ARM: dts: bcm2837-rpi-3-b: add GPIO expander Baruch Siach
2018-02-22 12:52 ` Linus Walleij
2018-02-22 20:06 ` Eric Anholt
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=cover.1519128054.git.baruch@tkos.co.il \
--to=baruch@tkos.co.il \
--cc=linux-arm-kernel@lists.infradead.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).