blob: 920a16acfdb2e4230a2ed7b7f723cbbf3fc206ea [file] [log] [blame]
Tom Rini83d290c2018-05-06 17:58:06 -04001/* SPDX-License-Identifier: GPL-2.0+ */
Heiko Schocher6bf4ca02014-03-03 12:19:29 +01002/*
3 * (C) Copyright 2014
Heiko Schocher6bf4ca02014-03-03 12:19:29 +01004 */
5
6#ifndef _FIT_COMMON_H_
7#define _FIT_COMMON_H_
8
9#include "imagetool.h"
10#include "mkimage.h"
11#include <image.h>
12
Jordan Handd32aa3c2019-03-05 14:47:56 -080013/**
14 * Verify the format of FIT header pointed to by ptr
15 *
16 * @ptr: image header to be verified
17 * @image_size: size of while image
18 * @params: mkimage parameters
Heinrich Schuchardt185f8122022-01-19 18:05:50 +010019 * Return: 0 if OK, -1 on error
Jordan Handd32aa3c2019-03-05 14:47:56 -080020 */
Heiko Schocher6bf4ca02014-03-03 12:19:29 +010021int fit_verify_header(unsigned char *ptr, int image_size,
22 struct image_tool_params *params);
23
24int fit_check_image_types(uint8_t type);
25
Simon Glassef0af642014-06-02 22:04:52 -060026/**
27 * Map an FDT into memory, optionally increasing its size
28 *
29 * @cmdname: Tool name (for displaying with error messages)
30 * @fname: Filename containing FDT
Simon Glassa9468112014-06-02 22:04:53 -060031 * @size_inc: Amount to increase size by (0 = leave it alone)
Simon Glassef0af642014-06-02 22:04:52 -060032 * @blobp: Returns pointer to FDT blob
33 * @sbuf: File status information is stored here
34 * @delete_on_error: true to delete the file if we get an error
Luca Boccassi7d574852019-05-14 19:35:02 +010035 * @read_only: true to open in read-only mode
Heinrich Schuchardt185f8122022-01-19 18:05:50 +010036 * Return: 0 if OK, -1 on error.
Simon Glassef0af642014-06-02 22:04:52 -060037 */
Simon Glassa9468112014-06-02 22:04:53 -060038int mmap_fdt(const char *cmdname, const char *fname, size_t size_inc,
Luca Boccassi7d574852019-05-14 19:35:02 +010039 void **blobp, struct stat *sbuf, bool delete_on_error,
40 bool read_only);
Heiko Schocher6bf4ca02014-03-03 12:19:29 +010041
Simon Glasse291a5c2021-11-12 12:28:04 -070042/**
43 * copyfile() - Copy a file
44 *
45 * This uses read()/write() to copy file @src to file @dst
46 *
Simon Glass7ae46c32021-11-12 12:28:05 -070047 * If @dst exists, it is overwritten and truncated to the correct size.
48 *
Simon Glasse291a5c2021-11-12 12:28:04 -070049 * @src: Filename to read from
50 * @dst: Filename to write to
51 * @return 0 if OK, -1 on error
52 */
53int copyfile(const char *src, const char *dst);
54
Simon Glass2d2384b2021-11-12 12:28:13 -070055/**
56 * summary_show() - Show summary information about the signing process
57 *
58 * @summary: Summary info to show
59 * @imagefile: Filename of the output image
60 * @keydest: Filename where the key information is written (NULL if none)
61 */
62void summary_show(struct image_summary *summary, const char *imagefile,
63 const char *keydest);
64
Heiko Schocher6bf4ca02014-03-03 12:19:29 +010065#endif /* _FIT_COMMON_H_ */