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

📄 frceagle02.c

📁 IXP425的BSP代码
💻 C
字号:
/* frcEagle02.c - Force Eagle-02 module library *//* Copyright 1984-1996 Wind River Systems, Inc. */#include "copyright_wrs.h"/*modification history--------------------01c,24jun96,wlf  doc: cleanup.01b,20oct92,caf  changed sysEagle01Init() to sysEagleInit(), made it NOMANUAL.		 initialized *FGA_ICRLOCAL6.01a,16jul92,caf  created.*//*DESCRIPTIONThis library contains routines to manipulate the Force EAGLE-02module.  This library addresses initialization plus the LANCE Ethernetfunction of the EAGLE-02.*//* includes */#include "drv/multi/fc68165.h"/* globals */FC68165 *stIOC= (FC68165 *) FRC40_E002_IOC_BASE_ADRS;/********************************************************************************* sysEagleInit - initialize the Force EAGLE-02 module hardware** This routine initializes the Force EAGLE-02 module hardware.** RETURNS: N/A*/void sysEagleInit (void)    {    /* Do FC68165 init - IOC and FLASH set by FGA002 Boot Software */    stIOC->cs_range [FRC40_E002_IOCCS_VSB1] =	FRC40_E002_VSB1_BASE_ADRS   |						FRC40_E002_VSB1_SIZE	    |						IOC_CSRNG_FLXI		    |						IOC_CSRNG_SELCODE_SUPRONLY  |						IOC_CSRNG_CACHEINHIB;    stIOC->cs_range [FRC40_E002_IOCCS_CSR] =	FRC40_E002_CSR_BASE_ADRS    |						FRC40_E002_CSR_SIZE	    |						IOC_CSRNG_FLXI		    |						IOC_CSRNG_SELCODE_SUPRONLY  |						IOC_CSRNG_CACHEINHIB;    stIOC->cs_range [FRC40_E002_IOCCS_VSB2] =	FRC40_E002_VSB2_BASE_ADRS   |						FRC40_E002_VSB2_SIZE	    |						IOC_CSRNG_FLXI		    |						IOC_CSRNG_SELCODE_SUPRONLY  |						IOC_CSRNG_CACHEINHIB;    stIOC->cs_range [FRC40_E002_IOCCS_SRAM] =	FRC40_E002_SRAM_BASE_ADRS   |						FRC40_E002_SRAM_SIZE	    |						IOC_CSRNG_FLXI		    |						IOC_CSRNG_SELCODE_SUPRONLY  |						IOC_CSRNG_CACHEINHIB;    stIOC->cs_range [FRC40_E002_IOCCS_LANCE] =	FRC40_E002_LANCE_BASE_ADRS  |						FRC40_E002_LANCE_SIZE	    |						IOC_CSRNG_FLXI		    |						IOC_CSRNG_SELCODE_SUPRONLY  |						IOC_CSRNG_CACHEINHIB;    stIOC->cs_config [FRC40_E002_IOCCS_VSB1] =	IOC_CSCFG_FLXI_SCS	    |						IOC_CSCFG_FLXI_SBS	    |						IOC_CSCFG_FLXI_BRDA	    |						IOC_CSCFG_FLXI_BRDE	    |						IOC_CSCFG_FLXI_WAITS_15	    |						IOC_CSCFG_FLXI_STROBE_WORD  |						IOC_CSCFG_FLXI_DSACK_NONE;    stIOC->cs_config [FRC40_E002_IOCCS_CSR] =	IOC_CSCFG_FLXI_SCS	    |						IOC_CSCFG_FLXI_SBS	    |						IOC_CSCFG_FLXI_BRDA	    |						IOC_CSCFG_FLXI_BRDE	    |						IOC_CSCFG_FLXI_WAITS_15	    |						IOC_CSCFG_FLXI_STROBE_WORD  |						IOC_CSCFG_FLXI_DSACK_NONE;    stIOC->cs_config [FRC40_E002_IOCCS_VSB2] =	IOC_CSCFG_FLXI_SCS	    |						IOC_CSCFG_FLXI_SBS	    |						IOC_CSCFG_FLXI_BRDA	    |						IOC_CSCFG_FLXI_BRDE	    |						IOC_CSCFG_FLXI_WAITS_15	    |						IOC_CSCFG_FLXI_STROBE_WORD  |						IOC_CSCFG_FLXI_DSACK_NONE;    stIOC->cs_config [FRC40_E002_IOCCS_SRAM] =	IOC_CSCFG_FLXI_SCS	    |						IOC_CSCFG_FLXI_SBS	    |						IOC_CSCFG_FLXI_BRDA	    |						IOC_CSCFG_FLXI_BRDE	    |						IOC_CSCFG_FLXI_WAITS_15	    |						IOC_CSCFG_FLXI_STROBE_WORD  |						IOC_CSCFG_FLXI_DSACK_NONE;    stIOC->cs_config [FRC40_E002_IOCCS_LANCE] =	IOC_CSCFG_FLXI_SCS	    |						IOC_CSCFG_FLXI_SBS	    |						IOC_CSCFG_FLXI_BRDA	    |						IOC_CSCFG_FLXI_BRDE	    |						IOC_CSCFG_FLXI_WAITS_15	    |						IOC_CSCFG_FLXI_STROBE_WORD  |						IOC_CSCFG_FLXI_DSACK_NONE;    /* extended interrupt control registers */    *FGA_ICRLOCAL1 = INT_LVL_VSB | FGA_ICR_ACTIVITY;    *FGA_ICRLOCAL6 = NULL;    *FGA_ICRLOCAL7 = INT_LVL_LANCE;    }/********************************************************************************* sysLanIntEnable - enable a LAN interrupt level** This routine enables interrupts for the on-board LAN chip at a specified* level.  LAN interrupts are controlled by the FGA-002 chip.** RETURNS: OK, always.** SEE ALSO: sysLanIntDisable()*/STATUS sysLanIntEnable    (    int intLevel        /* interrupt level to enable */    )    {    /* unmask local LANCE interrupt */    *FGA_ICRLOCAL7 |= FGA_ICR_ENABLE;    return (OK);    }/********************************************************************************* sysLanIntDisable - disable a LAN interrupt level** This routine disables a specified interrupt level for the on-board LAN chip.* LAN interrupts are controlled by the FGA-002 chip.** RETURNS: OK, always.** SEE ALSO: sysLanIntEnable()*/STATUS sysLanIntDisable (void)    {    /* mask LANCE interrupt */    *FGA_ICRLOCAL7 &= ~FGA_ICR_ENABLE;    return (OK);    }

⌨️ 快捷键说明

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