On Tue, Jun 23, 2020 at 12:49:15PM -0700, Florian Fainelli wrote: > On 6/22/20 6:51 AM, Mark Brown wrote: > > If the bus includes power management for the devices on the bus the > > controller is generally responsible for that rather than the devices, > > the devices access this via facilities provided by the bus if needed. > > If the device is enumerated by firmware prior to being physically > > enumerable then the bus will generally instantiate the device model > > device and then arrange to wait for the physical device to appear and > > get joined up with the device model device, typically in such situations > > the physical device might appear and disappear dynamically at runtime > > based on what the driver is doing anyway. > In premise there is nothing that prevents the MDIO bus from taking care > of the regulators, resets, prior to probing the PHY driver, what is > complicated here is that we do need to issue a read of the actual PHY to > know its 32-bit unique identifier and match it with an appropriate > driver. The way that we have worked around this with if you do not wish > such a hardware access to be made, is to provide an Ethernet PHY node > compatible string that encodes that 32-bit OUI directly. In premise the > same challenges exist with PCI devices/endpoints as well as USB, would > they have reset or regulator typically attached to them. That all sounds very normal and is covered by both cases I describe? > > We could use a pre-probe stage in the device model for hotpluggable > > buses in embedded contexts where you might need to bring things out of > > reset or power them up before they'll appear on the bus for enumeration > > but buses have mostly handled that at their level. > That sounds like a better solution, are there any subsystems currently > implementing that, or would this be a generic Linux device driver model > addition that needs to be done? Like I say I'm suggesting doing something at the device model level.
Attachment:
signature.asc
Description: PGP signature