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

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

?? mmumap.c

?? 這是單板上DPRAM的驅動程序
?? C
字號:
/* @(#) pSOSystem PowerPC/V2.2.2*/
/***********************************************************************/
/*                                                                     */
/*   MODULE:  bsps/fuc8xx/src/mmumap.c                                 */
/*   DATE:    97/07/03                                                 */
/*   PURPOSE: Memory Managment Unit (MMU) mapping module               */
/*                                                                     */
/*---------------------------------------------------------------------*/
/*                                                                     */
/*           Copyright 1998 - 1999, ZHONGXING TELECOM CO.,LTD.         */
/*                      ALL RIGHTS RESERVED                            */
/*                                                                     */
/*---------------------------------------------------------------------*/
/*                                                                     */
/*   The Memory Managment Unit provides translation of effective       */
/*   addresses generated by the fix-point unit or instruction prefetch */
/*   unit into physical address. The MMU also provides cache control   */
/*   for the split code and data cache (like write-through or write-   */
/*   back policies).                                                   */ 
/*                                                                     */
/***********************************************************************/
#include <bspfuncs.h>
#include <icontrol/mpc8xx.h>
#include <serial/smc8xx.h>
#include <lan/lan8xx.h>
#include <machine.h>
#include "../bsp.h"
#include "board.h"
#include <icontrol/mmu8xx.h>
#include <icontrol/pda8xx.h>
#include <pna.h>

#include "sdev.h" /*add by py*/
/***********************************************************************/
/* Local Function Prototypes                                           */
/***********************************************************************/
void MapRegions(void);
void BrdBufDisCacheing(void);

/***********************************************************************/
/* Extern functions                                                    */
/***********************************************************************/
extern void MapVir2RealAddr(UCHAR *VirAddr, UCHAR *RealAddr, ULONG Size, 
                            PAGE_T Attributes, ULONG cachePolic);
void   DisCacheing(UCHAR *VirAddr, ULONG Size, UCHAR Cache);

/***********************************************************************/
/* Global variables                                                    */
/***********************************************************************/
#if (BSP_LAN1 == YES)
extern ULONG  NrTxHdrs;         /* Number of transmit headers */
extern TX_HDR TxHeaders[];      /* The actual headers */
extern UCHAR  RxBuffs[];        /* Receive buffer for lan driver */
extern UCHAR *DummyVar;
#endif

#if (BSP_NEW_SERIAL == YES)
#if BSP_MMU==YES	
extern UCHAR  *gGsBlkArea;      /* GS blocks start address size */
extern ULONG  gGsBlkAreaSize;   /* GS block size in bytes */
extern chan_control channels[]; /* smc8xx channel control structure */
#endif
#else
#define RX_BUF_SIZE     128
#define TX_BUF_SIZE     64
extern  char Smc1_RxChars[];
extern  char Smc2_RxChars[];
extern  char Smc1_TxChars[];
extern  char Smc2_TxChars[];
extern  UCHAR *SerialDummy;
#endif

/***********************************************************************/
/* MapRegions(void): Map the memory and IO regions on the ADS8xx board */ 
/***********************************************************************/
void
MapRegions(void)
{
        PDA    *IOMemMap;
	PAGE_T	Page;
	UCHAR  *Addr;
	ULONG	cachePolicy;

	cachePolicy = CACHE_WRITE_BACK;

        /* Get the pointer to Internal Memory Map */
        IOMemMap = (PDA *)(GetIMMR() & IO_MAP_MASK);

#if ( CS0_SIZE != 0 )
        	Page.Word = CS0_ATTR;
        	MapVir2RealAddr((UCHAR *)CS0_BASE,(UCHAR *)CS0_BASE,CS0_SIZE,
				Page, cachePolicy);
#endif

#if ( CS1_SIZE != 0 )
		Page.Word = CS1_ATTR;
        	MapVir2RealAddr((UCHAR *)CS1_BASE,(UCHAR *)CS1_BASE,CS1_SIZE,
				Page, cachePolicy);
#endif

#if ( CS2_SIZE != 0 )
		Page.Word = CS2_ATTR;
        	MapVir2RealAddr((UCHAR *)CS2_BASE,(UCHAR *)CS2_BASE,CS2_SIZE,
				Page, cachePolicy);
#endif

#if ( CS3_SIZE != 0 )
		Page.Word = CS3_ATTR;
        	MapVir2RealAddr((UCHAR *)CS3_BASE,(UCHAR *)CS3_BASE,CS3_SIZE,
				Page, cachePolicy);
#endif

#if ( CS4_SIZE != 0 )
		Page.Word = CS4_ATTR;
        	MapVir2RealAddr((UCHAR *)CS4_BASE,(UCHAR *)CS4_BASE,CS4_SIZE,
				Page, cachePolicy);
#endif

#if ( CS5_SIZE != 0 )
		Page.Word = CS5_ATTR;
        	MapVir2RealAddr((UCHAR *)CS5_BASE,(UCHAR *)CS5_BASE,CS5_SIZE,
				Page, cachePolicy);
#endif

#if( CS6_SIZE != 0 )
		Page.Word = CS6_ATTR;
        	MapVir2RealAddr((UCHAR *)CS6_BASE,(UCHAR *)CS6_BASE,CS6_SIZE,
				Page, cachePolicy);
#endif

#if ( CS7_SIZE != 0 )
		Page.Word = CS7_ATTR;
        	MapVir2RealAddr((UCHAR *)CS7_BASE,(UCHAR *)CS7_BASE,CS7_SIZE,
				Page, cachePolicy);
#endif

        /*
	 * Mapin the Internal I/O mappped register and Dual-Port
	 * Ram with Cache-Inhibited mode.
         */
        Page.Word               = 0;    /* clear all bits */
        Page.Bit.PageProtMode   = 2;    /* inst: exec/exec, data: rw/rw */
        Page.Bit.PageChangeBit  = 1;    /* changeable pages */
        Page.Bit.PageAccessMode = 0x0c; /* hit for privileged state */
        Page.Bit.PageCacheDis   = 1;    /* Cache inhitbited */
        Page.Bit.PageValid      = 1;    /* page is valid */
 
        Addr = (UCHAR *)IOMemMap;
        MapVir2RealAddr(Addr, Addr, BD_IO_SIZE, Page, cachePolicy);
}

/**************************************************************************/
/* BrdBufDisCacheing(void): Board dependent function to disable cacheing  */
/**************************************************************************/
#include "sdev.h"
void
BrdBufDisCacheing(void)
{
#ifdef USE_UNCACHE_SECTION
	extern char UncacheBgn[], UncacheEnd[], Uncache2Bgn[], Uncache2End[];
        /* Disable/Enable cacheing of SMC IO buffer */
#if BSP_NEW_SERIAL
	#if BSP_MMU == YES
	DisCacheing(gGsBlkArea, gGsBlkAreaSize, CACHE_OFF);
	#endif
#endif
		DisCacheing(UncacheBgn,UncacheEnd-UncacheBgn,CACHE_OFF);
		DisCacheing(Uncache2Bgn,Uncache2End-Uncache2Bgn,CACHE_OFF);
#else /* for version 1.0 */

#if BSP_NEW_SERIAL
	#if BSP_MMU == YES
	DisCacheing(gGsBlkArea, gGsBlkAreaSize, CACHE_OFF);
	DisCacheing((UCHAR *)&channels[0], sizeof(chan_control)*MAX_SMC,
                     CACHE_OFF);
	#endif
#endif
#if (BSP_LAN1 == YES)
        /* Disable cacheing for the LAN driver */
        DisCacheing((UCHAR*)&RxBuffs[0], RXSIZE * NR_RXBUFFS, CACHE_OFF);
        DisCacheing((UCHAR*)&TxHeaders[0], sizeof(TX_HDR)*NrTxHdrs, CACHE_OFF);
        DisCacheing((UCHAR*)&DummyVar, PAGE_SIZE*1, CACHE_OFF);
#endif
        DisCacheing( UncachedBuffer,MAX_UNCACHED_BUFFER_LEN,CACHE_OFF);
#endif
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91.麻豆视频| 日韩二区三区在线观看| 亚洲中国最大av网站| 久久久久久久久久久99999| 日韩限制级电影在线观看| 亚洲免费电影在线| 色老汉一区二区三区| 不卡的电影网站| 最新国产精品久久精品| 免费观看成人av| 日韩欧美黄色影院| 香蕉影视欧美成人| 欧美三级电影网站| 日韩精品国产欧美| 色综合一个色综合亚洲| 久久精品一二三| 成人av在线一区二区| 日韩一区二区三区免费观看| 亚洲成人在线观看视频| 欧美成人vr18sexvr| 国产精品自产自拍| 国产日韩视频一区二区三区| 欧美一区二区三区视频免费播放 | 成人精品一区二区三区四区| 国产精品白丝在线| 色就色 综合激情| 国产伦精一区二区三区| 日韩理论电影院| 精品国产精品一区二区夜夜嗨| 99久久精品国产一区| 久久精品国产亚洲5555| 亚洲成av人**亚洲成av**| 国产视频一区二区三区在线观看| 国产91精品在线观看| 日韩中文字幕一区二区三区| 中文字幕日韩精品一区 | 国产sm精品调教视频网站| 午夜精品久久久久久久久| 中文字幕不卡在线播放| 国产亚洲一二三区| 2022国产精品视频| 欧美大胆人体bbbb| 日韩欧美国产精品一区| 在线不卡中文字幕| 欧美日韩激情一区二区| 欧美三级韩国三级日本三斤| 欧美男生操女生| 国产亚洲福利社区一区| 国产精品国产三级国产普通话蜜臀 | 国产一区二区伦理| 激情综合色播激情啊| 丁香一区二区三区| 7777精品伊人久久久大香线蕉的| 91麻豆精品国产自产在线观看一区| 精品国产欧美一区二区| 国产精品水嫩水嫩| 日本欧美在线观看| 成人免费精品视频| 日韩三级精品电影久久久| 国产精品久久久久四虎| 日本不卡不码高清免费观看| www.亚洲色图.com| 久久亚洲影视婷婷| 久久电影网电视剧免费观看| 色综合一个色综合亚洲| 国产欧美一区二区精品忘忧草 | 日韩欧美www| 午夜精品福利一区二区三区蜜桃| 成人免费看视频| 国产性色一区二区| 国产真实乱偷精品视频免| 91精品视频网| 日本aⅴ免费视频一区二区三区 | 91视频免费看| 亚洲日本va午夜在线电影| 成人av先锋影音| 中文字幕亚洲综合久久菠萝蜜| 狠狠色狠狠色综合系列| www国产精品av| 成人福利视频在线| 国产婷婷色一区二区三区| 国产一区二区三区免费观看 | 日韩欧美国产精品| 奇米在线7777在线精品| 欧美成人激情免费网| 国产揄拍国内精品对白| 中文字幕一区二区三区不卡在线| 成人国产视频在线观看| 依依成人综合视频| 日韩欧美中文字幕制服| 国产激情91久久精品导航| 国产精品卡一卡二| 在线播放欧美女士性生活| 免费观看一级欧美片| 国产三级欧美三级| 色婷婷久久久综合中文字幕| 日韩国产精品91| 中文字幕精品综合| 国产精品欧美一区喷水| 成人在线综合网| 国产欧美日韩精品在线| 激情国产一区二区| 欧美韩国一区二区| 美国一区二区三区在线播放| 欧美日韩激情在线| 亚洲成人午夜影院| 国产亚洲成av人在线观看导航| av在线不卡电影| 国产盗摄精品一区二区三区在线 | 国产中文字幕一区| 亚洲国产一区二区三区青草影视| 欧美一区二区黄| 欧美日韩国产高清一区| 在线欧美日韩国产| 91偷拍与自偷拍精品| 国产成人午夜电影网| 日韩国产精品久久久| 亚洲另类在线视频| 国产欧美综合色| 久久精品人人做人人爽人人 | 日韩一级欧美一级| 精品视频999| 91成人在线观看喷潮| 91成人免费在线视频| 色综合久久综合网| 91精品一区二区三区久久久久久 | 国产精品久久久久久久裸模| 国产日韩欧美麻豆| 亚洲综合男人的天堂| 亚洲综合精品久久| 久久99精品国产.久久久久| 精品影视av免费| 99久久免费视频.com| 在线一区二区视频| 欧美成人激情免费网| 欧美日韩视频在线观看一区二区三区 | 制服.丝袜.亚洲.中文.综合| 91精品国产综合久久久久久| 精品国产乱码91久久久久久网站| 久久精品亚洲精品国产欧美| 国产日产欧美精品一区二区三区| 亚洲美女视频一区| 狠狠色丁香久久婷婷综| 日本高清不卡在线观看| 久久亚洲一区二区三区四区| ●精品国产综合乱码久久久久| 亚洲不卡av一区二区三区| 成人av电影观看| 久久综合久久综合久久| 亚洲精品在线三区| 午夜久久福利影院| 91色|porny| 国产欧美一区二区精品性| 日韩国产成人精品| 欧美婷婷六月丁香综合色| 亚洲天堂免费看| 懂色一区二区三区免费观看| 欧美一区二区网站| 婷婷国产在线综合| 欧美一级爆毛片| 美女在线一区二区| 久久人人超碰精品| 青青草91视频| 久久精品在这里| 成人免费毛片aaaaa**| 亚洲免费av高清| 欧美日韩大陆一区二区| 亚洲123区在线观看| 日韩一区二区在线看片| 奇米综合一区二区三区精品视频| 欧美少妇xxx| 不卡av免费在线观看| 亚洲精品伦理在线| 日韩一区二区影院| 国产成人综合精品三级| 亚洲精品国产视频| 日韩免费一区二区三区在线播放| 国产主播一区二区三区| 久久久www成人免费毛片麻豆| 99久久国产综合精品女不卡| 一区二区三区四区av| 日韩一区二区麻豆国产| 99在线精品观看| 看电影不卡的网站| 亚洲国产毛片aaaaa无费看| 精品国产伦一区二区三区观看方式| 国产传媒久久文化传媒| 丝袜美腿亚洲色图| 中文字幕国产一区| 成人精品视频一区二区三区| 国产精品成人免费| 91精品国产高清一区二区三区蜜臀| 成人美女在线观看| 激情文学综合插| 久久精品国产精品亚洲综合| 亚洲国产精品久久人人爱蜜臀| 国产精品美女久久福利网站| 久久久综合网站| 久久综合999| 久久一区二区三区四区|