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

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

?? f_toshiba_arm.s

?? realview22.rar
?? S
?? 第 1 頁 / 共 2 頁
字號:
; ============================================================================
; F_AMD_SST_ARM - Flash programming algorithm for AMD||SST Flash
; derived from f_atmel_arm.s
;
; Library Name: Included into container .s file.
;
; Module Name:  F_AMD_SST_ARM.S
; Module Descr: Flash programming for RVD: Atmel Flash devices
; Creation Date:Nov. 2001
; Author:       Jonathan Jefferies
;
; THIS INFORMATION IS PROPRIETARY TO
; ARM, Inc. (Walnut Creek Design Center)
; 1981 North Broadway, Suit 245
; Walnut Creek, CA 94596
; USA
; ----------------------------------------------------------------------
; Copyright (c) 2001  ARM, Inc.
; ALL RIGHTS RESERVED;
;
; Revisions of F_AMD_SST_ARM.S: (latest revision on top)
; #.#  Name  Date      Description
; $Revision: 1.1.2.2 $
; ---  ----- --------  -----------------------------------------------------
; 1.0 Jonathan Jefferies Initial version
;
; Implementation notes:
;
; GENERAL
; -------
;
;       This file is to be included into another asm file which has the
; board/chip specific knowledge needed for initialization and the like.
; That is, this is the algorithm only.
;
;       This file is based on information on AMD & SST flash devices
; of various forms. It is generalized to handle x8 and x16 accesses.
; It does not need to know the block sizes or positions as that is all
; passed in. 
;
;       Minimally this will work with various AMD A29LV400 chips
; and SST 39VF400A chips.
;
;       This uses the standard RVD implementation for an API. That
; means that registers are used for passing arguments and returning
; status. The registers used are based on the save/restore list. The
; first registers are assumed to be the ones to use for passing args.
; In the case of ARM, this is R0, R1, R2, R3, etc.
;
; REGISTER MODEL
; --------------
;
;       The register model for this routine is as follows:
;       R0:     Input: page of Flash (not used on ARM)
;               Output:status return to host
;       R1:     Input: base address of Flash block to operate on
;       R2/R3/R4/R5/R8/R9: Input: arguments
;               Typical meanings: R2=Counter
;       R6/R7:Scratch
;
; -----------------------------------------------------------------------------
; Description:
; ----------------------------------------------------------------------------
;                               NOTICE
;
;       This code is proprietary; the use of this source is
; restricted, and all rights are reserved.
;
;       If reading for interest, enjoy.
;
;       If maintaining, read comments carefully! There are some inter-depen-
; dencies and connectivities. Areas with particular connection are marked.
; There are some variable protocols that are not self evident: check all uses
; of variables before making big changes.
; ============================================================================
;

;************************************************************************/
;* DEFINE ENTRY POINTS                                                  */
;************************************************************************/

;       EXPORT          FLASH_init      // provided by asm that includes us
;       EXPORT          FLASH_erase_all // not available
        EXPORT          FLASH_erase
        EXPORT          FLASH_write_erase
        EXPORT          FLASH_write
        EXPORT          FLASH_validate
        EXPORT          FLASH_break
;       EXPORT          FLASH_term      // we do not need one

;************************************************************************/
;* DEFINE MACROS AND EQUATES                                            */
;************************************************************************/

        MACRO
        PUSHX   $p1
        STMFD   r13!,{$p1}
        MEND
        MACRO
        POPX    $p1
        LDMFD   r13!,{$p1}
        MEND

        IF              WIDTH=1
          MACRO
           STORE        $p1,$p2,$p3
            IF "$p3" = ""
             strb       $p1,$p2
            ELSE
             strb       $p1,$p2,$p3
            ENDIF
          MEND
          MACRO
           LOAD         $p1,$p2,$p3
            IF "$p3" = ""
             ldrb       $p1,$p2
            ELSE
             ldrb       $p1,$p2,$p3
            ENDIF
          MEND
        ELSE                    ; width = 2
          MACRO
           STORE        $p1,$p2,$p3
            IF "$p3" = ""
              strh      $p1,$p2
            ELSE
              strh      $p1,$p2,$p3
            ENDIF
          MEND
          MACRO
           LOAD         $p1,$p2,$p3
            IF "$p3" = ""
             ldrh       $p1,$p2
            ELSE
             ldrh       $p1,$p2,$p3
            ENDIF
          MEND
        ENDIF

        MACRO                   ; RET is return via LR or named reg
          RET           $p1
           IF "$p1" = ""
            mov R15,R14         ; Return with code in R0
           ELSE
            mov R15,$p1         ; Return with code in R0
           ENDIF
        MEND

FC_AT1   EQU            0xAA    ; attention request 1 (OFF1)
FC_AT2   EQU            0x55    ; attention request 2 (OFF2)
FC_ID_EN EQU            0x90    ; enter ID mode
FC_ID_EX EQU            0xF0    ; exit ID mode
FC_WRITE EQU            0xA0    ; start writing block
FC_ERASE EQU            0x80    ; start erase of segment/block
FC_SECTE EQU            0x30    ; sector erase (into sector)
FC_QENTR EQU            0x98    ; CFI Query Entry

;************************************************************************/
;* THE DATA POINTERS FOR DATA TOO LARGE FOR IMMEDIATES                  */
;************************************************************************/

;       To write commands to the flashes require the base of the flash + 
;       the appropriate offset as given below.
;       note that SST and AMD differ. AMD uses 0x0555 where SST uses 0x5555
;       however AMD says that Address bits A17-A11 are don't cares for
;       unlock and command cycles, i.e. we get away using the SST offsets.
OFFSET1 DATA
        IF WIDTH = 1
         DCD            0x555
        ELSE
         DCD            (0x555*2)
        ENDIF
OFFSET2 DATA
        IF WIDTH = 1
         DCD            0xAAA
        ELSE
         DCD            (0xAAA*2)
        ENDIF

DELAY   DATA
        DCD             10

;************************************************************************/
;* THE GLOBAL FUNCTIONS (EXPORTED PUBLICLY)                             */
;************************************************************************/
 
;* -----------------------------------------------------------------------
;  Local_init - handle device part of init (get ID).
;
;  Notes:
;     - this verifies the product ID and returns if OK or not.
;
;  Input/Output:
;     - In: R1=Base of Flash
;           R0=Page of Flash (no meaning for ARM)
;     - Out:R0=status code (0=OK, else error)
;     - Scratch: R2,R6,R7,R8
;     - Persist: R11 - we set with Base of Flash
;  ----------------------------------------------------------------------- */

Local_init
        mov     R11,R1          ; R1 is input R11 is persistance
        mov     R0,#FC_ID_EN    ; enter ID mode 0x90
        bl      flash_control   ; send op to Flash

        LOAD    R2,[R1]         ; get manu ID
        and     R2,R2,#0xFF     ; mask to one byte

        mov     R0,#FC_ID_EX    ; exit ID mode 0xF0
        STORE   r0,[R1,#0]
        mov     R0,#0           ; assume OK

        cmp     R2,#0x98        ; Toshiba chip??
        movne   R0,#11          ; error
        b       FLASH_break     ; exit
        
;* -----------------------------------------------------------------------
;  FLASH_erase - erase a Flash block
;

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美一二三四区在线| av电影一区二区| 成人永久看片免费视频天堂| 欧美私模裸体表演在线观看| 亚洲女人的天堂| 国产激情精品久久久第一区二区| 精品少妇一区二区三区在线播放| 亚洲靠逼com| www.亚洲人| 国产高清成人在线| 老司机精品视频在线| 欧美日韩国产123区| 亚洲成人av福利| 欧美片在线播放| 色综合久久天天| av午夜一区麻豆| 国产成人亚洲综合a∨婷婷图片| 日韩经典一区二区| 欧美视频一区在线| 91麻豆swag| 伊人开心综合网| 亚洲人成小说网站色在线 | 欧美一区二区三区日韩视频| 亚洲6080在线| 一区二区欧美视频| 一区二区理论电影在线观看| 亚洲欧美在线视频观看| 久久久蜜桃精品| 国产最新精品免费| 久久国产尿小便嘘嘘尿| 男男成人高潮片免费网站| 亚洲精品视频在线观看网站| 久久九九久久九九| 日韩欧美一级二级三级| 欧美美女直播网站| 91在线丨porny丨国产| 亚洲色图在线看| 一个色综合av| 亚洲一区免费观看| 777亚洲妇女| 欧美疯狂做受xxxx富婆| 欧美一区二区三区电影| 欧美图片一区二区三区| 在线不卡a资源高清| 欧美一区二区三区免费| 精品剧情在线观看| 久久精品综合网| 中文字幕一区在线观看| 一区二区三区日韩欧美| 婷婷久久综合九色综合绿巨人 | 久久久777精品电影网影网| 久久久欧美精品sm网站| 日本一区二区高清| 在线观看成人小视频| 97超碰欧美中文字幕| 欧美日韩一区在线| 欧美在线影院一区二区| 91精品国产福利在线观看| 亚洲精品在线观| 国产精品护士白丝一区av| 亚洲另类春色校园小说| 天堂蜜桃一区二区三区| 久久成人羞羞网站| 成人免费va视频| 欧美日韩一区三区四区| 26uuu另类欧美| 成人免费在线播放视频| 婷婷开心激情综合| 岛国精品在线观看| 欧美亚洲综合网| xfplay精品久久| 亚洲免费色视频| 理论电影国产精品| av电影天堂一区二区在线观看| 欧美伦理影视网| 国产精品麻豆网站| 日韩av不卡在线观看| 成人夜色视频网站在线观看| 欧美色综合影院| 国产欧美一区二区在线观看| 亚洲精品亚洲人成人网| 激情亚洲综合在线| 欧美性xxxxxxxx| 国产亚洲精品aa| 天天操天天综合网| 国产精品123| 色吊一区二区三区| www国产亚洲精品久久麻豆| 一区二区在线观看免费视频播放| 久久成人av少妇免费| 欧洲生活片亚洲生活在线观看| 久久综合九色综合97婷婷女人| 国产精品久久久久一区二区三区共 | 精品国产在天天线2019| 一区二区三区日韩欧美精品| 成人三级伦理片| 91超碰这里只有精品国产| 亚洲色图色小说| 国产91对白在线观看九色| 欧美日韩国产美女| 亚洲欧洲韩国日本视频| 久久国产人妖系列| 欧美二区乱c少妇| 丝袜国产日韩另类美女| 不卡视频免费播放| www日韩大片| 久久精品国产一区二区三| 欧美亚洲禁片免费| 亚洲欧洲另类国产综合| 国产69精品久久久久毛片| 久久影院电视剧免费观看| 美脚の诱脚舐め脚责91| 欧美一区二区视频在线观看 | 日韩av网站在线观看| 欧美中文字幕一区| 中文字幕在线观看一区二区| 国产精品18久久久久久久久 | 国产日韩欧美综合在线| 久久精品国产秦先生| 91精品在线麻豆| 爽爽淫人综合网网站| 在线免费观看日本欧美| 亚洲女爱视频在线| 91亚洲精品乱码久久久久久蜜桃| 国产精品人成在线观看免费| 成人av在线观| 中文字幕一区二区三区不卡在线| 免费xxxx性欧美18vr| 欧美老肥妇做.爰bbww视频| 亚洲欧美日韩国产成人精品影院| 北岛玲一区二区三区四区| 国产欧美一区二区在线| 成人app网站| 日韩一区中文字幕| 色一情一乱一乱一91av| 亚洲视频在线一区观看| 972aa.com艺术欧美| 亚洲女爱视频在线| 欧美亚洲日本一区| 中文字幕在线视频一区| 99re这里只有精品首页| 一区二区三区四区在线免费观看| 成人av免费在线| 日韩美女在线视频| 狠狠色综合色综合网络| 久久久精品免费观看| 国产综合色产在线精品| 国产女同性恋一区二区| 成人免费高清视频| 亚洲香肠在线观看| 欧洲一区二区av| 亚洲动漫第一页| 欧美大胆一级视频| 成人久久视频在线观看| 亚洲精品在线观看视频| www.成人网.com| 亚洲在线观看免费视频| 69堂国产成人免费视频| 国产一区二区三区日韩| 亚洲情趣在线观看| 粉嫩aⅴ一区二区三区四区| 国产精品区一区二区三区| 欧美伊人精品成人久久综合97| 亚洲成av人片www| 欧美va亚洲va在线观看蝴蝶网| 国产精品18久久久久久久久 | 一区二区三区产品免费精品久久75| 精品国产伦一区二区三区免费| 国产精品亚洲专一区二区三区 | 一区二区欧美精品| 精品少妇一区二区| 大美女一区二区三区| 亚洲国产精品嫩草影院| 精品日韩在线观看| 99re这里都是精品| 看片的网站亚洲| 日韩一区日韩二区| 色噜噜偷拍精品综合在线| 亚洲色图19p| 欧美精品v日韩精品v韩国精品v| 国产高清久久久| 亚洲va欧美va人人爽午夜| 56国语精品自产拍在线观看| 精品一区二区免费视频| 日韩理论片网站| 日韩一级大片在线观看| 99精品黄色片免费大全| 蜜桃精品在线观看| 一区二区三区蜜桃| 国产三级一区二区| 欧美色视频一区| 精品一区二区三区日韩| 亚洲综合图片区| 久久久99精品免费观看| 678五月天丁香亚洲综合网| av亚洲精华国产精华精| 国内精品国产成人国产三级粉色| 日韩中文字幕1| 亚洲综合色婷婷| 国产精品女人毛片|