[virtio-dev] Re: [PATCH V5 2/2] virtio: i2c: Allow zero-length transactions

2021-10-12 Thread Jie Deng
On 2021/10/13 11:39, Viresh Kumar wrote: @@ -124,13 +140,23 @@ \subsubsection{Device Operation: Operation Status}\label{sec:Device Types / I2C \drivernormative{\subsubsection}{Device Operation}{Device Types / I2C Adapter Device / Device Operation} +A driver SHOULD implement the VIRTIO_I2

Re: [virtio-dev] Re: [PATCH V5 2/2] virtio: i2c: Allow zero-length transactions

2021-10-12 Thread Jie Deng
On 2021/10/12 22:09, Arnd Bergmann wrote: @@ -124,13 +140,23 @@ \subsubsection{Device Operation: Operation Status}\label{sec:Device Types / I2C \drivernormative{\subsubsection}{Device Operation}{Device Types / I2C Adapter Device / Device Operation} +A driver SHOULD implement the VIRTIO_

[virtio-dev] Re: [PATCH V5 0/2] virtio: i2c: Allow zero-length transactions

2021-10-12 Thread Jie Deng
command. Viresh Kumar (2): virtio: i2c: No need to have separate read-write buffers virtio: i2c: Allow zero-length transactions LGTM. Thanks Viresh. Reviewed-by: Jie Deng - To unsubscribe, e-mail: virtio-dev-unsubs

[virtio-dev] Re: [PATCH V2] virtio: i2c: Allow zero-length transactions

2021-08-17 Thread Jie Deng
On 2021/8/17 18:43, Viresh Kumar wrote: On 17-08-21, 02:47, Michael S. Tsirkin wrote: On Tue, Aug 17, 2021 at 09:23:24AM +0530, Viresh Kumar wrote: On 16-08-21, 10:45, Michael S. Tsirkin wrote: So I wonder. What if we allow zero-length buffers in virtio? Would that address the need? OK, so

[virtio-dev] Re: [PATCH] virtio: i2c: Allow buffer less transactions

2021-07-28 Thread Jie Deng
On 2021/7/29 14:28, Viresh Kumar wrote: On 29-07-21, 14:18, Jie Deng wrote: The number of descriptors required for a request will not be fixed. That is true today as well, as we allow 3 (write or read) or 4 (write-read) descriptors. If there is a descriptor sequence in the virtqueue, then

[virtio-dev] Re: [PATCH] virtio: i2c: Allow buffer less transactions

2021-07-28 Thread Jie Deng
On 2021/7/29 13:47, Viresh Kumar wrote: On 29-07-21, 13:39, Jie Deng wrote: Well, then can we also add a flag to mark the zero-length request. I think it will be convenient for backend developers. Hmm, I think that information is already present at the device since only two elements will

[virtio-dev] Re: [PATCH] virtio: i2c: Allow buffer less transactions

2021-07-28 Thread Jie Deng
On 2021/7/23 13:26, Viresh Kumar wrote: + +\item[VIRTIO_I2C_FLAGS_M_RD(1)] is used to mark the request as READ or WRITE. \end{description} Other bits of \field{flags} are currently reserved as zero for future feature extensibility. -The \field{write_buf} of the request contains on

[virtio-dev] [PATCH v7] virtio-i2c: add the device specification

2021-01-07 Thread Jie Deng
virtio-i2c is a virtual I2C adapter device. It provides a way to flexibly communicate with the host I2C slave devices from the guest. This patch adds the specification for this device. Fixes: https://github.com/oasis-tcs/virtio-spec/issues/88 Signed-off-by: Jie Deng --- conformance.tex | 28

[virtio-dev] Re: [virtio-comment] [PATCH v6] virtio-i2c: add the device specification

2021-01-06 Thread Jie Deng
On 2021/1/7 2:04, Stefan Hajnoczi wrote: On Tue, Jan 05, 2021 at 10:43:38AM +0800, Jie Deng wrote: On 2021/1/5 2:02, Stefan Hajnoczi wrote: On Mon, Jan 04, 2021 at 10:31:48AM +0800, Jie Deng wrote: On 2020/12/31 20:42, Stefan Hajnoczi wrote: This approach causes a bottleneck when there are

[virtio-dev] Re: [virtio-comment] [PATCH v6] virtio-i2c: add the device specification

2021-01-06 Thread Jie Deng
On 2021/1/7 2:11, Stefan Hajnoczi wrote: On Thu, Dec 24, 2020 at 04:10:43PM +0800, Jie Deng wrote: +\begin{lstlisting} +struct virtio_i2c_out_hdr { +le16 addr; +le16 padding; +le32 flags; +}; +\end{lstlisting} + +\begin{lstlisting} +struct virtio_i2c_in_hdr

[virtio-dev] Re: [virtio-comment] [PATCH v6] virtio-i2c: add the device specification

2021-01-04 Thread Jie Deng
On 2021/1/5 2:02, Stefan Hajnoczi wrote: On Mon, Jan 04, 2021 at 10:31:48AM +0800, Jie Deng wrote: On 2020/12/31 20:42, Stefan Hajnoczi wrote: This approach causes a bottleneck when there are multiple I2C devices. It requires exclusive access to the virtqueue and virtual I2C bus, slowing

[virtio-dev] Re: [virtio-comment] [PATCH v6] virtio-i2c: add the device specification

2021-01-03 Thread Jie Deng
On 2020/12/31 20:42, Stefan Hajnoczi wrote: This approach causes a bottleneck when there are multiple I2C devices. It requires exclusive access to the virtqueue and virtual I2C bus, slowing down applications that are accessing separate I2C devices. This is inefficient, especially if the I2C

[virtio-dev] Re: [virtio-comment] [PATCH v6] virtio-i2c: add the device specification

2020-12-30 Thread Jie Deng
On 2020/12/30 18:20, Stefan Hajnoczi wrote: On Wed, Dec 30, 2020 at 10:17:23AM +0800, Jie Deng wrote: On 2020/12/29 19:09, Stefan Hajnoczi wrote: On Thu, Dec 24, 2020 at 04:10:43PM +0800, Jie Deng wrote: +\subsection{Device Operation}\label{sec:Device Types / I2C Adapter Device / Device

[virtio-dev] Re: [virtio-comment] [PATCH v6] virtio-i2c: add the device specification

2020-12-29 Thread Jie Deng
On 2020/12/29 19:09, Stefan Hajnoczi wrote: On Thu, Dec 24, 2020 at 04:10:43PM +0800, Jie Deng wrote: +\subsection{Device Operation}\label{sec:Device Types / I2C Adapter Device / Device Operation} + +\subsubsection{Device Operation: Request Queue}\label{sec:Device Types / I2C Adapter Device

[virtio-dev] Re: [virtio-comment] [PATCH v5] virtio-i2c: add the device specification

2020-12-24 Thread Jie Deng
On 2020/12/23 6:31, Michael S. Tsirkin wrote: On Tue, Dec 22, 2020 at 12:29:09PM +0100, Cornelia Huck wrote: Is there any reason why we need to infer the type of the request by checking some lengths? Can't we just specify explicit flags for read and write? What am I missing? Point is descripto

[virtio-dev] [PATCH v6] virtio-i2c: add the device specification

2020-12-24 Thread Jie Deng
virtio-i2c is a virtual I2C adapter device. It provides a way to flexibly communicate with the host I2C slave devices from the guest. This patch adds the specification for this device. Fixes: https://github.com/oasis-tcs/virtio-spec/issues/88 Signed-off-by: Jie Deng --- conformance.tex | 28

[virtio-dev] Re: [virtio-comment] [PATCH v5] virtio-i2c: add the device specification

2020-12-21 Thread Jie Deng
On 2020/12/20 3:05, Michael S. Tsirkin wrote: On Fri, Dec 18, 2020 at 10:06:45AM +0800, Jie Deng wrote: On 2020/12/17 18:26, Stefan Hajnoczi wrote: On Thu, Dec 17, 2020 at 03:00:55AM -0500, Michael S. Tsirkin wrote: On Thu, Dec 17, 2020 at 03:08:07PM +0800, Jie Deng wrote: +The

[virtio-dev] Re: [virtio-comment] [PATCH v5] virtio-i2c: add the device specification

2020-12-17 Thread Jie Deng
On 2020/12/17 18:26, Stefan Hajnoczi wrote: On Thu, Dec 17, 2020 at 03:00:55AM -0500, Michael S. Tsirkin wrote: On Thu, Dec 17, 2020 at 03:08:07PM +0800, Jie Deng wrote: +The \field{flags} of the request is currently reserved as zero for future +feature extensibility

[virtio-dev] Re: [virtio-comment] [PATCH v5] virtio-i2c: add the device specification

2020-12-17 Thread Jie Deng
On 2020/12/18 3:43, Michael S. Tsirkin wrote: Just a heads up that it looks like the TC seems to be asking for some comments to be addressed. Do you want to cancel the vote for now and try to address the comments with a new revision? Yes. I will address these comments and send the v6. --

[virtio-dev] Re: [virtio-comment] [PATCH v5] virtio-i2c: add the device specification

2020-12-17 Thread Jie Deng
On 2020/12/17 3:55, Michael S. Tsirkin wrote: On Wed, Dec 16, 2020 at 06:38:59PM +0100, Cornelia Huck wrote: On Wed, 25 Nov 2020 13:55:18 +0800 Jie Deng wrote: virtio-i2c is a virtual I2C adapter device. It provides a way to flexibly communicate with the host I2C slave devices from s

[virtio-dev] Re: [virtio-comment] [PATCH v5] virtio-i2c: add the device specification

2020-12-16 Thread Jie Deng
Thank you. I will fix them. On 2020/12/17 1:38, Cornelia Huck wrote: On Wed, 25 Nov 2020 13:55:18 +0800 Jie Deng wrote: + +A driver MUST place one segment of an I2C transaction into \field{write_buf} if the s/if the/if/ + +A device MUST place one segment of an I2C transaction into

[virtio-dev] Re: [virtio-comment] [PATCH v5] virtio-i2c: add the device specification

2020-12-16 Thread Jie Deng
On 2020/12/16 23:52, Stefan Hajnoczi wrote: On Wed, Nov 25, 2020 at 01:55:18PM +0800, Jie Deng wrote: diff --git a/virtio-i2c.tex b/virtio-i2c.tex new file mode 100644 index 000..fdb0050 --- /dev/null +++ b/virtio-i2c.tex @@ -0,0 +1,139 @@ +\section{I2C Adapter Device}\label{sec:Device

[virtio-dev] Re: [PATCH v5] virtio-i2c: add the device specification

2020-12-07 Thread Jie Deng
Hi, Any update for this ? When will we start to vote on it ? Regards, Jie On 2020/11/25 13:55, Jie Deng wrote: virtio-i2c is a virtual I2C adapter device. It provides a way to flexibly communicate with the host I2C slave devices from the guest. This patch adds the specification for this

[virtio-dev] Re: [PATCH v5] virtio-i2c: add the device specification

2020-11-25 Thread Jie Deng
On 2020/11/25 20:52, Andy Shevchenko wrote: On Wed, Nov 25, 2020 at 01:55:18PM +0800, Jie Deng wrote: virtio-i2c is a virtual I2C adapter device. It provides a way to flexibly communicate with the host I2C slave devices from the guest. This patch adds the specification for this device. Fixes

[virtio-dev] [PATCH v5] virtio-i2c: add the device specification

2020-11-24 Thread Jie Deng
virtio-i2c is a virtual I2C adapter device. It provides a way to flexibly communicate with the host I2C slave devices from the guest. This patch adds the specification for this device. Fixes: https://github.com/oasis-tcs/virtio-spec/issues/88 Signed-off-by: Jie Deng --- conformance.tex | 28

Re: [virtio-dev] Re: [virtio-comment] [PATCH v4] virtio-i2c: add the device specification

2020-11-19 Thread Jie Deng
On 2020/11/19 23:55, Paolo Bonzini wrote: On 19/11/20 02:41, Jie Deng wrote: No, the kick is only an advice.  The device is allowed to poll on the ring and ignore kicks completely, for example. Paolo Understood. But I saw your proposal can only group two segments "write-read"

Re: [virtio-dev] Re: [virtio-comment] [PATCH v4] virtio-i2c: add the device specification

2020-11-18 Thread Jie Deng
On 2020/11/18 16:22, Paolo Bonzini wrote: On 18/11/20 03:06, Jie Deng wrote: Can the "kick" be used for grouping ?  I mean when a write and a read are sent by one kick at a time, they will be treated as one transaction by default if the host has such a feature bit. No, the kick

Re: [virtio-dev] Re: [virtio-comment] [PATCH v4] virtio-i2c: add the device specification

2020-11-17 Thread Jie Deng
On 2020/11/17 16:23, Gerd Hoffmann wrote: On Tue, Nov 17, 2020 at 02:55:14PM +0800, Jie Deng wrote: On 2020/11/16 16:16, Paolo Bonzini wrote: On 16/11/20 03:12, Jie Deng wrote: Fore example, the frontend may kick the sequence "write read read ..." to the backend at a time. The se

[virtio-dev] Re: [virtio-comment] [PATCH v4] virtio-i2c: add the device specification

2020-11-17 Thread Jie Deng
On 2020/11/17 23:59, Paolo Bonzini wrote: On 17/11/20 09:23, Gerd Hoffmann wrote: That is not enough.  You also need that for the transactions.  If the driver sends a write and a read message the device needs to know whenever that is one or two transactions.  So if you want continue with the i

[virtio-dev] Re: [virtio-comment] [PATCH v4] virtio-i2c: add the device specification

2020-11-16 Thread Jie Deng
On 2020/11/16 16:16, Paolo Bonzini wrote: On 16/11/20 03:12, Jie Deng wrote: Fore example, the frontend may kick the sequence "write read read ..." to the backend at a time. The segments can be aggregated into "i2c_msg list" and sent to the hardware at a time by the

[virtio-dev] Re: [virtio-comment] [PATCH v4] virtio-i2c: add the device specification

2020-11-15 Thread Jie Deng
uot; to the backend at a time. The segments can be aggregated into "i2c_msg list" and sent to the hardware at a time by the backend. The host native drivers will finally send these segments using the methods they support. Does this make sense ? Thanks. On 2020/11/13 10:39, Jie

[virtio-dev] Re: [virtio-comment] [PATCH v4] virtio-i2c: add the device specification

2020-11-12 Thread Jie Deng
On 2020/11/12 16:54, Michael S. Tsirkin wrote: On Thu, Nov 12, 2020 at 09:51:17AM +0800, Jie Deng wrote: On 2020/11/10 18:59, Paolo Bonzini wrote: On 10/11/20 11:33, Michael S. Tsirkin wrote: Sorry I didn't reply last week, but I really would prefer if virtio-i2c supported write

[virtio-dev] Re: [virtio-comment] [PATCH v4] virtio-i2c: add the device specification

2020-11-11 Thread Jie Deng
On 2020/11/10 18:59, Paolo Bonzini wrote: On 10/11/20 11:33, Michael S. Tsirkin wrote: Sorry I didn't reply last week, but I really would prefer if virtio-i2c supported write-read transactions. And I think an easier way is to allow multi-segment transactions probably using the stop flag. Y

Re: [virtio-dev] Re: [PATCH v2] virtio-i2c: add the device specification

2020-11-09 Thread Jie Deng
On 2020/11/5 14:35, Jie Deng wrote: On 2020/10/31 21:58, Paolo Bonzini wrote: On 27/10/20 12:20, Michael S. Tsirkin wrote: The I2C doesn't support segments numbering and sorting. So if one creates a multi-segment transaction, then he/she should keep the segments in order. Thanks.

[virtio-dev] [PATCH v4] virtio-i2c: add the device specification

2020-11-09 Thread Jie Deng
virtio-i2c is a virtual I2C adapter device. It provides a way to flexibly communicate with the I2C slave devices from the guest. This patch adds the specification for this device. Signed-off-by: Jie Deng --- conformance.tex | 28 +++-- content.tex | 1 + introduction.tex | 3

Re: [virtio-dev] Re: [PATCH v2] virtio-i2c: add the device specification

2020-11-04 Thread Jie Deng
On 2020/10/31 21:58, Paolo Bonzini wrote: On 27/10/20 12:20, Michael S. Tsirkin wrote: The I2C doesn't support segments numbering and sorting. So if one creates a multi-segment transaction, then he/she should keep the segments in order. Thanks. Fine, but I see no flags to signal start/end of

[virtio-dev] Re: [virtio-comment] [PATCH v3] virtio-i2c: add the device specification

2020-11-04 Thread Jie Deng
On 2020/10/29 4:10, Paolo Bonzini wrote: On 27/10/20 07:00, Jie Deng wrote: +The driver queues requests to the virtqueue, and they are used by the +device. The request is the representation of one segment of an I2C +transaction. Each request is of form: + +\begin{lstlisting} +struct

[virtio-dev] Re: [virtio-comment] [PATCH v3] virtio-i2c: add the device specification

2020-10-29 Thread Jie Deng
On 2020/10/29 4:10, Paolo Bonzini wrote: On 27/10/20 07:00, Jie Deng wrote: +The driver queues requests to the virtqueue, and they are used by the +device. The request is the representation of one segment of an I2C +transaction. Each request is of form: + +\begin{lstlisting} +struct

[virtio-dev] Re: [PATCH v3] virtio-i2c: add the device specification

2020-10-28 Thread Jie Deng
On 2020/10/28 19:27, Michael S. Tsirkin wrote: On Wed, Oct 28, 2020 at 03:54:39PM +0800, Jie Deng wrote: On 2020/10/27 20:20, Michael S. Tsirkin wrote: On Tue, Oct 27, 2020 at 02:00:24PM +0800, Jie Deng wrote: virtio-i2c is a virtual I2C adapter device. It provides a way to flexibly

[virtio-dev] Re: [PATCH v3] virtio-i2c: add the device specification

2020-10-28 Thread Jie Deng
On 2020/10/27 20:20, Michael S. Tsirkin wrote: On Tue, Oct 27, 2020 at 02:00:24PM +0800, Jie Deng wrote: virtio-i2c is a virtual I2C adapter device. It provides a way to flexibly communicate with the I2C slave devices from the guest. This patch adds the specification for this device. Signed

[virtio-dev] [PATCH v3] virtio-i2c: add the device specification

2020-10-26 Thread Jie Deng
virtio-i2c is a virtual I2C adapter device. It provides a way to flexibly communicate with the I2C slave devices from the guest. This patch adds the specification for this device. Signed-off-by: Jie Deng --- conformance.tex | 28 ++--- content.tex | 1 + virtio-i2c.tex | 94

[virtio-dev] Re: [PATCH v2] virtio-i2c: add the device specification

2020-10-26 Thread Jie Deng
On 2020/10/26 9:22, Jie Deng wrote: On 2020/10/24 0:00, Michael S. Tsirkin wrote: On Fri, Oct 23, 2020 at 02:51:25PM +0800, Jie Deng wrote: + +The driver queues requests to the virtqueues, and they are used by the +device. The request is the representation of one segment of an I2C

Re: [virtio-dev] Re: [PATCH v2] virtio-i2c: add the device specification

2020-10-25 Thread Jie Deng
On 2020/10/24 0:00, Michael S. Tsirkin wrote: On Fri, Oct 23, 2020 at 02:51:25PM +0800, Jie Deng wrote: + +The driver queues requests to the virtqueues, and they are used by the +device. The request is the representation of one segment of an I2C +transaction. Each request is of form: + +\begin

[virtio-dev] Re: [virtio-comment] [PATCH] virtio-i2c: add the device specification

2020-10-23 Thread Jie Deng
On 2020/10/22 20:15, Michael S. Tsirkin wrote: On Thu, Oct 22, 2020 at 03:45:16PM +0800, Jie Deng wrote: does "use the message" mean? What message? I mean  the "addr", "flags" , "len " and "buf " in "virtio_i2c_req" here. I will des

[virtio-dev] [PATCH v2] virtio-i2c: add the device specification

2020-10-22 Thread Jie Deng
virtio-i2c is a virtual I2C adapter device. It provides a way to flexibly communicate with the I2C slave devices from the guest. This patch adds the specification for this device. Signed-off-by: Jie Deng --- conformance.tex | 28 +++--- content.tex | 1 + virtio-i2c.tex | 88