]>
rtime.felk.cvut.cz Git - novaboot.git/log
Michal Sojka [Wed, 23 Jul 2014 10:09:26 +0000 (12:09 +0200)]
Use recursive target definition for ryu boards
The ryu target specifies properties of the U-Boot bootloader on the board
and ryuglab and ryulocal targets extent this with different possibilities
of how the board can be reached.
Michal Sojka [Wed, 23 Jul 2014 10:04:10 +0000 (12:04 +0200)]
Add --uboot-addr, i.e. generic way to specify U-Boot load addresses
Michal Sojka [Wed, 23 Jul 2014 10:02:56 +0000 (12:02 +0200)]
Add --prefix - a more generic variant of --grub-prefix
--grub-prefix is now alias to --prefix.
Michal Sojka [Tue, 22 Jul 2014 09:10:16 +0000 (11:10 +0200)]
Add support for $NB_MYIP in --uboot-init
Michal Sojka [Tue, 22 Jul 2014 09:08:05 +0000 (11:08 +0200)]
Improve detection of U-Boot prompt after tftpboot command
If the uboot prompt contains '#' character, it might not be detected
properly.
Michal Sojka [Tue, 22 Jul 2014 07:31:31 +0000 (09:31 +0200)]
Initialize some variables even if /dev/null is passed as novaboot script
Michal Sojka [Tue, 22 Jul 2014 07:21:26 +0000 (09:21 +0200)]
Set $builddir to invocation dir if it is not specified by other means
This fixes undefined variable in --tftp handling when novaboot it run as
novabot ... -- /dev/null
Michal Sojka [Tue, 22 Jul 2014 07:10:01 +0000 (09:10 +0200)]
Get rid of trailing newlines in --uboot-init commands
They break our "wait for prompt" logic.
Michal Sojka [Tue, 22 Jul 2014 07:08:51 +0000 (09:08 +0200)]
Simplify --uboot-init handling
Michal Sojka [Mon, 21 Jul 2014 22:38:34 +0000 (00:38 +0200)]
Update README.md
Michal Sojka [Mon, 21 Jul 2014 22:12:57 +0000 (00:12 +0200)]
Support both old and new isolinux versions
Michal Sojka [Mon, 21 Jul 2014 22:09:21 +0000 (00:09 +0200)]
Add support for configuration directory
Michal Sojka [Mon, 21 Jul 2014 21:16:44 +0000 (23:16 +0200)]
Remove forgotten comment
Michal Sojka [Thu, 17 Jul 2014 21:27:20 +0000 (23:27 +0200)]
Add support for recursive target definitions
I.e. one target definition can contain another --target option.
Michal Sojka [Thu, 17 Jul 2014 20:27:16 +0000 (22:27 +0200)]
One more fix for ISO image creation
Michal Sojka [Thu, 17 Jul 2014 20:19:21 +0000 (22:19 +0200)]
Support new version of syslinux
Support for older version was dropped. Let me know if somebody needs it.
Michal Sojka [Thu, 17 Jul 2014 20:09:10 +0000 (22:09 +0200)]
AMT IDE-R implementation
This change is based on work by Václav Fanfule.
Michal Sojka [Thu, 17 Jul 2014 16:05:49 +0000 (18:05 +0200)]
Add --tftp-port option
Michal Sojka [Thu, 17 Jul 2014 14:02:35 +0000 (16:02 +0200)]
Inform the user in interaction is only onedirectional
Michal Sojka [Thu, 17 Jul 2014 11:46:57 +0000 (13:46 +0200)]
Detect errors when starting tftpd
No we start tftpd without forking in novaboot (but in tftpd itself), which
allows us to detect when it does not start correctly. For example when
a system daemon already runs.
Michal Sojka [Thu, 17 Jul 2014 11:10:33 +0000 (13:10 +0200)]
Improve U-Boot support
- U-Boot prompt is configurable
- Allow multiple --uboot-init options
- Do not try to boot if there is nothing to boot specified
Michal Sojka [Thu, 17 Jul 2014 11:08:41 +0000 (13:08 +0200)]
Add --tftp option
Michal Sojka [Thu, 17 Jul 2014 11:06:04 +0000 (13:06 +0200)]
Ignore test directories
Michal Sojka [Thu, 17 Jul 2014 11:05:25 +0000 (13:05 +0200)]
Add sudoers template
Michal Sojka [Tue, 13 May 2014 13:32:46 +0000 (15:32 +0200)]
debian: Do not recommend servers that are started automatically
Replace the dependency with "Suggest".
Wheezy compatibility:
- Allow iproute package as an alternative to ipreoute2.
- Recommend qemy-system rather than qemu-system-x86.
Michal Sojka [Tue, 13 May 2014 13:18:49 +0000 (15:18 +0200)]
Require LWP module at run time rather than at compile time
This module is only needed with --amt.
Michal Sojka [Tue, 13 May 2014 12:55:14 +0000 (14:55 +0200)]
Add Debian packaging
Michal Sojka [Tue, 13 May 2014 11:01:15 +0000 (13:01 +0200)]
Support booting Linux with isolinux
isolinux configuration must be different for Linux and for Multiboot
kernels.
Michal Sojka [Tue, 13 May 2014 10:45:57 +0000 (12:45 +0200)]
Fix the name of ISO image when it is booted under qemu
Michal Sojka [Tue, 13 May 2014 10:45:16 +0000 (12:45 +0200)]
Use syslinux bootloader to create bootable ISO images
Previously, we used Grub 1, which was problematic, because it is not
available on modern distributions.
Michal Sojka [Wed, 23 Apr 2014 19:18:51 +0000 (21:18 +0200)]
Replace qemu with qemu-system-i386
Even Debian removed backward compatibility symlink from qemu to
qemu-system-i386, so we have to replace the default configuration.
Michal Sojka [Mon, 14 Apr 2014 07:54:19 +0000 (09:54 +0200)]
examples: Do not compile buildroot toolchain, just download a pre-built one
Michal Sojka [Fri, 28 Feb 2014 18:41:02 +0000 (19:41 +0100)]
Implement run keyword
This allows to run arbitrary commands during file generation phase.
Michal Sojka [Thu, 20 Feb 2014 12:06:13 +0000 (13:06 +0100)]
AMT: Disconnect SOL before power off
Otherwise power off fails.
Michal Sojka [Wed, 19 Feb 2014 06:49:18 +0000 (07:49 +0100)]
Do not run amtterm only after reset and get rid of sleep()
This way, amtterm fails is somebody is already connected. Only if amtterm
succeeds, we proceed to reset/poweron.
With recent amttool (at least commit [1]), this works even without sleep
before running amtterm.
[1]: https://www.kraxel.org/cgit/amtterm/log/?h=
0ece5135fef56dbd0d94957c334655a57adb7212
Michal Sojka [Mon, 17 Feb 2014 15:36:21 +0000 (16:36 +0100)]
Update comments
Michal Sojka [Mon, 17 Feb 2014 15:18:55 +0000 (16:18 +0100)]
Make example buildroot use /dev/console for getty
This way, getty appears wherever the user sets console kernel
command line.
Michal Sojka [Mon, 17 Feb 2014 15:17:20 +0000 (16:17 +0100)]
Merge branch 'amt'
Conflicts:
README.md
novaboot
Michal Sojka [Mon, 17 Feb 2014 15:13:49 +0000 (16:13 +0100)]
Update --amt documentation
Michal Sojka [Sun, 16 Feb 2014 21:27:29 +0000 (22:27 +0100)]
Do not read the script if --on or -off is specified
This allows running novaboot without any script in which case
novaboot does not block in reading from stdin.
Michal Sojka [Fri, 14 Feb 2014 17:23:43 +0000 (18:23 +0100)]
AMT: cleanups, simplifications
Michal Sojka [Fri, 14 Feb 2014 16:43:42 +0000 (17:43 +0100)]
Whitespace and indentation fixes
Michal Sojka [Fri, 14 Feb 2014 16:32:25 +0000 (17:32 +0100)]
Move "use LWP" to amt block
Novaboot should not fail when LWP is not installed and AMT is not used.
Michal Sojka [Fri, 14 Feb 2014 16:30:23 +0000 (17:30 +0100)]
Do not power off during AMT reset
Vaclav Fanfule [Mon, 3 Feb 2014 23:48:02 +0000 (00:48 +0100)]
Added support of Intel AMT
Michal Sojka [Thu, 6 Feb 2014 10:39:28 +0000 (11:39 +0100)]
gen_cpio: Add support for gzip compression
Michal Sojka [Tue, 4 Feb 2014 16:05:13 +0000 (17:05 +0100)]
Use sterm instead of cu on ryuglab target
Compared to cu, sterm does not wait 2 seconds after hangup before it exits
(and leaves the port for another user/connection) and can reset the board
via command line switches (no need for --reset-cmd).
Sterm lives at
https://rtime.felk.cvut.cz/gitweb/can-benchmark.git/blob/HEAD:/utils/sterm.c
Additionally, use ssh -tt instead of -t. This causes the sterm to receive
SIGHUP even if ssh does not run on terminal.
Michal Sojka [Mon, 20 Jan 2014 13:35:24 +0000 (14:35 +0100)]
gen_cpio fixes
Michal Sojka [Sun, 19 Jan 2014 15:46:29 +0000 (16:46 +0100)]
doc: Change code to file
Michal Sojka [Sun, 19 Jan 2014 15:27:13 +0000 (16:27 +0100)]
Add Linux example to the documentation
Michal Sojka [Sun, 19 Jan 2014 15:19:04 +0000 (16:19 +0100)]
Add link to novaboot script syntax and fix md formating
Michal Sojka [Sun, 19 Jan 2014 14:53:35 +0000 (15:53 +0100)]
Die if no file name is specified after load
Michal Sojka [Sun, 19 Jan 2014 14:34:24 +0000 (15:34 +0100)]
Fix heredoc parsing
Michal Sojka [Sun, 19 Jan 2014 14:24:39 +0000 (15:24 +0100)]
Documentation update (mainly introduction)
Michal Sojka [Sun, 19 Jan 2014 13:51:03 +0000 (14:51 +0100)]
Move implementation of --chainloader and --bender to where it is documented
i.e. Script preprocessing phase.
Also move --strip-rom documentation to section "File generation phase",
because it is implemented there.
Michal Sojka [Sun, 19 Jan 2014 13:24:22 +0000 (14:24 +0100)]
Add --kernel option
Michal Sojka [Sun, 19 Jan 2014 12:06:17 +0000 (13:06 +0100)]
Add --help to synopsis
... so that people running novaboot -h know there is more to read.
Michal Sojka [Sun, 19 Jan 2014 11:47:09 +0000 (12:47 +0100)]
Introduce 'load' keyword to novaboot scripts
THIS IS A BACKWARD INCOMPATIBLE CHANGE!!!
Any file intended to be loaded on the target MUST be prefixed with the
load keyword in the novaboot script. This is done to allow future
extension of novaboot syntax.
Idea by Pavel Píša.
Other changes in this patch:
- sanitized and simplified novaboot script parsing
- --append can be specified multiple times
- documentation fixes
Michal Sojka [Sun, 19 Jan 2014 09:53:57 +0000 (10:53 +0100)]
Add command line interface to Expect.pm functionality
Michal Sojka [Sat, 18 Jan 2014 15:32:13 +0000 (16:32 +0100)]
Allow specifying empty target
This overrides the default target and is useful mainly for testing.
Michal Sojka [Fri, 17 Jan 2014 23:30:42 +0000 (00:30 +0100)]
gen_cpio: Add support for including whole directory trees
(mostly copied from gen_initramfs_list.sh)
Michal Sojka [Fri, 17 Jan 2014 12:56:54 +0000 (13:56 +0100)]
Document how to use gen_cpio to produce uBoot images
Michal Sojka [Fri, 17 Jan 2014 12:54:52 +0000 (13:54 +0100)]
Add how to use gen_cpio
Michal Sojka [Fri, 17 Jan 2014 12:52:13 +0000 (13:52 +0100)]
Add first version of gen_cpio script
Michal Sojka [Tue, 14 Jan 2014 12:00:21 +0000 (13:00 +0100)]
Increase uboot timeout
Sometimes 1 second was to small, perhaps due to lagging TCP connection.
Michal Sojka [Sun, 12 Jan 2014 09:07:33 +0000 (10:07 +0100)]
Enclose uboot bootargs in apostrophes
Needed if bootags contain special characters.
Michal Sojka [Fri, 10 Jan 2014 11:50:24 +0000 (12:50 +0100)]
Remove debugging messages
Michal Sojka [Fri, 10 Jan 2014 11:36:18 +0000 (12:36 +0100)]
Die when asking for interactive mode without being on terminal
Michal Sojka [Fri, 10 Jan 2014 11:35:29 +0000 (12:35 +0100)]
Tell the user correctly how to interrupt novaboot
Michal Sojka [Fri, 10 Jan 2014 11:33:43 +0000 (12:33 +0100)]
Fix interactive mode escape sequence
There were two problems:
1. Escape sequence is a regular expression, therefore '.' must be prefixed
with '\'.
2. Delete key produces an escape sequence that ends with '~'. Therefor
pressing Delete followed by '.' exits novaboot.
It would be nice if we can use traditional esscape sequence '~.' at the
beginning of the line (as in ssh or cu), but it seems that Expect.pm cannot
handle the "beginning of the line" in the escape sequence correctly.
Therefore we use "~~." sequence to solve problem 2.
Michal Sojka [Fri, 10 Jan 2014 09:19:49 +0000 (10:19 +0100)]
Add interactive mode
Michal Sojka [Fri, 10 Jan 2014 09:02:47 +0000 (10:02 +0100)]
Remove -i alias of --iso option
Michal Sojka [Tue, 7 Jan 2014 15:05:41 +0000 (16:05 +0100)]
Die when error in command line arguments is detected
Michal Sojka [Tue, 7 Jan 2014 15:02:15 +0000 (16:02 +0100)]
Die when an unknown target is specified
Michal Sojka [Mon, 6 Jan 2014 16:41:30 +0000 (17:41 +0100)]
Add --exiton option and EXITON variable
Michal Sojka [Mon, 6 Jan 2014 16:29:19 +0000 (17:29 +0100)]
Sort documentation of variables alphabetically
Michal Sojka [Mon, 6 Jan 2014 14:41:04 +0000 (15:41 +0100)]
Fix reading of configuration files in symlinked directories
We want novaboot to follow logical directory structure based on symlinks
and not to follow directories simply using ".." directory entry.
Michal Sojka [Tue, 3 Dec 2013 15:30:06 +0000 (07:30 -0800)]
Imporove documentation
Michal Sojka [Thu, 21 Nov 2013 22:52:34 +0000 (23:52 +0100)]
Add one second sleep to powerpc configurations to wait for establishing Ethernet link
Without sleep, we have to wait for a TFTP timeout, which is about 5 seconds.
Michal Sojka [Mon, 18 Nov 2013 10:40:24 +0000 (11:40 +0100)]
Add --remote-cmd-expect option
This is necessary for ryuglab target to exit novaboot when serial line is
already used, perhaps by another novaboot instance or user.
Michal Sojka [Fri, 8 Nov 2013 11:36:34 +0000 (12:36 +0100)]
Do not initialize $exp object if it is not used
Michal Sojka [Fri, 8 Nov 2013 11:26:02 +0000 (12:26 +0100)]
Add $default_target configuration variable
Michal Sojka [Fri, 8 Nov 2013 10:49:21 +0000 (11:49 +0100)]
Run qemu only when --qemu option is present
The default behavior does not change - see next commit.
Michal Sojka [Fri, 8 Nov 2013 11:03:06 +0000 (12:03 +0100)]
Do not print short help when an unknown option is found
It was hard to find the error message printed before the help message.
Michal Sojka [Fri, 8 Nov 2013 10:42:12 +0000 (11:42 +0100)]
Add --make option
Michal Sojka [Fri, 8 Nov 2013 10:41:59 +0000 (11:41 +0100)]
Chomp nproc results before use
Michal Sojka [Fri, 8 Nov 2013 09:58:40 +0000 (10:58 +0100)]
Use nproc tool to determine the number of parallel jobs for scons
Michal Sojka [Wed, 6 Nov 2013 12:43:37 +0000 (13:43 +0100)]
Export serial line TTY as env. variable
This is needed for reset command in ryulocal configuration.
Also check whether dtrrts command exists before trying to execute it.
Michal Sojka [Wed, 6 Nov 2013 01:27:47 +0000 (02:27 +0100)]
Fix inviseble text (<...>) in Github markdown
Michal Sojka [Wed, 6 Nov 2013 00:19:20 +0000 (01:19 +0100)]
Update documentation
Michal Sojka [Tue, 5 Nov 2013 23:44:33 +0000 (00:44 +0100)]
Improve uBoot support; add two targets that use uBoot
Michal Sojka [Tue, 5 Nov 2013 23:38:12 +0000 (00:38 +0100)]
Add options for remote reset target connection and reset
Michal Sojka [Tue, 5 Nov 2013 16:43:11 +0000 (17:43 +0100)]
Remove debug message
Michal Sojka [Tue, 5 Nov 2013 15:43:15 +0000 (16:43 +0100)]
Fix example sudoers file
Michal Sojka [Tue, 5 Nov 2013 14:34:41 +0000 (15:34 +0100)]
Rework interaction with the target
Only set up bi-directional communication if run on terminal. Also
specify manual_stty on STDIN to not mess up messages from background
server.
I will need to play more with terminal settings, because currently it is
not ideal. See the comment in the patch.
Michal Sojka [Tue, 5 Nov 2013 14:14:40 +0000 (15:14 +0100)]
Clarify and simplify starting and killing of DHCP and TFTP servers
Because servers run under root, we do not have permissions to kill them.
Normally, this is not a problem, because Ctrl-C kills the servers, because
they are in the same process group and kernel (terminal) don't care
about permissions. If novaboot dies after starting server, we need a way
to kill the servers explicitly. We use pkill command and .pid files
produced by the server. This is quite reliable.
Michal Sojka [Tue, 5 Nov 2013 13:05:30 +0000 (14:05 +0100)]
Add initial support for uBoot
Michal Sojka [Tue, 5 Nov 2013 09:51:05 +0000 (10:51 +0100)]
Add --stty option to specify serial line configuration
Michal Sojka [Tue, 5 Nov 2013 09:23:18 +0000 (10:23 +0100)]
Fix warnings when invoked with no script
Michal Sojka [Tue, 5 Nov 2013 09:20:49 +0000 (10:20 +0100)]
Initialize all possible target connections at one place
i.e. one large if/elif/else block.
Also modularize target reset/poweron/off.