summaryrefslogtreecommitdiff
path: root/arch/sh/include/asm/unaligned.h
blob: 2e0d16405024f59a5b62acd7cbf27ae4b0877dd1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#ifndef _ASM_SH_UNALIGNED_H
#define _ASM_SH_UNALIGNED_H

/* Copy from linux-kernel. */

#ifdef CONFIG_CPU_SH4A
/* SH-4A can handle unaligned loads in a relatively neutered fashion. */
#include <asm/unaligned-sh4a.h>
#else
/* Otherwise, SH can't handle unaligned accesses. */
#include <compiler.h>
#if defined(__BIG_ENDIAN__)
#define get_unaligned   __get_unaligned_be
#define put_unaligned   __put_unaligned_be
#elif defined(__LITTLE_ENDIAN__)
#define get_unaligned   __get_unaligned_le
#define put_unaligned   __put_unaligned_le
#endif

#include <linux/unaligned/le_byteshift.h>
#include <linux/unaligned/be_byteshift.h>
#include <linux/unaligned/generic.h>
#endif

#endif /* _ASM_SH_UNALIGNED_H */