diff options
| -rw-r--r-- | arch/arm/mach-integrator/core.c | 6 | ||||
| -rw-r--r-- | arch/arm/mach-integrator/leds.c | 2 | ||||
| -rw-r--r-- | include/asm-arm/arch-integrator/platform.h | 108 |
3 files changed, 59 insertions, 57 deletions
diff --git a/arch/arm/mach-integrator/core.c b/arch/arm/mach-integrator/core.c index 86c50c3889b7..bd17b5154311 100644 --- a/arch/arm/mach-integrator/core.c +++ b/arch/arm/mach-integrator/core.c | |||
| @@ -216,7 +216,9 @@ integrator_timer_interrupt(int irq, void *dev_id, struct pt_regs *regs) | |||
| 216 | 216 | ||
| 217 | write_seqlock(&xtime_lock); | 217 | write_seqlock(&xtime_lock); |
| 218 | 218 | ||
| 219 | // ...clear the interrupt | 219 | /* |
| 220 | * clear the interrupt | ||
| 221 | */ | ||
| 220 | timer1->TimerClear = 1; | 222 | timer1->TimerClear = 1; |
| 221 | 223 | ||
| 222 | timer_tick(regs); | 224 | timer_tick(regs); |
| @@ -264,7 +266,7 @@ void __init integrator_time_init(unsigned long reload, unsigned int ctrl) | |||
| 264 | timer1->TimerValue = timer_reload; | 266 | timer1->TimerValue = timer_reload; |
| 265 | timer1->TimerControl = timer_ctrl; | 267 | timer1->TimerControl = timer_ctrl; |
| 266 | 268 | ||
| 267 | /* | 269 | /* |
| 268 | * Make irqs happen for the system timer | 270 | * Make irqs happen for the system timer |
| 269 | */ | 271 | */ |
| 270 | setup_irq(IRQ_TIMERINT1, &integrator_timer_irq); | 272 | setup_irq(IRQ_TIMERINT1, &integrator_timer_irq); |
diff --git a/arch/arm/mach-integrator/leds.c b/arch/arm/mach-integrator/leds.c index 9d182b77b312..d2c0ab21150c 100644 --- a/arch/arm/mach-integrator/leds.c +++ b/arch/arm/mach-integrator/leds.c | |||
| @@ -37,7 +37,7 @@ static void integrator_leds_event(led_event_t ledevt) | |||
| 37 | unsigned long flags; | 37 | unsigned long flags; |
| 38 | const unsigned int dbg_base = IO_ADDRESS(INTEGRATOR_DBG_BASE); | 38 | const unsigned int dbg_base = IO_ADDRESS(INTEGRATOR_DBG_BASE); |
| 39 | unsigned int update_alpha_leds; | 39 | unsigned int update_alpha_leds; |
| 40 | 40 | ||
| 41 | // yup, change the LEDs | 41 | // yup, change the LEDs |
| 42 | local_irq_save(flags); | 42 | local_irq_save(flags); |
| 43 | update_alpha_leds = 0; | 43 | update_alpha_leds = 0; |
diff --git a/include/asm-arm/arch-integrator/platform.h b/include/asm-arm/arch-integrator/platform.h index 6b67e41669f4..bd364f5a99bc 100644 --- a/include/asm-arm/arch-integrator/platform.h +++ b/include/asm-arm/arch-integrator/platform.h | |||
| @@ -20,14 +20,14 @@ | |||
| 20 | * * Copyright © ARM Limited 1998. All rights reserved. | 20 | * * Copyright © ARM Limited 1998. All rights reserved. |
| 21 | * ***********************************************************************/ | 21 | * ***********************************************************************/ |
| 22 | /* ************************************************************************ | 22 | /* ************************************************************************ |
| 23 | * | 23 | * |
| 24 | * Integrator address map | 24 | * Integrator address map |
| 25 | * | 25 | * |
| 26 | * NOTE: This is a multi-hosted header file for use with uHAL and | 26 | * NOTE: This is a multi-hosted header file for use with uHAL and |
| 27 | * supported debuggers. | 27 | * supported debuggers. |
| 28 | * | 28 | * |
| 29 | * $Id: platform.s,v 1.32 2000/02/18 10:51:39 asims Exp $ | 29 | * $Id: platform.s,v 1.32 2000/02/18 10:51:39 asims Exp $ |
| 30 | * | 30 | * |
| 31 | * ***********************************************************************/ | 31 | * ***********************************************************************/ |
| 32 | 32 | ||
| 33 | #ifndef __address_h | 33 | #ifndef __address_h |
| @@ -40,22 +40,22 @@ | |||
| 40 | * Memory definitions | 40 | * Memory definitions |
| 41 | * ------------------------------------------------------------------------ | 41 | * ------------------------------------------------------------------------ |
| 42 | * Integrator memory map | 42 | * Integrator memory map |
| 43 | * | 43 | * |
| 44 | */ | 44 | */ |
| 45 | #define INTEGRATOR_BOOT_ROM_LO 0x00000000 | 45 | #define INTEGRATOR_BOOT_ROM_LO 0x00000000 |
| 46 | #define INTEGRATOR_BOOT_ROM_HI 0x20000000 | 46 | #define INTEGRATOR_BOOT_ROM_HI 0x20000000 |
| 47 | #define INTEGRATOR_BOOT_ROM_BASE INTEGRATOR_BOOT_ROM_HI /* Normal position */ | 47 | #define INTEGRATOR_BOOT_ROM_BASE INTEGRATOR_BOOT_ROM_HI /* Normal position */ |
| 48 | #define INTEGRATOR_BOOT_ROM_SIZE SZ_512K | 48 | #define INTEGRATOR_BOOT_ROM_SIZE SZ_512K |
| 49 | 49 | ||
| 50 | /* | 50 | /* |
| 51 | * New Core Modules have different amounts of SSRAM, the amount of SSRAM | 51 | * New Core Modules have different amounts of SSRAM, the amount of SSRAM |
| 52 | * fitted can be found in HDR_STAT. | 52 | * fitted can be found in HDR_STAT. |
| 53 | * | 53 | * |
| 54 | * The symbol INTEGRATOR_SSRAM_SIZE is kept, however this now refers to | 54 | * The symbol INTEGRATOR_SSRAM_SIZE is kept, however this now refers to |
| 55 | * the minimum amount of SSRAM fitted on any core module. | 55 | * the minimum amount of SSRAM fitted on any core module. |
| 56 | * | 56 | * |
| 57 | * New Core Modules also alias the SSRAM. | 57 | * New Core Modules also alias the SSRAM. |
| 58 | * | 58 | * |
| 59 | */ | 59 | */ |
| 60 | #define INTEGRATOR_SSRAM_BASE 0x00000000 | 60 | #define INTEGRATOR_SSRAM_BASE 0x00000000 |
| 61 | #define INTEGRATOR_SSRAM_ALIAS_BASE 0x10800000 | 61 | #define INTEGRATOR_SSRAM_ALIAS_BASE 0x10800000 |
| @@ -67,9 +67,9 @@ | |||
| 67 | #define INTEGRATOR_MBRD_SSRAM_BASE 0x28000000 | 67 | #define INTEGRATOR_MBRD_SSRAM_BASE 0x28000000 |
| 68 | #define INTEGRATOR_MBRD_SSRAM_SIZE SZ_512K | 68 | #define INTEGRATOR_MBRD_SSRAM_SIZE SZ_512K |
| 69 | 69 | ||
| 70 | /* | 70 | /* |
| 71 | * SDRAM is a SIMM therefore the size is not known. | 71 | * SDRAM is a SIMM therefore the size is not known. |
| 72 | * | 72 | * |
| 73 | */ | 73 | */ |
| 74 | #define INTEGRATOR_SDRAM_BASE 0x00040000 | 74 | #define INTEGRATOR_SDRAM_BASE 0x00040000 |
| 75 | 75 | ||
| @@ -79,9 +79,9 @@ | |||
| 79 | #define INTEGRATOR_HDR2_SDRAM_BASE 0xA0000000 | 79 | #define INTEGRATOR_HDR2_SDRAM_BASE 0xA0000000 |
| 80 | #define INTEGRATOR_HDR3_SDRAM_BASE 0xB0000000 | 80 | #define INTEGRATOR_HDR3_SDRAM_BASE 0xB0000000 |
| 81 | 81 | ||
| 82 | /* | 82 | /* |
| 83 | * Logic expansion modules | 83 | * Logic expansion modules |
| 84 | * | 84 | * |
| 85 | */ | 85 | */ |
| 86 | #define INTEGRATOR_LOGIC_MODULES_BASE 0xC0000000 | 86 | #define INTEGRATOR_LOGIC_MODULES_BASE 0xC0000000 |
| 87 | #define INTEGRATOR_LOGIC_MODULE0_BASE 0xC0000000 | 87 | #define INTEGRATOR_LOGIC_MODULE0_BASE 0xC0000000 |
| @@ -92,7 +92,7 @@ | |||
| 92 | /* ------------------------------------------------------------------------ | 92 | /* ------------------------------------------------------------------------ |
| 93 | * Integrator header card registers | 93 | * Integrator header card registers |
| 94 | * ------------------------------------------------------------------------ | 94 | * ------------------------------------------------------------------------ |
| 95 | * | 95 | * |
| 96 | */ | 96 | */ |
| 97 | #define INTEGRATOR_HDR_ID_OFFSET 0x00 | 97 | #define INTEGRATOR_HDR_ID_OFFSET 0x00 |
| 98 | #define INTEGRATOR_HDR_PROC_OFFSET 0x04 | 98 | #define INTEGRATOR_HDR_PROC_OFFSET 0x04 |
| @@ -185,12 +185,12 @@ | |||
| 185 | /* ------------------------------------------------------------------------ | 185 | /* ------------------------------------------------------------------------ |
| 186 | * Integrator system registers | 186 | * Integrator system registers |
| 187 | * ------------------------------------------------------------------------ | 187 | * ------------------------------------------------------------------------ |
| 188 | * | 188 | * |
| 189 | */ | 189 | */ |
| 190 | 190 | ||
| 191 | /* | 191 | /* |
| 192 | * System Controller | 192 | * System Controller |
| 193 | * | 193 | * |
| 194 | */ | 194 | */ |
| 195 | #define INTEGRATOR_SC_ID_OFFSET 0x00 | 195 | #define INTEGRATOR_SC_ID_OFFSET 0x00 |
| 196 | #define INTEGRATOR_SC_OSC_OFFSET 0x04 | 196 | #define INTEGRATOR_SC_OSC_OFFSET 0x04 |
| @@ -230,11 +230,11 @@ | |||
| 230 | #define INTEGRATOR_SC_CTRL_URTS1 (1 << 6) | 230 | #define INTEGRATOR_SC_CTRL_URTS1 (1 << 6) |
| 231 | #define INTEGRATOR_SC_CTRL_UDTR1 (1 << 7) | 231 | #define INTEGRATOR_SC_CTRL_UDTR1 (1 << 7) |
| 232 | 232 | ||
| 233 | /* | 233 | /* |
| 234 | * External Bus Interface | 234 | * External Bus Interface |
| 235 | * | 235 | * |
| 236 | */ | 236 | */ |
| 237 | #define INTEGRATOR_EBI_BASE 0x12000000 | 237 | #define INTEGRATOR_EBI_BASE 0x12000000 |
| 238 | 238 | ||
| 239 | #define INTEGRATOR_EBI_CSR0_OFFSET 0x00 | 239 | #define INTEGRATOR_EBI_CSR0_OFFSET 0x00 |
| 240 | #define INTEGRATOR_EBI_CSR1_OFFSET 0x04 | 240 | #define INTEGRATOR_EBI_CSR1_OFFSET 0x04 |
| @@ -279,9 +279,9 @@ | |||
| 279 | #define INTEGRATOR_KBD_BASE 0x18000000 /* Keyboard */ | 279 | #define INTEGRATOR_KBD_BASE 0x18000000 /* Keyboard */ |
| 280 | #define INTEGRATOR_MOUSE_BASE 0x19000000 /* Mouse */ | 280 | #define INTEGRATOR_MOUSE_BASE 0x19000000 /* Mouse */ |
| 281 | 281 | ||
| 282 | /* | 282 | /* |
| 283 | * LED's & Switches | 283 | * LED's & Switches |
| 284 | * | 284 | * |
| 285 | */ | 285 | */ |
| 286 | #define INTEGRATOR_DBG_ALPHA_OFFSET 0x00 | 286 | #define INTEGRATOR_DBG_ALPHA_OFFSET 0x00 |
| 287 | #define INTEGRATOR_DBG_LEDS_OFFSET 0x04 | 287 | #define INTEGRATOR_DBG_LEDS_OFFSET 0x04 |
| @@ -300,7 +300,7 @@ | |||
| 300 | * ------------------------------------------------------------------------ | 300 | * ------------------------------------------------------------------------ |
| 301 | */ | 301 | */ |
| 302 | /* PS2 Keyboard interface */ | 302 | /* PS2 Keyboard interface */ |
| 303 | #define KMI0_BASE INTEGRATOR_KBD_BASE | 303 | #define KMI0_BASE INTEGRATOR_KBD_BASE |
| 304 | 304 | ||
| 305 | /* PS2 Mouse interface */ | 305 | /* PS2 Mouse interface */ |
| 306 | #define KMI1_BASE INTEGRATOR_MOUSE_BASE | 306 | #define KMI1_BASE INTEGRATOR_MOUSE_BASE |
| @@ -313,7 +313,7 @@ | |||
| 313 | * This represents a fairly liberal usage of address space. Even though | 313 | * This represents a fairly liberal usage of address space. Even though |
| 314 | * the V3 only has two windows (therefore we need to map stuff on the fly), | 314 | * the V3 only has two windows (therefore we need to map stuff on the fly), |
| 315 | * we maintain the same addresses, even if they're not mapped. | 315 | * we maintain the same addresses, even if they're not mapped. |
| 316 | * | 316 | * |
| 317 | */ | 317 | */ |
| 318 | #define PHYS_PCI_MEM_BASE 0x40000000 /* 512M to xxx */ | 318 | #define PHYS_PCI_MEM_BASE 0x40000000 /* 512M to xxx */ |
| 319 | /* unused 256M from A0000000-AFFFFFFF might be used for I2O ??? | 319 | /* unused 256M from A0000000-AFFFFFFF might be used for I2O ??? |
| @@ -326,7 +326,7 @@ | |||
| 326 | */ | 326 | */ |
| 327 | #define PHYS_PCI_V3_BASE 0x62000000 | 327 | #define PHYS_PCI_V3_BASE 0x62000000 |
| 328 | 328 | ||
| 329 | #define PCI_DRAMSIZE INTEGRATOR_SSRAM_SIZE | 329 | #define PCI_DRAMSIZE INTEGRATOR_SSRAM_SIZE |
| 330 | 330 | ||
| 331 | /* 'export' these to UHAL */ | 331 | /* 'export' these to UHAL */ |
| 332 | #define UHAL_PCI_IO PCI_IO_BASE | 332 | #define UHAL_PCI_IO PCI_IO_BASE |
| @@ -334,7 +334,7 @@ | |||
| 334 | #define UHAL_PCI_ALLOC_IO_BASE 0x00004000 | 334 | #define UHAL_PCI_ALLOC_IO_BASE 0x00004000 |
| 335 | #define UHAL_PCI_ALLOC_MEM_BASE PCI_MEM_BASE | 335 | #define UHAL_PCI_ALLOC_MEM_BASE PCI_MEM_BASE |
| 336 | #define UHAL_PCI_MAX_SLOT 20 | 336 | #define UHAL_PCI_MAX_SLOT 20 |
| 337 | 337 | ||
| 338 | /* ======================================================================== | 338 | /* ======================================================================== |
| 339 | * Start of uHAL definitions | 339 | * Start of uHAL definitions |
| 340 | * ======================================================================== | 340 | * ======================================================================== |
| @@ -343,17 +343,17 @@ | |||
| 343 | /* ------------------------------------------------------------------------ | 343 | /* ------------------------------------------------------------------------ |
| 344 | * Integrator Interrupt Controllers | 344 | * Integrator Interrupt Controllers |
| 345 | * ------------------------------------------------------------------------ | 345 | * ------------------------------------------------------------------------ |
| 346 | * | 346 | * |
| 347 | * Offsets from interrupt controller base | 347 | * Offsets from interrupt controller base |
| 348 | * | 348 | * |
| 349 | * System Controller interrupt controller base is | 349 | * System Controller interrupt controller base is |
| 350 | * | 350 | * |
| 351 | * INTEGRATOR_IC_BASE + (header_number << 6) | 351 | * INTEGRATOR_IC_BASE + (header_number << 6) |
| 352 | * | 352 | * |
| 353 | * Core Module interrupt controller base is | 353 | * Core Module interrupt controller base is |
| 354 | * | 354 | * |
| 355 | * INTEGRATOR_HDR_IC | 355 | * INTEGRATOR_HDR_IC |
| 356 | * | 356 | * |
| 357 | */ | 357 | */ |
| 358 | #define IRQ_STATUS 0 | 358 | #define IRQ_STATUS 0 |
| 359 | #define IRQ_RAW_STATUS 0x04 | 359 | #define IRQ_RAW_STATUS 0x04 |
| @@ -374,22 +374,22 @@ | |||
| 374 | /* ------------------------------------------------------------------------ | 374 | /* ------------------------------------------------------------------------ |
| 375 | * Interrupts | 375 | * Interrupts |
| 376 | * ------------------------------------------------------------------------ | 376 | * ------------------------------------------------------------------------ |
| 377 | * | 377 | * |
| 378 | * | 378 | * |
| 379 | * Each Core Module has two interrupts controllers, one on the core module | 379 | * Each Core Module has two interrupts controllers, one on the core module |
| 380 | * itself and one in the system controller on the motherboard. The | 380 | * itself and one in the system controller on the motherboard. The |
| 381 | * READ_INT macro in target.s reads both interrupt controllers and returns | 381 | * READ_INT macro in target.s reads both interrupt controllers and returns |
| 382 | * a 32 bit bitmask, bits 0 to 23 are interrupts from the system controller | 382 | * a 32 bit bitmask, bits 0 to 23 are interrupts from the system controller |
| 383 | * and bits 24 to 31 are from the core module. | 383 | * and bits 24 to 31 are from the core module. |
| 384 | * | 384 | * |
| 385 | * The following definitions relate to the bitmask returned by READ_INT. | 385 | * The following definitions relate to the bitmask returned by READ_INT. |
| 386 | * | 386 | * |
| 387 | */ | 387 | */ |
| 388 | 388 | ||
| 389 | /* ------------------------------------------------------------------------ | 389 | /* ------------------------------------------------------------------------ |
| 390 | * LED's - The header LED is not accessible via the uHAL API | 390 | * LED's - The header LED is not accessible via the uHAL API |
| 391 | * ------------------------------------------------------------------------ | 391 | * ------------------------------------------------------------------------ |
| 392 | * | 392 | * |
| 393 | */ | 393 | */ |
| 394 | #define GREEN_LED 0x01 | 394 | #define GREEN_LED 0x01 |
| 395 | #define YELLOW_LED 0x02 | 395 | #define YELLOW_LED 0x02 |
| @@ -399,44 +399,44 @@ | |||
| 399 | 399 | ||
| 400 | #define LED_BANK INTEGRATOR_DBG_LEDS | 400 | #define LED_BANK INTEGRATOR_DBG_LEDS |
| 401 | 401 | ||
| 402 | /* | 402 | /* |
| 403 | * Memory definitions - run uHAL out of SSRAM. | 403 | * Memory definitions - run uHAL out of SSRAM. |
| 404 | * | 404 | * |
| 405 | */ | 405 | */ |
| 406 | #define uHAL_MEMORY_SIZE INTEGRATOR_SSRAM_SIZE | 406 | #define uHAL_MEMORY_SIZE INTEGRATOR_SSRAM_SIZE |
| 407 | 407 | ||
| 408 | /* | 408 | /* |
| 409 | * Application Flash | 409 | * Application Flash |
| 410 | * | 410 | * |
| 411 | */ | 411 | */ |
| 412 | #define FLASH_BASE INTEGRATOR_FLASH_BASE | 412 | #define FLASH_BASE INTEGRATOR_FLASH_BASE |
| 413 | #define FLASH_SIZE INTEGRATOR_FLASH_SIZE | 413 | #define FLASH_SIZE INTEGRATOR_FLASH_SIZE |
| 414 | #define FLASH_END (FLASH_BASE + FLASH_SIZE - 1) | 414 | #define FLASH_END (FLASH_BASE + FLASH_SIZE - 1) |
| 415 | #define FLASH_BLOCK_SIZE SZ_128K | 415 | #define FLASH_BLOCK_SIZE SZ_128K |
| 416 | 416 | ||
| 417 | /* | 417 | /* |
| 418 | * Boot Flash | 418 | * Boot Flash |
| 419 | * | 419 | * |
| 420 | */ | 420 | */ |
| 421 | #define EPROM_BASE INTEGRATOR_BOOT_ROM_HI | 421 | #define EPROM_BASE INTEGRATOR_BOOT_ROM_HI |
| 422 | #define EPROM_SIZE INTEGRATOR_BOOT_ROM_SIZE | 422 | #define EPROM_SIZE INTEGRATOR_BOOT_ROM_SIZE |
| 423 | #define EPROM_END (EPROM_BASE + EPROM_SIZE - 1) | 423 | #define EPROM_END (EPROM_BASE + EPROM_SIZE - 1) |
| 424 | 424 | ||
| 425 | /* | 425 | /* |
| 426 | * Clean base - dummy | 426 | * Clean base - dummy |
| 427 | * | 427 | * |
| 428 | */ | 428 | */ |
| 429 | #define CLEAN_BASE EPROM_BASE | 429 | #define CLEAN_BASE EPROM_BASE |
| 430 | 430 | ||
| 431 | /* | 431 | /* |
| 432 | * Timer definitions | 432 | * Timer definitions |
| 433 | * | 433 | * |
| 434 | * Only use timer 1 & 2 | 434 | * Only use timer 1 & 2 |
| 435 | * (both run at 24MHz and will need the clock divider set to 16). | 435 | * (both run at 24MHz and will need the clock divider set to 16). |
| 436 | * | 436 | * |
| 437 | * Timer 0 runs at bus frequency and therefore could vary and currently | 437 | * Timer 0 runs at bus frequency and therefore could vary and currently |
| 438 | * uHAL can't handle that. | 438 | * uHAL can't handle that. |
| 439 | * | 439 | * |
| 440 | */ | 440 | */ |
| 441 | 441 | ||
| 442 | #define INTEGRATOR_TIMER0_BASE INTEGRATOR_CT_BASE | 442 | #define INTEGRATOR_TIMER0_BASE INTEGRATOR_CT_BASE |
| @@ -447,9 +447,9 @@ | |||
| 447 | #define MAX_PERIOD 699050 | 447 | #define MAX_PERIOD 699050 |
| 448 | #define TICKS_PER_uSEC 24 | 448 | #define TICKS_PER_uSEC 24 |
| 449 | 449 | ||
| 450 | /* | 450 | /* |
| 451 | * These are useconds NOT ticks. | 451 | * These are useconds NOT ticks. |
| 452 | * | 452 | * |
| 453 | */ | 453 | */ |
| 454 | #define mSEC_1 1000 | 454 | #define mSEC_1 1000 |
| 455 | #define mSEC_5 (mSEC_1 * 5) | 455 | #define mSEC_5 (mSEC_1 * 5) |
