diff options
author | Thomas Gleixner <tglx@linutronix.de> | 2014-04-11 12:13:22 +0400 |
---|---|---|
committer | Marc Kleine-Budde <mkl@pengutronix.de> | 2014-04-25 00:09:01 +0400 |
commit | 939415973fdfb2c16a474e2575ba2581b828ccac (patch) | |
tree | b1103f78dc0d410d4a5129a147e7311a1e8da2ea /drivers/net/can/c_can/c_can.h | |
parent | 35bdafb576c5c0a06815e7a681571c3ab950ff7e (diff) | |
download | linux-939415973fdfb2c16a474e2575ba2581b828ccac.tar.xz |
can: c_can: Speed up tx buffer invalidation
It's suffcient to kill the TXIE bit in the message control register
even if the documentation of C and D CAN says that it's not allowed to
do that while MSGVAL is set. Reality tells a different story and this
change gives us another 2% of CPU back for not waiting on I/O.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Tested-by: Alexander Stein <alexander.stein@systec-electronic.com>
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
Diffstat (limited to 'drivers/net/can/c_can/c_can.h')
-rw-r--r-- | drivers/net/can/c_can/c_can.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/net/can/c_can/c_can.h b/drivers/net/can/c_can/c_can.h index a5f10a01e49f..e7de2b9f26bb 100644 --- a/drivers/net/can/c_can/c_can.h +++ b/drivers/net/can/c_can/c_can.h @@ -174,6 +174,7 @@ struct c_can_priv { struct net_device *dev; struct device *device; atomic_t tx_active; + unsigned long tx_dir; int last_status; u16 (*read_reg) (struct c_can_priv *priv, enum reg index); void (*write_reg) (struct c_can_priv *priv, enum reg index, u16 val); |