Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 564e7f87 authored by Andrew-CT Chen's avatar Andrew-CT Chen Committed by Greg Kroah-Hartman
Browse files

nvmem: mediatek: Fix later provider initialization



Possibly, provider driver initialization is later than
consumer driver. Use function subsys_initcall to initialize
NVMEM provider early to ensure NVMEM consumer doesn't need
to -EPROBE_DEFER.

Signed-off-by: default avatarAndrew-CT Chen <andrew-ct.chen@mediatek.com>
Signed-off-by: default avatarSrinivas Kandagatla <srinivas.kandagatla@linaro.org>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent c7e3c5f8
Loading
Loading
Loading
Loading
+22 −1
Original line number Diff line number Diff line
@@ -83,7 +83,28 @@ static struct platform_driver mtk_efuse_driver = {
		.of_match_table = mtk_efuse_of_match,
	},
};
module_platform_driver(mtk_efuse_driver);

static int __init mtk_efuse_init(void)
{
	int ret;

	ret = platform_driver_register(&mtk_efuse_driver);
	if (ret) {
		pr_err("Failed to register efuse driver\n");
		return ret;
	}

	return 0;
}

static void __exit mtk_efuse_exit(void)
{
	return platform_driver_unregister(&mtk_efuse_driver);
}

subsys_initcall(mtk_efuse_init);
module_exit(mtk_efuse_exit);

MODULE_AUTHOR("Andrew-CT Chen <andrew-ct.chen@mediatek.com>");
MODULE_DESCRIPTION("Mediatek EFUSE driver");
MODULE_LICENSE("GPL v2");