[SeaBIOS] Help needed with ASSERT32FLAT()

Kevin O'Connor kevin at koconnor.net
Sat Oct 13 15:11:45 CEST 2012


On Fri, Oct 12, 2012 at 12:43:02PM +0200, Christian Gmeiner wrote:
> During my usb debug session I want to malloc ehci usb bulk tds like
> for control messages,
> but I can not compile it... here is an example:

The usb_send_bulk() function is called in both 32bit mode and 16bit
mode.  The ASSERT32FLAT() macro is a compile-time check that verifies
the given code is only ever called in 32bit mode.  So, stopping the
compile is exactly what it is supposed to do.

One can't call malloc from 16bit mode (or indeed any time after the
"post" phase completes).  That's why the existing bulk transfer code
has all the weird stack allocation stuff.

-Kevin



More information about the SeaBIOS mailing list