Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
kernel-entry-init.h
Go to the documentation of this file.
1 /*
2  * Atheros AR71XX/AR724X/AR913X specific kernel entry setup
3  *
4  * Copyright (C) 2009 Gabor Juhos <[email protected]>
5  *
6  * This program is free software; you can redistribute it and/or modify it
7  * under the terms of the GNU General Public License version 2 as published
8  * by the Free Software Foundation.
9  *
10  */
11 #ifndef __ASM_MACH_ATH79_KERNEL_ENTRY_H
12 #define __ASM_MACH_ATH79_KERNEL_ENTRY_H
13 
14  /*
15  * Some bootloaders set the 'Kseg0 coherency algorithm' to
16  * 'Cacheable, noncoherent, write-through, no write allocate'
17  * and this cause performance issues. Let's go and change it to
18  * 'Cacheable, noncoherent, write-back, write allocate'
19  */
20  .macro kernel_entry_setup
21  mfc0 t0, CP0_CONFIG
23  and t0, t1
25  mtc0 t0, CP0_CONFIG
26  nop
27  .endm
28 
29  .macro smp_slave_setup
30  .endm
31 
32 #endif /* __ASM_MACH_ATH79_KERNEL_ENTRY_H */