On Mon, Jun 22, 2020 at 11:37:38AM +0200, Bartosz Golaszewski wrote: > From: Bartosz Golaszewski <bgolaszewski@xxxxxxxxxxxx> > > Currently the PHY ID is read without taking the PHY out of reset. This > can only work if no resets are defined. This change delays the ID read > until we're actually registering the PHY device - this is needed because > earlier (when creating the device) we don't have a struct device yet > with resets already configured. > > While we could use the of_ helpers for GPIO and resets, we will be adding > PHY regulator support layer on and there are no regulator APIs that work > without struct device. The PHY subsystem cannot be the first to run into this problem, that you need a device structure to make use of the regulator API, but you need the regulator API to probe the device. How do other subsystems work around this? Maybe it is time to add a lower level API to the regulator framework? Andrew