blob: 5e8aab5f33137ff721f41ee3903608456902e991 [file] [log] [blame]
Peiyong Lin7924dc62018-11-01 13:47:51 -07001# gpu service
2type gpuservice, domain, coredomain;
3type gpuservice_exec, system_file_type, exec_type, file_type;
4
5init_daemon_domain(gpuservice)
6
7binder_call(gpuservice, adbd)
8binder_call(gpuservice, shell)
9binder_use(gpuservice)
10
11# Access the GPU.
12allow gpuservice gpu_device:chr_file rw_file_perms;
13
14# GPU service will need to load GPU driver, for example Vulkan driver in order
15# to get the capability of the driver.
16allow gpuservice same_process_hal_file:file { open read getattr execute map };
17allow gpuservice ion_device:chr_file r_file_perms;
18get_prop(gpuservice, hwservicemanager_prop)
19hwbinder_use(gpuservice)
20
21# Access /dev/graphics/fb0.
22allow gpuservice graphics_device:dir search;
23allow gpuservice graphics_device:chr_file rw_file_perms;
24
Yiwei Zhangff0f79c2018-11-27 15:21:43 -080025# Needed for dumpsys pipes.
26allow gpuservice shell:fifo_file write;
27
Peiyong Lin7924dc62018-11-01 13:47:51 -070028# Use socket supplied by adbd, for cmd gpu vkjson etc.
29allow gpuservice adbd:unix_stream_socket { read write getattr };
30
31add_service(gpuservice, gpu_service)
32
33# Only uncomment below line when in development
34# userdebug_or_eng(`permissive gpuservice;')