/* Make a BIOS call that returns one value only, or just status. If there is an error, then the error code is returned in @err and this function returns non-zero. This is used for simpler BIOS operations. This call may hold interrupts off for a long time on some laptops.  */
static int apm_bios_call_simple(u32 func, u32 ebx_in, u32 ecx_in, u32 *eax, int *err)
/* Make a BIOS call that returns one value only, or just status. If there is an error, then the error code is returned in @err and this function returns non-zero. This is used for simpler BIOS operations. This call may hold interrupts off for a long time on some laptops.  */
static int apm_bios_call_simple(u32 func, u32 ebx_in, u32 ecx_in, u32 *eax, int *err)
{
	struct apm_bios_call call;
	int ret;
	call.func = func;
	call.ebx = ebx_in;
	call.ecx = ecx_in;
	ret = on_cpu0(__apm_bios_call_simple, &call);
	*eax = call.eax;
	*err = call.err;
	return ret;
}