Better selinux device node labeling.

Change-Id: I68d55f78dacc672e918248f5f2ae884cde15befa
Signed-off-by: rpcraig <rpcraig@tycho.ncsc.mil>
diff --git a/sepolicy/file.te b/sepolicy/file.te
index 32a20ed..6e92831 100644
--- a/sepolicy/file.te
+++ b/sepolicy/file.te
@@ -4,6 +4,8 @@
 type qmux_gps_socket, file_type;
 type qmux_radio_socket, file_type;
 
+type mpdecision_socket, file_type;
+
 type audio_firmware_file, file_type;
 
 # Default type for anything under /firmware
diff --git a/sepolicy/file_contexts b/sepolicy/file_contexts
index a4a66c9..d83426d 100644
--- a/sepolicy/file_contexts
+++ b/sepolicy/file_contexts
@@ -1,24 +1,69 @@
-# GPU device
+# GPU device (world r/w)
 /dev/kgsl-3d0       u:object_r:gpu_device:s0
-/dev/msm_rotator    u:object_r:gpu_device:s0
+/dev/kgsl           u:object_r:gpu_device:s0
+
+# Image Rotator Driver
+/dev/msm_rotator    u:object_r:video_device:s0
 
 # Qualcomm Secure Execution Environment Communicator (QSEECOM) device
-/dev/qseecom        u:object_r:qseecom_device:s0
+/dev/qseecom        u:object_r:tee_device:s0
 
 # Qualcomm MSM Interface (QMI) devices
-/dev/socket/qmux_audio/*           u:object_r:qmux_audio_socket:s0
-/dev/socket/qmux_bluetooth/*       u:object_r:qmux_bluetooth_socket:s0
-/dev/socket/qmux_gps/*             u:object_r:qmux_gps_socket:s0
-/dev/socket/qmux_radio/*           u:object_r:qmux_radio_socket:s0
+/dev/socket/qmux_audio(/.*)?           u:object_r:qmux_audio_socket:s0
+/dev/socket/qmux_bluetooth(/.*)?       u:object_r:qmux_bluetooth_socket:s0
+/dev/socket/qmux_gps(/.*)?             u:object_r:qmux_gps_socket:s0
+/dev/socket/qmux_radio(/.*)?           u:object_r:qmux_radio_socket:s0
 
-/dev/bcm2079x-i2c                  u:object_r:bcm2079x_device:s0
+/dev/bcm2079x-i2c                  u:object_r:nfc_device:s0
 /dev/diag                          u:object_r:diag_device:s0
-/dev/media([0-9])+                 u:object_r:camera_device:s0
-/dev/smd([0-9])+                   u:object_r:smd_device:s0
-/dev/mdm                           u:object_r:radio_device:s0
 
-# Qualcomm MSM Audio ACDB device
-/dev/msm_acdb       u:object_r:msm_acdb_device:s0
+# CPU governor controls
+/dev/socket/mpdecision(/.*)?           u:object_r:mpdecision_socket:s0
+
+## Radio related
+# modem driver
+/dev/mdm                               u:object_r:radio_device:s0
+# high speed inter-chip controls
+/dev/hsicctl[0-3]                      u:object_r:radio_device:s0
+# mux controller
+/dev/rmnet_mux_ctrl                    u:object_r:radio_device:s0
+# qmi protocol driver
+/dev/qmi[0-2]                          u:object_r:radio_device:s0
+# shared memory drivers
+/dev/smdcntl[0-7]                      u:object_r:radio_device:s0
+/dev/smd7                              u:object_r:radio_device:s0
+
+# Bluetooth shared memory interfaces
+/dev/smd2                              u:object_r:hci_attach_dev:s0
+/dev/smd3                              u:object_r:hci_attach_dev:s0
+# Default label for shared memory drivers
+/dev/smd([0-9])+                       u:object_r:smd_device:s0
+
+# Serial console
+/dev/ttyHS0                            u:object_r:hci_attach_dev:s0
+/dev/ttyMSM0                           u:object_r:hci_attach_dev:s0
+
+# Jpeg Engine support
+/dev/gemini.*                          u:object_r:camera_device:s0
+# MSM camera related
+/dev/v4l-subdev.*                      u:object_r:camera_device:s0
+/dev/video([0-9])+                     u:object_r:camera_device:s0
+/dev/msm_camera(/.*)?                  u:object_r:camera_device:s0
+/dev/media([0-9])+                     u:object_r:camera_device:s0
+
+# Qualcomm MSM Audio devices
+/dev/msm_acdb                      u:object_r:audio_device:s0
+/dev/msm_mp3                       u:object_r:audio_device:s0
+/dev/msm_rtac                      u:object_r:audio_device:s0
+/dev/msm_vidc.*                    u:object_r:audio_device:s0
+/dev/msm_amrnb.*                   u:object_r:audio_device:s0
+/dev/msm_amrwb.*                   u:object_r:audio_device:s0
+/dev/msm_aac.*                     u:object_r:audio_device:s0
+
+# MSM Dedicated Sensors Processor Subsystem
+/dev/msm_dsps                          u:object_r:sensors_device:s0
+# Sensors shared Memory Packet Interface
+/dev/smd_sns_dsps                      u:object_r:sensors_device:s0
 
 # Qualcomm audio firmware files
 /data/misc/audio/*                 u:object_r:audio_firmware_file:s0
@@ -45,4 +90,3 @@
 /system/bin/mm-qcamera-daemon      u:object_r:camera_exec:s0
 /system/bin/qseecomd               u:object_r:tee_exec:s0
 /system/bin/conn_init              u:object_r:conn_init_exec:s0
-