[#5795] adxl through SPI is too sensitive on trunk head kernel
Submitted By: Mingquan Pan
Open Date
2009-12-28 03:25:36 Close Date
2010-01-18 23:11:19
Priority:
Medium Assignee:
Michael Hennerich
Status:
Closed Fixed In Release:
N/A
Found In Release:
2010R1 Release:
Category:
N/A Board:
N/A
Processor:
BF548 Silicon Revision:
Is this bug repeatable?:
Yes Resolution:
Under Debugging
Uboot version or rev.:
Toolchain version or rev.:
r09r1.1-2 4.1
App binary format:
N/A
Summary: adxl through SPI is too sensitive on trunk head kernel
Details:
adxl through SPI fails to be detected on trunk head kernel.
And the settings in ezkit.c looks the same as that in wiki doc.
Starting Kernel at = 2a4bac
Linux version 2.6.32.2-ADI-2010R1-pre-svn8081 (test@my-local-machine) (gcc version 4.1.2 (ADI svn)) #13 Mon Dec 28 16:23:30 CST 2009
register early platform devices
bootconsole [early_shadow0] enabled
bootconsole [early_BFuart1] enabled
early printk enabled on early_BFuart1
Board Memory: 64MB
Kernel Managed Memory: 64MB
Memory map:
fixedcode = 0x00000400-0x00000490
text = 0x00001000-0x001b7ee0
rodata = 0x001b7ee0-0x0025ac64
bss = 0x0025b000-0x0027314c
data = 0x0027314c-0x00290000
stack = 0x00290000-0x00292000
init = 0x00292000-0x00a3f000
available = 0x00a3f000-0x03e00000
DMA Zone = 0x03e00000-0x04000000
Hardware Trace Active and Enabled
Boot Mode: 1
Reset caused by Software reset
Blackfin support (C) 2004-2009 Analog Devices, Inc.
Compiled for ADSP-BF548 Rev 0.2
Blackfin Linux support by http://blackfin.uclinux.org/
Processor Speed: 525 MHz core clock and 131 MHz System Clock
NOMPU: setting up cplb tables
Instruction Cache Enabled for CPU0
External memory: cacheable in instruction cache
L2 SRAM : uncacheable in instruction cache
Data Cache Enabled for CPU0
External memory: cacheable (write-through) in data cache
L2 SRAM : uncacheable in data cache
Built 1 zonelists in Zone order, mobility grouping off. Total pages: 15748
Kernel command line: root=/dev/mtdblock0 rw earlyprintk=serial,uart1,57600 console=tty0 console=ttyBF1,57600 ip=10.100.4.50:10.100.4.174:192.168.0.1:255.2f
PID hash table entries: 256 (order: -2, 1024 bytes)
Dentry cache hash table entries: 8192 (order: 3, 32768 bytes)
Inode-cache hash table entries: 4096 (order: 2, 16384 bytes)
Memory available: 52428k/65536k RAM, (7860k init code, 1755k kernel code, 873k data, 2048k dma, 572k reserved)
Hierarchical RCU implementation.
NR_IRQS:263
Configuring Blackfin Priority Driven Interrupts
Console: colour dummy device 80x25
Linux version 2.6.32.2-ADI-2010R1-pre-svn8081 (test@my-local-machine) (gcc version 4.1.2 (ADI svn)) #13 Mon Dec 28 16:23:30 CST 2009
register early platform devices
bootconsole [early_shadow0] enabled
bootconsole [early_BFuart1] enabled
early printk enabled on early_BFuart1
Board Memory: 64MB
Kernel Managed Memory: 64MB
Memory map:
fixedcode = 0x00000400-0x00000490
text = 0x00001000-0x001b7ee0
rodata = 0x001b7ee0-0x0025ac64
bss = 0x0025b000-0x0027314c
data = 0x0027314c-0x00290000
stack = 0x00290000-0x00292000
init = 0x00292000-0x00a3f000
available = 0x00a3f000-0x03e00000
DMA Zone = 0x03e00000-0x04000000
Hardware Trace Active and Enabled
Boot Mode: 1
Reset caused by Software reset
Blackfin support (C) 2004-2009 Analog Devices, Inc.
Compiled for ADSP-BF548 Rev 0.2
Blackfin Linux support by http://blackfin.uclinux.org/
Processor Speed: 525 MHz core clock and 131 MHz System Clock
NOMPU: setting up cplb tables
Instruction Cache Enabled for CPU0
External memory: cacheable in instruction cache
L2 SRAM : uncacheable in instruction cache
Data Cache Enabled for CPU0
External memory: cacheable (write-through) in data cache
L2 SRAM : uncacheable in data cache
Built 1 zonelists in Zone order, mobility grouping off. Total pages: 15748
Kernel command line: root=/dev/mtdblock0 rw earlyprintk=serial,uart1,57600 console=tty0 console=ttyBF1,57600 ip=10.100.4.50:10.100.4.174:192.168.0.1:255.2f
PID hash table entries: 256 (order: -2, 1024 bytes)
Dentry cache hash table entries: 8192 (order: 3, 32768 bytes)
Inode-cache hash table entries: 4096 (order: 2, 16384 bytes)
Memory available: 52428k/65536k RAM, (7860k init code, 1755k kernel code, 873k data, 2048k dma, 572k reserved)
Hierarchical RCU implementation.
NR_IRQS:263
Configuring Blackfin Priority Driven Interrupts
Console: colour dummy device 80x25
console [tty0] enabled
console [ttyBF1] enabled, bootconsole disabled
console [ttyBF1] enabled, bootconsole disabled
Calibrating delay loop... 1046.52 BogoMIPS (lpj=2093056)
Mount-cache hash table entries: 512
Blackfin Scratchpad data SRAM: 4 KB
Blackfin L1 Data A SRAM: 16 KB (16 KB free)
Blackfin L1 Data B SRAM: 16 KB (16 KB free)
Blackfin L1 Instruction SRAM: 48 KB (42 KB free)
Blackfin L2 SRAM: 128 KB (128 KB free)
NET: Registered protocol family 16
Blackfin DMA Controller
ezkit_init(): registering device resources
bio: create slab <bio-0> at 0
SCSI subsystem initialized
usbcore: registered new interface driver usbfs
usbcore: registered new interface driver hub
usbcore: registered new device driver usb
Switching to clocksource jiffies
musb_hdrc: version 6.0, musb-dma, host, debug=0
musb_hdrc: USB Host mode controller at ffc03c00 using DMA, IRQ 82
musb_hdrc musb_hdrc.0: MUSB HDRC host driver
musb_hdrc musb_hdrc.0: new USB bus registered, assigned bus number 1
usb usb1: configuration #1 chosen from 1 choice
hub 1-0:1.0: USB hub found
dma_alloc_init: dma_page @ 0x02062000 - 512 pages at 0x03e00000
hub 1-0:1.0: 1 port detected
NET: Registered protocol family 2
IP route cache hash table entries: 1024 (order: 0, 4096 bytes)
TCP established hash table entries: 2048 (order: 2, 16384 bytes)
TCP bind hash table entries: 2048 (order: 1, 8192 bytes)
TCP: Hash tables configured (established 2048 bind 2048)
TCP reno registered
NET: Registered protocol family 1
Slow work thread pool: Starting up
Slow work thread pool: Ready
msgmni has been set to 102
io scheduler noop registered
io scheduler anticipatory registered (default)
bf54x-lq043: FrameBuffer initializing...
Console: switching to colour frame buffer device 80x24
bfin-otp: initialized
bfin-uart: Blackfin serial driver
bfin-uart.1: ttyBF1 at MMIO 0xffc02000 (irq = 48) is a BFIN-UART
brd: module loaded
register bfin atapi driver
scsi0 : pata-bf54x
ata1: PATA max UDMA/66 irq 68
physmap platform flash device: 02000000 at 20000000
physmap-flash.0: Found 1 x16 devices at 0x0 in 16-bit bank
Intel/Sharp Extended Query Table at 0x010A
Intel/Sharp Extended Query Table at 0x010A
Intel/Sharp Extended Query Table at 0x010A
Intel/Sharp Extended Query Table at 0x010A
Intel/Sharp Extended Query Table at 0x010A
Using buffer write method
Using auto-unlock on power-up/resume
cfi_cmdset_0001: Erase suspend on write enabled
RedBoot partition parsing not available
Using physmap partition information
Creating 3 MTD partitions on "physmap-flash.0":
0x000000000000-0x000000040000 : "bootloader(nor)"
0x000000040000-0x000000440000 : "linux kernel(nor)"
0x000000440000-0x000001000000 : "file system(nor)"
BF5xx on-chip NAND FLash Controller Driver, Version 1.2 (c) 2007 Analog Devices, Inc.
bf5xx-nand bf5xx-nand.0: page_size=256, data_width=8, wr_dly=3, rd_dly=3
NAND device: Manufacturer ID: 0x20, Chip ID: 0xda (ST Micro NAND 256MiB 3,3V 8-bit)
Creating 2 MTD partitions on "NAND 256MiB 3,3V 8-bit":
0x000000000000-0x000000400000 : "linux kernel(nand)"
0x000000400000-0x000010000000 : "file system(nand)"
m25p80 spi0.1: m25p16 (2048 Kbytes)
Creating 2 MTD partitions on "m25p80":
0x000000000000-0x000000040000 : "bootloader(spi)"
ata1.00: ATA-7: FUJITSU MHW2040AT, 0000000B, max UDMA/100
ata1.00: 78140160 sectors, multi 16: LBA
0x000000040000-0x000000200000 : "linux kernel(spi)"
bfin-spi bfin-spi.0: Blackfin on-chip SPI Controller Driver, Version 1.0, regs_base@ffc00500, dma channel@4
bfin-spi bfin-spi.1: Blackfin on-chip SPI Controller Driver, Version 1.0, regs_base@ffc02300, dma channel@5
ata1.00: configured for UDMA/66
blk_queue_max_hw_segments: set to minimum 1
scsi 0:0:0:0: Direct-Access ATA FUJITSU MHW2040A 0000 PQ: 0 ANSI: 5
smsc911x: Driver version 2008-10-21.
smsc911x-mdio: probed
sd 0:0:0:0: [sda] 78140160 512-byte logical blocks: (40.0 GB/37.2 GiB)
eth0: attached PHY driver [Generic PHY] (mii_bus:phy_addr=0:01, irq=-1)
net eth0: MAC Address: 00:e0:22:fe:bd:b8
sd 0:0:0:0: [sda] Write Protect is off
sd 0:0:0:0: [sda] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
Initializing USB Mass Storage driver...
usbcore: registered new interface driver usb-storage
sda:
USB Mass Storage support registered.
input: bf54x-keys as /devices/platform/bf54x-keys/input/input0
adxl34x spi1.2: Failed to probe ADXL34x accelerometer
rtc-bfin rtc-bfin: rtc core: registered rtc-bfin as rtc0
i2c /dev entries driver
i2c-bfin-twi i2c-bfin-twi.0: Blackfin BF5xx on-chip I2C TWI Contoller, regs_base@ffc00700
i2c-bfin-twi i2c-bfin-twi.1: Blackfin BF5xx on-chip I2C TWI Contoller, regs_base@ffc02200
bfin-wdt: initialized: timeout=20 sec (nowayout=0)
bfin-sdh bfin-sdh.0: unable to request DMA channel
bfin-sdh: probe of bfin-sdh.0 failed with error -16
usbcore: registered new interface driver usbhid
usbhid: v2.6:USB HID core driver
Advanced Linux Sound Architecture Driver Version 1.0.21.
dma rx:0 tx:1, err irq:10, regs:ffc00800
AD1980 SoC Audio Codec
asoc: AC97 <-> bf5xx-ac97 mapping ok
ALSA device list:
#0: bf5xx-board (AD1980)
TCP cubic registered
NET: Registered protocol family 17
rtc-bfin rtc-bfin: setting system clock to 1970-01-01 13:28:32 UTC (48512)
sda1 sda2
sd 0:0:0:0: [sda] Attached SCSI disk
net eth0: SMSC911x/921x identified at 0x24000000, IRQ: 175
IP-Config: Gateway not on directly connected network.
Freeing unused kernel memory: 7860k freed
_____________________________________
a8888b. / Welcome to the uClinux distribution \
d888888b. / _ _ \
8P"YP"Y88 / | | |_| __ __ (TM) |
8|o||o|88 _____/ | | _ ____ _ _ \ \/ / |
8' .88 \ | | | | _ \| | | | \ / |
8`._.' Y8. \ | |__ | | | | | |_| | / \ |
d/ `8b. \ \____||_|_| |_|\____|/_/\_\ |
dP . Y8b. \ For embedded processors including |
d8:' " `::88b \ the Analog Devices Blackfin /
d8" 'Y88b \___________________________________/
:8P ' :888
8a. : _a88P For further information, check out:
._/"Yaa_: .| 88P| - http://blackfin.uclinux.org/
\ YP" `| 8P `. - http://docs.blackfin.uclinux.org/
/ \.___.d| .' - http://www.uclinux.org/
`--..__)8888P`._.' jgs/a:f - http://www.analog.com/blackfin
Have a lot of fun...
BusyBox v1.15.3 (2009-12-28 12:48:20 CST) hush - the humble shell
root:/> version
kernel: Linux release 2.6.32.2-ADI-2010R1-pre-svn8081, build #13 Mon Dec 28 16:23:30 CST 2009
toolchain: bfin-uclinux-gcc release gcc version 4.1.2 (ADI svn)
user-dist: release svn-9313, build #6 Mon Dec 28 16:22:28 CST 2009
Follow-ups
--- Mingquan Pan 2009-12-28 04:39:37
After jump on STAMP ENABLE and JP7, adxl spi can be detected now.
input: ADXL34x accelerometer as
/devices/platform/bfin-spi.1/spi1.2/input/input1
adxl34x spi1.2: ADXL346 accelerometer, irq 140
rtc-bfin rtc-bfin: rtc core: registered rtc-bfin as rtc0
But it is just too sensitive with this bf548-ezkit board. Just put it on desk,
event_test would roll out continuous detected event . And if CTRL-C in middle ,
then kernel would stuck for a while through it could be alive back after that.
vent: time 43993.344000, type 0 (Reset), code 0 (Reset), value 0
Event: time 43993.348000, type 3 (Absolute), code 1 (Y), value 6
Event: time 43993.348000, type 0 (Reset), code 0 (Reset), value 0
Event: time 43993.468000, type 3 (Absolute), code 0 (X), value 18
Event: time 43993.468000, type 3 (Absolute), code 1 (Y), value -4
Event: time 43993.468000, type 3 (Absolute), code 2 (Z), value 240
Event: time 43993.468000, type 0 (Reset), code 0 (Reset), value 0
Event: time 43993.592000, type 3 (Absolute), code 1 (Y), value -3
Event: time 43993.592000, type 3 (Absolute), code 2 (Z), value 232
Event: time 43993.592000, type 0 (Reset), code 0 (Reset), value 0
Event: time 43993.592000, type 3 (Absolute), code 1 (Y), value -2
Event: time 43993.592000, type 0 (Reset), code 0 (Reset), value 0
Event: time 43993.712000, type 3 (Absolute), code 0 (X), value 0
Event: time 43993.712000, type 3 (Absolute), code 1 (Y), value 14
Event: time 43993.712000, type 3 (Absolute), code 2 (Z), value 210
Event: time 43993.712000, type 0 (Reset), code 0 (Reset), value 0
Event: time 43993.836000, type 3 (Absolute), code 1 (Y), value 0
Event: time 43993.836000, type 3 (Absolute), code 2 (Z), value 218
CTRL-C here, kernel would stuck.
And then live and print like:
Event: time 43994.200000, type 0 (Reset), code 0 (Reset), value 0
^CINFO: task events/0:5 blocked for more than 120 seconds.
"echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this
message.
events/0 D ffa00928 0 5 2 0x00000000
Stack info:
SP: [0x02029e60] <0x02029e60> /* kernel dynamic memory */
FP: (0x02029ebc)
Memory from 0x02029e60 to 0202a000
02029e60:[00000000] 02019040 02019600 02a6e060 002758cc 00000002 02028000
02029e98
02029e80:<001b6d94> 00000000 00000000 02029e94 02028000 02028000
02a84bdc <001b7794>
02029ea0: 02a84bdc 02019040 00274630 ffffffff 0000003f 00000002 ffffffc0
(00000000)
02029ec0:<00130414> 02a84bc0 02a84be0 02a84be0 02019040 02028000
<0012f7d2> 02a84bc0
02029ee0: 02029f30 00130244 02a84bdc 00000009 00000000 00000000 00000000
000000f2
02029f00: 00000000 02029f08 0018fffc 000000d6 <0012f9be> 02a84bc0
02a84bc0 00000001
02029f20: 00000002 00000009 00000000 00000000 02001a40 02a83f80 02aa1d1c
<001302ec>
02029f40: 02a84bc0 02a84be8 00000001 00000000 00000006 02a83f80
<0001c8fc><0001c8fc>
02029f60: 02a84bcc 02001a40 00274630 02029fa4 02028000 00000000
<0001cdd6> 02001a40
02029f80: 00000000 <0001cdba> 02001a40 0001cd68 00000000 02001a48
0000ffff 02028000
02029fa0: 02028000 00000000 02019040 0001f564 02029fb0 02029fb0
<0001f3b2> 0201bf40
02029fc0: 02001a40 00000000 00000000 0001f358 00001490 00000000 00000000
02029fdc
02029fe0: 02029fdc <00001496> 00000000 00000000 00000000 00000000
ffffffff 00000006
Return addresses in stack:
address : <0x001b6d94> { _schedule + 0x168 }
address : <0x001b7794> { ___mutex_lock_slowpath + 0x64 }
frame 1 : <0x00130414> { _adxl34x_spi_read_block + 0x20 }
address : <0x0012f7d2> { _adxl34x_get_triple + 0x26 }
address : <0x0012f9be> { _adxl34x_service_ev_fifo + 0x12 }
address : <0x001302ec> { _adxl34x_work + 0xa8 }
address : <0x0001c8fc> { _run_workqueue + 0x6c }
address : <0x0001c8fc> { _run_workqueue + 0x6c }
address : <0x0001cdd6> { _worker_thread + 0x6e }
address : <0x0001cdba> { _worker_thread + 0x52 }
address : <0x0001f3b2> { _kthread + 0x5a }
address : <0x00001496> { _kernel_thread_helper + 0x6 }
INFO: task event_test:407 blocked for more than 120 seconds.
"echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this
message.
event_test D ffa00928 0 407 401 0x00000002
Stack info:
SP: [0x02cb5b94] <0x02cb5b94> /* kernel dynamic memory */
FP: (0x02cb5bf8)
Memory from 0x02cb5b90 to 02cb6000
02cb5b90:<0000b198>[00000000] 02049c00 0202a900 02a6e060 002758cc
00000002 02cb4000
02cb5bb0: 02cb5bcc <001b6d94> 02cb4000 fffff3ff 004c4b40 02cb4000
02cb4000 02cb5c50
02cb5bd0:<001b729c> 02cb4000 02cb4000 02cb5c90 7fffffff 00000000
00000002 00274630
02cb5bf0: 02049c00 00000000 (02cb5c24)<0000a972> 00275900 00000041
02cb5c20 02cb5c20
02cb5c10:<0000a94e> 00000fff <001b6f22> 02cb4000 7fffffff
(00000000) 00000002 0000001f
02cb5c30: 00000000 00000000 00000000 00000001 02049c00 0000d190 02cb5c94
02cb5c94
02cb5c50: 02c55870 <0001c616> 02a84bcc 02a84acc 024b5640 00000000
00000000 00000000
02cb5c70: 02c56f14 00000006 0015538e <0000a816> 02001a41 029f9d94
02001a40 0001c818
02cb5c90: 00000000 02cb5c48 02cb5c48 <0001cab6> 00000030 02c55870
<001b7664><0012fa4a>
02cb5cb0: 02a84bc0 02a84bdc 00000000 0200e120 00000000 <0002f248>
ffff5653 <0012fac2>
02cb5cd0: 02a84bc0 02a7c764 <001b7664> ffffefff 004c4b40
<0012c51a> 02a7c000 02a7c764
02cb5cf0: 02c55870 <001b7664><00034cc2><0012e6dc> 02a84acc
02a84ac0 02a84b04 <001b7664>
02cb5d10: 00000000 <0012e720><0012e726> 02091800 02a84b04
02c56f14 02c55870 <00042f52>
02cb5d30:<00042f76> 02c56f14 02c55870 00000010 00274630
<001b76f4><0012e794> 00000003
02cb5d50: 00000000 00000000 00274630 <000408fc> 024b5640 0000003f
ffffffc0 00000000
02cb5d70: 0201de00 0000000c 00000000 00000000 <0006d9d2> 02a6e060
<00011b08> 02083f40
02cb5d90: 00000001 00000000 <0000e7f2> 02a6e060 02a6e094 02c95040
<00011b4a> 0201de00
02cb5db0: 00274630 02cb4000 00000001 00000002 02cb4000 02cb4000 0201de00
02cb4000
02cb5dd0: 00000001 <00012a6c> 02049c00 00000001 02cb5dfc
<0000b132> 0202a92c 00275900
02cb5df0:<00012bac> 02aaf040 02cb5e60 00000002 00274630 02cb4000
02cb5f24 00274630
02cb5e10:<0001a188> 02cb5f24 <001b6da2> 00000000 02049c00
02a6e060 02ccedf8 <0000319c>
02cb5e30: 02cb5f24 02cb5e60 00000000 02049e34 02cb5ee0 00000004 0000fffe
02a84ac0
02cb5e50: 02cb5ee0 02cb5e6c 00000000 02091800 00000009 00000000 00000000
00000000
02cb5e70: 00000000 0001f564 02cb5e78 02cb5e78 02abf210 00000042 02ccebe8
<000426c2>
02cb5e90:<00042750> 024b5640 00000003 00000000 02cb5ef0 02ccf9d0
00000400 00000004
02cb5eb0: 02cb5ed0 02cb5ed0 00000002 02cb5ef0 00000000
<00042a1c><000429bc> 024b5640
02cb5ed0: 00000003 02ccf9d0 00000400 00000004 0027f370 00000006 19999999
02cb5ef0
02cb5ef0: 00000000 <00003b68> 02cb4000 00000003 00000002 ffffe000
ffffe000 00000000
02cb5f10: 0000000a <ffa008ae> 0a0a0a0a 00000004 000d6a60 02cc8512
00008000 00000000
02cb5f30: 00000000 02cb6000 02cc8512 02cc8512
<02cc83da><ffa00f6c> 02003025 02cca491
02cb5f50: 02cc93c1 02cca44a 02cc93be 00000000 00000000 00000000 00000000
00000000
02cb5f70: 00000000 00000000 00000000 00000000 00000000 00000000 00000000
00000000
02cb5f90: 00000000 00000000 00000000 00000000 00000000 00000000 00000000
02aa46dc
02cb5fb0: 02ccc8f0 02ccedec 02ccedf8 02ccfa10 02ccf9d0 00000000 02ccc8fb
02ccec74
02cb5fd0: 00000003 02ccc900 02ccc840 00000004 00000004 0a0a0a0a 00000400
02ccf9d0
02cb5ff0: fffffe00 00000003 00000003 00000006
Return addresses in stack:
address : <0x0000b198> { _pick_next_task_fair + 0x20 }
address : <0x001b6d94> { _schedule + 0x168 }
address : <0x001b729c> { _schedule_timeout + 0xf4 }
frame 1 : <0x0000a972> { _entity_tick + 0xe }
address : <0x0000a94e> { _check_preempt_tick + 0x82 }
address : <0x001b6f22> { _wait_for_common + 0x8a }
address : <0x0001c616> { _wait_on_cpu_work + 0x3e }
address : <0x0000a816> { _update_curr + 0x6e }
address : <0x0001cab6> { ___cancel_work_timer + 0x22 }
address : <0x001b7664> { _mutex_lock + 0xc }
address : <0x0012fa4a> { _adxl34x_disable + 0x3a }
address : <0x0002f248> { _rcu_check_callbacks + 0x34 }
address : <0x0012fac2> { _adxl34x_input_close + 0x16 }
address : <0x001b7664> { _mutex_lock + 0xc }
address : <0x0012c51a> { _input_close_device + 0x3a }
address : <0x001b7664> { _mutex_lock + 0xc }
address : <0x00034cc2> { _free_hot_cold_page + 0xfe }
address : <0x0012e6dc> { _evdev_close_device + 0x40 }
address : <0x001b7664> { _mutex_lock + 0xc }
address : <0x0012e720> { _evdev_release + 0x38 }
address : <0x0012e726> { _evdev_release + 0x3e }
address : <0x00042f52> { ___fput + 0x8e }
address : <0x00042f76> { ___fput + 0xb2 }
address : <0x001b76f4> { _mutex_lock_interruptible + 0xc }
address : <0x0012e794> { _evdev_flush + 0x4c }
address : <0x000408fc> { _filp_close + 0x38 }
address : <0x0006d9d2> { _set_mm_exe_file + 0x32 }
address : <0x00011b08> { _close_files + 0x90 }
address : <0x0000e7f2> { _mmput + 0x4a }
address : <0x00011b4a> { _put_files_struct + 0x3a }
address : <0x00012a6c> { _do_exit + 0x104 }
address : <0x0000b132> { _set_next_entity + 0x16 }
address : <0x00012bac> { _do_group_exit + 0x3c }
address : <0x0001a188> { _get_signal_to_deliver + 0x138 }
address : <0x001b6da2> { _schedule + 0x176 }
address : <0x0000319c> { _do_signal + 0x44 }
address : <0x000426c2> { _vfs_write + 0xc6 }
address : <0x00042750> { _vfs_read + 0x68 }
address : <0x00042a1c> { _sys_write + 0x30 }
address : <0x000429bc> { _sys_read + 0x30 }
address : <0x00003b68> { _do_notify_resume + 0x58 }
address : <0xffa008ae> { _system_call + 0xb6 }
address : <0x02cc83da> /* kernel dynamic memory */
address : <0xffa00f6c> { _evt_system_call + 0x64 }
--- Michael Hennerich 2010-01-04 04:21:48
I don't think that it's related to sensitivity.
The kernel is simply configured for the wrong interrupt on the SPI card.
Try this patch:
Index: arch/blackfin/mach-bf548/boards/ezkit.c
===================================================================
--- arch/blackfin/mach-bf548/boards/ezkit.c (revision 8107)
+++ arch/blackfin/mach-bf548/boards/ezkit.c (working copy)
@@ -1066,7 +1066,7 @@
{
.modalias = "adxl34x",
.platform_data = &adxl34x_info,
- .irq = IRQ_PC5,
+ .irq = IRQ_PG13,
.max_speed_hz = 5000000, /* max spi clock (SCK)
speed in HZ */
.bus_num = 1,
.chip_select = 2,
--- Michael Hennerich 2010-01-14 12:17:29
Grace,
IRQ_PG13 is not in the default PIN2_ASSIGN/PIN2_ASSIGN.
We could certainly change that but something else would then cause problems.
I wired the ADXL346 card I sent for an BF537-STAMP board.
I would therefore do all the ADXL345/6 testing on an BF537-STAMP board.
-Michael
--- Mingquan Pan 2010-01-18 23:11:05
After shorting the R204 on BF537-STAMP as Michael indicated, and increase the
value to:
.activity_threshold = 20,
.inactivity_threshold = 15,
(for we are high in the building which is different from his location)
The adxl through SPI can work ok now.
# Booting kernel from Legacy Image at 01000000 ...
Image Name: bf537-2.6.32.3-ADI-2010R1-pre-sv
Created: 2010-01-18 10:53:07 UTC
Image Type: Blackfin Linux Kernel Image (gzip compressed)
Data Size: 4732288 Bytes = 4.5 MB
Load Address: 00001000
Entry Point: 0019f870
Verifying Checksum ... OK
Uncompressing Kernel Image ... OK
Starting Kernel at = 0019f870
Linux version 2.6.32.3-ADI-2010R1-pre-svn8155 (test@my-local-machine) (gcc
version 4.1.2 (ADI svn)) #18 Mon Jan 18 18:52:52 CST 2010
register early platform devices
bootconsole [early_shadow0] enabled
bootconsole [early_BFuart0] enabled
early printk enabled on early_BFuart0
Limiting kernel memory to 56MB due to anomaly 05000263
Board Memory: 64MB
Kernel Managed Memory: 64MB
Memory map:
fixedcode = 0x00000400-0x00000490
text = 0x00001000-0x00111eb0
rodata = 0x00111eb0-0x00171cf4
bss = 0x00172000-0x00182c24
data = 0x00182c24-0x00194000
stack = 0x00192000-0x00194000
init = 0x00194000-0x008d7000
available = 0x008d7000-0x03800000
DMA Zone = 0x03f00000-0x04000000
Hardware Trace Active and Enabled
Boot Mode: 0
Blackfin support (C) 2004-2009 Analog Devices, Inc.
Compiled for ADSP-BF537 Rev 0.2
Blackfin Linux support by http://blackfin.uclinux.org/
Processor Speed: 500 MHz core clock and 125 MHz System Clock
NOMPU: setting up cplb tables
Instruction Cache Enabled for CPU0
External memory: cacheable in instruction cache
Data Cache Enabled for CPU0
External memory: cacheable (write-back) in data cache
Built 1 zonelists in Zone order, mobility grouping off. Total pages: 14224
Kernel command line: root=/dev/mtdblock0 rw clkin_hz=25000000
earlyprintk=serial,uart0,57600 console=ttyBF0,57600 panic=1
ip=10.100.4.50:10.100.4.174:10.1f
PID hash table entries: 256 (order: -2, 1024 bytes)
Dentry cache hash table entries: 8192 (order: 3, 32768 bytes)
Inode-cache hash table entries: 4096 (order: 2, 16384 bytes)
Memory available: 47724k/65536k RAM, (7436k init code, 1091k kernel code, 521k
data, 1024k dma, 7740k reserved)
Hierarchical RCU implementation.
NR_IRQS:98
Configuring Blackfin Priority Driven Interrupts
bfin-rtc: invalid date; resetting
console [ttyBF0] enabled, bootconsole disabled
console [ttyBF0] enabled, bootconsole disabled
Calibrating delay loop... 997.37 BogoMIPS (lpj=1994752)
Security Framework initialized
Mount-cache hash table entries: 512
Blackfin Scratchpad data SRAM: 4 KB
Blackfin L1 Data A SRAM: 16 KB (16 KB free)
Blackfin L1 Data B SRAM: 16 KB (16 KB free)
Blackfin L1 Instruction SRAM: 48 KB (36 KB free)
NET: Registered protocol family 16
Blackfin DMA Controller
stamp_init(): registering device resources
bio: create slab <bio-0> at 0
Switching to clocksource bfin_cs_cycles
NET: Registered protocol family 2
IP route cache hash table entries: 1024 (order: 0, 4096 bytes)
TCP established hash table entries: 2048 (order: 2, 16384 bytes)
TCP bind hash table entries: 2048 (order: 1, 8192 bytes)
TCP: Hash tables configured (established 2048 bind 2048)
TCP reno registered
NET: Registered protocol family 1
msgmni has been set to 93
io scheduler noop registered
io scheduler anticipatory registered (default)
io scheduler cfq registered
bfin-uart: Blackfin serial driver
bfin-uart.0: ttyBF0 at MMIO 0xffc00400 (irq = 18) is a BFIN-UART
brd: module loaded
bfin-spi bfin-spi.0: Blackfin on-chip SPI Controller Driver, Version 1.0,
regs_base@ffc00500, dma channel@7
bfin_mii_bus: probed
bfin_mac: attached PHY driver [SMSC LAN83C185] (mii_bus:phy_addr=0:01, irq=-1,
mdc_clk=2500000Hz(mdc_div=24)@sclk=125MHz)
bfin_mac bfin_mac.0: Blackfin on-chip Ethernet MAC driver, Version 1.1
input: ADXL34x accelerometer as
/devices/platform/bfin-spi.0/spi0.2/input/input0
adxl34x spi0.2: ADXL346 accelerometer, irq 56
rtc-bfin rtc-bfin: rtc core: registered rtc-bfin as rtc0
bfin-wdt: initialized: timeout=20 sec (nowayout=0)
TCP cubic registered
NET: Registered protocol family 17
2IP-Config: Complete:tting system clock to 1970-01-01 00:00:01 UTC (1)
device=eth0, addr=10.100.4.50, mask=255.255.255.0, gw=10.100.4.174,
host=bf537-stamp, domain=, nis-domain=(none),
bootserver=10.100.4.174, rootserver=10.100.4.174, rootpath=
Freeing unused kernel memory: 7436k freed
dma_alloc_init: dma_page @ 0x02942000 - 256 pages at 0x03f00000
_____________________________________
a8888b. / Welcome to the uClinux distribution \
d888888b. / _ _ \
8P"YP"Y88 / | | |_| __ __ (TM) |
8|o||o|88 _____/ | | _ ____ _ _ \ \/ / |
8' .88 \ | | | | _ \| | | | \ / |
8`._.' Y8. \ | |__ | | | | | |_| | / \ |
d/ `8b. \ \____||_|_| |_|\____|/_/\_\ |
dP . Y8b. \ For embedded processors including |
d8:' " `::88b \ the Analog Devices Blackfin /
d8" 'Y88b \___________________________________/
:8P ' :888
8a. : _a88P For further information, check out:
._/"Yaa_: .| 88P| - http://blackfin.uclinux.org/
\ YP" `| 8P `. - http://docs.blackfin.uclinux.org/
/ \.___.d| .' - http://www.uclinux.org/
`--..__)8888P`._.' jgs/a:f - http://www.analog.com/blackfin
Have a lot of fun...
BusyBox v1.15.3 (2010-01-18 18:33:20 CST) hush - the humble shell
root:/> PHY: 0:01 - Link is Up - 100/Full
root:/> event_test /dev/input/event0
Input driver version is 1.0.0
Input device ID: bus 0x1c vendor 0x0 product 0x15a version 0x0
Input device name: "ADXL34x accelerometer"
Supported events:
Event type 0 (Reset)
Event code 0 (Reset)
Event code 1 (Key)
Event code 3 (Absolute)
Event type 1 (Key)
Event type 3 (Absolute)
Event code 0 (X)
Value 0
Min -4096
Max 4096
Fuzz 3
Flat 3
Event code 1 (Y)
Value 0
Min -4096
Max 4096
Fuzz 3
Flat 3
Event code 2 (Z)
Value 0
Min -4096
Max 4096
Fuzz 3
Flat 3
Testing ... (interrupt to exit)
Event: time 12.005624, type 3 (Absolute), code 0 (X), value 7
Event: time 12.005639, type 3 (Absolute), code 1 (Y), value 30
Event: time 12.005644, type 3 (Absolute), code 2 (Z), value 239
Event: time 12.005650, type 0 (Reset), code 0 (Reset), value 0
Event: time 12.044681, type 3 (Absolute), code 0 (X), value -7
Event: time 12.044695, type 3 (Absolute), code 1 (Y), value 6
Event: time 12.044700, type 3 (Absolute), code 2 (Z), value 248
Event: time 12.044706, type 0 (Reset), code 0 (Reset), value 0
Event: time 12.083763, type 3 (Absolute), code 0 (X), value -17
Event: time 12.083778, type 3 (Absolute), code 1 (Y), value -6
Event: time 12.083783, type 3 (Absolute), code 2 (Z), value 206
Event: time 12.083789, type 0 (Reset), code 0 (Reset), value 0
Event: time 12.122832, type 3 (Absolute), code 0 (X), value -6
Event: time 12.122850, type 3 (Absolute), code 2 (Z), value 212
Event: time 12.122855, type 0 (Reset), code 0 (Reset), value 0
Event: time 12.161799, type 1 (Key), code 309 (BtnZ), value 1
Event: time 12.161814, type 0 (Reset), code 0 (Reset), value 0
Event: time 12.161817, type 1 (Key), code 309 (BtnZ), value 0
Event: time 12.161969, type 3 (Absolute), code 0 (X), value -8
Event: time 12.161976, type 3 (Absolute), code 1 (Y), value 11
Event: time 12.161981, type 3 (Absolute), code 2 (Z), value 250
Event: time 12.161987, type 0 (Reset), code 0 (Reset), value 0
Event: time 12.201006, type 3 (Absolute), code 0 (X), value 12
Event: time 12.201020, type 3 (Absolute), code 1 (Y), value 13
Event: time 12.201029, type 0 (Reset), code 0 (Reset), value 0
Event: time 12.240077, type 3 (Absolute), code 0 (X), value 6
Event: time 12.240092, type 3 (Absolute), code 1 (Y), value 11
Event: time 12.240097, type 3 (Absolute), code 2 (Z), value 213
So close.
Files
Changes
Commits
Dependencies
Duplicates
Associations
Tags
File Name File Type File Size Posted By
No Files Were Found