summaryrefslogtreecommitdiffstats
path: root/recipes-kernel
diff options
context:
space:
mode:
authorZhenhua Luo <zhenhua.luo@freescale.com>2015-11-10 13:53:48 +0800
committerOtavio Salvador <otavio@ossystems.com.br>2016-04-19 15:03:21 -0300
commita8fa0db3e67b0292dc3cfd2c6d382b4a6a485f96 (patch)
tree8168a3dc16051b1b3e823760d750aeefb64c6eee /recipes-kernel
parent8ab3a5229ab9885e9d4d60699e357fe908a2e045 (diff)
downloadmeta-freescale-a8fa0db3e67b0292dc3cfd2c6d382b4a6a485f96.tar.gz
linux-qoriq: fix the kernel hang issue with gcc-5.2
Backport a patch to fix the kernel hang issue when the uImage is built by gcc-5.2. The details can be found in https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=5e95235 Signed-off-by: Zhenhua Luo <zhenhua.luo@freescale.com> (backported from meta-fsl-ppc:95d9f9aba81ccdae53011ac8c6fbbc2605b9cedc) Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Diffstat (limited to 'recipes-kernel')
-rw-r--r--recipes-kernel/linux/linux-qoriq/0001-powerpc-Align-TOC-to-256-bytes.patch37
-rw-r--r--recipes-kernel/linux/linux-qoriq_3.12.bb1
2 files changed, 38 insertions, 0 deletions
diff --git a/recipes-kernel/linux/linux-qoriq/0001-powerpc-Align-TOC-to-256-bytes.patch b/recipes-kernel/linux/linux-qoriq/0001-powerpc-Align-TOC-to-256-bytes.patch
new file mode 100644
index 00000000..2131c9d5
--- /dev/null
+++ b/recipes-kernel/linux/linux-qoriq/0001-powerpc-Align-TOC-to-256-bytes.patch
@@ -0,0 +1,37 @@
1From 7d4d16a6ccdd6d965b84284262a67d5b63426d50 Mon Sep 17 00:00:00 2001
2From: Zhenhua Luo <zhenhua.luo@freescale.com>
3Date: Mon, 9 Nov 2015 04:36:29 -0600
4Subject: [PATCH] powerpc: Align TOC to 256 bytes
5
6Recent toolchains(gcc-5.2) force the TOC to be 256 byte aligned. We need
7to enforce this alignment in our linker script, otherwise pointers
8to our TOC variables (__toc_start, __prom_init_toc_start) could
9be incorrect.
10
11If they are bad, we die a few hundred instructions into boot.
12
13Upstream-Status: Backport
14
15Backport from https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=5e95235
16
17Signed-off-by: Zhenhua Luo <zhenhua.luo@freescale.com>
18---
19 arch/powerpc/kernel/vmlinux.lds.S | 2 ++
20 1 file changed, 2 insertions(+)
21
22diff --git a/arch/powerpc/kernel/vmlinux.lds.S b/arch/powerpc/kernel/vmlinux.lds.S
23index f096e72..3266864 100644
24--- a/arch/powerpc/kernel/vmlinux.lds.S
25+++ b/arch/powerpc/kernel/vmlinux.lds.S
26@@ -213,6 +213,8 @@ SECTIONS
27 *(.opd)
28 }
29
30+ . = ALIGN(256);
31+
32 .got : AT(ADDR(.got) - LOAD_OFFSET) {
33 __toc_start = .;
34 #ifndef CONFIG_RELOCATABLE
35--
362.3.3
37
diff --git a/recipes-kernel/linux/linux-qoriq_3.12.bb b/recipes-kernel/linux/linux-qoriq_3.12.bb
index 1d973cde..23a2e004 100644
--- a/recipes-kernel/linux/linux-qoriq_3.12.bb
+++ b/recipes-kernel/linux/linux-qoriq_3.12.bb
@@ -6,6 +6,7 @@ SRC_URI = "git://git.freescale.com/ppc/sdk/linux.git;nobranch=1 \
6 file://0001-ARM-8158-LLVMLinux-use-static-inline-in-ARM-ftrace.patch \ 6 file://0001-ARM-8158-LLVMLinux-use-static-inline-in-ARM-ftrace.patch \
7 file://0001-ARM-LLVMLinux-Change-extern-inline-to-static-inline.patch \ 7 file://0001-ARM-LLVMLinux-Change-extern-inline-to-static-inline.patch \
8 file://0003-use-static-inline-in-ARM-lifeboot.h.patch \ 8 file://0003-use-static-inline-in-ARM-lifeboot.h.patch \
9 file://0001-powerpc-Align-TOC-to-256-bytes.patch \
9" 10"
10 11
11SRCREV = "f488de6741d5ba805b9fe813d2ddf32368d3a888" 12SRCREV = "f488de6741d5ba805b9fe813d2ddf32368d3a888"