aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEdward O'Callaghan <quasisec@google.com>2022-08-12 11:07:16 +1000
committerEdward O'Callaghan <quasisec@chromium.org>2022-08-25 00:26:29 +0000
commitb2b154802ba50fc218b54a40c9498476f368b950 (patch)
tree5c500e523d12843237d850ced2a2e59f82549054
parentc9ebfad95fed1dedde2d15d62299adba573f34c7 (diff)
downloadflashrom-b2b154802ba50fc218b54a40c9498476f368b950.tar.gz
flashrom-b2b154802ba50fc218b54a40c9498476f368b950.tar.bz2
flashrom-b2b154802ba50fc218b54a40c9498476f368b950.zip
flashrom.c: Move read_buf_from_include_args() into cli_classic.c
The read_buf_from_include_args() helper is only ever used by the cli frontend therefore make it static local to the user. BUG=b:242246291 TEST=builds Change-Id: I9dee63d67320085e16c64eefb2723169f49f07aa Signed-off-by: Edward O'Callaghan <quasisec@google.com> Reviewed-on: https://review.coreboot.org/c/flashrom/+/66647 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Evan Benn <evanbenn@google.com> Reviewed-by: Sam McNally <sammc@google.com> Reviewed-by: Thomas Heijligen <src@posteo.de>
-rw-r--r--cli_classic.c34
-rw-r--r--flashrom.c35
-rw-r--r--include/flash.h1
3 files changed, 34 insertions, 36 deletions
diff --git a/cli_classic.c b/cli_classic.c
index 81299210..267f3c61 100644
--- a/cli_classic.c
+++ b/cli_classic.c
@@ -357,6 +357,40 @@ static int wp_cli(
return 0;
}
+/**
+ * @brief Reads content to buffer from one or more files.
+ *
+ * Reads content to supplied buffer from files. If a filename is specified for
+ * individual regions using the partial read syntax ('-i <region>[:<filename>]')
+ * then this will read file data into the corresponding region in the
+ * supplied buffer.
+ *
+ * @param layout The layout to be used.
+ * @param buf Chip-sized buffer to write data to
+ * @return 0 on success
+ */
+static int read_buf_from_include_args(const struct flashrom_layout *const layout, unsigned char *buf)
+{
+ const struct romentry *entry = NULL;
+
+ /*
+ * Content will be read from -i args, so they must not overlap since
+ * we need to know exactly what content to write to the ROM.
+ */
+ if (included_regions_overlap(layout)) {
+ msg_gerr("Error: Included regions must not overlap when writing.\n");
+ return 1;
+ }
+
+ while ((entry = layout_next_included(layout, entry))) {
+ if (!entry->file)
+ continue;
+ if (read_buf_from_file(buf + entry->start,
+ entry->end - entry->start + 1, entry->file))
+ return 1;
+ }
+ return 0;
+}
static int do_read(struct flashctx *const flash, const char *const filename)
{
diff --git a/flashrom.c b/flashrom.c
index b66ad892..d438053a 100644
--- a/flashrom.c
+++ b/flashrom.c
@@ -871,41 +871,6 @@ notfound:
}
/**
- * @brief Reads content to buffer from one or more files.
- *
- * Reads content to supplied buffer from files. If a filename is specified for
- * individual regions using the partial read syntax ('-i <region>[:<filename>]')
- * then this will read file data into the corresponding region in the
- * supplied buffer.
- *
- * @param layout The layout to be used.
- * @param buf Chip-sized buffer to write data to
- * @return 0 on success
- */
-int read_buf_from_include_args(const struct flashrom_layout *const layout, unsigned char *buf)
-{
- const struct romentry *entry = NULL;
-
- /*
- * Content will be read from -i args, so they must not overlap since
- * we need to know exactly what content to write to the ROM.
- */
- if (included_regions_overlap(layout)) {
- msg_gerr("Error: Included regions must not overlap when writing.\n");
- return 1;
- }
-
- while ((entry = layout_next_included(layout, entry))) {
- if (!entry->file)
- continue;
- if (read_buf_from_file(buf + entry->start,
- entry->end - entry->start + 1, entry->file))
- return 1;
- }
- return 0;
-}
-
-/**
* @brief Writes content from buffer to one or more files.
*
* Writes content from supplied buffer to files. If a filename is specified for
diff --git a/include/flash.h b/include/flash.h
index d5001c1d..fe1005a4 100644
--- a/include/flash.h
+++ b/include/flash.h
@@ -423,7 +423,6 @@ void print_banner(void);
void list_programmers_linebreak(int startcol, int cols, int paren);
int selfcheck(void);
int read_buf_from_file(unsigned char *buf, unsigned long size, const char *filename);
-int read_buf_from_include_args(const struct flashrom_layout *const layout, unsigned char *buf);
int write_buf_to_file(const unsigned char *buf, unsigned long size, const char *filename);
int write_buf_to_include_args(const struct flashrom_layout *const layout, unsigned char *buf);
int prepare_flash_access(struct flashctx *, bool read_it, bool write_it, bool erase_it, bool verify_it);