[meta-freescale] [meta-fsl-arm PATCH v2 2/3] kernel-module-imx-gpu-viv: Fork driver for FSL Community

Otavio Salvador otavio at ossystems.com.br
Wed Oct 7 11:50:58 PDT 2015


The driver source code provided by Freescale need fixes to properly
work. This forks the code to a more community driven development,
allowing for a faster development of the driver and easier integration
of fixes.

To allow visual identification, when checking for bug reports, the
'+fslc' suffix is added to the module.

Signed-off-by: Otavio Salvador <otavio at ossystems.com.br>
---

Changes in v2:
- New patch

 .../kernel-module-imx-gpu-viv/updatemakefile.patch | 158 ---------------------
 .../work-around-include-file-rename.patch          |  30 ----
 .../kernel-module-imx-gpu-viv_5.0.11.p7.1+fslc.bb  |  17 +++
 .../kernel-module-imx-gpu-viv_5.0.11.p7.1.bb       |  23 ---
 4 files changed, 17 insertions(+), 211 deletions(-)
 delete mode 100644 recipes-kernel/kernel-modules/kernel-module-imx-gpu-viv/updatemakefile.patch
 delete mode 100644 recipes-kernel/kernel-modules/kernel-module-imx-gpu-viv/work-around-include-file-rename.patch
 create mode 100644 recipes-kernel/kernel-modules/kernel-module-imx-gpu-viv_5.0.11.p7.1+fslc.bb
 delete mode 100644 recipes-kernel/kernel-modules/kernel-module-imx-gpu-viv_5.0.11.p7.1.bb

diff --git a/recipes-kernel/kernel-modules/kernel-module-imx-gpu-viv/updatemakefile.patch b/recipes-kernel/kernel-modules/kernel-module-imx-gpu-viv/updatemakefile.patch
deleted file mode 100644
index 2ca10d4..0000000
--- a/recipes-kernel/kernel-modules/kernel-module-imx-gpu-viv/updatemakefile.patch
+++ /dev/null
@@ -1,158 +0,0 @@
-Upstream-Status: Pending
-
-Signed-off-by: Neena Busireddy <neena.busireddy at freescale.com>
-
-diff -Naur kernel-module-imx-gpu-viv-5.0.11.p7.1_org/kernel-module-imx-gpu-viv-src/Makefile kernel-module-imx-gpu-viv-5.0.11.p7.1/kernel-module-imx-gpu-viv-src/Makefile
---- kernel-module-imx-gpu-viv-5.0.11.p7.1_org/kernel-module-imx-gpu-viv-src/Makefile	2015-09-22 10:46:18.280385659 -0500
-+++ kernel-module-imx-gpu-viv-5.0.11.p7.1/kernel-module-imx-gpu-viv-src/Makefile	2015-09-22 10:46:51.000000000 -0500
-@@ -1,20 +1,54 @@
- ##############################################################################
- #
--#    Copyright (C) 2005 - 2014 by Vivante Corp.
-+#    The MIT License (MIT)
- #
--#    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.
-+#    Copyright (c) 2014 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  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
-+#    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., 675 Mass Ave, Cambridge, MA 02139, USA.
-+#    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.
- #
- ##############################################################################
- 
-@@ -23,16 +57,15 @@
- # Linux build file for kernel HAL driver.
- #
- 
--AQROOT ?= .
--
- include $(AQROOT)/config
- 
--KERNEL_DIR ?= $(KERNEL_PATH)
-+KERNEL_DIR ?= $(TOOL_DIR)/kernel
- 
- OS_KERNEL_DIR   := hal/os/linux/kernel
- ARCH_KERNEL_DIR := hal/kernel/arch
- ARCH_VG_KERNEL_DIR := hal/kernel/archvg
- HAL_KERNEL_DIR  := hal/kernel
-+HOST := $(shell hostname)
- 
- # Check and include platform config.
- ifneq ($(PLATFORM),)
-@@ -63,6 +96,14 @@
-         $(OS_KERNEL_DIR)/gc_hal_kernel_debugfs.o \
-         $(OS_KERNEL_DIR)/gc_hal_kernel_allocator.o \
- 
-+ifneq ($(CONFIG_DMA_SHARED_BUFFER),)
-+OBJS += $(OS_KERNEL_DIR)/allocator/default/gc_hal_kernel_allocator_dmabuf.o
-+endif
-+
-+ifneq ($(CONFIG_IOMMU_SUPPORT),)
-+OBJS += $(OS_KERNEL_DIR)/gc_hal_kernel_iommu.o
-+endif
-+
- ifneq ($(PLATFORM),)
- OBJS += $(OS_KERNEL_DIR)/gc_hal_kernel_probe.o
- OBJS += $(OS_KERNEL_DIR)/platform/$(PLATFORM).o
-@@ -83,6 +124,10 @@
- OBJS += $(ARCH_KERNEL_DIR)/gc_hal_kernel_context.o \
-         $(ARCH_KERNEL_DIR)/gc_hal_kernel_hardware.o
- 
-+ifeq ($(VIVANTE_ENABLE_3D), 1)
-+OBJS += $(ARCH_KERNEL_DIR)/gc_hal_kernel_recorder.o
-+endif
-+
- ifeq ($(VIVANTE_ENABLE_VG), 1)
- OBJS +=\
-           $(HAL_KERNEL_DIR)/gc_hal_kernel_vg.o\
-@@ -99,10 +144,6 @@
- OBJS += $(OS_KERNEL_DIR)/gc_hal_kernel_sync.o
- endif
- 
--ifneq ($(CONFIG_ANDROID),)
--EXTRA_CFLAGS += -DANDROID
--endif
--
- ifeq ($(SECURITY), 1)
- OBJS += $(OS_KERNEL_DIR)/gc_hal_kernel_security_channel.o \
-         $(HAL_KERNEL_DIR)/gc_hal_kernel_security.o
-@@ -118,15 +159,16 @@
- 
- # Define targets.
- all:
--	@make V=$(V) ARCH=$(ARCH_TYPE) -C $(KERNEL_DIR) SUBDIRS=`pwd` modules
-+	@$(MAKE) V=$(V) ARCH=$(ARCH_TYPE) -C $(KERNEL_DIR) SUBDIRS=`pwd` modules
- 
- clean:
- 	@rm -rf $(OBJS)
--	@rm -rf modules.order Module.symvers
-+	@rm -rf modules.order Module.symvers .tmp_versions
- 	@find $(AQROOT) -name ".gc_*.cmd" | xargs rm -f
- 
- install: all
- 	@mkdir -p $(SDK_DIR)/drivers
-+	@cp $(MODULE_NAME).ko $(SDK_DIR)/drivers
- 
- else
- 
-@@ -261,8 +303,10 @@
- EXTRA_CFLAGS += -I$(AQROOT)/hal/kernel/archvg
- endif
- 
--obj-m += galcore.o
-+EXTRA_CFLAGS += -DHOST=\"$(HOST)\"
-+
-+obj-m = $(MODULE_NAME).o
- 
--galcore-objs  := $(OBJS)
-+$(MODULE_NAME)-objs  = $(OBJS)
- 
- endif
diff --git a/recipes-kernel/kernel-modules/kernel-module-imx-gpu-viv/work-around-include-file-rename.patch b/recipes-kernel/kernel-modules/kernel-module-imx-gpu-viv/work-around-include-file-rename.patch
deleted file mode 100644
index 5b92392..0000000
--- a/recipes-kernel/kernel-modules/kernel-module-imx-gpu-viv/work-around-include-file-rename.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From 3ec514cf260b82f4701b6fed521ce470d9faf8c9 Mon Sep 17 00:00:00 2001
-From: Gary Thomas <gary at mlbassoc.com>
-Date: Tue, 6 Oct 2015 09:32:22 -0600
-Subject: [PATCH] kernel-module-imx-gpu-viv: Better work-around for change in name of busfreq-imx.h
-
-The renaming of include/linux/busfreq-imx6.h to include/linux/busfreq-imx.h
-is not consistent over the many kernel versions currently being built.  This
-changeset works around this inconsistency by creating a local symbolic link
-to whatever file is actually present in the kernel sources.
-
-Signed-off-by: Gary Thomas <gary at mlbassoc.com>
-Upstream-status: Innapropriate [requires OE recipe support]
-----
-Index: kernel-module-imx-gpu-viv-5.0.11.p7.1/kernel-module-imx-gpu-viv-src/hal/os/linux/kernel/platform/freescale/gc_hal_kernel_platform_imx6q14.c
-===================================================================
---- kernel-module-imx-gpu-viv-5.0.11.p7.1.orig/kernel-module-imx-gpu-viv-src/hal/os/linux/kernel/platform/freescale/gc_hal_kernel_platform_imx6q14.c
-+++ kernel-module-imx-gpu-viv-5.0.11.p7.1/kernel-module-imx-gpu-viv-src/hal/os/linux/kernel/platform/freescale/gc_hal_kernel_platform_imx6q14.c
-@@ -74,11 +74,8 @@
- #include <linux/pm_runtime.h>
- #if LINUX_VERSION_CODE < KERNEL_VERSION(3, 10, 0)
- #include <mach/busfreq.h>
--#elif LINUX_VERSION_CODE < KERNEL_VERSION(3, 14, 0)
--#include <linux/busfreq-imx6.h>
--#include <linux/reset.h>
- #else
--#include <linux/busfreq-imx.h>
-+#include "busfreq-imx.h"
- #include <linux/reset.h>
- #endif
- #endif
diff --git a/recipes-kernel/kernel-modules/kernel-module-imx-gpu-viv_5.0.11.p7.1+fslc.bb b/recipes-kernel/kernel-modules/kernel-module-imx-gpu-viv_5.0.11.p7.1+fslc.bb
new file mode 100644
index 0000000..eaaa383
--- /dev/null
+++ b/recipes-kernel/kernel-modules/kernel-module-imx-gpu-viv_5.0.11.p7.1+fslc.bb
@@ -0,0 +1,17 @@
+# Copyright (C) 2015 O.S. Systems Software LTDA.
+# Copyright (C) 2015 Freescale Semiconductor
+
+SUMMARY = "Kernel loadable module for Vivante GPU"
+DESCRIPTION = "Provides flexibility to switch graphics between different kernels in future \
+releases. This package uses same source code as GPU kernel driver source."
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=12f884d2ae1ff87c09e5b7ccc2c4ca7e"
+
+PV .= "+git${SRCPV}"
+
+inherit module
+
+SRCREV = "eeeb23c0fb1cee01318088d417025263479c44ac"
+SRC_URI = "git://github.com/Freescale/kernel-module-imx-gpu-viv.git;protocol=https"
+
+S = "${WORKDIR}/git"
diff --git a/recipes-kernel/kernel-modules/kernel-module-imx-gpu-viv_5.0.11.p7.1.bb b/recipes-kernel/kernel-modules/kernel-module-imx-gpu-viv_5.0.11.p7.1.bb
deleted file mode 100644
index 7e8414b..0000000
--- a/recipes-kernel/kernel-modules/kernel-module-imx-gpu-viv_5.0.11.p7.1.bb
+++ /dev/null
@@ -1,23 +0,0 @@
-# Copyright (C) 2015 Freescale Semiconductor
-
-SUMMARY = "Kernel loadable module for Vivante GPU"
-DESCRIPTION = "Provides flexibility to switch graphics between different kernels in future \
-releases. This package uses same source code as GPU kernel driver source."
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=12f884d2ae1ff87c09e5b7ccc2c4ca7e"
-
-inherit module
-
-SRC_URI = "${FSL_MIRROR}/${PN}-${PV}.tar.gz \
-           file://updatemakefile.patch \
-	   file://work-around-include-file-rename.patch \
-"
-
-SRC_URI[md5sum] = "a251a94390986371f75b338ad938e46f"
-SRC_URI[sha256sum] = "9aaef0a62bc2be69dc568228192b060c54970b5c700fee602d83a4d13e04a9b3"
-
-# Work around inconsistent naming of <linux/busfreq-imx.h>
-do_compile_prepend () {
-    ln -sf ${STAGING_KERNEL_DIR}/include/linux/busfreq-imx*.h kernel-module-imx-gpu-viv-src/hal/os/linux/kernel/platform/freescale/busfreq-imx.h
-}
-
-- 
2.6.1



More information about the meta-freescale mailing list