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 moduleName = "libclearplay_driver.z.so"; 312 serviceName = "clearplay_service"; 313 } 314 } 315 } 316 input_hal :: host { 317 hostName = "input_user_host"; 318 priority = 50; 319 gid = ["input_user_host", "uhdf_driver", "uhid"]; 320 input_device :: device { 321 device0 :: deviceNode { 322 policy = 2; 323 priority = 150; 324 moduleName = "libhdf_input_hotplug.z.so"; 325 serviceName = "input_service"; 326 } 327 } 328 input_hdi_device :: device { 329 device0 :: deviceNode { 330 policy = 2; 331 priority = 100; 332 moduleName = "libinput_driver.z.so"; 333 serviceName = "input_interfaces_service"; 334 } 335 } 336 hid_ddk_device :: device { 337 device0 :: deviceNode { 338 policy = 2; 339 priority = 100; 340 moduleName = "libhid_ddk_driver.z.so"; 341 serviceName = "hid_ddk_service"; 342 } 343 } 344 } 345 display_composer :: host { 346 hostName = "composer_host"; 347 priority = 40; 348 processPriority = -8; 349 threadPriority = 1; 350 caps = ["SYS_NICE"]; 351 uid = ["composer_host"]; 352 gid = ["composer_host", "graphics", "vendor_mpp_driver"]; 353 composer_device :: device { 354 device0 :: deviceNode { 355 policy = 2; 356 priority = 160; 357 moduleName = "libdisplay_composer_driver_1.0.z.so"; 358 serviceName = "display_composer_service"; 359 } 360 } 361 } 362 allocator :: host { 363 hostName = "allocator_host"; 364 priority = 40; 365 allocator_device :: device { 366 device0 :: deviceNode { 367 policy = 2; 368 priority = 160; 369 moduleName = "liballocator_driver_1.0.z.so"; 370 serviceName = "allocator_service"; 371 } 372 } 373 } 374 sensor :: host { 375 hostName = "sensor_host"; 376 priority = 50; 377 gid = ["sensor_host", "uhdf_driver"]; 378 sensor_device :: device { 379 device0 :: deviceNode { 380 policy = 2; 381 priority = 100; 382 moduleName = "libsensor_driver.z.so"; 383 serviceName = "sensor_interface_service"; 384 } 385 } 386 } 387 vibrator :: host { 388 hostName = "vibrator_host"; 389 priority = 50; 390 vibrator_device :: device { 391 device0 :: deviceNode { 392 policy = 2; 393 priority = 100; 394 moduleName = "libvibrator_driver.z.so"; 395 serviceName = "vibrator_interface_service"; 396 } 397 } 398 } 399 light :: host { 400 hostName = "light_host"; 401 priority = 50; 402 light_device :: device { 403 device0 :: deviceNode { 404 policy = 2; 405 priority = 100; 406 moduleName = "liblight_driver.z.so"; 407 serviceName = "light_interface_service"; 408 } 409 } 410 } 411 412 codec :: host { 413 hostName = "codec_host"; 414 priority = 50; 415 gid = ["codec_host", "uhdf_driver", "vendor_mpp_driver"]; 416 codec_omx_device :: device { 417 device0 :: deviceNode { 418 policy = 2; 419 priority = 100; 420 moduleName = "libcodec_hdi_omx_server.z.so"; 421 serviceName = "codec_hdi_omx_service"; 422 deviceMatchAttr = "media_codec_capabilities"; 423 } 424 } 425 codec_omx_idl_device :: device { 426 device0 :: deviceNode { 427 policy = 2; 428 priority = 100; 429 moduleName = "libcodec_driver.z.so"; 430 serviceName = "codec_component_manager_service"; 431 deviceMatchAttr = "media_codec_capabilities"; 432 } 433 } 434 codec_device :: device { 435 device0 :: deviceNode { 436 policy = 2; 437 priority = 100; 438 moduleName = "libcodec_server.z.so"; 439 serviceName = "codec_hdi_service"; 440 deviceMatchAttr = "codec_hdi1.0_capabilities"; 441 } 442 } 443 codec_image_device :: device { 444 device0 :: deviceNode { 445 policy = 2; 446 priority = 100; 447 moduleName = "libcodec_image_driver.z.so"; 448 serviceName = "codec_image_service"; 449 deviceMatchAttr = "image_codec_capabilities"; 450 } 451 } 452 } 453 454 distributed_camera_host :: host { 455 hostName = "dcamera_host"; 456 priority = 50; 457 distributed_camera_device :: device { 458 device0 :: deviceNode { 459 policy = 2; 460 priority = 100; 461 preload = 2; 462 moduleName = "libdistributed_camera_host_config.z.so"; 463 serviceName = "distributed_camera_service"; 464 } 465 device1 :: deviceNode { 466 policy = 2; 467 priority = 100; 468 preload = 2; 469 moduleName = "libdistributed_camera_provider_config.z.so"; 470 serviceName = "distributed_camera_provider_service"; 471 } 472 } 473 } 474 475 distributed_audio_host :: host { 476 hostName = "daudio_host"; 477 priority = 50; 478 distributed_audio_device :: device { 479 device0 :: deviceNode { 480 policy = 2; 481 priority = 100; 482 preload = 2; 483 moduleName = "libdaudio_primary_driver.z.so"; 484 serviceName = "daudio_primary_service"; 485 } 486 device1 :: deviceNode { 487 policy = 2; 488 priority = 100; 489 preload = 2; 490 moduleName = "libdaudio_ext_driver.z.so"; 491 serviceName = "daudio_ext_service"; 492 } 493 } 494 } 495 496 face_auth :: host { 497 hostName = "face_auth_host"; 498 priority = 50; 499 uid = "face_auth_host"; 500 gid = ["face_auth_host"]; 501 face_auth_device :: device { 502 device0 :: deviceNode { 503 policy = 2; 504 priority = 200; 505 moduleName = "libface_auth_driver.z.so"; 506 serviceName = "face_auth_interface_service"; 507 } 508 } 509 } 510 511 pin_auth :: host { 512 hostName = "pin_auth_host"; 513 priority = 50; 514 uid = "pin_auth_host"; 515 gid = ["pin_auth_host"]; 516 pin_auth_device :: device { 517 device0 :: deviceNode { 518 policy = 2; 519 priority = 200; 520 moduleName = "libpin_auth_driver.z.so"; 521 serviceName = "pin_auth_interface_service"; 522 } 523 } 524 } 525 526 user_auth :: host { 527 hostName = "user_auth_host"; 528 priority = 50; 529 uid = "user_auth_host"; 530 gid = ["user_auth_host"]; 531 user_auth_device :: device { 532 device0 :: deviceNode { 533 policy = 2; 534 priority = 200; 535 moduleName = "libuser_auth_driver.z.so"; 536 serviceName = "user_auth_interface_service"; 537 } 538 } 539 } 540 541 fingerprint_auth :: host { 542 hostName = "fingerprint_auth_host"; 543 priority = 50; 544 uid = "fingerprint_auth_host"; 545 gid = ["fingerprint_auth_host"]; 546 fingerprint_device :: device { 547 device0 :: deviceNode { 548 policy = 2; 549 priority = 200; 550 moduleName = "libfingerprint_auth_driver.z.so"; 551 serviceName = "fingerprint_auth_interface_service"; 552 } 553 } 554 } 555 556 location :: host { 557 hostName = "location_host"; 558 priority = 50; 559 uid = "location_host"; 560 gid = ["location_host"]; 561 location_gnss_device :: device { 562 device0 :: deviceNode { 563 policy = 2; 564 priority = 100; 565 preload = 2; 566 moduleName = "liblocation_gnss_hdi_driver.z.so"; 567 serviceName = "gnss_interface_service"; 568 } 569 } 570 location_agnss_device :: device { 571 device0 :: deviceNode { 572 policy = 2; 573 priority = 100; 574 preload = 2; 575 moduleName = "liblocation_agnss_hdi_driver.z.so"; 576 serviceName = "agnss_interface_service"; 577 } 578 } 579 location_geofence_device :: device { 580 device0 :: deviceNode { 581 policy = 2; 582 priority = 100; 583 preload = 2; 584 moduleName = "liblocation_geofence_hdi_driver.z.so"; 585 serviceName = "geofence_interface_service"; 586 } 587 } 588 } 589 partitionslot :: host { 590 hostName = "partitionslot_host"; 591 priority = 100; 592 uid = "useriam"; 593 gid = ["useriam", "update"]; 594 partitionslot_device :: device { 595 device0 :: deviceNode { 596 policy = 2; 597 priority = 100; 598 preload = 2; 599 moduleName = "libpartitionslot_driver.z.so"; 600 serviceName = "partition_slot_service"; 601 } 602 } 603 } 604 intell_voice :: host { 605 hostName = "intell_voice_host"; 606 priority = 100; 607 intell_voice_device :: device { 608 device0 :: deviceNode { 609 policy = 2; 610 priority = 100; 611 preload = 2; 612 moduleName = "libintell_voice_engine_driver.z.so"; 613 serviceName = "intell_voice_engine_manager_service"; 614 } 615 } 616 } 617 } 618} 619