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 <michal.simek@xilinx.com>
This commit is contained in:
@@ -173,7 +173,8 @@ int fpga_add(fpga_type devtype, void *desc)
|
||||
/*
|
||||
* Convert bitstream data and load into the fpga
|
||||
*/
|
||||
int __weak fpga_loadbitstream(int devnum, char *fpgadata, size_t size)
|
||||
int __weak fpga_loadbitstream(int devnum, char *fpgadata, size_t size,
|
||||
bitstream_type bstype)
|
||||
{
|
||||
printf("Bitstream support not implemented for this FPGA device\n");
|
||||
return FPGA_FAIL;
|
||||
@@ -182,7 +183,7 @@ int __weak fpga_loadbitstream(int devnum, char *fpgadata, size_t size)
|
||||
/*
|
||||
* Generic multiplexing code
|
||||
*/
|
||||
int fpga_load(int devnum, const void *buf, size_t bsize)
|
||||
int fpga_load(int devnum, const void *buf, size_t bsize, bitstream_type bstype)
|
||||
{
|
||||
int ret_val = FPGA_FAIL; /* assume failure */
|
||||
const fpga_desc *desc = fpga_validate(devnum, buf, bsize,
|
||||
@@ -192,7 +193,8 @@ int fpga_load(int devnum, const void *buf, size_t bsize)
|
||||
switch (desc->devtype) {
|
||||
case fpga_xilinx:
|
||||
#if defined(CONFIG_FPGA_XILINX)
|
||||
ret_val = xilinx_load(desc->devdesc, buf, bsize);
|
||||
ret_val = xilinx_load(desc->devdesc, buf, bsize,
|
||||
bstype);
|
||||
#else
|
||||
fpga_no_sup((char *)__func__, "Xilinx devices");
|
||||
#endif
|
||||
|
Reference in New Issue
Block a user