The receiving buffer is allocated separately from the main driver data structure, and is naturally DMA-safe, so mark it as such when building I2C transfer message. Signed-off-by: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx> --- drivers/input/touchscreen/st1232.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/input/touchscreen/st1232.c b/drivers/input/touchscreen/st1232.c index 0aee330731c9..a4a3b82ee69d 100644 --- a/drivers/input/touchscreen/st1232.c +++ b/drivers/input/touchscreen/st1232.c @@ -66,7 +66,7 @@ static int st1232_ts_read_data(struct st1232_ts_data *ts) }, { .addr = client->addr, - .flags = I2C_M_RD, + .flags = I2C_M_RD | I2C_M_DMA_SAFE, .len = ts->read_buf_len, .buf = ts->read_buf, } -- 2.23.0.866.gb869b98d4c-goog