Subrata Banik has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/34284 )
Change subject: device/oprom: Lists all supported vesa mode by oprom ......................................................................
Patch Set 5:
(1 comment)
https://review.coreboot.org/c/coreboot/+/34284/4/src/device/oprom/realmode/x... File src/device/oprom/realmode/x86.c:
https://review.coreboot.org/c/coreboot/+/34284/4/src/device/oprom/realmode/x... PS4, Line 243: if (vbe_check_for_failure(X86_AH))
you could check for X86_AH == 3 here and handle it locally.
technically VESA_GET_INFO can't return 0x3 because as per VBE Return Status description 0x3 signified that current video mode is invalid and this will only come with set mode function 0x4F02
AH == 03h: Function call invalid in current video mode
but the simplicity of vbe spec always shows AX has Vbe return status in case of all vbe function (0x0, 0x4f00/01/02 etc)
Output: AX = VBE Return Status
i understand the ugliness of this recursive call here, tried to remove this now and just make if(X86_AH) which will be only non-zero in case of any error from vbe function. Hope this solves our problem and avoid recursion.