diff --git a/patches/build/make/0001-x86-treble-builds-Let-BOARD_SYSTEMIMAGE_PARTITION_SI.patch b/patches/build/make/0001-x86-treble-builds-Let-BOARD_SYSTEMIMAGE_PARTITION_SI.patch
deleted file mode 100644
index 73a7d3f..0000000
--- a/patches/build/make/0001-x86-treble-builds-Let-BOARD_SYSTEMIMAGE_PARTITION_SI.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-From df772e3d88a221254013e8a4f7339a8a2b268e4f Mon Sep 17 00:00:00 2001
-From: Jon West <electrikjesus@gmail.com>
-Date: Sat, 17 Nov 2018 16:34:02 -0500
-Subject: [PATCH] [x86/treble builds] Let BOARD_SYSTEMIMAGE_PARTITION_SIZE
- error pass for these builds
-
-change this to a warning
-
-Change-Id: I87852590d59bab2cc25d8a6fa462f5f30a393099
----
- core/config.mk | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/core/config.mk b/core/config.mk
-index 884495305a..d006c32c04 100644
---- a/core/config.mk
-+++ b/core/config.mk
-@@ -968,7 +968,7 @@ ifeq ($(PRODUCT_USE_DYNAMIC_PARTITION_SIZE),true)
- 
- ifneq ($(BOARD_SYSTEMIMAGE_PARTITION_SIZE),)
- ifneq ($(BOARD_SYSTEMIMAGE_PARTITION_RESERVED_SIZE),)
--$(error Should not define BOARD_SYSTEMIMAGE_PARTITION_SIZE and \
-+$(warning Should not define BOARD_SYSTEMIMAGE_PARTITION_SIZE and \
-     BOARD_SYSTEMIMAGE_PARTITION_RESERVED_SIZE together)
- endif
- endif
--- 
-2.17.1
-
diff --git a/patches/build/make/0002-Revert-Remove-root-folder-bt_firmware-in-GSI.patch b/patches/build/make/0002-Revert-Remove-root-folder-bt_firmware-in-GSI.patch
new file mode 100644
index 0000000..7102a75
--- /dev/null
+++ b/patches/build/make/0002-Revert-Remove-root-folder-bt_firmware-in-GSI.patch
@@ -0,0 +1,53 @@
+From be2d13da242a0b1a25fcbac6d771485d01867eb2 Mon Sep 17 00:00:00 2001
+From: Pierre-Hugues Husson <phh@phh.me>
+Date: Tue, 27 Mar 2018 23:26:49 +0200
+Subject: [PATCH] Revert "Remove root folder bt_firmware in GSI"
+
+This reverts commit 292b8433cb48ef4ceb2330e57e11b8f644d9d1ee.
+
+Essential 8.1 firmware requires this
+---
+ target/board/generic_arm64_ab/BoardConfig.mk         | 2 +-
+ target/board/generic_arm64_ab/sepolicy/file.te       | 1 +
+ target/board/generic_arm64_ab/sepolicy/file_contexts | 1 +
+ 3 files changed, 3 insertions(+), 1 deletion(-)
+
+diff --git a/target/board/generic_arm64_ab/BoardConfig.mk b/target/board/generic_arm64_ab/BoardConfig.mk
+index fc6b58284..820019676 100644
+--- a/target/board/generic_arm64_ab/BoardConfig.mk
++++ b/target/board/generic_arm64_ab/BoardConfig.mk
+@@ -33,7 +33,7 @@ TARGET_NO_RECOVERY := true
+ BOARD_BUILD_SYSTEM_ROOT_IMAGE := true
+ 
+ # TODO(jiyong) These might be SoC specific.
+-BOARD_ROOT_EXTRA_FOLDERS += firmware firmware/radio persist
++BOARD_ROOT_EXTRA_FOLDERS += bt_firmware firmware firmware/radio persist
+ BOARD_ROOT_EXTRA_SYMLINKS := /vendor/lib/dsp:/dsp
+ 
+ # Set this to create /cache mount point for non-A/B devices that mounts /cache.
+diff --git a/target/board/generic_arm64_ab/sepolicy/file.te b/target/board/generic_arm64_ab/sepolicy/file.te
+index 7adfdfa4e..46455339a 100644
+--- a/target/board/generic_arm64_ab/sepolicy/file.te
++++ b/target/board/generic_arm64_ab/sepolicy/file.te
+@@ -1,5 +1,6 @@
+ # TODO(b/36764215): remove this file when the generic system image
+ # no longer has these directories
++type bt_firmware_file, file_type;
+ type persist_file, file_type;
+ 
+ # Default type for anything under /firmware.
+diff --git a/target/board/generic_arm64_ab/sepolicy/file_contexts b/target/board/generic_arm64_ab/sepolicy/file_contexts
+index 0a80559e1..92a4ff872 100644
+--- a/target/board/generic_arm64_ab/sepolicy/file_contexts
++++ b/target/board/generic_arm64_ab/sepolicy/file_contexts
+@@ -2,6 +2,7 @@
+ # no longer has these directories. They are specific to QCOM.
+ 
+ # /
++/bt_firmware(/.*)?      u:object_r:bt_firmware_file:s0
+ /tombstones             u:object_r:rootfs:s0
+ /dsp                    u:object_r:rootfs:s0
+ 
+-- 
+2.17.1
+
diff --git a/patches/frameworks/av/0001-FIH-devices-Fix-Earpiece-audio-output.patch b/patches/frameworks/av/0001-FIH-devices-Fix-Earpiece-audio-output.patch
index d0d75fc..469972e 100644
--- a/patches/frameworks/av/0001-FIH-devices-Fix-Earpiece-audio-output.patch
+++ b/patches/frameworks/av/0001-FIH-devices-Fix-Earpiece-audio-output.patch
@@ -1,4 +1,4 @@
-From 8508cdce9a6a1b3806972ca7c44ab49823863fdb Mon Sep 17 00:00:00 2001
+From bbfa6e68621509f98286a857d1c843157906b104 Mon Sep 17 00:00:00 2001
 From: Pierre-Hugues Husson <phh@phh.me>
 Date: Tue, 24 Apr 2018 00:14:28 +0200
 Subject: [PATCH 1/4] FIH devices: Fix "Earpiece" audio output
@@ -16,7 +16,7 @@
  1 file changed, 22 insertions(+), 3 deletions(-)
 
 diff --git a/services/audiopolicy/common/managerdefinitions/src/Serializer.cpp b/services/audiopolicy/common/managerdefinitions/src/Serializer.cpp
-index a2531131d..380e2f82b 100644
+index a2531131d5..380e2f82bc 100644
 --- a/services/audiopolicy/common/managerdefinitions/src/Serializer.cpp
 +++ b/services/audiopolicy/common/managerdefinitions/src/Serializer.cpp
 @@ -191,16 +191,25 @@ const char AudioProfileTraits::Attributes::name[] = "name";
diff --git a/patches/frameworks/av/0002-Fix-WiFi-Display-on-Huawei-devices-EMUI-8.0.patch b/patches/frameworks/av/0002-Fix-WiFi-Display-on-Huawei-devices-EMUI-8.0.patch
index 8eb7c4e..45141ae 100644
--- a/patches/frameworks/av/0002-Fix-WiFi-Display-on-Huawei-devices-EMUI-8.0.patch
+++ b/patches/frameworks/av/0002-Fix-WiFi-Display-on-Huawei-devices-EMUI-8.0.patch
@@ -1,4 +1,4 @@
-From 9c84cfa568c5d5629e514deb2b48ce5f42275895 Mon Sep 17 00:00:00 2001
+From f4a99cd7019aeb212011c6245069964291fadc21 Mon Sep 17 00:00:00 2001
 From: Alexander Pohl <pohl199885@gmail.com>
 Date: Fri, 15 Jun 2018 19:58:07 +0200
 Subject: [PATCH 2/4] Fix WiFi-Display on Huawei devices (EMUI 8.0)
@@ -11,7 +11,7 @@
  1 file changed, 2 insertions(+), 3 deletions(-)
 
 diff --git a/media/libstagefright/ACodec.cpp b/media/libstagefright/ACodec.cpp
-index 8949daecd..fbee52b8e 100644
+index 8949daecd3..fbee52b8e7 100644
 --- a/media/libstagefright/ACodec.cpp
 +++ b/media/libstagefright/ACodec.cpp
 @@ -4279,9 +4279,8 @@ status_t ACodec::setupAVCEncoderParameters(const sp<AMessage> &msg) {
diff --git a/patches/frameworks/av/0003-Kirin-Remove-lock-to-prevent-self-lock.patch b/patches/frameworks/av/0003-Kirin-Remove-lock-to-prevent-self-lock.patch
index 79977cd..5b71dd1 100644
--- a/patches/frameworks/av/0003-Kirin-Remove-lock-to-prevent-self-lock.patch
+++ b/patches/frameworks/av/0003-Kirin-Remove-lock-to-prevent-self-lock.patch
@@ -1,7 +1,7 @@
-From 7338690836a48da7303d111a0f38f98996a9cdd5 Mon Sep 17 00:00:00 2001
+From e49a2aaf5937eceff7ab9e220a4840296db766bd Mon Sep 17 00:00:00 2001
 From: Pierre-Hugues Husson <phh@phh.me>
 Date: Sun, 19 Aug 2018 22:59:06 +0200
-Subject: [PATCH 3/4] Kirin:: Remove lock to prevent self-lock
+Subject: [PATCH 3/4] ::Kirin:: Remove lock to prevent self-lock
 
 With Huawei Camera HAL, we get the following call order:
 cameraserver CameraService::enumerateProviders (*)
@@ -17,7 +17,7 @@
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 diff --git a/services/camera/libcameraservice/CameraService.cpp b/services/camera/libcameraservice/CameraService.cpp
-index fb740053e..b62d22080 100644
+index fb740053e8..b62d22080b 100644
 --- a/services/camera/libcameraservice/CameraService.cpp
 +++ b/services/camera/libcameraservice/CameraService.cpp
 @@ -233,7 +233,7 @@ void CameraService::onNewProviderRegistered() {
diff --git a/patches/frameworks/av/0004-We-might-not-have-a-mFlashlight-at-this-state-but-th.patch b/patches/frameworks/av/0004-We-might-not-have-a-mFlashlight-at-this-state-but-th.patch
index 36c2509..b7b1488 100644
--- a/patches/frameworks/av/0004-We-might-not-have-a-mFlashlight-at-this-state-but-th.patch
+++ b/patches/frameworks/av/0004-We-might-not-have-a-mFlashlight-at-this-state-but-th.patch
@@ -1,4 +1,4 @@
-From c195131280ea47a045dbc78a9f6a83eb880b733d Mon Sep 17 00:00:00 2001
+From e5c496ab9a64a05809a7149b047c8160395aff2b Mon Sep 17 00:00:00 2001
 From: Pierre-Hugues Husson <phh@phh.me>
 Date: Sun, 19 Aug 2018 23:05:26 +0200
 Subject: [PATCH 4/4] We might not have a mFlashlight at this state, but that's
@@ -9,7 +9,7 @@
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 diff --git a/services/camera/libcameraservice/CameraService.cpp b/services/camera/libcameraservice/CameraService.cpp
-index b62d22080..0f2c4cac7 100644
+index b62d22080b..0f2c4cac70 100644
 --- a/services/camera/libcameraservice/CameraService.cpp
 +++ b/services/camera/libcameraservice/CameraService.cpp
 @@ -258,7 +258,7 @@ void CameraService::addStates(const String8 id) {
diff --git a/patches/frameworks/base/0003-Fix-backlight-control-on-Galaxy-S9.patch b/patches/frameworks/base/0001-Fix-backlight-control-on-Galaxy-S9.patch
similarity index 91%
rename from patches/frameworks/base/0003-Fix-backlight-control-on-Galaxy-S9.patch
rename to patches/frameworks/base/0001-Fix-backlight-control-on-Galaxy-S9.patch
index 20ef93a..3825bd9 100644
--- a/patches/frameworks/base/0003-Fix-backlight-control-on-Galaxy-S9.patch
+++ b/patches/frameworks/base/0001-Fix-backlight-control-on-Galaxy-S9.patch
@@ -1,7 +1,7 @@
-From 8fa619b8a4e063730776b3ac63d1be73a5b1ac46 Mon Sep 17 00:00:00 2001
+From 91eb4080d604b196ba0f3099a5e3d22b94950b8f Mon Sep 17 00:00:00 2001
 From: Pierre-Hugues Husson <phh@phh.me>
 Date: Sat, 24 Mar 2018 08:01:48 +0100
-Subject: [PATCH 03/26] Fix backlight control on Galaxy S9(+)
+Subject: [PATCH 01/24] Fix backlight control on Galaxy S9(+)
 
 ---
  .../core/java/com/android/server/lights/LightsService.java | 7 +++++++
diff --git a/patches/frameworks/base/0001-Utils-Import-restart-systemui-api.patch b/patches/frameworks/base/0001-Utils-Import-restart-systemui-api.patch
deleted file mode 100644
index 91a6cd2..0000000
--- a/patches/frameworks/base/0001-Utils-Import-restart-systemui-api.patch
+++ /dev/null
@@ -1,134 +0,0 @@
-From 797c4020f25fb4a76dee82f5fc7008aada330d2f Mon Sep 17 00:00:00 2001
-From: SpiritCroc <dev@spiritcroc.de>
-Date: Sun, 11 Nov 2018 14:59:35 -0700
-Subject: [PATCH 01/26] Utils: Import restart systemui api
-
-Change-Id: Ief06016032e14fe15ec8348722546c54e0d379c7
----
- .../internal/util/omni/DeviceUtils.java       | 61 +++++++++++++++++++
- core/res/res/values/bliss_strings.xml         |  4 ++
- core/res/res/values/bliss_symbols.xml         |  4 ++
- 3 files changed, 69 insertions(+)
-
-diff --git a/core/java/com/android/internal/util/omni/DeviceUtils.java b/core/java/com/android/internal/util/omni/DeviceUtils.java
-index 811b52d57cc..59db7500a1c 100644
---- a/core/java/com/android/internal/util/omni/DeviceUtils.java
-+++ b/core/java/com/android/internal/util/omni/DeviceUtils.java
-@@ -15,8 +15,12 @@
- */
- package com.android.internal.util.omni;
- 
-+import android.app.ActivityManager;
-+import android.app.AlertDialog;
-+import android.app.IActivityManager;
- import android.bluetooth.BluetoothAdapter;
- import android.content.Context;
-+import android.content.DialogInterface;
- import android.content.pm.ApplicationInfo;
- import android.content.pm.PackageInfo;
- import android.content.pm.PackageManager;
-@@ -29,6 +33,7 @@ import android.hardware.camera2.CameraManager;
- import android.hardware.SensorManager;
- import android.net.ConnectivityManager;
- import android.nfc.NfcAdapter;
-+import android.os.AsyncTask;
- import android.os.RemoteException;
- import android.os.SystemProperties;
- import android.os.Vibrator;
-@@ -45,6 +50,7 @@ import com.android.internal.telephony.PhoneConstants;
- import static android.hardware.Sensor.TYPE_LIGHT;
- import static android.hardware.Sensor.TYPE_PROXIMITY;
- 
-+import com.android.internal.R;
- import java.util.List;
- import java.util.Locale;
- 
-@@ -221,4 +227,59 @@ public class DeviceUtils {
-             e.printStackTrace();
-         }
-     }
-+
-+    public static void restartSystemUi(Context context) {
-+        new RestartSystemUiTask(context).execute();
-+    }
-+
-+     public static void showSystemUiRestartDialog(Context context) {
-+        new AlertDialog.Builder(context)
-+                .setTitle(R.string.systemui_restart_title)
-+                .setMessage(R.string.systemui_restart_message)
-+                .setPositiveButton(R.string.ok, new DialogInterface.OnClickListener() {
-+                    public void onClick(DialogInterface dialog, int id) {
-+                        restartSystemUi(context);
-+                    }
-+                })
-+                .setNegativeButton(R.string.cancel, null)
-+                .show();
-+    }
-+
-+     private static class RestartSystemUiTask extends AsyncTask<Void, Void, Void> {
-+         private Context mContext;
-+         public RestartSystemUiTask(Context context) {
-+            super();
-+            mContext = context;
-+        }
-+
-+         @Override
-+        protected Void doInBackground(Void... params) {
-+            try {
-+                ActivityManager am =
-+                        (ActivityManager) mContext.getSystemService(Context.ACTIVITY_SERVICE);
-+                IActivityManager ams = ActivityManager.getService();
-+                for (ActivityManager.RunningAppProcessInfo app: am.getRunningAppProcesses()) {
-+                    if ("com.android.systemui".equals(app.processName)) {
-+                        ams.killApplicationProcess(app.processName, app.uid);
-+                        break;
-+                    }
-+                }
-+                //Class ActivityManagerNative = Class.forName("android.app.ActivityManagerNative");
-+                //Method getDefault = ActivityManagerNative.getDeclaredMethod("getDefault", null);
-+                //Object amn = getDefault.invoke(null, null);
-+                //Method killApplicationProcess = amn.getClass().getDeclaredMethod("killApplicationProcess", String.class, int.class);
-+                //mContext.stopService(new Intent().setComponent(new ComponentName("com.android.systemui", "com.android.systemui.SystemUIService")));
-+                //am.killBackgroundProcesses("com.android.systemui");
-+                //for (ActivityManager.RunningAppProcessInfo app : am.getRunningAppProcesses()) {
-+                //    if ("com.android.systemui".equals(app.processName)) {
-+                //        killApplicationProcess.invoke(amn, app.processName, app.uid);
-+                //        break;
-+                //    }
-+                //}
-+            } catch (Exception e) {
-+                e.printStackTrace();
-+            }
-+            return null;
-+        }
-+    }
- }
-diff --git a/core/res/res/values/bliss_strings.xml b/core/res/res/values/bliss_strings.xml
-index 9ba4f1844ca..da16771ba18 100644
---- a/core/res/res/values/bliss_strings.xml
-+++ b/core/res/res/values/bliss_strings.xml
-@@ -54,4 +54,8 @@
-     <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. -->
-     <string name="permdesc_fakePackageSignature">Allows the app to pretend to be a different app. Malicious applications might be able to use this to access private application data. Legitimate uses include an emulator pretending to be what it emulates. Grant this permission with caution only!</string>
- 
-+    <!-- SystemUI Restart -->
-+    <string name="systemui_restart_title">SystemUI restart required</string>
-+    <string name="systemui_restart_message">For all changes to take effect, a SystemUI restart is required. Restart SystemUI now?</string>
-+
- </resources>
-diff --git a/core/res/res/values/bliss_symbols.xml b/core/res/res/values/bliss_symbols.xml
-index 35d9555b2f9..f8e2bdb5bf6 100644
---- a/core/res/res/values/bliss_symbols.xml
-+++ b/core/res/res/values/bliss_symbols.xml
-@@ -145,4 +145,8 @@
-   <!-- Oreo's recents component activity -->
-   <java-symbol type="string" name="config_recentsComponentNameOreo" />
- 
-+  <!-- SystemUI Restart -->
-+  <java-symbol type="string" name="systemui_restart_title" />
-+  <java-symbol type="string" name="systemui_restart_message" />
-+
- </resources>
--- 
-2.17.1
-
diff --git a/patches/frameworks/base/0004-Relax-requirement-for-visible-flag-to-sdcards.patch b/patches/frameworks/base/0002-Relax-requirement-for-visible-flag-to-sdcards.patch
similarity index 90%
rename from patches/frameworks/base/0004-Relax-requirement-for-visible-flag-to-sdcards.patch
rename to patches/frameworks/base/0002-Relax-requirement-for-visible-flag-to-sdcards.patch
index ab6d087..18fe613 100644
--- a/patches/frameworks/base/0004-Relax-requirement-for-visible-flag-to-sdcards.patch
+++ b/patches/frameworks/base/0002-Relax-requirement-for-visible-flag-to-sdcards.patch
@@ -1,7 +1,7 @@
-From a9b12570584788b9e4b1ee8a41cdc79f2cbf51e3 Mon Sep 17 00:00:00 2001
+From d1d4caf3c5d8860f45688965664d8a985a645e57 Mon Sep 17 00:00:00 2001
 From: Pierre-Hugues Husson <phh@phh.me>
 Date: Tue, 28 Nov 2017 18:28:04 +0100
-Subject: [PATCH 04/26] Relax requirement for visible flag to sdcards
+Subject: [PATCH 02/24] Relax requirement for visible flag to sdcards
 
 The vast majority of sdcard readers are stable enough to be declared by
 the API. (I see no counter-example)
diff --git a/patches/frameworks/base/0002-Revert-Telephony-Stop-using-rssnr-it-falsly-shows-wr.patch b/patches/frameworks/base/0002-Revert-Telephony-Stop-using-rssnr-it-falsly-shows-wr.patch
deleted file mode 100644
index b3b9044..0000000
--- a/patches/frameworks/base/0002-Revert-Telephony-Stop-using-rssnr-it-falsly-shows-wr.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-From d5d060f229203c48962b0580946fe115775d3338 Mon Sep 17 00:00:00 2001
-From: Jackeagle <jackeagle102@gmail.com>
-Date: Thu, 18 Oct 2018 04:55:17 -0400
-Subject: [PATCH 02/26] Revert "Telephony: Stop using rssnr, it falsly shows
- wrong signal bars"
-
-This reverts commit b9ff83d0b1d5a81d55057ae2fa892e5d0f1083be.
----
- telephony/java/android/telephony/SignalStrength.java | 3 ---
- 1 file changed, 3 deletions(-)
-
-diff --git a/telephony/java/android/telephony/SignalStrength.java b/telephony/java/android/telephony/SignalStrength.java
-index 55c0c778972..4e5639683a7 100644
---- a/telephony/java/android/telephony/SignalStrength.java
-+++ b/telephony/java/android/telephony/SignalStrength.java
-@@ -897,9 +897,6 @@ public class SignalStrength implements Parcelable {
-                 + rsrpIconLevel + " snrIconLevel:" + snrIconLevel
-                 + " lteRsrpBoost:" + mLteRsrpBoost);
- 
--	/* Ignore RSSNR for now */
--	if(rsrpIconLevel != -1) return rsrpIconLevel;
--
-         /* Choose a measurement type to use for notification */
-         if (snrIconLevel != -1 && rsrpIconLevel != -1) {
-             /*
--- 
-2.17.1
-
diff --git a/patches/frameworks/base/0005-Also-scan-system-overlay.patch b/patches/frameworks/base/0003-Also-scan-system-overlay.patch
similarity index 94%
rename from patches/frameworks/base/0005-Also-scan-system-overlay.patch
rename to patches/frameworks/base/0003-Also-scan-system-overlay.patch
index 127d880..cb2dc20 100644
--- a/patches/frameworks/base/0005-Also-scan-system-overlay.patch
+++ b/patches/frameworks/base/0003-Also-scan-system-overlay.patch
@@ -1,7 +1,7 @@
-From fe2320fb75d4b04720641632c8009d0bcb4ee3c6 Mon Sep 17 00:00:00 2001
+From 71b335142aee451ecad3beb9dd99735a82591405 Mon Sep 17 00:00:00 2001
 From: Pierre-Hugues Husson <phh@phh.me>
 Date: Tue, 1 May 2018 17:47:36 +0200
-Subject: [PATCH 05/26] Also scan /system/overlay
+Subject: [PATCH 03/24] Also scan /system/overlay
 
 Change-Id: Ib0223560606b80cdaaa986b159b34b4db0154589
 ---
diff --git a/patches/frameworks/base/0006-Don-t-crash-if-there-is-IR-HAL-is-not-declared.patch b/patches/frameworks/base/0004-Don-t-crash-if-there-is-IR-HAL-is-not-declared.patch
similarity index 72%
rename from patches/frameworks/base/0006-Don-t-crash-if-there-is-IR-HAL-is-not-declared.patch
rename to patches/frameworks/base/0004-Don-t-crash-if-there-is-IR-HAL-is-not-declared.patch
index ca478ae..39db573 100644
--- a/patches/frameworks/base/0006-Don-t-crash-if-there-is-IR-HAL-is-not-declared.patch
+++ b/patches/frameworks/base/0004-Don-t-crash-if-there-is-IR-HAL-is-not-declared.patch
@@ -1,25 +1,25 @@
-From 5d5a6a281c69f7eb8b78ddd7a4b7b120fe3d56df Mon Sep 17 00:00:00 2001
+From d16ee43a647ba52a8a535806ec74476b6177555e Mon Sep 17 00:00:00 2001
 From: Pierre-Hugues Husson <phh@phh.me>
 Date: Thu, 17 May 2018 20:28:35 +0200
-Subject: [PATCH 06/26] Don't crash if there is IR HAL is not declared
+Subject: [PATCH 04/24] Don't crash if there is IR HAL is not declared
 
 ---
  services/core/java/com/android/server/ConsumerIrService.java | 2 --
  1 file changed, 2 deletions(-)
 
 diff --git a/services/core/java/com/android/server/ConsumerIrService.java b/services/core/java/com/android/server/ConsumerIrService.java
-index 2ed6c77baa0..c574a03c9a3 100644
+index 839629c6f82..0a0065a7b55 100644
 --- a/services/core/java/com/android/server/ConsumerIrService.java
 +++ b/services/core/java/com/android/server/ConsumerIrService.java
-@@ -50,8 +50,6 @@ public class ConsumerIrService extends IConsumerIrService.Stub {
+@@ -52,8 +52,6 @@ public class ConsumerIrService extends IConsumerIrService.Stub {
              if (!mHasNativeHal) {
                  throw new RuntimeException("FEATURE_CONSUMER_IR present, but no IR HAL loaded!");
              }
 -        } else if (mHasNativeHal) {
 -            throw new RuntimeException("IR HAL present, but FEATURE_CONSUMER_IR is not set!");
          }
+         mParameter = AudioSystem.getParameters("audio_capability#irda_support");
      }
- 
 -- 
 2.17.1
 
diff --git a/patches/frameworks/base/0007-Fix-62.patch b/patches/frameworks/base/0005-Fix-62.patch
similarity index 91%
rename from patches/frameworks/base/0007-Fix-62.patch
rename to patches/frameworks/base/0005-Fix-62.patch
index 8794785..9b107f8 100644
--- a/patches/frameworks/base/0007-Fix-62.patch
+++ b/patches/frameworks/base/0005-Fix-62.patch
@@ -1,7 +1,7 @@
-From 7b666d0761c2a1af8e206943d394468a1315b334 Mon Sep 17 00:00:00 2001
+From b4de2fb9ed6fcb74afe27f1ec142404a6b5d4a9a Mon Sep 17 00:00:00 2001
 From: Pierre-Hugues Husson <phh@phh.me>
 Date: Wed, 30 May 2018 14:05:30 +0200
-Subject: [PATCH 07/26] Fix(?) #62
+Subject: [PATCH 05/24] Fix(?) #62
 
 ---
  .../src/com/android/keyguard/KeyguardUpdateMonitor.java      | 5 ++++-
diff --git a/patches/frameworks/base/0008-S9-brightness-override-only-for-screen.patch b/patches/frameworks/base/0006-S9-brightness-override-only-for-screen.patch
similarity index 91%
rename from patches/frameworks/base/0008-S9-brightness-override-only-for-screen.patch
rename to patches/frameworks/base/0006-S9-brightness-override-only-for-screen.patch
index 25368f1..f321bb0 100644
--- a/patches/frameworks/base/0008-S9-brightness-override-only-for-screen.patch
+++ b/patches/frameworks/base/0006-S9-brightness-override-only-for-screen.patch
@@ -1,7 +1,7 @@
-From fcb2d6953ad707ff8eabdf0eb5b2525e23d6392c Mon Sep 17 00:00:00 2001
+From a7ee8a4b4ad97efbf40abbb5431520c8d47f9512 Mon Sep 17 00:00:00 2001
 From: Pierre-Hugues Husson <pierre-hugues.husson@softathome.com>
 Date: Thu, 7 Jun 2018 13:36:51 +0200
-Subject: [PATCH 08/26] S9 brightness override only for screen
+Subject: [PATCH 06/24] S9 brightness override only for screen
 
 ---
  .../com/android/server/lights/LightsService.java     | 12 +++++++-----
diff --git a/patches/frameworks/base/0009-Fix-OP6-brightness.patch b/patches/frameworks/base/0007-WIP-Fix-OP6-brightness.patch
similarity index 92%
rename from patches/frameworks/base/0009-Fix-OP6-brightness.patch
rename to patches/frameworks/base/0007-WIP-Fix-OP6-brightness.patch
index 11f6c18..595281c 100644
--- a/patches/frameworks/base/0009-Fix-OP6-brightness.patch
+++ b/patches/frameworks/base/0007-WIP-Fix-OP6-brightness.patch
@@ -1,7 +1,7 @@
-From 6923e824c890e6ed6a65881341749a83b489c954 Mon Sep 17 00:00:00 2001
+From 12e3da8a0a0aaffcf27b5e3551d2a264245f2804 Mon Sep 17 00:00:00 2001
 From: Pierre-Hugues Husson <pierre-hugues.husson@softathome.com>
 Date: Thu, 7 Jun 2018 13:42:02 +0200
-Subject: [PATCH 09/26] Fix OP6 brightness
+Subject: [PATCH 07/24] [WIP] Fix OP6 brightness
 
 ---
  .../com/android/server/lights/LightsService.java     | 12 ++++++++++++
diff --git a/patches/frameworks/base/0010-Try-to-make-brightness-more-generic-using-property-s.patch b/patches/frameworks/base/0008-Try-to-make-brightness-more-generic-using-property-s.patch
similarity index 91%
rename from patches/frameworks/base/0010-Try-to-make-brightness-more-generic-using-property-s.patch
rename to patches/frameworks/base/0008-Try-to-make-brightness-more-generic-using-property-s.patch
index 090287c..09a7453 100644
--- a/patches/frameworks/base/0010-Try-to-make-brightness-more-generic-using-property-s.patch
+++ b/patches/frameworks/base/0008-Try-to-make-brightness-more-generic-using-property-s.patch
@@ -1,7 +1,7 @@
-From 82c87e64737aed3c80aa16566ac3546182d00ffc Mon Sep 17 00:00:00 2001
+From ff7a83182f1055bf26101f411fce378bbc9ef674 Mon Sep 17 00:00:00 2001
 From: Pierre-Hugues Husson <phh@phh.me>
 Date: Sun, 10 Jun 2018 22:54:55 +0200
-Subject: [PATCH 10/26] Try to make brightness more generic using property set
+Subject: [PATCH 08/24] Try to make brightness more generic using property set
  by rw-system
 
 ---
diff --git a/patches/frameworks/base/0011-property-matching-RROs-allow-to-prefix-the-value-wit.patch b/patches/frameworks/base/0009-property-matching-RROs-allow-to-prefix-the-value-wit.patch
similarity index 85%
rename from patches/frameworks/base/0011-property-matching-RROs-allow-to-prefix-the-value-wit.patch
rename to patches/frameworks/base/0009-property-matching-RROs-allow-to-prefix-the-value-wit.patch
index 557f85b..a9d2b36 100644
--- a/patches/frameworks/base/0011-property-matching-RROs-allow-to-prefix-the-value-wit.patch
+++ b/patches/frameworks/base/0009-property-matching-RROs-allow-to-prefix-the-value-wit.patch
@@ -1,7 +1,7 @@
-From 92055b58d15be699f3652f6d9726de7da1188768 Mon Sep 17 00:00:00 2001
+From 602f7828e34cbc4363a337f3babba30a3496e2e4 Mon Sep 17 00:00:00 2001
 From: Pierre-Hugues Husson <phh@phh.me>
 Date: Tue, 12 Jun 2018 22:55:32 +0200
-Subject: [PATCH 11/26] property-matching RROs: allow to prefix the value with
+Subject: [PATCH 09/24] property-matching RROs: allow to prefix the value with
  + to do glob match instead of exact match
 
 ---
diff --git a/patches/frameworks/base/0012-Fix-typo-on-fnmatch-return-value-check.patch b/patches/frameworks/base/0010-Fix-typo-on-fnmatch-return-value-check.patch
similarity index 82%
rename from patches/frameworks/base/0012-Fix-typo-on-fnmatch-return-value-check.patch
rename to patches/frameworks/base/0010-Fix-typo-on-fnmatch-return-value-check.patch
index 971502d..7988733 100644
--- a/patches/frameworks/base/0012-Fix-typo-on-fnmatch-return-value-check.patch
+++ b/patches/frameworks/base/0010-Fix-typo-on-fnmatch-return-value-check.patch
@@ -1,7 +1,7 @@
-From 6434c54e04ece8b327af3f1d453b9d2845f12fe2 Mon Sep 17 00:00:00 2001
+From e7da57411443c24b20a73085c10d0cf32872e94a Mon Sep 17 00:00:00 2001
 From: Song Fuchang <song.fc@gmail.com>
 Date: Sun, 17 Jun 2018 22:39:37 +0800
-Subject: [PATCH 12/26] Fix typo on fnmatch return value check
+Subject: [PATCH 10/24] Fix typo on fnmatch return value check
 
 ---
  cmds/idmap/scan.cpp | 2 +-
diff --git a/patches/frameworks/base/0013-Add-Qualcomm-starlte.patch b/patches/frameworks/base/0011-Add-Qualcomm-starlte.patch
similarity index 91%
rename from patches/frameworks/base/0013-Add-Qualcomm-starlte.patch
rename to patches/frameworks/base/0011-Add-Qualcomm-starlte.patch
index 74fd837..3e6e3f2 100644
--- a/patches/frameworks/base/0013-Add-Qualcomm-starlte.patch
+++ b/patches/frameworks/base/0011-Add-Qualcomm-starlte.patch
@@ -1,7 +1,7 @@
-From c232a221826b04cacf0c9ba19d0f687b5adb61f4 Mon Sep 17 00:00:00 2001
+From 462337890f4e88da2ddb4c9f7927930b790aa889 Mon Sep 17 00:00:00 2001
 From: Pierre-Hugues Husson <phh@phh.me>
 Date: Mon, 25 Jun 2018 22:43:32 +0200
-Subject: [PATCH 13/26] Add Qualcomm starlte
+Subject: [PATCH 11/24] Add Qualcomm starlte
 
 ---
  .../core/java/com/android/server/lights/LightsService.java    | 4 +++-
diff --git a/patches/frameworks/base/0014-remaining-of-HAL-onEnroll-is-actually-a-percent-of-p.patch b/patches/frameworks/base/0012-Galaxy-S9-remaining-of-HAL-onEnroll-is-actually-a-pe.patch
similarity index 88%
rename from patches/frameworks/base/0014-remaining-of-HAL-onEnroll-is-actually-a-percent-of-p.patch
rename to patches/frameworks/base/0012-Galaxy-S9-remaining-of-HAL-onEnroll-is-actually-a-pe.patch
index b42ac73..87e7baf 100644
--- a/patches/frameworks/base/0014-remaining-of-HAL-onEnroll-is-actually-a-percent-of-p.patch
+++ b/patches/frameworks/base/0012-Galaxy-S9-remaining-of-HAL-onEnroll-is-actually-a-pe.patch
@@ -1,8 +1,8 @@
-From 7f583a4e841bfa0525abb0a523fee67f500a7e2f Mon Sep 17 00:00:00 2001
+From 934c4c7816086915410546c4737a1961b0e90ed7 Mon Sep 17 00:00:00 2001
 From: Pierre-Hugues Husson <phh@phh.me>
 Date: Mon, 2 Jul 2018 23:36:39 +0200
-Subject: [PATCH 14/26] "remaining" of HAL onEnroll is actually a percent of
- progress
+Subject: [PATCH 12/24] [Galaxy S9] "remaining" of HAL onEnroll is actually a
+ percent of progress
 
 ---
  .../com/android/server/fingerprint/FingerprintService.java  | 6 +++++-
diff --git a/patches/frameworks/base/0015-Show-APN-Settings-for-CDMA-carriers.patch b/patches/frameworks/base/0013-Show-APN-Settings-for-CDMA-carriers.patch
similarity index 90%
rename from patches/frameworks/base/0015-Show-APN-Settings-for-CDMA-carriers.patch
rename to patches/frameworks/base/0013-Show-APN-Settings-for-CDMA-carriers.patch
index f656493..7ee2e03 100644
--- a/patches/frameworks/base/0015-Show-APN-Settings-for-CDMA-carriers.patch
+++ b/patches/frameworks/base/0013-Show-APN-Settings-for-CDMA-carriers.patch
@@ -1,7 +1,7 @@
-From 4929e9f4ecda2f7083e8f975526e0f42e8ddac9f Mon Sep 17 00:00:00 2001
+From 39208bac6cdd94269f41f992d2597d050196e0c7 Mon Sep 17 00:00:00 2001
 From: Pierre-Hugues Husson <phh@phh.me>
 Date: Mon, 6 Aug 2018 12:49:00 +0200
-Subject: [PATCH 15/26] Show APN Settings for CDMA carriers
+Subject: [PATCH 13/24] Show APN Settings for CDMA carriers
 
 ---
  telephony/java/android/telephony/CarrierConfigManager.java | 2 +-
diff --git a/patches/frameworks/base/0016-Change-SignalStrentgh-to-change-behaviour-based-on-p.patch b/patches/frameworks/base/0014-Change-SignalStrentgh-to-change-behaviour-based-on-p.patch
similarity index 89%
rename from patches/frameworks/base/0016-Change-SignalStrentgh-to-change-behaviour-based-on-p.patch
rename to patches/frameworks/base/0014-Change-SignalStrentgh-to-change-behaviour-based-on-p.patch
index 846777e..b13082f 100644
--- a/patches/frameworks/base/0016-Change-SignalStrentgh-to-change-behaviour-based-on-p.patch
+++ b/patches/frameworks/base/0014-Change-SignalStrentgh-to-change-behaviour-based-on-p.patch
@@ -1,16 +1,17 @@
-From 5d298fdddbdf236dcd3908e8cfd2bd00c8a221a2 Mon Sep 17 00:00:00 2001
+From baa43b505d69d7d5dadf13bdb25d97eac8145d5f Mon Sep 17 00:00:00 2001
 From: Pierre-Hugues Husson <phh@phh.me>
 Date: Mon, 6 Aug 2018 20:01:44 +0200
-Subject: [PATCH 16/26] Change SignalStrentgh to change behaviour based on
+Subject: [PATCH 14/24] Change SignalStrentgh to change behaviour based on
  property
 
 Change-Id: I940ed724047567ec5195ac93ea04574c3d92f70b
+Signed-off-by: Jackeagle <jackeagle102@gmail.com>
 ---
  .../android/telephony/SignalStrength.java     | 39 +++++++++++++------
  1 file changed, 27 insertions(+), 12 deletions(-)
 
 diff --git a/telephony/java/android/telephony/SignalStrength.java b/telephony/java/android/telephony/SignalStrength.java
-index 4e5639683a7..ff906d330d4 100644
+index 55c0c778972..69bc6128da6 100644
 --- a/telephony/java/android/telephony/SignalStrength.java
 +++ b/telephony/java/android/telephony/SignalStrength.java
 @@ -854,6 +854,7 @@ public class SignalStrength implements Parcelable {
@@ -21,9 +22,9 @@
          int rssiIconLevel = SIGNAL_STRENGTH_NONE_OR_UNKNOWN, rsrpIconLevel = -1, snrIconLevel = -1;
  
          if (mLteRsrp > MAX_LTE_RSRP || mLteRsrp < MIN_LTE_RSRP) {
-@@ -897,6 +898,32 @@ public class SignalStrength implements Parcelable {
-                 + rsrpIconLevel + " snrIconLevel:" + snrIconLevel
-                 + " lteRsrpBoost:" + mLteRsrpBoost);
+@@ -900,6 +901,32 @@ public class SignalStrength implements Parcelable {
+ 	/* Ignore RSSNR for now */
+ 	if(rsrpIconLevel != -1) return rsrpIconLevel;
  
 +        /* Valid values are (0-63, 99) as defined in TS 36.331 */
 +        // TODO the range here is probably supposed to be (0..31, 99). It's unclear if anyone relies
@@ -54,7 +55,7 @@
          /* Choose a measurement type to use for notification */
          if (snrIconLevel != -1 && rsrpIconLevel != -1) {
              /*
-@@ -911,18 +938,6 @@ public class SignalStrength implements Parcelable {
+@@ -914,18 +941,6 @@ public class SignalStrength implements Parcelable {
  
          if (rsrpIconLevel != -1) return rsrpIconLevel;
  
diff --git a/patches/frameworks/base/0017-idmap-Don-t-silently-ignore-RROs-with-same-priority.patch b/patches/frameworks/base/0015-idmap-Don-t-silently-ignore-RROs-with-same-priority.patch
similarity index 82%
rename from patches/frameworks/base/0017-idmap-Don-t-silently-ignore-RROs-with-same-priority.patch
rename to patches/frameworks/base/0015-idmap-Don-t-silently-ignore-RROs-with-same-priority.patch
index ffa27e6..bd9750c 100644
--- a/patches/frameworks/base/0017-idmap-Don-t-silently-ignore-RROs-with-same-priority.patch
+++ b/patches/frameworks/base/0015-idmap-Don-t-silently-ignore-RROs-with-same-priority.patch
@@ -1,7 +1,7 @@
-From 918aacb06ef25d3c6ede826ef65916103b9c5584 Mon Sep 17 00:00:00 2001
+From a44e1c7060944b61680d635bba3f3cf6c6ec0fc3 Mon Sep 17 00:00:00 2001
 From: Pierre-Hugues Husson <phh@phh.me>
 Date: Sun, 19 Aug 2018 10:51:06 +0200
-Subject: [PATCH 17/26] idmap: Don't silently ignore RROs with same priority
+Subject: [PATCH 15/24] idmap: Don't silently ignore RROs with same priority
 
 Change-Id: I64a6899f1b30e0cd9e9a872b7ca83d831f038cbe
 ---
diff --git a/patches/frameworks/base/0018-Move-SysuiDarkThemeOverlay-to-system.patch b/patches/frameworks/base/0016-Move-SysuiDarkThemeOverlay-to-system.patch
similarity index 86%
rename from patches/frameworks/base/0018-Move-SysuiDarkThemeOverlay-to-system.patch
rename to patches/frameworks/base/0016-Move-SysuiDarkThemeOverlay-to-system.patch
index 104d6dd..f1e1997 100644
--- a/patches/frameworks/base/0018-Move-SysuiDarkThemeOverlay-to-system.patch
+++ b/patches/frameworks/base/0016-Move-SysuiDarkThemeOverlay-to-system.patch
@@ -1,7 +1,7 @@
-From 1d441d72b476758932f06c9d742701af4756dedd Mon Sep 17 00:00:00 2001
+From 5e5f594514771d06e0a21d61b6a40dde00cff3a5 Mon Sep 17 00:00:00 2001
 From: Pierre-Hugues Husson <phh@phh.me>
 Date: Sun, 19 Aug 2018 10:57:21 +0200
-Subject: [PATCH 18/26] Move SysuiDarkThemeOverlay to /system
+Subject: [PATCH 16/24] Move SysuiDarkThemeOverlay to /system
 
 Change-Id: I31b3edc5d1abcc1163a13e63c909fee9d27ff432
 ---
diff --git a/patches/frameworks/base/0019-Reintroduce-button-backlight-and-respective-inactivi.patch b/patches/frameworks/base/0017-Reintroduce-button-backlight-and-respective-inactivi.patch
similarity index 96%
rename from patches/frameworks/base/0019-Reintroduce-button-backlight-and-respective-inactivi.patch
rename to patches/frameworks/base/0017-Reintroduce-button-backlight-and-respective-inactivi.patch
index 076a85d..b973400 100644
--- a/patches/frameworks/base/0019-Reintroduce-button-backlight-and-respective-inactivi.patch
+++ b/patches/frameworks/base/0017-Reintroduce-button-backlight-and-respective-inactivi.patch
@@ -1,7 +1,7 @@
-From 2beeca83b6ef8837355d84c5939ee543d6d2701f Mon Sep 17 00:00:00 2001
+From 06f853e0f4d05f28fa2d84a7b8744ba550d627dd Mon Sep 17 00:00:00 2001
 From: Ricardo Cerqueira <cyanogenmod@cerqueira.org>
 Date: Fri, 23 Nov 2012 14:23:16 +0000
-Subject: [PATCH 19/26] Reintroduce button-backlight (and respective inactivity
+Subject: [PATCH 17/24] Reintroduce button-backlight (and respective inactivity
  timeout)
 
 The power manager rewrite from Change I1d7a52e98f0449f76d70bf421f6a7f245957d1d7
@@ -13,6 +13,7 @@
 [RC: Updated to 5.0]
 
 Change-Id: I6094c446e0b8c23f57d30652a3cbd35dee5e821a
+Signed-off-by: Jackeagle <jackeagle102@gmail.com>
 ---
  .../server/display/DisplayPowerController.java       | 11 +++++++++++
  .../android/server/power/PowerManagerService.java    | 12 ++++++++++++
diff --git a/patches/frameworks/base/0020-power-Disable-keyboard-button-lights-while-dozing-dr.patch b/patches/frameworks/base/0018-power-Disable-keyboard-button-lights-while-dozing-dr.patch
similarity index 91%
rename from patches/frameworks/base/0020-power-Disable-keyboard-button-lights-while-dozing-dr.patch
rename to patches/frameworks/base/0018-power-Disable-keyboard-button-lights-while-dozing-dr.patch
index 4996927..4464dc4 100644
--- a/patches/frameworks/base/0020-power-Disable-keyboard-button-lights-while-dozing-dr.patch
+++ b/patches/frameworks/base/0018-power-Disable-keyboard-button-lights-while-dozing-dr.patch
@@ -1,7 +1,7 @@
-From b56a05837a3f080ffad773d7b4f8ad89fe69a697 Mon Sep 17 00:00:00 2001
+From 63233394738bb6292e2f7c1e463ea8ac22a1a3b8 Mon Sep 17 00:00:00 2001
 From: Steve Kondik <steve@cyngn.com>
 Date: Sat, 3 Jan 2015 05:13:26 -0800
-Subject: [PATCH 20/26] power: Disable keyboard/button lights while
+Subject: [PATCH 18/24] power: Disable keyboard/button lights while
  dozing/dreaming
 
  * With hardkeys and doze mode enabled, entering suspend results in
diff --git a/patches/frameworks/base/0021-It-is-okay-not-to-have-wifi-in-SystemUI-on-FDE-lock.patch b/patches/frameworks/base/0019-It-is-okay-not-to-have-wifi-in-SystemUI-on-FDE-lock.patch
similarity index 95%
rename from patches/frameworks/base/0021-It-is-okay-not-to-have-wifi-in-SystemUI-on-FDE-lock.patch
rename to patches/frameworks/base/0019-It-is-okay-not-to-have-wifi-in-SystemUI-on-FDE-lock.patch
index cd4ba84..d915028 100644
--- a/patches/frameworks/base/0021-It-is-okay-not-to-have-wifi-in-SystemUI-on-FDE-lock.patch
+++ b/patches/frameworks/base/0019-It-is-okay-not-to-have-wifi-in-SystemUI-on-FDE-lock.patch
@@ -1,7 +1,7 @@
-From 160cb121fe386b18361771dc6886fee42c6a4552 Mon Sep 17 00:00:00 2001
+From e32a7aee2baed63892967cdf00ff3934e0030613 Mon Sep 17 00:00:00 2001
 From: Pierre-Hugues Husson <phh@phh.me>
 Date: Mon, 20 Aug 2018 22:27:02 +0200
-Subject: [PATCH 21/26] It is okay not to have wifi in SystemUI (on FDE lock)
+Subject: [PATCH 19/24] It is okay not to have wifi in SystemUI (on FDE lock)
 
 ---
  .../src/com/android/settingslib/wifi/WifiTracker.java         | 2 +-
diff --git a/patches/frameworks/base/0022-Don-t-wake-IR-HAL-to-the-infinity-and-beyond.patch b/patches/frameworks/base/0020-Don-t-wake-IR-HAL-to-the-infinity-and-beyond.patch
similarity index 78%
rename from patches/frameworks/base/0022-Don-t-wake-IR-HAL-to-the-infinity-and-beyond.patch
rename to patches/frameworks/base/0020-Don-t-wake-IR-HAL-to-the-infinity-and-beyond.patch
index dbf6464..e56ab1a 100644
--- a/patches/frameworks/base/0022-Don-t-wake-IR-HAL-to-the-infinity-and-beyond.patch
+++ b/patches/frameworks/base/0020-Don-t-wake-IR-HAL-to-the-infinity-and-beyond.patch
@@ -1,18 +1,20 @@
-From c31d457bbc90e1c0dc0a5e21f0591af959b4a92b Mon Sep 17 00:00:00 2001
+From 289ddb298f77979a6c11947f8a7401cc4ca752cf Mon Sep 17 00:00:00 2001
 From: Pierre-Hugues Husson <phh@phh.me>
 Date: Tue, 21 Aug 2018 22:24:02 +0200
-Subject: [PATCH 22/26] Don't wake IR HAL to the infinity and beyond
+Subject: [PATCH 20/24] Don't wake IR HAL to the infinity and beyond
 
+Change-Id: Ic538ab35ec9eb3ede43a277414b00c51a2efaed1
+Signed-off-by: Jackeagle <jackeagle102@gmail.com>
 ---
  services/core/java/com/android/server/ConsumerIrService.java | 5 -----
  services/core/jni/com_android_server_ConsumerIrService.cpp   | 2 +-
  2 files changed, 1 insertion(+), 6 deletions(-)
 
 diff --git a/services/core/java/com/android/server/ConsumerIrService.java b/services/core/java/com/android/server/ConsumerIrService.java
-index c574a03c9a3..82ec033bc30 100644
+index 0a0065a7b55..ead288ea01a 100644
 --- a/services/core/java/com/android/server/ConsumerIrService.java
 +++ b/services/core/java/com/android/server/ConsumerIrService.java
-@@ -46,11 +46,6 @@ public class ConsumerIrService extends IConsumerIrService.Stub {
+@@ -48,11 +48,6 @@ public class ConsumerIrService extends IConsumerIrService.Stub {
          mWakeLock.setReferenceCounted(true);
  
          mHasNativeHal = halOpen();
@@ -21,9 +23,9 @@
 -                throw new RuntimeException("FEATURE_CONSUMER_IR present, but no IR HAL loaded!");
 -            }
 -        }
+         mParameter = AudioSystem.getParameters("audio_capability#irda_support");
      }
  
-     @Override
 diff --git a/services/core/jni/com_android_server_ConsumerIrService.cpp b/services/core/jni/com_android_server_ConsumerIrService.cpp
 index 2ca348b3ae4..148fba9a688 100644
 --- a/services/core/jni/com_android_server_ConsumerIrService.cpp
diff --git a/patches/frameworks/base/0023-Switch-samsung-light-fingerprint-match-to-regexp-to-.patch b/patches/frameworks/base/0021-Switch-samsung-light-fingerprint-match-to-regexp-to-.patch
similarity index 90%
rename from patches/frameworks/base/0023-Switch-samsung-light-fingerprint-match-to-regexp-to-.patch
rename to patches/frameworks/base/0021-Switch-samsung-light-fingerprint-match-to-regexp-to-.patch
index 2a77571..205daa2 100644
--- a/patches/frameworks/base/0023-Switch-samsung-light-fingerprint-match-to-regexp-to-.patch
+++ b/patches/frameworks/base/0021-Switch-samsung-light-fingerprint-match-to-regexp-to-.patch
@@ -1,7 +1,7 @@
-From 2807a9946b7a22c46cd98f10f64a6bc55101b860 Mon Sep 17 00:00:00 2001
+From 015d04e949b09a5687164d6187674e2f951d092f Mon Sep 17 00:00:00 2001
 From: Pierre-Hugues Husson <phh@phh.me>
 Date: Thu, 23 Aug 2018 23:39:16 +0200
-Subject: [PATCH 23/26] Switch samsung light fingerprint match to regexp, to
+Subject: [PATCH 21/24] Switch samsung light fingerprint match to regexp, to
  include Note9
 
 ---
diff --git a/patches/frameworks/base/0024-Add-a-property-toggle-to-enable-high-brightness-rang.patch b/patches/frameworks/base/0022-Add-a-property-toggle-to-enable-high-brightness-rang.patch
similarity index 91%
rename from patches/frameworks/base/0024-Add-a-property-toggle-to-enable-high-brightness-rang.patch
rename to patches/frameworks/base/0022-Add-a-property-toggle-to-enable-high-brightness-rang.patch
index 1aa969b..589f886 100644
--- a/patches/frameworks/base/0024-Add-a-property-toggle-to-enable-high-brightness-rang.patch
+++ b/patches/frameworks/base/0022-Add-a-property-toggle-to-enable-high-brightness-rang.patch
@@ -1,7 +1,7 @@
-From 54e3c7f10257e7fb9419429e6e3bebfccde3aeba Mon Sep 17 00:00:00 2001
+From 904c159a60f4b821cdcca0a55e156a4c9580d9e0 Mon Sep 17 00:00:00 2001
 From: Pierre-Hugues Husson <phh@phh.me>
 Date: Mon, 27 Aug 2018 00:47:13 +0200
-Subject: [PATCH 24/26] Add a property toggle to enable high brightness range
+Subject: [PATCH 22/24] Add a property toggle to enable high brightness range
  on samsung device
 
 ---
diff --git a/patches/frameworks/base/0025-Add-japanese-S9.patch b/patches/frameworks/base/0023-Add-japanese-S9.patch
similarity index 91%
rename from patches/frameworks/base/0025-Add-japanese-S9.patch
rename to patches/frameworks/base/0023-Add-japanese-S9.patch
index f501cb2..10bf4f4 100644
--- a/patches/frameworks/base/0025-Add-japanese-S9.patch
+++ b/patches/frameworks/base/0023-Add-japanese-S9.patch
@@ -1,7 +1,7 @@
-From be5482c01553a3dfc8e2b2e176c9d7f8069d5f53 Mon Sep 17 00:00:00 2001
+From 9874b4e728292d2cea21ffd61ca830544f1cf153 Mon Sep 17 00:00:00 2001
 From: Pierre-Hugues Husson <phh@phh.me>
 Date: Tue, 28 Aug 2018 20:39:26 +0200
-Subject: [PATCH 25/26] Add japanese S9
+Subject: [PATCH 23/24] Add japanese S9
 
 ---
  .../core/java/com/android/server/lights/LightsService.java     | 3 ++-
diff --git a/patches/frameworks/base/0026-Re-order-services-so-that-it-works-even-without-qtag.patch b/patches/frameworks/base/0024-Re-order-services-so-that-it-works-even-without-qtag.patch
similarity index 93%
rename from patches/frameworks/base/0026-Re-order-services-so-that-it-works-even-without-qtag.patch
rename to patches/frameworks/base/0024-Re-order-services-so-that-it-works-even-without-qtag.patch
index bab659b..1e54ef5 100644
--- a/patches/frameworks/base/0026-Re-order-services-so-that-it-works-even-without-qtag.patch
+++ b/patches/frameworks/base/0024-Re-order-services-so-that-it-works-even-without-qtag.patch
@@ -1,7 +1,7 @@
-From 377d3dd22093bbf4f324777af4865b46168496dd Mon Sep 17 00:00:00 2001
+From c14fdbff1137f5e03e9371eeedeea07bfad378de Mon Sep 17 00:00:00 2001
 From: Pierre-Hugues Husson <phh@phh.me>
 Date: Thu, 8 Nov 2018 23:04:03 +0100
-Subject: [PATCH 26/26] Re-order services so that it works even without qtaguid
+Subject: [PATCH 24/24] Re-order services so that it works even without qtaguid
 
 ---
  .../com/android/server/net/NetworkPolicyManagerService.java | 6 +++---
diff --git a/patches/frameworks/compile/mclinker/0001-Revert-Update-FlexLinker.h-to-current-version-of-fle.patch b/patches/frameworks/compile/mclinker/0001-Revert-Update-FlexLinker.h-to-current-version-of-fle.patch
deleted file mode 100644
index d1211e8..0000000
--- a/patches/frameworks/compile/mclinker/0001-Revert-Update-FlexLinker.h-to-current-version-of-fle.patch
+++ /dev/null
@@ -1,241 +0,0 @@
-From e6c2552e60db1443867762dd62f51f9370dfb23d Mon Sep 17 00:00:00 2001
-From: Steven Moreland <smoreland@google.com>
-Date: Thu, 31 May 2018 14:38:54 -0700
-Subject: [PATCH] Revert "Update FlexLinker.h to current version of flex."
-
-This reverts commit a0a36870d5b5a66b7f7d04ea1aa15488b396d42d.
----
- include/mcld/Script/FlexLexer.h | 133 ++++++++++++++------------------
- 1 file changed, 56 insertions(+), 77 deletions(-)
-
-diff --git a/include/mcld/Script/FlexLexer.h b/include/mcld/Script/FlexLexer.h
-index cbc95f9..3514ee1 100644
---- a/include/mcld/Script/FlexLexer.h
-+++ b/include/mcld/Script/FlexLexer.h
-@@ -44,141 +44,122 @@
- // to rename each yyFlexLexer to some other xxFlexLexer.  You then
- // include <FlexLexer.h> in your other sources once per lexer class:
- //
--//      #undef yyFlexLexer
--//      #define yyFlexLexer xxFlexLexer
--//      #include <FlexLexer.h>
-+//	#undef yyFlexLexer
-+//	#define yyFlexLexer xxFlexLexer
-+//	#include <FlexLexer.h>
- //
--//      #undef yyFlexLexer
--//      #define yyFlexLexer zzFlexLexer
--//      #include <FlexLexer.h>
--//      ...
-+//	#undef yyFlexLexer
-+//	#define yyFlexLexer zzFlexLexer
-+//	#include <FlexLexer.h>
-+//	...
- 
- #ifndef __FLEX_LEXER_H
- // Never included before - need to define base class.
- #define __FLEX_LEXER_H
- 
- #include <iostream>
-+#ifndef FLEX_STD
-+#define FLEX_STD std::
-+#endif
- 
- extern "C++" {
--
- struct yy_buffer_state;
- typedef int yy_state_type;
- 
--class FlexLexer
--{
--public:
--  virtual ~FlexLexer()        { }
-+class FlexLexer {
-+ public:
-+  virtual ~FlexLexer() {}
- 
--  const char* YYText() const  { return yytext; }
--  int YYLeng()        const   { return yyleng; }
-+  const char* YYText() const { return yytext; }
-+  int YYLeng() const { return yyleng; }
- 
--  virtual void
--  yy_switch_to_buffer( yy_buffer_state* new_buffer ) = 0;
--  virtual yy_buffer_state* yy_create_buffer( std::istream* s, int size ) = 0;
--  virtual yy_buffer_state* yy_create_buffer( std::istream& s, int size ) = 0;
--  virtual void yy_delete_buffer( yy_buffer_state* b ) = 0;
--  virtual void yyrestart( std::istream* s ) = 0;
--  virtual void yyrestart( std::istream& s ) = 0;
-+  virtual void yy_switch_to_buffer(struct yy_buffer_state* new_buffer) = 0;
-+  virtual struct yy_buffer_state* yy_create_buffer(FLEX_STD istream* s,
-+                                                   int size) = 0;
-+  virtual void yy_delete_buffer(struct yy_buffer_state* b) = 0;
-+  virtual void yyrestart(FLEX_STD istream* s) = 0;
- 
-   virtual int yylex() = 0;
- 
-   // Call yylex with new input/output sources.
--  int yylex( std::istream& new_in, std::ostream& new_out )
--  {
--    switch_streams( new_in, new_out );
--    return yylex();
--  }
--
--  int yylex( std::istream* new_in, std::ostream* new_out = 0)
--  {
--    switch_streams( new_in, new_out );
-+  int yylex(FLEX_STD istream* new_in, FLEX_STD ostream* new_out = 0) {
-+    switch_streams(new_in, new_out);
-     return yylex();
-   }
- 
-   // Switch to new input/output streams.  A nil stream pointer
-   // indicates "keep the current one".
--  virtual void switch_streams( std::istream* new_in,
--                               std::ostream* new_out ) = 0;
--  virtual void switch_streams( std::istream& new_in,
--                               std::ostream& new_out ) = 0;
-+  virtual void switch_streams(FLEX_STD istream* new_in = 0,
-+                              FLEX_STD ostream* new_out = 0) = 0;
- 
--  int lineno() const          { return yylineno; }
-+  int lineno() const { return yylineno; }
- 
--  int debug() const           { return yy_flex_debug; }
--  void set_debug( int flag )  { yy_flex_debug = flag; }
-+  int debug() const { return yy_flex_debug; }
-+  void set_debug(int flag) { yy_flex_debug = flag; }
- 
--protected:
-+ protected:
-   char* yytext;
-   int yyleng;
-   int yylineno;       // only maintained if you use %option yylineno
-   int yy_flex_debug;  // only has effect with -d or "%option debug"
- };
--
- }
--#endif // FLEXLEXER_H
-+#endif  // FLEXLEXER_H
- 
--#if defined(yyFlexLexer) || ! defined(yyFlexLexerOnce)
-+#if defined(yyFlexLexer) || !defined(yyFlexLexerOnce)
- // Either this is the first time through (yyFlexLexerOnce not defined),
- // or this is a repeated include to define a different flavor of
- // yyFlexLexer, as discussed in the flex manual.
--# define yyFlexLexerOnce
-+#define yyFlexLexerOnce
- 
- extern "C++" {
--
- class yyFlexLexer : public FlexLexer {
--public:
-+ public:
-   // arg_yyin and arg_yyout default to the cin and cout, but we
-   // only make that assignment when initializing in yylex().
--  yyFlexLexer( std::istream& arg_yyin, std::ostream& arg_yyout );
--  yyFlexLexer( std::istream* arg_yyin = 0, std::ostream* arg_yyout = 0 );
--private:
--  void ctor_common();
--
--public:
-+  yyFlexLexer(FLEX_STD istream* arg_yyin = 0, FLEX_STD ostream* arg_yyout = 0);
- 
-   virtual ~yyFlexLexer();
- 
--  void yy_switch_to_buffer( yy_buffer_state* new_buffer );
--  yy_buffer_state* yy_create_buffer( std::istream* s, int size );
--  yy_buffer_state* yy_create_buffer( std::istream& s, int size );
--  void yy_delete_buffer( yy_buffer_state* b );
--  void yyrestart( std::istream* s );
--  void yyrestart( std::istream& s );
-+  void yy_switch_to_buffer(struct yy_buffer_state* new_buffer);
-+  struct yy_buffer_state* yy_create_buffer(FLEX_STD istream* s, int size);
-+  void yy_delete_buffer(struct yy_buffer_state* b);
-+  void yyrestart(FLEX_STD istream* s);
- 
--  void yypush_buffer_state( yy_buffer_state* new_buffer );
-+  void yypush_buffer_state(struct yy_buffer_state* new_buffer);
-   void yypop_buffer_state();
- 
-   virtual int yylex();
--  virtual void switch_streams( std::istream& new_in, std::ostream& new_out );
--  virtual void switch_streams( std::istream* new_in = 0, std::ostream* new_out = 0 );
-+  virtual void switch_streams(FLEX_STD istream* new_in,
-+                              FLEX_STD ostream* new_out = 0);
-   virtual int yywrap();
- 
--protected:
--  virtual int LexerInput( char* buf, int max_size );
--  virtual void LexerOutput( const char* buf, int size );
--  virtual void LexerError( const char* msg );
-+ protected:
-+  virtual int LexerInput(char* buf, int max_size);
-+  virtual void LexerOutput(const char* buf, int size);
-+  virtual void LexerError(const char* msg);
- 
--  void yyunput( int c, char* buf_ptr );
-+  void yyunput(int c, char* buf_ptr);
-   int yyinput();
- 
-   void yy_load_buffer_state();
--  void yy_init_buffer( yy_buffer_state* b, std::istream& s );
--  void yy_flush_buffer( yy_buffer_state* b );
-+  void yy_init_buffer(struct yy_buffer_state* b, FLEX_STD istream* s);
-+  void yy_flush_buffer(struct yy_buffer_state* b);
- 
-   int yy_start_stack_ptr;
-   int yy_start_stack_depth;
-   int* yy_start_stack;
- 
--  void yy_push_state( int new_state );
-+  void yy_push_state(int new_state);
-   void yy_pop_state();
-   int yy_top_state();
- 
-   yy_state_type yy_get_previous_state();
--  yy_state_type yy_try_NUL_trans( yy_state_type current_state );
-+  yy_state_type yy_try_NUL_trans(yy_state_type current_state);
-   int yy_get_next_buffer();
- 
--  std::istream yyin;  // input source for default LexerInput
--  std::ostream yyout; // output sink for default LexerOutput
-+  FLEX_STD istream* yyin;   // input source for default LexerInput
-+  FLEX_STD ostream* yyout;  // output sink for default LexerOutput
- 
-   // yy_hold_char holds the character lost when yytext is formed.
-   char yy_hold_char;
-@@ -189,17 +170,16 @@ protected:
-   // Points to current character in buffer.
-   char* yy_c_buf_p;
- 
--  int yy_init;                // whether we need to initialize
--  int yy_start;               // start state number
-+  int yy_init;   // whether we need to initialize
-+  int yy_start;  // start state number
- 
-   // Flag which is used to allow yywrap()'s to do buffer switches
-   // instead of setting up a fresh yyin.  A bit of a hack ...
-   int yy_did_buffer_switch_on_eof;
- 
--
--  size_t yy_buffer_stack_top; /**< index of top of stack. */
--  size_t yy_buffer_stack_max; /**< capacity of stack. */
--  yy_buffer_state ** yy_buffer_stack; /**< Stack as an array. */
-+  size_t yy_buffer_stack_top;               /**< index of top of stack. */
-+  size_t yy_buffer_stack_max;               /**< capacity of stack. */
-+  struct yy_buffer_state** yy_buffer_stack; /**< Stack as an array. */
-   void yyensure_buffer_stack(void);
- 
-   // The following are not always needed, but may be depending
-@@ -223,7 +203,6 @@ protected:
-   int yy_more_offset;
-   int yy_prev_more_offset;
- };
--
- }
- 
- #endif  // yyFlexLexer || ! yyFlexLexerOnce
--- 
-2.17.1
-
diff --git a/patches/frameworks/native/0004-Enable-fallback-to-old-ro.sf.hwrotation-property.patch b/patches/frameworks/native/0001-Enable-fallback-to-old-ro.sf.hwrotation-property.patch
similarity index 85%
rename from patches/frameworks/native/0004-Enable-fallback-to-old-ro.sf.hwrotation-property.patch
rename to patches/frameworks/native/0001-Enable-fallback-to-old-ro.sf.hwrotation-property.patch
index 658e08a..8a00c8e 100644
--- a/patches/frameworks/native/0004-Enable-fallback-to-old-ro.sf.hwrotation-property.patch
+++ b/patches/frameworks/native/0001-Enable-fallback-to-old-ro.sf.hwrotation-property.patch
@@ -1,17 +1,17 @@
-From c1d5c4623ee96cc37299a7da3034b8e8a1e62e9d Mon Sep 17 00:00:00 2001
+From ab72887deb1b7b297efc3bb26a62e23069a42081 Mon Sep 17 00:00:00 2001
 From: phh <phh@phh.me>
 Date: Wed, 22 Aug 2018 08:57:52 +0000
-Subject: [PATCH 4/4] Enable fallback to old ro.sf.hwrotation property
+Subject: [PATCH] Enable fallback to old ro.sf.hwrotation property
 
 ---
  services/surfaceflinger/SurfaceFlinger.cpp | 18 ++++++++++++++++++
  1 file changed, 18 insertions(+)
 
 diff --git a/services/surfaceflinger/SurfaceFlinger.cpp b/services/surfaceflinger/SurfaceFlinger.cpp
-index 729671d..f5bbae7 100644
+index b2d4637f1..22b13a578 100644
 --- a/services/surfaceflinger/SurfaceFlinger.cpp
 +++ b/services/surfaceflinger/SurfaceFlinger.cpp
-@@ -291,6 +291,24 @@ SurfaceFlinger::SurfaceFlinger() : SurfaceFlinger(SkipInitialization) {
+@@ -292,6 +292,24 @@ SurfaceFlinger::SurfaceFlinger() : SurfaceFlinger(SkipInitialization) {
              mPrimaryDisplayOrientation = DisplayState::eOrientationDefault;
              break;
      }
@@ -37,5 +37,5 @@
  
      mPrimaryDispSync.init(SurfaceFlinger::hasSyncFramework, SurfaceFlinger::dispSyncPresentTimeOffset);
 -- 
-2.7.4
+2.17.1
 
diff --git a/patches/frameworks/opt/net/wifi/0001-Revert-SupplicantManager-Remove-ensure_config_file_e.patch b/patches/frameworks/opt/net/wifi/0001-Revert-SupplicantManager-Remove-ensure_config_file_e.patch
index 48be182..67490f4 100644
--- a/patches/frameworks/opt/net/wifi/0001-Revert-SupplicantManager-Remove-ensure_config_file_e.patch
+++ b/patches/frameworks/opt/net/wifi/0001-Revert-SupplicantManager-Remove-ensure_config_file_e.patch
@@ -1,4 +1,4 @@
-From 327d25dd7f34dbf3218ad989d4de538515d3c189 Mon Sep 17 00:00:00 2001
+From 577b3801db3060a5ceff1171569b17e2c7a6d299 Mon Sep 17 00:00:00 2001
 From: Pierre-Hugues Husson <phh@phh.me>
 Date: Tue, 14 Aug 2018 16:59:12 +0200
 Subject: [PATCH 1/3] Revert "SupplicantManager: Remove
@@ -6,11 +6,11 @@
 
 This reverts commit f61dc8cd7dadda5741d6e4a1bb6b576ba89cc24b.
 ---
- libwifi_system/supplicant_manager.cpp | 97 +++++++++++++++++++++++++++++++++++
+ libwifi_system/supplicant_manager.cpp | 97 +++++++++++++++++++++++++++
  1 file changed, 97 insertions(+)
 
 diff --git a/libwifi_system/supplicant_manager.cpp b/libwifi_system/supplicant_manager.cpp
-index 5667648..be0c33a 100644
+index 5667648b3..be0c33a8a 100644
 --- a/libwifi_system/supplicant_manager.cpp
 +++ b/libwifi_system/supplicant_manager.cpp
 @@ -33,7 +33,89 @@ namespace wifi_system {
@@ -126,5 +126,5 @@
     * Get a reference to the status property, so we can distinguish
     * the case where it goes stopped => running => stopped (i.e.,
 -- 
-2.7.4
+2.17.1
 
diff --git a/patches/frameworks/opt/net/wifi/0002-Start-supplicant-later.patch b/patches/frameworks/opt/net/wifi/0002-Start-supplicant-later.patch
index c841f21..2f7aa0e 100644
--- a/patches/frameworks/opt/net/wifi/0002-Start-supplicant-later.patch
+++ b/patches/frameworks/opt/net/wifi/0002-Start-supplicant-later.patch
@@ -1,15 +1,15 @@
-From a891832a0b7aa42978630532cb5bba2c45e7633d Mon Sep 17 00:00:00 2001
+From 5427620c157f9ef0c6948c31868f273d8ca27b74 Mon Sep 17 00:00:00 2001
 From: Pierre-Hugues Husson <phh@phh.me>
 Date: Wed, 15 Aug 2018 00:04:45 +0200
 Subject: [PATCH 2/3] Start supplicant later
 
 Change-Id: I6a67baad486162415840006711fb6d8dbf96a66a
 ---
- service/java/com/android/server/wifi/WifiNative.java | 16 ++++++++++------
+ .../java/com/android/server/wifi/WifiNative.java | 16 ++++++++++------
  1 file changed, 10 insertions(+), 6 deletions(-)
 
 diff --git a/service/java/com/android/server/wifi/WifiNative.java b/service/java/com/android/server/wifi/WifiNative.java
-index 0f78587..18f06f7 100644
+index bc599c141..eb5e11aca 100644
 --- a/service/java/com/android/server/wifi/WifiNative.java
 +++ b/service/java/com/android/server/wifi/WifiNative.java
 @@ -332,13 +332,15 @@ public class WifiNative {
@@ -63,5 +63,5 @@
                  Log.e(TAG, "Failed to setup iface in wificond on " + iface);
                  teardownInterface(iface.name);
 -- 
-2.7.4
+2.17.1
 
diff --git a/patches/frameworks/opt/net/wifi/0003-Support-hostap-on-O-O-MR1-vendors.patch b/patches/frameworks/opt/net/wifi/0003-Support-hostap-on-O-O-MR1-vendors.patch
index d48b353..33b17a7 100644
--- a/patches/frameworks/opt/net/wifi/0003-Support-hostap-on-O-O-MR1-vendors.patch
+++ b/patches/frameworks/opt/net/wifi/0003-Support-hostap-on-O-O-MR1-vendors.patch
@@ -1,4 +1,4 @@
-From 0ff44cc65aa9dc16ff9f0301142b9b537b4912f8 Mon Sep 17 00:00:00 2001
+From 9aaa142521aabfd63d31abdf1da2aea4d07813a1 Mon Sep 17 00:00:00 2001
 From: Pierre-Hugues Husson <pierre-hugues.husson@softathome.com>
 Date: Tue, 18 Sep 2018 17:05:07 +0200
 Subject: [PATCH 3/3] Support hostap on O/O-MR1 vendors
@@ -11,12 +11,12 @@
 Now, it is a requirement to be supported, so most(all?) HALs don't
 support it. force stop/start for every reconfiguration
 ---
- .../com/android/server/wifi/HalDeviceManager.java  | 22 ++++++++++++++++++++--
- .../java/com/android/server/wifi/WifiNative.java   | 15 ++++++++++++++-
+ .../android/server/wifi/HalDeviceManager.java | 22 +++++++++++++++++--
+ .../com/android/server/wifi/WifiNative.java   | 15 ++++++++++++-
  2 files changed, 34 insertions(+), 3 deletions(-)
 
 diff --git a/service/java/com/android/server/wifi/HalDeviceManager.java b/service/java/com/android/server/wifi/HalDeviceManager.java
-index 3c61217..68fc9cc 100644
+index 3c61217d7..68fc9ccfa 100644
 --- a/service/java/com/android/server/wifi/HalDeviceManager.java
 +++ b/service/java/com/android/server/wifi/HalDeviceManager.java
 @@ -63,8 +63,8 @@ import java.util.Set;
@@ -63,7 +63,7 @@
      }
  
 diff --git a/service/java/com/android/server/wifi/WifiNative.java b/service/java/com/android/server/wifi/WifiNative.java
-index 18f06f7..3680f14 100644
+index eb5e11aca..af8ccc8d9 100644
 --- a/service/java/com/android/server/wifi/WifiNative.java
 +++ b/service/java/com/android/server/wifi/WifiNative.java
 @@ -692,8 +692,21 @@ public class WifiNative {
@@ -90,5 +90,5 @@
                  Log.i(TAG, "Vendor Hal not supported, ignoring createApIface.");
                  return handleIfaceCreationWhenVendorHalNotSupported(iface);
 -- 
-2.7.4
+2.17.1
 
diff --git a/patches/frameworks/opt/telephony/0001-Add-route-to-gateway-on-null-netmask.patch b/patches/frameworks/opt/telephony/0001-Add-route-to-gateway-on-null-netmask.patch
index 35e2e0e..4e6bbcb 100644
--- a/patches/frameworks/opt/telephony/0001-Add-route-to-gateway-on-null-netmask.patch
+++ b/patches/frameworks/opt/telephony/0001-Add-route-to-gateway-on-null-netmask.patch
@@ -1,4 +1,4 @@
-From 3c8c5e2125a845d6868be27c389a5cfb5200e187 Mon Sep 17 00:00:00 2001
+From 0bd942753da9a6c8d7207afb1e0354a9873ddb69 Mon Sep 17 00:00:00 2001
 From: Pierre-Hugues Husson <phh@phh.me>
 Date: Thu, 16 Aug 2018 22:12:46 +0200
 Subject: [PATCH 1/2] Add route to gateway on null netmask
@@ -7,11 +7,11 @@
 
 Change-Id: I8133da8e8f5203666684100009ba658528a02e94
 ---
- .../telephony/dataconnection/DataConnection.java        | 17 +++++++++++++++++
+ .../dataconnection/DataConnection.java          | 17 +++++++++++++++++
  1 file changed, 17 insertions(+)
 
 diff --git a/src/java/com/android/internal/telephony/dataconnection/DataConnection.java b/src/java/com/android/internal/telephony/dataconnection/DataConnection.java
-index 0696aa9..11947a5 100644
+index 0696aa931..11947a5af 100644
 --- a/src/java/com/android/internal/telephony/dataconnection/DataConnection.java
 +++ b/src/java/com/android/internal/telephony/dataconnection/DataConnection.java
 @@ -24,6 +24,7 @@ import android.content.Context;
@@ -46,5 +46,5 @@
                      // this indicates a point-to-point interface.
                      linkProperties.addRoute(new RouteInfo(gateway));
 -- 
-2.7.4
+2.17.1
 
diff --git a/patches/frameworks/opt/telephony/0002-Allow-LocaleTracker-to-work-even-if-wifi-is-not-up-F.patch b/patches/frameworks/opt/telephony/0002-Allow-LocaleTracker-to-work-even-if-wifi-is-not-up-F.patch
index 5ea34d1..a6069b0 100644
--- a/patches/frameworks/opt/telephony/0002-Allow-LocaleTracker-to-work-even-if-wifi-is-not-up-F.patch
+++ b/patches/frameworks/opt/telephony/0002-Allow-LocaleTracker-to-work-even-if-wifi-is-not-up-F.patch
@@ -1,4 +1,4 @@
-From a04735c181e6212d3a31c47e7b984163a5df0a70 Mon Sep 17 00:00:00 2001
+From d4c7fb7f3d8193ea8680942169f396e93ccd71bf Mon Sep 17 00:00:00 2001
 From: Pierre-Hugues Husson <phh@phh.me>
 Date: Mon, 20 Aug 2018 22:39:39 +0200
 Subject: [PATCH 2/2] Allow LocaleTracker to work even if wifi is not up (FDE)
@@ -9,7 +9,7 @@
  1 file changed, 2 insertions(+), 2 deletions(-)
 
 diff --git a/src/java/com/android/internal/telephony/LocaleTracker.java b/src/java/com/android/internal/telephony/LocaleTracker.java
-index 996e288..263d7e5 100644
+index 996e288dc..263d7e572 100644
 --- a/src/java/com/android/internal/telephony/LocaleTracker.java
 +++ b/src/java/com/android/internal/telephony/LocaleTracker.java
 @@ -408,8 +408,8 @@ public class LocaleTracker extends Handler {
@@ -24,5 +24,5 @@
      }
  
 -- 
-2.7.4
+2.17.1
 
diff --git a/patches/packages/apps/Settings/0001-Act-as-usb-device-when-there-is-no-hal-but-we-believ.patch b/patches/packages/apps/Settings/0001-Act-as-usb-device-when-there-is-no-hal-but-we-believ.patch
index 5e4b63c..78da58c 100644
--- a/patches/packages/apps/Settings/0001-Act-as-usb-device-when-there-is-no-hal-but-we-believ.patch
+++ b/patches/packages/apps/Settings/0001-Act-as-usb-device-when-there-is-no-hal-but-we-believ.patch
@@ -1,4 +1,4 @@
-From 615f294435da9da1f17ca4c236edccef2f028c53 Mon Sep 17 00:00:00 2001
+From 234564efdde6678caebcbdf7c7ba989f6b66cb6e Mon Sep 17 00:00:00 2001
 From: Pierre-Hugues Husson <phh@phh.me>
 Date: Tue, 14 Aug 2018 21:48:19 +0200
 Subject: [PATCH] Act as usb device when there is no hal, but we believe we are
@@ -6,11 +6,11 @@
 
 Change-Id: I036090738525fd8cc63534d52d02ab1852950a7d
 ---
- .../connecteddevice/usb/UsbConnectionBroadcastReceiver.java       | 8 ++++++++
+ .../usb/UsbConnectionBroadcastReceiver.java               | 8 ++++++++
  1 file changed, 8 insertions(+)
 
 diff --git a/src/com/android/settings/connecteddevice/usb/UsbConnectionBroadcastReceiver.java b/src/com/android/settings/connecteddevice/usb/UsbConnectionBroadcastReceiver.java
-index 1b52535..fdd183b 100644
+index 1b525352d0..fdd183b53d 100644
 --- a/src/com/android/settings/connecteddevice/usb/UsbConnectionBroadcastReceiver.java
 +++ b/src/com/android/settings/connecteddevice/usb/UsbConnectionBroadcastReceiver.java
 @@ -77,6 +77,14 @@ public class UsbConnectionBroadcastReceiver extends BroadcastReceiver implements
@@ -29,5 +29,5 @@
          } else if (UsbManager.ACTION_USB_PORT_CHANGED.equals(intent.getAction())) {
              UsbPortStatus portStatus = intent.getExtras()
 -- 
-2.7.4
+2.17.1
 
diff --git a/patches/packages/apps/Settings/0001-Add-Bliss-Bass-branding.patch b/patches/packages/apps/Settings/0001-Add-Bliss-Bass-branding.patch
deleted file mode 100644
index 7f213cb..0000000
--- a/patches/packages/apps/Settings/0001-Add-Bliss-Bass-branding.patch
+++ /dev/null
@@ -1,136 +0,0 @@
-From 1b1308f55cf5b204952e8f9502906024237e157e Mon Sep 17 00:00:00 2001
-From: Jon West <electrikjesus@gmail.com>
-Date: Sat, 17 Nov 2018 14:26:28 -0500
-Subject: [PATCH] Add Bliss-Bass branding
-
-Change-Id: Id6e8a26fa02d75f5832aa07a6823bdcdd184b410
----
- res/drawable/ic_bliss.xml | 38 ++++++++++++++++++++++----------------
- 1 file changed, 22 insertions(+), 16 deletions(-)
-
-diff --git a/res/drawable/ic_bliss.xml b/res/drawable/ic_bliss.xml
-index d5e41912e3..8ff131189f 100644
---- a/res/drawable/ic_bliss.xml
-+++ b/res/drawable/ic_bliss.xml
-@@ -21,95 +21,101 @@
-         android:fillAlpha="1.00"
-         android:strokeAlpha="1.00"
-         android:strokeWidth="1"
--        android:pathData="M 503.74 97.02 C 505.30 82.03 509.07 66.82 517.92 54.36 C 525.18 63.58 529.76 74.68 531.84 86.19 C 532.55 90.46 534.08 95.09 532.11 99.23 C 528.92 106.74 525.14 114.04 523.14 121.99 C 520.21 130.06 519.09 138.59 517.43 146.98 C 515.27 134.45 512.65 121.89 507.60 110.17 C 505.96 105.92 503.21 101.77 503.74 97.02 Z" />
-+        android:pathData="M 497.23 84.82 C 499.14 73.69 502.97 62.72 509.67 53.53 C 518.86 64.60 523.44 78.86 524.75 93.03 C 525.15 96.57 523.10 99.64 521.71 102.72 C 515.29 115.96 511.67 130.37 509.51 144.88 C 507.28 137.93 506.74 130.59 504.62 123.62 C 502.74 115.91 499.12 108.81 496.31 101.44 C 494.87 95.96 496.33 90.27 497.23 84.82 Z" />
-     <path
-         android:fillColor="?android:attr/colorAccent"
-         android:fillAlpha="1.00"
-         android:strokeAlpha="1.00"
-         android:strokeWidth="1"
--        android:pathData="M 480.10 128.05 C 475.96 110.06 476.03 91.26 479.51 73.16 C 496.70 88.34 507.08 109.98 512.17 132.06 C 515.34 144.99 515.98 158.32 516.37 171.57 C 512.69 166.91 508.92 162.32 505.41 157.52 C 498.95 148.49 490.99 140.69 483.26 132.77 C 481.97 131.38 480.55 129.95 480.10 128.05 Z" />
-+        android:pathData="M 472.60 127.47 C 468.02 109.53 467.97 90.56 471.73 72.44 C 475.87 75.18 479.11 79.00 482.18 82.84 C 501.30 107.17 508.64 138.84 508.22 169.33 C 501.90 163.00 497.57 155.06 491.59 148.45 C 487.35 143.66 483.15 138.81 478.52 134.39 C 476.40 132.22 473.94 130.24 472.60 127.47 Z" />
-     <path
-         android:fillColor="?android:attr/colorAccent"
-         android:fillAlpha="1.00"
-         android:strokeAlpha="1.00"
-         android:strokeWidth="1"
--        android:pathData="M 537.98 93.99 C 543.03 86.51 548.21 78.97 555.26 73.19 C 558.51 90.53 559.09 108.62 555.23 125.91 C 554.56 131.09 549.84 134.03 546.65 137.65 C 536.14 147.81 527.86 159.93 518.96 171.45 C 519.00 163.25 518.60 154.99 519.81 146.84 C 522.48 128.31 528.17 110.02 537.98 93.99 Z" />
-+        android:pathData="M 521.67 107.45 C 527.61 94.23 535.49 81.40 546.79 72.11 C 549.26 86.21 550.05 100.68 548.41 114.92 C 547.40 120.90 547.14 127.93 542.10 132.14 C 530.19 142.93 521.13 156.30 511.01 168.67 C 509.18 147.78 513.63 126.69 521.67 107.45 Z" />
-     <path
-         android:fillColor="?android:attr/colorAccent"
-         android:fillAlpha="1.00"
-         android:strokeAlpha="1.00"
-         android:strokeWidth="1"
--        android:pathData="M 445.28 77.61 C 454.99 81.44 463.24 88.05 470.51 95.42 C 472.23 97.32 474.94 98.97 474.72 101.90 C 475.17 110.30 475.90 118.68 477.18 127.00 C 471.02 122.22 464.60 117.77 457.78 113.96 C 455.58 112.73 453.15 111.40 452.11 108.97 C 447.84 99.09 445.24 88.41 445.28 77.61 Z" />
-+        android:pathData="M 437.75 76.56 C 449.00 80.31 457.85 88.70 465.88 97.09 C 467.32 98.34 467.24 100.31 467.28 102.04 C 467.40 109.91 468.96 117.66 469.39 125.51 C 463.79 121.42 458.38 117.00 452.22 113.77 C 449.34 112.15 445.92 110.68 444.57 107.43 C 440.37 97.69 437.93 87.18 437.75 76.56 Z" />
-     <path
-         android:fillColor="?android:attr/colorAccent"
-         android:fillAlpha="1.00"
-         android:strokeAlpha="1.00"
-         android:strokeWidth="1"
--        android:pathData="M 561.34 98.41 C 569.18 89.53 578.78 82.17 589.63 77.36 C 589.44 89.05 586.76 100.88 581.19 111.19 C 573.23 116.30 565.00 121.06 557.61 127.03 C 558.74 119.40 559.66 111.73 559.87 104.01 C 559.95 102.08 559.84 99.88 561.34 98.41 Z" />
-+        android:pathData="M 556.16 93.19 C 563.07 86.06 571.29 80.13 580.52 76.40 C 580.76 85.83 578.57 95.17 575.11 103.89 C 573.93 106.84 572.89 110.32 569.72 111.71 C 562.21 115.50 555.71 120.86 548.79 125.55 C 549.33 120.03 550.31 114.57 550.82 109.06 C 551.15 105.79 550.47 102.45 551.20 99.22 C 552.16 96.75 554.39 95.09 556.16 93.19 Z" />
-     <path
-         android:fillColor="?android:attr/colorAccent"
-         android:fillAlpha="1.00"
-         android:strokeAlpha="1.00"
-         android:strokeWidth="1"
--        android:pathData="M 422.90 105.18 C 429.32 106.57 435.91 107.35 442.11 109.62 C 460.13 115.85 475.65 127.64 488.64 141.39 C 498.42 151.10 506.13 162.59 514.31 173.63 C 496.74 172.74 478.94 169.76 462.94 162.17 C 451.67 156.89 444.18 146.44 438.07 136.00 C 432.03 126.23 427.63 115.60 422.90 105.18 Z" />
-+        android:pathData="M 415.82 103.66 C 428.78 105.44 441.42 109.68 452.72 116.30 C 474.84 129.71 491.87 149.98 506.07 171.29 C 492.27 171.05 478.47 168.93 465.42 164.36 C 454.82 161.05 444.75 154.94 438.26 145.77 C 428.91 132.83 421.89 118.37 415.82 103.66 Z" />
-     <path
-         android:fillColor="?android:attr/colorAccent"
-         android:fillAlpha="1.00"
-         android:strokeAlpha="1.00"
-         android:strokeWidth="1"
--        android:pathData="M 595.01 108.81 C 600.52 107.06 606.27 106.33 611.93 105.21 C 604.56 122.44 596.29 139.63 583.84 153.82 C 574.55 162.67 561.97 166.83 549.75 169.74 C 540.15 171.90 530.37 173.01 520.56 173.63 C 531.26 157.70 543.62 142.80 558.00 130.06 C 568.85 120.73 581.35 113.18 595.01 108.81 Z" />
-+        android:pathData="M 594.90 105.16 C 597.42 104.67 599.94 104.21 602.47 103.79 C 595.93 120.15 588.02 136.20 576.82 149.91 C 571.10 156.73 562.90 160.79 554.68 163.78 C 541.09 168.52 526.72 170.99 512.34 171.27 C 522.69 155.40 535.12 140.91 549.23 128.28 C 562.25 117.05 577.81 108.16 594.90 105.16 Z" />
-     <path
-         android:fillColor="?android:attr/colorAccent"
-         android:fillAlpha="1.00"
-         android:strokeAlpha="1.00"
-         android:strokeWidth="1"
--        android:pathData="M 282.28 83.43 C 286.74 81.73 291.78 86.24 290.61 90.85 C 289.87 95.69 283.12 97.76 279.80 94.16 C 276.31 91.07 277.83 84.70 282.28 83.43 Z" />
-+        android:pathData="M 277.39 69.58 C 282.83 67.86 288.68 73.48 286.65 78.96 C 285.34 84.70 276.90 86.24 273.47 81.58 C 269.93 77.67 272.30 70.69 277.39 69.58 Z" />
-     <path
-         android:fillColor="?android:attr/colorAccent"
-         android:fillAlpha="1.00"
-         android:strokeAlpha="1.00"
-         android:strokeWidth="1"
--        android:pathData="M 201.37 83.94 C 204.46 83.81 207.55 83.81 210.65 83.95 C 210.44 93.82 210.94 103.70 210.20 113.55 C 214.48 107.67 221.75 104.27 229.03 105.00 C 237.95 105.46 245.34 112.37 248.57 120.37 C 253.19 131.78 249.66 146.25 239.30 153.31 C 230.32 159.74 216.53 157.52 210.22 148.36 C 210.21 150.72 210.19 153.09 210.19 155.45 C 207.26 155.46 204.34 155.46 201.41 155.46 C 201.36 131.62 201.45 107.78 201.37 83.94 M 222.43 113.65 C 208.50 116.80 206.10 137.92 217.03 145.86 C 222.08 149.57 229.60 149.56 234.58 145.72 C 243.86 138.75 243.66 122.58 234.16 115.88 C 230.82 113.46 226.42 112.82 222.43 113.65 Z" />
-+        android:pathData="M 185.01 70.25 C 188.40 70.24 191.80 70.25 195.20 70.26 C 195.89 81.23 195.33 92.22 195.24 103.20 C 201.62 95.21 213.02 92.12 222.62 95.50 C 233.14 99.33 240.10 110.07 241.09 120.99 C 242.18 132.71 236.54 145.30 226.04 151.10 C 215.99 156.64 202.27 153.90 195.26 144.76 C 195.20 147.17 195.07 149.59 194.95 152.00 C 191.55 152.00 188.15 152.00 184.75 151.99 C 184.80 124.75 184.58 97.49 185.01 70.25 M 208.43 104.54 C 195.49 107.90 191.52 125.22 198.17 135.73 C 202.67 144.26 215.08 146.66 222.60 140.75 C 229.36 135.89 231.28 126.68 229.70 118.88 C 228.31 109.35 217.95 101.69 208.43 104.54 Z" />
-     <path
-         android:fillColor="?android:attr/colorAccent"
-         android:fillAlpha="1.00"
-         android:strokeAlpha="1.00"
-         android:strokeWidth="1"
--        android:pathData="M 258.46 83.95 C 261.54 83.83 264.62 83.83 267.71 83.89 C 267.63 107.77 267.84 131.66 267.60 155.53 C 264.57 155.45 261.54 155.44 258.51 155.46 C 258.46 131.62 258.56 107.79 258.46 83.95 Z" />
-+        android:pathData="M 250.01 70.25 C 253.42 70.25 256.82 70.25 260.23 70.25 C 260.39 72.16 260.51 74.07 260.52 75.99 C 260.47 101.33 260.53 126.67 260.49 152.00 C 256.99 152.00 253.50 152.00 250.00 152.00 C 250.00 124.75 249.99 97.50 250.01 70.25 Z" />
-     <path
-         android:fillColor="?android:attr/colorAccent"
-         android:fillAlpha="1.00"
-         android:strokeAlpha="1.00"
-         android:strokeWidth="1"
--        android:pathData="M 303.65 109.69 C 313.75 101.43 331.87 103.87 337.60 116.25 C 334.90 117.38 332.20 118.50 329.50 119.63 C 325.81 112.72 315.07 110.68 309.59 116.50 C 307.53 118.83 308.91 122.41 311.60 123.50 C 318.87 126.83 327.72 126.71 334.03 132.13 C 337.40 134.60 338.37 139.04 338.30 142.99 C 337.89 148.97 332.92 153.56 327.57 155.53 C 321.39 157.72 314.28 157.60 308.33 154.72 C 303.52 152.25 299.91 147.95 297.71 143.06 C 300.42 141.88 303.14 140.72 305.86 139.58 C 307.79 143.54 310.94 147.21 315.38 148.32 C 319.85 149.41 325.51 148.60 328.32 144.60 C 330.18 141.33 327.45 137.78 324.40 136.61 C 317.51 133.73 309.33 133.66 303.39 128.67 C 297.64 124.02 297.88 114.24 303.65 109.69 Z" />
-+        android:pathData="M 627.85 70.26 C 631.31 70.24 634.78 70.24 638.26 70.26 C 638.52 81.12 638.28 91.96 638.23 102.83 C 643.24 97.37 650.50 93.73 658.02 94.21 C 666.52 94.07 674.30 99.29 678.78 106.28 C 687.24 118.65 685.38 137.10 674.20 147.21 C 666.89 154.51 654.82 155.91 645.76 151.21 C 642.82 149.59 640.43 147.19 637.99 144.93 C 637.99 147.29 638.00 149.64 638.00 152.00 C 634.58 152.00 631.16 152.00 627.75 151.99 C 627.81 124.75 627.62 97.50 627.85 70.26 M 651.32 104.53 C 640.21 107.43 635.68 120.77 638.92 130.97 C 641.18 140.90 653.12 147.10 662.42 142.56 C 674.48 137.01 676.55 119.33 668.18 109.78 C 664.05 105.21 657.36 102.77 651.32 104.53 Z" />
-     <path
-         android:fillColor="?android:attr/colorAccent"
-         android:fillAlpha="1.00"
-         android:strokeAlpha="1.00"
-         android:strokeWidth="1"
--        android:pathData="M 348.96 109.86 C 359.01 101.39 377.34 103.79 383.09 116.25 C 380.39 117.39 377.69 118.51 374.98 119.61 C 371.33 112.77 360.79 110.73 355.24 116.33 C 353.18 118.45 354.10 122.10 356.74 123.29 C 363.91 126.84 372.75 126.57 379.15 131.82 C 382.80 134.28 383.90 138.95 383.79 143.10 C 383.37 148.90 378.57 153.38 373.41 155.40 C 367.02 157.77 359.58 157.65 353.47 154.53 C 348.83 152.01 345.35 147.83 343.21 143.05 C 345.92 141.89 348.64 140.72 351.36 139.57 C 353.24 143.40 356.20 146.96 360.44 148.21 C 364.99 149.48 370.77 148.72 373.76 144.72 C 375.61 141.63 373.25 138.03 370.30 136.80 C 363.39 133.73 355.13 133.77 349.07 128.82 C 343.20 124.31 343.31 114.51 348.96 109.86 Z" />
-+        android:pathData="M 299.95 100.99 C 304.70 95.76 312.14 94.07 318.96 94.21 C 327.76 94.14 336.68 99.02 340.51 107.11 C 337.47 108.63 334.34 109.95 331.16 111.16 C 326.71 104.16 316.33 101.27 309.46 106.46 C 306.54 108.17 306.39 112.85 309.34 114.61 C 317.13 119.11 326.90 118.59 334.42 123.75 C 339.49 126.89 342.15 133.28 340.99 139.12 C 340.00 145.01 335.14 149.48 329.87 151.78 C 321.63 155.12 311.68 154.69 304.14 149.80 C 299.79 146.89 295.95 142.70 294.77 137.47 C 297.80 136.27 300.81 135.03 303.82 133.78 C 306.29 137.86 309.34 142.11 314.12 143.57 C 318.80 144.79 324.32 144.40 328.15 141.19 C 330.77 139.25 330.78 134.70 328.16 132.76 C 324.45 129.40 319.27 128.79 314.62 127.55 C 309.24 126.23 303.53 124.53 299.60 120.38 C 294.69 115.11 295.12 106.17 299.95 100.99 Z" />
-     <path
-         android:fillColor="?android:attr/colorAccent"
-         android:fillAlpha="1.00"
-         android:strokeAlpha="1.00"
-         android:strokeWidth="1"
--        android:pathData="M 664.75 114.70 C 668.51 106.96 678.14 103.07 686.21 106.17 C 685.11 109.08 684.74 112.44 683.09 115.03 C 680.10 114.88 676.99 113.96 674.09 115.16 C 668.93 117.12 665.27 122.42 665.15 127.93 C 665.01 137.10 665.15 146.28 665.10 155.45 C 662.03 155.46 658.96 155.46 655.90 155.45 C 655.90 139.12 655.87 122.78 655.92 106.45 C 658.84 106.45 661.76 106.45 664.69 106.45 C 664.69 109.20 664.70 111.95 664.75 114.70 Z" />
-+        android:pathData="M 353.42 99.51 C 365.17 90.17 385.54 93.08 392.40 107.07 C 389.37 108.59 386.26 109.95 383.09 111.16 C 378.65 104.21 368.31 101.25 361.46 106.43 C 359.10 107.59 359.20 110.39 358.89 112.62 C 363.84 117.44 370.99 117.90 377.28 119.80 C 382.19 121.18 387.22 123.38 390.37 127.56 C 394.57 133.49 393.84 142.53 388.29 147.38 C 377.56 157.59 358.05 155.67 349.43 143.64 C 348.05 141.80 347.32 139.61 346.72 137.42 C 349.73 136.26 352.71 135.03 355.71 133.82 C 357.96 137.53 360.67 141.36 364.79 143.13 C 369.80 144.98 375.94 144.57 380.17 141.11 C 382.64 139.05 382.62 134.89 380.19 132.81 C 376.65 129.55 371.70 128.84 367.21 127.73 C 361.43 126.41 355.27 124.64 351.20 120.05 C 345.98 114.20 347.34 104.25 353.42 99.51 Z" />
-     <path
-         android:fillColor="?android:attr/colorAccent"
-         android:fillAlpha="1.00"
-         android:strokeAlpha="1.00"
-         android:strokeWidth="1"
--        android:pathData="M 705.51 105.57 C 713.31 103.87 722.10 105.41 728.10 110.92 C 739.49 120.70 739.72 140.54 728.56 150.57 C 719.12 159.58 702.37 159.09 693.48 149.53 C 686.72 142.62 685.06 131.95 687.53 122.84 C 689.80 114.39 696.92 107.40 705.51 105.57 M 708.39 113.62 C 695.28 116.20 691.62 134.67 700.27 143.75 C 705.11 149.18 713.94 150.16 719.98 146.22 C 730.12 139.70 730.17 122.52 720.14 115.87 C 716.75 113.51 712.40 112.83 708.39 113.62 Z" />
-+        android:pathData="M 691.91 105.50 C 696.15 98.19 704.73 94.38 712.95 94.23 C 720.41 93.94 728.53 95.59 733.93 101.10 C 738.52 105.80 739.99 112.62 740.00 119.00 C 740.00 130.00 740.00 141.00 740.00 152.00 C 736.58 152.00 733.16 152.00 729.75 151.99 C 729.75 149.42 729.74 146.85 729.74 144.28 C 726.69 147.76 723.39 151.36 718.84 152.79 C 709.83 155.78 698.69 152.88 693.23 144.86 C 689.36 139.45 689.15 131.90 692.15 126.04 C 694.92 121.17 699.97 117.92 705.36 116.65 C 713.51 114.78 722.12 115.69 729.93 118.57 C 729.49 114.86 728.80 110.82 725.87 108.19 C 721.96 104.03 715.69 103.20 710.35 104.45 C 706.55 105.46 703.68 108.36 701.10 111.17 C 698.08 109.20 695.02 107.30 691.91 105.50 M 706.63 126.69 C 703.28 128.43 700.60 132.17 701.23 136.07 C 702.22 140.93 707.22 144.15 712.01 144.23 C 721.04 144.72 728.79 137.01 729.92 128.33 C 723.17 123.82 713.84 122.53 706.63 126.69 Z" />
-     <path
-         android:fillColor="?android:attr/colorAccent"
-         android:fillAlpha="1.00"
-         android:strokeAlpha="1.00"
-         android:strokeWidth="1"
--        android:pathData="M 753.01 113.55 C 757.05 107.88 764.04 104.00 771.13 105.12 C 776.67 105.63 781.51 109.28 784.06 114.15 C 789.82 104.58 804.40 101.59 812.95 109.07 C 818.96 114.61 818.70 123.45 818.61 130.98 C 818.59 139.14 818.62 147.30 818.59 155.46 C 815.52 155.46 812.47 155.46 809.41 155.46 C 809.36 146.32 809.42 137.18 809.39 128.04 C 809.26 123.80 809.22 119.07 806.26 115.71 C 803.83 113.46 800.21 113.35 797.10 113.38 C 790.19 114.23 786.34 121.58 786.11 127.95 C 785.83 137.11 786.09 146.29 786.00 155.46 C 782.93 155.46 779.86 155.46 776.80 155.45 C 776.78 146.31 776.82 137.17 776.79 128.02 C 776.67 123.92 776.60 119.43 773.97 116.03 C 771.74 113.55 768.07 113.44 764.98 113.34 C 759.60 113.59 755.90 118.32 754.32 123.05 C 753.16 127.28 753.39 131.70 753.40 136.04 C 753.40 142.51 753.40 148.98 753.39 155.45 C 750.32 155.47 747.25 155.46 744.18 155.42 C 744.21 139.10 744.19 122.79 744.19 106.47 C 747.12 106.45 750.05 106.45 752.99 106.46 C 752.99 108.82 753.00 111.19 753.01 113.55 Z" />
-+        android:pathData="M 754.41 99.32 C 766.13 90.33 786.47 92.99 793.13 107.02 C 790.17 108.63 787.07 109.94 783.96 111.21 C 779.51 104.26 769.30 101.31 762.37 106.31 C 759.88 107.57 760.10 110.59 759.88 112.94 C 765.46 117.83 773.19 118.00 779.89 120.41 C 784.67 121.92 789.60 124.41 792.10 128.97 C 795.27 135.01 794.07 143.27 788.81 147.77 C 778.59 156.71 761.32 155.93 752.16 145.83 C 749.91 143.59 748.54 140.69 747.17 137.87 C 750.26 136.36 753.41 134.97 756.66 133.85 C 759.03 138.36 762.72 142.69 767.91 143.84 C 772.78 144.74 778.71 144.10 781.97 139.94 C 783.95 137.12 782.37 133.11 779.47 131.63 C 771.13 126.84 760.19 127.97 752.94 121.04 C 746.77 115.21 747.75 104.39 754.41 99.32 Z" />
-     <path
-         android:fillColor="?android:attr/colorAccent"
-         android:fillAlpha="1.00"
-         android:strokeAlpha="1.00"
-         android:strokeWidth="1"
--        android:pathData="M 279.70 106.46 C 282.77 106.45 285.83 106.45 288.90 106.46 C 288.90 122.79 288.90 139.12 288.90 155.45 C 285.83 155.46 282.77 155.46 279.70 155.45 C 279.70 139.12 279.69 122.79 279.70 106.46 Z" />
-+        android:pathData="M 804.75 100.82 C 809.62 95.60 817.16 93.97 824.05 94.22 C 832.62 94.35 841.23 99.11 844.97 107.00 C 841.96 108.57 838.94 110.24 835.57 110.90 C 831.04 104.28 821.17 101.35 814.37 106.25 C 811.08 107.94 811.03 113.07 814.23 114.86 C 822.26 119.19 832.21 118.71 839.72 124.22 C 847.18 129.17 847.61 141.15 841.24 147.17 C 833.99 154.37 822.28 155.53 813.00 152.05 C 806.47 149.61 801.83 144.03 798.80 137.95 C 801.99 136.44 805.23 134.99 808.59 133.86 C 810.53 137.27 812.72 140.84 816.42 142.59 C 821.61 145.12 828.51 144.83 832.98 140.95 C 835.85 138.60 835.02 133.90 831.98 132.10 C 824.12 126.80 813.37 128.24 805.94 121.97 C 799.35 117.14 799.03 106.44 804.75 100.82 Z" />
-+    <path
-+        android:fillColor="?android:attr/colorAccent"
-+        android:fillAlpha="1.00"
-+        android:strokeAlpha="1.00"
-+        android:strokeWidth="1"
-+        android:pathData="M 274.00 96.00 C 277.58 95.99 281.17 96.00 284.75 96.01 C 284.75 114.67 284.74 133.33 284.75 151.99 C 281.17 152.00 277.59 152.01 274.00 152.00 C 274.00 133.33 274.00 114.67 274.00 96.00 Z" />
- </vector>
-\ No newline at end of file
--- 
-2.17.1
-
diff --git a/patches/system/core/0001-Revert-logd-add-passcred-for-logdw-socket.patch b/patches/system/core/0001-Revert-logd-add-passcred-for-logdw-socket.patch
index 201062e..8bae5d0 100644
--- a/patches/system/core/0001-Revert-logd-add-passcred-for-logdw-socket.patch
+++ b/patches/system/core/0001-Revert-logd-add-passcred-for-logdw-socket.patch
@@ -1,4 +1,4 @@
-From d890a7f2637fac542648a2730055b2ff62a6f229 Mon Sep 17 00:00:00 2001
+From 633df09b9c0150e82e2ffdbcbd77c9dfed99a605 Mon Sep 17 00:00:00 2001
 From: Pierre-Hugues Husson <phh@phh.me>
 Date: Sun, 10 Dec 2017 00:26:21 +0100
 Subject: [PATCH 1/3] Revert "logd: add "+passcred" for logdw socket"
@@ -12,7 +12,7 @@
  2 files changed, 6 insertions(+), 6 deletions(-)
 
 diff --git a/logd/LogListener.cpp b/logd/LogListener.cpp
-index fc51dcf..f7f8e17 100755
+index fc51dcf08d..f7f8e17924 100755
 --- a/logd/LogListener.cpp
 +++ b/logd/LogListener.cpp
 @@ -149,14 +149,14 @@ int LogListener::getLogSocket() {
@@ -36,7 +36,7 @@
      return sock;
  }
 diff --git a/logd/logd.rc b/logd/logd.rc
-index bd303b7..4fd845f 100644
+index bd303b72ba..4fd845f002 100644
 --- a/logd/logd.rc
 +++ b/logd/logd.rc
 @@ -1,7 +1,7 @@
@@ -49,5 +49,5 @@
      file /dev/kmsg w
      user logd
 -- 
-2.7.4
+2.17.1
 
diff --git a/patches/system/core/0002-Some-kernel-crashes-when-using-too-recent-sdcardfs-o.patch b/patches/system/core/0002-Some-kernel-crashes-when-using-too-recent-sdcardfs-o.patch
index aa2853f..10471bd 100644
--- a/patches/system/core/0002-Some-kernel-crashes-when-using-too-recent-sdcardfs-o.patch
+++ b/patches/system/core/0002-Some-kernel-crashes-when-using-too-recent-sdcardfs-o.patch
@@ -1,4 +1,4 @@
-From 9c66325267a68279c84f449120dbf42179cfa976 Mon Sep 17 00:00:00 2001
+From 164b7dcc67770829a65b4de26f6662a87a4636f4 Mon Sep 17 00:00:00 2001
 From: Pierre-Hugues Husson <phh@phh.me>
 Date: Tue, 14 Aug 2018 19:33:03 +0200
 Subject: [PATCH 2/3] Some kernel crashes when using too recent sdcardfs
@@ -10,7 +10,7 @@
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 diff --git a/sdcard/sdcard.cpp b/sdcard/sdcard.cpp
-index dc36596..e7121a8 100644
+index f8f1cbb455..15b66acf7b 100644
 --- a/sdcard/sdcard.cpp
 +++ b/sdcard/sdcard.cpp
 @@ -102,7 +102,7 @@ static bool sdcardfs_setup(const std::string& source_path, const std::string& de
@@ -23,5 +23,5 @@
          if (multi_user && i < 3) new_opts += "multiuser,";
          if (derive_gid && i < 2) new_opts += "derive_gid,";
 -- 
-2.7.4
+2.17.1
 
diff --git a/patches/system/core/0003-First-drop_privs-which-may-fail-and-only-run-thread-.patch b/patches/system/core/0003-First-drop_privs-which-may-fail-and-only-run-thread-.patch
index f18bedd..9baf4a6 100644
--- a/patches/system/core/0003-First-drop_privs-which-may-fail-and-only-run-thread-.patch
+++ b/patches/system/core/0003-First-drop_privs-which-may-fail-and-only-run-thread-.patch
@@ -1,4 +1,4 @@
-From fd77bf67bb9ce8081e6f6167569933c4d3eb5a99 Mon Sep 17 00:00:00 2001
+From 961a623a6e46bd3aa304453324dd5cbaa2b2c951 Mon Sep 17 00:00:00 2001
 From: Pierre-Hugues Husson <phh@phh.me>
 Date: Tue, 14 Aug 2018 19:33:23 +0200
 Subject: [PATCH 3/3] First drop_privs (which may fail) and only run thread
@@ -10,7 +10,7 @@
  1 file changed, 6 insertions(+), 6 deletions(-)
 
 diff --git a/logd/main.cpp b/logd/main.cpp
-index 4af0d21..bb64fb4 100644
+index 4af0d21f1e..bb64fb46fa 100644
 --- a/logd/main.cpp
 +++ b/logd/main.cpp
 @@ -450,6 +450,12 @@ int main(int argc, char* argv[]) {
@@ -40,5 +40,5 @@
      // socket connection, and as a reader lock on a range of log
      // entries.
 -- 
-2.7.4
+2.17.1
 
diff --git a/patches/system/vold/0004-Don-t-set-reserved_disk-group-it-panics-old-inits.patch b/patches/system/vold/0001-Don-t-set-reserved_disk-group-it-panics-old-inits.patch
similarity index 71%
rename from patches/system/vold/0004-Don-t-set-reserved_disk-group-it-panics-old-inits.patch
rename to patches/system/vold/0001-Don-t-set-reserved_disk-group-it-panics-old-inits.patch
index 4c5470b..4557aaf 100644
--- a/patches/system/vold/0004-Don-t-set-reserved_disk-group-it-panics-old-inits.patch
+++ b/patches/system/vold/0001-Don-t-set-reserved_disk-group-it-panics-old-inits.patch
@@ -1,10 +1,10 @@
-From 5a60b2a5fee25755109ab9e060bf5a2aff905ca8 Mon Sep 17 00:00:00 2001
+From 3651ff3f188d41e5e0be08f7488b9bcd129f44cd Mon Sep 17 00:00:00 2001
 From: Pierre-Hugues Husson <phh@phh.me>
 Date: Tue, 14 Aug 2018 20:53:12 +0200
-Subject: [PATCH 4/4] Don't set reserved_disk group, it panics old inits
+Subject: [PATCH 1/4] Don't set reserved_disk group, it panics old inits
 
+Change-Id: I9fecd1e5187048e321af181921ecd7e37ca1eae9
 Signed-off-by: Jackeagle <jackeagle102@gmail.com>
-Change-Id: Ib9318bb0af7a2f0b5dbc75b505d1d716bb4e9cc7
 ---
  vold.rc | 1 -
  1 file changed, 1 deletion(-)
diff --git a/patches/system/vold/0001-Create-vendor_de.-This-is-done-by-init.rc-on-system-.patch b/patches/system/vold/0002-Create-vendor_de.-This-is-done-by-init.rc-on-system-.patch
similarity index 86%
rename from patches/system/vold/0001-Create-vendor_de.-This-is-done-by-init.rc-on-system-.patch
rename to patches/system/vold/0002-Create-vendor_de.-This-is-done-by-init.rc-on-system-.patch
index 289c53f..56ccb5b 100644
--- a/patches/system/vold/0001-Create-vendor_de.-This-is-done-by-init.rc-on-system-.patch
+++ b/patches/system/vold/0002-Create-vendor_de.-This-is-done-by-init.rc-on-system-.patch
@@ -1,7 +1,7 @@
-From 40ca9a2fc137e0c185e3aaedeababb65f1d6cd4e Mon Sep 17 00:00:00 2001
+From 2cd6ffdbaf28cd0742842a88a26a4a63cfcee3b9 Mon Sep 17 00:00:00 2001
 From: Pierre-Hugues Husson <phh@phh.me>
 Date: Tue, 14 Aug 2018 20:54:08 +0200
-Subject: [PATCH 1/4] Create vendor_de. This is done by /init.rc on
+Subject: [PATCH 2/4] Create vendor_de. This is done by /init.rc on
  system-as-root device
 
 ---
diff --git a/patches/system/vold/0002-Support-Samsung-s-implementation-of-exfat-called-sdf.patch b/patches/system/vold/0003-Support-Samsung-s-implementation-of-exfat-called-sdf.patch
similarity index 92%
rename from patches/system/vold/0002-Support-Samsung-s-implementation-of-exfat-called-sdf.patch
rename to patches/system/vold/0003-Support-Samsung-s-implementation-of-exfat-called-sdf.patch
index d129fae..832a558 100644
--- a/patches/system/vold/0002-Support-Samsung-s-implementation-of-exfat-called-sdf.patch
+++ b/patches/system/vold/0003-Support-Samsung-s-implementation-of-exfat-called-sdf.patch
@@ -1,7 +1,7 @@
-From 642887ce1ff0403fce542af0aea8c3c52ba07fdb Mon Sep 17 00:00:00 2001
+From 911e22c549e196296db3f4474d84fdec6120b2a3 Mon Sep 17 00:00:00 2001
 From: Pierre-Hugues Husson <phh@phh.me>
 Date: Mon, 20 Aug 2018 22:37:54 +0200
-Subject: [PATCH 2/4] Support Samsung's implementation of exfat, called sdfat
+Subject: [PATCH 3/4] Support Samsung's implementation of exfat, called sdfat
 
 ---
  fs/Exfat.cpp | 9 ++++++---
diff --git a/patches/system/vold/0003-Also-create-vendor_ce-same-reason-as-vendor_de.patch b/patches/system/vold/0004-Also-create-vendor_ce-same-reason-as-vendor_de.patch
similarity index 82%
rename from patches/system/vold/0003-Also-create-vendor_ce-same-reason-as-vendor_de.patch
rename to patches/system/vold/0004-Also-create-vendor_ce-same-reason-as-vendor_de.patch
index ce56b36..20aa274 100644
--- a/patches/system/vold/0003-Also-create-vendor_ce-same-reason-as-vendor_de.patch
+++ b/patches/system/vold/0004-Also-create-vendor_ce-same-reason-as-vendor_de.patch
@@ -1,9 +1,8 @@
-From d2d67f9e989a6b72df42b387ac573f55bd236d3c Mon Sep 17 00:00:00 2001
+From 8b59752bcc3b9ed2969e308673ec4469ccade60a Mon Sep 17 00:00:00 2001
 From: Pierre-Hugues Husson <phh@phh.me>
 Date: Mon, 20 Aug 2018 22:38:08 +0200
-Subject: [PATCH 3/4] Also create vendor_ce (same reason as vendor_de)
+Subject: [PATCH 4/4] Also create vendor_ce (same reason as vendor_de)
 
-Change-Id: Ifba45dd063cc2f4947dcb5c47be30e34b32bd758
 ---
  Ext4Crypt.cpp | 2 ++
  1 file changed, 2 insertions(+)
diff --git a/patches/vendor/bliss/0001-Revert-verity_tool-Implement-status-getter.patch b/patches/vendor/bliss/0001-Revert-verity_tool-Implement-status-getter.patch
index 2cda6de..d1e5211 100644
--- a/patches/vendor/bliss/0001-Revert-verity_tool-Implement-status-getter.patch
+++ b/patches/vendor/bliss/0001-Revert-verity_tool-Implement-status-getter.patch
@@ -1,11 +1,9 @@
-From 6d89034411393db371fb376931dc6c1b6b114c40 Mon Sep 17 00:00:00 2001
+From df7d12a93f9eae6b35debd5a39286962bf973fdd Mon Sep 17 00:00:00 2001
 From: Jackeagle <jackeagle102@gmail.com>
-Date: Sat, 17 Nov 2018 08:24:08 -0700
+Date: Mon, 3 Dec 2018 10:55:28 -0500
 Subject: [PATCH 1/9] Revert "verity_tool: Implement status getter"
 
 This reverts commit 385296fd334a854915d41ef556ce7bb981f66bb3.
-
-Change-Id: I8748c6c4ee0158124ad9c4469521be7d1cc02fc6
 ---
  config/BoardConfigBliss.mk        |  8 ++--
  verity_tool/include/verity_tool.h | 15 --------
@@ -14,7 +12,7 @@
  4 files changed, 6 insertions(+), 107 deletions(-)
 
 diff --git a/config/BoardConfigBliss.mk b/config/BoardConfigBliss.mk
-index 032e061..7ccae1d 100644
+index 032e0613..7ccae1d4 100644
 --- a/config/BoardConfigBliss.mk
 +++ b/config/BoardConfigBliss.mk
 @@ -9,8 +9,8 @@ ifeq ($(TARGET_HW_DISK_ENCRYPTION),true)
@@ -31,7 +29,7 @@
 +include vendor/bliss/config/BoardConfigQcom.mk 
 +endif 
 diff --git a/verity_tool/include/verity_tool.h b/verity_tool/include/verity_tool.h
-index b81eda1..25a6a7c 100644
+index b81eda1a..25a6a7c2 100644
 --- a/verity_tool/include/verity_tool.h
 +++ b/verity_tool/include/verity_tool.h
 @@ -18,14 +18,6 @@
@@ -64,7 +62,7 @@
   * Return codes:
   *
 diff --git a/verity_tool/main.cpp b/verity_tool/main.cpp
-index befdafa..f5f026a 100644
+index befdafac..f5f026aa 100644
 --- a/verity_tool/main.cpp
 +++ b/verity_tool/main.cpp
 @@ -24,23 +24,20 @@ static void print_usage() {
@@ -121,7 +119,7 @@
          printf("Error occurred in set_verity_enable\n");
          exit(EXIT_FAILURE);
 diff --git a/verity_tool/verity_tool.cpp b/verity_tool/verity_tool.cpp
-index 48e95b6..9575c4c 100644
+index 48e95b67..9575c4c1 100644
 --- a/verity_tool/verity_tool.cpp
 +++ b/verity_tool/verity_tool.cpp
 @@ -108,69 +108,6 @@ static std::string get_ab_suffix() {
diff --git a/patches/vendor/bliss/0001-skip-dependencies-check-for-Treble-builds.patch b/patches/vendor/bliss/0001-skip-dependencies-check-for-Treble-builds.patch
deleted file mode 100644
index 2ebae12..0000000
--- a/patches/vendor/bliss/0001-skip-dependencies-check-for-Treble-builds.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-From 82873c0c0100c6756c55a3167d604a0b83b7cc7c Mon Sep 17 00:00:00 2001
-From: Jon West <electrikjesus@gmail.com>
-Date: Thu, 25 Oct 2018 20:56:53 -0400
-Subject: [PATCH] skip dependencies check for Treble builds
-
-Change-Id: I345095b3e8c7edc1e1f373e71696f9cb309cc599
----
- build/tools/roomservice.py | 3 +--
- 1 file changed, 1 insertion(+), 2 deletions(-)
-
-diff --git a/build/tools/roomservice.py b/build/tools/roomservice.py
-index c8bcf57e..71d510c9 100755
---- a/build/tools/roomservice.py
-+++ b/build/tools/roomservice.py
-@@ -313,5 +313,4 @@ if __name__ == '__main__':
-         deps_only = False
- 
-     if not deps_only:
--        fetch_device(device)
--    fetch_dependencies(device)
-+        print("This is a Treble build, moving along... nothing to see here")
--- 
-2.17.1
-
diff --git a/patches/vendor/bliss/0002-Revert-kernel.mk-Support-kernels-that-use-LTO.patch b/patches/vendor/bliss/0002-Revert-kernel.mk-Support-kernels-that-use-LTO.patch
index f92e018..9abe521 100644
--- a/patches/vendor/bliss/0002-Revert-kernel.mk-Support-kernels-that-use-LTO.patch
+++ b/patches/vendor/bliss/0002-Revert-kernel.mk-Support-kernels-that-use-LTO.patch
@@ -1,17 +1,15 @@
-From 923baf7c52a3598ab9c35ef689a9d53bfb850024 Mon Sep 17 00:00:00 2001
+From e76039ca4444117dbb5c43a8d0b6dcd9c1712db4 Mon Sep 17 00:00:00 2001
 From: Jackeagle <jackeagle102@gmail.com>
-Date: Sat, 17 Nov 2018 08:24:36 -0700
+Date: Mon, 3 Dec 2018 10:55:46 -0500
 Subject: [PATCH 2/9] Revert "kernel.mk: Support kernels that use LTO"
 
 This reverts commit 811524eef488f81295c876b669d8ec7a6cad9cea.
-
-Change-Id: I01ddf5eedfed84c04c1a36856e495da4fb5a83c3
 ---
  build/tasks/kernel.mk | 31 +++++++++++++++----------------
  1 file changed, 15 insertions(+), 16 deletions(-)
 
 diff --git a/build/tasks/kernel.mk b/build/tasks/kernel.mk
-index 54812a9..7a674ee 100644
+index 54812a90..7a674ee9 100644
 --- a/build/tasks/kernel.mk
 +++ b/build/tasks/kernel.mk
 @@ -178,9 +178,8 @@ ifeq ($(TARGET_KERNEL_CLANG_COMPILE),true)
diff --git a/patches/vendor/bliss/0003-Revert-kernel-Remove-kernel-x-config.patch b/patches/vendor/bliss/0003-Revert-kernel-Remove-kernel-x-config.patch
index f1c9601..3f639aa 100644
--- a/patches/vendor/bliss/0003-Revert-kernel-Remove-kernel-x-config.patch
+++ b/patches/vendor/bliss/0003-Revert-kernel-Remove-kernel-x-config.patch
@@ -1,6 +1,6 @@
-From 851e1066c8571b64f73abbbf4c702332fcaac623 Mon Sep 17 00:00:00 2001
+From 441c7f3ebaf200c234eebb18259dfa336ba33301 Mon Sep 17 00:00:00 2001
 From: Jackeagle <jackeagle102@gmail.com>
-Date: Sat, 17 Nov 2018 08:26:00 -0700
+Date: Mon, 3 Dec 2018 10:55:52 -0500
 Subject: [PATCH 3/9] Revert "kernel: Remove kernel{x}config"
 
 This reverts commit 12c4070d98e0bb69869874d8fcaa22769a07d994.
@@ -9,7 +9,7 @@
  1 file changed, 12 insertions(+), 1 deletion(-)
 
 diff --git a/build/tasks/kernel.mk b/build/tasks/kernel.mk
-index 7a674ee..61d63bc 100644
+index 7a674ee9..61d63bcc 100644
 --- a/build/tasks/kernel.mk
 +++ b/build/tasks/kernel.mk
 @@ -251,7 +251,18 @@ kerneltags: $(KERNEL_CONFIG)
diff --git a/patches/vendor/bliss/0004-Revert-kernel-Remove-deprecated-flag-errors.patch b/patches/vendor/bliss/0004-Revert-kernel-Remove-deprecated-flag-errors.patch
index a1378c9..8e67c9e 100644
--- a/patches/vendor/bliss/0004-Revert-kernel-Remove-deprecated-flag-errors.patch
+++ b/patches/vendor/bliss/0004-Revert-kernel-Remove-deprecated-flag-errors.patch
@@ -1,6 +1,6 @@
-From aeecbbc9482abc64bedd18df3ab3a74b96d5c95a Mon Sep 17 00:00:00 2001
+From 456d8976a21cbdce213b2e5a1113724c4a05d06f Mon Sep 17 00:00:00 2001
 From: Jackeagle <jackeagle102@gmail.com>
-Date: Sat, 17 Nov 2018 08:26:06 -0700
+Date: Mon, 3 Dec 2018 10:56:00 -0500
 Subject: [PATCH 4/9] Revert "kernel: Remove deprecated flag errors"
 
 This reverts commit 31a4c13150d86dd3690fe4b79678f0578900591c.
@@ -9,7 +9,7 @@
  1 file changed, 6 insertions(+)
 
 diff --git a/build/tasks/kernel.mk b/build/tasks/kernel.mk
-index 61d63bc..b42d86d 100644
+index 61d63bcc..b42d86dc 100644
 --- a/build/tasks/kernel.mk
 +++ b/build/tasks/kernel.mk
 @@ -77,6 +77,12 @@ KERNEL_DEFCONFIG_SRC := $(KERNEL_SRC)/arch/$(KERNEL_DEFCONFIG_ARCH)/configs/$(KE
diff --git a/patches/vendor/bliss/0005-Revert-vendor-bliss-Remove-kernel.mk-headers-generat.patch b/patches/vendor/bliss/0005-Revert-vendor-bliss-Remove-kernel.mk-headers-generat.patch
index 7bc4f19..94d4016 100644
--- a/patches/vendor/bliss/0005-Revert-vendor-bliss-Remove-kernel.mk-headers-generat.patch
+++ b/patches/vendor/bliss/0005-Revert-vendor-bliss-Remove-kernel.mk-headers-generat.patch
@@ -1,6 +1,6 @@
-From 290db10c7e0160ae1cb35e4d3d24ee40ab517362 Mon Sep 17 00:00:00 2001
+From 4a0c568b97efb930137b0f7f3a0d811df8973f5d Mon Sep 17 00:00:00 2001
 From: Jackeagle <jackeagle102@gmail.com>
-Date: Sat, 17 Nov 2018 08:26:15 -0700
+Date: Mon, 3 Dec 2018 10:56:07 -0500
 Subject: [PATCH 5/9] Revert "vendor/bliss: Remove kernel.mk headers
  generation"
 
@@ -10,7 +10,7 @@
  1 file changed, 50 insertions(+)
 
 diff --git a/build/tasks/kernel.mk b/build/tasks/kernel.mk
-index b42d86d..d0263d3 100644
+index b42d86dc..d0263d37 100644
 --- a/build/tasks/kernel.mk
 +++ b/build/tasks/kernel.mk
 @@ -151,6 +151,9 @@ endif
diff --git a/patches/vendor/bliss/0006-Revert-vendor-bliss-Add-techpack-audio-to-include-pa.patch b/patches/vendor/bliss/0006-Revert-vendor-bliss-Add-techpack-audio-to-include-pa.patch
new file mode 100644
index 0000000..9411c36
--- /dev/null
+++ b/patches/vendor/bliss/0006-Revert-vendor-bliss-Add-techpack-audio-to-include-pa.patch
@@ -0,0 +1,27 @@
+From 6615bc99f58e93e2ba390b02885b52afb16fd3c0 Mon Sep 17 00:00:00 2001
+From: Jackeagle <jackeagle102@gmail.com>
+Date: Mon, 3 Dec 2018 10:56:58 -0500
+Subject: [PATCH 6/9] Revert "vendor/bliss: Add techpack/audio to include path
+ also"
+
+This reverts commit 3f22fe9e171b1dd2697d3a5c76fab2d614837064.
+---
+ build/soong/Android.bp | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/build/soong/Android.bp b/build/soong/Android.bp
+index 057dea8c..3addbe36 100644
+--- a/build/soong/Android.bp
++++ b/build/soong/Android.bp
+@@ -30,7 +30,7 @@ bliss_generator {
+     cmd: "make $(KERNEL_MAKE_FLAGS) -C $(TARGET_KERNEL_SOURCE) O=$(genDir) ARCH=$(KERNEL_ARCH) $(KERNEL_CROSS_COMPILE) headers_install",
+ 
+     // Directories that can be imported by a cc_* module generated_headers property
+-    export_include_dirs: ["usr/include", "usr/techpack/audio/include"],
++    export_include_dirs: ["usr/include"],
+ 
+     // Sources for dependency tracking
+     dep_root: "$(TARGET_KERNEL_SOURCE)",
+-- 
+2.17.1
+
diff --git a/patches/vendor/bliss/0006-Revert-vendor-bliss-Dynamically-generate-kernel-head.patch b/patches/vendor/bliss/0007-Revert-vendor-bliss-Dynamically-generate-kernel-head.patch
similarity index 93%
rename from patches/vendor/bliss/0006-Revert-vendor-bliss-Dynamically-generate-kernel-head.patch
rename to patches/vendor/bliss/0007-Revert-vendor-bliss-Dynamically-generate-kernel-head.patch
index 8b3b2ff..4506a7e 100644
--- a/patches/vendor/bliss/0006-Revert-vendor-bliss-Dynamically-generate-kernel-head.patch
+++ b/patches/vendor/bliss/0007-Revert-vendor-bliss-Dynamically-generate-kernel-head.patch
@@ -1,7 +1,7 @@
-From bfb9d40fb9a61288099d69a48294f21ecad3d2ca Mon Sep 17 00:00:00 2001
+From fdad2906512d4c1319e55ded79f59820cb818670 Mon Sep 17 00:00:00 2001
 From: Jackeagle <jackeagle102@gmail.com>
-Date: Sat, 17 Nov 2018 08:26:24 -0700
-Subject: [PATCH 6/9] Revert "vendor/bliss: Dynamically generate kernel headers
+Date: Mon, 3 Dec 2018 10:57:02 -0500
+Subject: [PATCH 7/9] Revert "vendor/bliss: Dynamically generate kernel headers
  using bliss generator"
 
 This reverts commit e0831af9a803dc2bdd1d203d93c3e3ce9b8e120a.
@@ -16,7 +16,7 @@
  delete mode 100644 config/BoardConfigSoong.mk
 
 diff --git a/build/soong/Android.bp b/build/soong/Android.bp
-index 3addbe3..45a4ab7 100644
+index 3addbe36..45a4ab72 100644
 --- a/build/soong/Android.bp
 +++ b/build/soong/Android.bp
 @@ -18,28 +18,6 @@ bootstrap_go_package {
@@ -49,7 +49,7 @@
 -    vendor_available: true,
 -}
 diff --git a/build/soong/generator/generator.go b/build/soong/generator/generator.go
-index ffaece3..b14a19c 100644
+index ffaece32..b14a19c5 100644
 --- a/build/soong/generator/generator.go
 +++ b/build/soong/generator/generator.go
 @@ -213,13 +213,10 @@ func (g *Module) GenerateAndroidBuildActions(ctx android.ModuleContext) {
@@ -77,7 +77,7 @@
  		switch name {
 diff --git a/build/soong/generator/variables.go b/build/soong/generator/variables.go
 deleted file mode 100644
-index 3e633ff..0000000
+index 3e633ffb..00000000
 --- a/build/soong/generator/variables.go
 +++ /dev/null
 @@ -1,28 +0,0 @@
@@ -110,7 +110,7 @@
 -	return out
 -}
 diff --git a/config/BoardConfigBliss.mk b/config/BoardConfigBliss.mk
-index 7ccae1d..e38938b 100644
+index 7ccae1d4..e38938b0 100644
 --- a/config/BoardConfigBliss.mk
 +++ b/config/BoardConfigBliss.mk
 @@ -9,7 +9,6 @@ ifeq ($(TARGET_HW_DISK_ENCRYPTION),true)
@@ -123,7 +123,7 @@
  include vendor/bliss/config/BoardConfigQcom.mk 
 diff --git a/config/BoardConfigSoong.mk b/config/BoardConfigSoong.mk
 deleted file mode 100644
-index 35d7893..0000000
+index 35d7893c..00000000
 --- a/config/BoardConfigSoong.mk
 +++ /dev/null
 @@ -1,18 +0,0 @@
diff --git a/patches/vendor/bliss/0007-Revert-vendor-bliss-Add-soong-generator-module-type.patch b/patches/vendor/bliss/0008-Revert-vendor-bliss-Add-soong-generator-module-type.patch
similarity index 97%
rename from patches/vendor/bliss/0007-Revert-vendor-bliss-Add-soong-generator-module-type.patch
rename to patches/vendor/bliss/0008-Revert-vendor-bliss-Add-soong-generator-module-type.patch
index f4b6ffa..86381d5 100644
--- a/patches/vendor/bliss/0007-Revert-vendor-bliss-Add-soong-generator-module-type.patch
+++ b/patches/vendor/bliss/0008-Revert-vendor-bliss-Add-soong-generator-module-type.patch
@@ -1,7 +1,7 @@
-From b0683d4e56b31ee4594e10e046fd4e5b2e1e8b2f Mon Sep 17 00:00:00 2001
+From dff7724ce0ebd95545d8eb5c69ea7dd4c21e1b80 Mon Sep 17 00:00:00 2001
 From: Jackeagle <jackeagle102@gmail.com>
-Date: Sat, 17 Nov 2018 08:26:48 -0700
-Subject: [PATCH 7/9] Revert "vendor/bliss: Add soong generator module type"
+Date: Mon, 3 Dec 2018 10:57:16 -0500
+Subject: [PATCH 8/9] Revert "vendor/bliss: Add soong generator module type"
 
 This reverts commit 0d2bcd429f2227c1efd59c2a7a4916f6f10c8af2.
 ---
@@ -11,7 +11,7 @@
  delete mode 100644 build/soong/generator/generator.go
 
 diff --git a/build/soong/Android.bp b/build/soong/Android.bp
-index 45a4ab7..2cb1afa 100644
+index 45a4ab72..2cb1afa0 100644
 --- a/build/soong/Android.bp
 +++ b/build/soong/Android.bp
 @@ -5,19 +5,3 @@ bootstrap_go_package {
@@ -36,7 +36,7 @@
 -}
 diff --git a/build/soong/generator/generator.go b/build/soong/generator/generator.go
 deleted file mode 100644
-index b14a19c..0000000
+index b14a19c5..00000000
 --- a/build/soong/generator/generator.go
 +++ /dev/null
 @@ -1,307 +0,0 @@
diff --git a/patches/vendor/bliss/0008-Revert-vendor-bliss-Move-some-kernel-definitions-to-.patch b/patches/vendor/bliss/0009-Revert-vendor-bliss-Move-some-kernel-definitions-to-.patch
similarity index 98%
rename from patches/vendor/bliss/0008-Revert-vendor-bliss-Move-some-kernel-definitions-to-.patch
rename to patches/vendor/bliss/0009-Revert-vendor-bliss-Move-some-kernel-definitions-to-.patch
index caf67d9..5923f20 100644
--- a/patches/vendor/bliss/0008-Revert-vendor-bliss-Move-some-kernel-definitions-to-.patch
+++ b/patches/vendor/bliss/0009-Revert-vendor-bliss-Move-some-kernel-definitions-to-.patch
@@ -1,7 +1,7 @@
-From f47a7f340355df09288b5c6aa293bc62d48da6c7 Mon Sep 17 00:00:00 2001
+From 1fe137b24228d2b6a06c3141e894a1988230811d Mon Sep 17 00:00:00 2001
 From: Jackeagle <jackeagle102@gmail.com>
-Date: Sat, 17 Nov 2018 08:26:58 -0700
-Subject: [PATCH 8/9] Revert "vendor/bliss: Move some kernel definitions to
+Date: Mon, 3 Dec 2018 10:57:23 -0500
+Subject: [PATCH 9/9] Revert "vendor/bliss: Move some kernel definitions to
  BoardConfigKernel"
 
 This reverts commit 3a8423358f51b6616622c881e04d82ba2f603984.
@@ -13,7 +13,7 @@
  delete mode 100644 config/BoardConfigKernel.mk
 
 diff --git a/build/tasks/kernel.mk b/build/tasks/kernel.mk
-index d0263d3..6057b9f 100644
+index d0263d37..6057b9f1 100644
 --- a/build/tasks/kernel.mk
 +++ b/build/tasks/kernel.mk
 @@ -1,5 +1,4 @@
@@ -267,7 +267,7 @@
  		--image $@ \
  		--partition_size $(BOARD_DTBOIMG_PARTITION_SIZE) \
 diff --git a/config/BoardConfigBliss.mk b/config/BoardConfigBliss.mk
-index e38938b..e6102f7 100644
+index e38938b0..e6102f7a 100644
 --- a/config/BoardConfigBliss.mk
 +++ b/config/BoardConfigBliss.mk
 @@ -8,8 +8,6 @@ ifeq ($(TARGET_HW_DISK_ENCRYPTION),true)
@@ -281,7 +281,7 @@
  endif 
 diff --git a/config/BoardConfigKernel.mk b/config/BoardConfigKernel.mk
 deleted file mode 100644
-index 74f3413..0000000
+index 74f3413b..00000000
 --- a/config/BoardConfigKernel.mk
 +++ /dev/null
 @@ -1,111 +0,0 @@
diff --git a/patches/vendor/bliss/0009-skip-dependencies-check-for-Treble-builds.patch b/patches/vendor/bliss/0009-skip-dependencies-check-for-Treble-builds.patch
deleted file mode 100644
index 7873cb2..0000000
--- a/patches/vendor/bliss/0009-skip-dependencies-check-for-Treble-builds.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-From f38cfa492098d083008249434a99c3f27fbfbe0d Mon Sep 17 00:00:00 2001
-From: Jon West <electrikjesus@gmail.com>
-Date: Thu, 25 Oct 2018 20:56:53 -0400
-Subject: [PATCH 9/9] skip dependencies check for Treble builds
-
-Change-Id: I345095b3e8c7edc1e1f373e71696f9cb309cc599
----
- build/tools/roomservice.py | 3 +--
- 1 file changed, 1 insertion(+), 2 deletions(-)
-
-diff --git a/build/tools/roomservice.py b/build/tools/roomservice.py
-index c8bcf57..71d510c 100755
---- a/build/tools/roomservice.py
-+++ b/build/tools/roomservice.py
-@@ -313,5 +313,4 @@ if __name__ == '__main__':
-         deps_only = False
- 
-     if not deps_only:
--        fetch_device(device)
--    fetch_dependencies(device)
-+        print("This is a Treble build, moving along... nothing to see here")
--- 
-2.17.1
-
