You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
74 lines
1.5 KiB
74 lines
1.5 KiB
#!/bin/bash
|
|
#
|
|
# Testcase: Load Intel DDX after fbdev was loaded
|
|
#
|
|
|
|
whoami | grep -q root || {
|
|
echo "ERROR: not running as root"
|
|
exit 1
|
|
}
|
|
|
|
# no other X session should be running
|
|
find /tmp/ -name .X*lock 2>/dev/null | grep -q X && {
|
|
echo "ERROR: X session already running"
|
|
exit 1
|
|
}
|
|
|
|
TMPDIR=$(mktemp -d /tmp/igt.XXXX) || {
|
|
echo "ERROR: Failed to create temp dir"
|
|
exit 1
|
|
}
|
|
|
|
cat > $TMPDIR/xorg.conf.fbdev << EOF
|
|
Section "Device"
|
|
Driver "fbdev"
|
|
Identifier "Device[fbdev]"
|
|
EndSection
|
|
EOF
|
|
|
|
cat > $TMPDIR/xorg.conf.intel << EOF
|
|
Section "Device"
|
|
Driver "intel"
|
|
Identifier "Device[intel]"
|
|
EndSection
|
|
EOF
|
|
|
|
# log before fbdev
|
|
dmesg -c > $TMPDIR/dmesg.1.before.fbdev
|
|
cp /var/log/Xorg.0.log $TMPDIR/Xorg.0.log.1.before.fbdev
|
|
|
|
# run fbdev
|
|
xinit -- /usr/bin/X -config $TMPDIR/xorg.conf.fbdev &
|
|
sleep 5
|
|
if [ -f `which intel_reg` ]; then
|
|
`which intel_reg` dump > $TMPDIR/intel_reg_dump.1.fbdev
|
|
fi
|
|
killall X
|
|
|
|
# log after fbdev & before intel
|
|
dmesg -c > $TMPDIR/dmesg.2.after.fbdev.before.intel
|
|
cp /var/log/Xorg.0.log $TMPDIR/Xorg.0.log.2.after.fbdev.before.intel
|
|
|
|
sleep 5
|
|
|
|
# run intel
|
|
xinit -- /usr/bin/X -config $TMPDIR/xorg.conf.intel &
|
|
sleep 5
|
|
if [ -f `which intel_reg` ]; then
|
|
`which intel_reg` dump > $TMPDIR/intel_reg_dump.2.intel
|
|
fi
|
|
killall X
|
|
|
|
# log after intel
|
|
dmesg -c > $TMPDIR/dmesg.3.after.intel
|
|
cp /var/log/Xorg.0.log $TMPDIR/Xorg.0.log.3.after.intel
|
|
|
|
cp $0 $TMPDIR/
|
|
|
|
tar czf $TMPDIR.tar.gz $TMPDIR/*
|
|
if [ -f $TMPDIR.tar.gz ]; then
|
|
echo $TMPDIR.tar.gz contains this script, all configs and logs generated on this tests
|
|
fi
|
|
|
|
exit 0
|