Add another dependency for x86 EFI stub
svn path=/dists/sid/linux-2.6/; revision=18959
This commit is contained in:
parent
e1cdd9a89a
commit
5f6354e7f6
179
debian/patches/features/x86/efi-stub/0012-tools-include-Add-byteshift-headers-for-endian-acces.patch
vendored
Normal file
179
debian/patches/features/x86/efi-stub/0012-tools-include-Add-byteshift-headers-for-endian-acces.patch
vendored
Normal file
|
@ -0,0 +1,179 @@
|
|||
From: Matt Fleming <matt.fleming@intel.com>
|
||||
Date: Tue, 28 Feb 2012 13:37:20 +0000
|
||||
Subject: [PATCH 12/14] tools/include: Add byteshift headers for endian access
|
||||
|
||||
commit a07f7672d7cf0ff0d6e548a9feb6e0bd016d9c6c upstream.
|
||||
|
||||
There are various hostprogs in the kernel that are rolling their own
|
||||
implementations of {get,put}_unaligned_le*(). Copy the byteshift
|
||||
headers from include/linux/unaligned so that they can all use a single
|
||||
implementation.
|
||||
|
||||
This requires changing some of the data types to the userspace
|
||||
exported ones (u32 -> __u32, etc).
|
||||
|
||||
Signed-off-by: Matt Fleming <matt.fleming@intel.com>
|
||||
Link: http://lkml.kernel.org/r/1330436245-24875-2-git-send-email-matt@console-pimps.org
|
||||
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
|
||||
---
|
||||
tools/include/tools/be_byteshift.h | 70 ++++++++++++++++++++++++++++++++++++
|
||||
tools/include/tools/le_byteshift.h | 70 ++++++++++++++++++++++++++++++++++++
|
||||
2 files changed, 140 insertions(+)
|
||||
create mode 100644 tools/include/tools/be_byteshift.h
|
||||
create mode 100644 tools/include/tools/le_byteshift.h
|
||||
|
||||
diff --git a/tools/include/tools/be_byteshift.h b/tools/include/tools/be_byteshift.h
|
||||
new file mode 100644
|
||||
index 0000000..f4912e2
|
||||
--- /dev/null
|
||||
+++ b/tools/include/tools/be_byteshift.h
|
||||
@@ -0,0 +1,70 @@
|
||||
+#ifndef _TOOLS_BE_BYTESHIFT_H
|
||||
+#define _TOOLS_BE_BYTESHIFT_H
|
||||
+
|
||||
+#include <linux/types.h>
|
||||
+
|
||||
+static inline __u16 __get_unaligned_be16(const __u8 *p)
|
||||
+{
|
||||
+ return p[0] << 8 | p[1];
|
||||
+}
|
||||
+
|
||||
+static inline __u32 __get_unaligned_be32(const __u8 *p)
|
||||
+{
|
||||
+ return p[0] << 24 | p[1] << 16 | p[2] << 8 | p[3];
|
||||
+}
|
||||
+
|
||||
+static inline __u64 __get_unaligned_be64(const __u8 *p)
|
||||
+{
|
||||
+ return (__u64)__get_unaligned_be32(p) << 32 |
|
||||
+ __get_unaligned_be32(p + 4);
|
||||
+}
|
||||
+
|
||||
+static inline void __put_unaligned_be16(__u16 val, __u8 *p)
|
||||
+{
|
||||
+ *p++ = val >> 8;
|
||||
+ *p++ = val;
|
||||
+}
|
||||
+
|
||||
+static inline void __put_unaligned_be32(__u32 val, __u8 *p)
|
||||
+{
|
||||
+ __put_unaligned_be16(val >> 16, p);
|
||||
+ __put_unaligned_be16(val, p + 2);
|
||||
+}
|
||||
+
|
||||
+static inline void __put_unaligned_be64(__u64 val, __u8 *p)
|
||||
+{
|
||||
+ __put_unaligned_be32(val >> 32, p);
|
||||
+ __put_unaligned_be32(val, p + 4);
|
||||
+}
|
||||
+
|
||||
+static inline __u16 get_unaligned_be16(const void *p)
|
||||
+{
|
||||
+ return __get_unaligned_be16((const __u8 *)p);
|
||||
+}
|
||||
+
|
||||
+static inline __u32 get_unaligned_be32(const void *p)
|
||||
+{
|
||||
+ return __get_unaligned_be32((const __u8 *)p);
|
||||
+}
|
||||
+
|
||||
+static inline __u64 get_unaligned_be64(const void *p)
|
||||
+{
|
||||
+ return __get_unaligned_be64((const __u8 *)p);
|
||||
+}
|
||||
+
|
||||
+static inline void put_unaligned_be16(__u16 val, void *p)
|
||||
+{
|
||||
+ __put_unaligned_be16(val, p);
|
||||
+}
|
||||
+
|
||||
+static inline void put_unaligned_be32(__u32 val, void *p)
|
||||
+{
|
||||
+ __put_unaligned_be32(val, p);
|
||||
+}
|
||||
+
|
||||
+static inline void put_unaligned_be64(__u64 val, void *p)
|
||||
+{
|
||||
+ __put_unaligned_be64(val, p);
|
||||
+}
|
||||
+
|
||||
+#endif /* _TOOLS_BE_BYTESHIFT_H */
|
||||
diff --git a/tools/include/tools/le_byteshift.h b/tools/include/tools/le_byteshift.h
|
||||
new file mode 100644
|
||||
index 0000000..c99d45a
|
||||
--- /dev/null
|
||||
+++ b/tools/include/tools/le_byteshift.h
|
||||
@@ -0,0 +1,70 @@
|
||||
+#ifndef _TOOLS_LE_BYTESHIFT_H
|
||||
+#define _TOOLS_LE_BYTESHIFT_H
|
||||
+
|
||||
+#include <linux/types.h>
|
||||
+
|
||||
+static inline __u16 __get_unaligned_le16(const __u8 *p)
|
||||
+{
|
||||
+ return p[0] | p[1] << 8;
|
||||
+}
|
||||
+
|
||||
+static inline __u32 __get_unaligned_le32(const __u8 *p)
|
||||
+{
|
||||
+ return p[0] | p[1] << 8 | p[2] << 16 | p[3] << 24;
|
||||
+}
|
||||
+
|
||||
+static inline __u64 __get_unaligned_le64(const __u8 *p)
|
||||
+{
|
||||
+ return (__u64)__get_unaligned_le32(p + 4) << 32 |
|
||||
+ __get_unaligned_le32(p);
|
||||
+}
|
||||
+
|
||||
+static inline void __put_unaligned_le16(__u16 val, __u8 *p)
|
||||
+{
|
||||
+ *p++ = val;
|
||||
+ *p++ = val >> 8;
|
||||
+}
|
||||
+
|
||||
+static inline void __put_unaligned_le32(__u32 val, __u8 *p)
|
||||
+{
|
||||
+ __put_unaligned_le16(val >> 16, p + 2);
|
||||
+ __put_unaligned_le16(val, p);
|
||||
+}
|
||||
+
|
||||
+static inline void __put_unaligned_le64(__u64 val, __u8 *p)
|
||||
+{
|
||||
+ __put_unaligned_le32(val >> 32, p + 4);
|
||||
+ __put_unaligned_le32(val, p);
|
||||
+}
|
||||
+
|
||||
+static inline __u16 get_unaligned_le16(const void *p)
|
||||
+{
|
||||
+ return __get_unaligned_le16((const __u8 *)p);
|
||||
+}
|
||||
+
|
||||
+static inline __u32 get_unaligned_le32(const void *p)
|
||||
+{
|
||||
+ return __get_unaligned_le32((const __u8 *)p);
|
||||
+}
|
||||
+
|
||||
+static inline __u64 get_unaligned_le64(const void *p)
|
||||
+{
|
||||
+ return __get_unaligned_le64((const __u8 *)p);
|
||||
+}
|
||||
+
|
||||
+static inline void put_unaligned_le16(__u16 val, void *p)
|
||||
+{
|
||||
+ __put_unaligned_le16(val, p);
|
||||
+}
|
||||
+
|
||||
+static inline void put_unaligned_le32(__u32 val, void *p)
|
||||
+{
|
||||
+ __put_unaligned_le32(val, p);
|
||||
+}
|
||||
+
|
||||
+static inline void put_unaligned_le64(__u64 val, void *p)
|
||||
+{
|
||||
+ __put_unaligned_le64(val, p);
|
||||
+}
|
||||
+
|
||||
+#endif /* _TOOLS_LE_BYTESHIFT_H */
|
||||
--
|
||||
1.7.10
|
||||
|
|
@ -1,6 +1,6 @@
|
|||
From: Matt Fleming <matt.fleming@intel.com>
|
||||
Date: Tue, 28 Feb 2012 13:37:24 +0000
|
||||
Subject: [PATCH 12/13] x86, efi: Fix endian issues and unaligned accesses
|
||||
Subject: [PATCH 13/14] x86, efi: Fix endian issues and unaligned accesses
|
||||
|
||||
commit 92f42c50f227ad228f815a8f4eec872524dae3a5 upstream.
|
||||
|
|
@ -1,6 +1,6 @@
|
|||
From: Matt Fleming <matt.fleming@intel.com>
|
||||
Date: Sun, 15 Apr 2012 16:06:04 +0100
|
||||
Subject: [PATCH 13/13] x86, efi: Add dedicated EFI stub entry point
|
||||
Subject: [PATCH 14/14] x86, efi: Add dedicated EFI stub entry point
|
||||
|
||||
commit b1994304fc399f5d3a5368c81111d713490c4799 upstream.
|
||||
|
|
@ -183,8 +183,9 @@
|
|||
+ features/x86/efi-stub/0009-x86-efi-EFI-boot-stub-support.patch
|
||||
+ features/x86/efi-stub/0010-x86-efi-Break-up-large-initrd-reads.patch
|
||||
+ features/x86/efi-stub/0011-x86-efi-Fix-pointer-math-issue-in-handle_ramdisks.patch
|
||||
+ features/x86/efi-stub/0012-x86-efi-Fix-endian-issues-and-unaligned-accesses.patch
|
||||
+ features/x86/efi-stub/0013-x86-efi-Add-dedicated-EFI-stub-entry-point.patch
|
||||
+ features/x86/efi-stub/0012-tools-include-Add-byteshift-headers-for-endian-acces.patch
|
||||
+ features/x86/efi-stub/0013-x86-efi-Fix-endian-issues-and-unaligned-accesses.patch
|
||||
+ features/x86/efi-stub/0014-x86-efi-Add-dedicated-EFI-stub-entry-point.patch
|
||||
|
||||
+ bugfix/all/brcmsmac-INTERMEDIATE-but-not-AMPDU-only-when-tracin.patch
|
||||
+ bugfix/all/NFSv4-Rate-limit-the-state-manager-for-lock-reclaim-.patch
|
||||
|
|
Loading…
Reference in New Issue