Skip to content

Commit 7718711

Browse files
committed
scripts: Add sample openrisc scripts
Sample configuration for testing openrisc targets using qemu with the virt model. Signed-off-by: Keith Packard <[email protected]>
1 parent dc725d0 commit 7718711

File tree

3 files changed

+120
-0
lines changed

3 files changed

+120
-0
lines changed

scripts/cross-or1k-elf.txt

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
[binaries]
2+
# Meson 0.53.2 doesn't use any cflags when doing basic compiler tests,
3+
# so we have to add -nostdlib to the compiler configuration itself or
4+
# early compiler tests will fail. This can be removed when picolibc
5+
# requires at least version 0.54.2 of meson.
6+
c = ['or1k-elf-gcc', '-nostdlib']
7+
cpp = ['or1k-elf-g++', '-nostdlib']
8+
ar = 'or1k-elf-ar'
9+
as = 'or1k-elf-as'
10+
nm = 'or1k-elf-nm'
11+
strip = 'or1k-elf-strip'
12+
exe_wrapper = ['sh', '-c', 'test -z "$PICOLIBC_TEST" || run-or1k "$@"', 'run-or1k']
13+
14+
[host_machine]
15+
system = 'none'
16+
cpu_family = 'or1k'
17+
cpu = 'or1k'
18+
endian = 'little'
19+
20+
[properties]
21+
skip_sanity_check = true
22+
default_flash_addr = '0x00000000'
23+
default_flash_size = '0x00400000'
24+
default_ram_addr = '0x00400000'
25+
default_ram_size = '0x00400000'

scripts/do-or1k-configure

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
#!/bin/sh
2+
#
3+
# SPDX-License-Identifier: BSD-3-Clause
4+
#
5+
# Copyright © 2019 Keith Packard
6+
#
7+
# Redistribution and use in source and binary forms, with or without
8+
# modification, are permitted provided that the following conditions
9+
# are met:
10+
#
11+
# 1. Redistributions of source code must retain the above copyright
12+
# notice, this list of conditions and the following disclaimer.
13+
#
14+
# 2. Redistributions in binary form must reproduce the above
15+
# copyright notice, this list of conditions and the following
16+
# disclaimer in the documentation and/or other materials provided
17+
# with the distribution.
18+
#
19+
# 3. Neither the name of the copyright holder nor the names of its
20+
# contributors may be used to endorse or promote products derived
21+
# from this software without specific prior written permission.
22+
#
23+
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
24+
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
25+
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
26+
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
27+
# COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
28+
# INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
29+
# (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
30+
# SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
31+
# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
32+
# STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
33+
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
34+
# OF THE POSSIBILITY OF SUCH DAMAGE.
35+
#
36+
exec "$(dirname "$0")"/do-configure or1k-elf -Dtests=true -Dtests-enable-posix-io=false "$@"

scripts/run-or1k

Lines changed: 59 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,59 @@
1+
#!/bin/sh
2+
#
3+
# SPDX-License-Identifier: BSD-3-Clause
4+
#
5+
# Copyright © 2020 Keith Packard
6+
#
7+
# Redistribution and use in source and binary forms, with or without
8+
# modification, are permitted provided that the following conditions
9+
# are met:
10+
#
11+
# 1. Redistributions of source code must retain the above copyright
12+
# notice, this list of conditions and the following disclaimer.
13+
#
14+
# 2. Redistributions in binary form must reproduce the above
15+
# copyright notice, this list of conditions and the following
16+
# disclaimer in the documentation and/or other materials provided
17+
# with the distribution.
18+
#
19+
# 3. Neither the name of the copyright holder nor the names of its
20+
# contributors may be used to endorse or promote products derived
21+
# from this software without specific prior written permission.
22+
#
23+
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
24+
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
25+
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
26+
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
27+
# COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
28+
# INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
29+
# (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
30+
# SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
31+
# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
32+
# STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
33+
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
34+
# OF THE POSSIBILITY OF SUCH DAMAGE.
35+
#
36+
37+
dir="$(dirname "$0")"
38+
39+
# select the program
40+
elf="$1"
41+
shift
42+
43+
qemu="qemu-system-or1k"
44+
45+
# Point serial port at new chardev
46+
47+
serial=stdio
48+
49+
cpu=any
50+
51+
$qemu \
52+
-chardev stdio,id=con,mux=on \
53+
-machine virt \
54+
-cpu $cpu \
55+
-serial chardev:con \
56+
-mon chardev=con,mode=readline \
57+
-net none \
58+
-nographic \
59+
-kernel "$elf" "$@"

0 commit comments

Comments
 (0)