All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH V5 0/6] Virtio toolstack support for I2C and GPIO on Arm
@ 2022-08-22  9:15 Viresh Kumar
  2022-08-22  9:15 ` [PATCH V5 1/6] libxl: Add support for Virtio I2C device Viresh Kumar
                   ` (5 more replies)
  0 siblings, 6 replies; 20+ messages in thread
From: Viresh Kumar @ 2022-08-22  9:15 UTC (permalink / raw)
  To: xen-devel
  Cc: Viresh Kumar, Vincent Guittot, stratos-dev, Alex Bennée,
	Stefano Stabellini, Mathieu Poirier, Mike Holmes,
	Oleksandr Tyshchenko, Wei Liu, Juergen Gross, Julien Grall,
	anthony.perard

Hello,

This patchset adds toolstack support for I2C and GPIO virtio devices. This is
inspired from the work done by Oleksandr for the Disk device.

This is developed as part of Linaro's Project Stratos, where we are working
towards Hypervisor agnostic Rust based backend [1].

This is based of origin/staging (commit f6cd15188e09 ("amd/msr: implement
VIRT_SPEC_CTRL for HVM guests using legacy SSBD")) which already has Oleksandr's
patches applied.

V4->V5:
- Fixed indentation at few places.
- Removed/added blank lines.
- Added few comments.
- Added review tags from Oleksandr.
- Rebased over latest staging branch.

V3->V4:
- Update virtio_enabled independently of all devices, so we don't miss setting
  it to true.

- Add iommu handling for i2c/gpio and move it as part of
  make_virtio_mmio_node_common(), which gets backend_domid parameter as a
  result.

V2->V3:
- Rebased over latest tree and made changes according to changes in Oleksandr's
  patches from sometime back.
- Minor cleanups.

V1->V2:
- Patches 3/6 and 4/6 are new.
- Patches 5/6 and 6/6 updated based on the above two patches.
- Added link to the bindings for I2C and GPIO.
- Rebased over latest master branch.


Thanks.

--
Viresh

[1] https://lore.kernel.org/xen-devel/20220414092358.kepxbmnrtycz7mhe@vireshk-i7/

Viresh Kumar (6):
  libxl: Add support for Virtio I2C device
  libxl: Add support for Virtio GPIO device
  libxl: arm: Create alloc_virtio_mmio_params()
  libxl: arm: Split make_virtio_mmio_node()
  libxl: Allocate MMIO params for I2c device and update DT
  libxl: Allocate MMIO params for GPIO device and update DT

 tools/golang/xenlight/helpers.gen.go      | 212 ++++++++++++++++++++
 tools/golang/xenlight/types.gen.go        |  54 ++++++
 tools/include/libxl.h                     |  64 ++++++
 tools/include/libxl_utils.h               |   6 +
 tools/libs/light/Makefile                 |   2 +
 tools/libs/light/libxl_arm.c              | 175 ++++++++++++++---
 tools/libs/light/libxl_create.c           |  26 +++
 tools/libs/light/libxl_dm.c               |  34 +++-
 tools/libs/light/libxl_gpio.c             | 226 ++++++++++++++++++++++
 tools/libs/light/libxl_i2c.c              | 226 ++++++++++++++++++++++
 tools/libs/light/libxl_internal.h         |   2 +
 tools/libs/light/libxl_types.idl          |  48 +++++
 tools/libs/light/libxl_types_internal.idl |   2 +
 tools/ocaml/libs/xl/genwrap.py            |   2 +
 tools/ocaml/libs/xl/xenlight_stubs.c      |   2 +
 tools/xl/Makefile                         |   2 +-
 tools/xl/xl.h                             |   6 +
 tools/xl/xl_cmdtable.c                    |  30 +++
 tools/xl/xl_gpio.c                        | 142 ++++++++++++++
 tools/xl/xl_i2c.c                         | 142 ++++++++++++++
 tools/xl/xl_parse.c                       | 160 +++++++++++++++
 tools/xl/xl_parse.h                       |   2 +
 tools/xl/xl_sxp.c                         |   4 +
 23 files changed, 1539 insertions(+), 30 deletions(-)
 create mode 100644 tools/libs/light/libxl_gpio.c
 create mode 100644 tools/libs/light/libxl_i2c.c
 create mode 100644 tools/xl/xl_gpio.c
 create mode 100644 tools/xl/xl_i2c.c

-- 
2.31.1.272.g89b43f80a514



^ permalink raw reply	[flat|nested] 20+ messages in thread

end of thread, other threads:[~2022-09-08 13:50 UTC | newest]

Thread overview: 20+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-08-22  9:15 [PATCH V5 0/6] Virtio toolstack support for I2C and GPIO on Arm Viresh Kumar
2022-08-22  9:15 ` [PATCH V5 1/6] libxl: Add support for Virtio I2C device Viresh Kumar
2022-09-06 16:15   ` Anthony PERARD
2022-09-07 12:32     ` Viresh Kumar
2022-09-07 17:49       ` Julien Grall
2022-09-08  4:24         ` Viresh Kumar
2022-09-08  6:50           ` Juergen Gross
2022-09-08 13:49       ` Anthony PERARD
2022-08-22  9:15 ` [PATCH V5 2/6] libxl: Add support for Virtio GPIO device Viresh Kumar
2022-09-06 16:16   ` Anthony PERARD
2022-08-22  9:15 ` [PATCH V5 3/6] libxl: arm: Create alloc_virtio_mmio_params() Viresh Kumar
2022-09-06 16:29   ` Anthony PERARD
2022-08-22  9:15 ` [PATCH V5 4/6] libxl: arm: Split make_virtio_mmio_node() Viresh Kumar
2022-09-06 16:32   ` Anthony PERARD
2022-08-22  9:15 ` [PATCH V5 5/6] libxl: Allocate MMIO params for I2c device and update DT Viresh Kumar
2022-09-06 16:38   ` Anthony PERARD
2022-08-22  9:15 ` [PATCH V5 6/6] libxl: Allocate MMIO params for GPIO " Viresh Kumar
2022-09-06 16:43   ` Anthony PERARD
2022-09-07 18:02   ` Julien Grall
2022-09-08  5:44     ` Viresh Kumar

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.