On Tue, Nov 24, 2020 at 05:18:31PM +0100, Loic Poulain wrote: > A MHI client device should be child of the MHI controller device. > Today both MHI controller and its MHI clients are direct children > of the same bus device. This patch fixes the hierarchy. > Change looks good to me but as Jeff said, please elaborate the commit message to justify the reasoning behind this. Thanks, Mani > Signed-off-by: Loic Poulain <loic.poulain@xxxxxxxxxx> > --- > v2: fix commit message > > drivers/bus/mhi/core/init.c | 10 +++++++++- > 1 file changed, 9 insertions(+), 1 deletion(-) > > diff --git a/drivers/bus/mhi/core/init.c b/drivers/bus/mhi/core/init.c > index 436221c..c7a7354 100644 > --- a/drivers/bus/mhi/core/init.c > +++ b/drivers/bus/mhi/core/init.c > @@ -1137,7 +1137,15 @@ struct mhi_device *mhi_alloc_device(struct mhi_controller *mhi_cntrl) > device_initialize(dev); > dev->bus = &mhi_bus_type; > dev->release = mhi_release_device; > - dev->parent = mhi_cntrl->cntrl_dev; > + > + if (mhi_cntrl->mhi_dev) { > + /* for MHI client devices, parent is the MHI controller device */ > + dev->parent = &mhi_cntrl->mhi_dev->dev; > + } else { > + /* for MHI controller device, parent is the bus device (e.g. pci device) */ > + dev->parent = mhi_cntrl->cntrl_dev; > + } > + > mhi_dev->mhi_cntrl = mhi_cntrl; > mhi_dev->dev_wake = 0; > > -- > 2.7.4 >