<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux-toradex.git/include/linux/i2c.h, branch v2.6.35-rc3</title>
<subtitle>Linux kernel for Apalis and Colibri modules</subtitle>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/'/>
<entry>
<title>Merge remote branch 'origin' into secretlab/next-devicetree</title>
<updated>2010-05-22T06:36:56+00:00</updated>
<author>
<name>Grant Likely</name>
<email>grant.likely@secretlab.ca</email>
</author>
<published>2010-05-22T06:36:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=cf9b59e9d3e008591d1f54830f570982bb307a0d'/>
<id>cf9b59e9d3e008591d1f54830f570982bb307a0d</id>
<content type='text'>
Merging in current state of Linus' tree to deal with merge conflicts and
build failures in vio.c after merge.

Conflicts:
	drivers/i2c/busses/i2c-cpm.c
	drivers/i2c/busses/i2c-mpc.c
	drivers/net/gianfar.c

Also fixed up one line in arch/powerpc/kernel/vio.c to use the
correct node pointer.

Signed-off-by: Grant Likely &lt;grant.likely@secretlab.ca&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Merging in current state of Linus' tree to deal with merge conflicts and
build failures in vio.c after merge.

Conflicts:
	drivers/i2c/busses/i2c-cpm.c
	drivers/i2c/busses/i2c-mpc.c
	drivers/net/gianfar.c

Also fixed up one line in arch/powerpc/kernel/vio.c to use the
correct node pointer.

Signed-off-by: Grant Likely &lt;grant.likely@secretlab.ca&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>i2c-core: Use per-adapter userspace device lists</title>
<updated>2010-05-04T09:09:28+00:00</updated>
<author>
<name>Jean Delvare</name>
<email>khali@linux-fr.org</email>
</author>
<published>2010-05-04T09:09:28+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=6629dcff19470a894ce294d0adb9cbab94ee1fb9'/>
<id>6629dcff19470a894ce294d0adb9cbab94ee1fb9</id>
<content type='text'>
Using a single list for all userspace devices leads to a dead lock
on multiplexed buses in some circumstances (mux chip instantiated
from userspace). This is solved by using a separate list for each
bus segment.

Signed-off-by: Jean Delvare &lt;khali@linux-fr.org&gt;
Acked-by: Michael Lawnick &lt;ml.lawnick@gmx.de&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Using a single list for all userspace devices leads to a dead lock
on multiplexed buses in some circumstances (mux chip instantiated
from userspace). This is solved by using a separate list for each
bus segment.

Signed-off-by: Jean Delvare &lt;khali@linux-fr.org&gt;
Acked-by: Michael Lawnick &lt;ml.lawnick@gmx.de&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>i2c/of: Allow device node to be passed via i2c_board_info</title>
<updated>2010-04-29T00:21:56+00:00</updated>
<author>
<name>Grant Likely</name>
<email>grant.likely@secretlab.ca</email>
</author>
<published>2010-04-13T23:12:28+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=d12d42f744f805a9ccc33cd76f04b237cd83ce56'/>
<id>d12d42f744f805a9ccc33cd76f04b237cd83ce56</id>
<content type='text'>
The struct device_node *of_node pointer is moving out of dev-&gt;archdata
and into the struct device proper.  of_i2c.c needs to set the of_node
pointer before the device is registered.  Since the i2c subsystem
doesn't allow 2 stage allocation and registration of i2c devices, the
of_node pointer needs to be passed via the i2c_board_info structure
so that it is set prior to registration.

This patch adds of_node to struct i2c_board_info (conditional on
CONFIG_OF), sets of_node in i2c_new_device(), and modifies of_i2c.c
to use the new parameter.  The calling of dev_archdata_set_node()
from of_i2c will be removed in a subsequent patch when of_node is
removed from archdata and all users are converted over.

Signed-off-by: Grant Likely &lt;grant.likely@secretlab.ca&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The struct device_node *of_node pointer is moving out of dev-&gt;archdata
and into the struct device proper.  of_i2c.c needs to set the of_node
pointer before the device is registered.  Since the i2c subsystem
doesn't allow 2 stage allocation and registration of i2c devices, the
of_node pointer needs to be passed via the i2c_board_info structure
so that it is set prior to registration.

This patch adds of_node to struct i2c_board_info (conditional on
CONFIG_OF), sets of_node in i2c_new_device(), and modifies of_i2c.c
to use the new parameter.  The calling of dev_archdata_set_node()
from of_i2c will be removed in a subsequent patch when of_node is
removed from archdata and all users are converted over.

Signed-off-by: Grant Likely &lt;grant.likely@secretlab.ca&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>i2c: Document the message size limit</title>
<updated>2010-03-02T11:23:49+00:00</updated>
<author>
<name>Zhangfei Gao</name>
<email>zgao6@marvell.com</email>
</author>
<published>2010-03-02T11:23:49+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=0c43ea544c1086fbbed5a6c99ea58eb64674ea8f'/>
<id>0c43ea544c1086fbbed5a6c99ea58eb64674ea8f</id>
<content type='text'>
i2c_master_send &amp; i2c_master_recv do not support more than 64 kb
transfer, since msg.len is u16.

Signed-off-by: Zhangfei Gao &lt;zgao6@marvell.com&gt;
Signed-off-by: Jean Delvare &lt;khali@linux-fr.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
i2c_master_send &amp; i2c_master_recv do not support more than 64 kb
transfer, since msg.len is u16.

Signed-off-by: Zhangfei Gao &lt;zgao6@marvell.com&gt;
Signed-off-by: Jean Delvare &lt;khali@linux-fr.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>i2c: Add SMBus alert support</title>
<updated>2010-03-02T11:23:42+00:00</updated>
<author>
<name>Jean Delvare</name>
<email>khali@linux-fr.org</email>
</author>
<published>2010-03-02T11:23:42+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=b5527a7766f0505dc72efe3cefe5e9dea826f611'/>
<id>b5527a7766f0505dc72efe3cefe5e9dea826f611</id>
<content type='text'>
SMBus alert support. The SMBus alert protocol allows several SMBus
slave devices to share a single interrupt pin on the SMBus master,
while still allowing the master to know which slave triggered the
interrupt.

This is based on preliminary work by David Brownell. The key
difference between David's implementation and mine is that his was
part of i2c-core, while mine is split into a separate, standalone
module named i2c-smbus. The i2c-smbus module is meant to include
support for all SMBus extensions to the I2C protocol in the future.

The benefit of this approach is a zero cost for I2C bus segments which
do not need SMBus alert support. Where David's implementation
increased the size of struct i2c_adapter by 7% (40 bytes on i386),
mine doesn't touch it. Where David's implementation added over 150
lines of code to i2c-core (+10%), mine doesn't touch it. The only
change that touches all the users of the i2c subsystem is a new
callback in struct i2c_driver (common to both implementations.) I seem
to remember Trent was worried about the footprint of David'd
implementation, hopefully mine addresses the issue.

Signed-off-by: Jean Delvare &lt;khali@linux-fr.org&gt;
Acked-by: Jonathan Cameron &lt;jic23@cam.ac.uk&gt;
Cc: David Brownell &lt;dbrownell@users.sourceforge.net&gt;
Cc: Trent Piepho &lt;tpiepho@freescale.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
SMBus alert support. The SMBus alert protocol allows several SMBus
slave devices to share a single interrupt pin on the SMBus master,
while still allowing the master to know which slave triggered the
interrupt.

This is based on preliminary work by David Brownell. The key
difference between David's implementation and mine is that his was
part of i2c-core, while mine is split into a separate, standalone
module named i2c-smbus. The i2c-smbus module is meant to include
support for all SMBus extensions to the I2C protocol in the future.

The benefit of this approach is a zero cost for I2C bus segments which
do not need SMBus alert support. Where David's implementation
increased the size of struct i2c_adapter by 7% (40 bytes on i386),
mine doesn't touch it. Where David's implementation added over 150
lines of code to i2c-core (+10%), mine doesn't touch it. The only
change that touches all the users of the i2c subsystem is a new
callback in struct i2c_driver (common to both implementations.) I seem
to remember Trent was worried about the footprint of David'd
implementation, hopefully mine addresses the issue.

Signed-off-by: Jean Delvare &lt;khali@linux-fr.org&gt;
Acked-by: Jonathan Cameron &lt;jic23@cam.ac.uk&gt;
Cc: David Brownell &lt;dbrownell@users.sourceforge.net&gt;
Cc: Trent Piepho &lt;tpiepho@freescale.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>i2c: Get rid of I2C_CLIENT_MODULE_PARM</title>
<updated>2009-12-14T20:17:29+00:00</updated>
<author>
<name>Jean Delvare</name>
<email>khali@linux-fr.org</email>
</author>
<published>2009-12-14T20:17:29+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=7f508118b1c1f9856a1c899a2bd4867a962b0225'/>
<id>7f508118b1c1f9856a1c899a2bd4867a962b0225</id>
<content type='text'>
There is no user left of I2C_CLIENT_MODULE_PARM, so we can finally
get rid of this ugly macro.

Signed-off-by: Jean Delvare &lt;khali@linux-fr.org&gt;
Tested-by: Wolfram Sang &lt;w.sang@pengutronix.de&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
There is no user left of I2C_CLIENT_MODULE_PARM, so we can finally
get rid of this ugly macro.

Signed-off-by: Jean Delvare &lt;khali@linux-fr.org&gt;
Tested-by: Wolfram Sang &lt;w.sang@pengutronix.de&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>i2c: Drop I2C_CLIENT_INSMOD_2 to 8</title>
<updated>2009-12-14T20:17:27+00:00</updated>
<author>
<name>Jean Delvare</name>
<email>khali@linux-fr.org</email>
</author>
<published>2009-12-14T20:17:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=e5e9f44c246fbafe723e579e9fe887677beb40e4'/>
<id>e5e9f44c246fbafe723e579e9fe887677beb40e4</id>
<content type='text'>
These macros simply declare an enum, so drivers might as well declare
it themselves. This puts an end to the arbitrary limit of 8 chip types
per i2c driver.

Signed-off-by: Jean Delvare &lt;khali@linux-fr.org&gt;
Tested-by: Wolfram Sang &lt;w.sang@pengutronix.de&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
These macros simply declare an enum, so drivers might as well declare
it themselves. This puts an end to the arbitrary limit of 8 chip types
per i2c driver.

Signed-off-by: Jean Delvare &lt;khali@linux-fr.org&gt;
Tested-by: Wolfram Sang &lt;w.sang@pengutronix.de&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>i2c: Drop I2C_CLIENT_INSMOD_1</title>
<updated>2009-12-14T20:17:26+00:00</updated>
<author>
<name>Jean Delvare</name>
<email>khali@linux-fr.org</email>
</author>
<published>2009-12-14T20:17:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=1f86df49ddfd0067cce941187d57b2fd2f749a9e'/>
<id>1f86df49ddfd0067cce941187d57b2fd2f749a9e</id>
<content type='text'>
This macro simply declares an enum, so drivers might as well declare
it themselves.

Signed-off-by: Jean Delvare &lt;khali@linux-fr.org&gt;
Tested-by: Wolfram Sang &lt;w.sang@pengutronix.de&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This macro simply declares an enum, so drivers might as well declare
it themselves.

Signed-off-by: Jean Delvare &lt;khali@linux-fr.org&gt;
Tested-by: Wolfram Sang &lt;w.sang@pengutronix.de&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>i2c: Get rid of struct i2c_client_address_data</title>
<updated>2009-12-14T20:17:25+00:00</updated>
<author>
<name>Jean Delvare</name>
<email>khali@linux-fr.org</email>
</author>
<published>2009-12-14T20:17:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=c3813d6af177fab19e322f3114b1f64fbcf08d71'/>
<id>c3813d6af177fab19e322f3114b1f64fbcf08d71</id>
<content type='text'>
Struct i2c_client_address_data only contains one field at this point,
which makes its usefulness questionable. Get rid of it and pass simple
address lists around instead.

Signed-off-by: Jean Delvare &lt;khali@linux-fr.org&gt;
Tested-by: Wolfram Sang &lt;w.sang@pengutronix.de&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Struct i2c_client_address_data only contains one field at this point,
which makes its usefulness questionable. Get rid of it and pass simple
address lists around instead.

Signed-off-by: Jean Delvare &lt;khali@linux-fr.org&gt;
Tested-by: Wolfram Sang &lt;w.sang@pengutronix.de&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>i2c: Drop the kind parameter from detect callbacks</title>
<updated>2009-12-14T20:17:23+00:00</updated>
<author>
<name>Jean Delvare</name>
<email>khali@linux-fr.org</email>
</author>
<published>2009-12-14T20:17:23+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=310ec79210d754afe51e2e4a983e846b60179abd'/>
<id>310ec79210d754afe51e2e4a983e846b60179abd</id>
<content type='text'>
The "kind" parameter always has value -1, and nobody is using it any
longer, so we can remove it.

Signed-off-by: Jean Delvare &lt;khali@linux-fr.org&gt;
Tested-by: Wolfram Sang &lt;w.sang@pengutronix.de&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The "kind" parameter always has value -1, and nobody is using it any
longer, so we can remove it.

Signed-off-by: Jean Delvare &lt;khali@linux-fr.org&gt;
Tested-by: Wolfram Sang &lt;w.sang@pengutronix.de&gt;
</pre>
</div>
</content>
</entry>
</feed>
