userdebug_or_eng(`
  allow { domain -appdomain } diag_device:chr_file rw_file_perms;
')

r_dir_file(domain, sysfs_socinfo);
r_dir_file(domain, sysfs_thermal);
r_dir_file(domain, sysfs_power_management);
r_dir_file(domain, sysfs_devices_system_cpu);
