On 29.12.2016 23:50, Moritz Fischer wrote: > For mux check if the parent is already a device of UCLASS_I2C and if yes > just use that. Otherwise see if someone specified an i2c-parent phandle. > This mimics the behavior found in the Kernel, as it removes the > requirement to explicitly specify a i2c-parent phandle. > > Signed-off-by: Moritz Fischer <moritz.fisc...@ettus.com> > Cc: Heiko Schocher <h...@denx.de> > Cc: Bin Meng <bmeng...@gmail.com> > Cc: Simon Glass <s...@chromium.org> > Cc: Michal Simek <michal.si...@xilinx.com> > Cc: u-boot@lists.denx.de > --- > drivers/i2c/muxes/i2c-mux-uclass.c | 9 +++++++++ > 1 file changed, 9 insertions(+) > > diff --git a/drivers/i2c/muxes/i2c-mux-uclass.c > b/drivers/i2c/muxes/i2c-mux-uclass.c > index 7a698b6..e01b773 100644 > --- a/drivers/i2c/muxes/i2c-mux-uclass.c > +++ b/drivers/i2c/muxes/i2c-mux-uclass.c > @@ -86,6 +86,15 @@ static int i2c_mux_post_probe(struct udevice *mux) > debug("%s: %s\n", __func__, mux->name); > priv->selected = -1; > > + /* if parent is of i2c uclass already, we'll take that, otherwise > + * look if we find an i2c-parent phandle */
Incorrect comment style. > + if (UCLASS_I2C == device_get_uclass_id(mux->parent)) { > + priv->i2c_bus = dev_get_parent(mux); > + debug("%s: bus=%p/%s\n", __func__, priv->i2c_bus, > + priv->i2c_bus->name); > + return 0; > + } > + > ret = uclass_get_device_by_phandle(UCLASS_I2C, mux, "i2c-parent", > &priv->i2c_bus); > if (ret) > The part of this will be good to also handle req_seq for mux busses. But at least this should solved part of the problems. Thanks, Michal _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot