On Friday 26 August 2016, Ulf Hansson wrote: > On 25 August 2016 at 18:41, Florian Fainelli <f.fainelli@xxxxxxxxx> wrote: > > On 08/19/2016 07:05 AM, Jaedon Shin wrote: > >> Hi Ulf, > >> > >>> On Aug 19, 2016, at 10:44 PM, Ulf Hansson <ulf.hansson@xxxxxxxxxx> wrote: > >>> > >>> On 19 August 2016 at 04:25, Jaedon Shin <jaedon.shin@xxxxxxxxx> wrote: > >>>> Hi Alan, > >>>> > >>>> On Aug 18, 2016, at 11:27 PM, Alan Cooper <alcooperx@xxxxxxxxx> wrote: > >>>>> > >>>>> It would be better to make this a MIPS only setting because this issue > >>>>> only exists for MIPS chips and some newer ARM chips will support 64 > >>>>> bit DMA. > >>>>> Also, since there's been a general effort to reduce the use QUIRKs, > >>>>> you could clear the SDHCI_CAN_64BIT in CAPS1 instead of using the > >>>>> QUIRK. > >>>>> > >>>>> @@ -101,6 +101,9 @@ static int sdhci_brcmstb_probe(struct platform_device *pdev) > >>>>> host->caps1 = sdhci_readl(host, SDHCI_CAPABILITIES_1); > >>>>> host->caps1 &= ~(SDHCI_SUPPORT_SDR50 | SDHCI_SUPPORT_SDR104 | > >>>>> SDHCI_SUPPORT_DDR50); > >>>>> +#if defined(CONFIG_MIPS) > >>>>> + host->caps1 &= ~SDHCI_CAN_64BIT; > >>>>> +#endif > >>>>> host->quirks |= SDHCI_QUIRK_MISSING_CAPS | > >>>>> SDHCI_QUIRK_BROKEN_TIMEOUT_VAL; > >>>> > >>>> It's better to me, but we should use host->cap instead of host->cap1. I will update > >>>> patch with your comment. > >>> > >>> Please, then also send this to the public linux-mmc list. > >>> > >>> Kind regards > >>> Uffe > >>> > >> > >> I'm sorry I could not add the public linux-mmc list this mail thread, but > >> I have already sent the updated patch with linux-mmc. > >> > >> https://patchwork.kernel.org/patch/9289189/ > > > > Humm, is not this one of these cases where we would expect the > > compatible string to dictacte whether enabling 64_BIT_DMA makes sense or > > not? > > Yes! > > Jaedon, can you please send an updated patch. Please also bump the > version number of the patch! > Sorry for jumping in late in the thread, but if I understand it right that the problem is an SDHCI controller claiming to support 64-bit DMA that is connected to a bus that only supports 32-bit addressing, this should be handled by interpreting the dma-ranges property of the parent bus instead. Arnd -- To unsubscribe from this list: send the line "unsubscribe linux-mmc" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html