summaryrefslogtreecommitdiff
path: root/package/boot/uboot-envtools/patches/300-support-env-in-ubivol-chardev.patch
diff options
context:
space:
mode:
Diffstat (limited to 'package/boot/uboot-envtools/patches/300-support-env-in-ubivol-chardev.patch')
-rw-r--r--package/boot/uboot-envtools/patches/300-support-env-in-ubivol-chardev.patch25
1 files changed, 16 insertions, 9 deletions
diff --git a/package/boot/uboot-envtools/patches/300-support-env-in-ubivol-chardev.patch b/package/boot/uboot-envtools/patches/300-support-env-in-ubivol-chardev.patch
index 557fa97..41089c5 100644
--- a/package/boot/uboot-envtools/patches/300-support-env-in-ubivol-chardev.patch
+++ b/package/boot/uboot-envtools/patches/300-support-env-in-ubivol-chardev.patch
@@ -9,9 +9,11 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
tools/env/fw_env.c | 76 +++++++++++++++++++++++++++++++++++++++++++++++-------
2 files changed, 71 insertions(+), 10 deletions(-)
+diff --git a/tools/env/Makefile b/tools/env/Makefile
+index f5368bc..526d44d 100644
--- a/tools/env/Makefile
+++ b/tools/env/Makefile
-@@ -24,6 +24,11 @@ ifeq ($(MTD_VERSION),old)
+@@ -20,6 +20,11 @@ ifeq ($(MTD_VERSION),old)
HOST_EXTRACFLAGS += -DMTD_OLD
endif
@@ -23,9 +25,11 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
always := fw_printenv
hostprogs-y := fw_printenv_unstripped
+diff --git a/tools/env/fw_env.c b/tools/env/fw_env.c
+index 30d5b03..2217a25 100644
--- a/tools/env/fw_env.c
+++ b/tools/env/fw_env.c
-@@ -30,6 +30,9 @@
+@@ -29,6 +29,9 @@
# include <mtd/mtd-user.h>
#endif
@@ -35,7 +39,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
#include "fw_env.h"
#include <aes.h>
-@@ -810,6 +813,11 @@ static int flash_write_buf (int dev, int
+@@ -809,6 +812,11 @@ static int flash_write_buf (int dev, int fd, void *buf, size_t count,
off_t top_of_range; /* end of the last block we may use */
loff_t blockstart; /* running start of the current block -
MEMGETBADBLOCK needs 64 bits */
@@ -47,7 +51,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
int rc;
/*
-@@ -915,7 +923,30 @@ static int flash_write_buf (int dev, int
+@@ -914,7 +922,30 @@ static int flash_write_buf (int dev, int fd, void *buf, size_t count,
continue;
}
@@ -79,7 +83,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
erase.start = blockstart;
ioctl(fd, MEMUNLOCK, &erase);
/* These do not need an explicit erase cycle */
-@@ -932,7 +963,8 @@ static int flash_write_buf (int dev, int
+@@ -931,7 +962,8 @@ static int flash_write_buf (int dev, int fd, void *buf, size_t count,
fprintf (stderr,
"Seek error on %s: %s\n",
DEVNAME (dev), strerror (errno));
@@ -89,7 +93,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
}
#ifdef DEBUG
-@@ -942,10 +974,11 @@ static int flash_write_buf (int dev, int
+@@ -941,10 +973,11 @@ static int flash_write_buf (int dev, int fd, void *buf, size_t count,
if (write (fd, data + processed, erasesize) != erasesize) {
fprintf (stderr, "Write error on %s: %s\n",
DEVNAME (dev), strerror (errno));
@@ -103,7 +107,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
ioctl(fd, MEMLOCK, &erase);
processed += erasesize;
-@@ -956,6 +989,11 @@ static int flash_write_buf (int dev, int
+@@ -955,6 +988,11 @@ static int flash_write_buf (int dev, int fd, void *buf, size_t count,
if (write_total > count)
free (data);
@@ -115,7 +119,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
return processed;
}
-@@ -1067,12 +1105,8 @@ static int flash_read (int fd)
+@@ -1066,12 +1104,8 @@ static int flash_read (int fd)
if (S_ISCHR(st.st_mode)) {
rc = ioctl(fd, MEMGETINFO, &mtdinfo);
@@ -130,7 +134,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
mtdinfo.type != MTD_NANDFLASH &&
mtdinfo.type != MTD_DATAFLASH &&
mtdinfo.type != MTD_UBIVOLUME) {
-@@ -1080,6 +1114,28 @@ static int flash_read (int fd)
+@@ -1079,6 +1113,28 @@ static int flash_read (int fd)
mtdinfo.type, DEVNAME(dev_current));
return -1;
}
@@ -159,3 +163,6 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
} else {
memset(&mtdinfo, 0, sizeof(mtdinfo));
mtdinfo.type = MTD_ABSENT;
+--
+2.0.0
+