- 23 2月, 2011 2 次提交
-
-
由 Kevin Hilman 提交于
When runtime PM is enabled, each OMAP i2c device is suspended after each i2c xfer. However, there are two cases when the static suspend methods must be used to ensure the devices are suspended: 1) runtime PM is disabled, either at compile time or dynamically via /sys/devices/.../power/control. 2) an i2c client driver uses i2c during it's suspend callback, thus leaving the i2c driver active (NOTE: runtime suspend transitions are disabled during system suspend, so i2c activity during system suspend will runtime resume the device, but not runtime (re)suspend it.) Since the actual work to suspend the device is handled by the subsytem, call the bus methods to take care of it. NOTE: This takes care of a known suspend problem on OMAP3 where the TWL RTC driver does i2c xfers during its suspend path leaving the i2c driver in an active state (since runtime suspend transistions are disabled.) Signed-off-by: NKevin Hilman <khilman@ti.com> Signed-off-by: NBen Dooks <ben-linux@fluff.org>
-
由 Wolfram Sang 提交于
Use strlcpy instead of strncpy. Signed-off-by: NWolfram Sang <w.sang@pengutronix.de> Cc: Linus Walleij <linus.walleij@stericsson.com> Cc: Ben Dooks <ben-linux@fluff.org> Signed-off-by: NBen Dooks <ben-linux@fluff.org>
-
- 14 1月, 2011 1 次提交
-
-
由 Andres Salomon 提交于
The SCx200 ACB driver supports ISA hardware as well as PCI. The PCI hardware is CS5535/CS5536 based, and the device that it grabs is handled by the cs5535-mfd driver. This converts the SCx200 driver to use a platform_driver rather than the previous PCI hackery. The driver used to manually track the iface list (via linked list); now it only does this for ISA devices. PCI ifaces are handled through standard driver model lists. It's unclear what happens in case of errors in the old ISA code; rather than pretending the code actually cares, I've dropped the (implicit) ignorance of return values and marked it with a comment. Signed-off-by: NAndres Salomon <dilinger@queued.net> Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
-
- 13 1月, 2011 2 次提交
-
-
由 Michael Hennerich 提交于
Some systems using this bus sometimes have very basic devices such as regulators on the bus, so the I2C bus master needs to be loaded early. This also matches the behavior of many other I2C bus master drivers. Therefore initialize via subsys_initcall(). Signed-off-by: NMichael Hennerich <michael.hennerich@analog.com> Signed-off-by: NMike Frysinger <vapier@gentoo.org> Signed-off-by: NBen Dooks <ben-linux@fluff.org>
-
由 Michael Hennerich 提交于
Faulty slave devices might drive SDA low after a transfer finishes. So, when this scenario is detected, have the master generate up to 9 extra clocks until the SDA is properly released. Signed-off-by: NMichael Hennerich <michael.hennerich@analog.com> Signed-off-by: NMike Frysinger <vapier@gentoo.org> Signed-off-by: NBen Dooks <ben-linux@fluff.org>
-
- 11 1月, 2011 2 次提交
-
-
由 Joe Perches 提交于
Signed-off-by: NJoe Perches <joe@perches.com> Signed-off-by: NJean Delvare <khali@linux-fr.org>
-
由 Ben Hutchings 提交于
Commit 5a0e3ad6 added direct inclusion of <linux/slab.h> to those source files that appeared to need it, but somehow missed this. On most architectures <linux/slab.h> is still indirectly included, but there are exceptions such as alpha. Signed-off-by: NBen Hutchings <ben@decadent.org.uk> Signed-off-by: NJean Delvare <khali@linux-fr.org>
-
- 04 1月, 2011 8 次提交
-
-
由 Rodolfo Giometti 提交于
As stated into file include/linux/i2c.h we must send a repeated START between messages in the same xfer groupset: * Except when I2C "protocol mangling" is used, all I2C adapters implement * the standard rules for I2C transactions. Each transaction begins with a * START. That is followed by the slave address, and a bit encoding read * versus write. Then follow all the data bytes, possibly including a byte * with SMBus PEC. The transfer terminates with a NAK, or when all those * bytes have been transferred and ACKed. If this is the last message in a * group, it is followed by a STOP. Otherwise it is followed by the next * @i2c_msg transaction segment, beginning with a (repeated) START. Signed-off-by: NRodolfo Giometti <giometti@linux.it> Signed-off-by: NMauro Barella <mbarella@vds-it.com> Signed-off-by: NBen Dooks <ben-linux@fluff.org>
-
由 Linus Walleij 提交于
The Nomadik I2C adapter does not provide a name for the struct passed into i2c_add_numbered_adapter() causing a regression on 2.6.37-rc3 due to commit 2236baa7 adding sanity checks for adapters. Fix this by providing a name proper. Cc: Jean Delvare <khali@linux-fr.org> Signed-off-by: NLinus Walleij <linus.walleij@stericsson.com> Signed-off-by: NBen Dooks <ben-linux@fluff.org>
-
由 Samu Onkalo 提交于
Ordinary I2C read consist of two messages. First a write operation to tell register address and then read operation to get data. CPU wake up latency is set and removed twice in read case. Set latency requirement before the message processing loop and remove the requirement after the loop to remove latency adjustment operations between the messages. Signed-off-by: NSamu Onkalo <samu.p.onkalo@nokia.com> Acked-by: NKevin Hilman <khilman@deeprootsystems.com> Acked-by: NPaul Walmsley <paul@pwsan.com> Signed-off-by: NBen Dooks <ben-linux@fluff.org>
-
由 Tomoya MORINAGA 提交于
I2C driver for Intel EG20T PCH Signed-off-by: NTomoya MORINAGA <tomoya-linux@dsn.okisemi.com> Reviewed-by: NLinus Walleij <linus.walleij@stericsson.com> Signed-off-by: NQi Wang <qi.wang@intel.com> [ben-linux@fluff.org: reworded commit message] Signed-off-by: NBen Dooks <ben-linux@fluff.org>
-
由 Jonas Bonn 提交于
This puts some documentation for the device tree configuration at the head of the driver file. Hopefully this can get moved to a common area for this type of documentation at a later date; unfortunately, there isn't really such a place in the kernel tree at this time. Furthermore, the regstep and clock-frequency parameters are really bus parameters and should probably be passed to the driver in a better way. Consider that a TODO. Signed-off-by: NJonas Bonn <jonas@southpole.se> Signed-off-by: NBen Dooks <ben-linux@fluff.org>
-
由 Jonas Bonn 提交于
This patch converts the i2c-cores driver to use devres routines for resource allocation. Signed-off-by: NJonas Bonn <jonas@southpole.se> Signed-off-by: NBen Dooks <ben-linux@fluff.org>
-
由 Jonas Bonn 提交于
This patch adapts the i2c-ocores driver for being defined and configured via a device tree description. The device tree bits need to be protected by CONFIG_OF guards as this is still an optional feature. Signed-off-by: NJonas Bonn <jonas@southpole.se> Signed-off-by: NBen Dooks <ben-linux@fluff.org>
-
由 Aaro Koskinen 提交于
Eliminate unnecessary casts and the following sparse warnings: drivers/i2c/busses/i2c-iop3xx.c:65:9: warning: incorrect type in argument 1 (different base types) drivers/i2c/busses/i2c-iop3xx.c:65:9: expected void const volatile [noderef] <asn:2>*<noident> drivers/i2c/busses/i2c-iop3xx.c:65:9: got unsigned int [ the previous warning is repeated 18 times ] drivers/i2c/busses/i2c-iop3xx.c:456:33: warning: cast removes address space of expression Signed-off-by: NAaro Koskinen <aaro.koskinen@iki.fi> Signed-off-by: NBen Dooks <ben-linux@fluff.org>
-
- 21 12月, 2010 1 次提交
-
-
由 Benoit Cousson 提交于
The convention for omap device naming is omap_XXX. Rename the device and driver name in order to stick to this naming convention. Change device name in clock nodes as well. Signed-off-by: NBenoit Cousson <b-cousson@ti.com> Cc: Kevin Hilman <khilman@deeprootsystems.com> Cc: Rajendra Nayak <rnayak@ti.com> Cc: Ben Dooks <ben-i2c@fluff.org> Acked-by: NPaul Walmsley <paul@pwsan.com> Acked-by: NBen Dooks <ben-linux@fluff.org> Signed-off-by: NTony Lindgren <tony@atomide.com>
-
- 15 12月, 2010 1 次提交
-
-
由 Alan Cox 提交于
This gets caught by the new sanity check code. Instead of the slash use a different symbol. This was originally found by Major Lee who proposed a rather more complex patch which changed the name according to the chip type. On the basis that we are in a late -rc and making Linus grumpy isn't always a good idea (however fun) this is a simple alternative. Signed-off-by: NAlan Cox <alan@linux.intel.com> Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
-
- 10 11月, 2010 1 次提交
-
-
由 Rajendra Nayak 提交于
This patch converts the i2c driver to use PM runtime apis Signed-off-by: NRajendra Nayak <rnayak@ti.com> Cc: Paul Walmsley <paul@pwsan.com> Cc: Jean Delvare <khali@linux-fr.org> Acked-by: NBen Dooks <ben-linux@fluff.org> Signed-off-by: NKevin Hilman <khilman@deeprootsystems.com>
-
- 02 11月, 2010 1 次提交
-
-
由 Uwe Kleine-König 提交于
"gadget", "through", "command", "maintain", "maintain", "controller", "address", "between", "initiali[zs]e", "instead", "function", "select", "already", "equal", "access", "management", "hierarchy", "registration", "interest", "relative", "memory", "offset", "already", Signed-off-by: NUwe Kleine-König <u.kleine-koenig@pengutronix.de> Signed-off-by: NJiri Kosina <jkosina@suse.cz>
-
- 01 11月, 2010 3 次提交
-
-
由 David Woodhouse 提交于
These are the extra 'Integrated Device Function' SMBus controllers found on the Patsburg chipset. Mention the absence of slave mode support. Signed-off-by: NDavid Woodhouse <David.Woodhouse@intel.com> Signed-off-by: NJean Delvare <khali@linux-fr.org>
-
由 David Woodhouse 提交于
It's poor form to keep driver state in global variables rather than per-instance. It never really mattered in practice when there was only one controller on the chipset, but the latest chipsets do have more than one controller, so now we care. Signed-off-by: NDavid Woodhouse <David.Woodhouse@intel.com> Signed-off-by: NJean Delvare <khali@linux-fr.org>
-
由 Seth Heasley 提交于
Add support for the Intel Patsburg PCH SMBus Controller. Signed-off-by: NSeth Heasley <seth.heasley@intel.com> Signed-off-by: NJean Delvare <khali@linux-fr.org>
-
- 30 10月, 2010 1 次提交
-
-
由 Randy Dunlap 提交于
i2c-intel-mid driver uses PCI data structs and interfaces, so it should depend on PCI. Fixes these build errors: drivers/i2c/busses/i2c-intel-mid.c:977: error: implicit declaration of function 'pci_request_region' drivers/i2c/busses/i2c-intel-mid.c:1077: error: implicit declaration of function 'pci_release_region' Signed-off-by: NRandy Dunlap <randy.dunlap@oracle.com> Cc: Ba Zheng <zheng.ba@intel.com> Cc: Jean Delvare <khali@linux-fr.org> Cc: Ben Dooks <ben-linux@fluff.org> Cc: linux-i2c@vger.kernel.org Signed-off-by: NBen Dooks <ben-linux@fluff.org>
-
- 28 10月, 2010 1 次提交
-
-
由 Alan Cox 提交于
(Updated to address Ben's comments. With regard to the message segment restriction it's not something we hit on the actual platform so while I will investigate that further I don't think its a blocker to submission. At worst its a spot over-restrictive) From: Wen Wang <wen.w.wang@intel.com> Initial release of the driver. Updated and verified on hardware. Cleaned up as follows Alan Cox: Squash down the switches into tables, and use the PCI ident field. We could perhaps take this further and put the platform and port number into this. uint32t -> u32 bracketing of case statements spacing and '!' usage Check the speed (which is now 0/1/2) is valid and ignore otherwise. Fix remaining problems/suggestions from Jean's review Fix items from Ben's review Arjan van de Ven: Initial power management hooks Yong Wang <youg.y.wang@intel.com>: Shared IRQ support Wen Wang <wen.w.wang@intel.com>: D3 support Fixes for OCT test runs Interrupt optimisations Hong Liu <hong.liu@intel.com> The runtime PM code is working on the wrong device (i2c_adapter->dev). The correct one should be pci_dev->dev. This breaks attached i2c slave devices with runtime PM enabled. Slave device needs to runtime resume parent device before runtime resuming itself, but we always get error since we don't have pm_runtime callback for i2c_adapter->dev. Bin Yang <bin.yang@intel.com>: Update speed table Saadi Maalem <saadi.maalem@intel.com>: Clear all interrupts in the hardware init Celine Chotard <celinex.chotard@intel.com>: Correct ordering of clear/disable of IRQs Signed-off-by: NWen Wang <wen.w.wang@intel.com> Signed-off-by: NYong Wang <yong.y.wang@intel.com> Signed-off-by: NHong Liu <hong.liu@intel.com> Signed-off-by: NBin Yang <bin.yang@intel.com> Signed-off-by: NArjan van de Ven <arjan@linux.intel.com> Signed-off-by: NAlan Cox <alan@linux.intel.com> Signed-off-by: NBen Dooks <ben-linux@fluff.org>
-
- 27 10月, 2010 1 次提交
-
-
由 Dzianis Kahanovich 提交于
NULL-terminating pci_device_id in pch_dma.c and scx200_acb.c for appying MODULE_DEVICE_TABLE (to publish modalias-es). Signed-off-by: NDzianis Kahanovich <mahatma@eu.by> Signed-off-by: NRusty Russell <rusty@rustcorp.com.au>
-
- 25 10月, 2010 10 次提交
-
-
由 Nobuhiro Iwamatsu 提交于
ctrl_* is deprecated. We should to use __raw_*. Signed-off-by: NNobuhiro Iwamatsu <iwamatsu@nigauri.org> Signed-off-by: NPaul Mundt <lethal@linux-sh.org>
-
由 Linus Walleij 提交于
We were missing a transfer delay in one execution path leading to hangs and the bus timeout was too low leading to errors under stress tests. Acked-by: NSrinidhi Kasagar <srinidhi.kasagar@stericsson.com> Signed-off-by: NSundar R Iyer <sundar.iyer@stericsson.com> Signed-off-by: NLinus Walleij <linus.walleij@stericsson.com> Signed-off-by: NBen Dooks <ben-linux@fluff.org>
-
由 Linus Walleij 提交于
We can do smbus emulation so flag this and drop the duplicate flags implied from smbus emulation. Acked-by: NSrinidhi Kasagar <srinidhi.kasagar@stericsson.com> Signed-off-by: NSundar R Iyer <sundar.iyer@stericsson.com> Signed-off-by: NLinus Walleij <linus.walleij@stericsson.com> Signed-off-by: NBen Dooks <ben-linux@fluff.org>
-
由 Linus Walleij 提交于
This makes sure the Nomadik I2C bus driver silicon is only clocked when really needed, saving some microamps here and there when there is no I2C traffic. Acked-by: NSrinidhi Kasagar <srinidhi.kasagar@stericsson.com> Signed-off-by: NSundar R Iyer <sundar.iyer@stericsson.com> Signed-off-by: NLinus Walleij <linus.walleij@stericsson.com> Signed-off-by: NBen Dooks <ben-linux@fluff.org>
-
由 Linus Walleij 提交于
This fixes some kerneldoc and assorted documenatation in the Nomadik I2C driver without semantic impact. Acked-by: NSrinidhi Kasagar <srinidhi.kasagar@stericsson.com> Signed-off-by: NSundar R Iyer <sundar.iyer@stericsson.com> Signed-off-by: NLinus Walleij <linus.walleij@stericsson.com> Signed-off-by: NBen Dooks <ben-linux@fluff.org>
-
由 Jean Delvare 提交于
Transactions not acked can happen every now and then, in particular during device detection, and various transaction types can be used for this purpose. So stop logging this event, except when debugging is enabled. This is what other similar drivers (e.g. i2c-i801 or i2c-piix4) do. Signed-off-by: NJean Delvare <khali@linux-fr.org>
-
由 Julia Lawall 提交于
The functions the functions amd_ec_wait_write and amd_ec_wait_read have an unsigned return type, but return a negative constant to indicate an error condition. A sematic match that finds this problem is as follows: (http://coccinelle.lip6.fr/) // <smpl> @exists@ identifier f; constant C; @@ unsigned f(...) { <+... * return -C; ...+> } // </smpl> Fixing amd_ec_wait_write and amd_ec_wait_read leads to the need to adjust the return type of the functions amd_ec_write and amd_ec_read, which are the only functions that call amd_ec_wait_write and amd_ec_wait_read. amd_ec_write and amd_ec_read, in turn, are only called from within the function amd8111_access, which already returns a signed typed value. Each of the calls to amd_ec_write and amd_ec_read are updated using the following semantic patch: // <smpl> @@ @@ + status = amd_ec_write - amd_ec_write (...); + if (status) return status; @@ @@ + status = amd_ec_read - amd_ec_read (...); + if (status) return status; // </smpl> The patch also adds the declaration of the status variable. Signed-off-by: NJulia Lawall <julia@diku.dk> Signed-off-by: NJean Delvare <khali@linux-fr.org>
-
由 matt mooney 提交于
Replace EXTRA_CFLAGS with ccflags-y. Signed-off-by: Nmatt mooney <mfm@muteddisk.com> Signed-off-by: NJean Delvare <khali@linux-fr.org>
-
由 Jean Delvare 提交于
These drivers don't use anything which is defined in <linux/i2c-id.h>. This header file was never meant to be included directly anyway, and will be deleted soon. Signed-off-by: NJean Delvare <khali@linux-fr.org> Acked-by: NBen Dooks <ben-linux@fluff.org> Acked-by: NDave Airlie <airlied@linux.ie> Cc: Hans Verkuil <hverkuil@xs4all.nl>
-
由 Nobuhiro Iwamatsu 提交于
i2c->adap.name shouldn't be used in request_irq. Instead the driver name "i2c-pca-platform" should be used. Signed-off-by: NNobuhiro Iwamatsu <nobuhiro.iwamatsu.yj@renesas.com> Acked-by: NWolfram Sang <w.sang@pengutronix.de> Cc: stable@kernel.org Signed-off-by: NJean Delvare <khali@linux-fr.org>
-
- 22 10月, 2010 1 次提交
-
-
由 Arnaud Patard (Rtp) 提交于
This patch modify the s3c2410 i2c driver behaviour to enable the i2c clock only when needed. I'm not sure if this has a big impact on power usage but at least it's fixing a bug with the uda1380 codec which needs to be hard reset'ed if the i2c clock is enabled before it's powered on (at least on h1940). Signed-off-by: NArnaud Patard <arnaud.patard@rtp-net.org> Signed-off-by: NBen Dooks <ben-linux@fluff.org>
-
- 18 10月, 2010 3 次提交
-
-
由 Seth Heasley 提交于
This patch updates the defines for Intel devices in include/linux/pci_ids.h, referenced in arch/x86/pci/irq.c and drivers/i2c/busses/i2c-i801.c, reflecting approved legal branding, and using fuller code-names for products under development. Acked-by: NJean Delvare <khali@linux-fr.org> Signed-off-by: NSeth Heasley <seth.heasley@intel.com> Signed-off-by: NJesse Barnes <jbarnes@virtuousgeek.org>
-
由 Marc Kleine-Budde 提交于
The i2c_imx_trx_complete() function is using wait_event_interruptible_timeout() to wait for the I2C controller to signal that it has completed an I2C bus operation. If the process that causes the I2C operation receives a signal, the wait will be interrupted, returning an error. It is better to let the I2C operation finished before handling the signal (i.e. returning into userspace). It is safe to use wait_event_timeout() instead, because the timeout will allow the process to exit if the I2C bus hangs. It's also better to allow the I2C operation to finish, because unacknowledged I2C operations can cause the I2C bus to hang. Signed-off-by: NMarc Kleine-Budde <mkl@pengutronix.de> Reviewed-by: NWolfram Sang <w.sang@pengutronix.de> Signed-off-by: NBen Dooks <ben-linux@fluff.org>
-
由 Jon Povey 提交于
This patch is an improvement to 4bba0fd8 which got to mainline a little early. Sudhakar Rajashekhara explains that at least OMAP-L138 requires MDR mode settings before DXR for correct behaviour, so load MDR first with STT cleared and later load again with STT set. Tested on DM355 connected to Techwell TW2836 and Wolfson WM8985 Signed-off-by: NJon Povey <jon.povey@racelogic.co.uk> Acked-by: NTroy Kisky <troy.kisky@boundarydevices.com> Tested-by: NSudhakar Rajashekhara <sudhakar.raj@ti.com> Acked-by: NKevin Hilman <khilman@deeprootsystems.com> Signed-off-by: NBen Dooks <ben-linux@fluff.org>
-
- 13 10月, 2010 1 次提交
-
-
由 Julia Lawall 提交于
The function has an unsigned return type, but returns a negative constant to indicate an error condition. The result of calling the function is always stored in a variable of type (signed) int, and thus unsigned can be dropped from the return type. A sematic match that finds this problem is as follows: (http://coccinelle.lip6.fr/) // <smpl> @exists@ identifier f; constant C; @@ unsigned f(...) { <+... * return -C; ...+> } // </smpl> Signed-off-by: NJulia Lawall <julia@diku.dk> Acked-by: NOlof Johansson <olof@lixom.net> Signed-off-by: NBenjamin Herrenschmidt <benh@kernel.crashing.org>
-