18 Apr, 2019
1 commit
-
Signed-off-by: Axel Lin
Signed-off-by: Mark Brown
13 Mar, 2019
1 commit
-
The mutex for the regulator_dev must be controlled by the caller of
the regulator_notifier_call_chain(), as described in the comment
for that function.Failure to mutex lock and unlock surrounding the notifier call results
in a kernel WARN_ON_ONCE() which will dump a backtrace for the
regulator_notifier_call_chain() when that function call is first made.
The mutex can be controlled using the regulator_lock/unlock() API.Fixes: d1c6b4fe668b ("regulator: Add WM831x LDO support")
Suggested-by: Adam Thomson
Signed-off-by: Steve Twiss
Acked-by: Charles Keepax
Signed-off-by: Mark Brown
13 Jan, 2016
1 commit
23 Dec, 2015
1 commit
-
The regulator_ops structures are never modified, so declare them as const.
Done with the help of Coccinelle.
Signed-off-by: Julia Lawall
Acked-by: Charles Keepax
Signed-off-by: Mark Brown
03 Dec, 2015
1 commit
-
These new helpers simplify implementing multi-driver modules and
properly handle failure to register one driver by unregistering all
previously registered drivers.Signed-off-by: Thierry Reding
Signed-off-by: Mark Brown
02 Jun, 2015
1 commit
-
Since commit 1c6c69525b40 ("genirq: Reject bogus threaded irq requests")
threaded IRQs without a primary handler need to be requested with
IRQF_ONESHOT, otherwise the request will fail.So pass the IRQF_ONESHOT flag in this case.
The semantic patch that makes this change is available
in scripts/coccinelle/misc/irqf_oneshot.cocci.Signed-off-by: Fabio Estevam
Signed-off-by: Mark Brown
20 Oct, 2014
1 commit
-
A platform_driver does not need to set an owner, it will be populated by the
driver core.Signed-off-by: Wolfram Sang
20 Feb, 2014
1 commit
-
kzalloc prints its own OOM message upon failure.
Signed-off-by: Sachin Kamat
Signed-off-by: Mark Brown
24 Oct, 2013
2 commits
11 Oct, 2013
2 commits
-
Add REGULATOR_LINEAR_RANGE macro and convert regulator drivers to use it.
Signed-off-by: Axel Lin
Signed-off-by: Mark Brown -
linear ranges means each range has linear voltage settings.
So we can calculate max_uV for each linear range in regulator core rather than
set the max_uV field in drivers.Signed-off-by: Axel Lin
Signed-off-by: Mark Brown
23 Sep, 2013
1 commit
-
Fix the linear range settings in commit 5ff26a14c3331
"regulator: wm831x-ldo: Convert to use linear ranges".For wm831x_gp_ldo:
We have below equations for list voltage before converting to linear ranges:sel
Signed-off-by: Mark Brown
17 Sep, 2013
2 commits
-
Signed-off-by: Mark Brown
-
devm guarantees that resources are freed in the oposite order to that in
which they are allocated.Signed-off-by: Mark Brown
30 Jul, 2013
1 commit
-
Use the wrapper function for retrieving the platform data instead of
accessing dev->platform_data directly.Signed-off-by: Jingoo Han
Signed-off-by: Mark Brown
15 Jul, 2013
1 commit
-
Signed-off-by: Mark Brown
12 May, 2013
1 commit
-
Since 0998d06310 "device-core: Ensure drvdata = NULL when no driver is bound",
this is done by driver core after device_release or on probe failure.
Thus we can remove all platform_set_drvdata(pdev, NULL) in drivers.Signed-off-by: Axel Lin
Signed-off-by: Mark Brown
20 Nov, 2012
3 commits
-
CONFIG_HOTPLUG is going away as an option so __devexit is no
longer needed.Signed-off-by: Bill Pemberton
Signed-off-by: Mark Brown -
CONFIG_HOTPLUG is going away as an option so __devinit is no longer
needed.Signed-off-by: Bill Pemberton
Signed-off-by: Mark Brown -
CONFIG_HOTPLUG is going away as an option so __devexit_p is no longer
needed.Signed-off-by: Bill Pemberton
Signed-off-by: Mark Brown
05 Oct, 2012
1 commit
-
Pull MFD changes from Samuel Ortiz:
"MFD bits for the 3.7 merge window.As usual we have a few new drivers:
- TI LP8788
- TI OMAP USB TLL
- Maxim MAX8907
- SMSC ECE1099
- Dialog Semiconductor DA9055
- A simpler syscon driver that allow us to get rid of the anatop one.Drivers are also gradually getting Device Tree and IRQ domain support.
The following drivers got DT support:
- palmas, 88pm860x, tc3589x and twl4030-audioAnd those ones now use the IRQ domain APIs:
- 88pm860x, tc3589x, db8500_prcmuAlso some other interesting changes:
- Intel's ICH LPC now supports Lynx Point
- TI's twl4030-audio added a GPO child
- tps6527 enabled its backlight subdevice
- The twl6030 pwm driver moved to the new PWM subsystemAnd finally a bunch of cleanup and casual fixes for mc13xxx, 88pm860x,
palmas, ab8500, wm8994, wm5110, max8907 and the tps65xxx family."Fix up various annoying conflicts: the DT and IRQ domain support came in
twice and was already in 3.6. And then it was apparently rebased.Guys, DON'T REBASE!
* tag 'mfd-3.7-1' of git://git.kernel.org/pub/scm/linux/kernel/git/sameo/mfd-2.6: (89 commits)
ARM: dts: Enable 88pm860x pmic
mfd: 88pm860x: Move gpadc init into touch
mfd: 88pm860x: Device tree support
mfd: 88pm860x: Use irqdomain
mfd: smsc: Add support for smsc gpio io/keypad driver
backlight: tps65217_bl: Add missing platform_set_drvdata in tps65217_bl_probe
mfd: DA9055 core driver
mfd: tps65910: Add alarm interrupt of TPS65910 RTC to mfd device list
mfd: wm5110: Add register patches for revision B
mfd: wm5110: Disable control interface error report for WM5110 rev B
mfd: max8907: Remove regulator-compatible from DT docs
backlight: Add TPS65217 WLED driver
mfd: Add backlight as subdevice to the tps65217
mfd: Provide the PRCMU with its own IRQ domain
mfd: Fix max8907 sparse warning
mfd: Add lp8788 mfd driver
mfd: dbx500: Provide a more accurate smp_twd clock
mfd: rc5t583: Fix warning messages
regulator: palmas: Add DT support
mfd: palmas: Change regulator defns to better suite DT
...
28 Sep, 2012
1 commit
-
… 'regulator/topic/tol', 'regulator/topic/drivers' and 'regulator/topic/tps6586x' into regulator-next
11 Sep, 2012
1 commit
-
This was originally written by Russell King who unfortunately found
himself unable to take the patch futher.Signed-off-by: Mark Brown
Acked-by: Arnd Bergmann
Acked-by: Haojian Zhuang
Tested-by: Haojian Zhuang
Signed-off-by: Samuel Ortiz
10 Sep, 2012
1 commit
-
Signed-off-by: Mark Brown
29 Aug, 2012
1 commit
-
wm831x_reg_read() returns negative error code on failure.
This prevents using the error code as the value read.Signed-off-by: Axel Lin
Signed-off-by: Mark Brown
04 Jul, 2012
1 commit
-
Signed-off-by: Mark Brown
18 Jun, 2012
1 commit
-
Signed-off-by: Axel Lin
Signed-off-by: Mark Brown
03 Jun, 2012
1 commit
-
wm831x_alive_ldo_ops uses simple linear voltage maps.
Thus use regulator_map_voltage_linear is more efficient than using the default
regulator_map_voltage_iterate.Signed-off-by: Axel Lin
Signed-off-by: Mark Brown
30 May, 2012
1 commit
-
Pull MFD changes from Samuel Ortiz:
"Besides the usual cleanups, this one brings:* Support for 5 new chipsets: Intel's ICH LPC and SCH Centerton,
ST-E's STAX211, Samsung's MAX77693 and TI's LM3533.* Device tree support for the twl6040, tps65910, da9502 and ab8500
drivers.* Fairly big tps56910, ab8500 and db8500 updates.
* i2c support for mc13xxx.
* Our regular update for the wm8xxx driver from Mark."
Fix up various conflicts with other trees, largely due to ab5500 removal
etc.* tag 'mfd-3.5-1' of git://git.kernel.org/pub/scm/linux/kernel/git/sameo/mfd-2.6: (106 commits)
mfd: Fix build break of max77693 by adding REGMAP_I2C option
mfd: Fix twl6040 build failure
mfd: Fix max77693 build failure
mfd: ab8500-core should depend on MFD_DB8500_PRCMU
gpio: tps65910: dt: process gpio specific device node info
mfd: Remove the parsing of dt info for tps65910 gpio
mfd: Save device node parsed platform data for tps65910 sub devices
mfd: Add r_select to lm3533 platform data
gpio: Add Intel Centerton support to gpio-sch
mfd: Emulate active low IRQs as well as active high IRQs for wm831x
mfd: Mark two lm3533 zone registers as volatile
mfd: Fix return type of lm533 attribute is_visible
mfd: Enable Device Tree support in the ab8500-pwm driver
mfd: Enable Device Tree support in the ab8500-sysctrl driver
mfd: Add support for Device Tree to twl6040
mfd: Register the twl6040 child for the ASoC codec unconditionally
mfd: Allocate twl6040 IRQ numbers dynamically
mfd: twl6040 code cleanup in interrupt initialization part
mfd: Enable ab8500-gpadc driver for Device Tree
mfd: Prevent unassigned pointer from being used in ab8500-gpadc driver
...
20 May, 2012
1 commit
-
The modern idiom is to use irq_domain to allocate interrupts. This is
useful partly to allow further infrastructure to be based on the domains
and partly because it makes it much easier to allocate virtual interrupts
to devices as we don't need to allocate a contiguous range of interrupt
numbers.Convert the wm831x driver over to this infrastructure, using a legacy
IRQ mapping if an irq_base is specified in platform data and otherwise
using a linear mapping, always registering the interrupts even if they
won't ever be used. Only boards which need to use the GPIOs as
interrupts should need to use an irq_base.This means that we can't use the MFD irq_base management since the
unless we're using an explicit irq_base from platform data we can't rely
on a linear mapping of interrupts. Instead we need to map things via
the irq_domain - provide a conveniencem function wm831x_irq() to save a
small amount of typing when doing so. Looking at this I couldn't clearly
see anything the MFD core could do to make this nicer.Since we're not supporting device tree yet there's no meaningful
advantage if we don't do this conversion in one, the fact that the
interrupt resources are used for repeated IP blocks makes accessor
functions for the irq_domain more trouble to do than they're worth.Signed-off-by: Mark Brown
Signed-off-by: Samuel Ortiz
12 May, 2012
2 commits
-
Only the alive LDOs can actually use this as all the other regulators have
two linear ranges.Signed-off-by: Mark Brown
-
Conflicts:
drivers/regulator/88pm8607.c (simple overlap with a bugfix in v3.4)
10 May, 2012
1 commit
-
Register all normal regulators rather than skipping unconfigured ones now
that the core can handle regulators without init data. Skip the boost and
isink regulators since they are normally controlled by other drivers.Signed-off-by: Mark Brown
24 Apr, 2012
1 commit
-
Allows hookup via normal consumer mechanisms.
Signed-off-by: Mark Brown
17 Apr, 2012
2 commits
-
Signed-off-by: Mark Brown
Acked-by: Liam Girdwood -
Signed-off-by: Mark Brown
Acked-by: Liam Girdwood
10 Apr, 2012
1 commit
-
Linux 3.4-rc2 contains some fixes that further patches depend upon.
09 Apr, 2012
1 commit
-
Rather than adding new arguments to regulator_register() every time we
want to add a new bit of dynamic information at runtime change the function
to take these via a struct. By doing this we avoid needing to do further
changes like the recent addition of device tree support which required each
regulator driver to be updated to take an additional parameter.The regulator_desc which should (mostly) be static data is still passed
separately as most drivers are able to configure this statically at build
time.Signed-off-by: Mark Brown
01 Apr, 2012
1 commit
-
Signed-off-by: Axel Lin
Signed-off-by: Mark Brown