!C99Shell v. 1.0 pre-release build #13!

Software: Apache/2.0.54 (Unix) mod_perl/1.99_09 Perl/v5.8.0 mod_ssl/2.0.54 OpenSSL/0.9.7l DAV/2 FrontPage/5.0.2.2635 PHP/4.4.0 mod_gzip/2.0.26.1a 

uname -a: Linux snow.he.net 4.4.276-v2-mono-1 #1 SMP Wed Jul 21 11:21:17 PDT 2021 i686 

uid=99(nobody) gid=98(nobody) groups=98(nobody) 

Safe-mode: OFF (not secure)

/usr/src/linux-2.4.18-xfs-1.1/include/asm-arm/   drwxr-xr-x
Free 318.37 GB of 458.09 GB (69.5%)
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Feedback    Self remove    Logout    


Viewing file:     ecard.h (5.97 KB)      -rw-r--r--
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
/*
 * linux/include/asm-arm/ecard.h
 *
 * definitions for expansion cards
 *
 * This is a new system as from Linux 1.2.3
 *
 * Changelog:
 *  11-12-1996    RMK    Further minor improvements
 *  12-09-1997    RMK    Added interrupt enable/disable for card level
 *
 * Reference: Acorns Risc OS 3 Programmers Reference Manuals.
 */

#ifndef __ASM_ECARD_H
#define __ASM_ECARD_H

/*
 * Currently understood cards (but not necessarily
 * supported):
 *                        Manufacturer  Product ID
 */
#define MANU_ACORN        0x0000
#define PROD_ACORN_SCSI            0x0002
#define PROD_ACORN_ETHER1        0x0003
#define PROD_ACORN_MFM            0x000b

#define MANU_ANT2        0x0011
#define PROD_ANT_ETHER3            0x00a4

#define MANU_ATOMWIDE        0x0017
#define PROD_ATOMWIDE_3PSERIAL        0x0090

#define MANU_IRLAM_INSTRUMENTS    0x001f
#define MANU_IRLAM_INSTRUMENTS_ETHERN    0x5678

#define MANU_OAK        0x0021
#define PROD_OAK_SCSI            0x0058

#define MANU_MORLEY        0x002b
#define PROD_MORLEY_SCSI_UNCACHED    0x0067

#define MANU_CUMANA        0x003a
#define PROD_CUMANA_SCSI_2        0x003a
#define PROD_CUMANA_SCSI_1        0x00a0

#define MANU_ICS        0x003c
#define PROD_ICS_IDE            0x00ae

#define MANU_ICS2        0x003d
#define PROD_ICS2_IDE            0x00ae

#define MANU_SERPORT        0x003f
#define PROD_SERPORT_DSPORT        0x00b9

#define MANU_I3            0x0046
#define PROD_I3_ETHERLAN500        0x00d4
#define PROD_I3_ETHERLAN600        0x00ec
#define PROD_I3_ETHERLAN600A        0x011e

#define MANU_ANT        0x0053
#define PROD_ANT_ETHERM            0x00d8
#define PROD_ANT_ETHERB            0x00e4

#define MANU_ALSYSTEMS        0x005b
#define PROD_ALSYS_SCSIATAPI        0x0107

#define MANU_MCS        0x0063
#define PROD_MCS_CONNECT32        0x0125

#define MANU_EESOX        0x0064
#define PROD_EESOX_SCSI2        0x008c

#define MANU_YELLOWSTONE    0x0096
#define PROD_YELLOWSTONE_RAPIDE32    0x0120

#ifdef ECARD_C
#define CONST
#else
#define CONST const
#endif

#define MAX_ECARDS    9

typedef enum {                /* Cards address space        */
    ECARD_IOC,
    ECARD_MEMC,
    ECARD_EASI
} card_type_t;

typedef enum {                /* Speed for ECARD_IOC space    */
    ECARD_SLOW     = 0,
    ECARD_MEDIUM     = 1,
    ECARD_FAST     = 2,
    ECARD_SYNC     = 3
} card_speed_t;

typedef struct  {            /* Card ID structure        */
    unsigned short manufacturer;
    unsigned short product;
} card_ids;

struct in_ecid {            /* Packed card ID information    */
    unsigned short    product;    /* Product code            */
    unsigned short    manufacturer;    /* Manufacturer code        */
    unsigned char    id:4;        /* Simple ID            */
    unsigned char    cd:1;        /* Chunk dir present        */
    unsigned char    is:1;        /* Interrupt status pointers    */
    unsigned char    w:2;        /* Width            */
    unsigned char    country;    /* Country            */
    unsigned char    irqmask;    /* IRQ mask            */
    unsigned char    fiqmask;    /* FIQ mask            */
    unsigned long    irqoff;        /* IRQ offset            */
    unsigned long    fiqoff;        /* FIQ offset            */
};

typedef struct expansion_card ecard_t;
typedef unsigned long *loader_t;

typedef struct {            /* Card handler routines    */
    void (*irqenable)(ecard_t *ec, int irqnr);
    void (*irqdisable)(ecard_t *ec, int irqnr);
    int  (*irqpending)(ecard_t *ec);
    void (*fiqenable)(ecard_t *ec, int fiqnr);
    void (*fiqdisable)(ecard_t *ec, int fiqnr);
    int  (*fiqpending)(ecard_t *ec);
} expansioncard_ops_t;

/*
 * This contains all the info needed on an expansion card
 */
struct expansion_card {
    struct expansion_card  *next;

    /* Public data */
    volatile unsigned char *irqaddr;    /* address of IRQ register    */
    volatile unsigned char *fiqaddr;    /* address of FIQ register    */
    unsigned char        irqmask;    /* IRQ mask            */
    unsigned char        fiqmask;    /* FIQ mask            */
    unsigned char          claimed;    /* Card claimed?        */

    void            *irq_data;    /* Data for use for IRQ by card    */
    void            *fiq_data;    /* Data for use for FIQ by card    */
    expansioncard_ops_t    *ops;        /* Enable/Disable Ops for card    */

    CONST unsigned int    slot_no;    /* Slot number            */
    CONST unsigned int    dma;        /* DMA number (for request_dma)    */
    CONST unsigned int    irq;        /* IRQ number (for request_irq)    */
    CONST unsigned int    fiq;        /* FIQ number (for request_irq)    */
    CONST card_type_t    type;        /* Type of card            */
    CONST struct in_ecid    cid;        /* Card Identification        */

    /* Private internal data */
    const char        *card_desc;    /* Card description        */
    CONST unsigned int    podaddr;    /* Base Linux address for card    */
    CONST loader_t        loader;        /* loader program */
};

struct in_chunk_dir {
    unsigned int start_offset;
    union {
        unsigned char string[256];
        unsigned char data[1];
    } d;
};

/*
 * ecard_claim: claim an expansion card entry
 */
#define ecard_claim(ec) ((ec)->claimed = 1)

/*
 * ecard_release: release an expansion card entry
 */
#define ecard_release(ec) ((ec)->claimed = 0)

/*
 * Start finding cards from the top of the list
 */
extern void ecard_startfind (void);

/*
 * Find an expansion card with the correct cid, product and manufacturer code
 */
extern struct expansion_card *ecard_find (int cid, const card_ids *ids);
 
/*
 * Read a chunk from an expansion card
 * cd : where to put read data
 * ec : expansion card info struct
 * id : id number to find
 * num: (n+1)'th id to find.
 */
extern int ecard_readchunk (struct in_chunk_dir *cd, struct expansion_card *ec, int id, int num);

/*
 * Obtain the address of a card
 */
extern unsigned int ecard_address (struct expansion_card *ec, card_type_t card_type, card_speed_t speed);

#ifdef ECARD_C
/* Definitions internal to ecard.c - for it's use only!!
 *
 * External expansion card header as read from the card
 */
struct ex_ecid {
    unsigned char    r_irq:1;
    unsigned char    r_zero:1;
    unsigned char    r_fiq:1;
    unsigned char    r_id:4;
    unsigned char    r_a:1;

    unsigned char    r_cd:1;
    unsigned char    r_is:1;
    unsigned char    r_w:2;
    unsigned char    r_r1:4;

    unsigned char    r_r2:8;

    unsigned char    r_prod[2];

    unsigned char    r_manu[2];

    unsigned char    r_country;

    unsigned char    r_irqmask;
    unsigned char    r_irqoff[3];

    unsigned char    r_fiqmask;
    unsigned char    r_fiqoff[3];
};

/*
 * Chunk directory entry as read from the card
 */
struct ex_chunk_dir {
    unsigned char r_id;
    unsigned char r_len[3];
    unsigned long r_start;
    union {
        char string[256];
        char data[1];
    } d;
#define c_id(x)        ((x)->r_id)
#define c_len(x)    ((x)->r_len[0]|((x)->r_len[1]<<8)|((x)->r_len[2]<<16))
#define c_start(x)    ((x)->r_start)
};

#endif

#endif

:: Command execute ::

Enter:
 
Select:
 

:: Search ::
  - regexp 

:: Upload ::
 
[ Read-Only ]

:: Make Dir ::
 
[ Read-Only ]
:: Make File ::
 
[ Read-Only ]

:: Go Dir ::
 
:: Go File ::
 

--[ c99shell v. 1.0 pre-release build #13 powered by Captain Crunch Security Team | http://ccteam.ru | Generation time: 0.015 ]--