kwboot.1 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102
  1. .TH KWBOOT 1 "2021-08-25"
  2. .SH NAME
  3. kwboot \- Boot Marvell Kirkwood (and others 32-bit) SoCs over a serial link.
  4. .SH SYNOPSIS
  5. .B kwboot
  6. .RB [ "-b \fIimage\fP" ]
  7. .RB [ "-t" ]
  8. .RB [ "-B \fIbaudrate\fP" ]
  9. .RB \fITTY\fP
  10. .SH "DESCRIPTION"
  11. The \fBkwboot\fP program boots boards based on Marvell's 32-bit
  12. platforms including Kirkwood, Dove, A370, AXP, A375, A38x
  13. and A39x over their integrated UART. Boot image files will typically
  14. contain a second stage boot loader, such as U-Boot. The image file
  15. must conform to Marvell's BootROM firmware image format
  16. (\fIkwbimage v0\fP or \fIv1\fP), created using a tool such as
  17. \fBmkimage\fP.
  18. Following power-up or a system reset, system BootROM code polls the
  19. UART for a brief period of time, sensing a handshake message which
  20. initiates an image upload. This program sends this boot message until
  21. it receives a positive acknowledgement. The image is transferred using
  22. Xmodem.
  23. Additionally, this program implements a minimal terminal mode, which
  24. can be used either standalone, or entered immediately following boot
  25. image transfer completion. This is often useful to catch early boot
  26. messages, or to manually interrupt a default boot procedure performed
  27. by the second-stage loader.
  28. .SH "OPTIONS"
  29. .TP
  30. .BI "\-b \fIimage\fP"
  31. Handshake; then upload file \fIimage\fP over \fITTY\fP.
  32. Note that for the encapsulated boot code to be executed, \fIimage\fP
  33. must be of type "UART boot" (0x69). The \fBkwboot\fP program changes
  34. this type automatically, unless the \fIimage\fP is signed, in which
  35. case it cannot be changed.
  36. This mode writes handshake status and upload progress indication to
  37. stdout. It is possible that \fIimage\fP contains an optional binary
  38. code in it's header which may also print some output via UART (for
  39. example U-Boot SPL does this). In such a case, this output is also
  40. written to stdout after the header is sent.
  41. .TP
  42. .BI "\-p"
  43. Obsolete. Does nothing.
  44. In the past, when this option was used, the program patched the header
  45. in the image prior upload, to "UART boot" type. This is now done by
  46. default.
  47. .TP
  48. .BI "\-t"
  49. Run a terminal program, connecting standard input and output to
  50. .RB \fITTY\fP.
  51. If used in combination with \fB-b\fP, terminal mode is entered
  52. immediately following a successful image upload.
  53. If standard I/O streams connect to a console, this mode will terminate
  54. after receiving \fBctrl-\e\fP followed by \fBc\fP from console input.
  55. .TP
  56. .BI "\-B \fIbaudrate\fP"
  57. If used in combination with \fB-b\fP, inject into the image header
  58. code that changes baud rate to \fIbaudrate\fP after uploading image
  59. header, and code that changes the baud rate back to the default
  60. (115200 Bd) before executing payload, and also adjust the baud rate
  61. on \fITTY\fP correspondingly. This can make the upload significantly
  62. faster.
  63. If used in combination with \fB-t\fP, adjust the baud rate to
  64. \fIbaudrate\fP on \fITTY\fP before starting terminal.
  65. If both \fB-b\fP and \fB-t\fP are used, the baud rate is changed
  66. back to 115200 after the upload.
  67. Tested values for \fIbaudrate\fP for Armada 38x include: 115200,
  68. 230400, 460800, 500000, 576000, 921600, 1000000, 1152000, 1500000,
  69. 2000000, 2500000, 3125000, 4000000 and 5200000.
  70. .SH "SEE ALSO"
  71. .PP
  72. \fBmkimage\fP(1)
  73. .SH "AUTHORS"
  74. Daniel Stodden <daniel.stodden@gmail.com>
  75. .br
  76. Luka Perkov <luka@openwrt.org>
  77. .br
  78. David Purdy <david.c.purdy@gmail.com>
  79. .br
  80. Pali Rohár <pali@kernel.org>
  81. .br
  82. Marek Behún <marek.behun@nic.cz>