# Default type for anything under /firmware
type firmware_file, fs_type, contextmount_type;
type fsg_file, fs_type, contextmount_type;

type adspd_socket, file_type;
type camera_socket, file_type;
type mpdecision_socket, file_type;
type qmuxd_socket, file_type;
type sensors_socket, file_type;
type thermald_socket, file_type;
# Socket node needed by ims_data daemon
type ims_socket, file_type;

type diag_logs, file_type, data_file_type;
type ram_dump_logs, file_type, data_file_type;
type time_data_file, file_type, data_file_type;
type gsiffd_data_file, data_file_type, file_type;
type quipc_data_file, data_file_type, file_type;
type dropbox_data_file, file_type, data_file_type;
type adspd_data_file, file_type, data_file_type;
type audio_cutback_data_file, file_type, data_file_type;

type sysfs_rmnet, fs_type, sysfs_type;
type sysfs_smdcntl_open_timeout, fs_type, sysfs_type;
type sysfs_xhci_msm_hsic, fs_type, sysfs_type;
type sysfs_msm_hsic_host, fs_type, sysfs_type;
type sysfs_mmi_touch, fs_type, sysfs_type;

type persist_file, file_type;
type persist_data_file, file_type;
type persist_drm_file, file_type;
type persist_sensors_file, file_type;
type persist_modem_file, file_type;
type persist_hiddenmenu_file, file_type;

#Define the files written during the operation of mpdecision    56
type sysfs_mpdecision, fs_type, sysfs_type;
type sysfs_rqstats, fs_type, sysfs_type;
type sysfs_cpu_online, fs_type, sysfs_type;
type sysfs_cpuboost, fs_type, sysfs_type;
type sysfs_capsense_update, fs_type, sysfs_type;
type sysfs_sar_wifi, fs_type, sysfs_type;
