Annotation of Examples/DriverKit/SMC16/SMC16_reloc.tproj/SMC16.h, revision 1.1

1.1     ! root        1: /*
        !             2:  * Copyright (c) 1993 NeXT Computer, Inc.
        !             3:  *
        !             4:  * Driver class for SMC EtherCard Plus Elite16 Ethernet adapters.
        !             5:  *
        !             6:  * HISTORY
        !             7:  *
        !             8:  * 26 Jan 1993 
        !             9:  *     Created.
        !            10:  */
        !            11: 
        !            12: #import <driverkit/IOEthernet.h>
        !            13: #import <driverkit/i386/directDevice.h>
        !            14: #import "SMC16Hdw.h"
        !            15: #import "wd83C690.h"
        !            16: 
        !            17: @interface SMC16:IOEthernet
        !            18: {
        !            19:     IOEISAPortAddress  base;           /* port base                         */
        !            20:     int                        irq;            /* interrupt                         */
        !            21:     enet_addr_t                myAddress;      /* local copy of ethernet address    */
        !            22:     IONetwork          *network;       /* handle to kernel network object   */
        !            23:     
        !            24:     id                 transmitQueue;  /* queue for outgoing packets        */
        !            25:     BOOL               transmitActive; /* trasmit in progress               */
        !            26:     
        !            27:     vm_offset_t                membase;        /* base address of onboard memory    */
        !            28:     vm_size_t          memsize;        /* configured size of onboard memory */
        !            29: 
        !            30:     SMC16_len_t                memtotal;       /* actualy size of onboard memory    */
        !            31:     SMC16_len_t                memused;        /* amount of onboard memory in use   */
        !            32:     
        !            33:     SMC16_off_t                rstart;         /* ptr to 1st buffer in ring         */
        !            34:     SMC16_off_t                rstop;          /* ptr to last bufferin in ring      */
        !            35:     SMC16_off_t                rnext;          /* ptr to next avaliable buffer      */
        !            36:     
        !            37:     SMC16_off_t                tstart;         /* ptr to transmit buffer            */
        !            38: 
        !            39:     nic_rcon_reg_t     rconsave;       /* recv ctrl register value          */
        !            40: }
        !            41: 
        !            42: + (BOOL)probe:(IODeviceDescription *)devDesc;
        !            43: 
        !            44: - initFromDeviceDescription:(IODeviceDescription *)devDesc;
        !            45: - free;
        !            46: 
        !            47: - (IOReturn)enableAllInterrupts;
        !            48: - (void)disableAllInterrupts;
        !            49: - (BOOL)resetAndEnable:(BOOL)enable;
        !            50: - (void)timeoutOccurred;
        !            51: - (void)interruptOccurred;
        !            52: 
        !            53: - (BOOL)enablePromiscuousMode;
        !            54: - (void)disablePromiscuousMode;
        !            55: - (BOOL)enableMulticastMode;
        !            56: - (void)disableMulticastMode;
        !            57: 
        !            58: - (void)transmit:(netbuf_t)pkt;
        !            59: 
        !            60: @end

unix.superglobalmegacorp.com

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