1 root { 2 device_info { 3 match_attr = "hdf_manager"; 4 template host { 5 hostName = ""; 6 priority = 100; 7 uid = ""; 8 gid = [""]; 9 caps = [""]; 10 critical = []; 11 template device { 12 template deviceNode { 13 policy = 0; 14 priority = 100; 15 preload = 0; 16 permission = 0664; 17 moduleName = ""; 18 serviceName = ""; 19 deviceMatchAttr = ""; 20 } 21 } 22 } 23 platform :: host { 24 hostName = "sample_host"; 25 priority = 50; 26 gid = ["sample_host", "uhdf_driver"]; 27 sample_device :: device { 28 device0 :: deviceNode { 29 policy = 2; 30 priority = 100; 31 preload = 2; 32 moduleName = "libsample_driver.z.so"; 33 serviceName = "sample_driver_service"; 34 } 35 device1 :: deviceNode { 36 policy = 2; 37 priority = 100; 38 preload = 2; 39 moduleName = "libsample1_driver.z.so"; 40 serviceName = "sample1_driver_service"; 41 } 42 } 43 } 44 bluetooth :: host { 45 hostName = "blue_host"; 46 priority = 50; 47 caps = ["NET_ADMIN"]; 48 bluetooth_device :: device { 49 device0 :: deviceNode { 50 policy = 2; 51 priority = 100; 52 moduleName = "libbluetooth_hci_hdi_driver.z.so"; 53 serviceName = "hci_interface_service"; 54 } 55 } 56 } 57 audio_bluetooth :: host { 58 hostName = "a2dp_host"; 59 priority = 50; 60 bluetooth_device :: device { 61 device0 :: deviceNode { 62 policy = 2; 63 priority = 100; 64 preload = 2; 65 moduleName = "libaudio_bluetooth_hdi_adapter_server.z.so"; 66 serviceName = "audio_bluetooth_hdi_service"; 67 } 68 } 69 } 70 usb :: host { 71 hostName = "usb_host"; 72 priority = 50; 73 caps = ["DAC_OVERRIDE"]; 74 usb_pnp_manager_device :: device { 75 device0 :: deviceNode { 76 policy = 2; 77 priority = 70; 78 moduleName = "libusb_pnp_manager.z.so"; 79 serviceName = "usb_pnp_manager"; 80 } 81 } 82 usbfn_device :: device { 83 device0 :: deviceNode { 84 policy = 2; 85 priority = 80; 86 preload = 2; 87 moduleName = "libusbfn.z.so"; 88 serviceName = "usbfn"; 89 deviceMatchAttr = "usbfn_driver"; 90 } 91 } 92 ecm_device :: device { 93 device0 :: deviceNode { 94 policy = 2; 95 priority = 81; 96 preload = 2; 97 moduleName = "libusbfn_cdcecm.z.so"; 98 serviceName = "usbfn_cdcecm"; 99 deviceMatchAttr = "usbfn_cdcecm_driver"; 100 } 101 } 102 acm_device :: device { 103 device0 :: deviceNode { 104 policy = 2; 105 priority = 100; 106 preload = 2; 107 moduleName = "libusbfn_cdcacm.z.so"; 108 serviceName = "usbfn_cdcacm"; 109 deviceMatchAttr = "usbfn_cdcacm_driver"; 110 } 111 } 112 mtp_device :: device { 113 device0 :: deviceNode { 114 policy = 2; 115 priority = 90; 116 preload = 2; 117 moduleName = "libusbfn_mtp_driver.z.so"; 118 serviceName = "usbfn_mtp_interface_service"; 119 deviceMatchAttr = "usbfn_mtp_interface_driver"; 120 } 121 } 122 usb_device :: device { 123 device0 :: deviceNode { 124 policy = 2; 125 priority = 100; 126 moduleName = "libusb_driver.z.so"; 127 serviceName = "usb_interface_service"; 128 deviceMatchAttr = "usb_device_interface_driver"; 129 } 130 } 131 } 132 power :: host { 133 hostName = "power_host"; 134 priority = 50; 135 uid = "power_host"; 136 gid = ["power_host", "system", "log"]; 137 caps = ["BLOCK_SUSPEND"]; 138 power_device :: device { 139 device0 :: deviceNode { 140 policy = 2; 141 priority = 100; 142 moduleName = "libpower_driver.z.so"; 143 serviceName = "power_interface_service"; 144 } 145 } 146 battery_device :: device { 147 device0 :: deviceNode { 148 policy = 2; 149 priority = 100; 150 moduleName = "libbattery_driver.z.so"; 151 serviceName = "battery_interface_service"; 152 } 153 } 154 thermal_device :: device { 155 device0 :: deviceNode { 156 policy = 2; 157 priority = 100; 158 moduleName = "libthermal_driver.z.so"; 159 serviceName = "thermal_interface_service"; 160 } 161 } 162 } 163 wlan :: host { 164 hostName = "wifi_host"; 165 priority = 50; 166 caps = ["DAC_OVERRIDE", "DAC_READ_SEARCH", "NET_ADMIN", "NET_RAW"]; 167 gid = ["wifi_host", "wifi_group"]; 168 wifi_device :: device { 169 device0 :: deviceNode { 170 policy = 2; 171 priority = 100; 172 moduleName = "libwifi_hdi_c_device.z.so"; 173 serviceName = "wlan_interface_service"; 174 } 175 } 176 wpa_supplicant_device :: device { 177 device0 :: deviceNode { 178 policy = 2; 179 priority = 100; 180 moduleName = "libwpa_hdi_c_device.z.so"; 181 serviceName = "wpa_interface_service"; 182 } 183 } 184 hostapd_device :: device { 185 device0 :: deviceNode { 186 policy = 2; 187 priority = 100; 188 moduleName = "libhostapd_hdi_c_device.z.so"; 189 serviceName = "hostapd_interface_service"; 190 } 191 } 192 } 193 audio :: host { 194 hostName = "audio_host"; 195 priority = 50; 196 gid = ["audio_host", "uhdf_driver", "root", "audio"]; 197 audio_device :: device { 198 device0 :: deviceNode { 199 policy = 2; 200 priority = 100; 201 moduleName = "libhdi_audio_primary_server.z.so"; 202 serviceName = "audio_hdi_service"; 203 } 204 } 205 audio_usb_device :: device { 206 device0 :: deviceNode { 207 policy = 2; 208 priority = 100; 209 moduleName = "libhdi_audio_usb_server.z.so"; 210 serviceName = "audio_hdi_usb_service"; 211 } 212 } 213 audio_a2dp_device :: device { 214 device0 :: deviceNode { 215 policy = 2; 216 priority = 100; 217 moduleName = "libhdi_audio_a2dp_server.z.so"; 218 serviceName = "audio_hdi_a2dp_service"; 219 } 220 } 221 audio_pnp_device :: device { 222 device0 :: deviceNode { 223 policy = 2; 224 priority = 110; 225 moduleName = "libhdi_audio_pnp_server.z.so"; 226 serviceName = "audio_hdi_pnp_service"; 227 } 228 } 229 idl_audio_device :: device { 230 device0 :: deviceNode { 231 policy = 2; 232 priority = 100; 233 moduleName = "libaudio_primary_driver.z.so"; 234 serviceName = "audio_manager_service"; 235 } 236 } 237 effect_device :: device { 238 device0 :: deviceNode { 239 policy = 2; 240 priority = 100; 241 moduleName = "libeffect_model_service.z.so"; 242 serviceName = "effect_model_service"; 243 } 244 } 245 } 246 hdi_server :: host { 247 hostName = "camera_host"; 248 priority = 50; 249 gid = ["camera_host", "uhdf_driver", "vendor_mpp_driver"]; 250 camera_device :: device { 251 device0 :: deviceNode { 252 policy = 2; 253 priority = 100; 254 moduleName = "libcamera_host_service_1.0.z.so"; 255 serviceName = "camera_service"; 256 } 257 } 258 display_device :: device { 259 device0 :: deviceNode { 260 policy = 2; 261 priority = 120; 262 moduleName = "libhdi_media_layer_service.z.so"; 263 serviceName = "hdi_media_layer_service"; 264 } 265 } 266 } 267 input_hal :: host { 268 hostName = "input_user_host"; 269 priority = 50; 270 gid = ["input_user_host", "uhdf_driver"]; 271 input_device :: device { 272 device0 :: deviceNode { 273 policy = 2; 274 priority = 150; 275 moduleName = "libhdf_input_hotplug.z.so"; 276 serviceName = "input_service"; 277 } 278 } 279 input_hdi_device :: device { 280 device0 :: deviceNode { 281 policy = 2; 282 priority = 100; 283 moduleName = "libinput_driver.z.so"; 284 serviceName = "input_interfaces_service"; 285 } 286 } 287 } 288 display_composer :: host { 289 hostName = "composer_host"; 290 priority = 40; 291 uid = ["composer_host"]; 292 gid = ["composer_host", "graphics", "vendor_mpp_driver"]; 293 composer_device :: device { 294 device0 :: deviceNode { 295 policy = 2; 296 priority = 160; 297 moduleName = "libdisplay_composer_driver_1.0.z.so"; 298 serviceName = "display_composer_service"; 299 } 300 } 301 } 302 allocator :: host { 303 hostName = "allocator_host"; 304 priority = 40; 305 allocator_device :: device { 306 device0 :: deviceNode { 307 policy = 2; 308 priority = 160; 309 moduleName = "liballocator_driver_1.0.z.so"; 310 serviceName = "allocator_service"; 311 } 312 } 313 } 314 sensor :: host { 315 hostName = "sensor_host"; 316 priority = 50; 317 gid = ["sensor_host", "uhdf_driver"]; 318 sensor_device :: device { 319 device0 :: deviceNode { 320 policy = 2; 321 priority = 100; 322 moduleName = "libsensor_driver.z.so"; 323 serviceName = "sensor_interface_service"; 324 } 325 } 326 } 327 vibrator :: host { 328 hostName = "vibrator_host"; 329 priority = 50; 330 vibrator_device :: device { 331 device0 :: deviceNode { 332 policy = 2; 333 priority = 100; 334 moduleName = "libvibrator_driver.z.so"; 335 serviceName = "vibrator_interface_service"; 336 } 337 } 338 } 339 light :: host { 340 hostName = "light_host"; 341 priority = 50; 342 light_device :: device { 343 device0 :: deviceNode { 344 policy = 2; 345 priority = 100; 346 moduleName = "liblight_driver.z.so"; 347 serviceName = "light_interface_service"; 348 } 349 } 350 } 351 352 codec :: host { 353 hostName = "codec_host"; 354 priority = 50; 355 gid = ["codec_host", "uhdf_driver", "vendor_mpp_driver"]; 356 codec_omx_device :: device { 357 device0 :: deviceNode { 358 policy = 2; 359 priority = 100; 360 moduleName = "libcodec_hdi_omx_server.z.so"; 361 serviceName = "codec_hdi_omx_service"; 362 deviceMatchAttr = "codec_component_capabilities"; 363 } 364 } 365 codec_omx_idl_device :: device { 366 device0 :: deviceNode { 367 policy = 2; 368 priority = 100; 369 moduleName = "libcodec_driver.z.so"; 370 serviceName = "codec_component_manager_service"; 371 deviceMatchAttr = "codec_component_capabilities"; 372 } 373 } 374 codec_device :: device { 375 device0 :: deviceNode { 376 policy = 2; 377 priority = 100; 378 moduleName = "libcodec_server.z.so"; 379 serviceName = "codec_hdi_service"; 380 deviceMatchAttr = "media_codec_capabilities"; 381 } 382 } 383 codec_image_device :: device { 384 device0 :: deviceNode { 385 policy = 2; 386 priority = 100; 387 moduleName = "libcodec_jpeg_driver.z.so"; 388 serviceName = "codec_image_jpeg_service"; 389 deviceMatchAttr = "codec_image_capabilities"; 390 } 391 } 392 } 393 394 distributed_camera_host :: host { 395 hostName = "dcamera_host"; 396 priority = 50; 397 distributed_camera_device :: device { 398 device0 :: deviceNode { 399 policy = 2; 400 priority = 100; 401 preload = 2; 402 moduleName = "libdistributed_camera_host_config.z.so"; 403 serviceName = "distributed_camera_service"; 404 } 405 device1 :: deviceNode { 406 policy = 2; 407 priority = 100; 408 preload = 2; 409 moduleName = "libdistributed_camera_provider_config.z.so"; 410 serviceName = "distributed_camera_provider_service"; 411 } 412 } 413 } 414 face_auth :: host { 415 hostName = "face_auth_host"; 416 priority = 50; 417 uid = "useriam"; 418 gid = ["useriam"]; 419 face_auth_device :: device { 420 device0 :: deviceNode { 421 policy = 2; 422 priority = 200; 423 moduleName = "libface_auth_driver.z.so"; 424 serviceName = "face_auth_interface_service"; 425 } 426 } 427 } 428 429 pin_auth :: host { 430 hostName = "pin_auth_host"; 431 priority = 50; 432 uid = "useriam"; 433 gid = ["useriam"]; 434 pin_auth_device :: device { 435 device0 :: deviceNode { 436 policy = 2; 437 priority = 200; 438 moduleName = "libpin_auth_driver.z.so"; 439 serviceName = "pin_auth_interface_service"; 440 } 441 } 442 } 443 444 user_auth :: host { 445 hostName = "user_auth_host"; 446 priority = 50; 447 uid = "useriam"; 448 gid = ["useriam"]; 449 user_auth_device :: device { 450 device0 :: deviceNode { 451 policy = 2; 452 priority = 200; 453 moduleName = "libuser_auth_driver.z.so"; 454 serviceName = "user_auth_interface_service"; 455 } 456 } 457 } 458 459 fingerprint_auth :: host { 460 hostName = "fingerprint_auth_host"; 461 priority = 50; 462 uid = "useriam"; 463 gid = ["useriam"]; 464 fingerprint_device :: device { 465 device0 :: deviceNode { 466 policy = 2; 467 priority = 200; 468 moduleName = "libfingerprint_auth_driver.z.so"; 469 serviceName = "fingerprint_auth_interface_service"; 470 } 471 } 472 } 473 474 location :: host { 475 hostName = "location_host"; 476 priority = 50; 477 uid = "location_host"; 478 gid = ["location_host"]; 479 location_gnss_device :: device { 480 device0 :: deviceNode { 481 policy = 2; 482 priority = 100; 483 preload = 2; 484 moduleName = "liblocation_gnss_hdi_driver.z.so"; 485 serviceName = "gnss_interface_service"; 486 } 487 } 488 location_agnss_device :: device { 489 device0 :: deviceNode { 490 policy = 2; 491 priority = 100; 492 preload = 2; 493 moduleName = "liblocation_agnss_hdi_driver.z.so"; 494 serviceName = "agnss_interface_service"; 495 } 496 } 497 location_geofence_device :: device { 498 device0 :: deviceNode { 499 policy = 2; 500 priority = 100; 501 preload = 2; 502 moduleName = "liblocation_geofence_hdi_driver.z.so"; 503 serviceName = "geofence_interface_service"; 504 } 505 } 506 } 507 partitionslot :: host { 508 hostName = "partitionslot_host"; 509 priority = 100; 510 uid = "useriam"; 511 gid = ["useriam", "update"]; 512 partitionslot_device :: device { 513 device0 :: deviceNode { 514 policy = 2; 515 priority = 100; 516 preload = 2; 517 moduleName = "libpartitionslot_driver.z.so"; 518 serviceName = "partition_slot_service"; 519 } 520 } 521 } 522 } 523} 524