[U-Boot][PATCH v3 0/4] Improve fpga cmd usage information

Current usage information is not read friendly specially when all the options are selected. This series fix some of the issues in the info, aligment and overlapping issues, excess of verbosity on the loads...
Additionally Xilinx exclusive command dependencies are included to remove text stating Xilinx Only
The output looks like this now:
fpga - loadable FPGA image support
Usage: fpga info [dev] List known device information fpga dump <dev> <address> <size> Load device to memory buffer fpga load <dev> <address> <size> Load device from memory buffer fpga loadb <dev> <address> <size> Load device from bitstream buffer fpga loadp <dev> <address> <size> Load device from memory buffer with partial bitstream fpga loadbp <dev> <address> <size> Load device from bitstream buffer with partial bitstream fpga loadfs <dev> <address> <size> <blocksize> <interface> [<dev[:part]>] <filename> Load device from filesystem (FAT by default) fpga loadmk <dev> <address> Load device generated with mkimage NOTE: loadmk operating on FIT must include subimage unit name in the form of addr:<subimg_uname> fpga loads <dev> <address> <size> <authflag> <encflag> [Userkey address] Load device from memory buffer with secure bistream (authenticated/encrypted/both) -authflag: 0 for OCM, 1 for DDR, 2 for no authentication (specifies where to perform authentication) -encflag: 0 for device key, 1 for user key, 2 for no encryption -Userkey address: address where user key is stored NOTE: secure bitstream has to be created using Xilinx bootgen tool
Changes in v3: - Split 3rd patch into two, resorting commands and Kconfig changes
Changes in v2: - Tabs replaced by spaces - fpga command added on each option similar to other commands like sf - Dependencies to Xilinx only commands added in Kconfig
Ibai Erkiaga (4): fpga: fix alignment on fpga cmd usage info fpga: improve loads usage information fpga: resort fpga commands fpga: xilinx exclusive commands
cmd/Kconfig | 30 +++++++++++++++++----------- cmd/fpga.c | 57 ++++++++++++++++++++++------------------------------- 2 files changed, 42 insertions(+), 45 deletions(-)

The current implementation generates some alignment issues as well as some overlapping when all the fpga command options are enabled. The fix is intended to improve readability of the usage info.
Signed-off-by: Ibai Erkiaga ibai.erkiaga-elorza@amd.com ---
Changes in v3: - Split 3rd patch into two, resorting commands and Kconfig changes
Changes in v2: - Tabs replaced by spaces - fpga command added on each option similar to other commands like sf - Dependencies to Xilinx only commands added in Kconfig
cmd/fpga.c | 61 +++++++++++++++++++++++++----------------------------- 1 file changed, 28 insertions(+), 33 deletions(-)
diff --git a/cmd/fpga.c b/cmd/fpga.c index 93f14098ccb..ae85ff201b8 100644 --- a/cmd/fpga.c +++ b/cmd/fpga.c @@ -408,49 +408,44 @@ U_BOOT_CMD(fpga, 9, 1, do_fpga_wrapper, #else U_BOOT_CMD(fpga, 6, 1, do_fpga_wrapper, #endif - "loadable FPGA image support", - "[operation type] [device number] [image address] [image size]\n" - "fpga operations:\n" - " dump\t[dev] [address] [size]\tLoad device to memory buffer\n" - " info\t[dev]\t\t\tlist known device information\n" - " load\t[dev] [address] [size]\tLoad device from memory buffer\n" + "loadable FPGA image support", + "info [dev] List known device information\n" + "fpga dump <dev> <address> <size> Load device to memory buffer\n" + "fpga load <dev> <address> <size> Load device from memory buffer\n" #if defined(CONFIG_CMD_FPGA_LOADP) - " loadp\t[dev] [address] [size]\t" - "Load device from memory buffer with partial bitstream\n" + "fpga loadp <dev> <address> <size> Load device from memory buffer\n" + " with partial bitstream\n" #endif - " loadb\t[dev] [address] [size]\t" - "Load device from bitstream buffer (Xilinx only)\n" + "fpga loadb <dev> <address> <size> Load device from bitstream buffer\n" + " (Xilinx only)\n" #if defined(CONFIG_CMD_FPGA_LOADBP) - " loadbp\t[dev] [address] [size]\t" - "Load device from bitstream buffer with partial bitstream" - "(Xilinx only)\n" + "fpga loadbp <dev> <address> <size> Load device from bitstream buffer\n" + " with partial bitstream (Xilinx only)\n" #endif #if defined(CONFIG_CMD_FPGA_LOADFS) - "Load device from filesystem (FAT by default) (Xilinx only)\n" - " loadfs [dev] [address] [image size] [blocksize] <interface>\n" - " [<dev[:part]>] <filename>\n" + "fpga loadfs <dev> <address> <size> <blocksize> <interface> [<dev[:part]>] <filename>\n" + " Load device from filesystem (FAT by default) (Xilinx only)\n" #endif #if defined(CONFIG_CMD_FPGA_LOADMK) - " loadmk [dev] [address]\tLoad device generated with mkimage" + "fpga loadmk <dev> <address> Load device generated with mkimage\n" #if defined(CONFIG_FIT) - "\n" - "\tFor loadmk operating on FIT format uImage address must include\n" - "\tsubimage unit name in the form of addr:<subimg_uname>" + " NOTE: loadmk operating on FIT must include subimage unit\n" + " name in the form of addr:<subimg_uname>\n" #endif #endif #if defined(CONFIG_CMD_FPGA_LOAD_SECURE) - "Load encrypted bitstream (Xilinx only)\n" - " loads [dev] [address] [size] [auth-OCM-0/DDR-1/noauth-2]\n" - " [enc-devkey(0)/userkey(1)/nenc(2) [Userkey address]\n" - "Loads the secure bistreams(authenticated/encrypted/both\n" - "authenticated and encrypted) of [size] from [address].\n" - "The auth-OCM/DDR flag specifies to perform authentication\n" - "in OCM or in DDR. 0 for OCM, 1 for DDR, 2 for no authentication.\n" - "The enc flag specifies which key to be used for decryption\n" - "0-device key, 1-user key, 2-no encryption.\n" - "The optional Userkey address specifies from which address key\n" - "has to be used for decryption if user key is selected.\n" - "NOTE: the secure bitstream has to be created using Xilinx\n" - "bootgen tool only.\n" + "fpga loads <dev> <address> <size> <auth-OCM-0/DDR-1/noauth-2>\n" + " <enc-devkey(0)/userkey(1)/nenc(2> [Userkey address]\n" + " Loads the secure bistreams(authenticated/encrypted/both\n" + " authenticated and encrypted) of [size] from [address]\n" + " (Xilinx only)\n" + " -The auth-OCM/DDR flag specifies to perform authentication\n" + " in OCM or in DDR. 0 for OCM, 1 for DDR, 2 for no authentication\n" + " -The enc flag specifies which key to be used for decryption\n" + " 0-device key, 1-user key, 2-no encryption.\n" + " -The optional Userkey address specifies from which address key\n" + " has to be used for decryption if user key is selected.\n" + " NOTE: the secure bitstream has to be created using Xilinx\n" + " bootgen tool only.\n" #endif );

Hello,
Am Fri, Jan 17, 2025 at 11:25:48AM +0000 schrieb Ibai Erkiaga:
The current implementation generates some alignment issues as well as some overlapping when all the fpga command options are enabled. The fix is intended to improve readability of the usage info.
Signed-off-by: Ibai Erkiaga ibai.erkiaga-elorza@amd.com
Changes in v3:
- Split 3rd patch into two, resorting commands and Kconfig changes
Changes in v2:
- Tabs replaced by spaces
- fpga command added on each option similar to other commands like sf
- Dependencies to Xilinx only commands added in Kconfig
cmd/fpga.c | 61 +++++++++++++++++++++++++----------------------------- 1 file changed, 28 insertions(+), 33 deletions(-)
diff --git a/cmd/fpga.c b/cmd/fpga.c index 93f14098ccb..ae85ff201b8 100644 --- a/cmd/fpga.c +++ b/cmd/fpga.c @@ -408,49 +408,44 @@ U_BOOT_CMD(fpga, 9, 1, do_fpga_wrapper, #else U_BOOT_CMD(fpga, 6, 1, do_fpga_wrapper, #endif
"loadable FPGA image support",
"[operation type] [device number] [image address] [image size]\n"
"fpga operations:\n"
" dump\t[dev] [address] [size]\tLoad device to memory buffer\n"
" info\t[dev]\t\t\tlist known device information\n"
" load\t[dev] [address] [size]\tLoad device from memory buffer\n"
"loadable FPGA image support",
"info [dev] List known device information\n"
"fpga dump <dev> <address> <size> Load device to memory buffer\n"
"fpga load <dev> <address> <size> Load device from memory buffer\n"
#if defined(CONFIG_CMD_FPGA_LOADP)
" loadp\t[dev] [address] [size]\t"
"Load device from memory buffer with partial bitstream\n"
"fpga loadp <dev> <address> <size> Load device from memory buffer\n"
" with partial bitstream\n"
#endif
" loadb\t[dev] [address] [size]\t"
"Load device from bitstream buffer (Xilinx only)\n"
"fpga loadb <dev> <address> <size> Load device from bitstream buffer\n"
" (Xilinx only)\n"
I would have aligned the second line below "Load", but since that line is removed in patch 4 anyways:
Acked-by: Alexander Dahl ada@thorsis.com
Greets Alex
#if defined(CONFIG_CMD_FPGA_LOADBP)
" loadbp\t[dev] [address] [size]\t"
"Load device from bitstream buffer with partial bitstream"
"(Xilinx only)\n"
"fpga loadbp <dev> <address> <size> Load device from bitstream buffer\n"
" with partial bitstream (Xilinx only)\n"
#endif #if defined(CONFIG_CMD_FPGA_LOADFS)
"Load device from filesystem (FAT by default) (Xilinx only)\n"
" loadfs [dev] [address] [image size] [blocksize] <interface>\n"
" [<dev[:part]>] <filename>\n"
"fpga loadfs <dev> <address> <size> <blocksize> <interface> [<dev[:part]>] <filename>\n"
" Load device from filesystem (FAT by default) (Xilinx only)\n"
#endif #if defined(CONFIG_CMD_FPGA_LOADMK)
" loadmk [dev] [address]\tLoad device generated with mkimage"
"fpga loadmk <dev> <address> Load device generated with mkimage\n"
#if defined(CONFIG_FIT)
"\n"
"\tFor loadmk operating on FIT format uImage address must include\n"
"\tsubimage unit name in the form of addr:<subimg_uname>"
" NOTE: loadmk operating on FIT must include subimage unit\n"
" name in the form of addr:<subimg_uname>\n"
#endif #endif #if defined(CONFIG_CMD_FPGA_LOAD_SECURE)
"Load encrypted bitstream (Xilinx only)\n"
" loads [dev] [address] [size] [auth-OCM-0/DDR-1/noauth-2]\n"
" [enc-devkey(0)/userkey(1)/nenc(2) [Userkey address]\n"
"Loads the secure bistreams(authenticated/encrypted/both\n"
"authenticated and encrypted) of [size] from [address].\n"
"The auth-OCM/DDR flag specifies to perform authentication\n"
"in OCM or in DDR. 0 for OCM, 1 for DDR, 2 for no authentication.\n"
"The enc flag specifies which key to be used for decryption\n"
"0-device key, 1-user key, 2-no encryption.\n"
"The optional Userkey address specifies from which address key\n"
"has to be used for decryption if user key is selected.\n"
"NOTE: the secure bitstream has to be created using Xilinx\n"
"bootgen tool only.\n"
"fpga loads <dev> <address> <size> <auth-OCM-0/DDR-1/noauth-2>\n"
" <enc-devkey(0)/userkey(1)/nenc(2> [Userkey address]\n"
" Loads the secure bistreams(authenticated/encrypted/both\n"
" authenticated and encrypted) of [size] from [address]\n"
" (Xilinx only)\n"
" -The auth-OCM/DDR flag specifies to perform authentication\n"
" in OCM or in DDR. 0 for OCM, 1 for DDR, 2 for no authentication\n"
" -The enc flag specifies which key to be used for decryption\n"
" 0-device key, 1-user key, 2-no encryption.\n"
" -The optional Userkey address specifies from which address key\n"
" has to be used for decryption if user key is selected.\n"
" NOTE: the secure bitstream has to be created using Xilinx\n"
" bootgen tool only.\n"
#endif ); -- 2.42.0.325.g3a06386e31

Current usage information for loads command is too verbose and long for a command usage prompt. This flag simplifies the text for readability purposes.
Signed-off-by: Ibai Erkiaga ibai.erkiaga-elorza@amd.com ---
(no changes since v1)
cmd/fpga.c | 21 ++++++++------------- 1 file changed, 8 insertions(+), 13 deletions(-)
diff --git a/cmd/fpga.c b/cmd/fpga.c index ae85ff201b8..91ccbee0fef 100644 --- a/cmd/fpga.c +++ b/cmd/fpga.c @@ -434,18 +434,13 @@ U_BOOT_CMD(fpga, 6, 1, do_fpga_wrapper, #endif #endif #if defined(CONFIG_CMD_FPGA_LOAD_SECURE) - "fpga loads <dev> <address> <size> <auth-OCM-0/DDR-1/noauth-2>\n" - " <enc-devkey(0)/userkey(1)/nenc(2> [Userkey address]\n" - " Loads the secure bistreams(authenticated/encrypted/both\n" - " authenticated and encrypted) of [size] from [address]\n" - " (Xilinx only)\n" - " -The auth-OCM/DDR flag specifies to perform authentication\n" - " in OCM or in DDR. 0 for OCM, 1 for DDR, 2 for no authentication\n" - " -The enc flag specifies which key to be used for decryption\n" - " 0-device key, 1-user key, 2-no encryption.\n" - " -The optional Userkey address specifies from which address key\n" - " has to be used for decryption if user key is selected.\n" - " NOTE: the secure bitstream has to be created using Xilinx\n" - " bootgen tool only.\n" + "fpga loads <dev> <address> <size> <authflag> <encflag> [Userkey address]\n" + " Load device from memory buffer with secure bistream\n" + " (authenticated/encrypted/both)(Xilinx only)\n" + " -authflag: 0 for OCM, 1 for DDR, 2 for no authentication\n" + " (specifies where to perform authentication)\n" + " -encflag: 0 for device key, 1 for user key, 2 for no encryption\n" + " -Userkey address: address where user key is stored\n" + " NOTE: secure bitstream has to be created using Xilinx bootgen tool\n" #endif );

Resort the fpga commands both in the Kconfig and in the source code to list
Signed-off-by: Ibai Erkiaga ibai.erkiaga-elorza@amd.com ---
(no changes since v1)
cmd/Kconfig | 14 +++++++------- cmd/fpga.c | 4 ++-- 2 files changed, 9 insertions(+), 9 deletions(-)
diff --git a/cmd/Kconfig b/cmd/Kconfig index 1d7ddb4ed36..f3ba230db42 100644 --- a/cmd/Kconfig +++ b/cmd/Kconfig @@ -1163,6 +1163,13 @@ config CMD_FPGA help FPGA support.
+config CMD_FPGA_LOADP + bool "fpga loadp - load partial bitstream" + depends on CMD_FPGA + help + Supports loading an FPGA device from a bitstream buffer containing + a partial bitstream. + config CMD_FPGA_LOADBP bool "fpga loadbp - load partial bitstream (Xilinx only)" depends on CMD_FPGA @@ -1182,13 +1189,6 @@ config CMD_FPGA_LOADMK help Supports loading an FPGA device from a image generated by mkimage.
-config CMD_FPGA_LOADP - bool "fpga loadp - load partial bitstream" - depends on CMD_FPGA - help - Supports loading an FPGA device from a bitstream buffer containing - a partial bitstream. - config CMD_FPGA_LOAD_SECURE bool "fpga loads - loads secure bitstreams" depends on CMD_FPGA diff --git a/cmd/fpga.c b/cmd/fpga.c index 91ccbee0fef..13aabc95abc 100644 --- a/cmd/fpga.c +++ b/cmd/fpga.c @@ -412,12 +412,12 @@ U_BOOT_CMD(fpga, 6, 1, do_fpga_wrapper, "info [dev] List known device information\n" "fpga dump <dev> <address> <size> Load device to memory buffer\n" "fpga load <dev> <address> <size> Load device from memory buffer\n" + "fpga loadb <dev> <address> <size> Load device from bitstream buffer\n" + " (Xilinx only)\n" #if defined(CONFIG_CMD_FPGA_LOADP) "fpga loadp <dev> <address> <size> Load device from memory buffer\n" " with partial bitstream\n" #endif - "fpga loadb <dev> <address> <size> Load device from bitstream buffer\n" - " (Xilinx only)\n" #if defined(CONFIG_CMD_FPGA_LOADBP) "fpga loadbp <dev> <address> <size> Load device from bitstream buffer\n" " with partial bitstream (Xilinx only)\n"

Ensure all Xilinx exclusive fpga commands have a KConfig symbol and dependency to FPGA_XILINX listed. Remove (Xilinx only) text from the help command.
Signed-off-by: Ibai Erkiaga ibai.erkiaga-elorza@amd.com ---
(no changes since v1)
cmd/Kconfig | 16 +++++++++++----- cmd/fpga.c | 9 +++++---- 2 files changed, 16 insertions(+), 9 deletions(-)
diff --git a/cmd/Kconfig b/cmd/Kconfig index f3ba230db42..822adbc7da1 100644 --- a/cmd/Kconfig +++ b/cmd/Kconfig @@ -1163,6 +1163,12 @@ config CMD_FPGA help FPGA support.
+config CMD_FPGA_LOADB + bool "fpga loadb - load bitstream" + depends on CMD_FPGA && FPGA_XILINX + help + Supports loading an FPGA device from a bitstream buffer + config CMD_FPGA_LOADP bool "fpga loadp - load partial bitstream" depends on CMD_FPGA @@ -1171,15 +1177,15 @@ config CMD_FPGA_LOADP a partial bitstream.
config CMD_FPGA_LOADBP - bool "fpga loadbp - load partial bitstream (Xilinx only)" - depends on CMD_FPGA + bool "fpga loadbp - load partial bitstream" + depends on CMD_FPGA && FPGA_XILINX help Supports loading an FPGA device from a bitstream buffer containing a partial bitstream.
config CMD_FPGA_LOADFS - bool "fpga loadfs - load bitstream from FAT filesystem (Xilinx only)" - depends on CMD_FPGA + bool "fpga loadfs - load bitstream from FAT filesystem" + depends on CMD_FPGA && FPGA_XILINX help Supports loading an FPGA device from a FAT filesystem.
@@ -1192,7 +1198,7 @@ config CMD_FPGA_LOADMK config CMD_FPGA_LOAD_SECURE bool "fpga loads - loads secure bitstreams" depends on CMD_FPGA - select FPGA_LOAD_SECURE + select FPGA_LOAD_SECURE && FPGA_XILINX help Enables the fpga loads command which is used to load secure (authenticated or encrypted or both) bitstreams on to FPGA. diff --git a/cmd/fpga.c b/cmd/fpga.c index 13aabc95abc..65038a79930 100644 --- a/cmd/fpga.c +++ b/cmd/fpga.c @@ -412,19 +412,20 @@ U_BOOT_CMD(fpga, 6, 1, do_fpga_wrapper, "info [dev] List known device information\n" "fpga dump <dev> <address> <size> Load device to memory buffer\n" "fpga load <dev> <address> <size> Load device from memory buffer\n" +#if defined(CONFIG_CMD_FPGA_LOADB) "fpga loadb <dev> <address> <size> Load device from bitstream buffer\n" - " (Xilinx only)\n" +#endif #if defined(CONFIG_CMD_FPGA_LOADP) "fpga loadp <dev> <address> <size> Load device from memory buffer\n" " with partial bitstream\n" #endif #if defined(CONFIG_CMD_FPGA_LOADBP) "fpga loadbp <dev> <address> <size> Load device from bitstream buffer\n" - " with partial bitstream (Xilinx only)\n" + " with partial bitstream\n" #endif #if defined(CONFIG_CMD_FPGA_LOADFS) "fpga loadfs <dev> <address> <size> <blocksize> <interface> [<dev[:part]>] <filename>\n" - " Load device from filesystem (FAT by default) (Xilinx only)\n" + " Load device from filesystem (FAT by default)\n" #endif #if defined(CONFIG_CMD_FPGA_LOADMK) "fpga loadmk <dev> <address> Load device generated with mkimage\n" @@ -436,7 +437,7 @@ U_BOOT_CMD(fpga, 6, 1, do_fpga_wrapper, #if defined(CONFIG_CMD_FPGA_LOAD_SECURE) "fpga loads <dev> <address> <size> <authflag> <encflag> [Userkey address]\n" " Load device from memory buffer with secure bistream\n" - " (authenticated/encrypted/both)(Xilinx only)\n" + " (authenticated/encrypted/both)\n" " -authflag: 0 for OCM, 1 for DDR, 2 for no authentication\n" " (specifies where to perform authentication)\n" " -encflag: 0 for device key, 1 for user key, 2 for no encryption\n"

Hello,
Am Fri, Jan 17, 2025 at 11:25:51AM +0000 schrieb Ibai Erkiaga:
@@ -1192,7 +1198,7 @@ config CMD_FPGA_LOADMK config CMD_FPGA_LOAD_SECURE bool "fpga loads - loads secure bitstreams" depends on CMD_FPGA
- select FPGA_LOAD_SECURE
- select FPGA_LOAD_SECURE && FPGA_XILINX help Enables the fpga loads command which is used to load secure (authenticated or encrypted or both) bitstreams on to FPGA.
This does not work, you need to have one line per selected kconfig symbol. Your change leads to this:
cmd/Kconfig:1184: syntax error cmd/Kconfig:1183: invalid option
You should have noticed this when testing. ;-)
Greets Alex

[AMD Official Use Only - AMD Internal Distribution Only]
Hi Alexander,
Thanks for the review, not sure how I missed this one 🙁. The FPGA_XILINX is dependency not a select in this case, I think I accidentally wrote in the wrong line when doing some rewrite of my patch. Will fix in the next version once Michal finishes his review.
Regards Ibai
________________________________ From: Alexander Dahl ada@thorsis.com Sent: 20 January 2025 08:57 To: Erkiaga Elorza, Ibai ibai.erkiaga-elorza@amd.com Cc: u-boot@lists.denx.de u-boot@lists.denx.de; Simek, Michal michal.simek@amd.com Subject: Re: [U-Boot][PATCH v3 4/4] fpga: xilinx exclusive commands
Caution: This message originated from an External Source. Use proper caution when opening attachments, clicking links, or responding.
Hello,
Am Fri, Jan 17, 2025 at 11:25:51AM +0000 schrieb Ibai Erkiaga:
@@ -1192,7 +1198,7 @@ config CMD_FPGA_LOADMK config CMD_FPGA_LOAD_SECURE bool "fpga loads - loads secure bitstreams" depends on CMD_FPGA
select FPGA_LOAD_SECURE
select FPGA_LOAD_SECURE && FPGA_XILINX help Enables the fpga loads command which is used to load secure (authenticated or encrypted or both) bitstreams on to FPGA.
This does not work, you need to have one line per selected kconfig symbol. Your change leads to this:
cmd/Kconfig:1184: syntax error cmd/Kconfig:1183: invalid option
You should have noticed this when testing. ;-)
Greets Alex

On 1/17/25 12:25, Ibai Erkiaga wrote:
Ensure all Xilinx exclusive fpga commands have a KConfig symbol and dependency to FPGA_XILINX listed. Remove (Xilinx only) text from the help command.
Signed-off-by: Ibai Erkiaga ibai.erkiaga-elorza@amd.com
(no changes since v1)
cmd/Kconfig | 16 +++++++++++----- cmd/fpga.c | 9 +++++---- 2 files changed, 16 insertions(+), 9 deletions(-)
diff --git a/cmd/Kconfig b/cmd/Kconfig index f3ba230db42..822adbc7da1 100644 --- a/cmd/Kconfig +++ b/cmd/Kconfig @@ -1163,6 +1163,12 @@ config CMD_FPGA help FPGA support.
+config CMD_FPGA_LOADB
- bool "fpga loadb - load bitstream"
This should be default y for backward compatibility.
Commit message is not describing that you are introducing new symbol. And separate patch should be created for it also with adding something like
diff --git a/cmd/fpga.c b/cmd/fpga.c index 8c64e957db0f..9b0736427478 100644 --- a/cmd/fpga.c +++ b/cmd/fpga.c @@ -181,6 +181,7 @@ static int do_fpga_load(struct cmd_tbl *cmdtp, int flag, int argc, return fpga_load(dev, (void *)fpga_data, data_size, BIT_FULL, 0); }
+#if defined(CONFIG_CMD_FPGA_LOADB) static int do_fpga_loadb(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[]) { @@ -195,6 +196,7 @@ static int do_fpga_loadb(struct cmd_tbl *cmdtp, int flag, int argc,
return fpga_loadbitstream(dev, (void *)fpga_data, data_size, BIT_FULL); } +#endif
#if defined(CONFIG_CMD_FPGA_LOADP) static int do_fpga_loadp(struct cmd_tbl *cmdtp, int flag, int argc, @@ -357,7 +359,9 @@ static struct cmd_tbl fpga_commands[] = { U_BOOT_CMD_MKENT(info, 1, 1, do_fpga_info, "", ""), U_BOOT_CMD_MKENT(dump, 3, 1, do_fpga_dump, "", ""), U_BOOT_CMD_MKENT(load, 3, 1, do_fpga_load, "", ""), +#if defined(CONFIG_CMD_FPGA_LOADB) U_BOOT_CMD_MKENT(loadb, 3, 1, do_fpga_loadb, "", ""), +#endif #if defined(CONFIG_CMD_FPGA_LOADP) U_BOOT_CMD_MKENT(loadp, 3, 1, do_fpga_loadp, "", ""), #endif
The second issue was commented by Alexander.
Thanks, Michal
participants (4)
-
Alexander Dahl
-
Erkiaga Elorza, Ibai
-
Ibai Erkiaga
-
Michal Simek