Hi Mike, During my common clock migration work for DaVinci, I got a problem in davinci mdio driver that calls the clk_enable() through run time power management API and got following WARNING in drivers/clk/clk.c. Could you help me understand how clk_prepare() gets called in this scenario and what I need to take are to have this work for common clock framework?
Thanks WARNING: at drivers/clk/clk.c:512 __clk_enable+0x98/0xa4() Modules linked in: Backtrace: [<c000c590>] (dump_backtrace+0x0/0x10c) from [<c028671c>] (dump_stack+0x18/0x1c) r7:00000000 r6:c01d7f74 r5:c0317ca0 r4:00000200 [<c0286704>] (dump_stack+0x0/0x1c) from [<c0017a04>] (warn_slowpath_common+0x54/0x6c) [<c00179b0>] (warn_slowpath_common+0x0/0x6c) from [<c0017a40>] (warn_slowpath_null+0x24/0x2c) r9:c038a000 r8:00000003 r7:c03707e8 r6:00000000 r5:c5804ec0 r4:c5804ec0 [<c0017a1c>] (warn_slowpath_null+0x0/0x2c) from [<c01d7f74>] (__clk_enable+0x98/0xa4) [<c01d7edc>] (__clk_enable+0x0/0xa4) from [<c01d7fac>] (clk_enable+0x2c/0x60) r5:80000013 r4:c5804ec0 [<c01d7f80>] (clk_enable+0x0/0x60) from [<c01b7bf8>] (enable_clock+0x24/0x40) r5:c03707e8 r4:c5804ec0 [<c01b7bd4>] (enable_clock+0x0/0x40) from [<c01b7ce8>] (pm_clk_notify+0x94/0x98) r5:c03707e8 r4:00000000 [<c01b7c54>] (pm_clk_notify+0x0/0x98) from [<c003cc88>] (notifier_call_chain+0x54/0x94) r5:ffffffff r4:00000000 [<c003cc34>] (notifier_call_chain+0x0/0x94) from [<c003d080>] (__blocking_notifier_call_chain+0x5 4/0x6c) r9:c038a000 r8:00000003 r7:ffffffff r6:c03707e8 r5:c5847078 r4:c5847084 [<c003d02c>] (__blocking_notifier_call_chain+0x0/0x6c) from [<c003d0b8>] (blocking_notifier_call_ chain+0x20/0x28) r8:c03ab7d0 r7:c03849f4 r6:c03849f4 r5:c03707e8 r4:c03707e8 [<c003d098>] (blocking_notifier_call_chain+0x0/0x28) from [<c01af72c>] (driver_sysfs_add+0x30/0x9 0) [<c01af6fc>] (driver_sysfs_add+0x0/0x90) from [<c01af87c>] (driver_probe_device+0x68/0x220) r7:c03849f4 r6:c03849f4 r5:c03707e8 r4:c03707e8 [<c01af814>] (driver_probe_device+0x0/0x220) from [<c01afac8>] (__driver_attach+0x94/0x98) r9:c038a000 r8:0000003f r7:c01afa34 r6:c03849f4 r5:c037081c r4:c03707e8 [<c01afa34>] (__driver_attach+0x0/0x98) from [<c01adfbc>] (bus_for_each_dev+0x68/0x94) r7:c01afa34 r6:c03849f4 r5:c582ded8 r4:00000000 [<c01adf54>] (bus_for_each_dev+0x0/0x94) from [<c01af6f4>] (driver_attach+0x20/0x28) r7:c0383fd0 r6:c03849f4 r5:c03849f4 r4:c59871e0 [<c01af6d4>] (driver_attach+0x0/0x28) from [<c01ae864>] (bus_add_driver+0xb4/0x250) [<c01ae7b0>] (bus_add_driver+0x0/0x250) from [<c01b00e8>] (driver_register+0x60/0x150) r7:c582c000 r6:00000000 r5:c03849f4 r4:c0363640 [<c01b0088>] (driver_register+0x0/0x150) from [<c01b11a4>] (platform_driver_register+0x4c/0x60) r7:c582c000 r6:00000000 r5:c035b7d4 r4:c0363640 [<c01b1158>] (platform_driver_register+0x0/0x60) from [<c0353d9c>] (davinci_mdio_init+0x14/0x1c) [<c0353d88>] (davinci_mdio_init+0x0/0x1c) from [<c00087c4>] (do_one_initcall+0x38/0x170) [<c000878c>] (do_one_initcall+0x0/0x170) from [<c033f380>] (kernel_init+0xfc/0x1c8) [<c033f284>] (kernel_init+0x0/0x1c8) from [<c001d560>] (do_exit+0x0/0x79c) ---[ end trace 1b75b31a2719ed1d ]--- davinci_mdio davinci_mdio.0: Runtime PM disabled, clock forced on. davinci_mdio davinci_mdio.0: davinci mdio revision 1.3 davinci_mdio davinci_mdio.0: no live phy, scanning all davinci_mdio: probe of davinci_mdio.0 failed with error -5 Murali Karicheri Software Design Engineer
_______________________________________________ Davinci-linux-open-source mailing list [email protected] http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source
