From 0ed04bb1559fd9a054c0304644502146c0a3a70e Mon Sep 17 00:00:00 2001 From: Max Krummenacher Date: Thu, 28 Jan 2021 12:29:49 +0100 Subject: kernel-module-imx-gpu-viv: update to 6.4.3.p1.0 NXP release imx_5.4.70_2.3.0. Related-to: ELB-3327 Signed-off-by: Max Krummenacher --- .../kernel-module-imx-gpu-viv/Add-makefile.patch | 326 +++++++++++++++++++++ .../kernel-module-imx-gpu-viv_6.4.3.p1.0.bb | 26 ++ 2 files changed, 352 insertions(+) create mode 100644 backports/recipes-kernel/kernel-modules/kernel-module-imx-gpu-viv/Add-makefile.patch create mode 100644 backports/recipes-kernel/kernel-modules/kernel-module-imx-gpu-viv_6.4.3.p1.0.bb (limited to 'backports') diff --git a/backports/recipes-kernel/kernel-modules/kernel-module-imx-gpu-viv/Add-makefile.patch b/backports/recipes-kernel/kernel-modules/kernel-module-imx-gpu-viv/Add-makefile.patch new file mode 100644 index 0000000..63f408c --- /dev/null +++ b/backports/recipes-kernel/kernel-modules/kernel-module-imx-gpu-viv/Add-makefile.patch @@ -0,0 +1,326 @@ +Index: git/Makefile +=================================================================== +--- /dev/null 1970-01-01 00:00:00.000000000 +0000 ++++ git/Makefile 2017-06-27 12:07:11.931698672 -0500 +@@ -0,0 +1,17 @@ ++obj-m := galcore.o ++ ++SRC := $(shell pwd) ++ ++all: ++ $(MAKE) -C $(KERNEL_SRC) M=$(SRC)/src AQROOT=${PWD}/src ++ cp $(SRC)/src/Module.symvers $(PWD) ++ cp $(SRC)/src/modules.order $(PWD) ++ ++modules_install: ++ $(MAKE) -C $(KERNEL_SRC) M=$(SRC)/src modules_install ++ ++clean: ++ find . -name '*.o' -delete ++ rm -f *.o *~ core .depend .*.cmd *.ko *.mod.c ++ rm -f Module.markers Module.symvers modules.order ++ rm -rf .tmp_versions Modules.symvers +Index: git/src/hal/kernel/arch/makefile.linux +=================================================================== +--- /dev/null 1970-01-01 00:00:00.000000000 +0000 ++++ git/src/hal/kernel/arch/makefile.linux 2017-06-27 11:44:06.004826232 -0500 +@@ -0,0 +1,91 @@ ++############################################################################## ++# ++# The MIT License (MIT) ++# ++# Copyright (c) 2014 - 2017 Vivante Corporation ++# ++# Permission is hereby granted, free of charge, to any person obtaining a ++# copy of this software and associated documentation files (the "Software"), ++# to deal in the Software without restriction, including without limitation ++# the rights to use, copy, modify, merge, publish, distribute, sublicense, ++# and/or sell copies of the Software, and to permit persons to whom the ++# Software is furnished to do so, subject to the following conditions: ++# ++# The above copyright notice and this permission notice shall be included in ++# all copies or substantial portions of the Software. ++# ++# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR ++# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, ++# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE ++# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER ++# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING ++# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER ++# DEALINGS IN THE SOFTWARE. ++# ++############################################################################## ++# ++# The GPL License (GPL) ++# ++# Copyright (C) 2014 - 2017 Vivante Corporation ++# ++# 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; either version 2 ++# of the License, or (at your option) any later version. ++# ++# This program is distributed in the hope that it will be useful, ++# but WITHOUT ANY WARRANTY; without even the implied warranty of ++# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++# GNU General Public License for more details. ++# ++# You should have received a copy of the GNU General Public License ++# along with this program; if not, write to the Free Software Foundation, ++# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. ++# ++############################################################################## ++# ++# Note: This software is released under dual MIT and GPL licenses. A ++# recipient may use this file under the terms of either the MIT license or ++# GPL License. If you wish to use only one license not the other, you can ++# indicate your decision by deleting one of the above license notices in your ++# version of this file. ++# ++############################################################################## ++ ++ ++# ++# Linux build file for architecture dependent kernel HAL layer. ++# ++ ++################################################################################ ++# Include common definitions. ++ ++include $(AQROOT)/makefile.linux.def ++ ++################################################################################ ++# Define a shortcut for the main target. ++ ++STATIC = 1 ++TARGET_NAME = libhalarchkernel.a ++ ++################################################################################ ++# Supply additional include directories. ++ ++INCLUDE += -I$(AQROOT)/hal/kernel/inc ++INCLUDE += -I$(AQROOT)/hal/kernel/inc ++INCLUDE += -I$(AQROOT)/hal/kernel ++INCLUDE += -I$(AQROOT)/hal/kernel/arch ++ifeq ($(VIVANTE_ENABLE_VG),1) ++INCLUDE += -I$(AQROOT)/hal/kernel/archvg ++endif ++ ++CFLAGS += $(INCLUDE) -Werror -ansi ++ ++ ++################################################################################ ++# Describe object files. ++ ++OBJECTS = $(OBJ_DIR)/gc_hal_kernel_context.o \ ++ $(OBJ_DIR)/gc_hal_kernel_hardware.o ++ ++include $(AQROOT)/common.target +Index: git/src/hal/kernel/archvg/makefile.linux +=================================================================== +--- /dev/null 1970-01-01 00:00:00.000000000 +0000 ++++ git/src/hal/kernel/archvg/makefile.linux 2017-06-27 11:44:06.004826232 -0500 +@@ -0,0 +1,91 @@ ++############################################################################## ++# ++# The MIT License (MIT) ++# ++# Copyright (c) 2014 - 2017 Vivante Corporation ++# ++# Permission is hereby granted, free of charge, to any person obtaining a ++# copy of this software and associated documentation files (the "Software"), ++# to deal in the Software without restriction, including without limitation ++# the rights to use, copy, modify, merge, publish, distribute, sublicense, ++# and/or sell copies of the Software, and to permit persons to whom the ++# Software is furnished to do so, subject to the following conditions: ++# ++# The above copyright notice and this permission notice shall be included in ++# all copies or substantial portions of the Software. ++# ++# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR ++# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, ++# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE ++# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER ++# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING ++# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER ++# DEALINGS IN THE SOFTWARE. ++# ++############################################################################## ++# ++# The GPL License (GPL) ++# ++# Copyright (C) 2014 - 2017 Vivante Corporation ++# ++# 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; either version 2 ++# of the License, or (at your option) any later version. ++# ++# This program is distributed in the hope that it will be useful, ++# but WITHOUT ANY WARRANTY; without even the implied warranty of ++# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++# GNU General Public License for more details. ++# ++# You should have received a copy of the GNU General Public License ++# along with this program; if not, write to the Free Software Foundation, ++# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. ++# ++############################################################################## ++# ++# Note: This software is released under dual MIT and GPL licenses. A ++# recipient may use this file under the terms of either the MIT license or ++# GPL License. If you wish to use only one license not the other, you can ++# indicate your decision by deleting one of the above license notices in your ++# version of this file. ++# ++############################################################################## ++ ++ ++# ++# Linux build file for architecture dependent kernel HAL layer. ++# ++ ++################################################################################ ++# Include common definitions. ++ ++include $(AQROOT)/makefile.linux.def ++ ++################################################################################ ++# Define a shortcut for the main target. ++ ++STATIC = 1 ++ ++TARGET_NAME = libhalarchkernelvg.a ++ ++################################################################################ ++# Supply additional include directories. ++ ++INCLUDE += -I$(AQROOT)/hal/inc ++INCLUDE += -I$(AQROOT)/hal/user ++INCLUDE += -I$(AQROOT)/hal/kernel ++INCLUDE += -I$(AQROOT)/hal/kernel/arch ++ifeq ($(VIVANTE_ENABLE_VG), 1) ++INCLUDE += -I$(AQROOT)/hal/kernel/archvg ++endif ++ ++CFLAGS += $(INCLUDE) -Werror -ansi ++ ++################################################################################ ++# Describe object files. ++ ++OBJECTS = $(OBJ_DIR)/gc_hal_kernel_hardware_vg.o \ ++ $(OBJ_DIR)/gc_hal_kernel_hardware_command_vg.o ++ ++include $(AQROOT)/common.target +Index: git/src/hal/kernel/makefile.linux +=================================================================== +--- /dev/null 1970-01-01 00:00:00.000000000 +0000 ++++ git/src/hal/kernel/makefile.linux 2017-06-27 11:44:06.004826232 -0500 +@@ -0,0 +1,107 @@ ++############################################################################## ++# ++# The MIT License (MIT) ++# ++# Copyright (c) 2014 - 2017 Vivante Corporation ++# ++# Permission is hereby granted, free of charge, to any person obtaining a ++# copy of this software and associated documentation files (the "Software"), ++# to deal in the Software without restriction, including without limitation ++# the rights to use, copy, modify, merge, publish, distribute, sublicense, ++# and/or sell copies of the Software, and to permit persons to whom the ++# Software is furnished to do so, subject to the following conditions: ++# ++# The above copyright notice and this permission notice shall be included in ++# all copies or substantial portions of the Software. ++# ++# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR ++# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, ++# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE ++# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER ++# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING ++# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER ++# DEALINGS IN THE SOFTWARE. ++# ++############################################################################## ++# ++# The GPL License (GPL) ++# ++# Copyright (C) 2014 - 2017 Vivante Corporation ++# ++# 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; either version 2 ++# of the License, or (at your option) any later version. ++# ++# This program is distributed in the hope that it will be useful, ++# but WITHOUT ANY WARRANTY; without even the implied warranty of ++# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++# GNU General Public License for more details. ++# ++# You should have received a copy of the GNU General Public License ++# along with this program; if not, write to the Free Software Foundation, ++# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. ++# ++############################################################################## ++# ++# Note: This software is released under dual MIT and GPL licenses. A ++# recipient may use this file under the terms of either the MIT license or ++# GPL License. If you wish to use only one license not the other, you can ++# indicate your decision by deleting one of the above license notices in your ++# version of this file. ++# ++############################################################################## ++ ++ ++# ++# Linux build file for architecture dependent kernel HAL layer. ++# ++# ++ ++ ++################################################################################ ++# Include common definitions. ++ ++include $(AQROOT)/makefile.linux.def ++ ++################################################################################ ++# Define a shortcut for the main target. ++ ++STATIC = 1 ++TARGET_NAME = libhalkernel.a ++ ++################################################################################ ++# Supply additional include directories. ++ ++INCLUDE += -I$(AQROOT)/hal/kernel/inc ++INCLUDE += -I$(AQROOT)/hal/kernel/inc ++INCLUDE += -I$(AQROOT)/hal/kernel/arch ++INCLUDE += -I$(AQROOT)/hal/kernel ++ifeq ($(VIVANTE_ENABLE_VG),1) ++INCLUDE += -I$(AQROOT)/hal/kernel/archvg ++endif ++INCLUDE += -I$(AQROOT)/hal/os/linux/kernel ++CFLAGS += $(INCLUDE) -Werror -ansi ++ ++ ++################################################################################ ++# Describe object files. ++ ++OBJECTS = $(OBJ_DIR)/gc_hal_kernel_command.o \ ++ $(OBJ_DIR)/gc_hal_kernel_db.o \ ++ $(OBJ_DIR)/gc_hal_kernel_debug.o \ ++ $(OBJ_DIR)/gc_hal_kernel_event.o \ ++ $(OBJ_DIR)/gc_hal_kernel_heap.o \ ++ $(OBJ_DIR)/gc_hal_kernel.o \ ++ $(OBJ_DIR)/gc_hal_kernel_mmu.o \ ++ $(OBJ_DIR)/gc_hal_kernel_video_memory.o ++ ++ifeq ($(VIVANTE_ENABLE_VG),1) ++OBJECTS += \ ++ $(OBJ_DIR)/gc_hal_kernel_command_vg.o \ ++ $(OBJ_DIR)/gc_hal_kernel_interrupt_vg.o \ ++ $(OBJ_DIR)/gc_hal_kernel_mmu_vg.o \ ++ $(OBJ_DIR)/gc_hal_kernel_vg.o ++endif ++ ++include $(AQROOT)/common.target diff --git a/backports/recipes-kernel/kernel-modules/kernel-module-imx-gpu-viv_6.4.3.p1.0.bb b/backports/recipes-kernel/kernel-modules/kernel-module-imx-gpu-viv_6.4.3.p1.0.bb new file mode 100644 index 0000000..98cfb2b --- /dev/null +++ b/backports/recipes-kernel/kernel-modules/kernel-module-imx-gpu-viv_6.4.3.p1.0.bb @@ -0,0 +1,26 @@ +# Copyright (C) 2015-2016 Freescale Semiconductor +# Copyright (C) 2017-2020 NXP + +SUMMARY = "Kernel loadable module for Vivante GPU" +DESCRIPTION = "Builds the Vivante GPU kernel driver as a loadable kernel module, \ +allowing flexibility to use a newer graphics release with an older kernel." +LICENSE = "GPLv2" +LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/GPL-2.0;md5=801f80980d171dd6425610833a22dbe6" + +SRCBRANCH = "imx_5.4.70_2.3.0" +LOCALVERSION = "-${SRCBRANCH}" +KERNEL_SRC ?= "git://source.codeaurora.org/external/imx/linux-imx.git;protocol=https" +SRC_URI = " \ + ${KERNEL_SRC};branch=${SRCBRANCH};subpath=drivers/mxc/gpu-viv;destsuffix=git/src \ + file://Add-makefile.patch \ +" +SRCREV = "13b3c469663da0c79d385ce15887f6b5805f060d" + +S = "${WORKDIR}/git" + +inherit module + +EXTRA_OEMAKE += "CONFIG_MXC_GPU_VIV=m" + +KERNEL_MODULE_AUTOLOAD = "galcore" +COMPATIBLE_MACHINE = "(imx)" -- cgit v1.2.3