public inbox for ecos-devel@sourceware.org
 help / color / mirror / Atom feed
* Re: i2c driver for at91sam7x
       [not found] <1226070563.4223.2.camel@localhost.localdomain>
@ 2008-11-07 16:22 ` Andrew Lunn
       [not found]   ` <e37cb5250811100228r502511f7qd34d94f5d83862ee@mail.gmail.com>
  0 siblings, 1 reply; 2+ messages in thread
From: Andrew Lunn @ 2008-11-07 16:22 UTC (permalink / raw)
  To: vibisreenivasan; +Cc: eCos Devel

On Fri, Nov 07, 2008 at 08:39:23PM +0530, vibisreenivasan wrote:
> hello,
> 	Is there any one working on i2c bus driver for at91sam7x.

I know eCosCentric have one, but you need to pay for that. 

Other people have mentioned writing i2c drivers as well.

However, you need to be careful. The i2c hardware is broken. The Linux
kernel marks it as such. See:

http://www.at91.com/samphpbb/viewtopic.php?t=4665&sid=1032a7cdc95b571dc784adb204d78d33

From what i understand, if you are doing transfers of 1 byte, it is
O.K, but multiple byte transfers can break.

Writing a GPIO based driver should be reasonably easy as far as i
understand and does not suffer from these problems.

        Andrew

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

* Re: i2c driver for at91sam7x
       [not found]   ` <e37cb5250811100228r502511f7qd34d94f5d83862ee@mail.gmail.com>
@ 2008-11-10 10:34     ` Tom Deconinck
  0 siblings, 0 replies; 2+ messages in thread
From: Tom Deconinck @ 2008-11-10 10:34 UTC (permalink / raw)
  To: ecos-devel

On Fri, Nov 7, 2008 at 5:14 PM, Andrew Lunn <andrew@lunn.ch> wrote:
>
> On Fri, Nov 07, 2008 at 08:39:23PM +0530, vibisreenivasan wrote:
> > hello,
> >       Is there any one working on i2c bus driver for at91sam7x.
>
> I know eCosCentric have one, but you need to pay for that.
>
> Other people have mentioned writing i2c drivers as well.
>
> However, you need to be careful. The i2c hardware is broken. The Linux
> kernel marks it as such. See:
>
> http://www.at91.com/samphpbb/viewtopic.php?t=4665&sid=1032a7cdc95b571dc784adb204d78d33
>
> From what i understand, if you are doing transfers of 1 byte, it is
> O.K, but multiple byte transfers can break.
>
> Writing a GPIO based driver should be reasonably easy as far as i
> understand and does not suffer from these problems.
>
>        Andrew

I have written such a driver some time ago, but I changed jobs since,
so I don't have access to the source anymore.
My experience: use GPIO and the eCos bit-banging interface, since the
hardware implementation is seriously broken.
The driver I wrote didn't work well using interrupts (latency problems
combined with a 'smart' hardware implementation that decides to
generate stop-conditions by itself, breaking multy-byte transfers,
etc.) It did work in polling mode.

Tom

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

end of thread, other threads:[~2008-11-10 10:34 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <1226070563.4223.2.camel@localhost.localdomain>
2008-11-07 16:22 ` i2c driver for at91sam7x Andrew Lunn
     [not found]   ` <e37cb5250811100228r502511f7qd34d94f5d83862ee@mail.gmail.com>
2008-11-10 10:34     ` Tom Deconinck

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 read-only IMAP folder(s) and NNTP newsgroup(s).