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

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

?? cache-v7.s

?? omap3 linux 2.6 用nocc去除了冗余代碼
?? S
字號:
/* *  linux/arch/arm/mm/cache-v7.S * *  Copyright (C) 2001 Deep Blue Solutions Ltd. *  Copyright (C) 2005 ARM Ltd. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 as * published by the Free Software Foundation. * *  This is the "shell" of the ARMv7 processor support. */#include <linux/linkage.h>#include <linux/init.h>#include <asm/assembler.h>#include "proc-macros.S"/* *	v7_flush_dcache_all() * *	Flush the whole D-cache. * *	Corrupted registers: r0-r5, r7, r9-r11 * *	- mm    - mm_struct describing address space */ENTRY(v7_flush_dcache_all)	mrc	p15, 1, r0, c0, c0, 1		@ read clidr	ands	r3, r0, #0x7000000		@ extract loc from clidr	mov	r3, r3, lsr #23			@ left align loc bit field	beq	finished			@ if loc is 0, then no need to clean	mov	r10, #0				@ start clean at cache level 0loop1:	add	r2, r10, r10, lsr #1		@ work out 3x current cache level	mov	r1, r0, lsr r2			@ extract cache type bits from clidr	and	r1, r1, #7			@ mask of the bits for current cache only	cmp	r1, #2				@ see what cache we have at this level	blt	skip				@ skip if no cache, or just i-cache	mcr	p15, 2, r10, c0, c0, 0		@ select current cache level in cssr	isb					@ isb to sych the new cssr&csidr	mrc	p15, 1, r1, c0, c0, 0		@ read the new csidr	and	r2, r1, #7			@ extract the length of the cache lines	add	r2, r2, #4			@ add 4 (line length offset)	ldr	r4, =0x3ff	ands	r4, r4, r1, lsr #3		@ find maximum number on the way size	clz	r5, r4				@ find bit position of way size increment	ldr	r7, =0x7fff	ands	r7, r7, r1, lsr #13		@ extract max number of the index sizeloop2:	mov	r9, r4				@ create working copy of max way sizeloop3:	orr	r11, r10, r9, lsl r5		@ factor way and cache number into r11	orr	r11, r11, r7, lsl r2		@ factor index number into r11	mcr	p15, 0, r11, c7, c14, 2		@ clean & invalidate by set/way	subs	r9, r9, #1			@ decrement the way	bge	loop3	subs	r7, r7, #1			@ decrement the index	bge	loop2skip:	add	r10, r10, #2			@ increment cache number	cmp	r3, r10	bgt	loop1finished:	mov	r10, #0				@ swith back to cache level 0	mcr	p15, 2, r10, c0, c0, 0		@ select current cache level in cssr	isb	mov	pc, lr/* *	v7_flush_cache_all() * *	Flush the entire cache system. *  The data cache flush is now achieved using atomic clean / invalidates *  working outwards from L1 cache. This is done using Set/Way based cache *  maintainance instructions. *  The instruction cache can still be invalidated back to the point of *  unification in a single instruction. * */ENTRY(v7_flush_kern_cache_all)	stmfd	sp!, {r4-r5, r7, r9-r11, lr}	bl	v7_flush_dcache_all	mov	r0, #0	mcr	p15, 0, r0, c7, c5, 0		@ I+BTB cache invalidate	ldmfd	sp!, {r4-r5, r7, r9-r11, lr}	mov	pc, lr/* *	v7_flush_cache_all() * *	Flush all TLB entries in a particular address space * *	- mm    - mm_struct describing address space */ENTRY(v7_flush_user_cache_all)	/*FALLTHROUGH*//* *	v7_flush_cache_range(start, end, flags) * *	Flush a range of TLB entries in the specified address space. * *	- start - start address (may not be aligned) *	- end   - end address (exclusive, may not be aligned) *	- flags	- vm_area_struct flags describing address space * *	It is assumed that: *	- we have a VIPT cache. */ENTRY(v7_flush_user_cache_range)	mov	pc, lr/* *	v7_coherent_kern_range(start,end) * *	Ensure that the I and D caches are coherent within specified *	region.  This is typically used when code has been written to *	a memory region, and will be executed. * *	- start   - virtual start address of region *	- end     - virtual end address of region * *	It is assumed that: *	- the Icache does not read data from the write buffer */ENTRY(v7_coherent_kern_range)	/* FALLTHROUGH *//* *	v7_coherent_user_range(start,end) * *	Ensure that the I and D caches are coherent within specified *	region.  This is typically used when code has been written to *	a memory region, and will be executed. * *	- start   - virtual start address of region *	- end     - virtual end address of region * *	It is assumed that: *	- the Icache does not read data from the write buffer */ENTRY(v7_coherent_user_range)	dcache_line_size r2, r3	sub	r3, r2, #1	bic	r0, r0, r31:	mcr	p15, 0, r0, c7, c11, 1		@ clean D line to the point of unification	dsb	mcr	p15, 0, r0, c7, c5, 1		@ invalidate I line	add	r0, r0, r2	cmp	r0, r1	blo	1b	mov	r0, #0	mcr	p15, 0, r0, c7, c5, 6		@ invalidate BTB	dsb	isb	mov	pc, lr/* *	v7_flush_kern_dcache_page(kaddr) * *	Ensure that the data held in the page kaddr is written back *	to the page in question. * *	- kaddr   - kernel address (guaranteed to be page aligned) */ENTRY(v7_flush_kern_dcache_page)	dcache_line_size r2, r3	add	r1, r0, #PAGE_SZ1:	mcr	p15, 0, r0, c7, c14, 1		@ clean & invalidate D line / unified line	add	r0, r0, r2	cmp	r0, r1	blo	1b	dsb	mov	pc, lr/* *	v7_dma_inv_range(start,end) * *	Invalidate the data cache within the specified region; we will *	be performing a DMA operation in this region and we want to *	purge old data in the cache. * *	- start   - virtual start address of region *	- end     - virtual end address of region */ENTRY(v7_dma_inv_range)	dcache_line_size r2, r3	sub	r3, r2, #1	tst	r0, r3	bic	r0, r0, r3	mcrne	p15, 0, r0, c7, c14, 1		@ clean & invalidate D / U line	tst	r1, r3	bic	r1, r1, r3	mcrne	p15, 0, r1, c7, c14, 1		@ clean & invalidate D / U line1:	mcr	p15, 0, r0, c7, c6, 1		@ invalidate D / U line	add	r0, r0, r2	cmp	r0, r1	blo	1b	dsb	mov	pc, lr/* *	v7_dma_clean_range(start,end) *	- start   - virtual start address of region *	- end     - virtual end address of region */ENTRY(v7_dma_clean_range)	dcache_line_size r2, r3	sub	r3, r2, #1	bic	r0, r0, r31:	mcr	p15, 0, r0, c7, c10, 1		@ clean D / U line	add	r0, r0, r2	cmp	r0, r1	blo	1b	dsb	mov	pc, lr/* *	v7_dma_flush_range(start,end) *	- start   - virtual start address of region *	- end     - virtual end address of region */ENTRY(v7_dma_flush_range)	dcache_line_size r2, r3	sub	r3, r2, #1	bic	r0, r0, r31:	mcr	p15, 0, r0, c7, c14, 1		@ clean & invalidate D / U line	add	r0, r0, r2	cmp	r0, r1	blo	1b	dsb	mov	pc, lr	__INITDATA	.type	v7_cache_fns, #objectENTRY(v7_cache_fns)	.long	v7_flush_kern_cache_all	.long	v7_flush_user_cache_all	.long	v7_flush_user_cache_range	.long	v7_coherent_kern_range	.long	v7_coherent_user_range	.long	v7_flush_kern_dcache_page	.long	v7_dma_inv_range	.long	v7_dma_clean_range	.long	v7_dma_flush_range	.size	v7_cache_fns, . - v7_cache_fns

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产日产欧美一区二区三区| 久久91精品久久久久久秒播| 国产制服丝袜一区| 欧美日韩黄色一区二区| 成人欧美一区二区三区黑人麻豆 | 欧美日韩亚洲丝袜制服| 日韩毛片视频在线看| 国产精品的网站| 国产乱码精品一区二区三区av| 91香蕉视频在线| 国产精品久99| 麻豆国产欧美一区二区三区| 日本高清不卡视频| 精品美女一区二区三区| 亚洲精品va在线观看| 91美女片黄在线观看91美女| 亚洲视频在线一区观看| 大桥未久av一区二区三区中文| 精品久久人人做人人爽| 午夜精品成人在线| 欧美一区日韩一区| 麻豆久久久久久| 欧美日韩久久久久久| 日韩av不卡在线观看| 日韩精品一区二区三区蜜臀| 黄页网站大全一区二区| 久久蜜桃av一区二区天堂 | 国产精品护士白丝一区av| 国产激情一区二区三区| 久久久国产精品麻豆| 91丨九色丨蝌蚪丨老版| 亚洲成人精品影院| 69av一区二区三区| 99r精品视频| 日韩中文字幕av电影| 精品欧美黑人一区二区三区| 国产毛片精品一区| 亚洲福利视频一区二区| 精品伦理精品一区| 成人97人人超碰人人99| 免费高清视频精品| 国产人伦精品一区二区| 色就色 综合激情| 日韩专区一卡二卡| 亚洲女厕所小便bbb| 欧美日韩的一区二区| 国产一区二区三区黄视频 | 欧美成人官网二区| 国产成人99久久亚洲综合精品| 夜夜嗨av一区二区三区网页| 欧美一卡二卡三卡| 91丝袜高跟美女视频| 日本美女一区二区三区视频| 洋洋av久久久久久久一区| 精品国产乱子伦一区| 91黄色免费观看| 高清国产一区二区三区| 午夜精品视频在线观看| 国产喷白浆一区二区三区| 91一区一区三区| 成人午夜看片网址| 免费观看一级特黄欧美大片| 中文字幕一区av| 久久精品一区二区三区不卡牛牛 | 亚洲亚洲精品在线观看| 精品国产乱码久久久久久蜜臀| 欧美日韩一区二区三区在线看 | 国产制服丝袜一区| 一区二区三区四区中文字幕| 综合久久久久久| 久久久久久久国产精品影院| 在线免费观看日韩欧美| 色婷婷av一区二区三区大白胸| 国产精品1024久久| 精品系列免费在线观看| 亚洲6080在线| 亚洲第一在线综合网站| 一区二区三区在线高清| 国产精品久线观看视频| 中日韩免费视频中文字幕| 久久久久久久久久久久电影| 日韩亚洲欧美高清| 一本久道中文字幕精品亚洲嫩| 国产麻豆精品一区二区| 久久99在线观看| 日本不卡在线视频| 青青草原综合久久大伊人精品优势 | 久久久综合视频| 欧美日韩精品免费观看视频| 91毛片在线观看| 91免费在线播放| 色噜噜久久综合| 色婷婷激情久久| 成人黄色小视频在线观看| 国产成人啪午夜精品网站男同| 国内成人精品2018免费看| 久久99精品久久久久久国产越南| 日本最新不卡在线| 国产美女一区二区| 福利一区福利二区| 成人一区二区三区视频在线观看 | 欧美a一区二区| 三级在线观看一区二区| 亚洲高清免费视频| 日韩 欧美一区二区三区| 亚洲综合一区二区精品导航| 亚洲伦理在线免费看| 亚洲综合自拍偷拍| 欧美国产一区在线| 一区二区理论电影在线观看| 一级特黄大欧美久久久| 亚洲最新在线观看| 国产在线麻豆精品观看| 国产成人一区二区精品非洲| 成人精品视频网站| 在线播放欧美女士性生活| 91精品国产aⅴ一区二区| 日韩欧美国产wwwww| 自拍av一区二区三区| 一区二区三区在线免费视频| 午夜视频在线观看一区二区 | 欧美亚洲一区二区在线| 日韩精品在线一区二区| 国产日韩亚洲欧美综合| 亚洲精品老司机| 国产一区在线观看麻豆| 99久久免费视频.com| 欧美老人xxxx18| 日韩精品一区二区三区中文不卡| 国产日韩精品视频一区| 亚洲黄色性网站| 亚洲成a人片在线观看中文| 国产伦精品一区二区三区免费| 99国产精品一区| 日韩午夜在线影院| 亚洲欧美一区二区久久| 久久精品国产精品青草| 99久久久国产精品| 欧美日韩一区二区三区视频| 国产精品美女久久久久高潮| 亚洲1区2区3区视频| 国产福利一区二区三区视频在线| 91精品国产高清一区二区三区| 欧美韩国日本综合| 日韩**一区毛片| 欧美日韩电影在线| 国产精品剧情在线亚洲| 蜜桃一区二区三区在线观看| 成av人片一区二区| 欧美一区二区三区精品| 综合久久综合久久| 国产一区二区调教| 精品国产一区a| 欧美电影影音先锋| 日韩一二三区不卡| 亚洲国产精品久久一线不卡| 972aa.com艺术欧美| 欧美激情自拍偷拍| 国产在线视频精品一区| 欧美成人精品福利| 热久久国产精品| 6080午夜不卡| 日本亚洲一区二区| 91精品国产手机| www.亚洲激情.com| 欧美国产97人人爽人人喊| 国产大陆a不卡| 国产午夜亚洲精品理论片色戒 | 日韩视频免费观看高清在线视频| 日韩成人av影视| 在线不卡的av| 日本欧美一区二区| 精品成人一区二区三区| 国内久久婷婷综合| 老司机午夜精品| 精品捆绑美女sm三区| 国产一区二区在线电影| 亚洲国产精品国自产拍av| zzijzzij亚洲日本少妇熟睡| 亚洲美女免费视频| 欧美日韩久久久| 美女网站色91| 久久毛片高清国产| 99久久综合国产精品| 亚洲午夜免费电影| 4438x成人网最大色成网站| 精品一区在线看| 国产精品天干天干在线综合| 91蝌蚪国产九色| 日韩成人一区二区| 国产偷v国产偷v亚洲高清| 99国内精品久久| 婷婷成人综合网| 久久精品日产第一区二区三区高清版| 风间由美一区二区三区在线观看| 亚洲女人的天堂| 欧美成人一区二区| www.视频一区| 日本成人中文字幕在线视频| 久久久高清一区二区三区|