On Sun, Dec 27, 2020 at 10:12:20PM +0100, Hans de Goede wrote: > The (shared) probing code of the arizona-i2c and arizona-spi modules > takes the following steps during init: > > 1. Call mfd_add_devices() for a set of early child-devices, this > includes the arizona_ldo1 device which provides one of the > core-regulators. > > 2. Bulk enable the core-regulators. > > 3. Read the device id. > > 4. Call mfd_add_devices() for the other child-devices. > > This sequence depends on 1. leading to not only the child-device > being created, but also the driver for the child-device binding > to it and registering its regulator. > > This requires the arizona_ldo1 driver to be loaded before the > shared probing code runs. Add a doftdep for this to both modules to > ensure that this requirement is met. > > Note this mirrors the existing MODULE_SOFTDEP("pre: wm8994_regulator") > in the wm8994 code, which has a similar init sequence. > > Signed-off-by: Hans de Goede <hdegoede@xxxxxxxxxx> > --- Acked-by: Charles Keepax <ckeepax@xxxxxxxxxxxxxxxxxxxxx> Thanks, Charles