How to use console line on linux? and l4android?
Stefan Kalkowski
stefan.kalkowski at ...1...
Wed May 22 11:50:49 CEST 2013
Hi,
it's me again.
I've found the problem related to the current master branch. It was just
a missing config entry for the usb driver. One has to define in the
configuration of the driver, which USB host controller will be used, and
enabled. After tweaking the configuration like that, I could use your
script draft, and boot L4android. The double quoting is no issue for me.
Possibly, you can update to Genode's current master branch, do a 'make
prepare' at least in base-foc, and ports-foc, and try the attached run
script in a fresh build directory?
Regards
Stefan
On 05/22/2013 11:02 AM, Stefan Kalkowski wrote:
> Hi,
>
> On 05/16/2013 02:27 PM, longjks wrote:
>> hi
>> At 2013-05-15 17:48:26,"Stefan Kalkowski" <stefan.kalkowski at ...1...> wrote:
>>
>>> Without having your complete run-script, it's just guessing: One problem
>>> to me seems your configuration of the KDB uart driver. Why do you define
>>> two different clients, and why do they use uart device #1?
>>> Would you please change the configuration to something like this:
>>>
>>> <start name="uart_drv">
>>> <binary name="kdb_uart_drv"/>
>>> <resource name="RAM" quantum="1M"/>
>>> <provides>
>>> <service name="Uart"/>
>>> <service name="Terminal"/>
>>> </provides>
>>> <config>
>>> <policy label="terminal_mux" uart="0" detect_size="yes"/>
>>> </config>
>>> <route> <any-service> <parent/> </any-service> </route>
>>> </start>
>>>
>>> If the double quoting of letters remain, please post your complete
>>> run-script, so that one can reproduce your problem.
>>
>> Sorry for the run script error. I have put the right complete run-script in the attachment.
>>
>> With this run-script in the attachment, the double quoting of letters remain.
>
> ok, thank you for providing the script. I fear there are some general
> problems with running L4Linux on the Pandaboard with Genode's current
> master branch. When trying to use your script it hangs after reading the
> first blocks from sd-card. I'll investigate that problem.
> Nevertheless, I assume the double quoting problem might be related to a
> slightly outdated version of the Fiasco.OC kernel. For the KDB uart
> driver to work properly, the kernel was tweaked a bit to omit echoing
> characters given to serial line:
>
>
> https://github.com/ssumpf/foc/commit/1d8bc40fd966f794c4ff3017265f80cb0032b433
>
> To have the right Fiasco.OC version in place, please do a 'make prepare'
> in the 'base-foc' directory. After that, better do a 'make cleanall' in
> your build directory
>
>>
>>> Well, this is something related to the shell you're using (I assume the
>>> Android debug shell) only. Would you please be appreciative of us not
>>> discussing such items on the mailing list, first and foremost related to
>>> Genode issues?
>> Sorry for that, I will check the shell and only discuss issues related to Genode....
>
> No problem.
>
>>
>> Have a nice day
>
> Have a nice day too
>
>>
>>
>>
>>
>>
>>
>> ------------------------------------------------------------------------------
>> AlienVault Unified Security Management (USM) platform delivers complete
>> security visibility with the essential security capabilities. Easily and
>> efficiently configure, manage, and operate all of your security controls
>> from a single console and one unified framework. Download a free trial.
>> http://p.sf.net/sfu/alienvault_d2d
>>
>>
>>
>> _______________________________________________
>> Genode-main mailing list
>> Genode-main at lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/genode-main
>>
>
--
Stefan Kalkowski
Genode Labs
http://www.genode-labs.com/ ยท http://genode.org/
-------------- next part --------------
#
# Build
#
if {[have_spec foc] == 0} {
puts "Runs on Fiasco.OC only"
exit 0
}
# generic components
set build_components {
core
init
drivers/timer
drivers/framebuffer
drivers/sd_card
drivers/usb
drivers/uart
server/nitpicker
server/nit_fb
server/part_blk
server/terminal
server/terminal_log
server/nic_bridge
l4android
}
lappend_if [have_spec x86] build_components drivers/nic
lappend_if [have_spec x86] build_components drivers/atapi
lappend_if [have_spec pl180] build_components drivers/sd_card
lappend_if [have_spec lan9118] build_components drivers/nic/lan9118
lappend_if [have_spec pci] build_components drivers/pci
lappend_if [have_spec ps2] build_components drivers/input/ps2
build $build_components
create_boot_directory
#
# Config
#
set config {
<config prio_levels="2" verbose="yes">
<parent-provides>
<service name="ROM"/>
<service name="RAM"/>
<service name="IRQ"/>
<service name="IO_MEM"/>
<service name="IO_PORT"/>
<service name="CAP"/>
<service name="PD"/>
<service name="RM"/>
<service name="CPU"/>
<service name="LOG"/>
<service name="SIGNAL"/>
</parent-provides>
<default-route>
<any-service> <parent/> <any-child/> </any-service>
</default-route>
<start name="timer">
<resource name="RAM" quantum="1M"/>
<provides><service name="Timer"/></provides>
</start>
<start name="fb_drv">
<resource name="RAM" quantum="4M"/>
<provides><service name="Framebuffer"/></provides>
</start>
<start name="usb_drv">
<resource name="RAM" quantum="12M"/>
<provides>
<service name="Input"/>
<service name="Nic"/>
<service name="Block"/>
</provides>
<config ehci="yes">
<hid/>
<nic mac="2e:60:90:0c:4e:02" />
</config>
</start>
<start name="sd_card_drv">
<resource name="RAM" quantum="4M"/>
<provides><service name="Block"/></provides>
</start>
<start name="part_blk">
<resource name="RAM" quantum="2M"/>
<provides><service name="Block"/></provides>
<config>
<policy label="l4android -> sda" partition="2" />
</config>
<route>
<service name="Block"> <child name="sd_card_drv"/> </service>
<any-service> <parent/> <any-child/> </any-service>
</route>
</start>
<start name="nic_bridge">
<resource name="RAM" quantum="2M"/>
<provides><service name="Nic"/></provides>
<route>
<service name="Nic"> <child name="usb_drv"/> </service>
<any-service> <parent/> <any-child/> </any-service>
</route>
</start>
<start name="nitpicker">
<resource name="RAM" quantum="2M"/>
<provides><service name="Nitpicker"/></provides>
<route>
<service name="Input"> <child name="usb_drv"/> </service>
<service name="Framebuffer"> <child name="fb_drv"/> </service>
<any-service> <parent/> <any-child/> </any-service>
</route>
</start>
<start name="uart_drv">
<binary name="kdb_uart_drv"/>
<resource name="RAM" quantum="1M"/>
<provides>
<service name="Uart"/>
<service name="Terminal"/>
</provides>
<config>
<policy label="l4android" uart="0"/>
</config>
</start>
<start name="android_fb">
<binary name="nit_fb"/>
<resource name="RAM" quantum="4M"/>
<provides>
<service name="Framebuffer"/>
<service name="Input"/>
</provides>
<config xpos="0" ypos="0" width="640" height="480" refresh_rate="25"/>
</start>
<start name="android_term_fb">
<binary name="nit_fb"/>
<resource name="RAM" quantum="4M"/>
<provides>
<service name="Framebuffer"/>
<service name="Input"/>
</provides>
<config xpos="642" ypos="0" width="380" height="480" refresh_rate="25"/>
</start>
<start name="log_term_fb">
<binary name="nit_fb"/>
<resource name="RAM" quantum="4M"/>
<provides>
<service name="Framebuffer"/>
<service name="Input"/>
</provides>
<config xpos="0" ypos="482" width="1024" height="268" refresh_rate="25"/>
</start>
<start name="android_term">
<binary name="terminal"/>
<resource name="RAM" quantum="1M"/>
<provides><service name="Terminal"/></provides>
<route>
<service name="Input"> <child name="android_term_fb"/> </service>
<service name="Framebuffer"> <child name="android_term_fb"/> </service>
<any-service> <parent/> <any-child/> </any-service>
</route>
</start>
<start name="log_term">
<binary name="terminal"/>
<resource name="RAM" quantum="1M"/>
<provides><service name="Terminal"/></provides>
<route>
<service name="Input"> <child name="log_term_fb"/> </service>
<service name="Framebuffer"> <child name="log_term_fb"/> </service>
<any-service> <parent/> <any-child/> </any-service>
</route>
</start>
<start name="terminal_log">
<resource name="RAM" quantum="1M"/>
<provides><service name="LOG"/></provides>
<route>
<service name="Terminal"> <child name="log_term"/> </service>
<any-service> <parent/> <any-child/> </any-service>
</route>
</start>
<start name="l4android">
<resource name="RAM" quantum="512M"/>
<config args="mem=128M console=ttyS0 l4x_rd=root-ginger.gz">
<block label="sda"/>
</config>
<route>
<service name="Input"> <child name="android_fb"/> </service>
<service name="Framebuffer"> <child name="android_fb"/> </service>
<service name="Terminal"> <child name="uart_drv"/> </service>
<service name="Block"> <child name="part_blk"/> </service>
<service name="Nic"> <child name="nic_bridge"/> </service>
<any-service> <parent/> <any-child/> </any-service>
</route>
</start>
</config>
}
install_config $config
#
# Boot modules
#
set boot_modules {
core
init
timer
fb_drv
sd_card_drv
usb_drv
kdb_uart_drv
nic_bridge
nitpicker
nit_fb
part_blk
terminal
terminal_log
l4android
root-ginger.gz
}
build_boot_image [join $boot_modules " "]
append qemu_args " -m 512 "
append qemu_args " -serial mon:stdio "
append_if [have_spec x86] qemu_args " -hda bin/system-ginger.img "
append_if [have_spec x86] qemu_args " -net nic,model=e1000 "
append_if [have_spec pl180] qemu_args " -drive file=bin/system-ginger.img,if=sd,cache=writeback "
append_if [have_spec lan9118] qemu_args " -net nic,model=lan9118 "
append qemu_args " -net user -redir tcp:5555::5555 "
run_genode_until forever
More information about the users
mailing list