- Apr 10, 2012
-
-
Kristen Carlson Accardi authored
Don't call i2c_enable on resume because it causes a spurious interrupt. Signed-off-by:
Kristen Carlson Accardi <kristen@linux.intel.com> Signed-off-by:
Kirill A. Shutemov <kirill.shutemov@linux.intel.com> Signed-off-by:
Alan Cox <alan@linux.intel.com> Signed-off-by:
Linus Torvalds <torvalds@linux-foundation.org>
-
- Mar 28, 2012
-
-
David Howells authored
Remove all #inclusions of asm/system.h preparatory to splitting and killing it. Performed with the following command: perl -p -i -e 's!^#\s*include\s*<asm/system[.]h>.*\n!!' `grep -Irl '^#\s*include\s*<asm/system[.]h>' *` Signed-off-by:
David Howells <dhowells@redhat.com>
-
- Mar 26, 2012
-
-
Jean Delvare authored
Clock stretching is not supposed to last long, so asking to be rescheduled while waiting for the clock line to be released by a slave makes little sense. Odds are that the clock line will long have been released when we run again, so we will have lost time and may even get an SMBus timeout because of this. So just busy-wait in that case. This also participates in the effort to make i2c-algo-bit usable in contexts that can't sleep. Signed-off-by:
Jean Delvare <khali@linux-fr.org> Cc: Ben Skeggs <bskeggs@redhat.com>
-
Jean Delvare authored
Signed-off-by:
Jean Delvare <khali@linux-fr.org>
-
Axel Lin authored
This patch converts the drivers in drivers/i2c/muxes/* to use the module_i2c_driver() macro which makes the code smaller and a bit simpler. Signed-off-by:
Axel Lin <axel.lin@gmail.com> Acked-by:
Wolfram Sang <w.sang@pengutronix.de> Cc: Guenter Roeck <guenter.roeck@ericsson.com> Cc: Michael Lawnick <ml.lawnick@gmx.de> Cc: Ben Dooks <ben-linux@fluff.org> Signed-off-by:
Jean Delvare <khali@linux-fr.org>
-
Jean Delvare authored
Use usleep_range instead of msleep when waiting for command completion. Most SMBus commands complete in less than 2 jiffies so this brings a pleasant performance boost. Strongly inspired from a similar change by Olivier Sobrie to the i2c-isch driver. Signed-off-by:
Jean Delvare <khali@linux-fr.org> Cc: Olivier Sobrie <olivier@sobrie.be>
-
Seth Heasley authored
Add the SMBus controller device IDs for the Intel Lynx Point PCH. Signed-off-by:
Seth Heasley <seth.heasley@intel.com> Signed-off-by:
Jean Delvare <khali@linux-fr.org>
-
Olivier Sobrie authored
Generally it is not needed to wait for 1 msec, the SMBus get often ready in less than 200 usecs. msleep(1) can wait up to 20 msecs... It has a significant impact when there is a burst of transactions on the bus. Signed-off-by:
Olivier Sobrie <olivier@sobrie.be> Signed-off-by:
Jean Delvare <khali@linux-fr.org>
-
Mark Brown authored
Direct inclusion of asm/gpio.h has been deprecated for a while now due to the cross platform gpiolib. Signed-off-by:
Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by:
Jean Delvare <khali@linux-fr.org>
-
- Mar 15, 2012
-
-
Ville Syrjala authored
When the system is under heavy load, there can be a significant delay between the getscl() and time_after() calls inside sclhi(). That delay may cause the time_after() check to trigger after SCL has gone high, causing sclhi() to return -ETIMEDOUT. To fix the problem, double check that SCL is still low after the timeout has been reached, before deciding to return -ETIMEDOUT. Signed-off-by:
Ville Syrjala <syrjala@sci.fi> Cc: stable@vger.kernel.org Signed-off-by:
Jean Delvare <khali@linux-fr.org>
-
Wolfram Sang authored
Fix that. Also convert this and the related comment to proper commenting style. Signed-off-by:
Wolfram Sang <w.sang@pengutronix.de> Signed-off-by:
Jean Delvare <khali@linux-fr.org>
-
Jean-Christophe PLAGNIOL-VILLARD authored
To achieve DT support, we need to populate a custom platform_data in a private struct from DT information. To simplify code, the adapter and algorithm are also put into the private struct. Signed-off-by:
Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com> Acked-by:
Grant Likely <grant.likely@secretlab.ca> Acked-by:
Rob Herring <rob.herring@calxeda.com> Acked-by:
Wolfram Sang <w.sang@pengutronix.de> Cc: Nicolas Ferre <nicolas.ferre@atmel.com>
-
- Mar 07, 2012
-
-
Alexander Stein authored
Signed-off-by:
Alexander Stein <alexander.stein@systec-electronic.com> Signed-off-by:
Wolfram Sang <w.sang@pengutronix.de>
-
Alexander Stein authored
If you insert several i2c transfers, the driver might start the next one while the STOP bit of the previous transfer is still on the bus, marking the bus as busy. pch_i2c_wait_for_bus_idle does an msleep(20) delaying the next transfer by >=20ms. Reduce wait time by actively waiting 5 us once, then using usleep_range. Signed-off-by:
Alexander Stein <alexander.stein@systec-electronic.com> Acked-by:
Tomoya MORINAGA <tomoya.rohm@gmail.com> Signed-off-by:
Wolfram Sang <w.sang@pengutronix.de>
-
Mark Brown authored
Add stub runtime_pm calls which go through the flow of enabling and disabling but don't actually do anything with the device itself as there's nothing useful we can do. This provides the core PM framework with information about when the device is idle, enabling chip wide power savings. Signed-off-by:
Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by:
Heiko Stuebner <heiko@sntech.de> Signed-off-by:
Ben Dooks <ben-linux@fluff.org> Signed-off-by:
Wolfram Sang <w.sang@pengutronix.de>
-
Mark Brown authored
Saves remembering to call kfree(). There's some kfree()s used by the resource still, these will be removed in 3.3 using the newly added devm_request_and_ioremap(). Signed-off-by:
Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by:
Ben Dooks <ben-linux@fluff.org> Signed-off-by:
Wolfram Sang <w.sang@pengutronix.de>
-
Zhiwu Song authored
SiRFprimaII is the latest generation application processor from CSR’s multi-function SoC product family. The SoC support codes are in arch/arm/mach-prima2 from Linux mainline 3.0. There are two I2C controllers on primaII, features include: * Two I2C controller modules are on chip * RISC I/O bus read write register * Up to 16 bytes data buffer for issuing commands and writing data at the same time * Up to 16 commands, and receiving read data 16 bytes at a time * Error INT report (ACK check) * No-ACK bus protocols (SCCB bus protocols) Signed-off-by:
Zhiwu Song <Zhiwu.Song@csr.com> Signed-off-by:
Xiangzhen Ye <Xiangzhen.Ye@csr.com> Signed-off-by:
Yuping Luo <Yuping.Luo@csr.com> Signed-off-by:
Barry Song <Baohua.Song@csr.com> Signed-off-by:
Wolfram Sang <w.sang@pengutronix.de>
-
Alok Chauhan authored
The write is not necessary and may cause the I2C controller to misbehave. With this fix, I2C on Tegra30 works (at least, running i2cdump repeatedly on the WM8903 on Cardhu's I2C5/DVC bus). Signed-off-by:
Alok Chauhan <alokc@nvidia.com> [swarren: Reworded commit description] Signed-off-by:
Stephen Warren <swarren@nvidia.com> Signed-off-by:
Wolfram Sang <w.sang@pengutronix.de>
-
Haojian Zhuang authored
Append these properties in below. mrvl,i2c-polling mrvl,i2c-fast-mode Still keep slave, slave_addr and class in platform data. Signed-off-by:
Haojian Zhuang <haojian.zhuang@marvell.com> Acked-by:
Arnd Bergmann <arnd@arndb.de>
-
- Feb 29, 2012
-
-
Daniel Vetter authored
i915 has a hw i2c controller (gmbus) but for a bunch of stupid reasons we need to be able to fall back to the bit-banging algo on gpio pins. The current code sets up a 2nd i2c controller for the same i2c bus using the bit-banging algo. This has a bunch of issues, the major one being that userspace can directly access this fallback i2c adaptor behind the drivers back. But we need to frob a few registers before and after using fallback gpio bit-banging, so this horribly fails. The new plan is to only set up one i2c adaptor and transparently fall back to bit-banging by directly calling the xfer function of the bit- banging algo in the i2c core. To make that possible, export the 2 i2c algo functions. v2: As suggested by Jean Delvare, simply export the i2c_bit_algo vtable instead of the individual functions. Acked-by:
Jean Delvare <khali@linux-fr.org> Signed-off-by:
Daniel Vetter <daniel.vetter@ffwll.ch>
-
Oskar Schirmer authored
Interrupt a test application for I2C based mc13xxx driven touch panel, SIGINT, causes open event file descriptor to be closed, which in turn causes I2C activity to mask PMIC local interrupts. This eventually ends up in i2c_imx_bus_busy to wait for some busy flag to toggle, but while waiting it would find a signal pending and break. The final symptom is the device is not closed down cleanly and thus not reopenable. Do without check for pending signal. Signed-off-by:
Oskar Schirmer <oskar@scara.com> Acked-by:
Marc Kleine-Budde <mkl@pengutronix.de> Signed-off-by:
Wolfram Sang <w.sang@pengutronix.de>
-
Pratyush Anand authored
There are few drivers which are available on i2c bus but have been initialized with subsys_initcall. Also as I2C is a bus driver, it should be available as early as possible. Signed-off-by:
Pratyush Anand <pratyush.anand@st.com> Signed-off-by:
Viresh Kumar <viresh.kumar@st.com> [wsa: Slightly updated the commit message] Signed-off-by:
Wolfram Sang <w.sang@pengutronix.de>
-
- Feb 24, 2012
-
-
Wolfram Sang authored
The hardware generates an interrupt for every completed command in the queue while the code assumed that it will only generate one interrupt when the queue is empty. So, explicitly check if the queue is really empty. This patch fixed problems which occurred due to high traffic on the bus. While we are here, move the completion-initialization after the parameter error checking. Signed-off-by:
Wolfram Sang <w.sang@pengutronix.de> Cc: Shawn Guo <shawn.guo@linaro.org> Cc: Marek Vasut <marek.vasut@gmail.com> Cc: Lothar Waßmann <LW@KARO-electronics.de> Cc: stable@kernel.org
-
Jayachandran C authored
Move Kconfig option for I2C_EG20T to the correct position and keep the options sorted. Also, use tabs in Makefile and move the I2C_EG20T entry to its position. Signed-off-by:
Jayachandran C <jayachandranc@netlogicmicro.com> Signed-off-by:
Wolfram Sang <w.sang@pengutronix.de>
-
Ganesan Ramalingam authored
Add support for the intergrated I2C controller on Netlogic XLR/XLS MIPS SoC. The changes are to add a new file i2c/buses/i2c-xlr.c, containing the i2c bus implementation, and to update i2c/buses/{Kconfig,Makefile} to add the CONFIG_I2C_XLR option. Signed-off-by:
Ganesan Ramalingam <ganesanr@netlogicmicro.com> Signed-off-by:
Jayachandran C <jayachandranc@netlogicmicro.com> Signed-off-by:
Wolfram Sang <w.sang@pengutronix.de>
-
Tang Yuantian authored
Add support for SMBUS_READ_BLOCK_DATA to the i2c-mpc bus driver. Signed-off-by:
Tang Yuantian <Yuantian.Tang@freescale.com> Cc: Ben Dooks <ben-linux@fluff.org> Signed-off-by:
Wolfram Sang <w.sang@pengutronix.de>
-
Pawel Moll authored
This patch adds Device Tree binding ("arm,versatile-i2c") and basic support (bus population) to versatile-i2c driver. Signed-off-by:
Pawel Moll <pawel.moll@arm.com> [wsa: constified match-table] Signed-off-by:
Wolfram Sang <w.sang@pengutronix.de>
-
- Feb 07, 2012
-
-
Shubhrajyoti Datta authored
It was originally missed in the __devinit/__devexit annotations. Signed-off-by:
Shubhrajyoti D <shubhrajyoti@ti.com> Acked-by:
Stephen Warren <swarren@nvidia.com> Acked-by:
Ben Dooks <ben-linux@fluff.org> Signed-off-by:
Olof Johansson <olof@lixom.net>
-
- Feb 01, 2012
-
-
Richard Zhao authored
It's for migrating to generic clk framework API. Signed-off-by:
Richard Zhao <richard.zhao@linaro.org> Signed-off-by:
Sascha Hauer <s.hauer@pengutronix.de>
-
- Jan 20, 2012
-
-
Cousson, Benoit authored
CONFIG_OF is not defined for OMAP1 yet and thus the omap1_defconfig build generate an error for 3.3-rc1. drivers/i2c/busses/i2c-omap.c: In function 'omap_i2c_probe': drivers/i2c/busses/i2c-omap.c:1021:26: error: 'omap_i2c_of_match' undeclared (first use in this function) drivers/i2c/busses/i2c-omap.c:1021:26: note: each undeclared identifier is reported only once for each function it appears in Wrap omap_i2c_of_match with of_match_ptr() to prevent compilation error in case of OMAP1 build. Signed-off-by:
Benoit Cousson <b-cousson@ti.com> Cc: Ben Dooks <ben-linux@fluff.org> Signed-off-by:
Tony Lindgren <tony@atomide.com>
-
- Jan 17, 2012
-
-
Tomoya MORINAGA authored
On October 1 in 2011, OKI SEMICONDUCTOR Co., Ltd. changed the company name in to LAPIS Semiconductor Co., Ltd. Signed-off-by:
Tomoya MORINAGA <tomoya-linux@dsn.lapis-semi.com> Signed-off-by:
Ben Dooks <ben-linux@fluff.org>
-
Tomoya MORINAGA authored
ML7831 is companion chip for Intel Atom E6xx series. Signed-off-by:
Tomoya MORINAGA <tomoya-linux@dsn.lapis-semi.com> Signed-off-by:
Ben Dooks <ben-linux@fluff.org>
-
Toshiharu Okada authored
This patch modified the setting value of I2C Bus Transfer Rate Setting Counter regisrer. Signed-off-by:
Toshiharu Okada <toshiharu-linux@dsn.okisemi.com> Signed-off-by:
Ben Dooks <ben-linux@fluff.org>
-
Feng Tang authored
For EG20T and ML7213 IOH, the i2c controller numbers are fixed, using fixed bus number will make it much easier for platform code to use i2c_register_board_info() to register i2c devices. Signed-off-by:
Feng Tang <feng.tang@intel.com> Signed-off-by:
Ben Dooks <ben-linux@fluff.org>
-
Benoit Cousson authored
Add initial DT support to retrieve the frequency using a DT attribute instead of the pdata pointer if of_node exist. Add documentation for omap i2c controller binding. Based on original patches from Manju and Grant. Signed-off-by:
Benoit Cousson <b-cousson@ti.com> Cc: Ben Dooks <ben-linux@fluff.org> Reviewed-by:
Rob Herring <rob.herring@calxeda.com> Acked-by:
Grant Likely <grant.likely@secretlab.ca> Signed-off-by:
Kevin Hilman <khilman@ti.com>
-
Jan Weitzel authored
On OMAP4 OMAP_I2C_STAT_NACK is causing a timeout on the next access. The isr cleans all flags in OMAP_I2C_CON_REG by setting OMAP_I2C_CON_STP OMAP_I2C_CON_STP is also set in omap_i2c_xfer_msg on the last message. According to the TI TSR the sequence for OMAP_I2C_STAT_NACK and OMAP_I2C_STAT_AL are nearly the same. Removing the OMAP_I2C_CON_STP part in the isr fix the problem. Tested on OMAP4430 and OMAP3530 (here NACK was not a problem) Fixes also booting on 2430sdp. Signed-off-by:
Jan Weitzel <j.weitzel@phytec.de> Acked-by:
Tony Lindgren <tony@atomide.com> Signed-off-by:
Kevin Hilman <khilman@ti.com>
-
Alexander Aring authored
Correct OMAP_I2C_SYSC_REG offset in omap4 register map. Offset 0x20 is reserved and OMAP_I2C_SYSC_REG has 0x10 as offset. Signed-off-by:
Alexander Aring <a.aring@phytec.de> [khilman@ti.com: minor changelog edits] Cc: stable@vger.kernel.org Signed-off-by:
Kevin Hilman <khilman@ti.com>
-
- Jan 12, 2012
-
-
Rusty Russell authored
module_param(bool) used to counter-intuitively take an int. In fddd5201 (mid-2009) we allowed bool or int/unsigned int using a messy trick. It's time to remove the int/unsigned int option. For this version it'll simply give a warning, but it'll break next kernel version. Acked-by:
Mauro Carvalho Chehab <mchehab@redhat.com> Signed-off-by:
Rusty Russell <rusty@rustcorp.com.au>
-
Axel Lin authored
Convert gpio-i2cmux to use the module_platform_driver() macro which makes the code smaller and a bit simpler. Signed-off-by:
Axel Lin <axel.lin@gmail.com> Acked-by:
Peter Korsgaard <peter.korsgaard@barco.com> Signed-off-by:
Jean Delvare <khali@linux-fr.org>
-
Axel Lin authored
Convert the drivers in drivers/i2c/busses/* to use the module_platform_driver() macro which makes the code smaller and a bit simpler. Cc: Ben Dooks <ben-linux@fluff.org> Acked-by:
Jochen Friedrich <jochen@scram.de> Acked-by:
Peter Korsgaard <jacmet@sunsite.dk> Acked-by:
Wolfram Sang <w.sang@pengutronix.de> Cc: Manuel Lauss <manuel.lauss@googlemail.com> Cc: Barry Song <21cnbao@gmail.com> Cc: Linus Walleij <linus.walleij@linaro.org> Cc: Yong Zhang <yong.zhang0@gmail.com> Cc: Lucas De Marchi <lucas.demarchi@profusion.mobi> Cc: Grant Likely <grant.likely@secretlab.ca> Cc: Samuel Ortiz <sameo@linux.intel.com> Signed-off-by:
Axel Lin <axel.lin@gmail.com> Signed-off-by:
Jean Delvare <khali@linux-fr.org>
-