diff options
author | juhosg <juhosg@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2011-04-07 20:53:41 +0000 |
---|---|---|
committer | juhosg <juhosg@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2011-04-07 20:53:41 +0000 |
commit | b1f3482e708d8d7e2088e80144b09c4c51b07431 (patch) | |
tree | 4d3044f5ee960ce26897fdf29b98f94fd35fd179 /target/linux | |
parent | 004690a661a7b23a577b13f8d2d5802c4a03763a (diff) |
ar71xx: add DB120 board specific PCI initialization
Signed-off-by: Jaiganesh Narayanan <jnarayanan@atheros.com>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@26523 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'target/linux')
6 files changed, 63 insertions, 0 deletions
diff --git a/target/linux/ar71xx/config-2.6.37 b/target/linux/ar71xx/config-2.6.37 index d5a9413e37..826a864f39 100644 --- a/target/linux/ar71xx/config-2.6.37 +++ b/target/linux/ar71xx/config-2.6.37 @@ -6,6 +6,7 @@ CONFIG_AR71XX_DEV_AP91_PCI=y CONFIG_AR71XX_DEV_AP94_PCI=y CONFIG_AR71XX_DEV_AR913X_WMAC=y CONFIG_AR71XX_DEV_AR934X_WMAC=y +CONFIG_AR71XX_DEV_DB120_PCI=y CONFIG_AR71XX_DEV_DSA=y CONFIG_AR71XX_DEV_GPIO_BUTTONS=y CONFIG_AR71XX_DEV_LEDS_GPIO=y diff --git a/target/linux/ar71xx/files/arch/mips/ar71xx/Kconfig b/target/linux/ar71xx/files/arch/mips/ar71xx/Kconfig index c35e6cfd9b..ea377def3d 100644 --- a/target/linux/ar71xx/files/arch/mips/ar71xx/Kconfig +++ b/target/linux/ar71xx/files/arch/mips/ar71xx/Kconfig @@ -31,6 +31,7 @@ config AR71XX_MACH_AP96 config AR71XX_MACH_DB120 bool "Atheros DB120 board support" select AR71XX_DEV_AR934X_WMAC + select AR71XX_DEV_DB120_PCI if PCI select AR71XX_DEV_GPIO_BUTTONS select AR71XX_DEV_LEDS_GPIO select AR71XX_DEV_USB @@ -313,6 +314,10 @@ config AR71XX_DEV_AR913X_WMAC config AR71XX_DEV_AR934X_WMAC def_bool n +config AR71XX_DEV_DB120_PCI + select AR71XX_PCI_ATH9K_FIXUP + def_bool n + config AR71XX_DEV_DSA def_bool n diff --git a/target/linux/ar71xx/files/arch/mips/ar71xx/Makefile b/target/linux/ar71xx/files/arch/mips/ar71xx/Makefile index 988e521a1a..c9184b8e5e 100644 --- a/target/linux/ar71xx/files/arch/mips/ar71xx/Makefile +++ b/target/linux/ar71xx/files/arch/mips/ar71xx/Makefile @@ -17,6 +17,7 @@ obj-$(CONFIG_AR71XX_DEV_AP91_PCI) += dev-ap91-pci.o obj-$(CONFIG_AR71XX_DEV_AP94_PCI) += dev-ap94-pci.o obj-$(CONFIG_AR71XX_DEV_AR913X_WMAC) += dev-ar913x-wmac.o obj-$(CONFIG_AR71XX_DEV_AR934X_WMAC) += dev-ar934x-wmac.o +obj-$(CONFIG_AR71XX_DEV_DB120_PCI) += dev-db120-pci.o obj-$(CONFIG_AR71XX_DEV_DSA) += dev-dsa.o obj-$(CONFIG_AR71XX_DEV_GPIO_BUTTONS) += dev-gpio-buttons.o obj-$(CONFIG_AR71XX_DEV_LEDS_GPIO) += dev-leds-gpio.o diff --git a/target/linux/ar71xx/files/arch/mips/ar71xx/dev-db120-pci.c b/target/linux/ar71xx/files/arch/mips/ar71xx/dev-db120-pci.c new file mode 100644 index 0000000000..a488a816c4 --- /dev/null +++ b/target/linux/ar71xx/files/arch/mips/ar71xx/dev-db120-pci.c @@ -0,0 +1,31 @@ +/* + * Atheros db120 reference board PCI initialization + * + * Copyright (C) 2010-2011 Jaiganesh Narayanan <jnarayanan@atheros.com> + * + * Parts of this file are based on Atheros linux 2.6.31 BSP + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License version 2 as published + * by the Free Software Foundation. + */ + +#include <linux/pci.h> + +#include <asm/mach-ar71xx/ar71xx.h> +#include <asm/mach-ar71xx/pci.h> + +#include "dev-db120-pci.h" + +static struct ar71xx_pci_irq db120_pci_irqs[] __initdata = { + { + .slot = 0, + .pin = 1, + .irq = AR71XX_PCI_IRQ_DEV0, + } +}; + +void __init db120_pci_init(void) +{ + ar71xx_pci_init(ARRAY_SIZE(db120_pci_irqs), db120_pci_irqs); +} diff --git a/target/linux/ar71xx/files/arch/mips/ar71xx/dev-db120-pci.h b/target/linux/ar71xx/files/arch/mips/ar71xx/dev-db120-pci.h new file mode 100644 index 0000000000..3e9c26199f --- /dev/null +++ b/target/linux/ar71xx/files/arch/mips/ar71xx/dev-db120-pci.h @@ -0,0 +1,22 @@ +/* + * Atheros DB120 reference board PCI initialization + * + * Copyright (C) 2010-2011 Jaiganesh Narayanan <jnarayanan@atheros.com> + * + * Parts of this file are based on Atheros linux 2.6.31 BSP + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License version 2 as published + * by the Free Software Foundation. + */ + +#ifndef _AR71XX_DEV_DB120_PCI_H +#define _AR71XX_DEV_DB120_PCI_H + +#if defined(CONFIG_AR71XX_DEV_DB120_PCI) +void db120_pci_init(void); +#else +static inline void db120_pci_init(void) { } +#endif + +#endif /* _AR71XX_DEV_DB120_PCI_H */ diff --git a/target/linux/ar71xx/files/arch/mips/ar71xx/mach-db120.c b/target/linux/ar71xx/files/arch/mips/ar71xx/mach-db120.c index 3e4af40bdb..ad7a8937ed 100644 --- a/target/linux/ar71xx/files/arch/mips/ar71xx/mach-db120.c +++ b/target/linux/ar71xx/files/arch/mips/ar71xx/mach-db120.c @@ -20,6 +20,7 @@ #include "dev-leds-gpio.h" #include "dev-usb.h" #include "dev-ar934x-wmac.h" +#include "dev-db120-pci.h" #define DB120_GPIO_LED_USB 11 #define DB120_GPIO_LED_WLAN_5G 12 @@ -125,6 +126,8 @@ static void __init db120_setup(void) ar934x_add_device_wmac(art + DB120_CALDATA_OFFSET, art + DB120_WMAC_MAC_OFFSET); + + db120_pci_init(); } MIPS_MACHINE(AR71XX_MACH_DB120, "DB120", "Atheros DB120", db120_setup); |