From 38fa8afff0a99fe8caabbde0d590df3067cf695a Mon Sep 17 00:00:00 2001 From: Wolfram Sang Date: Sat, 23 Jul 2016 21:59:21 +0200 Subject: Documentation: i2c: slave: describe buffer problems a bit better Signed-off-by: Wolfram Sang --- Documentation/i2c/slave-interface | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) (limited to 'Documentation/i2c') diff --git a/Documentation/i2c/slave-interface b/Documentation/i2c/slave-interface index 61ed05cd9531..abd10186a9e9 100644 --- a/Documentation/i2c/slave-interface +++ b/Documentation/i2c/slave-interface @@ -173,13 +173,14 @@ During development of this API, the question of using buffers instead of just bytes came up. Such an extension might be possible, usefulness is unclear at this time of writing. Some points to keep in mind when using buffers: -* Buffers should be opt-in and slave drivers will always have to support - byte-based transactions as the ultimate fallback because this is how the - majority of HW works. - -* For backends simulating hardware registers, buffers are not helpful because - on writes an action should be immediately triggered. For reads, the data in - the buffer might get stale. +* Buffers should be opt-in and backend drivers will always have to support + byte-based transactions as the ultimate fallback anyhow because this is how + the majority of HW works. + +* For backends simulating hardware registers, buffers are largely not helpful + because after each byte written an action should be immediately triggered. + For reads, the data kept in the buffer might get stale if the backend just + updated a register because of internal processing. * A master can send STOP at any time. For partially transferred buffers, this means additional code to handle this exception. Such code tends to be -- cgit v1.2.3