[syslinux] EFI: HP + syslinux = crash

Gene Cumm gene.cumm at gmail.com
Wed Aug 5 19:11:19 PDT 2015


On Wed, Aug 5, 2015 at 9:45 AM, Oscar Roozen via Syslinux
<syslinux at zytor.com> wrote:

> On 05-08-15 15:28, Gene Cumm wrote:
>>>>
>>>> 0x2f8 is a BIOSism.

>>> Is this a problem? The example in the comments said 0x3f8 which is COM1.

>> It means that a BIOS IO port for a UART won't work for EFI.  No value
>> for DEBUG_PORT will do anything unless someone's got some translation
>> "glue" to take the attempts to open the UART and use an EFI handle
>> instead.

> That's weird, since enabling this finally got me some debugging output from
> dprintf(). I think I'm being lucky here! HP apparently provides the
> necessary glue.

It's either the firmware or deeper code in Syslinux.  I see the same
results with a VM on VMware Workstation and I'm absolutely shocked and
excited it works.

> What would be the correct way to enable debugging under EFI? Normal printf
> output remains invisible, so DEBUG_STDIO doesn't work.

printf() calls shouldn't work until ldllinux.* is loaded while
dprintf() calls should be seen earlier.

> If there is nothing yet, I think a wrapper around printf (and *prinf) is
> needed. This should [v]sprintf() to a buffer and then print the resulting
> buffer using APrint("%a", buffer) if EFI_BUILD is defined.


-- 
-Gene


More information about the Syslinux mailing list