Re: [PATCH v5] i2c: virtio: add a virtio i2c frontend driver
From: Viresh Kumar <viresh.kumar@linaro.org>
Date: 2021-03-02 08:12:54
Also in:
lkml
On 02-03-21, 09:31, Viresh Kumar wrote:
On 01-03-21, 16:19, Arnd Bergmann wrote:quoted
On Mon, Mar 1, 2021 at 7:41 AM Jie Deng [off-list ref] wrote:quoted
--- /dev/null +++ b/include/uapi/linux/virtio_i2c.h@@ -0,0 +1,56 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later WITH Linux-syscall-note */ +/* + * Definitions for virtio I2C Adpter + * + * Copyright (c) 2021 Intel Corporation. All rights reserved. + */ + +#ifndef _UAPI_LINUX_VIRTIO_I2C_H +#define _UAPI_LINUX_VIRTIO_I2C_HWhy is this a uapi header? Can't this all be moved into the driver itself?quoted
+/** + * struct virtio_i2c_req - the virtio I2C request structure + * @out_hdr: the OUT header of the virtio I2C message + * @write_buf: contains one I2C segment being written to the device + * @read_buf: contains one I2C segment being read from the device + * @in_hdr: the IN header of the virtio I2C message + */ +struct virtio_i2c_req { + struct virtio_i2c_out_hdr out_hdr; + u8 *write_buf; + u8 *read_buf; + struct virtio_i2c_in_hdr in_hdr; +};In particular, this structure looks like it is only ever usable between the transfer functions in the driver itself, it is shared with neither user space nor the virtio host side.Why is it so ? Won't you expect hypervisors or userspace apps to use these ?
This comment applies only for the first two structures as the third one is never exchanged over virtio. -- viresh