u-boot/drivers
Nick Thompson 77436d6696 Davinci: SPI performance enhancements
The following restructuring and optimisations increase the SPI
read performance from 1.3MiB/s (on da850) to 2.87MiB/s (on da830):

Remove continual revaluation of driver state from the core of the
copy loop. State can not change during the copy loop, so it is
possible to move these evaluations to before the copy loop.

Cost is more code space as loop variants are required for each set
of possible configurations. The loops are simpler however, so the
extra is only 128bytes on da830 with CONFIG_SPI_HALF_DUPLEX
defined.

Unrolling the first copy loop iteration allows the TX buffer to be
pre-loaded reducing SPI clock starvation.

Unrolling the last copy loop iteration removes testing for the
final loop iteration every time round the loop.

Using the RX buffer empty flag as a transfer throttle allows the
assumption that it is always safe to write to the TX buffer, so
polling of TX buffer full flag can be removed.

Signed-off-by: Nick Thompson <nick.thompson@ge.com>
Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
2010-06-22 11:06:01 -04:00
..
bios_emulator ati_radeon: Support PCI virtual not eq bus mapping. 2010-04-08 15:30:47 +02:00
block 85xx/fsl-sata: Use is_serdes_configured() to determine if SATA is enabled 2010-05-12 04:53:51 -05:00
dma ColdFire: Fix compile warning messages 2009-08-26 03:44:31 -05:00
fpga add block write function to spartan3 slave serial load 2010-03-24 11:08:43 -05:00
gpio s5pc1xx: gpio: bug fix at gpio_set_pull function 2010-06-14 18:15:20 -05:00
hwmon Misc ds1722 fixups 2009-09-04 21:54:52 +02:00
i2c Blackfin: TWI/I2C: implement multibus support 2010-05-05 10:04:38 +02:00
input mpc5xxx: Remove all references to MGT5100 2010-03-21 22:44:42 +01:00
misc misc: add gpio based status led driver 2010-05-28 10:56:03 -04:00
mmc PXA: PXAMMC: Add Monahans support 2010-06-13 13:39:11 +02:00
mtd Blackfin: nand: drain the write buffer before returning 2010-05-26 17:59:13 -05:00
net dm9000x.c: fix compile problems 2010-05-26 22:19:35 +02:00
pci Move arch/ppc to arch/powerpc 2010-04-21 23:42:38 +02:00
pcmcia Misc ti_pci1410a fixups 2009-09-04 21:54:04 +02:00
power OMAP3 Move twl4030 mmc function 2009-07-29 09:57:43 +02:00
qe 83xx: UEC: Added support for bitBang MII driver access to PHYs 2010-05-03 14:52:48 -07:00
rtc MX: RTC13783 uses general function to access PMIC 2010-05-05 09:48:41 +02:00
serial Add Orion5x support to 16550 device driver 2010-06-17 19:37:01 +05:30
spi Davinci: SPI performance enhancements 2010-06-22 11:06:01 -04:00
twserial drivers/twserial: Add protocol driver for "three wire serial" interface. 2009-03-30 09:38:36 +02:00
usb drivers/*/Makefile: fix conditional compile rule. 2010-05-06 00:41:08 +02:00
video video: sm501.c: add weak default functions 2010-06-14 12:29:34 +02:00
watchdog Convert at91 watchdog driver to new SoC access 2010-04-03 15:24:27 -05:00