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

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

?? pci.c

?? linux下的BOOT程序原碼,有需要的可以來(lái)下,保證好用
?? C
?? 第 1 頁(yè) / 共 2 頁(yè)
字號(hào):
		return 0;	return (high + 1 - low) << 20;}/********************************************************************* pciMapMemoryBank - Maps PCI_host memory bank "bank" for the slave.** Inputs: base and size of PCI SCS*********************************************************************/void pciMapMemoryBank (PCI_HOST host, MEMORY_BANK bank,		       unsigned int pciDramBase, unsigned int pciDramSize){	pciDramBase = pciDramBase & 0xfffff000;	pciDramBase = pciDramBase | (pciReadConfigReg (host,						       PCI_SCS_0_BASE_ADDRESS						       + 4 * bank,						       SELF) & 0x00000fff);	pciWriteConfigReg (host, PCI_SCS_0_BASE_ADDRESS + 4 * bank, SELF,			   pciDramBase);	if (pciDramSize == 0)		pciDramSize++;	GT_REG_WRITE (pci_scs_bank_size[host][bank], pciDramSize - 1);}/********************************************************************* pciSetRegionFeatures - This function modifys one of the 8 regions with*                         feature bits given as an input.*                       - Be advised to check the spec before modifying them.* Inputs: PCI_PROTECT_REGION region - one of the eight regions.*         unsigned int features - See file: pci.h there are defintion for those*                                 region features.*         unsigned int baseAddress - The region base Address.*         unsigned int topAddress - The region top Address.* Returns: false if one of the parameters is erroneous true otherwise.*********************************************************************/bool pciSetRegionFeatures (PCI_HOST host, PCI_ACCESS_REGIONS region,			   unsigned int features, unsigned int baseAddress,			   unsigned int regionLength){	unsigned int accessLow;	unsigned int accessHigh;	unsigned int accessTop = baseAddress + regionLength;	if (regionLength == 0) {	/* close the region. */		pciDisableAccessRegion (host, region);		return true;	}	/* base Address is store is bits [11:0] */	accessLow = (baseAddress & 0xfff00000) >> 20;	/* All the features are update according to the defines in pci.h (to be on	   the safe side we disable bits: [11:0] */	accessLow = accessLow | (features & 0xfffff000);	/* write to the Low Access Region register */	GT_REG_WRITE (pci_access_control_base_0_low[host] + 0x10 * region,		      accessLow);	accessHigh = (accessTop & 0xfff00000) >> 20;	/* write to the High Access Region register */	GT_REG_WRITE (pci_access_control_top_0[host] + 0x10 * region,		      accessHigh - 1);	return true;}/********************************************************************* pciDisableAccessRegion - Disable The given Region by writing MAX size*                           to its low Address and MIN size to its high Address.** Inputs:   PCI_ACCESS_REGIONS region - The region we to be Disabled.* Returns:  N/A.*********************************************************************/void pciDisableAccessRegion (PCI_HOST host, PCI_ACCESS_REGIONS region){	/* writing back the registers default values. */	GT_REG_WRITE (pci_access_control_base_0_low[host] + 0x10 * region,		      0x01001fff);	GT_REG_WRITE (pci_access_control_top_0[host] + 0x10 * region, 0);}/********************************************************************* pciArbiterEnable - Enables PCI-0`s Arbitration mechanism.** Inputs:   N/A* Returns:  true.*********************************************************************/bool pciArbiterEnable (PCI_HOST host){	unsigned int regData;	GT_REG_READ (pci_arbiter_control[host], &regData);	GT_REG_WRITE (pci_arbiter_control[host], regData | BIT31);	return true;}/********************************************************************* pciArbiterDisable - Disable PCI-0`s Arbitration mechanism.** Inputs:   N/A* Returns:  true*********************************************************************/bool pciArbiterDisable (PCI_HOST host){	unsigned int regData;	GT_REG_READ (pci_arbiter_control[host], &regData);	GT_REG_WRITE (pci_arbiter_control[host], regData & 0x7fffffff);	return true;}/********************************************************************* pciParkingDisable - Park on last option disable, with this function you can*                      disable the park on last mechanism for each agent.*                      disabling this option for all agents results parking*                      on the internal master.** Inputs: PCI_AGENT_PARK internalAgent -  parking Disable for internal agent.*         PCI_AGENT_PARK externalAgent0 - parking Disable for external#0 agent.*         PCI_AGENT_PARK externalAgent1 - parking Disable for external#1 agent.*         PCI_AGENT_PARK externalAgent2 - parking Disable for external#2 agent.*         PCI_AGENT_PARK externalAgent3 - parking Disable for external#3 agent.*         PCI_AGENT_PARK externalAgent4 - parking Disable for external#4 agent.*         PCI_AGENT_PARK externalAgent5 - parking Disable for external#5 agent.* Returns:  true*********************************************************************/bool pciParkingDisable (PCI_HOST host, PCI_AGENT_PARK internalAgent,			PCI_AGENT_PARK externalAgent0,			PCI_AGENT_PARK externalAgent1,			PCI_AGENT_PARK externalAgent2,			PCI_AGENT_PARK externalAgent3,			PCI_AGENT_PARK externalAgent4,			PCI_AGENT_PARK externalAgent5){	unsigned int regData;	unsigned int writeData;	GT_REG_READ (pci_arbiter_control[host], &regData);	writeData = (internalAgent << 14) + (externalAgent0 << 15) +		(externalAgent1 << 16) + (externalAgent2 << 17) +		(externalAgent3 << 18) + (externalAgent4 << 19) +		(externalAgent5 << 20);	regData = (regData & ~(0x7f << 14)) | writeData;	GT_REG_WRITE (pci_arbiter_control[host], regData);	return true;}/********************************************************************* pciSetRegionSnoopMode - This function modifys one of the 4 regions which*                          supports Cache Coherency in the PCI_n interface.* Inputs: region - One of the four regions.*         snoopType - There is four optional Types:*                        1. No Snoop.*                        2. Snoop to WT region.*                        3. Snoop to WB region.*                        4. Snoop & Invalidate to WB region.*         baseAddress - Base Address of this region.*         regionLength - Region length.* Returns: false if one of the parameters is wrong otherwise return true.*********************************************************************/bool pciSetRegionSnoopMode (PCI_HOST host, PCI_SNOOP_REGION region,			    PCI_SNOOP_TYPE snoopType,			    unsigned int baseAddress,			    unsigned int regionLength){	unsigned int snoopXbaseAddress;	unsigned int snoopXtopAddress;	unsigned int data;	unsigned int snoopHigh = baseAddress + regionLength;	if ((region > PCI_SNOOP_REGION3) || (snoopType > PCI_SNOOP_WB))		return false;	snoopXbaseAddress =		pci_snoop_control_base_0_low[host] + 0x10 * region;	snoopXtopAddress = pci_snoop_control_top_0[host] + 0x10 * region;	if (regionLength == 0) {	/* closing the region */		GT_REG_WRITE (snoopXbaseAddress, 0x0000ffff);		GT_REG_WRITE (snoopXtopAddress, 0);		return true;	}	baseAddress = baseAddress & 0xfff00000;	/* Granularity of 1MByte */	data = (baseAddress >> 20) | snoopType << 12;	GT_REG_WRITE (snoopXbaseAddress, data);	snoopHigh = (snoopHigh & 0xfff00000) >> 20;	GT_REG_WRITE (snoopXtopAddress, snoopHigh - 1);	return true;}/* * */static int gt_read_config_dword (struct pci_controller *hose,				 pci_dev_t dev, int offset, u32 * value){	int bus = PCI_BUS (dev);	if ((bus == local_buses[0]) || (bus == local_buses[1])) {		*value = pciReadConfigReg ((PCI_HOST) hose->cfg_addr, offset,					   PCI_DEV (dev));	} else {		*value = pciOverBridgeReadConfigReg ((PCI_HOST) hose->						     cfg_addr, offset,						     PCI_DEV (dev), bus);	}	return 0;}static int gt_write_config_dword (struct pci_controller *hose,				  pci_dev_t dev, int offset, u32 value){	int bus = PCI_BUS (dev);	if ((bus == local_buses[0]) || (bus == local_buses[1])) {		pciWriteConfigReg ((PCI_HOST) hose->cfg_addr, offset,				   PCI_DEV (dev), value);	} else {		pciOverBridgeWriteConfigReg ((PCI_HOST) hose->cfg_addr,					     offset, PCI_DEV (dev), value,					     bus);	}	return 0;}/* * */static void gt_setup_ide (struct pci_controller *hose,			  pci_dev_t dev, struct pci_config_table *entry){	static const int ide_bar[] = { 8, 4, 8, 4, 0, 0 };	u32 bar_response, bar_value;	int bar;	for (bar = 0; bar < 6; bar++) {		pci_write_config_dword (dev, PCI_BASE_ADDRESS_0 + bar * 4,					0x0);		pci_read_config_dword (dev, PCI_BASE_ADDRESS_0 + bar * 4,				       &bar_response);		pciauto_region_allocate (bar_response &					 PCI_BASE_ADDRESS_SPACE_IO ? hose->					 pci_io : hose->pci_mem, ide_bar[bar],					 &bar_value);		pci_write_config_dword (dev, PCI_BASE_ADDRESS_0 + bar * 4,					bar_value);	}}#ifndef CONFIG_P3G4static void gt_fixup_irq (struct pci_controller *hose, pci_dev_t dev){	unsigned char pin, irq;	pci_read_config_byte (dev, PCI_INTERRUPT_PIN, &pin);	if (pin == 1) {		/* only allow INT A */		irq = pci_irq_swizzle[(PCI_HOST) hose->				      cfg_addr][PCI_DEV (dev)];		if (irq)			pci_write_config_byte (dev, PCI_INTERRUPT_LINE, irq);	}}#endifstruct pci_config_table gt_config_table[] = {	{PCI_ANY_ID, PCI_ANY_ID, PCI_CLASS_STORAGE_IDE,	 PCI_ANY_ID, PCI_ANY_ID, PCI_ANY_ID, gt_setup_ide},	{}};struct pci_controller pci0_hose = {#ifndef CONFIG_P3G4	fixup_irq:gt_fixup_irq,#endif	config_table:gt_config_table,};struct pci_controller pci1_hose = {#ifndef CONFIG_P3G4	fixup_irq:gt_fixup_irq,#endif	config_table:gt_config_table,};void pci_init_board (void){	unsigned int command;	pci0_hose.first_busno = 0;	pci0_hose.last_busno = 0xff;	local_buses[0] = pci0_hose.first_busno;	/* PCI memory space */	pci_set_region (pci0_hose.regions + 0,			CFG_PCI0_0_MEM_SPACE,			CFG_PCI0_0_MEM_SPACE,			CFG_PCI0_MEM_SIZE, PCI_REGION_MEM);	/* PCI I/O space */	pci_set_region (pci0_hose.regions + 1,			CFG_PCI0_IO_SPACE_PCI,			CFG_PCI0_IO_SPACE, CFG_PCI0_IO_SIZE, PCI_REGION_IO);	pci_set_ops (&pci0_hose,		     pci_hose_read_config_byte_via_dword,		     pci_hose_read_config_word_via_dword,		     gt_read_config_dword,		     pci_hose_write_config_byte_via_dword,		     pci_hose_write_config_word_via_dword,		     gt_write_config_dword);	pci0_hose.region_count = 2;	pci0_hose.cfg_addr = (unsigned int *) PCI_HOST0;	pci_register_hose (&pci0_hose);#ifndef CONFIG_P3G4	pciArbiterEnable (PCI_HOST0);	pciParkingDisable (PCI_HOST0, 1, 1, 1, 1, 1, 1, 1);#endif	command = pciReadConfigReg (PCI_HOST0, PCI_COMMAND, SELF);	command |= PCI_COMMAND_MASTER;	pciWriteConfigReg (PCI_HOST0, PCI_COMMAND, SELF, command);	pci0_hose.last_busno = pci_hose_scan (&pci0_hose);	command = pciReadConfigReg (PCI_HOST0, PCI_COMMAND, SELF);	command |= PCI_COMMAND_MEMORY;	pciWriteConfigReg (PCI_HOST0, PCI_COMMAND, SELF, command);	pci1_hose.first_busno = pci0_hose.last_busno + 1;	pci1_hose.last_busno = 0xff;	pci1_hose.current_busno = pci0_hose.current_busno;	local_buses[1] = pci1_hose.first_busno;	/* PCI memory space */	pci_set_region (pci1_hose.regions + 0,			CFG_PCI1_0_MEM_SPACE,			CFG_PCI1_0_MEM_SPACE,			CFG_PCI1_MEM_SIZE, PCI_REGION_MEM);	/* PCI I/O space */	pci_set_region (pci1_hose.regions + 1,			CFG_PCI1_IO_SPACE_PCI,			CFG_PCI1_IO_SPACE, CFG_PCI1_IO_SIZE, PCI_REGION_IO);	pci_set_ops (&pci1_hose,		     pci_hose_read_config_byte_via_dword,		     pci_hose_read_config_word_via_dword,		     gt_read_config_dword,		     pci_hose_write_config_byte_via_dword,		     pci_hose_write_config_word_via_dword,		     gt_write_config_dword);	pci1_hose.region_count = 2;	pci1_hose.cfg_addr = (unsigned int *) PCI_HOST1;	pci_register_hose (&pci1_hose);#ifndef CONFIG_P3G4	pciArbiterEnable (PCI_HOST1);	pciParkingDisable (PCI_HOST1, 1, 1, 1, 1, 1, 1, 1);#endif	command = pciReadConfigReg (PCI_HOST1, PCI_COMMAND, SELF);	command |= PCI_COMMAND_MASTER;	pciWriteConfigReg (PCI_HOST1, PCI_COMMAND, SELF, command);	pci1_hose.last_busno = pci_hose_scan (&pci1_hose);	command = pciReadConfigReg (PCI_HOST1, PCI_COMMAND, SELF);	command |= PCI_COMMAND_MEMORY;	pciWriteConfigReg (PCI_HOST1, PCI_COMMAND, SELF, command);}

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久综合九色综合97婷婷| 成人教育av在线| 国产一区二区三区日韩| 丁香激情综合五月| 欧美一区二区免费视频| 亚洲婷婷综合色高清在线| 精品一区二区三区在线观看国产| 91美女片黄在线观看91美女| 欧美va在线播放| 天堂va蜜桃一区二区三区漫画版| 成人ar影院免费观看视频| 精品欧美一区二区久久| 性做久久久久久免费观看| 91免费看片在线观看| 久久综合色婷婷| 美女视频第一区二区三区免费观看网站| 99久久国产综合精品女不卡| 久久免费电影网| 麻豆精品一区二区三区| 在线成人免费视频| 午夜久久久久久久久久一区二区| 91麻豆免费观看| 亚洲天堂a在线| k8久久久一区二区三区| 丝袜美腿亚洲一区二区图片| 91啦中文在线观看| 亚洲欧美一区二区三区极速播放| 激情综合网av| 日韩精品一区二区三区四区视频 | 一区二区三区日韩在线观看| 国产91丝袜在线播放| 亚洲精品一区二区三区精华液| 美女一区二区在线观看| 日韩欧美精品三级| 韩国中文字幕2020精品| 亚洲精品一线二线三线| 国产麻豆成人传媒免费观看| 2020国产精品| 国产凹凸在线观看一区二区| 国产精品视频你懂的| 成人激情午夜影院| 亚洲精品视频在线看| 日本高清不卡aⅴ免费网站| 一卡二卡三卡日韩欧美| 在线成人av网站| 日本免费新一区视频| 精品国免费一区二区三区| 国产精品综合在线视频| 国产精品久久精品日日| a在线欧美一区| 一区二区三区日本| 亚洲精品乱码久久久久久黑人| 97精品国产露脸对白| 亚洲免费在线视频一区 二区| 欧美性猛交xxxx乱大交退制版| 亚洲成人你懂的| 精品国产乱码久久久久久图片| 国产久卡久卡久卡久卡视频精品| 国产精品嫩草影院av蜜臀| 色先锋资源久久综合| 天天影视涩香欲综合网| xf在线a精品一区二区视频网站| 成人精品国产免费网站| 午夜精品久久一牛影视| 久久精品一区二区三区不卡牛牛| 成人免费视频视频在线观看免费| 亚洲欧美一区二区三区国产精品| 91精品国产91久久久久久一区二区| 国内成+人亚洲+欧美+综合在线 | 风间由美一区二区av101| 亚洲日本成人在线观看| 欧美一级精品大片| 成人精品免费视频| 日韩成人一区二区三区在线观看| 久久亚区不卡日本| 欧美日韩一区二区三区四区五区| 久久97超碰国产精品超碰| 亚洲日本韩国一区| 精品国产91乱码一区二区三区 | 久久久精品tv| 色欧美乱欧美15图片| 久久精品久久久精品美女| 成人欧美一区二区三区1314| 69久久99精品久久久久婷婷| 99久久精品免费| 国产一区二区视频在线播放| 亚洲电影一区二区三区| 国产精品蜜臀在线观看| 欧美一级xxx| 在线影视一区二区三区| 国产99久久久国产精品| 久久99在线观看| 亚洲国产日韩在线一区模特| 亚洲欧美综合另类在线卡通| 精品国产乱码久久久久久牛牛| 在线一区二区三区四区| 成人免费黄色在线| 久久99国内精品| 日韩影视精彩在线| 亚洲国产精品影院| 亚洲丝袜美腿综合| 国产精品免费人成网站| 久久女同精品一区二区| 欧美大片拔萝卜| 91麻豆精品国产自产在线观看一区| 91麻豆精品视频| 成人激情av网| 成人精品电影在线观看| 成人免费高清在线观看| 欧美男男青年gay1069videost| 97久久精品人人澡人人爽| 成人性色生活片| 盗摄精品av一区二区三区| 国产精品亚洲а∨天堂免在线| 久久99精品一区二区三区| 日韩高清不卡一区| 日韩电影在线观看网站| 另类小说色综合网站| 麻豆精品一二三| 国产在线精品不卡| 国产一区二区精品久久91| 国产一区二区久久| 波多野结衣欧美| 99re视频精品| 欧美午夜在线一二页| 在线视频综合导航| 欧美精品日韩精品| 日韩三级视频在线看| 欧美精品一区二区精品网| 精品国产一区二区三区四区四| 精品va天堂亚洲国产| 欧美—级在线免费片| 亚洲欧洲精品一区二区三区| 亚洲激情图片qvod| 亚洲不卡在线观看| 麻豆精品国产传媒mv男同| 国产在线精品一区二区夜色| 成人午夜电影久久影院| 91亚洲精华国产精华精华液| 欧美日韩中字一区| 日韩欧美在线一区二区三区| 久久久www免费人成精品| 一区在线中文字幕| 亚洲午夜视频在线观看| 久久99精品国产| 97久久久精品综合88久久| 欧美日韩一区二区三区在线看 | 欧美午夜不卡在线观看免费| 日韩一区二区三区观看| 亚洲国产精品激情在线观看| 亚洲精选在线视频| 久久av中文字幕片| 91在线国产福利| 日韩欧美视频一区| 中文字幕一区av| 蜜臀av性久久久久蜜臀aⅴ| 风间由美中文字幕在线看视频国产欧美| 色综合视频一区二区三区高清| 日韩亚洲欧美在线| 亚洲欧美另类图片小说| 人妖欧美一区二区| 不卡电影一区二区三区| 欧美久久久久中文字幕| 国产精品国产三级国产| 久热成人在线视频| 在线观看日韩一区| 国产日韩欧美制服另类| 天天影视网天天综合色在线播放| 国产超碰在线一区| 日韩视频一区二区在线观看| 综合欧美一区二区三区| 精品一区二区在线看| 欧美三级电影网| 亚洲视频在线观看一区| 国产呦萝稀缺另类资源| 欧美三级视频在线播放| 亚洲日韩欧美一区二区在线| 黑人巨大精品欧美一区| 欧美日韩免费电影| 亚洲免费三区一区二区| 国产福利视频一区二区三区| 欧美一区二区精品在线| 亚洲综合色丁香婷婷六月图片| 成人av在线资源| 国产欧美日韩亚州综合| 九色综合狠狠综合久久| 欧美另类videos死尸| 亚洲精品美腿丝袜| 成人国产一区二区三区精品| 久久亚洲精品小早川怜子| 久久精品国产澳门| 欧美一区二区国产| 日韩精品久久理论片| 欧美日韩一区二区不卡| 一二三区精品视频| 99这里只有精品| 亚洲人成网站精品片在线观看| 不卡视频一二三| 亚洲精品久久久蜜桃| 91黄色小视频|