linux/drivers
Tony Lindgren f08ac4e794 i2c-omap: Fix unhandled fault
If an I2C interrupt happens between disabling interface clock
and functional clock, the interrupt handler will produce an
external abort on non-linefetch error when trying to access
driver registers while interface clock is disabled.

This patch fixes the problem by saving and disabling i2c-omap
interrupt before turning off the clocks. Also disable functional
clock before the interface clock as suggested by Paul Walmsley.

Patch also renames enable/disable_clocks functions to unidle/idle
functions. Note that the driver is currently not taking advantage
of the idle interrupts. To use the idle interrupts, driver would
have to enable interface clock based on the idle interrupt
and dev->idle flag.

This patch has been tested in linux-omap tree with various omaps.

Cc: Paul Walmsley <paul@pwsan.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: Jean Delvare <khali@linux-fr.org>
2008-03-23 20:28:20 +01:00
..
acorn/char
acpi Revert "ACPI: EC: Handle IRQ storm on Acer laptops" 2008-03-18 21:32:24 -07:00
amba
ata ACPI: fix ATA_ACPI build 2008-03-18 00:26:07 -04:00
atm fore2000 - fix misannotations 2008-03-17 07:56:31 -04:00
auxdisplay
base
block Merge branch 'for-linus' of git://git.kernel.dk/linux-2.6-block 2008-03-18 07:43:14 -07:00
bluetooth Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6 2008-03-12 13:08:09 -07:00
cdrom
char drivers/char/rocket portability fixes 2008-03-19 19:42:36 -07:00
clocksource
connector
cpufreq
cpuidle
crypto
dca
dio
dma fsldma: Fix the DMA halt when using DMA_INTERRUPT async_tx transfer. 2008-03-18 17:00:59 -07:00
edac
eisa
firewire firewire: fix panic in handle_at_packet 2008-03-20 18:13:05 +01:00
firmware
gpio
hid HID: update key codes for Apple aluminium 2008-03-18 11:20:33 +01:00
hwmon ibmpex: report temperatures in mC, not C 2008-03-19 18:53:36 -07:00
i2c i2c-omap: Fix unhandled fault 2008-03-23 20:28:20 +01:00
ide Revert "ide-tape: schedule driver for removal after 6 months" 2008-03-22 16:44:27 +01:00
ieee1394 ieee1394: sbp2: fix for SYM13FW500 bridge (Datafab disk) 2008-03-14 00:56:59 +01:00
infiniband RDMA/nes: Fix MSS calculation on RDMA path 2008-03-21 13:59:28 -07:00
input Input: ALPS - fix forward/back buttons reversed on Acer 5520-5290 2008-03-18 00:39:55 -04:00
isdn Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6 2008-03-12 13:08:09 -07:00
leds
lguest
macintosh [POWERPC] Fix build of modular drivers/macintosh/apm_emu.c 2008-03-13 10:09:27 +11:00
mca
md drivers/md/raid5.c: fix printk warnings 2008-03-19 18:53:37 -07:00
media V4L/DVB (7367): bug #10211: Fix depencencies for cx2341x 2008-03-20 12:39:02 -03:00
memstick memstick: optimize setup of JMicron host parameters 2008-03-19 18:53:37 -07:00
message [SCSI] mpt fusion: Power Management fixes for MPT SAS PCI-E controllers 2008-03-18 15:13:40 -05:00
mfd
misc Merge branches 'release', 'ejd', 'sony' and 'wmi' into release 2008-03-13 01:59:52 -04:00
mmc mmc: use sysfs groups to handle conditional attributes 2008-03-22 17:02:20 -07:00
mtd
net [NET] ifb: set separate lockdep classes for queue locks 2008-03-20 17:05:13 -07:00
nubus
of
oprofile
parisc [PARISC] make ptr_to_pide() static 2008-03-15 19:17:12 -07:00
parport
pci pciehp: don't enable slot unless forced 2008-03-17 19:26:05 -07:00
pcmcia
pnp ISAPNP: fix limits of logical device register set 2008-03-22 17:00:03 -07:00
power
ps3
rapidio
rtc rtc-at91sam9 fixes 2008-03-19 18:53:37 -07:00
s390
sbus
scsi [SCSI] a100u2w: fix bitmap lookup routine 2008-03-20 09:19:25 -05:00
serial serial: sh-sci: Fix fifo stall on SH7760/SH7780/SH7785 SCIF. 2008-03-11 13:58:50 +09:00
sh
sn ioc3.c: replace remaining __FUNCTION__ occurrences 2008-03-17 08:11:48 -04:00
spi spi_bitbang: short transfer status fix 2008-03-13 13:11:43 -07:00
ssb
tc
telephony
thermal thermal: delete "default y" 2008-03-18 01:22:10 -04:00
uio
usb Merge git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-rc-fixes-2.6 2008-03-20 10:20:07 -07:00
video fbdev: defio and Metronomefb 2008-03-19 18:53:37 -07:00
virtio virtio: fix race in enable_cb 2008-03-17 22:58:21 +11:00
w1
watchdog
xen
zorro
Kconfig
Makefile