linux/include/linux/apm_bios.h

/* SPDX-License-Identifier: GPL-2.0-or-later */
/*
 * Include file for the interface to an APM BIOS
 * Copyright 1994-2001 Stephen Rothwell ([email protected])
 */
#ifndef _LINUX_APM_H
#define _LINUX_APM_H

#include <uapi/linux/apm_bios.h>


#define APM_CS
#define APM_CS_16
#define APM_DS

/* Results of APM Installation Check */
#define APM_16_BIT_SUPPORT
#define APM_32_BIT_SUPPORT
#define APM_IDLE_SLOWS_CLOCK
#define APM_BIOS_DISABLED
#define APM_BIOS_DISENGAGED

/*
 * Data for APM that is persistent across module unload/load
 */
struct apm_info {};

/*
 * The APM function codes
 */
#define APM_FUNC_INST_CHECK
#define APM_FUNC_REAL_CONN
#define APM_FUNC_16BIT_CONN
#define APM_FUNC_32BIT_CONN
#define APM_FUNC_DISCONN
#define APM_FUNC_IDLE
#define APM_FUNC_BUSY
#define APM_FUNC_SET_STATE
#define APM_FUNC_ENABLE_PM
#define APM_FUNC_RESTORE_BIOS
#define APM_FUNC_GET_STATUS
#define APM_FUNC_GET_EVENT
#define APM_FUNC_GET_STATE
#define APM_FUNC_ENABLE_DEV_PM
#define APM_FUNC_VERSION
#define APM_FUNC_ENGAGE_PM
#define APM_FUNC_GET_CAP
#define APM_FUNC_RESUME_TIMER
#define APM_FUNC_RESUME_ON_RING
#define APM_FUNC_TIMER

/*
 * Function code for APM_FUNC_RESUME_TIMER
 */
#define APM_FUNC_DISABLE_TIMER
#define APM_FUNC_GET_TIMER
#define APM_FUNC_SET_TIMER

/*
 * Function code for APM_FUNC_RESUME_ON_RING
 */
#define APM_FUNC_DISABLE_RING
#define APM_FUNC_ENABLE_RING
#define APM_FUNC_GET_RING

/*
 * Function code for APM_FUNC_TIMER_STATUS
 */
#define APM_FUNC_TIMER_DISABLE
#define APM_FUNC_TIMER_ENABLE
#define APM_FUNC_TIMER_GET

/*
 * in arch/i386/kernel/setup.c
 */
extern struct apm_info	apm_info;

/*
 * This is the "All Devices" ID communicated to the BIOS
 */
#define APM_DEVICE_BALL
#endif	/* LINUX_APM_H */