summaryrefslogtreecommitdiff
path: root/sgx/eurasiacon/build/linux2/omap5430_linux/Makefile
diff options
context:
space:
mode:
authorRicardo Salveti de Araujo <ricardo.salveti@linaro.org>2012-08-19 20:56:42 -0300
committerRicardo Salveti de Araujo <ricardo.salveti@linaro.org>2012-08-19 20:56:42 -0300
commite99bbab50842170c4d9854ebf0a46796493df0a0 (patch)
treee61e9884e437cfef6d5eec1ef73ce05da2c56d62 /sgx/eurasiacon/build/linux2/omap5430_linux/Makefile
parent7fb51412b963536bb6d07648a4fc4b5e11485ae9 (diff)
Imported Upstream version 1.9.0.5.1.1 (ARMHF)upstream/1.9.0.5.1.1upstream
Signed-off-by: Ricardo Salveti de Araujo <ricardo.salveti@linaro.org>
Diffstat (limited to 'sgx/eurasiacon/build/linux2/omap5430_linux/Makefile')
-rwxr-xr-xsgx/eurasiacon/build/linux2/omap5430_linux/Makefile219
1 files changed, 219 insertions, 0 deletions
diff --git a/sgx/eurasiacon/build/linux2/omap5430_linux/Makefile b/sgx/eurasiacon/build/linux2/omap5430_linux/Makefile
new file mode 100755
index 0000000..206666a
--- /dev/null
+++ b/sgx/eurasiacon/build/linux2/omap5430_linux/Makefile
@@ -0,0 +1,219 @@
+########################################################################### ###
+#@Title Root makefile for OMAP5430 Linux. Builds everything else.
+#@Copyright Copyright (c) Imagination Technologies Ltd. All Rights Reserved
+#@License Dual MIT/GPLv2
+#
+# The contents of this file are subject to the MIT license as set out below.
+#
+# 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.
+#
+# Alternatively, the contents of this file may be used under the terms of
+# the GNU General Public License Version 2 ("GPL") in which case the provisions
+# of GPL are applicable instead of those above.
+#
+# If you wish to allow use of your version of this file only under the terms of
+# GPL, and not to allow others to use your version of this file under the terms
+# of the MIT license, indicate your decision by deleting the provisions above
+# and replace them with the notice and other provisions required by GPL as set
+# out in the file called "GPL-COPYING" included in this distribution. If you do
+# not delete the provisions above, a recipient may use your version of this file
+# under the terms of either the MIT license or GPL.
+#
+# This License is also included in this distribution in the file called
+# "MIT-COPYING".
+#
+# EXCEPT AS OTHERWISE STATED IN A NEGOTIATED AGREEMENT: (A) 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; AND (B) 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.
+#
+### ###########################################################################
+
+PVR_SYSTEM := omap5
+
+KERNEL_COMPONENTS := srvkm
+
+# Confirm kernel version with KERNELDIR if supplied, otherwise assume
+# a 2.6.35+ kernel.
+ifneq ($(KERNELDIR),)
+include ../kernel_version.mk
+OMAP_KERNEL_AT_LEAST_2_6_35 := $(shell test $(KERNEL_VERSION) -ge 3 || \
+ test $(KERNEL_VERSION) -ge 2 -a \
+ $(KERNEL_PATCHLEVEL) -ge 6 -a \
+ $(KERNEL_SUBLEVEL) -ge 35 && echo 1 || echo 0)
+else
+OMAP_KERNEL_AT_LEAST_2_6_35 := 1
+endif
+
+include ../common/xorg_test.mk
+
+ifeq ($(want_xorg),1)
+SUPPORT_DRI_DRM := 1
+SUPPORT_DRI_DRM_EXTERNAL := 1
+SUPPORT_BC_EXAMPLE ?= 0
+else
+SUPPORT_BC_EXAMPLE ?= 1
+endif
+
+# Only enable active power management if passive power management is
+# enabled, as indicated by LDM_PLATFORM being set to 1. On OMAP,
+# the system can suspend in the case where active power management is
+# enabled in the SGX driver, but passive power management isn't. As
+# passive power management isn't enabled, the driver won't see the
+# system suspend/resume events, and so won't take appropriate action.
+LDM_PLATFORM ?= 1
+
+ifeq ($(LDM_PLATFORM),1)
+SUPPORT_LINUX_USING_WORKQUEUES := 1
+#DISPLAY_CONTROLLER_COMPONENT += dc_omapdrm_linux
+#DISPLAY_CONTROLLER := omaplfb
+else
+SUPPORT_LINUX_USING_SHARED_WORKQUEUES := 1
+OMAP_NON_FLIP_DISPLAY := 1
+DISPLAY_CONTROLLER_COMPONENT += linux_framebuffer
+DISPLAY_CONTROLLER := pvrlfb
+endif
+
+# When flipping is enabled, the Framebuffer API will be used to
+# present the frames to the display in the 3PDD
+FLIP_TECHNIQUE_FRAMEBUFFER := 1
+
+OPTIM := -Os
+
+SYS_CFLAGS := -march=armv7-a
+
+ifneq ($(CROSS_COMPILE),)
+SYS_CFLAGS += -mtls-dialect=arm
+endif
+
+SUPPORT_OMAP5430_NEON ?= 1
+
+ifeq ($(SUPPORT_OMAP5430_NEON),1)
+SYS_CFLAGS += -ftree-vectorize -mfpu=neon -mfloat-abi=hard
+endif
+
+PVR_NO_FULL_CACHE_OPS := 1
+
+LIBGCC := $(shell $(CROSS_COMPILE)gcc -print-libgcc-file-name)
+
+SGXCORE := 544
+SGX_CORE_REV := 105
+
+SGX_DYNAMIC_TIMING_INFO := 1
+SYS_CUSTOM_POWERLOCK_WRAP := 1
+
+ifeq ($(OMAP_KERNEL_AT_LEAST_2_6_35),1)
+ifeq ($(LDM_PLATFORM),1)
+PVR_LDM_PLATFORM_PRE_REGISTERED := 1
+ifeq ($(call kernel-version-at-least,2,6,35,7),true)
+# Not all variants of the OMAP5 kernel have a DRM based framebuffer.
+# Note that a non-X.Org version of the driver does not have to be built
+# with DRM support if the kernel has a DRM based framebuffer.
+PVR_OMAPLFB_DRM_FB ?= 1
+ifeq ($(PVR_OMAPLFB_DRM_FB),1)
+PVR_LDM_PLATFORM_PRE_REGISTERED_DEV := "\"pvrsrvkm_pvr\""
+# There is already a "pvrsrvkm" driver (part of the DRM framebuffer code),
+# so use the pre-registered device name instead.
+PVR_LDM_DRIVER_REGISTRATION_NAME := "\"pvrsrvkm_pvr"\"
+# The DRM library will not load the Services module on behalf of the X Server,
+# as a DRM module has already been loaded (the DRM based framebuffer), so
+# load the Services module before starting the X Server.
+XORG_EXPLICIT_PVR_SERVICES_LOAD := 1
+else
+PVR_LDM_PLATFORM_PRE_REGISTERED_DEV := "\"pvrsrvkm\""
+endif
+endif
+endif
+endif
+
+BUILD_OPENCL ?= 0
+ifneq ($(BUILD_OPENCL),1)
+EXCLUDED_APIS += opencl
+endif
+
+ifeq ($(want_xorg),1)
+
+ifeq ($(call kernel-version-at-least,2,6,35),true)
+PVR_DRI_DRM_PLATFORM_DEV := 1
+else
+PVR_DRI_DRM_NOT_PCI := 1
+endif
+
+XORG_PREFIX := /usr
+XORG_TOOLCHAIN := extern
+# Note: Xorg N/A for OMAP5.
+#XORG_PVR_CONF := omap4
+#XORG_PVR_VIDEO := omap4
+XF86_VIDEO ?= ti-pvr_video
+
+OPK_DEFAULT := libpvrPVR2D_DRIWSEGL.so
+OPK_FALLBACK := libpvrPVR2D_DRIWSEGL.so
+
+ifneq ($(OMAP_NON_FLIP_DISPLAY),1)
+XORG_PVR_VIDEO ?= $(PVR_SYSTEM)
+PVR_DISPLAY_CONTROLLER_DRM_IOCTL := 1
+endif
+
+else # xorg isn't excluded
+
+ifeq ($(OMAP_NON_FLIP_DISPLAY),1)
+OPK_DEFAULT := libpvrPVR2D_BLITWSEGL.so
+else
+OPK_DEFAULT := libpvrPVR2D_FLIPWSEGL.so
+endif
+OPK_FALLBACK := libpvrPVR2D_BLITWSEGL.so
+
+endif # xorg isn't excluded
+
+ifeq ($(SUPPORT_DRI_DRM),1)
+ifeq ($(PVR_DRI_DRM_NOT_PCI),1)
+KERNEL_COMPONENTS += linux_drm
+EXTRA_KBUILD_SOURCE := $(KERNELDIR)
+endif
+EXTRA_PVRSRVKM_COMPONENTS += $(DISPLAY_CONTROLLER_COMPONENT)
+else
+KERNEL_COMPONENTS += $(DISPLAY_CONTROLLER_COMPONENT)
+endif
+
+SUPPORT_V4L2_GFX ?= 0
+
+SUPPORT_MEMINFO_IDS ?= 1
+
+SUPPORT_MESA_SONAME ?= 1
+
+SUPPORT_MEMINFO_IDS ?= 1
+
+ifeq ($(SUPPORT_V4L2_GFX),1)
+KERNEL_COMPONENTS += v4l2-gfx
+endif
+
+ifeq ($(SUPPORT_BC_EXAMPLE),1)
+KERNEL_COMPONENTS += bufferclass_example
+endif
+
+PVRSRV_MODNAME := omapdrm_pvr
+
+PVRSRV_BUSID := platform:omapdrm:00
+
+include ../config/core.mk
+include ../common/xorg.mk
+include ../common/dridrm.mk
+include ../common/opencl.mk
+include ../common/omap5.mk
+
+# We only need this for pvr_video's includes, which should
+# really be done differently, as DISPLAY_CONTROLLER_DIR is
+# now obsolete..
+#
+$(eval $(call UserConfigMake,DISPLAY_CONTROLLER_DIR,3rdparty/$(DISPLAY_CONTROLLER_COMPONENT)))