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

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

?? sdram_init.c

?? AT9260的BOOTLOADER,還有幾個版本的,需要的我再放
?? C
?? 第 1 頁 / 共 4 頁
字號:
		case 22:	/* Suported AutoPreCharge */			DP (printf ("\nModul Attributes (SPD Byte 22): \n"));			dimmInfo->suportedEarlyRasPreCharge = data[i] & BIT0;			dimmInfo->suportedAutoPreCharge =				(data[i] & BIT1) >> 1;			dimmInfo->suportedPreChargeAll =				(data[i] & BIT2) >> 2;			dimmInfo->suportedWrite1ReadBurst =				(data[i] & BIT3) >> 3;			dimmInfo->suported5PercentLowVCC =				(data[i] & BIT4) >> 4;			dimmInfo->suported5PercentUpperVCC =				(data[i] & BIT5) >> 5;#ifdef DEBUG			if (dimmInfo->suportedEarlyRasPreCharge == 1)				DP (printf				    (" - Early Ras Precharge:			Yes \n"));			else				DP (printf				    (" -  Early Ras Precharge:			No \n"));			if (dimmInfo->suportedAutoPreCharge == 1)				DP (printf				    (" - AutoPreCharge:				Yes \n"));			else				DP (printf				    (" -  AutoPreCharge:				No \n"));			if (dimmInfo->suportedPreChargeAll == 1)				DP (printf				    (" - Precharge All:				Yes \n"));			else				DP (printf				    (" -  Precharge All:				No \n"));			if (dimmInfo->suportedWrite1ReadBurst == 1)				DP (printf				    (" - Write 1/ReadBurst:				Yes \n"));			else				DP (printf				    (" -  Write 1/ReadBurst:				No \n"));			if (dimmInfo->suported5PercentLowVCC == 1)				DP (printf				    (" - lower VCC tolerance:			5 Percent \n"));			else				DP (printf				    ("  - lower VCC tolerance:			10 Percent \n"));			if (dimmInfo->suported5PercentUpperVCC == 1)				DP (printf				    (" - upper VCC tolerance:			5 Percent \n"));			else				DP (printf				    (" -  upper VCC tolerance:			10 Percent \n"));#endif			break;/*------------------------------------------------------------------------------------------------------------------------------*/		case 23:	/* Minimum Cycle Time At Maximum Cas Latancy Minus 1 (2nd highest CL) */			shift = (dimmInfo->memoryType == DDR) ? 4 : 2;			mult = (dimmInfo->memoryType == DDR) ? 10 : 25;			maskLeftOfPoint =				(dimmInfo->memoryType == DDR) ? 0xf0 : 0xfc;			maskRightOfPoint =				(dimmInfo->memoryType == DDR) ? 0xf : 0x03;			leftOfPoint = (data[i] & maskLeftOfPoint) >> shift;			rightOfPoint = (data[i] & maskRightOfPoint) * mult;			dimmInfo->minimumCycleTimeAtMaxCasLatancyMinus1_LoP =				leftOfPoint;			dimmInfo->minimumCycleTimeAtMaxCasLatancyMinus1_RoP =				rightOfPoint;			DP (printf			    ("Minimum Cycle Time At 2nd highest CasLatancy (0 = Not supported): %d.%d [ns]\n",			     leftOfPoint, rightOfPoint));			/*dimmInfo->minimumCycleTimeAtMaxCasLatancy */			break;/*------------------------------------------------------------------------------------------------------------------------------*/		case 24:	/* Clock To Data Out 2nd highest Cas Latency Value */			div = (dimmInfo->memoryType == DDR) ? 100 : 10;			time_tmp =				(((data[i] & 0xf0) >> 4) * 10) +				((data[i] & 0x0f));			leftOfPoint = time_tmp / div;			rightOfPoint = time_tmp % div;			dimmInfo->clockToDataOutMinus1_LoP = leftOfPoint;			dimmInfo->clockToDataOutMinus1_RoP = rightOfPoint;			DP (printf			    ("Clock To Data Out (2nd CL value): 		%d.%2d [ns]\n",			     leftOfPoint, rightOfPoint));			break;/*------------------------------------------------------------------------------------------------------------------------------*/		case 25:	/* Minimum Cycle Time At Maximum Cas Latancy Minus 2 (3rd highest CL) */			shift = (dimmInfo->memoryType == DDR) ? 4 : 2;			mult = (dimmInfo->memoryType == DDR) ? 10 : 25;			maskLeftOfPoint =				(dimmInfo->memoryType == DDR) ? 0xf0 : 0xfc;			maskRightOfPoint =				(dimmInfo->memoryType == DDR) ? 0xf : 0x03;			leftOfPoint = (data[i] & maskLeftOfPoint) >> shift;			rightOfPoint = (data[i] & maskRightOfPoint) * mult;			dimmInfo->minimumCycleTimeAtMaxCasLatancyMinus2_LoP =				leftOfPoint;			dimmInfo->minimumCycleTimeAtMaxCasLatancyMinus2_RoP =				rightOfPoint;			DP (printf			    ("Minimum Cycle Time At 3rd highest CasLatancy (0 = Not supported): %d.%d [ns]\n",			     leftOfPoint, rightOfPoint));			/*dimmInfo->minimumCycleTimeAtMaxCasLatancy */			break;/*------------------------------------------------------------------------------------------------------------------------------*/		case 26:	/* Clock To Data Out 3rd highest Cas Latency Value */			div = (dimmInfo->memoryType == DDR) ? 100 : 10;			time_tmp =				(((data[i] & 0xf0) >> 4) * 10) +				((data[i] & 0x0f));			leftOfPoint = time_tmp / div;			rightOfPoint = time_tmp % div;			dimmInfo->clockToDataOutMinus2_LoP = leftOfPoint;			dimmInfo->clockToDataOutMinus2_RoP = rightOfPoint;			DP (printf			    ("Clock To Data Out (3rd CL value): 		%d.%2d [ns]\n",			     leftOfPoint, rightOfPoint));			break;/*------------------------------------------------------------------------------------------------------------------------------*/		case 27:	/* Minimum Row Precharge Time */			shift = (dimmInfo->memoryType == DDR) ? 2 : 0;			maskLeftOfPoint =				(dimmInfo->memoryType == DDR) ? 0xfc : 0xff;			maskRightOfPoint =				(dimmInfo->memoryType == DDR) ? 0x03 : 0x00;			leftOfPoint = ((data[i] & maskLeftOfPoint) >> shift);			rightOfPoint = (data[i] & maskRightOfPoint) * 25;			dimmInfo->minRowPrechargeTime = ((leftOfPoint * 100) + rightOfPoint);	/* measured in n times 10ps Intervals */			trp_clocks =				(dimmInfo->minRowPrechargeTime +				 (tmemclk - 1)) / tmemclk;			DP (printf			    ("*** 1 clock cycle = %ld  10ps intervalls = %ld.%ld ns****\n",			     tmemclk, tmemclk / 100, tmemclk % 100));			DP (printf			    ("Minimum Row Precharge Time [ns]: 		%d.%2d = in Clk cycles %d\n",			     leftOfPoint, rightOfPoint, trp_clocks));			break;/*------------------------------------------------------------------------------------------------------------------------------*/		case 28:	/* Minimum Row Active to Row Active Time */			shift = (dimmInfo->memoryType == DDR) ? 2 : 0;			maskLeftOfPoint =				(dimmInfo->memoryType == DDR) ? 0xfc : 0xff;			maskRightOfPoint =				(dimmInfo->memoryType == DDR) ? 0x03 : 0x00;			leftOfPoint = ((data[i] & maskLeftOfPoint) >> shift);			rightOfPoint = (data[i] & maskRightOfPoint) * 25;			dimmInfo->minRowActiveRowActiveDelay = ((leftOfPoint * 100) + rightOfPoint);	/* measured in 100ns Intervals */			trrd_clocks =				(dimmInfo->minRowActiveRowActiveDelay +				 (tmemclk - 1)) / tmemclk;			DP (printf			    ("Minimum Row Active -To- Row Active Delay [ns]: 	%d.%2d = in Clk cycles %d\n",			     leftOfPoint, rightOfPoint, trp_clocks));			break;/*------------------------------------------------------------------------------------------------------------------------------*/		case 29:	/* Minimum Ras-To-Cas Delay */			shift = (dimmInfo->memoryType == DDR) ? 2 : 0;			maskLeftOfPoint =				(dimmInfo->memoryType == DDR) ? 0xfc : 0xff;			maskRightOfPoint =				(dimmInfo->memoryType == DDR) ? 0x03 : 0x00;			leftOfPoint = ((data[i] & maskLeftOfPoint) >> shift);			rightOfPoint = (data[i] & maskRightOfPoint) * 25;			dimmInfo->minRowActiveRowActiveDelay = ((leftOfPoint * 100) + rightOfPoint);	/* measured in 100ns Intervals */			trcd_clocks =				(dimmInfo->minRowActiveRowActiveDelay +				 (tmemclk - 1)) / tmemclk;			DP (printf			    ("Minimum Ras-To-Cas Delay [ns]: 			%d.%2d = in Clk cycles %d\n",			     leftOfPoint, rightOfPoint, trp_clocks));			break;/*------------------------------------------------------------------------------------------------------------------------------*/		case 30:	/* Minimum Ras Pulse Width */			dimmInfo->minRasPulseWidth = data[i];			tras_clocks =				(NSto10PS (data[i]) +				 (tmemclk - 1)) / tmemclk;			DP (printf			    ("Minimum Ras Pulse Width [ns]: 			%d = in Clk cycles %d\n",			     dimmInfo->minRasPulseWidth, tras_clocks));			break;/*------------------------------------------------------------------------------------------------------------------------------*/		case 31:	/* Module Bank Density */			dimmInfo->moduleBankDensity = data[i];			DP (printf			    ("Module Bank Density: 				%d\n",			     dimmInfo->moduleBankDensity));#ifdef DEBUG			DP (printf			    ("*** Offered Densities (more than 1 = Multisize-Module): "));			{				if (dimmInfo->moduleBankDensity & 1)					DP (printf ("4MB, "));				if (dimmInfo->moduleBankDensity & 2)					DP (printf ("8MB, "));				if (dimmInfo->moduleBankDensity & 4)					DP (printf ("16MB, "));				if (dimmInfo->moduleBankDensity & 8)					DP (printf ("32MB, "));				if (dimmInfo->moduleBankDensity & 16)					DP (printf ("64MB, "));				if (dimmInfo->moduleBankDensity & 32)					DP (printf ("128MB, "));				if ((dimmInfo->moduleBankDensity & 64)				    || (dimmInfo->moduleBankDensity & 128)) {					DP (printf ("ERROR, "));					hang ();				}			}			DP (printf ("\n"));#endif			break;/*------------------------------------------------------------------------------------------------------------------------------*/		case 32:	/* Address And Command Setup Time (measured in ns/1000) */			sign = 1;			switch (dimmInfo->memoryType) {			case DDR:				time_tmp =					(((data[i] & 0xf0) >> 4) * 10) +					((data[i] & 0x0f));				leftOfPoint = time_tmp / 100;				rightOfPoint = time_tmp % 100;				break;			case SDRAM:				leftOfPoint = (data[i] & 0xf0) >> 4;				if (leftOfPoint > 7) {					leftOfPoint = data[i] & 0x70 >> 4;					sign = -1;				}				rightOfPoint = (data[i] & 0x0f);				break;			}			dimmInfo->addrAndCommandSetupTime =				(leftOfPoint * 100 + rightOfPoint) * sign;			DP (printf			    ("Address And Command Setup Time [ns]: 		%d.%d\n",			     sign * leftOfPoint, rightOfPoint));			break;/*------------------------------------------------------------------------------------------------------------------------------*/		case 33:	/* Address And Command Hold Time */			sign = 1;			switch (dimmInfo->memoryType) {			case DDR:				time_tmp =					(((data[i] & 0xf0) >> 4) * 10) +					((data[i] & 0x0f));				leftOfPoint = time_tmp / 100;				rightOfPoint = time_tmp % 100;				break;			case SDRAM:				leftOfPoint = (data[i] & 0xf0) >> 4;				if (leftOfPoint > 7) {					leftOfPoint = data[i] & 0x70 >> 4;					sign = -1;				}				rightOfPoint = (data[i] & 0x0f);				break;			}			dimmInfo->addrAndCommandHoldTime =				(leftOfPoint * 100 + rightOfPoint) * sign;			DP (printf			    ("Address And Command Hold Time [ns]: 		%d.%d\n",			     sign * leftOfPoint, rightOfPoint));			break;/*------------------------------------------------------------------------------------------------------------------------------*/		case 34:	/* Data Input Setup Time */			sign = 1;			switch (dimmInfo->memoryType) {			case DDR:				time_tmp =					(((data[i] & 0xf0) >> 4) * 10) +					((data[i] & 0x0f));				leftOfPoint = time_tmp / 100;				rightOfPoint = time_tmp % 100;				break;			case SDRAM:				leftOfPoint = (data[i] & 0xf0) >> 4;				if (leftOfPoint > 7) {					leftOfPoint = data[i] & 0x70 >> 4;					sign = -1;				}				rightOfPoint = (data[i] & 0x0f);				break;			}			dimmInfo->dataInputSetupTime =				(leftOfPoint * 100 + rightOfPoint) * sign;			DP (printf			    ("Data Input Setup Time [ns]: 			%d.%d\n",			     sign * leftOfPoint, rightOfPoint));			break;/*------------------------------------------------------------------------------------------------------------------------------*/		case 35:	/* Data Input Hold Time */			sign = 1;			switch (dimmInfo->memoryType) {			case DDR:				time_tmp =					(((data[i] & 0xf0) >> 4) * 10) +					((data[i] & 0x0f));				leftOfPoint = time_tmp / 100;				rightOfPoint = time_tmp % 100;				break;			case SDRAM:				leftOfPoint = (data[i] & 0xf0) >> 4;				if (leftOfPoint > 7) {					leftOfPoint = data[i] & 0x70 >> 4;					sign = -1;				}				rightOfPoint = (data[i] & 0x0f);				break;			}			dimmInfo->dataInputHoldTime =				(leftOfPoint * 100 + rightOfPoint) * sign;			DP (printf			    ("Data Input Hold Time [ns]: 			%d.%d\n\n",			     sign * leftOfPoint, rightOfPoint));			break;/*------------------------------------------------------------------------------------------------------------------------------*/		}	}	/* calculating the sdram density */	for (i = 0;	     i < dimmInfo->numOfRowAddresses + dimmInfo->numOfColAddresses;	     i++) {		density = density * 2;	}	dimmInfo->deviceDensity = density * dimmInfo->numOfBanksOnEachDevice *		dimmInfo->sdramWidth;	dimmInfo->numberOfDevices =		(dimmInfo->dataWidth / dimmInfo->sdramWidth) *		dimmInfo->numOfModuleBanks;	devicesForErrCheck =		(dimmInfo->dataWidth - 64) / dimmInfo->sdramWidth;	if ((dimmInfo->errorCheckType == 0x1)	    || (dimmInfo->errorCheckType == 0x2)	    || (dimmInfo->errorCheckType == 0x3)) {		dimmInfo->size =			(dimmInfo->deviceDensity / 8) *			(dimmInfo->numberOfDevices - devicesForErrCheck);	} else {		dimmInfo->size =			(dimmInfo->deviceDensity / 8) *			dimmInfo->numberOfDevices;	}	/* compute the module DRB size */	tmp = (1 <<	       (dimmInfo->numOfRowAddresses + dimmInfo->numOfColAddresses));	tmp *= dimmInfo->numOfModuleBanks;	tmp *= dimmInfo->sdramWidth;	tmp = tmp >> 24;	/* div by 0x4000000 (64M)       */	dimmInfo->drb_size = (uchar) tmp;	DP (printf ("Module DRB size (n*64Mbit): %d\n", dimmInfo->drb_size));	/* try a CAS latency of 3 first... */	/* bit 1 is CL2, bit 2 is CL3 */	supp_cal = (dimmInfo->suportedCasLatencies & 0x1c) >> 1;	cal_val = 0;	if (supp_cal & 8) {		if (NS10to10PS (data[9]) <= tmemclk)			cal_val = 6;	}	if (supp_cal & 4) {		if (NS10to10PS (data[9]) <= tmemclk)			cal_val = 5;	}	/* then 2... */	if (supp_cal & 2) {		if (NS10to10PS (data[23]) <= tmemclk)			cal_val = 4;	}	DP (printf ("cal_val = %d\n", cal_val * 5));	/* bummer, did't work... */	if (cal_val == 0) {		DP (printf ("Couldn't find a good CAS latency\n"));		hang ();		return 0;	}	return true;}/* sets up the GT properly with information passed in */int setup_sdram (AUX_MEM_DIMM_INFO * info){	ulong tmp, check;	ulong tmp_sdram_mode = 0;	/* 0x141c */	ulong tmp_dunit_control_low = 0;	/* 0x1404 */	int i;	/* sanity checking */	if (!info->numOfModuleBanks) {		printf ("setup_sdram called with 0 banks\n");

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美精品一区二区三区四区| 色综合久久中文综合久久97 | 国产91在线|亚洲| 欧美www视频| 高清不卡在线观看av| 亚洲美女淫视频| 欧美一级二级三级蜜桃| 日产国产高清一区二区三区| 久久精品夜色噜噜亚洲aⅴ| 一本色道综合亚洲| 成人av电影免费在线播放| 久久综合九色综合97_久久久| av亚洲产国偷v产偷v自拍| 日本不卡123| 欧美主播一区二区三区| 韩国精品久久久| 自拍偷拍亚洲欧美日韩| 日韩视频免费观看高清完整版 | 99精品视频一区二区| 玉米视频成人免费看| 久久亚洲春色中文字幕久久久| 成人黄动漫网站免费app| 视频精品一区二区| 欧美一级国产精品| 一本色道亚洲精品aⅴ| 久久国内精品自在自线400部| 国产精品美女久久久久久2018| 欧美精品一二三| 99精品视频在线观看| 久久爱另类一区二区小说| 综合中文字幕亚洲| 久久精品欧美一区二区三区麻豆| 在线看国产一区二区| 国产成人精品综合在线观看| 一区二区视频在线| 精品欧美久久久| 欧美日韩一区二区在线观看视频| 成人爱爱电影网址| 久久av资源网| 综合久久综合久久| 中文字幕欧美日韩一区| 精品粉嫩超白一线天av| 欧美一区二区三区在| 欧美视频中文一区二区三区在线观看 | 亚洲香肠在线观看| 精品国产乱码久久久久久夜甘婷婷| 欧美午夜一区二区三区 | 毛片av中文字幕一区二区| 亚洲成人激情社区| 精品蜜桃在线看| 日韩欧美不卡在线观看视频| 欧美肥妇free| 在线播放91灌醉迷j高跟美女 | 99在线精品观看| 国产成人av自拍| 国产精品综合视频| 日韩在线观看一区二区| 亚洲电影一区二区| 亚洲欧美激情小说另类| 国产精品丝袜黑色高跟| 中文字幕av在线一区二区三区| 欧美电影免费观看完整版| 日韩亚洲欧美中文三级| 欧美一区二区三区啪啪| 亚洲国产综合人成综合网站| 亚洲午夜一区二区三区| 国产精品色婷婷久久58| 国产精品视频一区二区三区不卡| 国产欧美综合色| 欧美激情中文字幕| 91精品国产色综合久久ai换脸| 欧美日韩精品免费| 欧美一区二区网站| 欧美日韩夫妻久久| 欧美三级视频在线观看| 337p亚洲精品色噜噜| 精品少妇一区二区三区视频免付费 | 欧美日韩久久不卡| 欧美一区二区三区在| 久久天天做天天爱综合色| 国产欧美视频一区二区| 精品黑人一区二区三区久久| 国产三级精品在线| 中文字幕一区二区在线观看| 亚洲免费观看高清| 日韩视频免费直播| 国产午夜亚洲精品羞羞网站| 国产精品国产a级| 亚洲高清视频在线| 亚洲图片自拍偷拍| 亚洲自拍偷拍九九九| 日韩在线卡一卡二| 精品影视av免费| 成人污污视频在线观看| 欧洲国内综合视频| 日韩精品中文字幕一区| 中国av一区二区三区| 麻豆国产欧美日韩综合精品二区| 91丨九色丨蝌蚪丨老版| 26uuuu精品一区二区| 亚洲超丰满肉感bbw| 色综合一个色综合亚洲| 国产亚洲欧洲997久久综合| 日韩成人免费电影| 日本高清无吗v一区| 国产精品电影院| 韩国精品一区二区| 欧美一级一区二区| 亚洲福利视频一区| 色欧美乱欧美15图片| 中文字幕va一区二区三区| 国产美女在线观看一区| 欧美一区二区福利在线| 亚洲电影一区二区三区| 91视视频在线观看入口直接观看www| 欧美精品一区二区蜜臀亚洲| 秋霞av亚洲一区二区三| 欧美日韩亚洲不卡| 一区二区三区精品视频| 99这里只有久久精品视频| 欧美激情综合五月色丁香| 国产精品18久久久久| 欧美r级在线观看| 久久99精品国产麻豆婷婷| 日韩免费电影网站| 久久精品72免费观看| 日韩欧美一区二区不卡| 人人精品人人爱| 日韩欧美精品在线| 蜜桃视频一区二区三区在线观看| 91精品免费观看| 日韩影院免费视频| 欧美一级午夜免费电影| 欧美色网一区二区| 亚洲另类春色校园小说| 色偷偷88欧美精品久久久| 亚洲伦理在线精品| 欧美主播一区二区三区| 亚洲第一激情av| 欧美一级高清大全免费观看| 久久99精品一区二区三区| 久久精品人人做| av中文字幕一区| 亚洲午夜久久久| 欧美电影一区二区| 美女www一区二区| 国产欧美日韩精品在线| 成人av综合在线| 亚洲男人的天堂一区二区| 欧美日韩一区视频| 捆绑紧缚一区二区三区视频| 精品久久久久一区二区国产| 国产成人久久精品77777最新版本 国产成人鲁色资源国产91色综 | av亚洲精华国产精华精| 亚洲精品成人少妇| 欧美日韩高清一区二区| 韩国成人精品a∨在线观看| 国产精品视频免费看| 欧美在线制服丝袜| 久久国产福利国产秒拍| 亚洲国产电影在线观看| 欧美午夜影院一区| 加勒比av一区二区| 亚洲男帅同性gay1069| 在线电影国产精品| 国产成人精品影视| 夜夜精品视频一区二区| 日韩精品一区二区在线| 99久久精品国产观看| 日本vs亚洲vs韩国一区三区| 久久久久国产精品麻豆| 91久久精品国产91性色tv| 免费的成人av| 国产精品福利影院| 在线成人免费视频| 成人黄色综合网站| 美女视频一区在线观看| 最新久久zyz资源站| 日韩欧美的一区| 一本大道av一区二区在线播放 | 色婷婷久久久久swag精品| 日本亚洲视频在线| 椎名由奈av一区二区三区| 56国语精品自产拍在线观看| 成人免费视频视频| 青青草精品视频| 亚洲丝袜美腿综合| 26uuu色噜噜精品一区| 在线观看国产91| 粉嫩av亚洲一区二区图片| 日韩精品福利网| 亚洲精品第1页| 欧美激情中文不卡| 日韩天堂在线观看| 欧洲视频一区二区| 成人黄色在线看| 韩国精品一区二区| 婷婷综合五月天| 亚洲男同性恋视频| 中文一区在线播放|