> From: Xuan Zhuo <xuanz...@linux.alibaba.com>
> Sent: Thursday, August 3, 2023 4:36 PM


> 
> OK.
> 
> 
> >
> > > +        u8 mac[6];
> > > +        le16 status;
> > > +        le16 max_virtqueue_pairs;
> > > +        le16 mtu;
> > > +        le32 speed;
> > > +        u8 duplex;
> >
> > We should above split constant config space fields and below run time fields
> meant for debug purpose.
> > We are working on the member device migration proposal and below fields
> belong to "device context" should be available through such separate command.
> > But if you do it before, please cover the whole device state and we will be
> able to reuse for multiple use-cases.
> 
> 
> I am not sure I got fully.
> 
> I will try.

Something like below.

struct virtio_field {
        le32 type;      /* contains the value of enum virtio_dev_field_type */ 
        le32 size;      /* size of the data field in bytes */
        u8 data[]; 
};

enum virtio_dev_field_type {
        VIRTIO_DEV_PCI_COMMON_CFG,      /*  struct virtio_dev_common_cfg */ 
        VIRTIO_DEV_CFG_SPACE,   /* config space fields, for net  struct 
virtio_net_config etc */ 
        VIRTIO_DEV_QUEUE_CFG,   /* struct virtio_dev_q_cfg */ 
};

In your use case, it is VIRTIO_DEV_CFG_SPACE, just blob of data bytes.

---------------------------------------------------------------------
To unsubscribe, e-mail: virtio-dev-unsubscr...@lists.oasis-open.org
For additional commands, e-mail: virtio-dev-h...@lists.oasis-open.org

Reply via email to