summaryrefslogtreecommitdiff
path: root/arch/microblaze/lib
AgeCommit message (Collapse)AuthorFilesLines
2014-07-18microblaze: Change libgcc-style functions from lib-y to obj-yDavid Holsgrove1-11/+3
Following precedence set by MIPs: "[MIPS] Change libgcc-style functions from lib-y to obj-y" (sha1: f7c2778151f32581ea9ec567d01d5d85209fcfe6), switch the goal definition for kbuild to obj-y to ensure object files linked in vmlinux if only modules were users of these functions. Signed-off-by: David Holsgrove <david.holsgrove@xilinx.com> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2013-02-12microblaze: Do not use module.h in files which are not modulesMichal Simek9-9/+9
Based on the patch: "lib: reduce the use of module.h wherever possible" (sha1: 8bc3bcc93a2b4e47d5d410146f6546bca6171663) fix all microblaze files which are not modules. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2013-02-12microblaze: Fix coding style issuesMichal Simek5-11/+11
Fix coding style issues reported by checkpatch.pl. Signed-off-by: Michal Simek <monstr@monstr.eu>
2013-02-12microblaze: Fix strncpy_from_user macroMichal Simek1-5/+4
Problem happens when len in strncpy_from_user is setup and passing string has len-1 chars + \0 terminated character. In this case was returned incorrect length of the string. It should always retunrs the length of the string (not including the trailing NULL). Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2012-12-13microblaze: lib: Add lib function declarationsMichal Simek1-0/+7
Function declarations fix these sparse warnings: arch/microblaze/lib/ashldi3.c:5:11: warning: symbol '__ashldi3' was not declared. Should it be static? arch/microblaze/lib/muldi3.c:50:8: warning: symbol '__muldi3' was not declared. Should it be static? arch/microblaze/lib/cmpdi2.c:5:11: warning: symbol '__cmpdi2' was not declared. Should it be static? arch/microblaze/lib/lshrdi3.c:5:11: warning: symbol '__lshrdi3' was not declared. Should it be static? arch/microblaze/lib/ashrdi3.c:5:11: warning: symbol '__ashrdi3' was not declared. Should it be static? arch/microblaze/lib/ucmpdi2.c:5:11: warning: symbol '__ucmpdi2' was not declared. Should it be static? Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2012-12-13microblaze: lib: Remove helper macrosMichal Simek1-16/+12
Remove these gcc types and use standard types. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2012-03-30Merge git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6 into nextMichal Simek1-1/+0
2012-03-30microblaze: Fix stack usage in PAGE_SIZE copy_tofrom_userMichal Simek1-36/+62
If access to user space failed we need to reconstruct stack pointer and restore all register. This patch fixed problem introduces by: "microblaze: Add loop unrolling for PAGE in copy_tofrom_user" (sha1: ebe211254bfa6295f4ab0b33c7c881bdfabbab60) Signed-off-by: Michal Simek <monstr@monstr.eu>
2012-03-28Disintegrate asm/system.h for MicroblazeDavid Howells1-1/+0
Disintegrate asm/system.h for Microblaze. Not compiled. Signed-off-by: David Howells <dhowells@redhat.com> cc: microblaze-uclinux@itee.uq.edu.au
2012-01-05microblaze: Add __cmpdi2Michal Simek2-0/+27
Some new kernel configurations require __cmpdi2 function. Signed-off-by: Michal Simek <monstr@monstr.eu>
2011-10-14microblaze: Use delay slot in __strnlen_user, __strncpy_userMichal Simek1-2/+2
Use delay slot to speedup if maxlen is zero. Signed-off-by: Michal Simek <monstr@monstr.eu>
2011-10-14microblaze: Add __ucmpdi2() helper functionMichal Simek2-0/+21
Add missing __ucmpdi2 helper function. Error log: kernel/built-in.o: In function `print_graph_duration': : undefined reference to `__ucmpdi2' kernel/built-in.o: In function `print_graph_duration': : undefined reference to `__ucmpdi2' Based on MIPS code. Signed-off-by: Michal Simek <monstr@monstr.eu>
2011-10-14microblaze: Add loop unrolling for PAGE in copy_tofrom_userMichal Simek1-0/+84
Increase performance by loop unrolling. Signed-off-by: Michal Simek <monstr@monstr.eu>
2011-10-14microblaze: Simplify logic for unaligned byte copyingMichal Simek1-5/+3
Save jump instruction for unaligned byte copying. Signed-off-by: Michal Simek <monstr@monstr.eu>
2011-10-14microblaze: Change label names - copy_tofrom_userMichal Simek1-14/+13
Change label name to be prepared for loop unrolling. Signed-off-by: Michal Simek <monstr@monstr.eu>
2011-10-14microblaze: Separate fixup section definitionMichal Simek1-1/+9
Move fixups below appropriate code. Signed-off-by: Michal Simek <monstr@monstr.eu>
2011-10-14microblaze: Change label name in copy_tofrom_userMichal Simek1-3/+3
Use label 0: for zero length copying and fixups. Signed-off-by: Michal Simek <monstr@monstr.eu>
2011-04-07Merge branch 'for-linus2' of git://git.profusion.mobi/users/lucas/linux-2.6Linus Torvalds3-8/+8
* 'for-linus2' of git://git.profusion.mobi/users/lucas/linux-2.6: Fix common misspellings
2011-04-01microblaze: Fix ftraceMichal Simek1-0/+6
- Do not trace idle loop which takes a lot time - Fix cache handling in generic ftrace code - Do not trace lib functions ashldi3, ashrdi3, lshrdi3 Functions are called from generic ftrace code which can't be traced Signed-off-by: Michal Simek <monstr@monstr.eu>
2011-03-31Fix common misspellingsLucas De Marchi3-8/+8
Fixes generated by 'codespell' and manually reviewed. Signed-off-by: Lucas De Marchi <lucas.demarchi@profusion.mobi>
2011-03-09microblaze: Add missing export symbols for lib functionsMichal Simek1-0/+1
Adding missing export symbols for loadable modules. Signed-off-by: Michal Simek <monstr@monstr.eu>
2011-01-28microblaze: Fix ASM optimized code for LEMichal Simek1-0/+4
Microblaze little-endian doesn't support ASM optimized library functions(memcpy/memmove). Kconfig doens't contain any information about endian that's why it is necessary to check it in the source code. The code is used with barrel shifter is used. Signed-off-by: Michal Simek <monstr@monstr.eu>
2011-01-03microblaze: Fix __muldi3 function for little-endian.Michal Simek2-121/+60
__muldi3 was written for big endian platforms. Code contained half word read/write instructions which are not compatible with little endian cpu. Asm __muldi3 implementation is replaced by C version. Signed-off-by: Michal Simek <monstr@monstr.eu>
2010-11-15arch/microblaze: Remove unnecessary semicolonsJoe Perches1-1/+1
Signed-off-by: Joe Perches <joe@perches.com> Signed-off-by: Michal Simek <monstr@monstr.eu>
2010-10-21microblaze: Support C optimized lib functions for little-endianMichal Simek2-6/+60
Optimized C library functions can rapidly speedup the kernel. memset doesn't need to be optimized because there is no difference in behavior on little/big endian cpu. Signed-off-by: Michal Simek <monstr@monstr.eu>
2010-10-21microblaze: Separate library optimized functionsMichal Simek3-15/+46
memcpy/memmove/memset Signed-off-by: Michal Simek <monstr@monstr.eu>
2010-10-21microblaze: Add libgcc function directly to kernelMichal Simek11-0/+607
Replaced libgcc functions with asm optimized implementation. Signed-off-by: Michal Simek <monstr@monstr.eu>
2010-04-01microblaze: Support word copying in copy_tofrom_userMichal Simek1-14/+25
Word copying is used only for aligned addresses. Here is space for improving to use any better copying technique. Look at memcpy implementation. Signed-off-by: Michal Simek <monstr@monstr.eu>
2010-04-01microblaze: Adding likely macrosMichal Simek2-8/+9
On the base on GCOV analytics is helpful to add likely/unlikely macros. Signed-off-by: Michal Simek <monstr@monstr.eu>
2010-04-01microblaze: Add .type and .size to ASM functionsMichal Simek2-1/+11
Cachegrind analysis need this fix to be able to log asm functions. Signed-off-by: Michal Simek <monstr@monstr.eu>
2010-04-01microblaze: uaccess: Unify __copy_tofrom_userMichal Simek1-1/+1
Move to generic location. Signed-off-by: Michal Simek <monstr@monstr.eu>
2010-04-01microblaze: uaccess: Move functions to generic locationMichal Simek2-49/+0
noMMU and MMU use them. Signed-off-by: Michal Simek <monstr@monstr.eu>
2009-12-14microblaze: Simple __copy_tofrom_user for noMMUJohn Williams1-0/+7
This is first patch which clear part of uaccess.h. uaccess.h will be clear later. Signed-off-by: John Williams <john.williams@petalogix.com> Signed-off-by: Michal Simek <monstr@monstr.eu>
2009-12-04tree-wide: fix assorted typos all over the placeAndré Goddard Rosa3-3/+3
That is "success", "unknown", "through", "performance", "[re|un]mapping" , "access", "default", "reasonable", "[con]currently", "temperature" , "channel", "[un]used", "application", "example","hierarchy", "therefore" , "[over|under]flow", "contiguous", "threshold", "enough" and others. Signed-off-by: André Goddard Rosa <andre.goddard@gmail.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
2009-07-06microblaze: use the generic lib/checksum.cRemis Lima Baima2-173/+1
The microblaze checksum code is mostly identical to the asm-generic+lib version, so use that instead. Signed-off-by: Remis Lima Baima <remis.developer@googlemail.com> Signed-off-by: Michal Simek <monstr@monstr.eu>
2009-05-26microblaze_mmu_v2: MakefilesMichal Simek1-1/+2
Signed-off-by: Michal Simek <monstr@monstr.eu>
2009-05-26microblaze_mmu_v2: uaccess MMU updateMichal Simek1-0/+135
Signed-off-by: Michal Simek <monstr@monstr.eu>
2009-05-21microblaze: clean up checksum.cArnd Bergmann1-11/+20
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-21microblaze: remove cacheable_memcpyArnd Bergmann1-5/+0
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-03-27microblaze_v8: Makefiles for Microblaze cpuMichal Simek1-0/+13
Reviewed-by: Ingo Molnar <mingo@elte.hu> Acked-by: Randy Dunlap <randy.dunlap@oracle.com> Acked-by: John Linn <john.linn@xilinx.com> Acked-by: Stephen Neuendorffer <stephen.neuendorffer@xilinx.com> Acked-by: John Williams <john.williams@petalogix.com> Signed-off-by: Michal Simek <monstr@monstr.eu>
2009-03-27microblaze_v8: uaccess filesMichal Simek1-0/+41
Reviewed-by: Ingo Molnar <mingo@elte.hu> Acked-by: Stephen Neuendorffer <stephen.neuendorffer@xilinx.com> Acked-by: John Linn <john.linn@xilinx.com> Acked-by: John Williams <john.williams@petalogix.com> Signed-off-by: Michal Simek <monstr@monstr.eu>
2009-03-27microblaze_v8: checksum supportMichal Simek1-0/+163
Reviewed-by: Ingo Molnar <mingo@elte.hu> Acked-by: Stephen Neuendorffer <stephen.neuendorffer@xilinx.com> Acked-by: John Linn <john.linn@xilinx.com> Acked-by: John Williams <john.williams@petalogix.com> Signed-off-by: Michal Simek <monstr@monstr.eu>
2009-03-27microblaze_v8: supported function for memory - kernel/libMichal Simek4-0/+1080
Reviewed-by: Ingo Molnar <mingo@elte.hu> Acked-by: Stephen Neuendorffer <stephen.neuendorffer@xilinx.com> Acked-by: John Linn <john.linn@xilinx.com> Acked-by: John Williams <john.williams@petalogix.com> Signed-off-by: Michal Simek <monstr@monstr.eu>