From: Titus Rwantare <titusr@google.com>
To: peter.maydell@linaro.org
Cc: qemu-arm@nongnu.org, qemu-devel@nongnu.org,
Titus Rwantare <titusr@google.com>
Subject: [PATCH 0/3] PCA I2C GPIO expanders
Date: Mon, 6 Feb 2023 19:49:33 +0000 [thread overview]
Message-ID: <20230206194936.168843-1-titusr@google.com> (raw)
This patch series contains a set of i2c GPIO expanders,
with support for 4, 8, and 16 GPIO connections.
The devices are configured as GPIO outputs by default, but can have pins
configured to be inputs with qmp commands.
For example, the following snippet in a board file for a system,
configures a 16 bit pca6416 to have pins 8-11 as inputs, then asserts
them.
dev = DEVICE(i2c_slave_create_simple(npcm7xx_i2c_get_bus(soc, 3), "pca6416", 0x72));
object_property_set_uint(OBJECT(dev), "gpio_config", 0x0F00, &error_abort);
object_property_set_uint(OBJECT(dev), "gpio_input", 0x0F00, &error_abort);
We currently use these to test hardware presence and LEDs in simulation.
Thanks
Titus Rwantare (3):
hw/gpio: add PCA6414 i2c GPIO expander
hw/gpio: add PCA9538 8-bit GPIO expander
hw/gpio: add PCA9536 i2c gpio expander
hw/arm/Kconfig | 1 +
hw/gpio/meson.build | 1 +
hw/gpio/pca_i2c_gpio.c | 482 ++++++++++++++++++++++++++++++++
hw/gpio/trace-events | 5 +
hw/i2c/Kconfig | 4 +
include/hw/gpio/pca_i2c_gpio.h | 81 ++++++
tests/qtest/meson.build | 1 +
tests/qtest/pca_i2c_gpio-test.c | 169 +++++++++++
8 files changed, 744 insertions(+)
create mode 100644 hw/gpio/pca_i2c_gpio.c
create mode 100644 include/hw/gpio/pca_i2c_gpio.h
create mode 100644 tests/qtest/pca_i2c_gpio-test.c
--
2.39.1.519.gcb327c4b5f-goog
next reply other threads:[~2023-02-06 19:50 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-02-06 19:49 Titus Rwantare [this message]
2023-02-06 19:49 ` [PATCH 1/3] hw/gpio: add PCA6414 i2c GPIO expander Titus Rwantare
2023-02-06 21:38 ` Philippe Mathieu-Daudé
2023-02-08 22:40 ` Titus Rwantare
2023-02-09 7:17 ` Philippe Mathieu-Daudé
2023-02-06 22:27 ` Corey Minyard
2023-02-08 22:40 ` Titus Rwantare
2023-02-07 1:29 ` Dong, Eddie
2023-02-08 22:40 ` Titus Rwantare
2023-02-07 3:42 ` Joel Stanley
2023-02-08 22:40 ` Titus Rwantare
2023-02-06 19:49 ` [PATCH 2/3] hw/gpio: add PCA9538 8-bit " Titus Rwantare
2023-02-06 19:49 ` [PATCH 3/3] hw/gpio: add PCA9536 i2c gpio expander Titus Rwantare
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=20230206194936.168843-1-titusr@google.com \
--to=titusr@google.com \
--cc=peter.maydell@linaro.org \
--cc=qemu-arm@nongnu.org \
--cc=qemu-devel@nongnu.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).