lcameraDev: honor opt-planar when selecting YUV capture format.

Pass fullPlanarIsOptional through session configure so optional planar
mode can succeed with packed YUYV; extend unit and configure HIL coverage.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-06-14 11:01:40 -04:00
parent 5f3d5c7818
commit 7a47f2bd49
8 changed files with 126 additions and 42 deletions
@@ -4,14 +4,6 @@
namespace lcamera_dev {
namespace {
constexpr const char *incompleteOptionalPlanarMessage =
"lcameraDev: fullPlanarIsOptional/opt-planar is not honored yet "
"(non-planar producer deinterleaving is not implemented)";
} // namespace
void validateCameraModeRequest(const LcameraDevCameraModeRequest& request)
{
if (request.width == 0 || request.height == 0)
@@ -28,15 +20,6 @@ void validateCameraModeRequest(const LcameraDevCameraModeRequest& request)
}
}
void rejectFullPlanarOptionalAtConfigureApi(
const LcameraDevCameraModeRequest& request)
{
if (request.fullPlanarIsOptional)
{
throw std::runtime_error(incompleteOptionalPlanarMessage);
}
}
bool cameraModeRequestsEqual(
const LcameraDevCameraModeRequest& left,
const LcameraDevCameraModeRequest& right)