lkml.org 
[lkml]   [2017]   [Dec]   [4]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH v6 0/9] i2c: document DMA handling and add helpers for it
    On Sat, Nov 04, 2017 at 09:20:00PM +0100, Wolfram Sang wrote:
    > So, after revisiting old mail threads, taking part in a similar discussion on
    > the USB list, and implementing a not-convincing solution before, here is what I
    > cooked up to document and ease DMA handling for I2C within Linux. Please have a
    > look at the documentation introduced in patch 7 for details. And to make it
    > clear again: The stuff below is opt-in. If host drivers are not updated, they
    > will continue to work like before.
    >
    > While previous versions until v3 tried to magically apply bounce buffers when
    > needed, it became clear that detecting DMA safe buffers is too fragile. This
    > approach is now opt-in, a DMA_SAFE flag needs to be set on an i2c_msg. The
    > outcome so far is very convincing IMO. The core additions are simple and easy
    > to understand. The driver changes for the Renesas IP cores became easy to
    > understand, too.
    >
    > Of course, we must now whitelist DMA safe buffers. This series implements it
    > for core functionality:
    >
    > a) for the I2C_RDWR when messages come from userspace
    > b) for i2c_smbus_xfer_emulated(), DMA safe buffers are now allocated for
    > block transfers
    > c) i2c_master_{send|recv} have now a *_dmasafe variant
    >
    > I am still not sure how we can teach regmap this new flag. regmap is a heavy
    > user of I2C, so broonie's opinion here would be great to have. The rest should
    > mostly be updating individual drivers which can be done when needed.
    >
    > All patches have been tested with a Renesas Salvator-X board (r8a7796/M3-W) and
    > Renesas Lager board (r8a7790/H2). But more testing is really really welcome.
    >
    > The branch can be found here:
    >
    > git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux.git renesas/topic/i2c-core-dma-v6
    >
    > It is planned to land upstream in v4.16 and I want to push it to linux-next
    > early after v4.15 to get lots of testing for the core changes.
    >
    > Big kudos to Renesas Electronics for funding this work, thank you very much!
    >
    > Regards,
    >
    > Wolfram

    Applied to for-next after fixing some cosmetic checkpatch issues!

    [unhandled content-type:application/pgp-signature]
    \
     
     \ /
      Last update: 2017-12-04 22:26    [W:8.447 / U:0.008 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site