linuxppc-dev.lists.ozlabs.org archive mirror
 help / color / mirror / Atom feed
* [RFC 00/11] i2c: add generic quirk infrastructure
@ 2015-01-09 17:21 Wolfram Sang
  2015-01-09 17:21 ` [RFC 01/11] i2c: add quirk structure to describe adapter flaws Wolfram Sang
                   ` (10 more replies)
  0 siblings, 11 replies; 26+ messages in thread
From: Wolfram Sang @ 2015-01-09 17:21 UTC (permalink / raw)
  To: linux-i2c
  Cc: linux-mips, Wolfram Sang, linux-kernel, Ludovic Desroches,
	Yingjoe Chen, linuxppc-dev, linux-arm-kernel

Recently, a number of submitted I2C master drivers could not fully handle all
I2C type transfers due to limited HW. So, they had to bail out with some errno
although the user supplied a valid I2C transfer. In order to centralize such
quirks, a central structure describing the quirks is introduced. The next patch
lets the core do the checks based on the information about the quirks. Then
existing drivers with quirks are converted.

This already has the advantage of avoiding code duplication and having
consistent error handling. Later, once the structure is tested and stable, we
can pass it over to the users, so they can actually check what the current HW
is capable of and react accordingly.

These patches are RFC and only build-tested so far. Yet, I wanted to show what
I am up to. I will do some testing on HW once I finished my task of fixing the
slave interface, hopefully after next week.

I'd really love to see this go into v3.20, but this will need assistance. I
really need testers, at least for the recent hardware. Other comments/reviews
are also appreciated.

Patches are based on v3.19-rc3 and the branch is here

git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux.git i2c/quirks

Thanks,

   Wolfram


Wolfram Sang (11):
  i2c: add quirk structure to describe adapter flaws
  i2c: add quirk checks to core
  i2c: at91: make use of the new infrastructure for quirks
  i2c: opal: make use of the new infrastructure for quirks
  i2c: qup: make use of the new infrastructure for quirks
  i2c: cpm: make use of the new infrastructure for quirks
  i2c: axxia: make use of the new infrastructure for quirks
  i2c: dln2: make use of the new infrastructure for quirks
  i2c: powermac: make use of the new infrastructure for quirks
  i2c: viperboard: make use of the new infrastructure for quirks
  i2c: pmcmsp: make use of the new infrastructure for quirks

 drivers/i2c/busses/i2c-at91.c       | 32 ++++++++--------------
 drivers/i2c/busses/i2c-axxia.c      | 11 ++++----
 drivers/i2c/busses/i2c-cpm.c        | 20 +++++++-------
 drivers/i2c/busses/i2c-dln2.c       | 12 ++++-----
 drivers/i2c/busses/i2c-opal.c       | 22 +++++++--------
 drivers/i2c/busses/i2c-pmcmsp.c     | 42 +++++++++++------------------
 drivers/i2c/busses/i2c-powermac.c   | 10 +++----
 drivers/i2c/busses/i2c-qup.c        | 21 +++++++--------
 drivers/i2c/busses/i2c-viperboard.c | 10 ++++---
 drivers/i2c/i2c-core.c              | 53 +++++++++++++++++++++++++++++++++++++
 include/linux/i2c.h                 | 35 ++++++++++++++++++++++++
 11 files changed, 167 insertions(+), 101 deletions(-)

-- 
2.1.3

^ permalink raw reply	[flat|nested] 26+ messages in thread

end of thread, other threads:[~2015-02-24 16:04 UTC | newest]

Thread overview: 26+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-01-09 17:21 [RFC 00/11] i2c: add generic quirk infrastructure Wolfram Sang
2015-01-09 17:21 ` [RFC 01/11] i2c: add quirk structure to describe adapter flaws Wolfram Sang
2015-01-16  5:50   ` Eddie Huang
2015-01-19 15:05     ` Wolfram Sang
2015-02-24 16:04       ` Wolfram Sang
2015-01-16  8:18   ` Yingjoe Chen
2015-01-19 15:00     ` Wolfram Sang
2015-01-09 17:21 ` [RFC 02/11] i2c: add quirk checks to core Wolfram Sang
2015-01-09 19:35   ` Sergei Shtylyov
2015-01-09 20:45     ` Wolfram Sang
2015-01-09 21:05       ` Sergei Shtylyov
2015-01-12  9:58   ` Ludovic Desroches
2015-01-12 10:13     ` Wolfram Sang
2015-01-12 12:08   ` Russell King - ARM Linux
2015-02-24 14:25     ` Wolfram Sang
2015-01-12 13:15   ` Matthias Brugger
2015-02-24 14:16     ` Wolfram Sang
2015-01-09 17:21 ` [RFC 03/11] i2c: at91: make use of the new infrastructure for quirks Wolfram Sang
2015-01-09 17:21 ` [RFC 04/11] i2c: opal: " Wolfram Sang
2015-01-09 17:21 ` [RFC 05/11] i2c: qup: " Wolfram Sang
2015-01-09 17:21 ` [RFC 06/11] i2c: cpm: " Wolfram Sang
2015-01-09 17:21 ` [RFC 07/11] i2c: axxia: " Wolfram Sang
2015-01-09 17:21 ` [RFC 08/11] i2c: dln2: " Wolfram Sang
2015-01-09 17:21 ` [RFC 09/11] i2c: powermac: " Wolfram Sang
2015-01-09 17:21 ` [RFC 10/11] i2c: viperboard: " Wolfram Sang
2015-01-09 17:21 ` [RFC 11/11] i2c: pmcmsp: " Wolfram Sang

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).