X-Git-Url: https://git.saurik.com/apple/xnu.git/blobdiff_plain/de355530ae67247cbd0da700edb3a2a1dae884c2..89b3af67bb32e691275bf6fa803d1834b2284115:/osfmk/ppc/Diagnostics.h?ds=sidebyside diff --git a/osfmk/ppc/Diagnostics.h b/osfmk/ppc/Diagnostics.h index 6837f338f..0adb89266 100644 --- a/osfmk/ppc/Diagnostics.h +++ b/osfmk/ppc/Diagnostics.h @@ -1,23 +1,29 @@ /* * Copyright (c) 2000 Apple Computer, Inc. All rights reserved. * - * @APPLE_LICENSE_HEADER_START@ + * @APPLE_OSREFERENCE_LICENSE_HEADER_START@ * - * The contents of this file constitute Original Code as defined in and - * are subject to the Apple Public Source License Version 1.1 (the - * "License"). You may not use this file except in compliance with the - * License. Please obtain a copy of the License at - * http://www.apple.com/publicsource and read it before using this file. + * This file contains Original Code and/or Modifications of Original Code + * as defined in and that are subject to the Apple Public Source License + * Version 2.0 (the 'License'). You may not use this file except in + * compliance with the License. The rights granted to you under the License + * may not be used to create, or enable the creation or redistribution of, + * unlawful or unlicensed copies of an Apple operating system, or to + * circumvent, violate, or enable the circumvention or violation of, any + * terms of an Apple operating system software license agreement. * - * This Original Code and all software distributed under the License are - * distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, EITHER + * Please obtain a copy of the License at + * http://www.opensource.apple.com/apsl/ and read it before using this file. + * + * The Original Code and all software distributed under the License are + * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES, * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT. Please see the - * License for the specific language governing rights and limitations - * under the License. + * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT. + * Please see the License for the specific language governing rights and + * limitations under the License. * - * @APPLE_LICENSE_HEADER_END@ + * @APPLE_OSREFERENCE_LICENSE_HEADER_END@ */ /* * @OSF_FREE_COPYRIGHT@ @@ -29,7 +35,9 @@ /* * Here are the Diagnostic interface interfaces * Lovingly crafted by Bill Angell using traditional methods + * Keep selectors in sync with the x86 version where possible. */ +#ifdef KERNEL_PRIVATE #ifndef _DIAGNOSTICS_H_ #define _DIAGNOSTICS_H_ @@ -37,6 +45,7 @@ #ifndef __ppc__ #error This file is only useful on PowerPC. #endif +#include int diagCall(struct savearea *save); @@ -52,6 +61,20 @@ int diagCall(struct savearea *save); #define dgBootScreen 7 #define dgFlush 8 #define dgAlign 9 +#define dgprw 10 +#define dgmck 11 +#define dg64 12 +#define dgProbeRead 13 +#define dgCPNull 14 +#define dgPerfMon 15 +#define dgMapPage 16 +#define dgScom 17 +#define dgBind 18 +#define dgPproc 19 +#define dgAcntg 20 +#define dgKlra 21 +#define dgKfree 22 +#define dgWar 23 typedef struct diagWork { /* Diagnostic work area */ @@ -70,15 +93,10 @@ typedef struct diagWork { /* Diagnostic work area */ #define enaDiagSDMb 27 #define enaDiagEM 0x00000020 #define enaDiagEMb 26 -/* Suppress lock checks */ -#define disLkType 0x80000000 -#define disLktypeb 0 -#define disLkThread 0x40000000 -#define disLkThreadb 1 -#define disLkNmSimp 0x20000000 -#define disLkNmSimpb 2 -#define disLkMyLck 0x10000000 -#define disLkMyLckb 3 +#define enaDiagTrap 0x00000040 +#define enaDiagTrapb 25 +#define enaNotifyEM 0x00000080 +#define enaNotifyEMb 24 unsigned int dgMisc0; unsigned int dgMisc1; @@ -89,7 +107,18 @@ typedef struct diagWork { /* Diagnostic work area */ } diagWork; +typedef struct scomcomm { + uint16_t scomcpu; /* CPU number */ + uint16_t scomfunc; /* 0 = read; 1 = write */ + uint32_t scomreg; /* SCOM register */ + uint64_t scomstat; /* returned status */ + uint64_t scomdata; /* input for write, output for read */ +} scomcomm; + extern diagWork dgWork; +extern int diagTrap(struct savearea *, unsigned int); #endif /* _DIAGNOSTICS_H_ */ + +#endif /* KERNEL_PRIVATE */