This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

How to export the latest linux kernel to OMAPL138

Other Parts Discussed in Thread: OMAPL138, DA8XX, OMAP-L138

The PSP-3.22 runs well on my OMAPL138 board (boot from SD-card). But I have tried many days to debug the Syslink with no success.

So I googled and found the remoteproc in the newest kernel.

I use the configuration file: da8xx_omapl_defconfig (kernel 3.11.1). Tried different settings & modified the arch/arm/mach-davinci/board-omapl138-hawk.c.

The problem is: the generated uImage can not run. -- No output on terminal.

I had thought, the kernel could run on similar board with minimal modification. Can some board tell me what's wrong?

Works the hawk board from this kernel release?

Best regards,

Cunman

 

 

 

  • Hi Cunman,

    SysLink/IPC runs only after the kernel is booted. So if you are not seeing any output this is unlikely to be SysLink-related.

    For help on the hawkboard, I suggest you consult the comnunity project page: http://elinux.org/Hawkboard. There should be folks on there who can help with your kernel build.

    Fyi, if you want to use IPC 3.x (aka "next-gen SysLink" that works with remoteproc) instead, please make sure you read the release notes and Install guide provided in the IPC product. The documentation contains information on patches that you may need to apply depending on the version of the Linux kernel you choose to use.

    Best regards,

    Vincent

  • Hi Vincent,

    thank you very much for your reply!

    My problem is not about SysLink. It runs well, but I cann't debug it with CCS 5.1. The how-to-debug example fromTI-Wiki is for another SysLink/IPC version, in the newst SysLink version, files are changed. Each step is not so easy as man thought.

    That is the reason I want to try the new mainstream linux kernel. I hope I can load DSP firmware with remoteproc and debug it in CCS.

    I have some general questions about the linux kernel supported for OMAP-L138:

       1) why in the TI PSP-3.22.0.6 kernel there is arch/arm/mach-davinci/board-omapl138-lcdk.c but no board-omapl138-hawk.c, in the mainstream linux vice visa? Is there something conflect with the two boards (other than same machine-id)?

       2) in mainstream-linux: is there some "secret" initilzalizing code for hawk-board which makes LCDK not work?

       3) for mainstream-linux: is there a patch to make boards like LCDK to work.

       4) is the problem caused by cross-compile (I use arm-2009q1 which is recommanded for TI-PSP)

     

    Best Regards,

    Cunman

  • I tried another method: use the tilinux-kernel from git: https://git.ti.com/ti-linux-kernel (3.12.0_rc1)

    The kernel runs with small modification: (da8xx_omapl_defconfig) + SD card (no CD/WP pins). But stops at:

        Waiting for root device /dev/mmcblk0p2...

    (The hardware has no problem, it can boot with PSP 3.22.0.6)

    I added some debug infor in driver/mmc/host/davinci_mmc.c, (also enabled DIV4 in MMCCLK register).

    The booting message looks like below: Can anyone mir help? Thx.

     

     

    reading uImage

     

    1786056 bytes read

    ## Booting kernel from Legacy Image at c0700000 ...

       Image Name:   Linux-3.12.0-rc1_piPM

       Image Type:   ARM Linux Kernel Image (uncompressed)

       Data Size:    1785992 Bytes = 1.7 MiB

       Load Address: c0008000

       Entry Point:  c0008000

       Verifying Checksum ... OK

       Loading Kernel Image ... OK

    OK

     

    Starting kernel ...

     

    Uncompressing Linux... done, booting the kernel.

    Booting Linux on physical CPU 0x0

    Linux version 3.12.0-rc1_piPM (czh@localhost.localdomain) (gcc version 4.3.3 (Sourcery G++ Lite 2009q1-203) ) #19 PREEMPT Fri Sep 20 15:26:49 CEST 2013

    CPU: ARM926EJ-S [41069265] revision 5 (ARMv5TEJ), cr=00053177

    CPU: VIVT data cache, VIVT instruction cache

    Machine: AM18x/OMAP-L138 Hawkboard

    Memory policy: ECC disabled, Data cache writeback

    DaVinci da850/omap-l138/am18x variant 0x1

    On node 0 totalpages: 32768

    free_area_init_node: node 0, pgdat c0392f58, node_mem_map c03ad000

      DMA zone: 256 pages used for memmap

      DMA zone: 0 pages reserved

      DMA zone: 32768 pages, LIFO batch:7

    pcpu-alloc: s0 r0 d32768 u32768 alloc=1*32768

    pcpu-alloc: [0] 0

    Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 32512

    Kernel command line: console=ttyS2,115200n8 root=/dev/mmcblk0p2 rw rootwait ip=off loglevel=8

    PID hash table entries: 512 (order: -1, 2048 bytes)

    Dentry cache hash table entries: 16384 (order: 4, 65536 bytes)

    Inode-cache hash table entries: 8192 (order: 3, 32768 bytes)

    Memory: 126136K/131072K available (2510K kernel code, 166K rwdata, 808K rodata, 143K init, 99K bss, 4936K reserved)

    Virtual kernel memory layout:

        vector  : 0xffff0000 - 0xffff1000   (   4 kB)

        fixmap  : 0xfff00000 - 0xfffe0000   ( 896 kB)

        vmalloc : 0xc8800000 - 0xff000000   ( 872 MB)

        lowmem  : 0xc0000000 - 0xc8000000   ( 128 MB)

        modules : 0xbf000000 - 0xc0000000   (  16 MB)

          .text : 0xc0008000 - 0xc0345f34   (3320 kB)

          .init : 0xc0346000 - 0xc0369dfc   ( 144 kB)

          .data : 0xc036a000 - 0xc03938e0   ( 167 kB)

           .bss : 0xc03938ec - 0xc03ac890   ( 100 kB)

    SLUB: HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1

    Preemptible hierarchical RCU implementation.

    NR_IRQS:245

    sched_clock: 32 bits at 24MHz, resolution 41ns, wraps every 178956ms

    Console: colour dummy device 80x30

    Calibrating delay loop... 227.32 BogoMIPS (lpj=1136640)

    pid_max: default: 32768 minimum: 301

    Mount-cache hash table entries: 512

    CPU: Testing write buffer coherency: ok

    Setting up static identity map for 0xc0279638 - 0xc0279690

    DaVinci: 144 gpio irqs

    NET: Registered protocol family 16

    DMA: preallocated 256 KiB pool for atomic coherent allocations

    cpuidle: using governor ladder

    cpuidle: using governor menu

    EMAC: RMII PHY configured

    Missing cpus node, bailing out

    bio: create slab <bio-0> at 0

    edma-dma-engine edma-dma-engine.0: TI EDMA DMA engine driver

    edma-dma-engine edma-dma-engine.1: TI EDMA DMA engine driver

    SCSI subsystem initialized

    Switched to clocksource timer0_1

    NET: Registered protocol family 2

    TCP established hash table entries: 1024 (order: 1, 8192 bytes)

    TCP bind hash table entries: 1024 (order: 0, 4096 bytes)

    TCP: Hash tables configured (established 1024 bind 1024)

    TCP: reno registered

    UDP hash table entries: 256 (order: 0, 4096 bytes)

    UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)

    NET: Registered protocol family 1

    msgmni has been set to 246

    io scheduler noop registered (default)

    Serial: 8250/16550 driver, 3 ports, IRQ sharing disabled

    serial8250 serial8250.0: Runtime PM disabled, clock forced on.

    serial8250 serial8250.0: Runtime PM disabled, clock forced on.

    serial8250 serial8250.0: Runtime PM disabled, clock forced on.

    serial8250.0: ttyS0 at MMIO 0x1c42000 (irq = 25, base_baud = 14250000) is a 16550A

    serial8250 serial8250.1: Runtime PM disabled, clock forced on.

    serial8250 serial8250.1: Runtime PM disabled, clock forced on.

    serial8250 serial8250.1: Runtime PM disabled, clock forced on.

    serial8250.1: ttyS1 at MMIO 0x1d0c000 (irq = 53, base_baud = 9375000) is a 16550A

    serial8250 serial8250.2: Runtime PM disabled, clock forced on.

    serial8250 serial8250.2: Runtime PM disabled, clock forced on.

    serial8250 serial8250.2: Runtime PM disabled, clock forced on.

    serial8250.2: ttyS2 at MMIO 0x1d0d000 (irq = 61, base_baud = 9375000) is a 16550A

    console [ttyS2] enabled

    brd: module loaded

    davinci_mdio davinci_mdio.0: Runtime PM disabled, clock forced on.

    davinci_mdio davinci_mdio.0: davinci mdio revision 1.5

    davinci_mdio davinci_mdio.0: detected phy mask fffffffe

    libphy: davinci_mdio.0: probed

    davinci_mdio davinci_mdio.0: phy[0]: device davinci_mdio-0:00, driver unknown

    davinci_mmc da830-mmc.0: Runtime PM disabled, clock forced on.

    davinci_mmc da830-mmc.0: Runtime PM disabled, clock forced on.

    davinci_mmc da830-mmc.0: Runtime PM disabled, clock forced on.

    Debug Func: davinci_mmcsd_probe()

    Debug Func: mmc_parse_pdata()

    Debug host_clk got

    Debug mmc_input_clk: 228000000

    Debug Func: init_mmcsd_host()

    Debug Func: mmc_davinci_reset_ctrl()

    Debug Func: mmc_davinci_reset_ctrl()

    Debug Func: davinci_acquire_dma_channels()

    dmaengine: private_candidate: dma0chan0 filter said false

    dmaengine: private_candidate: dma0chan1 filter said false

    dmaengine: private_candidate: dma0chan2 filter said false

    dmaengine: private_candidate: dma0chan3 filter said false

    dmaengine: private_candidate: dma0chan4 filter said false

    dmaengine: private_candidate: dma0chan5 filter said false

    dmaengine: private_candidate: dma0chan6 filter said false

    dmaengine: private_candidate: dma0chan7 filter said false

    dmaengine: private_candidate: dma0chan8 filter said false

    dmaengine: private_candidate: dma0chan9 filter said false

    dmaengine: private_candidate: dma0chan10 filter said false

    dmaengine: private_candidate: dma0chan11 filter said false

    dmaengine: private_candidate: dma0chan12 filter said false

    dmaengine: private_candidate: dma0chan13 filter said false

    dmaengine: private_candidate: dma0chan14 filter said false

    dmaengine: private_candidate: dma0chan15 filter said false

    dmaengine: private_candidate: dma0chan16 filter said false

    edma-dma-engine edma-dma-engine.0: allocated channel for 0:17

    dmaengine: __dma_request_channel: success (dma0chan17)

    dmaengine: private_candidate: dma0chan0 filter said false

    dmaengine: private_candidate: dma0chan1 filter said false

    dmaengine: private_candidate: dma0chan2 filter said false

    dmaengine: private_candidate: dma0chan3 filter said false

    dmaengine: private_candidate: dma0chan4 filter said false

    dmaengine: private_candidate: dma0chan5 filter said false

    dmaengine: private_candidate: dma0chan6 filter said false

    dmaengine: private_candidate: dma0chan7 filter said false

    dmaengine: private_candidate: dma0chan8 filter said false

    dmaengine: private_candidate: dma0chan9 filter said false

    dmaengine: private_candidate: dma0chan10 filter said false

    dmaengine: private_candidate: dma0chan11 filter said false

    dmaengine: private_candidate: dma0chan12 filter said false

    dmaengine: private_candidate: dma0chan13 filter said false

    dmaengine: private_candidate: dma0chan14 filter said false

    dmaengine: private_candidate: dma0chan15 filter said false

    edma-dma-engine edma-dma-engine.0: allocated channel for 0:16

    dmaengine: __dma_request_channel: success (dma0chan16)

    davinci_mmc da830-mmc.0: version=1

    davinci_mmc da830-mmc.0: max_segs=16

    davinci_mmc da830-mmc.0: max_blk_size=4095

    davinci_mmc da830-mmc.0: max_req_size=268365825

    davinci_mmc da830-mmc.0: max_seg_size=2097120

    Debug Func: mmc_davinci_cpufreq_register()

    mmc0: clock 0Hz busmode 2 powermode 1 cs 0 Vdd 21 width 0 timing 0

    Debug Func: mmc_davinci_set_ios()

    davinci_mmc da830-mmc.0: clock 0Hz busmode 2 powermode 1 Vdd 0015 buswidth 0

    davinci_mmc da830-mmc.0: Enabling 1 bit mode

    Debug Func: calculate_clk_divider()

    Debug Func: calculate_freq_for_card()

    Debug host->mmc_input_clk: 228000000; divisor: 15

    mmc0: clock 400000Hz busmode 2 powermode 2 cs 0 Vdd 21 width 0 timing 0

    Debug Func: mmc_davinci_set_ios()

    davinci_mmc da830-mmc.0: clock 400000Hz busmode 2 powermode 2 Vdd 0015 buswidth 0

    davinci_mmc da830-mmc.0: Enabling 1 bit mode

    Debug Func: calculate_clk_divider()

    Debug Func: calculate_freq_for_card()

    Debug host->mmc_input_clk: 228000000; divisor: 142

    Debug Func: mmc_davinci_get_cd()

    mmc0: mmc_rescan_try_freq: trying to init card at 400000 Hz

    mmc0: starting CMD52 arg 00000c00 flags 00000195

    davinci_mmc da830-mmc.0: Using DMA, 4-bit mode

    TCP: cubic registered

    NET: Registered protocol family 17

    Debug Func: mmc_davinci_request()

    Debug Func: mmc_davinci_prepare_data()

    Debug Func: mmc_davinci_start_command()

    davinci_mmc da830-mmc.0: CMD52, arg 0x00000c00, R1/R5/R6/R7 response

    console [netcon0] enabled

    netconsole: network logging started

    davinci_emac davinci_emac.1: Runtime PM disabled, clock forced on.

    Debug Func: mmc_davinci_irq()

    davinci_mmc da830-mmc.0: CMD52 timeout, status 10

    Debug Func: mmc_davinci_cmd_done()

    davinci_emac davinci_emac.1: Runtime PM disabled, clock forced on.

    davinci_emac davinci_emac.1: Runtime PM disabled, clock forced on.

    mmc0: req done (CMD52): -110: 00000900 00000000 00000000 00000000

    mmc0: starting CMD52 arg 80000c08 flags 00000195

    Debug Func: mmc_davinci_request()

    Debug Func: mmc_davinci_prepare_data()

    davinci_emac davinci_emac.1: using random MAC addr: 46:bd:65:bb:a4:e0

    Debug Func: mmc_davinci_start_command()

    davinci_mmc da830-mmc.0: CMD52, arg 0x80000c08, R1/R5/R6/R7 response

    drivers/rtc/hctosys.c: unable to open rtc device (rtc0)

    md: Skipping autodetection of RAID arrays. (raid=autodetect will force)

    Debug Func: mmc_davinci_irq()

    davinci_mmc da830-mmc.0: CMD52 timeout, status 10

    Waiting for root device /dev/mmcblk0p2...

    Debug Func: mmc_davinci_cmd_done()

    mmc0: req done (CMD52): -110: 00000900 00000000 00000000 00000000

    mmc0: clock 400000Hz busmode 2 powermode 2 cs 1 Vdd 21 width 0 timing 0

    Debug Func: mmc_davinci_set_ios()

    davinci_mmc da830-mmc.0: clock 400000Hz busmode 2 powermode 2 Vdd 0015 buswidth 0

    davinci_mmc da830-mmc.0: Enabling 1 bit mode

    Debug Func: calculate_clk_divider()

    Debug Func: calculate_freq_for_card()

    Debug host->mmc_input_clk: 228000000; divisor: 142

    mmc0: starting CMD0 arg 00000000 flags 000000c0

    Debug Func: mmc_davinci_request()

    Debug Func: mmc_davinci_prepare_data()

    Debug Func: mmc_davinci_start_command()

    davinci_mmc da830-mmc.0: CMD0, arg 0x00000000, (R? response)

    davinci_mmc da830-mmc.0: unknown resp_type 0000

    Debug Func: mmc_davinci_irq()

    Debug Func: mmc_davinci_cmd_done()

    mmc0: req done (CMD0): 0: 00000000 00000000 00000000 00000000

    mmc0: clock 400000Hz busmode 2 powermode 2 cs 0 Vdd 21 width 0 timing 0

    Debug Func: mmc_davinci_set_ios()

    davinci_mmc da830-mmc.0: clock 400000Hz busmode 2 powermode 2 Vdd 0015 buswidth 0

    davinci_mmc da830-mmc.0: Enabling 1 bit mode

    Debug Func: calculate_clk_divider()

    Debug Func: calculate_freq_for_card()

    Debug host->mmc_input_clk: 228000000; divisor: 142

    mmc0: starting CMD8 arg 000001aa flags 000002f5

    Debug Func: mmc_davinci_request()

    Debug Func: mmc_davinci_prepare_data()

    Debug Func: mmc_davinci_start_command()

    davinci_mmc da830-mmc.0: CMD8, arg 0x000001aa, R1/R5/R6/R7 response

    Debug Func: mmc_davinci_irq()

    Debug Func: mmc_davinci_cmd_done()

    mmc0: req done (CMD8): 0: 000001aa 00000000 00000000 00000000

    mmc0: starting CMD5 arg 00000000 flags 000002e1

    Debug Func: mmc_davinci_request()

    Debug Func: mmc_davinci_prepare_data()

    Debug Func: mmc_davinci_start_command()

    davinci_mmc da830-mmc.0: CMD5, arg 0x00000000, R3/R4 response

    Debug Func: mmc_davinci_irq()

    davinci_mmc da830-mmc.0: CMD5 timeout, status 10

    Debug Func: mmc_davinci_cmd_done()

    mmc0: req done (CMD5): -110: 000001aa 00000000 00000000 00000000

    mmc0: starting CMD55 arg 00000000 flags 000000f5

    Debug Func: mmc_davinci_request()

    Debug Func: mmc_davinci_prepare_data()

    Debug Func: mmc_davinci_start_command()

    davinci_mmc da830-mmc.0: CMD55, arg 0x00000000, R1/R5/R6/R7 response

    Debug Func: mmc_davinci_irq()

    Debug Func: mmc_davinci_cmd_done()

    mmc0: req done (CMD55): 0: 00400120 00000000 00000000 00000000

    mmc0: starting CMD41 arg 00000000 flags 000000e1

    Debug Func: mmc_davinci_request()

    Debug Func: mmc_davinci_prepare_data()

    Debug Func: mmc_davinci_start_command()

    davinci_mmc da830-mmc.0: CMD41, arg 0x00000000, R3/R4 response

    Debug Func: mmc_davinci_irq()

    Debug Func: mmc_davinci_cmd_done()

    mmc0: req done (CMD41): 0: 00ff8000 00000000 00000000 00000000

    mmc0: clock 400000Hz busmode 2 powermode 2 cs 0 Vdd 20 width 0 timing 0

    Debug Func: mmc_davinci_set_ios()

    davinci_mmc da830-mmc.0: clock 400000Hz busmode 2 powermode 2 Vdd 0014 buswidth 0

    davinci_mmc da830-mmc.0: Enabling 1 bit mode

    Debug Func: calculate_clk_divider()

    Debug Func: calculate_freq_for_card()

    Debug host->mmc_input_clk: 228000000; divisor: 142

    mmc0: clock 400000Hz busmode 2 powermode 2 cs 1 Vdd 20 width 0 timing 0

    Debug Func: mmc_davinci_set_ios()

    davinci_mmc da830-mmc.0: clock 400000Hz busmode 2 powermode 2 Vdd 0014 buswidth 0

    davinci_mmc da830-mmc.0: Enabling 1 bit mode

    Debug Func: calculate_clk_divider()

    Debug Func: calculate_freq_for_card()

    Debug host->mmc_input_clk: 228000000; divisor: 142

    mmc0: starting CMD0 arg 00000000 flags 000000c0

    Debug Func: mmc_davinci_request()

    Debug Func: mmc_davinci_prepare_data()

    Debug Func: mmc_davinci_start_command()

    davinci_mmc da830-mmc.0: CMD0, arg 0x00000000, (R? response)

    davinci_mmc da830-mmc.0: unknown resp_type 0000

    Debug Func: mmc_davinci_irq()

    Debug Func: mmc_davinci_cmd_done()

    mmc0: req done (CMD0): 0: 00000000 00000000 00000000 00000000

    mmc0: clock 400000Hz busmode 2 powermode 2 cs 0 Vdd 20 width 0 timing 0

    Debug Func: mmc_davinci_set_ios()

    davinci_mmc da830-mmc.0: clock 400000Hz busmode 2 powermode 2 Vdd 0014 buswidth 0

    davinci_mmc da830-mmc.0: Enabling 1 bit mode

    Debug Func: calculate_clk_divider()

    Debug Func: calculate_freq_for_card()

    Debug host->mmc_input_clk: 228000000; divisor: 142

    mmc0: starting CMD8 arg 000001aa flags 000002f5

    Debug Func: mmc_davinci_request()

    Debug Func: mmc_davinci_prepare_data()

    Debug Func: mmc_davinci_start_command()

    davinci_mmc da830-mmc.0: CMD8, arg 0x000001aa, R1/R5/R6/R7 response

    Debug Func: mmc_davinci_irq()

    Debug Func: mmc_davinci_cmd_done()

    mmc0: req done (CMD8): 0: 000001aa 00000000 00000000 00000000

    mmc0: starting CMD55 arg 00000000 flags 000000f5

    Debug Func: mmc_davinci_request()

    Debug Func: mmc_davinci_prepare_data()

    Debug Func: mmc_davinci_start_command()

    davinci_mmc da830-mmc.0: CMD55, arg 0x00000000, R1/R5/R6/R7 response

    Debug Func: mmc_davinci_irq()

    Debug Func: mmc_davinci_cmd_done()

    mmc0: req done (CMD55): 0: 00000120 00000000 00000000 00000000

    mmc0: starting CMD41 arg 40300000 flags 000000e1

    Debug Func: mmc_davinci_request()

    Debug Func: mmc_davinci_prepare_data()

    Debug Func: mmc_davinci_start_command()

    davinci_mmc da830-mmc.0: CMD41, arg 0x40300000, R3/R4 response

    Debug Func: mmc_davinci_irq()

    Debug Func: mmc_davinci_cmd_done()

    mmc0: req done (CMD41): 0: 00ff8000 00000000 00000000 00000000

    mmc0: starting CMD55 arg 00000000 flags 000000f5

    Debug Func: mmc_davinci_request()

    Debug Func: mmc_davinci_prepare_data()

    Debug Func: mmc_davinci_start_command()

    davinci_mmc da830-mmc.0: CMD55, arg 0x00000000, R1/R5/R6/R7 response

    Debug Func: mmc_davinci_irq()

    Debug Func: mmc_davinci_cmd_done()

    mmc0: req done (CMD55): 0: 00000120 00000000 00000000 00000000

    mmc0: starting CMD41 arg 40300000 flags 000000e1

    Debug Func: mmc_davinci_request()

    Debug Func: mmc_davinci_prepare_data()

    Debug Func: mmc_davinci_start_command()

    davinci_mmc da830-mmc.0: CMD41, arg 0x40300000, R3/R4 response

    Debug Func: mmc_davinci_irq()

    Debug Func: mmc_davinci_cmd_done()

    mmc0: req done (CMD41): 0: c0ff8000 00000000 00000000 00000000

    mmc0: starting CMD2 arg 00000000 flags 00000067

    Debug Func: mmc_davinci_request()

    Debug Func: mmc_davinci_prepare_data()

    Debug Func: mmc_davinci_start_command()

    davinci_mmc da830-mmc.0: CMD2, arg 0x00000000, R2 response

    Debug Func: mmc_davinci_irq()

    Debug Func: mmc_davinci_cmd_done()

    mmc0: req done (CMD2): 0: 27504853 44303447 306d307f 9b00d21d

    mmc0: starting CMD3 arg 00000000 flags 00000075

    Debug Func: mmc_davinci_request()

    Debug Func: mmc_davinci_prepare_data()

    Debug Func: mmc_davinci_start_command()

    davinci_mmc da830-mmc.0: CMD3, arg 0x00000000, R1/R5/R6/R7 response

    Debug Func: mmc_davinci_irq()

    Debug Func: mmc_davinci_cmd_done()

    mmc0: req done (CMD3): 0: 00070500 00000000 00000000 00000000

    mmc0: starting CMD9 arg 00070000 flags 00000007

    Debug Func: mmc_davinci_request()

    Debug Func: mmc_davinci_prepare_data()

    Debug Func: mmc_davinci_start_command()

    davinci_mmc da830-mmc.0: CMD9, arg 0x00070000, R2 response

    Debug Func: mmc_davinci_irq()

    Debug Func: mmc_davinci_cmd_done()

    mmc0: req done (CMD9): 0: 400e0032 5b590000 1da77f80 0a40002d

    mmc0: starting CMD7 arg 00070000 flags 00000015

    Debug Func: mmc_davinci_request()

    Debug Func: mmc_davinci_prepare_data()

    Debug Func: mmc_davinci_start_command()

    davinci_mmc da830-mmc.0: CMD7, arg 0x00070000, R1/R5/R6/R7 response

    Debug Func: mmc_davinci_irq()

    Debug Func: mmc_davinci_cmd_done()

    mmc0: req done (CMD7): 0: 00000700 00000000 00000000 00000000

    mmc0: starting CMD55 arg 00070000 flags 00000095

    Debug Func: mmc_davinci_request()

    Debug Func: mmc_davinci_prepare_data()

    Debug Func: mmc_davinci_start_command()

    davinci_mmc da830-mmc.0: CMD55, arg 0x00070000, R1/R5/R6/R7 response

    Debug Func: mmc_davinci_irq()

    Debug Func: mmc_davinci_cmd_done()

    mmc0: req done (CMD55): 0: 00000920 00000000 00000000 00000000

    mmc0: starting CMD51 arg 00000000 flags 000000b5

    mmc0:     blksz 8 blocks 1 flags 00000200 tsac 100 ms nsac 0

    Debug Func: mmc_davinci_request()

    Debug Func: mmc_davinci_prepare_data()

    davinci_mmc da830-mmc.0: block read, 1 blocks of 8 bytes

    davinci_mmc da830-mmc.0:   DTO 0 cycles + 100000000 ns

    Debug Func: mmc_davinci_start_command()

    davinci_mmc da830-mmc.0: CMD51, arg 0x00000000, R1/R5/R6/R7 response

    Debug Func: mmc_davinci_irq()

    Debug Func: davinci_fifo_data_trans()

    Debug Func: mmc_davinci_cmd_done()

    Debug Func: mmc_davinci_xfer_done()

    mmc0: req done (CMD51): 0: 00000920 00000000 00000000 00000000

    mmc0:     8 bytes transferred: 0

    mmc0: starting CMD55 arg 00070000 flags 00000095

    Debug Func: mmc_davinci_request()

    Debug Func: mmc_davinci_prepare_data()

    Debug Func: mmc_davinci_start_command()

    davinci_mmc da830-mmc.0: CMD55, arg 0x00070000, R1/R5/R6/R7 response

    Debug Func: mmc_davinci_irq()

    Debug Func: mmc_davinci_cmd_done()

    mmc0: req done (CMD55): 0: 00000920 00000000 00000000 00000000

    mmc0: starting CMD13 arg 00000000 flags 000001b5

    mmc0:     blksz 64 blocks 1 flags 00000200 tsac 100 ms nsac 0

    Debug Func: mmc_davinci_request()

    Debug Func: mmc_davinci_prepare_data()

    davinci_mmc da830-mmc.0: block read, 1 blocks of 64 bytes

    davinci_mmc da830-mmc.0:   DTO 0 cycles + 100000000 ns

    Debug Func: mmc_davinci_start_dma_transfer()

    Debug Func: mmc_davinci_send_dma_request()

    edma-dma-engine edma-dma-engine.0: vchan c7812e80: txd c79581e0[2]: submitted

    edma-dma-engine edma-dma-engine.0:

     pset[0]:

      chnum 16

      slot  16

      opt   00110004

      src   01c40028

      dst   c7975740

      abcnt 00080004

      ccnt  00000002

      bidx  00040000

      cidx  00200000

      lkrld ffffffff

    edma-dma-engine edma-dma-engine.0: first transfer starting 16

    Debug Func: mmc_davinci_start_command()

    davinci_mmc da830-mmc.0: CMD13, arg 0x00000000, R1/R5/R6/R7 response

    Debug Func: mmc_davinci_irq()

    Debug Func: mmc_davinci_cmd_done()

    edma-dma-engine edma-dma-engine.0: Transfer complete, stopping channel 16