1
Commit Graph

145246 Commits

Author SHA1 Message Date
Andrew Morton
77bc7ac87d microblaze: remove unused flat_stack_align() definition
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Michal Simek <monstr@monstr.eu>
2009-06-02 07:54:36 +02:00
Michal Simek
fee3c55d7f microblaze: Fix problem with early_printk in startup
Problem arise when is incopatibility between kernel/dts/pvr
and kernel tries to announce it. Early printk device
(uartlite in our case) was in TLB 2 and when kernel
extract DTB it necessary to allocate at least one
TLB at the end of memory. First free TLB was number two
where was early printk. But checking mechanism (kernel/dts/pvr)
was after extrahing but TLB 2 was different. This caused
that kernel hung up.
Moving early printk device to TLB 63 solve it and we don't
protect it which means that we can use early_printk messages
only for initial parts of kernel then we rewrite TLB 63.

Reported-by: Edgar E. Iglesias <edgar.iglesias@gmail.com>
Signed-off-by: Michal Simek <monstr@monstr.eu>
2009-05-30 16:40:58 +02:00
Michal Simek
4b2368ffd6 microblaze_mmu_v2: Makefiles
Signed-off-by: Michal Simek <monstr@monstr.eu>
2009-05-26 16:45:24 +02:00
Michal Simek
a116f6d5db microblaze_mmu_v2: Kconfig update
Signed-off-by: Michal Simek <monstr@monstr.eu>
2009-05-26 16:45:24 +02:00
Michal Simek
8b3f7d5c0b microblaze_mmu_v2: stat.h MMU update
Signed-off-by: Michal Simek <monstr@monstr.eu>
2009-05-26 16:45:24 +02:00
Michal Simek
e57a221f15 microblaze_mmu_v2: Elf update
Signed-off-by: Michal Simek <monstr@monstr.eu>
2009-05-26 16:45:23 +02:00
Michal Simek
dcffc1b291 microblaze_mmu_v2: Update dma.h for MMU
Signed-off-by: Michal Simek <monstr@monstr.eu>
2009-05-26 16:45:22 +02:00
Michal Simek
46fb9be93b microblaze_mmu_v2: Update cacheflush.h
Signed-off-by: Michal Simek <monstr@monstr.eu>
2009-05-26 16:45:22 +02:00
Michal Simek
8b28626a6b microblaze_mmu_v2: Update signal returning address
Signed-off-by: Michal Simek <monstr@monstr.eu>
2009-05-26 16:45:22 +02:00
Michal Simek
17f3324c3e microblaze_mmu_v2: Traps MMU update
Signed-off-by: Michal Simek <monstr@monstr.eu>
2009-05-26 16:45:21 +02:00
Michal Simek
65504a47e0 microblaze_mmu_v2: Enable fork syscall for MMU and add fork as vfork for noMMU
Signed-off-by: Michal Simek <monstr@monstr.eu>
2009-05-26 16:45:21 +02:00
Michal Simek
d4c1285ef0 microblaze_mmu_v2: Update linker script for MMU
Signed-off-by: Michal Simek <monstr@monstr.eu>
2009-05-26 16:45:20 +02:00
Michal Simek
4bb73c3de7 microblaze_mmu_v2: Add MMU related exceptions handling
Signed-off-by: Michal Simek <monstr@monstr.eu>
2009-05-26 16:45:20 +02:00
Michal Simek
0d6de95326 microblaze_mmu_v2: uaccess MMU update
Signed-off-by: Michal Simek <monstr@monstr.eu>
2009-05-26 16:45:20 +02:00
Michal Simek
7db29dde73 microblaze_mmu_v2: Update exception handling - MMU exception
Signed-off-by: Michal Simek <monstr@monstr.eu>
2009-05-26 16:45:20 +02:00
Michal Simek
ca54502bd5 microblaze_mmu_v2: entry.S, entry.h
Signed-off-by: Michal Simek <monstr@monstr.eu>
2009-05-26 16:45:20 +02:00
Michal Simek
23cfc36933 microblaze_mmu_v2: Add CURRENT_TASK for entry.S
Signed-off-by: Michal Simek <monstr@monstr.eu>
2009-05-26 16:45:19 +02:00
Michal Simek
627cef44f4 microblaze_mmu_v2: MMU asm offset update
Signed-off-by: Michal Simek <monstr@monstr.eu>
2009-05-26 16:45:19 +02:00
Michal Simek
45be7d46a9 microblaze_mmu_v2: Update tlb.h and tlbflush.h
Signed-off-by: Michal Simek <monstr@monstr.eu>
2009-05-26 16:45:19 +02:00
Michal Simek
5233806dfe microblaze_mmu_v2: Update process creation for MMU
Signed-off-by: Michal Simek <monstr@monstr.eu>
2009-05-26 16:45:18 +02:00
Michal Simek
1f84e1ea0e microblaze_mmu_v2: pgalloc.h and page.h
Signed-off-by: Michal Simek <monstr@monstr.eu>
2009-05-26 16:45:18 +02:00
Michal Simek
dc95be1f71 microblaze_mmu_v2: io.h MMU update
Signed-off-by: Michal Simek <monstr@monstr.eu>
2009-05-26 16:45:16 +02:00
Michal Simek
15902bf63c microblaze_mmu_v2: Page table - ioremap - pgtable.c/h, section update
Signed-off-by: Michal Simek <monstr@monstr.eu>
2009-05-26 16:45:16 +02:00
Michal Simek
fc34d1eb1c microblaze_mmu_v2: Context handling - mmu_context.c/h
Signed-off-by: Michal Simek <monstr@monstr.eu>
2009-05-26 16:45:15 +02:00
Michal Simek
5de9612100 microblaze_mmu_v2: Page fault handling high level - fault.c
Signed-off-by: Michal Simek <monstr@monstr.eu>
2009-05-26 16:45:15 +02:00
Michal Simek
23098649e0 microblaze_mmu_v2: mmu.h update
Signed-off-by: Michal Simek <monstr@monstr.eu>
2009-05-26 16:45:15 +02:00
Michal Simek
4dc60832f5 microblaze_mmu_v2: MMU initialization
Signed-off-by: Michal Simek <monstr@monstr.eu>
2009-05-26 16:45:15 +02:00
Michal Simek
3f50425c0c microblaze_mmu_v2: TLB low level code
Signed-off-by: Michal Simek <monstr@monstr.eu>
2009-05-26 16:45:14 +02:00
Michal Simek
a43acfbbc8 microblaze_mmu_v2: Alocate TLB for early console
Signed-off-by: Michal Simek <monstr@monstr.eu>
2009-05-26 16:45:14 +02:00
Michal Simek
5846cc608f microblaze_mmu_v2: MMU update for startup code
Signed-off-by: Michal Simek <monstr@monstr.eu>
2009-05-26 16:45:14 +02:00
Michal Simek
2c65b4665f microblaze_mmu_v2: Add mmu_defconfig
Signed-off-by: Michal Simek <monstr@monstr.eu>
2009-05-26 16:45:13 +02:00
Michal Simek
2f3a499e6b microblaze: Fix size of __kernel_mode_t to short
This patches solve problem with inconsistency between
kernel and glibc

Signed-off-by: Michal Simek <monstr@monstr.eu>
2009-05-26 16:43:38 +02:00
Edgar E. Iglesias
0945f98b4a microblaze: Add audit and seccomp thread flags.
Signed-off-by: Edgar E. Iglesias <edgar.iglesias@gmail.com>
2009-05-26 16:43:22 +02:00
Michal Simek
aaf22af46f microblaze: Kbuild update
Signed-off-by: Michal Simek <monstr@monstr.eu>
2009-05-22 09:50:46 +02:00
Michal Simek
b9479e6665 microblaze: Fix cast warning for __va in prom.c
__va expect 32bit value but of_read_ulong(of_read_number)
returns 64bit value

Signed-off-by: Michal Simek <monstr@monstr.eu>
2009-05-21 16:39:58 +02:00
Michal Simek
e93b55bfb3 Microblaze: Remove unused variable from paging init
Signed-off-by: Michal Simek <monstr@monstr.eu>
2009-05-21 16:39:52 +02:00
Michal Simek
cda1fd5a60 microblaze: Cleanup compiled-in rootfs in BSS section
This patch is based on patch from Steve Magnani.

There were bug for compiled-in rootfs. We have to move
moving rootfs which is in BSS section to _ebss section
which is at the end of kernel and then clear bss section
not vice-versa.

Signed-off-by: Michal Simek <monstr@monstr.eu>
2009-05-21 16:39:16 +02:00
Michal Simek
1dff89a9c7 microblaze: Fix early cmdline for CMDLINE_FORCE
This patch fixed parsing early parameters because
current implementation does that early parse DTS
command line and then parse CMDLINE line which is compiled-in.

For case that DTS doesn't contain command line is
copied command line from kernel with is done in prom.c
that's why I can remove it from machine_early_init.

Signed-off-by: Michal Simek <monstr@monstr.eu>
2009-05-21 16:39:05 +02:00
Steve Magnani
6e3d4e1d16 microblaze: Guard __HAVE_ARCH macros with __KERNEL__ in string.h
A polarity reversal in the __KERNEL__ guard prevents the __HAVE_ARCH
flags from being defined in kernel compilation.

I noticed that there's now an option for assembly-optimized versions of
memcpy and memmove. I believe this may be buggy; when I turn it on, all
my printk output gets smashed together, as if the newlines aren't getting
copied.

Signed-off-by: Steven J. Magnani <steve@digidescorp.com>
Signed-off-by: Michal Simek <monstr@monstr.eu>
2009-05-21 15:56:08 +02:00
Thomas Chou
c3055d1456 microblaze: clean LDFLAGS to build kernel
Extra LDFLAGS from user space building may cause kernel failed
to compile.

Signed-off-by: Thomas Chou <thomas@wytron.com.tw>
Signed-off-by: Michal Simek <monstr@monstr.eu>
2009-05-21 15:56:08 +02:00
Steve Magnani
5af9043802 microblaze: Fix paging init-zone initialization
This patch fix problem with bad zone initialization.
This bug wasn't perform because Microblaze doesn't
define CONFIG_ZONE_DMA and ZONE_NORMAL was 0 for this case
that's why free_area_init works with correct values.

Original message:
I believe that the switch from ZONE_DMA (== 0) to ZONE_NORMAL
broke the free area initialization.

Signed-off-by: Steven J. Magnani <steve@digidescorp.com>
Signed-off-by: Michal Simek <monstr@monstr.eu>
2009-05-21 15:56:07 +02:00
Arnd Bergmann
f2224ff07f microblaze: use generic dma-mapping-broken.h
Microblaze does not support the Linux DMA mapping API
at this point, so disable CONFIG_NO_DMA. This lets
us use the generic dma-mapping-broken.h implementation
instead of providing a different copy.

Any drivers that try to use DMA mapping now get
omitted from Kconfig or produce a link error, rather
than failing silently at run time.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Michal Simek <monstr@monstr.eu>
2009-05-21 15:56:07 +02:00
Michal Simek
a6029d1c8c microblaze: prepare signal handling for generic unistd.h
We need to define set_restore_sigmask() in order to
get pselect and ppoll. Also, the setup_frame function
can not be used when __NR_sigreturn is not defined.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Michal Simek <monstr@monstr.eu>
2009-05-21 15:56:07 +02:00
Arnd Bergmann
732703af9c microblaze: clean up checksum.c
This changes the function prototypes in the checksum code
to have the usual prototypes, typically by turning int
arguments into __wsum.

Also change csum_partial_copy_from_user() to operate
on the right address space and export ip_fast_csum,
which is used in modular networking code.

The new version is now sparse-clean including endianess
checks.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Michal Simek <monstr@monstr.eu>
2009-05-21 15:56:07 +02:00
Arnd Bergmann
838d2406ee microblaze: remove bad_user_access_length
This function was actually causing harm, by hiding
errors about invalid sized get_user/put_user accesses.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Michal Simek <monstr@monstr.eu>
2009-05-21 15:56:06 +02:00
Arnd Bergmann
bb09791344 microblaze: do not include types.h in ptrace.h
linux/types.h breaks the uclibc build, so don't
include it here.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Michal Simek <monstr@monstr.eu>
2009-05-21 15:56:06 +02:00
Arnd Bergmann
0c60155e14 microblaze: add a dummy pgprot_noncached
Some device drivers call this, so add a macro
that pretends to do this. Since there is no
MMU support, it won't actually result in an
uncached mapping, though.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Michal Simek <monstr@monstr.eu>
2009-05-21 15:56:06 +02:00
Arnd Bergmann
6b4374261a microblaze: add security initcalls
The security subsystem has its own initcalls, which
need support in vmlinux.lds.S.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Michal Simek <monstr@monstr.eu>
2009-05-21 15:56:06 +02:00
Arnd Bergmann
122eec2f02 microblaze: remove cacheable_memcpy
This function is neither declared nor used anywhere
outside of ppc32, so remove it from microblaze.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Michal Simek <monstr@monstr.eu>
2009-05-21 15:56:05 +02:00
Arnd Bergmann
70f4cc2935 microblaze: kill incorrect __bad_xchg definition
The whole point of the __bad_xchg declaration in
system.h is to give a linker error when a variable
of invalid size is passed to __xchg. The out
of line definition in traps.c defeats this purpose
and does not any value, so remove it here.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Michal Simek <monstr@monstr.eu>
2009-05-21 15:56:05 +02:00