author | James W. Mills <jameswmills@ti.com> | |
Mon, 17 Sep 2012 15:29:20 +0000 (15:29 +0000) | ||
committer | Gerrit Code Review <gerrit2@git.omapzoom.org> | |
Mon, 17 Sep 2012 15:29:20 +0000 (15:29 +0000) |
omap5/Android.mk | [new file with mode: 0644] | patch | blob |
omap5/License_for_IMG_SGX_Binary_Image.txt | [new file with mode: 0644] | patch | blob |
omap5/README.SGX | [new file with mode: 0644] | patch | blob |
omap5/sgx.tgz | [new file with mode: 0644] | patch | blob |
omap5/sgx/Android.mk | [new file with mode: 0644] | patch | blob |
omap5/sgx_src/eurasia_km.tgz | [new file with mode: 0644] | patch | blob |
omap5/ti-omap5-vendor.mk | [new file with mode: 0644] | patch | blob |
diff --git a/omap5/Android.mk b/omap5/Android.mk
--- /dev/null
+++ b/omap5/Android.mk
@@ -0,0 +1,18 @@
+# Copyright (C) 2011 The Android Open Source Project
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+ifeq ($(TARGET_BOARD_PLATFORM),omap5)
+ include $(call all-subdir-makefiles)
+endif
diff --git a/omap5/License_for_IMG_SGX_Binary_Image.txt b/omap5/License_for_IMG_SGX_Binary_Image.txt
--- /dev/null
@@ -0,0 +1,125 @@
+/*
+ * TECHNOLOGY AND SOFTWARE PUBLICLY AVAILABLE
+ * SOFTWARE LICENSE FOR OMAP(TM) 4 USER SPACE GRAPHICS DRIVER BINARY
+ *
+ * Copyright (c) 2011, Texas Instruments Incorporated.
+ * Portions (c), Imagination Technologies Limited.
+ *
+ * All rights reserved.
+ *
+ * Redistribution:
+ *
+ * Redistribution and use in binary form, without modification, are
+ * permitted provided that the following conditions are met:
+ *
+ * * Redistributions must preserve existing copyright notices and reproduce
+ * this license (including the above copyright notice and the disclaimer
+ * below) in the documentation and/or other materials provided with the
+ * distribution.
+ *
+ * * Neither the name of Texas Instruments Incorporated nor the names of its
+ * suppliers may be used to endorse or promote products derived from this
+ * software without specific prior written permission.
+ *
+ * * No reverse engineering, decompilation, or disassembly of this software
+ * is permitted.
+ *
+ * Limited patent license:
+ *
+ * Texas Instruments Incorporated (TI) grants a world-wide, royalty-free,
+ * non-exclusive license under patents it now or hereafter owns or controls
+ * to make, have made, use, import, offer to sell and sell ("Utilize") this
+ * software in its current form, but solely to the extent that any such
+ * patent is necessary to Utilize the software alone. The patent license
+ * shall not apply to any combinations which include this software. No
+ * hardware per se is licensed hereunder.
+ *
+ * DISCLAIMER:
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
+ * IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
+ * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+ * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ *
+ * Certain third party licenses not included:
+ *
+ * Certain software may (a) require patent licenses from third parties
+ * claiming patent rights covering implementation of the software or (b) be
+ * based on industry recognized standards or software programs published by
+ * industry recognized standards bodies and certain third parties may claim
+ * to own patents or copyrights that cover implementation of those standards.
+ * You acknowledge and agree that (i) this License does not convey a license
+ * to any such third party patents and copyrights, (ii) you are responsible
+ * for any fees or royalties that may be payable to any third party based on
+ * such third party's interests in such software and (iii) you will indemnify
+ * TI against your failure to make any such payments and will defend any
+ * claim, suit or proceeding brought against TI insofar as such claim, suit
+ * or proceeding is based on or arises from such failure.
+ *
+ */
+
+-----------------------------------------------------------------------------
+
+Additional legal notices pertaining to portions of included software:
+
+
+Copyright (c) 2007-2009 The Khronos Group Inc.
+
+Permission is hereby granted, free of charge, to any person obtaining a
+copy of this software and/or associated documentation files (the
+"Materials"), to deal in the Materials without restriction, including
+without limitation the rights to use, copy, modify, merge, publish,
+distribute, sublicense, and/or sell copies of the Materials, and to
+permit persons to whom the Materials are 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 Materials.
+
+THE MATERIALS ARE 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
+MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.
+
+
+--------
+
+SGI FREE SOFTWARE LICENSE B (Version 2.0, Sept. 18, 2008)
+
+Copyright (C) 2006 Silicon Graphics, Inc. All Rights Reserved.
+
+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 including the dates of first publication and
+either this permission notice or a reference to
+http://oss.sgi.com/projects/FreeB/ 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
+SILICON GRAPHICS, INC. 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.
+
+Except as contained in this notice, the name of Silicon Graphics, Inc.
+shall not be used in advertising or otherwise to promote the sale, use
+or other dealings in this Software without prior written authorization
+from Silicon Graphics, Inc.
+#257696v2
diff --git a/omap5/README.SGX b/omap5/README.SGX
--- /dev/null
+++ b/omap5/README.SGX
@@ -0,0 +1,84 @@
+/*
+ * TECHNOLOGY AND SOFTWARE PUBLICLY AVAILABLE
+ *
+ * Copyright (c) 2011, Texas Instruments Incorporated.
+ *
+ * All rights reserved.
+ *
+ */
+
+#==========================================================================
+# SGX Binaries
+#==========================================================================
+
+sgx.tgz a set of binaries built for SGX544.
+The SGXCORE and SGC_CORE_REV is appended to the end of each file. pvrsrvinit is now a
+wrapper which detects the current processor and loads the corresponding core specific
+pvrsrvinit.
+
+[DDK Version]
+ 1.9RC2@2139099
+[DDK commit ID]
+ 14f82bb SGX KM: ShrinkPagePool statistics changed to PVR_DBG_MESSAGE
+[Branch]
+ origin/1.9/RC2
+[Kernel modules built against]
+ Kernel Version: 3.4.9 with CONFIG_MODVERSIONS=y
+
+This kernel also now has omaplfb added to it:
+commit 9407ac902649bcd7caa09688049ba31af34668df
+Author: Hemant Hariyani <hemanthariyani@ti.com>
+Date: Thu Jul 26 14:16:53 2012 -0500
+
+ omaplfb: Add omaplfb to the kernel tree
+
+ omaplfb has dependencies on several kernel components and it will
+ be easier to maintain it in the kernel tree.
+
+ Sync'd to DDK omaplfb patch:
+ omaplfb: Allocate a clear buffer with 8 pixel stride per GC requirement
+
+#==========================================================================
+# Cloning instructions
+#==========================================================================
+# git clone ssh://<your_AID>@gerrit.ext.ti.com:29418/img-ddk-linux-android
+# cd img-ddk-linux-android
+# git checkout -b <local_branch_name> DDKcommitID
+
+#===========================================================================
+# Build and Install Instructions
+#===========================================================================
+DDK:
+- Building DDK
+Go through README in ddk source tree.
+
+Build for OMAP5
+# ./build_DDK.sh -g 544 --build release
+
+- Installing DDK
+# ./build_DDK.sh -g 544 --install release
+
+To install directly to the device (through adb)
+# ./build_DDK.sh -g 544 --adb release
+
+#===========================================================================
+# Building SGX Kernel Modules
+#===========================================================================
+SGX kernel modules source is located in sgx_src/eurasia_km.tgz
+
+Make sure kernel is built before building modules
+
+#tar -xvf ANDROID_ROOT/device/ti/proprietary-open/omap5/sgx_src/eurasia_km.tgz
+
+# cd ANDROID_ROOT/device/ti/proprietary-open/omap5/sgx_src/eurasia_km/eurasiacon/build/linux2/omap4430_android/
+# export KERNELDIR=path_to_kernel
+
+To build for OMAP5 (SGX 544 multi core):
+# make ARCH=arm CROSS_COMPILE=arm-eabi- TARGET_PRODUCT="omap5sevm" BUILD=release TARGET_SGX=544
+
+Once the .ko's are built, install them onto device (/system/lib/modules)
+
+# cd ANDROID_ROOT/device/ti/proprietary-open/omap5/sgx_src/eurasia_km/eurasiacon/binary2_544_105_omap4430_android_release/target/
+# adb push pvrsrvkm_sgx544_105.ko /system/lib/modules/
+
+Reboot device.
diff --git a/omap5/sgx.tgz b/omap5/sgx.tgz
new file mode 100644 (file)
index 0000000..d4105f6
Binary files /dev/null and b/omap5/sgx.tgz differ
index 0000000..d4105f6
Binary files /dev/null and b/omap5/sgx.tgz differ
diff --git a/omap5/sgx/Android.mk b/omap5/sgx/Android.mk
--- /dev/null
+++ b/omap5/sgx/Android.mk
@@ -0,0 +1,150 @@
+# Copyright (C) 2011 The Android Open Source Project
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+define _add-sgx-vendor-lib
+include $$(CLEAR_VARS)
+$(if $(word 2,$1),$(error Invalid SGX module name $1))
+LOCAL_MODULE := $(basename $(notdir $1))
+LOCAL_SRC_FILES := $1
+LOCAL_MODULE_TAGS := optional
+LOCAL_MODULE_SUFFIX := $(suffix $1)
+LOCAL_MODULE_CLASS := SHARED_LIBRARIES
+LOCAL_MODULE_PATH := $$(TARGET_OUT_VENDOR)/$(dir $1)
+LOCAL_STRIP_MODULE := false
+OVERRIDE_BUILT_MODULE_PATH := $$(TARGET_OUT_INTERMEDIATE_LIBRARIES)
+LOCAL_PATH := $$(img-sgx.untarred_bin)
+include $$(BUILD_SYSTEM)/base_rules.mk
+$$(LOCAL_BUILT_MODULE) : PRIVATE_SRC := $$(img-sgx.untarred_bin)/$1
+$$(LOCAL_BUILT_MODULE) : $$(img-sgx.untarred_timestamp) | $$(ACP)
+ @echo "Copy $$@ <- $$(PRIVATE_SRC)"
+ @mkdir -p $(dir $$@)
+ $$(hide) $$(ACP) -fp $$(PRIVATE_SRC) $$@
+endef
+
+define _add-sgx-vendor-bin
+include $$(CLEAR_VARS)
+$(if $(word 2,$1),$(error Invalid SGX module name $1))
+LOCAL_MODULE := $(basename $(notdir $1))
+LOCAL_SRC_FILES := $1
+LOCAL_MODULE_TAGS := optional
+LOCAL_MODULE_SUFFIX := $(suffix $1)
+LOCAL_MODULE_CLASS := EXECUTABLES
+LOCAL_MODULE_PATH := $$(TARGET_OUT_VENDOR)/$(dir $1)
+LOCAL_STRIP_MODULE := false
+OVERRIDE_BUILT_MODULE_PATH := $$(TARGET_OUT_INTERMEDIATE_EXECUTABLES)
+LOCAL_PATH := $$(img-sgx.untarred_bin)
+include $$(BUILD_SYSTEM)/base_rules.mk
+$$(LOCAL_BUILT_MODULE) : PRIVATE_SRC := $$(img-sgx.untarred_bin)/$1
+$$(LOCAL_BUILT_MODULE) : $$(img-sgx.untarred_timestamp) | $$(ACP)
+ @echo "Copy $$@ <- $$(PRIVATE_SRC)"
+ @mkdir -p $$(dir $$@)
+ $$(hide) $$(ACP) -fp $$(PRIVATE_SRC) $$@
+endef
+
+define _add-sgx-vendor-etc
+include $$(CLEAR_VARS)
+$(if $(word 2,$1),$(error Invalid SGX module name $1))
+LOCAL_MODULE := $(basename $(notdir $1))
+LOCAL_SRC_FILES := $1
+LOCAL_MODULE_TAGS := optional
+LOCAL_MODULE_SUFFIX := $(suffix $1)
+LOCAL_MODULE_CLASS := ETC
+LOCAL_MODULE_PATH := $$(TARGET_OUT)/$(dir $1)
+LOCAL_STRIP_MODULE := false
+OVERRIDE_BUILT_MODULE_PATH := $$(TARGET_OUT_INTERMEDIATE_ETC)
+LOCAL_PATH := $$(img-sgx.untarred_bin)
+include $$(BUILD_SYSTEM)/base_rules.mk
+$$(LOCAL_BUILT_MODULE) : PRIVATE_SRC := $$(img-sgx.untarred_bin)/$1
+$$(LOCAL_BUILT_MODULE) : $$(img-sgx.untarred_timestamp) | $$(ACP)
+ @echo "Copy $$@ <- $$(PRIVATE_SRC)"
+ @mkdir -p $$(dir $$@)
+ $$(hide) $$(ACP) -fp $$(PRIVATE_SRC) $$@
+endef
+
+define _add-sgx-vendor-km
+include $$(CLEAR_VARS)
+$(if $(word 2,$1),$(error Invalid SGX module name $1))
+LOCAL_MODULE := $(basename $(notdir $1))
+LOCAL_SRC_FILES := $1
+LOCAL_MODULE_TAGS := optional
+LOCAL_MODULE_SUFFIX := $(suffix $1)
+LOCAL_MODULE_CLASS := ETC
+LOCAL_MODULE_PATH := $$(TARGET_OUT)/lib/$(dir $1)
+LOCAL_STRIP_MODULE := false
+OVERRIDE_BUILT_MODULE_PATH := $$(TARGET_OUT_INTERMEDIATE_ETC)
+LOCAL_PATH := $$(img-sgx.untarred_bin)
+include $$(BUILD_SYSTEM)/base_rules.mk
+$$(LOCAL_BUILT_MODULE) : PRIVATE_SRC := $$(img-sgx.untarred_bin)/$1
+$$(LOCAL_BUILT_MODULE) : $$(img-sgx.untarred_timestamp) | $$(ACP)
+ @echo "Copy $$@ <- $$(PRIVATE_SRC)"
+ @mkdir -p $$(dir $$@)
+ $$(hide) $$(ACP) -fp $$(PRIVATE_SRC) $$@
+endef
+
+prebuilt_sgx_vendor_libs := \
+ lib/libIMGegl_SGX544_105.so \
+ lib/libglslcompiler_SGX544_105.so \
+ lib/libusc_SGX544_105.so \
+ lib/libPVRScopeServices_SGX544_105.so \
+ lib/libsrv_um_SGX544_105.so \
+ lib/hw/gralloc.omap5.so \
+ lib/libpvrANDROID_WSEGL_SGX544_105.so \
+ lib/libpvr2d_SGX544_105.so \
+ lib/libsrv_init_SGX544_105.so \
+ lib/egl/libGLESv1_CM_POWERVR_SGX544_105.so \
+ lib/egl/libGLESv2_POWERVR_SGX544_105.so \
+ lib/egl/libEGL_POWERVR_SGX544_105.so
+
+prebuilt_sgx_vendor_bins := \
+ bin/pvrsrvinit \
+ bin/pvrsrvctl_SGX544_105
+
+prebuilt_sgx_vendor_etc := \
+ etc/powervr.ini
+
+prebuilt_sgx_vendor_km := \
+ modules/pvrsrvkm_sgx544_105.ko
+
+prebuilt_sgx_modules := \
+ $(foreach _file,$(prebuilt_sgx_vendor_libs) $(prebuilt_sgx_vendor_bins) $(prebuilt_sgx_vendor_etc) $(prebuilt_sgx_vendor_km),\
+ $(notdir $(basename $(_file))))
+
+include $(CLEAR_VARS)
+LOCAL_MODULE := ti_omap5_sgx_libs
+LOCAL_MODULE_TAGS := optional
+LOCAL_REQUIRED_MODULES := $(prebuilt_sgx_modules)
+include $(BUILD_PHONY_PACKAGE)
+
+$(foreach _file,$(prebuilt_sgx_vendor_libs),\
+ $(eval $(call _add-sgx-vendor-lib,$(_file))))
+
+$(foreach _file,$(prebuilt_sgx_vendor_bins),\
+ $(eval $(call _add-sgx-vendor-bin,$(_file))))
+
+$(foreach _file,$(prebuilt_sgx_vendor_etc),\
+ $(eval $(call _add-sgx-vendor-etc,$(_file))))
+
+$(foreach _file,$(prebuilt_sgx_vendor_km),\
+ $(eval $(call _add-sgx-vendor-km,$(_file))))
+
+prebuilt_sgx_modules :=
+prebuilt_sgx_vendor_libs :=
+prebuilt_sgx_vendor_bins :=
+prebuilt_sgx_vendor_etc :=
+prebuilt_sgx_vendor_km :=
+_add-sgx-vendor-lib :=
+_add-sgx-vendor-bin :=
+_add-sgx-vendor-etc :=
+_add-sgx-vendor-km :=
diff --git a/omap5/sgx_src/eurasia_km.tgz b/omap5/sgx_src/eurasia_km.tgz
new file mode 100644 (file)
index 0000000..386327f
Binary files /dev/null and b/omap5/sgx_src/eurasia_km.tgz differ
index 0000000..386327f
Binary files /dev/null and b/omap5/sgx_src/eurasia_km.tgz differ
diff --git a/omap5/ti-omap5-vendor.mk b/omap5/ti-omap5-vendor.mk
--- /dev/null
+++ b/omap5/ti-omap5-vendor.mk
@@ -0,0 +1,20 @@
+# Copyright (C) 2011 The Android Open Source Project
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+# This lists the packages that are necessary to build a device using
+# the Texas Instruments OMAP 54xx series SoCs
+
+PRODUCT_PACKAGES += \
+ ti_omap5_sgx_libs