Hallo Christian,
thank you for testing. This is "my procedure":
### Installation RTEMS6 / EPICS7 (xilinx_zynq_a9_qemu)
Installation RTEMS6 and EPICS 7 incl. rtems tools, kernel, bsp and
libbsd
ubuntu 20.04.1
---
**Installing rtems source builder and build rtems-powerpc tools**
mkdir QEMU
cd QEMU
git clone https://github.com/RTEMS/rtems-source-builder.git rsb
cd rsb
git checkout master
git pull
cd rtems
../source-builder/sb-set-builder --prefix=$HOME/QEMU/rtems/6
6/rtems-arm
RTEMS Source Builder - Set Builder, 6 (61dcadee0825)
Command Line: ../source-builder/sb-set-builder
--prefix=/home/junkes/QEMU/rtems/6 6/rtems-arm
Python: 2.7.18 (default, Aug 4 2020, 11:16:42) [GCC 9.3.0]
Build Set: 6/rtems-arm
Build Set: 6/rtems-autotools.bset
Build Set: 6/rtems-autotools-internal.bset
config: tools/rtems-autoconf-2.69-1.cfg
package: autoconf-2.69-x86_64-linux-gnu-1
script: 1: #!/bin/sh
script: 2: # ___build_pre as set up in defaults.py
script: 3: # Save the original path away.
script: 4: export SB_ORIG_PATH=${PATH}
script: 5: # Directories
script: 6: SB_PREFIX="/home/junkes/QEMU/rtems/6"
script: 7: SB_PREFIX_CLEAN=$(echo "/home/junkes/QEMU/rtems/6" |
/bin/sed -e 's/^\///')
script: 8: SB_SOURCE_DIR="/home/junkes/QEMU/rsb/rtems/sources"
script: 9:
SB_BUILD_DIR="/home/junkes/QEMU/rsb/rtems/build/autoconf-2.69-x86_64-linux-gnu-1"
script: 10: # host == build, use build; host != build, host uses host
and build uses build
...
...
installing: expat-2.1.0-x86_64-linux-gnu-1 -> /home/junkes/QEMU/rtems/6
installing: gmp-6.1.0-x86_64-linux-gnu-1 -> /home/junkes/QEMU/rtems/6
installing: arm-rtems6-gdb-e1a808d-x86_64-linux-gnu-1 ->
/home/junkes/QEMU/rtems/6
installing: arm-rtems6-binutils-c0034ac-x86_64-linux-gnu-1 ->
/home/junkes/QEMU/rtems/6
installing: arm-rtems6-gcc-eb15f76-newlib-d4a756f-x86_64-linux-gnu-1 ->
/home/junkes/QEMU/rtems/6
installing: rtems-tools-90342feb4dd63d188ce945adfb0a7694a42a65cd-1 ->
/home/junkes/QEMU/rtems/6
cleaning: expat-2.1.0-x86_64-linux-gnu-1
cleaning: gmp-6.1.0-x86_64-linux-gnu-1
cleaning: arm-rtems6-gdb-e1a808d-x86_64-linux-gnu-1
cleaning: arm-rtems6-binutils-c0034ac-x86_64-linux-gnu-1
cleaning: arm-rtems6-gcc-eb15f76-newlib-d4a756f-x86_64-linux-gnu-1
cleaning: rtems-tools-90342feb4dd63d188ce945adfb0a7694a42a65cd-1
Build Sizes: usage: 9.360GB total: 2.750GB (sources: 796.541MB, patches:
66.634KB, installed 1.972GB)
installing: 6/rtems-arm -> /home/junkes/QEMU/rtems/6
clean staging: 6/rtems-arm
Staging Size: 5.291MB
Build Set: Time 0:34:44.211033
Build qemu-server:
../source-builder/sb-set-builder --prefix=/home/junkes/QEMU/rtems/6
devel/qemu.bset
Add to $HOME/.bashrc:
#RTEMS development
export RTEMS_VERSION=6
export RTEMS_ARCH=arm-rtems${RTEMS_VERSION}
export RTEMS_BSP=xilinx_zynq_a9_qemu
export RTEMS_ROOT=${HOME}/QEMU/rtems/${RTEMS_VERSION}
export PATH=${RTEMS_ROOT}/bin:${PATH}
export RTEMS_MAKEFILE_PATH=${RTEMS_ROOT}/${RTEMS_ARCH}/${RTEMS_BSP}
export RTEMS_SHARE_PATH=${RTEMS_ROOT}/share/rtems${RTEMS_VERSION}
**Installing rtems kernel and bootstrap**
cd; cd QEMU
git clone https://github.com/RTEMS/rtems.git kernel
cd kernel;
git checkout master
git pull
./bootstrap -c && ./rtems-bootstrap
output:
removing automake generated Makefile.in files
removing configure files
removing aclocal.m4 files
RTEMS Bootstrap, 1.0
1/119: autoreconf: configure.ac
2/119: autoreconf: testsuites/configure.ac
3/119: autoreconf: testsuites/smptests/configure.ac
4/119: autoreconf: testsuites/fstests/configure.ac
5/119: autoreconf: testsuites/ada/configure.ac
6/119: autoreconf: testsuites/benchmarks/configure.ac
7/119: autoreconf: testsuites/libtests/configure.ac
8/119: autoreconf: testsuites/rhealstone/configure.ac
9/119: autoreconf: testsuites/psxtests/configure.ac
10/119: autoreconf: testsuites/psxtmtests/configure.ac
11/119: autoreconf: testsuites/sptests/configure.ac
12/119: autoreconf: testsuites/mptests/configure.ac
13/119: autoreconf: testsuites/samples/configure.ac
14/119: autoreconf: testsuites/tmtests/configure.ac
15/119: autoreconf: c/configure.ac
...
110/119: autoreconf: c/src/lib/libbsp/powerpc/mvme3100/configure.ac
111/119: autoreconf: c/src/lib/libbsp/powerpc/haleakala/configure.ac
112/119: autoreconf:
c/src/lib/libbsp/powerpc/mpc8260ads/configure.ac
113/119: autoreconf:
c/src/lib/libbsp/powerpc/mpc55xxevb/configure.ac
114/119: autoreconf: c/src/lib/libbsp/powerpc/qoriq/configure.ac
115/119: autoreconf: c/src/lib/libbsp/powerpc/gen5200/configure.ac
116/119: autoreconf: c/src/lib/libbsp/powerpc/qemuppc/configure.ac
117/119: autoreconf: c/src/lib/libbsp/powerpc/virtex/configure.ac
118/119: autoreconf: c/src/lib/libbsp/powerpc/virtex4/configure.ac
119/119: autoreconf: cpukit/configure.ac
Bootstrap time: 0:00:27.754820
cd; cd QEMU
mkdir -p build/b-xilinx_zynq_a9_qemu/
cd build/b-xilinx_zynq_a9_qemu/
../../kernel/configure --prefix=$HOME/QEMU/rtems/6
--target=arm-rtems6 --enable-rtemsbsp=xilinx_zynq_a9_qemu --enable-posix
--enable-c++ --disable-networking --enable-tests
config.log:
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
It was created by rtems configure 6.0.0, which was
generated by GNU Autoconf 2.69. Invocation command line was
$ ../../kernel/configure --prefix=/home/junkes/QEMU/rtems/6
--target=arm-rtems6 --enable-rtemsbsp=xilinx_zynq_a9_qemu --enable-posix
--enable
-c++ --disable-networking --enable-tests
## --------- ##
## Platform. ##
## --------- ##
hostname = Krikkit
uname -m = x86_64
uname -r = 5.8.0-43-generic
uname -s = Linux
uname -v = #49~20.04.1-Ubuntu SMP Fri Feb 5 09:57:56 UTC 2021
/usr/bin/uname -p = x86_64
/bin/uname -X = unknown
...
make -j17 all
make install
rtems-libbsd
cd;cd QEMU
cd rtems-libbsd
git remote -v
origin https://github.com/RTEMS/rtems-libbsd.git (fetch)
origin https://github.com/RTEMS/rtems-libbsd.git (push)
git checkout master
git pull
git checkout 6-freebsd-12
git submodule init
git submodule update rtems_waf
./waf configure --prefix=$HOME/QEMU/rtems/6
--rtems-bsps=arm/xilinx_zynq_a9_qemu --buildset=buildset/default.ini
./waf
./waf install
qemu-testing:
no ouptut and must be killed by other terminal:
$ qemu-system-arm -no-reboot -serial null -serial mon:stdio -net none
-nographic -M xilinx-zynq-a9 -m 256M -kernel
arm-rtems6/c/xilinx_zynq_a9_qemu/testsuites/samples/hello.exe
qemu-system-arm: warning: nic cadence_gem.0 has no peer
qemu-system-arm: warning: nic cadence_gem.1 has no peer
On 2021-02-18 21:10, Christian Mauderer wrote:
Hello Heinz,
Odd. I just tested it with the current master of rtems, libbsd, rtems
source builder and qemu and it worked fine. The only thing that I had
to change compared to your command was adding the "-serial null"
before the second "-serial mon:stdio". Note that it's "null" and not
"none" like for network. I made that mistake when trying to adapt your
command line the first time and received no output.
Beneath that I have an
export QEMU_AUDIO_DRV=none
in my script that starts qemu. I'm not sure why and it seems that it
is no longer necessary. But maybe you want to try it.
If both don't help:
Which version of rtems are you using and how do you configure your
BSP? Which version of qemu are you using?
On 18/02/2021 18:21, Heinz Junkes wrote:
Thanks, unfortunately I also have the same behavior with -serial null
-serial on:stdio.
So I use it with RTEMS5 which worked so far.
I had found this in the mail list and tried it ;-)
The patch below seems to be for the xilinx_zynqmp* BSP and not for the
xilinx_zynq_a9_qemu.
Best regards
Christian
Heinz
Qemu's machine definition uses the second UART in the memory map as
the
primary UART. This follows from the hardware itself where the second
UART in the memory map is UART 0. This switches the tester to using
the
correct UART.
---
tester/rtems/testing/bsps/xilinx_zynqmp_ilp32.ini | 2 +-
tester/rtems/testing/bsps/xilinx_zynqmp_lp64.ini | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/tester/rtems/testing/bsps/xilinx_zynqmp_ilp32.ini
b/tester/rtems/testing/bsps/xilinx_zynqmp_ilp32.ini
index 5ff0e86..35869ed 100644
--- a/tester/rtems/testing/bsps/xilinx_zynqmp_ilp32.ini
+++ b/tester/rtems/testing/bsps/xilinx_zynqmp_ilp32.ini
@@ -35,4 +35,4 @@
bsp = xilinx_zynqmp_ilp32
arch = aarch64
tester = %{_rtscripts}/qemu.cfg
-bsp_qemu_opts = %{qemu_opts_base} -serial null -serial mon:stdio
-machine xlnx-zcu102 -m 4096
+bsp_qemu_opts = %{qemu_opts_base} -serial mon:stdio -machine
xlnx-zcu102 -m 4096
diff --git a/tester/rtems/testing/bsps/xilinx_zynqmp_lp64.ini
b/tester/rtems/testing/bsps/xilinx_zynqmp_lp64.ini
index 8db82b6..cd2d268 100644
--- a/tester/rtems/testing/bsps/xilinx_zynqmp_lp64.ini
+++ b/tester/rtems/testing/bsps/xilinx_zynqmp_lp64.ini
@@ -35,4 +35,4 @@
bsp = xilinx_zynqmp_lp64
arch = aarch64
tester = %{_rtscripts}/qemu.cfg
-bsp_qemu_opts = %{qemu_opts_base} -serial null -serial mon:stdio
-machine xlnx-zcu102 -m 4096
+bsp_qemu_opts = %{qemu_opts_base} -serial mon:stdio -machine
xlnx-zcu102 -m 4096
_______________________________________________
users mailing list
[email protected]
http://lists.rtems.org/mailman/listinfo/users
_______________________________________________
users mailing list
[email protected]
http://lists.rtems.org/mailman/listinfo/users