亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? xipif_v1_23_b.h

?? edk9.1嵌入式開發實驗1代碼
?? H
?? 第 1 頁 / 共 2 頁
字號:
/* $Id: xipif_v1_23_b.h,v 1.5 2005/09/26 16:04:52 trujillo Exp $ *//********************************************************************************       XILINX IS PROVIDING THIS DESIGN, CODE, OR INFORMATION "AS IS"*       AS A COURTESY TO YOU, SOLELY FOR USE IN DEVELOPING PROGRAMS AND*       SOLUTIONS FOR XILINX DEVICES.  BY PROVIDING THIS DESIGN, CODE,*       OR INFORMATION AS ONE POSSIBLE IMPLEMENTATION OF THIS FEATURE,*       APPLICATION OR STANDARD, XILINX IS MAKING NO REPRESENTATION*       THAT THIS IMPLEMENTATION IS FREE FROM ANY CLAIMS OF INFRINGEMENT,*       AND YOU ARE RESPONSIBLE FOR OBTAINING ANY RIGHTS YOU MAY REQUIRE*       FOR YOUR IMPLEMENTATION.  XILINX EXPRESSLY DISCLAIMS ANY*       WARRANTY WHATSOEVER WITH RESPECT TO THE ADEQUACY OF THE*       IMPLEMENTATION, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OR*       REPRESENTATIONS THAT THIS IMPLEMENTATION IS FREE FROM CLAIMS OF*       INFRINGEMENT, IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS*       FOR A PARTICULAR PURPOSE.**       (c) Copyright 2002-2004 Xilinx Inc.*       All rights reserved.*******************************************************************************//*****************************************************************************//**** @file xipif_v1_23_b.h** The XIpIf component encapsulates the IPIF, which is the standard interface* that IP must adhere to when connecting to a bus.  The purpose of this* component is to encapsulate the IPIF processing such that maintainability* is increased.  This component does not provide a lot of abstraction from* from the details of the IPIF as it is considered a building block for* device drivers.  A device driver designer must be familiar with the* details of the IPIF hardware to use this component.** The IPIF hardware provides a building block for all hardware devices such* that each device does not need to reimplement these building blocks. The* IPIF contains other building blocks, such as FIFOs and DMA channels, which* are also common to many devices.  These blocks are implemented as separate* hardware blocks and instantiated within the IPIF.  The primary hardware of* the IPIF which is implemented by this software component is the interrupt* architecture.  Since there are many blocks of a device which may generate* interrupts, all the interrupt processing is contained in the common part* of the device, the IPIF.  This interrupt processing is for the device level* only and does not include any processing for the interrupt controller.** A device is a mechanism such as an Ethernet MAC.  The device is made* up of several parts which include an IPIF and the IP.  The IPIF contains most* of the device infrastructure which is common to all devices, such as* interrupt processing, DMA channels, and FIFOs.  The infrastructure may also* be referred to as IPIF internal blocks since they are part of the IPIF and* are separate blocks that can be selected based upon the needs of the device.* The IP of the device is the logic that is unique to the device and interfaces* to the IPIF of the device.** In general, there are two levels of registers within the IPIF.  The first* level, referred to as the device level, contains registers which are for the* entire device.  The second level, referred to as the IP level, contains* registers which are specific to the IP of the device.  The two levels of* registers are designed to be hierarchical such that the device level is* is a more general register set above the more specific registers of the IP.* The IP level of registers provides functionality which is typically common* across all devices and allows IP designers to focus on the unique aspects* of the IP.** <b>Critical Sections</b>** It is the responsibility of the device driver designer to use critical* sections as necessary when calling functions of the IPIF.  This component* does not use critical sections and it does access registers using* read-modify-write operations.  Calls to IPIF functions from a main thread* and from an interrupt context could produce unpredictable behavior such that* the caller must provide the appropriate critical sections.** <b>Mutual Exclusion</b>** The functions of the IPIF are not thread safe such that the caller of all* functions is responsible for ensuring mutual exclusion for an IPIF.  Mutual* exclusion across multiple IPIF components is not necessary.** <pre>* MODIFICATION HISTORY:** Ver   Who  Date     Changes* ----- ---- -------- ---------------------------------------------------------* 1.23b jhl  02/27/01 Repartioned to minimize size* 1.23b rpm  07/16/04 Changed ifdef for circular inclusion to be more qualified* 1.23b rpm  08/17/04 Doxygenated for inclusion of API documentation* 1.23b xd   10/27/04 Improve Doxygen format* </pre>*******************************************************************************/#ifndef XIPIF_V123B_H /* prevent circular inclusions */#define XIPIF_V123B_H /* by using protection macros */#ifdef __cplusplusextern "C" {#endif/***************************** Include Files *********************************/#include "xbasic_types.h"#include "xstatus.h"#include "xversion.h"/************************** Constant Definitions *****************************//** @name Register Offsets * * The following constants define the register offsets for the registers of the * IPIF, there are some holes in the memory map for reserved addresses to allow * other registers to be added and still match the memory map of the interrupt * controller registers * @{ */#define XIIF_V123B_DISR_OFFSET     0UL  /**< device interrupt status register */#define XIIF_V123B_DIPR_OFFSET     4UL  /**< device interrupt pending register */#define XIIF_V123B_DIER_OFFSET     8UL  /**< device interrupt enable register */#define XIIF_V123B_DIIR_OFFSET     24UL /**< device interrupt ID register */#define XIIF_V123B_DGIER_OFFSET    28UL /**< device global interrupt enable register */#define XIIF_V123B_IISR_OFFSET     32UL /**< IP interrupt status register */#define XIIF_V123B_IIER_OFFSET     40UL /**< IP interrupt enable register */#define XIIF_V123B_RESETR_OFFSET   64UL /**< reset register *//* @} *//** * The value used for the reset register to reset the IPIF */#define XIIF_V123B_RESET_MASK             0xAUL/** * The following constant is used for the device global interrupt enable * register, to enable all interrupts for the device, this is the only bit * in the register */#define XIIF_V123B_GINTR_ENABLE_MASK      0x80000000UL/** * The mask to identify each internal IPIF error condition in the device * registers of the IPIF. Interrupts are assigned in the register from LSB * to the MSB */#define XIIF_V123B_ERROR_MASK             1UL     /**< LSB of the register *//** @name Interrupt IDs * * The interrupt IDs which identify each internal IPIF condition, this value * must correlate with the mask constant for the error * @{ */#define XIIF_V123B_ERROR_INTERRUPT_ID     0    /**< interrupt bit #, (LSB = 0) */#define XIIF_V123B_NO_INTERRUPT_ID        128  /**< no interrupts are pending *//* @} *//**************************** Type Definitions *******************************//***************** Macros (Inline Functions) Definitions *********************//*****************************************************************************//**** Reset the IPIF component and hardware.  This is a destructive operation that* could cause the loss of data since resetting the IPIF of a device also* resets the device using the IPIF and any blocks, such as FIFOs or DMA* channels, within the IPIF.  All registers of the IPIF will contain their* reset value when this function returns.** @param RegBaseAddress contains the base address of the IPIF registers.** @return   None** @note     None*******************************************************************************/#define XIIF_V123B_RESET(RegBaseAddress) \    XIo_Out32(RegBaseAddress + XIIF_V123B_RESETR_OFFSET, XIIF_V123B_RESET_MASK)/*****************************************************************************//**** This macro sets the device interrupt status register to the value.* This register indicates the status of interrupt sources for a device* which contains the IPIF.  The status is independent of whether interrupts* are enabled and could be used for polling a device at a higher level rather* than a more detailed level.** Each bit of the register correlates to a specific interrupt source within the* device which contains the IPIF.  With the exception of some internal IPIF* conditions, the contents of this register are not latched but indicate* the live status of the interrupt sources within the device.  Writing any of* the non-latched bits of the register will have no effect on the register.** For the latched bits of this register only, setting a bit which is zero* within this register causes an interrupt to generated.  The device global* interrupt enable register and the device interrupt enable register must be set* appropriately to allow an interrupt to be passed out of the device. The* interrupt is cleared by writing to this register with the bits to be* cleared set to a one and all others to zero.  This register implements a* toggle on write functionality meaning any bits which are set in the value* written cause the bits in the register to change to the opposite state.** This function writes the specified value to the register such that* some bits may be set and others cleared.  It is the caller's responsibility* to get the value of the register prior to setting the value to prevent a* destructive behavior.** @param RegBaseAddress contains the base address of the IPIF registers.** @param Status contains the value to be written to the interrupt status*        register of the device.  The only bits which can be written are*        the latched bits which contain the internal IPIF conditions.  The*        following values may be used to set the status register or clear an*        interrupt condition.*        - XIIF_V123B_ERROR_MASK     Indicates a device error in the IPIF** @return   None.** @note     None.*******************************************************************************/#define XIIF_V123B_WRITE_DISR(RegBaseAddress, Status) \    XIo_Out32((RegBaseAddress) + XIIF_V123B_DISR_OFFSET, (Status))/*****************************************************************************//**** This macro gets the device interrupt status register contents.* This register indicates the status of interrupt sources for a device* which contains the IPIF.  The status is independent of whether interrupts* are enabled and could be used for polling a device at a higher level.** Each bit of the register correlates to a specific interrupt source within the* device which contains the IPIF.  With the exception of some internal IPIF* conditions, the contents of this register are not latched but indicate* the live status of the interrupt sources within the device.** For only the latched bits of this register, the interrupt may be cleared by* writing to these bits in the status register.** @param    RegBaseAddress contains the base address of the IPIF registers.** @return** A status which contains the value read from the interrupt status register of* the device. The bit definitions are specific to the device with* the exception of the latched internal IPIF condition bits. The following* values may be used to detect internal IPIF conditions in the status.* <br><br>* - XIIF_V123B_ERROR_MASK     Indicates a device error in the IPIF** @note** None.*******************************************************************************/#define XIIF_V123B_READ_DISR(RegBaseAddress) \    XIo_In32((RegBaseAddress) + XIIF_V123B_DISR_OFFSET)/*****************************************************************************//**** This function sets the device interrupt enable register contents.* This register controls which interrupt sources of the device are allowed to* generate an interrupt.  The device global interrupt enable register must also* be set appropriately for an interrupt to be passed out of the device.** Each bit of the register correlates to a specific interrupt source within the* device which contains the IPIF.  Setting a bit in this register enables that* interrupt source to generate an interrupt.  Clearing a bit in this register* disables interrupt generation for that interrupt source.** This function writes only the specified value to the register such that* some interrupts source may be enabled and others disabled.  It is the* caller's responsibility to get the value of the interrupt enable register* prior to setting the value to prevent an destructive behavior.** An interrupt source may not be enabled to generate an interrupt, but can* still be polled in the interrupt status register.** @param    RegBaseAddress contains the base address of the IPIF registers.** @param** Enable contains the value to be written to the interrupt enable register* of the device.  The bit definitions are specific to the device with* the exception of the internal IPIF conditions. The following* values may be used to enable the internal IPIF conditions interrupts.*   - XIIF_V123B_ERROR_MASK     Indicates a device error in the IPIF** @return** None.** @note** Signature: Xuint32 XIIF_V123B_WRITE_DIER(Xuint32 RegBaseAddress,*                                          Xuint32 Enable)*******************************************************************************/#define XIIF_V123B_WRITE_DIER(RegBaseAddress, Enable) \    XIo_Out32((RegBaseAddress) + XIIF_V123B_DIER_OFFSET, (Enable))/*****************************************************************************//**** This function gets the device interrupt enable register contents.* This register controls which interrupt sources of the device* are allowed to generate an interrupt.  The device global interrupt enable* register and the device interrupt enable register must also be set* appropriately for an interrupt to be passed out of the device.** Each bit of the register correlates to a specific interrupt source within the* device which contains the IPIF.  Setting a bit in this register enables that* interrupt source to generate an interrupt if the global enable is set* appropriately.  Clearing a bit in this register disables interrupt generation* for that interrupt source regardless of the global interrupt enable.** @param    RegBaseAddress contains the base address of the IPIF registers.** @return** The value read from the interrupt enable register of the device.  The bit* definitions are specific to the device with the exception of the internal* IPIF conditions. The following values may be used to determine from the* value if the internal IPIF conditions interrupts are enabled.* <br><br>* - XIIF_V123B_ERROR_MASK     Indicates a device error in the IPIF

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
中文字幕二三区不卡| 日本精品视频一区二区| 精品精品欲导航| 免费在线观看成人| 精品国产一区二区在线观看| 国产成人在线免费观看| 中文字幕一区二区三| 99麻豆久久久国产精品免费| 亚洲男人天堂av| 欧美色手机在线观看| 日本欧美肥老太交大片| 欧美α欧美αv大片| 成人午夜视频福利| 亚洲成人激情自拍| 久久综合九色综合欧美亚洲| 国产不卡一区视频| 亚洲视频一区二区在线观看| 欧美亚洲国产一区二区三区va| 中文字幕精品一区| 92精品国产成人观看免费| 在线一区二区观看| 欧美日韩国产系列| 国产自产视频一区二区三区| 欧美成人r级一区二区三区| 国产大片一区二区| 一区二区三区视频在线看| 制服丝袜日韩国产| 成人动漫一区二区三区| 亚洲国产一二三| 久久亚洲精华国产精华液| 色哟哟在线观看一区二区三区| 日韩高清不卡一区二区三区| 久久久影视传媒| 在线亚洲一区二区| 国产成人啪免费观看软件| 亚洲妇熟xx妇色黄| 中文字幕欧美激情| 精品国产乱码久久久久久久久| 91在线精品一区二区三区| 免费在线看成人av| 亚洲狠狠丁香婷婷综合久久久| 欧美一区二区啪啪| 色婷婷精品久久二区二区蜜臀av| 精品一区二区av| 婷婷丁香久久五月婷婷| 国产精品黄色在线观看| 欧美电视剧在线观看完整版| 色先锋aa成人| 粉嫩欧美一区二区三区高清影视| 日韩精品色哟哟| 亚洲精品videosex极品| 国产女人aaa级久久久级| 欧美一级高清片| 欧美日韩在线亚洲一区蜜芽| bt欧美亚洲午夜电影天堂| 狠狠色丁香九九婷婷综合五月| 亚洲成人资源网| 一级特黄大欧美久久久| 中文字幕一区二区三区不卡| 久久久久久9999| 欧美精品一区二区三区在线播放| 欧美日韩免费视频| 色婷婷综合久久久| 99国产精品一区| 91无套直看片红桃| 成人免费高清在线| 国产毛片精品国产一区二区三区| 全部av―极品视觉盛宴亚洲| 亚洲国产中文字幕在线视频综合| 亚洲欧美国产毛片在线| 亚洲视频中文字幕| 亚洲嫩草精品久久| 亚洲综合激情另类小说区| 亚洲精品欧美激情| 亚洲乱码精品一二三四区日韩在线| 国产精品高潮呻吟| 成人免费在线观看入口| 亚洲视频中文字幕| 一区二区三区电影在线播| 一区二区三区精品| 亚洲高清免费在线| 婷婷综合久久一区二区三区| 香蕉久久夜色精品国产使用方法 | 成人免费高清在线| 成人丝袜18视频在线观看| 豆国产96在线|亚洲| 成人动漫视频在线| 一本色道久久综合精品竹菊| 一本久久综合亚洲鲁鲁五月天| 91美女片黄在线观看| 在线观看国产精品网站| 欧美日韩在线播| 欧美一区二区在线视频| 日韩精品一区二区三区蜜臀| 2020国产精品| 国产精品久99| 亚洲尤物视频在线| 免费在线视频一区| 国产成人精品综合在线观看| 99国产精品久久久久久久久久久| 久久久综合视频| www久久精品| 国产女主播一区| 1区2区3区国产精品| 一区二区三区中文在线观看| 三级欧美在线一区| 国产精品一区二区你懂的| 不卡的电视剧免费网站有什么| 色999日韩国产欧美一区二区| 91精品国产综合久久久久久久| 精品久久一区二区| 亚洲欧美影音先锋| 亚洲高清视频中文字幕| 国内精品第一页| 欧美午夜免费电影| 久久中文娱乐网| 亚洲综合免费观看高清完整版在线| 日日摸夜夜添夜夜添亚洲女人| 国产福利一区二区三区视频在线 | 极品销魂美女一区二区三区| 成人性生交大片免费| 欧美精品一卡二卡| 国产精品视频免费看| 日产国产高清一区二区三区| 国产成人欧美日韩在线电影| 欧美日韩一区二区三区在线看 | 丝袜美腿亚洲综合| 不卡一区二区在线| 精品久久久久一区二区国产| 亚洲精品中文字幕乱码三区| 韩国三级电影一区二区| 欧美午夜精品久久久久久孕妇| 国产日本欧美一区二区| 秋霞午夜av一区二区三区| 9i在线看片成人免费| 亚洲国产精品99久久久久久久久| 亚洲午夜久久久久中文字幕久| 国产美女av一区二区三区| 欧美肥妇bbw| 自拍偷拍亚洲激情| 国产精品一色哟哟哟| 欧美一区二区三区成人| 亚洲你懂的在线视频| 成人v精品蜜桃久久一区| 日韩精品一区二区三区视频| 午夜激情综合网| 91福利精品第一导航| 日本一区二区三级电影在线观看 | 午夜婷婷国产麻豆精品| 成人爱爱电影网址| 国产三级精品视频| 免费国产亚洲视频| 欧美日韩国产综合草草| 亚洲在线免费播放| 色综合一区二区| 国产精品传媒入口麻豆| 国产91精品一区二区麻豆亚洲| 亚洲精品一区二区三区影院| 日产精品久久久久久久性色| 欧美三级日韩三级国产三级| 一区二区三区高清| 欧美午夜不卡在线观看免费| 亚洲精品福利视频网站| 欧洲另类一二三四区| 日本一区二区三区在线不卡| 国产福利91精品一区| 国产日韩欧美制服另类| 国产一区在线观看视频| 久久久久99精品一区| 国产成人综合亚洲网站| 国产亚洲精品精华液| 国产成人精品午夜视频免费| 久久精品一区二区| 成人激情免费电影网址| 国产精品国产三级国产aⅴ原创| 成人h动漫精品| 亚洲女厕所小便bbb| 欧美日韩免费观看一区二区三区| 亚洲国产日韩精品| 日韩一区二区三区精品视频| 日本不卡视频在线观看| www国产成人| 丁香五精品蜜臀久久久久99网站| 国产精品成人午夜| 欧美主播一区二区三区| 午夜私人影院久久久久| 日韩欧美成人激情| 国产69精品久久99不卡| 亚洲嫩草精品久久| 欧美区一区二区三区| 久久er99热精品一区二区| 国产欧美日韩综合精品一区二区 | 午夜激情综合网| 欧美刺激脚交jootjob| 国产精品99精品久久免费| 亚洲欧美自拍偷拍| 538prom精品视频线放| 国产精品一区二区免费不卡 | 国产91丝袜在线播放九色| 国产精品国产三级国产aⅴ中文|