zoukankan      html  css  js  c++  java
  • TC275的overlay的使用示例-用于XCP标定

    void Ovc_SetBlock(uint8 whichBlock, uint8 redirectionSelect, uint32 ramBaseAddr,uint32 flashBaseAddr, OVC_overlayMemSize size)
    {
        //    Ifx_CPU * core;
        Ifx_OVC_BLK_OTAR otar;    /* Target Base Address(Flash) */
        Ifx_OVC_BLK_OMASK omask; /* Overlay Block Size */
        Ifx_OVC_BLK_RABR rabr;  /* Redirection Base Address(also called Overlay Memory, in RAM) */
    
        otar.U = 0u;
        //    otar.B.TBASE = flashBaseAddr; //20200330. maybe no need to do bit shift.
        otar.B.TBASE = flashBaseAddr >>5; //20200330. seems must do bit shift.
    
        omask.U = 0u;
        omask.B.OMASK = size;
    
        rabr.U = 0;
        rabr.B.OMEM = redirectionSelect;    /*Select redirect memory*/
        rabr.B.OBASE = ramBaseAddr>>5;    /*Select overlay block base address*/
    
        MODULE_OVC0.BLK[whichBlock].RABR.U = rabr.U;
        MODULE_OVC0.BLK[whichBlock].OTAR.U = otar.U;
        MODULE_OVC0.BLK[whichBlock].OMASK.U = omask.U;
    }
    void Ovc_EnableCore(uint8 core_id)
    {
        Ifx_SCU_OVCCON ovccon;
        Ifx_SCU_OVCENABLE ovcenable;
        uint16 password = IfxScuWdt_getCpuWatchdogPassword();
        /*Disable overlay in SCU*/
        IfxScuWdt_clearSafetyEndinit(password);
        ovccon.U    = MODULE_SCU.OVCCON.U;
        ovcenable.U = MODULE_SCU.OVCENABLE.U;
        ovccon.B.DCINVAL       = 1;
    
        //add switch case if needed.
        ovcenable.B.OVEN0 = 1;
        ovccon.B.CSEL0 = 1;
    
        //Ifx_Ssw_DSYNC();
        MODULE_SCU.OVCCON.U    = ovccon.U;
        MODULE_SCU.OVCENABLE.U = ovcenable.U;
        IfxScuWdt_setSafetyEndinit(password);
    }
        Ovc_EnableCore(0u);
        Ovc_DisableBlock(0u, 0u);
    //    Ovc_SetBlockTestCase0(Redirect_To_LMU, LMURAM_OVERLAY_START_ADDR, CAL_PFLS0_NC_START_ADDR);
        Ovc_SetBlockTestCase0(Redirect_To_LMU, CAL_LMURAM_NC_START_ADDR, CAL_PFLS0_NC_START_ADDR, Ovc_OverlayMemSize_16KB);
        Ovc_EnableBlock(0u);
  • 相关阅读:
    MySQL索引管理及执行计划
    MySQL客户端工具及SQL讲解
    mysql数据类型
    mysq日志管理
    mysql连接管理及实例初始化配置
    mysql用户权限管理
    msyql5.6与mysql5.7安装区别
    mysql简介
    ASP.NET使用ImageMap控件
    ASP.NET Calendar(日历控件)
  • 原文地址:https://www.cnblogs.com/praiseslow/p/12738090.html
Copyright © 2011-2022 走看看