From: Wadim Egorov <w.egorov@phytec.de>
To: Jaehoon Chung <jh80.chung@samsung.com>
Cc: linux-mmc@vger.kernel.org, ulf.hansson@linaro.org
Subject: Re: Initialising eMMC: Card stuck in programming state! __mmc_switch
Date: Wed, 31 Aug 2016 16:25:08 +0200 [thread overview]
Message-ID: <57C6E8C4.7090407@phytec.de> (raw)
In-Reply-To: <41404a08-c383-f087-4e4f-5d8f2dbbcad6@samsung.com>
Hi Jaehoon,
On 31.08.2016 12:29, Jaehoon Chung wrote:
> Hi Wadim,
>
> On 08/31/2016 06:56 PM, Wadim Egorov wrote:
>> Hello,
>>
>> I have a RK3288 based board with a Micron eMMC chip (MTFC16GAKAECN-4M
>> IT). This eMMC is EDEC/MMC standard version 5.0-compliant.
>>
>> While doing eMMC boot tests with a 4.4.16 and 4.8.0-rc4 kernel I run
>> into the following problem after more than 100 cold resets:
>>
>> [ 3.535448] dwmmc_rockchip ff0c0000.dwmmc: 1 slots initialized
>> [ 3.543823] dwmmc_rockchip ff0f0000.dwmmc: IDMAC supports 32-bit address mode.
>> [ 3.551276] dwmmc_rockchip ff0f0000.dwmmc: Using internal DMA controller.
>> [ 3.558206] dwmmc_rockchip ff0f0000.dwmmc: Version ID is 270a
>> [ 3.564275] dwmmc_rockchip ff0f0000.dwmmc: DW MMC controller at irq 31,32 bit host data width,256 deep fifo
>> [ 3.604426] mmc_host mmc0: Bus speed (slot 0) = 400000Hz (slot req 400000Hz, actual 400000HZ div = 0)
>> [ 3.634510] dwmmc_rockchip ff0f0000.dwmmc: 1 slots initialized
>> [ 3.645305] leds-pca953x 4-0062: setting platform data
>> [ 3.656675] ledtrig-cpu: registered to indicate activity on CPUs
>> [ 3.663200] usbcore: registered new interface driver usbhid
>> [ 3.668783] usbhid: USB HID core driver
>> [ 3.672674] usbcore: registered new interface driver r8188eu
>> [ 3.678393] usbcore: registered new interface driver rtl8723au
>> [ 3.699210] mmc_host mmc0: Bus speed (slot 0) = 50000000Hz (slot req 52000000Hz, actual 50000000HZ div = 0)
>> [ 3.900398] random: crng init done
>> [ 3.954089] NET: Registered protocol family 10
>> [ 3.974107] mmc0: Card stuck in programming state! __mmc_switch
>> [ 3.980027] mmc0: error -110 whilst initialising MMC card
> Is it produced with both 4.4.16 and 4.8.0-rc4?
yes, with both versions.
> Could you enable the CONFIG_MMC_DEBUG? And which mode do you use?
mode? Do you mean busmode? I am not sure. The eMMC runs with 50MHz, so I
think it should be SDR/DDR52 mode. Debug message below says busmode 2:
[ 4.588352] dwmmc_rockchip ff0f0000.dwmmc: Looking up vmmc-supply
from device tree
[ 4.588671] dwmmc_rockchip ff0f0000.dwmmc: Looking up vqmmc-supply
from device tree
[ 4.589246] mmc_host mmc0: card is present
[ 4.589784] mmc0: clock 0Hz busmode 2 powermode 1 cs 0 Vdd 21 width 1
timing 0
[ 4.589849] dwmmc_rockchip ff0f0000.dwmmc: mmc_regulator_set_vqmmc:
found vmmc voltage r
ange of 3300000-3400000uV
[ 4.589897] mmc_host mmc0: Regulator set error -22 - 3.3 V
[ 4.589937] dwmmc_rockchip ff0f0000.dwmmc: Initial signal voltage of 1.8v
[ 4.615903] mmc0: clock 400000Hz busmode 2 powermode 2 cs 0 Vdd 21
width 1 timing 0
[ 4.616148] mmc_host mmc0: Bus speed (slot 0) = 400000Hz (slot req
400000Hz, actual 4000
00HZ div = 0)
[ 4.646014] dwmmc_rockchip ff0f0000.dwmmc: 1 slots initialized
[ 4.646792] leds-pca953x 4-0062: setting platform data
[ 4.714311] mmc0: mmc_rescan_try_freq: trying to init card at 400000 Hz
...
[ 5.454083] mmc0: starting CMD52 arg 00000c00 flags 00000195
[ 5.454090] mmc_host mmc0: card is present
[ 5.455108] mmc0: req done (CMD52): -110: 00000000 00000000 00000000
00000000
[ 5.465492] mmc0: starting CMD52 arg 80000c08 flags 00000195
[ 5.465498] mmc_host mmc0: card is present
[ 5.471260] mmc0: req done (CMD52): -110: 00000000 00000000 00000000
00000000
[ 5.471288] mmc0: clock 400000Hz busmode 2 powermode 2 cs 1 Vdd 21
width 1 timing 0
[ 5.472249] mmc0: starting CMD0 arg 00000000 flags 000000c0
[ 5.472254] mmc_host mmc0: card is present
...
5.641973] mmc0: req done (CMD13): 0: 00000900 00000000 00000000 00000000
[ 5.641981] mmc0: clock 52000000Hz busmode 2 powermode 2 cs 0 Vdd 21
width 1 timing 1
[ 5.641996] mmc_host mmc0: Bus speed (slot 0) = 50000000Hz (slot req
52000000Hz, actual
50000000HZ div = 0)
...
[ 5.935949] mmc0: req done (CMD13): 0: 00000e00 00000000 00000000
00000000
[ 5.935955] mmc0: Card stuck in programming state! __mmc_switch
[ 5.935960] mmc0: error -110 whilst initialising MMC card
[ 5.935964] mmc0: clock 0Hz busmode 2 powermode 0 cs 0 Vdd 0 width 1
timing 0
[ 6.441560] mmc_host mmc0: Timeout sending command (cmd 0x202000 arg
0x0 status 0x0)
Here is the full output (without mmc1* messages) with CONFIG_MMC_DEBUG:
http://pastebin.com/qVTZfE6c
>
> According to below bootloader log, you're using eMMC4.0 card, right?
No, it is an eMMC5.0 card. The bootloader output seems to be wrong.
mmc extcsd read /dev/mmcblk0
=============================================
Extended CSD rev 1.7 (MMC 5.0)
=============================================
Regards,
Wadim
>
> Best Regards,
> Jaehoon Chung
>
>>
>> The bootloader I am using has no problems with the eMMC as you can see
>> below:
>>
>> barebox@phycore-rk3288:/ devinfo mshc0
>> Host information:
>> current clock: 52000000
>> current buswidth: 8
>> capabilities: 4bit 8bit sd-hs mmc-hs mmc-52MHz
>> Card information:
>> Attached is a MMC card
>> Version: 4.0
>> Capacity: 14080 MiB
>> High capacity card
>> CID: 13014E52-314A3536-4C11616D-559BA2BD
>> CSD: D04F0132-0F5913FF-FFFFFFEF-8A4000BF
>> Max. transfer speed: 52000000 Hz
>> capabilities: 4bit mmc-hs mmc-52MHz
>> Manufacturer ID: 13
>> OEM/Application ID: 014E
>> Product name: 'R1J56'
>> Product revision: 4.12
>> Serial no: 1634555291
>> Manufacturing date: 10.1999
>> Parameters:
>> boot: disabled ("disabled", "boot0", "boot1", "user")
>> nt_signature: 8a35eb82
>> probe: 0
>>
>> Any hints on what the problem could be?
>>
>> Regards,
>> Wadim
>>
>> --
>> To unsubscribe from this list: send the line "unsubscribe linux-mmc" in
>> the body of a message to majordomo@vger.kernel.org
>> More majordomo info at http://vger.kernel.org/majordomo-info.html
>>
>>
>> .
>>
next prev parent reply other threads:[~2016-08-31 14:25 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <CGME20160831095654epcas1p46eff3c8b36117c8baef87050aee315a9@epcas1p4.samsung.com>
2016-08-31 9:56 ` Initialising eMMC: Card stuck in programming state! __mmc_switch Wadim Egorov
2016-08-31 10:29 ` Jaehoon Chung
2016-08-31 14:25 ` Wadim Egorov [this message]
2016-09-01 1:34 ` Shawn Lin
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=57C6E8C4.7090407@phytec.de \
--to=w.egorov@phytec.de \
--cc=jh80.chung@samsung.com \
--cc=linux-mmc@vger.kernel.org \
--cc=ulf.hansson@linaro.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox