//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ // //++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 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; } }
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ // //++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 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; }
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ // //++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 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 }
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ // //++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 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; }