1type hal_usb_impl, domain;
2
3type hal_usb_impl_exec, vendor_file_type, exec_type, file_type;
4init_daemon_domain(hal_usb_impl)
5hal_server_domain(hal_usb_impl, hal_usb)
6hal_server_domain(hal_usb_impl, hal_usb_gadget)
7
8allow hal_usb_impl sysfs_batteryinfo:dir r_dir_perms;
9allow hal_usb_impl sysfs_batteryinfo:file rw_file_perms;
10get_prop(hal_usb_impl, vendor_usb_config_prop)
11
12# Needed for monitoring usb port temperature
13allow hal_usb_impl self:capability2 wake_alarm;
14wakelock_use(hal_usb_impl);
15
16# For interfacing with ThermalHAL
17hal_client_domain(hal_usb_impl, hal_thermal);
18
19# Needed for reporting Usb Overheat suez event through statsd
20allow hal_usb_impl fwk_stats_service:service_manager find;
21
22# For reading the usb-c throttling stats
23allow hal_usb_impl sysfs_usbc_throttling_stats:file r_file_perms;
24
25# For issuing vendor commands to USB hub via libusbhost
26allow hal_usb_impl device:dir r_dir_perms;
27allow hal_usb_impl usb_device:chr_file rw_file_perms;
28allow hal_usb_impl usb_device:dir r_dir_perms;
29