On 4/5/2018 3:10 PM, Kalle Valo wrote:
Ulf Hansson <ulf.hansson@xxxxxxxxxx> writes:
On 20 March 2018 at 10:55, Kalle Valo <kvalo@xxxxxxxxxxxxxx> wrote:
Arend van Spriel <arend.vanspriel@xxxxxxxxxxxx> writes:
If I get it right, you mean something like this:
mmc3: mmc@1c12000 {
...
broken-sg-support;
sd-head-align = 4;
sd-sgentry-align = 512;
brcmf: wifi@1 {
...
};
};
Where dt: bindings documentation for these entries should reside?
In generic MMC bindings? Well, this is the very special case and
mmc-linux maintainer will unlikely to accept these changes.
Also, extra kernel code modification might be required. It could make
quite trivial change much more complex.
If the MMC maintainers are not copied on this patch series, it will
likely be hard for them to identify this patch series and chime in...
The main question is whether this is indeed a "very special case" as
Alexey claims it to be or that it is likely to be applicable to other
device and host combinations as you are suggesting.
If these properties are imposed by the host or host controller it
would make sense to have these in the mmc bindings.
BTW, last year we were discussing something similar (I mean related to
alignment requirements) with ath10k SDIO patches and at the time the
patch submitter was proposing to have a bounce buffer in ath10k to
workaround that. I don't remember the details anymore, they are on the
ath10k mailing list archive if anyone is curious to know, but I would
not be surprised if they are similar as here. So there might be a need
to solve this in a generic way (but not sure of course as I haven't
checked the details).
I re-call something about these as well, here are the patches. Perhaps
I should pick some of them up...
https://patchwork.kernel.org/patch/10123137/
https://patchwork.kernel.org/patch/10123139/
https://patchwork.kernel.org/patch/10123141/
https://patchwork.kernel.org/patch/10123143/
Actually I was talking about a different patch, found it now:
ath10k_sdio: DMA bounce buffers for read write
https://patchwork.kernel.org/patch/9979543/
The patches Uffe mentions are related to this. In brcmfmac we simply
implemented functionality to create a scatter list and send it through
the MMC stack using SDIO CMD53. It is in the creation of the scatter
list that these alignment properties are needed. Moving the whole
functionality to the MMC stack will also move those properties into
their right context, ie. SDIO host controller.
Our broker_sg_support property is basically doing the bounce buffer
thing if I understand it correctly.
Regards,
Arend