On Monday, November 15, 2010 11:21 PM, Wolfgang Grandegger wrote:

> 
> More comments to the lec handling below.
> 
> > + cf->data[6] = ioread32(&priv->regs->errc) & PCH_TEC;
> > + cf->data[7] = (ioread32(&priv->regs->errc) & PCH_REC) >> 8;
> 
> Could be handle with just *one* register access.

I will modify.

>   if (reg_stat & PCH_BUS_OFF ||
>     (reg_stat & PCH_LEC_ALL) != PCH_LEC_ALL) {
> 
> Your lec handling is still not correc, 

I will modify like above.

> I believe. The driver needs to
> write PCH_LEC_ALL to the "stat" register once in the initialization code
This is NOT true.
I heard even if CAN driver detects PCH_LEC_ALL, the driver doesn't have to
write PCH_LEC_ALL to LEC.
"PCH_LEC_ALL" means there is no error event.
In case error is occurred, lec value is updated automatically.


> and then after each error observed (lec != PCH_LEC_ALL). I still do not
> find such code. Could you show us the output of
> 
>   "# candump any,0:0,#FFFFFFFF"
> 
> when yo send CAN messages *without* a cable connected?.


[r...@localhost can-utils]# ./candump any,0:0,#FFFFFFFF
  can0  20000024  [8] 00 28 00 00 00 00 88 00   ERRORFRAME
  can0  20000024  [8] 00 28 00 00 00 00 88 00   ERRORFRAME
  can0  20000024  [8] 00 28 00 00 00 00 88 00   ERRORFRAME
  can0  20000024  [8] 00 28 00 00 00 00 88 00   ERRORFRAME
  can0  20000024  [8] 00 28 00 00 00 00 88 00   ERRORFRAME
  can0  20000024  [8] 00 28 00 00 00 00 88 00   ERRORFRAME
  can0  20000024  [8] 00 28 00 00 00 00 88 00   ERRORFRAME
  can0  20000024  [8] 00 28 00 00 00 00 88 00   ERRORFRAME
  can0  20000024  [8] 00 28 00 00 00 00 88 00   ERRORFRAME
  can0  20000024  [8] 00 28 00 00 00 00 88 00   ERRORFRAME
  can0  20000024  [8] 00 28 00 00 00 00 88 00   ERRORFRAME
  can0  20000024  [8] 00 28 00 00 00 00 88 00   ERRORFRAME
  can0  20000024  [8] 00 28 00 00 00 00 88 00   ERRORFRAME
  can0  20000024  [8] 00 28 00 00 00 00 88 00   ERRORFRAME
  can0  20000024  [8] 00 28 00 00 00 00 88 00   ERRORFRAME
  can0  20000024  [8] 00 28 00 00 00 00 88 00   ERRORFRAME
  can0  20000024  [8] 00 28 00 00 00 00 88 00   ERRORFRAME
  can0  20000024  [8] 00 28 00 00 00 00 88 00   ERRORFRAME
  can0  20000024  [8] 00 28 00 00 00 00 88 00   ERRORFRAME

......It seems the same line continues forever.

---
Thanks,

Tomoya MORINAGA
OKI SEMICONDUCTOR CO., LTD.
_______________________________________________
Socketcan-core mailing list
[email protected]
https://lists.berlios.de/mailman/listinfo/socketcan-core

Reply via email to