Re: Nova without Bender

2017-08-04 Thread Norman Feske
Hello Johannes,

> On 03.08.2017 13:11, Johannes Kliemann wrote:
>> I tried to use Nova without Bender with Multiboot2. Basically it
>> works, but when I omit Bender, there's no serial output from either
>> Nova or Genode. I couldn't find out what Bender does different to
>> enable serial on Nova.

let me just add to Alex' reply that you can find the role of Bender
described in Section 7.8.3. "Log output on modern PC hardware" in the
Genode-Foundations document [1].

[1] http://genode.org/documentation/genode-foundations-17-05.pdf

Cheers
Norman

-- 
Dr.-Ing. Norman Feske
Genode Labs

http://www.genode-labs.com · http://genode.org

Genode Labs GmbH · Amtsgericht Dresden · HRB 28424 · Sitz Dresden
Geschäftsführer: Dr.-Ing. Norman Feske, Christian Helmuth

--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Re: Nova without Bender

2017-08-04 Thread Alexander Boettcher
Hi,

On 03.08.2017 13:11, Johannes Kliemann wrote:
> I tried to use Nova without Bender with Multiboot2. Basically it works,
> but when I omit Bender, there's no serial output from either Nova or
> Genode. I couldn't find out what Bender does different to enable serial
> on Nova.

the task of Bender is to relocate modules to higher physical memory and
to detect PCI serial cards and determine the I/O ports to use them
actually. Bender writes this information to a area called Bios Data Area
(BDA).

The NOVA microhypervisor and 'core' of Genode look into this area and
use the information obtained from there to program and to drive the
UART/serial device.

By removing Bender, you effectively have no valid information in the BDA
anymore, and so you don't get any serial output.

> What is missing to enable serial on Nova alone?

If you don't want to use Bender, but want to have serial output, then
you have to hardcode the I/O ports for your target machine specifically
in the sources of NOVA and 'core', see [0] and [1].

[0] https://github.com/alex-ab/NOVA/blob/r9/src/console_serial.cpp#L35
[1]
https://github.com/genodelabs/genode/blob/master/repos/base-nova/src/core/core_log.cc#L25

> PS: It also seems that Benders Multiboot2-header [1] is not
> specification conform. The tags type and flags are defined as double
> word but according to the specification [2] these are u16 so this should
> be a word only.

You're right, I'm going to change it. Thanks!

Cheers,

Alex.

-- 
Alexander Boettcher
Genode Labs

http://www.genode-labs.com - http://www.genode.org

Genode Labs GmbH - Amtsgericht Dresden - HRB 28424 - Sitz Dresden
Geschäftsführer: Dr.-Ing. Norman Feske, Christian Helmuth

--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


Nova without Bender

2017-08-03 Thread Johannes Kliemann
Hi,

I tried to use Nova without Bender with Multiboot2. Basically it works,
but when I omit Bender, there's no serial output from either Nova or
Genode. I couldn't find out what Bender does different to enable serial
on Nova.

My grub2.cfg looks as follows:

> set timeout=5
> serial --unit=0 --speed=115200
> terminal_output serial console
> terminal_input serial console
> menuentry 'Genode on NOVA' {
>  multiboot2 /hypervisor hypervisor iommu serial novpid novga
>  module2 /image.elf image.elf
> }

What is missing to enable serial on Nova alone?

Regards,
Johannes

PS: It also seems that Benders Multiboot2-header [1] is not
specification conform. The tags type and flags are defined as double
word but according to the specification [2] these are u16 so this should
be a word only.

[1]:
https://github.com/alex-ab/morbo/blob/genode_bender/standalone/start.asm#L15
[2]: http://nongnu.askapache.com/grub/phcoder/multiboot.pdf

--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main