~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/arch/arm/mm/proc-arm740.S

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.12 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

Diff markup

Differences between /arch/arm/mm/proc-arm740.S (Architecture sparc) and /arch/ppc/mm/proc-arm740.S (Architecture ppc)


  1 /* SPDX-License-Identifier: GPL-2.0-only */       
  2 /*                                                
  3  *  linux/arch/arm/mm/arm740.S: utility functi    
  4  *                                                
  5  *  Copyright (C) 2004-2006 Hyok S. Choi (hyok    
  6  */                                               
  7 #include <linux/linkage.h>                        
  8 #include <linux/init.h>                           
  9 #include <linux/cfi_types.h>                      
 10 #include <linux/pgtable.h>                        
 11 #include <asm/assembler.h>                        
 12 #include <asm/asm-offsets.h>                      
 13 #include <asm/hwcap.h>                            
 14 #include <asm/pgtable-hwdef.h>                    
 15 #include <asm/ptrace.h>                           
 16                                                   
 17 #include "proc-macros.S"                          
 18                                                   
 19         .text                                     
 20 /*                                                
 21  * cpu_arm740_proc_init()                         
 22  * cpu_arm740_do_idle()                           
 23  * cpu_arm740_dcache_clean_area()                 
 24  * cpu_arm740_switch_mm()                         
 25  *                                                
 26  * These are not required.                        
 27  */                                               
 28 SYM_TYPED_FUNC_START(cpu_arm740_proc_init)        
 29         ret     lr                                
 30 SYM_FUNC_END(cpu_arm740_proc_init)                
 31                                                   
 32 SYM_TYPED_FUNC_START(cpu_arm740_do_idle)          
 33         ret     lr                                
 34 SYM_FUNC_END(cpu_arm740_do_idle)                  
 35                                                   
 36 SYM_TYPED_FUNC_START(cpu_arm740_dcache_clean_a    
 37         ret     lr                                
 38 SYM_FUNC_END(cpu_arm740_dcache_clean_area)        
 39                                                   
 40 SYM_TYPED_FUNC_START(cpu_arm740_switch_mm)        
 41         ret     lr                                
 42 SYM_FUNC_END(cpu_arm740_switch_mm)                
 43                                                   
 44 /*                                                
 45  * cpu_arm740_proc_fin()                          
 46  */                                               
 47 SYM_TYPED_FUNC_START(cpu_arm740_proc_fin)         
 48         mrc     p15, 0, r0, c1, c0, 0             
 49         bic     r0, r0, #0x3f000000               
 50         bic     r0, r0, #0x0000000c               
 51         mcr     p15, 0, r0, c1, c0, 0             
 52         ret     lr                                
 53 SYM_FUNC_END(cpu_arm740_proc_fin)                 
 54                                                   
 55 /*                                                
 56  * cpu_arm740_reset(loc)                          
 57  * Params  : r0 = address to jump to              
 58  * Notes   : This sets up everything for a res    
 59  */                                               
 60         .pushsection    .idmap.text, "ax"         
 61 SYM_TYPED_FUNC_START(cpu_arm740_reset)            
 62         mov     ip, #0                            
 63         mcr     p15, 0, ip, c7, c0, 0             
 64         mrc     p15, 0, ip, c1, c0, 0             
 65         bic     ip, ip, #0x0000000c               
 66         mcr     p15, 0, ip, c1, c0, 0             
 67         ret     r0                                
 68 SYM_FUNC_END(cpu_arm740_reset)                    
 69         .popsection                               
 70                                                   
 71         .type   __arm740_setup, #function         
 72 __arm740_setup:                                   
 73         mov     r0, #0                            
 74         mcr     p15, 0, r0, c7, c0, 0             
 75                                                   
 76         mcr     p15, 0, r0, c6, c3                
 77         mcr     p15, 0, r0, c6, c4                
 78         mcr     p15, 0, r0, c6, c5                
 79         mcr     p15, 0, r0, c6, c6                
 80         mcr     p15, 0, r0, c6, c7                
 81                                                   
 82         mov     r0, #0x0000003F                   
 83         mcr     p15, 0, r0, c6, c0                
 84                                                   
 85         ldr     r0, =(CONFIG_DRAM_BASE & 0xFFF    
 86         ldr     r3, =(CONFIG_DRAM_SIZE >> 12)     
 87         mov     r4, #10                           
 88 1:      add     r4, r4, #1                        
 89         movs    r3, r3, lsr #1                    
 90         bne     1b                                
 91         orr     r0, r0, r4, lsl #1                
 92         orr     r0, r0, #1                        
 93         mcr     p15, 0, r0, c6, c1                
 94                                                   
 95         ldr     r0, =(CONFIG_FLASH_MEM_BASE &     
 96         ldr     r3, =(CONFIG_FLASH_SIZE >> 12)    
 97         cmp     r3, #0                            
 98         moveq   r0, #0                            
 99         beq     2f                                
100         mov     r4, #10                           
101 1:      add     r4, r4, #1                        
102         movs    r3, r3, lsr #1                    
103         bne     1b                                
104         orr     r0, r0, r4, lsl #1                
105         orr     r0, r0, #1                        
106 2:      mcr     p15, 0, r0, c6, c2                
107                                                   
108         mov     r0, #0x06                         
109         mcr     p15, 0, r0, c2, c0                
110 #ifdef CONFIG_CPU_DCACHE_WRITETHROUGH             
111         mov     r0, #0x00                         
112 #else                                             
113         mov     r0, #0x02                         
114 #endif                                            
115         mcr     p15, 0, r0, c3, c0                
116                                                   
117         mov     r0, #0x10000                      
118         sub     r0, r0, #1                        
119         mcr     p15, 0, r0, c5, c0                
120                                                   
121         mrc     p15, 0, r0, c1, c0                
122         bic     r0, r0, #0x3F000000               
123                                                   
124         orr     r0, r0, #0x0000000d               
125                                                   
126         ret     lr                                
127                                                   
128         .size   __arm740_setup, . - __arm740_s    
129                                                   
130         __INITDATA                                
131                                                   
132         @ define struct processor (see <asm/pr    
133         define_processor_functions arm740, dab    
134                                                   
135         .section ".rodata"                        
136                                                   
137         string  cpu_arch_name, "armv4"            
138         string  cpu_elf_name, "v4"                
139         string  cpu_arm740_name, "ARM740T"        
140                                                   
141         .align                                    
142                                                   
143         .section ".proc.info.init", "a"           
144         .type   __arm740_proc_info,#object        
145 __arm740_proc_info:                               
146         .long   0x41807400                        
147         .long   0xfffffff0                        
148         .long   0                                 
149         .long   0                                 
150         initfn  __arm740_setup, __arm740_proc_    
151         .long   cpu_arch_name                     
152         .long   cpu_elf_name                      
153         .long   HWCAP_SWP | HWCAP_HALF | HWCAP    
154         .long   cpu_arm740_name                   
155         .long   arm740_processor_functions        
156         .long   0                                 
157         .long   0                                 
158         .long   v4_cache_fns                      
159         .size   __arm740_proc_info, . - __arm7    
                                                      

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php