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

📄 mpsclow_dy4.h

📁 Curtiss-Wright Controls Embedded Computing公司的cw183板bsp源代码
💻 H
字号:
/* mpscLow_dy4.h - Header File for low level definitions of MPSC on GT-64x60 *//************************************************************************** * *   Copyright (c) 2005 Curtiss-Wright Controls, Inc. All rights *   reserved.  This Source Code is the Property of Curtiss-Wright *   Controls, Inc. and can only be used in accordance with Source *   Code License Agreement(s) of Curtiss-Wright Controls, Inc. or any *   of its subsidiaries. * **************************************************************************//********************************************************************************              (c), Copyright 2001, Marvell International Ltd.                 ** THIS CODE CONTAINS CONFIDENTIAL INFORMATION OF MARVELL SEMICONDUCTOR, INC.   ** NO RIGHTS ARE GRANTED HEREIN UNDER ANY PATENT, MASK WORK RIGHT OR COPYRIGHT  ** OF MARVELL OR ANY THIRD PARTY. MARVELL RESERVES THE RIGHT AT ITS SOLE        ** DISCRETION TO REQUEST THAT THIS CODE BE IMMEDIATELY RETURNED TO MARVELL.     ** THIS CODE IS PROVIDED "AS IS". MARVELL MAKES NO WARRANTIES, EXPRESS, IMPLIED ** OR OTHERWISE, REGARDING ITS ACCURACY, COMPLETENESS OR PERFORMANCE.           *********************************************************************************//*modification history--------------------07e,08dec05,tis  rename Discovery_II directory to Discovery_III CR#12835.01d,18Jan05,dle  CR kanata#247701c,02Nov02,deb  PTR  Add defines for CDV,MRR,Serial Port Mux, and MPSC Cmds01b,07may02,aak		integrate into VME-181 BSP rel 1.001a,26sep01,marvell EV-64260A-BP BSP Version 2.2/1*/#ifndef _MPSC_LOW_#define _MPSC_LOW_/* includes */#include "h/drv/dy4/boardName.h"#if defined (SCP_124) || defined (VME_183)#include "h/drv/discovery_III/gtCore_dy4.h"#else#include "h/drv/discovery_II/gtCore_dy4.h"#endif /* SCP_124 *//* defines  */#define MPSC_GAP		0x01000#define TRANSMIT_CLOCK_DIVIDER_FIELD    0x00000600 #define RECEIVE_CLOCK_DIVIDER_FIELD     0x06000000 #define TRANSMIT_CLOCK_DIVIDER_BIT      9#define RECEIVE_CLOCK_DIVIDER_BIT       25#define CDV_X1     0x0#define CDV_X8     0x1#define CDV_X16    0x2#define CDV_X32    0x3#define MMCRL_BASE	    MPSC_MAIN_CONFIG_LOW(0)#define MMCRH_BASE	    MPSC_MAIN_CONFIG_HIGH(0)#define MPCR_BASE		MPSC_PROTOCOL_CONFIG(0)#define CHR_BASE		MPSC_CHANNEL_REG1(0)#define MMCRL(mpsc_number) 		MMCRL_BASE + (mpsc_number * MPSC_GAP)#define MMCRH(mpsc_number) 		MMCRH_BASE + (mpsc_number * MPSC_GAP)#define MPCR(mpsc_number) 		MPCR_BASE + (mpsc_number * MPSC_GAP)#define CHR(mpsc_number,number)	CHR_BASE+(mpsc_number * MPSC_GAP)+\                                ((number-1)*4)#define NUMBER_OF_CHANNEL_REGISTERS         10#define FIRST_CHANNEL                       1/* auto recognition of MPSC's ports */#define MPSC_0_3_EXIST_REG                  0xbf000000#define MPSC_4_7_EXIST_REG                  0xbf100000#define MPSC_PORT_NOT_EXIST                 0xf#define MPSC_PORT_CONNECTED_TO_LVDS         0xc#define MPSC_PORT_AS_UART                   0xe#define MPSC_PORT_CONNECTED_TO_V35          0xd#define MPSC_PORT_CONNECTED_TO_WIC          0xb#define MPSC0_GPP                           0xff80ffff#define MPSC0_OUT_PUT                       0x007f0000#define MPSC1_GPP                           0x80ffffff#define MPSC1_OUT_PUT                       0x7f000000#define MPSC2_GPP                           0xffffff80#define MPSC2_OUT_PUT                       0x0000007f#define MPSC3_GPP                           0xffff80ff#define MPSC3_OUT_PUT                       0x00007f00#define MPSC4_GPP                           0xff80ffff#define MPSC4_OUT_PUT                       0x007f0000#define MPSC5_GPP                           0x80ffffff#define MPSC5_OUT_PUT                       0x7f000000#define HDLC_PROTOCOL                       0#define UART_PROTOCOL                       1#define BISYNC_PROTOCOL                     2#define TRANSPARENT_PROTOCOL                3#define ASYNC_PROTOCOL                      4/* this macros are used to enable access to MPSC_CHANNEL_STRUCT */            #define ENTER_HUNT                          (1<<31)#define ABORT_RECEPTION                     (1<<23)#define STOP_TRANSMITION                    (1<<16)#define ABORT_TRANSMITION                   (1<<7)#define RX_ENTER_HUNT_STATE                 (1<<5)/* MRR Defines */#define MPSC_MRR_MASK               0x07/* Serial Port Multiplex defines */#define SERIAL_PORT_MUX_MASK       0x0F#define SERIAL_PORT_MUX_HIGH_Z     0x00#define SERIAL_PORT_MUX_MPSC       0x01#define SERIAL_PORT_MUX_MII        0x01#define SERIAL_PORT_MUX_RMII       0x02/* typedefs */typedef struct MpscMainSt{    unsigned int      low;    unsigned int      high;} MPSC_MAIN_STRUCT;typedef struct mpscChannelSTRUCT{    unsigned int        chr1;    unsigned int        chr2;    unsigned int        chr3;    unsigned int        chr4;    unsigned int        chr5;    unsigned int        chr6;    unsigned int        chr7;    unsigned int        chr8;    unsigned int        chr9;    unsigned int        chr10;} MPSC_CHANNEL_STRUCT;  typedef struct mpscExist{    unsigned int      reserved2:16;    unsigned int      mpsc3:4;    unsigned int      mpsc2:4;    unsigned int      mpsc1:4;    unsigned int      mpsc0:4;} MPSC_PORT_0_3_EXIST;typedef struct mpsc4_7Exist{    unsigned int      reserved:16;    unsigned int      mpsc7:4;    unsigned int      mpsc6:4;    unsigned int      mpsc5:4;    unsigned int      mpsc4:4;} MPSC_PORT_4_7_EXIST;typedef enum {    MPSC_PORT0,     MPSC_PORT1,                              MPSC_PORT2} MPSC_PORTS;/* mpscLow.h API list */bool mpscSetMainConfReg (MPSC_MAIN_STRUCT* MpscMain,unsigned int mpsc_number);bool mpscGetMainConfReg (MPSC_MAIN_STRUCT* MpscMain,unsigned int mpsc_number);bool mpscMainConfRegGetDefault (MPSC_MAIN_STRUCT* MpscMain,                                unsigned int mpsc_number);bool mpscMainConfRegModifyDefault (MPSC_MAIN_STRUCT* MpscMain,                                   unsigned int mpsc_number);bool mpscSetChannelReg (MPSC_CHANNEL_STRUCT* MpscChannel,                        unsigned int mpsc_number,unsigned int ChannelRegNum,                        unsigned int lengh);bool mpscGetChannelReg (MPSC_CHANNEL_STRUCT* MpscChannel,                        unsigned int mpsc_number,unsigned int ChannelRegNum,                        unsigned int lengh);bool mpscChannelRegGetDefault (MPSC_CHANNEL_STRUCT* MpscChannel,                               unsigned int mpsc_number,                               unsigned int ChannelRegNum,unsigned int lengh);bool mpscChannelRegModifyDefault (MPSC_CHANNEL_STRUCT* MpscChannel,                                  unsigned int mpsc_number,                                  unsigned int ChannelRegNum,                                  unsigned int lengh);bool mpscSetProtocolConfReg (unsigned int* ProtocolConf,                             unsigned int mpsc_number);bool mpscGetProtocolConfReg (unsigned int* ProtocolConf,                             unsigned int mpsc_number);bool mpscProtocolConfRegGetDefault (unsigned int* ProtocolConf,                                    unsigned int mpsc_number);bool mpscProtocolConfRegModifyDefault (unsigned int* ProtocolConf,                                       unsigned int mpsc_number);unsigned int mpscGetNumber (unsigned int port);#define MPSC_SET_MAIN_CONF_REG                mpscSetMainConfReg#define MPSC_GET_MAIN_CONF_REG                mpscGetMainConfReg#define MPSC_MAIN_CONF_REG_GET_DEFAULT        mpscMainConfRegGetDefault#define MPSC_MAIN_CONF_REG_MODIFY_DEFAULT     mpscMainConfRegModifyDefault#define MPSC_SET_CHANNEL_REG                  mpscSetChannelReg#define MPSC_GET_CHANNEL_REG                  mpscGetChannelReg#define MPSC_CHANNEL_REG_GET_DEFAULT          mpscChannelRegGetDefault#define MPSC_CHANNEL_REG_MODIFY_DEFAULT       mpscChannelRegModifyDefault#define MPSC_SET_PROTOCOL_CONF_REG            mpscSetProtocolConfReg#define MPSC_GET_PROTOCOL_CONF_REG            mpscGetProtocolConfReg#define MPSC_PROTOCOL_CONF_REG_GET_DEFAULT    mpscProtocolConfRegGetDefault#define MPSC_PROTOCOL_CONF_REG_MODIFY_DEFAULT mpscProtocolConfRegModifyDefault#endif /* _MPSC_LOW_ */

⌨️ 快捷键说明

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