Commit 9a0ad9e9 authored by Yoichi Yuasa's avatar Yoichi Yuasa Committed by Ralf Baechle

[MIPS] vr41xx: add MACINT controls

This patch has added MACINT controls.
They are necessary for VR4133 ethernet driver.
Signed-off-by: default avatarYoichi Yuasa <yoichi_yuasa@tripeaks.co.jp>
Signed-off-by: default avatarRalf Baechle <ralf@linux-mips.org>
parent 6f284a2c
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
* *
* Copyright (C) 2001-2002 MontaVista Software Inc. * Copyright (C) 2001-2002 MontaVista Software Inc.
* Author: Yoichi Yuasa <yyuasa@mvista.com or source@mvista.com> * Author: Yoichi Yuasa <yyuasa@mvista.com or source@mvista.com>
* Copyright (C) 2003-2005 Yoichi Yuasa <yoichi_yuasa@tripeaks.co.jp> * Copyright (C) 2003-2006 Yoichi Yuasa <yoichi_yuasa@tripeaks.co.jp>
* *
* This program is free software; you can redistribute it and/or modify * This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by * it under the terms of the GNU General Public License as published by
...@@ -68,6 +68,7 @@ static unsigned char sysint2_assign[16] = { ...@@ -68,6 +68,7 @@ static unsigned char sysint2_assign[16] = {
#define MPIUINTREG 0x0e #define MPIUINTREG 0x0e
#define MAIUINTREG 0x10 #define MAIUINTREG 0x10
#define MKIUINTREG 0x12 #define MKIUINTREG 0x12
#define MMACINTREG 0x12
#define MGIUINTLREG 0x14 #define MGIUINTLREG 0x14
#define MDSIUINTREG 0x16 #define MDSIUINTREG 0x16
#define NMIREG 0x18 #define NMIREG 0x18
...@@ -241,6 +242,30 @@ void vr41xx_disable_kiuint(uint16_t mask) ...@@ -241,6 +242,30 @@ void vr41xx_disable_kiuint(uint16_t mask)
EXPORT_SYMBOL(vr41xx_disable_kiuint); EXPORT_SYMBOL(vr41xx_disable_kiuint);
void vr41xx_enable_macint(uint16_t mask)
{
struct irq_desc *desc = irq_desc + ETHERNET_IRQ;
unsigned long flags;
spin_lock_irqsave(&desc->lock, flags);
icu1_set(MMACINTREG, mask);
spin_unlock_irqrestore(&desc->lock, flags);
}
EXPORT_SYMBOL(vr41xx_enable_macint);
void vr41xx_disable_macint(uint16_t mask)
{
struct irq_desc *desc = irq_desc + ETHERNET_IRQ;
unsigned long flags;
spin_lock_irqsave(&desc->lock, flags);
icu1_clear(MMACINTREG, mask);
spin_unlock_irqrestore(&desc->lock, flags);
}
EXPORT_SYMBOL(vr41xx_disable_macint);
void vr41xx_enable_dsiuint(uint16_t mask) void vr41xx_enable_dsiuint(uint16_t mask)
{ {
struct irq_desc *desc = irq_desc + DSIU_IRQ; struct irq_desc *desc = irq_desc + DSIU_IRQ;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment