[PATCH v4 00/23] OMAP USB Host cleanup
Roger Quadros
rogerq at ti.com
Thu Dec 13 05:44:22 EST 2012
Hi Samuel & Felipe,
How can we proceed with this patchset?
You can use the below pull request.
The following changes since commit 47f46768d3a3866bff7164649dab499bf5d8ed81:
Merge branch 'next/soc' into for-next (2012-12-07 16:35:14 -0800)
are available in the git repository at:
git at github.com:rogerq/linux.git arm-for-next-usbhost6
It is known to fix the following warnings on arm-soc/for-next
[ 1.608428] WARNING: at drivers/clk/clk.c:512 __clk_enable+0x94/0xa0()
[ 0.608428] Modules linked in:
[ 0.608459] [<c001b254>] (unwind_backtrace+0x0/0xf0) from
[<c003fdd4>] (warn_slowpath_common+0x4c/0x64)
[ 0.608459] [<c003fdd4>] (warn_slowpath_common+0x4c/0x64) from
[<c003fe08>] (warn_slowpath_null+0x1c/0x24)
[ 0.608489] [<c003fe08>] (warn_slowpath_null+0x1c/0x24) from
[<c03f05d8>] (__clk_enable+0x94/0xa0)
[ 0.608489] [<c03f05d8>] (__clk_enable+0x94/0xa0) from [<c03f0604>]
(clk_enable+0x20/0x3c)
[ 0.608520] [<c03f0604>] (clk_enable+0x20/0x3c) from [<c031f480>]
(usbhs_runtime_resume+0x68/0xa4)
[ 0.608520] [<c031f480>] (usbhs_runtime_resume+0x68/0xa4) from
[<c030c9a0>] (pm_generic_runtime_resume+0x2c/0x38)
[ 0.608551] [<c030c9a0>] (pm_generic_runtime_resume+0x2c/0x38) from
[<c0310134>] (__rpm_callback+0x2c/0x60)
[ 0.608581] [<c0310134>] (__rpm_callback+0x2c/0x60) from [<c0311060>]
(rpm_resume+0x39c/0x60c)
[ 0.608581] [<c0311060>] (rpm_resume+0x39c/0x60c) from [<c0311538>]
(__pm_runtime_resume+0x48/0x60)
[ 0.608612] [<c0311538>] (__pm_runtime_resume+0x48/0x60) from
[<c04b8260>] (usbhs_omap_probe+0x3a8/0x858)
[ 0.608612] [<c04b8260>] (usbhs_omap_probe+0x3a8/0x858) from
[<c0309c70>] (platform_drv_probe+0x18/0x1c)
[ 0.608642] [<c0309c70>] (platform_drv_probe+0x18/0x1c) from
[<c03089f4>] (driver_probe_device+0x74/0x218)
[ 0.608642] [<c03089f4>] (driver_probe_device+0x74/0x218) from
[<c0308c2c>] (__driver_attach+0x94/0x98)
[ 0.608673] [<c0308c2c>] (__driver_attach+0x94/0x98) from
[<c0307188>] (bus_for_each_dev+0x4c/0x80)
[ 0.608673] [<c0307188>] (bus_for_each_dev+0x4c/0x80) from
[<c0308224>] (bus_add_driver+0x174/0x240)
[ 0.608703] [<c0308224>] (bus_add_driver+0x174/0x240) from
[<c03090f8>] (driver_register+0x78/0x14c)
[ 0.608703] [<c03090f8>] (driver_register+0x78/0x14c) from
[<c0309e5c>] (platform_driver_probe+0x18/0x9c)
[ 0.608734] [<c0309e5c>] (platform_driver_probe+0x18/0x9c) from
[<c0008774>] (do_one_initcall+0xfc/0x168)
[ 0.608734] [<c0008774>] (do_one_initcall+0xfc/0x168) from
[<c04b2014>] (kernel_init+0x120/0x2cc)
[ 0.608764] [<c04b2014>] (kernel_init+0x120/0x2cc) from [<c00137f0>]
(ret_from_fork+0x14/0x24)
[ 0.608764] ---[ end trace f627315b3f056ecc ]---
[ 0.608795] ------------[ cut here ]------------
[ 0.608795] WARNING: at drivers/clk/clk.c:471 clk_disable+0x20/0x34()
[ 0.608825] Modules linked in:
[ 0.608825] [<c001b254>] (unwind_backtrace+0x0/0xf0) from
[<c003fdd4>] (warn_slowpath_common+0x4c/0x64)
[ 0.608856] [<c003fdd4>] (warn_slowpath_common+0x4c/0x64) from
[<c003fe08>] (warn_slowpath_null+0x1c/0x24)
[ 0.608856] [<c003fe08>] (warn_slowpath_null+0x1c/0x24) from
[<c03f0530>] (clk_disable+0x20/0x34)
[ 0.608886] [<c03f0530>] (clk_disable+0x20/0x34) from [<c031f500>]
(usbhs_runtime_suspend+0x44/0xa4)
[ 0.608917] [<c031f500>] (usbhs_runtime_suspend+0x44/0xa4) from
[<c030c968>] (pm_generic_runtime_suspend+0x2c/0x38)
[ 0.608917] [<c030c968>] (pm_generic_runtime_suspend+0x2c/0x38) from
[<c002b120>] (_od_runtime_suspend+0xc/0x24)
[ 0.608947] [<c002b120>] (_od_runtime_suspend+0xc/0x24) from
[<c0310134>] (__rpm_callback+0x2c/0x60)
[ 0.608947] [<c0310134>] (__rpm_callback+0x2c/0x60) from [<c03104a4>]
(rpm_suspend+0xf4/0x59c)
[ 0.608978] [<c03104a4>] (rpm_suspend+0xf4/0x59c) from [<c03118f8>]
(__pm_runtime_suspend+0x5c/0x80)
[ 0.609008] [<c03118f8>] (__pm_runtime_suspend+0x5c/0x80) from
[<c030cde0>] (pm_generic_runtime_idle+0x44/0x50)
[ 0.609008] [<c030cde0>] (pm_generic_runtime_idle+0x44/0x50) from
[<c0310134>] (__rpm_callback+0x2c/0x60)
[ 0.609039] [<c0310134>] (__rpm_callback+0x2c/0x60) from [<c0310aa8>]
(rpm_idle+0xf0/0x21c)
[ 0.609039] [<c0310aa8>] (rpm_idle+0xf0/0x21c) from [<c0310ca0>]
(__pm_runtime_idle+0x5c/0x80)
[ 0.609069] [<c0310ca0>] (__pm_runtime_idle+0x5c/0x80) from
[<c04b83c0>] (usbhs_omap_probe+0x508/0x858)
[ 0.609069] [<c04b83c0>] (usbhs_omap_probe+0x508/0x858) from
[<c0309c70>] (platform_drv_probe+0x18/0x1c)
[ 0.609100] [<c0309c70>] (platform_drv_probe+0x18/0x1c) from
[<c03089f4>] (driver_probe_device+0x74/0x218)
[ 0.609100] [<c03089f4>] (driver_probe_device+0x74/0x218) from
[<c0308c2c>] (__driver_attach+0x94/0x98)
[ 0.609130] [<c0308c2c>] (__driver_attach+0x94/0x98) from
[<c0307188>] (bus_for_each_dev+0x4c/0x80)
[ 0.609130] [<c0307188>] (bus_for_each_dev+0x4c/0x80) from
[<c0308224>] (bus_add_driver+0x174/0x240)
[ 0.609161] [<c0308224>] (bus_add_driver+0x174/0x240) from
[<c03090f8>] (driver_register+0x78/0x14c)
[ 0.609161] [<c03090f8>] (driver_register+0x78/0x14c) from
[<c0309e5c>] (platform_driver_probe+0x18/0x9c)
[ 0.609191] [<c0309e5c>] (platform_driver_probe+0x18/0x9c) from
[<c0008774>] (do_one_initcall+0xfc/0x168)
[ 0.609191] [<c0008774>] (do_one_initcall+0xfc/0x168) from
[<c04b2014>] (kernel_init+0x120/0x2cc)
[ 0.609222] [<c04b2014>] (kernel_init+0x120/0x2cc) from [<c00137f0>]
(ret_from_fork+0x14/0x24)
[ 0.609222] ---[ end trace f627315b3f056ecd ]---
cheers,
-roger
On 12/10/2012 12:20 PM, Roger Quadros wrote:
> Hi,
>
> This patchset addresses the following
>
> - Avoid addressing clocks one by one by name and use a for loop + bunch
> of cleanups.
> - Get number of channels/ports dynamically either from revision register
> or from platform data. Avoids getting clocks that are not present.
> - Add OMAP5 and HSIC mode (Not tested)
>
> v4:
> - Added appropriate maintainers in to/cc
> - minor print message fix in patch 23 to maintain consistency
>
> v3:
> - Rebased on arm-soc/for-next commit f979306c4d38d213c6977aaf3b1115e8ded71e3a
> - Rearranged patch that get rids of cpu_is_omap..() macros
> - Coding style fixes
>
> v2:
> - Clocks are allocated dynamically based on number of ports available
> on the platform
> - Reduced console spam if non critical clocks are not found on the platform.
> - Get rid of cpu_is_.. macros from USB host driver.
>
> cheers,
> -roger
>
> ---
> Roger Quadros (23):
> mfd: omap-usb-host: get rid of cpu_is_omap..() macros
> mfd: omap-usb-tll: Avoid creating copy of platform data
> mfd: omap-usb-tll: Fix channel count detection
> mfd: omap-usb-tll: Use devm_kzalloc/ioremap and clean up error path
> mfd: omap-usb-tll: Clean up clock handling
> mfd: omap-usb-tll: introduce and use mode_needs_tll()
> mfd: omap-usb-tll: Check for missing platform data in probe
> mfd: omap-usb-tll: Fix error message
> mfd: omap-usb-tll: serialize access to TLL device
> mfd: omap-usb-tll: Add OMAP5 revision and HSIC support
> mfd: omap_usb_host: Avoid creating copy of platform_data
> mfd: omap-usb-host: Use devm_kzalloc() and devm_request_and_ioremap()
> mfd: omap-usb-host: know about number of ports from revision register
> mfd: omap-usb-host: override number of ports from platform data
> mfd: omap-usb-host: cleanup clock management code
> ARM: OMAP2+: clock data: Merge utmi_px_gfclk into
> usb_host_hs_utmi_px_clk
> mfd: omap-usb-host: Manage HSIC clocks for HSIC mode
> mfd: omap-usb-host: Get rid of unnecessary spinlock
> mfd: omap-usb-host: clean up omap_usbhs_init()
> USB: ehci-omap: Don't free gpios that we didn't request
> ARM: OMAP3: clock data: get rid of unused USB host clock aliases and
> dummies
> ARM: OMAP4: clock data: get rid of unused USB host clock aliases
> mfd: omap-usb-host: Don't spam console on clk_set_parent failure
>
> arch/arm/mach-omap2/cclock3xxx_data.c | 13 -
> arch/arm/mach-omap2/cclock44xx_data.c | 55 +++--
> arch/arm/mach-omap2/usb-host.c | 5 +
> arch/arm/mach-omap2/usb.h | 1 +
> drivers/mfd/omap-usb-host.c | 474 ++++++++++++++++++--------------
> drivers/mfd/omap-usb-tll.c | 244 +++++++++--------
> drivers/usb/host/ehci-omap.c | 8 -
> include/linux/platform_data/usb-omap.h | 4 +
> 8 files changed, 451 insertions(+), 353 deletions(-)
>
More information about the linux-arm-kernel
mailing list