Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
19 changes: 17 additions & 2 deletions hwcomposer/extension.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -22,14 +22,15 @@ namespace display {
namespace V1_1 {
namespace implementation {

OpenfdeDisplay::OpenfdeDisplay(struct display *display)
: mDisplay(display)
OpenfdeDisplay::OpenfdeDisplay(struct display *display , struct display *secondary_display)
: mDisplay(display), msecondary_Display(secondary_display)
{
}

// Methods from ::vendor::openfde::display::V1_0::IOpenfdeDisplay follow.
Return<Error> OpenfdeDisplay::setLayerName(uint32_t layer, const hidl_string &name) {
mDisplay->layer_names[layer] = std::string(name);
msecondary_Display->layer_names[layer] = std::string(name);
return Error::NONE;
}
Return<Error> OpenfdeDisplay::setLayerHandleInfo(uint32_t layer, uint32_t format, uint32_t stride) {
Expand All @@ -38,6 +39,11 @@ Return<Error> OpenfdeDisplay::setLayerHandleInfo(uint32_t layer, uint32_t format
.format = format,
.stride = stride
};
msecondary_Display->layer_handles_ext[layer] =
{
.format = format,
.stride = stride
};
return Error::NONE;
}
Return<Error> OpenfdeDisplay::setTargetLayerHandleInfo(uint32_t format, uint32_t stride) {
Expand All @@ -46,19 +52,28 @@ Return<Error> OpenfdeDisplay::setTargetLayerHandleInfo(uint32_t format, uint32_t
.format = format,
.stride = stride
};
msecondary_Display->target_layer_handle_ext =
{
.format = format,
.stride = stride
};
return Error::NONE;
}

// Methods from ::vendor::openfde::display::V1_1::IOpenfdeDisplay follow.
Return<Error> OpenfdeDisplay::setLayerSize(uint32_t layer, uint32_t width, uint32_t height) {
mDisplay->layer_handles_ext[layer].width = width;
mDisplay->layer_handles_ext[layer].height = height;
msecondary_Display->layer_handles_ext[layer].width = width;
msecondary_Display->layer_handles_ext[layer].height = height;
return Error::NONE;
}

Return<Error> OpenfdeDisplay::setTargetLayerSize(uint32_t width, uint32_t height) {
mDisplay->target_layer_handle_ext.width = width;
mDisplay->target_layer_handle_ext.height = height;
msecondary_Display->target_layer_handle_ext.width = width;
msecondary_Display->target_layer_handle_ext.height = height;
return Error::NONE;
}

Expand Down
5 changes: 3 additions & 2 deletions hwcomposer/extension.h
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ using ::vendor::openfde::display::V1_1::IOpenfdeDisplay;

class OpenfdeDisplay : public IOpenfdeDisplay {
public:
OpenfdeDisplay(struct display *display);
OpenfdeDisplay(struct display *display, struct display *secondary_display);

// Methods from ::vendor::openfde::display::V1_0::IOpenfdeDisplay follow.
Return<Error> setLayerName(uint32_t layer, const hidl_string &name) override;
Expand All @@ -50,6 +50,7 @@ class OpenfdeDisplay : public IOpenfdeDisplay {
Return<Error> setTargetLayerSize(uint32_t width, uint32_t height) override;
private:
struct display *mDisplay;
struct display *msecondary_Display;
};

} // namespace implementation
Expand All @@ -58,4 +59,4 @@ class OpenfdeDisplay : public IOpenfdeDisplay {
} // namespace openfde
} // namespace vendor

#endif // VENDOR_OPENFDE_DISPLAY_V1_1_OPENFDEDISPLAY_H
#endif // VENDOR_OPENFDE_DISPLAY_V1_1_OPENFDEDISPLAY_H
Loading