linux/drivers/mfd
Jon Hunter 1765dbccaa mfd: twl-core: Fix kernel panic on boot
Commit 8a6aaa3 (mfd: twl-core: Collect global variables behind one
private structure (global)) removed the variable "inuse" that is used
to determine if the device has been initialised and now use the
twl_priv structure instead. This is causing the kernel to panic on
OMAP3+ devices using the twl driver, because we try to access the
twl_priv->ready member before checking if twl_priv is initialised. Fix
this and move this test to the beginning of the twl_i2c_read/write
function because twl_get_last_module() also uses the twl_priv structure.

Signed-off-by: Jon Hunter <jon-hunter@ti.com>
Acked-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2013-02-14 00:26:28 +01:00
..
88pm80x.c mfd: 88pm80x: Remove redundant devm_* calls 2013-02-14 00:22:54 +01:00
88pm800.c mfd: 88pm80x: Remove redundant devm_* calls 2013-02-14 00:22:54 +01:00
88pm805.c mfd: 88pm80x: Remove redundant devm_* calls 2013-02-14 00:22:54 +01:00
88pm860x-core.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
88pm860x-i2c.c mfd: Convert struct i2c_msg initialization to C99 format 2012-09-21 23:40:34 +02:00
aat2870-core.c mfd: core: Push irqdomain mapping out into devices 2012-09-15 23:22:04 +02:00
ab3100-core.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
ab3100-otp.c
ab8500-core.c Merge branch 'abx500-pinctrl-for-mfd' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl into for-next 2013-02-14 00:24:51 +01:00
ab8500-debugfs.c mfd: ab8500: Fix compile error 2013-02-14 00:24:07 +01:00
ab8500-gpadc.c mfd: ab8500-gpadc: Remove unused 'struct ab8500_gpadc' 2013-02-04 08:33:29 +00:00
ab8500-sysctrl.c mfd: ab8500-sysctrl: export read/write symbols 2013-02-04 08:31:33 +00:00
abx500-core.c mfd: abx500-core: Provide an API to dump all ABx500 registers 2013-02-04 08:31:34 +00:00
adp5520.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
arizona-core.c mfd: arizona: Provide platform data for MICBIAS configuration 2013-02-14 00:22:48 +01:00
arizona-i2c.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
arizona-irq.c mfd: arizona: Disable control interface reporting for WM5102 and WM5110 2013-01-22 01:17:29 +01:00
arizona-spi.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
arizona.h
as3711.c mfd: Add an AS3711 PMIC MFD driver 2012-11-23 12:09:19 +01:00
asic3.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
cs5535-mfd.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
da903x.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
da9052-core.c This is the MFD patch set for the 3.8 merge window. 2012-12-16 18:55:20 -08:00
da9052-i2c.c mfd: da9052/53 lockup fix 2013-01-27 01:35:32 +01:00
da9052-irq.c mfd: da9052: Introduce da9052-irq.c 2012-11-20 12:21:10 +01:00
da9052-spi.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
da9055-core.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
da9055-i2c.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
davinci_voicecodec.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
db8500-prcmu.c mfd: db8500-prcmu: Add ux500_wdt mfd_cell 2013-02-14 00:22:54 +01:00
dbx500-prcmu-regs.h mfd: dbx500: Provide a more accurate smp_twd clock 2012-09-23 20:51:34 +02:00
dm355evm_msp.c
ezx-pcap.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
htc-egpio.c
htc-i2cpld.c mfd: remove use of __devinit 2012-11-28 12:20:19 -08:00
htc-pasic3.c mfd: core: Push irqdomain mapping out into devices 2012-09-15 23:22:04 +02:00
intel_msic.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
janz-cmodio.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
jz4740-adc.c This is the MFD patch set for the 3.8 merge window. 2012-12-16 18:55:20 -08:00
Kconfig mfd: Add missing GENERIC_HARDIRQS dependecies 2013-02-14 00:23:59 +01:00
lm3533-core.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
lm3533-ctrlbank.c
lp8788-irq.c mfd: Add lp8788 mfd driver 2012-09-23 20:51:34 +02:00
lp8788.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
lpc_ich.c mfd: lpc_ich: Fix gpio base and control offsets 2013-02-14 00:22:52 +01:00
lpc_sch.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
Makefile mfd: rtsx: Support RTS5227 2013-02-14 00:22:59 +01:00
max8907.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
max8925-core.c mfd: max8925: Fix onkey driver irq base 2013-02-14 00:23:00 +01:00
max8925-i2c.c mfd: max8925: Add irqdomain for dt 2013-02-14 00:23:00 +01:00
max8997-irq.c
max8997.c Drivers: mfd: remove __dev* attributes. 2013-01-03 15:57:14 -08:00
max8998-irq.c
max8998.c mfd: core: Push irqdomain mapping out into devices 2012-09-15 23:22:04 +02:00
max77686-irq.c
max77686.c mfd: max77686: Init max77686->dev before using it 2013-01-22 03:02:21 +01:00
max77693-irq.c mfd: MAX77693: Fix interrupt handling bug 2012-09-16 00:32:57 +02:00
max77693.c mfd: max77693: Init max77693->dev before using it 2013-01-22 03:02:22 +01:00
mc13xxx-core.c mfd: mc13xxx: Add support for mc34708 2012-11-06 23:14:08 +01:00
mc13xxx-i2c.c This is the MFD patch set for the 3.8 merge window. 2012-12-16 18:55:20 -08:00
mc13xxx-spi.c This is the MFD patch set for the 3.8 merge window. 2012-12-16 18:55:20 -08:00
mc13xxx.h mfd: mc13xxx: Add support for mc34708 2012-11-06 23:14:08 +01:00
mcp-core.c
mcp-sa11x0.c ARM: sa1100: move platform_data definitions 2012-09-14 11:18:57 +02:00
menelaus.c ARM: OMAP2: Move plat/menelaus.h to linux/mfd/menelaus.h 2012-10-15 13:53:41 -07:00
mfd-core.c mfd: Only unregister platform devices allocated by the mfd core 2012-11-20 12:21:12 +01:00
omap-usb-host.c mfd: omap-usb-host: get rid of cpu_is_omap..() macros 2012-12-14 11:48:06 -08:00
omap-usb-tll.c ARM: arm-soc: Header cleanups 2012-12-12 11:45:16 -08:00
omap-usb.h ARM: OMAP: move OMAP USB platform data to <linux/platform_data/omap-usb.h> 2012-10-24 14:26:55 -07:00
palmas.c mfd: palmas: Add rtc irq number as irq resource for palmas-rtc 2013-02-14 00:22:44 +01:00
pcf50633-adc.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
pcf50633-core.c mfd: pcf50633: Init pcf->dev before using it 2013-01-22 03:05:33 +01:00
pcf50633-gpio.c
pcf50633-irq.c
pm8xxx-irq.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
pm8921-core.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
rc5t583-irq.c mfd: rc5t583: Fix array subscript is above array bounds 2012-11-26 12:10:51 +01:00
rc5t583.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
rdc321x-southbridge.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
retu-mfd.c Drivers: mfd: remove __dev* attributes. 2013-01-03 15:57:14 -08:00
rtl8411.c mfd: rtsx: Implement driving adjustment to device-dependent callbacks 2013-02-14 00:22:59 +01:00
rts5209.c mfd: rtsx: Implement driving adjustment to device-dependent callbacks 2013-02-14 00:22:59 +01:00
rts5227.c mfd: rtsx: Support RTS5227 2013-02-14 00:22:59 +01:00
rts5229.c mfd: rtsx: Implement driving adjustment to device-dependent callbacks 2013-02-14 00:22:59 +01:00
rtsx_pcr.c mfd: rtsx: Fix issue that booting OS with SD card inserted 2013-02-14 00:24:12 +01:00
rtsx_pcr.h mfd: rtsx: Support RTS5227 2013-02-14 00:22:59 +01:00
sec-core.c mfd: core: Push irqdomain mapping out into devices 2012-09-15 23:22:04 +02:00
sec-irq.c mfd: sec: Fix reg_offset for interrupt registers 2012-11-26 00:35:08 +01:00
sm501.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
smsc-ece1099.c mfd: smsc: Add support for smsc gpio io/keypad driver 2012-10-01 15:27:48 +02:00
sta2x11-mfd.c Drivers: mfd: remove __dev* attributes. 2013-01-03 15:57:14 -08:00
stmpe-i2c.c This is the MFD patch set for the 3.8 merge window. 2012-12-16 18:55:20 -08:00
stmpe-spi.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
stmpe.c Drivers: mfd: remove __dev* attributes. 2013-01-03 15:57:14 -08:00
stmpe.h
syscon.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
t7l66xb.c mfd: core: Push irqdomain mapping out into devices 2012-09-15 23:22:04 +02:00
tc3589x.c mfd: tc3589x: Use simple irqdomain 2013-01-22 03:08:34 +01:00
tc6387xb.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
tc6393xb.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
ti_am335x_tscadc.c Drivers: mfd: remove __dev* attributes. 2013-01-03 15:57:14 -08:00
ti-ssp.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
timberdale.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
timberdale.h
tmio_core.c
tps6105x.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
tps6507x.c mfd: tps6507x: Add DT support 2013-02-14 00:22:54 +01:00
tps6586x.c This is the MFD patch set for the 3.8 merge window. 2012-12-16 18:55:20 -08:00
tps65010.c
tps65090.c mfd: tps65090: remove suspend/resume callbacks 2013-02-14 00:22:56 +01:00
tps65217.c This is the MFD patch set for the 3.8 merge window. 2012-12-16 18:55:20 -08:00
tps65910.c This is the MFD patch set for the 3.8 merge window. 2012-12-16 18:55:20 -08:00
tps65911-comparator.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
tps65912-core.c mfd: core: Push irqdomain mapping out into devices 2012-09-15 23:22:04 +02:00
tps65912-i2c.c
tps65912-irq.c
tps65912-spi.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
tps80031.c Drivers: mfd: remove __dev* attributes. 2013-01-03 15:57:14 -08:00
twl4030-audio.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
twl4030-irq.c This is the MFD patch set for the 3.8 merge window. 2012-12-16 18:55:20 -08:00
twl4030-madc.c This is the MFD patch set for the 3.8 merge window. 2012-12-16 18:55:20 -08:00
twl4030-power.c mfd: twl4030: Don't warn about uninitialized return code 2013-01-27 02:18:01 +01:00
twl6030-irq.c mfd/rtc/gpio: twl: No need to allocate bigger buffer for write 2012-11-21 16:08:00 +01:00
twl6040.c Drivers: mfd: remove __dev* attributes. 2013-01-03 15:57:14 -08:00
twl-core.c mfd: twl-core: Fix kernel panic on boot 2013-02-14 00:26:28 +01:00
twl-core.h
ucb1x00-assabet.c
ucb1x00-core.c
ucb1x00-ts.c
ucb1400_core.c
vexpress-config.c mfd: vexpress: Export global functions to fix build error 2013-01-22 17:28:34 +01:00
vexpress-sysreg.c mfd: vexpress: Allow vexpress-sysreg to self-initialise 2013-02-14 00:22:59 +01:00
viperboard.c mfd: viperboard: Do version query in dma memory 2012-11-26 11:48:56 +01:00
vx855.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
wl1273-core.c mfd: remove use of __devinit 2012-11-28 12:20:19 -08:00
wm831x-auxadc.c
wm831x-core.c mfd: core: Push irqdomain mapping out into devices 2012-09-15 23:22:04 +02:00
wm831x-i2c.c
wm831x-irq.c
wm831x-otp.c
wm831x-spi.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
wm5102-tables.c mfd: wm5102: Make DSP scratch registers readable 2013-02-14 00:22:55 +01:00
wm5110-tables.c mfd: wm5110: Add register patches for revision B 2012-09-28 23:57:28 +02:00
wm8350-core.c
wm8350-gpio.c
wm8350-i2c.c
wm8350-irq.c
wm8350-regmap.c
wm8400-core.c mfd: core: Push irqdomain mapping out into devices 2012-09-15 23:22:04 +02:00
wm8994-core.c mfd: wm8994: Use devm_regulator_bulk_get API 2013-02-14 00:22:46 +01:00
wm8994-irq.c
wm8994-regmap.c mfd: wm8994: Implement support for WM1811 devices with higher cust_ids 2012-09-14 09:52:11 +02:00
wm8994.h