⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 tpci.h

📁 VIA VT6655 x86下的Linux Source Code
💻 H
字号:
/*
 * Copyright (c) 1996, 2003 VIA Networking Technologies, Inc.
 * All rights reserved.
 *
 * This software is copyrighted by and is the sole property of
 * VIA Networking Technologies, Inc. This software may only be used
 * in accordance with the corresponding license agreement. Any unauthorized
 * use, duplication, transmission, distribution, or disclosure of this
 * software is expressly forbidden.
 *
 * This software is provided by VIA Networking Technologies, Inc. "as is"
 * and any express or implied warranties, including, but not limited to, the
 * implied warranties of merchantability and fitness for a particular purpose
 * are disclaimed. In no event shall VIA Networking Technologies, Inc.
 * be liable for any direct, indirect, incidental, special, exemplary, or
 * consequential damages.
 *
 *
 * File: tpci.h
 *
 * Purpose: PCI routines
 *
 * Author: Tevin Chen
 *
 * Date: May 21, 1996
 *
 */


#ifndef __TPCI_H__
#define __TPCI_H__

#if !defined(__TTYPE_H__)
#include "ttype.h"
#endif




/*---------------------  Export Definitions -------------------------*/
#define MAX_PCI_BUS             4       // max. # of PCI bus that we support
#define MAX_PCI_DEVICE          32      // max. # of PCI devices


//
// Registers in the PCI configuration space
//
#define PCI_REG_VENDOR_ID       0x00    // 
#define PCI_REG_DEVICE_ID       0x02    // 
#define PCI_REG_COMMAND         0x04    //
#define PCI_REG_STATUS          0x06    // 
#define PCI_REG_REV_ID          0x08    // 
#define PCI_REG_CLASS_CODE      0x09    // 
#define PCI_REG_CACHELINE_SIZE  0x0C    // 
#define PCI_REG_LAT_TIMER       0x0D    // 
#define PCI_REG_HDR_TYPE        0x0E    // 
#define PCI_REG_BIST            0x0F    // 

#define PCI_REG_BAR0            0x10    // 
#define PCI_REG_BAR1            0x14    // 
#define PCI_REG_BAR2            0x18    // 
#define PCI_REG_CARDBUS_CIS_PTR 0x28    // 

#define PCI_REG_SUB_VEN_ID      0x2C    // 
#define PCI_REG_SUB_SYS_ID      0x2E    // 
#define PCI_REG_EXP_ROM_BAR     0x30    // 
#define PCI_REG_CAP             0x34    //

#define PCI_REG_INT_LINE        0x3C    // 
#define PCI_REG_INT_PIN         0x3D    // 
#define PCI_REG_MIN_GNT         0x3E    // 
#define PCI_REG_MAX_LAT         0x3F    // 

#define PCI_REG_MAX_SIZE        0x100   // maximun total PCI registers


//
// Bits in the COMMAND register
//
#define COMMAND_BUSM        0x04        //
#define COMMAND_WAIT        0x80        //

/*---------------------  Export Types  ------------------------------*/

/*---------------------  Export Macros ------------------------------*/

// macro MAKE Bus Dev Fun ID into WORD
#define MAKE_BDF_TO_WORD(byBusId, byDevId, byFunId) \
    MAKEWORD(                                       \
        ((((BYTE)(byDevId)) & 0x1F) << 3) +         \
            (((BYTE)(byFunId)) & 0x07),             \
        (byBusId)                                   \
        )

#define GET_BUSID(wBusDevFunId) \
    HIBYTE(wBusDevFunId)

#define GET_DEVID(wBusDevFunId) \
    (LOBYTE(wBusDevFunId) >> 3)

#define GET_FUNID(wBusDevFunId) \
    (LOBYTE(wBusDevFunId) & 0x07)


/*---------------------  Export Classes  ----------------------------*/

/*---------------------  Export Variables  --------------------------*/

/*---------------------  Export Functions  --------------------------*/




#endif // __TPCI_H__


⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -