Example #1
0
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
//
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
MUINT32
AAOBufMgr::
getCurrHwBuf()
{
    if (m_rHwBufList.size() > 0) {
        return m_rHwBufList.front().phyAddr;
    }
    else { // No free buffer
        MY_ERR("No free buffer\n");
        return 0;
    }
}
Example #2
0
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
//
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
MBOOL
AEBufMgr::
dequeueHwBuf(BufInfo_T& rBufInfo)
{
#if ENABLE_AE_MVHDR_STAT
    MY_LOG_IF(m_bDebugEnable,"%s() m_eSensorDev(%d)\n", __FUNCTION__, m_eSensorDev);
    static MINT32 frameCnt = 0;

    char value[PROPERTY_VALUE_MAX] = {'\0'};
    property_get("aae.dump.enable", value, "0");
    MBOOL bEnable = atoi(value);

    
    if (m_rHwBufList.size()) {
        rBufInfo = m_rHwBufList.front();
        m_rHwBufList.pop_front();
    }

    if (bEnable) {
        char fileName[64];
        sprintf(fileName, "/sdcard/ae/ae%d.raw", frameCnt++);
        FILE *fp = fopen(fileName, "w");
        if (NULL == fp)
        {
            MY_ERR("fail to open file to save img: %s", fileName);
            MINT32 err = mkdir("/sdcard/ae", S_IRWXU | S_IRWXG | S_IRWXO);
            MY_LOG("err = %d", err);
            return MFALSE;
        }    
        MY_LOG_IF(m_bDebugEnable,"%s\n", fileName);
        fwrite(reinterpret_cast<void *>(rBufInfo.virtAddr), 1, rBufInfo.size, fp);
        fclose(fp);
        
        isp_reg_t *pisp = (isp_reg_t *) mpIspHwRegAddr;

        MY_LOG("%s() m_eSensorDev(%d) ISPAddr:0x%0x 0x%0x\n", __FUNCTION__, m_eSensorDev, mpIspHwRegAddr, pisp);
    
        MY_LOG("%s() CAMSV_CAMSV_CLK_EN (0x9020):0x%0x\n", __FUNCTION__, ISP_REG(pisp, CAMSV_CAMSV_CLK_EN));
        MY_LOG("%s() CAMSV_CAMSV_INT_EN(0x9008):0x%0x\n", __FUNCTION__, ISP_REG(pisp, CAMSV_CAMSV_INT_EN));
        MY_LOG("%s() CAMSV_TG_VF_CON(0x9414):0x%0x\n", __FUNCTION__, ISP_REG(pisp, CAMSV_TG_VF_CON));
        MY_LOG("%s() CAMSV_CAMSV_MODULE_EN(0x9000):0x%0x\n", __FUNCTION__, ISP_REG(pisp, CAMSV_CAMSV_MODULE_EN));
        MY_LOG("%s() CAMSV_CAMSV_PAK(0x903C):0x%0x\n", __FUNCTION__, ISP_REG(pisp, CAMSV_CAMSV_PAK));
        MY_LOG("%s() CAMSV_CAMSV_FMT_SEL(0x9004):0x%0x\n", __FUNCTION__, ISP_REG(pisp, CAMSV_CAMSV_FMT_SEL));
    }
    else {
        frameCnt = 0; 
    }

    MY_LOG_IF(m_bDebugEnable,"rBufInfo.virtAddr:[0x%x]/phyAddr:[0x%x] \n",rBufInfo.virtAddr,rBufInfo.phyAddr);
#endif    
    return MTRUE;
}
Example #3
0
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
//
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
MUINT32
AAOBufMgr::
getNextHwBuf()
{
    BufInfoList_T::iterator it;

    if (m_rHwBufList.size() > 1) {
    	it = m_rHwBufList.begin();
        it++;
        return it->phyAddr;
    }
    else { // No free buffer
       MY_ERR("No free buffer\n");
       return 0;
    }
}
Example #4
0
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
//
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
MUINT32
AEBufMgr::
getCurrHwBuf()
{
#if ENABLE_AE_MVHDR_STAT
    if (m_rHwBufList.size() > 0) {
        return m_rHwBufList.front().phyAddr;
    }
    else { // No free buffer
        MY_ERR("No free buffer\n");
        return 0;
    }
#else
    return 0;
#endif
}
Example #5
0
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
//
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
MUINT32
AEBufMgr::
getNextHwBuf()
{
#if ENABLE_AE_MVHDR_STAT
    BufInfoList_T::iterator it;

    if (m_rHwBufList.size() > 1) {
    	it = m_rHwBufList.begin();
        it++;
        return it->phyAddr;
    }
    else { // No free buffer
       MY_ERR("No free buffer\n");
       return 0;
    }
#else
    return 0;
#endif    
}
Example #6
0
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
//
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
MBOOL
AAOBufMgr::
dequeueHwBuf(BufInfo_T& rBufInfo)
{
    MY_LOG_IF(m_bDebugEnable,"%s() m_eSensorDev(%d)\n", __FUNCTION__, m_eSensorDev);
    static MINT32 frameCnt = 0;

    char value[PROPERTY_VALUE_MAX] = {'\0'};
    property_get("aao.dump.enable", value, "0");
    MBOOL bEnable = atoi(value);

    
    if (m_rHwBufList.size()) {
        rBufInfo = m_rHwBufList.front();
        m_rHwBufList.pop_front();
    }

    if (bEnable) {
        char fileName[64];
        sprintf(fileName, "/sdcard/aao/aao_%d.raw", frameCnt++);
        FILE *fp = fopen(fileName, "w");
        if (NULL == fp)
        {
            MY_ERR("fail to open file to save img: %s", fileName);
            MINT32 err = mkdir("/sdcard/aao", S_IRWXU | S_IRWXG | S_IRWXO);
            MY_LOG("err = %d", err);
            return MFALSE;
        }    
        MY_LOG_IF(m_bDebugEnable,"%s\n", fileName);
        fwrite(reinterpret_cast<void *>(rBufInfo.virtAddr), 1, rBufInfo.size, fp);
        fclose(fp);
    }
    else {
        frameCnt = 0; 
    }

    MY_LOG_IF(m_bDebugEnable,"rBufInfo.virtAddr:[0x%x]/phyAddr:[0x%x] \n",rBufInfo.virtAddr,rBufInfo.phyAddr);
    
    return MTRUE;
}