Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 6d60792e authored by Ilia Mirkin's avatar Ilia Mirkin Committed by Ben Skeggs
Browse files

drm/nouveau/bios: make jump conditional

This fixes a hang in VBIOS scripts of the form "condition; jump".
The jump used to always be executed, while now it will only be
executed if the condition is true.

See https://bugs.freedesktop.org/show_bug.cgi?id=72943



Reported-by: default avatarDarcy Brás da Silva <dardevelin@cidadecool.com>
Signed-off-by: default avatarIlia Mirkin <imirkin@alum.mit.edu>
Cc: stable@vger.kernel.org
parent 6e9cbb40
Loading
Loading
Loading
Loading
+5 −1
Original line number Diff line number Diff line
@@ -1294,7 +1294,11 @@ init_jump(struct nvbios_init *init)
	u16 offset = nv_ro16(bios, init->offset + 1);

	trace("JUMP\t0x%04x\n", offset);

	if (init_exec(init))
		init->offset = offset;
	else
		init->offset += 3;
}

/**