Michal Simek
0691c97d74
microblaze: Use MICROBLAZE_TLB_SIZE in asm code
...
TLB size was hardcoded in asm code. This patch brings ability
to change TLB size only in one place. (mmu.h).
Signed-off-by: Michal Simek <monstr@monstr.eu >
2010-04-01 08:38:24 +02:00
Michal Simek
9373dd6ab1
microblaze: Kconfig Fix - pci
...
I forget to remove pci Kconfig option.
Signed-off-by: Michal Simek <monstr@monstr.eu >
2010-04-01 08:38:24 +02:00
Michal Simek
78ebfa884b
microblaze: Adding likely macros
...
On the base on GCOV analytics is helpful to add likely/unlikely
macros.
Signed-off-by: Michal Simek <monstr@monstr.eu >
2010-04-01 08:38:24 +02:00
Michal Simek
13851966da
microblaze: Add .type and .size to ASM functions
...
Cachegrind analysis need this fix to be able to log asm functions.
Signed-off-by: Michal Simek <monstr@monstr.eu >
2010-04-01 08:38:24 +02:00
Michal Simek
e84452dd9f
microblaze: Fix TLB macros
...
To be able to do trace TLB operations.
Signed-off-by: Michal Simek <monstr@monstr.eu >
2010-04-01 08:38:24 +02:00
Michal Simek
3765d6958d
microblaze: Use instruction with delay slot
...
Sync labels.
Signed-off-by: Michal Simek <monstr@monstr.eu >
2010-04-01 08:38:23 +02:00
Michal Simek
bd1637d63e
microblaze: Remove additional resr and rear loading
...
RESR and REAR uses the same regs in whole file.
Signed-off-by: Michal Simek <monstr@monstr.eu >
2010-04-01 08:38:23 +02:00
Michal Simek
b175bcfe31
microblaze: Change register usage for ESR and EAR
...
This change synchronize register usage in code.
ESR = R4
EAR = R3
Signed-off-by: Michal Simek <monstr@monstr.eu >
2010-04-01 08:38:23 +02:00
Michal Simek
7a6bbdc930
microblaze: Prepare work for optimization in exception code
...
Any sync branch must follow mts instructions not mfs.
Signed-off-by: Michal Simek <monstr@monstr.eu >
2010-04-01 08:38:23 +02:00
Michal Simek
708e7153d6
microblaze: Add DEBUG option
...
Disable debug option in asm code.
Signed-off-by: Michal Simek <monstr@monstr.eu >
2010-04-01 08:38:23 +02:00
Michal Simek
ee68f1745e
microblaze: Support systems without lmb bram
...
When the system has no lmb bram, main memory should be start from
zero because of microblaze vectors.
DTS fragment could look like:
DDR2_SDRAM: memory@0 {
device_type = "memory";
reg = < 0x0 0x10000000 >;
} ;
Then you have to setup CONFIG_KERNEL_BASE_ADDR=0 which caused
that kernel physical start address will be zero. On reset vector place
will be jump to 0x100 and on 0x100 starts kernel text.
You have to solve how to load the kernel before cpu starts.
Tested with XMD.
Signed-off-by: Michal Simek <monstr@monstr.eu >
2010-04-01 08:38:23 +02:00
Michal Simek
89ae9753ae
microblaze: uaccess: Sync strlen, strnlen, copy_to/from_user
...
Last sync.
Signed-off-by: Michal Simek <monstr@monstr.eu >
2010-04-01 08:38:23 +02:00
Michal Simek
94804a9b3d
microblaze: uaccess: Unify __copy_tofrom_user
...
Move to generic location.
Signed-off-by: Michal Simek <monstr@monstr.eu >
2010-04-01 08:38:22 +02:00
Michal Simek
cca79120c2
microblaze: uaccess: Move functions to generic location
...
noMMU and MMU use them.
Signed-off-by: Michal Simek <monstr@monstr.eu >
2010-04-01 08:38:22 +02:00
Michal Simek
ef4e277b5d
microblaze: uaccess: Fix put_user for noMMU
...
Here is small regression on dhrystone tests and I think
that on all benchmarking tests. It is due to better checking
mechanism in put_user macro
Signed-off-by: Michal Simek <monstr@monstr.eu >
2010-04-01 08:38:22 +02:00
Michal Simek
3a6d77245e
microblaze: uaccess: Fix get_user macro for noMMU
...
Use unified version.
Signed-off-by: Michal Simek <monstr@monstr.eu >
2010-04-01 08:38:22 +02:00
Michal Simek
527bdb52d5
microblaze: uaccess: fix clear_user for noMMU kernel
...
Previous patches fixed only MMU version and this is the first
patch for noMMU kernel
Signed-off-by: Michal Simek <monstr@monstr.eu >
2010-04-01 08:38:21 +02:00
Michal Simek
40e11e3380
microblaze: uaccess: Fix strncpy_from_user function
...
Generic implementation for noMMU and MMU version
Signed-off-by: Michal Simek <monstr@monstr.eu >
2010-04-01 08:38:21 +02:00
Michal Simek
4270690bd4
microblaze: uaccess: fix copy_from_user macro
...
copy_from_user macro also use copy_tofrom_user function
Signed-off-by: Michal Simek <monstr@monstr.eu >
2010-04-01 08:38:21 +02:00
Michal Simek
cc5a428b7a
microblaze: uaccess: copy_to_user unification
...
noMMU and MMU kernel will use copy copy_tofrom_user
asm implementation.
Signed-off-by: Michal Simek <monstr@monstr.eu >
2010-04-01 08:38:20 +02:00
Michal Simek
0dcb409de7
microblaze: uaccess: sync put/get/clear_user macros
...
Add macro description and resort.
Signed-off-by: Michal Simek <monstr@monstr.eu >
2010-04-01 08:38:20 +02:00
Michal Simek
8b651aa4a7
microblaze: uaccess: fix put_user and get_user macros
...
Use FIXUP macros and resort them.
Signed-off-by: Michal Simek <monstr@monstr.eu >
2010-04-01 08:38:20 +02:00
Michal Simek
c77a9c4bb7
microblaze: uaccess: fix __get_user_asm macro
...
It is used __FIXUP_SECTION and __EX_TABLE_SECTION macros.
Signed-off-by: Michal Simek <monstr@monstr.eu >
2010-04-01 08:38:20 +02:00
Michal Simek
40b1156db0
microblaze: uaccess: fix clean user macro
...
This is the first patch which does uaccess unification.
I choosed to do several patches to be able to use bisect
in future if any fault happens.
Signed-off-by: Michal Simek <monstr@monstr.eu >
2010-04-01 08:38:20 +02:00
Michal Simek
60a729f7bb
microblaze: move noMMU __range_ok function to uaccess.h
...
The same noMMU and MMU functions should be placed in
one file.
Signed-off-by: Michal Simek <monstr@monstr.eu >
2010-04-01 08:38:20 +02:00