Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
Menu
Open sidebar
adam.huang
Arm Trusted Firmware
Commits
368d4ebf
Commit
368d4ebf
authored
Sep 19, 2016
by
danh-arm
Committed by
GitHub
Sep 19, 2016
Browse files
Merge pull request #701 from dp-arm/dp/fiptool-sha256
fiptool: Add support for printing the sha256 digest with info command
parents
a8de89c9
9df69ba3
Changes
3
Hide whitespace changes
Inline
Side-by-side
docs/user-guide.md
View file @
368d4ebf
...
...
@@ -64,7 +64,7 @@ Cygwin, and Msys (MinGW) shells, using version 4.9.1 of the GNU toolchain.
Install the required packages to build Trusted Firmware with the following
command:
sudo apt-get install build-essential gcc make git
sudo apt-get install build-essential gcc make git
libssl-dev
Download and install the AArch64 little-endian GCC cross compiler as indicated
in the
[
Linaro instructions
][
Linaro SW Instructions
]
.
...
...
@@ -74,8 +74,6 @@ In addition, the following optional packages and tools may be needed:
*
`device-tree-compiler`
package if you need to rebuild the Flattened Device
Tree (FDT) source files (
`.dts`
files) provided with this software.
*
`libssl-dev`
package if Trusted Board Boot is enabled in the build.
*
For debugging, ARM
[
Development Studio 5 (DS-5)
][
DS-5
]
.
...
...
tools/fiptool/Makefile
View file @
368d4ebf
...
...
@@ -44,6 +44,7 @@ ifeq (${DEBUG},1)
else
CFLAGS
+=
-O2
endif
LDLIBS
:=
-lcrypto
ifeq
(${V},0)
Q
:=
@
...
...
@@ -62,7 +63,7 @@ all: ${PROJECT} fip_create
${PROJECT}
:
${OBJECTS} Makefile
@
echo
" LD
$@
"
${Q}${CC}
${OBJECTS}
-o
$@
${Q}${CC}
${OBJECTS}
-o
$@
${LDLIBS}
@
${ECHO_BLANK_LINE}
@
echo
"Built
$@
successfully"
@
${ECHO_BLANK_LINE}
...
...
tools/fiptool/fiptool.c
View file @
368d4ebf
...
...
@@ -42,6 +42,8 @@
#include <string.h>
#include <unistd.h>
#include <openssl/sha.h>
#include "fiptool.h"
#include "firmware_image_package.h"
#include "tbbr_config.h"
...
...
@@ -354,6 +356,14 @@ static void add_opt(struct option *opts, int idx, char *name,
opts
[
idx
].
val
=
val
;
}
static
void
md_print
(
unsigned
char
*
md
,
size_t
len
)
{
size_t
i
;
for
(
i
=
0
;
i
<
len
;
i
++
)
printf
(
"%02x"
,
md
[
i
]);
}
static
int
info_cmd
(
int
argc
,
char
*
argv
[])
{
image_t
*
image
;
...
...
@@ -391,10 +401,16 @@ static int info_cmd(int argc, char *argv[])
(
unsigned
long
long
)
image_offset
,
(
unsigned
long
long
)
image_size
);
if
(
image
->
toc_entry
!=
NULL
)
printf
(
", cmdline=
\"
--%s
\"
\n
"
,
printf
(
", cmdline=
\"
--%s
\"
"
,
image
->
toc_entry
->
cmdline_name
);
else
putchar
(
'\n'
);
if
(
verbose
)
{
unsigned
char
md
[
SHA256_DIGEST_LENGTH
];
SHA256
(
image
->
buffer
,
image_size
,
md
);
printf
(
", sha256="
);
md_print
(
md
,
sizeof
(
md
));
}
putchar
(
'\n'
);
image_offset
+=
image_size
;
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment