Age | Commit message (Collapse) | Author | Files | Lines |
|
The config transactions "scheduler" was hopelessly broken,
repeating completed transaction instead of picking up
next pending one.
Fixed now. Also improved debug messages.
Signed-off-by: Pawel Moll <[email protected]>
Reviewed-by: Jon Medhurst <[email protected]>
Signed-off-by: Samuel Ortiz <[email protected]>
|
|
Apparently the ab8500_gpadc_sw_hw_convert function got renamed
from ab8500_gpadc_convert to ab8500_gpadc_sw_hw_convert in
commit 734823462 "mfd: ab8500-gpadc: Add gpadc hw conversion",
but the export for this function did not get changed at the
same time, causing this allyesconfig error:
ERROR: "ab8500_gpadc_sw_hw_convert" [drivers/hwmon/ab8500.ko] undefined!
This patch fixes the export.
Signed-off-by: Arnd Bergmann <[email protected]>
Cc: M'boumba Cedric Madianga <[email protected]>
Cc: Lee Jones <[email protected]>
Cc: Mattias WALLIN <[email protected]>
Cc: Michel JAOUEN <[email protected]>
Acked-by: Linus Walleij <[email protected]>
Signed-off-by: Samuel Ortiz <[email protected]>
|
|
drivers/mfd/si476x-i2c.c: In function ‘si476x_core_drain_rds_fifo’:
drivers/mfd/si476x-i2c.c:391:4: warning: field width specifier ‘*’ expects
+argument of type ‘int’, but argument 4 has type ‘long unsigned int’ [-Wformat]
Acked-by: Andrey Smirnov <[email protected]>
Signed-off-by: Hans Verkuil <[email protected]>
Signed-off-by: Samuel Ortiz <[email protected]>
|
|
This patch adds all necessary header files and Kbuild plumbing for the
core driver for Silicon Laboratories Si476x series of AM/FM tuner
chips.
The driver as a whole is implemented as an MFD device and this patch
adds a core portion of it that provides all the necessary
functionality to the two other drivers that represent radio and audio
codec subsystems of the chip.
Acked-by: Hans Verkuil <[email protected]>
Acked-by: Sam Ravnborg <[email protected]>
Signed-off-by: Andrey Smirnov <[email protected]>
Signed-off-by: Samuel Ortiz <[email protected]>
|
|
This patch adds code related to manipulation of the properties of
SI476X chips.
Acked-by: Hans Verkuil <[email protected]>
Signed-off-by: Andrey Smirnov <[email protected]>
Signed-off-by: Samuel Ortiz <[email protected]>
|
|
This patch adds main part(out of three) of the I2C driver for the
"core" of MFD device.
Acked-by: Hans Verkuil <[email protected]>
Signed-off-by: Andrey Smirnov <[email protected]>
Signed-off-by: Samuel Ortiz <[email protected]>
|
|
This patch adds all the functions used for exchanging commands with
the chip.
Acked-by: Hans Verkuil <[email protected]>
Signed-off-by: Andrey Smirnov <[email protected]>
Signed-off-by: Samuel Ortiz <[email protected]>
|
|
RTS5249 supports SD UHS-II interface.
In order to support SD UHS-II,the definitions of some internal
registers of RTS5249 have to be modified and are different from its
predecessors. So we need this patch to ensure RTS5249 can work, even
SD/MMC stack doesn't support UHS-II interface.
Signed-off-by: Wei WANG <[email protected]>
Signed-off-by: Samuel Ortiz <[email protected]>
|
|
Tahvo is a multi-function device on Nokia 770, implementing USB
transceiver and charge/battery control.
It's so close to Retu that a single driver can support both.
Signed-off-by: Aaro Koskinen <[email protected]>
Signed-off-by: Samuel Ortiz <[email protected]>
|
|
Cc: Jean Delvare <[email protected]>
Cc: Guenter Roeck <[email protected]>
Cc: Grant Likely <[email protected]>
Acked-by: Linus Walleij <[email protected]>
Reviewed-by: Mark Brown <[email protected]>
Signed-off-by: Marek Vasut <[email protected]>
Signed-off-by: Samuel Ortiz <[email protected]>
|
|
Add properties for some of the more important bits of platform data and
fill out the binding document.
Not all of the current platform data is suitable for the sort of fixed
configuration that is done using DT, some of it should have runtime
mechanisms added instead and some is unlikely to ever be used in practical
systems.
Signed-off-by: Mark Brown <[email protected]>
Reviewed-by: Sylwester Nawrocki <[email protected]>
Tested-by: Sylwester Nawrocki <[email protected]>
Signed-off-by: Samuel Ortiz <[email protected]>
|
|
We can actually read this back from the device but we use this when
registered using standard I2C board data registration so make sure
it's there for OF too.
Signed-off-by: Mark Brown <[email protected]>
Tested-by: Sylwester Nawrocki <[email protected]>
Signed-off-by: Samuel Ortiz <[email protected]>
|
|
Couple of input drivers depend on this symbol:
ERROR: "matrix_keypad_parse_of_params" [drivers/input/keyboard/tca8418_keypad.ko] undefined!
ERROR: "matrix_keypad_parse_of_params" [drivers/input/keyboard/cros_ec_keyb.ko] undefined!
Reported-by: Randy Dunlap <[email protected]>
Acked-by: Dmitry Torokhov <[email protected]>
Acked-by: Randy Dunlap <[email protected]>
Acked-by: Simon Glass <[email protected]>
Signed-off-by: Michal Marek <[email protected]>
Signed-off-by: Samuel Ortiz <[email protected]>
|
|
This patch adds the of_compatible value for the tps65090 charger
subnode used when loading the driver to find its properties
and of_node.
Signed-off-by: Rhyland Klein <[email protected]>
Signed-off-by: Samuel Ortiz <[email protected]>
|
|
The main aim for this cycle is to have the u8540 booting to a
console. However, the u8540 doesn't support all of the u8500
platform devices yet. After this stage is complete we can then
fill in the inadequacies, such as specific clock support at a
later date. To achieve this we're placing devices supported by
all platforms into a common device structure and the remaining
ones into a platform specific one.
Cc: Samuel Ortiz <[email protected]>
Signed-off-by: Lee Jones <[email protected]>
Signed-off-by: Samuel Ortiz <[email protected]>
|
|
Gets rid of these warnings when compile module for 64 bit targets:
CC drivers/mfd/syscon.o
drivers/mfd/syscon.c: In function 'syscon_probe':
drivers/mfd/syscon.c:155:2: warning: format '%x' expects argument of type 'unsigned int', but argument 3 has type 'resource_size_t' [-Wformat]
drivers/mfd/syscon.c:155:2: warning: format '%x' expects argument of type 'unsigned int', but argument 4 has type 'resource_size_t' [-Wformat]
Signed-off-by: Alexander Shiyan <[email protected]>
Signed-off-by: Samuel Ortiz <[email protected]>
|
|
Fixes build error on x86_64 allmodconfig, introduced by commit
5ab3a89a741f ("mfd: syscon: Add non-DT support").
drivers/regulator/anatop-regulator.c: In function 'anatop_regulator_probe':
drivers/regulator/anatop-regulator.c:134:2: error: implicit declaration of function 'of_get_parent' [-Werror=implicit-function-declaration]
Signed-off-by: Alexander Shiyan <[email protected]>
Acked-by: Rob Herring <[email protected]>
Signed-off-by: Samuel Ortiz <[email protected]>
|
|
Use the newly introduced devm_ioremap_resource() instead of
devm_request_and_ioremap() which provides more consistent error handling.
devm_ioremap_resource() provides its own error messages; so all explicit
error messages can be removed from the failure code paths.
Signed-off-by: Sachin Kamat <[email protected]>
Acked-by: Roger Quadros <[email protected]>
Signed-off-by: Samuel Ortiz <[email protected]>
|
|
Use the newly introduced devm_ioremap_resource() instead of
devm_request_and_ioremap() which provides more consistent error handling.
devm_ioremap_resource() provides its own error messages; so all explicit
error messages can be removed from the failure code paths.
Signed-off-by: Sachin Kamat <[email protected]>
Acked-by: Roger Quadros <[email protected]>
Signed-off-by: Samuel Ortiz <[email protected]>
|
|
Ordering so many Kconfig alphabetically makes it a lot easier to read e.g.
from menuconfig.
Signed-off-by: Samuel Ortiz <[email protected]>
|
|
Provides support for 1801 variant of stmpe gpio port expanders.
This chip has 18 gpios configurable as GPI, GPO, keypad matrix,
special key or dedicated key function.
Note that special/dedicated key function is not supported yet.
Signed-off-by: Jean-Nicolas Graux <[email protected]>
Acked-by: Linus Walleij <[email protected]>
Signed-off-by: Samuel Ortiz <[email protected]>
|
|
Use the wrapper functions for getting and setting the driver data using
spi_device instead of using dev_{get|set}_drvdata with &spi->dev, so we
can directly pass a struct spi_device.
Signed-off-by: Jingoo Han <[email protected]>
Signed-off-by: Samuel Ortiz <[email protected]>
|
|
Use the wrapper functions for getting and setting the driver data using
spi_device instead of using dev_{get|set}_drvdata with &spi->dev, so we
can directly pass a struct spi_device.
Signed-off-by: Jingoo Han <[email protected]>
Signed-off-by: Samuel Ortiz <[email protected]>
|
|
Use the wrapper functions for getting and setting the driver data using
spi_device instead of using dev_{get|set}_drvdata with &spi->dev, so we
can directly pass a struct spi_device.
Signed-off-by: Jingoo Han <[email protected]>
Signed-off-by: Samuel Ortiz <[email protected]>
|
|
Use the wrapper functions for getting and setting the driver data using
spi_device instead of using dev_{get|set}_drvdata with &spi->dev, so we
can directly pass a struct spi_device.
Signed-off-by: Jingoo Han <[email protected]>
Signed-off-by: Samuel Ortiz <[email protected]>
|
|
Use the wrapper functions for getting and setting the driver data using
spi_device instead of using dev_{get|set}_drvdata with &spi->dev, so we
can directly pass a struct spi_device.
Signed-off-by: Jingoo Han <[email protected]>
Signed-off-by: Samuel Ortiz <[email protected]>
|
|
Use the wrapper functions for getting and setting the driver data using
spi_device instead of using dev_{get|set}_drvdata with &spi->dev, so we
can directly pass a struct spi_device.
Signed-off-by: Jingoo Han <[email protected]>
Signed-off-by: Samuel Ortiz <[email protected]>
|
|
The registration of the "leds-gpio" device was using
"vexpress_sysreg_dev" as a parent before it was actually
set to something different than NULL.
Trivial fix by reordering the code.
Reported-by: Lorenzo Pieralisi <[email protected]>
Signed-off-by: Pawel Moll <[email protected]>
Signed-off-by: Samuel Ortiz <[email protected]>
|
|
The abx500-clk driver is initiated at arch_initcall level. Moreover it
is relying on the ab8500-sysctrl API to be available. Therefore move
ab8500-sysctrl to arch_initcall level as well. The device is already
added before the abx500 clk device, thus it will be probed before as
well, which is exactly what we want.
Signed-off-by: Ulf Hansson <[email protected]>
Signed-off-by: Samuel Ortiz <[email protected]>
|
|
Currently we check to see if we obtained the Tightly Coupled Program
Memory (TCPM) base and only execute the code within the check if we
have it. It's more traditional to return early if we don't have it.
This way we can flatten most of the function's code down to a single
tab spacing.
Signed-off-by: Lee Jones <[email protected]>
Acked-by: Linus Walleij <[email protected]>
Signed-off-by: Samuel Ortiz <[email protected]>
|
|
syscon.h header uses struct device_node in functions' declarations
without declaring it. This causes compilation warnings like:
include/linux/mfd/syscon.h:20: warning: ‘struct device_node’
declared inside parameter list
include/linux/mfd/syscon.h:20: warning: its scope is only this
definition or declaration, which is probably not what you want
Fix it by adding a forward declaration of struct device_node.
Signed-off-by: Sylwester Nawrocki <[email protected]>
Signed-off-by: Kyungmin Park <[email protected]>
Acked-by: Dong Aisheng <[email protected]>
Signed-off-by: Samuel Ortiz <[email protected]>
|
|
Add of_comptabile string to the ab8500-usb cell to allow the driver to
grab properties from device-tree when available.
Signed-off-by: Fabio Baltieri <[email protected]>
Signed-off-by: Samuel Ortiz <[email protected]>
|
|
Allows the OMAP HS USB host controller to be specified
via device tree.
Signed-off-by: Roger Quadros <[email protected]>
Reviewed-by: Mark Rutland <[email protected]>
Signed-off-by: Samuel Ortiz <[email protected]>
|
|
PHY reset GPIO handling will be done in the PHY driver
Signed-off-by: Roger Quadros <[email protected]>
Acked-by: Felipe Balbi <[email protected]>
Acked-by: Samuel Ortiz <[email protected]>
Signed-off-by: Samuel Ortiz <[email protected]>
|
|
For realistic systems the power management is controlled entirely via
runtime PM - if the device is not runtime suspended then the suspend
will abort without doing anything as functionality such as accessory
detection or audio bypass will require the device to be enabled while
if the device is runtime suspended it is already in the lowest power
state. This means that system suspend is redundant and can be removed
which avoids issues with attempting to double disable the regulators.
Signed-off-by: Mark Brown <[email protected]>
Signed-off-by: Samuel Ortiz <[email protected]>
|
|
AB8500 asserts LATCH bits for masked out interrupts. This patch
explicitly masks those out using the cached mask value to prevent
handle_nested_irq() being called for masked IRQ on the same register as
unmasked ones.
Acked-by: Linus Walleij <[email protected]>
Signed-off-by: Fabio Baltieri <[email protected]>
Signed-off-by: Samuel Ortiz <[email protected]>
|
|
Twelve Kconfig symbols, all related to WM8350, WM8351, and WM8352, are
unused. Commit 19d57ed5a308472a02e773f33c03ad4cb2ec6a9 ("mfd: Remove
custom wm8350 cache implementation") removed all their (actual) users.
Remove these symbols too.
Signed-off-by: Paul Bolle <[email protected]>
Acked-by: Mark Brown <[email protected]>
Acked-by: Kukjin Kim <[email protected]>
Signed-off-by: Samuel Ortiz <[email protected]>
|
|
This patch changes the irq state from high to the now default low.
Because the default PMIC irq state of DA9055 got changed from high to low.
This change should not affect any of the existing users since all of them
use active low state.
This patch has been tested on smdkv6410.
Signed-off-by: Ashish <[email protected]>
Signed-off-by: Samuel Ortiz <[email protected]>
|
|
Allows the OMAP USB TLL module to be specified via device tree.
Signed-off-by: Roger Quadros <[email protected]>
Signed-off-by: Samuel Ortiz <[email protected]>
|
|
This is because we want to get rid of platform_data usage from probe().
The only information we need is PORT_MODE, and this can be supplied
to us by the user (i.e. omap-usb-host.c).
We also move channel clock management from runtime PM handlers into
omap_tll_enable/disable().
Signed-off-by: Roger Quadros <[email protected]>
Signed-off-by: Samuel Ortiz <[email protected]>
|
|
EHCI driver would need to know the number of ports available
on the platform. We set the nports parameter of platform_data
based on IP version if it was not already provided.
Signed-off-by: Roger Quadros <[email protected]>
Acked-by: Felipe Balbi <[email protected]>
Signed-off-by: Samuel Ortiz <[email protected]>
|
|
The Kconfig entry for DA9055 PMIC Support selects PMIC_DA9055. That was
probably inspired by the similar select statement in the entry for
DA9052/53 PMIC with I2C. But the DA9055 PMIC only comes in an I2C
variant and its driver doesn't need a separate Kconfig symbol for shared
code. In any case, this select can be dropped as PMIC_DA9055 doesn't
exist.
Signed-off-by: Paul Bolle <[email protected]>
Signed-off-by: Samuel Ortiz <[email protected]>
|
|
Signed-off-by: Mark Brown <[email protected]>
Signed-off-by: Samuel Ortiz <[email protected]>
|
|
Signed-off-by: Mark Brown <[email protected]>
Signed-off-by: Samuel Ortiz <[email protected]>
|
|
Palmas device have three different i2c addresses. The device creates
the two new dummy i2c clients for accessing the register by using
primary client adapter. This new dummy i2c client have their of_node
as NULL.
The dummy i2c client is used for registering interrupt and on this,
it creates irq domain handle. This created irq domain handle has
their of_node as NULL.
Now when any child of this device is registered through the DT as
follows:
palmas: tps65913@58 {
::::::::::::::::::
#interrupt-cells = <2>;
interrupt-controller;
palmas_rtc {
compatible = "ti,palmas-rtc";
interrupt-parent = <&palmas>;
interrupts = <8 0>;
};
::::::::::;;;
};
And child driver (palam-rtc in this case) get their irq number as
irq = platform_get_irq(pdev, 0);
The returned irq number is error in this case. The reason is that
the created irq_domain handle for the palmas interrupt does not have
valid node and so matching of node fails with palmas node.
Hence initialising the newly dummy created client->of_node with the
primary clients of_node so that irq_domain handle have proper of_node
for matching.
Signed-off-by: Laxman Dewangan <[email protected]>
Signed-off-by: Samuel Ortiz <[email protected]>
|
|
Add irq resources to pass to the charger mfd sub dev so
the charger can listen for interrupts.
Signed-off-by: Rhyland Klein <[email protected]>
Signed-off-by: Samuel Ortiz <[email protected]>
|
|
The enum is missing the definition for the first bit, which makes all
the rest off by one. Add definition for the TPS65090_IRQ_INTERRUPT bit
which at 0.
Signed-off-by: Rhyland Klein <[email protected]>
Signed-off-by: Samuel Ortiz <[email protected]>
|
|
is_palmas_charger checks for the presence of charging
functionality in the device
Signed-off-by: Graeme Gregory <[email protected]>
Signed-off-by: Ian Lartey <[email protected]>
Acked-by: Laxman Dewangani <[email protected]>
Signed-off-by: Samuel Ortiz <[email protected]>
|
|
This driver cannot be a module, so "remove" is never called. The
mishap is mine, and back then there was no warning due to __devexit().
Signed-off-by: Alessandro Rubini <[email protected]>
Acked-by: Giancarlo Asnaghi <[email protected]>
Acked-by: Davide Ciminaghi <[email protected]>
Signed-off-by: Samuel Ortiz <[email protected]>
|
|
Use devm_*() functions to make cleanup paths more simple.
Signed-off-by: Jingoo Han <[email protected]>
Signed-off-by: Samuel Ortiz <[email protected]>
|