123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566 |
- --- a/arch/arm/Kconfig
- +++ b/arch/arm/Kconfig
- @@ -399,6 +399,7 @@ config ARCH_GEMINI
- select CLKSRC_MMIO
- select CPU_FA526
- select GENERIC_CLOCKEVENTS
- + select MIGHT_HAVE_PCI
- help
- Support for the Cortina Systems Gemini family SoCs
-
- --- a/arch/arm/mach-gemini/include/mach/hardware.h
- +++ b/arch/arm/mach-gemini/include/mach/hardware.h
- @@ -68,4 +68,9 @@
- */
- #define IO_ADDRESS(x) IOMEM((((x) & 0xFFF00000) >> 4) | ((x) & 0x000FFFFF) | 0xF0000000)
-
- +/*
- + * PCI subsystem macros
- + */
- +#define pcibios_assign_all_busses() 1
- +
- #endif
- --- a/arch/arm/mach-gemini/include/mach/irqs.h
- +++ b/arch/arm/mach-gemini/include/mach/irqs.h
- @@ -43,11 +43,14 @@
-
- #define NORMAL_IRQ_NUM 32
-
- -#define GPIO_IRQ_BASE NORMAL_IRQ_NUM
- +#define PCI_IRQ_BASE NORMAL_IRQ_NUM
- +#define PCI_IRQ_NUM 4
- +
- +#define GPIO_IRQ_BASE (NORMAL_IRQ_NUM + PCI_IRQ_NUM)
- #define GPIO_IRQ_NUM (3 * 32)
-
- #define ARCH_TIMER_IRQ IRQ_TIMER2
-
- -#define NR_IRQS (NORMAL_IRQ_NUM + GPIO_IRQ_NUM)
- +#define NR_IRQS (NORMAL_IRQ_NUM + PCI_IRQ_NUM + GPIO_IRQ_NUM)
-
- #endif /* __MACH_IRQS_H__ */
- --- a/arch/arm/mach-gemini/Makefile
- +++ b/arch/arm/mach-gemini/Makefile
- @@ -6,6 +6,8 @@
-
- obj-y := irq.o mm.o time.o devices.o gpio.o idle.o reset.o
-
- +obj-$(CONFIG_PCI) += pci.o
- +
- # Board-specific support
- obj-$(CONFIG_MACH_NAS4220B) += board-nas4220b.o
- obj-$(CONFIG_MACH_RUT100) += board-rut1xx.o
- --- a/arch/arm/mach-gemini/mm.c
- +++ b/arch/arm/mach-gemini/mm.c
- @@ -59,6 +59,11 @@ static struct map_desc gemini_io_desc[]
- .length = SZ_512K,
- .type = MT_DEVICE,
- }, {
- + .virtual = (unsigned long)IO_ADDRESS(GEMINI_PCI_IO_BASE),
- + .pfn = __phys_to_pfn(GEMINI_PCI_IO_BASE),
- + .length = SZ_512K,
- + .type = MT_DEVICE,
- + }, {
- .virtual = (unsigned long)IO_ADDRESS(GEMINI_FLASH_CTRL_BASE),
- .pfn = __phys_to_pfn(GEMINI_FLASH_CTRL_BASE),
- .length = SZ_512K,
|