Merge "Add CleanSpec.mk file"
diff --git a/shared/config/init.vsoc.rc b/shared/config/init.vsoc.rc
index 738db6b..379a7ed 100644
--- a/shared/config/init.vsoc.rc
+++ b/shared/config/init.vsoc.rc
@@ -38,13 +38,10 @@
mount_all /vendor/etc/fstab.${ro.hardware}
restorecon_recursive /vendor
- start rename_eth0
+ start setup_wifi
# works around framework netiface enumeration issue
start rename_eth1
- # wait until rename_eth0 is done before attempting to stack wifi
- wait /proc/self/net/xt_qtaguid/iface_stat/buried_eth0
- start create_wifi
# TODO(ender): Find better way to talk to serial port.
chmod 622 /dev/kmsg
@@ -83,7 +80,7 @@
start socket_forward_proxy
-service rename_eth0 /vendor/bin/rename_netiface eth0 buried_eth0
+service setup_wifi /vendor/bin/setup_wifi
oneshot
@@ -91,10 +88,6 @@
oneshot
-service create_wifi /vendor/bin/ip_link_add virt_wifi buried_eth0 wlan0
- oneshot
-
-
on property:sys.boot_completed=1
trigger sys-boot-completed-set
diff --git a/shared/device.mk b/shared/device.mk
index 7b01f22..b363f7a 100644
--- a/shared/device.mk
+++ b/shared/device.mk
@@ -72,6 +72,7 @@
vport_trigger \
rename_netiface \
ip_link_add \
+ setup_wifi \
#
# Packages for AOSP-available stuff we use from the framework
@@ -282,6 +283,23 @@
android.hardware.power@1.0-impl \
android.hardware.power@1.0-service
+
+#
+# PowerStats HAL
+#
+PRODUCT_PACKAGES += \
+ android.hardware.power.stats@1.0-service.mock
+
+#
+# NeuralNetworks HAL
+#
+PRODUCT_PACKAGES += \
+ android.hardware.neuralnetworks@1.2-service-sample-all \
+ android.hardware.neuralnetworks@1.2-service-sample-float-fast \
+ android.hardware.neuralnetworks@1.2-service-sample-float-slow \
+ android.hardware.neuralnetworks@1.2-service-sample-minimal \
+ android.hardware.neuralnetworks@1.2-service-sample-quant
+
#
# USB
PRODUCT_PACKAGES += \
diff --git a/shared/sepolicy/file_contexts b/shared/sepolicy/file_contexts
index 1366321..d6a14a9 100644
--- a/shared/sepolicy/file_contexts
+++ b/shared/sepolicy/file_contexts
@@ -1,22 +1,22 @@
##########################
# Devices
#
-/dev/e2e_managed u:object_r:region_e2e_test_device:s0
-/dev/e2e_manager u:object_r:region_e2e_test_device:s0
-/dev/e2e_primary u:object_r:region_e2e_test_device:s0
-/dev/e2e_secondary u:object_r:region_e2e_test_device:s0
-/dev/screen u:object_r:region_screen_device:s0
-/dev/vport[0-9]p[0-9]* u:object_r:virtual_serial_device:s0
-/dev/block/zram0 u:object_r:swap_block_device:s0
+/dev/e2e_managed u:object_r:region_e2e_test_device:s0
+/dev/e2e_manager u:object_r:region_e2e_test_device:s0
+/dev/e2e_primary u:object_r:region_e2e_test_device:s0
+/dev/e2e_secondary u:object_r:region_e2e_test_device:s0
+/dev/screen u:object_r:region_screen_device:s0
+/dev/vport[0-9]p[0-9]* u:object_r:virtual_serial_device:s0
+/dev/block/zram0 u:object_r:swap_block_device:s0
#############################
# Root files
-/initial\.metadata u:object_r:initial_metadata_file:s0
-/ts_snap\.txt u:object_r:tombstone_snapshot_file:s0
+/initial\.metadata u:object_r:initial_metadata_file:s0
+/ts_snap\.txt u:object_r:tombstone_snapshot_file:s0
#############################
# var files
-/var/run/system(/.*)? u:object_r:var_run_system_file:s0
+/var/run/system(/.*)? u:object_r:var_run_system_file:s0
#############################
# Vendor files
@@ -28,8 +28,12 @@
/vendor/bin/vsoc_guest_region_e2e_test u:object_r:vsoc_guest_region_e2e_test_exec:s0
/vendor/bin/vport_trigger u:object_r:vport_trigger_exec:s0
/vendor/bin/rename_netiface u:object_r:rename_netiface_exec:s0
-/vendor/bin/hw/android\.hardware\.bluetooth@1\.0-service\.sim u:object_r:hal_bluetooth_sim_exec:s0
-/vendor/bin/hw/android\.hardware\.dumpstate@1\.0-service\.cuttlefish u:object_r:hal_dumpstate_impl_exec:s0
-/vendor/bin/hw/android\.hardware\.health@2\.0-service.cuttlefish u:object_r:hal_health_default_exec:s0
-/vendor/bin/hw/android\.hardware\.health\.storage@1\.0-service.cuttlefish u:object_r:hal_health_storage_default_exec:s0
-/vendor/bin/ip_link_add u:object_r:ip_link_add_exec:s0
+/vendor/bin/hw/android\.hardware\.power\.stats@1\.0-service\.mock u:object_r:hal_power_stats_default_exec:s0
+/vendor/bin/hw/android\.hardware\.bluetooth@1\.0-service\.sim u:object_r:hal_bluetooth_sim_exec:s0
+/vendor/bin/hw/android\.hardware\.dumpstate@1\.0-service\.cuttlefish u:object_r:hal_dumpstate_impl_exec:s0
+/vendor/bin/hw/android\.hardware\.health@2\.0-service.cuttlefish u:object_r:hal_health_default_exec:s0
+/vendor/bin/hw/android\.hardware\.health\.storage@1\.0-service.cuttlefish u:object_r:hal_health_storage_default_exec:s0
+/vendor/bin/hw/android\.hardware\.neuralnetworks@1\.2-service-sample-.* u:object_r:hal_neuralnetworks_sample_exec:s0
+/vendor/bin/ip_link_add u:object_r:ip_link_add_exec:s0
+/vendor/bin/setup_wifi u:object_r:setup_wifi_exec:s0
+/vendor/bin/hw/android\.hardware\.thermal@2\.0-service\.mock u:object_r:hal_thermal_default_exec:s0
diff --git a/shared/sepolicy/gceservice.te b/shared/sepolicy/gceservice.te
index 4881309..6c77ed8 100644
--- a/shared/sepolicy/gceservice.te
+++ b/shared/sepolicy/gceservice.te
@@ -1,5 +1,6 @@
# GceService app
type gceservice, domain;
+type gceservice_tmpfs, file_type;
app_domain(gceservice)
# Use system services exposed as part of Android framework public API
diff --git a/shared/sepolicy/hal_neuralnetworks_sample.te b/shared/sepolicy/hal_neuralnetworks_sample.te
new file mode 100644
index 0000000..44b5c84
--- /dev/null
+++ b/shared/sepolicy/hal_neuralnetworks_sample.te
@@ -0,0 +1,5 @@
+type hal_neuralnetworks_sample, domain;
+hal_server_domain(hal_neuralnetworks_sample, hal_neuralnetworks)
+
+type hal_neuralnetworks_sample_exec, exec_type, vendor_file_type, file_type;
+init_daemon_domain(hal_neuralnetworks_sample)
diff --git a/shared/sepolicy/setup_wifi.te b/shared/sepolicy/setup_wifi.te
new file mode 100644
index 0000000..e6ec279
--- /dev/null
+++ b/shared/sepolicy/setup_wifi.te
@@ -0,0 +1,10 @@
+type setup_wifi, domain;
+type setup_wifi_exec, exec_type, vendor_file_type, file_type;
+
+init_daemon_domain(setup_wifi)
+
+allow setup_wifi self:capability { net_admin net_raw sys_module };
+allow setup_wifi self:udp_socket { create ioctl };
+allow setup_wifi self:netlink_route_socket { bind create nlmsg_write read write };
+
+allow setup_wifi kernel:system module_request;