linux/drivers/base
Guenter Roeck 5892ded23c regmap: Fix i2c word access when using SMBus access functions
SMBus access functions assume that 16-bit values are formatted as
little endian numbers. The direct i2c access functions in regmap,
however, assume that 16-bit values are formatted as big endian numbers.
As a result, the current code returns different values if an i2c chip's
16-bit registers are accessed through i2c access functions vs. SMBus
access functions.

Use regmap_smbus_read_word_swapped and regmap_smbus_write_word_swapped
for 16-bit SMBus accesses if a chip is configured as REGMAP_ENDIAN_BIG.
If the chip is configured as REGMAP_ENDIAN_LITTLE, keep using
regmap_smbus_write_word_data and regmap_smbus_read_word_data. Otherwise
reject registration if the controller does not support direct i2c accesses.

Signed-off-by: Guenter Roeck <linux@roeck-us.net>
Signed-off-by: Mark Brown <broonie@kernel.org>
2015-02-04 20:48:13 +00:00
..
power Merge branches 'pm-opp', 'pm-cpufreq' and 'pm-tools' 2014-12-18 18:44:53 +01:00
regmap regmap: Fix i2c word access when using SMBus access functions 2015-02-04 20:48:13 +00:00
attribute_container.c attribute_container: fix coding style issues 2014-09-23 22:55:15 -07:00
base.h
bus.c driver core: Fix unbalanced device reference in drivers_probe 2014-11-07 11:17:27 -08:00
cacheinfo.c drivers/base: cacheinfo: remove noisy error boot message 2014-11-24 09:33:05 -08:00
class.c
component.c
container.c
core.c Driver core patches for 3.19-rc1 2014-12-14 16:10:09 -08:00
cpu.c drivers: base: add cpu_device_create to support per-cpu devices 2014-11-07 11:45:00 -08:00
dd.c driver core: Remove kerneldoc from local function 2014-09-23 23:10:11 -07:00
devcoredump.c devcoredump: provide a one-way disable function 2014-11-26 19:40:12 -08:00
devres.c devres: Improve devm_kasprintf()/kvasprintf() support 2014-09-23 23:32:50 -07:00
devtmpfs.c
dma-coherent.c drivers: dma-coherent: add initialization from device tree 2014-10-14 02:18:12 +02:00
dma-contiguous.c drivers: of: add return value to of_reserved_mem_device_init() 2014-10-29 16:33:14 -07:00
dma-mapping.c common: dma-mapping: introduce common remapping functions 2014-10-09 22:25:52 -04:00
driver.c Revert "core: platform: add warning if driver has no owner" 2014-11-11 14:29:38 +09:00
firmware_class.c firmware class: Deletion of an unnecessary check before the function call "vunmap" 2014-11-26 19:41:15 -08:00
firmware.c
hypervisor.c
init.c
isa.c
Kconfig cma: make default CMA area size zero for x86 2014-12-10 17:41:06 -08:00
Makefile Driver core patches for 3.19-rc1 2014-12-14 16:10:09 -08:00
map.c
memory.c memory-hotplug: remove redundant call of page_to_pfn 2014-12-13 12:42:47 -08:00
module.c
node.c cpumask: factor out show_cpumap into separate helper function 2014-11-07 11:45:00 -08:00
pinctrl.c
platform.c Driver core patches for 3.19-rc1 2014-12-14 16:10:09 -08:00
property.c Driver core: Unified interface for firmware node properties 2014-11-04 21:58:23 +01:00
soc.c
syscore.c genirq: Simplify wakeup mechanism 2014-09-01 13:48:59 +02:00
topology.c topology: replace custom attribute macros with standard DEVICE_ATTR* 2014-11-07 11:45:00 -08:00
transport_class.c