Hi Yann, On Fri, 4 Mar 2022 at 14:52, Yann Gautier <yann.gautier@xxxxxxxxxxx> wrote: > > On STMicroelectronics variant of PL18x, the DMA Linked Lists are supported > starting from revision v2 of the peripheral. But it has limitations, > as all the buffers should be aligned on block size (except the last one). > But this cannot be guaranteed with SDIO. We should then have a property > to disable the support of LLI. Indeed, the buffer handling with SDIO is somewhat special, which also has been discussed several times on LKML before. In principle, we need the SDIO func drivers to respect buffer limitations that should be specified by the mmc host drivers. Quite similar to what we already have for block devices, like ->max_seg_size, ->max_seg, etc, that is set per mmc host. I realize that implementing something like the above requires bigger changes, which is why mmc host drivers instead validates the sglists and the elements. In some cases that means returning an error code and in others it could mean falling back to a non-DMA based I/O mode. For the stm32_sdmmc variant, it looks like the sglist validation is being managed in sdmmc_idma_validate_data() already. Can it be extended to cover this case too, rather than using a DT property? Kind regards Uffe > > Signed-off-by: Yann Gautier <yann.gautier@xxxxxxxxxxx> > --- > Documentation/devicetree/bindings/mmc/arm,pl18x.yaml | 5 +++++ > 1 file changed, 5 insertions(+) > > diff --git a/Documentation/devicetree/bindings/mmc/arm,pl18x.yaml b/Documentation/devicetree/bindings/mmc/arm,pl18x.yaml > index 1e69a5a42439..309a2c0426e5 100644 > --- a/Documentation/devicetree/bindings/mmc/arm,pl18x.yaml > +++ b/Documentation/devicetree/bindings/mmc/arm,pl18x.yaml > @@ -145,6 +145,11 @@ properties: > driver to sample the receive data (for example with a voltage switch > transceiver). > > + st,disable-dma-lli: > + $ref: /schemas/types.yaml#/definitions/flag > + description: ST Micro-specific property, disable DMA linked lists. > + It is used for SDIO. > + > st,cmd-gpios: > maxItems: 1 > description: > -- > 2.25.1 >