diff --git a/drivers/nvmem/rockchip-efuse.c b/drivers/nvmem/rockchip-efuse.c index 146de9489339..e976024d2542 100644 --- a/drivers/nvmem/rockchip-efuse.c +++ b/drivers/nvmem/rockchip-efuse.c @@ -256,7 +256,7 @@ static const struct of_device_id rockchip_efuse_match[] = { }; MODULE_DEVICE_TABLE(of, rockchip_efuse_match); -static int rockchip_efuse_probe(struct platform_device *pdev) +static int __init rockchip_efuse_probe(struct platform_device *pdev) { struct resource *res; struct nvmem_device *nvmem; @@ -297,13 +297,19 @@ static int rockchip_efuse_probe(struct platform_device *pdev) } static struct platform_driver rockchip_efuse_driver = { - .probe = rockchip_efuse_probe, .driver = { .name = "rockchip-efuse", .of_match_table = rockchip_efuse_match, }, }; -module_platform_driver(rockchip_efuse_driver); +static int __init rockchip_efuse_module_init(void) +{ + return platform_driver_probe(&rockchip_efuse_driver, + rockchip_efuse_probe); +} + +subsys_initcall(rockchip_efuse_module_init); + MODULE_DESCRIPTION("rockchip_efuse driver"); MODULE_LICENSE("GPL v2");