Hi Adrian, On 08/01/20 5:29 pm, Adrian Hunter wrote: > On 8/01/20 1:49 pm, Faiz Abbas wrote: >> Adrian, >> >> On 08/01/20 5:12 pm, Adrian Hunter wrote: >>> On 8/01/20 1:30 pm, Faiz Abbas wrote: >>>> Hi, >>>> >>>> On 30/12/19 2:53 pm, Faiz Abbas wrote: >>>>> In some Arasan SDHCI controllers, after tuning, the tuning pattern data >>>>> is leftover in the sdhci buffer. This leads to issues with future data >>>>> commands, especially when command queuing is enabled. The following >>>>> patches help fix this issue by resetting data lines after tuning is >>>>> finished. The first two patches have been tested with TI's am65x and >>>>> j721e SoCs using the sdhci_am654 driver. >>>>> >>>>> I have a strong suspicion that this is the same issue with >>>>> the sdhci-of-arasan driver where they are forced to dump data from the >>>>> buffer before enabling command queuing. I need help from someone with a >>>>> compatible platform to test this. >>>>> >>>> >>>> I had some discussions with our hardware team and they say we should be >>>> asserting both SRC and SRD reset after tuning to start from a clean >>>> state. Will update the patches to do that in v2. >>> >>> Can you use the ->execute_tuning() for that instead of a quirk? >>> >> >> ->platform_execute_tuning() is called before __sdhci_execute_tuning(). I >> need this to be done after that. Should I add a post_tuning() callback? > > I meant hook host->mmc_host_ops.execute_tuning and call > sdhci_execute_tuning() and then sdhci_reset(), like in intel_execute_tuning(). > Ok. Makes sense. Thanks, Faiz