type hal_usb_impl, domain;
hal_server_domain(hal_usb_impl, hal_usb)
hal_server_domain(hal_usb_impl, hal_usb_gadget)

type hal_usb_impl_exec, exec_type, vendor_file_type, file_type;
init_daemon_domain(hal_usb_impl)

allow hal_usb_impl sysfs_msm_subsys:dir search;
allow hal_usb_impl sysfs_msm_subsys:file r_file_perms;
r_dir_file(hal_usb_impl, sysfs_usb_c)
allow hal_usb_impl sysfs_usb_c:file w_file_perms;
allow hal_usb_impl sysfs_usb_device:dir r_dir_perms;
allow hal_usb_impl sysfs_usb_device:file rw_file_perms;
allow hal_usb_impl configfs:file create_file_perms;

set_prop(hal_usb_impl, vendor_usb_config_prop)
get_prop(hal_usb_impl, vendor_usb_prop)