Opened 21 months ago

Last modified 21 months ago

#18332 new bug

device_manager: device node driver initialization should take node dependencies in account

Reported by: X512 Owned by: nobody
Priority: normal Milestone: Unscheduled
Component: System/Kernel Version: R1/Development
Keywords: Cc:
Blocked By: Blocking:
Platform: All

Description

This is hrev56855.

Some device drivers depend on other device nodes to be operational. So drivers must be attached first to dependency nodes. There are various ways to specify dependency nodes, for example FDT phandle attribute. For non-x86 hardware and FDT based systems devices commonly depend on interrupt controllers, GPIO, power and clock generators, connector physical interface controllers etc.. For non-x86 hardware it is common that hardware is separated to many small parts that have separate FDT node and need separate driver instance.

Change History (1)

comment:1 by X512, 21 months ago

Implementation ideas:

  1. Defer driver node attachment during bus nodes publishing to avoid situation when dependency node do not exist at all when attempting to attach driver node to current node.
  1. Let driver report device manager about dependencies without attached driver when probing driver so device manager can probe driver again when all dependency nodes will be satisfied.
Note: See TracTickets for help on using tickets.