summaryrefslogtreecommitdiffstats
path: root/arch/microblaze/lib
Commit message (Collapse)AuthorAgeFilesLines
* microblaze: Change libgcc-style functions from lib-y to obj-yDavid Holsgrove2014-07-181-11/+3Star
| | | | | | | | | | | | 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>
* microblaze: Do not use module.h in files which are not modulesMichal Simek2013-02-129-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>
* microblaze: Fix coding style issuesMichal Simek2013-02-125-11/+11
| | | | | | Fix coding style issues reported by checkpatch.pl. Signed-off-by: Michal Simek <monstr@monstr.eu>
* microblaze: Fix strncpy_from_user macroMichal Simek2013-02-121-5/+4Star
| | | | | | | | | | | 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>
* microblaze: lib: Add lib function declarationsMichal Simek2012-12-131-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>
* microblaze: lib: Remove helper macrosMichal Simek2012-12-131-16/+12Star
| | | | | | Remove these gcc types and use standard types. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
* Merge git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6 into nextMichal Simek2012-03-301-1/+0Star
|\
| * Disintegrate asm/system.h for MicroblazeDavid Howells2012-03-281-1/+0Star
| | | | | | | | | | | | | | Disintegrate asm/system.h for Microblaze. Not compiled. Signed-off-by: David Howells <dhowells@redhat.com> cc: microblaze-uclinux@itee.uq.edu.au
* | microblaze: Fix stack usage in PAGE_SIZE copy_tofrom_userMichal Simek2012-03-301-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>
* microblaze: Add __cmpdi2Michal Simek2012-01-052-0/+27
| | | | | | Some new kernel configurations require __cmpdi2 function. Signed-off-by: Michal Simek <monstr@monstr.eu>
* microblaze: Use delay slot in __strnlen_user, __strncpy_userMichal Simek2011-10-141-2/+2
| | | | | | Use delay slot to speedup if maxlen is zero. Signed-off-by: Michal Simek <monstr@monstr.eu>
* microblaze: Add __ucmpdi2() helper functionMichal Simek2011-10-142-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>
* microblaze: Add loop unrolling for PAGE in copy_tofrom_userMichal Simek2011-10-141-0/+84
| | | | | | Increase performance by loop unrolling. Signed-off-by: Michal Simek <monstr@monstr.eu>
* microblaze: Simplify logic for unaligned byte copyingMichal Simek2011-10-141-5/+3Star
| | | | | | Save jump instruction for unaligned byte copying. Signed-off-by: Michal Simek <monstr@monstr.eu>
* microblaze: Change label names - copy_tofrom_userMichal Simek2011-10-141-14/+13Star
| | | | | | Change label name to be prepared for loop unrolling. Signed-off-by: Michal Simek <monstr@monstr.eu>
* microblaze: Separate fixup section definitionMichal Simek2011-10-141-1/+9
| | | | | | Move fixups below appropriate code. Signed-off-by: Michal Simek <monstr@monstr.eu>
* microblaze: Change label name in copy_tofrom_userMichal Simek2011-10-141-3/+3
| | | | | | Use label 0: for zero length copying and fixups. Signed-off-by: Michal Simek <monstr@monstr.eu>
* Merge branch 'for-linus2' of git://git.profusion.mobi/users/lucas/linux-2.6Linus Torvalds2011-04-073-8/+8
|\ | | | | | | | | * 'for-linus2' of git://git.profusion.mobi/users/lucas/linux-2.6: Fix common misspellings
| * Fix common misspellingsLucas De Marchi2011-03-313-8/+8
| | | | | | | | | | | | Fixes generated by 'codespell' and manually reviewed. Signed-off-by: Lucas De Marchi <lucas.demarchi@profusion.mobi>
* | microblaze: Fix ftraceMichal Simek2011-04-011-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>
* microblaze: Add missing export symbols for lib functionsMichal Simek2011-03-091-0/+1
| | | | | | Adding missing export symbols for loadable modules. Signed-off-by: Michal Simek <monstr@monstr.eu>
* microblaze: Fix ASM optimized code for LEMichal Simek2011-01-281-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>
* microblaze: Fix __muldi3 function for little-endian.Michal Simek2011-01-032-121/+60Star
| | | | | | | | | __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>
* arch/microblaze: Remove unnecessary semicolonsJoe Perches2010-11-151-1/+1
| | | | | Signed-off-by: Joe Perches <joe@perches.com> Signed-off-by: Michal Simek <monstr@monstr.eu>
* microblaze: Support C optimized lib functions for little-endianMichal Simek2010-10-212-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>
* microblaze: Separate library optimized functionsMichal Simek2010-10-213-15/+46
| | | | | | memcpy/memmove/memset Signed-off-by: Michal Simek <monstr@monstr.eu>
* microblaze: Add libgcc function directly to kernelMichal Simek2010-10-2111-0/+607
| | | | | | Replaced libgcc functions with asm optimized implementation. Signed-off-by: Michal Simek <monstr@monstr.eu>
* microblaze: Support word copying in copy_tofrom_userMichal Simek2010-04-011-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>
* microblaze: Adding likely macrosMichal Simek2010-04-012-8/+9
| | | | | | | On the base on GCOV analytics is helpful to add likely/unlikely macros. Signed-off-by: Michal Simek <monstr@monstr.eu>
* microblaze: Add .type and .size to ASM functionsMichal Simek2010-04-012-1/+11
| | | | | | Cachegrind analysis need this fix to be able to log asm functions. Signed-off-by: Michal Simek <monstr@monstr.eu>
* microblaze: uaccess: Unify __copy_tofrom_userMichal Simek2010-04-011-1/+1
| | | | | | Move to generic location. Signed-off-by: Michal Simek <monstr@monstr.eu>
* microblaze: uaccess: Move functions to generic locationMichal Simek2010-04-012-49/+0Star
| | | | | | noMMU and MMU use them. Signed-off-by: Michal Simek <monstr@monstr.eu>
* microblaze: Simple __copy_tofrom_user for noMMUJohn Williams2009-12-141-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>
* tree-wide: fix assorted typos all over the placeAndré Goddard Rosa2009-12-043-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>
* microblaze: use the generic lib/checksum.cRemis Lima Baima2009-07-062-173/+1Star
| | | | | | | | 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>
* microblaze_mmu_v2: MakefilesMichal Simek2009-05-261-1/+2
| | | | Signed-off-by: Michal Simek <monstr@monstr.eu>
* microblaze_mmu_v2: uaccess MMU updateMichal Simek2009-05-261-0/+135
| | | | Signed-off-by: Michal Simek <monstr@monstr.eu>
* microblaze: clean up checksum.cArnd Bergmann2009-05-211-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>
* microblaze: remove cacheable_memcpyArnd Bergmann2009-05-211-5/+0Star
| | | | | | | | 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>
* microblaze_v8: Makefiles for Microblaze cpuMichal Simek2009-03-271-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>
* microblaze_v8: uaccess filesMichal Simek2009-03-271-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>
* microblaze_v8: checksum supportMichal Simek2009-03-271-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>
* microblaze_v8: supported function for memory - kernel/libMichal Simek2009-03-274-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>