summaryrefslogtreecommitdiffstats
path: root/src/include/ipxe/quiesce.h
blob: 00b530b83c00ea8903075186aa863961d04c0733 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#ifndef _IPXE_QUIESCE_H
#define _IPXE_QUIESCE_H

/** @file
 *
 * Quiesce system
 *
 */

FILE_LICENCE ( GPL2_OR_LATER_OR_UBDL );

#include <ipxe/tables.h>

/** A quiescer */
struct quiescer {
	/** Quiesce system */
	void ( * quiesce ) ( void );
	/** Unquiesce system */
	void ( * unquiesce ) ( void );
};

/** Quiescer table */
#define QUIESCERS __table ( struct quiescer, "quiescers" )

/** Declare a quiescer */
#define __quiescer __table_entry ( QUIESCERS, 01 )

extern void quiesce ( void );
extern void unquiesce ( void );

#endif /* _IPXE_QUIESCE_H */