From: bugzilla-daemon@bugs.ecos.sourceware.org
To: ecos-patches@ecos.sourceware.org
Subject: [Bug 1001397] I2C driver for Kinetic microcontrollers
Date: Sat, 02 Mar 2013 18:08:00 -0000 [thread overview]
Message-ID: <bug-1001397-104-3t0MUSqE1X@http.bugs.ecos.sourceware.org/> (raw)
In-Reply-To: <bug-1001397-104@http.bugs.ecos.sourceware.org/>
Please do not reply to this email, use the link below.
http://bugs.ecos.sourceware.org/show_bug.cgi?id=1001397
--- Comment #40 from Mike Jones <mjones@linear.com> ---
Created attachment 2112
--> http://bugs.ecos.sourceware.org/attachment.cgi?id=2112&action=edit
Control clock rate, fix race condition, bug fix
This patch contains new code for managing clock speed that was added by Ilija.
He can provide a ChangeLog for that if desired. I tested/modified his code and
fixed bugs. There was a race condition that caused the driver to lockup if bits
were not set/cleared at the right time, and a few other small things. I don't
remember the exact changes any more without a fresh diff against the original
patch, but I remember the 3 days on the bench with a scope hunting it down :-)
The original author can diff against this version if desired. The actual bug
fixes are just a few lines of critical code.
I have run this on three PMBus devices extensively including a several day 24
hour telemetry run, meaning constant traffic reading and writing. There were no
errors.
If anyone wants to do more testing, I suggest testing something faster than
PMBus which maxes out at 400Khz.
In the future this could be improved to add API to manage SMBus features such
as the timeout mechanism. I don't have time at the moment to do that.
I suggest the original author (or others( apply the patch and test their
existing application. If nobody has any problems, I feel this code is safe to
commit to CVS.
Some example code:
const cyg_uint32 i2c_bus_time = 10000;
cyg_i2c_device device = { \
.i2c_bus = &cyg_i2c0_bus, \
.i2c_address = address, \
.i2c_flags = 0, \
.i2c_delay = i2c_bus_time \
};
cyg_uint8 buffer[1];
cyg_uint8 input[1];
buffer[0] = command;
cyg_i2c_transaction_begin(&device);
if(!cyg_i2c_transaction_tx(&device, true, &buffer[0], 1, false)) {
diag_printf("Read Byte: fail TX.\n");
} else if(!cyg_i2c_transaction_rx(&device, true, &input[0], 1, true, true))
{
diag_printf("Read Byte: fail RX.\n");
}
cyg_i2c_transaction_end(&device);
return input[0];
--
You are receiving this mail because:
You are on the CC list for the bug.
next prev parent reply other threads:[~2013-03-02 18:08 UTC|newest]
Thread overview: 84+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <bug-1001397-104@http.bugs.ecos.sourceware.org/>
2011-12-01 15:48 ` bugzilla-daemon
2011-12-01 15:52 ` bugzilla-daemon
2011-12-01 15:58 ` bugzilla-daemon
2011-12-13 15:13 ` bugzilla-daemon
2011-12-23 10:41 ` bugzilla-daemon
2011-12-23 13:28 ` bugzilla-daemon
2011-12-23 14:14 ` bugzilla-daemon
2011-12-23 14:15 ` bugzilla-daemon
2011-12-24 9:22 ` bugzilla-daemon
2011-12-24 11:59 ` bugzilla-daemon
2011-12-26 7:32 ` bugzilla-daemon
2012-01-01 21:13 ` bugzilla-daemon
2012-01-10 15:40 ` bugzilla-daemon
2012-01-11 20:33 ` bugzilla-daemon
2012-01-16 14:31 ` bugzilla-daemon
2012-02-07 20:38 ` bugzilla-daemon
2012-02-08 9:12 ` bugzilla-daemon
2012-02-08 9:55 ` bugzilla-daemon
2012-02-11 0:16 ` bugzilla-daemon
2012-02-11 10:14 ` bugzilla-daemon
2012-02-12 19:11 ` bugzilla-daemon
2012-02-12 19:11 ` bugzilla-daemon
2012-02-23 16:11 ` bugzilla-daemon
2012-03-20 15:17 ` bugzilla-daemon
2012-03-31 17:17 ` bugzilla-daemon
2012-05-04 18:17 ` bugzilla-daemon
2012-12-21 20:46 ` bugzilla-daemon
2012-12-24 9:52 ` bugzilla-daemon
2012-12-24 16:53 ` bugzilla-daemon
2012-12-24 16:54 ` bugzilla-daemon
2012-12-24 16:56 ` bugzilla-daemon
2012-12-24 16:56 ` bugzilla-daemon
2012-12-24 17:14 ` bugzilla-daemon
2012-12-24 17:38 ` bugzilla-daemon
2012-12-25 21:32 ` bugzilla-daemon
2012-12-25 21:33 ` bugzilla-daemon
2012-12-25 23:38 ` bugzilla-daemon
2012-12-26 15:06 ` bugzilla-daemon
2012-12-29 14:24 ` bugzilla-daemon
2013-01-02 3:48 ` bugzilla-daemon
2013-01-02 7:07 ` bugzilla-daemon
2013-01-03 9:09 ` bugzilla-daemon
2013-01-03 9:12 ` bugzilla-daemon
2013-01-03 16:27 ` bugzilla-daemon
2013-01-06 5:47 ` bugzilla-daemon
2013-03-02 18:08 ` bugzilla-daemon [this message]
2013-03-02 18:09 ` bugzilla-daemon
2013-04-10 20:34 ` bugzilla-daemon
2013-04-10 20:54 ` bugzilla-daemon
2013-04-10 21:14 ` bugzilla-daemon
2013-04-10 21:15 ` bugzilla-daemon
2013-04-10 21:16 ` bugzilla-daemon
2013-04-10 21:17 ` [Bug 1001397] I2C driver for Kinetis microcontrollers bugzilla-daemon
2013-04-11 1:20 ` bugzilla-daemon
2013-04-11 1:25 ` bugzilla-daemon
2013-04-11 1:49 ` bugzilla-daemon
2013-04-13 23:21 ` bugzilla-daemon
2013-04-13 23:22 ` bugzilla-daemon
2013-04-15 16:34 ` bugzilla-daemon
2013-04-17 16:28 ` bugzilla-daemon
2013-04-17 17:43 ` bugzilla-daemon
2013-04-19 16:39 ` bugzilla-daemon
2013-04-20 20:09 ` bugzilla-daemon
2013-04-21 7:47 ` bugzilla-daemon
2013-04-21 14:09 ` bugzilla-daemon
2013-04-23 4:47 ` bugzilla-daemon
2013-04-23 7:01 ` bugzilla-daemon
2013-04-24 6:56 ` bugzilla-daemon
2013-04-24 9:08 ` bugzilla-daemon
2013-04-24 17:20 ` bugzilla-daemon
2013-04-24 18:46 ` bugzilla-daemon
2013-04-25 17:06 ` bugzilla-daemon
2013-04-26 12:54 ` bugzilla-daemon
2013-04-26 13:39 ` bugzilla-daemon
2013-04-26 17:13 ` bugzilla-daemon
2013-04-26 17:17 ` bugzilla-daemon
2013-04-30 11:40 ` bugzilla-daemon
2013-04-30 11:40 ` bugzilla-daemon
2013-04-30 19:03 ` bugzilla-daemon
2013-08-29 17:58 ` bugzilla-daemon
2013-08-29 18:00 ` bugzilla-daemon
2013-08-30 7:15 ` bugzilla-daemon
2013-08-30 7:18 ` bugzilla-daemon
2014-01-28 1:46 ` bugzilla-daemon
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=bug-1001397-104-3t0MUSqE1X@http.bugs.ecos.sourceware.org/ \
--to=bugzilla-daemon@bugs.ecos.sourceware.org \
--cc=ecos-patches@ecos.sourceware.org \
/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 read-only IMAP folder(s) and NNTP newsgroup(s).