linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Nikolaus Voss <n.voss@weinmann.de>
To: linux-arm-kernel@lists.infradead.org,
	linux-kernel@vger.kernel.org, linux-i2c@vger.kernel.org
Cc: nicolas.ferre@atmel.com, ben-linux@fluff.org, balbi@ti.com,
	h.feurstein@gmail.com, rmallon@gmail.com, adrian.yanes@aalto.fi,
	ludovic.desroches@atmel.com, carsten.behling@garz-fricke.com
Subject: [PATCH v11 0/4] AT91: replace old i2c-at91.c TWI driver
Date: Wed, 22 Aug 2012 08:59:20 +0200	[thread overview]
Message-ID: <cover.1345618760.git.n.voss@weinmann.de> (raw)

The old driver has two main deficencies:
i)  No repeated start (Sr) condiction is possible, this makes it unusable
    e.g. for most SMBus transfers.
ii) I/O was done with polling/busy waiting what caused over-/underruns
    even at light system loads and clock speeds.

The new driver overcomes these deficencies and in addition allows for
more than one TWI interface.

A remaining limitation is the fact, that only one repeated start is
possible (two concatenated messages). This limitation is imposed by
the hardware. However, this should not be a problem as all common
i2c-client communication does not rely on more than one repeated start.

Changes since v10:
 - fix for flags persistency suggested and tested by Carsten Behling
 - clk_lookup.dev_id entries for at91sam9x5
 - calc_twi_clock fix for sam9261 by Ludovic Desroches

Nikolaus Voss (4):
  drivers/i2c/busses/i2c-at91.c: remove old polling driver
  Replace clk_lookup.con_id with clk_lookup.dev_id entries for twi clk
  drivers/i2c/busses/i2c-at91.c: add new driver
  G45 TWI: remove open drain setting for twi function gpios

 arch/arm/mach-at91/at91rm9200.c            |    1 +
 arch/arm/mach-at91/at91rm9200_devices.c    |    9 +
 arch/arm/mach-at91/at91sam9260.c           |    1 +
 arch/arm/mach-at91/at91sam9261.c           |    1 +
 arch/arm/mach-at91/at91sam9261_devices.c   |    9 +
 arch/arm/mach-at91/at91sam9263.c           |    1 +
 arch/arm/mach-at91/at91sam9g45.c           |    2 +
 arch/arm/mach-at91/at91sam9g45_devices.c   |    6 -
 arch/arm/mach-at91/at91sam9rl.c            |    2 +
 arch/arm/mach-at91/at91sam9x5.c            |    3 +
 arch/arm/mach-at91/include/mach/at91_twi.h |   68 ----
 drivers/i2c/busses/Kconfig                 |   11 +-
 drivers/i2c/busses/i2c-at91.c              |  591 ++++++++++++++++++----------
 13 files changed, 418 insertions(+), 287 deletions(-)
 delete mode 100644 arch/arm/mach-at91/include/mach/at91_twi.h

-- 
1.7.9.5


             reply	other threads:[~2012-08-22  7:36 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-08-22  6:59 Nikolaus Voss [this message]
2011-11-08 10:49 ` [PATCH v11 1/4] drivers/i2c/busses/i2c-at91.c: remove old polling driver Nikolaus Voss
2011-11-08 10:49 ` [PATCH v11 3/4] drivers/i2c/busses/i2c-at91.c: add new driver Nikolaus Voss
     [not found]   ` <503B4919.6080306@atmel.com>
     [not found]     ` <BC0F374A1C27184AB96177CDFEC2F54225ECC330@EXMDB06.org.aalto.fi>
     [not found]       ` <503B623C.4030304@atmel.com>
     [not found]         ` <BC0F374A1C27184AB96177CDFEC2F54225ECD36E@EXMDB06.org.aalto.fi>
2012-08-27 13:32           ` Voss, Nikolaus
     [not found]             ` <503B7D6E.7090906@atmel.com>
2012-08-27 14:29               ` Voss, Nikolaus
     [not found]                 ` <504EF5BF.2090404@atmel.com>
2012-09-11 22:13                   ` Wolfram Sang
2011-11-08 11:09 ` [PATCH v11 2/4] Replace clk_lookup.con_id with clk_lookup.dev_id entries for twi clk Nikolaus Voss
2011-11-08 11:11 ` [PATCH v11 4/4] G45 TWI: remove open drain setting for twi function gpios Nikolaus Voss
2012-08-29  7:28 [PATCH v11 0/4] AT91: replace old i2c-at91.c TWI driver Nikolaus Voss
2012-09-12  7:59 ` Nicolas Ferre

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=cover.1345618760.git.n.voss@weinmann.de \
    --to=n.voss@weinmann.de \
    --cc=adrian.yanes@aalto.fi \
    --cc=balbi@ti.com \
    --cc=ben-linux@fluff.org \
    --cc=carsten.behling@garz-fricke.com \
    --cc=h.feurstein@gmail.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-i2c@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=ludovic.desroches@atmel.com \
    --cc=nicolas.ferre@atmel.com \
    --cc=rmallon@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).