mirror of
https://source.denx.de/u-boot/u-boot.git
synced 2025-11-28 14:11:29 +01:00
fpga: xilinx: pass compatible flags to load() callback
These flags may be used to check whether an FPGA driver is able to load a particular FPGA bitstream image. Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@foundries.io> Tested-by: Ricardo Salveti <ricardo@foundries.io> Tested-by: Adrian Fiergolski <adrian.fiergolski@fastree3d.com> Link: https://lore.kernel.org/r/20220722141614.297383-10-oleksandr.suvorov@foundries.io Signed-off-by: Michal Simek <michal.simek@amd.com>
This commit is contained in:
parent
71f1a5392a
commit
3e78481de9
@ -40,7 +40,7 @@ static int spartan2_ss_dump(xilinx_desc *desc, const void *buf, size_t bsize);
|
|||||||
/* ------------------------------------------------------------------------- */
|
/* ------------------------------------------------------------------------- */
|
||||||
/* Spartan-II Generic Implementation */
|
/* Spartan-II Generic Implementation */
|
||||||
static int spartan2_load(xilinx_desc *desc, const void *buf, size_t bsize,
|
static int spartan2_load(xilinx_desc *desc, const void *buf, size_t bsize,
|
||||||
bitstream_type bstype)
|
bitstream_type bstype, int flags)
|
||||||
{
|
{
|
||||||
int ret_val = FPGA_FAIL;
|
int ret_val = FPGA_FAIL;
|
||||||
|
|
||||||
|
|||||||
@ -45,7 +45,7 @@ static int spartan3_ss_dump(xilinx_desc *desc, const void *buf, size_t bsize);
|
|||||||
/* ------------------------------------------------------------------------- */
|
/* ------------------------------------------------------------------------- */
|
||||||
/* Spartan-II Generic Implementation */
|
/* Spartan-II Generic Implementation */
|
||||||
static int spartan3_load(xilinx_desc *desc, const void *buf, size_t bsize,
|
static int spartan3_load(xilinx_desc *desc, const void *buf, size_t bsize,
|
||||||
bitstream_type bstype)
|
bitstream_type bstype, int flags)
|
||||||
{
|
{
|
||||||
int ret_val = FPGA_FAIL;
|
int ret_val = FPGA_FAIL;
|
||||||
|
|
||||||
|
|||||||
@ -27,7 +27,7 @@ static ulong versal_align_dma_buffer(ulong *buf, u32 len)
|
|||||||
}
|
}
|
||||||
|
|
||||||
static int versal_load(xilinx_desc *desc, const void *buf, size_t bsize,
|
static int versal_load(xilinx_desc *desc, const void *buf, size_t bsize,
|
||||||
bitstream_type bstype)
|
bitstream_type bstype, int flags)
|
||||||
{
|
{
|
||||||
ulong bin_buf;
|
ulong bin_buf;
|
||||||
int ret;
|
int ret;
|
||||||
|
|||||||
@ -83,7 +83,7 @@ static int virtex2_ss_load(xilinx_desc *desc, const void *buf, size_t bsize);
|
|||||||
static int virtex2_ss_dump(xilinx_desc *desc, const void *buf, size_t bsize);
|
static int virtex2_ss_dump(xilinx_desc *desc, const void *buf, size_t bsize);
|
||||||
|
|
||||||
static int virtex2_load(xilinx_desc *desc, const void *buf, size_t bsize,
|
static int virtex2_load(xilinx_desc *desc, const void *buf, size_t bsize,
|
||||||
bitstream_type bstype)
|
bitstream_type bstype, int flags)
|
||||||
{
|
{
|
||||||
int ret_val = FPGA_FAIL;
|
int ret_val = FPGA_FAIL;
|
||||||
|
|
||||||
|
|||||||
@ -151,7 +151,7 @@ int xilinx_load(xilinx_desc *desc, const void *buf, size_t bsize,
|
|||||||
return FPGA_FAIL;
|
return FPGA_FAIL;
|
||||||
}
|
}
|
||||||
|
|
||||||
return desc->operations->load(desc, buf, bsize, bstype);
|
return desc->operations->load(desc, buf, bsize, bstype, flags);
|
||||||
}
|
}
|
||||||
|
|
||||||
#if defined(CONFIG_CMD_FPGA_LOADFS)
|
#if defined(CONFIG_CMD_FPGA_LOADFS)
|
||||||
|
|||||||
@ -200,7 +200,7 @@ static int zynqmp_validate_bitstream(xilinx_desc *desc, const void *buf,
|
|||||||
}
|
}
|
||||||
|
|
||||||
static int zynqmp_load(xilinx_desc *desc, const void *buf, size_t bsize,
|
static int zynqmp_load(xilinx_desc *desc, const void *buf, size_t bsize,
|
||||||
bitstream_type bstype)
|
bitstream_type bstype, int flags)
|
||||||
{
|
{
|
||||||
ALLOC_CACHE_ALIGN_BUFFER(u32, bsizeptr, 1);
|
ALLOC_CACHE_ALIGN_BUFFER(u32, bsizeptr, 1);
|
||||||
u32 swap = 0;
|
u32 swap = 0;
|
||||||
|
|||||||
@ -371,7 +371,7 @@ static int zynq_validate_bitstream(xilinx_desc *desc, const void *buf,
|
|||||||
}
|
}
|
||||||
|
|
||||||
static int zynq_load(xilinx_desc *desc, const void *buf, size_t bsize,
|
static int zynq_load(xilinx_desc *desc, const void *buf, size_t bsize,
|
||||||
bitstream_type bstype)
|
bitstream_type bstype, int flags)
|
||||||
{
|
{
|
||||||
unsigned long ts; /* Timestamp */
|
unsigned long ts; /* Timestamp */
|
||||||
u32 isr_status, swap;
|
u32 isr_status, swap;
|
||||||
|
|||||||
@ -53,7 +53,7 @@ typedef struct { /* typedef xilinx_desc */
|
|||||||
|
|
||||||
struct xilinx_fpga_op {
|
struct xilinx_fpga_op {
|
||||||
int (*load)(xilinx_desc *desc, const void *buf, size_t bsize,
|
int (*load)(xilinx_desc *desc, const void *buf, size_t bsize,
|
||||||
bitstream_type bstype);
|
bitstream_type bstype, int flags);
|
||||||
int (*loadfs)(xilinx_desc *desc, const void *buf, size_t bsize,
|
int (*loadfs)(xilinx_desc *desc, const void *buf, size_t bsize,
|
||||||
fpga_fs_info *fpga_fsinfo);
|
fpga_fs_info *fpga_fsinfo);
|
||||||
int (*loads)(xilinx_desc *desc, const void *buf, size_t bsize,
|
int (*loads)(xilinx_desc *desc, const void *buf, size_t bsize,
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user