aboutsummaryrefslogtreecommitdiff
path: root/arch/microblaze/kernel
AgeCommit message (Collapse)AuthorFilesLines
2009-12-14microblaze: Remove rt_sigsuspend wrapperMichal Simek3-13/+1
Generic rt_sigsuspend syscalls doesn't need any asm wrapper. Signed-off-by: Michal Simek <[email protected]>
2009-12-14microblaze: nommu: Don't clobber R11 on syscalls[email protected]1-2/+0
The noMMU syscall trap has a bug that causes R11 to be zero on return to userland. Remove the extra "save" of R11 responsible for the bug. Remove reloading of mode indicator because r11 already contains it. Signed-off-by: Steven J. Magnani <[email protected]> Signed-off-by: Michal Simek <[email protected]>
2009-12-14microblaze: Support for WB cacheMichal Simek3-192/+510
Microblaze version 7.20.d is the first MB version which can be run on MMU linux. Please do not used previous version because they contain HW bug. Based on WB support was necessary to redesign whole cache design. Microblaze versions from 7.20.a don't need to disable IRQ and cache before working with them that's why there are special structures for it. Signed-off-by: Michal Simek <[email protected]>
2009-12-14microblaze: Add PVR for Microblaze v7.30.aMichal Simek1-0/+1
Microblaze v7.30.a will have 0x10 version string. Signed-off-by: Michal Simek <[email protected]>
2009-12-14microblaze: Remove ancient and fake microblaze version from cpu_ver tableMichal Simek1-5/+0
We need to continue with next microblaze PVR version that's why I have to remove that ancient version. These version strings not match any versions. From Microblaze v5.00.a is possible to use this style. I believe that none use ancients versions. If yes they will be just labeled as unknown version. Signed-off-by: Michal Simek <[email protected]>
2009-12-14microblaze: Remove panic_timeout init valueMichal Simek1-2/+0
panic_timeout is in BSS section and it is cleared with BSS section. This means that value is setup to 0. Signed-off-by: Michal Simek <[email protected]>
2009-12-14microblaze: Do not count system calls in defaultMichal Simek1-0/+4
There is not necessary to count system calls that's why I added DEBUG macro Signed-off-by: Michal Simek <[email protected]>
2009-12-14microblaze: Fix level interrupt ACKing[email protected]1-1/+9
Level interrupts need to be ack'd in the unmask handler, as in powerpc. Among other issues, this bug causes the system clock to appear to run at double-speed. Signed-off-by: Steven J. Magnani <[email protected]> Signed-off-by: Michal Simek <[email protected]>
2009-12-14microblaze: Enable futimesat syscallMichal Simek1-1/+1
Futimesat was disabled. LTP testing shows that MB has no problem with this syscall. Signed-off-by: Michal Simek <[email protected]>
2009-12-14microblaze: Checking DTS against PVR for write-back cacheMichal Simek1-0/+11
WB cache has special flag in PVR. There is added checking mechanism for PVR and DTS. Signed-off-by: Michal Simek <[email protected]>
2009-12-14microblaze: Fix the heartbeat gpio to be more robustJohn Linn1-5/+10
The device tree handling for the gpio in the heart beat was not handling the system when there was no gpio and it wasn't working with a newer version of the gpio core which does not have the is-bidir property. Signed-off-by: John Linn <[email protected]> Signed-off-by: Michal Simek <[email protected]>
2009-12-14microblaze: Move cache macro from cache.h to cacheflush.hMichal Simek1-0/+1
Signed-off-by: Michal Simek <[email protected]>
2009-12-14microblaze: Ptrace notifying from signal codeMichal Simek1-0/+4
After the signal frame is set up on the userspace stack, ptrace() should be given an opportunity to single-step into the signal handler FRV, Blackfin, mn10300 and UM. Worth to look at that patches. Signed-off-by: Michal Simek <[email protected]>
2009-12-14microblaze: Extend cpuinfo for support write-back cachesMichal Simek2-2/+7
There is missing checking agains PVR but this is not important for now. There are some missing checking too. Signed-off-by: Michal Simek <[email protected]>
2009-12-14microblaze: Fix cache_line_lenghtMichal Simek3-18/+18
We used cache_line as cache_line_lenght. For this reason we did cache flushing 4 times longer than was necessary. Signed-off-by: Michal Simek <[email protected]>
2009-12-14microblaze: Detect new 7.20.d versionMichal Simek1-0/+1
Signed-off-by: Michal Simek <[email protected]>
2009-12-14microblaze: Support both levels for resetMichal Simek1-4/+6
Till this patch reset always perform writen to 1. Now we can use negative logic and perform reset write to 0. It is opposite level than is currently read from that pin Signed-off-by: Michal Simek <[email protected]>
2009-12-14microblaze: Fix announce message for reset gpioMichal Simek1-1/+1
I had to change message for gpio-reset because I always not to see it. Prefix RESET is big and visible. Signed-off-by: Michal Simek <[email protected]>
2009-12-14microblaze: Remove saving and restoring before calling signal codeMichal Simek1-4/+0
Saving is done in SAVE_STATE macros that's why another save discard previous saved value. This change has no effect to normal programs because they ends in any exception and they are killed. On the other side has effect on debugging. Signed-off-by: Michal Simek <[email protected]>
2009-12-14microblaze: ftrace: Add dynamic function graph tracerMichal Simek2-0/+34
This patch add support for dynamic function graph tracer. There is one my expactation that I can do flush_icache after all code modification. On microblaze is this safer than do flush for every entry. For icache is used name flush but correct should be invalidation - this will be fix in upcomming new cache implementaion and WB support. Signed-off-by: Michal Simek <[email protected]>
2009-12-14microblaze: ftrace: add function graph supportMichal Simek2-0/+99
For more information look at Documentation/trace folder. Signed-off-by: Michal Simek <[email protected]>
2009-12-14microblaze: ftrace: Add dynamic trace supportMichal Simek3-1/+165
With dynamic function tracer, by default, _mcount is defined as an "empty" function, it returns directly without any more action. When enabling it in user-space, it will jump to a real tracing function(ftrace_caller), and do the real job for us. Differ from the static function tracer, dynamic function tracer provides two functions ftrace_make_call()/ftrace_make_nop() to enable/disable the tracing of some indicated kernel functions(set_ftrace_filter). In the kernel version, there is only one "_mcount" string for every kernel function, so, we just need to match this one in mcount_regex of scripts/recordmcount.pl. For more information please look at code and Documentation/trace folder. Steven ACK that scripts/recordmcount.pl part. Acked-by: Steven Rostedt <[email protected]> Signed-off-by: Michal Simek <[email protected]>
2009-12-14microblaze: ftrace: enable HAVE_FUNCTION_TRACE_MCOUNT_TESTMichal Simek1-0/+5
Implement MCOUNT_TEST in asm code - it is faster than use generic code Signed-off-by: Michal Simek <[email protected]>
2009-12-14microblaze: ftrace: add static function tracerMichal Simek4-0/+125
If -pg of gcc is enabled with CONFIG_FUNCTION_TRACER=y. a calling to _mcount will be inserted into each kernel function. so, there is a possibility to trace the kernel functions in _mcount. This patch add the specific _mcount support for static function tracing. by default, ftrace_trace_function is initialized as ftrace_stub(an empty function), so, the default _mcount will introduce very little overhead. after enabling ftrace in user-space, it will jump to a real tracing function and do static function tracing for us. Commit message from Wu Zhangjin <[email protected]> Signed-off-by: Michal Simek <[email protected]>
2009-12-14microblaze: Add TRACE_IRQFLAGS_SUPPORTMichal Simek1-1/+1
There are just two major changes Renamed local_irq functions to raw_local_irq in irq.c. Added TRACE_IRQFLAGS_SUPPORT to Kconfig.debug. Look at Documentation/irqflags-tracing.txt Signed-off-by: Michal Simek <[email protected]>
2009-12-14microblaze: Lockdep supportMichal Simek1-0/+2
Microblaze needs to do lock_init very soon because MMU init calls lock functions. Here is the explanation from Peter Zijlstra why we have to enable __ARCH_WANTS_INTERRUPTS_ON_CTSW. "So we schedule while holding rq->lock (for obvious reasons), but since lockdep tracks held locks per tasks, we need to transfer the held state from the prev to the next task. We do this by explicity calling spin_release(&rq->lock) in context_switch() right before switch_to(), and calling spin_acquire(&rq->lock) in finish_task_switch()->finish_lock_switch(). Now, for some reason lockdep thinks that interrupts got enabled over the context switch (git grep __ARCH_WANTS_INTERRUPTS_ON_CTSW arch/microblaze doesn't seem to turn up anything). Clearly trying to acquire the rq->lock with interrupts enabled is a bad idea and lockdep warns you about this." Signed-off-by: Michal Simek <[email protected]>
2009-12-14microblaze: Register timecounter/cyclecounterMichal Simek1-0/+28
It is the same counter as we use as free running one. I would like to use it for ftrace. Signed-off-by: Michal Simek <[email protected]>
2009-12-14microblaze: Stack trace supportMichal Simek2-0/+66
This is working implemetation but the problem is that Microblaze misses frame pointer that's why is there big loop which trace and show all addresses which are in text. It shows addresses which are in registers, etc. This is problem and this is the reason why all Microblaze traces are wrong. There is an option to do hacks and trace the kernel code but this is too complicated. Signed-off-by: Michal Simek <[email protected]>
2009-12-14microblaze: Add IRQENTRY_TEXT to ldsMichal Simek1-2/+3
It is important for ftrace irqsoff support Signed-off-by: Michal Simek <[email protected]>
2009-12-14microblaze: __init_begin symbol must be alignedMichal Simek1-0/+1
The problem was that free_initmem pass to free_initrd_mem got bad aligned __init_begin symbol and free_initrd_mem don't care about __init_end but take PAGE_SIZE instead. Here is behavior in kernel bootlog. ramdisk_execute_command from (init/main.c) was rewrite Freeing unused kernel memory: 6224k freed Failed to execute ��������������{��� Failed to execute ��������������{����. Attempting defaults... Mounting proc: Mounting var: Signed-off-by: Michal Simek <[email protected]>
2009-12-14microblaze: GPIO reset supportMichal Simek3-30/+139
Signed-off-by: Michal Simek <[email protected]>
2009-12-11Unify sys_mmap*Al Viro2-36/+4
New helper - sys_mmap_pgoff(); switch syscalls to using it. Acked-by: David S. Miller <[email protected]> Signed-off-by: Al Viro <[email protected]>
2009-12-10of/flattree: merge early_init_dt_scan_chosen()Grant Likely1-42/+2
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 <[email protected]> Tested-by: Wolfram Sang <[email protected]> Acked-by: Benjamin Herrenschmidt <[email protected]>
2009-12-10of/flattree: eliminate cell_t typedefGrant Likely1-6/+4
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 <[email protected]> Tested-by: Wolfram Sang <[email protected]> Acked-by: Benjamin Herrenschmidt <[email protected]>
2009-12-10of/flattree: merge dt_mem_next_cellGrant Likely1-8/+0
Merge common code between PowerPC and Microblaze Signed-off-by: Grant Likely <[email protected]> Acked-by: Benjamin Herrenschmidt <[email protected]> Tested-by: Wolfram Sang <[email protected]>
2009-12-10of/flattree: Merge earlyinit_dt_scan_root()Grant Likely1-23/+0
Merge common code between PowerPC and Microblaze Signed-off-by: Grant Likely <[email protected]> Acked-by: Benjamin Herrenschmidt <[email protected]> Tested-by: Wolfram Sang <[email protected]>
2009-12-10of/flattree: Merge early_init_dt_check_for_initrd()Grant Likely1-32/+0
Merge common code between PowerPC and Microblaze Signed-off-by: Grant Likely <[email protected]> Tested-by: Wolfram Sang <[email protected]> Acked-by: Benjamin Herrenschmidt <[email protected]>
2009-12-08Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6Linus Torvalds1-0/+1
* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6: (1815 commits) mac80211: fix reorder buffer release iwmc3200wifi: Enable wimax core through module parameter iwmc3200wifi: Add wifi-wimax coexistence mode as a module parameter iwmc3200wifi: Coex table command does not expect a response iwmc3200wifi: Update wiwi priority table iwlwifi: driver version track kernel version iwlwifi: indicate uCode type when fail dump error/event log iwl3945: remove duplicated event logging code b43: fix two warnings ipw2100: fix rebooting hang with driver loaded cfg80211: indent regulatory messages with spaces iwmc3200wifi: fix NULL pointer dereference in pmkid update mac80211: Fix TX status reporting for injected data frames ath9k: enable 2GHz band only if the device supports it airo: Fix integer overflow warning rt2x00: Fix padding bug on L2PAD devices. WE: Fix set events not propagated b43legacy: avoid PPC fault during resume b43: avoid PPC fault during resume tcp: fix a timewait refcnt race ... Fix up conflicts due to sysctl cleanups (dead sysctl_check code and CTL_UNNUMBERED removed) in kernel/sysctl_check.c net/ipv4/sysctl_net_ipv4.c net/ipv6/addrconf.c net/sctp/sysctl.c
2009-11-23of: merge prom_{add,remove,modify}_propertyGrant Likely1-113/+0
Merge common code between PowerPC and MicroBlaze Signed-off-by: Grant Likely <[email protected]> Reviewed-by: Wolfram Sang <[email protected]> Tested-by: Michal Simek <[email protected]>
2009-11-23of/flattree: Merge unflatten_device_treeGrant Likely1-49/+0
Merge common code between PowerPC and MicroBlaze Signed-off-by: Grant Likely <[email protected]> Reviewed-by: Wolfram Sang <[email protected]> Tested-by: Michal Simek <[email protected]>
2009-11-23of/flattree: Merge unflatten_dt_nodeGrant Likely1-195/+0
Merge common code between PowerPC and MicroBlaze Signed-off-by: Grant Likely <[email protected]> Reviewed-by: Wolfram Sang <[email protected]> Tested-by: Michal Simek <[email protected]>
2009-11-23of/flattree: Merge of_flat_dt_is_compatibleGrant Likely1-19/+0
Merge common code between PowerPC and Microblaze Signed-off-by: Grant Likely <[email protected]> Reviewed-by: Wolfram Sang <[email protected]> Tested-by: Michal Simek <[email protected]>
2009-11-23of/flattree: merge of_get_flat_dt_propGrant Likely1-42/+0
Merge common code between PowerPC and Microblaze Signed-off-by: Grant Likely <[email protected]> Reviewed-by: Wolfram Sang <[email protected]> Tested-by: Michal Simek <[email protected]>
2009-11-23of/flattree: merge of_get_flat_dt_rootGrant Likely1-12/+0
Merge common code between PowerPC and MicroBlaze Signed-off-by: Grant Likely <[email protected]> Reviewed-by: Wolfram Sang <[email protected]> Tested-by: Michal Simek <[email protected]>
2009-11-23of/flattree: merge of_scan_flat_dtGrant Likely1-61/+0
Merge common code between PowerPC and Microblaze Signed-off-by: Grant Likely <[email protected]> Reviewed-by: Wolfram Sang <[email protected]> Tested-by: Michal Simek <[email protected]>
2009-11-23of/flattree: merge find_flat_dt_string and initial_boot_paramsGrant Likely1-8/+0
Merge common code between Microblaze and PowerPC. Signed-off-by: Grant Likely <[email protected]> Reviewed-by: Wolfram Sang <[email protected]> Tested-by: Michal Simek <[email protected]>
2009-11-18Merge branch 'master' of ↵David S. Miller3-1/+5
master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 Conflicts: drivers/net/sfc/sfe4001.c drivers/net/wireless/libertas/cmd.c drivers/staging/Kconfig drivers/staging/Makefile drivers/staging/rtl8187se/Kconfig drivers/staging/rtl8192e/Kconfig
2009-10-15of: merge of_find_all_nodes() implementationsGrant Likely1-23/+0
Merge common code between Microblaze and PowerPC, and make it available to Sparc Signed-off-by: Grant Likely <[email protected]> Acked-by: David S. Miller <[email protected]> Acked-by: Wolfram Sang <[email protected]> Acked-by: Michal Simek <[email protected]> Acked-by: Stephen Neuendorffer <[email protected]> Acked-by: Stephen Rothwell <[email protected]>
2009-10-15of: add common header for flattened device tree representationGrant Likely1-1/+1
Add a common header file for working with the flattened device tree data structure and merge the shared data tags used by Microblaze and PowerPC Signed-off-by: Grant Likely <[email protected]> Acked-by: David S. Miller <[email protected]> Acked-by: Wolfram Sang <[email protected]> Acked-by: Michal Simek <[email protected]> Acked-by: Stephen Neuendorffer <[email protected]> Acked-by: Stephen Rothwell <[email protected]>
2009-10-12net: Introduce recvmmsg socket syscallArnaldo Carvalho de Melo1-0/+1
Meaning receive multiple messages, reducing the number of syscalls and net stack entry/exit operations. Next patches will introduce mechanisms where protocols that want to optimize this operation will provide an unlocked_recvmsg operation. This takes into account comments made by: . Paul Moore: sock_recvmsg is called only for the first datagram, sock_recvmsg_nosec is used for the rest. . Caitlin Bestler: recvmmsg now has a struct timespec timeout, that works in the same fashion as the ppoll one. If the underlying protocol returns a datagram with MSG_OOB set, this will make recvmmsg return right away with as many datagrams (+ the OOB one) it has received so far. . Rémi Denis-Courmont & Steven Whitehouse: If we receive N < vlen datagrams and then recvmsg returns an error, recvmmsg will return the successfully received datagrams, store the error and return it in the next call. This paves the way for a subsequent optimization, sk_prot->unlocked_recvmsg, where we will be able to acquire the lock only at batch start and end, not at every underlying recvmsg call. Signed-off-by: Arnaldo Carvalho de Melo <[email protected]> Signed-off-by: David S. Miller <[email protected]>