summaryrefslogtreecommitdiff
Diffstat
-rw-r--r--hwc1.4/Android.mk60
-rw-r--r--hwc1.4/hwcomposer.cpp1202
-rw-r--r--hwc2/common/base/HwcLayer.cpp2
-rw-r--r--hwc2/common/base/HwcLayer.h6
-rw-r--r--hwc2/common/base/HwcModule.cpp9
-rw-r--r--hwc2/common/base/Hwcomposer.cpp14
-rw-r--r--hwc2/common/composers/GE2DComposer.cpp3
-rw-r--r--hwc2/common/composers/GE2DComposer.h6
-rw-r--r--hwc2/common/composers/IComposeDevice.cpp (renamed from hwc2/common/composers/Composers.cpp)10
-rw-r--r--hwc2/common/composers/IComposeDevice.h (renamed from hwc2/common/composers/Composers.h)17
-rw-r--r--hwc2/common/devices/PhysicalDevice.cpp25
-rw-r--r--hwc2/common/devices/PrimaryDevice.cpp2
-rw-r--r--hwc2/common/hdmi/DisplayHdmi.h2
-rw-r--r--hwc2/common/utils/Utils.cpp2
-rw-r--r--hwc2/common/utils/Utils.h5
-rw-r--r--hwc2/include/Hwcomposer.h4
-rw-r--r--hwc2/include/IComposeDeviceFactory.h (renamed from hwc2/include/IComposerFactory.h)16
-rw-r--r--hwc2/include/IComposer.h47
-rw-r--r--hwc2/include/PhysicalDevice.h17
-rw-r--r--hwc2/include/PrimaryDevice.h4
-rw-r--r--hwc2/platforms/Android.mk6
-rw-r--r--hwc2/platforms/PlatFactory.cpp6
22 files changed, 45 insertions, 1420 deletions
diff --git a/hwc2/common/composers/IComposeDevice.h b/hwc2/common/composers/IComposeDevice.h
new file mode 100644
index 0000000..74e2829
--- a/dev/null
+++ b/hwc2/common/composers/IComposeDevice.h
@@ -0,0 +1,59 @@
+/*
+// Copyright (c) 2016 Amlogic
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+//
+*/
+
+#ifndef __AM_COMPOSER_H
+#define __AM_COMPOSER_H
+
+#include <gralloc_priv.h>
+#include <framebuffer.h>
+#include <HwcLayer.h>
+
+namespace android {
+namespace amlogic {
+
+class IDisplayDevice;
+
+class IComposeDevice {
+public:
+ IComposeDevice(IDisplayDevice& disp);
+ virtual ~IComposeDevice();
+
+public:
+
+ virtual bool initialize(framebuffer_info_t* fbInfo);
+ virtual void deinitialize();
+ virtual int32_t startCompose(Vector< hwc2_layer_t > hwcLayers, int32_t *offset = 0, int32_t frameCount = 0) = 0;
+ virtual const char* getName() const = 0;
+ // virtual void setCurGlesFbSlot(uint32_t slot) = 0;
+ virtual const buffer_handle_t getBufHnd() = 0;
+ virtual void mergeRetireFence(int32_t slot, int32_t retireFence) = 0;
+ virtual void removeRetireFence(int32_t slot) = 0;
+ virtual void setVideoOverlayLayerId(hwc2_layer_t layerId) = 0;
+ virtual void fillRectangle(hwc_rect_t clipRect, uint32_t color, uint32_t offset, int shared_fd) = 0;
+
+private:
+ IDisplayDevice& mDisplayDevice;
+
+ bool mInitialized;
+};
+
+} // namespace amlogic
+} // namespace android
+
+
+#endif /* __AM_COMPOSER_H */
+