mirror of
git://git.yoctoproject.org/linux-yocto.git
synced 2025-10-22 23:13:01 +02:00
vdpa/vp_vdpa: implement kick_vq_with_data callback
Implement the kick_vq_with_data vDPA callback. On kick, we pass the next available data to the hardware by writing it in the kick offset. Signed-off-by: Yuxue Liu <yuxue.liu@jaguarmicro.com> Message-Id: <20241203023743.1757-1-yuxue.liu@jaguarmicro.com> Signed-off-by: Michael S. Tsirkin <mst@redhat.com> Acked-by: Jason Wang <jasowang@redhat.com>
This commit is contained in:
parent
302b49daf0
commit
33bb2d1606
|
@ -367,6 +367,14 @@ static void vp_vdpa_kick_vq(struct vdpa_device *vdpa, u16 qid)
|
|||
vp_iowrite16(qid, vp_vdpa->vring[qid].notify);
|
||||
}
|
||||
|
||||
static void vp_vdpa_kick_vq_with_data(struct vdpa_device *vdpa, u32 data)
|
||||
{
|
||||
struct vp_vdpa *vp_vdpa = vdpa_to_vp(vdpa);
|
||||
u16 qid = data & 0xFFFF;
|
||||
|
||||
vp_iowrite32(data, vp_vdpa->vring[qid].notify);
|
||||
}
|
||||
|
||||
static u32 vp_vdpa_get_generation(struct vdpa_device *vdpa)
|
||||
{
|
||||
struct virtio_pci_modern_device *mdev = vdpa_to_mdev(vdpa);
|
||||
|
@ -472,6 +480,7 @@ static const struct vdpa_config_ops vp_vdpa_ops = {
|
|||
.get_vq_size = vp_vdpa_get_vq_size,
|
||||
.set_vq_address = vp_vdpa_set_vq_address,
|
||||
.kick_vq = vp_vdpa_kick_vq,
|
||||
.kick_vq_with_data = vp_vdpa_kick_vq_with_data,
|
||||
.get_generation = vp_vdpa_get_generation,
|
||||
.get_device_id = vp_vdpa_get_device_id,
|
||||
.get_vendor_id = vp_vdpa_get_vendor_id,
|
||||
|
|
Loading…
Reference in New Issue
Block a user