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

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

?? readme

?? umon bootloader source code, support mips cpu.
??
字號:
MICRO-MONITOR FLASH DRIVER DISCUSSION:

This is the "second-generation" of flash drivers for uMON.  It is simply a
re-organization of the older flash directory functionality.  Each .c/.h file
set supports one device in one memory configuration.  The definition of
"configuration" here has two parts:

  * The number of devices in parallel to form one bank.
	This covers the situation where several devices of the same type
	are placed in parallel to provide a wider bus access.

  * The width of the data bus per device.
	This covers the devices that can be configured in multiple bus
	widths, usually dependent on a single input pin on the device.


This new model supports a more portable reuse of each of the files across
platforms that may use the devices in slightly different ways.  For
example, if one target uses the AM29F040 alone and another target uses the
AM29F040 along with some other device, both targets would be able to use
the same AM29F040 driver source file.  The target-specific code would deal
with building up the multiple devices into one flash subsystem for the monitor
and TFS.

******************************************************************************

The naming convention for the device files is as follows...

  DEVICENAME_DBW_DIP

  where DEVICENAME	is the device name (duh)
        DBW			is the configured device data bus width (in bits)
        DIP			is the number of devices in parallel (to form a bank)

Many flash devices can be configured in x8 or x16 bus width mode,
so for example, the Am29LV160D can have several different source
files depending on its configuration in the target system...

  am29lv160d_08x1.c	-> Am29LV160D in  8-bit mode, 1 device  in parallel
  am29lv160d_08x2.c	-> Am29LV160D in  8-bit mode, 2 devices in parallel
  am29lv160d_08x4.c	-> Am29LV160D in  8-bit mode, 4 devices in parallel
  am29lv160d_16x1.c	-> Am29LV160D in 16-bit mode, 1 device  in parallel
  am29lv160d_16x2.c	-> Am29LV160D in 16-bit mode, 2 devices in parallel

Each device has a header file with the same name.

******************************************************************************

Regarding the source files...
Each source file supports being used as either one of several devices
on a target or as a single-stand-alone device on the target; hence,
the file contains all the functions needed to support the device
(both the relocatable and non-relocatable functions).

Each .c/.h pair has three significant #defines that it uses to determine
what to build...

INCLUDE_FLASH:
	If defined, then the flash stuff is built in; else it is omitted.

SINGLE_FLASH_DEVICE:
	If defined, then the device that the driver supports is the only
	flash device in the system that is to be visible by the monitor.
	If not defined, then the FlashInit() functionality must be part
	of the target-specific code.

FLASH_COPY_TO_RAM:
	If defined, then the assumtion is that the monitor is running out of
	the same device that this driver is built for.  This means that
	we assume that we must be executing out of some other device (RAM)
	while we are operating on the flash.  Note that this assumption is
	not always valid, some devices do support simultaneous fetch/operation
	but we do not deal with that here.


******************************************************************************

EACH .c/.h PAIR HAS TWO SETS OF FUNCTIONS:  RELOCATABLE AND NON-RELOCATABLE.

RELOCATABLE...
The functions that may need to be relocatable are those that directly operate
on the flash device.  During these operations, in most cases, the flash is in
a state that makes fetching from the device illegal.  This means that the
functions must be executed out of some other memory space.  If the monitor
is built in such a way that it will execute directly out of the flash device,
then it is necessary to relocate these functions to RAM.  If the monitor
is built in such a way that it is entirely copied to RAM and runtime monitor
execution is out of RAM, then these flash operation functions obiouvsly don't
have to be relocated.  The need for relocation depends on the target system
configuration; however, the intent of these files is to support the
capability.  The FLASH_COPY_TO_RAM #define determines whether or not these
functions are relocated to ram or not.

NON-RELOCATABLE...
The functions that will never need relocation are those that are included
if SINGLE_FLASH_DEVICE is defined.  If this definition is set (in the
target-specific config.h file), then the assumption is that the device
the driver supports is the only flash device visible to the monitor.  If
it is not defined, then the target-specific code must include some superset
of that functionality.

******************************************************************************

OVERVIEW OF EACH OF THE FUNCTIONS IN A .c/.h DRIVER PAIR:

These driver functions assume that an operation is performed on a bank.
A bank may be 1, 2 or 4 devices in parallel depending on the hardware
configuration.  You can think of a bank as being the block of devices that
are enabled in parallel by one chip select. 

Each of the relocatable functions has a matching "End" function.  This "End"
function MUST be placed immediately after the real function.  Its purpose is
to provide a convenient mechanism for calculating the size of the flash
operation function, and it assumes that the linker will put the functions
in memory space in the same order as they are listed in the file.  

DEVICENAME_erase():
	This function takes as input, a pointer to a flash bank and a sector
	number.  The specified sector number is erased.  If the sector number
	is -1, then all, non-protected sectors are erased.

DEVICENAME_write():
	This function copies the specified number of bytes from source address
	to destination.  The destination address is assumed to be flash space.
	This function must support the possibility of the write request not
	being naturally aligned with the data-bus width of the bank.
	
DEVICENAME_ewrite():
	This function is basically a concatenation of the write and erase
	functions above.  It is needed for the cases where the monitor is 
	running out of the same device that is to be operated on, and
	supports the ability to re-write a new monitor.  To install a new
	monitor image in place of one that is currently running, we must
	have the ability to erase the monitor sectors and reprogram new
	content into those sectors all in one step.  This is because after
	we erase the boot sectors, there is no image to fetch from; hence,
	the erase and write must be in the same function, and that function
	cannot reside in the device that is being updated.

DEVICENAME_type():
	This function simply returns the manufacturer and device IDs of
	the flash part.  This is a handy function to have just to make a
	quick verification that the flash can be operated on; however, it is
	actually only needed by the driver if the system must deal with the
	possibility of different installed devices (within a family) on-board.

DEVICENAME_lock():
	This function is used by the core uMon code to initially determine if
	the underlying device is lockable.  Once that is determined, there
	are three main uses of lock: lock a sector, unlock a sector and query
	the sector for its lock status.  Note that if the flash device does
	not support a firmware-accessible lock mechanism, then the FLASH_LOCKABLE
	operation should return 0.

FlashInit():
	This is the function called by main() in the monitor to initialize
	the flash subsystem.  It basically establishes the structures within
	the FlashBank[] array.  In most cases a single flash bank will be
	on-board, so the default FlashInit() function (pulled in by the
	SINGLE_FLASH_DEVICE definition) will be used.
	

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品一区二区在线观看不卡 | 免费成人小视频| 一本到三区不卡视频| 亚洲视频精选在线| www国产成人免费观看视频 深夜成人网| 亚洲bdsm女犯bdsm网站| 日韩丝袜情趣美女图片| 久久99热这里只有精品| 久久久蜜臀国产一区二区| 国产69精品久久99不卡| 国产精品久久久久久久岛一牛影视| 成人av在线播放网站| 亚洲与欧洲av电影| 日韩欧美一区二区在线视频| 国产麻豆精品theporn| 国产精品区一区二区三| 91麻豆国产香蕉久久精品| 五月婷婷激情综合网| 久久综合久久综合久久综合| 99久久久免费精品国产一区二区| 亚洲第一综合色| 欧美变态口味重另类| 99精品国产91久久久久久| 午夜欧美在线一二页| 2021久久国产精品不只是精品| 成人中文字幕在线| 亚洲国产欧美在线| 精品久久久久香蕉网| 午夜视频在线观看一区二区三区| 成人黄色大片在线观看| 久久蜜臀中文字幕| 日本欧美大码aⅴ在线播放| 欧美综合一区二区| 麻豆精品在线观看| 综合色天天鬼久久鬼色| 91精品国产91久久综合桃花| 国产不卡视频在线观看| 亚洲图片欧美一区| 亚洲国产成人私人影院tom| 精品视频免费看| 岛国av在线一区| 天堂午夜影视日韩欧美一区二区| 国产亚洲福利社区一区| 在线观看91精品国产麻豆| 国产成人小视频| 人人狠狠综合久久亚洲| 一区二区三区在线高清| www国产精品av| 欧美精三区欧美精三区| 99久久精品国产导航| 麻豆一区二区三| 亚洲国产日产av| 亚洲欧美国产高清| 26uuuu精品一区二区| 91精品国产手机| 91成人在线观看喷潮| 99久久er热在这里只有精品66| 狠狠网亚洲精品| 日韩1区2区日韩1区2区| 亚洲午夜电影在线| 亚洲综合区在线| √…a在线天堂一区| 国产亚洲成aⅴ人片在线观看| 欧美一级一级性生活免费录像| 色噜噜狠狠色综合欧洲selulu| 成人免费三级在线| 国产成人免费视频网站高清观看视频| 日产精品久久久久久久性色| 一区二区三区在线免费观看| 亚洲欧美日韩成人高清在线一区| 国产日产亚洲精品系列| 日韩欧美综合在线| 日韩三级电影网址| 日韩视频中午一区| 欧美一区午夜视频在线观看| 欧美日韩国产精品自在自线| 欧美日韩高清一区二区三区| 欧美伦理影视网| 3d动漫精品啪啪一区二区竹菊| 欧美精品丝袜久久久中文字幕| 色狠狠av一区二区三区| 91福利在线看| 欧美亚洲自拍偷拍| 欧美日韩国产首页在线观看| 在线成人高清不卡| 欧美成人性福生活免费看| 欧美v亚洲v综合ⅴ国产v| 精品久久久久av影院| 久久久三级国产网站| 国产精品视频在线看| 成人欧美一区二区三区白人 | 久久精品国产99| 蜜桃一区二区三区四区| 国产在线精品视频| 丁香六月久久综合狠狠色| 91亚洲男人天堂| 色狠狠桃花综合| 91精品国产美女浴室洗澡无遮挡| 欧美一卡2卡3卡4卡| 日韩欧美在线综合网| 国产亚洲一区字幕| 亚洲精品五月天| 亚洲成人av一区| 国产一区二区三区不卡在线观看| 国产麻豆91精品| 91视频在线看| 7777精品伊人久久久大香线蕉超级流畅 | 国产精品女同互慰在线看| 亚洲视频资源在线| 午夜一区二区三区在线观看| 国产一区二区三区美女| 91网站视频在线观看| 欧美精品 日韩| 国产欧美日韩另类一区| 亚洲一区精品在线| 国产一区二区在线看| 91蜜桃传媒精品久久久一区二区| 欧美日韩成人综合| 久久精品夜夜夜夜久久| 亚洲亚洲人成综合网络| 激情综合五月婷婷| 色天使色偷偷av一区二区| 日韩一区二区视频| 成人欧美一区二区三区白人| 强制捆绑调教一区二区| 不卡视频免费播放| 日韩欧美在线网站| 亚洲精品乱码久久久久| 国产毛片一区二区| 欧美日本国产视频| 国产精品美日韩| 蜜臀av一区二区| 色综合中文字幕国产 | 亚洲一区二区3| 国产91精品露脸国语对白| 欧美人狂配大交3d怪物一区| 中文字幕精品一区二区精品绿巨人| 日韩黄色免费电影| 色老综合老女人久久久| 亚洲国产精品黑人久久久| 久久不见久久见免费视频1| 欧美性一区二区| 亚洲视频一区二区在线| 国产成人精品aa毛片| 日韩久久免费av| 日韩电影免费一区| 欧亚洲嫩模精品一区三区| 中文一区在线播放| 国产一区二区三区精品欧美日韩一区二区三区 | 免费一级欧美片在线观看| 色丁香久综合在线久综合在线观看| 久久精品在这里| 美女诱惑一区二区| 欧美日韩在线综合| 亚洲精品欧美在线| 97精品久久久久中文字幕 | 91在线一区二区三区| 久久精品视频一区| 国精产品一区一区三区mba视频| 91精品国产综合久久婷婷香蕉| 亚洲制服丝袜在线| 色综合一区二区| 亚洲乱码国产乱码精品精小说 | 亚洲国产日韩一级| 91福利视频久久久久| 一区二区三区在线观看网站| 91麻豆国产自产在线观看| **性色生活片久久毛片| 99精品国产91久久久久久| 亚洲欧洲精品一区二区三区| 91在线视频播放| 亚洲欧美一区二区不卡| 色噜噜狠狠成人网p站| 亚洲一级电影视频| 欧美群妇大交群的观看方式| 五月激情综合色| 91精品午夜视频| 精品中文字幕一区二区| 久久综合色播五月| 国产精品一二三四五| 国产精品日日摸夜夜摸av| 91丨porny丨中文| 亚洲一区二区四区蜜桃| 欧美一级日韩不卡播放免费| 久久国产精品99精品国产| 久久品道一品道久久精品| 成人av在线一区二区三区| 一区二区在线看| 日韩三级免费观看| 丁香激情综合国产| 亚洲综合在线免费观看| 91精品国产一区二区三区| 美女诱惑一区二区| 欧美激情在线看| 在线欧美小视频| 日韩电影在线一区二区三区| 2020国产精品自拍| 91久久精品日日躁夜夜躁欧美| 午夜久久久久久久久| 久久一二三国产|