From: Jeremy Linton <lintonrjeremy(a)gmail.com>
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
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.
Signed-off-by: Jeremy Linton <lintonrjeremy(a)gmail.com>
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
@@ -487,3 +487,4 @@ module_platform_driver(dw_mci_k3_pltfm_driver);
MODULE_DESCRIPTION("K3 Specific DW-MSHC Driver Extension");
+MODULE_SOFTDEP("pre: hi6220_reset clk_hi655x");