14.1: Add grouper

This commit is contained in:
Tad 2018-06-26 05:57:22 -04:00
parent 3e931219df
commit 6746942f30
9 changed files with 383 additions and 4 deletions

View File

@ -143,6 +143,10 @@
<project path="device/motorola/clark" name="LineageOS/android_device_motorola_clark" remote="github" /> <project path="device/motorola/clark" name="LineageOS/android_device_motorola_clark" remote="github" />
<project path="kernel/motorola/msm8992" name="LineageOS/android_kernel_motorola_msm8992" remote="github" /> <project path="kernel/motorola/msm8992" name="LineageOS/android_kernel_motorola_msm8992" remote="github" />
<!-- Nexus 7 [2012] (grouper) -->
<project path="device/asus/grouper" name="LineageOS/android_device_asus_grouper" remote="github" revision="staging/cm-14.1" />
<project path="kernel/asus/grouper" name="LineageOS/android_kernel_asus_grouper" remote="github" revision="staging/cm-14.1" />
<!-- Nexus 5 (hammerhead) --> <!-- Nexus 5 (hammerhead) -->
<project path="device/lge/hammerhead" name="LineageOS/android_device_lge_hammerhead" remote="github" /> <project path="device/lge/hammerhead" name="LineageOS/android_device_lge_hammerhead" remote="github" />
<project path="kernel/lge/hammerhead" name="LineageOS/android_kernel_lge_hammerhead" remote="github" /> <project path="kernel/lge/hammerhead" name="LineageOS/android_kernel_lge_hammerhead" remote="github" />

View File

@ -138,7 +138,7 @@
<project path="device/nextbit/ether" name="LineageOS/android_device_nextbit_ether" remote="github" /> <project path="device/nextbit/ether" name="LineageOS/android_device_nextbit_ether" remote="github" />
<project path="kernel/nextbit/msm8992" name="LineageOS/android_kernel_nextbit_msm8992" remote="github" /> <project path="kernel/nextbit/msm8992" name="LineageOS/android_kernel_nextbit_msm8992" remote="github" />
<!-- Nexus 7 2013 (flo) --> <!-- Nexus 7 [2013] (flo) -->
<project path="device/asus/flo" name="LineageOS/android_device_asus_flo" remote="github" /> <project path="device/asus/flo" name="LineageOS/android_device_asus_flo" remote="github" />
<!-- Nexus 4 (mako) --> <!-- Nexus 4 (mako) -->

View File

@ -0,0 +1,248 @@
From be52768051dd1978bb6a4b9bd46aff4eb09c0412 Mon Sep 17 00:00:00 2001
From: Harry Youd <harry@harryyoud.co.uk>
Date: Mon, 26 Mar 2018 15:52:22 +0200
Subject: [PATCH] grouper: Initial 14.1 blob list
Change-Id: I1e9a7e2a998810778426ab522995af2f90529b44
---
device-common.mk | 6 +--
extract-files.sh | 63 ++++++++++++++++++++++++++++++
lineage-proprietary-files.txt | 89 +++++++++++++++++++++++++++++++++++++++++++
setup-makefiles.sh | 48 +++++++++++++++++++++++
4 files changed, 201 insertions(+), 5 deletions(-)
create mode 100755 extract-files.sh
create mode 100644 lineage-proprietary-files.txt
create mode 100755 setup-makefiles.sh
diff --git a/device-common.mk b/device-common.mk
index ac66bec..cdbc040 100644
--- a/device-common.mk
+++ b/device-common.mk
@@ -134,8 +134,4 @@ PRODUCT_PACKAGES += \
libstagefrighthw
# Vendor blobs
-$(call inherit-product, vendor/asus/grouper/asus-vendor.mk)
-$(call inherit-product, vendor/broadcom/grouper/broadcom-vendor.mk)
-$(call inherit-product, vendor/invensense/grouper/invensense-vendor.mk)
-$(call inherit-product, vendor/nvidia/grouper/nvidia-vendor.mk)
-$(call inherit-product-if-exists, vendor/widevine/grouper/widevine-vendor.mk)
+$(call inherit-product, vendor/asus/grouper/grouper-vendor.mk)
diff --git a/extract-files.sh b/extract-files.sh
new file mode 100755
index 0000000..43dd96b
--- /dev/null
+++ b/extract-files.sh
@@ -0,0 +1,63 @@
+#!/bin/bash
+#
+# Copyright (C) 2016 The CyanogenMod Project
+# Copyright (C) 2017 The LineageOS 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.
+#
+
+set -e
+
+DEVICE=grouper
+VENDOR=asus
+
+# Load extract_utils and do some sanity checks
+MY_DIR="${BASH_SOURCE%/*}"
+if [[ ! -d "$MY_DIR" ]]; then MY_DIR="$PWD"; fi
+
+CM_ROOT="$MY_DIR"/../../..
+
+HELPER="$CM_ROOT"/vendor/cm/build/tools/extract_utils.sh
+if [ ! -f "$HELPER" ]; then
+ echo "Unable to find helper script at $HELPER"
+ exit 1
+fi
+. "$HELPER"
+
+# Default to sanitizing the vendor folder before extraction
+CLEAN_VENDOR=true
+
+while [ "$1" != "" ]; do
+ case $1 in
+ -n | --no-cleanup ) CLEAN_VENDOR=false
+ ;;
+ -s | --section ) shift
+ SECTION=$1
+ CLEAN_VENDOR=false
+ ;;
+ * ) SRC=$1
+ ;;
+ esac
+ shift
+done
+
+if [ -z "$SRC" ]; then
+ SRC=adb
+fi
+
+# Initialize the helper
+setup_vendor "$DEVICE" "$VENDOR" "$CM_ROOT" false "$CLEAN_VENDOR"
+
+extract "$MY_DIR"/lineage-proprietary-files.txt "$SRC" "$SECTION"
+
+"$MY_DIR"/setup-makefiles.sh
diff --git a/lineage-proprietary-files.txt b/lineage-proprietary-files.txt
new file mode 100644
index 0000000..460ef24
--- /dev/null
+++ b/lineage-proprietary-files.txt
@@ -0,0 +1,89 @@
+# SORT ME
+etc/nvram.txt
+
+# Sensors
+vendor/lib/hw/sensors.grouper.so
+vendor/lib/libsensors.lightsensor.so
+
+# Radio
+etc/firmware/bcm4330.hcd
+
+# GPS
+vendor/bin/gpsd
+vendor/lib/hw/gps.tegra3.so
+
+# Gyro
+vendor/lib/libinvensense_hal.so
+vendor/lib/libmllite.so
+vendor/lib/libmplmpu.so
+
+# NFC
+vendor/firmware/libpn544_fw.so
+
+# Multimedia
+vendor/firmware/nvavp_os_00001000.bin
+vendor/firmware/nvavp_os_0ff00000.bin
+vendor/firmware/nvavp_os_e0000000.bin
+vendor/firmware/nvavp_os_eff00000.bin
+vendor/firmware/nvavp_vid_ucode_alt.bin
+
+# Camera
+vendor/lib/hw/camera.tegra3.so
+vendor/lib/libnvcamerahdr.so
+vendor/lib/libnvmm_camera.so
+
+# Display
+vendor/lib/egl/libEGL_tegra.so
+vendor/lib/egl/libGLESv1_CM_tegra.so
+vendor/lib/egl/libGLESv2_tegra.so
+vendor/lib/hw/gralloc.tegra3.so
+vendor/lib/hw/hwcomposer.tegra3.so
+vendor/lib/libardrv_dynamic.so
+vendor/lib/libcgdrv.so
+vendor/lib/libnvapputil.so
+vendor/lib/libnvasfparserhal.so
+vendor/lib/libnvaviparserhal.so
+vendor/lib/libnvavp.so
+vendor/lib/libnvdispmgr_d.so
+vendor/lib/libnvmm_video.so
+
+# ????
+vendor/lib/libnvddk_2d.so
+vendor/lib/libnvddk_2d_v2.so
+vendor/lib/libnvmm.so
+vendor/lib/libnvmm_audio.so
+vendor/lib/libnvmm_contentpipe.so
+vendor/lib/libnvmm_image.so
+vendor/lib/libnvmm_manager.so
+vendor/lib/libnvmm_misc.so
+vendor/lib/libnvmm_parser.so
+vendor/lib/libnvmm_service.so
+vendor/lib/libnvmm_utils.so
+vendor/lib/libnvmm_writer.so
+vendor/lib/libnvmmlite.so
+vendor/lib/libnvmmlite_audio.so
+vendor/lib/libnvmmlite_image.so
+vendor/lib/libnvmmlite_utils.so
+vendor/lib/libnvmmlite_video.so
+vendor/lib/libnvodm_dtvtuner.so
+vendor/lib/libnvodm_hdmi.so
+vendor/lib/libnvodm_imager.so
+vendor/lib/libnvodm_misc.so
+vendor/lib/libnvodm_query.so
+vendor/lib/libnvomx.so
+vendor/lib/libnvomxilclient.so
+vendor/lib/libnvos.so
+vendor/lib/libnvparser.so
+vendor/lib/libnvrm.so
+vendor/lib/libnvrm_graphics.so
+vendor/lib/libnvsm.so
+vendor/lib/libnvtvmr.so
+vendor/lib/libnvwinsys.so
+vendor/lib/libnvwsi.so
+
+# Touchscreen
+vendor/firmware/touch_fw.ekt
+
+# DRM
+vendor/lib/mediadrm/libwvdrmengine.so
+
diff --git a/setup-makefiles.sh b/setup-makefiles.sh
new file mode 100755
index 0000000..7c82753
--- /dev/null
+++ b/setup-makefiles.sh
@@ -0,0 +1,48 @@
+#!/bin/bash
+#
+# Copyright (C) 2016 The CyanogenMod Project
+# Copyright (C) 2017 The LineageOS 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.
+#
+
+set -e
+
+DEVICE=grouper
+VENDOR=asus
+
+INITIAL_COPYRIGHT_YEAR=2010
+
+# Load extract_utils and do some sanity checks
+MY_DIR="${BASH_SOURCE%/*}"
+if [[ ! -d "$MY_DIR" ]]; then MY_DIR="$PWD"; fi
+
+CM_ROOT="$MY_DIR"/../../..
+
+HELPER="$CM_ROOT"/vendor/cm/build/tools/extract_utils.sh
+if [ ! -f "$HELPER" ]; then
+ echo "Unable to find helper script at $HELPER"
+ exit 1
+fi
+. "$HELPER"
+
+# Initialize the helper
+setup_vendor "$DEVICE" "$VENDOR" "$CM_ROOT"
+
+# Copyright headers and guards
+write_headers
+
+write_makefiles "$MY_DIR"/lineage-proprietary-files.txt
+
+# Finish
+write_footers

View File

@ -0,0 +1,63 @@
etc/firmware/bcm4330.hcd
etc/nvram.txt
vendor/bin/gpsd
vendor/firmware/nvavp_os_00001000.bin
vendor/firmware/nvavp_os_0ff00000.bin
vendor/firmware/nvavp_os_e0000000.bin
vendor/firmware/nvavp_os_eff00000.bin
vendor/firmware/nvavp_vid_ucode_alt.bin
vendor/lib/egl/libEGL_tegra.so
vendor/lib/egl/libGLESv1_CM_tegra.so
vendor/lib/egl/libGLESv2_tegra.so
vendor/lib/hw/camera.tegra3.so
vendor/lib/hw/gps.tegra3.so
vendor/lib/hw/gralloc.tegra3.so
vendor/lib/hw/hwcomposer.tegra3.so
vendor/lib/hw/sensors.grouper.so
vendor/lib/libardrv_dynamic.so
vendor/lib/libcgdrv.so
vendor/lib/libinvensense_hal.so
vendor/lib/libmllite.so
vendor/lib/libmplmpu.so
vendor/lib/libnvapputil.so
vendor/lib/libnvasfparserhal.so
vendor/lib/libnvaviparserhal.so
vendor/lib/libnvavp.so
vendor/lib/libnvcamerahdr.so
vendor/lib/libnvddk_2d.so
vendor/lib/libnvddk_2d_v2.so
vendor/lib/libnvdispmgr_d.so
vendor/lib/libnvmm.so
vendor/lib/libnvmm_audio.so
vendor/lib/libnvmm_camera.so
vendor/lib/libnvmm_contentpipe.so
vendor/lib/libnvmm_image.so
vendor/lib/libnvmm_manager.so
vendor/lib/libnvmm_misc.so
vendor/lib/libnvmm_parser.so
vendor/lib/libnvmm_service.so
vendor/lib/libnvmm_utils.so
vendor/lib/libnvmm_video.so
vendor/lib/libnvmm_writer.so
vendor/lib/libnvmmlite.so
vendor/lib/libnvmmlite_audio.so
vendor/lib/libnvmmlite_image.so
vendor/lib/libnvmmlite_utils.so
vendor/lib/libnvmmlite_video.so
vendor/lib/libnvodm_dtvtuner.so
vendor/lib/libnvodm_hdmi.so
vendor/lib/libnvodm_imager.so
vendor/lib/libnvodm_misc.so
vendor/lib/libnvodm_query.so
vendor/lib/libnvomx.so
vendor/lib/libnvomxilclient.so
vendor/lib/libnvos.so
vendor/lib/libnvparser.so
vendor/lib/libnvrm.so
vendor/lib/libnvrm_graphics.so
vendor/lib/libnvsm.so
vendor/lib/libnvtvmr.so
vendor/lib/libnvwinsys.so
vendor/lib/libnvwsi.so
vendor/lib/libsensors.lightsensor.so
vendor/lib/mediadrm/libwvdrmengine.so

@ -1 +1 @@
Subproject commit 8f939c08b3988d272037622994cc0eac75c12097 Subproject commit 0ed6e1b7bdd188d460e1bb1fee8437f1f172d06f

View File

@ -299,7 +299,7 @@ hardenDefconfig() {
sed -i 's/CONFIG_ARCH_MMAP_RND_BITS=8/CONFIG_ARCH_MMAP_RND_BITS=16/' $defconfigPath &>/dev/null || true; sed -i 's/CONFIG_ARCH_MMAP_RND_BITS=8/CONFIG_ARCH_MMAP_RND_BITS=16/' $defconfigPath &>/dev/null || true;
sed -i 's/CONFIG_ARCH_MMAP_RND_BITS=18/CONFIG_ARCH_MMAP_RND_BITS=24/' $defconfigPath &>/dev/null || true; sed -i 's/CONFIG_ARCH_MMAP_RND_BITS=18/CONFIG_ARCH_MMAP_RND_BITS=24/' $defconfigPath &>/dev/null || true;
sed -i 's/CONFIG_DEFAULT_MMAP_MIN_ADDR=4096/CONFIG_DEFAULT_MMAP_MIN_ADDR=32768/' $defconfigPath &>/dev/null || true; sed -i 's/CONFIG_DEFAULT_MMAP_MIN_ADDR=4096/CONFIG_DEFAULT_MMAP_MIN_ADDR=32768/' $defconfigPath &>/dev/null || true;
sed -i 's/CONFIG_LSM_MMAP_MIN_ADDR=4096/CONFIG_DEFAULT_MMAP_MIN_ADDR=32768/' $defconfigPath &>/dev/null || true; sed -i 's/CONFIG_LSM_MMAP_MIN_ADDR=4096/CONFIG_LSM_MMAP_MIN_ADDR=32768/' $defconfigPath &>/dev/null || true;
editKernelLocalversion "-dos"; editKernelLocalversion "-dos";

View File

@ -0,0 +1,58 @@
#!/bin/bash
cd $base"kernel/asus/grouper"
git apply $cvePatchesLinux/0010-Accelerated_AES/3.4/0002.patch
git apply $cvePatchesLinux/0012-Copperhead-Deny_USB/3.4/3.4-Backport.patch
git apply $cvePatchesLinux/0013-syskaller-Misc/ANY/0008.patch
git apply $cvePatchesLinux/0013-syskaller-Misc/ANY/0009.patch
git apply $cvePatchesLinux/CVE-2014-9895/ANY/0001.patch
git apply $cvePatchesLinux/CVE-2016-0801/ANY/0001.patch
git apply $cvePatchesLinux/CVE-2016-2185/ANY/0001.patch
git apply $cvePatchesLinux/CVE-2016-2186/ANY/0001.patch
git apply $cvePatchesLinux/CVE-2016-3857/ANY/0001.patch
git apply $cvePatchesLinux/CVE-2016-7117/^4.5/0002.patch
git apply $cvePatchesLinux/CVE-2016-8402/3.4/0001.patch
git apply $cvePatchesLinux/CVE-2016-8406/ANY/0001.patch
git apply $cvePatchesLinux/CVE-2016-9576/3.4/0001.patch
git apply $cvePatchesLinux/CVE-2017-0430/ANY/0001.patch
git apply $cvePatchesLinux/CVE-2017-0510/3.4/0001.patch
git apply $cvePatchesLinux/CVE-2017-0648/ANY/0001.patch
git apply $cvePatchesLinux/CVE-2017-0710/ANY/0001.patch
git apply $cvePatchesLinux/CVE-2017-0750/ANY/0001.patch
git apply $cvePatchesLinux/CVE-2017-0786/ANY/0001.patch
git apply $cvePatchesLinux/CVE-2017-1000380/^4.11/0001.patch
git apply $cvePatchesLinux/CVE-2017-11090/ANY/0001.patch
git apply $cvePatchesLinux/CVE-2017-11473/ANY/0001.patch
git apply $cvePatchesLinux/CVE-2017-12153/3.2-^3.16/0001.patch
git apply $cvePatchesLinux/CVE-2017-13080/ANY/0002.patch
git apply $cvePatchesLinux/CVE-2017-13215/ANY/0001.patch
git apply $cvePatchesLinux/CVE-2017-13246/ANY/0001.patch
git apply $cvePatchesLinux/CVE-2017-15265/^4.14/0001.patch
git apply $cvePatchesLinux/CVE-2017-16525/^4.13/0002.patch
git apply $cvePatchesLinux/CVE-2017-16526/^4.13/0001.patch
git apply $cvePatchesLinux/CVE-2017-16532/^4.13/0001.patch
git apply $cvePatchesLinux/CVE-2017-16533/^4.13/0001.patch
git apply $cvePatchesLinux/CVE-2017-16535/^4.13/0001.patch
git apply $cvePatchesLinux/CVE-2017-16537/^4.13/0001.patch
git apply $cvePatchesLinux/CVE-2017-16650/ANY/0001.patch
git apply $cvePatchesLinux/CVE-2017-16USB/ANY/0001.patch
git apply $cvePatchesLinux/CVE-2017-16USB/ANY/0005.patch
git apply $cvePatchesLinux/CVE-2017-16USB/ANY/0006.patch
git apply $cvePatchesLinux/CVE-2017-17558/ANY/0001.patch
git apply $cvePatchesLinux/CVE-2017-17806/ANY/0001.patch
git apply $cvePatchesLinux/CVE-2017-2671/^4.10/0001.patch
git apply $cvePatchesLinux/CVE-2017-6074/^4.9/0001.patch
git apply $cvePatchesLinux/CVE-2017-6345/^4.9/0001.patch
git apply $cvePatchesLinux/CVE-2017-6348/^4.9/0001.patch
git apply $cvePatchesLinux/CVE-2017-6951/^3.14/0001.patch
git apply $cvePatchesLinux/CVE-2017-7184/ANY/0001.patch
git apply $cvePatchesLinux/CVE-2017-7184/ANY/0002.patch
git apply $cvePatchesLinux/CVE-2017-7308/ANY/0003.patch
git apply $cvePatchesLinux/CVE-2017-7487/ANY/0001.patch
git apply $cvePatchesLinux/CVE-2017-7533/3.4/0001.patch
git apply $cvePatchesLinux/CVE-2017-8890/3.4/0001.patch
git apply $cvePatchesLinux/CVE-2017-9242/^4.11/0001.patch
git apply $cvePatchesLinux/Untracked/ANY/0008-nfsd-check-for-oversized-NFSv2-v3-arguments.patch
git apply $cvePatchesLinux/CVE-2017-0750/ANY/0001.patch
git apply $cvePatchesLinux/CVE-2017-1000111/ANY/0001.patch
editKernelLocalversion "-dos.p54"
cd $base

View File

@ -18,7 +18,7 @@
#Last verified: 2018-04-27 #Last verified: 2018-04-27
patchAllKernels() { patchAllKernels() {
startPatcher "kernel_amazon_hdx-common kernel_asus_msm8916 kernel_fairphone_msm8974 kernel_htc_msm8994 kernel_lge_hammerhead kernel_lge_msm8992 kernel_lge_msm8996 kernel_motorola_msm8916 kernel_motorola_msm8992 kernel_samsung_jf kernel_samsung_msm8974 kernel_samsung_smdk4412 kernel_samsung_universal8890"; startPatcher "kernel_amazon_hdx-common kernel_asus_grouper kernel_asus_msm8916 kernel_fairphone_msm8974 kernel_htc_msm8994 kernel_lge_hammerhead kernel_lge_msm8992 kernel_lge_msm8996 kernel_motorola_msm8916 kernel_motorola_msm8992 kernel_samsung_jf kernel_samsung_msm8974 kernel_samsung_smdk4412 kernel_samsung_universal8890";
} }
export -f patchAllKernels; export -f patchAllKernels;
@ -54,6 +54,7 @@ buildAll() {
brunch lineage_thor-userdebug; #deprecated brunch lineage_thor-userdebug; #deprecated
brunch lineage_clark-user; brunch lineage_clark-user;
brunch lineage_FP2-user; brunch lineage_FP2-user;
#brunch lineage_grouper-user; #builds, but requires out-of-tree blobs
brunch lineage_h815-user; #deprecated (UPSTREAM) drivers/input/touchscreen/DS5/RefCode_CustomerImplementation.c:147:1: warning: the frame size of 2064 bytes is larger than 2048 bytes brunch lineage_h815-user; #deprecated (UPSTREAM) drivers/input/touchscreen/DS5/RefCode_CustomerImplementation.c:147:1: warning: the frame size of 2064 bytes is larger than 2048 bytes
brunch lineage_h850-userdebug; brunch lineage_h850-userdebug;
brunch lineage_hammerhead-user; brunch lineage_hammerhead-user;

View File

@ -229,6 +229,11 @@ sed -i 's/,encryptable=footer//' rootdir/etc/fstab.qcom; #Using footer will brea
#XXX: If not used with a supported recovery, it'll be thrown into a bootloop, don't worry just 'fastboot erase misc' and reboot #XXX: If not used with a supported recovery, it'll be thrown into a bootloop, don't worry just 'fastboot erase misc' and reboot
#echo "/dev/block/platform/msm_sdcc.1/by-name/misc /misc emmc defaults defaults" >> rootdir/etc/fstab.qcom; #Add the misc (mmcblk0p5) partition for recovery flags #echo "/dev/block/platform/msm_sdcc.1/by-name/misc /misc emmc defaults defaults" >> rootdir/etc/fstab.qcom; #Add the misc (mmcblk0p5) partition for recovery flags
enterAndClear "device/asus/grouper";
patch -p1 < "$patches/android_device_asus_grouper/0001-Update_Blobs.patch";
rm proprietary-blobs.txt;
cp "$patches/android_device_asus_grouper/lineage-proprietary-files.txt" lineage-proprietary-files.txt;
enterAndClear "device/motorola/clark"; enterAndClear "device/motorola/clark";
sed -i 's/0xA04D/0xA04D|0xA052/' board-info.txt; #Allow installing on Nougat bootloader, assume the user is running the correct modem sed -i 's/0xA04D/0xA04D|0xA052/' board-info.txt; #Allow installing on Nougat bootloader, assume the user is running the correct modem
rm board-info.txt; #Never restrict installation rm board-info.txt; #Never restrict installation