|
@@ -5,15 +5,32 @@
|
|
*
|
|
*
|
|
* Copyright (C) 2003 Lineo uSolutions, Inc.
|
|
* Copyright (C) 2003 Lineo uSolutions, Inc.
|
|
* Copyright (C) 2004 - 2006 Paul Mundt
|
|
* Copyright (C) 2004 - 2006 Paul Mundt
|
|
|
|
+ * Copyright (C) 2006 Nobuhiro Iwamatsu
|
|
*
|
|
*
|
|
* This file is subject to the terms and conditions of the GNU General Public
|
|
* This file is subject to the terms and conditions of the GNU General Public
|
|
* License. See the file "COPYING" in the main directory of this archive
|
|
* License. See the file "COPYING" in the main directory of this archive
|
|
* for more details.
|
|
* for more details.
|
|
*/
|
|
*/
|
|
#include <linux/pci.h>
|
|
#include <linux/pci.h>
|
|
|
|
+#include <linux/io.h>
|
|
#include "pci-sh4.h"
|
|
#include "pci-sh4.h"
|
|
-#include <asm/io.h>
|
|
|
|
|
|
|
|
|
|
+/* IDSEL [16][17][18][19][20][21][22][23][24][25][26][27][28][29][30][31] */
|
|
|
|
+static char sdk7780_irq_tab[4][16] __initdata = {
|
|
|
|
+ /* INTA */
|
|
|
|
+ { 65, 68, 67, 68, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 },
|
|
|
|
+ /* INTB */
|
|
|
|
+ { 66, 65, -1, 65, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 },
|
|
|
|
+ /* INTC */
|
|
|
|
+ { 67, 66, -1, 66, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 },
|
|
|
|
+ /* INTD */
|
|
|
|
+ { 68, 67, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 },
|
|
|
|
+};
|
|
|
|
+
|
|
|
|
+int __init pcibios_map_platform_irq(struct pci_dev *pdev, u8 slot, u8 pin)
|
|
|
|
+{
|
|
|
|
+ return sdk7780_irq_tab[pin-1][slot];
|
|
|
|
+}
|
|
int pci_fixup_pcic(struct pci_channel *chan)
|
|
int pci_fixup_pcic(struct pci_channel *chan)
|
|
{
|
|
{
|
|
/* Enable all interrupts, so we know what to fix */
|
|
/* Enable all interrupts, so we know what to fix */
|