liboverlay: remove the unused rotator object
The rotator object in the generic pipe is never used.
Remove this unused object along with other rotator
related member variables.
Change-Id: I66d60e14565cab730228c3116e67e5c619296284
diff --git a/liboverlay/pipes/overlayGenPipe.cpp b/liboverlay/pipes/overlayGenPipe.cpp
index f5d4475..3ab0d19 100644
--- a/liboverlay/pipes/overlayGenPipe.cpp
+++ b/liboverlay/pipes/overlayGenPipe.cpp
@@ -33,8 +33,8 @@
namespace overlay {
-GenericPipe::GenericPipe(int dpy) : mFbNum(dpy), mRot(0), mRotUsed(false),
- mRotDownscaleOpt(false), mPreRotated(false), pipeState(CLOSED) {
+GenericPipe::GenericPipe(int dpy) : mFbNum(dpy), mRotDownscaleOpt(false),
+ pipeState(CLOSED) {
init();
}
@@ -45,9 +45,7 @@
bool GenericPipe::init()
{
ALOGE_IF(DEBUG_OVERLAY, "GenericPipe init");
- mRotUsed = false;
mRotDownscaleOpt = false;
- mPreRotated = false;
if(mFbNum)
mFbNum = Overlay::getInstance()->getExtFbNum();
@@ -63,9 +61,6 @@
return false;
}
- //get a new rotator object, take ownership
- mRot = Rotator::getRotator();
-
return true;
}
@@ -81,21 +76,12 @@
ret = false;
}
- delete mRot;
- mRot = 0;
-
setClosed();
return ret;
}
void GenericPipe::setSource(const utils::PipeArgs& args) {
- //Cache if user wants 0-rotation
- mRotUsed = args.rotFlags & utils::ROT_0_ENABLED;
mRotDownscaleOpt = args.rotFlags & utils::ROT_DOWNSCALE_ENABLED;
- mPreRotated = args.rotFlags & utils::ROT_PREROTATED;
- if(mPreRotated) mRotUsed = false;
- mRot->setSource(args.whf);
- mRot->setFlags(args.mdpFlags);
mCtrlData.ctrl.setSource(args);
}
@@ -104,10 +90,6 @@
}
void GenericPipe::setTransform(const utils::eTransform& orient) {
- //Rotation could be enabled by user for zero-rot or the layer could have
- //some transform. Mark rotation enabled in either case.
- mRotUsed |= ((orient & utils::OVERLAY_TRANSFORM_ROT_90) && !mPreRotated);
- mRot->setTransform(orient);
mCtrlData.ctrl.setTransform(orient);
}
@@ -129,39 +111,11 @@
ovutils::Dim dst(mCtrlData.ctrl.getPosition());
downscale_factor = ovutils::getDownscaleFactor(
src.w, src.h, dst.w, dst.h);
- mRotUsed |= (downscale_factor && !mPreRotated);
- }
-
-
- if(mRotUsed) {
- mRot->setDownscale(downscale_factor);
- //If wanting to use rotator, start it.
- if(!mRot->commit()) {
- ALOGE("GenPipe Rotator commit failed");
- //If rot commit fails, flush rotator session, memory, fd and create
- //a hollow rotator object
- delete mRot;
- mRot = Rotator::getRotator();
- pipeState = CLOSED;
- return false;
- }
- /* Set the mdp src format to the output format of the rotator.
- * The output format of the rotator might be different depending on
- * whether fastyuv mode is enabled in the rotator.
- */
- mCtrlData.ctrl.updateSrcFormat(mRot->getDstFormat());
}
mCtrlData.ctrl.setDownscale(downscale_factor);
ret = mCtrlData.ctrl.commit();
- //If mdp commit fails, flush rotator session, memory, fd and create a hollow
- //rotator object
- if(ret == false) {
- delete mRot;
- mRot = Rotator::getRotator();
- }
-
pipeState = ret ? OPEN : CLOSED;
return ret;
}
@@ -174,26 +128,7 @@
// set pipe id from ctrl to data
mCtrlData.data.setPipeId(pipeId);
- int finalFd = fd;
- uint32_t finalOffset = offset;
- //If rotator is to be used, queue to it, so it can ROTATE.
- if(mRotUsed) {
- if(!mRot->queueBuffer(fd, offset)) {
- ALOGE("GenPipe Rotator play failed");
- return false;
- }
- //Configure MDP's source buffer as the current output buffer of rotator
- if(mRot->getDstMemId() != -1) {
- finalFd = mRot->getDstMemId();
- finalOffset = mRot->getDstOffset();
- } else {
- //Could be -1 for NullRotator, if queue above succeeds.
- //Need an actual rotator. Modify overlay State Traits.
- //Not fatal, keep queuing to MDP without rotation.
- ALOGE("Null rotator in use, where an actual is required");
- }
- }
- return mCtrlData.data.queueBuffer(finalFd, finalOffset);
+ return mCtrlData.data.queueBuffer(fd, offset);
}
int GenericPipe::getCtrlFd() const {
@@ -209,18 +144,15 @@
{
ALOGE("== Dump Generic pipe start ==");
ALOGE("pipe state = %d", (int)pipeState);
- OVASSERT(mRot, "GenericPipe should have a valid Rot");
mCtrlData.ctrl.dump();
mCtrlData.data.dump();
- mRot->dump();
+
ALOGE("== Dump Generic pipe end ==");
}
void GenericPipe::getDump(char *buf, size_t len) {
mCtrlData.ctrl.getDump(buf, len);
mCtrlData.data.getDump(buf, len);
- if(mRotUsed && mRot)
- mRot->getDump(buf, len);
}
bool GenericPipe::isClosed() const {