Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 20 Dec 2011 08:45:01 +0100
From:      Stefan Bethke <stb@lassitu.de>
To:        Adrian Chadd <adrian@freebsd.org>
Cc:        Oleksandr Tymoshenko <gonzo@freebsd.org>, "freebsd-embedded@freebsd.org" <freebsd-embedded@freebsd.org>
Subject:   Re: Updated switch/glue patch?
Message-ID:  <1EC329E1-261E-478A-9EEB-A9FB02E893FD@lassitu.de>
In-Reply-To: <CAJ-Vmomyr92zyABxYiVR2BBQ%2B=QrxVDcBPA4k6-pDFrW9i499A@mail.gmail.com>
References:  <CAJ-Vmon8%2BOXQ4g752zZEB-O0BR0sFWO0QUvw--xp2jsBDkx6tQ@mail.gmail.com> <0F6CC18F-6973-42A2-AC03-F01BF59458AE@lassitu.de> <CAJ-Vmo=Y8pp4iFnw%2B1hcPae6QXFboz=a7puwgC1kVSZ3JwMgPQ@mail.gmail.com> <1100F70E-9DA9-4163-AC9A-423ECE5AA9A3@lassitu.de> <CAJ-VmonrnJ7cC6u2LsL9AGusz_%2BkSwY62Rr1__sg5U_NynJ1SQ@mail.gmail.com> <CAJ-Vmo=WSN1oLM=B2HqSHrWyOaOD9BSwwu8=1Wys0CLRJ_N-TA@mail.gmail.com> <C637C171-A1A2-4296-84FA-6DE97137DC42@lassitu.de> <CAJ-Vmon2boy7OCh_4O0MeCi0yCdZu0OYb5dxHCEK=-%2B46zBGtg@mail.gmail.com> <CAJ-Vmoku5eLEYi5_DXVxK=0=4Ewn2aGepv3YUw4ApuVh_7y2%2Bw@mail.gmail.com> <CAJ-VmonvpnaS1rAO%2BsDRh1E5WfsrZTYE297Kc96prhfKjrM89Q@mail.gmail.com> <CAJ-VmokQxQs2DUKL=ONyxnnS7Q28ytmwZJ_thqvc4SvMkmS=cQ@mail.gmail.com> <18CABB46-9B9A-41CB-8742-6723C5FF4D67@lassitu.de> <C0BF20FD-E30F-4E9C-A0FE-500BE4807B99@bsdimp.com> <CAJ-VmokgiQCEG4et3X=3o_MuCMkO9MqkKqa-fjdpEqQNucn=Lw@mail.gmail.com> <2CBD8651-E132-49DC-A082-37A8F5C626EA@bsdimp.com> <CAJ-VmomERMdiMA7bzTeQyLR5YXXiJVXyjAzJfH6O-VvexpCcmg@mail .gmail.com> <CAJ-VmomySBQeMqr8meQDpSLBC1%2By_%2BvMQsSt9OWFaCA67O8G=w@mail.gmail.com> <CAJ-Vmomyr92zyABxYiVR2BBQ%2B=QrxVDcBPA4k6-pDFrW9i499A@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help

Am 20.12.2011 um 05:34 schrieb Adrian Chadd:

> On 19 December 2011 19:53, Adrian Chadd <adrian@freebsd.org> wrote:
>> Hi,
>>=20
>> I've just dumped some more locking fixes into -HEAD. I've also =
changed
>> iicbb.c a little so it has a configurable udelay. Sorry Stefan, =
you're
>> going to have to rebase your iicbb changes. :)
>=20
> .. and I've just fixed a locking bug, and I've introduced a new iicbb
> hint which overrides udelay.
>=20
> Next is adding some more twiddles to enable/disable iicbb debugging,
> iicbus debugging and log transaction failures, ACK times, etc. The
> read transactions all seem to fail ACK btw, so I wonder if that's the
> majority of the CPU time being wasted..

iicbb.c::iicbb_ack() is broken, I believe.  Would you mind trying my =
version, which should be a drop-in replacement?  You'll have to adjust =
the iicdelay initialition in iicbb_attach(), but otherwise it should =
just work.

Note that in the existing iicbb_write(), the code wrongly waits for an =
ack on the last byte transferred, which is incorrect; on the last byte =
of the transfer, the ack bit is always 1.


Stefan=20

--=20
Stefan Bethke <stb@lassitu.de>   Fon +49 151 14070811






Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1EC329E1-261E-478A-9EEB-A9FB02E893FD>