tree: 168904d5807af1e47da43cb62483a609f59d9e61 [path history] [tgz]
  1. bind/
  2. composite_node_spec/
  3. devfs/
  4. driver_development/
  5. meta/
  6. shutdown/
  7. testing/
  8. tests/
  9. bootup_tracker.cc
  10. bootup_tracker.h
  11. BUILD.gn
  12. composite_node_spec_v2.cc
  13. composite_node_spec_v2.h
  14. controller_allowlist_passthrough.cc
  15. controller_allowlist_passthrough.h
  16. driver_host.cc
  17. driver_host.h
  18. driver_host_loader_service.cc
  19. driver_host_loader_service.h
  20. driver_host_runner.cc
  21. driver_host_runner.h
  22. driver_runner.cc
  23. driver_runner.h
  24. inspect.cc
  25. inspect.h
  26. main.cc
  27. node.cc
  28. node.h
  29. parent_set_collector.cc
  30. parent_set_collector.h
  31. README.md
  32. runner.cc
  33. runner.h
src/devices/bin/driver_manager/README.md

Driver Manager

The Driver Manager is responsible for enumerating, loading, and managing the life cycle of device drivers. Driver Manager also vends the /dev directory to the rest of the system so that others can access drivers.

Building and Running

Driver Manager is built and run in every product. It is launched on startup.

If you're looking for running a hermetic Driver Manager for testing, please see driver test realm.

Package Sources

Driver Manager has two sources of drivers identified by fuchsia-pkg:// URLs:

  1. the base resolver
  2. the full resolver, if ephemeral drivers are enabled

Both the base resolver and full resolver resolve components using the fuchsia.component.resolution/Resolver FIDL interface. To disambiguate these sources, Driver Manager consumes the base resolver capability as fuchsia.component.resolution/Resolver-base and the full resolver capability as fuchsia.component.resolution/Resolver-full.