diff options
| author | Jonathan Herman <hermanjl@cs.unc.edu> | 2013-01-17 16:15:55 -0500 |
|---|---|---|
| committer | Jonathan Herman <hermanjl@cs.unc.edu> | 2013-01-17 16:15:55 -0500 |
| commit | 8dea78da5cee153b8af9c07a2745f6c55057fe12 (patch) | |
| tree | a8f4d49d63b1ecc92f2fddceba0655b2472c5bd9 /arch/arm/mach-ixp4xx/include | |
| parent | 406089d01562f1e2bf9f089fd7637009ebaad589 (diff) | |
Patched in Tegra support.
Diffstat (limited to 'arch/arm/mach-ixp4xx/include')
| -rw-r--r-- | arch/arm/mach-ixp4xx/include/mach/cpu.h | 5 | ||||
| -rw-r--r-- | arch/arm/mach-ixp4xx/include/mach/debug-macro.S | 6 | ||||
| -rw-r--r-- | arch/arm/mach-ixp4xx/include/mach/entry-macro.S | 6 | ||||
| -rw-r--r-- | arch/arm/mach-ixp4xx/include/mach/hardware.h | 2 | ||||
| -rw-r--r-- | arch/arm/mach-ixp4xx/include/mach/io.h | 26 | ||||
| -rw-r--r-- | arch/arm/mach-ixp4xx/include/mach/ixp46x_ts.h | 3 | ||||
| -rw-r--r-- | arch/arm/mach-ixp4xx/include/mach/ixp4xx-regs.h | 48 | ||||
| -rw-r--r-- | arch/arm/mach-ixp4xx/include/mach/platform.h | 4 | ||||
| -rw-r--r-- | arch/arm/mach-ixp4xx/include/mach/qmgr.h | 12 | ||||
| -rw-r--r-- | arch/arm/mach-ixp4xx/include/mach/udc.h | 2 | ||||
| -rw-r--r-- | arch/arm/mach-ixp4xx/include/mach/uncompress.h | 3 |
11 files changed, 75 insertions, 42 deletions
diff --git a/arch/arm/mach-ixp4xx/include/mach/cpu.h b/arch/arm/mach-ixp4xx/include/mach/cpu.h index ebc0ba31ce8..b2ef65db0e9 100644 --- a/arch/arm/mach-ixp4xx/include/mach/cpu.h +++ b/arch/arm/mach-ixp4xx/include/mach/cpu.h | |||
| @@ -14,7 +14,6 @@ | |||
| 14 | #ifndef __ASM_ARCH_CPU_H__ | 14 | #ifndef __ASM_ARCH_CPU_H__ |
| 15 | #define __ASM_ARCH_CPU_H__ | 15 | #define __ASM_ARCH_CPU_H__ |
| 16 | 16 | ||
| 17 | #include <linux/io.h> | ||
| 18 | #include <asm/cputype.h> | 17 | #include <asm/cputype.h> |
| 19 | 18 | ||
| 20 | /* Processor id value in CP15 Register 0 */ | 19 | /* Processor id value in CP15 Register 0 */ |
| @@ -38,7 +37,7 @@ | |||
| 38 | 37 | ||
| 39 | static inline u32 ixp4xx_read_feature_bits(void) | 38 | static inline u32 ixp4xx_read_feature_bits(void) |
| 40 | { | 39 | { |
| 41 | u32 val = ~__raw_readl(IXP4XX_EXP_CFG2); | 40 | u32 val = ~*IXP4XX_EXP_CFG2; |
| 42 | 41 | ||
| 43 | if (cpu_is_ixp42x_rev_a0()) | 42 | if (cpu_is_ixp42x_rev_a0()) |
| 44 | return IXP42X_FEATURE_MASK & ~(IXP4XX_FEATURE_RCOMP | | 43 | return IXP42X_FEATURE_MASK & ~(IXP4XX_FEATURE_RCOMP | |
| @@ -52,7 +51,7 @@ static inline u32 ixp4xx_read_feature_bits(void) | |||
| 52 | 51 | ||
| 53 | static inline void ixp4xx_write_feature_bits(u32 value) | 52 | static inline void ixp4xx_write_feature_bits(u32 value) |
| 54 | { | 53 | { |
| 55 | __raw_writel(~value, IXP4XX_EXP_CFG2); | 54 | *IXP4XX_EXP_CFG2 = ~value; |
| 56 | } | 55 | } |
| 57 | 56 | ||
| 58 | #endif /* _ASM_ARCH_CPU_H */ | 57 | #endif /* _ASM_ARCH_CPU_H */ |
diff --git a/arch/arm/mach-ixp4xx/include/mach/debug-macro.S b/arch/arm/mach-ixp4xx/include/mach/debug-macro.S index ff686cbc5df..b974a49c0af 100644 --- a/arch/arm/mach-ixp4xx/include/mach/debug-macro.S +++ b/arch/arm/mach-ixp4xx/include/mach/debug-macro.S | |||
| @@ -10,15 +10,15 @@ | |||
| 10 | * published by the Free Software Foundation. | 10 | * published by the Free Software Foundation. |
| 11 | */ | 11 | */ |
| 12 | 12 | ||
| 13 | .macro addruart, rp, rv, tmp | 13 | .macro addruart, rp, rv |
| 14 | #ifdef __ARMEB__ | 14 | #ifdef __ARMEB__ |
| 15 | mov \rp, #3 @ Uart regs are at off set of 3 if | 15 | mov \rp, #3 @ Uart regs are at off set of 3 if |
| 16 | @ byte writes used - Big Endian. | 16 | @ byte writes used - Big Endian. |
| 17 | #else | 17 | #else |
| 18 | mov \rp, #0 | 18 | mov \rp, #0 |
| 19 | #endif | 19 | #endif |
| 20 | orr \rv, \rp, #0xfe000000 @ virtual | 20 | orr \rv, \rp, #0xff000000 @ virtual |
| 21 | orr \rv, \rv, #0x00f00000 | 21 | orr \rv, \rv, #0x00b00000 |
| 22 | orr \rp, \rp, #0xc8000000 @ physical | 22 | orr \rp, \rp, #0xc8000000 @ physical |
| 23 | .endm | 23 | .endm |
| 24 | 24 | ||
diff --git a/arch/arm/mach-ixp4xx/include/mach/entry-macro.S b/arch/arm/mach-ixp4xx/include/mach/entry-macro.S index 79adf83e2c3..f2e14e94ed1 100644 --- a/arch/arm/mach-ixp4xx/include/mach/entry-macro.S +++ b/arch/arm/mach-ixp4xx/include/mach/entry-macro.S | |||
| @@ -9,9 +9,15 @@ | |||
| 9 | */ | 9 | */ |
| 10 | #include <mach/hardware.h> | 10 | #include <mach/hardware.h> |
| 11 | 11 | ||
| 12 | .macro disable_fiq | ||
| 13 | .endm | ||
| 14 | |||
| 12 | .macro get_irqnr_preamble, base, tmp | 15 | .macro get_irqnr_preamble, base, tmp |
| 13 | .endm | 16 | .endm |
| 14 | 17 | ||
| 18 | .macro arch_ret_to_user, tmp1, tmp2 | ||
| 19 | .endm | ||
| 20 | |||
| 15 | .macro get_irqnr_and_base, irqnr, irqstat, base, tmp | 21 | .macro get_irqnr_and_base, irqnr, irqstat, base, tmp |
| 16 | ldr \irqstat, =(IXP4XX_INTC_BASE_VIRT+IXP4XX_ICIP_OFFSET) | 22 | ldr \irqstat, =(IXP4XX_INTC_BASE_VIRT+IXP4XX_ICIP_OFFSET) |
| 17 | ldr \irqstat, [\irqstat] @ get interrupts | 23 | ldr \irqstat, [\irqstat] @ get interrupts |
diff --git a/arch/arm/mach-ixp4xx/include/mach/hardware.h b/arch/arm/mach-ixp4xx/include/mach/hardware.h index 034bb2a1b80..c30e7e923a7 100644 --- a/arch/arm/mach-ixp4xx/include/mach/hardware.h +++ b/arch/arm/mach-ixp4xx/include/mach/hardware.h | |||
| @@ -23,6 +23,8 @@ | |||
| 23 | #define PCIBIOS_MAX_MEM 0x4BFFFFFF | 23 | #define PCIBIOS_MAX_MEM 0x4BFFFFFF |
| 24 | #endif | 24 | #endif |
| 25 | 25 | ||
| 26 | #define ARCH_HAS_DMA_SET_COHERENT_MASK | ||
| 27 | |||
| 26 | /* Register locations and bits */ | 28 | /* Register locations and bits */ |
| 27 | #include "ixp4xx-regs.h" | 29 | #include "ixp4xx-regs.h" |
| 28 | 30 | ||
diff --git a/arch/arm/mach-ixp4xx/include/mach/io.h b/arch/arm/mach-ixp4xx/include/mach/io.h index 5cf30d1b78d..57b5410c31f 100644 --- a/arch/arm/mach-ixp4xx/include/mach/io.h +++ b/arch/arm/mach-ixp4xx/include/mach/io.h | |||
| @@ -17,6 +17,8 @@ | |||
| 17 | 17 | ||
| 18 | #include <mach/hardware.h> | 18 | #include <mach/hardware.h> |
| 19 | 19 | ||
| 20 | #define IO_SPACE_LIMIT 0x0000ffff | ||
| 21 | |||
| 20 | extern int (*ixp4xx_pci_read)(u32 addr, u32 cmd, u32* data); | 22 | extern int (*ixp4xx_pci_read)(u32 addr, u32 cmd, u32* data); |
| 21 | extern int ixp4xx_pci_write(u32 addr, u32 cmd, u32 data); | 23 | extern int ixp4xx_pci_write(u32 addr, u32 cmd, u32 data); |
| 22 | 24 | ||
| @@ -39,7 +41,11 @@ extern int ixp4xx_pci_write(u32 addr, u32 cmd, u32 data); | |||
| 39 | * but in some cases the performance hit is acceptable. In addition, you | 41 | * but in some cases the performance hit is acceptable. In addition, you |
| 40 | * cannot mmap() PCI devices in this case. | 42 | * cannot mmap() PCI devices in this case. |
| 41 | */ | 43 | */ |
| 42 | #ifdef CONFIG_IXP4XX_INDIRECT_PCI | 44 | #ifndef CONFIG_IXP4XX_INDIRECT_PCI |
| 45 | |||
| 46 | #define __mem_pci(a) (a) | ||
| 47 | |||
| 48 | #else | ||
| 43 | 49 | ||
| 44 | /* | 50 | /* |
| 45 | * In the case of using indirect PCI, we simply return the actual PCI | 51 | * In the case of using indirect PCI, we simply return the actual PCI |
| @@ -53,6 +59,24 @@ static inline int is_pci_memory(u32 addr) | |||
| 53 | return (addr >= PCIBIOS_MIN_MEM) && (addr <= 0x4FFFFFFF); | 59 | return (addr >= PCIBIOS_MIN_MEM) && (addr <= 0x4FFFFFFF); |
| 54 | } | 60 | } |
| 55 | 61 | ||
| 62 | static inline void __iomem * __indirect_ioremap(unsigned long addr, size_t size, | ||
| 63 | unsigned int mtype) | ||
| 64 | { | ||
| 65 | if (!is_pci_memory(addr)) | ||
| 66 | return __arm_ioremap(addr, size, mtype); | ||
| 67 | |||
| 68 | return (void __iomem *)addr; | ||
| 69 | } | ||
| 70 | |||
| 71 | static inline void __indirect_iounmap(void __iomem *addr) | ||
| 72 | { | ||
| 73 | if (!is_pci_memory((__force u32)addr)) | ||
| 74 | __iounmap(addr); | ||
| 75 | } | ||
| 76 | |||
| 77 | #define __arch_ioremap __indirect_ioremap | ||
| 78 | #define __arch_iounmap __indirect_iounmap | ||
| 79 | |||
| 56 | #define writeb(v, p) __indirect_writeb(v, p) | 80 | #define writeb(v, p) __indirect_writeb(v, p) |
| 57 | #define writew(v, p) __indirect_writew(v, p) | 81 | #define writew(v, p) __indirect_writew(v, p) |
| 58 | #define writel(v, p) __indirect_writel(v, p) | 82 | #define writel(v, p) __indirect_writel(v, p) |
diff --git a/arch/arm/mach-ixp4xx/include/mach/ixp46x_ts.h b/arch/arm/mach-ixp4xx/include/mach/ixp46x_ts.h index cf03614d250..292d55ed211 100644 --- a/arch/arm/mach-ixp4xx/include/mach/ixp46x_ts.h +++ b/arch/arm/mach-ixp4xx/include/mach/ixp46x_ts.h | |||
| @@ -75,7 +75,4 @@ struct ixp46x_ts_regs { | |||
| 75 | #define TX_SNAPSHOT_LOCKED (1<<0) | 75 | #define TX_SNAPSHOT_LOCKED (1<<0) |
| 76 | #define RX_SNAPSHOT_LOCKED (1<<1) | 76 | #define RX_SNAPSHOT_LOCKED (1<<1) |
| 77 | 77 | ||
| 78 | /* The ptp_ixp46x module will set this variable */ | ||
| 79 | extern int ixp46x_phc_index; | ||
| 80 | |||
| 81 | #endif | 78 | #endif |
diff --git a/arch/arm/mach-ixp4xx/include/mach/ixp4xx-regs.h b/arch/arm/mach-ixp4xx/include/mach/ixp4xx-regs.h index c5bae9c035d..97c530f66e7 100644 --- a/arch/arm/mach-ixp4xx/include/mach/ixp4xx-regs.h +++ b/arch/arm/mach-ixp4xx/include/mach/ixp4xx-regs.h | |||
| @@ -30,43 +30,51 @@ | |||
| 30 | * | 30 | * |
| 31 | * 0x50000000 0x10000000 ioremap'd EXP BUS | 31 | * 0x50000000 0x10000000 ioremap'd EXP BUS |
| 32 | * | 32 | * |
| 33 | * 0xC8000000 0x00013000 0xFEF00000 On-Chip Peripherals | 33 | * 0x6000000 0x00004000 ioremap'd QMgr |
| 34 | * | 34 | * |
| 35 | * 0xC0000000 0x00001000 0xFEF13000 PCI CFG | 35 | * 0xC0000000 0x00001000 0xffbff000 PCI CFG |
| 36 | * | 36 | * |
| 37 | * 0xC4000000 0x00001000 0xFEF14000 EXP CFG | 37 | * 0xC4000000 0x00001000 0xffbfe000 EXP CFG |
| 38 | * | 38 | * |
| 39 | * 0x60000000 0x00004000 0xFEF15000 QMgr | 39 | * 0xC8000000 0x00013000 0xffbeb000 On-Chip Peripherals |
| 40 | */ | 40 | */ |
| 41 | 41 | ||
| 42 | /* | 42 | /* |
| 43 | * Queue Manager | 43 | * Queue Manager |
| 44 | */ | 44 | */ |
| 45 | #define IXP4XX_QMGR_BASE_PHYS 0x60000000 | 45 | #define IXP4XX_QMGR_BASE_PHYS (0x60000000) |
| 46 | #define IXP4XX_QMGR_BASE_VIRT IOMEM(0xFEF15000) | 46 | #define IXP4XX_QMGR_REGION_SIZE (0x00004000) |
| 47 | #define IXP4XX_QMGR_REGION_SIZE 0x00004000 | ||
| 48 | 47 | ||
| 49 | /* | 48 | /* |
| 50 | * Peripheral space, including debug UART. Must be section-aligned so that | 49 | * Expansion BUS Configuration registers |
| 51 | * it can be used with the low-level debug code. | ||
| 52 | */ | 50 | */ |
| 53 | #define IXP4XX_PERIPHERAL_BASE_PHYS 0xC8000000 | 51 | #define IXP4XX_EXP_CFG_BASE_PHYS (0xC4000000) |
| 54 | #define IXP4XX_PERIPHERAL_BASE_VIRT IOMEM(0xFEF00000) | 52 | #define IXP4XX_EXP_CFG_BASE_VIRT (0xFFBFE000) |
| 55 | #define IXP4XX_PERIPHERAL_REGION_SIZE 0x00013000 | 53 | #define IXP4XX_EXP_CFG_REGION_SIZE (0x00001000) |
| 56 | 54 | ||
| 57 | /* | 55 | /* |
| 58 | * PCI Config registers | 56 | * PCI Config registers |
| 59 | */ | 57 | */ |
| 60 | #define IXP4XX_PCI_CFG_BASE_PHYS 0xC0000000 | 58 | #define IXP4XX_PCI_CFG_BASE_PHYS (0xC0000000) |
| 61 | #define IXP4XX_PCI_CFG_BASE_VIRT IOMEM(0xFEF13000) | 59 | #define IXP4XX_PCI_CFG_BASE_VIRT (0xFFBFF000) |
| 62 | #define IXP4XX_PCI_CFG_REGION_SIZE 0x00001000 | 60 | #define IXP4XX_PCI_CFG_REGION_SIZE (0x00001000) |
| 63 | 61 | ||
| 64 | /* | 62 | /* |
| 65 | * Expansion BUS Configuration registers | 63 | * Peripheral space |
| 64 | */ | ||
| 65 | #define IXP4XX_PERIPHERAL_BASE_PHYS (0xC8000000) | ||
| 66 | #define IXP4XX_PERIPHERAL_BASE_VIRT (0xFFBEB000) | ||
| 67 | #define IXP4XX_PERIPHERAL_REGION_SIZE (0x00013000) | ||
| 68 | |||
| 69 | /* | ||
| 70 | * Debug UART | ||
| 71 | * | ||
| 72 | * This is basically a remap of UART1 into a region that is section | ||
| 73 | * aligned so that it * can be used with the low-level debug code. | ||
| 66 | */ | 74 | */ |
| 67 | #define IXP4XX_EXP_CFG_BASE_PHYS 0xC4000000 | 75 | #define IXP4XX_DEBUG_UART_BASE_PHYS (0xC8000000) |
| 68 | #define IXP4XX_EXP_CFG_BASE_VIRT 0xFEF14000 | 76 | #define IXP4XX_DEBUG_UART_BASE_VIRT (0xffb00000) |
| 69 | #define IXP4XX_EXP_CFG_REGION_SIZE 0x00001000 | 77 | #define IXP4XX_DEBUG_UART_REGION_SIZE (0x00001000) |
| 70 | 78 | ||
| 71 | #define IXP4XX_EXP_CS0_OFFSET 0x00 | 79 | #define IXP4XX_EXP_CS0_OFFSET 0x00 |
| 72 | #define IXP4XX_EXP_CS1_OFFSET 0x04 | 80 | #define IXP4XX_EXP_CS1_OFFSET 0x04 |
| @@ -84,7 +92,7 @@ | |||
| 84 | /* | 92 | /* |
| 85 | * Expansion Bus Controller registers. | 93 | * Expansion Bus Controller registers. |
| 86 | */ | 94 | */ |
| 87 | #define IXP4XX_EXP_REG(x) ((volatile u32 __iomem *)(IXP4XX_EXP_CFG_BASE_VIRT+(x))) | 95 | #define IXP4XX_EXP_REG(x) ((volatile u32 *)(IXP4XX_EXP_CFG_BASE_VIRT+(x))) |
| 88 | 96 | ||
| 89 | #define IXP4XX_EXP_CS0 IXP4XX_EXP_REG(IXP4XX_EXP_CS0_OFFSET) | 97 | #define IXP4XX_EXP_CS0 IXP4XX_EXP_REG(IXP4XX_EXP_CS0_OFFSET) |
| 90 | #define IXP4XX_EXP_CS1 IXP4XX_EXP_REG(IXP4XX_EXP_CS1_OFFSET) | 98 | #define IXP4XX_EXP_CS1 IXP4XX_EXP_REG(IXP4XX_EXP_CS1_OFFSET) |
diff --git a/arch/arm/mach-ixp4xx/include/mach/platform.h b/arch/arm/mach-ixp4xx/include/mach/platform.h index 5bce94aacca..e824c02c825 100644 --- a/arch/arm/mach-ixp4xx/include/mach/platform.h +++ b/arch/arm/mach-ixp4xx/include/mach/platform.h | |||
| @@ -121,16 +121,14 @@ extern unsigned long ixp4xx_timer_freq; | |||
| 121 | * Functions used by platform-level setup code | 121 | * Functions used by platform-level setup code |
| 122 | */ | 122 | */ |
| 123 | extern void ixp4xx_map_io(void); | 123 | extern void ixp4xx_map_io(void); |
| 124 | extern void ixp4xx_init_early(void); | ||
| 125 | extern void ixp4xx_init_irq(void); | 124 | extern void ixp4xx_init_irq(void); |
| 126 | extern void ixp4xx_sys_init(void); | 125 | extern void ixp4xx_sys_init(void); |
| 127 | extern void ixp4xx_timer_init(void); | 126 | extern void ixp4xx_timer_init(void); |
| 128 | extern struct sys_timer ixp4xx_timer; | 127 | extern struct sys_timer ixp4xx_timer; |
| 129 | extern void ixp4xx_restart(char, const char *); | ||
| 130 | extern void ixp4xx_pci_preinit(void); | 128 | extern void ixp4xx_pci_preinit(void); |
| 131 | struct pci_sys_data; | 129 | struct pci_sys_data; |
| 132 | extern int ixp4xx_setup(int nr, struct pci_sys_data *sys); | 130 | extern int ixp4xx_setup(int nr, struct pci_sys_data *sys); |
| 133 | extern struct pci_ops ixp4xx_ops; | 131 | extern struct pci_bus *ixp4xx_scan_bus(int nr, struct pci_sys_data *sys); |
| 134 | 132 | ||
| 135 | /* | 133 | /* |
| 136 | * GPIO-functions | 134 | * GPIO-functions |
diff --git a/arch/arm/mach-ixp4xx/include/mach/qmgr.h b/arch/arm/mach-ixp4xx/include/mach/qmgr.h index 4de8da536db..9e7cad2d54c 100644 --- a/arch/arm/mach-ixp4xx/include/mach/qmgr.h +++ b/arch/arm/mach-ixp4xx/include/mach/qmgr.h | |||
| @@ -86,7 +86,7 @@ void qmgr_release_queue(unsigned int queue); | |||
| 86 | 86 | ||
| 87 | static inline void qmgr_put_entry(unsigned int queue, u32 val) | 87 | static inline void qmgr_put_entry(unsigned int queue, u32 val) |
| 88 | { | 88 | { |
| 89 | struct qmgr_regs __iomem *qmgr_regs = IXP4XX_QMGR_BASE_VIRT; | 89 | extern struct qmgr_regs __iomem *qmgr_regs; |
| 90 | #if DEBUG_QMGR | 90 | #if DEBUG_QMGR |
| 91 | BUG_ON(!qmgr_queue_descs[queue]); /* not yet requested */ | 91 | BUG_ON(!qmgr_queue_descs[queue]); /* not yet requested */ |
| 92 | 92 | ||
| @@ -99,7 +99,7 @@ static inline void qmgr_put_entry(unsigned int queue, u32 val) | |||
| 99 | static inline u32 qmgr_get_entry(unsigned int queue) | 99 | static inline u32 qmgr_get_entry(unsigned int queue) |
| 100 | { | 100 | { |
| 101 | u32 val; | 101 | u32 val; |
| 102 | const struct qmgr_regs __iomem *qmgr_regs = IXP4XX_QMGR_BASE_VIRT; | 102 | extern struct qmgr_regs __iomem *qmgr_regs; |
| 103 | val = __raw_readl(&qmgr_regs->acc[queue][0]); | 103 | val = __raw_readl(&qmgr_regs->acc[queue][0]); |
| 104 | #if DEBUG_QMGR | 104 | #if DEBUG_QMGR |
| 105 | BUG_ON(!qmgr_queue_descs[queue]); /* not yet requested */ | 105 | BUG_ON(!qmgr_queue_descs[queue]); /* not yet requested */ |
| @@ -112,14 +112,14 @@ static inline u32 qmgr_get_entry(unsigned int queue) | |||
| 112 | 112 | ||
| 113 | static inline int __qmgr_get_stat1(unsigned int queue) | 113 | static inline int __qmgr_get_stat1(unsigned int queue) |
| 114 | { | 114 | { |
| 115 | const struct qmgr_regs __iomem *qmgr_regs = IXP4XX_QMGR_BASE_VIRT; | 115 | extern struct qmgr_regs __iomem *qmgr_regs; |
| 116 | return (__raw_readl(&qmgr_regs->stat1[queue >> 3]) | 116 | return (__raw_readl(&qmgr_regs->stat1[queue >> 3]) |
| 117 | >> ((queue & 7) << 2)) & 0xF; | 117 | >> ((queue & 7) << 2)) & 0xF; |
| 118 | } | 118 | } |
| 119 | 119 | ||
| 120 | static inline int __qmgr_get_stat2(unsigned int queue) | 120 | static inline int __qmgr_get_stat2(unsigned int queue) |
| 121 | { | 121 | { |
| 122 | const struct qmgr_regs __iomem *qmgr_regs = IXP4XX_QMGR_BASE_VIRT; | 122 | extern struct qmgr_regs __iomem *qmgr_regs; |
| 123 | BUG_ON(queue >= HALF_QUEUES); | 123 | BUG_ON(queue >= HALF_QUEUES); |
| 124 | return (__raw_readl(&qmgr_regs->stat2[queue >> 4]) | 124 | return (__raw_readl(&qmgr_regs->stat2[queue >> 4]) |
| 125 | >> ((queue & 0xF) << 1)) & 0x3; | 125 | >> ((queue & 0xF) << 1)) & 0x3; |
| @@ -145,7 +145,7 @@ static inline int qmgr_stat_empty(unsigned int queue) | |||
| 145 | */ | 145 | */ |
| 146 | static inline int qmgr_stat_below_low_watermark(unsigned int queue) | 146 | static inline int qmgr_stat_below_low_watermark(unsigned int queue) |
| 147 | { | 147 | { |
| 148 | const struct qmgr_regs __iomem *qmgr_regs = IXP4XX_QMGR_BASE_VIRT; | 148 | extern struct qmgr_regs __iomem *qmgr_regs; |
| 149 | if (queue >= HALF_QUEUES) | 149 | if (queue >= HALF_QUEUES) |
| 150 | return (__raw_readl(&qmgr_regs->statne_h) >> | 150 | return (__raw_readl(&qmgr_regs->statne_h) >> |
| 151 | (queue - HALF_QUEUES)) & 0x01; | 151 | (queue - HALF_QUEUES)) & 0x01; |
| @@ -172,7 +172,7 @@ static inline int qmgr_stat_above_high_watermark(unsigned int queue) | |||
| 172 | */ | 172 | */ |
| 173 | static inline int qmgr_stat_full(unsigned int queue) | 173 | static inline int qmgr_stat_full(unsigned int queue) |
| 174 | { | 174 | { |
| 175 | const struct qmgr_regs __iomem *qmgr_regs = IXP4XX_QMGR_BASE_VIRT; | 175 | extern struct qmgr_regs __iomem *qmgr_regs; |
| 176 | if (queue >= HALF_QUEUES) | 176 | if (queue >= HALF_QUEUES) |
| 177 | return (__raw_readl(&qmgr_regs->statf_h) >> | 177 | return (__raw_readl(&qmgr_regs->statf_h) >> |
| 178 | (queue - HALF_QUEUES)) & 0x01; | 178 | (queue - HALF_QUEUES)) & 0x01; |
diff --git a/arch/arm/mach-ixp4xx/include/mach/udc.h b/arch/arm/mach-ixp4xx/include/mach/udc.h index 7bd8b96c884..80d6da2eafa 100644 --- a/arch/arm/mach-ixp4xx/include/mach/udc.h +++ b/arch/arm/mach-ixp4xx/include/mach/udc.h | |||
| @@ -2,7 +2,7 @@ | |||
| 2 | * arch/arm/mach-ixp4xx/include/mach/udc.h | 2 | * arch/arm/mach-ixp4xx/include/mach/udc.h |
| 3 | * | 3 | * |
| 4 | */ | 4 | */ |
| 5 | #include <linux/platform_data/pxa2xx_udc.h> | 5 | #include <asm/mach/udc_pxa2xx.h> |
| 6 | 6 | ||
| 7 | extern void ixp4xx_set_udc_info(struct pxa2xx_udc_mach_info *info); | 7 | extern void ixp4xx_set_udc_info(struct pxa2xx_udc_mach_info *info); |
| 8 | 8 | ||
diff --git a/arch/arm/mach-ixp4xx/include/mach/uncompress.h b/arch/arm/mach-ixp4xx/include/mach/uncompress.h index eb945a926d0..219d7c1dcdb 100644 --- a/arch/arm/mach-ixp4xx/include/mach/uncompress.h +++ b/arch/arm/mach-ixp4xx/include/mach/uncompress.h | |||
| @@ -41,8 +41,7 @@ static __inline__ void __arch_decomp_setup(unsigned long arch_id) | |||
| 41 | * Some boards are using UART2 as console | 41 | * Some boards are using UART2 as console |
| 42 | */ | 42 | */ |
| 43 | if (machine_is_adi_coyote() || machine_is_gtwx5715() || | 43 | if (machine_is_adi_coyote() || machine_is_gtwx5715() || |
| 44 | machine_is_gateway7001() || machine_is_wg302v2() || | 44 | machine_is_gateway7001() || machine_is_wg302v2()) |
| 45 | machine_is_devixp() || machine_is_miccpt() || machine_is_mic256()) | ||
| 46 | uart_base = (volatile u32*) IXP4XX_UART2_BASE_PHYS; | 45 | uart_base = (volatile u32*) IXP4XX_UART2_BASE_PHYS; |
| 47 | else | 46 | else |
| 48 | uart_base = (volatile u32*) IXP4XX_UART1_BASE_PHYS; | 47 | uart_base = (volatile u32*) IXP4XX_UART1_BASE_PHYS; |
