On Tuesday, November 16, 2010 9:22 PM, Marc Kleine-Budde wrote :
Except the following, I have updated/resubmitted already .
>> static int pch_can_rx_poll(struct napi_struct *napi, int quota)
>> {
>> struct net_device *ndev = napi->dev;
>> struct pch_can_priv *priv = netdev_priv(ndev);
>> - struct net_device_stats *stats = &(priv->ndev->stats);
>> - u32 dlc;
>> u32 int_stat;
>> int rcv_pkts = 0;
^^^^
>can be removed...if you remove the += below
Since there is "goto" code, "=0" is better.
>> - spin_unlock_irqrestore(&priv->msgif_reg_lock, flags);
>> + pch_can_rw_msg_obj(&priv->regs->ifregs[1].creq, tx_obj_no);
>Still we have the busy waiting in the TX path. Maybe you can move the
>waiting before accessing the if[1] and remove the busy waiting here.
I can't understand your saying.
For transmitting data, calling pch_can_rw_msg_obj is mandatory.
---
Thanks,
Tomoya MORINAGA
OKI SEMICONDUCTOR CO., LTD.
_______________________________________________
Socketcan-core mailing list
[email protected]
https://lists.berlios.de/mailman/listinfo/socketcan-core