From 7a78bd2679ce3287cfc44f69fd7bc554d0261cf6 Mon Sep 17 00:00:00 2001 From: Michal Simek Date: Fri, 2 May 2014 14:09:30 +0200 Subject: fpga: Define bitstream type based on command selection Clean up partial, full and compressed bitstream handling. U-Boot supports full bitstream loading and partial based on detection which is not 100% correct. Extending fpga_load/fpga_loadbitstream() with one more argument which stores bitstream type. Signed-off-by: Michal Simek --- include/fpga.h | 10 ++++++++-- include/xilinx.h | 5 +++-- 2 files changed, 11 insertions(+), 4 deletions(-) (limited to 'include') diff --git a/include/fpga.h b/include/fpga.h index 15e603a169d..a55e49f9589 100644 --- a/include/fpga.h +++ b/include/fpga.h @@ -36,12 +36,18 @@ typedef struct { /* typedef fpga_desc */ } fpga_desc; /* end, typedef fpga_desc */ +typedef enum { + BIT_FULL = 0, +} bitstream_type; + /* root function definitions */ extern void fpga_init(void); extern int fpga_add(fpga_type devtype, void *desc); extern int fpga_count(void); -extern int fpga_load(int devnum, const void *buf, size_t bsize); -extern int fpga_loadbitstream(int devnum, char *fpgadata, size_t size); +extern int fpga_load(int devnum, const void *buf, size_t bsize, + bitstream_type bstype); +extern int fpga_loadbitstream(int devnum, char *fpgadata, size_t size, + bitstream_type bstype); extern int fpga_dump(int devnum, const void *buf, size_t bsize); extern int fpga_info(int devnum); extern const fpga_desc *const fpga_validate(int devnum, const void *buf, diff --git a/include/xilinx.h b/include/xilinx.h index 9801267c593..7d83ba20956 100644 --- a/include/xilinx.h +++ b/include/xilinx.h @@ -45,14 +45,15 @@ typedef struct { /* typedef xilinx_desc */ } xilinx_desc; /* end, typedef xilinx_desc */ struct xilinx_fpga_op { - int (*load)(xilinx_desc *, const void *, size_t); + int (*load)(xilinx_desc *, const void *, size_t, bitstream_type); int (*dump)(xilinx_desc *, const void *, size_t); int (*info)(xilinx_desc *); }; /* Generic Xilinx Functions *********************************************************************/ -int xilinx_load(xilinx_desc *desc, const void *image, size_t size); +int xilinx_load(xilinx_desc *desc, const void *image, size_t size, + bitstream_type bstype); int xilinx_dump(xilinx_desc *desc, const void *buf, size_t bsize); int xilinx_info(xilinx_desc *desc); -- cgit v1.2.3