Re: [PATCH V1 1/2] mmc: core: Define new vendor ops to enable internal features

From: Linus Walleij
Date: Sun Apr 02 2023 - 08:48:51 EST


Hi Sarthak,

thanks for your patch!

On Sat, Apr 1, 2023 at 6:57 PM Sarthak Garg <quic_sartgarg@xxxxxxxxxxx> wrote:

> Define new ops to let vendor enable internal features in
> mmc_suspend/resume paths like partial init feature.
>
> Signed-off-by: Sarthak Garg <quic_sartgarg@xxxxxxxxxxx>
(...)

> --- a/include/linux/mmc/host.h
> +++ b/include/linux/mmc/host.h
> @@ -212,6 +212,10 @@ struct mmc_host_ops {
>
> /* Initialize an SD express card, mandatory for MMC_CAP2_SD_EXP. */
> int (*init_sd_express)(struct mmc_host *host, struct mmc_ios *ios);
> +
> + void (*cache_card_properties)(struct mmc_host *host);
> + bool (*partial_init_card)(struct mmc_host *host);

These have confusing names, first it has nothing to do with
cards since the callbacks are to the host. Second the functions
are named after usecases in a certain host rather than function.

I would just call them .suspend() and .resume(), the use
is obvious and they are called from the driver .suspend()
and .resume() hooks.

Yours,
Linus Walleij