mirror of
https://github.com/Telecominfraproject/OpenCellular.git
synced 2026-01-16 01:51:11 +00:00
gfx_test: Update i915 binding in wrapper script
Always load i915 even if it wasn't loaded before. Also, force `modeset=1` as that's our use case and we might have booted with `i915.modeset=0`. Last but not least, search for the correct vtcon* entry in sysfs instead of guessing, and always unbind it (i.e. unbind the dummy driver when we want to switch back to i915). Change-Id: Ib62a05a3621aef2992372a6d3acad1196a363a95 Signed-off-by: Nico Huber <nico.h@gmx.de> Reviewed-on: https://review.coreboot.org/22715 Reviewed-by: Stefan Reinauer <stefan.reinauer@coreboot.org> Tested-by: Stefan Reinauer <stefan.reinauer@coreboot.org>
This commit is contained in:
@@ -35,10 +35,15 @@ prepare_vt() {
|
||||
while [ `fgconsole` -eq $orig_vt ]; do :; done
|
||||
|
||||
# take i915 out of charge
|
||||
echo 0 >/sys/devices/virtual/vtconsole/vtcon1/bind
|
||||
for vtcon in /sys/devices/virtual/vtconsole/vtcon*; do
|
||||
if grep -q frame\ buffer $vtcon/name >/dev/null 2>&1; then
|
||||
echo 0 >$vtcon/bind
|
||||
break
|
||||
fi
|
||||
done
|
||||
|
||||
# try unloading it
|
||||
if lsmod | grep -q i915 && modprobe -r i915 >/dev/null 2>&1; then
|
||||
if modprobe -r i915 >/dev/null 2>&1; then
|
||||
reload_i915=1
|
||||
fi
|
||||
}
|
||||
@@ -46,12 +51,17 @@ prepare_vt() {
|
||||
restore_vt() {
|
||||
# reload i915
|
||||
if [ $reload_i915 -eq 1 ]; then
|
||||
modprobe i915
|
||||
modprobe i915 modeset=1
|
||||
else
|
||||
# put i915 back in charge
|
||||
for vtcon in /sys/devices/virtual/vtconsole/vtcon*; do
|
||||
if grep -q dummy $vtcon/name >/dev/null 2>&1; then
|
||||
echo 0 >$vtcon/bind
|
||||
break
|
||||
fi
|
||||
done
|
||||
fi
|
||||
|
||||
# put i915 back in charge
|
||||
echo 1 >/sys/devices/virtual/vtconsole/vtcon1/bind
|
||||
|
||||
# return to original VT
|
||||
chvt $orig_vt
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user