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

📄 syscon_platform.c

📁 This product may be controlled for export purposes. You may not export, or transfer for the purpos
💻 C
📖 第 1 页 / 共 5 页
字号:
 /************************************************************************ *  com_en0_intline_malta_read ************************************************************************/static UINT32com_en0_intline_malta_read(    void   *param,    void   *data,    UINT32 size ){    /* Return interrupt line used for EN0 on Malta interrupt controller */    *(UINT32 *)param = MALTA_INTLINE_79C973;    return OK;}/************************************************************************ *  board_productname_read ************************************************************************/static UINT32board_productname_read(    void   *param,    void   *data,    UINT32 size ){    *(char **)param = (char *)data;    return OK;}/************************************************************************ *  board_nmi_werr_atlas_malta_read ************************************************************************/static UINT32board_nmi_werr_atlas_malta_read(    void   *param,    void   *data,    UINT32 size ){    *(UINT32 *)param = 0;  /* no WERR bit on Atlas */    return OK;}/************************************************************************ *  board_nmi_werr_sead_read ************************************************************************/static UINT32board_nmi_werr_sead_read(    void   *param,    void   *data,    UINT32 size ){    *(UINT32 *)param = (REGP(KSEG1BASE, SEAD_NMISTATUS)                                      & SEAD_NMISTATUS_WERR_MSK)                                     >> SEAD_NMISTATUS_WERR_SHF;    return OK;}/************************************************************************ *  board_nmi_ack_atlas_malta_write ************************************************************************/static UINT32board_nmi_ack_atlas_malta_write(    void   *param,    void   *data,    UINT32 size ){    REGP(KSEG1BASE, MALTA_NMIACK) = MALTA_NMIACK_ONNMI_BIT;    EXCEP_nmi = FALSE;  /* clear local copy of nmi status */    return OK;}/************************************************************************ *  board_nmi_ack_sead_write ************************************************************************/static UINT32board_nmi_ack_sead_write(    void   *param,    void   *data,    UINT32 size ){    REGP(KSEG1BASE, SEAD_NMIACK) = SEAD_NMIACK_ACK_BIT;    EXCEP_nmi = FALSE;  /* clear local copy of nmi status */    return OK;}/************************************************************************ *  board_nmi_status_generic_read ************************************************************************/static UINT32board_nmi_status_generic_read(    void   *param,    void   *data,    UINT32 size ){    *(bool *)param = EXCEP_nmi;    return OK;}/************************************************************************ *  board_corecardid_atlas_malta_read ************************************************************************/static UINT32board_corecardid_atlas_malta_read(    void   *param,    void   *data,    UINT32 size ){    /* Shared between Atlas and Malta */    *(UINT32 *)param = (REGP(KSEG1BASE, ATLAS_REVISION)                                      & ATLAS_REVISION_CORID_MSK)                                     >> ATLAS_REVISION_CORID_SHF;    return OK;}/************************************************************************ *  board_corecardrev_atlas_malta_read ************************************************************************/static UINT32board_corecardrev_atlas_malta_read(    void   *param,    void   *data,    UINT32 size ){    /* Shared between Atlas and Malta */    *(UINT32 *)param = (REGP(KSEG1BASE, ATLAS_REVISION)                                      & ATLAS_REVISION_CORRV_MSK)                                     >> ATLAS_REVISION_CORRV_SHF;    return OK;}/************************************************************************ *  board_fpgarev_atlas_malta_read ************************************************************************/static UINT32board_fpgarev_atlas_malta_read(    void   *param,    void   *data,    UINT32 size ){    /* Shared between Atlas and Malta */    *(UINT32 *)param = (REGP(KSEG1BASE, ATLAS_REVISION)                                      & ATLAS_REVISION_FPGRV_MSK)                                     >> ATLAS_REVISION_FPGRV_SHF;    return OK;}/************************************************************************ *  board_rtl_sead_read ************************************************************************/static UINT32board_rtl_sead_read(    void   *param,    void   *data,    UINT32 size ){    *(UINT32 *)param = (REGP(KSEG1BASE, SEAD_REVISION)                                      & SEAD_REVISION_RTLID_MSK)                                     >> SEAD_REVISION_RTLID_SHF;    return OK;}/************************************************************************ *  board_rtl_name_sead_read ************************************************************************/extern char *name_msc01;static UINT32board_rtl_name_sead_read(    void   *param,    void   *data,    UINT32 size ){    switch( (REGP(KSEG1BASE,SEAD_REVISION)                          & SEAD_REVISION_RTLID_MSK)                         >> SEAD_REVISION_RTLID_SHF )    {      case SEAD_REVISION_RTLID_BASIC :	*(char **)param = name_basic_rtl;        break;      case SEAD_REVISION_RTLID_SOCIT101 :	*(char **)param = name_msc01;        break;      default :        return ERROR_SYSCON_UNKNOWN_PARAM;    }    return OK;}/************************************************************************ *  board_rtlrev_major_sead_read ************************************************************************/static UINT32board_rtlrev_major_sead_read(    void   *param,    void   *data,    UINT32 size ){    if (sys_corecard == MIPS_REVISION_CORID_SEAD_MSC01)    {        *(UINT32 *)param = (REG(MSC01_BIU_REG_BASE, MSC01_SC_ID)	                                          & MSC01_SC_ID_MAR_MSK)	                                         >> MSC01_SC_ID_MAR_SHF;        return OK;    }    *(UINT32 *)param = (REGP(KSEG1BASE, SEAD_REVISION)                                      & SEAD_REVISION_RTLMAJ_MSK)                                     >> SEAD_REVISION_RTLMAJ_SHF;    return OK;}/************************************************************************ *  board_rtlrev_minor_sead_read ************************************************************************/static UINT32board_rtlrev_minor_sead_read(    void   *param,    void   *data,    UINT32 size ){    if (sys_corecard == MIPS_REVISION_CORID_SEAD_MSC01)    {        *(UINT32 *)param = (REG(MSC01_BIU_REG_BASE, MSC01_SC_ID)	                                          & MSC01_SC_ID_MIR_MSK)	                                         >> MSC01_SC_ID_MIR_SHF;        return OK;    }    *(UINT32 *)param = (REGP(KSEG1BASE, SEAD_REVISION)                                      & SEAD_REVISION_RTLMIN_MSK)                                     >> SEAD_REVISION_RTLMIN_SHF;    return OK;}/************************************************************************ *  board_use_default_atlas_malta_read ************************************************************************/static UINT32board_use_default_atlas_malta_read(    void   *param,    void   *data,    UINT32 size ){    /* Read S5-4 switch */    *(UINT32 *)param = (REGP( KSEG1BASE, ATLAS_STATUS)                                       & ATLAS_STATUS_S54_MSK)                                      >> ATLAS_STATUS_S54_SHF;    return OK;}/************************************************************************ *  board_use_default_sead_read ************************************************************************/static UINT32board_use_default_sead_read(    void   *param,    void   *data,    UINT32 size ){    /* No default switch */    *(UINT32 *)param = 0;    return OK;}/************************************************************************ *  board_softres_atlas_malta_write ************************************************************************/static UINT32board_softres_atlas_malta_write(    void   *param,    void   *data,    UINT32 size ){    REGP(KSEG1BASE, ATLAS_SOFTRES) = ATLAS_SOFTRES_RESET_GORESET;    return OK;}/************************************************************************ *  board_softres_sead2_write ************************************************************************/static UINT32board_softres_sead2_write(    void   *param,    void   *data,    UINT32 size ){    /* SEAD-2 only */    if (sys_corecard == MIPS_REVISION_CORID_SEAD_MSC01)	REG(MSC01_MC_REG_BASE, MSC01_MC_ARB_CFG) = SEAD2_MSC01_MC_RESET_BIT;    else        REGP(KSEG1BASE, SEAD2_SWRESET) = SEAD2_SWRESET_SWRST_GORESET;    return OK;}/************************************************************************ *  board_systemflash_base_atlas_read ************************************************************************/static UINT32board_systemflash_base_atlas_read(    void   *param,    void   *data,    UINT32 size ){    *(void **)param = (void *)ATLAS_SYSTEMFLASH_BASE;    return OK;}/************************************************************************ *  board_systemflash_base_sead_read ************************************************************************/static UINT32board_systemflash_base_sead_read(    void   *param,    void   *data,    UINT32 size ){    *(void **)param = (void *)SEAD_SYSTEMFLASH_BASE;    return OK;}/************************************************************************ *  board_systemflash_size_atlas_read ************************************************************************/static UINT32board_systemflash_size_atlas_read(    void   *param,    void   *data,    UINT32 size ){    *(UINT32 *)param = ATLAS_SYSTEMFLASH_SIZE;    return OK;}/************************************************************************ *  board_systemflash_size_sead_read ************************************************************************/static UINT32board_systemflash_size_sead_read(    void   *param,    void   *data,    UINT32 size ){    *(UINT32 *)param = SEAD_SYSTEMFLASH_SIZE;    return OK;}/************************************************************************ *  board_monitorflash_base_atlas_malta_read ************************************************************************/static UINT32board_monitorflash_base_atlas_malta_read(    void   *param,    void   *data,    UINT32 size ){    *(void **)param = (void *)ATLAS_MONITORFLASH_BASE;    return OK;}/************************************************************************ *  board_monitorflash_size_atlas_malta_read ************************************************************************/static UINT32board_monitorflash_size_atlas_malta_read(    void   *param,    void   *data,    UINT32 size ){    *(UINT32 *)param = ATLAS_MONITORFLASH_SIZE;    return OK;}/************************************************************************ *  board_fileflash_base_atlas_malta_read ************************************************************************/static UINT32board_fileflash_base_atlas_malta_read(    void   *param,    void   *data,    UINT32 size ){    *(void **)param = (void *)ATLAS_FILEFLASH_BASE;    return OK;}/************************************************************************ *  board_fileflash_base_sead_read ************************************************************************/static UINT32board_fileflash_base_sead_read(    void   *param,    void   *data,    UINT32 size ){    *(void **)param = (void *)SEAD_FILEFLASH_BASE;    return OK;}/************************************************************************ *  board_fileflash_size_atlas_malta_read ************************************************************************/static UINT32board_fileflash_size_atlas_malta_read(    void   *param,    void   *data,    UINT32 size ){    *(UINT32 *)param = ATLAS_FILEFLASH_SIZE;    return OK;}/************************************************************************ *  board_fileflash_size_sead_read ************************************************************************/static UINT32board_fileflash_size_sead_read(    void   *param,    void   *data,    UINT32 size ){    *(UINT32 *)param = SEAD_FILEFLASH_SIZE;    return OK;}/************************************************************************ *  board_systemram_base_sead_read ************************************************************************/static UINT32board_systemram_base_sead_read(    void   *param,    void   *data,    UINT32 size ){    *(void **)param = (void *)SEAD_SYSTEMRAM_BASE;    return OK;}/************************************************************************ *  board_systemram_size_sead_read ************************************************************************/static UINT32board_systemram_size_sead_read(    void   *param,    void   *data,    UINT32 size ){    *(UINT32 *)param = SEAD_SYSTEMRAM_SIZE;    return OK;}/************************************************************************ *  board_sram_base_sead_read ************************************************************************/static UINT32board_sram_base_sead_read(    void   *param,    void   *data,    UINT32 size ){    *(void **)param = (void *)SEAD_SRAM_BASE;

⌨️ 快捷键说明

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