diff options
Diffstat (limited to 'arch/arm/mach-ixp4xx')
-rw-r--r-- | arch/arm/mach-ixp4xx/common-pci.c | 23 | ||||
-rw-r--r-- | arch/arm/mach-ixp4xx/common.c | 16 | ||||
-rw-r--r-- | arch/arm/mach-ixp4xx/include/mach/memory.h | 12 | ||||
-rw-r--r-- | arch/arm/mach-ixp4xx/include/mach/uncompress.h | 2 |
4 files changed, 5 insertions, 48 deletions
diff --git a/arch/arm/mach-ixp4xx/common-pci.c b/arch/arm/mach-ixp4xx/common-pci.c index a54b3db80366..e9a589395723 100644 --- a/arch/arm/mach-ixp4xx/common-pci.c +++ b/arch/arm/mach-ixp4xx/common-pci.c | |||
@@ -342,29 +342,6 @@ int dma_needs_bounce(struct device *dev, dma_addr_t dma_addr, size_t size) | |||
342 | return (dev->bus == &pci_bus_type ) && ((dma_addr + size) >= SZ_64M); | 342 | return (dev->bus == &pci_bus_type ) && ((dma_addr + size) >= SZ_64M); |
343 | } | 343 | } |
344 | 344 | ||
345 | /* | ||
346 | * Only first 64MB of memory can be accessed via PCI. | ||
347 | * We use GFP_DMA to allocate safe buffers to do map/unmap. | ||
348 | * This is really ugly and we need a better way of specifying | ||
349 | * DMA-capable regions of memory. | ||
350 | */ | ||
351 | void __init ixp4xx_adjust_zones(unsigned long *zone_size, | ||
352 | unsigned long *zhole_size) | ||
353 | { | ||
354 | unsigned int sz = SZ_64M >> PAGE_SHIFT; | ||
355 | |||
356 | /* | ||
357 | * Only adjust if > 64M on current system | ||
358 | */ | ||
359 | if (zone_size[0] <= sz) | ||
360 | return; | ||
361 | |||
362 | zone_size[1] = zone_size[0] - sz; | ||
363 | zone_size[0] = sz; | ||
364 | zhole_size[1] = zhole_size[0]; | ||
365 | zhole_size[0] = 0; | ||
366 | } | ||
367 | |||
368 | void __init ixp4xx_pci_preinit(void) | 345 | void __init ixp4xx_pci_preinit(void) |
369 | { | 346 | { |
370 | unsigned long cpuid = read_cpuid_id(); | 347 | unsigned long cpuid = read_cpuid_id(); |
diff --git a/arch/arm/mach-ixp4xx/common.c b/arch/arm/mach-ixp4xx/common.c index ed19bc314318..74ed81a3cb1a 100644 --- a/arch/arm/mach-ixp4xx/common.c +++ b/arch/arm/mach-ixp4xx/common.c | |||
@@ -419,26 +419,14 @@ static void notrace ixp4xx_update_sched_clock(void) | |||
419 | /* | 419 | /* |
420 | * clocksource | 420 | * clocksource |
421 | */ | 421 | */ |
422 | static cycle_t ixp4xx_get_cycles(struct clocksource *cs) | ||
423 | { | ||
424 | return *IXP4XX_OSTS; | ||
425 | } | ||
426 | |||
427 | static struct clocksource clocksource_ixp4xx = { | ||
428 | .name = "OSTS", | ||
429 | .rating = 200, | ||
430 | .read = ixp4xx_get_cycles, | ||
431 | .mask = CLOCKSOURCE_MASK(32), | ||
432 | .flags = CLOCK_SOURCE_IS_CONTINUOUS, | ||
433 | }; | ||
434 | |||
435 | unsigned long ixp4xx_timer_freq = IXP4XX_TIMER_FREQ; | 422 | unsigned long ixp4xx_timer_freq = IXP4XX_TIMER_FREQ; |
436 | EXPORT_SYMBOL(ixp4xx_timer_freq); | 423 | EXPORT_SYMBOL(ixp4xx_timer_freq); |
437 | static void __init ixp4xx_clocksource_init(void) | 424 | static void __init ixp4xx_clocksource_init(void) |
438 | { | 425 | { |
439 | init_sched_clock(&cd, ixp4xx_update_sched_clock, 32, ixp4xx_timer_freq); | 426 | init_sched_clock(&cd, ixp4xx_update_sched_clock, 32, ixp4xx_timer_freq); |
440 | 427 | ||
441 | clocksource_register_hz(&clocksource_ixp4xx, ixp4xx_timer_freq); | 428 | clocksource_mmio_init(&IXP4XX_OSTS, "OSTS", ixp4xx_timer_freq, 200, 32, |
429 | clocksource_mmio_readl_up); | ||
442 | } | 430 | } |
443 | 431 | ||
444 | /* | 432 | /* |
diff --git a/arch/arm/mach-ixp4xx/include/mach/memory.h b/arch/arm/mach-ixp4xx/include/mach/memory.h index 6d388c9d0e20..34e79404671a 100644 --- a/arch/arm/mach-ixp4xx/include/mach/memory.h +++ b/arch/arm/mach-ixp4xx/include/mach/memory.h | |||
@@ -14,16 +14,8 @@ | |||
14 | */ | 14 | */ |
15 | #define PLAT_PHYS_OFFSET UL(0x00000000) | 15 | #define PLAT_PHYS_OFFSET UL(0x00000000) |
16 | 16 | ||
17 | #if !defined(__ASSEMBLY__) && defined(CONFIG_PCI) | 17 | #ifdef CONFIG_PCI |
18 | 18 | #define ARM_DMA_ZONE_SIZE SZ_64M | |
19 | void ixp4xx_adjust_zones(unsigned long *size, unsigned long *holes); | ||
20 | |||
21 | #define arch_adjust_zones(size, holes) \ | ||
22 | ixp4xx_adjust_zones(size, holes) | ||
23 | |||
24 | #define ISA_DMA_THRESHOLD (SZ_64M - 1) | ||
25 | #define MAX_DMA_ADDRESS (PAGE_OFFSET + SZ_64M) | ||
26 | |||
27 | #endif | 19 | #endif |
28 | 20 | ||
29 | #endif | 21 | #endif |
diff --git a/arch/arm/mach-ixp4xx/include/mach/uncompress.h b/arch/arm/mach-ixp4xx/include/mach/uncompress.h index 2db0078a8cf2..219d7c1dcdba 100644 --- a/arch/arm/mach-ixp4xx/include/mach/uncompress.h +++ b/arch/arm/mach-ixp4xx/include/mach/uncompress.h | |||
@@ -19,7 +19,7 @@ | |||
19 | 19 | ||
20 | #define TX_DONE (UART_LSR_TEMT|UART_LSR_THRE) | 20 | #define TX_DONE (UART_LSR_TEMT|UART_LSR_THRE) |
21 | 21 | ||
22 | static volatile u32* uart_base; | 22 | volatile u32* uart_base; |
23 | 23 | ||
24 | static inline void putc(int c) | 24 | static inline void putc(int c) |
25 | { | 25 | { |