Thanks Alex. it works now :D
I got this at the end:
162/162 tests passed.
All is well in the universe.
Ignoring call to sys_exit_group
Ignoring call to sys_rt_sigprocmask
Ignoring call to sys_gettid
sys_tkill assuming self kill
so the only difference between "build the kernel with debug support" and
"release build" is user space apps use the kernel's serial driver?
And can you point me to the code for user app's serial driver?
Best,
Oak
On Sun, Apr 17, 2016 at 6:32 PM, Alexander Kroh wrote: Hi Oak, Forgive me for making assumptions about your experience. It looks like the XU4 SoC (5422) is very similar to the XU (5410). The
seL4 serial port drivers should be compatible. This is also supported by
the fact that the elfloader seems to be able to use the XU serial driver
successfully. The garbage that you see is generally caused by a bad pointer (sending
random data to the serial driver) or the result of improper baud rate
configuration in the serial port driver. The elf loader and kernel (when
built in debug mode) rely on u-boot for serial port initialisation and baud
rate configuration, however, the user space driver does not. The user space
driver makes no assumption about the initial state of the serial port and
will attempt to (re)configure the baud rate. Unfortunately, the serial
driver does make assumptions about other system components such as the
frequency of the clock that drives the serial port. The frequency of this
clock can vary between SoC and also between U-Boot versions. The easiest way forward for you is to ensure that the kernel is being
built in debug mode. This will result in the kernel serial driver being
used for user space applications. The kernel serial driver does not
reconfigure the baud rate:
Run "make menuconfig"
Navigate to -> seL4 Kernel -> Build Options
Choose "Build type" and select "Build the kernel with debug support"
Navigate back to the main menu and then -> seL4 Libraries ->
libsel4platsupport
Select "Redirect putchar() to seL4_DebugPutchar()"
Run "make" Let me know how you go - AlexK ________________________________________
From: Norrathep Rattanavipanon [nrattana@uci.edu]
Sent: Friday, 15 April 2016 13:55
To: Alexander Kroh
Cc: devel@sel4.systems; GTS; El Defrawy, Karim M
Subject: Re: [seL4] Problem porting sel4 into XU4 Hi Alex, Thanks for your reply. I'm not really familiar with serial port. How can I
tell if the config in
https://github.com/seL4/seL4/blob/master/src/plat/exynos_common/io.c
needs changes? This is the serial cable I'm using: http://odroid.com/dokuwiki/lib/exe/fetch.php?cache=&media=en:others:usb_uart_for_odroid.png
http://odroid.com/dokuwiki/doku.php?id=en:usb_uart_kit Best,
Oak On Thu, Apr 14, 2016 at 5:23 PM, Alexander Kroh <
Alexander.Kroh@nicta.com.aumailto:Alexander.Kroh@nicta.com.au> wrote:
Hi Oak, Assuming that you are building a debug version of the kernel, the next
line that should be printed is "Bootstrapping kernel". Are any changes required for the serial port driver?
https://github.com/seL4/seL4/blob/master/src/plat/exynos_common/io.c - Alex ________________________________________
From: Devel [devel-bounces@sel4.systems] on behalf of Norrathep
Rattanavipanon [nrattana@uci.edumailto:nrattana@uci.edu]
Sent: Friday, 15 April 2016 04:39
To: devel@sel4.systems
Cc: GTS; El Defrawy, Karim M
Subject: [seL4] Problem porting sel4 into XU4 Hi, I'm trying to port sel4 into ODROID-XU4 by following the wiki (
https://wiki.sel4.systems/Hardware/odriod-XU). So far I can successfully enable HYP mode as indicated by
[ 0.198398] [c0] CPU: All CPU(s) started in HYP mode.
[ 0.198433] [c0] CPU: Virtualization extensions available. as well as generate sel4test-driver-image-arm-exynos5 image. However, we cant do fastboot in XU4 since it doesnt have usb otg.
Thus, I followed booting from sd card from
https://wiki.sel4.systems/Hardware/General-ARM and copied the image into
the first partition of sd card and do the following: Exynos5422 # fatload mmc 0 0x48000000 sel4test-driver-image-arm-exynos5
Exynos5422 # bootelf 0x48000000 and here's the output: ## Starting application at 0x41000000 ... ELF-loader started on CPU: ARM Ltd. Cortex-A7 r0p3 Switching CPU... ELF-loader started on CPU: ARM Ltd. Cortex-A15 r2p3
paddr=[41000000..4126401f]
ELF-loading image 'kernel'
paddr=[40000000..4002dfff]
vaddr=[e0000000..e002dfff]
virt_entry=e0000000
ELF-loading image 'sel4test-driver'
paddr=[4002e000..40388fff]
vaddr=[8000..362fff]
virt_entry=13868
Enabling hypervisor MMU and paging
Enabling MMU and paging
Jumping to kernel-image entry point... �⧹I� AIq9 Fy 6 1)�a &I99)� 6� Yq��摦P�^б�� F��^/A�yyyyyyyyy
�Y �)aay ���XY�ǡ yQ) �q��O�a@ Ia)! Fy aay �) ��XY������
��.6I�) & FvF�6fF�����VƑ�y� �P�)aay ���XY�ǡ yQ) �q��O�a@ Ia Is it expected? or am I doing something wrong? Any help would be
appreciated. Best, --
Norrathep (Oak) Rattanavipanon
M.S. in Computer Science
University of California - Irvine ________________________________ The information in this e-mail may be confidential and subject to legal
professional privilege and/or copyright. National ICT Australia Limited
accepts no liability for any damage caused by this email or its attachments. --
Norrathep (Oak) Rattanavipanon
M.S. in Computer Science
University of California - Irvine --
Norrathep (Oak) Rattanavipanon
M.S. in Computer Science
University of California - Irvine