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

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

?? evmdm642_osd.c

?? DM642支持4個串口的驅動代碼
?? C
字號:
/*
 *  Copyright 2003 by Texas Instruments Incorporated.
 *  All rights reserved. Property of Texas Instruments Incorporated.
 *  Restricted rights to use, duplicate or disclose this code are
 *  granted through contract.
 *  
 */
/* "@(#) DDK 1.10.00.23 07-02-03 (ddk-b12)" */
/*
 *  ======== evmdm642_osd.c ========
 *  EVMDM642 interrupt handling routines.
 */

#define CHIP_DM642      1

#include <std.h>

#include <atm.h>

#include <csl.h>
#include <csl_irq.h>

#include <evmdm642.h>

#include <evmdm642_osd.h>

static struct {
    EVMDM642_OSD_IntHandler func;
    Ptr arg;
} dispatchTable[EVMDM642_OSD_NUM_IRQ];

static void irqHandler1(void);
static void irqHandler2(void);
static void irqHandler3(void);
static void irqHandler4(void);

/*
 *  ======== EVMDM642_OSD_init ========
 * Initialize the CPLD interrupt handling module.
 * Clear all enabled interrupts in the CPLD, add a dispatch
 * handler for EINT7, and enable the interrupt enable line
 * in the OSD control register.
 */
void EVMDM642_OSD_init()
{
    int i, gie;
    static int initDone = 0;

    if (!ATM_seti(&initDone, 1)) {
        gie = IRQ_globalDisable();

        for (i = 0; i < EVMDM642_OSD_NUM_IRQ; i++) {
            dispatchTable[i].func = 0;
            dispatchTable[i].arg = 0;
        }

        HWI_dispatchPlug(IRQ_EVT_EXTINT6, irqHandler1, -1, 0);	//UART A
        IRQ_clear(IRQ_EVT_EXTINT6);
        IRQ_enable(IRQ_EVT_EXTINT6);
        
        HWI_dispatchPlug(IRQ_EVT_EXTINT7, irqHandler2, -1, 0);	//UART B
        IRQ_clear(IRQ_EVT_EXTINT7);
        IRQ_enable(IRQ_EVT_EXTINT7);
        

        HWI_dispatchPlug(IRQ_EVT_EXTINT4, irqHandler3, -1, 0);	//UART C	
        IRQ_clear(IRQ_EVT_EXTINT4);
        IRQ_enable(IRQ_EVT_EXTINT4);
        
        HWI_dispatchPlug(IRQ_EVT_EXTINT5, irqHandler4, -1, 0);	//UART D
        IRQ_clear(IRQ_EVT_EXTINT5);
        IRQ_enable(IRQ_EVT_EXTINT5);

        IRQ_globalRestore(gie);
    }
}

/*
 *  ======== EVMDM642_OSD_intHook ========
 * Hook sub-interrupt index on the CPLD interrupt vector.  The
 * given function (func) will be called with argument arg when
 * the interrupt becomes active.
 */
EVMDM642_OSD_IntHandler EVMDM642_OSD_intHook(Uint32 index,
        EVMDM642_OSD_IntHandler func, Ptr arg)
{
    int gie;
    EVMDM642_OSD_IntHandler oldIsr = (EVMDM642_OSD_IntHandler) NULL;

    if (index < EVMDM642_OSD_NUM_IRQ) {
        gie = IRQ_globalDisable();

        oldIsr = dispatchTable[index].func;
        dispatchTable[index].func = func;
        dispatchTable[index].arg = arg;

        IRQ_globalRestore(gie);
    }

    return oldIsr;
}

/*
 *  ======== EVMDM642_OSD_intUnhook ========
 * Unhook sub-interrupt index on the CPLD interrupt vector.
 * This will disable the given sub-interrupt, and zero out
 * the dispatch vector.
 */
EVMDM642_OSD_IntHandler EVMDM642_OSD_intUnhook(Uint32 index)
{
    int gie;
    EVMDM642_OSD_IntHandler oldIsr = (EVMDM642_OSD_IntHandler) NULL;

    if (index < EVMDM642_OSD_NUM_IRQ) {
        gie = IRQ_globalDisable();

        oldIsr = dispatchTable[index].func;
        dispatchTable[index].func = 0;
        dispatchTable[index].arg = 0;

        IRQ_globalRestore(gie);
    }

    return oldIsr;
}

/*
 *  ======== irqHandler ========
 * Local interrupt handler for the CPLD interrupt.  Will dispatch
 * all enabled and active interrupts to the appropriate sub-interrupt
 * vector.
 * The global interrupt enable in the OSD control register keeps
 * us from having to cycle on irqFlags != 0.  Enabling the global
 * interrupts at the end of the IRQ handler will automatically
 * generate another interrupt if any interrupt bit is still set.
 */
static void irqHandler1(void)
{
    if (dispatchTable[UARTA_IRQ].func) {
        (*(dispatchTable[UARTA_IRQ].func))(dispatchTable[UARTA_IRQ].arg);
    }
}

static void irqHandler2(void)
{
    if (dispatchTable[UARTB_IRQ].func) {
        (*(dispatchTable[UARTB_IRQ].func))(dispatchTable[UARTB_IRQ].arg);
    }
}

static void irqHandler3(void)
{
    if (dispatchTable[UARTC_IRQ].func) {
        (*(dispatchTable[UARTC_IRQ].func))(dispatchTable[UARTC_IRQ].arg);
    }
}

static void irqHandler4(void)
{
    if (dispatchTable[UARTD_IRQ].func) {
        (*(dispatchTable[UARTD_IRQ].func))(dispatchTable[UARTD_IRQ].arg);
    }
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
色综合视频一区二区三区高清| 成人av在线播放网站| 一区二区在线看| 中文字幕第一区二区| 国产欧美日韩综合| 国产日韩欧美电影| 亚洲欧美在线观看| 亚洲人成在线播放网站岛国| 亚洲欧洲国产日韩| 亚洲狼人国产精品| 香蕉久久一区二区不卡无毒影院| 亚洲6080在线| 久久精品免费观看| 激情六月婷婷综合| 成人av午夜电影| 欧洲激情一区二区| 欧美一激情一区二区三区| 日韩丝袜美女视频| 欧美激情中文字幕一区二区| 日韩一区欧美小说| 日韩影视精彩在线| 国产成人小视频| 色哟哟亚洲精品| 欧美电影精品一区二区| 亚洲国产精品精华液ab| 亚洲一区电影777| 精品一区二区三区日韩| 不卡的看片网站| 欧美一级二级三级蜜桃| 国产欧美日产一区| 偷拍日韩校园综合在线| 国产精品一区二区免费不卡 | 欧美高清性hdvideosex| 欧美一级片在线看| 国产精品妹子av| 日韩精品视频网站| 91亚洲国产成人精品一区二三| 欧美日本国产一区| 国产精品色一区二区三区| 五月天国产精品| av中文字幕一区| 日韩一级二级三级精品视频| 综合久久综合久久| 久久国产综合精品| 欧美亚洲国产bt| 亚洲欧美一区二区在线观看| 久久国产免费看| 7777精品伊人久久久大香线蕉的 | 成人sese在线| 欧美一区二区三区喷汁尤物| 中文字幕一区二区三区不卡| 美女免费视频一区| 欧美三级电影精品| 亚洲日本乱码在线观看| 国产精品综合av一区二区国产馆| 欧美日韩精品一区二区三区蜜桃 | 中文字幕一区二区三区四区| 日韩经典中文字幕一区| 色乱码一区二区三区88| 国产精品色眯眯| 国产精品香蕉一区二区三区| 日韩精品专区在线| 日韩精品高清不卡| 7777精品伊人久久久大香线蕉最新版| 亚洲欧美激情小说另类| 97超碰欧美中文字幕| 国产精品久久网站| caoporn国产一区二区| 国产精品久久久久国产精品日日| 国产乱人伦偷精品视频不卡| 日韩欧美国产wwwww| 日本不卡视频在线| 日韩丝袜美女视频| 激情五月激情综合网| 欧美不卡一区二区三区| 麻豆国产精品一区二区三区| 91精品国产欧美一区二区18| 日本欧美一区二区在线观看| 91精品国产一区二区三区香蕉| 男女激情视频一区| 欧美大片顶级少妇| 国产传媒一区在线| 国产精品蜜臀在线观看| 91色porny蝌蚪| 亚洲国产日韩一级| 538prom精品视频线放| 日韩中文字幕1| 久久蜜桃av一区精品变态类天堂 | 国产一区在线视频| 国产色产综合产在线视频| 国产精品主播直播| 中文字幕在线观看一区二区| 99久久99久久综合| 亚洲成av人片| 欧美成人精品高清在线播放 | 亚洲午夜日本在线观看| 欧美日韩视频在线第一区| 日韩中文字幕91| 欧美激情一区二区在线| 色88888久久久久久影院按摩 | 成人一区在线观看| 亚洲女性喷水在线观看一区| 欧美色区777第一页| 另类小说图片综合网| 国产精品免费久久| 在线电影一区二区三区| 国产成人在线电影| 午夜电影一区二区三区| 久久精品水蜜桃av综合天堂| 在线观看成人免费视频| 国产在线播放一区三区四| 亚洲欧美综合另类在线卡通| 日韩一级完整毛片| av中文字幕不卡| 激情图区综合网| 亚洲一区欧美一区| 国产精品色一区二区三区| 91精品国产综合久久久久久漫画 | 欧美色爱综合网| 国产麻豆午夜三级精品| 五月天国产精品| 自拍偷拍国产亚洲| 久久久久久久久久久久电影| 欧美日韩在线播放三区四区| 国产成人av一区二区三区在线| 亚洲成av人片一区二区梦乃| 亚洲欧洲日韩av| 久久久久99精品一区| 91精品午夜视频| 91久久线看在观草草青青| 国产精品一区二区不卡| 美国av一区二区| 天天色综合成人网| 一区二区三区欧美日| 国产欧美一区二区精品仙草咪 | eeuss鲁片一区二区三区在线观看| 琪琪一区二区三区| 亚洲福利电影网| 亚洲免费在线视频一区 二区| 久久青草国产手机看片福利盒子 | 成人高清免费在线播放| 国产最新精品精品你懂的| 日韩vs国产vs欧美| 天堂在线亚洲视频| 午夜国产不卡在线观看视频| 一区二区三区欧美视频| 亚洲最新在线观看| 亚洲欧美国产三级| 亚洲综合一区二区三区| 亚洲色图一区二区三区| 中文字幕中文字幕在线一区| 国产拍欧美日韩视频二区| 久久久激情视频| 国产亚洲美州欧州综合国| 国产日产欧美一区| 欧美激情中文字幕一区二区| 中文字幕精品一区二区精品绿巨人 | 91麻豆高清视频| 97久久人人超碰| 日本道免费精品一区二区三区| 91精品福利视频| 欧美性猛交一区二区三区精品| 欧美日韩视频在线第一区| 这里是久久伊人| 亚洲精品一区二区三区蜜桃下载 | ㊣最新国产の精品bt伙计久久| 国产日韩欧美一区二区三区综合| 国产精品美女久久久久久2018| 国产精品进线69影院| 亚洲乱码国产乱码精品精98午夜| 亚洲成人久久影院| 老司机免费视频一区二区 | 亚洲欧美怡红院| 亚洲在线中文字幕| 久久99精品国产.久久久久| 粉嫩av一区二区三区粉嫩| 91在线视频官网| 91精选在线观看| 欧美国产精品一区| 亚洲成人黄色小说| 九色porny丨国产精品| 99热在这里有精品免费| 91.com视频| 国产精品午夜在线| 亚洲国产综合人成综合网站| 经典一区二区三区| 日本福利一区二区| 久久久99精品久久| 亚洲va欧美va人人爽| 成人小视频在线| 91精品国产综合久久福利| 日本一二三四高清不卡| 日本视频在线一区| 色婷婷综合久久久久中文一区二区| 欧美一卡二卡三卡| 亚洲欧美偷拍卡通变态| 狠狠网亚洲精品| 欧美精品在线一区二区三区| 国产精品国产自产拍在线| 蜜臀va亚洲va欧美va天堂|