android_kernel_xiaomi_sm8350/arch/arm
Tomi Valkeinen 054ce503ae [ARM] OMAP: wait for pwrdm transition after clk_enable()
Enabling clock in a disabled power domain causes the power domain to be
turned on. However, the power transition is not always finished when
clk_enable() returns and this randomly crashes the kernel when an
interrupt happens right after the clk_enable, and the kernel tries to
read the irq status register for that domain.

Why the irq status register is inaccessible, I don't know. Also it
doesn't seem to be related to the module being not powered up, but to
the transition itself.

The same could perhaps happen after clk_disable also, but I have not
witnessed that.

The problem affects at least dss, cam and sgx clocks.

This change waits for the transition to be finished before returning
from omap2_clkdm_clk_enable().

Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
Signed-off-by: Paul Walmsley <paul@pwsan.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2009-02-08 17:50:31 +00:00
..
boot
common [ARM] clkdev: fix clock matching 2009-01-24 11:41:20 +00:00
configs eeprom: More consistent symbol names 2009-01-26 21:19:57 +01:00
include/asm byteorder: make swab.h include asm/swab.h like a regular header 2009-01-14 19:56:50 -08:00
kernel annotate that [fp, #-4] is the saved lr 2009-01-31 01:21:56 +01:00
lib
mach-aaec2000 arm: struct device - replace bus_id with dev_name(), dev_set_name() 2009-01-06 10:44:43 -08:00
mach-at91 [ARM] fix AT91, davinci, h720x, ks8695, msm, mx2, mx3, netx, omap1, omap2, pxa, s3c 2009-01-08 16:29:42 +00:00
mach-clps711x [ARM] clps711x: fix warning in edb7211-mm.c 2009-01-08 16:29:42 +00:00
mach-davinci USB: musb_hdrc: another davinci buildfix (otg related) 2009-01-27 16:15:32 -08:00
mach-ebsa110
mach-ep93xx arm: struct device - replace bus_id with dev_name(), dev_set_name() 2009-01-06 10:44:43 -08:00
mach-footbridge Merge branch 'devel' 2009-01-08 22:01:49 +00:00
mach-h720x [ARM] fix AT91, davinci, h720x, ks8695, msm, mx2, mx3, netx, omap1, omap2, pxa, s3c 2009-01-08 16:29:42 +00:00
mach-imx [ARM] i.MX add missing include 2009-01-12 12:14:40 +01:00
mach-integrator libata-sff: fix incorrect EH message 2009-01-26 06:36:16 -05:00
mach-iop13xx
mach-iop32x
mach-iop33x
mach-ixp4xx Merge branch 'cpus4096-for-linus-2' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip 2009-01-02 11:44:09 -08:00
mach-ixp23xx
mach-ixp2000
mach-kirkwood [ARM] 5357/1: Kirkwood: add missing ge01 tclk initialization 2009-01-08 16:29:41 +00:00
mach-ks8695 [ARM] fix AT91, davinci, h720x, ks8695, msm, mx2, mx3, netx, omap1, omap2, pxa, s3c 2009-01-08 16:29:42 +00:00
mach-l7200
mach-lh7a40x arm: struct device - replace bus_id with dev_name(), dev_set_name() 2009-01-06 10:44:43 -08:00
mach-loki
mach-msm [ARM] msm: fix build errors 2009-01-28 10:19:52 +00:00
mach-mv78xx0 [ARM] 5361/1: mv78xx0: fix compilation error 2009-01-08 16:29:40 +00:00
mach-mx1 [ARM] MXC: remove dependency to other include files from irqs.h 2008-12-18 16:40:11 +01:00
mach-mx2 [ARM] fix AT91, davinci, h720x, ks8695, msm, mx2, mx3, netx, omap1, omap2, pxa, s3c 2009-01-08 16:29:42 +00:00
mach-mx3 [ARM] fix AT91, davinci, h720x, ks8695, msm, mx2, mx3, netx, omap1, omap2, pxa, s3c 2009-01-08 16:29:42 +00:00
mach-netx [ARM] fix netx 2009-01-08 16:29:44 +00:00
mach-ns9xxx Merge branch 'cpus4096-for-linus-2' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip 2009-01-02 11:44:09 -08:00
mach-omap1 [ARM] omap: spi: arrange for omap_uwire to use connection ID 2009-02-08 17:50:21 +00:00
mach-omap2 [ARM] OMAP: wait for pwrdm transition after clk_enable() 2009-02-08 17:50:31 +00:00
mach-orion5x [ARM] 5360/1: Orion: fix compilation error 2009-01-08 16:29:40 +00:00
mach-pnx4008 [ARM] fix pnx4008 2009-01-08 16:29:43 +00:00
mach-pxa Merge git://git.infradead.org/mtd-2.6 2009-01-09 12:37:15 -08:00
mach-realview [ARM] Fix realview build 2009-01-08 16:29:41 +00:00
mach-rpc
mach-s3c24a0/include/mach [ARM] S3C24A0: Remove duplicate <mach/io.h> file 2008-12-18 16:35:59 +00:00
mach-s3c2400
mach-s3c2410 [ARM] fix AT91, davinci, h720x, ks8695, msm, mx2, mx3, netx, omap1, omap2, pxa, s3c 2009-01-08 16:29:42 +00:00
mach-s3c2412 [ARM] S3C: Remove unnecessary <linux/delay.h> includes 2008-12-18 16:36:02 +00:00
mach-s3c2440 [ARM] 5358/1: AT2440EVB: Use new include path of mci.h 2009-01-08 16:29:41 +00:00
mach-s3c2442
mach-s3c2443 [ARM] S3C: Remove unnecessary <linux/delay.h> includes 2008-12-18 16:36:02 +00:00
mach-s3c6400 [ARM] fix AT91, davinci, h720x, ks8695, msm, mx2, mx3, netx, omap1, omap2, pxa, s3c 2009-01-08 16:29:42 +00:00
mach-s3c6410 Merge branch 'next-s3c64xx-device' into next-merged 2008-12-18 16:17:37 +00:00
mach-sa1100 rename platform_driver name "flash" to "sa1100-mtd" 2009-01-31 01:21:58 +01:00
mach-shark
mach-versatile arm: struct device - replace bus_id with dev_name(), dev_set_name() 2009-01-06 10:44:43 -08:00
mach-w90x900 [ARM] w90x900: fix build errors and warnings 2009-01-12 13:51:03 +00:00
mm [ARM] 5366/1: fix shared memory coherency with VIVT L1 + L2 caches 2009-01-28 16:55:00 +00:00
nwfpe
oprofile
plat-iop
plat-mxc i.MX31: framebuffer driver 2009-01-21 10:32:34 -07:00
plat-omap [ARM] OMAP2/3 clockdomains: add CM and PRM clkdms 2009-02-08 17:50:29 +00:00
plat-orion Merge branch 'cpus4096-for-linus-2' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip 2009-01-02 11:44:09 -08:00
plat-s3c [ARM] fix AT91, davinci, h720x, ks8695, msm, mx2, mx3, netx, omap1, omap2, pxa, s3c 2009-01-08 16:29:42 +00:00
plat-s3c24xx [ARM] fix AT91, davinci, h720x, ks8695, msm, mx2, mx3, netx, omap1, omap2, pxa, s3c 2009-01-08 16:29:42 +00:00
plat-s3c64xx [ARM] S3C64XX: Fix EINT group macro definition 2009-01-08 16:25:24 +00:00
tools
vfp [ARM] 5349/1: VFP: Add PM code to save and restore current VFP state 2008-12-18 21:21:34 +00:00
Kconfig Staging: Kconfig for ARCH=arm,8300, cris 2009-01-06 13:51:38 -08:00
Kconfig-nommu
Kconfig.debug
Makefile Merge branch 'next-merged' of git://aeryn.fluff.org.uk/bjdooks/linux into devel 2008-12-18 22:15:30 +00:00