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

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

?? sysserial.c

?? 三星公司出arm7內核4510VXWORKS環境下驅動開發包
?? C
字號:
/* sysSerial.c - Samsung SNDS100 serial device initialization */

/* Copyright 1996-1998 Wind River Systems, Inc. */
#include "copyright_wrs.h"

/*
modification history
--------------------
01d,23feb98,jpd  comments changes.
01c,26nov97,cdp  added sysSerialReset; documentation/tidy.
01b,27oct97,kkk  took out "EOF" line at end of file.
01a,03jul96,cdp  written.
*/

/*
DESCRIPTION
This file contains the board-specific routines for serial channel
initialization of the Samsung SNDS100 development board.

SEE ALSO:
.I "Samsung KS32C50100 Microcontroller User's Manual."
*/


#include "vxWorks.h"
#include "iv.h"
#include "intLib.h"
#include "config.h"
#include "sysLib.h"
#include "sndsSio.h"


/* device initialization structure */

typedef struct
    {
    UINT  vectorRx;
    UINT  vectorTx;
    UINT32 *baseAdrs;
    UINT  regSpace;
    UINT  intLevelRx;
    UINT  intLevelTx;
    } SNDS_CHAN_PARAS;


/* Local data structures */

LOCAL SNDS_CHAN_PARAS devParas[] =
    {
      {INT_VEC_UARTRX0, INT_VEC_UARTTX0, (UINT32 *)SERIAL_A_BASE_ADR, UART_REG_ADDR_INTERVAL,
	  INT_LVL_UARTRX0, INT_LVL_UARTTX0},
      {INT_VEC_UARTRX1, INT_VEC_UARTTX1, (UINT32 *)SERIAL_B_BASE_ADR, UART_REG_ADDR_INTERVAL,
	  INT_LVL_UARTRX1, INT_LVL_UARTTX1}
    };
 
LOCAL SNDS_CHAN sndsChan[N_SNDS_UART_CHANNELS];

/*
 * Array of pointers to all serial channels configured in system.
 * See sioChanGet(). It is this array that maps channel pointers
 * to standard device names.  The first entry will become "/tyCo/0",
 * the second "/tyCo/1", and so forth.
 */

SIO_CHAN * sysSioChans [] =
    {
    &sndsChan[0].sio, /* /tyCo/0 */
    &sndsChan[1].sio, /* /tyCo/1 */
    };


/* forward declarations */

/******************************************************************************
*
* sysSerialHwInit - initialize the BSP serial devices to a quiesent state
*
* This routine initializes the BSP serial device descriptors and puts the
* devices in a quiesent state.  It is called from sysHwInit() with
* interrupts locked.
*
* RETURNS: N/A
*
* SEE ALSO: sysHwInit()
*/

void sysSerialHwInit (void)
    {
    int i;

    for (i = 0; i < N_SNDS_UART_CHANNELS; i++)
	{
	sndsChan[i].regDelta = devParas[i].regSpace;
	sndsChan[i].regs = devParas[i].baseAdrs;
	sndsChan[i].baudRate = CONSOLE_BAUD_RATE;
/*	sndsChan[i].level = devParas[i].intLevel;	temp mod NB 4/9/99 - member not used*/

	/*
	 * Initialise driver functions, getTxChar, putRcvChar and channelMode
	 * and initialise UART
	 */

	sndsDevInit(&sndsChan[i]);
	}
    }

/******************************************************************************
*
* sysSerialHwInit2 - connect BSP serial device interrupts
*
* This routine connects the BSP serial device interrupts.  It is called from
* sysHwInit2().  Serial device interrupts could not be connected in
* sysSerialHwInit() because the kernel memory allocator was not initialized
* at that point, and intConnect() may call malloc(). 
* 
* RETURNS: N/A 
*
* SEE ALSO: sysHwInit2()
*/

void sysSerialHwInit2 (void)
    {
    int i;

    for (i = 0; i < N_SNDS_UART_CHANNELS; i++)
	{
	/*
	 * Connect and enable the interrupt.
	 * We would like to check the return value from this and log a message
	 * if it failed. However, logLib has not been initialised yet, so we
	 * cannot log a message, so there's little point in checking it.
	 */

	(void) intConnect (INUM_TO_IVEC(devParas[i].vectorTx),
			   sndsIntTx, (int) &sndsChan[i] );
	(void) intConnect (INUM_TO_IVEC(devParas[i].vectorRx),
			   sndsIntRcv, (int) &sndsChan[i] );

	intEnable (devParas[i].intLevelRx);
	sndsDevInit2(&sndsChan[i]);
	}
    }

/******************************************************************************
*
* sysSerialChanGet - get the SIO_CHAN device associated with a serial channel
*
* This routine returns a pointer to the SIO_CHAN device associated with
* a specified serial channel.  It is called by usrRoot() to obtain
* pointers when creating the system serial devices '/tyCo/x'.  It is also
* used by the WDB agent to locate its serial channel.
*
* RETURNS: A pointer to the SIO_CHAN structure for the channel, or ERROR
* if the channel is invalid.
*/

SIO_CHAN * sysSerialChanGet
    (
    int channel         /* serial channel */
    )
    {
    if (channel < 0 || channel >= (int)(NELEMENTS(sysSioChans)))
	return (SIO_CHAN *)ERROR;

    return sysSioChans[channel];
    }

/******************************************************************************
*
* sysSerialReset - reset the sio devices to a quiet state
*
* Reset all devices to prevent them from generating interrupts.
*
* This is called from sysToMonitor to shutdown the system gracefully before
* transferring to the bootroms.
*
* RETURNS: N/A.
*/

void sysSerialReset (void)
    {
    int i;

    for (i = 0; i < N_SNDS_UART_CHANNELS; i++)
	{
	/* disable serial interrupts */

	intDisable (devParas[i].intLevelTx);
	intDisable (devParas[i].intLevelRx);
	}
    }

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品一卡二卡| 福利电影一区二区| 国产色综合久久| 欧美日韩一区二区电影| 国产真实乱子伦精品视频| 玉米视频成人免费看| 337p粉嫩大胆色噜噜噜噜亚洲| 99re66热这里只有精品3直播 | 精品国产乱码久久久久久老虎 | 91麻豆精东视频| 久久精品国产亚洲aⅴ| 中文字幕精品综合| 欧美一区二区私人影院日本| 日韩中文字幕不卡| 亚洲精品中文在线| 日韩和欧美一区二区三区| 国产精品欧美经典| 久久麻豆一区二区| 欧美成人激情免费网| 欧美片网站yy| 在线视频欧美精品| 91麻豆免费看| 91视频一区二区三区| 丰满少妇在线播放bd日韩电影| 蜜桃视频一区二区三区在线观看| 亚洲国产综合在线| 亚洲美女精品一区| 亚洲日本在线看| 中文字幕一区在线观看| 国产日产精品1区| 久久品道一品道久久精品| 日韩区在线观看| 日韩一卡二卡三卡四卡| 日韩一卡二卡三卡国产欧美| 91麻豆精品国产91久久久久久久久| 欧美在线三级电影| 欧美图区在线视频| 欧美日韩高清不卡| 欧美精品一卡二卡| 51精品秘密在线观看| 欧美人与性动xxxx| 欧美一区二区日韩一区二区| 欧美高清dvd| 4438亚洲最大| 日韩欧美123| 日韩一二三四区| 亚洲精品在线网站| 国产欧美视频一区二区三区| 国产欧美日韩视频在线观看| 国产精品久久久久久久久免费相片 | 国产精品伦理一区二区| 欧美极品少妇xxxxⅹ高跟鞋 | 色哟哟精品一区| 91国产成人在线| 欧美丝袜自拍制服另类| 欧美高清性hdvideosex| 日韩欧美一级二级三级| 精品国产伦理网| 国产精品成人网| 亚洲一区二区美女| 另类专区欧美蜜桃臀第一页| 久久综合久久综合久久综合| 国产欧美一区二区三区沐欲| 中文字幕一区二区三区视频| 一区二区三区在线免费观看| 五月婷婷综合在线| 国内成人精品2018免费看| 成人永久aaa| 欧美伊人久久久久久午夜久久久久| 欧美日韩成人综合天天影院| 精品成人在线观看| 国产精品国产三级国产专播品爱网 | 国产91精品一区二区麻豆亚洲| 国产91色综合久久免费分享| 色婷婷国产精品久久包臀| 在线播放视频一区| 国产人久久人人人人爽| 亚洲精品视频在线| 精品一区二区三区在线视频| 成人午夜视频网站| 欧美综合欧美视频| 久久色在线视频| 一区二区三区加勒比av| 黄色日韩网站视频| 91成人在线精品| 久久精品在这里| 亚洲va国产天堂va久久en| 国产精品一区二区三区99| 91国产成人在线| 欧美激情在线观看视频免费| 视频一区免费在线观看| av激情综合网| 欧美本精品男人aⅴ天堂| 亚洲一线二线三线久久久| 国产在线精品免费| 欧美裸体一区二区三区| 国产精品久久综合| 久热成人在线视频| 一本到高清视频免费精品| 欧美mv和日韩mv的网站| 亚洲一区中文日韩| av在线综合网| 日韩精品专区在线| 亚洲国产日韩a在线播放性色| 国产九色精品成人porny| 欧美日韩精品一区二区三区蜜桃 | 亚洲精品欧美二区三区中文字幕| 国产在线不卡一区| 欧美老年两性高潮| 亚洲精品日韩专区silk| 国产91精品欧美| 久久久五月婷婷| 51精品国自产在线| 亚洲午夜免费福利视频| 91首页免费视频| 国产精品色婷婷久久58| 精品无人区卡一卡二卡三乱码免费卡| 欧美无乱码久久久免费午夜一区| 136国产福利精品导航| 国产剧情一区二区三区| 2024国产精品| 精品在线播放免费| 日韩欧美一级二级三级| 日韩国产精品久久| 欧美精品一二三四| 亚洲成人av一区二区三区| 欧洲人成人精品| 一区二区三区产品免费精品久久75| 成人av影院在线| 国产精品伦一区| av亚洲精华国产精华精| 日韩理论在线观看| 91亚洲精品久久久蜜桃网站| 国产精品久久久久久久久图文区| 成人午夜视频在线观看| 国产精品久久久久7777按摩| 成人91在线观看| 亚洲婷婷在线视频| 91在线视频播放| 一区二区三区欧美日| 久久丁香综合五月国产三级网站| 91麻豆精品国产自产在线观看一区| 亚洲动漫第一页| 欧美日韩在线播放三区四区| 亚洲自拍偷拍av| 欧美一区二区在线观看| 免费看欧美美女黄的网站| 日韩视频免费直播| 国产精品亚洲一区二区三区妖精 | 欧美老肥妇做.爰bbww视频| 日韩在线卡一卡二| 日韩欧美亚洲国产另类 | 欧美性做爰猛烈叫床潮| 五月天国产精品| 2024国产精品| 99麻豆久久久国产精品免费| 一区二区三区在线免费观看| 欧美美女黄视频| 国产一区二三区| 日韩一区中文字幕| 欧美日韩精品是欧美日韩精品| 奇米影视一区二区三区小说| 久久久久久电影| 99精品欧美一区二区三区小说 | 欧美日韩在线播| 美女一区二区视频| 中文字幕欧美日韩一区| 在线日韩一区二区| 老司机精品视频在线| 国产精品沙发午睡系列990531| 中文字幕日本乱码精品影院| 欧美色网一区二区| 国产在线国偷精品产拍免费yy| 日韩理论片一区二区| 日韩一本二本av| 不卡一区二区三区四区| 偷窥少妇高潮呻吟av久久免费| 久久综合九色综合97_久久久| 色香蕉久久蜜桃| 久久99精品久久久久婷婷| 亚洲另类色综合网站| 日韩欧美一区二区视频| 91麻豆swag| 国产真实乱偷精品视频免| 亚洲小说欧美激情另类| 国产日韩亚洲欧美综合| 欧美日韩高清一区二区| 成人免费va视频| 久久99国产精品尤物| 夜夜亚洲天天久久| 国产网红主播福利一区二区| 欧美乱妇15p| 91丝袜国产在线播放| 激情成人午夜视频| 性欧美大战久久久久久久久| 国产精品久久久久影院亚瑟| 欧美不卡一区二区三区四区| 欧美在线你懂的| 99久久精品国产一区| 国产高清视频一区|