summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNathan Rossi <nathan@nathanrossi.com>2015-12-31 00:45:34 +1000
committerNathan Rossi <nathan@nathanrossi.com>2016-01-06 13:10:44 +1000
commit7da3067a62fd0f2ead7e5a1ad017a146948080ee (patch)
treec2ef8c0445ae4b3459a7b5eb0f8e803b61ac5012
parentd63ce60c4b252c0f732216a60e8a914fa95dd4c0 (diff)
downloadmeta-xilinx-7da3067a62fd0f2ead7e5a1ad017a146948080ee.tar.gz
linux-xlnx_3.14: Remove 'xlnx_3.14' kernel
This kernel is no longer maintained, and has custom device tree bindings for various drivers. Remove the kernel recipe and all patches it uses. Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
-rw-r--r--recipes-kernel/linux/linux-xlnx/3.14/kernel-add-support-for-gcc-5.patch97
-rw-r--r--recipes-kernel/linux/linux-xlnx/3.14/kernel-use-the-gnu89-standard-explicitly.patch66
-rw-r--r--recipes-kernel/linux/linux-xlnx/3.14/tty-xuartps-Fix-RX-hang-and-TX-corruption-in-set_termios.patch32
-rw-r--r--recipes-kernel/linux/linux-xlnx/3.14/usb-host-zynq-dr-of-PHY-reset-during-probe.patch58
-rw-r--r--recipes-kernel/linux/linux-xlnx_3.14.bb17
5 files changed, 0 insertions, 270 deletions
diff --git a/recipes-kernel/linux/linux-xlnx/3.14/kernel-add-support-for-gcc-5.patch b/recipes-kernel/linux/linux-xlnx/3.14/kernel-add-support-for-gcc-5.patch
deleted file mode 100644
index bfebf72c..00000000
--- a/recipes-kernel/linux/linux-xlnx/3.14/kernel-add-support-for-gcc-5.patch
+++ /dev/null
@@ -1,97 +0,0 @@
1From: Sasha Levin <sasha.levin@oracle.com>
2Date: Mon, 13 Oct 2014 15:51:05 -0700
3Subject: [PATCH] kernel: add support for gcc 5
4
5We're missing include/linux/compiler-gcc5.h which is required now
6because gcc branched off to v5 in trunk.
7
8Just copy the relevant bits out of include/linux/compiler-gcc4.h,
9no new code is added as of now.
10
11This fixes a build error when using gcc 5.
12
13Signed-off-by: Sasha Levin <sasha.levin@oracle.com>
14Cc: <stable@vger.kernel.org>
15Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
16Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17Upstream-Status: Backport
18---
19 include/linux/compiler-gcc5.h | 66 +++++++++++++++++++++++++++++++++++++++++++
20 1 file changed, 66 insertions(+)
21 create mode 100644 include/linux/compiler-gcc5.h
22
23diff --git a/include/linux/compiler-gcc5.h b/include/linux/compiler-gcc5.h
24new file mode 100644
25index 0000000..cdd1cc2
26--- /dev/null
27+++ b/include/linux/compiler-gcc5.h
28@@ -0,0 +1,66 @@
29+#ifndef __LINUX_COMPILER_H
30+#error "Please don't include <linux/compiler-gcc5.h> directly, include <linux/compiler.h> instead."
31+#endif
32+
33+#define __used __attribute__((__used__))
34+#define __must_check __attribute__((warn_unused_result))
35+#define __compiler_offsetof(a, b) __builtin_offsetof(a, b)
36+
37+/* Mark functions as cold. gcc will assume any path leading to a call
38+ to them will be unlikely. This means a lot of manual unlikely()s
39+ are unnecessary now for any paths leading to the usual suspects
40+ like BUG(), printk(), panic() etc. [but let's keep them for now for
41+ older compilers]
42+
43+ Early snapshots of gcc 4.3 don't support this and we can't detect this
44+ in the preprocessor, but we can live with this because they're unreleased.
45+ Maketime probing would be overkill here.
46+
47+ gcc also has a __attribute__((__hot__)) to move hot functions into
48+ a special section, but I don't see any sense in this right now in
49+ the kernel context */
50+#define __cold __attribute__((__cold__))
51+
52+#define __UNIQUE_ID(prefix) __PASTE(__PASTE(__UNIQUE_ID_, prefix), __COUNTER__)
53+
54+#ifndef __CHECKER__
55+# define __compiletime_warning(message) __attribute__((warning(message)))
56+# define __compiletime_error(message) __attribute__((error(message)))
57+#endif /* __CHECKER__ */
58+
59+/*
60+ * Mark a position in code as unreachable. This can be used to
61+ * suppress control flow warnings after asm blocks that transfer
62+ * control elsewhere.
63+ *
64+ * Early snapshots of gcc 4.5 don't support this and we can't detect
65+ * this in the preprocessor, but we can live with this because they're
66+ * unreleased. Really, we need to have autoconf for the kernel.
67+ */
68+#define unreachable() __builtin_unreachable()
69+
70+/* Mark a function definition as prohibited from being cloned. */
71+#define __noclone __attribute__((__noclone__))
72+
73+/*
74+ * Tell the optimizer that something else uses this function or variable.
75+ */
76+#define __visible __attribute__((externally_visible))
77+
78+/*
79+ * GCC 'asm goto' miscompiles certain code sequences:
80+ *
81+ * http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58670
82+ *
83+ * Work it around via a compiler barrier quirk suggested by Jakub Jelinek.
84+ * Fixed in GCC 4.8.2 and later versions.
85+ *
86+ * (asm goto is automatically volatile - the naming reflects this.)
87+ */
88+#define asm_volatile_goto(x...) do { asm goto(x); asm (""); } while (0)
89+
90+#ifdef CONFIG_ARCH_USE_BUILTIN_BSWAP
91+#define __HAVE_BUILTIN_BSWAP32__
92+#define __HAVE_BUILTIN_BSWAP64__
93+#define __HAVE_BUILTIN_BSWAP16__
94+#endif /* CONFIG_ARCH_USE_BUILTIN_BSWAP */
95--
962.5.1
97
diff --git a/recipes-kernel/linux/linux-xlnx/3.14/kernel-use-the-gnu89-standard-explicitly.patch b/recipes-kernel/linux/linux-xlnx/3.14/kernel-use-the-gnu89-standard-explicitly.patch
deleted file mode 100644
index 9f7b3b8e..00000000
--- a/recipes-kernel/linux/linux-xlnx/3.14/kernel-use-the-gnu89-standard-explicitly.patch
+++ /dev/null
@@ -1,66 +0,0 @@
1From: "Kirill A. Shutemov" <kirill@shutemov.name>
2Date: Mon, 20 Oct 2014 12:23:12 +0300
3Subject: [PATCH] kernel: use the gnu89 standard explicitly
4
5Sasha Levin reports:
6 "gcc5 changes the default standard to c11, which makes kernel build
7 unhappy
8
9 Explicitly define the kernel standard to be gnu89 which should keep
10 everything working exactly like it was before gcc5"
11
12There are multiple small issues with the new default, but the biggest
13issue seems to be that the old - and very useful - GNU extension to
14allow a cast in front of an initializer has gone away.
15
16Patch updated by Kirill:
17 "I'm pretty sure all gcc versions you can build kernel with supports
18 -std=gnu89. cc-option is redunrant.
19
20 We also need to adjust HOSTCFLAGS otherwise allmodconfig fails for me"
21
22Note by Andrew Pinski:
23 "Yes it was reported and both problems relating to this extension has
24 been added to gnu99 and gnu11. Though there are other issues with the
25 kernel dealing with extern inline have different semantics between
26 gnu89 and gnu99/11"
27
28End result: we may be able to move up to a newer stdc model eventually,
29but right now the newer models have some annoying deficiencies, so the
30traditional "gnu89" model ends up being the preferred one.
31
32Signed-off-by: Sasha Levin <sasha.levin@oracle.com>
33Singed-off-by: Kirill A. Shutemov <kirill.shutemov@linux.intel.com>
34Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
35Upstream-Status: Backport [Minor merge conflict resolution]
36---
37 Makefile | 6 ++++--
38 1 file changed, 4 insertions(+), 2 deletions(-)
39
40diff --git a/Makefile b/Makefile
41index b2f7de8..6af4c22 100644
42--- a/Makefile
43+++ b/Makefile
44@@ -244,7 +244,7 @@ CONFIG_SHELL := $(shell if [ -x "$$BASH" ]; then echo $$BASH; \
45
46 HOSTCC = gcc
47 HOSTCXX = g++
48-HOSTCFLAGS = -Wall -Wmissing-prototypes -Wstrict-prototypes -O2 -fomit-frame-pointer
49+HOSTCFLAGS = -Wall -Wmissing-prototypes -Wstrict-prototypes -O2 -fomit-frame-pointer -std=gnu89
50 HOSTCXXFLAGS = -O2
51
52 # Decide whether to build built-in, modular, or both.
53@@ -382,7 +382,9 @@ KBUILD_CFLAGS := -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs \
54 -fno-strict-aliasing -fno-common \
55 -Werror-implicit-function-declaration \
56 -Wno-format-security \
57- -fno-delete-null-pointer-checks
58+ -fno-delete-null-pointer-checks \
59+ -std=gnu89
60+
61 KBUILD_AFLAGS_KERNEL :=
62 KBUILD_CFLAGS_KERNEL :=
63 KBUILD_AFLAGS := -D__ASSEMBLY__
64--
652.5.1
66
diff --git a/recipes-kernel/linux/linux-xlnx/3.14/tty-xuartps-Fix-RX-hang-and-TX-corruption-in-set_termios.patch b/recipes-kernel/linux/linux-xlnx/3.14/tty-xuartps-Fix-RX-hang-and-TX-corruption-in-set_termios.patch
deleted file mode 100644
index bafd4332..00000000
--- a/recipes-kernel/linux/linux-xlnx/3.14/tty-xuartps-Fix-RX-hang-and-TX-corruption-in-set_termios.patch
+++ /dev/null
@@ -1,32 +0,0 @@
1From 397b08fb903994ccaa2d4d7f4cf578c9d3028463 Mon Sep 17 00:00:00 2001
2From: Nathan Rossi <nathan.rossi@xilinx.com>
3Date: Mon, 24 Nov 2014 15:11:43 +1000
4Subject: [PATCH] tty: xuartps: Fix RX hang, and TX corruption in set_termios
5
6Signed-off-by: Nathan Rossi <nathan.rossi@xilinx.com>
7---
8 drivers/tty/serial/xilinx_uartps.c | 8 ++++----
9 1 file changed, 4 insertions(+), 4 deletions(-)
10
11diff --git a/drivers/tty/serial/xilinx_uartps.c b/drivers/tty/serial/xilinx_uartps.c
12index dbbc195..fcb1c50 100644
13--- a/drivers/tty/serial/xilinx_uartps.c
14+++ b/drivers/tty/serial/xilinx_uartps.c
15@@ -648,10 +648,10 @@ static void xuartps_set_termios(struct uart_port *port,
16
17 spin_lock_irqsave(&port->lock, flags);
18
19- /* Empty the receive FIFO 1st before making changes */
20- while ((xuartps_readl(XUARTPS_SR_OFFSET) &
21- XUARTPS_SR_RXEMPTY) != XUARTPS_SR_RXEMPTY) {
22- xuartps_readl(XUARTPS_FIFO_OFFSET);
23+ /* Wait for the transmit FIFO to empty before making changes */
24+ if (!(xuartps_readl(XUARTPS_CR_OFFSET) & XUARTPS_CR_TX_DIS)) {
25+ while (!(xuartps_readl(XUARTPS_SR_OFFSET) & XUARTPS_SR_TXEMPTY))
26+ cpu_relax();
27 }
28
29 /* Disable the TX and RX to set baud rate */
30--
312.1.1
32
diff --git a/recipes-kernel/linux/linux-xlnx/3.14/usb-host-zynq-dr-of-PHY-reset-during-probe.patch b/recipes-kernel/linux/linux-xlnx/3.14/usb-host-zynq-dr-of-PHY-reset-during-probe.patch
deleted file mode 100644
index 6ef36098..00000000
--- a/recipes-kernel/linux/linux-xlnx/3.14/usb-host-zynq-dr-of-PHY-reset-during-probe.patch
+++ /dev/null
@@ -1,58 +0,0 @@
1From: Mike Looijmans <mike.looijmans@topic.nl>
2Date: Thu, 25 Sep 2014 07:53:49 +0200
3Subject: [PATCH] usb/host/zynq-dr-of: PHY reset during probe
4
5---
6 drivers/usb/host/zynq-dr-of.c | 24 ++++++++++++++++++++++++
7 1 file changed, 24 insertions(+)
8
9diff --git a/drivers/usb/host/zynq-dr-of.c b/drivers/usb/host/zynq-dr-of.c
10index 9ab936a..2765894 100644
11--- a/drivers/usb/host/zynq-dr-of.c
12+++ b/drivers/usb/host/zynq-dr-of.c
13@@ -26,6 +26,8 @@
14 #include <linux/string.h>
15 #include <linux/clk.h>
16 #include <linux/usb/ulpi.h>
17+#include <linux/gpio.h>
18+#include <linux/of_gpio.h>
19
20 #include "ehci-zynq.h"
21
22@@ -152,11 +154,33 @@ static int zynq_dr_of_probe(struct platform_device *ofdev)
23 static unsigned int idx;
24 struct resource *res;
25 int i, phy_init;
26+ int reset_gpio;
27 int ret;
28
29 pdata = &data;
30 memset(pdata, 0, sizeof(data));
31
32+ reset_gpio = of_get_named_gpio(np, "xlnx,phy-reset-gpio", 0);
33+ if (gpio_is_valid(reset_gpio)) {
34+ ret = devm_gpio_request_one(&ofdev->dev, reset_gpio,
35+ GPIOF_INIT_LOW, "ulpi resetb");
36+ if (ret) {
37+ dev_err(&ofdev->dev, "Failed to request ULPI reset gpio: %d\n", ret);
38+ return ret;
39+ }
40+ udelay(1); /* ULPI Datasheet specifies a 1us pulse width for reset */
41+ if (of_property_read_bool(np, "xlnx,phy-reset-gpio-tristate"))
42+ gpio_direction_input(reset_gpio);
43+ else
44+ gpio_set_value_cansleep(reset_gpio, 1);
45+ udelay(1); /* ULPI will assert the DIR line, give it time to do so */
46+ } else {
47+ /* GPIO controller is not yet available, try again later. */
48+ if (reset_gpio == -EPROBE_DEFER) {
49+ return -EPROBE_DEFER;
50+ }
51+ }
52+
53 res = platform_get_resource(ofdev, IORESOURCE_IRQ, 0);
54 if (IS_ERR(res)) {
55 dev_err(&ofdev->dev,
56--
572.1.1
58
diff --git a/recipes-kernel/linux/linux-xlnx_3.14.bb b/recipes-kernel/linux/linux-xlnx_3.14.bb
deleted file mode 100644
index c93997e4..00000000
--- a/recipes-kernel/linux/linux-xlnx_3.14.bb
+++ /dev/null
@@ -1,17 +0,0 @@
1# Kernel version and SRCREV correspond to: xlnx_3.14 branch
2LINUX_VERSION = "3.14"
3SRCREV ?= "2b48a8aeea7367359f9eebe55c4a09a05227f32b"
4
5include linux-xlnx.inc
6
7FILESEXTRAPATHS_prepend := "${THISDIR}/linux-xlnx/3.14:"
8SRC_URI_append = " \
9 file://usb-host-zynq-dr-of-PHY-reset-during-probe.patch \
10 file://tty-xuartps-Fix-RX-hang-and-TX-corruption-in-set_termios.patch \
11 file://kernel-add-support-for-gcc-5.patch \
12 file://kernel-use-the-gnu89-standard-explicitly.patch \
13 "
14
15# This kernel's Zynq USB driver is different to the newer kernels.
16KERNEL_FEATURES_append_zynq = " bsp/xilinx/soc/linux-xlnx/xlnx-3.14-usb.scc"
17