From 2848919526f575d9eaaccf19d4bfaa4a0f4043c2 Mon Sep 17 00:00:00 2001 From: Samuli Piippo Date: Wed, 16 Mar 2016 16:00:23 +0200 Subject: BBB: use new kernel main-line 3.8 kernel in meta-beagleboard no longer builds with gcc5. Use 3.14 kernel from beagleboard.org which should provide cape manager support as well. Change-Id: I7456fb949afc0415cfba4f865a193819183b1b51 Reviewed-by: Teemu Holappa --- b2qt-init-build-env | 5 +- conf/bblayers.conf.bbb.sample | 50 ------- conf/distro/include/beaglebone.conf | 11 +- meta-beagleboard-extras/conf/layer.conf | 32 ---- .../0001-AM335x-Adding-SGX-DT-node.patch | 34 ----- ...ke-hwmod-deassert-for-SGX-graphics-device.patch | 121 --------------- ...-fb-Add-API-to-register-wait-for-vsync-ca.patch | 97 ------------ ...RM-perf-add-support-for-perf-registers-API.diff | 128 ---------------- ...re-up-perf_regs-and-unwind-support-for-AR.patch | 163 --------------------- .../recipes/linux/linux-mainline_3.8.bbappend | 40 ----- .../recipes/u-boot/u-boot-uenv-script.bb | 48 ------ .../recipes/u-boot/u-boot-uenv-script/uEnv.txt | 6 - .../recipes/linux/linux-ti-staging_3.14.bbappend | 4 + ...0001-Rename-omap_dss_device-output-to-src.patch | 25 ++++ .../omap3-sgx-modules_5.01.01.02.bbappend | 23 +++ .../recipes/u-boot/u-boot-uenv-script.bb | 48 ++++++ .../recipes/u-boot/u-boot-uenv-script/uEnv.txt | 6 + scripts/setup-environment.sh | 5 +- 18 files changed, 112 insertions(+), 734 deletions(-) delete mode 100644 conf/bblayers.conf.bbb.sample delete mode 100644 meta-beagleboard-extras/conf/layer.conf delete mode 100755 meta-beagleboard-extras/recipes/linux/linux-mainline/0001-AM335x-Adding-SGX-DT-node.patch delete mode 100755 meta-beagleboard-extras/recipes/linux/linux-mainline/0002-AM33XX-Invoke-hwmod-deassert-for-SGX-graphics-device.patch delete mode 100755 meta-beagleboard-extras/recipes/linux/linux-mainline/0003-video-da8xx-fb-Add-API-to-register-wait-for-vsync-ca.patch delete mode 100644 meta-beagleboard-extras/recipes/linux/linux-mainline/ARM-perf-add-support-for-perf-registers-API.diff delete mode 100644 meta-beagleboard-extras/recipes/linux/linux-mainline/ARM-perf-wire-up-perf_regs-and-unwind-support-for-AR.patch delete mode 100644 meta-beagleboard-extras/recipes/linux/linux-mainline_3.8.bbappend delete mode 100644 meta-beagleboard-extras/recipes/u-boot/u-boot-uenv-script.bb delete mode 100644 meta-beagleboard-extras/recipes/u-boot/u-boot-uenv-script/uEnv.txt create mode 100644 meta-ti-extras/recipes/powervr-drivers/omap3-sgx-modules/0001-Rename-omap_dss_device-output-to-src.patch create mode 100644 meta-ti-extras/recipes/powervr-drivers/omap3-sgx-modules_5.01.01.02.bbappend create mode 100644 meta-ti-extras/recipes/u-boot/u-boot-uenv-script.bb create mode 100644 meta-ti-extras/recipes/u-boot/u-boot-uenv-script/uEnv.txt diff --git a/b2qt-init-build-env b/b2qt-init-build-env index 8541c72..f32900d 100755 --- a/b2qt-init-build-env +++ b/b2qt-init-build-env @@ -104,12 +104,9 @@ get_groups() { tibidabo) PROJECT_GROUPS="architech" ;; - beagleboard|am335x-evm) + beaglebone|beagleboard|am335x-evm) PROJECT_GROUPS="ti" ;; - beaglebone) - PROJECT_GROUPS="bbb" - ;; raspberrypi|raspberrypi2|raspberrypi3) PROJECT_GROUPS="rpi" ;; diff --git a/conf/bblayers.conf.bbb.sample b/conf/bblayers.conf.bbb.sample deleted file mode 100644 index 2fc1501..0000000 --- a/conf/bblayers.conf.bbb.sample +++ /dev/null @@ -1,50 +0,0 @@ -############################################################################## -## -## Copyright (C) 2016 The Qt Company Ltd. -## Contact: http://www.qt.io/licensing/ -## -## This file is part of the Boot to Qt meta layer. -## -## $QT_BEGIN_LICENSE:COMM$ -## -## Commercial License Usage -## Licensees holding valid commercial Qt licenses may use this file in -## accordance with the commercial license agreement provided with the -## Software or, alternatively, in accordance with the terms contained in -## a written agreement between you and The Qt Company. For licensing terms -## and conditions see http://www.qt.io/terms-conditions. For further -## information use the contact form at http://www.qt.io/contact-us. -## -## $QT_END_LICENSE$ -## -############################################################################## - -# LAYER_CONF_VERSION is increased each time build/conf/bblayers.conf -# changes incompatibly -LCONF_VERSION = "6" - -BBPATH = "${TOPDIR}" -BBFILES ?= "" -BSPDIR := "${@os.path.abspath(os.path.dirname(d.getVar('FILE', True)) + '/../..')}" - -BBLAYERS ?= " \ - ${BSPDIR}/sources/poky/meta \ - ${BSPDIR}/sources/poky/meta-yocto \ - ${BSPDIR}/sources/meta-beagleboard/common-bsp \ - ${BSPDIR}/sources/meta-ti \ - ${BSPDIR}/sources/meta-fsl-arm \ - ${BSPDIR}/sources/meta-openembedded/meta-oe \ - ${BSPDIR}/sources/meta-openembedded/meta-python \ - ${BSPDIR}/sources/meta-openembedded/meta-networking \ - ${BSPDIR}/sources/meta-openembedded/meta-initramfs \ - ${BSPDIR}/sources/meta-openembedded/meta-multimedia \ - ${BSPDIR}/sources/meta-b2qt \ - ${BSPDIR}/sources/meta-b2qt/meta-ti-extras \ - ${BSPDIR}/sources/meta-b2qt/meta-beagleboard-extras \ - ${BSPDIR}/sources/meta-mingw \ - ${BSPDIR}/sources/meta-qt5 \ - " -BBLAYERS_NON_REMOVABLE ?= " \ - ${BSPDIR}/sources/poky/meta \ - ${BSPDIR}/sources/poky/meta-yocto \ - " diff --git a/conf/distro/include/beaglebone.conf b/conf/distro/include/beaglebone.conf index 8a2c3e2..1627f37 100644 --- a/conf/distro/include/beaglebone.conf +++ b/conf/distro/include/beaglebone.conf @@ -34,17 +34,14 @@ EXTRA_IMAGEDEPENDS += "u-boot-uenv-script" DISTRO_FEATURES_remove = "webengine" -PREFERRED_VERSION_libgles-omap3 = "4.10.00.01" -PREFERRED_VERSION_omap3-sgx-modules = "4.10.00.01" +PREFERRED_VERSION_linux-ti-staging = "3.14%" + +PREFERRED_VERSION_libgles-omap3 = "5.01.01.02" +PREFERRED_VERSION_omap3-sgx-modules = "5.01.01.02" PREFERRED_PROVIDER_virtual/egl = "libgles-omap3" PREFERRED_PROVIDER_virtual/libgles2 = "libgles-omap3" -PREFERRED_PROVIDER_u-boot = "u-boot" -EXTRA_IMAGEDEPENDS_remove = "u-boot-denx" -UBOOT_MACHINE = "am335x_boneblack_config" -KERNEL_IMAGETYPE = "zImage" - MACHINE_EXTRA_INSTALL = "\ libgles-omap3 \ libgles-omap3-rawdemos \ diff --git a/meta-beagleboard-extras/conf/layer.conf b/meta-beagleboard-extras/conf/layer.conf deleted file mode 100644 index 1f7639f..0000000 --- a/meta-beagleboard-extras/conf/layer.conf +++ /dev/null @@ -1,32 +0,0 @@ -############################################################################## -## -## Copyright (C) 2016 The Qt Company Ltd. -## Contact: http://www.qt.io/licensing/ -## -## This file is part of the Boot to Qt meta layer. -## -## $QT_BEGIN_LICENSE:COMM$ -## -## Commercial License Usage -## Licensees holding valid commercial Qt licenses may use this file in -## accordance with the commercial license agreement provided with the -## Software or, alternatively, in accordance with the terms contained in -## a written agreement between you and The Qt Company. For licensing terms -## and conditions see http://www.qt.io/terms-conditions. For further -## information use the contact form at http://www.qt.io/contact-us. -## -## $QT_END_LICENSE$ -## -############################################################################## - -# We have a conf and classes directory, append to BBPATH -BBPATH .= ":${LAYERDIR}" - -# We have a recipes directory, add to BBFILES -BBFILES += "${LAYERDIR}/recipes*/*/*.bb \ - ${LAYERDIR}/recipes*/*/*.bbappend \ - " - -BBFILE_COLLECTIONS += "b2qt_bb" -BBFILE_PATTERN_b2qt_bb := "^${LAYERDIR}/" -BBFILE_PRIORITY_b2qt_bb = "20" diff --git a/meta-beagleboard-extras/recipes/linux/linux-mainline/0001-AM335x-Adding-SGX-DT-node.patch b/meta-beagleboard-extras/recipes/linux/linux-mainline/0001-AM335x-Adding-SGX-DT-node.patch deleted file mode 100755 index 97ce000..0000000 --- a/meta-beagleboard-extras/recipes/linux/linux-mainline/0001-AM335x-Adding-SGX-DT-node.patch +++ /dev/null @@ -1,34 +0,0 @@ -From 1400fbf3e8e02eb1efd210a892a0d602061c7ca8 Mon Sep 17 00:00:00 2001 -From: Prathap M S -Date: Mon, 2 Sep 2013 11:42:13 +0530 -Subject: [PATCH 1/3] AM335x : Adding SGX DT node - -This adds the SGX DT node for AM335x. - -Signed-off-by: Prathap M S ---- - arch/arm/boot/dts/am33xx.dtsi | 8 ++++++++ - 1 files changed, 8 insertions(+), 0 deletions(-) - -diff --git a/arch/arm/boot/dts/am33xx.dtsi b/arch/arm/boot/dts/am33xx.dtsi -index 17e0da8..74c6e41 100644 ---- a/arch/arm/boot/dts/am33xx.dtsi -+++ b/arch/arm/boot/dts/am33xx.dtsi -@@ -96,6 +96,14 @@ - reg = <0x48200000 0x1000>; - }; - -+ sgx@0x56000000 { -+ compatible = "ti,sgx"; -+ ti,hwmods = "gfx"; -+ clock-frequency = <200000000>; -+ reg = <0x56000000 0x1000000>; -+ interrupts = <37>; -+ }; -+ - edma: edma@49000000 { - compatible = "ti,edma3"; - ti,hwmods = "tpcc", "tptc0", "tptc1", "tptc2"; --- -1.7.1 - diff --git a/meta-beagleboard-extras/recipes/linux/linux-mainline/0002-AM33XX-Invoke-hwmod-deassert-for-SGX-graphics-device.patch b/meta-beagleboard-extras/recipes/linux/linux-mainline/0002-AM33XX-Invoke-hwmod-deassert-for-SGX-graphics-device.patch deleted file mode 100755 index 05672d3..0000000 --- a/meta-beagleboard-extras/recipes/linux/linux-mainline/0002-AM33XX-Invoke-hwmod-deassert-for-SGX-graphics-device.patch +++ /dev/null @@ -1,121 +0,0 @@ -From 4179cd27a2caa23688646e043e2872e89c9a7bc7 Mon Sep 17 00:00:00 2001 -From: Prathap M S -Date: Mon, 2 Sep 2013 11:52:03 +0530 -Subject: [PATCH 2/3] AM33XX : Invoke hwmod deassert for SGX(graphics device) - -By default reset is asserted for SGX. -Adding gpu.c file introducing omap_sgx_init_of() for deasserting SGX reset. -This calls omap_device_deassert_hardreset() for deasserting the reset for SGX. - -Signed-off-by: Prathap M S ---- - arch/arm/mach-omap2/Makefile | 2 +- - arch/arm/mach-omap2/board-generic.c | 4 +++ - arch/arm/mach-omap2/common.h | 1 + - arch/arm/mach-omap2/gpu.c | 48 +++++++++++++++++++++++++++++++++++ - 4 files changed, 54 insertions(+), 1 deletions(-) - create mode 100644 arch/arm/mach-omap2/gpu.c - -diff --git a/arch/arm/mach-omap2/Makefile b/arch/arm/mach-omap2/Makefile -index d4f6715..b65cc56 100644 ---- a/arch/arm/mach-omap2/Makefile -+++ b/arch/arm/mach-omap2/Makefile -@@ -8,7 +8,7 @@ ccflags-$(CONFIG_ARCH_MULTIPLATFORM) := -I$(srctree)/$(src)/include \ - # Common support - obj-y := id.o io.o control.o mux.o devices.o fb.o serial.o gpmc.o timer.o pm.o \ - common.o gpio.o dma.o wd_timer.o display.o i2c.o hdq1w.o omap_hwmod.o \ -- omap_device.o sram.o -+ omap_device.o sram.o gpu.o - - omap-2-3-common = irq.o - hwmod-common = omap_hwmod.o omap_hwmod_reset.o \ -diff --git a/arch/arm/mach-omap2/board-generic.c b/arch/arm/mach-omap2/board-generic.c -index be5d005..e2b3981 100644 ---- a/arch/arm/mach-omap2/board-generic.c -+++ b/arch/arm/mach-omap2/board-generic.c -@@ -22,6 +22,7 @@ - #include "common.h" - #include "common-board-devices.h" - #include "dss-common.h" -+#include "soc.h" - - #if !(defined(CONFIG_ARCH_OMAP2) || defined(CONFIG_ARCH_OMAP3)) - #define intc_of_init NULL -@@ -50,6 +50,8 @@ static void __init omap_generic_init(void) - omap4_panda_display_init_of(); - else if (of_machine_is_compatible("ti,omap4-sdp")) - omap_4430sdp_display_init_of(); -+ if (omap3_has_sgx()) -+ omap_sgx_init_of(); - } - - #ifdef CONFIG_SOC_OMAP2420 -diff --git a/arch/arm/mach-omap2/common.h b/arch/arm/mach-omap2/common.h -index dfcc182..7d2f04e 100644 ---- a/arch/arm/mach-omap2/common.h -+++ b/arch/arm/mach-omap2/common.h -@@ -296,6 +296,7 @@ extern void omap_reserve(void); - - struct omap_hwmod; - extern int omap_dss_reset(struct omap_hwmod *); -+void __init omap_sgx_init_of(void); - - /* SoC specific clock initializer */ - extern int (*omap_clk_init)(void); -diff --git a/arch/arm/mach-omap2/gpu.c b/arch/arm/mach-omap2/gpu.c -new file mode 100644 -index 0000000..98a66cf ---- /dev/null -+++ b/arch/arm/mach-omap2/gpu.c -@@ -0,0 +1,48 @@ -+/* -+ * Deassert reset for AM33xx graphics device(SGX) hwmod -+ * -+ * Copyright (C) 2013 Texas Instruments Incorporated - http://www.ti.com/ -+ * Prathap MS -+ * -+ * This program is free software; you can redistribute it and/or -+ * modify it under the terms of the GNU General Public License as -+ * published by the Free Software Foundation version 2. -+ * -+ * This program is distributed "as is" WITHOUT ANY WARRANTY of any -+ * kind, whether express or implied; without even the implied warranty -+ * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -+ * GNU General Public License for more details. -+ */ -+#include -+#include "omap_device.h" -+ -+void __init omap_sgx_init_of(void) -+{ -+ struct device_node *node; -+ struct platform_device *pdev; -+ int ret = 0; -+ node = of_find_compatible_node(NULL, NULL, "ti,sgx"); -+ if (!node) -+ return; -+ pdev = of_find_device_by_node(node); -+ if (!pdev) { -+ pr_warn("of_find_device_by_node() failed for sgx\n"); -+ return; -+ } -+ ret = omap_device_deassert_hardreset(pdev, "gfx"); -+ if (ret != 0) -+ pr_warn("omap_device_deassert_hardreset() failed for sgx(gfx hwmod)\n"); -+ -+ node = of_find_compatible_node(NULL, NULL, "ti,am335x-timer"); -+ if (!node) -+ return; -+ pdev = of_find_device_by_node(node); -+ if (!pdev) { -+ pr_warn("of_find_device_by_node() failed for sgx\n"); -+ return; -+ } -+ ret = omap_device_deassert_hardreset(pdev, "timer7"); -+ if (ret != 0) -+ pr_warn("omap_device_deassert_hardreset() failed for sgx(gfx hwmod)\n"); -+} -+ --- -1.7.1 - diff --git a/meta-beagleboard-extras/recipes/linux/linux-mainline/0003-video-da8xx-fb-Add-API-to-register-wait-for-vsync-ca.patch b/meta-beagleboard-extras/recipes/linux/linux-mainline/0003-video-da8xx-fb-Add-API-to-register-wait-for-vsync-ca.patch deleted file mode 100755 index c425982..0000000 --- a/meta-beagleboard-extras/recipes/linux/linux-mainline/0003-video-da8xx-fb-Add-API-to-register-wait-for-vsync-ca.patch +++ /dev/null @@ -1,97 +0,0 @@ -From 0f4e7d4b7d7314b38a9fd3497d7d4e0c36d19bff Mon Sep 17 00:00:00 2001 -From: Prathap M S -Date: Mon, 2 Sep 2013 12:05:23 +0530 -Subject: [PATCH 3/3] video: da8xx-fb: Add API to register wait for vsync callback - -This patch adds APIs to register and unregister wait for vsync callback. -This is derived from commit id 2d44302545da24fd22912d964102bc31a7489e97 -This commit id was part of 3.2 kernel sources. - -Signed-off-by: Prathap M S ---- - drivers/video/da8xx-fb.c | 33 +++++++++++++++++++++++++++++++++ - include/video/da8xx-fb.h | 4 ++++ - 2 files changed, 37 insertions(+), 0 deletions(-) - -diff --git a/drivers/video/da8xx-fb.c b/drivers/video/da8xx-fb.c -index 131cf4c..ef06b85 100644 ---- a/drivers/video/da8xx-fb.c -+++ b/drivers/video/da8xx-fb.c -@@ -199,6 +199,9 @@ static struct fb_fix_screeninfo da8xx_fb_fix = { - .accel = FB_ACCEL_NONE - }; - -+static vsync_callback_t vsync_cb_handler; -+static void *vsync_cb_arg; -+ - static struct fb_videomode known_lcd_panels[] = { - /* Sharp LCD035Q3DG01 */ - [0] = { -@@ -806,6 +809,32 @@ static int lcd_init(struct da8xx_fb_par *par, const struct lcd_ctrl_config *cfg, - return 0; - } - -+int register_vsync_cb(vsync_callback_t handler, void *arg, int idx) -+{ -+ if ((vsync_cb_handler == NULL) && (vsync_cb_arg == NULL)) { -+ vsync_cb_arg = arg; -+ vsync_cb_handler = handler; -+ } else { -+ return -EEXIST; -+ } -+ -+ return 0; -+} -+EXPORT_SYMBOL(register_vsync_cb); -+ -+int unregister_vsync_cb(vsync_callback_t handler, void *arg, int idx) -+{ -+ if ((vsync_cb_handler == handler) && (vsync_cb_arg == arg)) { -+ vsync_cb_handler = NULL; -+ vsync_cb_arg = NULL; -+ } else { -+ return -ENXIO; -+ } -+ -+ return 0; -+} -+EXPORT_SYMBOL(unregister_vsync_cb); -+ - /* IRQ handler for version 2 of LCDC */ - static irqreturn_t lcdc_irq_handler_rev02(int irq, void *arg) - { -@@ -843,6 +872,8 @@ static irqreturn_t lcdc_irq_handler_rev02(int irq, void *arg) - LCD_DMA_FRM_BUF_CEILING_ADDR_0_REG); - par->vsync_flag = 1; - wake_up_interruptible(&par->vsync_wait); -+ if (vsync_cb_handler) -+ vsync_cb_handler(vsync_cb_arg); - } - - if (stat & LCD_END_OF_FRAME1) { -@@ -918,6 +949,8 @@ static irqreturn_t lcdc_irq_handler_rev01(int irq, void *arg) - LCD_DMA_FRM_BUF_CEILING_ADDR_1_REG); - par->vsync_flag = 1; - wake_up_interruptible(&par->vsync_wait); -+ if (vsync_cb_handler) -+ vsync_cb_handler(vsync_cb_arg); - } - } - -diff --git a/include/video/da8xx-fb.h b/include/video/da8xx-fb.h -index efed3c3..a6cc484 100644 ---- a/include/video/da8xx-fb.h -+++ b/include/video/da8xx-fb.h -@@ -91,5 +91,9 @@ struct lcd_sync_arg { - /* Proprietary FB_SYNC_ flags */ - #define FB_SYNC_CLK_INVERT 0x40000000 - -+typedef void (*vsync_callback_t)(void *arg); -+int register_vsync_cb(vsync_callback_t handler, void *arg, int idx); -+int unregister_vsync_cb(vsync_callback_t handler, void *arg, int idx); -+ - #endif /* ifndef DA8XX_FB_H */ - --- -1.7.1 - diff --git a/meta-beagleboard-extras/recipes/linux/linux-mainline/ARM-perf-add-support-for-perf-registers-API.diff b/meta-beagleboard-extras/recipes/linux/linux-mainline/ARM-perf-add-support-for-perf-registers-API.diff deleted file mode 100644 index 13b251a..0000000 --- a/meta-beagleboard-extras/recipes/linux/linux-mainline/ARM-perf-add-support-for-perf-registers-API.diff +++ /dev/null @@ -1,128 +0,0 @@ -From 8221f36672b7a1336c2bf245c394f0b5453784a1 Mon Sep 17 00:00:00 2001 -From: Will Deacon -Date: Thu, 26 Sep 2013 12:36:35 +0100 -Subject: [PATCH] ARM: perf: add support for perf registers API - -This patch implements the functions required for the perf registers API, -allowing the perf tool to interface kernel register dumps with libunwind -in order to provide userspace backtracing. - -B2Qt: Backported for 3.8 kernel - -Cc: Jean Pihet -Signed-off-by: Will Deacon ---- - arch/arm/Kconfig | 2 ++ - arch/arm/include/uapi/asm/Kbuild | 1 + - arch/arm/include/uapi/asm/perf_regs.h | 23 +++++++++++++++++++++++ - arch/arm/kernel/Makefile | 1 + - arch/arm/kernel/perf_regs.c | 30 ++++++++++++++++++++++++++++++ - 5 files changed, 57 insertions(+) - create mode 100644 arch/arm/include/uapi/asm/perf_regs.h - create mode 100644 arch/arm/kernel/perf_regs.c - -diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig -index 67874b8..6f630be 100644 ---- a/arch/arm/Kconfig -+++ b/arch/arm/Kconfig -@@ -46,6 +46,8 @@ config ARM - select HAVE_MEMBLOCK - select HAVE_OPROFILE if (HAVE_PERF_EVENTS) - select HAVE_PERF_EVENTS -+ select HAVE_PERF_REGS -+ select HAVE_PERF_USER_STACK_DUMP - select HAVE_REGS_AND_STACK_ACCESS_API - select HAVE_SYSCALL_TRACEPOINTS - select HAVE_UID16 -diff --git a/arch/arm/include/uapi/asm/Kbuild b/arch/arm/include/uapi/asm/Kbuild -index 47bcb2d..570b82f 100644 ---- a/arch/arm/include/uapi/asm/Kbuild -+++ b/arch/arm/include/uapi/asm/Kbuild -@@ -8,6 +8,7 @@ header-y += hwcap.h - header-y += ioctls.h - header-y += kvm_para.h - header-y += mman.h -+header-y += perf_regs.h - header-y += posix_types.h - header-y += ptrace.h - header-y += setup.h -diff --git a/arch/arm/include/uapi/asm/perf_regs.h b/arch/arm/include/uapi/asm/perf_regs.h -new file mode 100644 -index 0000000..ce59448 ---- /dev/null -+++ b/arch/arm/include/uapi/asm/perf_regs.h -@@ -0,0 +1,23 @@ -+#ifndef _ASM_ARM_PERF_REGS_H -+#define _ASM_ARM_PERF_REGS_H -+ -+enum perf_event_arm_regs { -+ PERF_REG_ARM_R0, -+ PERF_REG_ARM_R1, -+ PERF_REG_ARM_R2, -+ PERF_REG_ARM_R3, -+ PERF_REG_ARM_R4, -+ PERF_REG_ARM_R5, -+ PERF_REG_ARM_R6, -+ PERF_REG_ARM_R7, -+ PERF_REG_ARM_R8, -+ PERF_REG_ARM_R9, -+ PERF_REG_ARM_R10, -+ PERF_REG_ARM_FP, -+ PERF_REG_ARM_IP, -+ PERF_REG_ARM_SP, -+ PERF_REG_ARM_LR, -+ PERF_REG_ARM_PC, -+ PERF_REG_ARM_MAX, -+}; -+#endif /* _ASM_ARM_PERF_REGS_H */ -diff --git a/arch/arm/kernel/Makefile b/arch/arm/kernel/Makefile -index 5bbec7b..c6ab18f 100644 ---- a/arch/arm/kernel/Makefile -+++ b/arch/arm/kernel/Makefile -@@ -69,6 +69,7 @@ obj-$(CONFIG_CPU_XSC3) += xscale-cp0.o - obj-$(CONFIG_CPU_MOHAWK) += xscale-cp0.o - obj-$(CONFIG_CPU_PJ4) += pj4-cp0.o - obj-$(CONFIG_IWMMXT) += iwmmxt.o -+obj-$(CONFIG_PERF_EVENTS) += perf_regs.o - obj-$(CONFIG_HW_PERF_EVENTS) += perf_event.o perf_event_cpu.o - AFLAGS_iwmmxt.o := -Wa,-mcpu=iwmmxt - obj-$(CONFIG_ARM_CPU_TOPOLOGY) += topology.o -diff --git a/arch/arm/kernel/perf_regs.c b/arch/arm/kernel/perf_regs.c -new file mode 100644 -index 0000000..6e4379c ---- /dev/null -+++ b/arch/arm/kernel/perf_regs.c -@@ -0,0 +1,30 @@ -+ -+#include -+#include -+#include -+#include -+#include -+#include -+ -+u64 perf_reg_value(struct pt_regs *regs, int idx) -+{ -+ if (WARN_ON_ONCE((u32)idx >= PERF_REG_ARM_MAX)) -+ return 0; -+ -+ return regs->uregs[idx]; -+} -+ -+#define REG_RESERVED (~((1ULL << PERF_REG_ARM_MAX) - 1)) -+ -+int perf_reg_validate(u64 mask) -+{ -+ if (!mask || mask & REG_RESERVED) -+ return -EINVAL; -+ -+ return 0; -+} -+ -+u64 perf_reg_abi(struct task_struct *task) -+{ -+ return PERF_SAMPLE_REGS_ABI_32; -+} --- -1.9.1 - diff --git a/meta-beagleboard-extras/recipes/linux/linux-mainline/ARM-perf-wire-up-perf_regs-and-unwind-support-for-AR.patch b/meta-beagleboard-extras/recipes/linux/linux-mainline/ARM-perf-wire-up-perf_regs-and-unwind-support-for-AR.patch deleted file mode 100644 index e3e8d21..0000000 --- a/meta-beagleboard-extras/recipes/linux/linux-mainline/ARM-perf-wire-up-perf_regs-and-unwind-support-for-AR.patch +++ /dev/null @@ -1,163 +0,0 @@ -From 26f603c457e0af9f5f6a0ddda66e69978c7f43b4 Mon Sep 17 00:00:00 2001 -From: Will Deacon -Date: Thu, 26 Sep 2013 12:36:36 +0100 -Subject: [PATCH] ARM: perf: wire up perf_regs and unwind support for ARM - -This patch hooks in the perf_regs and libunwind code for ARM. - -B2Qt: Backported for 3.8 kernel - -Cc: Jean Pihet -Signed-off-by: Will Deacon ---- - tools/perf/Makefile | 4 +++ - tools/perf/arch/arm/Makefile | 3 ++ - tools/perf/arch/arm/include/perf_regs.h | 54 +++++++++++++++++++++++++++++++++ - tools/perf/arch/arm/util/unwind.c | 48 +++++++++++++++++++++++++++++ - 4 files changed, 109 insertions(+) - create mode 100644 tools/perf/arch/arm/include/perf_regs.h - create mode 100644 tools/perf/arch/arm/util/unwind.c - -diff --git a/tools/perf/Makefile b/tools/perf/Makefile -index fb1b1c4..316c575 100644 ---- a/tools/perf/Makefile -+++ b/tools/perf/Makefile -@@ -84,6 +84,10 @@ ifeq ($(ARCH),x86_64) - NO_PERF_REGS := 0 - LIBUNWIND_LIBS = -lunwind -lunwind-x86_64 - endif -+ifeq ($(ARCH),arm) -+ NO_PERF_REGS := 0 -+ LIBUNWIND_LIBS = -lunwind -lunwind-arm -+endif - - # Treat warnings as errors unless directed not to - ifneq ($(WERROR),0) -diff --git a/tools/perf/arch/arm/Makefile b/tools/perf/arch/arm/Makefile -index 15130b5..fe9b61e 100644 ---- a/tools/perf/arch/arm/Makefile -+++ b/tools/perf/arch/arm/Makefile -@@ -2,3 +2,6 @@ ifndef NO_DWARF - PERF_HAVE_DWARF_REGS := 1 - LIB_OBJS += $(OUTPUT)arch/$(ARCH)/util/dwarf-regs.o - endif -+ifndef NO_LIBUNWIND -+LIB_OBJS += $(OUTPUT)arch/$(ARCH)/util/unwind.o -+endif -diff --git a/tools/perf/arch/arm/include/perf_regs.h b/tools/perf/arch/arm/include/perf_regs.h -new file mode 100644 -index 0000000..2a1cfde ---- /dev/null -+++ b/tools/perf/arch/arm/include/perf_regs.h -@@ -0,0 +1,54 @@ -+#ifndef ARCH_PERF_REGS_H -+#define ARCH_PERF_REGS_H -+ -+#include -+#include "../../util/types.h" -+#include -+ -+#define PERF_REGS_MASK ((1ULL << PERF_REG_ARM_MAX) - 1) -+#define PERF_REG_IP PERF_REG_ARM_PC -+#define PERF_REG_SP PERF_REG_ARM_SP -+ -+static inline const char *perf_reg_name(int id) -+{ -+ switch (id) { -+ case PERF_REG_ARM_R0: -+ return "r0"; -+ case PERF_REG_ARM_R1: -+ return "r1"; -+ case PERF_REG_ARM_R2: -+ return "r2"; -+ case PERF_REG_ARM_R3: -+ return "r3"; -+ case PERF_REG_ARM_R4: -+ return "r4"; -+ case PERF_REG_ARM_R5: -+ return "r5"; -+ case PERF_REG_ARM_R6: -+ return "r6"; -+ case PERF_REG_ARM_R7: -+ return "r7"; -+ case PERF_REG_ARM_R8: -+ return "r8"; -+ case PERF_REG_ARM_R9: -+ return "r9"; -+ case PERF_REG_ARM_R10: -+ return "r10"; -+ case PERF_REG_ARM_FP: -+ return "fp"; -+ case PERF_REG_ARM_IP: -+ return "ip"; -+ case PERF_REG_ARM_SP: -+ return "sp"; -+ case PERF_REG_ARM_LR: -+ return "lr"; -+ case PERF_REG_ARM_PC: -+ return "pc"; -+ default: -+ return NULL; -+ } -+ -+ return NULL; -+} -+ -+#endif /* ARCH_PERF_REGS_H */ -diff --git a/tools/perf/arch/arm/util/unwind.c b/tools/perf/arch/arm/util/unwind.c -new file mode 100644 -index 0000000..da3dc95 ---- /dev/null -+++ b/tools/perf/arch/arm/util/unwind.c -@@ -0,0 +1,48 @@ -+ -+#include -+#include -+#include "perf_regs.h" -+#include "../../util/unwind.h" -+ -+int unwind__arch_reg_id(int regnum) -+{ -+ switch (regnum) { -+ case UNW_ARM_R0: -+ return PERF_REG_ARM_R0; -+ case UNW_ARM_R1: -+ return PERF_REG_ARM_R1; -+ case UNW_ARM_R2: -+ return PERF_REG_ARM_R2; -+ case UNW_ARM_R3: -+ return PERF_REG_ARM_R3; -+ case UNW_ARM_R4: -+ return PERF_REG_ARM_R4; -+ case UNW_ARM_R5: -+ return PERF_REG_ARM_R5; -+ case UNW_ARM_R6: -+ return PERF_REG_ARM_R6; -+ case UNW_ARM_R7: -+ return PERF_REG_ARM_R7; -+ case UNW_ARM_R8: -+ return PERF_REG_ARM_R8; -+ case UNW_ARM_R9: -+ return PERF_REG_ARM_R9; -+ case UNW_ARM_R10: -+ return PERF_REG_ARM_R10; -+ case UNW_ARM_R11: -+ return PERF_REG_ARM_FP; -+ case UNW_ARM_R12: -+ return PERF_REG_ARM_IP; -+ case UNW_ARM_R13: -+ return PERF_REG_ARM_SP; -+ case UNW_ARM_R14: -+ return PERF_REG_ARM_LR; -+ case UNW_ARM_R15: -+ return PERF_REG_ARM_PC; -+ default: -+ pr_err("unwind: invalid reg id %d\n", regnum); -+ return -EINVAL; -+ } -+ -+ return -EINVAL; -+} --- -1.9.1 - diff --git a/meta-beagleboard-extras/recipes/linux/linux-mainline_3.8.bbappend b/meta-beagleboard-extras/recipes/linux/linux-mainline_3.8.bbappend deleted file mode 100644 index a945ea8..0000000 --- a/meta-beagleboard-extras/recipes/linux/linux-mainline_3.8.bbappend +++ /dev/null @@ -1,40 +0,0 @@ -############################################################################## -## -## Copyright (C) 2016 The Qt Company Ltd. -## Contact: http://www.qt.io/licensing/ -## -## This file is part of the Boot to Qt meta layer. -## -## $QT_BEGIN_LICENSE:COMM$ -## -## Commercial License Usage -## Licensees holding valid commercial Qt licenses may use this file in -## accordance with the commercial license agreement provided with the -## Software or, alternatively, in accordance with the terms contained in -## a written agreement between you and The Qt Company. For licensing terms -## and conditions see http://www.qt.io/terms-conditions. For further -## information use the contact form at http://www.qt.io/contact-us. -## -## $QT_END_LICENSE$ -## -############################################################################## - -FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:" -SRC_URI += "\ - file://0001-AM335x-Adding-SGX-DT-node.patch \ - file://0002-AM33XX-Invoke-hwmod-deassert-for-SGX-graphics-device.patch \ - file://0003-video-da8xx-fb-Add-API-to-register-wait-for-vsync-ca.patch \ - file://ARM-perf-add-support-for-perf-registers-API.diff \ - file://ARM-perf-wire-up-perf_regs-and-unwind-support-for-AR.patch \ - " - -INSANE_SKIP_${PN} = "installed-vs-shipped" -KERNEL_IMAGETYPE = "zImage" -B = "${S}" - -do_configure_prepend() { - sed -e '/CONFIG_USB_FUNCTIONFS_ETH=/d' \ - -e '/CONFIG_USB_FUNCTIONFS_RNDIS=/d' \ - -i ${WORKDIR}/defconfig - echo "CONFIG_FHANDLE=y" >> ${WORKDIR}/defconfig -} diff --git a/meta-beagleboard-extras/recipes/u-boot/u-boot-uenv-script.bb b/meta-beagleboard-extras/recipes/u-boot/u-boot-uenv-script.bb deleted file mode 100644 index 5695561..0000000 --- a/meta-beagleboard-extras/recipes/u-boot/u-boot-uenv-script.bb +++ /dev/null @@ -1,48 +0,0 @@ -############################################################################## -## -## Copyright (C) 2016 The Qt Company Ltd. -## Contact: http://www.qt.io/licensing/ -## -## This file is part of the Boot to Qt meta layer. -## -## $QT_BEGIN_LICENSE:COMM$ -## -## Commercial License Usage -## Licensees holding valid commercial Qt licenses may use this file in -## accordance with the commercial license agreement provided with the -## Software or, alternatively, in accordance with the terms contained in -## a written agreement between you and The Qt Company. For licensing terms -## and conditions see http://www.qt.io/terms-conditions. For further -## information use the contact form at http://www.qt.io/contact-us. -## -## $QT_END_LICENSE$ -## -############################################################################## - -DESCRIPTION = "U-Boot script to start up BeagleBone Black" -LICENSE = "CLOSED" -PR = "r0" - -COMPATIBLE_MACHINE = "(beaglebone)" -PV = "20140225" - -SRC_URI = "file://uEnv.txt" - -inherit deploy - -do_deploy () { - install -d ${DEPLOYDIR} - install ${WORKDIR}/uEnv.txt ${DEPLOYDIR}/uEnv-${MACHINE}-${PV}-${PR}.txt - - cd ${DEPLOYDIR} - rm -f uEnv-${MACHINE}.txt - ln -sf uEnv-${MACHINE}-${PV}-${PR}.txt uEnv-${MACHINE}.txt -} - -addtask deploy after do_install before do_build - -do_compile[noexec] = "1" -do_install[noexec] = "1" -do_populate_sysroot[noexec] = "1" - -PACKAGE_ARCH = "${MACHINE_ARCH}" diff --git a/meta-beagleboard-extras/recipes/u-boot/u-boot-uenv-script/uEnv.txt b/meta-beagleboard-extras/recipes/u-boot/u-boot-uenv-script/uEnv.txt deleted file mode 100644 index d41ef60..0000000 --- a/meta-beagleboard-extras/recipes/u-boot/u-boot-uenv-script/uEnv.txt +++ /dev/null @@ -1,6 +0,0 @@ -optargs=consoleblank=0 vt.global_cursor_default=0 quiet -# extra options to support older u-boot (2013) -bootfile=zImage -loadaddr=0x80200000 -loaduimage=load mmc ${bootpart} ${loadaddr} ${bootdir}/${bootfile} -mmcboot=echo Booting from mmc ...; run mmcargs; bootz ${loadaddr} - ${fdtaddr} diff --git a/meta-ti-extras/recipes/linux/linux-ti-staging_3.14.bbappend b/meta-ti-extras/recipes/linux/linux-ti-staging_3.14.bbappend index 49f8f58..ee30872 100644 --- a/meta-ti-extras/recipes/linux/linux-ti-staging_3.14.bbappend +++ b/meta-ti-extras/recipes/linux/linux-ti-staging_3.14.bbappend @@ -25,3 +25,7 @@ SRC_URI += "\ " KERNEL_CONFIG_FRAGMENTS += "${WORKDIR}/usb-serial.cfg" KERNEL_DEVICETREE_b2qt = "am335x-evm.dtb am335x-evmsk.dtb am335x-bone.dtb am335x-boneblack.dtb" + +KERNEL_GIT_URI = "git://github.com/beagleboard/linux" +BRANCH = "3.14" +SRCREV = "b36a2d5ca4e2859c92fac09ccedf4e42d620dda7" diff --git a/meta-ti-extras/recipes/powervr-drivers/omap3-sgx-modules/0001-Rename-omap_dss_device-output-to-src.patch b/meta-ti-extras/recipes/powervr-drivers/omap3-sgx-modules/0001-Rename-omap_dss_device-output-to-src.patch new file mode 100644 index 0000000..6b0b4c7 --- /dev/null +++ b/meta-ti-extras/recipes/powervr-drivers/omap3-sgx-modules/0001-Rename-omap_dss_device-output-to-src.patch @@ -0,0 +1,25 @@ +From 643c4eb9f6e09f3b674990285da7fb1174d6f450 Mon Sep 17 00:00:00 2001 +From: Samuli Piippo +Date: Thu, 17 Mar 2016 11:58:40 +0200 +Subject: [PATCH] Rename omap_dss_device output to src + +--- + services4/3rdparty/dc_omapfb3_linux/omaplfb_linux.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/services4/3rdparty/dc_omapfb3_linux/omaplfb_linux.c b/services4/3rdparty/dc_omapfb3_linux/omaplfb_linux.c +index 17bf181..ebacc51 100644 +--- a/services4/3rdparty/dc_omapfb3_linux/omaplfb_linux.c ++++ b/services4/3rdparty/dc_omapfb3_linux/omaplfb_linux.c +@@ -177,7 +177,7 @@ MODULE_SUPPORTED_DEVICE(DEVNAME); + #if (LINUX_VERSION_CODE < KERNEL_VERSION(3,7,0)) + #define OMAP_DSS_MANAGER(man, dev) struct omap_overlay_manager *man = (dev) != NULL ? (dev)->manager : NULL + #else +-#define OMAP_DSS_MANAGER(man, dev) struct omap_overlay_manager *man = (dev) != NULL ? (dev)->output->manager : NULL ++#define OMAP_DSS_MANAGER(man, dev) struct omap_overlay_manager *man = (dev) != NULL ? (dev)->src->manager : NULL + #endif + + #define WAIT_FOR_VSYNC(man) ((man)->wait_for_vsync) +-- +1.9.1 + diff --git a/meta-ti-extras/recipes/powervr-drivers/omap3-sgx-modules_5.01.01.02.bbappend b/meta-ti-extras/recipes/powervr-drivers/omap3-sgx-modules_5.01.01.02.bbappend new file mode 100644 index 0000000..0fad030 --- /dev/null +++ b/meta-ti-extras/recipes/powervr-drivers/omap3-sgx-modules_5.01.01.02.bbappend @@ -0,0 +1,23 @@ +############################################################################## +## +## Copyright (C) 2016 The Qt Company Ltd. +## Contact: http://www.qt.io/licensing/ +## +## This file is part of the Boot to Qt meta layer. +## +## $QT_BEGIN_LICENSE:COMM$ +## +## Commercial License Usage +## Licensees holding valid commercial Qt licenses may use this file in +## accordance with the commercial license agreement provided with the +## Software or, alternatively, in accordance with the terms contained in +## a written agreement between you and The Qt Company. For licensing terms +## and conditions see http://www.qt.io/terms-conditions. For further +## information use the contact form at http://www.qt.io/contact-us. +## +## $QT_END_LICENSE$ +## +############################################################################## + +FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:" +SRC_URI += "file://0001-Rename-omap_dss_device-output-to-src.patch" diff --git a/meta-ti-extras/recipes/u-boot/u-boot-uenv-script.bb b/meta-ti-extras/recipes/u-boot/u-boot-uenv-script.bb new file mode 100644 index 0000000..5695561 --- /dev/null +++ b/meta-ti-extras/recipes/u-boot/u-boot-uenv-script.bb @@ -0,0 +1,48 @@ +############################################################################## +## +## Copyright (C) 2016 The Qt Company Ltd. +## Contact: http://www.qt.io/licensing/ +## +## This file is part of the Boot to Qt meta layer. +## +## $QT_BEGIN_LICENSE:COMM$ +## +## Commercial License Usage +## Licensees holding valid commercial Qt licenses may use this file in +## accordance with the commercial license agreement provided with the +## Software or, alternatively, in accordance with the terms contained in +## a written agreement between you and The Qt Company. For licensing terms +## and conditions see http://www.qt.io/terms-conditions. For further +## information use the contact form at http://www.qt.io/contact-us. +## +## $QT_END_LICENSE$ +## +############################################################################## + +DESCRIPTION = "U-Boot script to start up BeagleBone Black" +LICENSE = "CLOSED" +PR = "r0" + +COMPATIBLE_MACHINE = "(beaglebone)" +PV = "20140225" + +SRC_URI = "file://uEnv.txt" + +inherit deploy + +do_deploy () { + install -d ${DEPLOYDIR} + install ${WORKDIR}/uEnv.txt ${DEPLOYDIR}/uEnv-${MACHINE}-${PV}-${PR}.txt + + cd ${DEPLOYDIR} + rm -f uEnv-${MACHINE}.txt + ln -sf uEnv-${MACHINE}-${PV}-${PR}.txt uEnv-${MACHINE}.txt +} + +addtask deploy after do_install before do_build + +do_compile[noexec] = "1" +do_install[noexec] = "1" +do_populate_sysroot[noexec] = "1" + +PACKAGE_ARCH = "${MACHINE_ARCH}" diff --git a/meta-ti-extras/recipes/u-boot/u-boot-uenv-script/uEnv.txt b/meta-ti-extras/recipes/u-boot/u-boot-uenv-script/uEnv.txt new file mode 100644 index 0000000..d41ef60 --- /dev/null +++ b/meta-ti-extras/recipes/u-boot/u-boot-uenv-script/uEnv.txt @@ -0,0 +1,6 @@ +optargs=consoleblank=0 vt.global_cursor_default=0 quiet +# extra options to support older u-boot (2013) +bootfile=zImage +loadaddr=0x80200000 +loaduimage=load mmc ${bootpart} ${loadaddr} ${bootdir}/${bootfile} +mmcboot=echo Booting from mmc ...; run mmcargs; bootz ${loadaddr} - ${fdtaddr} diff --git a/scripts/setup-environment.sh b/scripts/setup-environment.sh index 9e8c4d1..7f0f506 100755 --- a/scripts/setup-environment.sh +++ b/scripts/setup-environment.sh @@ -60,12 +60,9 @@ if [ ! -f ${PWD}/${BUILDDIRECTORY}/conf/bblayers.conf ]; then tibidabo) LAYERSCONF="bblayers.conf.tibidabo.sample" ;; - beagleboard|am335x-evm) + beaglebone|beagleboard|am335x-evm) LAYERSCONF="bblayers.conf.ti.sample" ;; - beaglebone) - LAYERSCONF="bblayers.conf.bbb.sample" - ;; raspberrypi|raspberrypi2|raspberrypi3) LAYERSCONF="bblayers.conf.rpi.sample" ;; -- cgit v1.2.3-54-g00ecf