Jan Nikitenko
63bd23591e
au1550 SPI controller driver
...
Here is a driver for the Alchemy au1550 PSC (Programmable Serial
Controller) in SPI master mode.
It supports dma transfers using the Alchemy descriptor based dma controller
for 4-8 bits per word SPI transfers. For 9-24 bits per word transfers, pio
irq based mode is used to avoid setup of dma channels from scratch on each
number of bits per word change.
Tested with au1550; this may also work on other MIPS Alchemy cpus, like
au1200/au1210/au1250. Used extensively with SD card connected via SPI;
this handles 8.1MHz SPI clock transfers using dma without any problem (the
highest SPI clock freq possible with au1550 running on 324MHz).
The driver supports sharing of SPI bus by multiple devices. All features
of Alchemy SPI mode are supported (all SPI modes, msb/lsb first, bits per
word in 4-24 range).
As the SPI clock of the controller depends on main input clock that shall
be configured externally, platform data structure for au1550 SPI controller
driver contains mainclk_hz attribute to define the input clock rate. From
this value, dividers of the controller for SPI clock are set up for
required frequency.
Signed-off-by: Jan Nikitenko <jan.nikitenko@gmail.com>
Whitespace and section fixups. Remove partial workaround for platform
setup bug in dma_mask setup; it couldn't work with multiple controllers.
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2007-05-08 11:15:16 -07:00
..
arc
Don't include linux/config.h from anywhere else in include/
2006-04-26 12:56:16 +01:00
ddb5xxx
[MIPS] Make I8259A_IRQ_BASE customizable
2007-02-06 16:53:09 +00:00
dec
[TC] TURBOchannel support for the DECstation
2007-02-09 16:23:16 +00:00
emma2rh
[MIPS] Define MIPS_CPU_IRQ_BASE in generic header
2007-02-06 16:53:08 +00:00
ip32
Don't include linux/config.h from anywhere else in include/
2006-04-26 12:56:16 +01:00
jmr3927
[MIPS] JMR3927 cleanup
2007-04-27 16:20:23 +01:00
lasat
[MIPS] Fix and cleanup the mess that a dozen prom_printf variants are.
2007-03-04 19:02:37 +00:00
mach-atlas
[MIPS] SNI: Fix mc146818_decode_year
2007-03-04 19:02:31 +00:00
mach-au1x00
au1550 SPI controller driver
2007-05-08 11:15:16 -07:00
mach-cobalt
[MIPS] Define MIPS_CPU_IRQ_BASE in generic header
2007-02-06 16:53:08 +00:00
mach-db1x00
[PATCH] Au1550/1200: add missing PSC #define's, make OSS driver use the proper ones
2006-06-23 07:42:56 -07:00
mach-dec
[PATCH] char/rtc: Handle memory-mapped chips properly
2006-07-10 13:24:25 -07:00
mach-emma2rh
[MIPS] Define MIPS_CPU_IRQ_BASE in generic header
2007-02-06 16:53:08 +00:00
mach-ev64120
[MIPS] Add UART IRQ number for EV64120
2006-10-01 23:16:59 +01:00
mach-excite
[MIPS] s/__ASSEMBLER__/__ASSEMBLY__/ for clarity sake.
2006-09-27 13:37:57 +01:00
mach-generic
[MIPS] DMA: Fix a bunch of warnings due to missing inline keywords.
2007-03-04 19:02:39 +00:00
mach-ip22
Merge git://git.infradead.org/hdrcleanup-2.6
2006-06-20 15:10:08 -07:00
mach-ip27
[MIPS] IP27, IP35: Fix warnings.
2007-03-17 01:03:24 +00:00
mach-ip32
[MIPS] IP27, IP35: Fix warnings.
2007-03-17 01:03:24 +00:00
mach-ja
[MIPS] Use the proper technical term for naming some of the cache macros.
2006-07-13 21:26:04 +01:00
mach-jazz
[MIPS] Unify dma-{coherent,noncoherent.ip27,ip32}
2007-02-13 22:40:50 +00:00
mach-jmr3927
[MIPS] Convert to RTC-class ds1742 driver
2007-03-04 19:02:34 +00:00
mach-lasat
mach-mips
[MIPS] SNI: Fix mc146818_decode_year
2007-03-04 19:02:31 +00:00
mach-ocelot
mach-ocelot3
[MIPS] Use the proper technical term for naming some of the cache macros.
2006-07-13 21:26:04 +01:00
mach-pb1x00
Don't include linux/config.h from anywhere else in include/
2006-04-26 12:56:16 +01:00
mach-pnx8550
[MIPS] PNX8550 fixups
2006-10-04 18:06:15 +01:00
mach-qemu
[MIPS] Qemu does not have D-cache aliases
2006-09-27 13:37:49 +01:00
mach-rm
[MIPS] RM: It should be #ifdef CONFIG_FOO not #if CONFIG_FOO ...
2007-03-04 19:02:38 +00:00
mach-sibyte
[MIPS] Use the proper technical term for naming some of the cache macros.
2006-07-13 21:26:04 +01:00
mach-sim
[MIPS] Use the proper technical term for naming some of the cache macros.
2006-07-13 21:26:04 +01:00
mach-vr41xx
[MIPS] Make I8259A_IRQ_BASE customizable
2007-02-06 16:53:09 +00:00
mach-wrppmc
[MIPS] Wind River 4KC PPMC Eval Board Support
2006-06-19 17:39:18 +01:00
mach-yosemite
[MIPS] Use the proper technical term for naming some of the cache macros.
2006-07-13 21:26:04 +01:00
mips-boards
[MIPS] Fix and cleanup the mess that a dozen prom_printf variants are.
2007-03-04 19:02:37 +00:00
pci
[MIPS] SN: include asm/sn/types.h for nasid_t.
2006-06-19 17:39:24 +01:00
sgi
[MIPS] IP22: Get rid of volatile in IP22 core code.
2007-04-27 16:20:23 +01:00
sibyte
[MIPS] Updated Sibyte headers
2007-04-27 16:20:24 +01:00
sn
[MIPS] IP27: Move definition of nic_t to its sole user.
2006-12-12 01:46:24 +00:00
tx4927
Don't include linux/config.h from anywhere else in include/
2006-04-26 12:56:16 +01:00
tx4938
fix file specification in comments
2006-10-03 23:01:26 +02:00
vr41xx
[MIPS] Make I8259A_IRQ_BASE customizable
2007-02-06 16:53:09 +00:00
xtalk
8253pit.h
a.out.h
Don't include linux/config.h from anywhere else in include/
2006-04-26 12:56:16 +01:00
abi.h
[MIPS] signals: Share even more code.
2007-02-18 21:31:35 +00:00
addrspace.h
[MIPS] Use "long" for 64-bit values on 64-bit kernel.
2006-11-30 01:14:43 +00:00
asm.h
[MIPS] 16K & 64K page size fixes
2006-11-01 17:46:09 +00:00
asmmacro-32.h
[MIPS] Fix fpu_save_double on 64-bit.
2006-06-19 17:39:13 +01:00
asmmacro-64.h
[MIPS] Fix fpu_save_double on 64-bit.
2006-06-19 17:39:13 +01:00
asmmacro.h
[MIPS] Fix use of ehb instruction for non-R2 configurations.
2006-06-29 21:10:49 +01:00
atomic.h
[MIPS] Lockdep: Fix recursion bug.
2007-03-17 01:03:29 +00:00
auxvec.h
barrier.h
[MIPS] Cleanup memory barriers for weakly ordered systems.
2006-12-04 22:43:14 +00:00
bcache.h
Don't include linux/config.h from anywhere else in include/
2006-04-26 12:56:16 +01:00
bitops.h
[MIPS] Lockdep: Fix recursion bug.
2007-03-17 01:03:29 +00:00
bootinfo.h
[MIPS] prom_free_prom_memory cleanup
2007-02-06 16:53:09 +00:00
branch.h
break.h
bug.h
[MIPS] Fix BUG(), BUG_ON() handling
2007-04-20 14:58:37 +01:00
bugs.h
Don't include linux/config.h from anywhere else in include/
2006-04-26 12:56:16 +01:00
byteorder.h
Don't include linux/config.h from anywhere else in include/
2006-04-26 12:56:16 +01:00
cache.h
Don't include linux/config.h from anywhere else in include/
2006-04-26 12:56:16 +01:00
cachectl.h
cacheflush.h
[MIPS] Remove unused argument from kunmap_coherent().
2007-04-27 16:20:24 +01:00
cacheops.h
checksum.h
[MIPS] Fix wrong checksum for split TCP packets on 64-bit MIPS
2007-04-20 14:58:37 +01:00
compat-signal.h
[MIPS] signals: Share even more code.
2007-02-18 21:31:35 +00:00
compat.h
[MIPS] compat.h uses struct pt_regs so needs to include ptrace.h.
2006-12-12 01:46:24 +00:00
compiler.h
cpu-features.h
[MIPS] FPU ownership management & preemption fixes
2007-03-17 01:03:26 +00:00
cpu-info.h
[MIPS] FPU ownership management & preemption fixes
2007-03-17 01:03:26 +00:00
cpu.h
[MIPS] Use the proper technical term for naming some of the cache macros.
2006-07-13 21:26:04 +01:00
cputime.h
current.h
debug.h
Don't include linux/config.h from anywhere else in include/
2006-04-26 12:56:16 +01:00
delay.h
[MIPS] Make MIPS udelay() preempt safe under DEBUG_PREEMPT
2007-03-24 17:01:49 +00:00
device.h
Driver core: add dev_archdata to struct device
2006-12-01 14:52:01 -08:00
div64.h
[NET]: div64_64 consolidate (rev3)
2007-04-25 22:23:33 -07:00
dma-mapping.h
[MIPS] Don't claim we support dma_declare_coherent_memory - we don't.
2007-02-13 22:40:50 +00:00
dma.h
[MIPS] ISA: Fix typo
2007-03-08 01:10:30 +00:00
ds1216.h
[MIPS] Support for several more SNI RM models.
2007-02-18 21:31:37 +00:00
ds1286.h
dsp.h
elf.h
Don't include linux/config.h from anywhere else in include/
2006-04-26 12:56:16 +01:00
emergency-restart.h
errno.h
fcntl.h
[MIPS] Remove F_SETSIG and F_GETSIG in favor of the asm-generic definitions.
2006-09-27 13:37:48 +01:00
fixmap.h
[MIPS] Fix aliasing bug in copy_to_user_page / copy_from_user_page
2006-10-21 23:17:35 +01:00
floppy.h
fpregdef.h
fpu.h
[MIPS] Retry {save,restore}_fp_context if failed in atomic context.
2007-04-20 14:58:37 +01:00
fpu_emulator.h
[MIPS] Unify mips_fpu_soft_struct and mips_fpu_hard_structs.
2006-06-19 17:39:18 +01:00
futex.h
[PATCH] mm: pagefault_{disable,enable}()
2006-12-07 08:39:21 -08:00
gdb-stub.h
gfx.h
gt64120.h
[MIPS] Rewrite GALILEO_INL/GALILEO_OUTL to GT_READ/GT_WRITE
2006-11-30 01:14:43 +00:00
gt64240.h
hardirq.h
hazards.h
[MIPS] Fix pipeline hazard.
2007-03-24 17:01:49 +00:00
highmem.h
[PATCH] mm: k{,um}map_atomic() vs in_atomic()
2006-12-07 08:39:21 -08:00
hw_irq.h
[PATCH] genirq: add ->retrigger() irq op to consolidate hw_irq_resend()
2006-06-29 10:26:23 -07:00
i8259.h
[MIPS] Make I8259A_IRQ_BASE customizable
2007-02-06 16:53:09 +00:00
ide.h
inst.h
[MIPS] Fix rdhwr_op definition.
2006-07-13 21:26:08 +01:00
inventory.h
io.h
[MIPS] Iomap implementation.
2007-02-18 21:31:34 +00:00
ioctl.h
[MIPS] Remove unreferenced _IOC_SLMASK macro in ioctl.h.
2007-02-26 23:06:06 +00:00
ioctls.h
ipc.h
ipcbuf.h
irq.h
[MIPS] Make I8259A_IRQ_BASE customizable
2007-02-06 16:53:09 +00:00
irq_cpu.h
[MIPS] Define MIPS_CPU_IRQ_BASE in generic header
2007-02-06 16:53:08 +00:00
irq_regs.h
[MIPS] Complete fixes after removal of pt_regs argument to int handlers.
2006-10-08 02:38:28 +01:00
irqflags.h
[MIPS] SMTC: Fix recursion in instant IPI replay code.
2007-03-29 23:46:36 +01:00
isadep.h
Don't include linux/config.h from anywhere else in include/
2006-04-26 12:56:16 +01:00
jazz.h
jazzdma.h
Kbuild
[MIPS] Have headers_install install <asm/cachectl.h> and <asm/sysmips.h>.
2006-09-27 13:37:56 +01:00
kdebug.h
move die notifier handling to common code
2007-05-08 11:15:04 -07:00
kexec.h
kdump/kexec: calculate note size at compile time
2007-05-08 11:15:07 -07:00
kmap_types.h
Don't include linux/config.h from anywhere else in include/
2006-04-26 12:56:16 +01:00
kspd.h
linkage.h
local.h
Don't include linux/config.h from anywhere else in include/
2006-04-26 12:56:16 +01:00
m48t35.h
m48t37.h
marvell.h
[MIPS] MV64340: Add missing prototype for mv64340_irq_init().
2007-03-29 23:46:35 +01:00
mc146818-time.h
mc146818rtc.h
mips_mt.h
[MIPS] SMTC: <asm/mips_mt.h> must include <linux/cpumask.h>
2007-03-07 00:07:15 +00:00
mipsmtregs.h
[MIPS] MT: Nuke duplicate mips_mt_regdump() prototype.
2007-02-06 16:53:24 +00:00
mipsprom.h
mipsregs.h
[MIPS] Remove unused R10000 performance counter definitions.
2006-11-30 01:14:45 +00:00
mman.h
[PATCH] Remove final references to deprecated "MAP_ANON" page protection flag
2007-02-11 10:51:17 -08:00
mmu.h
mmu_context.h
[PATCH] x86: PARAVIRT: add hooks to intercept mm creation and destruction
2007-05-02 19:27:14 +02:00
mmzone.h
[PATCH] Delete unused definitions of kvaddr_to_nid
2006-06-23 07:42:52 -07:00
module.h
Don't include linux/config.h from anywhere else in include/
2006-04-26 12:56:16 +01:00
msc01_ic.h
[MIPS] Complete fixes after removal of pt_regs argument to int handlers.
2006-10-08 02:38:28 +01:00
msgbuf.h
Don't include linux/config.h from anywhere else in include/
2006-04-26 12:56:16 +01:00
mutex.h
namei.h
nile4.h
paccess.h
[MIPS] Replace old fashioned "__typeof" with "__typeof__".
2007-04-27 16:20:25 +01:00
page.h
[MIPS] FLATMEM: introduce PHYS_OFFSET.
2007-02-06 16:53:13 +00:00
param.h
[MIPS] Make timer interrupt frequency configurable from kconfig.
2006-06-19 17:39:27 +01:00
parport.h
pci.h
[MIPS] Iomap implementation.
2007-02-18 21:31:34 +00:00
percpu.h
pgalloc.h
[MIPS] Add external declaration of pagetable_init() to pgalloc.h
2007-02-18 21:31:36 +00:00
pgtable-32.h
[MIPS] pte_offset(dir,addr): parenthesis fix
2006-12-06 20:16:08 +00:00
pgtable-64.h
[MIPS] Always use virt_to_phys() when translating kernel addresses
2007-03-24 17:01:49 +00:00
pgtable-bits.h
Don't include linux/config.h from anywhere else in include/
2006-04-26 12:56:16 +01:00
pgtable.h
Clean up mostly unused IOSPACE macros
2007-05-08 11:15:13 -07:00
pmon.h
poll.h
posix_types.h
prctl.h
prefetch.h
Don't include linux/config.h from anywhere else in include/
2006-04-26 12:56:16 +01:00
processor.h
Merge git://git.infradead.org/hdrcleanup-2.6
2006-06-20 15:10:08 -07:00
ptrace.h
[MIPS] Add basic SMARTMIPS ASE support
2007-02-22 00:50:44 +00:00
qemu.h
[MIPS] Qemu system shutdown support
2006-06-19 17:39:19 +01:00
r4kcache.h
reboot.h
reg.h
Don't include linux/config.h from anywhere else in include/
2006-04-26 12:56:16 +01:00
regdef.h
resource.h
Don't include linux/config.h from anywhere else in include/
2006-04-26 12:56:16 +01:00
rm9k-ocd.h
[MIPS] Support for the RM9000-based Basler eXcite smart camera platform.
2006-06-19 17:39:26 +01:00
rtc.h
rtlx.h
[MIPS] RTLX: Handle copy_*_user return values.
2007-03-17 01:03:29 +00:00
scatterlist.h
PCI: scatterlist.h needs types.h
2007-05-02 19:02:34 -07:00
sections.h
[MIPS] Remove _fdata from asm-mips/sections.h
2007-02-06 16:53:15 +00:00
segment.h
semaphore.h
sembuf.h
serial.h
[MIPS] Remove IT8172-based platforms, ITE 8172G and Globespan IVR support.
2006-10-03 17:59:17 +01:00
setup.h
[PATCH] cleanup asm/setup.h userspace visibility
2006-12-07 08:39:46 -08:00
sgialib.h
[MIPS] Fix and cleanup the mess that a dozen prom_printf variants are.
2007-03-04 19:02:37 +00:00
sgiarcs.h
[MIPS] ARC: Fix warning.
2007-03-24 17:01:49 +00:00
sgidefs.h
shmbuf.h
shmparam.h
sigcontext.h
[MIPS] Add basic SMARTMIPS ASE support
2007-02-22 00:50:44 +00:00
siginfo.h
Don't include linux/config.h from anywhere else in include/
2006-04-26 12:56:16 +01:00
signal.h
[MIPS] signals: Share even more code.
2007-02-18 21:31:35 +00:00
sim.h
Don't include linux/config.h from anywhere else in include/
2006-04-26 12:56:16 +01:00
smp.h
Merge git://git.infradead.org/hdrcleanup-2.6
2006-06-20 15:10:08 -07:00
smtc.h
[MIPS] SMTC: Add fordward declarations for mm_struct and task_struct.
2007-03-07 00:07:16 +00:00
smtc_ipi.h
[MIPS] SMTC: Fix recursion in instant IPI replay code.
2007-03-29 23:46:36 +01:00
smtc_proc.h
sni.h
[MIPS] SNI: MIPS_CPU_IRQ_BASE cleanup
2007-02-26 23:06:06 +00:00
socket.h
[NET]: Adding SO_TIMESTAMPNS / SCM_TIMESTAMPNS support
2007-04-25 22:24:21 -07:00
sockios.h
[NET]: Introduce SIOCGSTAMPNS ioctl to get timestamps with nanosec resolution
2007-04-25 22:24:04 -07:00
sparsemem.h
[MIPS] Fix sparsemem support.
2006-06-06 00:15:20 +01:00
spinlock.h
[MIPS] Fix __raw_read_trylock() to allow multiple readers
2007-03-07 00:07:17 +00:00
spinlock_types.h
stackframe.h
[MIPS] Add basic SMARTMIPS ASE support
2007-02-22 00:50:44 +00:00
stacktrace.h
[MIPS] Make unwind_stack() can dig into interrupted context
2006-10-01 23:16:59 +01:00
stat.h
statfs.h
string.h
Don't include linux/config.h from anywhere else in include/
2006-04-26 12:56:16 +01:00
suspend.h
sysmips.h
system.h
[MIPS] Lockdep: Fix recursion bug.
2007-03-17 01:03:29 +00:00
termbits.h
[PATCH] tty: preparatory structures for termios revamp
2006-12-08 08:28:56 -08:00
termios.h
[PATCH] consolidate line discipline number definitions
2007-02-11 10:51:26 -08:00
thread_info.h
[MIPS] Disallow CpU exception in kernel again.
2007-04-20 14:58:37 +01:00
time.h
[MIPS] mips HPT cleanup: make clocksource_mips public
2006-11-30 01:14:49 +00:00
timex.h
[MIPS] Fix errors detected by "make headers_check"
2006-09-27 13:37:40 +01:00
titan_dep.h
tlb.h
tlbdebug.h
tlbflush.h
Don't include linux/config.h from anywhere else in include/
2006-04-26 12:56:16 +01:00
topology.h
traps.h
tx3912.h
types.h
[PATCH] Centralise definitions of sector_t and blkcnt_t
2006-12-04 19:41:15 -08:00
uaccess.h
[MIPS] Export __copy_user_inatomic.
2007-03-07 00:07:17 +00:00
ucontext.h
unaligned.h
unistd.h
[MIPS] Wire up ioprio_set and ioprio_get.
2007-03-07 00:07:18 +00:00
user.h
[MIPS] Fix errors detected by "make headers_check"
2006-09-27 13:37:40 +01:00
vga.h
[PATCH] vgacon: make VGA_MAP_MEM take size, remove extra use
2006-06-22 15:05:58 -07:00
vpe.h
war.h
[MIPS] Rename SNI_RM200_PCI to just SNI_RM preparing for more RM machines
2006-12-09 01:03:58 +00:00
watch.h
wbflush.h
Don't include linux/config.h from anywhere else in include/
2006-04-26 12:56:16 +01:00
xor.h
xxs1500.h