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

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

?? flash.c

?? linux下的BOOT程序原碼,有需要的可以來下,保證好用
?? C
字號:
/* * (C) Copyright 2000 * Wolfgang Denk, DENX Software Engineering, wd@denx.de. * * See file CREDITS for list of people who contributed to this * project. * * 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., 59 Temple Place, Suite 330, Boston, * MA 02111-1307 USA */#include <common.h>#include <flash.h>extern flash_info_t  flash_info[]; /* info for FLASH chips *//*----------------------------------------------------------------------- * Functions *//*----------------------------------------------------------------------- * Set protection status for monitor sectors * * The monitor is always located in the _first_ Flash bank. * If necessary you have to map the second bank at lower addresses. */voidflash_protect (int flag, ulong from, ulong to, flash_info_t *info){	ulong b_end = info->start[0] + info->size - 1;	/* bank end address */	short s_end = info->sector_count - 1;	/* index of last sector */	int i;	/* Do nothing if input data is bad. */	if (info->sector_count == 0 || info->size == 0 || to < from) {		return;	}	/* There is nothing to do if we have no data about the flash	 * or the protect range and flash range don't overlap.	 */	if (info->flash_id == FLASH_UNKNOWN ||	    to < info->start[0] || from > b_end) {		return;	}	for (i=0; i<info->sector_count; ++i) {		ulong end;		/* last address in current sect	*/		end = (i == s_end) ? b_end : info->start[i + 1] - 1;		/* Update protection if any part of the sector		 * is in the specified range.		 */		if (from <= end && to >= info->start[i]) {			if (flag & FLAG_PROTECT_CLEAR) {#if defined(CFG_FLASH_PROTECTION)				flash_real_protect(info, i, 0);#else				info->protect[i] = 0;#endif	/* CFG_FLASH_PROTECTION */			}			else if (flag & FLAG_PROTECT_SET) {#if defined(CFG_FLASH_PROTECTION)				flash_real_protect(info, i, 1);#else				info->protect[i] = 1;#endif	/* CFG_FLASH_PROTECTION */			}		}	}}/*----------------------------------------------------------------------- */flash_info_t *addr2info (ulong addr){#ifndef CONFIG_SPD823TS	flash_info_t *info;	int i;	for (i=0, info=&flash_info[0]; i<CFG_MAX_FLASH_BANKS; ++i, ++info) {		if (info->flash_id != FLASH_UNKNOWN &&		    addr >= info->start[0] &&		    /* WARNING - The '- 1' is needed if the flash		     * is at the end of the address space, since		     * info->start[0] + info->size wraps back to 0.		     * Please don't change this unless you understand this.		     */		    addr <= info->start[0] + info->size - 1) {			return (info);		}	}#endif /* CONFIG_SPD823TS */	return (NULL);}/*----------------------------------------------------------------------- * Copy memory to flash. * Make sure all target addresses are within Flash bounds, * and no protected sectors are hit. * Returns: * ERR_OK          0 - OK * ERR_TIMOUT      1 - write timeout * ERR_NOT_ERASED  2 - Flash not erased * ERR_PROTECTED   4 - target range includes protected sectors * ERR_INVAL       8 - target address not in Flash memory * ERR_ALIGN       16 - target address not aligned on boundary *			(only some targets require alignment) */intflash_write (uchar *src, ulong addr, ulong cnt){#ifdef CONFIG_SPD823TS	return (ERR_TIMOUT);	/* any other error codes are possible as well */#else	int i;	ulong         end        = addr + cnt - 1;	flash_info_t *info_first = addr2info (addr);	flash_info_t *info_last  = addr2info (end );	flash_info_t *info;	int j;	if (cnt == 0) {		return (ERR_OK);	}	if (!info_first || !info_last) {		return (ERR_INVAL);	}	for (info = info_first; info <= info_last; ++info) {		ulong b_end = info->start[0] + info->size;	/* bank end addr */		short s_end = info->sector_count - 1;		for (i=0; i<info->sector_count; ++i) {			ulong e_addr = (i == s_end) ? b_end : info->start[i + 1];			if ((end >= info->start[i]) && (addr < e_addr) &&			    (info->protect[i] != 0) ) {				return (ERR_PROTECTED);			}		}	}	printf("\rWriting ");	for (j=0; j<20; j++) putc(177);	printf("\rWriting ");	/* finally write data to flash */	for (info = info_first; info <= info_last && cnt>0; ++info) {		ulong len;		len = info->start[0] + info->size - addr;		if (len > cnt)			len = cnt;		if ((i = write_buff(info, src, addr, len)) != 0) {			return (i);		}		cnt  -= len;		addr += len;		src  += len;	}	return (ERR_OK);#endif /* CONFIG_SPD823TS */}/*----------------------------------------------------------------------- */

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美日韩国产综合视频在线观看| av中文字幕一区| 夜夜揉揉日日人人青青一国产精品 | 91麻豆免费在线观看| 国产一本一道久久香蕉| 精品一区二区精品| 久久国产日韩欧美精品| 老司机精品视频导航| 久久成人久久爱| 亚洲国产高清不卡| 日本视频一区二区| 天堂精品中文字幕在线| 午夜精品一区二区三区三上悠亚| 国产精品免费看片| 中文字幕制服丝袜一区二区三区| 亚洲国产成人在线| 最新国产精品久久精品| 亚洲欧美综合在线精品| 亚洲最新在线观看| 免费看欧美女人艹b| 狠狠色综合日日| 99久久精品一区二区| 欧美在线一区二区三区| 91精品国产综合久久精品| 欧美不卡一区二区三区四区| 国产日韩欧美一区二区三区综合| 成人欧美一区二区三区在线播放| 亚洲国产视频a| 狠狠色综合日日| 在线一区二区三区做爰视频网站| 欧美精品日韩精品| 国产欧美日韩激情| 亚洲一区二区三区四区中文字幕| 免费高清在线一区| 成人国产精品免费观看动漫| 精品视频免费在线| 国产无人区一区二区三区| 亚洲男人电影天堂| 国内成人自拍视频| 91成人免费在线| 国产婷婷色一区二区三区四区 | 国产精品入口麻豆原神| 悠悠色在线精品| 国产九九视频一区二区三区| 在线免费av一区| 欧美激情在线看| 青青国产91久久久久久| 97久久精品人人做人人爽50路| 日韩视频在线一区二区| 一区二区三区高清不卡| 国产精品中文字幕欧美| 欧美日韩精品一区二区| 国产精品国产三级国产a| 免费精品视频在线| 欧美综合色免费| 中文一区一区三区高中清不卡| 亚洲 欧美综合在线网络| 91丨九色丨黑人外教| 26uuu亚洲婷婷狠狠天堂| 天堂va蜜桃一区二区三区| 99久久久精品免费观看国产蜜| 久久综合九色欧美综合狠狠| 日本视频一区二区| 欧美区视频在线观看| 依依成人综合视频| 99热在这里有精品免费| 国产三级久久久| 韩国欧美国产1区| 欧美大片在线观看一区| 日韩影院精彩在线| 91精品国产综合久久久久久漫画 | 欧美少妇bbb| 亚洲激情六月丁香| 色综合天天综合在线视频| 国产精品免费视频一区| 成人免费高清在线| 国产精品免费人成网站| 波多野洁衣一区| 亚洲色图视频免费播放| 91网站黄www| 最新不卡av在线| 在线欧美小视频| 亚洲第一在线综合网站| 欧美日高清视频| 日本欧洲一区二区| 精品福利一区二区三区| 国产精品性做久久久久久| 国产日产欧产精品推荐色 | 欧美日韩一卡二卡三卡 | 在线不卡中文字幕| 麻豆国产欧美日韩综合精品二区| 日韩欧美在线网站| 国产精品一二三四区| 国产精品色在线| 色婷婷av一区二区| 亚洲成人综合在线| 欧美成人bangbros| proumb性欧美在线观看| 一区二区国产盗摄色噜噜| 91精品国产黑色紧身裤美女| 久久精品噜噜噜成人av农村| 久久久国产一区二区三区四区小说 | 国产精品电影院| 欧美三级日韩三级国产三级| 麻豆久久久久久久| 国产精品人人做人人爽人人添| 91亚洲精品一区二区乱码| 亚洲成人动漫在线免费观看| 欧美电视剧在线观看完整版| www.爱久久.com| 免费人成黄页网站在线一区二区| 久久精品一区二区三区av| 91精品办公室少妇高潮对白| 另类综合日韩欧美亚洲| 日韩理论片在线| 日韩精品影音先锋| 一本色道综合亚洲| 韩国精品在线观看| 亚洲国产精品一区二区久久| 国产亚洲欧洲997久久综合 | 国产欧美久久久精品影院| 欧美影视一区在线| 国产美女视频91| 亚洲不卡av一区二区三区| 国产日本欧美一区二区| 91精品视频网| 色综合av在线| 成人自拍视频在线| 久久se精品一区二区| 亚洲国产精品视频| 日韩码欧中文字| 欧美极品aⅴ影院| 精品国精品国产| 欧美另类高清zo欧美| 91丝袜呻吟高潮美腿白嫩在线观看| 极品美女销魂一区二区三区| 亚洲国产精品自拍| 悠悠色在线精品| √…a在线天堂一区| 欧美国产精品专区| 精品国产乱码久久久久久老虎| 欧美日韩一卡二卡| 色婷婷综合五月| 99久久久精品| 99国产精品视频免费观看| 成人性生交大片免费看在线播放| 久久99国产精品尤物| 奇米四色…亚洲| 日韩成人午夜精品| 视频在线观看国产精品| 一区二区三区成人| 一区二区国产盗摄色噜噜| 亚洲欧美电影一区二区| 中文字幕中文乱码欧美一区二区| 欧美激情综合五月色丁香小说| 国产欧美一二三区| 国产精品免费丝袜| 日韩一区在线看| 亚洲男人电影天堂| 一区二区三区中文字幕精品精品| 亚洲欧美另类久久久精品| 亚洲蜜臀av乱码久久精品蜜桃| 日韩美女啊v在线免费观看| 亚洲天堂精品视频| 亚洲精品网站在线观看| 亚洲一区二区三区在线| 午夜精品久久久久久久| 麻豆精品久久久| 国产毛片一区二区| 成人免费毛片片v| 一本色道久久加勒比精品 | 日韩精品在线一区二区| 日韩欧美资源站| 日本一区二区三区国色天香| 国产精品国产三级国产专播品爱网 | 国产成人午夜精品5599 | 亚洲成人自拍偷拍| 奇米精品一区二区三区四区 | yourporn久久国产精品| 欧美自拍偷拍午夜视频| 日韩一二三区视频| 久久久久国产一区二区三区四区 | 日韩欧美电影一二三| 国产婷婷一区二区| 亚洲国产一区二区在线播放| 久久黄色级2电影| 99久精品国产| 日韩一区二区三区观看| 亚洲人午夜精品天堂一二香蕉| 午夜精品久久久久久| 国产激情视频一区二区在线观看 | 三级一区在线视频先锋| 国产一区二区三区| 欧美亚洲另类激情小说| 久久综合九色综合欧美就去吻| 亚洲免费观看高清完整版在线| 久久av资源网| 一本一道综合狠狠老| 久久久久久久久蜜桃| 午夜免费久久看|