Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit bec0204d authored by Maciej W. Rozycki's avatar Maciej W. Rozycki Committed by Ralf Baechle
Browse files

Actually route cPCI interrupts. Update inaccurate comments.

parent c6237645
Loading
Loading
Loading
Loading
+32 −9
Original line number Original line Diff line number Diff line
/*
 * Copyright (C) 2003, 2004  Ralf Baechle (ralf@linux-mips.org)
 * Copyright (C) 2005  MIPS Technologies, Inc.  All rights reserved.
 *	Author:	 Maciej W. Rozycki <macro@mips.com>
 *
 *  This program is free software; you can distribute it and/or modify it
 *  under the terms of the GNU General Public License (Version 2) as
 *  published by the Free Software Foundation.
 *
 *  This program is distributed in the hope it will be useful, but WITHOUT
 *  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
 *  FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
 *  for more details.
 *
 *  You should have received a copy of the GNU General Public License along
 *  with this program; if not, write to the Free Software Foundation, Inc.,
 *  59 Temple Place - Suite 330, Boston MA 02111-1307, USA.
 */
#include <linux/config.h>
#include <linux/config.h>
#include <linux/init.h>
#include <linux/init.h>
#include <linux/pci.h>
#include <linux/pci.h>

#include <asm/mips-boards/atlasint.h>
#include <asm/mips-boards/atlasint.h>


#define INTD		ATLASINT_INTD
#define PCIA		ATLASINT_PCIA
#define INTC		ATLASINT_INTC
#define PCIB		ATLASINT_PCIB
#define INTB		ATLASINT_INTB
#define PCIC		ATLASINT_PCIC
#define PCID		ATLASINT_PCID
#define INTA		ATLASINT_INTA
#define INTA		ATLASINT_INTA
#define SCSI		ATLASINT_SCSI
#define INTB		ATLASINT_INTB
#define ETH		ATLASINT_ETH
#define ETH		ATLASINT_ETH
#define INTC		ATLASINT_INTC
#define SCSI		ATLASINT_SCSI
#define INTD		ATLASINT_INTD


static char irq_tab[][5] __initdata = {
static char irq_tab[][5] __initdata = {
	/*      INTA    INTB    INTC    INTD */
	/*      INTA    INTB    INTC    INTD */
@@ -27,13 +50,13 @@ static char irq_tab[][5] __initdata = {
	{0,	0,	0,	0,	0 },	/* 12: Unused */
	{0,	0,	0,	0,	0 },	/* 12: Unused */
	{0,	0,	0,	0,	0 },	/* 13: Unused */
	{0,	0,	0,	0,	0 },	/* 13: Unused */
	{0,	0,	0,	0,	0 },	/* 14: Unused */
	{0,	0,	0,	0,	0 },	/* 14: Unused */
	{0,	0,	0,	0,	0 },	/* 15: Unused */
	{0,	PCIA,	PCIB,	PCIC,	PCID },	/* 15: cPCI (behind 21150) */
	{0,	SCSI,	0,	0,	0 },	/* 16: SYM53C810A SCSI */
	{0,	SCSI,	0,	0,	0 },	/* 16: SYM53C810A SCSI */
	{0,	0,	0,	0,	0 },	/* 17: Core */
	{0,	0,	0,	0,	0 },	/* 17: Core */
	{0,	INTA,	INTB,	INTC,	INTD },	/* 18: PCI Slot 1 */
	{0,	INTA,	INTB,	INTC,	INTD },	/* 18: PCI Slot */
	{0,	ETH,	0,	0,	0 },	/* 19: SAA9730 Ethernet */
	{0,	ETH,	0,	0,	0 },	/* 19: SAA9730 Eth. et al. */
	{0,	0,	0,	0,	0 },	/* 20: PCI Slot 3 */
	{0,	0,	0,	0,	0 },	/* 20: Unused */
	{0,	0,	0,	0,	0 }	/* 21: PCI Slot 4 */
	{0,	0,	0,	0,	0 }	/* 21: Unused */
};
};


int __init pcibios_map_irq(struct pci_dev *dev, u8 slot, u8 pin)
int __init pcibios_map_irq(struct pci_dev *dev, u8 slot, u8 pin)