| Message ID | 20260618122245.946138-21-bryan.odonoghue@linaro.org |
|---|---|
| State | RFC |
| Headers | show |
| Series |
|
| Related | show |
Bryan O'Donoghue <bryan.odonoghue@linaro.org> writes: > Signed-off-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org> Reviewed-by: Milan Zamazal <mzamazal@redhat.com> > --- > src/libcamera/software_isp/software_isp_pipeline_gpu.cpp | 6 +++++- > src/libcamera/software_isp/software_isp_pipeline_gpu.h | 2 ++ > 2 files changed, 7 insertions(+), 1 deletion(-) > > diff --git a/src/libcamera/software_isp/software_isp_pipeline_gpu.cpp b/src/libcamera/software_isp/software_isp_pipeline_gpu.cpp > index 18a8ae17a..3c9b48154 100644 > --- a/src/libcamera/software_isp/software_isp_pipeline_gpu.cpp > +++ b/src/libcamera/software_isp/software_isp_pipeline_gpu.cpp > @@ -41,7 +41,7 @@ namespace libcamera { > * \param[in] cm The camera manager > */ > SoftwareIspPipelineGpu::SoftwareIspPipelineGpu(std::unique_ptr<SwStatsCpu> stats, const CameraManager &cm) > - : SoftwareIspPipeline(cm), stats_(std::move(stats)), gpuIspShaderPassDemosiac_(egl_) > + : SoftwareIspPipeline(cm), stats_(std::move(stats)), gpuIspShaderPassBlcNormalise_(egl_), gpuIspShaderPassDemosiac_(egl_) > { > } > > @@ -113,6 +113,10 @@ int SoftwareIspPipelineGpu::initBayerShaders(PixelFormat inputFormat, PixelForma > { > int ret; > > + ret = gpuIspShaderPassBlcNormalise_.initShaders(inputFormat, outputFormat); > + if (ret) > + return ret; > + > ret = gpuIspShaderPassDemosiac_.initShaders(inputFormat, outputFormat); > > return ret; > diff --git a/src/libcamera/software_isp/software_isp_pipeline_gpu.h b/src/libcamera/software_isp/software_isp_pipeline_gpu.h > index fcd622492..8a922f658 100644 > --- a/src/libcamera/software_isp/software_isp_pipeline_gpu.h > +++ b/src/libcamera/software_isp/software_isp_pipeline_gpu.h > @@ -24,6 +24,7 @@ > #include "libcamera/internal/software_isp/swstats_cpu.h" > > #include "software_isp_pipeline.h" > +#include "gpu_pipeline_shader_pass_blc_normalise.h" > #include "gpu_pipeline_shader_pass_demosiac.h" > > namespace libcamera { > @@ -73,6 +74,7 @@ private: > uint32_t width_; > uint32_t height_; > > + GpuIspShaderPassBlcNormalise gpuIspShaderPassBlcNormalise_; > GpuIspShaderPassDemosiac gpuIspShaderPassDemosiac_; > };
diff --git a/src/libcamera/software_isp/software_isp_pipeline_gpu.cpp b/src/libcamera/software_isp/software_isp_pipeline_gpu.cpp index 18a8ae17a..3c9b48154 100644 --- a/src/libcamera/software_isp/software_isp_pipeline_gpu.cpp +++ b/src/libcamera/software_isp/software_isp_pipeline_gpu.cpp @@ -41,7 +41,7 @@ namespace libcamera { * \param[in] cm The camera manager */ SoftwareIspPipelineGpu::SoftwareIspPipelineGpu(std::unique_ptr<SwStatsCpu> stats, const CameraManager &cm) - : SoftwareIspPipeline(cm), stats_(std::move(stats)), gpuIspShaderPassDemosiac_(egl_) + : SoftwareIspPipeline(cm), stats_(std::move(stats)), gpuIspShaderPassBlcNormalise_(egl_), gpuIspShaderPassDemosiac_(egl_) { } @@ -113,6 +113,10 @@ int SoftwareIspPipelineGpu::initBayerShaders(PixelFormat inputFormat, PixelForma { int ret; + ret = gpuIspShaderPassBlcNormalise_.initShaders(inputFormat, outputFormat); + if (ret) + return ret; + ret = gpuIspShaderPassDemosiac_.initShaders(inputFormat, outputFormat); return ret; diff --git a/src/libcamera/software_isp/software_isp_pipeline_gpu.h b/src/libcamera/software_isp/software_isp_pipeline_gpu.h index fcd622492..8a922f658 100644 --- a/src/libcamera/software_isp/software_isp_pipeline_gpu.h +++ b/src/libcamera/software_isp/software_isp_pipeline_gpu.h @@ -24,6 +24,7 @@ #include "libcamera/internal/software_isp/swstats_cpu.h" #include "software_isp_pipeline.h" +#include "gpu_pipeline_shader_pass_blc_normalise.h" #include "gpu_pipeline_shader_pass_demosiac.h" namespace libcamera { @@ -73,6 +74,7 @@ private: uint32_t width_; uint32_t height_; + GpuIspShaderPassBlcNormalise gpuIspShaderPassBlcNormalise_; GpuIspShaderPassDemosiac gpuIspShaderPassDemosiac_; };
Signed-off-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org> --- src/libcamera/software_isp/software_isp_pipeline_gpu.cpp | 6 +++++- src/libcamera/software_isp/software_isp_pipeline_gpu.h | 2 ++ 2 files changed, 7 insertions(+), 1 deletion(-)