Hi Wolfram,
On Tue, Jul 18, 2017 at 12:23 PM, Wolfram Sang wsa+renesas@sang-engineering.com wrote:
One helper checks if DMA is suitable and optionally creates a bounce buffer, if not. The other function returns the bounce buffer and makes sure the data is properly copied back to the message.
Signed-off-by: Wolfram Sang wsa+renesas@sang-engineering.com
Changes since v2:
- rebased to v4.13-rc1
- helper functions are not inlined anymore but moved to i2c core
- __must_check has been added to the buffer check helper
- the release function has been renamed to contain 'dma' as well
Right:
drivers/i2c/i2c-core-base.c:2310:15: error: 'i2c_release_bounce_buf' undeclared here (not in a function) EXPORT_SYMBOL_GPL(i2c_release_bounce_buf);
--- a/drivers/i2c/i2c-core-base.c +++ b/drivers/i2c/i2c-core-base.c
+/**
- i2c_release_bounce_buf - copy data back from bounce buffer and release it
^^^^^^^^^^^^^^^^^^^^^^
- @msg: the message to be copied back to
- @bounce_buf: the bounce buffer obtained from i2c_check_msg_for_dma().
May be NULL.
- */
+void i2c_release_dma_bounce_buf(struct i2c_msg *msg, u8 *bounce_buf) +{
if (!bounce_buf)
return;
if (msg->flags & I2C_M_RD)
memcpy(msg->buf, bounce_buf, msg->len);
kfree(bounce_buf);
+} +EXPORT_SYMBOL_GPL(i2c_release_bounce_buf);
^^^^^^^^^^^^^^^^^^^^^^
Gr{oetje,eeting}s,
Geert
-- Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org
In personal conversations with technical people, I call myself a hacker. But when I'm talking to journalists I just say "programmer" or something like that. -- Linus Torvalds