}
static void *
-kwboot_mmap_image(const char *path, size_t *size, int prot)
+kwboot_mmap_image(const char *path, size_t *size)
{
- int rc, fd, flags;
+ int rc, fd;
struct stat st;
void *img;
if (rc)
goto out;
- flags = (prot & PROT_WRITE) ? MAP_PRIVATE : MAP_SHARED;
-
- img = mmap(NULL, st.st_size, prot, flags, fd, 0);
+ img = mmap(NULL, st.st_size, PROT_READ | PROT_WRITE, MAP_PRIVATE, fd, 0);
if (img == MAP_FAILED) {
img = NULL;
goto out;
fprintf(stream, "\n");
fprintf(stream,
" -b <image>: boot <image> with preamble (Kirkwood, Armada 370/XP)\n");
- fprintf(stream, " -p: patch <image> to type 0x69 (uart boot)\n");
fprintf(stream,
" -D <image>: boot <image> without preamble (Dove)\n");
fprintf(stream, " -d: enter debug mode\n");
main(int argc, char **argv)
{
const char *ttypath, *imgpath;
- int rv, rc, tty, term, prot, patch;
+ int rv, rc, tty, term;
void *bootmsg;
void *debugmsg;
void *img;
imgpath = NULL;
img = NULL;
term = 0;
- patch = 0;
size = 0;
speed = B115200;
break;
case 'p':
- patch = 1;
+ /* nop, for backward compatibility */
break;
case 't':
if (!bootmsg && !term && !debugmsg)
goto usage;
- if (patch && !imgpath)
- goto usage;
-
if (argc - optind < 1)
goto usage;
}
if (imgpath) {
- prot = PROT_READ | (patch ? PROT_WRITE : 0);
-
- img = kwboot_mmap_image(imgpath, &size, prot);
+ img = kwboot_mmap_image(imgpath, &size);
if (!img) {
perror(imgpath);
goto out;
}
- }
- if (patch) {
rc = kwboot_img_patch_hdr(img, size);
if (rc) {
fprintf(stderr, "%s: Invalid image.\n", imgpath);