commit
d16933b33914a6dff38a4ecbe8edce44a17898e8 "i2c: s3c2410: Move
location of clk_prepare_enable() call in probe function" refactored
clk_enable and clk_disable calls yet neglected to remove the
clk_disable_unprepare call in the module's remove().
It helps remove warnings on an arndale during unbind:
echo
12c90000.i2c > /sys/bus/platform/devices/
12c90000.i2c/driver/unbind
------------[ cut here ]------------
WARNING: CPU: 0 PID: 2548 at drivers/clk/clk.c:842 clk_disable+0x18/0x24()
Modules linked in:
CPU: 0 PID: 2548 Comm: bash Not tainted 3.11.0-next-
20130916-00003-gf4bddbc #6
[<
c0014d48>] (unwind_backtrace+0x0/0xf8) from [<
c00117d0>] (show_stack+0x10/0x14)
[<
c00117d0>] (show_stack+0x10/0x14) from [<
c0361be8>] (dump_stack+0x6c/0xac)
[<
c0361be8>] (dump_stack+0x6c/0xac) from [<
c001d864>] (warn_slowpath_common+0x64/0x88)
[<
c001d864>] (warn_slowpath_common+0x64/0x88) from [<
c001d8a4>] (warn_slowpath_null+0x1c/0x24)
[<
c001d8a4>] (warn_slowpath_null+0x1c/0x24) from [<
c02c4a64>] (clk_disable+0x18/0x24)
[<
c02c4a64>] (clk_disable+0x18/0x24) from [<
c028d0b0>] (s3c24xx_i2c_remove+0x28/0x70)
[<
c028d0b0>] (s3c24xx_i2c_remove+0x28/0x70) from [<
c0217a10>] (platform_drv_remove+0x18/0x1c)
[<
c0217a10>] (platform_drv_remove+0x18/0x1c) from [<
c0216358>] (__device_release_driver+0x58/0xb4)
[<
c0216358>] (__device_release_driver+0x58/0xb4) from [<
c02163d0>] (device_release_driver+0x1c/0x28)
[<
c02163d0>] (device_release_driver+0x1c/0x28) from [<
c02153c0>] (unbind_store+0x58/0x90)
[<
c02153c0>] (unbind_store+0x58/0x90) from [<
c0214c90>] (drv_attr_store+0x20/0x2c)
[<
c0214c90>] (drv_attr_store+0x20/0x2c) from [<
c01032c0>] (sysfs_write_file+0x168/0x198)
[<
c01032c0>] (sysfs_write_file+0x168/0x198) from [<
c00ae1c0>] (vfs_write+0xb0/0x194)
[<
c00ae1c0>] (vfs_write+0xb0/0x194) from [<
c00ae594>] (SyS_write+0x3c/0x70)
[<
c00ae594>] (SyS_write+0x3c/0x70) from [<
c000e3e0>] (ret_fast_syscall+0x0/0x30)
---[ end trace
4c9f9403066f57a6 ]---
------------[ cut here ]------------
WARNING: CPU: 0 PID: 2548 at drivers/clk/clk.c:751 clk_unprepare+0x14/0x1c()
Modules linked in:
CPU: 0 PID: 2548 Comm: bash Tainted: G W 3.11.0-next-
20130916-00003-gf4bddbc #6
[<
c0014d48>] (unwind_backtrace+0x0/0xf8) from [<
c00117d0>] (show_stack+0x10/0x14)
[<
c00117d0>] (show_stack+0x10/0x14) from [<
c0361be8>] (dump_stack+0x6c/0xac)
[<
c0361be8>] (dump_stack+0x6c/0xac) from [<
c001d864>] (warn_slowpath_common+0x64/0x88)
[<
c001d864>] (warn_slowpath_common+0x64/0x88) from [<
c001d8a4>] (warn_slowpath_null+0x1c/0x24)
[<
c001d8a4>] (warn_slowpath_null+0x1c/0x24) from [<
c02c5834>] (clk_unprepare+0x14/0x1c)
[<
c02c5834>] (clk_unprepare+0x14/0x1c) from [<
c028d0b8>] (s3c24xx_i2c_remove+0x30/0x70)
[<
c028d0b8>] (s3c24xx_i2c_remove+0x30/0x70) from [<
c0217a10>] (platform_drv_remove+0x18/0x1c)
[<
c0217a10>] (platform_drv_remove+0x18/0x1c) from [<
c0216358>] (__device_release_driver+0x58/0xb4)
[<
c0216358>] (__device_release_driver+0x58/0xb4) from [<
c02163d0>] (device_release_driver+0x1c/0x28)
[<
c02163d0>] (device_release_driver+0x1c/0x28) from [<
c02153c0>] (unbind_store+0x58/0x90)
[<
c02153c0>] (unbind_store+0x58/0x90) from [<
c0214c90>] (drv_attr_store+0x20/0x2c)
[<
c0214c90>] (drv_attr_store+0x20/0x2c) from [<
c01032c0>] (sysfs_write_file+0x168/0x198)
[<
c01032c0>] (sysfs_write_file+0x168/0x198) from [<
c00ae1c0>] (vfs_write+0xb0/0x194)
[<
c00ae1c0>] (vfs_write+0xb0/0x194) from [<
c00ae594>] (SyS_write+0x3c/0x70)
[<
c00ae594>] (SyS_write+0x3c/0x70) from [<
c000e3e0>] (ret_fast_syscall+0x0/0x30)
---[ end trace
4c9f9403066f57a7 ]---
Signed-off-by: Kim Phillips <kim.phillips@linaro.org>
Signed-off-by: Wolfram Sang <wsa@the-dreams.de>