Annotation of XNU/iokit/Drivers/pci/drvApplePCI/AppleI386PCI.h, revision 1.1.1.1

1.1       root        1: /*
                      2:  * Copyright (c) 1998-2000 Apple Computer, Inc. All rights reserved.
                      3:  *
                      4:  * @APPLE_LICENSE_HEADER_START@
                      5:  * 
                      6:  * The contents of this file constitute Original Code as defined in and
                      7:  * are subject to the Apple Public Source License Version 1.1 (the
                      8:  * "License").  You may not use this file except in compliance with the
                      9:  * License.  Please obtain a copy of the License at
                     10:  * http://www.apple.com/publicsource and read it before using this file.
                     11:  * 
                     12:  * This Original Code and all software distributed under the License are
                     13:  * distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, EITHER
                     14:  * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
                     15:  * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
                     16:  * FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT.  Please see the
                     17:  * License for the specific language governing rights and limitations
                     18:  * under the License.
                     19:  * 
                     20:  * @APPLE_LICENSE_HEADER_END@
                     21:  */
                     22: /*
                     23:  * Copyright (c) 1998 Apple Computer, Inc.  All rights reserved. 
                     24:  *
                     25:  * HISTORY
                     26:  *
                     27:  */
                     28: 
                     29: 
                     30: #ifndef _IOKIT_APPLEI386PCI_H
                     31: #define _IOKIT_APPLEI386PCI_H
                     32: 
                     33: #include <IOKit/pci/IOPCIBridge.h>
                     34: 
                     35: class AppleI386PCI : public IOPCIBridge
                     36: {
                     37:     OSDeclareDefaultStructors(AppleI386PCI)
                     38: 
                     39:     IODeviceMemory *   ioMemory;
                     40: 
                     41:     UInt8              maxBusNum;        /* Highest valid Bus Number */
                     42:     UInt8              maxDevNum;        /* Highest valid Device Number */
                     43:     bool               BIOS16Present;    /* booter found PCI BIOS 16 */
                     44:     bool               configMethod1;    /* host bridge supports CM1 */
                     45:     bool               configMethod2;    /* host bridge supports CM2 */
                     46:     bool               specialCycle1;    /* host bridge supports SC1 */
                     47:     bool               specialCycle2;    /* host bridge supports SC2 */
                     48:     bool               BIOS32Present;    /* init found PCI BIOS 32 */
                     49:     void               *BIOS32Entry;     /* Points to 32 bit PCI entry pt */
                     50:     int                        majorVersion;     /* Packed BCD Major Rev#: 0x02 */
                     51:     int                        minorVersion;     /* Packed BCD Minor Rev#: 0x00 */
                     52: 
                     53: private:
                     54:     virtual UInt32 configRead32Method1( IOPCIAddressSpace space,
                     55:                                         UInt8 offset );
                     56:     virtual void configWrite32Method1( IOPCIAddressSpace space,
                     57:                                         UInt8 offset, UInt32 data );
                     58:     virtual UInt32 configRead32Method2( IOPCIAddressSpace space,
                     59:                                         UInt8 offset );
                     60:     virtual void configWrite32Method2( IOPCIAddressSpace space,
                     61:                                         UInt8 offset, UInt32 data );
                     62: 
                     63:     virtual IOPCIAddressSpace getBridgeSpace( void );
                     64: 
                     65: protected:
                     66:     virtual UInt8 firstBusNum( void );
                     67:     virtual UInt8 lastBusNum( void );
                     68: 
                     69: public:
                     70:     virtual bool start(        IOService * provider );
                     71:     virtual bool configure( IOService * provider );
                     72: 
                     73:     virtual void free();
                     74:     virtual IODeviceMemory * ioDeviceMemory( void );
                     75: 
                     76:     virtual UInt32 configRead32( IOPCIAddressSpace space, UInt8 offset );
                     77: 
                     78:     virtual void configWrite32( IOPCIAddressSpace space,
                     79:                                        UInt8 offset, UInt32 data );
                     80: };
                     81: 
                     82: #endif /* ! _IOKIT_APPLEI386PCI_H */
                     83: 

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.