- 07 3月, 2013 5 次提交
-
-
由 Lee Jones 提交于
ITSource/ITLatch 7, 8, 9 and 10 don't exist on AB8540. This patch replaces them with '-1' in the interrupt list, and handles the '-1' in the code accordingly. Signed-off-by: NLee Jones <lee.jones@linaro.org> Acked-by: NSamuel Ortiz <sameo@linux.intel.com>
-
由 Lee Jones 提交于
Here we're separating Battery Management devices into their own structure, removing the common device structure & redistribute them amongst the individual platform structs and completing the population of them. Signed-off-by: NLee Jones <lee.jones@linaro.org> Acked-by: NSamuel Ortiz <sameo@linux.intel.com>
-
由 Lee Jones 提交于
Signed-off-by: NLee Jones <lee.jones@linaro.org> Acked-by: NSamuel Ortiz <sameo@linux.intel.com>
-
由 Lee Jones 提交于
There are missing register descriptions from the AB8505 user manual and these need to be masked so that the APEINT line can toggle. This patch also affects the behaviour of AB9540. Signed-off-by: NMarcus Cooper <marcus.xm.cooper@stericsson.com> Signed-off-by: NLee Jones <lee.jones@linaro.org> Reviewed-by: NMaxime COQUELIN <maxime.coquelin@stericsson.com> Reviewed-by: NAlexandre TORGUE <alexandre.torgue@stericsson.com> Reviewed-by: NMattias WALLIN <mattias.wallin@stericsson.com> Acked-by: NSamuel Ortiz <sameo@linux.intel.com>
-
由 Rajkumar Kasirajan 提交于
In L9540, turn_on_status register is not updated correctly if the device is rebooted with AC/USB charger connected. Due to this, the device boots android instead of entering into charge only mode. Read the AC/USB status register to detect the charger presence and update the turn on status manually. Signed-off-by: NRajkumar Kasirajan <rajkumar.kasirajan@stericsson.com> Signed-off-by: NPer Forlin <per.forlin@stericsson.com> Signed-off-by: NLee Jones <lee.jones@linaro.org> Reviewed-by: NRupesh KUMAR <rupesh.kumar@stericsson.com> Reviewed-by: NPhilippe LANGLAIS <philippe.langlais@stericsson.com> Tested-by: NRupesh KUMAR <rupesh.kumar@stericsson.com> Tested-by: NPhilippe LANGLAIS <philippe.langlais@stericsson.com> Acked-by: NSamuel Ortiz <sameo@linux.intel.com>
-
- 14 2月, 2013 1 次提交
-
-
由 Hongbo Zhang 提交于
We are using a generic abx500 hwmon layer, so rename specific ab8500 to generic abx500 for hwmon device and driver matching. Signed-off-by: NHongbo Zhang <hongbo.zhang@linaro.org> Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
-
- 08 2月, 2013 5 次提交
-
-
由 Lee Jones 提交于
The old AB8500 GPIO driver has been un-BROKEN and converted into a multi-platform pinctrl driver. If any AB9540 based devices wish to request any GPIO pins that it offers, they can after this patch. Cc: Samuel Ortiz <sameo@linux.intel.com> Signed-off-by: NLee Jones <lee.jones@linaro.org> Signed-off-by: NLinus Walleij <linus.walleij@linaro.org>
-
由 Lee Jones 提交于
The old, BROKEN AB8500 GPIO driver has been revamped as a shiny new pinctrl driver and has been renamed as such. So, if we would like to make use of it, we need to register it via its new name. Cc: Samuel Ortiz <sameo@linux.intel.com> Signed-off-by: NLee Jones <lee.jones@linaro.org> Signed-off-by: NLinus Walleij <linus.walleij@linaro.org>
-
由 Lee Jones 提交于
In the AB8500 IRQ mask and unmask functions, we rely on testing for IRQ_TYPE_EDGE_RISING and IRQ_TYPE_EDGE_FALLING interrupts to physically mask and unmask the correct interrupt lines. In order for us to do that, the trigger needs to be set in the associated flags. However, unless a irq_set_type() function pointer is passed when registering the IRQ chip, the IRQ subsystem will refuse to do it. For that reason, we're providing one. Cc: Samuel Ortiz <sameo@linux.intel.com> Signed-off-by: NLee Jones <lee.jones@linaro.org> Signed-off-by: NLinus Walleij <linus.walleij@linaro.org>
-
由 Linus Walleij 提交于
The patch: "mfd: ab8500: prepare to handle AB8500 GPIO's IRQs correctly" altered the AB8500 IRQ mask/unmask functions such that they would handle masking on/off the falling edge IRQ if this was requested by the consumer. However the bit mask for hwirqs 43 and 44 was shifting the bit mask incorrectly, resulting in the wrong IRQ being mased/unmasked. Further while the patch would mask/unmask the correct line, when the interrupt actually came in, it would still be treated as a valid hwirq. The offsetting applied when masking/unmasking was not applied when handling the IRQ, i.e. the falling edge lines were not routed back to the rising edge lines. This fixes both cases. The end result has been tested with the SIM detect IRQ, GPIO12, hwirq 46 and 62. Cc: Samuel Ortiz <sameo@linux.intel.com> Cc: Lee Jones <lee.jones@linaro.org> Signed-off-by: NLinus Walleij <linus.walleij@stericsson.com>
-
由 Lee Jones 提交于
In an upcoming patch, the gpio-ab8500 driver will relinquish all IRQ handling capability and pass it back into the AB8500 core driver. This will aid in reducing massive code duplication within the kernel. Also, most of the functionality is already in the AB8500 core driver, as the GPIO IRQs are actually sandwiched between lots of other IRQs which the core driver already handles. All we're doing here is providing the core driver with knowledge that each GPIO has two IRQs assigned to it; one for rising and a separate one for falling. Cc: Samuel Ortiz <sameo@linux.intel.com> Signed-off-by: NLee Jones <lee.jones@linaro.org> Signed-off-by: NLinus Walleij <linus.walleij@linaro.org>
-
- 04 2月, 2013 2 次提交
-
-
由 Bengt Jonsson 提交于
This patch adds an entry in debugfs to check number of interrupts from the AB. Signed-off-by: NLee Jones <lee.jones@linaro.org> Signed-off-by: NBengt Jonsson <bengt.g.jonsson@stericsson.com> Reviewed-by: NRabin VINCENT <rabin.vincent@stericsson.com>
-
由 Mian Yousaf Kaukab 提交于
Implement an API so that a user may dump all AB8500 registers via debugfs file access. Signed-off-by: NLee Jones <lee.jones@linaro.org> Signed-off-by: NMian Yousaf Kaukab <mian.yousaf.kaukab@stericsson.com> Reviewed-by: NLinus WALLEIJ <linus.walleij@stericsson.com> Reviewed-by: NJonas ABERG <jonas.aberg@stericsson.com>
-
- 23 1月, 2013 2 次提交
-
-
由 Paer-Olof Haakansson 提交于
If charging is started before USB enumeration of an Accessory Charger Adapter has finished, the AB8500 will generate a VBUS_ERROR. This in turn results in timeouts and delays the enumeration with around 15 seconds. This patch delays the charging and then ramps currents slowly to avoid VBUS errors. The delay allows the enumeration to have finished before charging is turned on. Signed-off-by: NMartin Sjoblom <martin.w.sjoblom@stericsson.com> Signed-off-by: NLee Jones <lee.jones@linaro.org> Reviewed-by: NJonas ABERG <jonas.aberg@stericsson.com> Tested-by: NJonas ABERG <jonas.aberg@stericsson.com>
-
由 Lee Jones 提交于
drivers/mfd/ab8500-core.c:1015:21: error: ‘ab8500_bm_data’ undeclared here include/linux/mfd/abx500/ab8500-bm.h:445:13: warning: ‘ab8500_fg_reinit’ defined but not used include/linux/mfd/abx500/ab8500-bm.h:448:13: warning: ‘ab8500_charger_usb_state_changed’ defined but not used include/linux/mfd/abx500/ab8500-bm.h:451:29: warning: ‘ab8500_btemp_get’ defined but not used include/linux/mfd/abx500/ab8500-bm.h:455:12: warning: ‘ab8500_btemp_get_batctrl_temp’ defined but not used include/linux/mfd/abx500/ab8500-bm.h:463:12: warning: ‘ab8500_fg_inst_curr_blocking’ defined but not used include/linux/mfd/abx500/ab8500-bm.h:442:12: warning: ‘ab8500_fg_inst_curr_done’ defined but not used include/linux/mfd/abx500/ab8500-bm.h:447:26: warning: ‘ab8500_fg_get’ defined but not used Signed-off-by: NLee Jones <lee.jones@linaro.org> Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
-
- 11 12月, 2012 1 次提交
-
-
由 Lee Jones 提交于
Currently the AB8500 battery management subsystem receives platform specific information via two different means depending on how the platform is booted. If DT is not enabled, a reference to a *_bm_data data structure containing each platform specific attribute is passed though platform_data. However, if DT is enabled, then platform_data is empty and the reference is gained though a DT specific probe function. There are two issues here 1) the same reference is being collected each time and 2) the DT way doesn't allow any provisions to select different platform specific attributes, which kind of defeats the object. Cc: Samuel Ortiz <sameo@linux.intel.com> Signed-off-by: NLee Jones <lee.jones@linaro.org>
-
- 30 11月, 2012 1 次提交
-
-
由 Tushar Behera 提交于
The objects allocated by devm_* APIs are managed by devres and are freed when the device is detached. Hence there is no need to remove them explicitly in remove function. Signed-off-by: NTushar Behera <tushar.behera@linaro.org> Acked-by: NLinus Walleij <linus.walleij@linaro.org> Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
-
- 29 11月, 2012 4 次提交
-
-
由 Bill Pemberton 提交于
CONFIG_HOTPLUG is going away as an option so __devexit is no longer needed. Signed-off-by: NBill Pemberton <wfp5p@virginia.edu> Cc: Srinidhi Kasagar <srinidhi.kasagar@stericsson.com> Cc: Peter Tyser <ptyser@xes-inc.com> Cc: Daniel Walker <dwalker@fifo99.com> Cc: Bryan Huntsman <bryanh@codeaurora.org> Acked-by: NDavid Brown <davidb@codeaurora.org> Acked-by: NLinus Walleij <linus.walleij@linaro.org> Acked-by: NMark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
-
由 Bill Pemberton 提交于
CONFIG_HOTPLUG is going away as an option so __devinitdata is no longer needed. Signed-off-by: NBill Pemberton <wfp5p@virginia.edu> Cc: Srinidhi Kasagar <srinidhi.kasagar@stericsson.com> Cc: Peter Tyser <ptyser@xes-inc.com> Acked-by: NLinus Walleij <linus.walleij@linaro.org> Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
-
由 Bill Pemberton 提交于
CONFIG_HOTPLUG is going away as an option so __devinit is no longer needed. Signed-off-by: NBill Pemberton <wfp5p@virginia.edu> Cc: Srinidhi Kasagar <srinidhi.kasagar@stericsson.com> Cc: Peter Tyser <ptyser@xes-inc.com> Cc: Daniel Walker <dwalker@fifo99.com> Cc: Bryan Huntsman <bryanh@codeaurora.org> Acked-by: NDavid Brown <davidb@codeaurora.org> Acked-by: NMark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
-
由 Bill Pemberton 提交于
CONFIG_HOTPLUG is going away as an option so __devexit_p is no longer needed. Signed-off-by: NBill Pemberton <wfp5p@virginia.edu> Cc: Srinidhi Kasagar <srinidhi.kasagar@stericsson.com> Cc: Peter Tyser <ptyser@xes-inc.com> Cc: Daniel Walker <dwalker@fifo99.com> Cc: Bryan Huntsman <bryanh@codeaurora.org> Acked-by: NDavid Brown <davidb@codeaurora.org> Acked-by: NLinus Walleij <linus.walleij@linaro.org> Acked-by: NMark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
-
- 23 11月, 2012 1 次提交
-
-
由 Ulf Hansson 提交于
Hierarchically, the abx500-clk shall be considered as a child of the ab8500 core. The abx500-clk is intiated at arch init and thus the clks will be available when clients needs them. Cc: Samuel Ortiz <sameo@linux.intel.com> Signed-off-by: NUlf Hansson <ulf.hansson@linaro.org> Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
-
- 19 11月, 2012 4 次提交
-
-
由 Rajanikanth H.V 提交于
This patch adds device tree support for charging algorithm driver Signed-off-by: NRajanikanth H.V <rajanikanth.hv@stericsson.com> Signed-off-by: NAnton Vorontsov <anton.vorontsov@linaro.org>
-
由 Rajanikanth H.V 提交于
This patch adds device tree support for ab8500-charger driver Signed-off-by: NRajanikanth H.V <rajanikanth.hv@stericsson.com> Signed-off-by: NAnton Vorontsov <anton.vorontsov@linaro.org>
-
由 Rajanikanth H.V 提交于
This patch adds device tree support for battery-temperature-monitor driver Signed-off-by: NRajanikanth H.V <rajanikanth.hv@stericsson.com> Signed-off-by: NAnton Vorontsov <anton.vorontsov@linaro.org>
-
由 Rajanikanth H.V 提交于
- This patch adds device tree support for fuelgauge driver - optimize bm devices platform_data usage and of_probe(...) Note: of_probe() routine for battery managed devices is made common across all bm drivers. - test status: - interrupt numbers assigned differs between legacy and FDT mode. Signed-off-by: NRajanikanth H.V <rajanikanth.hv@stericsson.com> Signed-off-by: NAnton Vorontsov <anton.vorontsov@linaro.org>
-
- 12 11月, 2012 2 次提交
-
-
由 Lee Jones 提交于
It is better to use devm_* calls, as they allow for easier and more automatic clean-up. Resources are device allocated, so when a device is freed, so are all associated resources. Acked-by: NLinus Walleij <linus.walleij@linaro.org> Signed-off-by: NLee Jones <lee.jones@linaro.org> Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
-
由 Lee Jones 提交于
The IRQ ranges provided in ab8500-core to be passed on to the ab8500-gpio driver are not only redundant, but they are also causing a warning in the boot log. These IRQ ranges, like any other MFD related IRQ resource are passed though MFD core for automatic conversion to virtual IRQs; however, MFD core does not support IRQ mapping of IRQ ranges. Let's just remove them. Acked-by: NArnd Bergmann <arnd@arndb.de> Tested-by: NLinus Walleij <linus.walleij@linaro.org> Signed-off-by: NLee Jones <lee.jones@linaro.org> Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
-
- 05 11月, 2012 1 次提交
-
-
由 Linus Walleij 提交于
To be able to use SPARSE_IRQ while yet not using device tree, we need to use irq_domain_add_simple() that will allocate descriptors for the IRQs in the non-DT case, and fall back to using the linear irqdomain in the DT case. Cc: Lee Jones <lee.jones@linaro.org> Cc: Samuel Ortiz <sameo@linux.intel.com> Acked-by: NArnd Bergmann <arnd@arndb.de> Signed-off-by: NLinus Walleij <linus.walleij@linaro.org>
-
- 22 9月, 2012 1 次提交
-
-
由 Lee Jones 提交于
Provide a compatible string for the AB8500 CODEC to aid in configuration property look-up from its associated Device Tree node. Signed-off-by: NLee Jones <lee.jones@linaro.org> Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
-
- 18 9月, 2012 1 次提交
-
-
由 Lee Jones 提交于
Before the AB8500 had its own IRQ domain, the IRQ handler would take the fired local IRQ (hwirq) and add it to the irq_base to convert it to an IRQ number which Linux would understand (virq). However, the IRQ base is not always used anymore since we can make use of Linear domains. It's better to use the AB8500 hwirq -> virq mapping helper function to convert them instead. That's what we do here. Signed-off-by: NLee Jones <lee.jones@linaro.org> Acked-by: NLinus Walleij <linus.walleij@linaro.org> Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
-
- 16 9月, 2012 1 次提交
-
-
由 Mark Brown 提交于
Currently the MFD core supports remapping MFD cell interrupts using an irqdomain but only if the MFD is being instantiated using device tree and only if the device tree bindings use the pattern of registering IPs in the device tree with compatible properties. This will be actively harmful for drivers which support non-DT platforms and use this pattern for their DT bindings as it will mean that the core will silently change remapping behaviour and it is also limiting for drivers which don't do DT with this particular pattern. There is also a potential fragility if there are interrupts not associated with MFD cells and all the cells are omitted from the device tree for some reason. Instead change the code to take an IRQ domain as an optional argument, allowing drivers to take the decision about the parent domain for their interrupts. The one current user of this feature is ab8500-core, it has the domain lookup pushed out into the driver. Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
-
- 14 9月, 2012 2 次提交
-
-
由 Lee Jones 提交于
MFD core now takes care of HWIRQ <-> VIRQ mapping, so the helper ab8500_irq_get_virq() is no longer used by ab8500 subordinate devices to obtain a Linux wide Virtual IRQ. The AB8500 IRQ controller still uses it internally though, so we'll just hide it from the rest of the world by making it static instead. Signed-off-by: NLee Jones <lee.jones@linaro.org> Reviewed-by: NLinus Walleij <linus.walleij@linaro.org> Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
-
由 Mark Brown 提交于
Currently the MFD core supports remapping MFD cell interrupts using an irqdomain but only if the MFD is being instantiated using device tree and only if the device tree bindings use the pattern of registering IPs in the device tree with compatible properties. This will be actively harmful for drivers which support non-DT platforms and use this pattern for their DT bindings as it will mean that the core will silently change remapping behaviour and it is also limiting for drivers which don't do DT with this particular pattern. There is also a potential fragility if there are interrupts not associated with MFD cells and all the cells are omitted from the device tree for some reason. Instead change the code to take an IRQ domain as an optional argument, allowing drivers to take the decision about the parent domain for their interrupts. The one current user of this feature is ab8500-core, it has the domain lookup pushed out into the driver. Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
-
- 09 7月, 2012 6 次提交
-
-
由 Lee Jones 提交于
Now the MFD API is Device Tree aware we can use it for platform registration again, even when booting with DT enabled. To aid in Device Node pointer allocation we provide each cell with the associative compatible string. Signed-off-by: NLee Jones <lee.jones@linaro.org> Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
-
由 Jonas Aaberg 提交于
Instead of just printing the register value, also output some description of the value. Signed-off-by: NJonas Aaberg <jonas.aberg@stericsson.com> Reviewed-by: NMattias Wallin <mattias.wallin@stericsson.com> Signed-off-by: NLinus Walleij <linus.walleij@linaro.org> Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
-
由 Lee Jones 提交于
Hierarchically, the AB8500 is a child of the DB8500 PRCMU. So now that Device Tree is being used and MFD core code is Device Tree aware, we can simply register DB8500 PRCMU from Device Tree in the normal way then allow the DB8500 PRCMU driver to register the AB8500 as a simple MFD device at probe time. Signed-off-by: NLee Jones <lee.jones@linaro.org> Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
-
由 Lee Jones 提交于
The AB8500 is soon to have its own IRQ domain. For this to be useful the driver needs to be initialised earlier in the boot sequence. Here we move initialisation forward from arch_initcall to core_initcall time. Cc: Samuel Ortiz <sameo@linux.intel.com> Signed-off-by: NLee Jones <lee.jones@linaro.org> Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
-
由 Lee Jones 提交于
There is only one method used to communicate with the DB8500 PRCMU, via I2C. Now this can be assumed, there is no requirement to specify the protocol in the function name. This patch removes protocol specifics and uses a more generic naming convention. Signed-off-by: NLee Jones <lee.jones@linaro.org> Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
-
由 Lee Jones 提交于
As the AB8500 is an IRQ controller in its own right, here we provide the AB8500 driver with IRQ domain support. This is required if we wish to reference any of its IRQs from a platform's Device Tree. Cc: Naga Radheshy <naga.radheshy@stericsson.com> Cc: Mattias Wallin <mattias.wallin@stericsson.com> Cc: Daniel Willerud <daniel.willerud@stericsson.com> Signed-off-by: NLee Jones <lee.jones@linaro.org> Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
-