[libcamera-devel] [PATCH 2/2] ipa: vimc: Synchronise parameter buffer ops naming
Umang Jain
umang.jain at ideasonboard.com
Fri Apr 8 14:20:01 CEST 2022
Hi Kieran,
On 4/8/22 17:13, Kieran Bingham wrote:
> Quoting Umang Jain via libcamera-devel (2022-04-08 11:54:39)
>> Synchronise the names of the operations with respect to parameters
>> buffer with the names used in other IPA interfaces.
>>
> The VIMC pipeline handler doesn't yet use an ISP, so I was curious at
> what buffers this would represent - but actually I think it's fine to
> keep it aligned at least.
These are mock buffers. They enable IPA IPC tests we have in tests/.
Also look at,
https://git.linuxtv.org/libcamera.git/commit/?id=3c5732d04a879d71d928e200d399c8d61b0da27a
https://git.linuxtv.org/libcamera.git/commit/?id=c2437e8cdefc7ae7efbfbd8662d822a02133084d
>
> I expect we could also use the VIMC pipeline handler with any GPU based
> ISP we might develop so I expect it will get more alignment with that
> development too.
Yes.
>
> So for this - I think it's fine.
>
>
> Reviewed-by: Kieran Bingham <kieran.bingham at ideasonboard.com>
Thanks!
>
>> Signed-off-by: Umang Jain <umang.jain at ideasonboard.com>
>> ---
>> include/libcamera/ipa/vimc.mojom | 4 ++--
>> src/ipa/vimc/vimc.cpp | 6 +++---
>> src/libcamera/pipeline/vimc/vimc.cpp | 8 ++++----
>> 3 files changed, 9 insertions(+), 9 deletions(-)
>>
>> diff --git a/include/libcamera/ipa/vimc.mojom b/include/libcamera/ipa/vimc.mojom
>> index cdc03ffb..718b9674 100644
>> --- a/include/libcamera/ipa/vimc.mojom
>> +++ b/include/libcamera/ipa/vimc.mojom
>> @@ -37,9 +37,9 @@ interface IPAVimcInterface {
>> * interface functions that mimick how other pipeline handlers typically
>> * handle parameters at runtime.
>> */
>> - [async] fillParams(uint32 frame, uint32 bufferId);
>> + [async] fillParamsBuffer(uint32 frame, uint32 bufferId);
>> };
>>
>> interface IPAVimcEventInterface {
>> - paramsFilled(uint32 bufferId);
>> + paramsBufferReady(uint32 bufferId);
>> };
>> diff --git a/src/ipa/vimc/vimc.cpp b/src/ipa/vimc/vimc.cpp
>> index a62e72b0..85afb279 100644
>> --- a/src/ipa/vimc/vimc.cpp
>> +++ b/src/ipa/vimc/vimc.cpp
>> @@ -44,7 +44,7 @@ public:
>> void unmapBuffers(const std::vector<unsigned int> &ids) override;
>>
>> void queueRequest(uint32_t frame, const ControlList &controls) override;
>> - void fillParams(uint32_t frame, uint32_t bufferId) override;
>> + void fillParamsBuffer(uint32_t frame, uint32_t bufferId) override;
>>
>> private:
>> void initTrace();
>> @@ -134,7 +134,7 @@ void IPAVimc::queueRequest([[maybe_unused]] uint32_t frame,
>> {
>> }
>>
>> -void IPAVimc::fillParams([[maybe_unused]] uint32_t frame, uint32_t bufferId)
>> +void IPAVimc::fillParamsBuffer([[maybe_unused]] uint32_t frame, uint32_t bufferId)
>> {
>> auto it = buffers_.find(bufferId);
>> if (it == buffers_.end()) {
>> @@ -142,7 +142,7 @@ void IPAVimc::fillParams([[maybe_unused]] uint32_t frame, uint32_t bufferId)
>> return;
>> }
>>
>> - paramsFilled.emit(bufferId);
>> + paramsBufferReady.emit(bufferId);
>> }
>>
>> void IPAVimc::initTrace()
>> diff --git a/src/libcamera/pipeline/vimc/vimc.cpp b/src/libcamera/pipeline/vimc/vimc.cpp
>> index 69b83d07..fff95a34 100644
>> --- a/src/libcamera/pipeline/vimc/vimc.cpp
>> +++ b/src/libcamera/pipeline/vimc/vimc.cpp
>> @@ -53,7 +53,7 @@ public:
>> int init();
>> int allocateMockIPABuffers();
>> void bufferReady(FrameBuffer *buffer);
>> - void paramsFilled(unsigned int id);
>> + void paramsBufferReady(unsigned int id);
>>
>> MediaDevice *media_;
>> std::unique_ptr<CameraSensor> sensor_;
>> @@ -467,7 +467,7 @@ bool PipelineHandlerVimc::match(DeviceEnumerator *enumerator)
>> return false;
>> }
>>
>> - data->ipa_->paramsFilled.connect(data.get(), &VimcCameraData::paramsFilled);
>> + data->ipa_->paramsBufferReady.connect(data.get(), &VimcCameraData::paramsBufferReady);
>>
>> std::string conf = data->ipa_->configurationFile("vimc.conf");
>> data->ipa_->init(IPASettings{ conf, data->sensor_->model() });
>> @@ -589,7 +589,7 @@ void VimcCameraData::bufferReady(FrameBuffer *buffer)
>> pipe->completeBuffer(request, buffer);
>> pipe->completeRequest(request);
>>
>> - ipa_->fillParams(request->sequence(), mockIPABufs_[0]->cookie());
>> + ipa_->fillParamsBuffer(request->sequence(), mockIPABufs_[0]->cookie());
>> }
>>
>> int VimcCameraData::allocateMockIPABuffers()
>> @@ -607,7 +607,7 @@ int VimcCameraData::allocateMockIPABuffers()
>> return video_->exportBuffers(kBufCount, &mockIPABufs_);
>> }
>>
>> -void VimcCameraData::paramsFilled([[maybe_unused]] unsigned int id)
>> +void VimcCameraData::paramsBufferReady([[maybe_unused]] unsigned int id)
>> {
>> }
>>
>> --
>> 2.31.0
>>
More information about the libcamera-devel
mailing list