[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v2 06/13] hw/sd/sd: Remove legacy sd_set_cb() in favor of GPI
From: |
Bernhard Beschow |
Subject: |
Re: [PATCH v2 06/13] hw/sd/sd: Remove legacy sd_set_cb() in favor of GPIOs |
Date: |
Mon, 27 Jan 2025 23:11:07 +0000 |
Am 27. Januar 2025 13:24:46 UTC schrieb Peter Maydell
<peter.maydell@linaro.org>:
>On Sat, 11 Jan 2025 at 18:37, Bernhard Beschow <shentey@gmail.com> wrote:
>>
>> Commit ce5dd27534b0 "hw/sd: Remove omap2_mmc device" removed the last user of
>> sd_set_cb(). Rework this functionality into GPIOs.
>>
>> Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
>> Signed-off-by: Bernhard Beschow <shentey@gmail.com>
>
>What is this for? We have a non-legacy API for "the SD controller
>needs to know when the SD card is inserted or the readonly
>status changes", which is that the controller implements the
>SDBasClass set_inserted and set_readonly methods. (See the pl011
>for an example.)
>
>I would prefer it if we used that consistently, rather than having
>two mechanisms, one using GPIO lines and one using class methods.
>I think we should delete the sd_set_cb() API and handling code
>entirely.
According to the Linux MMC controller DT schema, there are actually two ways to
implement cd and wp lines [1]. When implementing the imx8mp-evk board, I
thought I would need to model the GPIO style [2], hence I implemented it plus
the active low part on the SD card. Later I noticed that the card gets detected
anyway without the GPIO wiring, so I'm fine if the code gets removed instead.
Best regards,
Bernhard
[1]
<https://github.com/torvalds/linux/blob/v6.13/Documentation/devicetree/bindings/mmc/mmc-controller.yaml#L60>
[2]
<https://github.com/torvalds/linux/blob/v6.13/arch/arm64/boot/dts/freescale/imx8mp-evk.dts#L776>
>
>thanks
>-- PMM
[PATCH v2 05/13] hw/gpio/imx_gpio: Don't clear input GPIO values upon reset, Bernhard Beschow, 2025/01/11
[PATCH v2 07/13] hw/sd/sd: Allow for inverting polarities of presence and write-protect GPIOs, Bernhard Beschow, 2025/01/11
[PATCH v2 08/13] hw/char/imx_serial: Turn some DPRINTF() statements into trace events, Bernhard Beschow, 2025/01/11
[PATCH v2 09/13] hw/timer/imx_gpt: Remove unused define, Bernhard Beschow, 2025/01/11
[PATCH v2 10/13] tests/qtest/libqos: Reuse TYPE_IMX_I2C define, Bernhard Beschow, 2025/01/11