Re: [PATCH] mmc: dw_mmc-k3: Add clk and reset softdep

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 18 July 2018 at 02:49, Jeremy Linton <lintonrjeremy@xxxxxxxxx> wrote:
> The mmc/k3 driver is dependent on a number of other linux modules
> which must be built into the initrd in order to use the mmc/sd
> as a boot device for initrd/module based distros.
>
> Normally this would be taken care of with linux's modules.deps
> based on symbolic dependencies but the dwmmc drivers have
> particularly complex relationships that are based on soft
> callback APIs. The result is that dracut and other initrd builders

If I understand correctly, this is about clock and resets. It doesn't
sound like a special complex relationship, but rather a quite common.

> are unable to determine the module dependencies directly.
>
> To solve this problem linux has MODULE_SOFTDEP() so lets softdep
> the hisi clock and reset drivers associated with the k3 implementation.

Why doesn't the -EPROBE_DEFER mechanism help here? Or you simply don't
want to load modules that isn't needed?

>
> Signed-off-by: Jeremy Linton <lintonrjeremy@xxxxxxxxx>
> ---
>  drivers/mmc/host/dw_mmc-k3.c | 1 +
>  1 file changed, 1 insertion(+)
>
> diff --git a/drivers/mmc/host/dw_mmc-k3.c b/drivers/mmc/host/dw_mmc-k3.c
> index 89cdb3d533bb..cd8f545fa30d 100644
> --- a/drivers/mmc/host/dw_mmc-k3.c
> +++ b/drivers/mmc/host/dw_mmc-k3.c
> @@ -487,3 +487,4 @@ module_platform_driver(dw_mci_k3_pltfm_driver);
>  MODULE_DESCRIPTION("K3 Specific DW-MSHC Driver Extension");
>  MODULE_LICENSE("GPL v2");
>  MODULE_ALIAS("platform:dwmmc_k3");
> +MODULE_SOFTDEP("pre: hi6220_reset clk_hi655x");

These are platform specific dependencies, but added as generic module
dependencies. It doesn't seem right to me.

Kind regards
Uffe
--
To unsubscribe from this list: send the line "unsubscribe linux-mmc" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux USB Devel]     [Linux Media]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux