]> rtime.felk.cvut.cz Git - novaboot.git/log
novaboot.git
10 years agoAMT: Disconnect SOL before power off
Michal Sojka [Thu, 20 Feb 2014 12:06:13 +0000 (13:06 +0100)]
AMT: Disconnect SOL before power off

Otherwise power off fails.

10 years agoDo not run amtterm only after reset and get rid of sleep()
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

10 years agoUpdate comments
Michal Sojka [Mon, 17 Feb 2014 15:36:21 +0000 (16:36 +0100)]
Update comments

10 years agoMake example buildroot use /dev/console for getty
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.

10 years agoMerge branch 'amt'
Michal Sojka [Mon, 17 Feb 2014 15:17:20 +0000 (16:17 +0100)]
Merge branch 'amt'

Conflicts:
README.md
novaboot

10 years agoUpdate --amt documentation
Michal Sojka [Mon, 17 Feb 2014 15:13:49 +0000 (16:13 +0100)]
Update --amt documentation

10 years agoDo not read the script if --on or -off is specified
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.

10 years agoAMT: cleanups, simplifications
Michal Sojka [Fri, 14 Feb 2014 17:23:43 +0000 (18:23 +0100)]
AMT: cleanups, simplifications

10 years agoWhitespace and indentation fixes
Michal Sojka [Fri, 14 Feb 2014 16:43:42 +0000 (17:43 +0100)]
Whitespace and indentation fixes

10 years agoMove "use LWP" to amt block
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.

10 years agoDo not power off during AMT reset
Michal Sojka [Fri, 14 Feb 2014 16:30:23 +0000 (17:30 +0100)]
Do not power off during AMT reset

10 years agoAdded support of Intel AMT
Vaclav Fanfule [Mon, 3 Feb 2014 23:48:02 +0000 (00:48 +0100)]
Added support of Intel AMT

10 years agogen_cpio: Add support for gzip compression
Michal Sojka [Thu, 6 Feb 2014 10:39:28 +0000 (11:39 +0100)]
gen_cpio: Add support for gzip compression

10 years agoUse sterm instead of cu on ryuglab target
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.

10 years agogen_cpio fixes
Michal Sojka [Mon, 20 Jan 2014 13:35:24 +0000 (14:35 +0100)]
gen_cpio fixes

10 years agodoc: Change code to file
Michal Sojka [Sun, 19 Jan 2014 15:46:29 +0000 (16:46 +0100)]
doc: Change code to file

10 years agoAdd Linux example to the documentation
Michal Sojka [Sun, 19 Jan 2014 15:27:13 +0000 (16:27 +0100)]
Add Linux example to the documentation

10 years agoAdd link to novaboot script syntax and fix md formating
Michal Sojka [Sun, 19 Jan 2014 15:19:04 +0000 (16:19 +0100)]
Add link to novaboot script syntax and fix md formating

10 years agoDie if no file name is specified after load
Michal Sojka [Sun, 19 Jan 2014 14:53:35 +0000 (15:53 +0100)]
Die if no file name is specified after load

10 years agoFix heredoc parsing
Michal Sojka [Sun, 19 Jan 2014 14:34:24 +0000 (15:34 +0100)]
Fix heredoc parsing

10 years agoDocumentation update (mainly introduction)
Michal Sojka [Sun, 19 Jan 2014 14:24:39 +0000 (15:24 +0100)]
Documentation update (mainly introduction)

10 years agoMove implementation of --chainloader and --bender to where it is documented
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.

10 years agoAdd --kernel option
Michal Sojka [Sun, 19 Jan 2014 13:24:22 +0000 (14:24 +0100)]
Add --kernel option

10 years agoAdd --help to synopsis
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.

10 years agoIntroduce 'load' keyword to novaboot scripts
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

10 years agoAdd command line interface to Expect.pm functionality
Michal Sojka [Sun, 19 Jan 2014 09:53:57 +0000 (10:53 +0100)]
Add command line interface to Expect.pm functionality

10 years agoAllow specifying empty target
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.

10 years agogen_cpio: Add support for including whole directory trees
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)

10 years agoDocument how to use gen_cpio to produce uBoot images
Michal Sojka [Fri, 17 Jan 2014 12:56:54 +0000 (13:56 +0100)]
Document how to use gen_cpio to produce uBoot images

10 years agoAdd how to use gen_cpio
Michal Sojka [Fri, 17 Jan 2014 12:54:52 +0000 (13:54 +0100)]
Add how to use gen_cpio

10 years agoAdd first version of gen_cpio script
Michal Sojka [Fri, 17 Jan 2014 12:52:13 +0000 (13:52 +0100)]
Add first version of gen_cpio script

10 years agoIncrease uboot timeout
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.

10 years agoEnclose uboot bootargs in apostrophes
Michal Sojka [Sun, 12 Jan 2014 09:07:33 +0000 (10:07 +0100)]
Enclose uboot bootargs in apostrophes

Needed if bootags contain special characters.

10 years agoRemove debugging messages
Michal Sojka [Fri, 10 Jan 2014 11:50:24 +0000 (12:50 +0100)]
Remove debugging messages

10 years agoDie when asking for interactive mode without being on terminal
Michal Sojka [Fri, 10 Jan 2014 11:36:18 +0000 (12:36 +0100)]
Die when asking for interactive mode without being on terminal

10 years agoTell the user correctly how to interrupt novaboot
Michal Sojka [Fri, 10 Jan 2014 11:35:29 +0000 (12:35 +0100)]
Tell the user correctly how to interrupt novaboot

10 years agoFix interactive mode escape sequence
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.

10 years agoAdd interactive mode
Michal Sojka [Fri, 10 Jan 2014 09:19:49 +0000 (10:19 +0100)]
Add interactive mode

10 years agoRemove -i alias of --iso option
Michal Sojka [Fri, 10 Jan 2014 09:02:47 +0000 (10:02 +0100)]
Remove -i alias of --iso option

10 years agoDie when error in command line arguments is detected
Michal Sojka [Tue, 7 Jan 2014 15:05:41 +0000 (16:05 +0100)]
Die when error in command line arguments is detected

10 years agoDie when an unknown target is specified
Michal Sojka [Tue, 7 Jan 2014 15:02:15 +0000 (16:02 +0100)]
Die when an unknown target is specified

10 years agoAdd --exiton option and EXITON variable
Michal Sojka [Mon, 6 Jan 2014 16:41:30 +0000 (17:41 +0100)]
Add --exiton option and EXITON variable

10 years agoSort documentation of variables alphabetically
Michal Sojka [Mon, 6 Jan 2014 16:29:19 +0000 (17:29 +0100)]
Sort documentation of variables alphabetically

10 years agoFix reading of configuration files in symlinked directories
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.

10 years agoImporove documentation
Michal Sojka [Tue, 3 Dec 2013 15:30:06 +0000 (07:30 -0800)]
Imporove documentation

10 years agoAdd one second sleep to powerpc configurations to wait for establishing Ethernet...
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.

10 years agoAdd --remote-cmd-expect option
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.

10 years agoDo not initialize $exp object if it is not used
Michal Sojka [Fri, 8 Nov 2013 11:36:34 +0000 (12:36 +0100)]
Do not initialize $exp object if it is not used

10 years agoAdd $default_target configuration variable
Michal Sojka [Fri, 8 Nov 2013 11:26:02 +0000 (12:26 +0100)]
Add $default_target configuration variable

10 years agoRun qemu only when --qemu option is present
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.

10 years agoDo not print short help when an unknown option is found
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.

10 years agoAdd --make option
Michal Sojka [Fri, 8 Nov 2013 10:42:12 +0000 (11:42 +0100)]
Add --make option

10 years agoChomp nproc results before use
Michal Sojka [Fri, 8 Nov 2013 10:41:59 +0000 (11:41 +0100)]
Chomp nproc results before use

10 years agoUse nproc tool to determine the number of parallel jobs for scons
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

10 years agoExport serial line TTY as env. variable
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.

10 years agoFix inviseble text (<...>) in Github markdown
Michal Sojka [Wed, 6 Nov 2013 01:27:47 +0000 (02:27 +0100)]
Fix inviseble text (<...>) in Github markdown

10 years agoUpdate documentation
Michal Sojka [Wed, 6 Nov 2013 00:19:20 +0000 (01:19 +0100)]
Update documentation

10 years agoImprove uBoot support; add two targets that use uBoot
Michal Sojka [Tue, 5 Nov 2013 23:44:33 +0000 (00:44 +0100)]
Improve uBoot support; add two targets that use uBoot

10 years agoAdd options for remote reset target connection and reset
Michal Sojka [Tue, 5 Nov 2013 23:38:12 +0000 (00:38 +0100)]
Add options for remote reset target connection and reset

10 years agoRemove debug message
Michal Sojka [Tue, 5 Nov 2013 16:43:11 +0000 (17:43 +0100)]
Remove debug message

10 years agoFix example sudoers file
Michal Sojka [Tue, 5 Nov 2013 15:43:15 +0000 (16:43 +0100)]
Fix example sudoers file

10 years agoRework interaction with the target
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.

10 years agoClarify and simplify starting and killing of DHCP and TFTP servers
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.

10 years agoAdd initial support for uBoot
Michal Sojka [Tue, 5 Nov 2013 13:05:30 +0000 (14:05 +0100)]
Add initial support for uBoot

10 years agoAdd --stty option to specify serial line configuration
Michal Sojka [Tue, 5 Nov 2013 09:51:05 +0000 (10:51 +0100)]
Add --stty option to specify serial line configuration

10 years agoFix warnings when invoked with no script
Michal Sojka [Tue, 5 Nov 2013 09:23:18 +0000 (10:23 +0100)]
Fix warnings when invoked with no script

10 years agoInitialize all possible target connections at one place
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.

10 years agoUse Expect package to communicate with the target over serial line
Michal Sojka [Mon, 4 Nov 2013 23:08:12 +0000 (00:08 +0100)]
Use Expect package to communicate with the target over serial line

This simplifies the code and unifies the target communication. Now, this
is used for communication with the IP relay, host serial line and qemu
subprocess. More is expected to come.

10 years agoWhen printing an executed command, don't print quote every parameter
Michal Sojka [Mon, 4 Nov 2013 22:19:11 +0000 (23:19 +0100)]
When printing an executed command, don't print quote every parameter

Only parameters containing spaces semicolons etc. are quoted.

10 years agoComment on target connection
Michal Sojka [Mon, 4 Nov 2013 20:43:04 +0000 (21:43 +0100)]
Comment on target connection

10 years agoClarify documentation
Michal Sojka [Sun, 3 Nov 2013 19:30:37 +0000 (20:30 +0100)]
Clarify documentation

10 years agoFix invocation with absolute path
Michal Sojka [Tue, 22 Oct 2013 05:16:30 +0000 (07:16 +0200)]
Fix invocation with absolute path

10 years agoAdd tests of different invocation styles
Michal Sojka [Tue, 22 Oct 2013 05:11:25 +0000 (07:11 +0200)]
Add tests of different invocation styles

10 years agoSimplify file generation in tests
Michal Sojka [Mon, 21 Oct 2013 21:25:02 +0000 (23:25 +0200)]
Simplify file generation in tests

10 years agoAdd BUILDDIR variable
Michal Sojka [Mon, 21 Oct 2013 21:23:06 +0000 (23:23 +0200)]
Add BUILDDIR variable

Modify powerpc example to use this variable.

10 years agoAdd test for $hypervisor variable
Michal Sojka [Mon, 21 Oct 2013 21:01:41 +0000 (23:01 +0200)]
Add test for $hypervisor variable

10 years agoMake all warnings fatal under when testing
Michal Sojka [Mon, 21 Oct 2013 20:49:16 +0000 (22:49 +0200)]
Make all warnings fatal under when testing

10 years agoSimplify determination of build directory
Michal Sojka [Mon, 21 Oct 2013 20:48:41 +0000 (22:48 +0200)]
Simplify determination of build directory

Due to the possibility of having the configuration file in arbitrary
directory, it is not necessary to special case NUL build directory in the
core.

10 years agoRun every test in its own directory
Michal Sojka [Mon, 21 Oct 2013 20:07:27 +0000 (22:07 +0200)]
Run every test in its own directory

10 years agoTest suite improvements
Michal Sojka [Mon, 21 Oct 2013 18:18:16 +0000 (20:18 +0200)]
Test suite improvements

10 years agoCleanup
Michal Sojka [Mon, 21 Oct 2013 18:33:50 +0000 (20:33 +0200)]
Cleanup

10 years agoFix warning
Michal Sojka [Mon, 21 Oct 2013 17:57:11 +0000 (19:57 +0200)]
Fix warning

10 years agoAdd rudimentary test suite
Michal Sojka [Mon, 21 Oct 2013 11:18:20 +0000 (13:18 +0200)]
Add rudimentary test suite

10 years agoReplace $chainloader configuration variable with --chainloaders switch
Michal Sojka [Mon, 21 Oct 2013 11:13:22 +0000 (13:13 +0200)]
Replace $chainloader configuration variable with --chainloaders switch

10 years agoAdd --gen-only option
Michal Sojka [Mon, 21 Oct 2013 11:07:45 +0000 (13:07 +0200)]
Add --gen-only option

10 years agoMove --scons documentation to the correct section
Michal Sojka [Mon, 21 Oct 2013 11:00:29 +0000 (13:00 +0200)]
Move --scons documentation to the correct section

10 years agoSimplify pulsar config name
Michal Sojka [Mon, 21 Oct 2013 08:44:59 +0000 (10:44 +0200)]
Simplify pulsar config name

10 years agoReplace $pulsar_root configuration variable with a command line option
Michal Sojka [Mon, 21 Oct 2013 08:41:12 +0000 (10:41 +0200)]
Replace $pulsar_root configuration variable with a command line option

10 years agoAdd target connection check phase to the documentation
Michal Sojka [Mon, 21 Oct 2013 00:27:35 +0000 (02:27 +0200)]
Add target connection check phase to the documentation

10 years agoRemove end mark from grub configs
Michal Sojka [Mon, 21 Oct 2013 00:16:06 +0000 (02:16 +0200)]
Remove end mark from grub configs

This was needed for interaction with grub over serial line which was
removed a few commits back.

10 years agoDon't dump log messages to the config file; better indentation of the config file
Michal Sojka [Mon, 21 Oct 2013 00:12:58 +0000 (02:12 +0200)]
Don't dump log messages to the config file; better indentation of the config file

10 years agoSimplify qemu handling
Michal Sojka [Mon, 21 Oct 2013 00:08:18 +0000 (02:08 +0200)]
Simplify qemu handling

10 years agoSimplify scons handling
Michal Sojka [Mon, 21 Oct 2013 00:07:42 +0000 (02:07 +0200)]
Simplify scons handling

10 years agoRemove $pulsar_mac configuration variable
Michal Sojka [Sun, 20 Oct 2013 23:49:44 +0000 (01:49 +0200)]
Remove $pulsar_mac configuration variable

10 years agoRemove $iprelay configuration variable
Michal Sojka [Sun, 20 Oct 2013 23:47:50 +0000 (01:47 +0200)]
Remove $iprelay configuration variable

Also improve --on/--off handling.

10 years agoRemove grub_keys configuration option
Michal Sojka [Sun, 20 Oct 2013 23:33:08 +0000 (01:33 +0200)]
Remove grub_keys configuration option

I have no use case for this option and it never worked reliably.

10 years agoRemove $server configuration variable
Michal Sojka [Sun, 20 Oct 2013 23:29:41 +0000 (01:29 +0200)]
Remove $server configuration variable

Can be replaced by putting --server option to %targets configuration.

10 years agoSearch configuration files in all directories upwards from the script directory
Michal Sojka [Sun, 20 Oct 2013 23:21:54 +0000 (01:21 +0200)]
Search configuration files in all directories upwards from the script directory

The idea is to allow having a project specific configuration in the
project's repository as well as user specific one in the home directory.

10 years agoSimplify generation of bootloader configuration files
Michal Sojka [Sat, 19 Oct 2013 23:36:14 +0000 (01:36 +0200)]
Simplify generation of bootloader configuration files

Now, every aspect of generation is triggered by command line option
(previously, there were a lot of implicit rules and dependencies).

Removed some configuration options (the rest will follow soon).

Not all combinations of command line switches were tested, so there might
be some errors!

10 years agoReplace custom_options with --target
Michal Sojka [Sat, 19 Oct 2013 20:23:23 +0000 (22:23 +0200)]
Replace custom_options with --target

The result is that the "-I" switch is replaced with "-t tud" and "-J"
with "-t novabox".