Commit Graph

684 Commits

Author SHA1 Message Date
Christian Helmuth
4967166811 run: exit if boot modules are missing on linux 2019-08-28 14:22:32 +02:00
Martin Stein
cb6377355e sntp_client: report received transmit timestamp
For now in libports because it relies on contrib sources from musl doing
the time data conversion.

Ref #3448
Ref #3450
2019-08-21 12:37:02 +02:00
Christian Helmuth
607fe83c63 autopilot: align output for wide run-script names 2019-08-13 12:02:27 +02:00
Christian Prochaska
f73c63900f abi_symbols: drop weak local symbols
Fixes #3457
2019-08-13 12:02:27 +02:00
Christian Prochaska
2fad5eff95 abi_symbols: handle symbols without value
Fixes #3456
2019-08-13 12:02:27 +02:00
Christian Prochaska
1f56ffa51a abi_symbols: better error message on failed regexp match
Fixes #3455
2019-08-13 12:02:27 +02:00
Christian Prochaska
91c8e70bef depot: add recipe for drivers_nic-imx8q_evk
Fixes #3452
2019-08-13 12:02:27 +02:00
Christian Prochaska
4c113182b0 depot: add recipe for base-hw-imx8q_evk
Issue #3426
2019-08-13 12:02:27 +02:00
Stefan Kalkowski
7ced122ddc hw: support for i.MX8M Quad EVK
Fix #3426
2019-08-13 12:02:27 +02:00
Martin Stein
fe426e6f8f smbios_decoder: XML report from SMBIOS table ROM
Fixes #3430
2019-08-13 12:02:26 +02:00
Christian Prochaska
5dd1abcc2d depot: add recipe for drivers_nic-imx7d_sabre
Fixes #3433
2019-07-09 08:58:38 +02:00
Josef Söntgen
4c8369ab1b tool/depot/publish: support multiple threads in xz
Introduce 'XZ_THREADS' to override the default number of threads used
for compression, which is still set to '1'. As using multiple threads
will increase the amount of memory needed during the compression and
potentially influences the size of the created archive, setting the
variable limits the impact.

Fixes #3431.
2019-07-09 08:58:38 +02:00
Christian Helmuth
cea842b256 autopilot: append RUN_OPT also with --keep
In case RUN_OPT_AUTOPILOT is changed on consecutive calls of "autopilot
--keep", the changes are now effectively propagated to the run tool.

I also documented the RUN_OPT_AUTOPILOT environment variable.
2019-07-09 08:55:24 +02:00
Christian Helmuth
8d62f21b40 autopilot: support arch-specific build directories
Replace the notion of board-specific platforms by clear definition
architecture and board.

Also added new command line switch for "targets"

  -t <target>         test target as triple of architecture-board-kernel,
                      e.g., arm_v7a-pbxa9-hw

Related to #3316
Fixes #3417
2019-07-09 08:55:24 +02:00
Christian Helmuth
cf2c9f8d88 run: abort with error if BOARD was not set 2019-07-09 08:55:23 +02:00
Stefan Kalkowski
186c35bb09 depot: recipe for base-hw-rpi3
Ref #3407
2019-07-09 08:55:23 +02:00
Sebastian Sumpf
e337b844e5 depot: support for ARM 64-bit for base-foc on rpi3
issue #3407
2019-07-09 08:55:22 +02:00
Stefan Kalkowski
90d07741aa hw: support for ARM64 Raspberry Pi 3
Restriction: enables only cpu core 0 and the timer interrupt by now.

Fix #3405
2019-07-09 08:55:22 +02:00
Christian Helmuth
efe0887247 tool: fix BOARD_RUN_OPT for arm_v8 2019-07-09 08:41:53 +02:00
Alexander Boettcher
a25c656b1a image/disk: increase estimated disk size
Fixes #3410
2019-06-13 12:22:49 +02:00
Christian Helmuth
be4d8b24e2 run: improve error message on missing recipe 2019-06-13 12:17:32 +02:00
Christian Prochaska
ca39a9ea61 tool_chain: versioned install location
Issue #3307
2019-05-29 10:20:52 +02:00
Tomasz Gajewski
27e9d1fcf0 tool/run/README: Fixed tftp related argument names in example
Fixes #3382
2019-05-29 10:20:52 +02:00
Alexander Boettcher
b3a9ad2215 vbox5: fpu support via new vm_session
Issue #3111
2019-05-29 10:20:52 +02:00
Alexander Boettcher
5673c163fb vbox5: use vm_session interface
Issue #3111
2019-05-29 10:20:52 +02:00
Norman Feske
34a711b439 tool/parse_cxx: const var decl, initializers
This patch handles a few corner cases that appear in the headers of
Genode 19.05, in particular the new client-side block API in
'block_session/connection.h'.
2019-05-27 14:53:32 +02:00
Christian Helmuth
b359ec14a8 autopilot: align output for wide board names 2019-05-27 14:53:32 +02:00
Martin Stein
95ece89cf8 tool/depot: improve handling of missing ports
* The extract tool determines and reports all missing ports at once.
* The extract tool automatically prepares all missing ports if PREPARE_PORTS=1.
* The missing_ports tool prints a list of missing ports for given archives.

Fixes #3353
2019-05-27 14:52:52 +02:00
Christian Prochaska
a5d6cbf44d tool_chain: strip gdb
Issue #3307
2019-05-27 14:52:52 +02:00
Stefan Kalkowski
f0d28eeca7 foc: add support for Raspberry Pi 3
Ref #3260
2019-05-27 14:52:51 +02:00
Stefan Kalkowski
71a48c0a26 base: add initial support for ARM 64-bit
Ref #3260
2019-05-27 14:52:51 +02:00
Christian Prochaska
74260c96bf tool_chain: integrate 'ali2dep' tool
Fixes #3361
2019-05-27 14:52:51 +02:00
Stefan Kalkowski
fc922d263c tool_chain: add aarch64 compiler target
Ref #3260
2019-05-27 14:52:51 +02:00
Sebastian Sumpf
36f90e57f3 riscv: tool chain 19.05
issue #3273
2019-05-27 14:52:51 +02:00
Christian Prochaska
1720d2d86d tool_chain: update GCC to version 8.3.0
Issue #3307
2019-05-27 14:46:54 +02:00
Christian Prochaska
96ed3c8db0 tool_chain: update binutils to version 2.32
Issue #3307
2019-05-27 14:46:54 +02:00
Emery Hemingway
863654d188 Libc: update port to Freebsd 12
Fix #3289
2019-05-27 14:46:53 +02:00
Stefan Kalkowski
a1e70b9ba4 kernel: differentiate board-specific components
Components like kernel, core, and bootstrap that are built for a
specific board need to reside inside the same architectural dependent
build directory. For instance there are sel4, foc, and hw kernel builds
for imx6q_sabrelite and imx7d_sabre, which have to reside inside the same
arm_v7 build directory.
This commit names those components explicitely, and adapts the run-tool to it.

Fix #3316
2019-05-27 14:46:52 +02:00
Stefan Kalkowski
c43267dbaa tool: deprecate board-specific build directories
* Introduces BOARD variable to determine actual board
* Removes formerly deprecated kernel-specific build directories

The following boards are available:

arm_v6: rpi
arm_v7a: arndale, imx53_qsb, imx53_qsb_tz, imx6q_sabrelite, imx7d_sabre,
         nit6_solox, odroid_x2, odroid_xu, panda, pbxa9, usb_armory,
         wand_quad, zynq_qemu
x86_64: pc, linux, muen
x86_32: pc, linux
riscv:  spike

Ref #3316
2019-05-27 14:46:29 +02:00
Christian Helmuth
3033496fa4 run: honor DEPOT_DIR for --depot-auto-update
Issue #3270
2019-05-16 13:11:02 +02:00
Stefan Kalkowski
c5fee20286 sel4: build elfloader on demand (fix #3329) 2019-05-16 13:11:01 +02:00
Stefan Kalkowski
817eb4f23c okl4: create elfweaver tools on demand (ref #3329) 2019-05-16 13:11:01 +02:00
Stefan Kalkowski
be053ed257 depot: add recipe for drivers_interactive-muen 2019-05-16 13:11:01 +02:00
Stefan Kalkowski
ae3a6fe270 depot: add recipe for drivers_nic-muen pkg 2019-05-16 13:11:01 +02:00
Stefan Kalkowski
e6f83d4df2 depot: add recipe for drivers_interactive-rpi
Ref #2190
2019-05-16 13:11:01 +02:00
Stefan Kalkowski
a623a66019 depot: add recipe for drivers_interactive-imx53_qsb
Ref #2190
2019-05-16 13:11:01 +02:00
Stefan Kalkowski
dcc28b65cb run: use driver_nic-* pkg where possible (fix #3180) 2019-05-16 13:10:06 +02:00
Stefan Kalkowski
089cb0f536 foc: change core link address for imx7d_sabre
Fix #3298
2019-05-06 16:15:26 +02:00
Stefan Kalkowski
e072ee480b depot: add recipe for base-hw-imx7d_sabre
Fix #3293
2019-05-06 16:15:26 +02:00
Stefan Kalkowski
eb933af40a depot: add recipe for base-foc-imx7d_sabre
Fix #3293
2019-05-06 16:15:26 +02:00
Stefan Kalkowski
6d0a271308 depot: add recipe for base-sel4-imx7d_sabre
Fix #3293
2019-05-06 16:15:26 +02:00
Stefan Kalkowski
4bcd9169c0 sel4: add timer for imx7d_sabre
Fix #3292
2019-05-06 16:15:26 +02:00
Christian Prochaska
ed246d152b tool_chain: build in <genode-dir>/build/tool_chain-<version>
Fixes #2608
2019-05-06 16:15:24 +02:00
Christian Helmuth
71a8dcca08 tool/depot: use nullglob on stale archive removal
nullglob is needed to get an empty shell glob in case no matching binary
archive (path) exists. Otherwise, the original glob string including the
* is returned and used in the for loop.
2019-04-09 12:30:35 +02:00
Norman Feske
a3411c8e96 run: add --depot-auto-update feature
If enabled, this option triggers the automated management of depot
content according to the needs of a run script.

Fixes #3270
2019-04-09 12:30:34 +02:00
Norman Feske
4b0b4928f5 tool/depot: rm binary archives if versions collide
This patch handles version collisions of binary archives. If a binary
archive for an (automatically) updated src-archive version already
exists in the depot, the extract tool removes the binary archive because
its existing content may stem from another src content (a version from a
different topic branch). This ensures that the new version is always
built, not skipped, when 'UPDATE_VERSIONS=1 REBUILD=' is specified.

Fixes #3267
2019-04-01 19:33:52 +02:00
Christian Prochaska
38de57be76 tool_chain: make sudo command configurable
Fixes #3255
2019-04-01 19:33:52 +02:00
Alexander Boettcher
ae31b761f4 hw: move vmm.run to vmm_arm.run
Issue #3111
2019-04-01 19:33:51 +02:00
Alexander Boettcher
f927684eb8 os: add vmm_x86 interface test
Issue #3111
2019-04-01 19:33:51 +02:00
Stefan Kalkowski
baf815d099 hw: add support for i.MX7 Dual SABRE board
Fix #3251
2019-04-01 19:33:49 +02:00
Stefan Kalkowski
4c492a3be7 imx7d_sabre: add board for sel4 and foc
Ref #3251
2019-04-01 19:33:49 +02:00
Stefan Kalkowski
3d727a403f sel4: update tools to currently used version 9.0.x
Until now, Genode referenced a fork of the outdated elfloader-tool
to enable bootstrapping of sel4 on ARM platforms. Because the
elfloader is inherently dependent on the used platforms newer
ARM versions supported by the kernel could not be loaded by the
outdated elfloader. This commit uses a fresh fork of the nowadays
used sel4_tools repository.

Ref #3251
2019-04-01 19:33:49 +02:00
Roman Iten
1caa2ff3cb prepare_port: fix race condition in safety rule
The safe guard Git repository in $(CONTRIB_DIR) may only be initialized
once, regardless of the number of ports to be prepared.

Issue #3235
2019-04-01 19:33:49 +02:00
Christian Helmuth
9debc0fa4b Mention sel4 kernel as option for imx6q_sabrelite 2019-04-01 19:33:48 +02:00
Martin Stein
3a59f11708 nic_router/nic_bridge: free MAC addresses
Free a MAC address of a session as soon as the session gets destructed.
Adds also according tests to the autopilot list.

Fixes #2470
2019-04-01 19:33:48 +02:00
Christian Helmuth
8c2235c9a7 depot: delete signature file if signing failed
In cases where the signing failed (maybe the passphrase for the key was
not available at this time), there remained an empty .sig file, which is
newer than the to-be-signed file and, therefore, prevents subsequent
signing processes.
2019-03-01 15:43:50 +01:00
Christian Helmuth
28c25f120e run: save [run_dir].config also on hw and linux
This was missing as boot_dir/hw and boot_dir/linux do not use
`proc build_core_image`.
2019-02-28 11:34:07 +01:00
Norman Feske
1b518965cc depot/sculpt: support for index files
The input for the pkg index is located at gems/run/sculpt/index.

The sculpt.run script uses this input for generating the depot index
file at depot/<user>/index/<version>.

The tool/depot/publish tool support arguments of the form
<user>/index/<version> where <version> corresponds to the Sculpt
version.

Issue #3172
2019-02-28 11:34:06 +01:00
Norman Feske
1d0a1e7937 depot/extract: feed file names into version hash
Fixes #3178
2019-02-26 14:47:02 +01:00
Stefan Kalkowski
55b0dff795 hw: add board support for Nitrogen6 SoloX 2019-02-26 14:45:31 +01:00
Christian Helmuth
abdd1d7715 Adapt network run scripts for recent Qemu (3.1)
-netdev and -device should work with Qemu versions >= 2.5 at least but
3.0 dropped support for legacy -net completely.
2019-02-19 11:12:10 +01:00
Stefan Kalkowski
328c1ad96e foc: prevent region overlap on i.MX6 Sabrelite 2019-02-19 11:08:17 +01:00
Alexander Boettcher
6bb145bdd8 Remove virtualbox 4 vmm
Fixes #3141
2019-02-19 11:08:17 +01:00
Christian Prochaska
87d526968c usb_hid: test both USB host drivers
Fixes #3152
2019-02-19 11:08:17 +01:00
Josef Söntgen
1c0541e7cb run: add power cycle procedure
The 'run_genode_until' procedure only called 'run_power_on' to reset
the target machine. That works will with the softreset module, which
is used by all x86-based test system but falls short regarding ARM
boards. The way those boards are connected requires turning the power
off and on for a complete cycle.
2019-02-12 10:33:15 +01:00
Emery Hemingway
f529871162 Add [depot_user] to run tool builtins
Now that the depot_user procedure has found use in the depot_autopilot
it has become a convention.

Fix #3127
2019-01-30 13:49:55 +01:00
Norman Feske
7b37546a4d tool/abi_symbols: omit known internal symbols
This patch prevents the abi_symbols tool from generating symbols that
are known to occur in shared objects but must not be part of a library
ABI. This saves a bit of time during library-porting work.

However, to avoid the accidental use of ABI symbol definitions that lack
any form of manual curation, the abi_symbols tool outputs a special
message, which is explicitly checked-for by the check_abi tool.

Fixes #3112
2019-01-30 13:35:29 +01:00
Stefan Kalkowski
5b8e1cdbbb foc: add recipe for imx6q_sabrelite base lib 2019-01-30 13:35:28 +01:00
Stefan Kalkowski
b765cef359 replace Wandboard by i.MX6 reference board
Instead of using the Wandboard Quad, the reference hardware from NXP
i.MX6 Quad Sabrelite will be used by Fiasco.OC, sel4 and hw by default.
2019-01-30 13:35:28 +01:00
Stefan Kalkowski
c65860ee53 enable i.MX6 Quad Sabrelite board for hw and foc 2019-01-30 13:35:28 +01:00
Christian Helmuth
9dfad6d9da run: plugin for Allnet MSR powerplug
The plugin was tested with ALL4176 but should support all modern Allnet
MSR devices according to the documentation

  https://service.allnet.de/image-ftp/ftp/pub/allnet/MSR/JSON/JSON_MSR.zip

It works just like the existing powerplug plugins by

  RUN_OPT += --include power_on/allnet --include power_off/allnet

and uses the following parameters

  --power-on-allnet-host        network address of device
  --power-on-allnet-user        user for device
  --power-on-allnet-password    password for device
  --power-on-allnet-port        target port/socket of device
  --power-off-allnet-host       network address of device
  --power-off-allnet-user       user for device
  --power-off-allnet-password   password for device
  --power-off-allnet-port       target port/socket of device
2019-01-14 12:34:41 +01:00
Christian Helmuth
56650e7f79 depot: prevent warning with newer GPG versions
gpg: WARNING: no command supplied.  Trying to guess what you mean ...
2019-01-07 12:33:56 +01:00
Norman Feske
89935e7308 gems: add pkg/drivers_nic-pc 2019-01-07 12:33:55 +01:00
Christian Helmuth
0dc4335fbc run: fix custom image disk size calculation 2019-01-07 12:33:53 +01:00
Martin Stein
7ad00d1152 base-hw/recipes: src/base-hw-muen 2019-01-07 12:25:46 +01:00
Stefan Kalkowski
1d0e063f49 base-sel4: recipe for Wandboard platform
* Allow depot_autopilot to be run on top of sel4/wand_quad too (Ref #3027)
2019-01-07 12:25:44 +01:00
Stefan Kalkowski
6fb9c802d3 depot: enable package building for armv6
* Allow depot_autopilot to be run on top of arm_v6 too (Ref #3027)
2019-01-07 12:25:43 +01:00
Stefan Kalkowski
42c5f2e91e hw: add src package for base-hw-zynq_qemu
* Needed for nightly depot_autopilot tests (Ref #3027)
2019-01-07 12:25:43 +01:00
Emery Hemingway
8cb8082206 Remove Nim support from toolchain
Nim components are best build externally using the Nimble tools and a
Genode SDK.

See https://github.com/ehmry/nim-genode

Fix #2949
2019-01-07 12:25:42 +01:00
Stefan Kalkowski
d7fa4cfb8b hw: enable eager FPU context switch for ARM
* Add an ieee754 FPU test
* Remove simple fpu test

Fix #2822
2018-11-29 11:54:31 +01:00
Martin Stein
89020bc3c0 depot_autopilot: move RTC test to autopilot.list 2018-11-29 11:54:30 +01:00
Alexander Boettcher
9f4801363c tool: use static analyzer with depot creation tool
Convince wrapper to make static analyzer working with tool/depot/* tools.

Issue #3022
2018-11-29 11:46:02 +01:00
Alexander Boettcher
8199b3e685 tool: support static clang analyzer in build.mk
Issue #3022
2018-11-29 11:46:02 +01:00
Emery Hemingway
918281b01f Genode SDK
Makefile for generating a Genode SDK.

Fix #2948
2018-11-29 11:46:02 +01:00
Christian Prochaska
651d9f587f depot.inc: 'append_src_and_api_depot_packages_to_tar' function
This function adds the src and api depot packages for the given pkg or src
packages to the given tar archive.

Issue #3048
2018-11-29 11:46:01 +01:00
Stefan Kalkowski
36fe50ebad base: unify mp_server and affinity test
* remove outdated cpufreq test for Arndale
* execute new SMP test on hardware not in Qemu in nightly tests

Ref #3041
2018-11-27 11:36:35 +01:00
Martin Stein
2d041ac0fc depot_autopilot: evaluate sets of test packages 2018-11-16 15:07:53 +01:00
Emery Hemingway
bc539ce892 Native Solo5 bindings
A shared library implementation of the unikernel middleware.

https://github.com/Solo5/solo5

Fix #2945
2018-11-16 15:07:52 +01:00
Martin Stein
a1ff3cc317 base-foc: recipes for ARMv7a platforms
* In base-foc/recipes/src/ replace base-foc with base-foc-pc
* To base-foc/recipes/src add base-foc-arndale, base-foc-pbxa9
* Ensure that the correct base-foc recipe is choosen by the run module
  'boot_dir/foc'
2018-11-16 14:37:47 +01:00
Martin Stein
655fbbd984 base-hw: recipes for ARMv7a platforms
* To base-hw/recipes/src add base-hw-arndale, base-hw-imx53_qsb,
  base-hw-imx53_qsb_tz, base-hw-odroid_xu, base-hw-panda, base-hw-rpi,
  base-hw-wand_quad
* Ensure that the correct base-hw recipe is choosen by the run module
  'boot_dir/hw'
2018-11-16 14:37:20 +01:00