Skip to contentSkip to conversation

Adds Altera Stratix II fpga burn support

PATCH New eran.liberty at gmail.com 2 participants 3 messages Jul 5, 2007

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 Adds Altera Stratix II fpga burn support

too quick on the trigger. (the last patch of the same name does not compile)

this will patch against snapshot 98c440bee623ecdd5322852732b883e696fb2140

Adds generic implementation of Altera Stratix II fpga burn
fast passive parallel, and fast passive parallel with security, and passive serial formats.

include/altera.h +17 -4
diff -x .svn -Nuar u-boot.git-98c440bee623ecdd5322852732b883e696fb2140/include/altera.h u-boot-exsw6000/include/altera.h
@@ -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

178 lines not on this page · raw message

include/stratixII.h +32 -0
diff -x .svn -Nuar u-boot.git-98c440bee623ecdd5322852732b883e696fb2140/include/stratixII.h u-boot-exsw6000/include/stratixII.h
@@ -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
diff -x .svn -Nuar u-boot.git-98c440bee623ecdd5322852732b883e696fb2140/common/Makefile u-boot-exsw6000/common/Makefile
@@ -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 \
#1 lore raw

PATCH 1/1 Adds Altera Stratix II fpga burn support

Quoted 26 lines · eran.liberty at gmail.com

too quick on the trigger. (the last patch of the same name does not compile)

this will patch against snapshot 98c440bee623ecdd5322852732b883e696fb2140

Adds generic implementation of Altera Stratix II fpga burn
fast passive parallel, and fast passive parallel with security, and passive serial formats.

diff -x .svn -Nuar u-boot.git-98c440bee623ecdd5322852732b883e696fb2140/include/altera.h u-boot-exsw6000/include/altera.h

include/altera.h 2007-06-28 10:24:40.000000000 +0300 renamed from include/altera.h 2007-07-03 16:07:56.000000000 +0300 +1 -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 )
 

include/altera.h 2007-06-28 10:24:40.000000000 +0300 line 45

Quoted 10 lines
include/altera.h 2007-06-28 10:24:40.000000000 +0300 renamed from include/altera.h 2007-07-03 16:07:56.000000000 +0300 +2 -0
 #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 */

BTW; the bitfield approach to CONFIG macros is also depreciated; and all CFG_* macros are being converted to CONFIG_*. Depending on when/where your patches get merged, you may be asked to do some rework here. Take a look at jdl's activity on the u-boot-testing tree to see what I mean.

Cheers,
g.

Signature · 4 lines
Grant Likely, B.Sc., P.Eng.
Secret Lab Technologies Ltd.
grant.likely at secretlab.ca
(403) 399-0195
#2 lore raw

PATCH 1/1 Adds Altera Stratix II fpga burn support

Quoted 32 lines · Grant Likely
Quoted 31 lines · eran.liberty at gmail.com

too quick on the trigger. (the last patch of the same name does not compile)

this will patch against snapshot 98c440bee623ecdd5322852732b883e696fb2140

Adds generic implementation of Altera Stratix II fpga burn
fast passive parallel, and fast passive parallel with security, and passive serial formats.

diff -x .svn -Nuar u-boot.git-98c440bee623ecdd5322852732b883e696fb2140/include/altera.h u-boot-exsw6000/include/altera.h

include/altera.h 2007-06-28 10:24:40.000000000 +0300 renamed from include/altera.h 2007-07-03 16:07:56.000000000 +0300 +2 -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 */
 
Quoted 12 lines

include/altera.h 2007-06-28 10:24:40.000000000 +0300 line 45

Quoted 5 lines
include/altera.h 2007-06-28 10:24:40.000000000 +0300 renamed from include/altera.h 2007-07-03 16:07:56.000000000 +0300 +1 -0
 /* 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 */

BTW; the bitfield approach to CONFIG macros is also depreciated; and all CFG_* macros are being converted to CONFIG_*. Depending on when/where your patches get merged, you may be asked to do some rework here. Take a look at jdl's activity on the u-boot-testing tree to see what I mean.

LOL
one at a time

lets get this one patched in first

Liberty

Quoted 9 lines

Cheers,
g.

--
Grant Likely, B.Sc., P.Eng.
Secret Lab Technologies Ltd.
grant.likely at secretlab.ca
(403) 399-0195