i2c: sun6i_p2wi: Initialize chips in .child_pre_probe
authorSamuel Holland <samuel@sholland.org>
Fri, 18 Mar 2022 04:52:33 +0000 (23:52 -0500)
committerAndre Przywara <andre.przywara@arm.com>
Mon, 4 Apr 2022 22:24:17 +0000 (23:24 +0100)
commit48457f7ab031884d749e84440f4e5ae798e77c39
tree735fd2272ae10aae1482c0b6f43ff6b3420dbe0c
parenta0ca51f70b7559733c65cef1069f1b39aa410a0f
i2c: sun6i_p2wi: Initialize chips in .child_pre_probe

Chips attached to the P2WI bus require an initialization command before
they can be used. (Specifically, this switches the chip from I2C mode
to P2WI mode.) The driver does this in its .probe_chip hook, under the
assumption that .probe_chip is called during child probe. This is not
the case; .probe_chip is only called by dm_i2c_probe, which is intended
for use by board-level code, not for chips with OF nodes.

Since this initialization command must be run before a child chip can be
used, do it before probing each child.

Signed-off-by: Samuel Holland <samuel@sholland.org>
Acked-by: Andre Przywara <andre.przywara@arm.com>
Signed-off-by: Andre Przywara <andre.przywara@arm.com>
drivers/i2c/sun6i_p2wi.c