On 07/02/2016 03:17 AM, Simon Glass wrote: > Hi, > > On 1 July 2016 at 04:37, Jaehoon Chung <jh80.ch...@samsung.com> wrote: >> On 07/01/2016 04:28 AM, Simon Glass wrote: >>> Hi Meteusz, >>> >>> On 30 June 2016 at 12:18, Mateusz Kulikowski >>> <mateusz.kulikow...@gmail.com> wrote: >>>> On 29.06.2016 05:27, Simon Glass wrote: >>>>> Hi Matt, >>>>> >>>>> On 25 June 2016 at 14:57, Matt Corallo <li...@bluematt.me> wrote: >>>>>> Signed-off-by: Matt Corallo <g...@bluematt.me> >>>>>> --- >>>>>> drivers/mmc/mmc.c | 3 ++- >>>>>> 1 file changed, 2 insertions(+), 1 deletion(-) >>>>>> >>>>>> diff --git a/drivers/mmc/mmc.c b/drivers/mmc/mmc.c >>>>>> index aabfc71..eba20f0 100644 >>>>>> --- a/drivers/mmc/mmc.c >>>>>> +++ b/drivers/mmc/mmc.c >>>>>> @@ -1734,7 +1734,8 @@ int mmc_init(struct mmc *mmc) >>>>>> #ifdef CONFIG_DM_MMC >>>>>> struct mmc_uclass_priv *upriv = dev_get_uclass_priv(mmc->dev); >>>>>> >>>>>> - upriv->mmc = mmc; >>>>>> + if (upriv) >>>>>> + upriv->mmc = mmc; >>>>>> #endif >>>>>> if (mmc->has_init) >>>>>> return 0; >>>>>> -- >>>>>> 2.1.4 >>>>> >>>>> Can you please add a commit message explaining why this is needed and >>>>> what it fixes? How can mmc_init() be called before the MMC device is >>>>> there? Is this related to this patch? >>>>> >>>>> http://patchwork.ozlabs.org/patch/640735/ >>>> >>>> It's related in a way that it fixed crash of dragonboard before I >>>> submitted my patch :) >>>> >>>> Not sure if it meant to fix dragonboard or some other board. >>>> >>>> Although - imho - it's nice to make check like that.. or at least some >>>> kind of assert. >> >> I have just one question..Maybe it's not related with this patch.. >> But i saw other driver did that upriv->mmc is assigned to mmc in each >> drivers. >> >> What's difference with "upriv->mmc = mmc" in mmc.c? >> >> ./drivers/mmc/fsl_esdhc.c:972: upriv->mmc = priv->mmc; >> ./drivers/mmc/mmc.c:1606: upriv->mmc = mmc; >> ./drivers/mmc/mmc-uclass.c:91: return upriv->mmc; >> ./drivers/mmc/msm_sdhci.c:147: upriv->mmc = host->mmc; >> ./drivers/mmc/omap_hsmmc.c:830: upriv->mmc = mmc; >> ./drivers/mmc/rockchip_dw_mmc.c:114: upriv->mmc = host->mmc; >> ./drivers/mmc/socfpga_dw_mmc.c:110: upriv->mmc = host->mmc; >> ./drivers/mmc/uniphier-sd.c:727: upriv->mmc = priv->mmc; >> ./drivers/mmc/zynq_sdhci.c:52: upriv->mmc = host->mmc; >> >> Is it duplicated? >> (I didn't see in more detail.) >> >> Best Regards, >> Jaehoon Chung > > I am actually not happy with how this is at present. It should be > handled by a function call. If you'd like to look at this please do, > otherwise I will take a pass at it. It should be clear at this point > what we need.
I will send the patch for cleaning. Best Regards, Jaehoon Chung > >> >>> >>> An assert() would be fine with me. >>> >>> Regards, >>> Simon >>> _______________________________________________ >>> U-Boot mailing list >>> U-Boot@lists.denx.de >>> http://lists.denx.de/mailman/listinfo/u-boot >>> >>> >>> >> > > > Regards, > Simon > > > _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot