- 21 1月, 2014 1 次提交
-
-
由 Ruslan Ruslichenko 提交于
Since currently nobody uses TWL603x platform data and all new users will supply it through device tree, handling of these data within twl-core will never be used, so remove it. Signed-off-by: NRuslan Ruslichenko <ruslan.ruslichenko@globallogic.com> Signed-off-by: NLee Jones <lee.jones@linaro.org>
-
- 31 7月, 2013 1 次提交
-
-
由 Jingoo Han 提交于
Use the wrapper function for retrieving the platform data instead of accessing dev->platform_data directly. Signed-off-by: NJingoo Han <jg1.han@samsung.com> Signed-off-by: NLee Jones <lee.jones@linaro.org>
-
- 20 6月, 2013 1 次提交
-
-
由 Graeme Gregory 提交于
The TWL6025 was never released beyond sample form and was replaced by the PhoenixLite range of chips - TWL6032. Change the references to reference the TWL6032 class and name the registers to twl6032 in line with an actual released chip name to avoid confusion. Currently there are no users of TWL6025 in the code. Signed-off-by: NGraeme Gregory <gg@slimlogic.co.uk> Signed-off-by: NOleksandr Kozaruk <oleksandr.kozaruk@ti.com> Acked-by: NLee Jones <lee.jones@linaro.org> Reviwed-by: NMark Brown <broonie@linaro.org> Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
-
- 19 6月, 2013 1 次提交
-
-
由 Florian Vaussard 提交于
For now, the call to twl4030-power is hard-wired inside twl-core. To ease the future transition to DT, make twl4030-power as a separate module, like what is already done for twl4030-audio and others. Signed-off-by: NFlorian Vaussard <florian.vaussard@epfl.ch> Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
-
- 12 6月, 2013 1 次提交
-
-
由 Grygorii Strashko 提交于
Shift TWL initialization to module/device init layer, because I2C now is not initialized on subsys init layer and shifted to module/device init layer instead. The I2C <--> TWL dependency should be resolved in drivers/Makefile now. Cc: Santosh Shilimkar <santosh.shilimkar@ti.com> Signed-off-by: NGrygorii Strashko <grygorii.strashko@ti.com> Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
-
- 14 2月, 2013 11 次提交
-
-
由 Jon Hunter 提交于
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: NJon Hunter <jon-hunter@ti.com> Acked-by: NPeter Ujfalusi <peter.ujfalusi@ti.com> Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
-
由 Peter Ujfalusi 提交于
twl_i2c_read/write_u8 become as a simple wrapper over the twl_i2c_read/write. Signed-off-by: NPeter Ujfalusi <peter.ujfalusi@ti.com> Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
-
由 Peter Ujfalusi 提交于
With the regmap conversion there is no longeer a need to allocate bigger buffer for writes Signed-off-by: NPeter Ujfalusi <peter.ujfalusi@ti.com> Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
-
由 Peter Ujfalusi 提交于
Gather the global variables under a single structure and allocate it with devm_kzalloc(). It is easier to see them and if in the future we try to add support for multiple instance of twl in the system it is going to be much simpler. Signed-off-by: NPeter Ujfalusi <peter.ujfalusi@ti.com> Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
-
由 Peter Ujfalusi 提交于
We can fail earlier in case multiple instance of the twl-core is tried to be loaded. The twl-core by design only supports one instance. Signed-off-by: NPeter Ujfalusi <peter.ujfalusi@ti.com> Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
-
由 Peter Ujfalusi 提交于
When booted with DT we can manage without the dummy pdata. Signed-off-by: NPeter Ujfalusi <peter.ujfalusi@ti.com> Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
-
由 Peter Ujfalusi 提交于
There is really no point to retry to add children devices in case the of_platform_populate() fails. We do not have any information provided via pdata in this case anyways. Depending on the boot type (legacy or DT) only execute either one. Signed-off-by: NPeter Ujfalusi <peter.ujfalusi@ti.com> Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
-
由 Peter Ujfalusi 提交于
At boot time we can allocate the twl_modules array dynamically based on the twl class we are using with devm_kzalloc() instead of the static twl_modules[] array. Signed-off-by: NPeter Ujfalusi <peter.ujfalusi@ti.com> Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
-
由 Peter Ujfalusi 提交于
Instead of using SUB_CHIP_ID* or magic numbers use the twl_mapping table to look for the subchip ID. Signed-off-by: NPeter Ujfalusi <peter.ujfalusi@ti.com> Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
-
由 Peter Ujfalusi 提交于
The module id table no longer can have invalid/unused entries. No need for checking the ID for validity. Signed-off-by: NPeter Ujfalusi <peter.ujfalusi@ti.com> Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
-
由 Peter Ujfalusi 提交于
Use enums for all module definitions: twl_module_ids for common functionality among twl4030/twl6030 twl4030_module_ids for twl4030 specific ids twl6030_module_ids for twl6030 specific ids In this way the list can be managed easier when new functionality going to be implemented. Signed-off-by: NPeter Ujfalusi <peter.ujfalusi@ti.com> Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
-
- 29 11月, 2012 1 次提交
-
-
由 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>
-
- 21 11月, 2012 8 次提交
-
-
由 Peter Ujfalusi 提交于
To facilitate upcoming cleanup in twl stack. No functional changes. Acked-by: NTero Kristo <t-kristo@ti.com> Signed-off-by: NPeter Ujfalusi <peter.ujfalusi@ti.com> Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
-
由 Peter Ujfalusi 提交于
Group the twl_mapping table in 5 lines chunks so it is more easier to find the row we are looking for (if we need to). Acked-by: NTero Kristo <t-kristo@ti.com> Signed-off-by: NPeter Ujfalusi <peter.ujfalusi@ti.com> Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
-
由 Peter Ujfalusi 提交于
Use enum list for the module definitions (TWL4030_MODULE_*) which will ease up future work with the IDs. At the same time group the IDs in block of five so it is easier to find the ID we are looking for (to count the number they stand for). At the same time define TWL_MODULE_LED so client drivers can switch to use it as soon as it is possible. Acked-by: NTero Kristo <t-kristo@ti.com> Signed-off-by: NPeter Ujfalusi <peter.ujfalusi@ti.com> Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
-
由 Peter Ujfalusi 提交于
Make the twl child registration calls a bit more uniform by always using the SUB_CHIP_ID* define instead of the mixed use of the define and magic number. At the same time correct the following devices so they are registered for the correct parent device (i2c slave): twl4030_wdt is accessible on 0x4b address and not 0x48 twl4030_pwrbutton is accessible on 0x4b address and not 0x49 twl4030-audio is on 0x49 all the time Acked-by: NTero Kristo <t-kristo@ti.com> Signed-off-by: NPeter Ujfalusi <peter.ujfalusi@ti.com> Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
-
由 Peter Ujfalusi 提交于
Since the twl-core has been converted to use regmap it is no longer needed to allocate bigger buffer for data when writing to twl. CC: Grant Likely <grant.likely@secretlab.ca> CC: Alessandro Zummo <a.zummo@towertech.it> Acked-by: NLinus Walleij <linus.walleij@linaro.org> Acked-by: NTero Kristo <t-kristo@ti.com> Signed-off-by: NPeter Ujfalusi <peter.ujfalusi@ti.com> Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
-
由 Peter Ujfalusi 提交于
Remove the custom code to do I/O and replace it with standard regmap calls. Reviewed-by: NMark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: NTero Kristo <t-kristo@ti.com> Signed-off-by: NPeter Ujfalusi <peter.ujfalusi@ti.com> Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
-
由 Peter Ujfalusi 提交于
The twl6030-pwm driver is going to be deleted since it was only able to control the Charging indicator LED on the twl6030 PMIC. The new set of drivers are going to provide support for both PWMs and PWM driven LED outputs on TWL4030 and TWL6030 PMICs. The twl-pwm driver will handle the PWMs (2 instance) while the twl-pwmled driver is to control the two LED instance on TWL4030 and to charging indicator LED (1 instance) on TWL6030. Acked-by: NTero Kristo <t-kristo@ti.com> Signed-off-by: NPeter Ujfalusi <peter.ujfalusi@ti.com> Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
-
由 Peter Ujfalusi 提交于
twl4030-madc driver can only handle twl4030 class MADC. The newer revisions of twl does not have MADC, instead they have different IP called GPADC which is not backward compatible. Acked-by: NTero Kristo <t-kristo@ti.com> Signed-off-by: NPeter Ujfalusi <peter.ujfalusi@ti.com> Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
-
- 20 11月, 2012 1 次提交
-
-
由 Peter Ujfalusi 提交于
The correct chip id is 1 since the PWM module is on address 0x49. With the current TWL6030_MODULE_ID1 the kernel will crash early since we have: #define TWL6030_MODULE_ID1 0x0E and static struct twl_client twl_modules[4]; Down in the stack we try to get the module by: struct twl_client *twl = &twl_modules[chip]; Which is obviously going to do nasty things. Signed-off-by: NPeter Ujfalusi <peter.ujfalusi@ti.com> Acked-by: NTero Kristo <t-kristo@ti.com> Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
-
- 22 9月, 2012 1 次提交
-
-
由 Peter Ujfalusi 提交于
CFG_BOOT register's HFCLK_FREQ field hold information about the used HFCLK frequency. Add possibility for users to get the configured rate based on this register. This register was configured during boot, without it the chip would not operate correctly, so we can trust on this information. Signed-off-by: NPeter Ujfalusi <peter.ujfalusi@ti.com> Acked-by: NSamuel Ortiz <sameo@linux.intel.com> Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
-
- 19 9月, 2012 2 次提交
-
-
由 Thierry Reding 提交于
This commit moves the driver to drivers/pwm and converts it to the new PWM framework. In order for this to work properly, register the PWM as child of the multi-function TWL6030 device. Signed-off-by: NThierry Reding <thierry.reding@avionic-design.de> Acked-by: NPeter Ujfalusi <peter.ujfalusi@ti.com> Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
-
由 Thierry Reding 提交于
Instead of reinventing macros for the same purpose, use the standard macros. Signed-off-by: NThierry Reding <thierry.reding@avionic-design.de> Acked-by: NPeter Ujfalusi <peter.ujfalusi@ti.com> Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
-
- 18 9月, 2012 2 次提交
-
-
由 Peter Ujfalusi 提交于
CFG_BOOT register's HFCLK_FREQ field hold information about the used HFCLK frequency. Add possibility for users to get the configured rate based on this register. This register was configured during boot, without it the chip would not operate correctly, so we can trust on this information. Signed-off-by: NPeter Ujfalusi <peter.ujfalusi@ti.com> Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
-
由 Tony Lindgren 提交于
Commit 7d7e1eba (ARM: OMAP2+: Prepare for irqs.h removal) broke compile for non-omap as include plat/cpu.h was added. This header was indirectly included earlier when SPARSE_IRQ was not set, but does not exist on most platforms. Fix the problem by removing the cpu_is_omap usage that should not exist in drivers at all. We can do this by adding proper clock aliases for the twl-core.c drivers, and drop separate handling for cases when clock framework is not available as the behaviour will stay the same. Note that we need to add a platform device to avoid using the i2c provided names that may be different on various omaps. Reported-by: NFengguang Wu <fengguang.wu@intel.com> Reported-by: NStephen Rothwell <sfr@canb.auug.org.au> Cc: Paul Walmsley <paul@pwsan.com> Acked-by: NSamuel Ortiz <sameo@linux.intel.com> Acked-by: NArnd Bergmann <arnd@arndb.de> Cc: Olof Johansson <olof@lixom.net> Cc: Felipe Balbi <balbi@ti.com> Signed-off-by: NTony Lindgren <tony@atomide.com>
-
- 13 9月, 2012 1 次提交
-
-
由 Tony Lindgren 提交于
As the interrupts should only be defined in the platform_data, and eventually coming from device tree, there's no need to define them in header files. Let's remove the hardcoded references to irqs.h and fix up the includes so we don't rely on headers included in irqs.h. Note that we're defining OMAP_INTC_START as 0 to the interrupts. This will be needed when we enable SPARSE_IRQ. For some drivers we need to add #include <plat/cpu.h> for now until these drivers are fixed to remove cpu_is_omapxxxx() usage. While at it, sort som of the includes the standard way, and add the trailing commas where they are missing in the related data structures. Note that for drivers/staging/tidspbridge we just define things locally. Cc: Paul Walmsley <paul@pwsan.com> Signed-off-by: NTony Lindgren <tony@atomide.com>
-
- 09 7月, 2012 1 次提交
-
-
由 NeilBrown 提交于
device_init_wakeup uses the dev_name() of the device to set the name of the wakeup_source which appears in /sys/kernel/debug/wakeup_sources. For a platform device, that name is not set until platform_device_add calls dev_set_name. So the call to device_init_wakeup() must be after the call to platform_device_add(). Making this change causes correct names to appear in the wakeup_sources file. Signed-off-by: NNeilBrown <neilb@suse.de> Acked-by: NRafael J. Wysocki <rjw@sisk.pl> Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
-
- 20 6月, 2012 1 次提交
-
-
由 NeilBrown 提交于
The charger needs usb3v1 to be running, so add a new consumer to keep it running. This allows the charger to draw current even when the USB driver has powered down. Signed-off-by: NNeilBrown <neilb@suse.de> Acked-by: NTero Kristo <t-kristo@ti.com> Acked-by: NSamuel Ortiz <sameo@linux.intel.com> Signed-off-by: NAnton Vorontsov <cbouatmailru@gmail.com>
-
- 20 5月, 2012 1 次提交
-
-
由 NeilBrown 提交于
twl-regulator has a collection of feature flags, some defined in twl-core.c and one defined in i2c/twl.h. This is confusing for anyone adding a new feature flag. So collect them together and place them in twl.h immediately after the structure in which they are initially set. Signed-off-by: NNeilBrown <neilb@suse.de> Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
-
- 09 5月, 2012 1 次提交
-
-
由 NeilBrown 提交于
twl-regulator has a collection of feature flags, some defined in twl-core.c and one defined in i2c/twl.h. This is confusing for anyone adding a new feature flag. So collect them together and place them in twl.h immediately after the structure in which they are initially set. Signed-off-by: NNeilBrown <neilb@suse.de> Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
-
- 22 3月, 2012 4 次提交
-
-
由 Peter Ujfalusi 提交于
On OMAP4 platform audio has separate IC, it is no longer part of the pmic chip. Prevent twl-core to claim the 0x4b address, which belongs to the twl6040 audio IC. Signed-off-by: NPeter Ujfalusi <peter.ujfalusi@ti.com> Acked-by: NSamuel Ortiz <sameo@linux.intel.com> Signed-off-by: NBenoit Cousson <b-cousson@ti.com> Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
-
由 Benoit Cousson 提交于
Since a structure device is available now, use the dev_ macros instead of the pr_ ones. Clean some badly formatted comments. Remove some unused variables. Move some variable to the place they belong. Clean some badly wrapped lines. Align variable definition Add missing braces in if-then-else block. Add blank line for better readability. Move stuff here and there... Conflicts: drivers/mfd/twl-core.c Signed-off-by: NBenoit Cousson <b-cousson@ti.com> Cc: Felipe Balbi <balbi@ti.com> Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
-
由 Benoit Cousson 提交于
During DT adaptation, the irq_alloc_desc was added into twl-core, but due to the rather different and weird IRQ management required by the twl4030, it is much better to have a different approach for it. The issue is that twl4030 uses a two level IRQ mechanism but handles all the PWR interrupts as part of the twl-core interrupt range. It ends up with a range of 16 interrupts total for CORE and PWR. The other twl4030 functionalities already have a dedicated driver and thus their IRQs and irqdomain can and should be defined localy. twl6030 is using a single level IRQ controller and thus does not require any trick. Move the irq_alloc_desc and irq_domain_add_legacy in twl4030-irq and twl6030-irq. Allocate together CORE and PWR IRQs for twl4030-irq. Conflicts: drivers/mfd/twl-core.c Signed-off-by: NBenoit Cousson <b-cousson@ti.com> Acked-by: NFelipe Balbi <balbi@ti.com> Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
-
由 Benoit Cousson 提交于
The twl-core exported functions are already declared in twl-core.h Include the header file instead or re-declaring the functions. Signed-off-by: NBenoit Cousson <b-cousson@ti.com> Acked-by: NFelipe Balbi <balbi@ti.com> Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
-