# Data
type rild_vendor_data_file, file_type, data_file_type;
type vendor_log_file, file_type, data_file_type;
type vendor_rfsd_log_file, file_type, data_file_type;
type modem_stat_data_file, file_type, data_file_type;
type vendor_slog_file, file_type, data_file_type;
type radio_vendor_data_file, file_type, data_file_type;
type updated_wifi_firmware_data_file, file_type, data_file_type;
type tcpdump_vendor_data_file, file_type, data_file_type;
type vendor_camera_data_file, file_type, data_file_type;
type vendor_media_data_file, file_type, data_file_type;
type vendor_misc_data_file, file_type, data_file_type;
type sensor_reg_data_file, file_type, data_file_type;
type per_boot_file, file_type, data_file_type, core_data_file_type;
type uwb_vendor_data_file, file_type, data_file_type, app_data_file_type;
type uwb_data_vendor, file_type, data_file_type;
userdebug_or_eng(`
  typeattribute tcpdump_vendor_data_file mlstrustedobject;
  typeattribute vendor_slog_file mlstrustedobject;
  typeattribute radio_vendor_data_file mlstrustedobject;
')

# Exynos Firmware
type vendor_fw_file, vendor_file_type, file_type;

# sysfs
type sysfs_chosen, sysfs_type, fs_type;
type sysfs_ota, sysfs_type, fs_type;
type bootdevice_sysdev, dev_type;
type sysfs_display, sysfs_type, fs_type;
type sysfs_scsi_devices_0000, sysfs_type, fs_type;
type sysfs_fabric, sysfs_type, fs_type;
type sysfs_acpm_stats, sysfs_type, fs_type;
type sysfs_wifi, sysfs_type, fs_type;
type sysfs_exynos_bts, sysfs_type, fs_type;
type sysfs_exynos_bts_stats, sysfs_type, fs_type;
type sysfs_bcl, sysfs_type, fs_type;
type sysfs_chip_id, sysfs_type, fs_type;
type sysfs_touch, sysfs_type, fs_type;
type sysfs_bcmdhd, sysfs_type, fs_type;
type sysfs_wlc, sysfs_type, fs_type;
type sysfs_chargelevel, sysfs_type, fs_type;
type sysfs_mfc, sysfs_type, fs_type;
type sysfs_cpu, sysfs_type, fs_type;
type sysfs_odpm, sysfs_type, fs_type;
type sysfs_soc, sysfs_type, fs_type;
type sysfs_camera, sysfs_type, fs_type;

# debugfs
type debugfs_f2fs, debugfs_type, fs_type;
type vendor_maxfg_debugfs, fs_type, debugfs_type;
type vendor_pm_genpd_debugfs, fs_type, debugfs_type;
type vendor_regmap_debugfs, fs_type, debugfs_type;
type vendor_usb_debugfs, fs_type, debugfs_type;
type vendor_charger_debugfs, fs_type, debugfs_type;
type vendor_votable_debugfs, fs_type, debugfs_type;
type vendor_battery_debugfs, fs_type, debugfs_type;
type vendor_dmabuf_debugfs, fs_type, debugfs_type;
type vendor_dri_debugfs, fs_type, debugfs_type;

# vendor extra images
type modem_img_file, contextmount_type, file_type, vendor_file_type;
allow modem_img_file self:filesystem associate;

# persist
type persist_battery_file, file_type, vendor_persist_type;
type persist_camera_file, file_type, vendor_persist_type;
type persist_modem_file, file_type, vendor_persist_type;
type persist_sensor_reg_file, file_type, vendor_persist_type;
type persist_ss_file, file_type, vendor_persist_type;
type persist_uwb_file, file_type, vendor_persist_type;
type persist_display_file, file_type, vendor_persist_type;

# CHRE
type chre_socket, file_type;

# Storage Health HAL
type proc_f2fs, proc_type, fs_type;

# Vendor tools
type vendor_usf_stats, vendor_file_type, file_type;
type vendor_usf_reg_edit, vendor_file_type, file_type;
type vendor_dumpsys, vendor_file_type, file_type;

# Modem
type modem_efs_file, file_type;
type modem_userdata_file, file_type;

# SecureElement
type sysfs_st33spi, sysfs_type, fs_type;

# GPU
type sysfs_gpu, sysfs_type, fs_type;
