Message ID | 4F5844B3A985794BA902E12C070812375F8CE2@DNCE04.ent.ti.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Monday 11 November 2013 11:52 AM, Khoronzhuk, Ivan wrote: > > When kernel is booted using DT, there is no guarantee that Davinci > NAND device has been created already at the time when driver init > function is executed. Therefore, platform_driver_probe() can't be used > because this may result the Davinci NAND driver will never be probed. > The driver probing has to be made with core mechanism. > > Signed-off-by: Ivan Khoronzhuk <ivan.khoronzhuk@ti.com> > --- Acked-by: Santosh Shilimkar <santosh.shilimkar@ti.com>
diff --git a/drivers/mtd/nand/davinci_nand.c b/drivers/mtd/nand/davinci_nand.c index b77a01e..d87213f 100644 --- a/drivers/mtd/nand/davinci_nand.c +++ b/drivers/mtd/nand/davinci_nand.c @@ -877,6 +877,7 @@ static int __exit nand_davinci_remove(struct platform_device *pdev) } static struct platform_driver nand_davinci_driver = { + .probe = nand_davinci_probe, .remove = __exit_p(nand_davinci_remove), .driver = { .name = "davinci_nand", @@ -886,7 +887,7 @@ static struct platform_driver nand_davinci_driver = { }; MODULE_ALIAS("platform:davinci_nand"); -module_platform_driver_probe(nand_davinci_driver, nand_davinci_probe); +module_platform_driver(nand_davinci_driver); MODULE_LICENSE("GPL"); MODULE_AUTHOR("Texas Instruments");
When kernel is booted using DT, there is no guarantee that Davinci NAND device has been created already at the time when driver init function is executed. Therefore, platform_driver_probe() can't be used because this may result the Davinci NAND driver will never be probed. The driver probing has to be made with core mechanism. Signed-off-by: Ivan Khoronzhuk <ivan.khoronzhuk@ti.com> --- drivers/mtd/nand/davinci_nand.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) -- 1.7.9.5