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

📄 omap30_tcif.c

📁 有关于USB的一些主机端驱动
💻 C
📖 第 1 页 / 共 2 页
字号:
//-------------------------------------------------------------------------------
//          TEXAS INSTRUMENTS INCORPORATED PROPRIETARY INFORMATION  
//   Property of Texas Instruments
//   For Unrestricted Internal Use Only
//   Unauthorized reprofuction and/or distribution is strictly prohibited.
//   This product is protected under copyright law and trade secret law
//   as an unpublished work
//   Created 2000,  (C) Copyright 2000 Texas Instruments. All rights reserved
//
//-------------------------------------------------------------------------------
#include "omap30.h"

//-------------------------------------------------------------------------------
//
//  FUNCTIONS
//
//-------------------------------------------------------------------------------

//-------------------------------------------------------------------------------
// NAME         : TCIF_SetEMIFSPriority
// DESCRIPTION  : Configure the Emif slow priority
// PARAMETERS  :   Host        from 0 to 15
//                 Dma         from 0 to 15  
//                 Dsp         from 0 to 7  
//                 Arm         from 0 to 7  
// RETURN VALUE : None
//------------------------------------------------------------------------------- 
void TCIF_SetEMIFSPriority(UWORD8 Host, UWORD8 Dma, UWORD8 Dsp, UWORD8 Arm)
{
UWORD32 PriorityReg;
   
  SetField(PriorityReg,TC_EMIFS_PRIO_LBHOST,Host); 
  SetField(PriorityReg,TC_EMIFS_PRIO_DMA,Dma); 
  SetField(PriorityReg,TC_EMIFS_PRIO_DSP,Dsp); 
  SetField(PriorityReg,TC_EMIFS_PRIO_ARM,Arm);

  TC_EMIFS_PRIO= PriorityReg;
}

//-------------------------------------------------------------------------------
// NAME         : TCIF_SetEMIFFPriority
// DESCRIPTION  : Configure the Emif slow priority
// PARAMETERS  :   Host        from 0 to 15
//                 Dma         from 0 to 15  
//                 Dsp         from 0 to 7  
//                 Arm         from 0 to 7  
// RETURN VALUE : None
//------------------------------------------------------------------------------- 
void TCIF_SetEMIFFPriority(UWORD8 Host, UWORD8 Dma, UWORD8 Dsp, UWORD8 Arm)
{
UWORD32 PriorityReg;

   
  SetField(PriorityReg,TC_EMIFF_PRIO_LBHOST,Host); 
  SetField(PriorityReg,TC_EMIFF_PRIO_DMA,Dma); 
  SetField(PriorityReg,TC_EMIFF_PRIO_DSP,Dsp); 
  SetField(PriorityReg,TC_EMIFF_PRIO_ARM,Arm);

  TC_EMIFF_PRIO= PriorityReg;

}
 
//-------------------------------------------------------------------------------
// NAME         : TCIF_SetImifPriority
// DESCRIPTION  : Configure the Imif priority
// PARAMETERS  :   Host        from 0 to 15
//                 Dma         from 0 to 15  
//                 Dsp         from 0 to 7  
//                 Arm         from 0 to 7  
// RETURN VALUE : None
//------------------------------------------------------------------------------- 
void TCIF_SetIMIFPriority(UWORD8 Host, UWORD8 Dma, UWORD8 Dsp, UWORD8 Arm)
{
UWORD32 PriorityReg;

   
  SetField(PriorityReg,TC_IMIF_PRIO_LBHOST,Host); 
  SetField(PriorityReg,TC_IMIF_PRIO_DMA,Dma); 
  SetField(PriorityReg,TC_IMIF_PRIO_DSP,Dsp); 
  SetField(PriorityReg,TC_IMIF_PRIO_ARM,Arm);

  TC_IMIF_PRIO= PriorityReg;

}

//-------------------------------------------------------------------------------
// NAME         : TCIF_EmifSlowCommonConfig
// DESCRIPTION  : Configure the EMIF slow global register
// PARAMETERS  :   GlobalPowerDown GLOBAL_POWER_DOWN_DISABLE or 
//				   GLOBAL_POWER_DOWN_ENABLE
//                 ImifPowerDown   IMIF_POWER_DOWN_DISABLE or
//				   IMIF_POWER_DOWN_ENABLE
//                 WriteProtect	   WRITE_PROTECT_ENABLE
//                                 WRITE_PROTECT_DISABLE
// RETURN VALUE : None
//------------------------------------------------------------------------------- 
void TCIF_EmifSlowCommonConfig(    BOOL      GlobalPowerDown,
                                   UWORD8    ImifPowerDown,
                                   UWORD8    WriteProtect
                                   )
{
UWORD32 temp;

 temp = TC_EMIFS_GLB_CONFIG;
 SetField(temp,TC_EMIFS_GLB_CONFIG_PWD_EN,GlobalPowerDown); 
 SetField(temp,TC_EMIFS_GLB_CONFIG_PDE,ImifPowerDown); 
 SetField(temp,TC_EMIFS_GLB_CONFIG_WP,WriteProtect); 
 TC_EMIFS_GLB_CONFIG=temp;
}

//-------------------------------------------------------------------------------
// NAME         : TCIF_SelectBootMode
// DESCRIPTION  : Select OMAP boot Mode: CS0 CS3 dynamically.
// PARAMETERS  :  BootMode   BOOT_MODE_CS0 
//                           BOOT_MODE_CS3
// RETURN VALUE : None
//-------------------------------------------------------------------------------
void TCIF_SelectBootMode(UWORD8 BootMode)
{
UWORD32 temp;

 temp = TC_EMIFS_GLB_CONFIG;
 SetField(temp,TC_EMIFS_GLB_CONFIG_BM,BootMode); 
 TC_EMIFS_GLB_CONFIG=temp;
}

//-------------------------------------------------------------------------------
// NAME        : TCIF_EmifSlowConfigChipSelect
// DESCRIPTION : Initialize the Slow Config register for each Config spec
// SYNOPSYS    : void TCIF_EmifSlowConfigChipSelect( UWORD8    SlowChipSelect,   
//                                                   BOOL      IsItFlashIntel,   
//                                                   BOOL      BusWidth,         
//                                                   UWORD8    ReadMode,         
//                                                   UWORD8    PgwstOrWelen,     
//                                                   UWORD8    WriteWaitState,   
//                                                   UWORD8    ReadWaitState,    
//                                                   BOOL      PipelineFlowthroug
//                                                   BOOL      Retiming,         
//                                                   UWORD8    FlashClockDivider)
// PARAMETERS  :    SlowChipSelect             TCIF_Slow_nCS0
//                                             TCIF_Slow_nCS1
//                                             TCIF_Slow_nCS2
//                                             TCIF_Slow_nCS3
//                  IsItFlashIntel             FLASH_INTEL or NO_FLASH_INTEL 
//                  BusWidth                   MEMORY_16BIT_WIDE or MEMORY_32BIT_WIDE
//                  ReadMode                   ASYNC_READ            
//                                             PAGE_ROM_READ_WORDS4  
//                                             PAGE_ROM_READ_WORDS8  
//                                             PAGE_ROM_READ_WORDS16 
//                                             SYNC_BURST_READ_TI    
//                                             SYNC_BURST_READ_SMART3
//                                             SYNC_READ_WRITE_ZBT   
//                  PgwstOrWelen               WE length (0-15)
//                  WriteWaitState             Number of write wait state (0-15)
//                  ReadWaitState              Number of read wait state (0-5)
//                  Retiming                   RETIME_ENABLE or RETIME_DISABLE
//                  FlashClockDivider          TCIF_DIVIDE_BY_1
//                                             TCIF_DIVIDE_BY_2
//                                             TCIF_DIVIDE_BY_4
//                                             TCIF_DIVIDE_BY_6 
// RETURN VALUE: None
// LIMITATIONS : None
//-------------------------------------------------------------------------------
void TCIF_EmifSlowConfigChipSelect( UWORD8    SlowChipSelect,
                                    BOOL      IsItFlashIntel,
                                    BOOL      BusWidth,
                                    UWORD8    ReadMode,
                                    UWORD8    PgwstOrWelen,
                                    UWORD8    WriteWaitState,
                                    UWORD8    ReadWaitState,
                                    BOOL      Retiming, 
                                    UWORD8    FlashClockDivider)
{
UWORD32 temp;

 //All EMIFS slow registers are considered identical. CS0 is
 //reference for bit position.
 
 SetField(temp,TC_EMIFS_CS0_CONFIG_FL,IsItFlashIntel); 
 SetField(temp,TC_EMIFS_CS0_CONFIG_BW,BusWidth); 
 SetField(temp,TC_EMIFS_CS0_CONFIG_RDMODE,ReadMode); 
 SetField(temp,TC_EMIFS_CS0_CONFIG_PGWST,PgwstOrWelen); 
 SetField(temp,TC_EMIFS_CS0_CONFIG_WRWST,WriteWaitState); 
 SetField(temp,TC_EMIFS_CS0_CONFIG_RDWST,ReadWaitState); 
 SetField(temp,TC_EMIFS_CS0_CONFIG_RT,Retiming); 

⌨️ 快捷键说明

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