[PATCH 0/6] Add Quanta GSZ BMC machine and PCA I2C GPIO expanders

Titus Rwantare posted 6 patches 2 weeks, 1 day ago
hw/arm/Kconfig                  |   1 +
hw/arm/npcm7xx_boards.c         | 160 +++++++++++++
hw/gpio/Kconfig                 |   5 +
hw/gpio/meson.build             |   1 +
hw/gpio/pca_i2c_gpio.c          | 409 ++++++++++++++++++++++++++++++++
hw/gpio/trace-events            |   5 +
hw/i2c/core.c                   |   8 +-
hw/i2c/trace-events             |   2 +-
include/hw/gpio/pca_i2c_gpio.h  |  70 ++++++
include/qemu/bitops.h           |  26 ++
tests/qtest/meson.build         |   1 +
tests/qtest/pca_i2c_gpio-test.c | 188 +++++++++++++++
12 files changed, 872 insertions(+), 4 deletions(-)
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
[PATCH 0/6] Add Quanta GSZ BMC machine and PCA I2C GPIO expanders
Posted by Titus Rwantare 2 weeks, 1 day ago
This patch series bundles the GPIO sensors previously sent for review:
https://lore.kernel.org/all/20230206194936.168843-1-titusr@google.com

and the GSZ board commit sent here:
https://lore.kernel.org/all/20241007171700.1594342-1-titusr@google.com/

The Quanta GSZ a current Google machine of the day. This machine will be used as a platform to enable features such as the PECI bmc interface, and Intel eSPI virtual wire interface in QEMU.

This patch series also contains a set of i2c GPIO expanders, with support for 4, 8, and 16 GPIO connections.

The devices are configured as GPIO inputs by default, but can have pins configured to be inputs with qmp commands.

These sensors and machine are maintained and used in CI daily within Google.

Titus Rwantare (6):
  bitops.h: add deposit16 function
  hw/gpio: add PCA953x i2c GPIO expanders
  hw/gpio: add PCA9536 i2c gpio expander
  hw/i2c: add canonical path to i2c event traces
  hw/arm: imply I2C_DEVICES on NPCM7xx
  hw/arm: add Quanta GSZ bmc machine

 hw/arm/Kconfig                  |   1 +
 hw/arm/npcm7xx_boards.c         | 160 +++++++++++++
 hw/gpio/Kconfig                 |   5 +
 hw/gpio/meson.build             |   1 +
 hw/gpio/pca_i2c_gpio.c          | 409 ++++++++++++++++++++++++++++++++
 hw/gpio/trace-events            |   5 +
 hw/i2c/core.c                   |   8 +-
 hw/i2c/trace-events             |   2 +-
 include/hw/gpio/pca_i2c_gpio.h  |  70 ++++++
 include/qemu/bitops.h           |  26 ++
 tests/qtest/meson.build         |   1 +
 tests/qtest/pca_i2c_gpio-test.c | 188 +++++++++++++++
 12 files changed, 872 insertions(+), 4 deletions(-)
 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.47.0.277.g8800431eea-goog