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

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

?? s3c6410_fil_opt.s

?? 6410BSP3
?? S
字號:
;///////////////////////////////////////////////////////////////
;//
;//	MODULE		: FIL
;//	NAME		: S3C6410X Flash Interface Layer
;//	FILE			: S3C6410X_NAND.s
;//	PURPOSE		: Assembly Optimized NF Data register access code
;//
;///////////////////////////////////////////////////////////////
;//
;//		COPYRIGHT 2003-2006 SAMSUNG ELECTRONICS CO., LTD.
;//					ALL RIGHTS RESERVED
;//
;//	Permission is hereby granted to licensees of Samsung Electronics
;//	Co., Ltd. products to use or abstract this computer program for the
;//	sole purpose of implementing a product based on Samsung
;//	Electronics Co., Ltd. products. No other rights to reproduce, use,
;//	or disseminate this computer program, whether in part or in whole,
;//	are granted.
;//
;//	Samsung Electronics Co., Ltd. makes no representation or warranties
;//	with respect to the performance of this computer program, and
;//	specifically disclaims any responsibility for any damages,
;//	special or consequential, connected with the use of this program.
;//
;///////////////////////////////////////////////////////////////
;//
;//	REVISION HISTORY
;//
;//	2006.10.19	dodan2(gabjoo.lim@samsung.com)
;//				Draft Version
;//
;///////////////////////////////////////////////////////////////

		INCLUDE kxarm.h
		TEXTAREA

;/////////////////////////////////////////////////////
;//
;//	void _Read_512Byte(unsigned char *pBuf)
;//
;//	Read 512 bytes (1 Sector) word-alined buffer
;//	Buffer (r0) must be word-aligned
;//
;/////////////////////////////////////////////////////

		LEAF_ENTRY  _Read_512Byte

		stmfd	sp!, {r1 - r11}

		ldr		r1, =0xb0200010	; NFDATA
		mov		r2, #512			; 512 byte count
1
		ldr		r4, [r1]    		; Load 1st word
		ldr		r5, [r1]			; Load 2nd word
		ldr		r6, [r1]			; Load 3rd word
		ldr		r7, [r1]			; Load 4th word
		ldr		r8, [r1]			; Load 5th word
		ldr		r9, [r1]			; Load 6th word
		ldr		r10,[r1]			; Load 7th word
		ldr		r11,[r1]			; Load 8th word
		stmia	r0!,  {r4 - r11}	; Store 8 words (32 byte)

		subs		r2, r2, #32
		bne		%B1

		ldmfd	sp!,  {r1 - r11}

	IF Interworking :LOR: Thumbing
		bx		lr				; Return with Thumb mode
	ELSE
		mov		pc, lr			; Return
	ENDIF


;/////////////////////////////////////////////////////
;//
;//	void _Read_512Byte_Unaligned(unsigned char *pBuf)
;//
;//	Read 512 bytes (1 Sector) NOT word-alined buffer
;//
;/////////////////////////////////////////////////////

		LEAF_ENTRY _Read_512Byte_Unaligned

		stmfd	sp!, {r1 - r12}

		ldr		r1, =0xb0200010	;NFDATA
		mov		r2, #480

	; Calculate number of unaligned bytes to read (r12 = 4 - (r0 & 3))
		and		r12, r0, #3
		rsb		r12, r12, #4
		mov		r3, r12

rd_unalign1						; Read unaligned bytes
        	ldrb		r4, [r1]
		strb		r4, [r0]
		add		r0, r0, #1
		subs		r3, r3, #1
		bne		rd_unalign1

rd_main							; Read 480 bytes (32 x 15)
		ldr		r4, [r1]    		; Load 1st word
		ldr		r5, [r1]			; Load 2nd word
		ldr		r6, [r1]			; Load 3rd word
		ldr		r7, [r1]			; Load 4th word
		ldr		r8, [r1]			; Load 5th word
		ldr		r9, [r1]			; Load 6th word
		ldr		r10,[r1]			; Load 7th word
		ldr		r11,[r1]			; Load 8th word
		stmia	r0!, {r4 - r11}	; Store 8 words (32 byte)

		subs		r2, r2, #32
		bne		rd_main

		ldr		r4, [r1]			; Read 28 bytes
		ldr		r5, [r1]
		ldr		r6, [r1]
		ldr		r7, [r1]
		ldr		r8, [r1]
		ldr		r9, [r1]
		ldr		r10,[r1]
		stmia	r0!, {r4 - r10}

		rsbs		r12, r12, #4		; Read trailing unaligned bytes
		beq		rd_exit

rd_unalign2
		ldrb		r4, [r1]
		strb		r4, [r0]
		add		r0, r0, #1
		subs		r12, r12, #1
		bne		rd_unalign2

rd_exit
		ldmfd    sp!, {r1 - r12}

	IF Interworking :LOR: Thumbing
		bx		lr				; Return with Thumb mode
	ELSE
		mov		pc, lr			; Return
	ENDIF


;/////////////////////////////////////////////////////
;//
;//	void _Write_512Byte(unsigned char *pBuf)
;//
;//	Write 512 bytes (1 Sector) word-alined buffer
;//	Buffer (r0) must be word-aligned
;//
;/////////////////////////////////////////////////////

		LEAF_ENTRY    _Write_512Byte

		stmfd	sp!,{r1 - r11}

		ldr		r1, =0xb0200010  ;NFDATA
		mov		r2, #512
1
		ldmia	r0!, {r4 - r11}
		str		r4, [r1]
		str		r5, [r1]
		str		r6, [r1]
		str		r7, [r1]
		str		r8, [r1]
		str		r9, [r1]
		str		r10,[r1]
		str		r11,[r1]

		subs		r2, r2, #32
		bne		%B1

		ldmfd	sp!, {r1 - r11}

	IF Interworking :LOR: Thumbing
		bx		lr				; Return with Thumb mode
	ELSE
		mov		pc, lr			; Return
	ENDIF


;/////////////////////////////////////////////////////
;//
;//	void _Write_512Byte_Unaligned(unsigned char *pBuf)
;//
;//	Write 512 bytes (1 Sector) NOT word-alined buffer
;//
;/////////////////////////////////////////////////////

		LEAF_ENTRY	_Write_512Byte_Unaligned
		stmfd	sp!,{r1 - r11}

		ldr		r1, =0xb0200010  ;NFDATA
		mov		r2, #480

	; Calculate number of unaligned bytes to read (r12 = 4 - (r0 & 3))
		and		r12, r0, #3
		rsb		r12, r12, #4
		mov		r3, r12

wr_unalign1
        ; Write unaligned bytes
		ldrb		r4, [r0]
		strb		r4, [r1]
		add		r0, r0, #1
		subs		r3, r3, #1
		bne		wr_unalign1

wr_main
        ; Write 480 bytes (32 x 15)
		ldmia	r0!, {r4 - r11}
		str		r4, [r1]
		str		r5, [r1]
		str		r6, [r1]
		str		r7, [r1]
		str		r8, [r1]
		str		r9, [r1]
		str		r10,[r1]
		str		r11,[r1]

		subs		r2, r2, #32
		bne		wr_main

        ; Write 28 bytes
		ldmia	r0!, {r4 - r10}
		str		r4, [r1]
		str		r5, [r1]
		str		r6, [r1]
		str		r7, [r1]
		str		r8, [r1]
		str		r9, [r1]
		str		r10,[r1]

        ; Write trailing unaligned bytes
		rsbs		r12, r12, #4
		beq		wr_exit

wr_unalign2
		ldrb		r4, [r0]
		strb		r4, [r1]
		add		r0, r0, #1
		subs		r12, r12, #1
		bne		wr_unalign2

wr_exit
		ldmfd	sp!, {r1 - r11}

	IF Interworking :LOR: Thumbing
		bx		lr				; Return with Thumb mode
	ELSE
		mov		pc, lr			; Return
	ENDIF


;/////////////////////////////////////////////////////
;//
;//	void _Write_Dummy_468Byte_AllFF(void)
;//
;//	Write Dummy 468 bytes 0xFF
;//
;/////////////////////////////////////////////////////

		LEAF_ENTRY    _Write_Dummy_468Byte_AllFF

		stmfd	sp!,{r1 - r2}

		ldr		r0, =0xFFFFFFFF
		ldr		r1, =0xb0200010  ;NFDATA

		str		r0, [r1]			; write 20 bytes
		str		r0, [r1]
		str		r0, [r1]
		str		r0, [r1]
		str		r0, [r1]

		mov		r2, #448			; 468-20 byte count
1
		str		r0, [r1]			; 1
		str		r0, [r1]			; 2
		str		r0, [r1]			; 3
		str		r0, [r1]			; 4
		str		r0, [r1]			; 5
		str		r0, [r1]			; 6
		str		r0, [r1]			; 7
		str		r0, [r1]			; 8

		subs		r2, r2, #32
		bne		%B1

		ldmfd	sp!, {r1 - r2}

	IF Interworking :LOR: Thumbing
		bx		lr				; Return with Thumb mode
	ELSE
		mov		pc, lr			; Return
	ENDIF


;/////////////////////////////////////////////////////
;//
;//	void _Write_Dummy_428Byte_AllFF(void)
;//
;//	Write Dummy 428 bytes 0xFF
;//
;/////////////////////////////////////////////////////

		LEAF_ENTRY    _Write_Dummy_428Byte_AllFF

		stmfd	sp!,{r1 - r2}

		ldr		r0, =0xFFFFFFFF
		ldr		r1, =0xb0200010  ;NFDATA

		str		r0, [r1]			; write 12 bytes
		str		r0, [r1]
		str		r0, [r1]

		mov		r2, #416			; 428-12 byte count
1
		str		r0, [r1]			; 1
		str		r0, [r1]			; 2
		str		r0, [r1]			; 3
		str		r0, [r1]			; 4
		str		r0, [r1]			; 5
		str		r0, [r1]			; 6
		str		r0, [r1]			; 7
		str		r0, [r1]			; 8

		subs		r2, r2, #32
		bne		%B1

		ldmfd	sp!, {r1 - r2}

	IF Interworking :LOR: Thumbing
		bx		lr				; Return with Thumb mode
	ELSE
		mov		pc, lr			; Return
	ENDIF


;/////////////////////////////////////////////////////
;//
;//    void _Write_Dummy_364Byte_AllFF(void)
;//
;//    Write Dummy 364 bytes 0xFF
;//
;/////////////////////////////////////////////////////

        LEAF_ENTRY    _Write_Dummy_364Byte_AllFF

        stmfd    sp!,{r1 - r2}

        ldr        r0, =0xFFFFFFFF
        ldr        r1, =0xb0200010  ;NFDATA
        str        r0, [r1]            ; write 12 bytes
        str        r0, [r1]
        str        r0, [r1]

        mov        r2, #352            ; 364-12 byte count
1
        str        r0, [r1]            ; 1
        str        r0, [r1]            ; 2
        str        r0, [r1]            ; 3
        str        r0, [r1]            ; 4
        str        r0, [r1]            ; 5
        str        r0, [r1]            ; 6
        str        r0, [r1]            ; 7
        str        r0, [r1]            ; 8

        subs        r2, r2, #32
        bne        %B1

        ldmfd    sp!, {r1 - r2}

    IF Interworking :LOR: Thumbing
        bx        lr                ; Return with Thumb mode
    ELSE
        mov        pc, lr            ; Return
    ENDIF

;/////////////////////////////////////////////////////
;//
;//    void _Write_Dummy_500Byte_AllFF(void)
;//
;//    Write Dummy 500 bytes 0xFF
;//
;/////////////////////////////////////////////////////

        LEAF_ENTRY    _Write_Dummy_500Byte_AllFF

        stmfd    sp!,{r1 - r2}

        ldr        r0, =0xFFFFFFFF
        ldr        r1, =0xb0200010  ;NFDATA
        str        r0, [r1]            ; write 20 bytes
        str        r0, [r1]
        str        r0, [r1]
        str        r0, [r1]
        str        r0, [r1]

        mov        r2, #480            ; 500-20 byte count
1
        str        r0, [r1]            ; 1
        str        r0, [r1]            ; 2
        str        r0, [r1]            ; 3
        str        r0, [r1]            ; 4
        str        r0, [r1]            ; 5
        str        r0, [r1]            ; 6
        str        r0, [r1]            ; 7
        str        r0, [r1]            ; 8

        subs        r2, r2, #32
        bne        %B1

        ldmfd    sp!, {r1 - r2}

    IF Interworking :LOR: Thumbing
        bx        lr                ; Return with Thumb mode
    ELSE
        mov        pc, lr            ; Return
    ENDIF

;/////////////////////////////////////////////////////
;//
;//    void _Write_Dummy_492Byte_AllFF(void)
;//
;//    Write Dummy 492 bytes 0xFF
;//
;/////////////////////////////////////////////////////

        LEAF_ENTRY    _Write_Dummy_492Byte_AllFF

        stmfd    sp!,{r1 - r2}

        ldr        r0, =0xFFFFFFFF
        ldr        r1, =0xb0200010  ;NFDATA
        str        r0, [r1]            ; write 12 bytes
        str        r0, [r1]
        str        r0, [r1]

        mov        r2, #480            ; 492-12 byte count
1
        str        r0, [r1]            ; 1
        str        r0, [r1]            ; 2
        str        r0, [r1]            ; 3
        str        r0, [r1]            ; 4
        str        r0, [r1]            ; 5
        str        r0, [r1]            ; 6
        str        r0, [r1]            ; 7
        str        r0, [r1]            ; 8

        subs        r2, r2, #32
        bne        %B1

        ldmfd    sp!, {r1 - r2}

    IF Interworking :LOR: Thumbing
        bx        lr                ; Return with Thumb mode
    ELSE
        mov        pc, lr            ; Return
    ENDIF

;/////////////////////////////////////////////////////
;//
;//    void _Write_Dummy_480Byte_AllFF(void)
;//
;//    Write Dummy 480 bytes 0xFF
;//
;/////////////////////////////////////////////////////

        LEAF_ENTRY    _Write_Dummy_480Byte_AllFF

        stmfd    sp!,{r1 - r2}

        ldr        r0, =0xFFFFFFFF
        ldr        r1, =0xb0200010  ;NFDATA

        mov        r2, #480            ; 480 byte count
1
        str        r0, [r1]            ; 1
        str        r0, [r1]            ; 2
        str        r0, [r1]            ; 3
        str        r0, [r1]            ; 4
        str        r0, [r1]            ; 5
        str        r0, [r1]            ; 6
        str        r0, [r1]            ; 7
        str        r0, [r1]            ; 8

        subs        r2, r2, #32
        bne        %B1

        ldmfd    sp!, {r1 - r2}

    IF Interworking :LOR: Thumbing
        bx        lr                ; Return with Thumb mode
    ELSE
        mov        pc, lr            ; Return
    ENDIF

;/////////////////////////////////////////////////////
;//
;//    void _Write_Dummy_448Byte_AllFF(void)
;//
;//    Write Dummy 448 bytes 0xFF
;//
;/////////////////////////////////////////////////////

        LEAF_ENTRY    _Write_Dummy_448Byte_AllFF

        stmfd    sp!,{r1 - r2}

        ldr        r0, =0xFFFFFFFF
        ldr        r1, =0xb0200010  ;NFDATA

        mov        r2, #448            ; 448 byte count
1
        str        r0, [r1]            ; 1
        str        r0, [r1]            ; 2
        str        r0, [r1]            ; 3
        str        r0, [r1]            ; 4
        str        r0, [r1]            ; 5
        str        r0, [r1]            ; 6
        str        r0, [r1]            ; 7
        str        r0, [r1]            ; 8

        subs        r2, r2, #32
        bne        %B1

        ldmfd    sp!, {r1 - r2}

    IF Interworking :LOR: Thumbing
        bx        lr                ; Return with Thumb mode
    ELSE
        mov        pc, lr            ; Return
    ENDIF

		LEAF_ENTRY   _STOP_FOR_BREAK

		stmfd	sp!,{r1 - r2}
		b .
		orr		r0,r0,r0

		ldmfd	sp!, {r1 - r2}

	IF Interworking :LOR: Thumbing
		bx		lr				; Return with Thumb mode
	ELSE
		mov		pc, lr			; Return
	ENDIF

    END

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
美女视频免费一区| 一卡二卡三卡日韩欧美| 国产精品女同一区二区三区| 一级日本不卡的影视| 激情久久五月天| 欧美性做爰猛烈叫床潮| 久久午夜老司机| 日本视频在线一区| 色偷偷一区二区三区| 久久精品一区二区三区四区| 午夜精品福利视频网站| 99精品欧美一区二区三区综合在线| 91麻豆精品国产91久久久使用方法 | 国产精品久久久久四虎| 日韩高清不卡一区| 在线精品视频一区二区三四 | 日韩一区二区三区免费看 | 国产aⅴ精品一区二区三区色成熟| 欧美视频三区在线播放| 国产精品卡一卡二| 国产精品自拍网站| 日韩一区二区三区免费观看| 亚洲午夜国产一区99re久久| 成人av在线资源网站| 国产丝袜美腿一区二区三区| 国内精品自线一区二区三区视频| 777奇米四色成人影色区| 图片区小说区区亚洲影院| 欧美亚洲一区二区在线观看| 一区二区三区四区不卡在线 | 国产九色sp调教91| 欧美r级电影在线观看| 免费视频最近日韩| 欧美一区二区三区成人| 亚洲国产精品久久久久秋霞影院| 91色婷婷久久久久合中文| 中文字幕中文字幕在线一区| 成人aa视频在线观看| 日韩美女精品在线| 91麻豆国产自产在线观看| 亚洲另类在线视频| 久久久另类综合| 久久精品在线免费观看| 欧美日韩另类一区| 精品国产亚洲一区二区三区在线观看| 欧美挠脚心视频网站| 亚洲成a人v欧美综合天堂下载 | 亚洲最大色网站| 91官网在线观看| 亚洲国产精品久久久男人的天堂| 欧美美女激情18p| 美日韩一区二区| 精品国产麻豆免费人成网站| 国产成人免费视频网站 | 免费成人在线网站| 日韩精品中文字幕在线不卡尤物| 国产永久精品大片wwwapp| 国产精品蜜臀在线观看| 在线视频中文字幕一区二区| 日本不卡视频一二三区| 久久久国际精品| 91福利精品第一导航| 蜜桃免费网站一区二区三区| 国产欧美日韩另类一区| 欧美调教femdomvk| 精品亚洲成a人在线观看| 国产精品电影院| 337p亚洲精品色噜噜噜| 成人免费看片app下载| 亚洲第一福利视频在线| 久久精品一区蜜桃臀影院| 欧洲亚洲国产日韩| 国内精品视频666| 一区二区三区高清不卡| 精品国产一区二区三区四区四| 91在线码无精品| 激情综合色综合久久| 亚洲一区二区三区美女| 国产婷婷一区二区| 91精品欧美久久久久久动漫| 91在线无精精品入口| 激情都市一区二区| 亚洲欧洲av色图| 欧美性感一区二区三区| 国产在线精品一区二区三区不卡| 亚洲精品视频在线| 久久你懂得1024| 欧美精品自拍偷拍| 91首页免费视频| 欧美在线不卡视频| 亚洲三级在线播放| 51精品视频一区二区三区| 亚洲免费视频中文字幕| 欧美亚洲国产一区在线观看网站| 亚洲色图19p| 成人激情动漫在线观看| 亚洲丝袜精品丝袜在线| 欧洲精品在线观看| 亚洲成人久久影院| 成人午夜电影网站| 亚洲国产成人porn| 亚洲无线码一区二区三区| 国产精品欧美久久久久无广告| 欧美一级高清片在线观看| 在线看国产一区二区| 成人不卡免费av| 粉嫩av一区二区三区在线播放| 裸体一区二区三区| 日韩国产在线观看一区| 亚洲欧洲综合另类| 亚洲免费视频中文字幕| 亚洲欧美一区二区三区孕妇| 国产精品久久精品日日| 中文av字幕一区| 国产精品美女www爽爽爽| 中文字幕不卡在线播放| 中文字幕av一区二区三区高| 中文字幕精品—区二区四季| 国产精品免费免费| 国产精品乱码一区二三区小蝌蚪| 亚洲国产精品高清| 国产精品视频免费| 国产精品不卡一区| 亚洲欧美日韩中文播放 | 一本一道综合狠狠老| 91亚洲国产成人精品一区二区三| 99久久久无码国产精品| 一本大道综合伊人精品热热| 欧美在线不卡一区| 欧美一级久久久| 欧美精品一区二区三区蜜桃| 国产网站一区二区三区| 中文字幕综合网| 亚州成人在线电影| 国产自产视频一区二区三区| 国产精品一区二区久激情瑜伽| 成人高清免费观看| 欧洲精品视频在线观看| 欧美一级国产精品| 国产日韩欧美高清| 亚洲一区中文日韩| 九九精品视频在线看| 国产精品一级黄| 91成人免费电影| 日韩免费视频线观看| 亚洲午夜精品久久久久久久久| 一区二区三区蜜桃| 热久久国产精品| 成人激情文学综合网| 欧美日韩一区二区三区四区| 日韩欧美你懂的| 国产精品对白交换视频| 日韩国产一二三区| 成人sese在线| 欧美一区二区三级| 中文字幕一区二区三区蜜月| 日韩精品久久久久久| 国产成人综合网| 欧美乱熟臀69xxxxxx| 国产精品色婷婷| 日本一道高清亚洲日美韩| 成人精品国产免费网站| 91麻豆精品国产91| 1区2区3区国产精品| 激情国产一区二区 | 一区在线观看免费| 日本成人在线电影网| av电影天堂一区二区在线| 欧美一卡二卡三卡| 一区二区在线观看免费视频播放| 精品在线亚洲视频| 欧美日韩精品一区二区三区蜜桃| 久久久.com| 日韩av午夜在线观看| 一本色道亚洲精品aⅴ| 国产色产综合色产在线视频| 日本成人在线一区| 在线精品视频免费观看| 国产精品国产a级| 国产一区二区三区久久久| 911精品国产一区二区在线| 亚洲精品第1页| 成人国产精品视频| 久久免费视频色| 老司机精品视频线观看86| 欧美日韩国产片| 夜夜夜精品看看| 色999日韩国产欧美一区二区| 国产精品久久毛片a| 国产高清亚洲一区| 精品999在线播放| 麻豆精品在线播放| 91精品国产免费| 蜜桃视频第一区免费观看| 777午夜精品免费视频| 天堂久久一区二区三区| 欧美人与z0zoxxxx视频| 亚洲成人激情综合网| 欧美日韩视频不卡| 污片在线观看一区二区|