From: b32955@freescale.com (Huang Shijie)
To: linux-arm-kernel@lists.infradead.org
Subject: GPMI-NAND Status?
Date: Tue, 9 Aug 2011 16:18:19 +0800 [thread overview]
Message-ID: <4E40ED4B.6030302@freescale.com> (raw)
In-Reply-To: <CAHMSPgPzVordYOn5wgp0OZLGbAqkSGKJxDre8bvRpTyAz85udw@mail.gmail.com>
Hi Koen:
thanks for your test.
> Hi,
>
>
>
> On Tue, Aug 9, 2011 at 8:36 AM, Huang Shijie<b32955@freescale.com> wrote:
>> Hi Koen:
>>> Hi,
>>>
>>> On Mon, Aug 8, 2011 at 12:37 PM, Huang Shijie<b32955@freescale.com>
>>> wrote:
>>>> Hi,
>>>>> On my target, the mxs-dma is working for sdio until the gpmi-nand
>>>>> gives a timeout. After that the dma for sdio is *not fully* working
>>>>> anymore.
>>>>>
>>>> We need more log in following aspects:
>>>> [1] apbh-dma registers
>>>> [2] clk registers
>>>> [3] gpmi registers
>>>>
>>>> Please git-apply the patch in the attachment.
>>>> It will print out more DMA information WHEN dma-timeout occur.
>>> Don't get it. What exactly are you trying to dump?
>>> This patch dumps CTRL0, CTRL1, CTRL2, DEVSEL but also some registers
>>> of APBH channel0 which is reserved....
>> sorry, I intended to print out the channel 4(NAND_DEVICE0).
>>
>> I want to know that:
>> When the dma timeout occurs, whether it caused by the GPMI or by the DMA
>> itself.
> Ok, I was a little confused about the addresses, but it seems like you
> are using mx28 (and corresponding addresses). APBH dma for mx23 has
> different address according to the datasheet.
> So I adjusted the patch a little for mx23, see attachment.
>
you are right. My address was wrong.
> Here is the log with some comments added on the dma.
>
> # ubiformat /dev/mtd1
> ubiformat: mtd1 (nand), size 20971520 bytes (20.0 MiB), 40 eraseblocks
> of 524288 bytes (512.0 KiB), min. I/O size 4096 bytes
> libscan: scanning eraseblock 0 -- 2 % complete [ 86.720000] [
> start_dma_without_bch_irq : 393 ] DMA timeout, last DMA :1
> [ 86.720000] ------------------------DMA DUMP BEGIN ----------
> [ 86.730000] APBH REG :0 : 30000000 // -> HW_APBH_CTRL0:
> AHB_BURST8_EN, APB_BURST4_EN
> [ 86.730000] APBH REG :10 : 00FF0000 // -> HW_APBH_CTRL1:
> CHX_CMDCMPLT_IRQ_EN, no cmdcmplt_irq
> [ 86.740000] APBH REG :20 : 00000000 // -> HW_APBH_CTRL2: no error_irq
> [ 86.740000] APBH REG :30 : 00000000 // -> HW_APBH_DEVSEL: "N/A
> for apbh bridge dma."
> [ 86.750000] APBH CH4 REG :200 : 418D7098 // executing last dma
> command of command chain (see below)
> [ 86.750000] APBH CH4 REG :210 : 00000000 // no next command, ok
> [ 86.750000] APBH CH4 REG :220 : 000001C8 // HW_APBH_CH4_CMD:
> COMMAND = NO DMA TRANSFER, IRQONCMPLT, WAIT4ENDCMD, SEMAPHORE,
> HALTONTERMINATE
> [ 86.760000] APBH CH4 REG :230 : 00000000 // HW_APBH_CH4_BAR:
> "Address of system memory buffer to be read or written over the AHB
> bus." -> strange value ...
> [ 86.760000] APBH CH4 REG :240 : 00010000 // HW_APBH_CH4_SEMA:
> semaphore counter is 1
> [ 86.770000] APBH CH4 REG :250 : 03A00015 // HW_APBH_CH4_DEBUG1:
> LOCK, NEXTCMDADDRVALID, RD_FIFO_EMPTY, WR_FIFO_EMPTY, STATEMACHINE =
> "WAIT_END = 0x15 When the Wait for Command End bit is set, the state
> machine enters this state until the DMA device indicates that the
> command is complete."
> [ 86.770000] APBH CH4 REG :260 : 00000000 // -> HW_APBH_CH4_DEBUG2:
> no apb of ahb bytes remaining for transfer
> [ 86.780000] [ 0 ] : ME : 418d7000, next : 418d704c, bits :
> 00002304, bytes : 00000000, buf : 00000000
> [ 86.790000] [ 0 ] PIO[0] : 03800000
> [ 86.790000] [ 0 ] PIO[1] : 00000000
> [ 86.800000] [ 0 ] PIO[2] : 00000000
> [ 86.800000] [ 1 ] : ME : 418d704c, next : 418d7098, bits :
> 00006304, bytes : 00000001, buf : 4181b000
> [ 86.810000] [ 1 ] PIO[0] : 018010da
> [ 86.810000] [ 1 ] PIO[1] : 00000000
> [ 86.820000] [ 1 ] PIO[2] : 000011ff
> [ 86.820000] [ 2 ] : ME : 418d7098, next : 00000000, bits :
It hungs here.
> 000023c8, bytes : 00000000, buf : 00000000
> [ 86.830000] [ 2 ] PIO[0] : 038010da
> [ 86.840000] [ 2 ] PIO[1] : 00000000
> [ 86.840000] [ 2 ] PIO[2] : 00000000
> [ 86.840000] ------------------------DMA DUMP END ------------
> [ 86.850000] [ gpmi_show_regs : 076 ] -------------- Show GPMI
> registers ----------
> [ 86.860000] [ gpmi_show_regs : 079 ] offset 0x000 : 0x238010da
> [ 86.870000] [ gpmi_show_regs : 079 ] offset 0x010 : 0x00000000
> [ 86.870000] [ gpmi_show_regs : 079 ] offset 0x020 : 0x000011ff
> [ 86.880000] [ gpmi_show_regs : 079 ] offset 0x030 : 0x000010da
> [ 86.890000] [ gpmi_show_regs : 079 ] offset 0x040 : 0x40f0c480
> [ 86.890000] [ gpmi_show_regs : 079 ] offset 0x050 : 0x40f09000
> [ 86.900000] [ gpmi_show_regs : 079 ] offset 0x060 : 0x0004000c
> [ 86.910000] [ gpmi_show_regs : 079 ] offset 0x070 : 0x00010203
> [ 86.910000] [ gpmi_show_regs : 079 ] offset 0x080 : 0x05000000
> [ 86.920000] [ gpmi_show_regs : 079 ] offset 0x090 : 0x09020101
> [ 86.920000] [ gpmi_show_regs : 079 ] offset 0x0a0 : 0x00000030
> [ 86.930000] [ gpmi_show_regs : 079 ] offset 0x0b0 : 0x80000010
> [ 86.940000] [ gpmi_show_regs : 079 ] offset 0x0c0 : 0x100000ba
> [ 86.940000] [ gpmi_show_regs : 079 ] offset 0x0d0 : 0x03000000
> [ 86.950000] [ gpmi_show_regs : 081 ] -------------- Show GPMI
> registers end ----------
> [ 86.960000] Kernel panic - not syncing: -----------DMA
> FAILED------------------
Please post the functions-calling stack when the panic occurs.
I also want to know where the code is running when the time-out occur.
My gmail is shijie8 at gmail.com
We may talk more on the gtalk.
Best Regards
Huang Shijie
> Br,
> Koen
>
>>
>> Please try the new patch.
>>
>> Best Regards
>> Huang Shijie
>>> Then it prints some debug info on channel 1 (ssp1) and then alle
>>> channel 2 register except the debug register (ssp2 = not used here).
>>>
>>> What info do you need?
>>>
>>> Br,
>>> Koen
>>>
>>>> Best Regards
>>>> Huang Shijie
>>>>
>>> _______________________________________________
>>> linux-arm-kernel mailing list
>>> linux-arm-kernel at lists.infradead.org
>>> http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
>>>
>>
>> _______________________________________________
>> linux-arm-kernel mailing list
>> linux-arm-kernel at lists.infradead.org
>> http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
>>
>>
next prev parent reply other threads:[~2011-08-09 8:18 UTC|newest]
Thread overview: 33+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-08-05 13:51 GPMI-NAND Status? Wolfram Sang
2011-08-08 6:21 ` Huang Shijie
2011-08-08 9:19 ` Koen Beel
2011-08-08 10:37 ` Huang Shijie
2011-08-08 12:42 ` Koen Beel
2011-08-09 6:36 ` Huang Shijie
2011-08-09 7:58 ` Koen Beel
2011-08-09 8:18 ` Huang Shijie [this message]
2011-08-09 8:25 ` Koen Beel
2011-08-09 5:11 ` Huang Shijie
2011-08-09 6:25 ` Koen Beel
2011-08-09 6:40 ` Huang Shijie
2011-08-09 9:45 ` Wolfram Sang
2011-08-09 9:35 ` Wolfram Sang
2011-08-09 10:54 ` Huang Shijie
2011-08-09 20:42 ` Wolfram Sang
2011-08-08 9:12 ` Huang Shijie
2011-08-09 9:19 ` Wolfram Sang
2011-08-09 10:41 ` Huang Shijie
2011-08-09 11:36 ` Lothar Waßmann
2011-08-14 8:11 ` Ivan Djelic
2011-08-14 18:31 ` Wolfram Sang
2011-08-15 5:41 ` Lothar Waßmann
2011-08-15 6:30 ` Lin Tony-B19295
2011-08-15 8:41 ` Ivan Djelic
2011-08-15 8:29 ` Ivan Djelic
2011-08-15 9:31 ` Lothar Waßmann
2011-08-15 12:54 ` Ivan Djelic
2011-08-15 13:37 ` Lothar Waßmann
2011-08-15 16:34 ` Artem Bityutskiy
2011-08-15 16:18 ` Artem Bityutskiy
2011-08-15 16:22 ` Artem Bityutskiy
2011-08-15 16:57 ` Ivan Djelic
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=4E40ED4B.6030302@freescale.com \
--to=b32955@freescale.com \
--cc=linux-arm-kernel@lists.infradead.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;
as well as URLs for NNTP newsgroup(s).