aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mm
diff options
context:
space:
mode:
authorDave Martin <dave.martin@linaro.org>2011-06-23 12:26:38 -0400
committerDave Martin <dave.martin@linaro.org>2011-07-07 10:31:11 -0400
commitc21898f9f02f8d54d09905ea4ce3a47592900ec4 (patch)
tree76c34ff01568e8bf5280aa7b074b26b6f1901082 /arch/arm/mm
parent78a8f3c365b8851eb9862c54425e95bfd523f22d (diff)
ARM: mm: proc-xsc3: Use new generic struct definition macros
Signed-off-by: Dave Martin <dave.martin@linaro.org>
Diffstat (limited to 'arch/arm/mm')
-rw-r--r--arch/arm/mm/proc-xsc3.S90
1 files changed, 17 insertions, 73 deletions
diff --git a/arch/arm/mm/proc-xsc3.S b/arch/arm/mm/proc-xsc3.S
index 596213699f37..1508f9bc526a 100644
--- a/arch/arm/mm/proc-xsc3.S
+++ b/arch/arm/mm/proc-xsc3.S
@@ -335,17 +335,8 @@ ENTRY(xsc3_dma_unmap_area)
335 mov pc, lr 335 mov pc, lr
336ENDPROC(xsc3_dma_unmap_area) 336ENDPROC(xsc3_dma_unmap_area)
337 337
338ENTRY(xsc3_cache_fns) 338 @ define struct cpu_cache_fns (see <asm/cacheflush.h> and proc-macros.S)
339 .long xsc3_flush_icache_all 339 define_cache_functions xsc3
340 .long xsc3_flush_kern_cache_all
341 .long xsc3_flush_user_cache_all
342 .long xsc3_flush_user_cache_range
343 .long xsc3_coherent_kern_range
344 .long xsc3_coherent_user_range
345 .long xsc3_flush_kern_dcache_area
346 .long xsc3_dma_map_area
347 .long xsc3_dma_unmap_area
348 .long xsc3_dma_flush_range
349 340
350ENTRY(cpu_xsc3_dcache_clean_area) 341ENTRY(cpu_xsc3_dcache_clean_area)
3511: mcr p15, 0, r0, c7, c10, 1 @ clean L1 D line 3421: mcr p15, 0, r0, c7, c10, 1 @ clean L1 D line
@@ -503,52 +494,24 @@ xsc3_crval:
503 494
504 __INITDATA 495 __INITDATA
505 496
506/* 497 @ define struct processor (see <asm/proc-fns.h> and proc-macros.S)
507 * Purpose : Function pointers used to access above functions - all calls 498 define_processor_functions xsc3, dabort=v5t_early_abort, pabort=legacy_pabort, suspend=1
508 * come through these
509 */
510
511 .type xsc3_processor_functions, #object
512ENTRY(xsc3_processor_functions)
513 .word v5t_early_abort
514 .word legacy_pabort
515 .word cpu_xsc3_proc_init
516 .word cpu_xsc3_proc_fin
517 .word cpu_xsc3_reset
518 .word cpu_xsc3_do_idle
519 .word cpu_xsc3_dcache_clean_area
520 .word cpu_xsc3_switch_mm
521 .word cpu_xsc3_set_pte_ext
522 .word cpu_xsc3_suspend_size
523 .word cpu_xsc3_do_suspend
524 .word cpu_xsc3_do_resume
525 .size xsc3_processor_functions, . - xsc3_processor_functions
526 499
527 .section ".rodata" 500 .section ".rodata"
528 501
529 .type cpu_arch_name, #object 502 string cpu_arch_name, "armv5te"
530cpu_arch_name: 503 string cpu_elf_name, "v5"
531 .asciz "armv5te" 504 string cpu_xsc3_name, "XScale-V3 based processor"
532 .size cpu_arch_name, . - cpu_arch_name
533
534 .type cpu_elf_name, #object
535cpu_elf_name:
536 .asciz "v5"
537 .size cpu_elf_name, . - cpu_elf_name
538
539 .type cpu_xsc3_name, #object
540cpu_xsc3_name:
541 .asciz "XScale-V3 based processor"
542 .size cpu_xsc3_name, . - cpu_xsc3_name
543 505
544 .align 506 .align
545 507
546 .section ".proc.info.init", #alloc, #execinstr 508 .section ".proc.info.init", #alloc, #execinstr
547 509
548 .type __xsc3_proc_info,#object 510.macro xsc3_proc_info name:req, cpu_val:req, cpu_mask:req
549__xsc3_proc_info: 511 .type __\name\()_proc_info,#object
550 .long 0x69056000 512__\name\()_proc_info:
551 .long 0xffffe000 513 .long \cpu_val
514 .long \cpu_mask
552 .long PMD_TYPE_SECT | \ 515 .long PMD_TYPE_SECT | \
553 PMD_SECT_BUFFERABLE | \ 516 PMD_SECT_BUFFERABLE | \
554 PMD_SECT_CACHEABLE | \ 517 PMD_SECT_CACHEABLE | \
@@ -566,29 +529,10 @@ __xsc3_proc_info:
566 .long v4wbi_tlb_fns 529 .long v4wbi_tlb_fns
567 .long xsc3_mc_user_fns 530 .long xsc3_mc_user_fns
568 .long xsc3_cache_fns 531 .long xsc3_cache_fns
569 .size __xsc3_proc_info, . - __xsc3_proc_info 532 .size __\name\()_proc_info, . - __\name\()_proc_info
533.endm
570 534
571/* Note: PXA935 changed its implementor ID from Intel to Marvell */ 535 xsc3_proc_info xsc3, 0x69056000, 0xffffe000
572 536
573 .type __xsc3_pxa935_proc_info,#object 537/* Note: PXA935 changed its implementor ID from Intel to Marvell */
574__xsc3_pxa935_proc_info: 538 xsc3_proc_info xsc3_pxa935, 0x56056000, 0xffffe000
575 .long 0x56056000
576 .long 0xffffe000
577 .long PMD_TYPE_SECT | \
578 PMD_SECT_BUFFERABLE | \
579 PMD_SECT_CACHEABLE | \
580 PMD_SECT_AP_WRITE | \
581 PMD_SECT_AP_READ
582 .long PMD_TYPE_SECT | \
583 PMD_SECT_AP_WRITE | \
584 PMD_SECT_AP_READ
585 b __xsc3_setup
586 .long cpu_arch_name
587 .long cpu_elf_name
588 .long HWCAP_SWP|HWCAP_HALF|HWCAP_THUMB|HWCAP_FAST_MULT|HWCAP_EDSP
589 .long cpu_xsc3_name
590 .long xsc3_processor_functions
591 .long v4wbi_tlb_fns
592 .long xsc3_mc_user_fns
593 .long xsc3_cache_fns
594 .size __xsc3_pxa935_proc_info, . - __xsc3_pxa935_proc_info