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

Reply via email to