⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 drv_nandflash.ms

📁 nandflash驱动程序
💻 MS
📖 第 1 页 / 共 2 页
字号:
	ld.w	%r12,0x3f
__LX27:				; __L27:

	.loc	244
	ld.uh	%r10,%r11
	ld.w	%r4,%r15
	add	%r4,%r10
	ld.w	%r10,%r4
	;.set	volatile
	ld.ub	%r10,[%r10]	; 	xld.ub	%r10,[%r10]
	;.set	novolatile
	;.set	volatile
	ld.b	[%r13],%r10	; 	xld.b	[%r13],%r10
	;.set	novolatile

	.loc	241
	add	%r11,0x1	; 	xadd	%r11,%r11,1
	ld.uh	%r10,%r11
	cmp	%r10,%r12
	jrule	__LX27		; 	xjrule	__L27

	.loc	248
	ext	0x0		; 	xld.w	%r11,0x000402d9		; 262873
	ext	0x100b
	ld.w	%r11,0x19
	bset	[%r11],0x4	; 	xbset	[%r11],0x4

	.loc	249
	ext	0x80		; 	xld.w	%r12,0x04000004		; 67108868
	ext	0x0
	ld.w	%r12,0x4
	ld.w	%r10,0x10	; 	xld.w	%r10,0x00000010		; 16
	;.set	volatile
	ld.b	[%r12],%r10	; 	xld.b	[%r12],%r10
	;.set	novolatile

	.loc	250
	bclr	[%r11],0x4	; 	xbclr	[%r11],0x4

	.loc	252
; APP
	nop
; NO_APP

	.loc	253
; APP
	nop
; NO_APP

	.loc	254
; APP
	nop
; NO_APP

	.loc	255
; APP
	nop
; NO_APP

	.loc	256
; APP
	nop
; NO_APP

	.loc	257
; APP
	nop
; NO_APP

	.loc	258
; APP
	nop
; NO_APP

	.loc	259
; APP
	nop
; NO_APP

	.loc	260
; APP
	nop
; NO_APP

	.loc	261
; APP
	nop
; NO_APP

	.loc	262
; APP
	nop
; NO_APP

	.loc	263
; APP
	nop
; NO_APP

	.loc	264
; APP
	nop
; NO_APP

	.loc	265
; APP
	nop
; NO_APP

	.loc	266
; APP
	nop
; NO_APP

	.loc	267
; APP
	nop
; NO_APP

	.loc	268
; APP
	nop
; NO_APP

	.loc	269
; APP
	nop
; NO_APP

	.loc	270
; APP
	nop
; NO_APP

	.loc	271
; APP
	nop
; NO_APP

	.loc	272
; APP
	nop
; NO_APP

	.loc	274
	ext	0x6		; 	xld.w	%r12,0x00300f46		; 3149638
	ext	0x3d
	ld.w	%r12,0x6
	ext	0x0		; 	xld.w	%r11,0x00000020		; 32
	ld.w	%r11,0x20
__LX31:				; __L31:

	.loc	275
	;.set	volatile
	ld.ub	%r10,[%r12]	; 	xld.ub	%r10,[%r12]
	;.set	novolatile
	and	%r10,%r11
	ld.ub	%r10,%r10
	cmp	%r10,0x0
	jreq	__LX31		; 	xjreq	__L31

	.loc	277
	ext	0x0		; 	xld.w	%r11,0x000402d9		; 262873
	ext	0x100b
	ld.w	%r11,0x19
	bset	[%r11],0x4	; 	xbset	[%r11],0x4

	.loc	278
	ext	0x80		; 	xld.w	%r12,0x04000004		; 67108868
	ext	0x0
	ld.w	%r12,0x4
	ext	0x1		; 	xld.w	%r10,0x00000070		; 112
	ld.w	%r10,0x30
	;.set	volatile
	ld.b	[%r12],%r10	; 	xld.b	[%r12],%r10
	;.set	novolatile

	.loc	279
	bclr	[%r11],0x4	; 	xbclr	[%r11],0x4

	.loc	280
	ext	0x80		; 	xld.w	%r10,0x04000000		; 67108864
	ext	0x0
	ld.w	%r10,0x0
	;.set	volatile
	ld.ub	%r10,[%r10]	; 	xld.ub	%r10,[%r10]
	;.set	novolatile
	ld.w	%r12,%r10
	and	%r12,0x1	; 	xand	%r12,%r12,0x00000001
	jrne	__LX33		; 	xjrne	__L33

	.loc	285
	ext	0x6		; 	xld.w	%r11,0x00300022		; 3145762
	ext	0x0
	ld.w	%r11,0x22
	bset	[%r11],0x1	; 	xbset	[%r11],0x1

	.loc	286
	ld.w	%r10,%r12
	jp	__LX35		; 	xjp	__L35
__LX33:				; __L33:

	.loc	282
	ext	0x6		; 	xld.w	%r11,0x00300022		; 3145762
	ext	0x0
	ld.w	%r11,0x22
	bset	[%r11],0x1	; 	xbset	[%r11],0x1

	.loc	283
	ld.w	%r10,0x3f	; 	xld.w	%r10,-1			; 0xffffffff
__LX35:				; __L35:

	.loc	290
	.def	bend,	scl	110,	type	0x0,	endef
	ret
	.def	end,	scl	111,	type	0x0,	endef
	.align	1
	.def	nand_fls_read_page,	val	nand_fls_read_page,	scl	2,	type	0x24,	endef
	.global	nand_fls_read_page

	.loc	294
	.def	ent,	scl	101,	type	0x0,	endef
nand_fls_read_page:
;	.frame	%sp,4,$31		# vars= 0, regs= 1/0, args= 0, extra= 0
;	.mask	0x80000000,-4
;	.fmask	0x00000000,0
	ld.w	%r4,%r12
	.def	data,	val	4,	scl	17,	type	0x1c,	endef
	.def	page_num,	val	13,	scl	17,	type	0xe,	endef
	.def	block_num,	val	14,	scl	17,	type	0xe,	endef

	.loc	295
	.def	begin,	scl	100,	type	0x0,	endef
	.def	i,	val	12,	scl	4,	type	0xd,	endef

	.loc	298
	ext	0x6		; 	xld.w	%r11,0x00300022		; 3145762
	ext	0x0
	ld.w	%r11,0x22
	bclr	[%r11],0x1	; 	xbclr	[%r11],0x1

	.loc	299
; APP
	nop
; NO_APP

	.loc	302
	ext	0x0		; 	xld.w	%r11,0x000402d9		; 262873
	ext	0x100b
	ld.w	%r11,0x19
	bset	[%r11],0x4	; 	xbset	[%r11],0x4

	.loc	303
	ext	0x80		; 	xld.w	%r15,0x04000004		; 67108868
	ext	0x0
	ld.w	%r15,0x4
	ld.w	%r5,0x0
	;.set	volatile
	ld.b	[%r15],%r5	; 	xld.b	[%r15],%r5
	;.set	novolatile

	.loc	304
	bclr	[%r11],0x4	; 	xbclr	[%r11],0x4

	.loc	307
	bset	[%r11],0x5	; 	xbset	[%r11],0x5

	.loc	309
	ext	0x80		; 	xld.w	%r12,0x04000008		; 67108872
	ext	0x0
	ld.w	%r12,0x8
	ld.w	%r5,0x0
	;.set	volatile
	ld.h	[%r12],%r5	; 	xld.h	[%r12],%r5
	;.set	novolatile

	.loc	311
	;.set	volatile
	ld.h	[%r12],%r5	; 	xld.h	[%r12],%r5
	;.set	novolatile

	.loc	313
	sll	%r14,0x6	; 	xsll	%r14,6
	add	%r14,%r13
	ld.w	%r10,%r14
	ext	0x3		; 	xand	%r10,%r10,0x000000ff
	and	%r10,0x3f
	;.set	volatile
	ld.h	[%r12],%r10	; 	xld.h	[%r12],%r10
	;.set	novolatile

	.loc	315
	ext	0x3fc		; 	xand	%r14,%r14,0x0000ff00
	and	%r14,0x0
	srl	%r14,0x8	; 	xsrl	%r14,8
	;.set	volatile
	ld.h	[%r12],%r14	; 	xld.h	[%r12],%r14
	;.set	novolatile

	.loc	317
	bclr	[%r11],0x5	; 	xbclr	[%r11],0x5

	.loc	320
	bset	[%r11],0x4	; 	xbset	[%r11],0x4

	.loc	321
	ext	0x0		; 	xld.w	%r10,0x00000030		; 48
	ld.w	%r10,0x30
	;.set	volatile
	ld.b	[%r15],%r10	; 	xld.b	[%r15],%r10
	;.set	novolatile

	.loc	322
	bclr	[%r11],0x4	; 	xbclr	[%r11],0x4

	.loc	323
; APP
	nop
; NO_APP

	.loc	324
; APP
	nop
; NO_APP

	.loc	325
; APP
	nop
; NO_APP

	.loc	326
; APP
	nop
; NO_APP

	.loc	327
; APP
	nop
; NO_APP

	.loc	328
; APP
	nop
; NO_APP

	.loc	329
; APP
	nop
; NO_APP

	.loc	330
; APP
	nop
; NO_APP

	.loc	331
; APP
	nop
; NO_APP

	.loc	332
; APP
	nop
; NO_APP

	.loc	333
; APP
	nop
; NO_APP

	.loc	334
; APP
	nop
; NO_APP

	.loc	335
; APP
	nop
; NO_APP

	.loc	336
; APP
	nop
; NO_APP

	.loc	337
; APP
	nop
; NO_APP

	.loc	338
; APP
	nop
; NO_APP

	.loc	339
; APP
	nop
; NO_APP

	.loc	340
; APP
	nop
; NO_APP

	.loc	341
; APP
	nop
; NO_APP

	.loc	342
	ext	0x6		; 	xld.w	%r12,0x00300f46		; 3149638
	ext	0x3d
	ld.w	%r12,0x6
	ext	0x0		; 	xld.w	%r11,0x00000020		; 32
	ld.w	%r11,0x20
__LX39:				; __L39:

	.loc	343
	;.set	volatile
	ld.ub	%r10,[%r12]	; 	xld.ub	%r10,[%r12]
	;.set	novolatile
	and	%r10,%r11
	ld.ub	%r10,%r10
	cmp	%r10,0x0
	jreq	__LX39		; 	xjreq	__L39

	.loc	344
; APP
	nop
; NO_APP

	.loc	345
; APP
	nop
; NO_APP

	.loc	346
; APP
	nop
; NO_APP

	.loc	347
; APP
	nop
; NO_APP

	.loc	348
; APP
	nop
; NO_APP

	.loc	349
	ld.w	%r12,0x0
	ext	0x80		; 	xld.w	%r14,0x04000000		; 67108864
	ext	0x0
	ld.w	%r14,0x0
	ext	0x20		; 	xld.w	%r13,0x0000083f		; 2111
	ld.w	%r13,0x3f
__LX44:				; __L44:

	.loc	350
	ld.uh	%r10,%r12
	ld.w	%r5,%r4
	add	%r5,%r10
	ld.w	%r10,%r5
	;.set	volatile
	ld.ub	%r11,[%r14]	; 	xld.ub	%r11,[%r14]
	;.set	novolatile
	ld.b	[%r10],%r11	; 	xld.b	[%r10],%r11

	.loc	349
	add	%r12,0x1	; 	xadd	%r12,%r12,1
	ld.uh	%r10,%r12
	cmp	%r10,%r13
	jrule	__LX44		; 	xjrule	__L44

	.loc	352
	ext	0x6		; 	xld.w	%r11,0x00300022		; 3145762
	ext	0x0
	ld.w	%r11,0x22
	bset	[%r11],0x1	; 	xbset	[%r11],0x1

	.loc	353
; APP
	nop
; NO_APP

	.loc	354
	ext	0x8		; 	xld.w	%r10,0x00000200		; 512
	ld.w	%r10,0x0

	.loc	356
	.def	bend,	scl	110,	type	0x0,	endef
	ret
	.def	end,	scl	111,	type	0x0,	endef
	.align	1
	.def	nand_fls_tst_all,	val	nand_fls_tst_all,	scl	2,	type	0x21,	endef
	.global	nand_fls_tst_all

	.loc	361
	.def	ent,	scl	101,	type	0x0,	endef
nand_fls_tst_all:
;	.frame	%sp,20,$31		# vars= 0, regs= 5/0, args= 0, extra= 0
;	.mask	0x800f0000,-4
;	.fmask	0x00000000,0
	pushn	%r3

	.loc	362
	.def	begin,	scl	100,	type	0x0,	endef
	.def	i,	val	0,	scl	4,	type	0x4,	endef
	.def	k,	val	11,	scl	4,	type	0x4,	endef
	.def	j,	val	1,	scl	4,	type	0x4,	endef

	.loc	365
	ext	nand_fls_init@rm	; 	xcall	nand_fls_init
	call	nand_fls_init@rl

	.loc	369
	ext	nand_fls_Reset@rm	; 	xcall	nand_fls_Reset
	call	nand_fls_Reset@rl

	.loc	370
	ld.w	%r0,0x0
__LX50:				; __L50:

	.loc	371
	ld.w	%r12,%r0
	ext	nand_fls_erase_block@rm	; 	xcall	nand_fls_erase_block
	call	nand_fls_erase_block@rl
	cmp	%r10,0x1	; 	xcmp	%r10,1
	jreq	__LX74		; 	xjreq	__L74

	.loc	370
	add	%r0,0x1		; 	xadd	%r0,%r0,1
	ext	0xf		; 	xcmp	%r0,1023
	cmp	%r0,0x3f
	jrle	__LX50		; 	xjrle	__L50

	.loc	379
	ld.w	%r0,0x0

	.loc	380
	ld.w	%r1,%r0
	ext	Test_Nand_Fls_Buf+0x0@h	; 	xld.w	%r2,Test_Nand_Fls_Buf
	ext	Test_Nand_Fls_Buf+0x0@m
	ld.w	%r2,Test_Nand_Fls_Buf+0x0@l
__LX57:				; __L57:

	.loc	381
	.def	begin,	scl	100,	type	0x0,	endef
	ld.w	%r12,%r2
	ld.w	%r13,%r1
	ext	0x21		; 	xld.w	%r14,0x00000840		; 2112
	ld.w	%r14,0x0
	ext	memset@rh	; 	xcall	memset
	ext	memset@rm
	call	memset@rl

	.loc	382
	add	%r1,0x1		; 	xadd	%r1,%r1,1

	.loc	383
	ld.w	%r12,%r2
	ld.w	%r13,%r0
	ext	0x10		; 	xld.w	%r14,0x00000400		; 1024
	ld.w	%r14,0x0
	ext	nand_fls_write_page@rm	; 	xcall	nand_fls_write_page
	call	nand_fls_write_page@rl
	cmp	%r10,0x1	; 	xcmp	%r10,1
	jreq	__LX75		; 	xjreq	__L75

	.loc	387
	ext	Test_Nand_Fls_Buf+0x0@h	; 	xld.w	%r12,Test_Nand_Fls_Buf
	ext	Test_Nand_Fls_Buf+0x0@m
	ld.w	%r12,Test_Nand_Fls_Buf+0x0@l
	ld.w	%r13,%r0
	ext	0x10		; 	xld.w	%r14,0x00000400		; 1024
	ld.w	%r14,0x0
	ext	nand_fls_read_page@rm	; 	xcall	nand_fls_read_page
	call	nand_fls_read_page@rl

	.loc	388
	.def	bend,	scl	110,	type	0x0,	endef

	.loc	380
	add	%r0,0x1		; 	xadd	%r0,%r0,1
	ext	0x0		; 	xcmp	%r0,63
	cmp	%r0,0x3f
	jrle	__LX57		; 	xjrle	__L57

	.loc	391
	ld.w	%r0,0x0

	.loc	392
	ld.w	%r1,%r0
	ext	Test_Nand_Fls_Buf+0x0@h	; 	xld.w	%r3,Test_Nand_Fls_Buf
	ext	Test_Nand_Fls_Buf+0x0@m
	ld.w	%r3,Test_Nand_Fls_Buf+0x0@l
	ext	0x20		; 	xld.w	%r2,0x0000083f		; 2111
	ld.w	%r2,0x3f
__LX64:				; __L64:

	.loc	393
	.def	begin,	scl	100,	type	0x0,	endef
	ld.w	%r12,%r3
	ext	0x1		; 	xadd	%r13,%r0,1
	add	%r13,%r0
	ext	0x21		; 	xld.w	%r14,0x00000840		; 2112
	ld.w	%r14,0x0
	ext	memset@rh	; 	xcall	memset
	ext	memset@rm
	call	memset@rl

	.loc	395
	ld.w	%r12,%r3
	ld.w	%r13,%r0
	ext	0x10		; 	xld.w	%r14,0x00000400		; 1024
	ld.w	%r14,0x0
	ext	nand_fls_read_page@rm	; 	xcall	nand_fls_read_page
	call	nand_fls_read_page@rl

	.loc	397
	ld.w	%r11,0x0
__LX68:				; __L68:

	.loc	398
	ext	Test_Nand_Fls_Buf+0x0@h	; 	xld.ub	%r10,[%r11+Test_Nand_Fls_Buf]
	ext	Test_Nand_Fls_Buf+0x0@m
	ld.w	%r9,Test_Nand_Fls_Buf+0x0@l
	add	%r9,%r11
	ld.ub	%r10,[%r9]
	cmp	%r1,%r10
	jrne	__LX70		; 	xjrne	__L70

	.loc	397
	add	%r11,0x1	; 	xadd	%r11,%r11,1
	cmp	%r11,%r2
	jrle	__LX68		; 	xjrle	__L68

	.loc	402
	add	%r1,0x1		; 	xadd	%r1,%r1,1

	.loc	403
	.def	bend,	scl	110,	type	0x0,	endef

	.loc	392
	add	%r0,0x1		; 	xadd	%r0,%r0,1
	ext	0x0		; 	xcmp	%r0,63
	cmp	%r0,0x3f
	jrle	__LX64		; 	xjrle	__L64
	.def	Tst_NFS_All,	val	__LX73,	scl	6,	type	0x0,	endef
		; 	.def	Tst_NFS_All,	val	__L73,	scl	6,	type	0x0,	endef
__LX73:				; __L73:

	.loc	407
; APP
	nop
; NO_APP

	.loc	408
	jp	__LX73		; 	xjp	__L73
__LX74:				; __L74:

	.loc	372
; APP
	nop
; NO_APP

	.loc	373

	.loc	412
	jp	__LX74		; 	xjp	__L74
__LX75:				; __L75:

	.loc	384
; APP
	nop
; NO_APP

	.loc	385

	.loc	416
	jp	__LX75		; 	xjp	__L75
	.def	Read_Error,	val	__LX70,	scl	6,	type	0x0,	endef
		; 	.def	Read_Error,	val	__L70,	scl	6,	type	0x0,	endef
__LX70:				; __L70:

	.loc	419
; APP
	nop
; NO_APP

	.loc	420
	jp	__LX70		; 	xjp	__L70

	.loc	423
	.def	bend,	scl	110,	type	0x0,	endef
	popn	%r3
	ret
	.def	end,	scl	111,	type	0x0,	endef
	.def	this_nand_fls_id,	val	this_nand_fls_id,	scl	2,	tag	_tag_nand_fls,	size	4,	type	0x8,	endef

	.comm	this_nand_fls_id 4
	.def	p_nand_fls_id,	val	p_nand_fls_id,	scl	2,	tag	_tag_nand_fls,	size	4,	type	0x18,	endef

	.comm	p_nand_fls_id 4
	.def	ret,	val	ret,	scl	2,	type	0xc,	endef

	.comm	ret 1
	.def	Test_Nand_Fls_Buf,	val	Test_Nand_Fls_Buf,	scl	2,	dim	2112,	size	2112,	type	0x3c,	endef

	.comm	Test_Nand_Fls_Buf 2112

	.endfile

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -