1
0
mirror of git://projects.qi-hardware.com/openwrt-xburst.git synced 2025-04-21 12:27:27 +03:00

bcm47xx: Add driver for the SSB Gigabit Ethernet core.

It doesn't work, yet, but let's commit what we have.


git-svn-id: svn://svn.openwrt.org/openwrt/trunk@10509 3c298f89-4303-0410-b956-a3cf2f4a3e73
This commit is contained in:
mb
2008-02-20 17:56:24 +00:00
parent bfc26bdfda
commit 371bb6f944
7 changed files with 1216 additions and 0 deletions

View File

@@ -1,5 +1,6 @@
/*
* Copyright (C) 2004 Florian Schirmer (jolt@tuxbox.org)
* Copyright (C) 2008 Michael Buesch <mb@bu3sch.de>
*
* 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 the
@@ -29,12 +30,18 @@
#include <linux/module.h>
#include <linux/smp.h>
#include <linux/types.h>
#include <linux/pci.h>
#include <linux/ssb/ssb.h>
#include <asm/cpu.h>
#include <asm/io.h>
#include <asm/irq.h>
#include <asm/irq_cpu.h>
extern struct ssb_bus ssb;
void plat_irq_dispatch(void)
{
u32 cause;
@@ -61,3 +68,19 @@ void __init arch_init_irq(void)
{
mips_cpu_irq_init();
}
int pcibios_map_irq(const struct pci_dev *dev, u8 slot, u8 pin)
{
int res;
res = ssb_pcibios_map_irq(dev, slot, pin);
if (res < 0) {
printk(KERN_ALERT "PCI: Failed to map IRQ of device %s\n",
pci_name((struct pci_dev *)dev));
return 0;
}
/* IRQ-0 and IRQ-1 are software interrupts. */
WARN_ON((res == 0) || (res == 1));
return res;
}