aboutsummaryrefslogtreecommitdiffstats
path: root/arch/microblaze/kernel
Commit message (Collapse)AuthorAge
* Merge branch 'for-linus' of git://git.monstr.eu/linux-2.6-microblazeLinus Torvalds2010-03-18
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 'for-linus' of git://git.monstr.eu/linux-2.6-microblaze: (27 commits) microblaze: entry.S use delay slot for return handlers microblaze: Save current task directly microblaze: Simplify entry.S - save/restore r3/r4 - ret_from_trap microblaze: PCI early support for noMMU system microblaze: Fix dma alloc and free coherent dma functions microblaze: Add consistent code microblaze: pgtable.h: move consistent functions microblaze: Remove ancient Kconfig option for consistent mapping microblaze: Remove VMALLOC_VMADDR microblaze: Add define for ASM_LOOP microblaze: Preliminary support for dma drivers microblaze: remove trailing space in messages microblaze: Use generic show_mem() microblaze: Change temp register for cmdline microblaze: Preliminary support for dma drivers microblaze: Move cache function to cache.c microblaze: Add support from PREEMPT microblaze: Add support for Xilinx PCI host bridge microblaze: Enable PCI, missing files microblaze: Add core PCI files ...
| * microblaze: entry.S use delay slot for return handlersMichal Simek2010-03-11
| | | | | | | | Signed-off-by: Michal Simek <monstr@monstr.eu>
| * microblaze: Save current task directlyMichal Simek2010-03-11
| | | | | | | | Signed-off-by: Michal Simek <monstr@monstr.eu>
| * microblaze: Simplify entry.S - save/restore r3/r4 - ret_from_trapMichal Simek2010-03-11
| | | | | | | | | | | | | | There is possible to save r3/r4 at the beggining of user part before calling handlers and at the end restore it. Signed-off-by: Michal Simek <monstr@monstr.eu>
| * microblaze: Fix dma alloc and free coherent dma functionsMichal Simek2010-03-11
| | | | | | | | | | | | | | | | | | | | We have to use consistent code to be able to do coherent dma function. In consistent code is used cache inhibit page mapping. Xilinx reported that there is bug in Microblaze for WB and d-cache_always use option. Microblaze 7.30.a should be first version where is this bug removed. Signed-off-by: Michal Simek <monstr@monstr.eu>
| * microblaze: Add define for ASM_LOOPMichal Simek2010-03-11
| | | | | | | | | | | | It is default option but both options must be measured. Signed-off-by: Michal Simek <monstr@monstr.eu>
| * microblaze: Preliminary support for dma driversMichal Simek2010-03-11
| | | | | | | | | | | | | | | | I found several problems for ll_temac driver and on system with WB. This early fix should fix it. I will clean this patch before I will add it to mainline Signed-off-by: Michal Simek <monstr@monstr.eu>
| * microblaze: remove trailing space in messagesFrans Pop2010-03-11
| | | | | | | | | | | | | | Signed-off-by: Frans Pop <elendil@planet.nl> Cc: microblaze-uclinux@itee.uq.edu.au Cc: Michal Simek <monstr@monstr.eu> Signed-off-by: Michal Simek <monstr@monstr.eu>
| * microblaze: Change temp register for cmdlineMichal Simek2010-03-11
| | | | | | | | | | | | | | | | | | | | For copy was used r7 register when CONFIG_CMDLINE_BOOL option is enabled. But r7 stores pointer to fdt that's why machine_early_init not detect compiled-in DTB. I also moved kernel PID setup to have TLB init in one block Signed-off-by: Michal Simek <monstr@monstr.eu>
| * microblaze: Preliminary support for dma driversMichal Simek2010-03-11
| | | | | | | | | | | | | | | | I found several problems for ll_temac driver and on system with WB. This early fix should fix it. I will clean this patch before I will add it to mainline Signed-off-by: Michal Simek <monstr@monstr.eu>
| * microblaze: Move cache function to cache.cMichal Simek2010-03-11
| | | | | | | | | | | | It is better to have init cache handling on one place. Signed-off-by: Michal Simek <monstr@monstr.eu>
| * microblaze: Add support from PREEMPTMichal Simek2010-03-11
| | | | | | | | | | | | | | | | | | This patch add core PREEMPT support for Microblaze. I tried to trace it via tracers and I was able to see any output. I also added low level debug functions to see if that code is called. Signed-off-by: Michal Simek <monstr@monstr.eu>
| * microblaze: Add support for Xilinx PCI host bridgeMichal Simek2010-03-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch is based on powerpc patch 64f16502475ddf663169369fffff6da9b10ea9fb We did some cleanups and removed powerpc parts. There is one new debug early listing function too. Exclude function is only in Debug options. We tested in on custom board. Signed-off-by: Michal Simek <monstr@monstr.eu>
| * microblaze: Add irq_create_{of_,}mapping functionsMichal Simek2010-03-11
| | | | | | | | | | | | | | Support function for PCI. We don't use any advance mapping mechanism that's why implementation is simple. Signed-off-by: Michal Simek <monstr@monstr.eu>
| * microblaze: Implement __dma_sync_pageMichal Simek2010-03-11
| | | | | | | | | | | | There is necessary to do some cache handling for dma operations. Signed-off-by: Michal Simek <monstr@monstr.eu>
| * microblaze: Support DMAMichal Simek2010-03-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add DMA support for Microblaze. There are some part of this new feature: 1. Basic DMA support 2. Enable DMA debug option 3. Setup notifier Ad 1. dma-mapping come from powerpc and x86 version and it is based on generic dma-mapping-common.h Ad 2. DMA support debug features which is used in generic file. For more information please look at Documentation/DMA-API.txt Ad 3. notifier is very important to setup dma_ops. Without this part for example ll_temac driver failed because there are no setup dma operations. Signed-off-by: Michal Simek <monstr@monstr.eu>
* | microblaze: use generic ptrace_resume codeChristoph Hellwig2010-03-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Use the generic ptrace_resume code for PTRACE_SYSCALL, PTRACE_CONT and PTRACE_KILL. This also makes PTRACE_SINGLESTEP return -EIO while it previously succeeded despite not actually causing any kind of single stepping. Also the TIF_SYSCALL_TRACE thread flag is now cleared on PTRACE_KILL which it previously wasn't which is consistent with all architectures using the modern ptrace code. Signed-off-by: Christoph Hellwig <hch@lst.de> Cc: Oleg Nesterov <oleg@redhat.com> Cc: Roland McGrath <roland@redhat.com> Acked-by: Michal Simek <monstr@monstr.eu> Cc: John Williams <john.williams@petalogix.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* | ptrace: use ptrace_request() in the remaining architecturesChristoph Hellwig2010-03-12
|/ | | | | | | | | | | | | | | | | | | | | Use ptrace_request() in the three remaining architectures that didn't use it (m68knommu, h8300, microblaze). This means: - ptrace_request now handles PTRACE_{PEEK,POKE}{TEXT,DATA} and PTRACE_DETATCH calls that were previously called directly, or in case of h8300 even open coded. - adds new support for PTRACE_SETOPTIONS/PTRACE_GETEVENTMSG/ PTRACE_GETSIGINFO/PTRACE_SETSIGINFO Signed-off-by: Christoph Hellwig <hch@lst.de> Cc: Geert Uytterhoeven <geert@linux-m68k.org> Cc: Yoshinori Sato <ysato@users.sourceforge.jp> Cc: Oleg Nesterov <oleg@redhat.com> Cc: Michal Simek <monstr@monstr.eu> Acked-by: Greg Ungerer <gerg@uclinux.org> Acked-by: Roland McGrath <roland@redhat.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* Merge branch 'next-devicetree' of git://git.secretlab.ca/git/linux-2.6Linus Torvalds2010-02-25
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 'next-devicetree' of git://git.secretlab.ca/git/linux-2.6: (41 commits) of: remove undefined request_OF_resource & release_OF_resource of/sparc: Remove sparc-local declaration of allnodes and devtree_lock of: move definition of of_chosen into common code. of: remove unused extern reference to devtree_lock of: put default string compare and #a/s-cell values into common header of/flattree: Don't assume HAVE_LMB of: protect linux/of.h with CONFIG_OF proc_devtree: fix THIS_MODULE without module.h of: Remove old and misplaced function declarations of/flattree: Make the kernel accept ePAPR style phandle information of/flattree: endian-convert members of boot_param_header of: assume big-endian properties, adding conversions where necessary of: use __be32 for cell value accessors of/flattree: use OF_ROOT_NODE_{SIZE,ADDR}_CELLS DEFAULT for fdt parsing of/flattree: use callback to setup initrd from /chosen proc_devtree: include linux/of.h of: make set_node_proc_entry private to proc_devtree.c of: include linux/proc_fs.h of/flattree: merge early_init_dt_scan_memory() common code of: add 'of_' prefix to machine_is_compatible() ...
| * of: move definition of of_chosen into common code.Grant Likely2010-02-14
| | | | | | | | | | | | | | | | | | Rather than defining of_chosen in each arch, it can be defined for all in driver/of/base.c Signed-off-by: Grant Likely <grant.likely@secretlab.ca> Acked-by: Benjamin Herrenschmidt <benh@kernel.crashing.org> Acked-by: Michal Simek <monstr@monstr.eu>
| * of/flattree: Don't assume HAVE_LMBJeremy Kerr2010-02-14
| | | | | | | | | | | | | | | | | | | | | | | | | | We don't always have lmb available, so make arches provide an early_init_dt_alloc_memory_arch() to handle the allocation of memory in the fdt code. When we don't have lmb.h included, we need asm/page.h for __va. Signed-off-by: Jeremy Kerr <jeremy.kerr@canonical.com> Signed-off-by: Grant Likely <grant.likely@secretlab.ca> Acked-by: Benjamin Herrenschmidt <benh@kernel.crashing.org> Acked-by: Michal Simek <monstr@monstr.eu>
| * of/flattree: use callback to setup initrd from /chosenJeremy Kerr2010-02-09
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | At present, the fdt code sets the kernel-wide initrd_start and initrd_end variables when parsing /chosen. On ARM, we only set these once the bootmem has been reserved. This change adds an arch hook to setup the initrd from the device tree: void early_init_dt_setup_initrd_arch(unsigned long start, unsigned long end); The arch-specific code can then setup the initrd however it likes. Compiled on powerpc, with CONFIG_BLK_DEV_INITRD=y and =n. Signed-off-by: Jeremy Kerr <jeremy.kerr@canonical.com> Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
| * of/flattree: merge early_init_dt_scan_memory() common codeGrant Likely2010-02-09
| | | | | | | | | | | | | | Merge common code between PowerPC and Microblaze architectures. Signed-off-by: Grant Likely <grant.likely@secretlab.ca> Acked-by: Michal Simek <monstr@monstr.eu>
| * of: merge of_find_node_by_phandleJeremy Kerr2010-02-09
| | | | | | | | | | | | | | | | | | Merge common function between powerpc, sparc and microblaze. Code is identical for powerpc and microblaze, but adds a lock (and release) of the devtree_lock on sparc. Signed-off-by: Jeremy Kerr <jeremy.kerr@canonical.com> Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
| * of: merge of_attach_node() & of_detach_node()Grant Likely2010-02-09
| | | | | | | | | | | | | | | | Merge common code between PowerPC and Microblaze Signed-off-by: Grant Likely <grant.likely@secretlab.ca> Tested-by: Wolfram Sang <w.sang@pengutronix.de> Acked-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
| * microblaze: remove early_init_dt_scan_cpus() and phyp_dump_*()Grant Likely2010-02-09
| | | | | | | | | | | | | | | | | | | | | | Microblaze only has one CPU, it isn't SMP at all. early_init_dt_scan_cpus() is effectively just a no-op, so remove it. Microblaze doesn't support hypervisor assisted dump either, so the phyp stuff can also go. Signed-off-by: Grant Likely <grant.likely@secretlab.ca> Acked-by: Michal Simek <monstr@monstr.eu>
| * Merge commit 'v2.6.33-rc5' into secretlab/test-devicetreeGrant Likely2010-01-28
| |\
| * | of: unify phandle name in struct device_nodeGrant Likely2010-01-28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In struct device_node, the phandle is named 'linux_phandle' for PowerPC and MicroBlaze, and 'node' for SPARC. There is no good reason for the difference, it is just an artifact of the code diverging over a couple of years. This patch renames both to simply .phandle. Note: the .node also existed in PowerPC/MicroBlaze, but the only user seems to be arch/powerpc/platforms/powermac/pfunc_core.c. It doesn't look like the assignment between .linux_phandle and .node is significantly different enough to warrant the separate code paths unless ibm,phandle properties actually appear in Apple device trees. I think it is safe to eliminate the old .node property and use phandle everywhere. Signed-off-by: Grant Likely <grant.likely@secretlab.ca> Acked-by: David S. Miller <davem@davemloft.net> Tested-by: Wolfram Sang <w.sang@pengutronix.de> Acked-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
| * | of: Merge of_node_get() and of_node_put()Grant Likely2010-01-28
| | | | | | | | | | | | | | | | | | | | | | | | Merge common code between PowerPC and MicroBlaze Signed-off-by: Grant Likely <grant.likely@secretlab.ca> Tested-by: Wolfram Sang <w.sang@pengutronix.de> Acked-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
| * | of: merge machine_is_compatible()Grant Likely2010-01-28
| | | | | | | | | | | | | | | | | | | | | | | | Merge common code between PowerPC and Microblaze Signed-off-by: Grant Likely <grant.likely@secretlab.ca> Tested-by: Wolfram Sang <w.sang@pengutronix.de> Acked-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
| * | of/flattree: merge early_init_dt_scan_chosen()Grant Likely2009-12-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Merge common code between PowerPC and Microblaze. This patch splits the arch-specific stuff out into a new function, early_init_dt_scan_chosen_arch(). Signed-off-by: Grant Likely <grant.likely@secretlab.ca> Tested-by: Wolfram Sang <w.sang@pengutronix.de> Acked-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
| * | of/flattree: eliminate cell_t typedefGrant Likely2009-12-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A cell is firmly established as a u32. No need to do an ugly typedef to redefine it to cell_t. Eliminate the unnecessary typedef so that it doesn't have to be added to the of_fdt header file Signed-off-by: Grant Likely <grant.likely@secretlab.ca> Tested-by: Wolfram Sang <w.sang@pengutronix.de> Acked-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
| * | of/flattree: merge dt_mem_next_cellGrant Likely2009-12-10
| | | | | | | | | | | | | | | | | | | | | | | | Merge common code between PowerPC and Microblaze Signed-off-by: Grant Likely <grant.likely@secretlab.ca> Acked-by: Benjamin Herrenschmidt <benh@kernel.crashing.org> Tested-by: Wolfram Sang <w.sang@pengutronix.de>
| * | of/flattree: Merge earlyinit_dt_scan_root()Grant Likely2009-12-10
| | | | | | | | | | | | | | | | | | | | | | | | Merge common code between PowerPC and Microblaze Signed-off-by: Grant Likely <grant.likely@secretlab.ca> Acked-by: Benjamin Herrenschmidt <benh@kernel.crashing.org> Tested-by: Wolfram Sang <w.sang@pengutronix.de>
| * | of/flattree: Merge early_init_dt_check_for_initrd()Grant Likely2009-12-10
| | | | | | | | | | | | | | | | | | | | | | | | Merge common code between PowerPC and Microblaze Signed-off-by: Grant Likely <grant.likely@secretlab.ca> Tested-by: Wolfram Sang <w.sang@pengutronix.de> Acked-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
| * | of: merge prom_{add,remove,modify}_propertyGrant Likely2009-11-23
| | | | | | | | | | | | | | | | | | | | | | | | Merge common code between PowerPC and MicroBlaze Signed-off-by: Grant Likely <grant.likely@secretlab.ca> Reviewed-by: Wolfram Sang <w.sang@pengutronix.de> Tested-by: Michal Simek <monstr@monstr.eu>
| * | of/flattree: Merge unflatten_device_treeGrant Likely2009-11-23
| | | | | | | | | | | | | | | | | | | | | | | | Merge common code between PowerPC and MicroBlaze Signed-off-by: Grant Likely <grant.likely@secretlab.ca> Reviewed-by: Wolfram Sang <w.sang@pengutronix.de> Tested-by: Michal Simek <monstr@monstr.eu>
| * | of/flattree: Merge unflatten_dt_nodeGrant Likely2009-11-23
| | | | | | | | | | | | | | | | | | | | | | | | Merge common code between PowerPC and MicroBlaze Signed-off-by: Grant Likely <grant.likely@secretlab.ca> Reviewed-by: Wolfram Sang <w.sang@pengutronix.de> Tested-by: Michal Simek <monstr@monstr.eu>
| * | of/flattree: Merge of_flat_dt_is_compatibleGrant Likely2009-11-23
| | | | | | | | | | | | | | | | | | | | | | | | Merge common code between PowerPC and Microblaze Signed-off-by: Grant Likely <grant.likely@secretlab.ca> Reviewed-by: Wolfram Sang <w.sang@pengutronix.de> Tested-by: Michal Simek <monstr@monstr.eu>
| * | of/flattree: merge of_get_flat_dt_propGrant Likely2009-11-23
| | | | | | | | | | | | | | | | | | | | | | | | Merge common code between PowerPC and Microblaze Signed-off-by: Grant Likely <grant.likely@secretlab.ca> Reviewed-by: Wolfram Sang <w.sang@pengutronix.de> Tested-by: Michal Simek <monstr@monstr.eu>
| * | of/flattree: merge of_get_flat_dt_rootGrant Likely2009-11-23
| | | | | | | | | | | | | | | | | | | | | | | | Merge common code between PowerPC and MicroBlaze Signed-off-by: Grant Likely <grant.likely@secretlab.ca> Reviewed-by: Wolfram Sang <w.sang@pengutronix.de> Tested-by: Michal Simek <monstr@monstr.eu>
| * | of/flattree: merge of_scan_flat_dtGrant Likely2009-11-23
| | | | | | | | | | | | | | | | | | | | | | | | Merge common code between PowerPC and Microblaze Signed-off-by: Grant Likely <grant.likely@secretlab.ca> Reviewed-by: Wolfram Sang <w.sang@pengutronix.de> Tested-by: Michal Simek <monstr@monstr.eu>
| * | of/flattree: merge find_flat_dt_string and initial_boot_paramsGrant Likely2009-11-23
| | | | | | | | | | | | | | | | | | | | | | | | Merge common code between Microblaze and PowerPC. Signed-off-by: Grant Likely <grant.likely@secretlab.ca> Reviewed-by: Wolfram Sang <w.sang@pengutronix.de> Tested-by: Michal Simek <monstr@monstr.eu>
* | | microblaze: Fix cache loop function for cache rangeMichal Simek2010-02-24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I create wrong asm code but none test shows that this part of code is wrong. I am not convinces that were good idea to create asm optimized macros for caches. The reason is that there is not optimization with previous code that's why make sense to add old code and do some benchmarking which functions are faster. Signed-off-by: Michal Simek <monstr@monstr.eu>
* | | microblaze: Invalidate dcache before enabling itMichal Simek2010-02-08
| | | | | | | | | | | | | | | | | | | | | We found that on write-trough kernel is necessary to do that invalidation. One WB is possible to use invalidation too. Signed-off-by: Michal Simek <monstr@monstr.eu>
* | | microblaze: fix interrupt state restoreSteven J. Magnani2010-02-03
| |/ |/| | | | | | | | | | | | | | | Interrupts must be disabled while an interrupt state restore (prep for interrupt return) is in progress. Code to do this was lost in the port to the mainline kernel. Signed-off-by: Steven J. Magnani <steve@digidescorp.com> Signed-off-by: Michal Simek <monstr@monstr.eu>
* | microblaze: pci_controller->arch_data really is a struct device_node *Michal Simek2010-01-18
| | | | | | | | | | | | | | we are follow powerpc change: 44ef339073f67d4abcc62ae52a5fbc069d7a4d29 Signed-off-by: Michal Simek <monstr@monstr.eu>
* | microblaze: Enable accept4 syscallMichal Simek2010-01-18
| | | | | | | | | | | | | | We had wrong name in unistd.h + I wire up this syscall in syscall table. Signed-off-by: Michal Simek <monstr@monstr.eu>
* | genirq: Convert irq_desc.lock to raw_spinlockThomas Gleixner2009-12-14
| | | | | | | | | | | | | | | | | | Convert locks which cannot be sleeping locks in preempt-rt to raw_spinlocks. Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Acked-by: Peter Zijlstra <peterz@infradead.org> Acked-by: Ingo Molnar <mingo@elte.hu>
* | microblaze: Remove rt_sigsuspend wrapperMichal Simek2009-12-14
| | | | | | | | | | | | Generic rt_sigsuspend syscalls doesn't need any asm wrapper. Signed-off-by: Michal Simek <monstr@monstr.eu>