@ -163,6 +163,7 @@ int do_fpga (cmd_tbl_t * cmdtp, int flag, int argc, char * const argv[])
char * devstr = getenv ( " fpga " ) ;
char * datastr = getenv ( " fpgadata " ) ;
int rc = FPGA_FAIL ;
int wrong_parms = 0 ;
# if defined (CONFIG_FIT)
const char * fit_uname = NULL ;
ulong fit_addr ;
@ -229,6 +230,32 @@ int do_fpga (cmd_tbl_t * cmdtp, int flag, int argc, char * const argv[])
break ;
}
if ( dev = = FPGA_INVALID_DEVICE ) {
puts ( " FPGA device not specified \n " ) ;
op = FPGA_NONE ;
}
switch ( op ) {
case FPGA_NONE :
case FPGA_INFO :
break ;
case FPGA_LOAD :
case FPGA_LOADB :
case FPGA_DUMP :
if ( ! fpga_data | | ! data_size )
wrong_parms = 1 ;
break ;
case FPGA_LOADMK :
if ( ! fpga_data )
wrong_parms = 1 ;
break ;
}
if ( wrong_parms ) {
puts ( " Wrong parameters for FPGA request \n " ) ;
op = FPGA_NONE ;
}
switch ( op ) {
case FPGA_NONE :
return cmd_usage ( cmdtp ) ;
@ -342,17 +369,18 @@ static int fpga_get_op (char *opstr)
}
U_BOOT_CMD ( fpga , 6 , 1 , do_fpga ,
" loadable FPGA image support " ,
" fpga [operation type] [device number] [image address] [image size] \n "
" fpga operations: \n "
" \t info \t list known device information \n "
" \t load \t Load device from memory buffer \n "
" \t loadb \t Load device from bitstream buffer (Xilinx devices only) \n "
" \t loadmk \t Load device generated with mkimage \n "
" \t dump \t Load device to memory buffer "
" loadable FPGA image support " ,
" [operation type] [device number] [image address] [image size] \n "
" fpga operations: \n "
" dump \t [dev] \t \t \t Load device to memory buffer \n "
" info \t [dev] \t \t \t list known device information \n "
" load \t [dev] [address] [size] \t Load device from memory buffer \n "
" loadb \t [dev] [address] [size] \t "
" Load device from bitstream buffer (Xilinx only) \n "
" loadmk [dev] [address] \t Load device generated with mkimage "
# if defined(CONFIG_FIT)
" \n "
" \t For loadmk operating on FIT format uImage address must include \n "
" \t subimage unit name in the form of addr:<subimg_uname> "
" \n "
" \t For loadmk operating on FIT format uImage address must include \n "
" \t subimage unit name in the form of addr:<subimg_uname> "
# endif
) ;