diff options
| author | Wolfgang Wegner <w.wegner@astro-kom.de> | 2009-10-30 16:55:02 +0100 | 
|---|---|---|
| committer | TsiChung Liew <tsicliew@gmail.com> | 2010-03-24 11:08:43 -0500 | 
| commit | 89083346d0627a5e6e271e61bd34ab5121f9462b (patch) | |
| tree | 6a46d3fe57befe0d6d0097bbf5f57c7d2bad95c5 /include | |
| parent | 9d79e5758c3a6776be9a86856823d28e7154a481 (diff) | |
| download | olio-uboot-2014.01-89083346d0627a5e6e271e61bd34ab5121f9462b.tar.xz olio-uboot-2014.01-89083346d0627a5e6e271e61bd34ab5121f9462b.zip | |
add block write function to spartan3 slave serial load
Using seperate function calls for each bit-bang of slave serial
load can be painfully slow. This patch adds the possibility to
supply a block write function that loads the complete block of
data in one call (like it can already be done with Altera FPGAs).
On an MCF5373L (240 MHz) loading an XC3S4000 this reduces the load
time from around 15 seconds to around 3 seconds
Signed-off-by: Wolfgang Wegner <w.wegner at astro-kom.de>
Diffstat (limited to 'include')
| -rw-r--r-- | include/spartan3.h | 1 | ||||
| -rw-r--r-- | include/xilinx.h | 1 | 
2 files changed, 2 insertions, 0 deletions
| diff --git a/include/spartan3.h b/include/spartan3.h index 30b1c2d62..d5a589d09 100644 --- a/include/spartan3.h +++ b/include/spartan3.h @@ -57,6 +57,7 @@ typedef struct {  	Xilinx_done_fn	done;  	Xilinx_wr_fn	wr;  	Xilinx_post_fn	post; +	Xilinx_bwr_fn	bwr; /* block write function */  } Xilinx_Spartan3_Slave_Serial_fns;  /* Device Image Sizes diff --git a/include/xilinx.h b/include/xilinx.h index d0799bc57..2cb2e5b6a 100644 --- a/include/xilinx.h +++ b/include/xilinx.h @@ -100,5 +100,6 @@ typedef int (*Xilinx_busy_fn)( int cookie );  typedef int (*Xilinx_abort_fn)( int cookie );  typedef int (*Xilinx_pre_fn)( int cookie );  typedef int (*Xilinx_post_fn)( int cookie ); +typedef int (*Xilinx_bwr_fn)( void *buf, size_t len, int flush, int cookie );  #endif  /* _XILINX_H_ */ |