[#5762] bfin SocketCAN can't send and receive packets in trunk head

Document created by Aaronwu Employee on Sep 5, 2013
Version 1Show Document
  • View in full screen mode

[#5762] bfin SocketCAN can't send and receive packets in trunk head

Submitted By: Barry Song

Open Date

2009-12-09 03:28:51     Close Date

2009-12-09 03:38:28

Priority:

Medium     Assignee:

Barry Song

Status:

Closed     Fixed In Release:

N/A

Found In Release:

2010R1     Release:

Category:

Drivers     Board:

N/A

Processor:

BF537     Silicon Revision:

Is this bug repeatable?:

Yes     Resolution:

Assigned (Not Start)

Uboot version or rev.:

    Toolchain version or rev.:

gcc 4.3.4 (svn-3672)

App binary format:

N/A     

Summary: bfin SocketCAN can't send and receive packets in trunk head

Details:

 

In the newest trunk head, bfin SocketCAN can't work. Log:

root:/> modprobe bfin-can

bfin_can bfin_can.0: bfin_can device registered (reg_base=ffc02a00, rx_irq=22, tx_irq=23, err_irq=43, sclk=125000000)

root:/> ip link set can0 type can bitrate 125000

bfin_can bfin_can.0: setting can bitrate:125000 brp:125 prop_seg:3 phase_seg1:3 phase_seg2:1

root:/> ifconfig can0 up

root:/> cansend can0 123#AABBCCDD

root:/> ------------[ cut here ]------------

WARNING: at net/sched/sch_generic.c:261 _dev_watchdog+0x1fe/0x204()

NETDEV WATCHDOG: can0 (bfin_can): transmit queue 0 timed out

Modules linked in: bfin_can

Hardware Trace:

   0 Target : <0x0010c5a8> { _dump_stack + 0x0 }

     Source : <0x00010b44> { _warn_slowpath_common + 0x44 } CALL pcrel

   1 Target : <0x00010b44> { _warn_slowpath_common + 0x44 }

     Source : <0x0002bce8> { _print_modules + 0x4c } RTS

   2 Target : <0x0002bce2> { _print_modules + 0x46 }

     Source : <0x0010c730> { _printk + 0x14 } RTS

   3 Target : <0x0010c72c> { _printk + 0x10 }

     Source : <0x0001165e> { _vprintk + 0x172 } RTS

   4 Target : <0x0001163c> { _vprintk + 0x150 }

     Source : <0x00011726> { _vprintk + 0x23a } JUMP.S

   5 Target : <0x00011726> { _vprintk + 0x23a }

     Source : <0x00011272> { _release_console_sem + 0x1be } RTS

   6 Target : <0x0001126a> { _release_console_sem + 0x1b6 }

     Source : <0x0001125c> { _release_console_sem + 0x1a8 } IF !CC JUMP

   7 Target : <0x0001124c> { _release_console_sem + 0x198 }

     Source : <0x0001123e> { _release_console_sem + 0x18a } IF CC JUMP

   8 Target : <0x00011236> { _release_console_sem + 0x182 }

     Source : <0x00023ef2> { _up + 0x3e } RTS

   9 Target : <0x00023eec> { _up + 0x38 }

     Source : <0x00023ede> { _up + 0x2a } IF CC JUMP

  10 Target : <0x00023eb4> { _up + 0x0 }

     Source : <0x00011232> { _release_console_sem + 0x17e } CALL pcrel

  11 Target : <0x0001121e> { _release_console_sem + 0x16a }

     Source : <0x00011112> { _release_console_sem + 0x5e } IF !CC JUMP

  12 Target : <0x000110f6> { _release_console_sem + 0x42 }

     Source : <0x00011148> { _release_console_sem + 0x94 } IF CC JUMP

  13 Target : <0x0001113e> { _release_console_sem + 0x8a }

     Source : <0x00010e16> { __call_console_drivers + 0x66 } RTS

  14 Target : <0x00010e10> { __call_console_drivers + 0x60 }

     Source : <0x00010dea> { __call_console_drivers + 0x3a } IF !CC JUMP

  15 Target : <0x00010dda> { __call_console_drivers + 0x2a }

     Source : <0x00010dca> { __call_console_drivers + 0x1a } IF CC JUMP

Stack info:

SP: [0x00183d64] <0x00183d64> /* kernel dynamic memory */

FP: (0x00183dd8)

Memory from 0x00183d60 to 00184000

00183d60: 0016fdb0 [00010b44]<00010b48> 00183da8  00149374  0016fecc  00149374  00000105

00183d80:<000d23b6><00010b9a> 00177120  00000000  000004e2  0000003f  00000000  000004e2

00183da0: 02770030  00183da8 <0014938c> 00183dc0 <000d23b6> 00177898  00000000  0000003f

00183dc0: 028c5400  00183dcc  00000000  6e696662  6e61635f  00000000 (00000000)<0002f8a6>

00183de0: 0000003f  00161268 <00018954> 00000000 <0000ee84> 00175110  00161268 <00018982>

00183e00: 00161268 <00018992> 0017499c <000186d0> 0016add8  00183e44  000d21b8  00000100

00183e20: 0016b5e4  0000003f  00000000  00000000  00000040  0000000c  0016bbe4  0016b9e4

00183e40: 0016b7e4  00171b48  00171b48  0016acb8 <00015316> 00000001  0016accc  00182000

00183e60: 00000001  00000004  00000100  0000000a  00180ad8 <000317b0> 001780dc  00182008

00183e80: 00182008  00000006  00161268 <ffa00454> 0017bfe4  00182008  00182008  00000006

00183ea0: 00000000  00000000  00000000  00000000  000205a8  00000600 <ffa00d0a> ffc00014

00183ec0: ffa00120  0019cfe4  00000000  00000000  00000000  ffa00144  00008050  00000000

00183ee0: 00000000  027d4000  0280de6c  ffa00144 <ffa003a8> 00000006  02002020  028d11af

00183f00: ffa017f8  028d11a8  ffa017f6  00000013  00000000  00000008  00000000  00000008

00183f20: 00000000  00000000  00000000  00000000  00000000  00000000  00000000  00000000

00183f40: 00000000  00000000  00000000  00000000  00000000  00000000  00000005  00000000

00183f60: 02838078  00184000  00161268  ffa00120  00182008  00182008  00175110  00000000

00183f80: ffa00a84  ffa00120  0019cfe4  00000000  00000000  00000065  00000008  02780980

00183fa0: 0000ffff  0000ffff  ffa00a84  00000006  00000000  0019a614  0019cfe4  00184000

00183fc0:<001846f6> 0016c4ec  00161004  00000000  0019a614  0013488c  0019a614  00160d8c

00183fe0: 00000017  001842a0  0019cfe4 <0018f99c> 00000000  00000000  ffb00000  00000000

Return addresses in stack:

    address : <0x00010b44> { _warn_slowpath_common + 0x44 }

    address : <0x00010b48> { _warn_slowpath_common + 0x48 }

    address : <0x000d23b6> { _dev_watchdog + 0x1fe }

    address : <0x00010b9a> { _warn_slowpath_fmt + 0x16 }

    address : <0x0014938c> /* kernel dynamic memory */

    address : <0x000d23b6> { _dev_watchdog + 0x1fe }

   frame  1 : <0x0002f8a6> { _softlockup_tick + 0x9e }

    address : <0x00018954> { _run_local_timers + 0x8 }

    address : <0x0000ee84> { _scheduler_tick + 0x18 }

    address : <0x00018982> { _update_process_times + 0x1e }

    address : <0x00018992> { _update_process_times + 0x2e }

    address : <0x000186d0> { _run_timer_softirq + 0xe8 }

    address : <0x00015316> { ___do_softirq + 0x7a }

    address : <0x000317b0> { _handle_simple_irq + 0x6c }

    address : <0xffa00454> { _asm_do_IRQ + 0x60 }

    address : <0xffa00d0a> { __common_int_entry + 0x72 }

    address : <0xffa003a8> { _cpu_idle + 0x30 }

    address : <0x001846f6> { _start_kernel + 0x226 }

    address : <0x0018f99c> { _real_start + 0x28 }

---[ end trace c9aa8bc120446135 ]---

 

Not sure whether kernel upgrade or others destroyed it.

 

Follow-ups

 

--- Barry Song                                               2009-12-09 03:38:27

Ok now. Just a wrong report.

 

 

 

    Files

    Changes

    Commits

    Dependencies

    Duplicates

    Associations

    Tags

 

File Name     File Type     File Size     Posted By

No Files Were Found

Attachments

    Outcomes