summaryrefslogtreecommitdiffstats
path: root/drivers/net/can/janz-ican3.c
diff options
context:
space:
mode:
authorIra W. Snyder2012-09-12 00:58:15 +0200
committerMarc Kleine-Budde2012-09-21 12:54:52 +0200
commite21093ef6fb4cbecdf926102286dbe280ae965db (patch)
treea26a8e0d97c2c5839902c2fa691d4d456a3d254d /drivers/net/can/janz-ican3.c
parentnet: do not disable sg for packets requiring no checksum (diff)
downloadkernel-qcow2-linux-e21093ef6fb4cbecdf926102286dbe280ae965db.tar.gz
kernel-qcow2-linux-e21093ef6fb4cbecdf926102286dbe280ae965db.tar.xz
kernel-qcow2-linux-e21093ef6fb4cbecdf926102286dbe280ae965db.zip
can: janz-ican3: fix support for older hardware revisions
The Revision 1.0 Janz CMOD-IO Carrier Board does not have support for the reset registers. To support older hardware, the code is changed to use the hardware reset register on the Janz VMOD-ICAN3 hardware itself. Cc: stable <stable@vger.kernel.org> Signed-off-by: Ira W. Snyder <iws@ovro.caltech.edu> Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
Diffstat (limited to 'drivers/net/can/janz-ican3.c')
-rw-r--r--drivers/net/can/janz-ican3.c4
1 files changed, 1 insertions, 3 deletions
diff --git a/drivers/net/can/janz-ican3.c b/drivers/net/can/janz-ican3.c
index 98ee43819911..7edadee487ba 100644
--- a/drivers/net/can/janz-ican3.c
+++ b/drivers/net/can/janz-ican3.c
@@ -1391,7 +1391,6 @@ static irqreturn_t ican3_irq(int irq, void *dev_id)
*/
static int ican3_reset_module(struct ican3_dev *mod)
{
- u8 val = 1 << mod->num;
unsigned long start;
u8 runold, runnew;
@@ -1405,8 +1404,7 @@ static int ican3_reset_module(struct ican3_dev *mod)
runold = ioread8(mod->dpm + TARGET_RUNNING);
/* reset the module */
- iowrite8(val, &mod->ctrl->reset_assert);
- iowrite8(val, &mod->ctrl->reset_deassert);
+ iowrite8(0x00, &mod->dpmctrl->hwreset);
/* wait until the module has finished resetting and is running */
start = jiffies;