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

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

?? timer.c

?? 鼎力推薦!本程序是基于嵌入式LUNUX系統開發的源程序代碼
?? C
字號:
/* ********************************************************************** *     timer.c *     Copyright (C) 1999, 2000 Creative Labs, inc. * ********************************************************************** * *     This program is free software; you can redistribute it and/or *     modify it under the terms of the GNU General Public License as *     published by the Free Software Foundation; either version 2 of *     the License, or (at your option) any later version. * *     This program is distributed in the hope that it will be useful, *     but WITHOUT ANY WARRANTY; without even the implied warranty of *     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the *     GNU General Public License for more details. * *     You should have received a copy of the GNU General Public *     License along with this program; if not, write to the Free *     Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, *     USA. * ********************************************************************** *//* 3/6/2000	Improved support for different timer delays  Rui Sousa *//* 4/3/2000	Implemented timer list using list.h 	     Rui Sousa */#include "hwaccess.h"#include "8010.h"#include "irqmgr.h"#include "timer.h"/* Try to schedule only once per fragment */void emu10k1_timer_irqhandler(struct emu10k1_card *card){	struct emu_timer *t;	struct list_head *entry;	spin_lock(&card->timer_lock);	list_for_each(entry, &card->timers) {		t = list_entry(entry, struct emu_timer, list);		if (t->state & TIMER_STATE_ACTIVE) {			t->count++;			if (t->count == t->count_max) {				t->count = 0;				tasklet_hi_schedule(&t->tasklet);			}		}	}	spin_unlock(&card->timer_lock);	return;}void emu10k1_timer_install(struct emu10k1_card *card, struct emu_timer *timer, u16 delay){	struct emu_timer *t;	struct list_head *entry;	unsigned long flags;	if (delay < 5)		delay = 5;	timer->delay = delay;	timer->state = TIMER_STATE_INSTALLED;	spin_lock_irqsave(&card->timer_lock, flags);	timer->count_max = timer->delay / (card->timer_delay < 1024 ? card->timer_delay : 1024);	timer->count = timer->count_max - 1;	list_add(&timer->list, &card->timers);	if (card->timer_delay > delay) {		if (card->timer_delay == TIMER_STOPPED)			emu10k1_irq_enable(card, INTE_INTERVALTIMERENB);		card->timer_delay = delay;		delay = (delay < 1024 ? delay : 1024);		emu10k1_timer_set(card, delay);		list_for_each(entry, &card->timers) {			t = list_entry(entry, struct emu_timer, list);			t->count_max = t->delay / delay;			/* don't want to think much, just force scheduling 			   on the next interrupt */			t->count = t->count_max - 1;		}		DPD(2, "timer rate --> %u\n", delay);	}	spin_unlock_irqrestore(&card->timer_lock, flags);	return;}void emu10k1_timer_uninstall(struct emu10k1_card *card, struct emu_timer *timer){	struct emu_timer *t;	struct list_head *entry;	u16 delay = TIMER_STOPPED;	unsigned long flags;	if (timer->state == TIMER_STATE_UNINSTALLED)		return;	spin_lock_irqsave(&card->timer_lock, flags);	list_del(&timer->list);	list_for_each(entry, &card->timers) {		t = list_entry(entry, struct emu_timer, list);		if (t->delay < delay)			delay = t->delay;	}	if (card->timer_delay != delay) {		card->timer_delay = delay;		if (delay == TIMER_STOPPED)			emu10k1_irq_disable(card, INTE_INTERVALTIMERENB);		else {			delay = (delay < 1024 ? delay : 1024);			emu10k1_timer_set(card, delay);			list_for_each(entry, &card->timers) {				t = list_entry(entry, struct emu_timer, list);				t->count_max = t->delay / delay;				t->count = t->count_max - 1;			}		}		DPD(2, "timer rate --> %u\n", delay);	}	spin_unlock_irqrestore(&card->timer_lock, flags);	timer->state = TIMER_STATE_UNINSTALLED;	return;}void emu10k1_timer_enable(struct emu10k1_card *card, struct emu_timer *timer){	unsigned long flags;	spin_lock_irqsave(&card->timer_lock, flags);	timer->state |= TIMER_STATE_ACTIVE;	spin_unlock_irqrestore(&card->timer_lock, flags);	return;}void emu10k1_timer_disable(struct emu10k1_card *card, struct emu_timer *timer){	unsigned long flags;	spin_lock_irqsave(&card->timer_lock, flags);	timer->state &= ~TIMER_STATE_ACTIVE;	spin_unlock_irqrestore(&card->timer_lock, flags);	return;}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲欧美aⅴ...| 欧美大片在线观看一区| 国产成人av电影在线播放| 免费成人在线视频观看| 丝袜国产日韩另类美女| 日本网站在线观看一区二区三区| 亚洲1区2区3区视频| 天堂va蜜桃一区二区三区漫画版| 日韩1区2区3区| 精品无人码麻豆乱码1区2区| 国产成人综合亚洲网站| 国产91清纯白嫩初高中在线观看 | 蜜桃视频在线观看一区| 日本最新不卡在线| 精品无人码麻豆乱码1区2区| 国产乱理伦片在线观看夜一区| 盗摄精品av一区二区三区| 91麻豆国产在线观看| 欧美日韩国产乱码电影| 精品人在线二区三区| 国产日韩欧美在线一区| 亚洲精品日产精品乱码不卡| 婷婷丁香久久五月婷婷| 国产在线观看一区二区| 99在线精品视频| 91精品综合久久久久久| 久久久精品免费免费| 日韩美女久久久| 青青草精品视频| kk眼镜猥琐国模调教系列一区二区 | 日韩av中文字幕一区二区| 免费成人性网站| 91玉足脚交白嫩脚丫在线播放| 欧美蜜桃一区二区三区| 久久综合九色综合欧美98| 亚洲麻豆国产自偷在线| 精品在线一区二区三区| 91福利区一区二区三区| 国产性做久久久久久| 性欧美疯狂xxxxbbbb| 国产一区不卡精品| 欧美在线观看一二区| 久久久久久99久久久精品网站| 亚洲激情男女视频| 国产在线观看免费一区| 欧美美女黄视频| 椎名由奈av一区二区三区| 久久国产精品99久久久久久老狼| 日本丶国产丶欧美色综合| 久久精品一区二区三区不卡牛牛 | 福利一区在线观看| 在线不卡免费av| 国产精品美日韩| 国产精品影视天天线| 91麻豆精品国产91久久久久久久久| 国产精品理论片| 国产美女精品在线| 欧美va亚洲va在线观看蝴蝶网| 午夜伦欧美伦电影理论片| 成人av先锋影音| 中文字幕免费不卡在线| 蜜臀av一区二区三区| 欧美日韩成人综合| 亚洲一区二区三区三| 91影视在线播放| 综合欧美一区二区三区| 成人av资源网站| 中文在线资源观看网站视频免费不卡| 麻豆成人久久精品二区三区小说| 欧美日韩免费电影| 一区二区三区免费看视频| 不卡av电影在线播放| 中文字幕视频一区| av福利精品导航| 亚洲精品五月天| 一本大道av伊人久久综合| 自拍av一区二区三区| 日本韩国一区二区| 一区二区成人在线| 欧美日韩日日摸| 午夜精品久久久久久久久久| 6080yy午夜一二三区久久| 日本特黄久久久高潮| 精品国产免费一区二区三区香蕉 | 国产精品国产成人国产三级| 91麻豆视频网站| 亚洲一区二区精品久久av| 欧美综合亚洲图片综合区| 香蕉久久夜色精品国产使用方法 | 91视频国产观看| 一区二区成人在线视频| 欧美肥妇free| 国产在线不卡视频| 国产精品传媒入口麻豆| 日本道色综合久久| 手机精品视频在线观看| 欧美精品一区二区不卡| 成人av电影免费在线播放| 亚洲综合精品久久| 欧美成人午夜电影| 不卡一卡二卡三乱码免费网站 | 欧美理论电影在线| 精一区二区三区| 亚洲欧美精品午睡沙发| 精品国偷自产国产一区| 国产精品一区二区你懂的| 一区二区在线观看不卡| 日韩一区二区三区视频在线观看| 国产精品一区二区三区网站| 日韩码欧中文字| 精品国产91久久久久久久妲己| 成人黄色一级视频| 日韩成人一级大片| 国产精品成人免费| 日韩欧美不卡在线观看视频| 91在线丨porny丨国产| 免费在线观看一区| 亚洲精选一二三| 久久伊99综合婷婷久久伊| 欧美三区免费完整视频在线观看| 国产酒店精品激情| 亚洲国产毛片aaaaa无费看| 日本一区二区三区在线不卡| 7777精品伊人久久久大香线蕉超级流畅| 成人永久看片免费视频天堂| 日本欧美一区二区三区| 亚洲精品伦理在线| 欧美极品aⅴ影院| 精品国产一区二区三区忘忧草 | 91精品国产一区二区三区蜜臀| 成人av电影观看| 国产一区二区三区久久悠悠色av| 亚洲18女电影在线观看| 中文欧美字幕免费| 久久久五月婷婷| 精品久久久久久久久久久久久久久| 欧美私人免费视频| 91小视频免费观看| 色综合天天综合| 91在线无精精品入口| 99精品视频中文字幕| 国产xxx精品视频大全| 国产精品 欧美精品| 国内成人精品2018免费看| 日日摸夜夜添夜夜添精品视频 | 亚洲猫色日本管| 亚洲欧美一区二区三区极速播放 | 精品少妇一区二区三区| 日韩午夜精品电影| 日韩免费视频线观看| 欧美变态tickle挠乳网站| 在线不卡的av| 日韩一区二区三区av| 日韩女同互慰一区二区| 日韩一区二区电影| 精品国产一区二区在线观看| 日韩欧美成人一区| 久久久久久久久久久黄色| 国产欧美一区二区精品性色| 国产精品超碰97尤物18| 亚洲精品国产无套在线观| 亚洲图片欧美视频| 老司机精品视频在线| 国产成人99久久亚洲综合精品| 成人精品视频.| 色偷偷一区二区三区| 欧美精品xxxxbbbb| 精品欧美黑人一区二区三区| 国产欧美精品区一区二区三区| 亚洲特级片在线| 五月天久久比比资源色| 久久精品国产99| 99国产欧美另类久久久精品 | 久久看人人爽人人| 欧美国产视频在线| 亚洲成人av在线电影| 中文字幕一区在线观看视频| 免费三级欧美电影| 欧美日韩国产美| 亚洲另类在线制服丝袜| 成人免费毛片片v| 日韩美一区二区三区| 精品福利一区二区三区| 中文字幕av一区二区三区高| 亚洲一区二区三区四区不卡| 久久精品理论片| 一本一本久久a久久精品综合麻豆 一本一道波多野结衣一区二区 | 一区二区三区免费看视频| 久久精品国产精品亚洲精品 | 亚洲久本草在线中文字幕| 日韩黄色小视频| 99精品黄色片免费大全| 欧美精品一区视频| 亚洲图片欧美一区| 丁香婷婷综合色啪| 欧美刺激脚交jootjob| 亚洲女性喷水在线观看一区| 韩国精品一区二区| 欧美日韩视频在线观看一区二区三区| 欧美国产一区在线|