Re: [RFC] How working MMC_BUS_WIDTH_TEST??

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Jun 28, 2011, at 3:54 AM, Jaehoon Chung wrote:

> Hi..
> 
> I found the MMC_CAP_BUS_WIDTH_TEST...
> In mailing, I read the related patches..
> but i didn't fully understand...
> 
> /*
> * If controller can't handle bus width test,
> * compare ext_csd previously read in 1 bit mode
> * against ext_csd at new bus width
> */
> if (!(host->caps & MMC_CAP_BUS_WIDTH_TEST))
> 	err = mmc_compare_ext_csds(card,
> 		ext_csd,
> 		bus_width);
> else
> 	err = mmc_bus_test(card, bus_width);
> if (!err)
> 	break;
> 
> And i tested suspend/resume..it's failed..
> If i didn't set MMC_CAP_BUS_WIDTH_TEST, always return -EINVAL..
> (using SDHCI controller, card is eMMC4.41)
> 
> Didn't compare ext_csd's value..
> 
> So i want to know how use MMC_CAP_BUS_WIDTH_TEST..

I am using eMMC and code works fine so  maybe there is issue in no ext_csd.  You will need to
add debug code to the compare_ext_csd and see what is not right and we can adjust the code.
I am surprised that resume fails -- code will default to 1 bit data and it is NOT possible for this to
be wrong.  At the moment -- clueless to explain with more information.

TheCMD14/ CMD19 is in JEDEC spec for bus width testing.  Sends a pattern to the card and
based on the returned values detects the bus width.  Some controllers do NOT support this command.
The just do not work.  You need to figure this out by enabling the quirk.  No other way to know.

regards,

Philip

> 
> Thanks,
> Jaehoon Chung

--
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


[Index of Archives]     [Linux USB Devel]     [Linux Media]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux