Gitweb:     
http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=03bbc0e6ba23700aea7fec801ac7e6c5a80f78f9
Commit:     03bbc0e6ba23700aea7fec801ac7e6c5a80f78f9
Parent:     d1eea50b0c6c998b713d824024c25c5001a5a8a4
Author:     Paul Mundt <[EMAIL PROTECTED]>
AuthorDate: Tue Jan 15 16:55:55 2008 +0900
Committer:  Paul Mundt <[EMAIL PROTECTED]>
CommitDate: Mon Jan 28 13:19:03 2008 +0900

    sh: r7785rp: Hook up the rest of the HL7785 FPGA IRQ vectors.
    
    Signed-off-by: Paul Mundt <[EMAIL PROTECTED]>
---
 arch/sh/boards/renesas/r7780rp/irq-r7785rp.c |   45 +++++++++++++++++++-------
 include/asm-sh/r7780rp.h                     |   14 +++++++-
 2 files changed, 45 insertions(+), 14 deletions(-)

diff --git a/arch/sh/boards/renesas/r7780rp/irq-r7785rp.c 
b/arch/sh/boards/renesas/r7780rp/irq-r7785rp.c
index bbf18af..af5ec74 100644
--- a/arch/sh/boards/renesas/r7780rp/irq-r7785rp.c
+++ b/arch/sh/boards/renesas/r7780rp/irq-r7785rp.c
@@ -2,7 +2,7 @@
  * Renesas Solutions Highlander R7785RP Support.
  *
  * Copyright (C) 2002  Atom Create Engineering Co., Ltd.
- * Copyright (C) 2006  Paul Mundt
+ * Copyright (C) 2006 - 2008  Paul Mundt
  * Copyright (C) 2007  Magnus Damm
  *
  * This file is subject to the terms and conditions of the GNU General Public
@@ -17,31 +17,52 @@
 enum {
        UNUSED = 0,
 
-       /* board specific interrupt sources */
-       AX88796,          /* Ethernet controller */
-       CF,               /* Compact Flash */
+       /* FPGA specific interrupt sources */
+       CF,             /* Compact Flash */
+       SMBUS,          /* SMBUS */
+       TP,             /* Touch panel */
+       RTC,            /* RTC Alarm */
+       TH_ALERT,       /* Temperature sensor */
+       AX88796,        /* Ethernet controller */
+
+       /* external bus connector */
+       EXT0, EXT1, EXT2, EXT3, EXT4, EXT5, EXT6, EXT7,
 };
 
 static struct intc_vect vectors[] __initdata = {
        INTC_IRQ(CF, IRQ_CF),
+       INTC_IRQ(SMBUS, IRQ_SMBUS),
+       INTC_IRQ(TP, IRQ_TP),
+       INTC_IRQ(RTC, IRQ_RTC),
+       INTC_IRQ(TH_ALERT, IRQ_TH_ALERT),
+
+       INTC_IRQ(EXT0, IRQ_EXT0), INTC_IRQ(EXT1, IRQ_EXT1),
+       INTC_IRQ(EXT2, IRQ_EXT2), INTC_IRQ(EXT3, IRQ_EXT3),
+
+       INTC_IRQ(EXT4, IRQ_EXT4), INTC_IRQ(EXT5, IRQ_EXT5),
+       INTC_IRQ(EXT6, IRQ_EXT6), INTC_IRQ(EXT7, IRQ_EXT7),
+
        INTC_IRQ(AX88796, IRQ_AX88796),
 };
 
 static struct intc_mask_reg mask_registers[] __initdata = {
        { 0xa4000010, 0, 16, /* IRLMCR1 */
-         { 0, 0, 0, 0, CF, AX88796, 0, 0,
-           0, 0, 0, 0, 0, 0, 0, 0 } },
+         { 0, 0, 0, 0, CF, AX88796, SMBUS, TP,
+           RTC, 0, TH_ALERT, 0, 0, 0, 0, 0 } },
+       { 0xa4000012, 0, 16, /* IRLMCR2 */
+         { 0, 0, 0, 0, 0, 0, 0, 0,
+           EXT7, EXT6, EXT5, EXT4, EXT3, EXT2, EXT1, EXT0 } },
 };
 
 static unsigned char irl2irq[HL_NR_IRL] __initdata = {
-       0, IRQ_CF, 0, 0,
-       0, 0, 0, 0,
-       0, 0, IRQ_AX88796, 0,
-       0, 0, 0,
+       0, IRQ_CF, IRQ_EXT4, IRQ_EXT5,
+       IRQ_EXT6, IRQ_EXT7, IRQ_SMBUS, IRQ_TP,
+       IRQ_RTC, IRQ_TH_ALERT, IRQ_AX88796, IRQ_EXT0,
+       IRQ_EXT1, IRQ_EXT2, IRQ_EXT3,
 };
 
 static DECLARE_INTC_DESC(intc_desc, "r7785rp", vectors,
-                        NULL, mask_registers, NULL, NULL);
+                        NULL, NULL, mask_registers, NULL, NULL);
 
 unsigned char * __init highlander_init_irq_r7785rp(void)
 {
@@ -58,7 +79,7 @@ unsigned char * __init highlander_init_irq_r7785rp(void)
        ctrl_outw(0x7060, PA_IRLPRC);   /* FPGA IRLC */
        ctrl_outw(0x0000, PA_IRLPRD);   /* FPGA IRLD */
        ctrl_outw(0x4321, PA_IRLPRE);   /* FPGA IRLE */
-       ctrl_outw(0x0000, PA_IRLPRF);   /* FPGA IRLF */
+       ctrl_outw(0xdcba, PA_IRLPRF);   /* FPGA IRLF */
 
        register_intc_controller(&intc_desc);
        return irl2irq;
diff --git a/include/asm-sh/r7780rp.h b/include/asm-sh/r7780rp.h
index de37f93..1c2d4d1 100644
--- a/include/asm-sh/r7780rp.h
+++ b/include/asm-sh/r7780rp.h
@@ -195,8 +195,18 @@
 #ifndef IRQ_PSW
 #define IRQ_PSW                        (HL_FPGA_IRQ_BASE + 2)
 #endif
-#define IRQ_EXT1               (HL_FPGA_IRQ_BASE + 3)
-#define IRQ_EXT4               (HL_FPGA_IRQ_BASE + 4)
+#define IRQ_EXT0               (HL_FPGA_IRQ_BASE + 3)
+#define IRQ_EXT1               (HL_FPGA_IRQ_BASE + 4)
+#define IRQ_EXT2               (HL_FPGA_IRQ_BASE + 5)
+#define IRQ_EXT3               (HL_FPGA_IRQ_BASE + 6)
+#define IRQ_EXT4               (HL_FPGA_IRQ_BASE + 7)
+#define IRQ_EXT5               (HL_FPGA_IRQ_BASE + 8)
+#define IRQ_EXT6               (HL_FPGA_IRQ_BASE + 9)
+#define IRQ_EXT7               (HL_FPGA_IRQ_BASE + 10)
+#define IRQ_SMBUS              (HL_FPGA_IRQ_BASE + 11)
+#define IRQ_TP                 (HL_FPGA_IRQ_BASE + 12)
+#define IRQ_RTC                        (HL_FPGA_IRQ_BASE + 13)
+#define IRQ_TH_ALERT           (HL_FPGA_IRQ_BASE + 14)
 
 void make_r7780rp_irq(unsigned int irq);
 
-
To unsubscribe from this list: send the line "unsubscribe git-commits-head" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to