2023-09-05 16:07:22

by Yann Gautier

[permalink] [raw]
Subject: Re: [PATCH] mmc: mmci: stm32: add SDIO in-band interrupt mode

On 9/1/23 16:10, Linus Walleij wrote:
> Hi Yann/Christophe,
>
> thanks for your patch!

Hi Linus

Thanks for the review, I agree with the proposed changes.
I'll prepare a new version and send it next week!

Best regards,
Yann
>
> On Fri, Sep 1, 2023 at 2:08 PM Yann Gautier <[email protected]> wrote:
>
>> From: Christophe Kerello <[email protected]>
>>
>> Add the support of SDIO in-band interrupt mode for STM32 variant.
>> It allows the SD I/O card to interrupt the host on SDMMC_D1 data line.
>>
>> Signed-off-by: Christophe Kerello <[email protected]>
>> Signed-off-by: Yann Gautier <[email protected]>
> (...)
>> +++ b/drivers/mmc/host/mmci.h
>> @@ -332,6 +332,7 @@ enum mmci_busy_state {
>> * @opendrain: bitmask identifying the OPENDRAIN bit inside MMCIPOWER register
>> * @dma_lli: true if variant has dma link list feature.
>> * @stm32_idmabsize_mask: stm32 sdmmc idma buffer size.
>> + * @use_sdio_irq: allow SD I/O card to interrupt the host
>
> The documentation tag should be one line up (compare to the members...)
>
>> @@ -376,6 +377,7 @@ struct variant_data {
>> u32 start_err;
>> u32 opendrain;
>> u8 dma_lli:1;
>> + u8 use_sdio_irq:1;
>
> 1. bool use_sdio_irq;
>
> 2. supports_sdio_irq is more to the point don't you think?
> Especially since it activates these two callbacks:
>
>> + void (*enable_sdio_irq)(struct mmci_host *host, int enable);
>> + void (*sdio_irq)(struct mmci_host *host, u32 status);
>
> Further: all the Ux500 variants support this (bit 22) as well, so enable those
> too in their vendor data. All I have is out-of-band signaling with an GPIO IRQ
> on my Broadcom chips but I think it works (maybe Ulf has tested it in the
> far past).
>
> Yours,
> Linus Walleij