[PATCH 12/12] HID: i2c-hid: note that I2C xfer buffers are DMA-safe

From: Dmitry Torokhov
Date: Tue Jan 18 2022 - 02:27:56 EST


All I2C communications in the driver use driver-private buffers that are
DMA-safe, so mark them as such.

Signed-off-by: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>
---
drivers/hid/i2c-hid/i2c-hid-core.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/drivers/hid/i2c-hid/i2c-hid-core.c b/drivers/hid/i2c-hid/i2c-hid-core.c
index aa7c573b35bc..92dd86c42975 100644
--- a/drivers/hid/i2c-hid/i2c-hid-core.c
+++ b/drivers/hid/i2c-hid/i2c-hid-core.c
@@ -180,7 +180,7 @@ static int i2c_hid_xfer(struct i2c_hid *ihid,
__func__, send_len, send_buf);

msgs[n].addr = client->addr;
- msgs[n].flags = client->flags & I2C_M_TEN;
+ msgs[n].flags = (client->flags & I2C_M_TEN) | I2C_M_DMA_SAFE;
msgs[n].len = send_len;
msgs[n].buf = send_buf;
n++;
@@ -188,7 +188,8 @@ static int i2c_hid_xfer(struct i2c_hid *ihid,

if (recv_len) {
msgs[n].addr = client->addr;
- msgs[n].flags = (client->flags & I2C_M_TEN) | I2C_M_RD;
+ msgs[n].flags = (client->flags & I2C_M_TEN) |
+ I2C_M_RD | I2C_M_DMA_SAFE;
msgs[n].len = recv_len;
msgs[n].buf = recv_buf;
n++;
--
2.34.1.703.g22d0c6ccf7-goog