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

? 歡迎來(lái)到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? pci-dc.c

?? ARM 嵌入式 系統(tǒng) 設(shè)計(jì)與實(shí)例開發(fā) 實(shí)驗(yàn)教材 二源碼
?? C
字號(hào):
/* $	$Id: pci-dc.c,v 1.5 2001/08/24 12:38:19 dwmw2 Exp $ *	Dreamcast PCI: Supports SEGA Broadband Adaptor only. */#include <linux/config.h>#include <linux/sched.h>#include <linux/kernel.h>#include <linux/param.h>#include <linux/interrupt.h>#include <linux/init.h>#include <linux/irq.h>#include <linux/pci.h>#include <asm/io.h>#include <asm/irq.h>#include <asm/dc_sysasic.h>#define	GAPSPCI_REGS		0x01001400#define GAPSPCI_DMA_BASE	0x01840000#define GAPSPCI_DMA_SIZE	32768#define GAPSPCI_BBA_CONFIG	0x01001600#define	GAPSPCI_IRQ		HW_EVENT_EXTERNALstatic int gapspci_dma_used;static struct pci_bus *pci_root_bus;struct pci_fixup pcibios_fixups[] = {	{0, 0, 0, NULL}};#define BBA_SELECTED(dev) (dev->bus->number==0 && dev->devfn==0)static int gapspci_read_config_byte(struct pci_dev *dev, int where,                                    u8 * val){	if (BBA_SELECTED(dev))		*val = inb(GAPSPCI_BBA_CONFIG+where);	else                *val = 0xff;	return PCIBIOS_SUCCESSFUL;}static int gapspci_read_config_word(struct pci_dev *dev, int where,                                    u16 * val){        if (BBA_SELECTED(dev))		*val = inw(GAPSPCI_BBA_CONFIG+where);	else                *val = 0xffff;        return PCIBIOS_SUCCESSFUL;}static int gapspci_read_config_dword(struct pci_dev *dev, int where,                                     u32 * val){        if (BBA_SELECTED(dev))		*val = inl(GAPSPCI_BBA_CONFIG+where);	else                *val = 0xffffffff;        return PCIBIOS_SUCCESSFUL;}static int gapspci_write_config_byte(struct pci_dev *dev, int where,                                     u8 val){        if (BBA_SELECTED(dev))		outb(val, GAPSPCI_BBA_CONFIG+where);        return PCIBIOS_SUCCESSFUL;}static int gapspci_write_config_word(struct pci_dev *dev, int where,                                     u16 val){        if (BBA_SELECTED(dev))		outw(val, GAPSPCI_BBA_CONFIG+where);        return PCIBIOS_SUCCESSFUL;}static int gapspci_write_config_dword(struct pci_dev *dev, int where,                                      u32 val){        if (BBA_SELECTED(dev))		outl(val, GAPSPCI_BBA_CONFIG+where);        return PCIBIOS_SUCCESSFUL;}static struct pci_ops pci_config_ops = {        gapspci_read_config_byte,        gapspci_read_config_word,        gapspci_read_config_dword,        gapspci_write_config_byte,        gapspci_write_config_word,        gapspci_write_config_dword};void *pci_alloc_consistent(struct pci_dev *hwdev, size_t size,			   dma_addr_t * dma_handle){	unsigned long buf;	if (gapspci_dma_used+size > GAPSPCI_DMA_SIZE)		return NULL;	buf = GAPSPCI_DMA_BASE+gapspci_dma_used;	gapspci_dma_used = PAGE_ALIGN(gapspci_dma_used+size);		printk("pci_alloc_consistent: %ld bytes at 0x%lx\n", (long)size, buf);	*dma_handle = (dma_addr_t)buf;	return (void *)P2SEGADDR(buf);}void pci_free_consistent(struct pci_dev *hwdev, size_t size,			 void *vaddr, dma_addr_t dma_handle){	/* XXX */	gapspci_dma_used = 0;}void __init pcibios_fixup_pbus_ranges(struct pci_bus *bus, struct pbus_set_ranges_data *ranges){}                                                                                void __init pcibios_fixup_bus(struct pci_bus *bus){	struct list_head *ln;	struct pci_dev *dev;	for (ln=bus->devices.next; ln != &bus->devices; ln=ln->next) {		dev = pci_dev_b(ln);		if (!BBA_SELECTED(dev)) continue;		printk("PCI: MMIO fixup to %s\n", dev->name);		dev->resource[1].start=0x01001700;		dev->resource[1].end=0x010017ff;	}}static u8 __init no_swizzle(struct pci_dev *dev, u8 * pin){	return PCI_SLOT(dev->devfn);}static int __init map_dc_irq(struct pci_dev *dev, u8 slot, u8 pin){	return GAPSPCI_IRQ;}void __init pcibios_init(void){	pci_root_bus = pci_scan_bus(0, &pci_config_ops, NULL);	/* pci_assign_unassigned_resources(); */	pci_fixup_irqs(no_swizzle, map_dc_irq);}/* Haven't done anything here as yet */char * __init pcibios_setup(char *str){	return str;}int __init gapspci_init(void){	int i;	char idbuf[16];	for(i=0; i<16; i++)		idbuf[i]=inb(GAPSPCI_REGS+i);	if(strncmp(idbuf, "GAPSPCI_BRIDGE_2", 16))		return -1;	outl(0x5a14a501, GAPSPCI_REGS+0x18);	for(i=0; i<1000000; i++);	if(inl(GAPSPCI_REGS+0x18)!=1)		return -1;	outl(0x01000000, GAPSPCI_REGS+0x20);	outl(0x01000000, GAPSPCI_REGS+0x24);	outl(GAPSPCI_DMA_BASE, GAPSPCI_REGS+0x28);	outl(GAPSPCI_DMA_BASE+GAPSPCI_DMA_SIZE, GAPSPCI_REGS+0x2c);	outl(1, GAPSPCI_REGS+0x14);	outl(1, GAPSPCI_REGS+0x34);	gapspci_dma_used=0;	/* Setting Broadband Adapter */	outw(0xf900, GAPSPCI_BBA_CONFIG+0x06);	outl(0x00000000, GAPSPCI_BBA_CONFIG+0x30);	outb(0x00, GAPSPCI_BBA_CONFIG+0x3c);	outb(0xf0, GAPSPCI_BBA_CONFIG+0x0d);	outw(0x0006, GAPSPCI_BBA_CONFIG+0x04);	outl(0x00002001, GAPSPCI_BBA_CONFIG+0x10);	outl(0x01000000, GAPSPCI_BBA_CONFIG+0x14);	return 0;}

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲综合图片区| 国产精品素人视频| 国产不卡高清在线观看视频| 国模娜娜一区二区三区| 亚洲伊人伊色伊影伊综合网| 中文字幕乱码日本亚洲一区二区 | 一区二区三区在线观看视频| 日韩欧美亚洲另类制服综合在线| 95精品视频在线| 国产精品一区专区| 奇米影视在线99精品| 亚洲高清免费视频| 亚洲毛片av在线| 亚洲精品一二三| 91福利国产精品| 精品亚洲成a人| 亚洲一区二三区| 中文字幕在线免费不卡| 精品国产91九色蝌蚪| 884aa四虎影成人精品一区| 色悠悠久久综合| 成人污污视频在线观看| 美女一区二区在线观看| 午夜日韩在线观看| 亚洲影视在线播放| 亚洲精品美腿丝袜| 樱桃国产成人精品视频| 中文字幕日韩一区二区| 国产精品久久久久久福利一牛影视| 精品第一国产综合精品aⅴ| 日韩精品一区二区三区三区免费| 欧美视频在线观看一区二区| 久久国产成人午夜av影院| 972aa.com艺术欧美| 激情伊人五月天久久综合| 亚洲摸摸操操av| 亚洲色图制服诱惑| 亚洲精选视频免费看| 亚洲图片激情小说| 亚洲美腿欧美偷拍| 亚洲第四色夜色| 天天操天天综合网| 免费观看在线综合| 国产一区91精品张津瑜| 国产综合久久久久影院| 国产成人av一区二区| 国产aⅴ综合色| www.成人在线| 在线亚洲+欧美+日本专区| 一本色道**综合亚洲精品蜜桃冫| 在线亚洲免费视频| 在线观看91av| 久久久久97国产精华液好用吗| 国产视频一区在线观看| 中文字幕一区二区三中文字幕| 亚洲人成精品久久久久| 午夜精品一区二区三区免费视频 | 久久久久久97三级| 久久综合九色综合欧美亚洲| 国产日产欧美一区| 亚洲品质自拍视频网站| 亚洲va国产va欧美va观看| 天堂精品中文字幕在线| 久久精品国产网站| 成人网在线播放| 欧美日韩一区二区三区在线看| 欧美一卡二卡三卡| 国产欧美一区二区在线观看| 亚洲视频一二三区| 调教+趴+乳夹+国产+精品| 国产一区二区三区在线看麻豆| 顶级嫩模精品视频在线看| 色av一区二区| 26uuu成人网一区二区三区| 亚洲日本在线看| 日本va欧美va精品发布| 成人亚洲一区二区一| 欧美日韩精品福利| 中文一区在线播放| 日欧美一区二区| eeuss鲁片一区二区三区| 在线电影院国产精品| 中文字幕欧美激情一区| 亚洲成a人片综合在线| 国产精品一区在线| 欧美天堂亚洲电影院在线播放 | 一区二区三区免费在线观看| 久久99精品久久久久久国产越南| 99热99精品| 精品国产99国产精品| 一区二区三区欧美亚洲| 国产精品一区二区三区网站| 欧美三级一区二区| 中文字幕一区二区三区精华液| 日韩福利电影在线| 色一情一乱一乱一91av| 国产日产欧产精品推荐色| 偷偷要91色婷婷| 91香蕉视频在线| 国产亚洲精品精华液| 日日嗨av一区二区三区四区| 91网站在线观看视频| 久久老女人爱爱| 毛片av一区二区三区| 欧美综合视频在线观看| 国产精品视频看| 国产一区二区女| 日韩欧美不卡在线观看视频| 亚洲国产日产av| 色香蕉久久蜜桃| 日韩一区在线免费观看| 国产成人精品综合在线观看 | 久久婷婷成人综合色| 日韩高清在线一区| 欧美伊人精品成人久久综合97| 日韩毛片高清在线播放| 成人综合婷婷国产精品久久| 精品国产一区二区三区不卡| 日韩av一区二区在线影视| 欧美三级一区二区| 亚洲第一在线综合网站| 91传媒视频在线播放| 亚洲三级免费观看| 99久久er热在这里只有精品66| 国产精品天天看| caoporn国产精品| 国产精品国产自产拍在线| 风间由美一区二区三区在线观看| 精品国产一区二区三区忘忧草| 麻豆精品久久久| 欧美va亚洲va| 精品一区二区久久久| 日韩精品一区二区在线观看| 麻豆精品一区二区三区| 日韩精品一区二区三区swag| 蜜桃av一区二区三区| 精品少妇一区二区| 国产一区二区调教| 欧美国产丝袜视频| 99视频精品全部免费在线| 亚洲丝袜另类动漫二区| 欧美性videosxxxxx| 视频一区中文字幕国产| 精品免费日韩av| 国产高清不卡二三区| 亚洲影院免费观看| av在线播放不卡| 1024成人网色www| 91麻豆免费看片| 亚洲午夜免费电影| 911精品产国品一二三产区| 免费欧美在线视频| 26uuu色噜噜精品一区| 国产精品一区专区| 日韩毛片精品高清免费| 欧美性极品少妇| 美女视频黄免费的久久| 欧美激情在线看| 91免费在线播放| 日韩1区2区日韩1区2区| 久久青草国产手机看片福利盒子 | 狠狠色丁香婷婷综合久久片| 日本一区二区不卡视频| 欧美专区在线观看一区| 日本视频中文字幕一区二区三区| 久久精品免费在线观看| 在线观看欧美黄色| 美日韩一区二区三区| 国产精品国产三级国产专播品爱网 | 国产精品久久久久婷婷二区次| 波多野结衣中文字幕一区| 亚洲一区电影777| 欧美大胆人体bbbb| 北条麻妃国产九九精品视频| 日日夜夜免费精品| 亚洲国产成人在线| 欧美精品 日韩| 成人久久18免费网站麻豆| 午夜精品福利一区二区蜜股av | 五月天久久比比资源色| 久久尤物电影视频在线观看| 欧美综合久久久| 国产98色在线|日韩| 性做久久久久久免费观看| 中文av一区特黄| 51午夜精品国产| 91亚洲精品久久久蜜桃| 久久精品国产亚洲aⅴ| 亚洲永久精品大片| 国产精品丝袜在线| 日韩欧美一区在线| 在线影院国内精品| 国产不卡免费视频| 老司机一区二区| 亚洲午夜免费电影| 最新中文字幕一区二区三区| 亚洲精品一线二线三线无人区| 欧美日韩一区二区电影| 91网上在线视频| 国产成人精品免费视频网站|