From 60c1fc368a98cdad02c7a3b42ec0c14b61557fd6 Mon Sep 17 00:00:00 2001 From: Bowen Wang Date: Tue, 8 Oct 2024 21:30:21 +0800 Subject: [PATCH] virtio.h: add apis virtio_read/write_config_member Used to read/write the virtio deivces' configuration space member Signed-off-by: Bowen Wang --- lib/include/openamp/virtio.h | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/lib/include/openamp/virtio.h b/lib/include/openamp/virtio.h index 84bb65b5..ef0d8849 100644 --- a/lib/include/openamp/virtio.h +++ b/lib/include/openamp/virtio.h @@ -138,6 +138,20 @@ struct virtio_device_id { #define VIRTIO_TRANSPORT_F_START 28 #define VIRTIO_TRANSPORT_F_END 32 +/* + * Read the virtio device configuration member. + */ +#define virtio_read_config_member(vdev, structname, member, ptr) \ + virtio_read_config(vdev, metal_offset_of(structname, member), \ + ptr, sizeof(((structname *)0)->member)) + +/* + * Write the virtio device configuration member. + */ +#define virtio_write_config_member(vdev, structname, member, ptr) \ + virtio_write_config(vdev, metal_offset_of(structname, member), \ + ptr, sizeof(((structname *)0)->member)) + #ifdef VIRTIO_DEBUG #include