[#6062] bfin_spi dma tx transfers do not work correctly

Document created by Aaronwu Employee on Sep 25, 2013
Version 1Show Document
  • View in full screen mode

[#6062] bfin_spi dma tx transfers do not work correctly

Submitted By: Vivi Li

Open Date

2010-06-09 05:40:49     Close Date

2010-10-18 04:58:10

Priority:

Medium     Assignee:

Mike Frysinger

Category:

N/A     Fixed In Release:

N/A

Found In Release:

N/A     Status:

Closed

Board:

N/A     Processor:

BF518

Silicon Revision:

    Resolution:

Assigned (Not Start)

Is the bug repeatable?:

N/A     

Summary: bfin_spi dma tx transfers do not work correctly

Details:

 

In latest trunk, flash u-boot into spi flash and u-boot can't boot up in bf518f-ezbrd.

 

--

U-Boot 2010.03-svn2283 (ADI-2010R1-pre) (Jun 03 2010 - 03:00:55)

 

CPU:   ADSP bf518-0.0 (Detected Rev: 0.0) (parallel flash boot)

Board: ADI BF518F EZ-Board board

       Support: http://blackfin.uclinux.org/

Clock: VCO: 400 MHz, Core: 400 MHz, System: 80 MHz

RAM:   64 MB

Flash:  4 MB

MMC:  Blackfin SDH: 0

In:    serial

Out:   serial

Err:   serial

KGDB:  [on serial] ready

Net:   Blackfin EMAC

Hit any key to stop autoboot:  0

bfin>

bfin> tftp 0x1000000 u-boot.bin

Using Blackfin EMAC device

TFTP from server 10.100.4.174; our IP address is 10.100.4.50

Filename 'u-boot.bin'.

Load address: 0x1000000

Loading: #############

done

Bytes transferred = 180332 (2c06c hex)

bfin> go 0x1000000

## Starting application at 0x01000000 ...

 

 

U-Boot 2010.03-svn2313 (ADI-2010R1-pre) (Jun 09 2010 - 17:27:38)

 

CPU:   ADSP bf518-0.0 (Detected Rev: 0.0) (spi flash boot)

Board: ADI BF518F EZ-Board board

       Support: http://blackfin.uclinux.org/

Clock: VCO: 400 MHz, Core: 400 MHz, System: 80 MHz

RAM:   64 MB

Flash:  4 MB

MMC:  Blackfin SDH: 0

SF: Detected M25P16 with page size 256, total  2 MB

*** Warning - bad CRC, using default environment

 

In:    serial

Out:   serial

Err:   serial

KGDB:  [on serial] ready

Warning: Generating 'random' MAC address

Net:   Blackfin EMAC

Hit any key to stop autoboot:  0

bfin> printenv

bootargs=root=/dev/mtdblock0 rw clkin_hz=25000000 earlyprintk=serial,uart0,57600 console=ttyBF0,57600

bootcmd=run ramboot

bootdelay=5

baudrate=57600

loads_echo=1

ipaddr=192.168.0.15

serverip=192.168.0.2

autoload=no

rootpath=/romfs

gatewayip=192.168.0.1

netmask=255.255.255.0

hostname=bf518f-ezbrd

loadaddr=0x1000000

nc=set ncip ${serverip};set stdin nc;set stdout nc

ubootfile=u-boot.ldr

update=tftp $(loadaddr) $(ubootfile);sf probe 31;sf erase 0 0x40000;sf write $(loadaddr) 0 $(filesize)

addip=set bootargs $(bootargs) ip=$(ipaddr):$(serverip):$(gatewayip):$(netmask):$(hostname):eth0:off

ramfile=uImage

ramargs=set bootargs root=/dev/mtdblock0 rw clkin_hz=25000000 earlyprintk=serial,uart0,57600 console=ttyBF0,57600

ramboot=tftp $(loadaddr) $(ramfile);run ramargs;run addip;bootm

nfsfile=vmImage

nfsargs=set bootargs root=/dev/nfs rw nfsroot=$(serverip):$(rootpath),tcp,nfsvers=3

nfsboot=tftp $(loadaddr) $(nfsfile);run nfsargs;run addip;bootm

flashboot=bootm 0x20100000

stdin=serial

stdout=serial

stderr=serial

ethaddr=7e:41:5a:14:14:0d

ethact=Blackfin EMAC

 

Environment size: 1064/8188 bytes

bfin> run update <INTERRUPT>

bfin> set ipaddr 10.100.4.50

bfin> set serverip 10.100.4.174

bfin> run update

Using Blackfin EMAC device

TFTP from server 10.100.4.174; our IP address is 10.100.4.50

Filename 'u-boot.ldr'.

Load address: 0x1000000

Loading: #############

done

Bytes transferred = 189012 (2e254 hex)

SF: Detected M25P16 with page size 256, total  2 MB

2048 KiB M25P16 at 0:31 is now current device

bfin> ÿ

(set boot mode to spi boot and can not boot up)

--

 

Follow-ups

 

--- Mike Frysinger                                           2010-06-09 23:00:01

forcing PIO mode seems to work fine.  guess i'll have to double check the new

DMA logic in the bfin_spi driver.

 

--- Mike Frysinger                                           2010-09-29 16:07:52

in reviewing the dma code, it was originally written for DMA RX only.  so it's

never been tested before in the DMA TX path.  clearly it isnt working.

 

for 2010R1, ive enabled usage of DMA RX, but disabled DMA TX support.  since

this is the only thing we supported in past releases, this issue is no longer a

regression.  we can look at getting DMA TX to work for future releases as an

enhancement issue.

 

--- Vivi Li                                                  2010-10-18 04:58:10

It can boot up by hardware reset but software reset doesn't work.

So I report bug 6304 about software reset and close this one.

 

 

 

    Files

    Changes

    Commits

    Dependencies

    Duplicates

    Associations

    Tags

 

File Name     File Type     File Size     Posted By

No Files Were Found

Attachments

    Outcomes