summaryrefslogtreecommitdiffstats
path: root/drivers/i2c/busses/i2c-cpm.c
diff options
context:
space:
mode:
authorChristian Fetzer <fetzer.ch@gmail.com>2015-11-19 20:13:48 +0100
committerWolfram Sang <wsa@the-dreams.de>2015-11-30 14:36:25 +0100
commit2fee61d22e606fc99ade9079fda15fdee83ec33e (patch)
treed4cc17f9b1f10caf71a2297b4a143f91b5015145 /drivers/i2c/busses/i2c-cpm.c
parenti2c: piix4: Convert piix4_main_adapter to array (diff)
downloadlinux-2fee61d22e606fc99ade9079fda15fdee83ec33e.tar.xz
linux-2fee61d22e606fc99ade9079fda15fdee83ec33e.zip
i2c: piix4: Add support for multiplexed main adapter in SB800
The SB800 chipset supports a multiplexed main SMBus controller with four ports. The multiplexed ports share the same SMBus address and register set. The port is selected by bits 2:1 of the smb_en register (0x2C). Only one port can be active at any point in time therefore a mutex is needed in order to synchronize access. Additionally, the commit avoids requesting and releasing the SMBus base address index region on every multiplexed transfer by moving the request_region call into piix4_probe. Tested on HP ProLiant MicroServer G7 N54L (where this patch adds support to access sensor data from the w83795adg). Cc: Thomas Brandon <tbrandonau@gmail.com> Cc: Eddi De Pieri <eddi@depieri.net> Signed-off-by: Christian Fetzer <fetzer.ch@gmail.com> Reviewed-by: Mika Westerberg <mika.westerberg@linux.intel.com> Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
Diffstat (limited to 'drivers/i2c/busses/i2c-cpm.c')
0 files changed, 0 insertions, 0 deletions