mirror of https://github.com/xemu-project/xemu.git
* Update OpenBSD CI image to 7.5
* Update/remove Ubuntu 20.04 CI jobs * Update (most) CentOS 8 CI jobs to CentOS 9 * Some clean-ups and improvements to travis.yml * Minor test fixes * s390x header clean-ups * Doc updates -----BEGIN PGP SIGNATURE----- iQJFBAABCAAvFiEEJ7iIR+7gJQEY8+q5LtnXdP5wLbUFAmYqbu4RHHRodXRoQHJl ZGhhdC5jb20ACgkQLtnXdP5wLbWqeA//cFAzjjmayCRZzuwwCFH0ILPrMNViRLFc ZuslNEFygDPl1H1wnw3MKzhHy1hbaC3gf30MjtejU61OMMyxS4exZd1rvw94a0cm OEisE8UG52kRsqPwKPktB2bybgX3BZbrFEwp1P0DsvpLTX7wI5nOZyNR4zWOf5Ym mODN/MjMFOhWjONOnNDRn4TbySQqolIQBTCq+f1J5Ej74V+p17aC5Fe3xhlFp8Ip aRockPW6dLpNt26zx6kKvQSYtkyLgQJSeUUyUCgcla03yzNSuV/kJPUoW0ewa+q8 DZg1Ru5WJ6O8lELQdYq630cmdwg3e9EeI6q/U/1A11auuLaafOBi0eZW9LdPlrqD 6a+zwVn+ipyRdz8eRGZVRGdhJ6XT27YfFuKxdiu4BxnS0LRks4vDcXreIcQmiIUN bg/zSp6snCpYf7+GlUReZXWnVx401nu59+BNNKUV0qIxdORNm8kwd9ZpSQwXP/nF BMPhj2hoqvWb4C4r3WlTaSPlkJGhkb2lMLucjCbeGrdnmna0RFOFB301fllbpnVm 11SRipMEfrj/G5qp4giPLcruzesvRaZm85nmwDyOQWxr5Q0KWWfBVXZMt+qqOckR 2SUtLPd9nWruCy7KN15BrOWkmXc+OU8UFUqXIOvflkI6aF1bmFYRyrXgqX2q7QDT kEfWnBvBqxw= =1uVo -----END PGP SIGNATURE----- Merge tag 'pull-request-2024-04-25' of https://gitlab.com/thuth/qemu into staging * Update OpenBSD CI image to 7.5 * Update/remove Ubuntu 20.04 CI jobs * Update (most) CentOS 8 CI jobs to CentOS 9 * Some clean-ups and improvements to travis.yml * Minor test fixes * s390x header clean-ups * Doc updates # -----BEGIN PGP SIGNATURE----- # # iQJFBAABCAAvFiEEJ7iIR+7gJQEY8+q5LtnXdP5wLbUFAmYqbu4RHHRodXRoQHJl # ZGhhdC5jb20ACgkQLtnXdP5wLbWqeA//cFAzjjmayCRZzuwwCFH0ILPrMNViRLFc # ZuslNEFygDPl1H1wnw3MKzhHy1hbaC3gf30MjtejU61OMMyxS4exZd1rvw94a0cm # OEisE8UG52kRsqPwKPktB2bybgX3BZbrFEwp1P0DsvpLTX7wI5nOZyNR4zWOf5Ym # mODN/MjMFOhWjONOnNDRn4TbySQqolIQBTCq+f1J5Ej74V+p17aC5Fe3xhlFp8Ip # aRockPW6dLpNt26zx6kKvQSYtkyLgQJSeUUyUCgcla03yzNSuV/kJPUoW0ewa+q8 # DZg1Ru5WJ6O8lELQdYq630cmdwg3e9EeI6q/U/1A11auuLaafOBi0eZW9LdPlrqD # 6a+zwVn+ipyRdz8eRGZVRGdhJ6XT27YfFuKxdiu4BxnS0LRks4vDcXreIcQmiIUN # bg/zSp6snCpYf7+GlUReZXWnVx401nu59+BNNKUV0qIxdORNm8kwd9ZpSQwXP/nF # BMPhj2hoqvWb4C4r3WlTaSPlkJGhkb2lMLucjCbeGrdnmna0RFOFB301fllbpnVm # 11SRipMEfrj/G5qp4giPLcruzesvRaZm85nmwDyOQWxr5Q0KWWfBVXZMt+qqOckR # 2SUtLPd9nWruCy7KN15BrOWkmXc+OU8UFUqXIOvflkI6aF1bmFYRyrXgqX2q7QDT # kEfWnBvBqxw= # =1uVo # -----END PGP SIGNATURE----- # gpg: Signature made Thu 25 Apr 2024 07:55:42 AM PDT # gpg: using RSA key 27B88847EEE0250118F3EAB92ED9D774FE702DB5 # gpg: issuer "thuth@redhat.com" # gpg: Good signature from "Thomas Huth <th.huth@gmx.de>" [full] # gpg: aka "Thomas Huth <thuth@redhat.com>" [full] # gpg: aka "Thomas Huth <th.huth@posteo.de>" [unknown] # gpg: aka "Thomas Huth <huth@tuxfamily.org>" [full] * tag 'pull-request-2024-04-25' of https://gitlab.com/thuth/qemu: target/s390x: Remove KVM stubs in cpu_models.h tests/unit: Remove debug statements in test-nested-aio-poll.c docs/devel: fix minor typo in submitting-a-patch.rst hw/s390x: Include missing 'cpu.h' header tests: Update our CI to use CentOS Stream 9 instead of 8 tests/docker/dockerfiles: Run lcitool-refresh after the lcitool update tests/lcitool/libvirt-ci: Update to the latest master branch tests: Remove Ubuntu 20.04 container .travis.yml: Do some more testing with Clang .travis.yml: Update the jobs to Ubuntu 22.04 .travis.yml: Remove the unused UNRELIABLE environment variable Revert ".travis.yml: Cache Avocado cache" tests/vm: update openbsd image to 7.5 docs: i386: pc: Update maximum CPU numbers for PC Q35 tests/qtest : Use `g_assert_cmphex` instead of `g_assert_cmpuint` MAINTAINERS: update email of Peter Lieven Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
This commit is contained in:
commit
45bef95ca5
|
@ -158,9 +158,9 @@ build-system-centos:
|
|||
- .native_build_job_template
|
||||
- .native_build_artifact_template
|
||||
needs:
|
||||
job: amd64-centos8-container
|
||||
job: amd64-centos9-container
|
||||
variables:
|
||||
IMAGE: centos8
|
||||
IMAGE: centos9
|
||||
CONFIGURE_ARGS: --disable-nettle --enable-gcrypt --enable-vfio-user-server
|
||||
--enable-modules --enable-trace-backends=dtrace --enable-docs
|
||||
TARGETS: ppc64-softmmu or1k-softmmu s390x-softmmu
|
||||
|
@ -242,7 +242,7 @@ check-system-centos:
|
|||
- job: build-system-centos
|
||||
artifacts: true
|
||||
variables:
|
||||
IMAGE: centos8
|
||||
IMAGE: centos9
|
||||
MAKE_CHECK_ARGS: check
|
||||
|
||||
avocado-system-centos:
|
||||
|
@ -251,7 +251,7 @@ avocado-system-centos:
|
|||
- job: build-system-centos
|
||||
artifacts: true
|
||||
variables:
|
||||
IMAGE: centos8
|
||||
IMAGE: centos9
|
||||
MAKE_CHECK_ARGS: check-avocado
|
||||
AVOCADO_TAGS: arch:ppc64 arch:or1k arch:s390x arch:x86_64 arch:rx
|
||||
arch:sh4
|
||||
|
@ -327,9 +327,9 @@ avocado-system-flaky:
|
|||
build-tcg-disabled:
|
||||
extends: .native_build_job_template
|
||||
needs:
|
||||
job: amd64-centos8-container
|
||||
job: amd64-centos9-container
|
||||
variables:
|
||||
IMAGE: centos8
|
||||
IMAGE: centos9
|
||||
script:
|
||||
- mkdir build
|
||||
- cd build
|
||||
|
@ -651,9 +651,9 @@ build-tci:
|
|||
build-without-defaults:
|
||||
extends: .native_build_job_template
|
||||
needs:
|
||||
job: amd64-centos8-container
|
||||
job: amd64-centos9-container
|
||||
variables:
|
||||
IMAGE: centos8
|
||||
IMAGE: centos9
|
||||
CONFIGURE_ARGS:
|
||||
--without-default-devices
|
||||
--without-default-features
|
||||
|
|
|
@ -1,10 +1,10 @@
|
|||
include:
|
||||
- local: '/.gitlab-ci.d/container-template.yml'
|
||||
|
||||
amd64-centos8-container:
|
||||
amd64-centos9-container:
|
||||
extends: .container_job_template
|
||||
variables:
|
||||
NAME: centos8
|
||||
NAME: centos9
|
||||
|
||||
amd64-fedora-container:
|
||||
extends: .container_job_template
|
||||
|
|
24
.travis.yml
24
.travis.yml
|
@ -1,5 +1,5 @@
|
|||
os: linux
|
||||
dist: focal
|
||||
dist: jammy
|
||||
language: c
|
||||
compiler:
|
||||
- gcc
|
||||
|
@ -7,13 +7,11 @@ cache:
|
|||
# There is one cache per branch and compiler version.
|
||||
# characteristics of each job are used to identify the cache:
|
||||
# - OS name (currently only linux)
|
||||
# - OS distribution (for Linux, bionic or focal)
|
||||
# - OS distribution (e.g. "jammy" for Linux)
|
||||
# - Names and values of visible environment variables set in .travis.yml or Settings panel
|
||||
timeout: 1200
|
||||
ccache: true
|
||||
pip: true
|
||||
directories:
|
||||
- $HOME/avocado/data/cache
|
||||
|
||||
|
||||
# The channel name "irc.oftc.net#qemu" is encrypted against qemu/qemu
|
||||
|
@ -83,7 +81,6 @@ jobs:
|
|||
|
||||
- name: "[aarch64] GCC check-tcg"
|
||||
arch: arm64
|
||||
dist: focal
|
||||
addons:
|
||||
apt_packages:
|
||||
- libaio-dev
|
||||
|
@ -115,11 +112,10 @@ jobs:
|
|||
- TEST_CMD="make check check-tcg V=1"
|
||||
- CONFIG="--disable-containers --enable-fdt=system
|
||||
--target-list=${MAIN_SYSTEM_TARGETS} --cxx=/bin/false"
|
||||
- UNRELIABLE=true
|
||||
|
||||
- name: "[ppc64] GCC check-tcg"
|
||||
- name: "[ppc64] Clang check-tcg"
|
||||
arch: ppc64le
|
||||
dist: focal
|
||||
compiler: clang
|
||||
addons:
|
||||
apt_packages:
|
||||
- libaio-dev
|
||||
|
@ -154,7 +150,6 @@ jobs:
|
|||
|
||||
- name: "[s390x] GCC check-tcg"
|
||||
arch: s390x
|
||||
dist: focal
|
||||
addons:
|
||||
apt_packages:
|
||||
- libaio-dev
|
||||
|
@ -186,7 +181,6 @@ jobs:
|
|||
- TEST_CMD="make check check-tcg V=1"
|
||||
- CONFIG="--disable-containers
|
||||
--target-list=hppa-softmmu,mips64-softmmu,ppc64-softmmu,riscv64-softmmu,s390x-softmmu,x86_64-softmmu"
|
||||
- UNRELIABLE=true
|
||||
script:
|
||||
- BUILD_RC=0 && make -j${JOBS} || BUILD_RC=$?
|
||||
- |
|
||||
|
@ -197,9 +191,9 @@ jobs:
|
|||
$(exit $BUILD_RC);
|
||||
fi
|
||||
|
||||
- name: "[s390x] GCC (other-system)"
|
||||
- name: "[s390x] Clang (other-system)"
|
||||
arch: s390x
|
||||
dist: focal
|
||||
compiler: clang
|
||||
addons:
|
||||
apt_packages:
|
||||
- libaio-dev
|
||||
|
@ -229,7 +223,6 @@ jobs:
|
|||
|
||||
- name: "[s390x] GCC (user)"
|
||||
arch: s390x
|
||||
dist: focal
|
||||
addons:
|
||||
apt_packages:
|
||||
- libgcrypt20-dev
|
||||
|
@ -244,8 +237,7 @@ jobs:
|
|||
|
||||
- name: "[s390x] Clang (disable-tcg)"
|
||||
arch: s390x
|
||||
dist: focal
|
||||
compiler: clang-10
|
||||
compiler: clang
|
||||
addons:
|
||||
apt_packages:
|
||||
- libaio-dev
|
||||
|
@ -271,9 +263,7 @@ jobs:
|
|||
- libvdeplug-dev
|
||||
- libvte-2.91-dev
|
||||
- ninja-build
|
||||
- clang-10
|
||||
env:
|
||||
- TEST_CMD="make check-unit"
|
||||
- CONFIG="--disable-containers --disable-tcg --enable-kvm --disable-tools
|
||||
--enable-fdt=system --host-cc=clang --cxx=clang++"
|
||||
- UNRELIABLE=true
|
||||
|
|
|
@ -3805,7 +3805,7 @@ F: block/vmdk.c
|
|||
|
||||
RBD
|
||||
M: Ilya Dryomov <idryomov@gmail.com>
|
||||
R: Peter Lieven <pl@kamp.de>
|
||||
R: Peter Lieven <pl@dlhnet.de>
|
||||
L: qemu-block@nongnu.org
|
||||
S: Supported
|
||||
F: block/rbd.c
|
||||
|
@ -3831,7 +3831,7 @@ F: block/blkio.c
|
|||
iSCSI
|
||||
M: Ronnie Sahlberg <ronniesahlberg@gmail.com>
|
||||
M: Paolo Bonzini <pbonzini@redhat.com>
|
||||
M: Peter Lieven <pl@kamp.de>
|
||||
M: Peter Lieven <pl@dlhnet.de>
|
||||
L: qemu-block@nongnu.org
|
||||
S: Odd Fixes
|
||||
F: block/iscsi.c
|
||||
|
@ -3854,7 +3854,7 @@ T: git https://repo.or.cz/qemu/ericb.git nbd
|
|||
T: git https://gitlab.com/vsementsov/qemu.git block
|
||||
|
||||
NFS
|
||||
M: Peter Lieven <pl@kamp.de>
|
||||
M: Peter Lieven <pl@dlhnet.de>
|
||||
L: qemu-block@nongnu.org
|
||||
S: Maintained
|
||||
F: block/nfs.c
|
||||
|
|
|
@ -177,7 +177,7 @@ add an additional line with "Fixes: <at-least-12-digits-of-SHA-commit-id>
|
|||
|
||||
If your patch fixes a bug in the gitlab bug tracker, please add a line
|
||||
with "Resolves: <URL-of-the-bug>" to the commit message, too. Gitlab can
|
||||
close bugs automatically once commits with the "Resolved:" keyword get
|
||||
close bugs automatically once commits with the "Resolves:" keyword get
|
||||
merged into the master branch of the project. And if your patch addresses
|
||||
a bug in another public bug tracker, you can also use a line with
|
||||
"Buglink: <URL-of-the-bug>" for reference here, too.
|
||||
|
|
|
@ -36,7 +36,7 @@ The QEMU PC System emulator simulates the following peripherals:
|
|||
- PCI UHCI, OHCI, EHCI or XHCI USB controller and a virtual USB-1.1
|
||||
hub.
|
||||
|
||||
SMP is supported with up to 255 CPUs.
|
||||
SMP is supported with up to 255 CPUs (and 4096 CPUs for PC Q35 machine).
|
||||
|
||||
QEMU uses the PC BIOS from the Seabios project and the Plex86/Bochs LGPL
|
||||
VGA BIOS.
|
||||
|
|
|
@ -19,6 +19,7 @@
|
|||
#include "exec/ram_addr.h"
|
||||
#include "qapi/error.h"
|
||||
#include "qapi/qmp/qdict.h"
|
||||
#include "cpu.h"
|
||||
|
||||
/* 512KiB cover 2GB of guest memory */
|
||||
#define CMMA_BLOCK_SIZE (512 * KiB)
|
||||
|
|
|
@ -13,6 +13,7 @@
|
|||
#define HW_S390_VIRTIO_HCALL_H
|
||||
|
||||
#include "standard-headers/asm-s390/virtio-ccw.h"
|
||||
#include "cpu.h"
|
||||
|
||||
/* The only thing that we need from the old kvm_virtio.h file */
|
||||
#define KVM_S390_VIRTIO_NOTIFY 0
|
||||
|
@ -20,4 +21,5 @@
|
|||
typedef int (*s390_virtio_fn)(const uint64_t *args);
|
||||
void s390_register_virtio_hypercall(uint64_t code, s390_virtio_fn fn);
|
||||
int s390_virtio_hypercall(CPUS390XState *env);
|
||||
|
||||
#endif /* HW_S390_VIRTIO_HCALL_H */
|
||||
|
|
|
@ -114,23 +114,8 @@ static inline uint64_t s390_cpuid_from_cpu_model(const S390CPUModel *model)
|
|||
S390CPUDef const *s390_find_cpu_def(uint16_t type, uint8_t gen, uint8_t ec_ga,
|
||||
S390FeatBitmap features);
|
||||
|
||||
#ifdef CONFIG_KVM
|
||||
bool kvm_s390_cpu_models_supported(void);
|
||||
void kvm_s390_get_host_cpu_model(S390CPUModel *model, Error **errp);
|
||||
void kvm_s390_apply_cpu_model(const S390CPUModel *model, Error **errp);
|
||||
#else
|
||||
static inline void kvm_s390_get_host_cpu_model(S390CPUModel *model,
|
||||
Error **errp)
|
||||
{
|
||||
}
|
||||
static inline void kvm_s390_apply_cpu_model(const S390CPUModel *model,
|
||||
Error **errp)
|
||||
{
|
||||
}
|
||||
static inline bool kvm_s390_cpu_models_supported(void)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* TARGET_S390X_CPU_MODELS_H */
|
||||
|
|
|
@ -116,7 +116,8 @@ RUN apk update && \
|
|||
zlib-static \
|
||||
zstd \
|
||||
zstd-dev && \
|
||||
apk list | sort > /packages.txt && \
|
||||
rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED && \
|
||||
apk list --installed | sort > /packages.txt && \
|
||||
mkdir -p /usr/libexec/ccache-wrappers && \
|
||||
ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/c++ && \
|
||||
ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/cc && \
|
||||
|
|
|
@ -1,15 +1,14 @@
|
|||
# THIS FILE WAS AUTO-GENERATED
|
||||
#
|
||||
# $ lcitool dockerfile --layers all centos-stream-8 qemu
|
||||
# $ lcitool dockerfile --layers all centos-stream-9 qemu
|
||||
#
|
||||
# https://gitlab.com/libvirt/libvirt-ci
|
||||
|
||||
FROM quay.io/centos/centos:stream8
|
||||
FROM quay.io/centos/centos:stream9
|
||||
|
||||
RUN dnf distro-sync -y && \
|
||||
dnf install 'dnf-command(config-manager)' -y && \
|
||||
dnf config-manager --set-enabled -y powertools && \
|
||||
dnf install -y centos-release-advanced-virtualization && \
|
||||
dnf config-manager --set-enabled -y crb && \
|
||||
dnf install -y epel-release && \
|
||||
dnf install -y epel-next-release && \
|
||||
dnf install -y \
|
||||
|
@ -42,7 +41,6 @@ RUN dnf distro-sync -y && \
|
|||
glib2-static \
|
||||
glibc-langpack-en \
|
||||
glibc-static \
|
||||
glusterfs-api-devel \
|
||||
gnutls-devel \
|
||||
gtk3-devel \
|
||||
hostname \
|
||||
|
@ -82,6 +80,7 @@ RUN dnf distro-sync -y && \
|
|||
lzo-devel \
|
||||
make \
|
||||
mesa-libgbm-devel \
|
||||
meson \
|
||||
mtools \
|
||||
ncurses-devel \
|
||||
nettle-devel \
|
||||
|
@ -95,25 +94,25 @@ RUN dnf distro-sync -y && \
|
|||
pixman-devel \
|
||||
pkgconfig \
|
||||
pulseaudio-libs-devel \
|
||||
python38 \
|
||||
python38-PyYAML \
|
||||
python38-numpy \
|
||||
python38-pip \
|
||||
python38-setuptools \
|
||||
python38-wheel \
|
||||
python3 \
|
||||
python3-PyYAML \
|
||||
python3-numpy \
|
||||
python3-pillow \
|
||||
python3-pip \
|
||||
python3-sphinx \
|
||||
python3-sphinx_rtd_theme \
|
||||
python3-tomli \
|
||||
rdma-core-devel \
|
||||
sed \
|
||||
snappy-devel \
|
||||
socat \
|
||||
spice-protocol \
|
||||
spice-server-devel \
|
||||
swtpm \
|
||||
systemd-devel \
|
||||
systemtap-sdt-devel \
|
||||
tar \
|
||||
usbredir-devel \
|
||||
util-linux \
|
||||
virglrenderer-devel \
|
||||
vte291-devel \
|
||||
which \
|
||||
xfsprogs-devel \
|
||||
|
@ -123,6 +122,7 @@ RUN dnf distro-sync -y && \
|
|||
zstd && \
|
||||
dnf autoremove -y && \
|
||||
dnf clean all -y && \
|
||||
rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED && \
|
||||
rpm -qa | sort > /packages.txt && \
|
||||
mkdir -p /usr/libexec/ccache-wrappers && \
|
||||
ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/c++ && \
|
||||
|
@ -131,18 +131,11 @@ RUN dnf distro-sync -y && \
|
|||
ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/g++ && \
|
||||
ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/gcc
|
||||
|
||||
RUN /usr/bin/pip3.8 install \
|
||||
meson==0.63.2 \
|
||||
pillow \
|
||||
sphinx \
|
||||
sphinx-rtd-theme \
|
||||
tomli
|
||||
|
||||
ENV CCACHE_WRAPPERSDIR "/usr/libexec/ccache-wrappers"
|
||||
ENV LANG "en_US.UTF-8"
|
||||
ENV MAKE "/usr/bin/make"
|
||||
ENV NINJA "/usr/bin/ninja"
|
||||
ENV PYTHON "/usr/bin/python3.8"
|
||||
ENV PYTHON "/usr/bin/python3"
|
||||
# As a final step configure the user (if env is defined)
|
||||
ARG USER
|
||||
ARG UID
|
|
@ -64,7 +64,8 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
|
|||
eatmydata apt-get autoremove -y && \
|
||||
eatmydata apt-get autoclean -y && \
|
||||
sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen && \
|
||||
dpkg-reconfigure locales
|
||||
dpkg-reconfigure locales && \
|
||||
rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
|
||||
|
||||
ENV CCACHE_WRAPPERSDIR "/usr/libexec/ccache-wrappers"
|
||||
ENV LANG "en_US.UTF-8"
|
||||
|
|
|
@ -64,7 +64,8 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
|
|||
eatmydata apt-get autoremove -y && \
|
||||
eatmydata apt-get autoclean -y && \
|
||||
sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen && \
|
||||
dpkg-reconfigure locales
|
||||
dpkg-reconfigure locales && \
|
||||
rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
|
||||
|
||||
ENV CCACHE_WRAPPERSDIR "/usr/libexec/ccache-wrappers"
|
||||
ENV LANG "en_US.UTF-8"
|
||||
|
|
|
@ -65,7 +65,8 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
|
|||
eatmydata apt-get autoremove -y && \
|
||||
eatmydata apt-get autoclean -y && \
|
||||
sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen && \
|
||||
dpkg-reconfigure locales
|
||||
dpkg-reconfigure locales && \
|
||||
rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
|
||||
|
||||
RUN /usr/bin/pip3 install tomli
|
||||
|
||||
|
|
|
@ -64,7 +64,8 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
|
|||
eatmydata apt-get autoremove -y && \
|
||||
eatmydata apt-get autoclean -y && \
|
||||
sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen && \
|
||||
dpkg-reconfigure locales
|
||||
dpkg-reconfigure locales && \
|
||||
rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
|
||||
|
||||
ENV CCACHE_WRAPPERSDIR "/usr/libexec/ccache-wrappers"
|
||||
ENV LANG "en_US.UTF-8"
|
||||
|
|
|
@ -65,7 +65,8 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
|
|||
eatmydata apt-get autoremove -y && \
|
||||
eatmydata apt-get autoclean -y && \
|
||||
sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen && \
|
||||
dpkg-reconfigure locales
|
||||
dpkg-reconfigure locales && \
|
||||
rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
|
||||
|
||||
RUN /usr/bin/pip3 install tomli
|
||||
|
||||
|
|
|
@ -65,7 +65,8 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
|
|||
eatmydata apt-get autoremove -y && \
|
||||
eatmydata apt-get autoclean -y && \
|
||||
sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen && \
|
||||
dpkg-reconfigure locales
|
||||
dpkg-reconfigure locales && \
|
||||
rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
|
||||
|
||||
RUN /usr/bin/pip3 install tomli
|
||||
|
||||
|
|
|
@ -65,7 +65,8 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
|
|||
eatmydata apt-get autoremove -y && \
|
||||
eatmydata apt-get autoclean -y && \
|
||||
sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen && \
|
||||
dpkg-reconfigure locales
|
||||
dpkg-reconfigure locales && \
|
||||
rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
|
||||
|
||||
RUN /usr/bin/pip3 install tomli
|
||||
|
||||
|
|
|
@ -64,7 +64,8 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
|
|||
eatmydata apt-get autoremove -y && \
|
||||
eatmydata apt-get autoclean -y && \
|
||||
sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen && \
|
||||
dpkg-reconfigure locales
|
||||
dpkg-reconfigure locales && \
|
||||
rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
|
||||
|
||||
ENV CCACHE_WRAPPERSDIR "/usr/libexec/ccache-wrappers"
|
||||
ENV LANG "en_US.UTF-8"
|
||||
|
|
|
@ -33,7 +33,8 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
|
|||
eatmydata apt-get autoremove -y && \
|
||||
eatmydata apt-get autoclean -y && \
|
||||
sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen && \
|
||||
dpkg-reconfigure locales
|
||||
dpkg-reconfigure locales && \
|
||||
rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
|
||||
|
||||
ENV CCACHE_WRAPPERSDIR "/usr/libexec/ccache-wrappers"
|
||||
ENV LANG "en_US.UTF-8"
|
||||
|
|
|
@ -64,7 +64,8 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
|
|||
eatmydata apt-get autoremove -y && \
|
||||
eatmydata apt-get autoclean -y && \
|
||||
sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen && \
|
||||
dpkg-reconfigure locales
|
||||
dpkg-reconfigure locales && \
|
||||
rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
|
||||
|
||||
ENV CCACHE_WRAPPERSDIR "/usr/libexec/ccache-wrappers"
|
||||
ENV LANG "en_US.UTF-8"
|
||||
|
|
|
@ -137,6 +137,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
|
|||
eatmydata apt-get autoclean -y && \
|
||||
sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen && \
|
||||
dpkg-reconfigure locales && \
|
||||
rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED && \
|
||||
dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt && \
|
||||
mkdir -p /usr/libexec/ccache-wrappers && \
|
||||
ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/c++ && \
|
||||
|
|
|
@ -64,7 +64,8 @@ exec "$@"\n' > /usr/bin/nosync && \
|
|||
xorriso \
|
||||
zstd && \
|
||||
nosync dnf autoremove -y && \
|
||||
nosync dnf clean all -y
|
||||
nosync dnf clean all -y && \
|
||||
rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED
|
||||
|
||||
ENV CCACHE_WRAPPERSDIR "/usr/libexec/ccache-wrappers"
|
||||
ENV LANG "en_US.UTF-8"
|
||||
|
|
|
@ -137,6 +137,7 @@ exec "$@"\n' > /usr/bin/nosync && \
|
|||
zstd && \
|
||||
nosync dnf autoremove -y && \
|
||||
nosync dnf clean all -y && \
|
||||
rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED && \
|
||||
rpm -qa | sort > /packages.txt && \
|
||||
mkdir -p /usr/libexec/ccache-wrappers && \
|
||||
ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/c++ && \
|
||||
|
|
|
@ -119,6 +119,7 @@ RUN zypper update -y && \
|
|||
zlib-devel-static \
|
||||
zstd && \
|
||||
zypper clean --all && \
|
||||
rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED && \
|
||||
rpm -qa | sort > /packages.txt && \
|
||||
mkdir -p /usr/libexec/ccache-wrappers && \
|
||||
ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/c++ && \
|
||||
|
|
|
@ -1,157 +0,0 @@
|
|||
# THIS FILE WAS AUTO-GENERATED
|
||||
#
|
||||
# $ lcitool dockerfile --layers all ubuntu-2004 qemu
|
||||
#
|
||||
# https://gitlab.com/libvirt/libvirt-ci
|
||||
|
||||
FROM docker.io/library/ubuntu:20.04
|
||||
|
||||
RUN export DEBIAN_FRONTEND=noninteractive && \
|
||||
apt-get update && \
|
||||
apt-get install -y eatmydata && \
|
||||
eatmydata apt-get dist-upgrade -y && \
|
||||
eatmydata apt-get install --no-install-recommends -y \
|
||||
bash \
|
||||
bc \
|
||||
bison \
|
||||
bsdmainutils \
|
||||
bzip2 \
|
||||
ca-certificates \
|
||||
ccache \
|
||||
clang \
|
||||
dbus \
|
||||
debianutils \
|
||||
diffutils \
|
||||
exuberant-ctags \
|
||||
findutils \
|
||||
flex \
|
||||
g++ \
|
||||
gcc \
|
||||
gcovr \
|
||||
gettext \
|
||||
git \
|
||||
hostname \
|
||||
libaio-dev \
|
||||
libasan6 \
|
||||
libasound2-dev \
|
||||
libattr1-dev \
|
||||
libbrlapi-dev \
|
||||
libbz2-dev \
|
||||
libc6-dev \
|
||||
libcacard-dev \
|
||||
libcap-ng-dev \
|
||||
libcapstone-dev \
|
||||
libcmocka-dev \
|
||||
libcurl4-gnutls-dev \
|
||||
libdaxctl-dev \
|
||||
libdrm-dev \
|
||||
libepoxy-dev \
|
||||
libfdt-dev \
|
||||
libffi-dev \
|
||||
libfuse3-dev \
|
||||
libgbm-dev \
|
||||
libgcrypt20-dev \
|
||||
libglib2.0-dev \
|
||||
libglusterfs-dev \
|
||||
libgnutls28-dev \
|
||||
libgtk-3-dev \
|
||||
libibumad-dev \
|
||||
libibverbs-dev \
|
||||
libiscsi-dev \
|
||||
libjemalloc-dev \
|
||||
libjpeg-turbo8-dev \
|
||||
libjson-c-dev \
|
||||
liblttng-ust-dev \
|
||||
liblzo2-dev \
|
||||
libncursesw5-dev \
|
||||
libnfs-dev \
|
||||
libnuma-dev \
|
||||
libpam0g-dev \
|
||||
libpcre2-dev \
|
||||
libpixman-1-dev \
|
||||
libpmem-dev \
|
||||
libpng-dev \
|
||||
libpulse-dev \
|
||||
librbd-dev \
|
||||
librdmacm-dev \
|
||||
libsasl2-dev \
|
||||
libsdl2-dev \
|
||||
libsdl2-image-dev \
|
||||
libseccomp-dev \
|
||||
libselinux1-dev \
|
||||
libslirp-dev \
|
||||
libsnappy-dev \
|
||||
libsndio-dev \
|
||||
libspice-protocol-dev \
|
||||
libspice-server-dev \
|
||||
libssh-dev \
|
||||
libsystemd-dev \
|
||||
libtasn1-6-dev \
|
||||
libubsan1 \
|
||||
libudev-dev \
|
||||
libusb-1.0-0-dev \
|
||||
libusbredirhost-dev \
|
||||
libvdeplug-dev \
|
||||
libvirglrenderer-dev \
|
||||
libvte-2.91-dev \
|
||||
libxen-dev \
|
||||
libzstd-dev \
|
||||
llvm \
|
||||
locales \
|
||||
make \
|
||||
mtools \
|
||||
multipath-tools \
|
||||
ncat \
|
||||
nettle-dev \
|
||||
ninja-build \
|
||||
openssh-client \
|
||||
pkgconf \
|
||||
python3 \
|
||||
python3-numpy \
|
||||
python3-opencv \
|
||||
python3-pillow \
|
||||
python3-pip \
|
||||
python3-setuptools \
|
||||
python3-sphinx \
|
||||
python3-sphinx-rtd-theme \
|
||||
python3-venv \
|
||||
python3-wheel \
|
||||
python3-yaml \
|
||||
rpm2cpio \
|
||||
sed \
|
||||
socat \
|
||||
sparse \
|
||||
systemtap-sdt-dev \
|
||||
tar \
|
||||
tesseract-ocr \
|
||||
tesseract-ocr-eng \
|
||||
xfslibs-dev \
|
||||
xorriso \
|
||||
zlib1g-dev \
|
||||
zstd && \
|
||||
eatmydata apt-get autoremove -y && \
|
||||
eatmydata apt-get autoclean -y && \
|
||||
sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen && \
|
||||
dpkg-reconfigure locales && \
|
||||
dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt && \
|
||||
mkdir -p /usr/libexec/ccache-wrappers && \
|
||||
ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/c++ && \
|
||||
ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/cc && \
|
||||
ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/clang && \
|
||||
ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/g++ && \
|
||||
ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/gcc
|
||||
|
||||
RUN /usr/bin/pip3 install \
|
||||
meson==0.63.2 \
|
||||
tomli
|
||||
|
||||
ENV CCACHE_WRAPPERSDIR "/usr/libexec/ccache-wrappers"
|
||||
ENV LANG "en_US.UTF-8"
|
||||
ENV MAKE "/usr/bin/make"
|
||||
ENV NINJA "/usr/bin/ninja"
|
||||
ENV PYTHON "/usr/bin/python3"
|
||||
# As a final step configure the user (if env is defined)
|
||||
ARG USER
|
||||
ARG UID
|
||||
RUN if [ "${USER}" ]; then \
|
||||
id ${USER} 2>/dev/null || useradd -u ${UID} -U ${USER}; fi
|
|
@ -137,6 +137,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
|
|||
eatmydata apt-get autoclean -y && \
|
||||
sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen && \
|
||||
dpkg-reconfigure locales && \
|
||||
rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED && \
|
||||
dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt && \
|
||||
mkdir -p /usr/libexec/ccache-wrappers && \
|
||||
ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/c++ && \
|
||||
|
|
|
@ -1 +1 @@
|
|||
Subproject commit 77c800186f34b21be7660750577cc5582a914deb
|
||||
Subproject commit cec67039719becbfbab866f9c23574f389cf9559
|
|
@ -1,66 +1,50 @@
|
|||
mappings:
|
||||
flake8:
|
||||
CentOSStream8:
|
||||
OpenSUSELeap15:
|
||||
|
||||
meson:
|
||||
CentOSStream8:
|
||||
OpenSUSELeap15:
|
||||
|
||||
python3:
|
||||
CentOSStream8: python38
|
||||
OpenSUSELeap15: python311-base
|
||||
|
||||
python3-PyYAML:
|
||||
CentOSStream8: python38-PyYAML
|
||||
OpenSUSELeap15:
|
||||
|
||||
python3-devel:
|
||||
CentOSStream8: python38-devel
|
||||
OpenSUSELeap15: python311-devel
|
||||
|
||||
python3-docutils:
|
||||
CentOSStream8:
|
||||
OpenSUSELeap15:
|
||||
|
||||
python3-numpy:
|
||||
CentOSStream8: python38-numpy
|
||||
OpenSUSELeap15:
|
||||
|
||||
python3-opencv:
|
||||
CentOSStream8:
|
||||
OpenSUSELeap15:
|
||||
|
||||
python3-pillow:
|
||||
CentOSStream8:
|
||||
OpenSUSELeap15:
|
||||
|
||||
python3-pip:
|
||||
CentOSStream8: python38-pip
|
||||
OpenSUSELeap15: python311-pip
|
||||
|
||||
python3-pillow:
|
||||
CentOSStream8:
|
||||
OpenSUSELeap15:
|
||||
|
||||
python3-selinux:
|
||||
CentOSStream8:
|
||||
OpenSUSELeap15:
|
||||
|
||||
python3-setuptools:
|
||||
CentOSStream8: python38-setuptools
|
||||
OpenSUSELeap15: python311-setuptools
|
||||
|
||||
python3-sphinx:
|
||||
CentOSStream8:
|
||||
OpenSUSELeap15:
|
||||
|
||||
python3-sphinx-rtd-theme:
|
||||
CentOSStream8:
|
||||
OpenSUSELeap15:
|
||||
|
||||
python3-sqlite3:
|
||||
CentOSStream8: python38
|
||||
OpenSUSELeap15: python311
|
||||
|
||||
python3-tomli:
|
||||
|
@ -69,15 +53,11 @@ mappings:
|
|||
Fedora:
|
||||
Debian12:
|
||||
OpenSUSELeap15:
|
||||
# Not available for Python 3.8
|
||||
CentOSStream8:
|
||||
|
||||
python3-venv:
|
||||
CentOSStream8: python38
|
||||
OpenSUSELeap15: python311-base
|
||||
|
||||
python3-wheel:
|
||||
CentOSStream8: python38-wheel
|
||||
OpenSUSELeap15: python311-pip
|
||||
|
||||
pypi_mappings:
|
||||
|
|
|
@ -125,12 +125,11 @@ try:
|
|||
# Standard native builds
|
||||
#
|
||||
generate_dockerfile("alpine", "alpine-318")
|
||||
generate_dockerfile("centos8", "centos-stream-8")
|
||||
generate_dockerfile("centos9", "centos-stream-9")
|
||||
generate_dockerfile("debian", "debian-12",
|
||||
trailer="".join(debian12_extras))
|
||||
generate_dockerfile("fedora", "fedora-38")
|
||||
generate_dockerfile("opensuse-leap", "opensuse-leap-15")
|
||||
generate_dockerfile("ubuntu2004", "ubuntu-2004")
|
||||
generate_dockerfile("ubuntu2204", "ubuntu-2204")
|
||||
|
||||
#
|
||||
|
|
|
@ -63,22 +63,22 @@ static void test_fsi_setup(QTestState *s, uint32_t base_addr)
|
|||
/* Unselect FSI1 */
|
||||
aspeed_fsi_writel(s, ASPEED_FSI_OPB1_BUS_SELECT, 0x0);
|
||||
curval = aspeed_fsi_readl(s, ASPEED_FSI_OPB1_BUS_SELECT);
|
||||
g_assert_cmpuint(curval, ==, 0x0);
|
||||
g_assert_cmphex(curval, ==, 0x0);
|
||||
|
||||
/* Select FSI0 */
|
||||
aspeed_fsi_writel(s, ASPEED_FSI_OPB0_BUS_SELECT, 0x1);
|
||||
curval = aspeed_fsi_readl(s, ASPEED_FSI_OPB0_BUS_SELECT);
|
||||
g_assert_cmpuint(curval, ==, 0x1);
|
||||
g_assert_cmphex(curval, ==, 0x1);
|
||||
} else if (base_addr == AST2600_OPB_FSI1_BASE_ADDR) {
|
||||
/* Unselect FSI0 */
|
||||
aspeed_fsi_writel(s, ASPEED_FSI_OPB0_BUS_SELECT, 0x0);
|
||||
curval = aspeed_fsi_readl(s, ASPEED_FSI_OPB0_BUS_SELECT);
|
||||
g_assert_cmpuint(curval, ==, 0x0);
|
||||
g_assert_cmphex(curval, ==, 0x0);
|
||||
|
||||
/* Select FSI1 */
|
||||
aspeed_fsi_writel(s, ASPEED_FSI_OPB1_BUS_SELECT, 0x1);
|
||||
curval = aspeed_fsi_readl(s, ASPEED_FSI_OPB1_BUS_SELECT);
|
||||
g_assert_cmpuint(curval, ==, 0x1);
|
||||
g_assert_cmphex(curval, ==, 0x1);
|
||||
} else {
|
||||
g_assert_not_reached();
|
||||
}
|
||||
|
@ -145,11 +145,11 @@ static void test_fsi0_getcfam_addr0(const void *data)
|
|||
aspeed_fsi_writel(s, ASPEED_FSI_ENGINER_TRIGGER, 0x1);
|
||||
|
||||
curval = aspeed_fsi_readl(s, ASPEED_FSI_INTRRUPT_STATUS);
|
||||
g_assert_cmpuint(curval, ==, 0x10000);
|
||||
g_assert_cmphex(curval, ==, 0x10000);
|
||||
curval = aspeed_fsi_readl(s, ASPEED_FSI_OPB0_BUS_STATUS);
|
||||
g_assert_cmpuint(curval, ==, 0x0);
|
||||
g_assert_cmphex(curval, ==, 0x0);
|
||||
curval = aspeed_fsi_readl(s, ASPEED_FSI_OPB0_READ_DATA);
|
||||
g_assert_cmpuint(curval, ==, 0x152d02c0);
|
||||
g_assert_cmphex(curval, ==, 0x152d02c0);
|
||||
}
|
||||
|
||||
static void test_fsi1_getcfam_addr0(const void *data)
|
||||
|
@ -168,11 +168,11 @@ static void test_fsi1_getcfam_addr0(const void *data)
|
|||
aspeed_fsi_writel(s, ASPEED_FSI_ENGINER_TRIGGER, 0x1);
|
||||
|
||||
curval = aspeed_fsi_readl(s, ASPEED_FSI_INTRRUPT_STATUS);
|
||||
g_assert_cmpuint(curval, ==, 0x20000);
|
||||
g_assert_cmphex(curval, ==, 0x20000);
|
||||
curval = aspeed_fsi_readl(s, ASPEED_FSI_OPB1_BUS_STATUS);
|
||||
g_assert_cmpuint(curval, ==, 0x0);
|
||||
g_assert_cmphex(curval, ==, 0x0);
|
||||
curval = aspeed_fsi_readl(s, ASPEED_FSI_OPB1_READ_DATA);
|
||||
g_assert_cmpuint(curval, ==, 0x152d02c0);
|
||||
g_assert_cmphex(curval, ==, 0x152d02c0);
|
||||
}
|
||||
|
||||
int main(int argc, char **argv)
|
||||
|
|
|
@ -69,7 +69,7 @@ static void test_dualtimer(void)
|
|||
* tick VALUE should have wrapped round to 0xffff.
|
||||
*/
|
||||
clock_step(40);
|
||||
g_assert_cmpuint(readl(TIMER_BASE + TIMER1VALUE), ==, 0xffff);
|
||||
g_assert_cmphex(readl(TIMER_BASE + TIMER1VALUE), ==, 0xffff);
|
||||
|
||||
/* Check that any write to INTCLR clears interrupt */
|
||||
writel(TIMER_BASE + TIMER1INTCLR, 1);
|
||||
|
|
|
@ -88,7 +88,7 @@ static void test_clock_change(void)
|
|||
|
||||
/* Rewrite RCC.SYSDIV from 16 to 8, so the clock is now 40ns per tick */
|
||||
rcc = readl(SSYS_BASE + RCC);
|
||||
g_assert_cmpuint(extract32(rcc, SYSDIV_SHIFT, SYSDIV_LENGTH), ==, 0xf);
|
||||
g_assert_cmphex(extract32(rcc, SYSDIV_SHIFT, SYSDIV_LENGTH), ==, 0xf);
|
||||
rcc = deposit32(rcc, SYSDIV_SHIFT, SYSDIV_LENGTH, 7);
|
||||
writel(SSYS_BASE + RCC, rcc);
|
||||
|
||||
|
|
|
@ -109,7 +109,7 @@ static void setup_vm_cmd(ERSTState *s, const char *cmd)
|
|||
g_assert_cmpuint(s->reg_barsize, ==, 16);
|
||||
|
||||
s->mem_bar = qpci_iomap(s->dev, 1, &s->mem_barsize);
|
||||
g_assert_cmpuint(s->mem_barsize, ==, 0x2000);
|
||||
g_assert_cmphex(s->mem_barsize, ==, 0x2000);
|
||||
|
||||
qpci_device_enable(s->dev);
|
||||
}
|
||||
|
|
|
@ -158,7 +158,7 @@ static void test_ivshmem_single(void)
|
|||
|
||||
/* trigger interrupt via registers */
|
||||
out_reg(s, INTRMASK, 0xffffffff);
|
||||
g_assert_cmpuint(in_reg(s, INTRMASK), ==, 0xffffffff);
|
||||
g_assert_cmphex(in_reg(s, INTRMASK), ==, 0xffffffff);
|
||||
out_reg(s, INTRSTATUS, 1);
|
||||
/* check interrupt status */
|
||||
g_assert_cmpuint(in_reg(s, INTRSTATUS), ==, 1);
|
||||
|
@ -211,11 +211,11 @@ static void test_ivshmem_pair(void)
|
|||
memset(tmpshmem, 0x42, TMPSHMSIZE);
|
||||
read_mem(s1, 0, data, TMPSHMSIZE);
|
||||
for (i = 0; i < TMPSHMSIZE; i++) {
|
||||
g_assert_cmpuint(data[i], ==, 0x42);
|
||||
g_assert_cmphex(data[i], ==, 0x42);
|
||||
}
|
||||
read_mem(s2, 0, data, TMPSHMSIZE);
|
||||
for (i = 0; i < TMPSHMSIZE; i++) {
|
||||
g_assert_cmpuint(data[i], ==, 0x42);
|
||||
g_assert_cmphex(data[i], ==, 0x42);
|
||||
}
|
||||
|
||||
/* guest 1 write, guest 2 read */
|
||||
|
@ -224,7 +224,7 @@ static void test_ivshmem_pair(void)
|
|||
memset(data, 0, TMPSHMSIZE);
|
||||
read_mem(s2, 0, data, TMPSHMSIZE);
|
||||
for (i = 0; i < TMPSHMSIZE; i++) {
|
||||
g_assert_cmpuint(data[i], ==, 0x43);
|
||||
g_assert_cmphex(data[i], ==, 0x43);
|
||||
}
|
||||
|
||||
/* guest 2 write, guest 1 read */
|
||||
|
@ -233,7 +233,7 @@ static void test_ivshmem_pair(void)
|
|||
memset(data, 0, TMPSHMSIZE);
|
||||
read_mem(s1, 0, data, TMPSHMSIZE);
|
||||
for (i = 0; i < TMPSHMSIZE; i++) {
|
||||
g_assert_cmpuint(data[i], ==, 0x44);
|
||||
g_assert_cmphex(data[i], ==, 0x44);
|
||||
}
|
||||
|
||||
cleanup_vm(s1);
|
||||
|
|
|
@ -1046,7 +1046,7 @@ static void ahci_atapi_command_set_offset(AHCICommand *cmd, uint64_t lba)
|
|||
case CMD_ATAPI_REQUEST_SENSE:
|
||||
case CMD_ATAPI_TEST_UNIT_READY:
|
||||
case CMD_ATAPI_START_STOP_UNIT:
|
||||
g_assert_cmpuint(lba, ==, 0x00);
|
||||
g_assert_cmphex(lba, ==, 0x00);
|
||||
break;
|
||||
default:
|
||||
/* SCSI doesn't have uniform packet formats,
|
||||
|
@ -1109,7 +1109,7 @@ static void ahci_atapi_set_size(AHCICommand *cmd, uint64_t xbytes)
|
|||
break;
|
||||
case CMD_ATAPI_READ_CD:
|
||||
/* 24bit BE store */
|
||||
g_assert_cmpuint(nsectors, <, 1ULL << 24);
|
||||
g_assert_cmphex(nsectors, <, 1ULL << 24);
|
||||
tmp = nsectors;
|
||||
cbd[6] = (tmp & 0xFF0000) >> 16;
|
||||
cbd[7] = (tmp & 0xFF00) >> 8;
|
||||
|
|
|
@ -143,14 +143,14 @@ static void test_microbit_i2c(void)
|
|||
|
||||
/* MMA8653 magnetometer detection */
|
||||
val = i2c_read_byte(qts, 0x3A, 0x0D);
|
||||
g_assert_cmpuint(val, ==, 0x5A);
|
||||
g_assert_cmphex(val, ==, 0x5A);
|
||||
|
||||
val = i2c_read_byte(qts, 0x3A, 0x0D);
|
||||
g_assert_cmpuint(val, ==, 0x5A);
|
||||
g_assert_cmphex(val, ==, 0x5A);
|
||||
|
||||
/* LSM303 accelerometer detection */
|
||||
val = i2c_read_byte(qts, 0x3C, 0x4F);
|
||||
g_assert_cmpuint(val, ==, 0x40);
|
||||
g_assert_cmphex(val, ==, 0x40);
|
||||
|
||||
qtest_writel(qts, NRF51_TWI_BASE + NRF51_TWI_REG_ENABLE, 0);
|
||||
|
||||
|
@ -171,7 +171,7 @@ static void fill_and_erase(QTestState *qts, hwaddr base, hwaddr size,
|
|||
|
||||
/* Check memory */
|
||||
for (i = 0; i < size / 4; i++) {
|
||||
g_assert_cmpuint(qtest_readl(qts, base + i * 4), ==, 0xFFFFFFFF);
|
||||
g_assert_cmphex(qtest_readl(qts, base + i * 4), ==, 0xFFFFFFFF);
|
||||
}
|
||||
|
||||
/* Fill memory */
|
||||
|
@ -191,7 +191,7 @@ static void test_nrf51_nvmc(void)
|
|||
|
||||
/* Test always ready */
|
||||
value = qtest_readl(qts, NRF51_NVMC_BASE + NRF51_NVMC_READY);
|
||||
g_assert_cmpuint(value & 0x01, ==, 0x01);
|
||||
g_assert_cmphex(value & 0x01, ==, 0x01);
|
||||
|
||||
/* Test write-read config register */
|
||||
qtest_writel(qts, NRF51_NVMC_BASE + NRF51_NVMC_CONFIG, 0x03);
|
||||
|
@ -302,19 +302,19 @@ static void test_nrf51_gpio(void)
|
|||
g_assert_cmpuint(actual, ==, expected);
|
||||
actual = qtest_readl(qts, NRF51_GPIO_BASE + NRF51_GPIO_REG_CNF_START)
|
||||
& 0x01;
|
||||
g_assert_cmpuint(actual, ==, 0x01);
|
||||
g_assert_cmphex(actual, ==, 0x01);
|
||||
actual = qtest_readl(qts, NRF51_GPIO_BASE + NRF51_GPIO_REG_CNF_END) & 0x01;
|
||||
g_assert_cmpuint(actual, ==, 0x01);
|
||||
g_assert_cmphex(actual, ==, 0x01);
|
||||
|
||||
/* Check clear via DIRCLR */
|
||||
qtest_writel(qts, NRF51_GPIO_BASE + NRF51_GPIO_REG_DIRCLR, 0x80000001);
|
||||
actual = qtest_readl(qts, NRF51_GPIO_BASE + NRF51_GPIO_REG_DIR);
|
||||
g_assert_cmpuint(actual, ==, 0x00000000);
|
||||
g_assert_cmphex(actual, ==, 0x00000000);
|
||||
actual = qtest_readl(qts, NRF51_GPIO_BASE + NRF51_GPIO_REG_CNF_START)
|
||||
& 0x01;
|
||||
g_assert_cmpuint(actual, ==, 0x00);
|
||||
g_assert_cmphex(actual, ==, 0x00);
|
||||
actual = qtest_readl(qts, NRF51_GPIO_BASE + NRF51_GPIO_REG_CNF_END) & 0x01;
|
||||
g_assert_cmpuint(actual, ==, 0x00);
|
||||
g_assert_cmphex(actual, ==, 0x00);
|
||||
|
||||
/* Check set via DIR */
|
||||
expected = 0x80000001;
|
||||
|
@ -323,9 +323,9 @@ static void test_nrf51_gpio(void)
|
|||
g_assert_cmpuint(actual, ==, expected);
|
||||
actual = qtest_readl(qts, NRF51_GPIO_BASE + NRF51_GPIO_REG_CNF_START)
|
||||
& 0x01;
|
||||
g_assert_cmpuint(actual, ==, 0x01);
|
||||
g_assert_cmphex(actual, ==, 0x01);
|
||||
actual = qtest_readl(qts, NRF51_GPIO_BASE + NRF51_GPIO_REG_CNF_END) & 0x01;
|
||||
g_assert_cmpuint(actual, ==, 0x01);
|
||||
g_assert_cmphex(actual, ==, 0x01);
|
||||
|
||||
/* Reset DIR */
|
||||
qtest_writel(qts, NRF51_GPIO_BASE + NRF51_GPIO_REG_DIR, 0x00000000);
|
||||
|
@ -334,33 +334,33 @@ static void test_nrf51_gpio(void)
|
|||
qtest_writel(qts, NRF51_GPIO_BASE + NRF51_GPIO_REG_CNF_START, 0x00);
|
||||
qtest_set_irq_in(qts, "/machine/nrf51", "unnamed-gpio-in", 0, 0);
|
||||
actual = qtest_readl(qts, NRF51_GPIO_BASE + NRF51_GPIO_REG_IN) & 0x01;
|
||||
g_assert_cmpuint(actual, ==, 0x00);
|
||||
g_assert_cmphex(actual, ==, 0x00);
|
||||
qtest_set_irq_in(qts, "/machine/nrf51", "unnamed-gpio-in", 0, 1);
|
||||
actual = qtest_readl(qts, NRF51_GPIO_BASE + NRF51_GPIO_REG_IN) & 0x01;
|
||||
g_assert_cmpuint(actual, ==, 0x01);
|
||||
g_assert_cmphex(actual, ==, 0x01);
|
||||
qtest_set_irq_in(qts, "/machine/nrf51", "unnamed-gpio-in", 0, -1);
|
||||
actual = qtest_readl(qts, NRF51_GPIO_BASE + NRF51_GPIO_REG_IN) & 0x01;
|
||||
g_assert_cmpuint(actual, ==, 0x01);
|
||||
g_assert_cmphex(actual, ==, 0x01);
|
||||
qtest_writel(qts, NRF51_GPIO_BASE + NRF51_GPIO_REG_CNF_START, 0x02);
|
||||
|
||||
/* Check pull-up working */
|
||||
qtest_set_irq_in(qts, "/machine/nrf51", "unnamed-gpio-in", 0, 0);
|
||||
qtest_writel(qts, NRF51_GPIO_BASE + NRF51_GPIO_REG_CNF_START, 0b0000);
|
||||
actual = qtest_readl(qts, NRF51_GPIO_BASE + NRF51_GPIO_REG_IN) & 0x01;
|
||||
g_assert_cmpuint(actual, ==, 0x00);
|
||||
g_assert_cmphex(actual, ==, 0x00);
|
||||
qtest_writel(qts, NRF51_GPIO_BASE + NRF51_GPIO_REG_CNF_START, 0b1110);
|
||||
actual = qtest_readl(qts, NRF51_GPIO_BASE + NRF51_GPIO_REG_IN) & 0x01;
|
||||
g_assert_cmpuint(actual, ==, 0x01);
|
||||
g_assert_cmphex(actual, ==, 0x01);
|
||||
qtest_writel(qts, NRF51_GPIO_BASE + NRF51_GPIO_REG_CNF_START, 0x02);
|
||||
|
||||
/* Check pull-down working */
|
||||
qtest_set_irq_in(qts, "/machine/nrf51", "unnamed-gpio-in", 0, 1);
|
||||
qtest_writel(qts, NRF51_GPIO_BASE + NRF51_GPIO_REG_CNF_START, 0b0000);
|
||||
actual = qtest_readl(qts, NRF51_GPIO_BASE + NRF51_GPIO_REG_IN) & 0x01;
|
||||
g_assert_cmpuint(actual, ==, 0x01);
|
||||
g_assert_cmphex(actual, ==, 0x01);
|
||||
qtest_writel(qts, NRF51_GPIO_BASE + NRF51_GPIO_REG_CNF_START, 0b0110);
|
||||
actual = qtest_readl(qts, NRF51_GPIO_BASE + NRF51_GPIO_REG_IN) & 0x01;
|
||||
g_assert_cmpuint(actual, ==, 0x00);
|
||||
g_assert_cmphex(actual, ==, 0x00);
|
||||
qtest_writel(qts, NRF51_GPIO_BASE + NRF51_GPIO_REG_CNF_START, 0x02);
|
||||
qtest_set_irq_in(qts, "/machine/nrf51", "unnamed-gpio-in", 0, -1);
|
||||
|
||||
|
@ -376,11 +376,11 @@ static void test_nrf51_gpio(void)
|
|||
qtest_writel(qts, NRF51_GPIO_BASE + NRF51_GPIO_REG_CNF_START, 0b01);
|
||||
qtest_writel(qts, NRF51_GPIO_BASE + NRF51_GPIO_REG_OUTSET, 0x01);
|
||||
actual = qtest_readl(qts, NRF51_GPIO_BASE + NRF51_GPIO_REG_IN) & 0x01;
|
||||
g_assert_cmpuint(actual, ==, 0x01);
|
||||
g_assert_cmphex(actual, ==, 0x01);
|
||||
|
||||
qtest_writel(qts, NRF51_GPIO_BASE + NRF51_GPIO_REG_OUTCLR, 0x01);
|
||||
actual = qtest_readl(qts, NRF51_GPIO_BASE + NRF51_GPIO_REG_IN) & 0x01;
|
||||
g_assert_cmpuint(actual, ==, 0x00);
|
||||
g_assert_cmphex(actual, ==, 0x00);
|
||||
|
||||
/*
|
||||
* Check short-circuit - generates an guest_error which must be checked
|
||||
|
@ -410,7 +410,7 @@ static void test_nrf51_gpio_detect(void)
|
|||
/* Set pin high */
|
||||
qtest_set_irq_in(qts, "/machine/nrf51", "unnamed-gpio-in", i, 1);
|
||||
uint32_t actual = qtest_readl(qts, NRF51_GPIO_BASE + NRF51_GPIO_REG_IN);
|
||||
g_assert_cmpuint(actual, ==, 1 << i);
|
||||
g_assert_cmphex(actual, ==, 1 << i);
|
||||
|
||||
/* Check that DETECT is high */
|
||||
g_assert_true(qtest_get_irq(qts, 0));
|
||||
|
@ -418,7 +418,7 @@ static void test_nrf51_gpio_detect(void)
|
|||
/* Set pin low, check that DETECT goes low. */
|
||||
qtest_set_irq_in(qts, "/machine/nrf51", "unnamed-gpio-in", i, 0);
|
||||
actual = qtest_readl(qts, NRF51_GPIO_BASE + NRF51_GPIO_REG_IN);
|
||||
g_assert_cmpuint(actual, ==, 0x0);
|
||||
g_assert_cmphex(actual, ==, 0x0);
|
||||
g_assert_false(qtest_get_irq(qts, 0));
|
||||
}
|
||||
|
||||
|
|
|
@ -181,12 +181,12 @@ static void test_timer(void)
|
|||
writel(TIMER_BASE + CNTP_AIVAL_CTL, 0);
|
||||
clock_step_ticks(0x42ULL << 32);
|
||||
g_assert_cmpuint(readl(TIMER_BASE + CNTPCT_LO), ==, 4400);
|
||||
g_assert_cmpuint(readl(TIMER_BASE + CNTPCT_HI), ==, 0x42);
|
||||
g_assert_cmphex(readl(TIMER_BASE + CNTPCT_HI), ==, 0x42);
|
||||
|
||||
/* Turn on the autoinc again to check AIVAL_HI */
|
||||
writel(TIMER_BASE + CNTP_AIVAL_CTL, 1);
|
||||
g_assert_cmpuint(readl(TIMER_BASE + CNTP_AIVAL_LO), ==, 4600);
|
||||
g_assert_cmpuint(readl(TIMER_BASE + CNTP_AIVAL_HI), ==, 0x42);
|
||||
g_assert_cmphex(readl(TIMER_BASE + CNTP_AIVAL_HI), ==, 0x42);
|
||||
}
|
||||
|
||||
static void test_timer_scale_change(void)
|
||||
|
|
|
@ -70,44 +70,44 @@ static void test_reg_write_read(void)
|
|||
/* Test that non-reserved bits in xMR and xTSR can be set and cleared */
|
||||
|
||||
exti_writel(EXTI_IMR1, 0xFFFFFFFF);
|
||||
g_assert_cmpuint(exti_readl(EXTI_IMR1), ==, 0xFFFFFFFF);
|
||||
g_assert_cmphex(exti_readl(EXTI_IMR1), ==, 0xFFFFFFFF);
|
||||
exti_writel(EXTI_IMR1, 0x00000000);
|
||||
g_assert_cmpuint(exti_readl(EXTI_IMR1), ==, 0x00000000);
|
||||
g_assert_cmphex(exti_readl(EXTI_IMR1), ==, 0x00000000);
|
||||
|
||||
exti_writel(EXTI_EMR1, 0xFFFFFFFF);
|
||||
g_assert_cmpuint(exti_readl(EXTI_EMR1), ==, 0xFFFFFFFF);
|
||||
g_assert_cmphex(exti_readl(EXTI_EMR1), ==, 0xFFFFFFFF);
|
||||
exti_writel(EXTI_EMR1, 0x00000000);
|
||||
g_assert_cmpuint(exti_readl(EXTI_EMR1), ==, 0x00000000);
|
||||
g_assert_cmphex(exti_readl(EXTI_EMR1), ==, 0x00000000);
|
||||
|
||||
exti_writel(EXTI_RTSR1, 0xFFFFFFFF);
|
||||
g_assert_cmpuint(exti_readl(EXTI_RTSR1), ==, 0x007DFFFF);
|
||||
g_assert_cmphex(exti_readl(EXTI_RTSR1), ==, 0x007DFFFF);
|
||||
exti_writel(EXTI_RTSR1, 0x00000000);
|
||||
g_assert_cmpuint(exti_readl(EXTI_RTSR1), ==, 0x00000000);
|
||||
g_assert_cmphex(exti_readl(EXTI_RTSR1), ==, 0x00000000);
|
||||
|
||||
exti_writel(EXTI_FTSR1, 0xFFFFFFFF);
|
||||
g_assert_cmpuint(exti_readl(EXTI_FTSR1), ==, 0x007DFFFF);
|
||||
g_assert_cmphex(exti_readl(EXTI_FTSR1), ==, 0x007DFFFF);
|
||||
exti_writel(EXTI_FTSR1, 0x00000000);
|
||||
g_assert_cmpuint(exti_readl(EXTI_FTSR1), ==, 0x00000000);
|
||||
g_assert_cmphex(exti_readl(EXTI_FTSR1), ==, 0x00000000);
|
||||
|
||||
exti_writel(EXTI_IMR2, 0xFFFFFFFF);
|
||||
g_assert_cmpuint(exti_readl(EXTI_IMR2), ==, 0x000000FF);
|
||||
g_assert_cmphex(exti_readl(EXTI_IMR2), ==, 0x000000FF);
|
||||
exti_writel(EXTI_IMR2, 0x00000000);
|
||||
g_assert_cmpuint(exti_readl(EXTI_IMR2), ==, 0x00000000);
|
||||
g_assert_cmphex(exti_readl(EXTI_IMR2), ==, 0x00000000);
|
||||
|
||||
exti_writel(EXTI_EMR2, 0xFFFFFFFF);
|
||||
g_assert_cmpuint(exti_readl(EXTI_EMR2), ==, 0x000000FF);
|
||||
g_assert_cmphex(exti_readl(EXTI_EMR2), ==, 0x000000FF);
|
||||
exti_writel(EXTI_EMR2, 0x00000000);
|
||||
g_assert_cmpuint(exti_readl(EXTI_EMR2), ==, 0x00000000);
|
||||
g_assert_cmphex(exti_readl(EXTI_EMR2), ==, 0x00000000);
|
||||
|
||||
exti_writel(EXTI_RTSR2, 0xFFFFFFFF);
|
||||
g_assert_cmpuint(exti_readl(EXTI_RTSR2), ==, 0x00000078);
|
||||
g_assert_cmphex(exti_readl(EXTI_RTSR2), ==, 0x00000078);
|
||||
exti_writel(EXTI_RTSR2, 0x00000000);
|
||||
g_assert_cmpuint(exti_readl(EXTI_RTSR2), ==, 0x00000000);
|
||||
g_assert_cmphex(exti_readl(EXTI_RTSR2), ==, 0x00000000);
|
||||
|
||||
exti_writel(EXTI_FTSR2, 0xFFFFFFFF);
|
||||
g_assert_cmpuint(exti_readl(EXTI_FTSR2), ==, 0x00000078);
|
||||
g_assert_cmphex(exti_readl(EXTI_FTSR2), ==, 0x00000078);
|
||||
exti_writel(EXTI_FTSR2, 0x00000000);
|
||||
g_assert_cmpuint(exti_readl(EXTI_FTSR2), ==, 0x00000000);
|
||||
g_assert_cmphex(exti_readl(EXTI_FTSR2), ==, 0x00000000);
|
||||
}
|
||||
|
||||
static void test_direct_lines_write(void)
|
||||
|
@ -115,28 +115,28 @@ static void test_direct_lines_write(void)
|
|||
/* Test that direct lines reserved bits are not written to */
|
||||
|
||||
exti_writel(EXTI_RTSR1, 0xFF820000);
|
||||
g_assert_cmpuint(exti_readl(EXTI_RTSR1), ==, 0x00000000);
|
||||
g_assert_cmphex(exti_readl(EXTI_RTSR1), ==, 0x00000000);
|
||||
|
||||
exti_writel(EXTI_FTSR1, 0xFF820000);
|
||||
g_assert_cmpuint(exti_readl(EXTI_FTSR1), ==, 0x00000000);
|
||||
g_assert_cmphex(exti_readl(EXTI_FTSR1), ==, 0x00000000);
|
||||
|
||||
exti_writel(EXTI_SWIER1, 0xFF820000);
|
||||
g_assert_cmpuint(exti_readl(EXTI_SWIER1), ==, 0x00000000);
|
||||
g_assert_cmphex(exti_readl(EXTI_SWIER1), ==, 0x00000000);
|
||||
|
||||
exti_writel(EXTI_PR1, 0xFF820000);
|
||||
g_assert_cmpuint(exti_readl(EXTI_PR1), ==, 0x00000000);
|
||||
g_assert_cmphex(exti_readl(EXTI_PR1), ==, 0x00000000);
|
||||
|
||||
exti_writel(EXTI_RTSR2, 0x00000087);
|
||||
g_assert_cmpuint(exti_readl(EXTI_RTSR2), ==, 0x00000000);
|
||||
g_assert_cmphex(exti_readl(EXTI_RTSR2), ==, 0x00000000);
|
||||
|
||||
exti_writel(EXTI_FTSR2, 0x00000087);
|
||||
g_assert_cmpuint(exti_readl(EXTI_FTSR2), ==, 0x00000000);
|
||||
g_assert_cmphex(exti_readl(EXTI_FTSR2), ==, 0x00000000);
|
||||
|
||||
exti_writel(EXTI_SWIER2, 0x00000087);
|
||||
g_assert_cmpuint(exti_readl(EXTI_SWIER2), ==, 0x00000000);
|
||||
g_assert_cmphex(exti_readl(EXTI_SWIER2), ==, 0x00000000);
|
||||
|
||||
exti_writel(EXTI_PR2, 0x00000087);
|
||||
g_assert_cmpuint(exti_readl(EXTI_PR2), ==, 0x00000000);
|
||||
g_assert_cmphex(exti_readl(EXTI_PR2), ==, 0x00000000);
|
||||
}
|
||||
|
||||
static void test_reserved_bits_write(void)
|
||||
|
@ -144,22 +144,22 @@ static void test_reserved_bits_write(void)
|
|||
/* Test that reserved bits stay are not written to */
|
||||
|
||||
exti_writel(EXTI_IMR2, 0xFFFFFF00);
|
||||
g_assert_cmpuint(exti_readl(EXTI_IMR2), ==, 0x00000000);
|
||||
g_assert_cmphex(exti_readl(EXTI_IMR2), ==, 0x00000000);
|
||||
|
||||
exti_writel(EXTI_EMR2, 0xFFFFFF00);
|
||||
g_assert_cmpuint(exti_readl(EXTI_EMR2), ==, 0x00000000);
|
||||
g_assert_cmphex(exti_readl(EXTI_EMR2), ==, 0x00000000);
|
||||
|
||||
exti_writel(EXTI_RTSR2, 0xFFFFFF00);
|
||||
g_assert_cmpuint(exti_readl(EXTI_RTSR2), ==, 0x00000000);
|
||||
g_assert_cmphex(exti_readl(EXTI_RTSR2), ==, 0x00000000);
|
||||
|
||||
exti_writel(EXTI_FTSR2, 0xFFFFFF00);
|
||||
g_assert_cmpuint(exti_readl(EXTI_FTSR2), ==, 0x00000000);
|
||||
g_assert_cmphex(exti_readl(EXTI_FTSR2), ==, 0x00000000);
|
||||
|
||||
exti_writel(EXTI_SWIER2, 0xFFFFFF00);
|
||||
g_assert_cmpuint(exti_readl(EXTI_SWIER2), ==, 0x00000000);
|
||||
g_assert_cmphex(exti_readl(EXTI_SWIER2), ==, 0x00000000);
|
||||
|
||||
exti_writel(EXTI_PR2, 0xFFFFFF00);
|
||||
g_assert_cmpuint(exti_readl(EXTI_PR2), ==, 0x00000000);
|
||||
g_assert_cmphex(exti_readl(EXTI_PR2), ==, 0x00000000);
|
||||
}
|
||||
|
||||
static void test_software_interrupt(void)
|
||||
|
@ -180,7 +180,7 @@ static void test_software_interrupt(void)
|
|||
|
||||
enable_nvic_irq(EXTI0_IRQ);
|
||||
/* Check that there are no interrupts already pending in PR */
|
||||
g_assert_cmpuint(exti_readl(EXTI_PR1), ==, 0x00000000);
|
||||
g_assert_cmphex(exti_readl(EXTI_PR1), ==, 0x00000000);
|
||||
/* Check that this specific interrupt isn't pending in NVIC */
|
||||
g_assert_false(check_nvic_pending(EXTI0_IRQ));
|
||||
|
||||
|
@ -191,9 +191,9 @@ static void test_software_interrupt(void)
|
|||
exti_writel(EXTI_SWIER1, 0x00000001);
|
||||
|
||||
/* Check that the write in SWIER was effective */
|
||||
g_assert_cmpuint(exti_readl(EXTI_SWIER1), ==, 0x00000001);
|
||||
g_assert_cmphex(exti_readl(EXTI_SWIER1), ==, 0x00000001);
|
||||
/* Check that the corresponding pending bit in PR is set */
|
||||
g_assert_cmpuint(exti_readl(EXTI_PR1), ==, 0x00000001);
|
||||
g_assert_cmphex(exti_readl(EXTI_PR1), ==, 0x00000001);
|
||||
/* Check that the corresponding interrupt is pending in the NVIC */
|
||||
g_assert_true(check_nvic_pending(EXTI0_IRQ));
|
||||
|
||||
|
@ -201,9 +201,9 @@ static void test_software_interrupt(void)
|
|||
exti_writel(EXTI_PR1, 0x00000001);
|
||||
|
||||
/* Check that the write in PR was effective */
|
||||
g_assert_cmpuint(exti_readl(EXTI_PR1), ==, 0x00000000);
|
||||
g_assert_cmphex(exti_readl(EXTI_PR1), ==, 0x00000000);
|
||||
/* Check that the corresponding bit in SWIER was cleared */
|
||||
g_assert_cmpuint(exti_readl(EXTI_SWIER1), ==, 0x00000000);
|
||||
g_assert_cmphex(exti_readl(EXTI_SWIER1), ==, 0x00000000);
|
||||
/* Check that the interrupt is still pending in the NVIC */
|
||||
g_assert_true(check_nvic_pending(EXTI0_IRQ));
|
||||
|
||||
|
@ -214,7 +214,7 @@ static void test_software_interrupt(void)
|
|||
|
||||
enable_nvic_irq(EXTI35_IRQ);
|
||||
/* Check that there are no interrupts already pending */
|
||||
g_assert_cmpuint(exti_readl(EXTI_PR2), ==, 0x00000000);
|
||||
g_assert_cmphex(exti_readl(EXTI_PR2), ==, 0x00000000);
|
||||
g_assert_false(check_nvic_pending(EXTI35_IRQ));
|
||||
|
||||
/* Enable interrupt line EXTI0 */
|
||||
|
@ -224,9 +224,9 @@ static void test_software_interrupt(void)
|
|||
exti_writel(EXTI_SWIER2, 0x00000008);
|
||||
|
||||
/* Check that the write in SWIER was effective */
|
||||
g_assert_cmpuint(exti_readl(EXTI_SWIER2), ==, 0x00000008);
|
||||
g_assert_cmphex(exti_readl(EXTI_SWIER2), ==, 0x00000008);
|
||||
/* Check that the corresponding pending bit in PR is set */
|
||||
g_assert_cmpuint(exti_readl(EXTI_PR2), ==, 0x00000008);
|
||||
g_assert_cmphex(exti_readl(EXTI_PR2), ==, 0x00000008);
|
||||
/* Check that the corresponding interrupt is pending in the NVIC */
|
||||
g_assert_true(check_nvic_pending(EXTI35_IRQ));
|
||||
|
||||
|
@ -234,9 +234,9 @@ static void test_software_interrupt(void)
|
|||
exti_writel(EXTI_PR2, 0x00000008);
|
||||
|
||||
/* Check that the write in PR was effective */
|
||||
g_assert_cmpuint(exti_readl(EXTI_PR2), ==, 0x00000000);
|
||||
g_assert_cmphex(exti_readl(EXTI_PR2), ==, 0x00000000);
|
||||
/* Check that the corresponding bit in SWIER was cleared */
|
||||
g_assert_cmpuint(exti_readl(EXTI_SWIER2), ==, 0x00000000);
|
||||
g_assert_cmphex(exti_readl(EXTI_SWIER2), ==, 0x00000000);
|
||||
/* Check that the interrupt is still pending in the NVIC */
|
||||
g_assert_true(check_nvic_pending(EXTI35_IRQ));
|
||||
|
||||
|
@ -259,16 +259,16 @@ static void test_edge_selector(void)
|
|||
|
||||
/* Test that an irq is raised on rising edge only */
|
||||
exti_set_irq(0, 0);
|
||||
g_assert_cmpuint(exti_readl(EXTI_PR1), ==, 0x00000000);
|
||||
g_assert_cmphex(exti_readl(EXTI_PR1), ==, 0x00000000);
|
||||
g_assert_false(check_nvic_pending(EXTI0_IRQ));
|
||||
|
||||
exti_set_irq(0, 1);
|
||||
g_assert_cmpuint(exti_readl(EXTI_PR1), ==, 0x00000001);
|
||||
g_assert_cmphex(exti_readl(EXTI_PR1), ==, 0x00000001);
|
||||
g_assert_true(check_nvic_pending(EXTI0_IRQ));
|
||||
|
||||
/* Clean the test */
|
||||
exti_writel(EXTI_PR1, 0x00000001);
|
||||
g_assert_cmpuint(exti_readl(EXTI_PR1), ==, 0x00000000);
|
||||
g_assert_cmphex(exti_readl(EXTI_PR1), ==, 0x00000000);
|
||||
unpend_nvic_irq(EXTI0_IRQ);
|
||||
g_assert_false(check_nvic_pending(EXTI0_IRQ));
|
||||
|
||||
|
@ -280,16 +280,16 @@ static void test_edge_selector(void)
|
|||
|
||||
/* Test that an irq is raised on falling edge only */
|
||||
exti_set_irq(0, 1);
|
||||
g_assert_cmpuint(exti_readl(EXTI_PR1), ==, 0x00000000);
|
||||
g_assert_cmphex(exti_readl(EXTI_PR1), ==, 0x00000000);
|
||||
g_assert_false(check_nvic_pending(EXTI0_IRQ));
|
||||
|
||||
exti_set_irq(0, 0);
|
||||
g_assert_cmpuint(exti_readl(EXTI_PR1), ==, 0x00000001);
|
||||
g_assert_cmphex(exti_readl(EXTI_PR1), ==, 0x00000001);
|
||||
g_assert_true(check_nvic_pending(EXTI0_IRQ));
|
||||
|
||||
/* Clean the test */
|
||||
exti_writel(EXTI_PR1, 0x00000001);
|
||||
g_assert_cmpuint(exti_readl(EXTI_PR1), ==, 0x00000000);
|
||||
g_assert_cmphex(exti_readl(EXTI_PR1), ==, 0x00000000);
|
||||
unpend_nvic_irq(EXTI0_IRQ);
|
||||
g_assert_false(check_nvic_pending(EXTI0_IRQ));
|
||||
|
||||
|
@ -300,23 +300,23 @@ static void test_edge_selector(void)
|
|||
|
||||
/* Test that an irq is raised on rising edge */
|
||||
exti_set_irq(0, 1);
|
||||
g_assert_cmpuint(exti_readl(EXTI_PR1), ==, 0x00000001);
|
||||
g_assert_cmphex(exti_readl(EXTI_PR1), ==, 0x00000001);
|
||||
g_assert_true(check_nvic_pending(EXTI0_IRQ));
|
||||
|
||||
/* Clean the test */
|
||||
exti_writel(EXTI_PR1, 0x00000001);
|
||||
g_assert_cmpuint(exti_readl(EXTI_PR1), ==, 0x00000000);
|
||||
g_assert_cmphex(exti_readl(EXTI_PR1), ==, 0x00000000);
|
||||
unpend_nvic_irq(EXTI0_IRQ);
|
||||
g_assert_false(check_nvic_pending(EXTI0_IRQ));
|
||||
|
||||
/* Test that an irq is raised on falling edge */
|
||||
exti_set_irq(0, 0);
|
||||
g_assert_cmpuint(exti_readl(EXTI_PR1), ==, 0x00000001);
|
||||
g_assert_cmphex(exti_readl(EXTI_PR1), ==, 0x00000001);
|
||||
g_assert_true(check_nvic_pending(EXTI0_IRQ));
|
||||
|
||||
/* Clean the test */
|
||||
exti_writel(EXTI_PR1, 0x00000001);
|
||||
g_assert_cmpuint(exti_readl(EXTI_PR1), ==, 0x00000000);
|
||||
g_assert_cmphex(exti_readl(EXTI_PR1), ==, 0x00000000);
|
||||
unpend_nvic_irq(EXTI0_IRQ);
|
||||
g_assert_false(check_nvic_pending(EXTI0_IRQ));
|
||||
|
||||
|
@ -327,11 +327,11 @@ static void test_edge_selector(void)
|
|||
|
||||
/* Test that no irq is raised */
|
||||
exti_set_irq(0, 1);
|
||||
g_assert_cmpuint(exti_readl(EXTI_PR1), ==, 0x00000000);
|
||||
g_assert_cmphex(exti_readl(EXTI_PR1), ==, 0x00000000);
|
||||
g_assert_false(check_nvic_pending(EXTI0_IRQ));
|
||||
|
||||
exti_set_irq(0, 0);
|
||||
g_assert_cmpuint(exti_readl(EXTI_PR1), ==, 0x00000000);
|
||||
g_assert_cmphex(exti_readl(EXTI_PR1), ==, 0x00000000);
|
||||
g_assert_false(check_nvic_pending(EXTI0_IRQ));
|
||||
}
|
||||
|
||||
|
@ -350,7 +350,7 @@ static void test_no_software_interrupt(void)
|
|||
|
||||
enable_nvic_irq(EXTI0_IRQ);
|
||||
/* Check that there are no interrupts already pending in PR */
|
||||
g_assert_cmpuint(exti_readl(EXTI_PR1), ==, 0x00000000);
|
||||
g_assert_cmphex(exti_readl(EXTI_PR1), ==, 0x00000000);
|
||||
/* Check that this specific interrupt isn't pending in NVIC */
|
||||
g_assert_false(check_nvic_pending(EXTI0_IRQ));
|
||||
|
||||
|
@ -361,9 +361,9 @@ static void test_no_software_interrupt(void)
|
|||
exti_writel(EXTI_SWIER1, 0x00000001);
|
||||
|
||||
/* Check that the write in SWIER was effective */
|
||||
g_assert_cmpuint(exti_readl(EXTI_SWIER1), ==, 0x00000001);
|
||||
g_assert_cmphex(exti_readl(EXTI_SWIER1), ==, 0x00000001);
|
||||
/* Check that the pending bit in PR wasn't set */
|
||||
g_assert_cmpuint(exti_readl(EXTI_PR1), ==, 0x00000000);
|
||||
g_assert_cmphex(exti_readl(EXTI_PR1), ==, 0x00000000);
|
||||
/* Check that the interrupt isn't pending in NVIC */
|
||||
g_assert_false(check_nvic_pending(EXTI0_IRQ));
|
||||
|
||||
|
@ -371,7 +371,7 @@ static void test_no_software_interrupt(void)
|
|||
exti_writel(EXTI_IMR1, 0x00000001);
|
||||
|
||||
/* Check that the pending bit in PR wasn't set */
|
||||
g_assert_cmpuint(exti_readl(EXTI_PR1), ==, 0x00000000);
|
||||
g_assert_cmphex(exti_readl(EXTI_PR1), ==, 0x00000000);
|
||||
/* Check that the interrupt isn't pending in NVIC */
|
||||
g_assert_false(check_nvic_pending(EXTI0_IRQ));
|
||||
|
||||
|
@ -382,7 +382,7 @@ static void test_no_software_interrupt(void)
|
|||
|
||||
enable_nvic_irq(EXTI35_IRQ);
|
||||
/* Check that there are no interrupts already pending in PR */
|
||||
g_assert_cmpuint(exti_readl(EXTI_PR2), ==, 0x00000000);
|
||||
g_assert_cmphex(exti_readl(EXTI_PR2), ==, 0x00000000);
|
||||
/* Check that this specific interrupt isn't pending in NVIC */
|
||||
g_assert_false(check_nvic_pending(EXTI35_IRQ));
|
||||
|
||||
|
@ -393,9 +393,9 @@ static void test_no_software_interrupt(void)
|
|||
exti_writel(EXTI_SWIER2, 0x00000008);
|
||||
|
||||
/* Check that the write in SWIER was effective */
|
||||
g_assert_cmpuint(exti_readl(EXTI_SWIER2), ==, 0x00000008);
|
||||
g_assert_cmphex(exti_readl(EXTI_SWIER2), ==, 0x00000008);
|
||||
/* Check that the pending bit in PR wasn't set */
|
||||
g_assert_cmpuint(exti_readl(EXTI_PR2), ==, 0x00000000);
|
||||
g_assert_cmphex(exti_readl(EXTI_PR2), ==, 0x00000000);
|
||||
/* Check that the interrupt isn't pending in NVIC */
|
||||
g_assert_false(check_nvic_pending(EXTI35_IRQ));
|
||||
|
||||
|
@ -403,7 +403,7 @@ static void test_no_software_interrupt(void)
|
|||
exti_writel(EXTI_IMR2, 0x00000008);
|
||||
|
||||
/* Check that the pending bit in PR wasn't set */
|
||||
g_assert_cmpuint(exti_readl(EXTI_PR2), ==, 0x00000000);
|
||||
g_assert_cmphex(exti_readl(EXTI_PR2), ==, 0x00000000);
|
||||
/* Check that the interrupt isn't pending in NVIC */
|
||||
g_assert_false(check_nvic_pending(EXTI35_IRQ));
|
||||
}
|
||||
|
@ -423,7 +423,7 @@ static void test_masked_interrupt(void)
|
|||
|
||||
enable_nvic_irq(EXTI1_IRQ);
|
||||
/* Check that there are no interrupts already pending in PR */
|
||||
g_assert_cmpuint(exti_readl(EXTI_PR1), ==, 0x00000000);
|
||||
g_assert_cmphex(exti_readl(EXTI_PR1), ==, 0x00000000);
|
||||
/* Check that this specific interrupt isn't pending in NVIC */
|
||||
g_assert_false(check_nvic_pending(EXTI1_IRQ));
|
||||
|
||||
|
@ -437,7 +437,7 @@ static void test_masked_interrupt(void)
|
|||
exti_set_irq(1, 1);
|
||||
|
||||
/* Check that the pending bit in PR wasn't set */
|
||||
g_assert_cmpuint(exti_readl(EXTI_PR1), ==, 0x00000000);
|
||||
g_assert_cmphex(exti_readl(EXTI_PR1), ==, 0x00000000);
|
||||
/* Check that the interrupt isn't pending in NVIC */
|
||||
g_assert_false(check_nvic_pending(EXTI1_IRQ));
|
||||
|
||||
|
@ -445,7 +445,7 @@ static void test_masked_interrupt(void)
|
|||
exti_writel(EXTI_IMR1, 0x00000002);
|
||||
|
||||
/* Check that the pending bit in PR wasn't set */
|
||||
g_assert_cmpuint(exti_readl(EXTI_PR1), ==, 0x00000000);
|
||||
g_assert_cmphex(exti_readl(EXTI_PR1), ==, 0x00000000);
|
||||
/* Check that the interrupt isn't pending in NVIC */
|
||||
g_assert_false(check_nvic_pending(EXTI1_IRQ));
|
||||
}
|
||||
|
@ -469,7 +469,7 @@ static void test_interrupt(void)
|
|||
|
||||
enable_nvic_irq(EXTI1_IRQ);
|
||||
/* Check that there are no interrupts already pending in PR */
|
||||
g_assert_cmpuint(exti_readl(EXTI_PR1), ==, 0x00000000);
|
||||
g_assert_cmphex(exti_readl(EXTI_PR1), ==, 0x00000000);
|
||||
/* Check that this specific interrupt isn't pending in NVIC */
|
||||
g_assert_false(check_nvic_pending(EXTI1_IRQ));
|
||||
|
||||
|
@ -483,7 +483,7 @@ static void test_interrupt(void)
|
|||
exti_set_irq(1, 1);
|
||||
|
||||
/* Check that the pending bit in PR was set */
|
||||
g_assert_cmpuint(exti_readl(EXTI_PR1), ==, 0x00000002);
|
||||
g_assert_cmphex(exti_readl(EXTI_PR1), ==, 0x00000002);
|
||||
/* Check that the interrupt is pending in NVIC */
|
||||
g_assert_true(check_nvic_pending(EXTI1_IRQ));
|
||||
|
||||
|
@ -491,7 +491,7 @@ static void test_interrupt(void)
|
|||
exti_writel(EXTI_PR1, 0x00000002);
|
||||
|
||||
/* Check that the write in PR was effective */
|
||||
g_assert_cmpuint(exti_readl(EXTI_PR1), ==, 0x00000000);
|
||||
g_assert_cmphex(exti_readl(EXTI_PR1), ==, 0x00000000);
|
||||
/* Check that the interrupt is still pending in the NVIC */
|
||||
g_assert_true(check_nvic_pending(EXTI1_IRQ));
|
||||
|
||||
|
@ -509,7 +509,7 @@ static void test_orred_interrupts(void)
|
|||
*/
|
||||
enable_nvic_irq(EXTI5_9_IRQ);
|
||||
/* Check that there are no interrupts already pending in PR */
|
||||
g_assert_cmpuint(exti_readl(EXTI_PR1), ==, 0x00000000);
|
||||
g_assert_cmphex(exti_readl(EXTI_PR1), ==, 0x00000000);
|
||||
/* Check that this specific interrupt isn't pending in NVIC */
|
||||
g_assert_false(check_nvic_pending(EXTI5_9_IRQ));
|
||||
|
||||
|
@ -522,11 +522,11 @@ static void test_orred_interrupts(void)
|
|||
/* Raise GPIO line i, check that the interrupt is pending */
|
||||
for (unsigned i = 5; i < 10; i++) {
|
||||
exti_set_irq(i, 1);
|
||||
g_assert_cmpuint(exti_readl(EXTI_PR1), ==, 1 << i);
|
||||
g_assert_cmphex(exti_readl(EXTI_PR1), ==, 1 << i);
|
||||
g_assert_true(check_nvic_pending(EXTI5_9_IRQ));
|
||||
|
||||
exti_writel(EXTI_PR1, 1 << i);
|
||||
g_assert_cmpuint(exti_readl(EXTI_PR1), ==, 0x00000000);
|
||||
g_assert_cmphex(exti_readl(EXTI_PR1), ==, 0x00000000);
|
||||
g_assert_true(check_nvic_pending(EXTI5_9_IRQ));
|
||||
|
||||
unpend_nvic_irq(EXTI5_9_IRQ);
|
||||
|
|
|
@ -54,27 +54,27 @@ static void test_reset(void)
|
|||
/*
|
||||
* Test that registers are initialized at the correct values
|
||||
*/
|
||||
g_assert_cmpuint(syscfg_readl(SYSCFG_MEMRMP), ==, 0x00000000);
|
||||
g_assert_cmphex(syscfg_readl(SYSCFG_MEMRMP), ==, 0x00000000);
|
||||
|
||||
g_assert_cmpuint(syscfg_readl(SYSCFG_CFGR1), ==, 0x7C000001);
|
||||
g_assert_cmphex(syscfg_readl(SYSCFG_CFGR1), ==, 0x7C000001);
|
||||
|
||||
g_assert_cmpuint(syscfg_readl(SYSCFG_EXTICR1), ==, 0x00000000);
|
||||
g_assert_cmphex(syscfg_readl(SYSCFG_EXTICR1), ==, 0x00000000);
|
||||
|
||||
g_assert_cmpuint(syscfg_readl(SYSCFG_EXTICR2), ==, 0x00000000);
|
||||
g_assert_cmphex(syscfg_readl(SYSCFG_EXTICR2), ==, 0x00000000);
|
||||
|
||||
g_assert_cmpuint(syscfg_readl(SYSCFG_EXTICR3), ==, 0x00000000);
|
||||
g_assert_cmphex(syscfg_readl(SYSCFG_EXTICR3), ==, 0x00000000);
|
||||
|
||||
g_assert_cmpuint(syscfg_readl(SYSCFG_EXTICR4), ==, 0x00000000);
|
||||
g_assert_cmphex(syscfg_readl(SYSCFG_EXTICR4), ==, 0x00000000);
|
||||
|
||||
g_assert_cmpuint(syscfg_readl(SYSCFG_SCSR), ==, 0x00000000);
|
||||
g_assert_cmphex(syscfg_readl(SYSCFG_SCSR), ==, 0x00000000);
|
||||
|
||||
g_assert_cmpuint(syscfg_readl(SYSCFG_CFGR2), ==, 0x00000000);
|
||||
g_assert_cmphex(syscfg_readl(SYSCFG_CFGR2), ==, 0x00000000);
|
||||
|
||||
g_assert_cmpuint(syscfg_readl(SYSCFG_SWPR), ==, 0x00000000);
|
||||
g_assert_cmphex(syscfg_readl(SYSCFG_SWPR), ==, 0x00000000);
|
||||
|
||||
g_assert_cmpuint(syscfg_readl(SYSCFG_SKR), ==, 0x00000000);
|
||||
g_assert_cmphex(syscfg_readl(SYSCFG_SKR), ==, 0x00000000);
|
||||
|
||||
g_assert_cmpuint(syscfg_readl(SYSCFG_SWPR2), ==, 0x00000000);
|
||||
g_assert_cmphex(syscfg_readl(SYSCFG_SWPR2), ==, 0x00000000);
|
||||
}
|
||||
|
||||
static void test_reserved_bits(void)
|
||||
|
@ -87,25 +87,25 @@ static void test_reserved_bits(void)
|
|||
* register is still at reset value
|
||||
*/
|
||||
syscfg_writel(SYSCFG_MEMRMP, 0xFFFFFEF8);
|
||||
g_assert_cmpuint(syscfg_readl(SYSCFG_MEMRMP), ==, 0x00000000);
|
||||
g_assert_cmphex(syscfg_readl(SYSCFG_MEMRMP), ==, 0x00000000);
|
||||
|
||||
syscfg_writel(SYSCFG_CFGR1, 0x7F00FEFF);
|
||||
g_assert_cmpuint(syscfg_readl(SYSCFG_CFGR1), ==, 0x7C000001);
|
||||
g_assert_cmphex(syscfg_readl(SYSCFG_CFGR1), ==, 0x7C000001);
|
||||
|
||||
syscfg_writel(SYSCFG_EXTICR1, 0xFFFF0000);
|
||||
g_assert_cmpuint(syscfg_readl(SYSCFG_EXTICR1), ==, 0x00000000);
|
||||
g_assert_cmphex(syscfg_readl(SYSCFG_EXTICR1), ==, 0x00000000);
|
||||
|
||||
syscfg_writel(SYSCFG_EXTICR2, 0xFFFF0000);
|
||||
g_assert_cmpuint(syscfg_readl(SYSCFG_EXTICR2), ==, 0x00000000);
|
||||
g_assert_cmphex(syscfg_readl(SYSCFG_EXTICR2), ==, 0x00000000);
|
||||
|
||||
syscfg_writel(SYSCFG_EXTICR3, 0xFFFF0000);
|
||||
g_assert_cmpuint(syscfg_readl(SYSCFG_EXTICR3), ==, 0x00000000);
|
||||
g_assert_cmphex(syscfg_readl(SYSCFG_EXTICR3), ==, 0x00000000);
|
||||
|
||||
syscfg_writel(SYSCFG_EXTICR4, 0xFFFF0000);
|
||||
g_assert_cmpuint(syscfg_readl(SYSCFG_EXTICR4), ==, 0x00000000);
|
||||
g_assert_cmphex(syscfg_readl(SYSCFG_EXTICR4), ==, 0x00000000);
|
||||
|
||||
syscfg_writel(SYSCFG_SKR, 0xFFFFFF00);
|
||||
g_assert_cmpuint(syscfg_readl(SYSCFG_SKR), ==, 0x00000000);
|
||||
g_assert_cmphex(syscfg_readl(SYSCFG_SKR), ==, 0x00000000);
|
||||
}
|
||||
|
||||
static void test_set_and_clear(void)
|
||||
|
@ -114,40 +114,40 @@ static void test_set_and_clear(void)
|
|||
* Test that regular bits can be set and cleared
|
||||
*/
|
||||
syscfg_writel(SYSCFG_MEMRMP, 0x00000107);
|
||||
g_assert_cmpuint(syscfg_readl(SYSCFG_MEMRMP), ==, 0x00000107);
|
||||
g_assert_cmphex(syscfg_readl(SYSCFG_MEMRMP), ==, 0x00000107);
|
||||
syscfg_writel(SYSCFG_MEMRMP, 0x00000000);
|
||||
g_assert_cmpuint(syscfg_readl(SYSCFG_MEMRMP), ==, 0x00000000);
|
||||
g_assert_cmphex(syscfg_readl(SYSCFG_MEMRMP), ==, 0x00000000);
|
||||
|
||||
/* cfgr1 bit 0 is clear only so we keep it set */
|
||||
syscfg_writel(SYSCFG_CFGR1, 0xFCFF0101);
|
||||
g_assert_cmpuint(syscfg_readl(SYSCFG_CFGR1), ==, 0xFCFF0101);
|
||||
g_assert_cmphex(syscfg_readl(SYSCFG_CFGR1), ==, 0xFCFF0101);
|
||||
syscfg_writel(SYSCFG_CFGR1, 0x00000001);
|
||||
g_assert_cmpuint(syscfg_readl(SYSCFG_CFGR1), ==, 0x00000001);
|
||||
g_assert_cmphex(syscfg_readl(SYSCFG_CFGR1), ==, 0x00000001);
|
||||
|
||||
syscfg_writel(SYSCFG_EXTICR1, 0x0000FFFF);
|
||||
g_assert_cmpuint(syscfg_readl(SYSCFG_EXTICR1), ==, 0x0000FFFF);
|
||||
g_assert_cmphex(syscfg_readl(SYSCFG_EXTICR1), ==, 0x0000FFFF);
|
||||
syscfg_writel(SYSCFG_EXTICR1, 0x00000000);
|
||||
g_assert_cmpuint(syscfg_readl(SYSCFG_EXTICR1), ==, 0x00000000);
|
||||
g_assert_cmphex(syscfg_readl(SYSCFG_EXTICR1), ==, 0x00000000);
|
||||
|
||||
syscfg_writel(SYSCFG_EXTICR2, 0x0000FFFF);
|
||||
g_assert_cmpuint(syscfg_readl(SYSCFG_EXTICR2), ==, 0x0000FFFF);
|
||||
g_assert_cmphex(syscfg_readl(SYSCFG_EXTICR2), ==, 0x0000FFFF);
|
||||
syscfg_writel(SYSCFG_EXTICR2, 0x00000000);
|
||||
g_assert_cmpuint(syscfg_readl(SYSCFG_EXTICR2), ==, 0x00000000);
|
||||
g_assert_cmphex(syscfg_readl(SYSCFG_EXTICR2), ==, 0x00000000);
|
||||
|
||||
syscfg_writel(SYSCFG_EXTICR3, 0x0000FFFF);
|
||||
g_assert_cmpuint(syscfg_readl(SYSCFG_EXTICR3), ==, 0x0000FFFF);
|
||||
g_assert_cmphex(syscfg_readl(SYSCFG_EXTICR3), ==, 0x0000FFFF);
|
||||
syscfg_writel(SYSCFG_EXTICR3, 0x00000000);
|
||||
g_assert_cmpuint(syscfg_readl(SYSCFG_EXTICR3), ==, 0x00000000);
|
||||
g_assert_cmphex(syscfg_readl(SYSCFG_EXTICR3), ==, 0x00000000);
|
||||
|
||||
syscfg_writel(SYSCFG_EXTICR4, 0x0000FFFF);
|
||||
g_assert_cmpuint(syscfg_readl(SYSCFG_EXTICR4), ==, 0x0000FFFF);
|
||||
g_assert_cmphex(syscfg_readl(SYSCFG_EXTICR4), ==, 0x0000FFFF);
|
||||
syscfg_writel(SYSCFG_EXTICR4, 0x00000000);
|
||||
g_assert_cmpuint(syscfg_readl(SYSCFG_EXTICR4), ==, 0x00000000);
|
||||
g_assert_cmphex(syscfg_readl(SYSCFG_EXTICR4), ==, 0x00000000);
|
||||
|
||||
syscfg_writel(SYSCFG_SKR, 0x000000FF);
|
||||
g_assert_cmpuint(syscfg_readl(SYSCFG_SKR), ==, 0x000000FF);
|
||||
g_assert_cmphex(syscfg_readl(SYSCFG_SKR), ==, 0x000000FF);
|
||||
syscfg_writel(SYSCFG_SKR, 0x00000000);
|
||||
g_assert_cmpuint(syscfg_readl(SYSCFG_SKR), ==, 0x00000000);
|
||||
g_assert_cmphex(syscfg_readl(SYSCFG_SKR), ==, 0x00000000);
|
||||
}
|
||||
|
||||
static void test_clear_by_writing_1(void)
|
||||
|
@ -156,7 +156,7 @@ static void test_clear_by_writing_1(void)
|
|||
* Test that writing '1' doesn't set the bit
|
||||
*/
|
||||
syscfg_writel(SYSCFG_CFGR2, 0x00000100);
|
||||
g_assert_cmpuint(syscfg_readl(SYSCFG_CFGR2), ==, 0x00000000);
|
||||
g_assert_cmphex(syscfg_readl(SYSCFG_CFGR2), ==, 0x00000000);
|
||||
}
|
||||
|
||||
static void test_set_only_bits(void)
|
||||
|
@ -166,15 +166,15 @@ static void test_set_only_bits(void)
|
|||
*/
|
||||
syscfg_writel(SYSCFG_CFGR2, 0x0000000F);
|
||||
syscfg_writel(SYSCFG_CFGR2, 0x00000000);
|
||||
g_assert_cmpuint(syscfg_readl(SYSCFG_CFGR2), ==, 0x0000000F);
|
||||
g_assert_cmphex(syscfg_readl(SYSCFG_CFGR2), ==, 0x0000000F);
|
||||
|
||||
syscfg_writel(SYSCFG_SWPR, 0xFFFFFFFF);
|
||||
syscfg_writel(SYSCFG_SWPR, 0x00000000);
|
||||
g_assert_cmpuint(syscfg_readl(SYSCFG_SWPR), ==, 0xFFFFFFFF);
|
||||
g_assert_cmphex(syscfg_readl(SYSCFG_SWPR), ==, 0xFFFFFFFF);
|
||||
|
||||
syscfg_writel(SYSCFG_SWPR2, 0xFFFFFFFF);
|
||||
syscfg_writel(SYSCFG_SWPR2, 0x00000000);
|
||||
g_assert_cmpuint(syscfg_readl(SYSCFG_SWPR2), ==, 0xFFFFFFFF);
|
||||
g_assert_cmphex(syscfg_readl(SYSCFG_SWPR2), ==, 0xFFFFFFFF);
|
||||
|
||||
system_reset();
|
||||
}
|
||||
|
@ -186,7 +186,7 @@ static void test_clear_only_bits(void)
|
|||
*/
|
||||
syscfg_writel(SYSCFG_CFGR1, 0x00000000);
|
||||
syscfg_writel(SYSCFG_CFGR1, 0x00000001);
|
||||
g_assert_cmpuint(syscfg_readl(SYSCFG_CFGR1), ==, 0x00000000);
|
||||
g_assert_cmphex(syscfg_readl(SYSCFG_CFGR1), ==, 0x00000000);
|
||||
|
||||
system_reset();
|
||||
}
|
||||
|
|
|
@ -30,19 +30,16 @@ typedef struct {
|
|||
|
||||
static void io_read(EventNotifier *notifier)
|
||||
{
|
||||
fprintf(stderr, "%s %p\n", __func__, notifier);
|
||||
event_notifier_test_and_clear(notifier);
|
||||
}
|
||||
|
||||
static bool io_poll_true(void *opaque)
|
||||
{
|
||||
fprintf(stderr, "%s %p\n", __func__, opaque);
|
||||
return true;
|
||||
}
|
||||
|
||||
static bool io_poll_false(void *opaque)
|
||||
{
|
||||
fprintf(stderr, "%s %p\n", __func__, opaque);
|
||||
return false;
|
||||
}
|
||||
|
||||
|
@ -50,8 +47,6 @@ static void io_poll_ready(EventNotifier *notifier)
|
|||
{
|
||||
TestData *td = container_of(notifier, TestData, poll_notifier);
|
||||
|
||||
fprintf(stderr, "> %s\n", __func__);
|
||||
|
||||
g_assert(!td->nested);
|
||||
td->nested = true;
|
||||
|
||||
|
@ -62,8 +57,6 @@ static void io_poll_ready(EventNotifier *notifier)
|
|||
g_assert(aio_poll(td->ctx, true));
|
||||
|
||||
td->nested = false;
|
||||
|
||||
fprintf(stderr, "< %s\n", __func__);
|
||||
}
|
||||
|
||||
/* dummy_notifier never triggers */
|
||||
|
|
|
@ -26,8 +26,8 @@ class CentosVM(basevm.BaseVM):
|
|||
export SRC_ARCHIVE=/dev/vdb;
|
||||
sudo chmod a+r $SRC_ARCHIVE;
|
||||
tar -xf $SRC_ARCHIVE;
|
||||
make docker-test-block@centos8 {verbose} J={jobs} NETWORK=1;
|
||||
make docker-test-quick@centos8 {verbose} J={jobs} NETWORK=1;
|
||||
make docker-test-block@centos9 {verbose} J={jobs} NETWORK=1;
|
||||
make docker-test-quick@centos9 {verbose} J={jobs} NETWORK=1;
|
||||
"""
|
||||
|
||||
def build_image(self, img):
|
||||
|
|
|
@ -22,8 +22,8 @@ class OpenBSDVM(basevm.BaseVM):
|
|||
name = "openbsd"
|
||||
arch = "x86_64"
|
||||
|
||||
link = "https://cdn.openbsd.org/pub/OpenBSD/7.4/amd64/install74.iso"
|
||||
csum = "a1001736ed9fe2307965b5fcdb426ae11f9b80d26eb21e404a705144a0a224a0"
|
||||
link = "https://cdn.openbsd.org/pub/OpenBSD/7.5/amd64/install75.iso"
|
||||
csum = "034435c6e27405d5a7fafb058162943c194eb793dafdc412c08d49bb56b3892a"
|
||||
size = "20G"
|
||||
pkgs = [
|
||||
# tools
|
||||
|
@ -124,7 +124,7 @@ class OpenBSDVM(basevm.BaseVM):
|
|||
self.console_wait_send("Allow root ssh login", "yes\n")
|
||||
self.console_wait_send("timezone", "UTC\n")
|
||||
self.console_wait_send("root disk", "\n")
|
||||
self.console_wait_send("Encrypt the root disk with a passphrase", "no\n")
|
||||
self.console_wait_send("Encrypt the root disk with a (p)assphrase", "no\n")
|
||||
self.console_wait_send("(W)hole disk", "\n")
|
||||
self.console_wait_send("(A)uto layout", "c\n")
|
||||
|
||||
|
|
Loading…
Reference in New Issue