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 ddk_device :: device { 132 device0 :: deviceNode { 133 policy = 2; 134 priority = 100; 135 moduleName = "libusb_ddk_driver.z.so"; 136 serviceName = "usb_ddk_service"; 137 } 138 } 139 } 140 power :: host { 141 hostName = "power_host"; 142 priority = 50; 143 uid = "power_host"; 144 gid = ["power_host", "system", "log"]; 145 caps = ["BLOCK_SUSPEND"]; 146 power_device :: device { 147 device0 :: deviceNode { 148 policy = 2; 149 priority = 100; 150 moduleName = "libpower_driver.z.so"; 151 serviceName = "power_interface_service"; 152 } 153 } 154 battery_device :: device { 155 device0 :: deviceNode { 156 policy = 2; 157 priority = 100; 158 moduleName = "libbattery_driver.z.so"; 159 serviceName = "battery_interface_service"; 160 } 161 } 162 thermal_device :: device { 163 device0 :: deviceNode { 164 policy = 2; 165 priority = 100; 166 moduleName = "libthermal_driver.z.so"; 167 serviceName = "thermal_interface_service"; 168 } 169 } 170 } 171 wlan :: host { 172 hostName = "wifi_host"; 173 priority = 50; 174 caps = ["DAC_OVERRIDE", "DAC_READ_SEARCH", "NET_ADMIN", "NET_RAW"]; 175 gid = ["wifi_host", "wifi_group"]; 176 wifi_device :: device { 177 device0 :: deviceNode { 178 policy = 2; 179 priority = 100; 180 moduleName = "libwifi_hdi_c_device.z.so"; 181 serviceName = "wlan_interface_service"; 182 } 183 } 184 } 185 wpa :: host { 186 hostName = "wpa_host"; 187 priority = 50; 188 caps = ["DAC_OVERRIDE", "DAC_READ_SEARCH", "NET_ADMIN", "NET_RAW"]; 189 initconfig = ["\"permission\" : [\"ohos.permission.ACCESS_CERT_MANAGER\"]", "\"secon\" : \"u:r:wifi_host:s0\""]; 190 uid = "wifi"; 191 gid = ["wifi", "wifi_group", "wifi_host"]; 192 wpa_device :: device { 193 device0 :: deviceNode { 194 policy = 2; 195 preload = 2; 196 priority = 100; 197 moduleName = "libwpa_hdi_c_device.z.so"; 198 serviceName = "wpa_interface_service"; 199 } 200 } 201 } 202 hostapd :: host { 203 hostName = "hostapd_host"; 204 priority = 50; 205 caps = ["DAC_OVERRIDE", "DAC_READ_SEARCH", "NET_ADMIN", "NET_RAW"]; 206 initconfig = ["\"secon\" : \"u:r:wifi_host:s0\""]; 207 uid = "wifi"; 208 gid = ["wifi", "wifi_group", "wifi_host"]; 209 wpa_device :: device { 210 device0 :: deviceNode { 211 policy = 2; 212 preload = 2; 213 priority = 100; 214 moduleName = "libhostapd_hdi_c_device.z.so"; 215 serviceName = "hostapd_interface_service"; 216 } 217 } 218 } 219 audio :: host { 220 hostName = "audio_host"; 221 priority = 50; 222 gid = ["audio_host", "uhdf_driver", "root", "audio"]; 223 audio_device :: device { 224 device0 :: deviceNode { 225 policy = 2; 226 priority = 100; 227 moduleName = "libhdi_audio_primary_server.z.so"; 228 serviceName = "audio_hdi_service"; 229 } 230 } 231 audio_usb_device :: device { 232 device0 :: deviceNode { 233 policy = 2; 234 priority = 100; 235 moduleName = "libhdi_audio_usb_server.z.so"; 236 serviceName = "audio_hdi_usb_service"; 237 } 238 } 239 audio_a2dp_device :: device { 240 device0 :: deviceNode { 241 policy = 2; 242 priority = 100; 243 moduleName = "libhdi_audio_a2dp_server.z.so"; 244 serviceName = "audio_hdi_a2dp_service"; 245 } 246 } 247 audio_pnp_device :: device { 248 device0 :: deviceNode { 249 policy = 2; 250 priority = 110; 251 moduleName = "libhdi_audio_pnp_server.z.so"; 252 serviceName = "audio_hdi_pnp_service"; 253 } 254 } 255 idl_audio_device :: device { 256 device0 :: deviceNode { 257 policy = 2; 258 priority = 100; 259 moduleName = "libaudio_primary_driver.z.so"; 260 serviceName = "audio_manager_service"; 261 } 262 } 263 effect_device :: device { 264 device0 :: deviceNode { 265 policy = 2; 266 priority = 100; 267 moduleName = "libeffect_model_service.z.so"; 268 serviceName = "effect_model_service"; 269 } 270 } 271 trigger_device :: device { 272 device0 :: deviceNode { 273 policy = 2; 274 priority = 100; 275 moduleName = "libintell_voice_trigger_driver.z.so"; 276 serviceName = "intell_voice_trigger_manager_service"; 277 } 278 } 279 280 } 281 hdi_server :: host { 282 hostName = "camera_host"; 283 priority = 50; 284 gid = ["camera_host", "uhdf_driver", "vendor_mpp_driver"]; 285 camera_device :: device { 286 device0 :: deviceNode { 287 policy = 2; 288 priority = 100; 289 moduleName = "libcamera_host_service_1.0.z.so"; 290 serviceName = "camera_service"; 291 } 292 } 293 display_device :: device { 294 device0 :: deviceNode { 295 policy = 2; 296 priority = 120; 297 moduleName = "libhdi_media_layer_service.z.so"; 298 serviceName = "hdi_media_layer_service"; 299 } 300 } 301 } 302 clearplay :: host { 303 hostName = "clearplay_host"; 304 priority = 50; 305 uid = "clearplay_host"; 306 gid = ["clearplay_host"]; 307 clearplay_device :: device { 308 device0 :: deviceNode { 309 policy = 2; 310 priority = 100; 311 preload = 2; 312 moduleName = "libclearplay_driver.z.so"; 313 serviceName = "clearplay_service"; 314 } 315 } 316 } 317 input_hal :: host { 318 hostName = "input_user_host"; 319 priority = 50; 320 gid = ["input_user_host", "uhdf_driver", "uhid"]; 321 input_device :: device { 322 device0 :: deviceNode { 323 policy = 2; 324 priority = 150; 325 moduleName = "libhdf_input_hotplug.z.so"; 326 serviceName = "input_service"; 327 } 328 } 329 input_hdi_device :: device { 330 device0 :: deviceNode { 331 policy = 2; 332 priority = 100; 333 moduleName = "libinput_driver.z.so"; 334 serviceName = "input_interfaces_service"; 335 } 336 } 337 hid_ddk_device :: device { 338 device0 :: deviceNode { 339 policy = 2; 340 priority = 100; 341 moduleName = "libhid_ddk_driver.z.so"; 342 serviceName = "hid_ddk_service"; 343 } 344 } 345 } 346 display_composer :: host { 347 hostName = "composer_host"; 348 priority = 40; 349 processPriority = -8; 350 threadPriority = 1; 351 caps = ["SYS_NICE"]; 352 uid = ["composer_host"]; 353 gid = ["composer_host", "graphics", "vendor_mpp_driver"]; 354 composer_device :: device { 355 device0 :: deviceNode { 356 policy = 2; 357 priority = 160; 358 moduleName = "libdisplay_composer_driver_1.0.z.so"; 359 serviceName = "display_composer_service"; 360 } 361 } 362 } 363 allocator :: host { 364 hostName = "allocator_host"; 365 priority = 40; 366 allocator_device :: device { 367 device0 :: deviceNode { 368 policy = 2; 369 priority = 160; 370 moduleName = "liballocator_driver_1.0.z.so"; 371 serviceName = "allocator_service"; 372 } 373 } 374 } 375 sensor :: host { 376 hostName = "sensor_host"; 377 priority = 50; 378 gid = ["sensor_host", "uhdf_driver"]; 379 sensor_device :: device { 380 device0 :: deviceNode { 381 policy = 2; 382 priority = 100; 383 moduleName = "libsensor_driver.z.so"; 384 serviceName = "sensor_interface_service"; 385 } 386 } 387 } 388 vibrator :: host { 389 hostName = "vibrator_host"; 390 priority = 50; 391 vibrator_device :: device { 392 device0 :: deviceNode { 393 policy = 2; 394 priority = 100; 395 moduleName = "libvibrator_driver.z.so"; 396 serviceName = "vibrator_interface_service"; 397 } 398 } 399 } 400 light :: host { 401 hostName = "light_host"; 402 priority = 50; 403 light_device :: device { 404 device0 :: deviceNode { 405 policy = 2; 406 priority = 100; 407 moduleName = "liblight_driver.z.so"; 408 serviceName = "light_interface_service"; 409 } 410 } 411 } 412 413 codec :: host { 414 hostName = "codec_host"; 415 priority = 50; 416 gid = ["codec_host", "uhdf_driver", "vendor_mpp_driver"]; 417 codec_omx_device :: device { 418 device0 :: deviceNode { 419 policy = 2; 420 priority = 100; 421 moduleName = "libcodec_hdi_omx_server.z.so"; 422 serviceName = "codec_hdi_omx_service"; 423 deviceMatchAttr = "media_codec_capabilities"; 424 } 425 } 426 codec_omx_idl_device :: device { 427 device0 :: deviceNode { 428 policy = 2; 429 priority = 100; 430 moduleName = "libcodec_driver.z.so"; 431 serviceName = "codec_component_manager_service"; 432 deviceMatchAttr = "media_codec_capabilities"; 433 } 434 } 435 codec_device :: device { 436 device0 :: deviceNode { 437 policy = 2; 438 priority = 100; 439 moduleName = "libcodec_server.z.so"; 440 serviceName = "codec_hdi_service"; 441 deviceMatchAttr = "codec_hdi1.0_capabilities"; 442 } 443 } 444 codec_image_device :: device { 445 device0 :: deviceNode { 446 policy = 2; 447 priority = 100; 448 moduleName = "libcodec_image_driver.z.so"; 449 serviceName = "codec_image_service"; 450 deviceMatchAttr = "image_codec_capabilities"; 451 } 452 } 453 } 454 455 distributed_camera_host :: host { 456 hostName = "dcamera_host"; 457 priority = 50; 458 distributed_camera_device :: device { 459 device0 :: deviceNode { 460 policy = 2; 461 priority = 100; 462 preload = 2; 463 moduleName = "libdistributed_camera_host_config.z.so"; 464 serviceName = "distributed_camera_service"; 465 } 466 device1 :: deviceNode { 467 policy = 2; 468 priority = 100; 469 preload = 2; 470 moduleName = "libdistributed_camera_provider_config.z.so"; 471 serviceName = "distributed_camera_provider_service"; 472 } 473 } 474 } 475 476 distributed_audio_host :: host { 477 hostName = "daudio_host"; 478 priority = 50; 479 distributed_audio_device :: device { 480 device0 :: deviceNode { 481 policy = 2; 482 priority = 100; 483 preload = 2; 484 moduleName = "libdaudio_primary_driver.z.so"; 485 serviceName = "daudio_primary_service"; 486 } 487 device1 :: deviceNode { 488 policy = 2; 489 priority = 100; 490 preload = 2; 491 moduleName = "libdaudio_ext_driver.z.so"; 492 serviceName = "daudio_ext_service"; 493 } 494 } 495 } 496 497 face_auth :: host { 498 hostName = "face_auth_host"; 499 priority = 50; 500 uid = "face_auth_host"; 501 gid = ["face_auth_host"]; 502 face_auth_device :: device { 503 device0 :: deviceNode { 504 policy = 2; 505 priority = 200; 506 moduleName = "libface_auth_driver.z.so"; 507 serviceName = "face_auth_interface_service"; 508 } 509 } 510 } 511 512 pin_auth :: host { 513 hostName = "pin_auth_host"; 514 priority = 50; 515 uid = "pin_auth_host"; 516 gid = ["pin_auth_host"]; 517 pin_auth_device :: device { 518 device0 :: deviceNode { 519 policy = 2; 520 priority = 200; 521 moduleName = "libpin_auth_driver.z.so"; 522 serviceName = "pin_auth_interface_service"; 523 } 524 } 525 } 526 527 user_auth :: host { 528 hostName = "user_auth_host"; 529 priority = 50; 530 uid = "user_auth_host"; 531 gid = ["user_auth_host"]; 532 user_auth_device :: device { 533 device0 :: deviceNode { 534 policy = 2; 535 priority = 200; 536 moduleName = "libuser_auth_driver.z.so"; 537 serviceName = "user_auth_interface_service"; 538 } 539 } 540 } 541 542 fingerprint_auth :: host { 543 hostName = "fingerprint_auth_host"; 544 priority = 50; 545 uid = "fingerprint_auth_host"; 546 gid = ["fingerprint_auth_host"]; 547 fingerprint_device :: device { 548 device0 :: deviceNode { 549 policy = 2; 550 priority = 200; 551 moduleName = "libfingerprint_auth_driver.z.so"; 552 serviceName = "fingerprint_auth_interface_service"; 553 } 554 } 555 } 556 557 location :: host { 558 hostName = "location_host"; 559 priority = 50; 560 uid = "location_host"; 561 gid = ["location_host"]; 562 location_gnss_device :: device { 563 device0 :: deviceNode { 564 policy = 2; 565 priority = 100; 566 preload = 2; 567 moduleName = "liblocation_gnss_hdi_driver.z.so"; 568 serviceName = "gnss_interface_service"; 569 } 570 } 571 location_agnss_device :: device { 572 device0 :: deviceNode { 573 policy = 2; 574 priority = 100; 575 preload = 2; 576 moduleName = "liblocation_agnss_hdi_driver.z.so"; 577 serviceName = "agnss_interface_service"; 578 } 579 } 580 location_geofence_device :: device { 581 device0 :: deviceNode { 582 policy = 2; 583 priority = 100; 584 preload = 2; 585 moduleName = "liblocation_geofence_hdi_driver.z.so"; 586 serviceName = "geofence_interface_service"; 587 } 588 } 589 } 590 partitionslot :: host { 591 hostName = "partitionslot_host"; 592 priority = 100; 593 uid = "useriam"; 594 gid = ["useriam", "update"]; 595 partitionslot_device :: device { 596 device0 :: deviceNode { 597 policy = 2; 598 priority = 100; 599 preload = 2; 600 moduleName = "libpartitionslot_driver.z.so"; 601 serviceName = "partition_slot_service"; 602 } 603 } 604 } 605 intell_voice :: host { 606 hostName = "intell_voice_host"; 607 priority = 100; 608 intell_voice_device :: device { 609 device0 :: deviceNode { 610 policy = 2; 611 priority = 100; 612 preload = 2; 613 moduleName = "libintell_voice_engine_driver.z.so"; 614 serviceName = "intell_voice_engine_manager_service"; 615 } 616 } 617 } 618 } 619} 620