Merge git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6
[firefly-linux-kernel-4.4.55.git] / arch / tile / include / asm / unaligned.h
1 /*
2  * Copyright 2010 Tilera Corporation. All Rights Reserved.
3  *
4  *   This program is free software; you can redistribute it and/or
5  *   modify it under the terms of the GNU General Public License
6  *   as published by the Free Software Foundation, version 2.
7  *
8  *   This program is distributed in the hope that it will be useful, but
9  *   WITHOUT ANY WARRANTY; without even the implied warranty of
10  *   MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE, GOOD TITLE or
11  *   NON INFRINGEMENT.  See the GNU General Public License for
12  *   more details.
13  */
14
15 #ifndef _ASM_TILE_UNALIGNED_H
16 #define _ASM_TILE_UNALIGNED_H
17
18 #include <linux/unaligned/le_struct.h>
19 #include <linux/unaligned/be_byteshift.h>
20 #include <linux/unaligned/generic.h>
21 #define get_unaligned   __get_unaligned_le
22 #define put_unaligned   __put_unaligned_le
23
24 /*
25  * Is the kernel doing fixups of unaligned accesses?  If <0, no kernel
26  * intervention occurs and SIGBUS is delivered with no data address
27  * info.  If 0, the kernel single-steps the instruction to discover
28  * the data address to provide with the SIGBUS.  If 1, the kernel does
29  * a fixup.
30  */
31 extern int unaligned_fixup;
32
33 /* Is the kernel printing on each unaligned fixup? */
34 extern int unaligned_printk;
35
36 /* Number of unaligned fixups performed */
37 extern unsigned int unaligned_fixup_count;
38
39 #endif /* _ASM_TILE_UNALIGNED_H */