Adds Altera Stratix II fpga burn support
PATCH 1/1 Adds Altera Stratix II fpga burn support
Adds generic implementation of Altera Stratix II fpga burn:
fast passive parallel, and fast passive parallel with security, and passive serial formats.
patched against u-boot snpashot 98c440bee623ecdd5322852732b883e696fb2140
Signed-off-by Eran Liberty <[email protected]>
include/altera.h +17 -4
@@ -27,22 +27,21 @@ #ifndef _ALTERA_H_ #define _ALTERA_H_ -/* - * See include/xilinx.h for another working example. - */ - /* Altera Model definitions *********************************************************************/ #define CFG_ACEX1K CFG_FPGA_DEV( 0x1 ) #define CFG_CYCLON2 CFG_FPGA_DEV( 0x2 ) +#define CFG_STRATIX_II CFG_FPGA_DEV( 0x4 ) #define CFG_ALTERA_ACEX1K (CFG_FPGA_ALTERA | CFG_ACEX1K) #define CFG_ALTERA_CYCLON2 (CFG_FPGA_ALTERA | CFG_CYCLON2) +#define CFG_ALTERA_STRATIX_II (CFG_FPGA_ALTERA | CFG_STRATIX_II) /* Add new models here */ /* Altera Interface definitions *********************************************************************/ #define CFG_ALTERA_IF_PS CFG_FPGA_IF( 0x1 ) /* passive serial */ +#define CFG_ALTERA_IF_FPP CFG_FPGA_IF( 0x2 ) /* fast passive parallel */ /* Add new interfaces here */ typedef enum { /* typedef Altera_iface */
@@ -52,6 +51,8 @@ passive_parallel_asynchronous,/* parallel data */ passive_serial_asynchronous,/* serial data w/ internal clock (not used) */ altera_jtag_mode,/* jtag/tap serial (not used ) */ + fast_passive_parallel,/* fast passive parallel (FPP) */ + fast_passive_parallel_security,/* fast passive parallel with security (FPPS) */ max_altera_iface_type /* insert all new types before this */ } Altera_iface;/* end, typedef Altera_iface */
@@ -59,6 +60,7 @@ min_altera_type,/* insert all new types after this */ Altera_ACEX1K,/* ACEX1K Family */ Altera_CYC2,/* CYCLONII Family */ + Altera_StratixII,/* StratixII Familiy */ /* Add new models here */ max_altera_type /* insert all new types before this */ } Altera_Family;/* end, typedef Altera_Family */
@@ -91,4 +93,15 @@typedef int (*Altera_abort_fn )(int cookie );typedef int (*Altera_post_fn )(int cookie ); +typedef struct { +Altera_pre_fn pre; +Altera_config_fn config; +Altera_status_fn status; +Altera_done_fn done; +Altera_clk_fn clk; +Altera_data_fn data; +Altera_abort_fn abort; +Altera_post_fn post; +}altera_board_specific_func ; +#endif /* _ALTERA_H_ */
common/altera.c +56 -32
179 lines not on this page · raw message
include/stratixII.h +32 -0
@@ -0,0 +1,32 @@ +/* +* (C) Copyright 2007 +* Eran Liberty, Extricom, eran.liberty at gmail.com +* +* See file CREDITS for list of people who contributed to this +* project. +* +* This program is free software; you can redistribute it and/or +* modify it under the terms of the GNU General Public License as +* published by the Free Software Foundation; either version 2 of +* the License, or (at your option) any later version. +* +* This program is distributed in the hope that it will be useful, +* but WITHOUT ANY WARRANTY; without even the implied warranty of +* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +* GNU General Public License for more details. +* +* You should have received a copy of the GNU General Public License +* along with this program; if not, write to the Free Software +* Foundation, Inc., 59 Temple Place, Suite 330, Boston, +* MA 02111-1307 USA +* +*/ +#ifndef _STRATIXII_H_ +#define _STRATIXII_H_ + +extern int StratixII_load (Altera_desc * desc,void *image,size_t size); +extern int StratixII_dump (Altera_desc * desc,void *buf,size_t bsize); +extern int StratixII_info (Altera_desc * desc); +extern int StratixII_reloc (Altera_desc * desc,ulong reloc_off); + +#endif /* _STRATIXII_H_ */
common/stratixII.c +235 -0
235 lines not on this page · raw message
common/Makefile +2 -1
@@ -27,7 +27,8 @@ AOBJS = -COBJS = main.o ACEX1K.o altera.o bedbug.o circbuf.o cmd_autoscript.o \ +COBJS = main.o ACEX1K.o altera.o stratixII.o \ + bedbug.o circbuf.o cmd_autoscript.o \ cmd_bdinfo.o cmd_bedbug.o cmd_bmp.o cmd_boot.o cmd_bootm.o \ cmd_cache.o cmd_console.o \ cmd_date.o cmd_dcr.o cmd_diag.o cmd_display.o cmd_doc.o cmd_dtt.o \