W dniu 2020-09-04 o 16:23, Andrew Lunn pisze:
On Fri, Sep 04, 2020 at 04:00:55PM +0200, Adam Rudziński wrote:
W dniu 2020-09-04 o 15:45, Andrew Lunn pisze:
Just a bunch of questions.
Actually, why is it necessary to have a full MDIO bus scan already during
probing peripherals?
That is the Linux bus model. It does not matter what sort of bus it
is, PCI, USB, MDIO, etc. When the bus driver is loaded, the bus is
enumerated and drivers probe for each device found on the bus.
OK. But is it always expected to find all the devices on the bus in the
first run?
Yes. Cold plug expects to find all the device while scanning the bus.
Does the bus model ever allow to just add any more devices? Kind of,
"hotplug". :)
Hotplug is triggered by hardware saying a new device has been
added/removed after cold plug.
This is not a hotplug case. The hardware has not suddenly appeared, it
has always been there.
Andrew
There still is something that I would like to have clarified. Let me ask
a bit more.
Even if the hardware is fixed, in general it doesn't mean that there is
only one possible way of bringing it up in software (software in
general, not necessarily Linux). Does the Linux driver/bus model define
the allowed options more precisely?
Or:
There is "coldplug", there is "hotplug", and let's call the intermediate
possibility "warmplug" - the hardware is fixed, but it is discovered not
in the same scan. Some devices are found in scans triggered by something
later. For example, by a driver which doesn't have its attached devices
discovered yet. Let's assume for now that it makes sense, and this can
result in a perfectly running system.
Does the Linux driver/bus model explicitly and strictly require
"coldplug" approach in the case of fixed hardware? Is "warmplug"
explicitly and strictly not allowed, or it just "doesn't feel right"?
Best regards,
Adam