status_t MemPool::dump(int fd, const Vector<String16>& args) const { const size_t SIZE = 256; char buffer[SIZE]; String8 result; CAMERA_HAL_UNUSED(args); snprintf(buffer, 255, "QualcommCameraHardware::AshmemPool::dump\n"); result.append(buffer); if (mName) { snprintf(buffer, 255, "mem pool name (%s)\n", mName); result.append(buffer); } if (mHeap != 0) { snprintf(buffer, 255, "heap base(%p), size(%d), flags(%d), device(%s)\n", mHeap->getBase(), mHeap->getSize(), mHeap->getFlags(), mHeap->getDevice()); result.append(buffer); } snprintf(buffer, 255, "buffer size (%d), number of buffers (%d), frame size(%d)", mBufferSize, mNumBuffers, mFrameSize); result.append(buffer); write(fd, result.string(), result.size()); return NO_ERROR; }
static bool register_buf(int size, int frame_size, int cbcr_offset, int yoffset, int pmempreviewfd, uint32_t offset, uint8_t *buf, int pmem_type, bool vfe_can_write, bool register_buffer) { struct msm_pmem_info pmemBuf; CAMERA_HAL_UNUSED(frame_size); pmemBuf.type = pmem_type; pmemBuf.fd = pmempreviewfd; pmemBuf.offset = offset; pmemBuf.len = size; pmemBuf.vaddr = buf; pmemBuf.y_off = yoffset; pmemBuf.cbcr_off = cbcr_offset; pmemBuf.active = vfe_can_write; LOGV("register_buf: reg = %d buffer = %p", !register_buffer, buf); /*TODO*/ /*if(native_start_ops(register_buffer ? CAMERA_OPS_REGISTER_BUFFER : CAMERA_OPS_UNREGISTER_BUFFER ,(void *)&pmemBuf) < 0) { LOGE("register_buf: MSM_CAM_IOCTL_(UN)REGISTER_PMEM error %s", strerror(errno)); return false; }*/ return true; }