Health hal 2.1

Change-Id: I58df03c469c213e58c7152430d6f15de80d00f77
diff --git a/Android.mk b/Android.mk
index 9e75ba1..ed63d54 100755
--- a/Android.mk
+++ b/Android.mk
@@ -151,7 +151,7 @@
 
 ifeq ($(PRODUCT_USE_DYNAMIC_PARTITIONS),true)
     LOCAL_CFLAGS += -DPRODUCT_USE_DYNAMIC_PARTITIONS=1
-    TWRP_REQUIRED_MODULES += android.hardware.health@2.0-service android.hardware.health@2.0-service.rc
+    TWRP_REQUIRED_MODULES += android.hardware.health@2.1-service android.hardware.health@2.1-impl.recovery android.hardware.health@2.1-service.rc android.hardware.health@2.1.xml
 endif
 
 ifeq ($(TW_USES_VENDOR_LIBS),true)
diff --git a/etc/Android.mk b/etc/Android.mk
index a5b4a84..6cda67b 100755
--- a/etc/Android.mk
+++ b/etc/Android.mk
@@ -95,11 +95,18 @@
 
 ifeq ($(PRODUCT_USE_DYNAMIC_PARTITIONS),true)
 	include $(CLEAR_VARS)
-	LOCAL_MODULE := android.hardware.health@2.0-service.rc
+	LOCAL_MODULE := android.hardware.health@2.1-service.rc
 	LOCAL_MODULE_TAGS := optional
 	LOCAL_MODULE_CLASS := EXECUTABLES
 	LOCAL_MODULE_PATH := $(TARGET_RECOVERY_ROOT_OUT)/system/etc/init
+	LOCAL_SRC_FILES := init/$(LOCAL_MODULE)
+	include $(BUILD_PREBUILT)
 
+	include $(CLEAR_VARS)
+	LOCAL_MODULE := android.hardware.health@2.1.xml
+	LOCAL_MODULE_TAGS := optional
+	LOCAL_MODULE_CLASS := EXECUTABLES
+	LOCAL_MODULE_PATH := $(TARGET_RECOVERY_ROOT_OUT)/vendor/etc/vintf/manifest
 	LOCAL_SRC_FILES := init/$(LOCAL_MODULE)
 	include $(BUILD_PREBUILT)
 endif
diff --git a/etc/init/android.hardware.health@2.0-service.rc b/etc/init/android.hardware.health@2.1-service.rc
similarity index 60%
rename from etc/init/android.hardware.health@2.0-service.rc
rename to etc/init/android.hardware.health@2.1-service.rc
index ef17467..229285c 100644
--- a/etc/init/android.hardware.health@2.0-service.rc
+++ b/etc/init/android.hardware.health@2.1-service.rc
@@ -1,7 +1,7 @@
 on boot
-    start health-hal-2-0
+    start health-hal-2-1
 
-service health-hal-2-0 /system/bin/android.hardware.health@2.0-service
+service health-hal-2-1 /system/bin/android.hardware.health@2.1-service
     disabled
     user root
     group root
diff --git a/etc/init/android.hardware.health@2.1.xml b/etc/init/android.hardware.health@2.1.xml
new file mode 100644
index 0000000..34fdca6
--- /dev/null
+++ b/etc/init/android.hardware.health@2.1.xml
@@ -0,0 +1,7 @@
+<manifest version="1.0" type="device">
+    <hal format="hidl">
+        <name>android.hardware.health</name>
+        <transport>hwbinder</transport>
+        <fqname>@2.1::IHealth/default</fqname>
+    </hal>
+</manifest>
diff --git a/prebuilt/Android.mk b/prebuilt/Android.mk
index 9577be8..8371907 100755
--- a/prebuilt/Android.mk
+++ b/prebuilt/Android.mk
@@ -45,8 +45,6 @@
 
 #RELINK_SOURCE_FILES += $(TARGET_OUT_EXECUTABLES)/twrpmtp
 RECOVERY_LIBRARY_SOURCE_FILES += $(TARGET_RECOVERY_ROOT_OUT)/system/lib64/android.hardware.fastboot@1.0.so
-RECOVERY_LIBRARY_SOURCE_FILES += $(TARGET_RECOVERY_ROOT_OUT)/system/lib64/android.hardware.health@1.0.so
-RECOVERY_LIBRARY_SOURCE_FILES += $(TARGET_RECOVERY_ROOT_OUT)/system/lib64/android.hardware.health@2.0.so
 RECOVERY_LIBRARY_SOURCE_FILES += $(TARGET_RECOVERY_ROOT_OUT)/system/lib64/ld-android.so
 RECOVERY_LIBRARY_SOURCE_FILES += $(TARGET_RECOVERY_ROOT_OUT)/system/lib64/libc.so
 RECOVERY_LIBRARY_SOURCE_FILES += $(TARGET_RECOVERY_ROOT_OUT)/system/lib64/libdl.so
@@ -82,7 +80,7 @@
 RECOVERY_BINARY_SOURCE_FILES += $(TARGET_OUT_VENDOR_EXECUTABLES)/hw/android.hardware.boot@1.1-service
 RECOVERY_BINARY_SOURCE_FILES += $(TARGET_OUT_VENDOR_EXECUTABLES)/vndservicemanager
 RECOVERY_BINARY_SOURCE_FILES += $(TARGET_OUT_EXECUTABLES)/toybox
-RECOVERY_BINARY_SOURCE_FILES += $(TARGET_OUT_VENDOR_EXECUTABLES)/hw/android.hardware.health@2.0-service
+RECOVERY_BINARY_SOURCE_FILES += $(TARGET_OUT_VENDOR_EXECUTABLES)/hw/android.hardware.health@2.1-service
 RECOVERY_BINARY_SOURCE_FILES += $(TARGET_RECOVERY_ROOT_OUT)/system/bin/charger
 RECOVERY_BINARY_SOURCE_FILES += $(TARGET_RECOVERY_ROOT_OUT)/system/bin/ueventd
 RECOVERY_BINARY_SOURCE_FILES += $(TARGET_RECOVERY_ROOT_OUT)/system/bin/watchdogd