summaryrefslogtreecommitdiffstats
path: root/drivers/extcon
AgeCommit message (Collapse)AuthorFilesLines
2014-09-22extcon: gpio: Fix code cleanupGeorge Cherian1-5/+5
This patch fixes following minor cleanup: - Order the include files in alphabetical order. - Fix description of state_off in extcon_gpio.h - Add a descrition for check_on_resume in extcon_gpio.h Signed-off-by: George Cherian <george.cherian@ti.com> [Modify the name/description of patch to keep standary codiyg style by Chanwoo Choi] Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
2014-09-22extcon: max77693: Fix a bug occured at changing ADC debounce time.Jonghwa Lee1-4/+8
When it writes some value other than 0 to BTLDset and JIGset, muic device will be reset automatically. And it happens during updating ADC debounce time, because it shares same register. To update ADC debounce time without reset, set value only to ADCDbset and 0 to BTLDset and JIGset. Signed-off-by: Jonghwa Lee <jonghwa3.lee@samsung.com> [Remove un-needed masking operation by Chanwoo Choi] Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
2014-09-22extcon: sm5502: Drop useless includeJean Delvare1-1/+0
Don't include <linux/input.h> when the driver does not use anything from this header file. Signed-off-by: Jean Delvare <jdelvare@suse.de> Acked-by: MyungJoo Ham <myungjoo.ham@samsung.com> Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com> Cc: Chanwoo Choi <cw00.choi@samsung.com> Cc: MyungJoo Ham <myungjoo.ham@samsung.com>
2014-09-22extcon: max77693: Use resource managed interrupt lineKrzysztof Kozlowski1-18/+7
Use resource managed interrupt line devm_request_threaded_irq() to simplify a little cleanup paths: - no goto to cleanup label, - simpler remove function. Overall the driver size is decreased by 11 line of code. Signed-off-by: Krzysztof Kozlowski <k.kozlowski@samsung.com> Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
2014-09-22extcon: rt8973a: Add Richtek RT8973A extcon driverChanwoo Choi4-0/+956
This patch add support for Richtek RT8973A which is Micro USB Switch OVP and i2c interface. The RT8973A is a USB port accessory detector and switch that is optimized to protect low voltage system from abnormal high input voltage (up to 28V) and supports high speed USB operation. Also, RT8973A support 'auto-configuration' mode. If auto-configuration mode is enabled, RT8973A would control internal h/w patch for USB D-/D+ switching. Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com> Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com> Acked-by: Kyungmin Park <kyungmin.park@samsung.com>
2014-09-22extcon: sm5502: Clean up codes by using checkpatch scriptChanwoo Choi1-5/+4
This patch just clean up codes by using checkpatch script and fix warning message about if statement. - the result of checkpatch script as following: WARNING: void function return statements are not generally useful + return; +} WARNING: quoted string split across lines + dev_err(info->dev, "failed: irq request (IRQ: %d," + " error :%d)\n", muic_irq->irq, ret); - warning message about coding style. drivers/extcon/extcon-sm5502.c:398 sm5502_muic_cable_handler() warn: we tested 'attached' before and it was 'false' Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
2014-09-22extcon: sm5502: Move sm5502.h header file to extcon directoryChanwoo Choi2-6/+284
This patch move sm5502.h header file from 'include/linux/extcon' to 'driver/extcon' because sm5502.h is used for driver/extcon/extcon-sm5502.c. and remove duplicate license description. Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
2014-09-22extcon: sm5502: Add I2C dependency to fix build breakChanwoo Choi1-0/+1
This patch add I2C configuration dependency to fix following build break. If specific kernel build I2C as module, extcon-sm5502 have to depend on I2C configuration. drivers/built-in.o: In function `regmap_smbus_byte_reg_read': regmap-i2c.c:(.text+0x5030a): undefined reference to `i2c_smbus_read_byte_data' drivers/built-in.o: In function `regmap_smbus_byte_reg_write': regmap-i2c.c:(.text+0x50338): undefined reference to `i2c_smbus_write_byte_data' drivers/built-in.o: In function `regmap_smbus_word_reg_read': regmap-i2c.c:(.text+0x50356): undefined reference to `i2c_smbus_read_word_data' drivers/built-in.o: In function `regmap_smbus_word_reg_write': regmap-i2c.c:(.text+0x50384): undefined reference to `i2c_smbus_write_word_data' drivers/built-in.o: In function `regmap_i2c_read': regmap-i2c.c:(.text+0x503cf): undefined reference to `i2c_transfer' drivers/built-in.o: In function `regmap_i2c_gather_write': regmap-i2c.c:(.text+0x50442): undefined reference to `i2c_transfer' drivers/built-in.o: In function `regmap_i2c_write': regmap-i2c.c:(.text+0x50474): undefined reference to `i2c_master_send' drivers/built-in.o: In function `sm5502_muic_i2c_init': extcon-sm5502.c:(.init.text+0x6630): undefined reference to `i2c_register_driver' Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
2014-09-22extcon: sm5502: Fix bug to check cable typeChanwoo Choi1-1/+1
This patch fix bug when checking cable type. SM5502 have to use ADC value to get correct cable type. Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
2014-07-23extcon: sm5502: Change internal hardware switch according to cable typeChanwoo Choi1-5/+73
This patch changes internal hardware DP_CON/DM_CON switch according to cable type. The SM5502 MUIC device can set hardware switch as following: - OPEN (not connected state) / USB / UART / AUDIO Also, this patch set VBUSIN switch according to cable type. Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
2014-07-23extcon: sm5502: Detect cable state after completing platform bootingChanwoo Choi1-0/+36
This patch detect whether cable is connected or not and the cable type after completing kernel/platform booting using system_power_efficient_wq. Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
2014-07-23extcon: sm5502: Add support new SM5502 extcon device driverChanwoo Choi3-0/+631
This patch add new SM5502 MUIC(Micro-USB Interface Controller) device by using EXTCON subsystem. The extcon-sm5502 driver is capable of identifying the type of the external power source and attached accessory. An external power sources, such as Deticated Charger or a standard USB port, are able to charge the battery in the smart phone via the connector. Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
2014-07-23extcon: arizona: Get MICVDD against extcon deviceCharles Keepax1-1/+1
Previously we would do a regulator get against the main Arizona device to obtain the MICVDD regulator. Arizona is an MFD device and normally MICVDD will be supplied by one of its children (the arizona-micsupp regulator). As devres destruction for the MFD device will run after all its children have been destroyed, the regulator will be destroyed before devres calls regulator_put. This causes a warning from both the destruction of the child node, as the regulator is still open, and from the put of the regulator as the regulator device has already been destroyed. A simple fix here is to get the regulator against the extcon device itself such that devres runs when the child is destroyed. This has the additional benefit that if for some reason the extcon driver is unloaded the regulator reference won't hang around until the MFD is unloaded. Signed-off-by: Charles Keepax <ckeepax@opensource.wolfsonmicro.com> Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
2014-07-23extcon: Remove unnecessary OOM messagesJingoo Han4-12/+6
The site-specific OOM messages are unnecessary, because they duplicate the MM subsystem generic OOM message. The following checkpatch warning is also removed. WARNING: Possible unnecessary 'out of memory' message Signed-off-by: Jingoo Han <jg1.han@samsung.com> [Acked by Charles Keepax for arizona part] Acked-by: Charles Keepax <ckeepax@opensource.wolfsonmicro.com> Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
2014-07-23Merge tag 'mfd-extcon-regulator-v3.17' of ↵Chanwoo Choi1-17/+18
git://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd into extcon-next Immutable branch between MFD, Extcon and Regulator due for v3.17
2014-06-17mfd: max77693: Handle IRQs using regmapRobert Baldyga1-1/+2
This patch modifies mfd driver to use regmap for handling interrupts. It allows to simplify irq handling process. This modifications needed to make small changes in function drivers, which use interrupts. Signed-off-by: Robert Baldyga <r.baldyga@samsung.com> Reviewed-by: Krzysztof Kozlowski <k.kozlowski@samsung.com> Acked-by: Chanwoo Choi <cw00.choi@samsung.com> Signed-off-by: Lee Jones <lee.jones@linaro.org>
2014-06-17mfd: max77693: Remove unnecessary wrapper functionsRobert Baldyga1-16/+16
This patch removes wrapper functions used to access regmap, and make driver using regmap_*() functions instead. Signed-off-by: Robert Baldyga <r.baldyga@samsung.com> Reviewed-by: Krzysztof Kozlowski <k.kozlowski@samsung.com> Acked-by: Mark Brown <broonie@linaro.org> Acked-by: Chanwoo Choi <cw00.choi@samsung.com> Signed-off-by: Lee Jones <lee.jones@linaro.org>
2014-06-16extcon: Set parent device of extcon device using prameter of ↵Chanwoo Choi7-6/+2
devm_extcon_dev_allocate This patch set the parent device of extcon device using first parameter of devm_extco_dev_allocate() to remove duplicate code on all of extcon provider drivers. Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com> Reported-by: Charles Keepax <ckeepax@opensource.wolfsonmicro.com> Tested-by: Charles Keepax <ckeepax@opensource.wolfsonmicro.com> Cc: Charles Keepax <ckeepax@opensource.wolfsonmicro.com> Cc: Mark Brown <broonie@kernel.org> Cc: Graeme Gregory <gg@slimlogic.co.uk> Cc: Kishon Vijay Abraham I <kishon@ti.com> Cc: Krzysztof Kozlowski <k.kozlowski@samsung.com>
2014-06-16extcon: arizona: Update manual headphone detection calculationCharles Keepax1-5/+10
The higher levels of impedance have a higher minimum value than the first level. As the same value was used for all levels, higher impedances were reported with a very low level of accuracy. This patch applies the approriate lower threshold for each level, whilst we are changing things add a define for the maximum value at each level to improve readability. Signed-off-by: Charles Keepax <ckeepax@opensource.wolfsonmicro.com> Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
2014-06-16extcon: arizona: Correct typo to disable regulation for button detectionCharles Keepax1-1/+1
We can use the bypass mode on the MICVDD reg for button detection, as the comment in the code states, however the code was mistakenly disabling bypass. This patch corrects this and allows bypass mode during button detection. Signed-off-by: Charles Keepax <ckeepax@opensource.wolfsonmicro.com> Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
2014-06-16extcon: arizona: Use extcon cable API with index of extcon cable instead of ↵Nikesh Oswal1-9/+6
string Use extcon cable API instead of state API as it is much more idiomatic. Signed-off-by: Nikesh Oswal <Nikesh.Oswal@wolfsonmicro.com> Signed-off-by: Charles Keepax <ckeepax@opensource.wolfsonmicro.com> [Modify patch title by Chanwoo Choi] Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
2014-06-16extcon: arizona: Remove duplicate set of input parent deviceCharles Keepax1-1/+0
devm_input_allocate_device already sets the parent device to be that passed to it, we also set this manually in arizona_extcon_probe. This patch removes the redundant set from arizona_extcon_probe. Signed-off-by: Charles Keepax <ckeepax@opensource.wolfsonmicro.com> Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
2014-06-16extcon: Reorder the sequence of extcon device driver alphabeticallyChanwoo Choi2-17/+17
This patch reorder the sequence of extcon device diver alphabetically to imporbe readability. Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
2014-06-16extcon: palmas: Make of_device_id array constKrzysztof Kozlowski1-1/+1
Array of struct of_device_id may be be const as expected by of_match_table field. Signed-off-by: Krzysztof Kozlowski <k.kozlowski@samsung.com> Cc: Graeme Gregory <gg@slimlogic.co.uk> Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
2014-06-16extcon: arizona: support inverted jack detect switchRichard Fitzgerald1-8/+26
Add config option for inverted jack detect switch that opens when jack is inserted. Signed-off-by: Richard Fitzgerald <rf@opensource.wolfsonmicro.com> [Acked by Lee Jones for MFD part] Acked-by: Lee Jones <lee.jones@linaro.org> Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
2014-04-29extcon: palmas: Use devm_extcon_dev_allocate for extcon_devChanwoo Choi1-15/+20
This patch use devm_extcon_dev_allocate() to simplify the memory control of extcon device. Cc: Graeme Gregory <gg@slimlogic.co.uk> Cc: Kishon Vijay Abraham I <kishon@ti.com> Cc: Felipe Balbi <balbi@ti.com> Cc: Samuel Ortiz <sameo@linux.intel.com> Cc: Lee Jones <lee.jones@linaro.org> Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com> Acked-by: Lee Jones <lee.jones@linaro.org> Acked-by: Felipe Balbi <balbi@ti.com> Tested-by: Felipe Balbi <balbi@ti.com>
2014-04-29extcon: gpio: Use devm_extcon_dev_allocate for extcon_devChanwoo Choi1-8/+15
This patch use devm_extcon_dev_allocate() to simplify the memory control of extcon device. Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com> Reviewed-by: Felipe Balbi <balbi@ti.com>
2014-04-29extcon: adc-jack: Use devm_extcon_dev_allocate for extcon_devChanwoo Choi1-9/+12
This patch use devm_extcon_dev_allocate() to simplify the memory control of extcon device. Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com> Reviewed-by: Felipe Balbi <balbi@ti.com>
2014-04-29extcon: arizona: Use devm_extcon_dev_allocate for extcon_devChanwoo Choi1-13/+17
This patch use devm_extcon_dev_allocate() to simplify the memory control of extcon device. Cc: Charles Keepax <ckeepax@opensource.wolfsonmicro.com> Cc: Mark Brown <broonie@kernel.org> Cc: patches@opensource.wolfsonmicro.com Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com> Acked-by: Charles Keepax <ckeepax@opensource.wolfsonmicro.com> Reviewed-by: Felipe Balbi <balbi@ti.com>
2014-04-29extcon: max14577: Use devm_extcon_dev_allocate for extcon_devChanwoo Choi1-3/+4
This patch use devm_extcon_dev_allocate() to simplify the memory control of extcon device. Cc: Krzysztof Kozlowski <k.kozlowski@samsung.com> Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com> Reviewed-by: Krzysztof Kozlowski <k.kozlowski@samsung.com> Reviewed-by: Felipe Balbi <balbi@ti.com>
2014-04-29extcon: max77693: Use devm_extcon_dev_allocate for extcon_devChanwoo Choi1-5/+4
This patch use devm_extcon_dev_allocate() to simplify the memory control of extcon device. Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com> Reviewed-by: Krzysztof Kozlowski <k.kozlowski@samsung.com> Reviewed-by: Felipe Balbi <balbi@ti.com>
2014-04-29extcon: max8997: Use devm_extcon_dev_allocate for extcon_devChanwoo Choi1-4/+3
This patch use devm_extcon_dev_allocate() to simplify the memory control of extcon device. Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com> Reviewed-by: Krzysztof Kozlowski <k.kozlowski@samsung.com> Reviewed-by: Felipe Balbi <balbi@ti.com>
2014-04-29extcon: Add devm_extcon_dev_allocate/free to manage the resource of extcon ↵Chanwoo Choi1-12/+58
device This patch add device managed devm_extcon_dev_{allocate,free} to automatically free the memory of extcon_dev structure without handling free operation. Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com> Reviewed-by: Felipe Balbi <balbi@ti.com>
2014-04-29extcon: Add extcon_dev_allocate/free() to control the memory of extcon deviceChanwoo Choi1-0/+36
This patch add APIs to control the extcon device on extcon provider driver. The extcon_dev_allocate() allocates the memory of extcon device and initializes supported cables. And then extcon_dev_free() decrement the reference of the device of extcon device and free the memory of the extcon device. This APIs must need to implement devm_extcon_dev_allocate()/free() APIs. Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com> Reviewed-by: Felipe Balbi <balbi@ti.com>
2014-04-24extcon: arizona: Use devm_extcon_dev_register()Sangjung Woo1-8/+4
Use the resource-managed extcon device register function (i.e. devm_extcon_dev_register()) instead of extcon_dev_register(). If extcon device is attached with this function, that extcon device is automatically unregistered on driver detach. That reduces tiresome managing code. Signed-off-by: Sangjung Woo <sangjung.woo@samsung.com> Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
2014-04-24extcon: palmas: Use devm_extcon_dev_register()Sangjung Woo1-10/+5
Use the resource-managed extcon device register function (i.e. devm_extcon_dev_register()) instead of extcon_dev_register(). If extcon device is attached with this function, that extcon device is automatically unregistered on driver detach. That reduces tiresome managing code. Signed-off-by: Sangjung Woo <sangjung.woo@samsung.com> Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
2014-04-24extcon: max8997: Use devm_extcon_dev_register()Sangjung Woo1-3/+1
Use the resource-managed extcon device register function (i.e. devm_extcon_dev_register()) instead of extcon_dev_register(). If extcon device is attached with this function, that extcon device is automatically unregistered on driver detach. That reduces tiresome managing code. Signed-off-by: Sangjung Woo <sangjung.woo@samsung.com> Reviewed-by: Krzysztof Kozlowski <k.kozlowski@samsung.com> Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
2014-04-24extcon: max77693: Use devm_extcon_dev_register()Sangjung Woo1-5/+2
Use the resource-managed extcon device register function (i.e. devm_extcon_dev_register()) instead of extcon_dev_register(). If extcon device is attached with this function, that extcon device is automatically unregistered on driver detach. That reduces tiresome managing code. Signed-off-by: Sangjung Woo <sangjung.woo@samsung.com> Reviewed-by: Krzysztof Kozlowski <k.kozlowski@samsung.com> Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
2014-04-24extcon: max14577: Use devm_extcon_dev_register()Sangjung Woo1-7/+2
Use the resource-managed extcon device register function (i.e. devm_extcon_dev_register()) instead of extcon_dev_register(). If extcon device is attached with this function, that extcon device is automatically unregistered on driver detach. That reduces tiresome managing code. Signed-off-by: Sangjung Woo <sangjung.woo@samsung.com> Reviewed-by: Krzysztof Kozlowski <k.kozlowski@samsung.com> Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
2014-04-24extcon: gpio: Use devm_extcon_dev_register()Sangjung Woo1-12/+4
Use the resource-managed extcon device register function (i.e. devm_extcon_dev_register()) instead of extcon_dev_register(). If extcon device is attached with this function, that extcon device is automatically unregistered on driver detach. That reduces tiresome managing code. Signed-off-by: Sangjung Woo <sangjung.woo@samsung.com> Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
2014-04-24extcon: adc-jack: Use devm_extcon_dev_register()Sangjung Woo1-21/+9
Use the resource-managed extcon device register function (i.e. devm_extcon_dev_register()) instead of extcon_dev_register(). If extcon device is attached with this function, that extcon device is automatically unregistered on driver detach. That reduces tiresome managing code. Signed-off-by: Sangjung Woo <sangjung.woo@samsung.com> Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
2014-04-24extcon: Add resource-managed extcon register functionSangjung Woo1-0/+69
Add resource-managed extcon device register function for convenience. For example, if a extcon device is attached with new devm_extcon_dev_register(), that extcon device is automatically unregistered on driver detach. Signed-off-by: Sangjung Woo <sangjung.woo@samsung.com> [Fix bug about devm_extcon_dev_match/release() and code clean by Chanwoo Choi] Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
2014-04-24extcon: max14577: Properly handle regmap_irq_get_virq errorKrzysztof Kozlowski1-1/+1
The regmap_irq_get_virq may return 0 or -EINVAL on error. Fail the probe in both situations. Signed-off-by: Krzysztof Kozlowski <k.kozlowski@samsung.com> Cc: <stable@vger.kernel.org> Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
2014-04-24extcon: max14577: Fix probe failure on successful work queueKrzysztof Kozlowski1-6/+1
In probe the driver queued delayed work for cable detection and returned the result of queue_delayed_work() call. However the return value of queue_delayed_work() does not indicate an error and in normal condition it returns true which means successful work queue. This effectively resulted in probe failure: [ 2.088204] max14577-muic: probe of max77836-muic failed with error 1 Signed-off-by: Krzysztof Kozlowski <k.kozlowski@samsung.com> Cc: <stable@vger.kernel.org> Fixes: 962e56bfcf0b ("extcon: max14577: Add extcon-max14577 driver...") Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
2014-04-24Merge tag 'ib-mfd-extcon-3.16' of ↵Chanwoo Choi2-49/+129
git://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd into HEAD Immutable branch between MFD and Extcon due for v3.16 merge-window.
2014-04-24extcon: max8997: Use power efficient workqueue for delayed cable detectionKrzysztof Kozlowski1-1/+2
Schedule delayed cable detection work on power efficient workqueue so the scheduler won't wake up idle core for that work. This extends the idle time for CPU cores and conserves power. Signed-off-by: Krzysztof Kozlowski <k.kozlowski@samsung.com> Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
2014-04-24extcon: max77693: Use power efficient workqueue for delayed cable detectionKrzysztof Kozlowski1-1/+2
Schedule delayed cable detection work on power efficient workqueue so the scheduler won't wake up idle core for that work. This extends the idle time for CPU cores and conserves power. Signed-off-by: Krzysztof Kozlowski <k.kozlowski@samsung.com> Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
2014-04-24extcon: max8997: Fix NULL pointer exception on missing pdataKrzysztof Kozlowski1-1/+1
Fix NULL pointer exception when platform data is not supplied. The driver dereferenced pdata pointer where it could be NULL. Signed-off-by: Krzysztof Kozlowski <k.kozlowski@samsung.com> Cc: <stable@vger.kernel.org> Fixes: 810d601f07c Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
2014-04-24extcon: max77693: Fix two NULL pointer exceptions on missing pdataKrzysztof Kozlowski1-2/+2
Fix NULL pointer exceptions when platform data is not supplied. Trace of one exception: Unable to handle kernel NULL pointer dereference at virtual address 00000008 pgd = c0004000 [00000008] *pgd=00000000 Internal error: Oops: 5 [#1] PREEMPT SMP ARM Modules linked in: CPU: 2 PID: 1 Comm: swapper/0 Not tainted 3.14.0-12045-gead5dd4687a6-dirty #1628 task: eea80000 ti: eea88000 task.ti: eea88000 PC is at max77693_muic_probe+0x27c/0x528 LR is at regmap_write+0x50/0x60 pc : [<c041d1c8>] lr : [<c02eba60>] psr: 20000113 sp : eea89e38 ip : 00000000 fp : c098a834 r10: ee1a5a10 r9 : 00000005 r8 : c098a83c r7 : 0000000a r6 : c098a774 r5 : 00000005 r4 : eeb006d0 r3 : c0697bd8 r2 : 00000000 r1 : 00000001 r0 : 00000000 Flags: nzCv IRQs on FIQs on Mode SVC_32 ISA ARM Segment kernel Control: 10c5387d Table: 4000404a DAC: 00000015 Process swapper/0 (pid: 1, stack limit = 0xeea88240) Stack: (0xeea89e38 to 0xeea8a000) 9e20: c08499fc eeb006d0 9e40: 00000000 00000000 c0915f98 00000001 00000000 ee1a5a10 c098a730 c09a88b8 9e60: 00000000 c098a730 c0915f98 00000000 00000000 c02d6aa0 c02d6a88 ee1a5a10 9e80: c0a712c8 c02d54e4 00001204 c0628b00 ee1a5a10 c098a730 ee1a5a44 00000000 9ea0: eea88000 c02d57b4 00000000 c098a730 c02d5728 c02d3a24 ee813e5c eeb9d534 9ec0: c098a730 ee22f700 c097c720 c02d4b14 c08174ec c098a730 00000006 c098a730 9ee0: 00000006 c092fd30 c09b8500 c02d5df8 00000000 c093cbb8 00000006 c0008928 9f00: 000000c3 ef7fc785 00000000 ef7fc794 00000000 c08af968 00000072 eea89f30 9f20: ef7fc85e c065f198 000000c3 c003e87c 00000003 00000000 c092fd3c 00000000 9f40: c08af618 c0826d58 00000006 00000006 c0956f58 c093cbb8 00000006 c092fd30 9f60: c09b8500 000000c3 c092fd3c c08e8510 00000000 c08e8bb0 00000006 00000006 9f80: c08e8510 c0c0c0c0 00000000 c0628fac 00000000 00000000 00000000 00000000 9fa0: 00000000 c0628fb4 00000000 c000f038 00000000 00000000 00000000 00000000 9fc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 9fe0: 00000000 00000000 00000000 00000000 00000013 00000000 c0c0c0c0 c0c0c0c0 [<c041d1c8>] (max77693_muic_probe) from [<c02d6aa0>] (platform_drv_probe+0x18/0x48) [<c02d6aa0>] (platform_drv_probe) from [<c02d54e4>] (driver_probe_device+0x140/0x384) [<c02d54e4>] (driver_probe_device) from [<c02d57b4>] (__driver_attach+0x8c/0x90) [<c02d57b4>] (__driver_attach) from [<c02d3a24>] (bus_for_each_dev+0x54/0x88) [<c02d3a24>] (bus_for_each_dev) from [<c02d4b14>] (bus_add_driver+0xe8/0x204) [<c02d4b14>] (bus_add_driver) from [<c02d5df8>] (driver_register+0x78/0xf4) [<c02d5df8>] (driver_register) from [<c0008928>] (do_one_initcall+0xc4/0x174) [<c0008928>] (do_one_initcall) from [<c08e8bb0>] (kernel_init_freeable+0xfc/0x1c8) [<c08e8bb0>] (kernel_init_freeable) from [<c0628fb4>] (kernel_init+0x8/0xec) [<c0628fb4>] (kernel_init) from [<c000f038>] (ret_from_fork+0x14/0x3c) Code: caffffe7 e59d200c e3550001 b3a05001 (e5923008) ---[ end trace 85db969ce011bde7 ]--- Signed-off-by: Krzysztof Kozlowski <k.kozlowski@samsung.com> Cc: <stable@vger.kernel.org> Fixes: 190d7cfc8632 Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
2014-04-23extcon: max14577: Add support for MAX77836Krzysztof Kozlowski2-21/+92
Add support for MAX77836 chipset to the max14577 extcon driver. The MAX77836 MUIC has additional interrupts (VIDRM, ADC1K) so IRQ handling is split up into two functions: max14577_parse_irq() and max77836_parse_irq(). Signed-off-by: Krzysztof Kozlowski <k.kozlowski@samsung.com> Acked-by: Chanwoo Choi <cw00.choi@samsung.com> Tested-by: Chanwoo Choi <cw00.choi@samsung.com> Signed-off-by: Lee Jones <lee.jones@linaro.org>