linux/arch/blackfin/include/asm
Wolfgang Muees 93b61bddc1 Blackfin SPI Driver: Make mmc_spi driver work on Blackfin
1. Rewrite of the non-dma data transfer functions to use only ONE mode
   of TIMOD (TIMOD=0x1).  With TIMOD=0, it was not possible to set the TX
   bit pattern.  So the TDBR = 0xFFFF inside the read calls won't work.

2. Clear SPI_RDBR before reading and before duplex transfer.
   Otherwise the garbage data in RDBR will get read.  Since mmc_spi uses a
   lot of duplex transfers, this is the main cause of mmc_spi failure.

3. Poll RXS for transfer completion.  Polling SPIF or TXS cannot
   guarantee transfer completion.  This may interrupt a transfer before it
   is finished.  Also this may leave garbage data in buffer and affect
   next transfer.

[Yi Li <yi.li@analog.com>: add a field "u16 idle_tx_val" in "struct
bfin5xx_spi_chip" to specify the value to transmit if no TX value
is supplied.]
Signed-off-by: Wolfgang Muees <wolfgang.mues@auerswald.de>
Signed-off-by: Yi Li <yi.li@analog.com>
Signed-off-by: Bryan Wu <cooloney@kernel.org>
Cc: David Brownell <david-b@pacbell.net>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2009-04-07 08:31:06 -07:00
..
.gitignore Blackfin arch: move include/asm-blackfin header files to arch/blackfin 2008-08-27 10:51:02 +08:00
atomic.h Blackfin arch: merge adeos blackfin part to arch/blackfin/ 2009-01-07 23:14:39 +08:00
auxvec.h Blackfin arch: move include/asm-blackfin header files to arch/blackfin 2008-08-27 10:51:02 +08:00
bfin5xx_spi.h Blackfin SPI Driver: Make mmc_spi driver work on Blackfin 2009-04-07 08:31:06 -07:00
bfin_sdh.h Blackfin arch: add SDIO host driver platform data 2009-01-07 23:14:38 +08:00
bfin_simple_timer.h Blackfin arch: move include/asm-blackfin header files to arch/blackfin 2008-08-27 10:51:02 +08:00
bfin_sport.h Blackfin arch: clean up sports header file 2009-03-28 20:38:17 +08:00
bfin-global.h Blackfin arch: rename cache_lock() to bfin_cache_lock() 2008-11-18 17:48:22 +08:00
bfrom.h Blackfin arch: Update some inline assembly, tweak some register constraints 2009-01-07 23:14:39 +08:00
bitops.h Blackfin arch: merge adeos blackfin part to arch/blackfin/ 2009-01-07 23:14:39 +08:00
blackfin.h Blackfin arch: only define HI/LO macros for assembly files 2008-11-18 17:48:22 +08:00
bug.h Blackfin arch: move include/asm-blackfin header files to arch/blackfin 2008-08-27 10:51:02 +08:00
bugs.h Blackfin arch: move include/asm-blackfin header files to arch/blackfin 2008-08-27 10:51:02 +08:00
byteorder.h byteorder: make swab.h include asm/swab.h like a regular header 2009-01-14 19:56:50 -08:00
cache.h Blackfin arch: SMP supporting patchset: Blackfin header files and machine common code 2009-01-07 23:14:39 +08:00
cacheflush.h Blackfin arch: SMP supporting patchset: Blackfin header files and machine common code 2009-01-07 23:14:39 +08:00
cdef_LPBlackfin.h Blackfin arch: move include/asm-blackfin header files to arch/blackfin 2008-08-27 10:51:02 +08:00
checksum.h Blackfin arch: Faster Implementation of csum_tcpudp_nofold() 2009-02-04 16:49:45 +08:00
clocks.h Blackfin arch: move include/asm-blackfin header files to arch/blackfin 2008-08-27 10:51:02 +08:00
context.S Blackfin arch: Faster C implementation of no-MPU CPLB handler 2009-01-07 23:14:38 +08:00
cplb.h Blackfin arch: Faster C implementation of no-MPU CPLB handler 2009-01-07 23:14:38 +08:00
cplbinit.h Blackfin arch: Faster C implementation of no-MPU CPLB handler 2009-01-07 23:14:38 +08:00
cpu.h Blackfin arch: delete now unused "cclk" member of blackfin_cpudata 2009-01-07 23:14:38 +08:00
cputime.h Blackfin arch: move include/asm-blackfin header files to arch/blackfin 2008-08-27 10:51:02 +08:00
current.h Blackfin arch: move include/asm-blackfin header files to arch/blackfin 2008-08-27 10:51:02 +08:00
def_LPBlackfin.h Blackfin arch: move include/asm-blackfin header files to arch/blackfin 2008-08-27 10:51:02 +08:00
delay.h Blackfin arch: Remove outdated code 2009-02-04 16:49:45 +08:00
device.h Blackfin arch: move include/asm-blackfin header files to arch/blackfin 2008-08-27 10:51:02 +08:00
div64.h Blackfin arch: move include/asm-blackfin header files to arch/blackfin 2008-08-27 10:51:02 +08:00
dma-mapping.h Blackfin arch: fix a broken define in dma-mapping 2008-11-18 17:48:22 +08:00
dma.h Blackfin arch: add get_dma_config() func to match set_dma_config() 2009-01-07 23:14:38 +08:00
dpmc.h Blackfin arch: move include/asm-blackfin header files to arch/blackfin 2008-08-27 10:51:02 +08:00
early_printk.h Blackfin arch: move include/asm-blackfin header files to arch/blackfin 2008-08-27 10:51:02 +08:00
elf.h [PATCH] remove unused ibcs2/PER_SVR4 in SET_PERSONALITY 2008-10-16 15:40:05 +02:00
emergency-restart.h Blackfin arch: move include/asm-blackfin header files to arch/blackfin 2008-08-27 10:51:02 +08:00
entry.h Blackfin arch: merge adeos blackfin part to arch/blackfin/ 2009-01-07 23:14:39 +08:00
errno.h Blackfin arch: move include/asm-blackfin header files to arch/blackfin 2008-08-27 10:51:02 +08:00
fb.h Blackfin arch: move include/asm-blackfin header files to arch/blackfin 2008-08-27 10:51:02 +08:00
fcntl.h Blackfin arch: move include/asm-blackfin header files to arch/blackfin 2008-08-27 10:51:02 +08:00
fixed_code.h Blackfin arch: move include/asm-blackfin header files to arch/blackfin 2008-08-27 10:51:02 +08:00
flat.h Blackfin arch: move include/asm-blackfin header files to arch/blackfin 2008-08-27 10:51:02 +08:00
ftrace.h tracing: make CALLER_ADDRx overwriteable 2009-03-02 16:49:37 -05:00
futex.h Blackfin arch: move include/asm-blackfin header files to arch/blackfin 2008-08-27 10:51:02 +08:00
gpio.h Blackfin arch: convert BF5{18,27,48}_FAMILY to CONFIG_BF{51,52,54}x 2009-03-28 20:32:57 +08:00
gptimers.h Blackfin arch: convert BF5{18,27,48}_FAMILY to CONFIG_BF{51,52,54}x 2009-03-28 20:32:57 +08:00
hardirq.h Blackfin arch: move ack_bad_irq() prototype to hardirq.h to match other arches 2008-11-18 17:48:22 +08:00
hw_irq.h Blackfin arch: move include/asm-blackfin header files to arch/blackfin 2008-08-27 10:51:02 +08:00
io.h Blackfin arch: Use reads/writes instead of ins/outs directly 2009-01-07 23:14:39 +08:00
ioctl.h Blackfin arch: move include/asm-blackfin header files to arch/blackfin 2008-08-27 10:51:02 +08:00
ioctls.h Blackfin arch: move include/asm-blackfin header files to arch/blackfin 2008-08-27 10:51:02 +08:00
ipcbuf.h Blackfin arch: move include/asm-blackfin header files to arch/blackfin 2008-08-27 10:51:02 +08:00
ipipe_base.h Blackfin arch: Update adeos blackfin arch patch to 1.9-00 2009-03-04 16:52:38 +08:00
ipipe.h Blackfin arch: Update adeos blackfin arch patch to 1.9-00 2009-03-04 16:52:38 +08:00
irq_handler.h Blackfin arch: move include/asm-blackfin header files to arch/blackfin 2008-08-27 10:51:02 +08:00
irq_regs.h Blackfin arch: move include/asm-blackfin header files to arch/blackfin 2008-08-27 10:51:02 +08:00
irq.h Blackfin arch: Update adeos blackfin arch patch to 1.9-00 2009-03-04 16:52:38 +08:00
Kbuild Blackfin arch: cleanup bfin_sport.h header and export it to userspace 2009-03-05 19:42:43 +08:00
kdebug.h Blackfin arch: move include/asm-blackfin header files to arch/blackfin 2008-08-27 10:51:02 +08:00
kgdb.h Blackfin arch: scrub comments/whitespace/cvs keywords 2009-02-04 16:49:45 +08:00
kmap_types.h Blackfin arch: move include/asm-blackfin header files to arch/blackfin 2008-08-27 10:51:02 +08:00
l1layout.h Blackfin arch: disable pthread stack check for SMP at runtime 2009-01-07 23:14:38 +08:00
linkage.h Blackfin arch: move include/asm-blackfin header files to arch/blackfin 2008-08-27 10:51:02 +08:00
local.h Blackfin arch: move include/asm-blackfin header files to arch/blackfin 2008-08-27 10:51:02 +08:00
mem_init.h Blackfin arch: Fix Bug - Kernel does not boot if re-program clocks 2009-02-04 16:49:45 +08:00
mem_map.h Blackfin arch: smp patch cleanup from LKML review 2009-01-07 23:14:39 +08:00
mman.h Blackfin arch: move include/asm-blackfin header files to arch/blackfin 2008-08-27 10:51:02 +08:00
mmu_context.h Blackfin arch: SMP supporting patchset: Blackfin CPLB related code 2008-11-18 17:48:22 +08:00
mmu.h NOMMU: Make VMAs per MM as for MMU-mode linux 2009-01-08 12:04:47 +00:00
module.h Blackfin arch: move include/asm-blackfin header files to arch/blackfin 2008-08-27 10:51:02 +08:00
msgbuf.h Blackfin arch: move include/asm-blackfin header files to arch/blackfin 2008-08-27 10:51:02 +08:00
mutex-dec.h Blackfin arch: SMP supporting patchset: Blackfin header files and machine common code 2009-01-07 23:14:39 +08:00
mutex.h Blackfin arch: SMP supporting patchset: Blackfin header files and machine common code 2009-01-07 23:14:39 +08:00
nand.h Blackfin arch: move include/asm-blackfin header files to arch/blackfin 2008-08-27 10:51:02 +08:00
page_offset.h Blackfin arch: move include/asm-blackfin header files to arch/blackfin 2008-08-27 10:51:02 +08:00
page.h Blackfin arch: move include/asm-blackfin header files to arch/blackfin 2008-08-27 10:51:02 +08:00
param.h Blackfin arch: move include/asm-blackfin header files to arch/blackfin 2008-08-27 10:51:02 +08:00
pci.h Blackfin arch: move include/asm-blackfin header files to arch/blackfin 2008-08-27 10:51:02 +08:00
pda.h Blackfin arch: Add ability to count and display number of NMI interrupts 2009-02-04 16:49:45 +08:00
percpu.h percpu: clean up percpu constants 2009-03-06 14:33:58 +09:00
pgalloc.h Blackfin arch: move include/asm-blackfin header files to arch/blackfin 2008-08-27 10:51:02 +08:00
pgtable.h Blackfin arch: stub out pgprot_noncached() like other people seem to do on nommu 2009-01-07 23:14:39 +08:00
poll.h Blackfin arch: move include/asm-blackfin header files to arch/blackfin 2008-08-27 10:51:02 +08:00
portmux.h Blackfin arch: move include/asm-blackfin header files to arch/blackfin 2008-08-27 10:51:02 +08:00
posix_types.h Blackfin arch: move include/asm-blackfin header files to arch/blackfin 2008-08-27 10:51:02 +08:00
processor.h Blackfin arch: disable pthread stack check for SMP at runtime 2009-01-07 23:14:38 +08:00
ptrace.h Blackfin arch: ptrace - make sure PT_ORIG_R0 and PT_ORIG_P0 offsets are declared 2008-10-09 15:22:56 +08:00
reboot.h Blackfin arch: Fix bug - Run "reboot" hangs bf518-ezbrd 2009-02-04 16:49:45 +08:00
resource.h Blackfin arch: move include/asm-blackfin header files to arch/blackfin 2008-08-27 10:51:02 +08:00
rwlock.h Blackfin arch: SMP supporting patchset: Blackfin header files and machine common code 2009-01-07 23:14:39 +08:00
scatterlist.h Blackfin arch: move include/asm-blackfin header files to arch/blackfin 2008-08-27 10:51:02 +08:00
sections.h Blackfin arch: move include/asm-blackfin header files to arch/blackfin 2008-08-27 10:51:02 +08:00
segment.h Blackfin arch: move include/asm-blackfin header files to arch/blackfin 2008-08-27 10:51:02 +08:00
sembuf.h Blackfin arch: move include/asm-blackfin header files to arch/blackfin 2008-08-27 10:51:02 +08:00
serial.h Blackfin arch: define BASE_BAUD like everyone else 2008-11-18 17:48:22 +08:00
setup.h Blackfin arch: move include/asm-blackfin header files to arch/blackfin 2008-08-27 10:51:02 +08:00
shmbuf.h Blackfin arch: move include/asm-blackfin header files to arch/blackfin 2008-08-27 10:51:02 +08:00
shmparam.h Blackfin arch: move include/asm-blackfin header files to arch/blackfin 2008-08-27 10:51:02 +08:00
sigcontext.h Blackfin arch: move include/asm-blackfin header files to arch/blackfin 2008-08-27 10:51:02 +08:00
siginfo.h Blackfin arch: move include/asm-blackfin header files to arch/blackfin 2008-08-27 10:51:02 +08:00
signal.h Blackfin arch: move include/asm-blackfin header files to arch/blackfin 2008-08-27 10:51:02 +08:00
smp.h Blackfin arch: smp patch cleanup from LKML review 2009-01-07 23:14:39 +08:00
socket.h net: new user space API for time stamping of incoming and outgoing packets 2009-02-15 22:43:33 -08:00
sockios.h Blackfin arch: move include/asm-blackfin header files to arch/blackfin 2008-08-27 10:51:02 +08:00
spinlock_types.h Blackfin arch: SMP supporting patchset: Blackfin header files and machine common code 2009-01-07 23:14:39 +08:00
spinlock.h Blackfin arch: SMP supporting patchset: Blackfin header files and machine common code 2009-01-07 23:14:39 +08:00
stat.h Blackfin arch: move include/asm-blackfin header files to arch/blackfin 2008-08-27 10:51:02 +08:00
statfs.h Blackfin arch: move include/asm-blackfin header files to arch/blackfin 2008-08-27 10:51:02 +08:00
string.h Blackfin arch: move include/asm-blackfin header files to arch/blackfin 2008-08-27 10:51:02 +08:00
swab.h headers_check fix: blackfin, swab.h 2009-02-01 11:01:23 +05:30
system.h Blackfin arch: merge adeos blackfin part to arch/blackfin/ 2009-01-07 23:14:39 +08:00
termbits.h Blackfin arch: move include/asm-blackfin header files to arch/blackfin 2008-08-27 10:51:02 +08:00
termios.h Blackfin arch: move include/asm-blackfin header files to arch/blackfin 2008-08-27 10:51:02 +08:00
thread_info.h Blackfin arch: Update adeos blackfin arch patch to 1.9-00 2009-03-04 16:52:38 +08:00
time.h Blackfin arch: move include/asm-blackfin header files to arch/blackfin 2008-08-27 10:51:02 +08:00
timex.h Blackfin arch: make sure cycles is marked as volatile so gcc doesnt reorder on us 2008-10-16 23:55:41 +08:00
tlb.h Blackfin arch: move include/asm-blackfin header files to arch/blackfin 2008-08-27 10:51:02 +08:00
tlbflush.h Blackfin arch: move include/asm-blackfin header files to arch/blackfin 2008-08-27 10:51:02 +08:00
topology.h Blackfin arch: move include/asm-blackfin header files to arch/blackfin 2008-08-27 10:51:02 +08:00
trace.h Blackfin arch: move include/asm-blackfin header files to arch/blackfin 2008-08-27 10:51:02 +08:00
traps.h Blackfin arch: Better error handling of unknown exceptions 2008-10-08 14:43:47 +08:00
types.h Blackfin arch: move include/asm-blackfin header files to arch/blackfin 2008-08-27 10:51:02 +08:00
uaccess.h Blackfin arch: add __must_check markings to our user functions like other arches 2009-01-07 23:14:38 +08:00
ucontext.h Blackfin arch: move include/asm-blackfin header files to arch/blackfin 2008-08-27 10:51:02 +08:00
unaligned.h Blackfin arch: move include/asm-blackfin header files to arch/blackfin 2008-08-27 10:51:02 +08:00
unistd.h Blackfin arch: move include/asm-blackfin header files to arch/blackfin 2008-08-27 10:51:02 +08:00
user.h Blackfin arch: move include/asm-blackfin header files to arch/blackfin 2008-08-27 10:51:02 +08:00
xor.h Blackfin arch: use generic xor.h 2008-11-18 17:48:22 +08:00