# evs_mock mock hardware driver service type hal_evs_driver, domain, coredomain; hal_server_domain(hal_evs_driver, hal_evs) hal_client_domain(hal_evs_driver, hal_evs) # allow init to launch processes in this context type hal_evs_driver_exec, exec_type, file_type, system_file_type; init_daemon_domain(hal_evs_driver) binder_use(hal_evs_driver) # Allow use of USB devices, gralloc buffers, and surface flinger allow hal_evs_driver device:dir { open read }; allow hal_evs_driver video_device:chr_file rw_file_perms; hal_client_domain(hal_evs_driver, hal_graphics_allocator); hal_client_domain(hal_evs_driver, hal_graphics_composer) hal_client_domain(hal_evs_driver, hal_configstore) allow hal_evs_driver gpu_device:chr_file rw_file_perms; binder_call(hal_evs_driver, surfaceflinger); allow hal_evs_driver surfaceflinger_service:service_manager find; allow hal_evs_driver ion_device:chr_file r_file_perms; # Allow the driver to access kobject uevents allow hal_evs_driver self:netlink_kobject_uevent_socket create_socket_perms_no_ioctl;