linux/drivers/mfd
Paul Fertser bd8ef10261 mfd: revise locking for pcf50633 ADC
Current implementation is prone to races, this patch attempts to remove all
but one (in pcf50633_adc_sync_read).

The idea is that we need to guard the queue access only on inserting and
removing items. If we insert and there're no more items in the queue it
means that the last irq already happened and we need to trigger ADC
manually. If not, then the next conversion will be triggered by the irq
handler upon completion of the previous.

Signed-off-by: Paul Fertser <fercerpav@gmail.com>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2009-09-17 09:46:53 +02:00
..
ab3100-core.c mfd: fix ab3100 warning on x86_64 2009-09-17 09:46:42 +02:00
asic3.c mfd: asic3: enable SD/SDIO cell 2009-06-17 19:41:50 +02:00
da903x.c mfd: early init for MFD running regulators 2009-06-17 19:41:54 +02:00
dm355evm_msp.c Input: dm355evm_keys - fix kconfig symbol names 2009-06-28 23:57:44 -07:00
ezx-pcap.c mfd: add ezx_pcap_setbits 2009-09-17 09:46:47 +02:00
htc-egpio.c mfd: fix htc-egpio iomem resource handling using resource_size 2009-02-17 09:00:14 +01:00
htc-pasic3.c mfd: remove driver_data direct access of struct device 2009-06-15 21:30:27 -07:00
Kconfig mfd: asic3: enable DS1WM cell 2009-06-17 19:41:48 +02:00
Makefile mfd: add PCAP driver 2009-06-17 19:41:35 +02:00
mcp-core.c mfd: struct device - replace bus_id with dev_name(), dev_set_name() 2009-03-24 16:38:23 -07:00
mcp-sa11x0.c [ARM] Hide ISA DMA API when ISA_DMA_API is unset 2008-11-29 18:42:40 +00:00
mcp.h [MFD] Add multimedia communication port core support 2005-08-18 10:06:59 +01:00
menelaus.c mfd: move drivers/i2c/chips/menelaus.c to drivers/mfd 2009-01-04 12:17:44 +01:00
mfd-core.c mfd: Pass driver_data onto child devices 2009-01-04 12:17:41 +01:00
pcf50633-adc.c mfd: revise locking for pcf50633 ADC 2009-09-17 09:46:53 +02:00
pcf50633-core.c mfd: use a dedicated workqueue for pcf50633 irq processing 2009-09-17 09:46:53 +02:00
pcf50633-gpio.c mfd/pcf50633-gpio.c: add MODULE_LICENSE 2009-06-17 19:41:30 +02:00
sm501.c mfd: sm501, fix lock imbalance 2009-07-03 11:54:50 +02:00
t7l66xb.c mfd: fix tmio related warnings 2009-06-17 19:41:52 +02:00
tc6387xb.c mfd: fix tmio related warnings 2009-06-17 19:41:52 +02:00
tc6393xb.c mfd: fix tmio related warnings 2009-06-17 19:41:52 +02:00
tps65010.c mfd: move drivers/i2c/chips/tps65010.c to drivers/mfd 2009-01-04 12:17:43 +01:00
twl4030-core.c mfd: Add twl4030-pwrbutton as a twl4030 child 2009-09-17 09:46:52 +02:00
twl4030-irq.c mfd: remove unnecessary semicolons from twl4030 2009-09-17 09:46:48 +02:00
ucb1x00-assabet.c [ARM] Hide ISA DMA API when ISA_DMA_API is unset 2008-11-29 18:42:40 +00:00
ucb1x00-core.c mfd: struct device - replace bus_id with dev_name(), dev_set_name() 2009-03-24 16:38:23 -07:00
ucb1x00-ts.c [ARM] Hide ISA DMA API when ISA_DMA_API is unset 2008-11-29 18:42:40 +00:00
ucb1x00.h MCP_UCB1200: Convert from class_device to device 2008-01-24 20:40:06 -08:00
ucb1400_core.c Input: ucb1400 - move static function from header into core 2009-05-27 06:25:05 -07:00
wm8350-core.c hwmon: Add WM835x PMIC hardware monitoring driver 2009-09-17 09:46:51 +02:00
wm8350-gpio.c mfd: Add GPIO pin configuration support for WM8350 2008-10-13 21:51:55 +01:00
wm8350-i2c.c mfd: Add WM8351 support 2009-01-04 12:17:42 +01:00
wm8350-regmap.c mfd: Mark WM8350 mask revision as readable to match silicon 2009-06-17 19:41:29 +02:00
wm8400-core.c mfd: early init for MFD running regulators 2009-06-17 19:41:54 +02:00