Merge "Revert "battery_mitigation: fix brownout reporting""
diff --git a/wireless_charger/compatibility_matrix.xml b/wireless_charger/compatibility_matrix.xml
new file mode 100644
index 0000000..086fd8c
--- /dev/null
+++ b/wireless_charger/compatibility_matrix.xml
@@ -0,0 +1,10 @@
+<compatibility-matrix version="1.0" type="framework">
+ <hal format="aidl">
+ <name>vendor.google.wireless_charger</name>
+ <version>1</version>
+ <interface>
+ <name>IWirelessCharger</name>
+ <instance>default</instance>
+ </interface>
+ </hal>
+</compatibility-matrix>
diff --git a/wireless_charger/sepolicy/file.te b/wireless_charger/sepolicy/file.te
new file mode 100644
index 0000000..71c118c
--- /dev/null
+++ b/wireless_charger/sepolicy/file.te
@@ -0,0 +1 @@
+type sysfs_wlc, sysfs_type, fs_type;
diff --git a/wireless_charger/sepolicy/file_contexts b/wireless_charger/sepolicy/file_contexts
new file mode 100644
index 0000000..004c7a1
--- /dev/null
+++ b/wireless_charger/sepolicy/file_contexts
@@ -0,0 +1 @@
+/vendor/bin/hw/vendor\.google\.wireless_charger-default u:object_r:hal_wireless_charger_exec:s0
diff --git a/wireless_charger/sepolicy/hal_wireless_charger.te b/wireless_charger/sepolicy/hal_wireless_charger.te
new file mode 100644
index 0000000..f4cdee5
--- /dev/null
+++ b/wireless_charger/sepolicy/hal_wireless_charger.te
@@ -0,0 +1,22 @@
+type hal_wireless_charger, domain;
+type hal_wireless_charger_exec, exec_type, vendor_file_type, file_type;
+
+init_daemon_domain(hal_wireless_charger)
+
+r_dir_file(hal_wireless_charger, sysfs_batteryinfo)
+r_dir_file(hal_wireless_charger, sysfs_wlc)
+
+allow hal_wireless_charger sysfs_batteryinfo:file rw_file_perms;
+allow hal_wireless_charger self:netlink_kobject_uevent_socket create_socket_perms_no_ioctl;
+allow hal_wireless_charger sysfs_wlc:file rw_file_perms;
+
+
+binder_call(hal_wireless_charger, servicemanager)
+add_service(hal_wireless_charger, hal_wireless_charger_service)
+
+userdebug_or_eng(`
+ domain_auto_trans(shell, hal_wireless_charger_exec, hal_wireless_charger)
+')
+
+binder_call(hal_wireless_charger, platform_app)
+binder_call(hal_wireless_charger, system_app)
diff --git a/wireless_charger/sepolicy/service.te b/wireless_charger/sepolicy/service.te
new file mode 100644
index 0000000..2795b0d
--- /dev/null
+++ b/wireless_charger/sepolicy/service.te
@@ -0,0 +1 @@
+type hal_wireless_charger_service, hal_service_type, protected_service, service_manager_type;
diff --git a/wireless_charger/sepolicy/service_contexts b/wireless_charger/sepolicy/service_contexts
new file mode 100644
index 0000000..5813e35
--- /dev/null
+++ b/wireless_charger/sepolicy/service_contexts
@@ -0,0 +1 @@
+vendor.google.wireless_charger.IWirelessCharger/default u:object_r:hal_wireless_charger_service:s0
diff --git a/wireless_charger/wireless_charger.mk b/wireless_charger/wireless_charger.mk
new file mode 100644
index 0000000..8ff9a7b
--- /dev/null
+++ b/wireless_charger/wireless_charger.mk
@@ -0,0 +1,6 @@
+
+PRODUCT_SOONG_NAMESPACES += vendor/google/interfaces
+PRODUCT_PACKAGES += vendor.google.wireless_charger-default
+DEVICE_PRODUCT_COMPATIBILITY_MATRIX_FILE += device/google/gs-common/wireless_charger/compatibility_matrix.xml
+
+BOARD_VENDOR_SEPOLICY_DIRS += device/google/gs-common/wireless_charger/sepolicy