X-Git-Url: https://git.saurik.com/apple/xnu.git/blobdiff_plain/cc8bc92ae4a8e9f1a1ab61bf83d34ad8150b3405..5c9f46613a83ebfc29a5b1f099448259e96a98f0:/iokit/IOKit/IOPlatformExpert.h diff --git a/iokit/IOKit/IOPlatformExpert.h b/iokit/IOKit/IOPlatformExpert.h index f66f8da1f..63029bb1d 100644 --- a/iokit/IOKit/IOPlatformExpert.h +++ b/iokit/IOKit/IOPlatformExpert.h @@ -47,6 +47,13 @@ extern "C" { #include +typedef enum { + kCoprocessorVersionNone = 0x00000000, + kCoprocessorVersion1 = 0x00010000, + kCoprocessorVersion2 = 0x00020000, +} coprocessor_type_t; + + extern boolean_t PEGetMachineName( char * name, int maxLength ); extern boolean_t PEGetModelName( char * name, int maxLength ); extern int PEGetPlatformEpoch( void ); @@ -68,7 +75,13 @@ extern int PEHaltRestart(unsigned int type); // Save the Panic Info. Returns the number of bytes saved. extern UInt32 PESavePanicInfo(UInt8 *buffer, UInt32 length); -extern void PESavePanicInfoAction(void *buffer, size_t length); +extern void PESavePanicInfoAction(void *buffer, UInt32 offset, UInt32 length); + +/* + * SMC requires that all data is flushed in multiples of 16 bytes at 16 byte + * boundaries. + */ +#define PANIC_FLUSH_BOUNDARY 16 extern long PEGetGMTTimeOfDay( void ); extern void PESetGMTTimeOfDay( long secs ); @@ -84,12 +97,16 @@ extern boolean_t PEReadNVRAMProperty(const char *symbol, void *value, unsigned i extern boolean_t PERemoveNVRAMProperty(const char *symbol); +extern coprocessor_type_t PEGetCoprocessorVersion( void ); + #ifdef __cplusplus } /* extern "C" */ #define kIOPlatformMapperPresentKey "IOPlatformMapperPresent" + + extern OSSymbol * gPlatformInterruptControllerName; extern const OSSymbol * gIOPlatformSleepActionKey;