[#5275] i2c-bfin-twi timeout during multibyte block transfers
Submitted By: Michael Hennerich
Open Date
2009-06-18 05:56:32 Close Date
2010-02-22 10:36:07
Priority:
Medium Assignee:
Sonic Zhang
Status:
Closed Fixed In Release:
N/A
Found In Release:
2010R1 Release:
trunk
Category:
N/A Board:
EZKIT Lite
Processor:
BF548 Silicon Revision:
0.2
Is this bug repeatable?:
Yes Resolution:
Fixed
Uboot version or rev.:
trunk Toolchain version or rev.:
branch 2009R1
App binary format:
FDPIC
Summary: i2c-bfin-twi timeout during multibyte block transfers
Details:
1) Modify i2c-bfin-twi to print a message in case a timeout occurs
2) Set SCL to 400kHz
3) Compile bf548-ezkit kernel with adxl34x i2c driver, and add user df_input from DirectFB Examples
root:~> modprobe evdev
root:~> modprobe adxl34x
input: ADXL34x accelerometer as /devices/platform/i2c-bfin-twi.1/i2c-adapter/i2c-1/1-0053/input/input1
adxl34x 1-0053: ADXL345 accelerometer, irq 140
Turn off ADXL345 Autosleep:
root:/> cd sys/class/input/input1/device/
root:/sys/devices/platform/i2c-bfin-twi.1/i2c-adapter/i2c-1/1-0053> echo 0 > autosleep
Start df_input:
root:/> df_input &
~~~~~~~~~~~~~~~~~~~~~~~~ DirectFB 1.2.7 |~~~~~~~~~~~~~~~~~~~~~~~~
(c) 2001-2008 The world wide DirectFB Open Source Community
(c) 2000-2004 Convergence (integrated media) GmbH
----------------------------------------------------------------
(*) DirectFB/Core: Single Application Core. (2009-05-27 15:03)
[1] 401 df_input
root:/> (*) Direct/Thread: Started 'VT Switcher' (405) [CRITICAL OTHER/OTHER 0/0] <12288>...
(*) Direct/Thread: Started 'Keyboard Input' (406) [INPUT OTHER/OTHER 0/0] <12288>...
(*) DirectFB/Input: Keyboard 0.9 (directfb.org)
(*) Direct/Thread: Started 'Linux Input' (407) [INPUT OTHER/OTHER 0/0] <12288>...
(*) DirectFB/Input: bf54x-keys (1) 0.1 (directfb.org)
(*) Direct/Thread: Started 'Linux Input' (408) [INPUT OTHER/OTHER 0/0] <12288>...
(*) DirectFB/Input: ADXL34x accelerometer (2) 0.1 (directfb.org)
(*) DirectFB/Graphics: Generic Software Rasterizer 0.6 (directfb.org)
(*) DirectFB/Core/WM: Default 0.3 (directfb.org)
(*) FBDev/Surface: Allocated 480x272 24 bit RGB24 buffer (index 0) at offset 0 and pitch 1440.
(*) FBDev/Surface: Allocated 480x272 24 bit RGB24 buffer (index 0) at offset 0 and pitch 1440.
(*) Direct/Interface: Loaded 'FT2' implementation of 'IDirectFBFont'.
(*) Direct/Interface: Loaded 'PNG' implementation of 'IDirectFBImageProvider'.
root:/>TIMEOUT!
TIMEOUT!
TIMEOUT!
TIMEOUT!
From time to time you will notice a timeout.
It is kind of interesting that when using event_test this timeout is less likely to occur.
I guess df_input influences overall software timing, but is not related to the lost interrupt directly.
Follow-ups
--- Sonic Zhang 2009-09-13 22:32:55
Fixed. Enlarge i2c timeout in case schedule delays.
Files
Changes
Commits
Dependencies
Duplicates
Associations
Tags
File Name File Type File Size Posted By
No Files Were Found