* [PATCH 1/7] scripts: kwboot: try to resync on packet boundary after receiving a NAK
2016-09-28 18:50 [PATCH 0/7] scripts: kwboot: various improvements Uwe Kleine-König
@ 2016-09-28 18:50 ` Uwe Kleine-König
2016-09-28 18:50 ` [PATCH 2/7] scripts: kwboot: flush input and output only once Uwe Kleine-König
` (6 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: Uwe Kleine-König @ 2016-09-28 18:50 UTC (permalink / raw)
To: barebox
If we sent the boot message too often the CPU might already have started
to interpret this as an xmodem packet. As sender and receiver are not in
sync it's impossible to transfer a packet successfully.
After inspecting the bootROM of an Armada XP machine (version 1.20) I found
that on sending 0xff the CPU replies with a NAK when waiting for a packet
and allows to start a new packet with the next byte. This can be used to
resync sender and receiver.
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
---
scripts/kwboot.c | 46 +++++++++++++++++++++++++++++++++++++++++++++-
1 file changed, 45 insertions(+), 1 deletion(-)
diff --git a/scripts/kwboot.c b/scripts/kwboot.c
index 9b0d1d0602a0..9d680dc576a7 100644
--- a/scripts/kwboot.c
+++ b/scripts/kwboot.c
@@ -349,6 +349,48 @@ kwboot_xm_makeblock(struct kwboot_block *block, const void *data,
return n;
}
+#define min(a, b) ((a) < (b) ? (a) : (b))
+
+static int
+kwboot_xm_resync(int fd)
+{
+ /*
+ * When the SoC has a different perception of where the package boundary
+ * is, just resending the packet doesn't help. To resync send 0xff until
+ * we get another NAK.
+ * The BootROM code (of the Armada XP at least) doesn't interpret 0xff
+ * as a start of a package and sends a NAK for each 0xff when waiting
+ * for SOH, so it's possible to send >1 byte without the SoC starting a
+ * new frame.
+ * When there is no response after sizeof(struct kwboot_block) bytes,
+ * there is another problem.
+ */
+ int rc;
+ char buf[sizeof(struct kwboot_block)];
+ unsigned interval = 1;
+ unsigned len;
+ char *p = buf;
+
+ memset(buf, 0xff, sizeof(buf));
+
+ while (interval <= sizeof(buf)) {
+ len = min(interval, buf + sizeof(buf) - p);
+ rc = kwboot_tty_send(fd, p, len);
+ if (rc)
+ return rc;
+
+ kwboot_tty_recv(fd, p, len, KWBOOT_BLK_RSP_TIMEO);
+ if (*p != 0xff)
+ /* got at least one char, if it's a NAK we're synced. */
+ return (*p == NAK);
+
+ p += len;
+ interval *= 2;
+ }
+
+ return 0;
+}
+
static int
kwboot_xm_sendblock(int fd, struct kwboot_block *block)
{
@@ -371,7 +413,9 @@ kwboot_xm_sendblock(int fd, struct kwboot_block *block)
} while (c != ACK && c != NAK && c != CAN);
- if (c != ACK)
+ if (c == NAK && kwboot_xm_resync(fd))
+ kwboot_progress(-1, 'S');
+ else if (c != ACK)
kwboot_progress(-1, '+');
} while (c == NAK && retries-- > 0);
--
2.9.3
_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox
^ permalink raw reply [flat|nested] 9+ messages in thread
* [PATCH 2/7] scripts: kwboot: flush input and output only once
2016-09-28 18:50 [PATCH 0/7] scripts: kwboot: various improvements Uwe Kleine-König
2016-09-28 18:50 ` [PATCH 1/7] scripts: kwboot: try to resync on packet boundary after receiving a NAK Uwe Kleine-König
@ 2016-09-28 18:50 ` Uwe Kleine-König
2016-09-28 18:50 ` [PATCH 3/7] scripts: kwboot: improve diagnostic output Uwe Kleine-König
` (5 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: Uwe Kleine-König @ 2016-09-28 18:50 UTC (permalink / raw)
To: barebox
When flushing input before sending of a boot message the acknowledging
reply for the previous message from the CPU might be discarded and so
missed.
So only flush once before sending boot messages in a loop.
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
---
scripts/kwboot.c | 16 ++++++++--------
1 file changed, 8 insertions(+), 8 deletions(-)
diff --git a/scripts/kwboot.c b/scripts/kwboot.c
index 9d680dc576a7..9dfaf4a8dfb0 100644
--- a/scripts/kwboot.c
+++ b/scripts/kwboot.c
@@ -273,11 +273,11 @@ kwboot_bootmsg(int tty, void *msg)
else
kwboot_printv("Sending boot message. Please reboot the target...");
- do {
- rc = tcflush(tty, TCIOFLUSH);
- if (rc)
- break;
+ rc = tcflush(tty, TCIOFLUSH);
+ if (rc)
+ return rc;
+ do {
rc = kwboot_tty_send(tty, msg, 8);
if (rc) {
usleep(KWBOOT_MSG_REQ_DELAY * 1000);
@@ -302,13 +302,13 @@ kwboot_debugmsg(int tty, void *msg)
kwboot_printv("Sending debug message. Please reboot the target...");
+ rc = tcflush(tty, TCIOFLUSH);
+ if (rc)
+ return rc;
+
do {
char buf[16];
- rc = tcflush(tty, TCIOFLUSH);
- if (rc)
- break;
-
rc = kwboot_tty_send(tty, msg, 8);
if (rc) {
usleep(KWBOOT_MSG_REQ_DELAY * 1000);
--
2.9.3
_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox
^ permalink raw reply [flat|nested] 9+ messages in thread
* [PATCH 3/7] scripts: kwboot: improve diagnostic output
2016-09-28 18:50 [PATCH 0/7] scripts: kwboot: various improvements Uwe Kleine-König
2016-09-28 18:50 ` [PATCH 1/7] scripts: kwboot: try to resync on packet boundary after receiving a NAK Uwe Kleine-König
2016-09-28 18:50 ` [PATCH 2/7] scripts: kwboot: flush input and output only once Uwe Kleine-König
@ 2016-09-28 18:50 ` Uwe Kleine-König
2016-09-28 18:50 ` [PATCH 4/7] scripts: kwboot: shorten delay between two boot messages Uwe Kleine-König
` (4 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: Uwe Kleine-König @ 2016-09-28 18:50 UTC (permalink / raw)
To: barebox
After entering uart boot mode the CPU prints some diagnostic messages.
Showing them to the user helps her to notice when the message window was
missed or there is an other problem.
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
---
scripts/kwboot.c | 15 ++++++++++++---
1 file changed, 12 insertions(+), 3 deletions(-)
diff --git a/scripts/kwboot.c b/scripts/kwboot.c
index 9dfaf4a8dfb0..0a089b593625 100644
--- a/scripts/kwboot.c
+++ b/scripts/kwboot.c
@@ -9,6 +9,7 @@
* 2008. Chapter 24.2 "BootROM Firmware".
*/
+#include <ctype.h>
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
@@ -285,12 +286,20 @@ kwboot_bootmsg(int tty, void *msg)
}
rc = kwboot_tty_recv(tty, &c, 1, KWBOOT_MSG_RSP_TIMEO);
-
- kwboot_spinner();
+ while (!rc && c != NAK) {
+ if (c == '\\')
+ kwboot_printv("\\\\", c);
+ else if (isprint(c) || c == '\r' || c == '\n')
+ kwboot_printv("%c", c);
+ else
+ kwboot_printv("\\x%02hhx", c);
+
+ rc = kwboot_tty_recv(tty, &c, 1, KWBOOT_MSG_RSP_TIMEO);
+ }
} while (rc || c != NAK);
- kwboot_printv("\n");
+ kwboot_printv("\nGot expected NAK\n");
return rc;
}
--
2.9.3
_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox
^ permalink raw reply [flat|nested] 9+ messages in thread
* [PATCH 4/7] scripts: kwboot: shorten delay between two boot messages
2016-09-28 18:50 [PATCH 0/7] scripts: kwboot: various improvements Uwe Kleine-König
` (2 preceding siblings ...)
2016-09-28 18:50 ` [PATCH 3/7] scripts: kwboot: improve diagnostic output Uwe Kleine-König
@ 2016-09-28 18:50 ` Uwe Kleine-König
2016-09-28 18:50 ` [PATCH 5/7] scripts: kwboot: simplify kwboot_mmap_image Uwe Kleine-König
` (3 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: Uwe Kleine-König @ 2016-09-28 18:50 UTC (permalink / raw)
To: barebox
Together with the previous changes that allow to handle the scenario where
too many messages were sent, this greatly improves the probability to hit
the time window during which the CPU accepts a boot message.
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
---
scripts/kwboot.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/scripts/kwboot.c b/scripts/kwboot.c
index 0a089b593625..58ea1ad7a7b3 100644
--- a/scripts/kwboot.c
+++ b/scripts/kwboot.c
@@ -36,7 +36,7 @@ static unsigned char kwboot_msg_debug[] = {
};
#define KWBOOT_MSG_REQ_DELAY 1000 /* ms */
-#define KWBOOT_MSG_RSP_TIMEO 1000 /* ms */
+#define KWBOOT_MSG_RSP_TIMEO 1 /* ms */
/*
* Xmodem Transfers
--
2.9.3
_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox
^ permalink raw reply [flat|nested] 9+ messages in thread
* [PATCH 5/7] scripts: kwboot: simplify kwboot_mmap_image
2016-09-28 18:50 [PATCH 0/7] scripts: kwboot: various improvements Uwe Kleine-König
` (3 preceding siblings ...)
2016-09-28 18:50 ` [PATCH 4/7] scripts: kwboot: shorten delay between two boot messages Uwe Kleine-König
@ 2016-09-28 18:50 ` Uwe Kleine-König
2016-09-28 18:50 ` [PATCH 6/7] scripts: kwboot: set boot source to UART before sending Uwe Kleine-König
` (2 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: Uwe Kleine-König @ 2016-09-28 18:50 UTC (permalink / raw)
To: barebox
There was only a single caller who passes prot=PROT_READ unconditionally.
So drop this parameter and simplify accordingly.
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
---
scripts/kwboot.c | 10 ++++------
1 file changed, 4 insertions(+), 6 deletions(-)
diff --git a/scripts/kwboot.c b/scripts/kwboot.c
index 58ea1ad7a7b3..1fcb49b7acda 100644
--- a/scripts/kwboot.c
+++ b/scripts/kwboot.c
@@ -657,9 +657,9 @@ kwboot_check_image(const unsigned char *img, size_t size)
}
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;
@@ -674,9 +674,7 @@ kwboot_mmap_image(const char *path, size_t *size, int prot)
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, MAP_SHARED, fd, 0);
if (img == MAP_FAILED) {
img = NULL;
goto out;
@@ -793,7 +791,7 @@ main(int argc, char **argv)
}
if (imgpath) {
- img = kwboot_mmap_image(imgpath, &size, PROT_READ);
+ img = kwboot_mmap_image(imgpath, &size);
if (!img) {
perror(imgpath);
goto out;
--
2.9.3
_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox
^ permalink raw reply [flat|nested] 9+ messages in thread
* [PATCH 6/7] scripts: kwboot: set boot source to UART before sending
2016-09-28 18:50 [PATCH 0/7] scripts: kwboot: various improvements Uwe Kleine-König
` (4 preceding siblings ...)
2016-09-28 18:50 ` [PATCH 5/7] scripts: kwboot: simplify kwboot_mmap_image Uwe Kleine-König
@ 2016-09-28 18:50 ` Uwe Kleine-König
2016-09-28 18:50 ` [PATCH 7/7] images: mvebu: don't generate uart images Uwe Kleine-König
2016-10-04 6:05 ` [PATCH 0/7] scripts: kwboot: various improvements Sascha Hauer
7 siblings, 0 replies; 9+ messages in thread
From: Uwe Kleine-König @ 2016-09-28 18:50 UTC (permalink / raw)
To: barebox
Sending an image that specifies one of the alternative boot sources doesn't
make sense. So change the boot source to UART on the fly.
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
---
scripts/kwboot.c | 14 +++++++++++---
1 file changed, 11 insertions(+), 3 deletions(-)
diff --git a/scripts/kwboot.c b/scripts/kwboot.c
index 1fcb49b7acda..9e4181e539ac 100644
--- a/scripts/kwboot.c
+++ b/scripts/kwboot.c
@@ -600,7 +600,7 @@ out:
}
static int
-kwboot_check_image(const unsigned char *img, size_t size)
+kwboot_check_image(unsigned char *img, size_t size)
{
size_t i;
size_t header_size, image_size;
@@ -613,12 +613,20 @@ kwboot_check_image(const unsigned char *img, size_t size)
}
switch (img[0x0]) {
- case 0x5a: /* SPI/NOR */
case 0x69: /* UART0 */
+ break;
+
+ case 0x5a: /* SPI/NOR */
case 0x78: /* SATA */
case 0x8b: /* NAND */
case 0x9c: /* PCIe */
+ /* change boot source to UART and fix checksum */
+ img[0x1f] -= img[0x0];
+ img[0x1f] += 0x69;
+ img[0x0] = 0x69;
+
break;
+
default:
fprintf(stderr,
"Unknown boot source: 0x%hhx\n", img[0x0]);
@@ -674,7 +682,7 @@ kwboot_mmap_image(const char *path, size_t *size)
if (rc)
goto out;
- img = mmap(NULL, st.st_size, PROT_READ, MAP_SHARED, fd, 0);
+ img = mmap(NULL, st.st_size, PROT_WRITE, MAP_PRIVATE, fd, 0);
if (img == MAP_FAILED) {
img = NULL;
goto out;
--
2.9.3
_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox
^ permalink raw reply [flat|nested] 9+ messages in thread
* [PATCH 7/7] images: mvebu: don't generate uart images
2016-09-28 18:50 [PATCH 0/7] scripts: kwboot: various improvements Uwe Kleine-König
` (5 preceding siblings ...)
2016-09-28 18:50 ` [PATCH 6/7] scripts: kwboot: set boot source to UART before sending Uwe Kleine-König
@ 2016-09-28 18:50 ` Uwe Kleine-König
2016-10-04 6:05 ` [PATCH 0/7] scripts: kwboot: various improvements Sascha Hauer
7 siblings, 0 replies; 9+ messages in thread
From: Uwe Kleine-König @ 2016-09-28 18:50 UTC (permalink / raw)
To: barebox
kwboot knows how to work with an image for a different boot medium now.
So there is no reason to generate a dedicated UART image any more.
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
---
images/Makefile.mvebu | 29 -----------------------------
1 file changed, 29 deletions(-)
diff --git a/images/Makefile.mvebu b/images/Makefile.mvebu
index 195f48d47073..c925afd4a2f5 100644
--- a/images/Makefile.mvebu
+++ b/images/Makefile.mvebu
@@ -6,110 +6,81 @@
# ----------------------------------------------------------------
$(obj)/%.kwbimg: $(obj)/% FORCE
$(call if_changed,kwb_image)
-$(obj)/%.kwbuartimg: $(obj)/% FORCE
- $(call if_changed,kwb_image)
KWBOPTS = -c -d 0x1000000 -e 0x1000000
# ----------------------- Armada 370 based boards ---------------------------
GLOBALSCALE_MIRABOX_KWBOPTS = ${KWBOPTS} -i $(board)/globalscale-mirabox/kwbimage.cfg
OPTS_start_globalscale_mirabox.pblx.kwbimg = $(GLOBALSCALE_MIRABOX_KWBOPTS)
-OPTS_start_globalscale_mirabox.pblx.kwbuartimg = -m uart $(GLOBALSCALE_MIRABOX_KWBOPTS)
FILE_barebox-globalscale-mirabox.img = start_globalscale_mirabox.pblx.kwbimg
-FILE_barebox-globalscale-mirabox-uart.img = start_globalscale_mirabox.pblx.kwbuartimg
FILE_barebox-globalscale-mirabox-2nd.img = start_globalscale_mirabox.pblx
pblx-$(CONFIG_MACH_GLOBALSCALE_MIRABOX) += start_globalscale_mirabox
image-$(CONFIG_MACH_GLOBALSCALE_MIRABOX) += barebox-globalscale-mirabox.img
-image-$(CONFIG_MACH_GLOBALSCALE_MIRABOX) += barebox-globalscale-mirabox-uart.img
image-$(CONFIG_MACH_GLOBALSCALE_MIRABOX) += barebox-globalscale-mirabox-2nd.img
NETGEAR_RN104_KWBOPTS = ${KWBOPTS} -i $(board)/netgear-rn104/kwbimage.cfg
OPTS_start_netgear_rn104.pblx.kwbimg = $(NETGEAR_RN104_KWBOPTS)
-OPTS_start_netgear_rn104.pblx.kwbuartimg = -m uart $(NETGEAR_RN104_KWBOPTS)
FILE_barebox-netgear-rn104.img = start_netgear_rn104.pblx.kwbimg
-FILE_barebox-netgear-rn104-uart.img = start_netgear_rn104.pblx.kwbuartimg
FILE_barebox-netgear-rn104-2nd.img = start_netgear_rn104.pblx
pblx-$(CONFIG_MACH_NETGEAR_RN104) += start_netgear_rn104
image-$(CONFIG_MACH_NETGEAR_RN104) += barebox-netgear-rn104.img
-image-$(CONFIG_MACH_NETGEAR_RN104) += barebox-netgear-rn104-uart.img
image-$(CONFIG_MACH_NETGEAR_RN104) += barebox-netgear-rn104-2nd.img
# ----------------------- Armada XP based boards ---------------------------
LENOVO_IX4_300D_KWBOPTS = ${KWBOPTS} -i $(board)/lenovo-ix4-300d/kwbimage.cfg
OPTS_start_lenovo_ix4_300d.pblx.kwbimg = $(LENOVO_IX4_300D_KWBOPTS)
-OPTS_start_lenovo_ix4_300d.pblx.kwbuartimg = -m uart $(LENOVO_IX4_300D_KWBOPTS)
FILE_barebox-lenovo-ix4-300d.img = start_lenovo_ix4_300d.pblx.kwbimg
-FILE_barebox-lenovo-ix4-300d-uart.img = start_lenovo_ix4_300d.pblx.kwbuartimg
FILE_barebox-lenovo-ix4-300d-2nd.img = start_lenovo_ix4_300d.pblx
pblx-$(CONFIG_MACH_LENOVO_IX4_300D) += start_lenovo_ix4_300d
image-$(CONFIG_MACH_LENOVO_IX4_300D) += barebox-lenovo-ix4-300d.img
-image-$(CONFIG_MACH_LENOVO_IX4_300D) += barebox-lenovo-ix4-300d-uart.img
image-$(CONFIG_MACH_LENOVO_IX4_300D) += barebox-lenovo-ix4-300d-2nd.img
MARVELL_ARMADA_XP_GP_KWBOPTS = ${KWBOPTS} -i $(board)/marvell-armada-xp-gp/kwbimage.cfg
OPTS_start_marvell_armada_xp_gp.pblx.kwbimg = $(MARVELL_ARMADA_XP_GP_KWBOPTS)
-OPTS_start_marvell_armada_xp_gp.pblx.kwbuartimg = -m uart $(MARVELL_ARMADA_XP_GP_KWBOPTS)
FILE_barebox-marvell-armada-xp-gp.img = start_marvell_armada_xp_gp.pblx.kwbimg
-FILE_barebox-marvell-armada-xp-gp-uart.img = start_marvell_armada_xp_gp.pblx.kwbuartimg
FILE_barebox-marvell-armada-xp-gp-2nd.img = start_marvell_armada_xp_gp.pblx
pblx-$(CONFIG_MACH_MARVELL_ARMADA_XP_GP) += start_marvell_armada_xp_gp
image-$(CONFIG_MACH_MARVELL_ARMADA_XP_GP) += barebox-marvell-armada-xp-gp.img
-image-$(CONFIG_MACH_MARVELL_ARMADA_XP_GP) += barebox-marvell-armada-xp-gp-uart.img
image-$(CONFIG_MACH_MARVELL_ARMADA_XP_GP) += barebox-marvell-armada-xp-gp-2nd.img
PLATHOME_OPENBLOCKS_AX3_KWBOPTS = ${KWBOPTS} -i $(board)/plathome-openblocks-ax3/kwbimage.cfg
OPTS_start_plathome_openblocks_ax3.pblx.kwbimg = $(PLATHOME_OPENBLOCKS_AX3_KWBOPTS)
-OPTS_start_plathome_openblocks_ax3.pblx.kwbuartimg = -m uart $(PLATHOME_OPENBLOCKS_AX3_KWBOPTS)
FILE_barebox-plathome-openblocks-ax3.img = start_plathome_openblocks_ax3.pblx.kwbimg
-FILE_barebox-plathome-openblocks-ax3-uart.img = start_plathome_openblocks_ax3.pblx.kwbuartimg
FILE_barebox-plathome-openblocks-ax3-2nd.img = start_plathome_openblocks_ax3.pblx
pblx-$(CONFIG_MACH_PLATHOME_OPENBLOCKS_AX3) += start_plathome_openblocks_ax3
image-$(CONFIG_MACH_PLATHOME_OPENBLOCKS_AX3) += barebox-plathome-openblocks-ax3.img
-image-$(CONFIG_MACH_PLATHOME_OPENBLOCKS_AX3) += barebox-plathome-openblocks-ax3-uart.img
image-$(CONFIG_MACH_PLATHOME_OPENBLOCKS_AX3) += barebox-plathome-openblocks-ax3-2nd.img
# ----------------------- Dove 88AP510 based boards ---------------------------
SOLIDRUN_CUBOX_KWBOPTS = ${KWBOPTS} -i $(board)/solidrun-cubox/kwbimage.cfg
OPTS_start_solidrun_cubox.pblx.kwbimg = $(SOLIDRUN_CUBOX_KWBOPTS)
-OPTS_start_solidrun_cubox.pblx.kwbuartimg = -m uart $(SOLIDRUN_CUBOX_KWBOPTS)
FILE_barebox-solidrun-cubox.img = start_solidrun_cubox.pblx.kwbimg
-FILE_barebox-solidrun-cubox-uart.img = start_solidrun_cubox.pblx.kwbuartimg
FILE_barebox-solidrun-cubox-2nd.img = start_solidrun_cubox.pblx
pblx-$(CONFIG_MACH_SOLIDRUN_CUBOX) += start_solidrun_cubox
image-$(CONFIG_MACH_SOLIDRUN_CUBOX) += barebox-solidrun-cubox.img
-image-$(CONFIG_MACH_SOLIDRUN_CUBOX) += barebox-solidrun-cubox-uart.img
image-$(CONFIG_MACH_SOLIDRUN_CUBOX) += barebox-solidrun-cubox-2nd.img
# ----------------------- Kirkwood based boards ---------------------------
GLOBALSCALE_GURUPLUG_KWBOPTS = ${KWBOPTS} -i $(board)/globalscale-guruplug/kwbimage.cfg
OPTS_start_globalscale_guruplug.pblx.kwbimg = $(GLOBALSCALE_GURUPLUG_KWBOPTS)
-OPTS_start_globalscale_guruplug.pblx.kwbuartimg = -m uart $(GLOBALSCALE_GURUPLUG_KWBOPTS)
FILE_barebox-globalscale-guruplug.img = start_globalscale_guruplug.pblx.kwbimg
-FILE_barebox-globalscale-guruplug-uart.img = start_globalscale_guruplug.pblx.kwbuartimg
FILE_barebox-globalscale-guruplug-2nd.img = start_globalscale_guruplug.pblx
pblx-$(CONFIG_MACH_GLOBALSCALE_GURUPLUG) += start_globalscale_guruplug
image-$(CONFIG_MACH_GLOBALSCALE_GURUPLUG) += barebox-globalscale-guruplug.img
-image-$(CONFIG_MACH_GLOBALSCALE_GURUPLUG) += barebox-globalscale-guruplug-uart.img
image-$(CONFIG_MACH_GLOBALSCALE_GURUPLUG) += barebox-globalscale-guruplug-2nd.img
PLATHOME_OPENBLOCKS_A6_KWBOPTS = ${KWBOPTS} -i $(board)/plathome-openblocks-a6/kwbimage.cfg
OPTS_start_plathome_openblocks_a6.pblx.kwbimg = $(PLATHOME_OPENBLOCKS_A6_KWBOPTS)
-OPTS_start_plathome_openblocks_a6.pblx.kwbuartimg = -m uart $(PLATHOME_OPENBLOCKS_A6_KWBOPTS)
FILE_barebox-plathome-openblocks-a6.img = start_plathome_openblocks_a6.pblx.kwbimg
-FILE_barebox-plathome-openblocks-a6-uart.img = start_plathome_openblocks_a6.pblx.kwbuartimg
FILE_barebox-plathome-openblocks-a6-2nd.img = start_plathome_openblocks_a6.pblx
pblx-$(CONFIG_MACH_PLATHOME_OPENBLOCKS_A6) += start_plathome_openblocks_a6
image-$(CONFIG_MACH_PLATHOME_OPENBLOCKS_A6) += barebox-plathome-openblocks-a6.img
-image-$(CONFIG_MACH_PLATHOME_OPENBLOCKS_A6) += barebox-plathome-openblocks-a6-uart.img
image-$(CONFIG_MACH_PLATHOME_OPENBLOCKS_A6) += barebox-plathome-openblocks-a6-2nd.img
USI_TOPKICK_KWBOPTS = ${KWBOPTS} -i $(board)/usi-topkick/kwbimage.cfg
OPTS_start_usi_topkick.pblx.kwbimg = $(USI_TOPKICK_KWBOPTS)
-OPTS_start_usi_topkick.pblx.kwbuartimg = -m uart $(USI_TOPKICK_KWBOPTS)
FILE_barebox-usi-topkick.img = start_usi_topkick.pblx.kwbimg
-FILE_barebox-usi-topkick-uart.img = start_usi_topkick.pblx.kwbuartimg
FILE_barebox-usi-topkick-2nd.img = start_usi_topkick.pblx
pblx-$(CONFIG_MACH_USI_TOPKICK) += start_usi_topkick
image-$(CONFIG_MACH_USI_TOPKICK) += barebox-usi-topkick.img
-image-$(CONFIG_MACH_USI_TOPKICK) += barebox-usi-topkick-uart.img
image-$(CONFIG_MACH_USI_TOPKICK) += barebox-usi-topkick-2nd.img
--
2.9.3
_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH 0/7] scripts: kwboot: various improvements
2016-09-28 18:50 [PATCH 0/7] scripts: kwboot: various improvements Uwe Kleine-König
` (6 preceding siblings ...)
2016-09-28 18:50 ` [PATCH 7/7] images: mvebu: don't generate uart images Uwe Kleine-König
@ 2016-10-04 6:05 ` Sascha Hauer
7 siblings, 0 replies; 9+ messages in thread
From: Sascha Hauer @ 2016-10-04 6:05 UTC (permalink / raw)
To: Uwe Kleine-König; +Cc: barebox
On Wed, Sep 28, 2016 at 08:50:10PM +0200, Uwe Kleine-König wrote:
> Hello,
>
> this series is the result of my efforts to make UART booting on an
> Netgear ReadyNAS 2120 work.
>
> Best regards
> Uwe
Applied, thanks
Sascha
>
> Uwe Kleine-König (7):
> scripts: kwboot: try to resync on packet boundary after receiving a
> NAK
> scripts: kwboot: flush input and output only once
> scripts: kwboot: improve diagnostic output
> scripts: kwboot: shorten delay between two boot messages
> scripts: kwboot: simplify kwboot_mmap_image
> scripts: kwboot: set boot source to UART before sending
> images: mvebu: don't generate uart images
>
> images/Makefile.mvebu | 29 ---------------
> scripts/kwboot.c | 101 +++++++++++++++++++++++++++++++++++++++-----------
> 2 files changed, 80 insertions(+), 50 deletions(-)
>
> --
> 2.9.3
>
>
> _______________________________________________
> barebox mailing list
> barebox@lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/barebox
--
Pengutronix e.K. | |
Industrial Linux Solutions | http://www.pengutronix.de/ |
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 |
Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |
_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox
^ permalink raw reply [flat|nested] 9+ messages in thread