ipa: ipc: Rename CameraSensorInfo to IPACameraSensorInfo

This matches the naming convention for IPA IPC.

Signed-off-by: Umang Jain <umang.jain@ideasonboard.com>
Acked-by: Paul Elder <paul.elder@ideasonboard.com>
Reviewed-by: Jean-Michel Hautbois <jeanmichel.hautbois@ideasonboard.com>
Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
This commit is contained in:
Umang Jain 2021-05-24 14:50:20 +05:30 committed by Laurent Pinchart
parent 6449590b63
commit 378f572e7f
13 changed files with 34 additions and 34 deletions

View file

@ -74,11 +74,11 @@ serialization, any custom data containers must be defined with the mojo IDL.
The following list of libcamera objects are supported in the interface The following list of libcamera objects are supported in the interface
definition, and may be used as function parameter types or struct field types: definition, and may be used as function parameter types or struct field types:
- libcamera.CameraSensorInfo
- libcamera.ControlInfoMap - libcamera.ControlInfoMap
- libcamera.ControlList - libcamera.ControlList
- libcamera.FileDescriptor - libcamera.FileDescriptor
- libcamera.IPABuffer - libcamera.IPABuffer
- libcamera.IPACameraSensorInfo
- libcamera.IPASettings - libcamera.IPASettings
- libcamera.IPAStream - libcamera.IPAStream
- libcamera.Point - libcamera.Point
@ -208,7 +208,7 @@ The following is an example of a main interface definition:
start() => (int32 ret); start() => (int32 ret);
stop(); stop();
configure(libcamera.CameraSensorInfo sensorInfo, configure(libcamera.IPACameraSensorInfo sensorInfo,
map<uint32, libcamera.IPAStream> streamConfig, map<uint32, libcamera.IPAStream> streamConfig,
map<uint32, libcamera.ControlInfoMap> entityControls, map<uint32, libcamera.ControlInfoMap> entityControls,
ConfigInput ipaConfig) ConfigInput ipaConfig)
@ -470,7 +470,7 @@ definition:
.. code-block:: none .. code-block:: none
configure(libcamera.CameraSensorInfo sensorInfo, configure(libcamera.IPACameraSensorInfo sensorInfo,
uint32 exampleNumber, uint32 exampleNumber,
map<uint32, libcamera.IPAStream> streamConfig, map<uint32, libcamera.IPAStream> streamConfig,
map<uint32, libcamera.ControlInfoMap> entityControls, map<uint32, libcamera.ControlInfoMap> entityControls,
@ -481,7 +481,7 @@ We will need to implement a function with the following function signature:
.. code-block:: C++ .. code-block:: C++
int configure(const CameraSensorInfo &sensorInfo, int configure(const IPACameraSensorInfo &sensorInfo,
uint32_t exampleNumber, uint32_t exampleNumber,
const std::map<unsigned int, IPAStream> &streamConfig, const std::map<unsigned int, IPAStream> &streamConfig,
const std::map<unsigned int, ControlInfoMap> &entityControls, const std::map<unsigned int, ControlInfoMap> &entityControls,

View file

@ -51,7 +51,7 @@ public:
V4L2Subdevice *device() { return subdev_.get(); } V4L2Subdevice *device() { return subdev_.get(); }
const ControlList &properties() const { return properties_; } const ControlList &properties() const { return properties_; }
int sensorInfo(CameraSensorInfo *info) const; int sensorInfo(IPACameraSensorInfo *info) const;
void updateControlInfo(); void updateControlInfo();

View file

@ -78,7 +78,7 @@ module libcamera;
uint32 height; uint32 height;
}; };
struct CameraSensorInfo { struct IPACameraSensorInfo {
string model; string model;
uint32 bitsPerPixel; uint32 bitsPerPixel;

View file

@ -68,7 +68,7 @@ interface IPARPiInterface {
* The \a ipaConfig and \a controls parameters carry data passed by the * The \a ipaConfig and \a controls parameters carry data passed by the
* pipeline handler to the IPA and back. * pipeline handler to the IPA and back.
*/ */
configure(libcamera.CameraSensorInfo sensorInfo, configure(libcamera.IPACameraSensorInfo sensorInfo,
map<uint32, libcamera.IPAStream> streamConfig, map<uint32, libcamera.IPAStream> streamConfig,
map<uint32, libcamera.ControlInfoMap> entityControls, map<uint32, libcamera.ControlInfoMap> entityControls,
IPAConfig ipaConfig) IPAConfig ipaConfig)

View file

@ -34,7 +34,7 @@ interface IPARkISP1Interface {
start() => (int32 ret); start() => (int32 ret);
stop(); stop();
configure(libcamera.CameraSensorInfo sensorInfo, configure(libcamera.IPACameraSensorInfo sensorInfo,
map<uint32, libcamera.IPAStream> streamConfig, map<uint32, libcamera.IPAStream> streamConfig,
map<uint32, libcamera.ControlInfoMap> entityControls) map<uint32, libcamera.ControlInfoMap> entityControls)
=> (int32 ret); => (int32 ret);

View file

@ -39,7 +39,7 @@ static constexpr uint32_t kMaxGain = kMaxISO / 100;
static constexpr uint32_t kMinExposure = 1; static constexpr uint32_t kMinExposure = 1;
static constexpr uint32_t kMaxExposure = 1976; static constexpr uint32_t kMaxExposure = 1976;
/* \todo those should be get from CameraSensorInfo ! */ /* \todo those should be got from IPACameraSensorInfo ! */
/* line duration in microseconds */ /* line duration in microseconds */
static constexpr double kLineDuration = 16.8; static constexpr double kLineDuration = 16.8;
static constexpr double kMaxExposureTime = kMaxExposure * kLineDuration; static constexpr double kMaxExposureTime = kMaxExposure * kLineDuration;

View file

@ -89,7 +89,7 @@ public:
void start(const ControlList &controls, ipa::RPi::StartConfig *startConfig) override; void start(const ControlList &controls, ipa::RPi::StartConfig *startConfig) override;
void stop() override {} void stop() override {}
int configure(const CameraSensorInfo &sensorInfo, int configure(const IPACameraSensorInfo &sensorInfo,
const std::map<unsigned int, IPAStream> &streamConfig, const std::map<unsigned int, IPAStream> &streamConfig,
const std::map<unsigned int, ControlInfoMap> &entityControls, const std::map<unsigned int, ControlInfoMap> &entityControls,
const ipa::RPi::IPAConfig &data, const ipa::RPi::IPAConfig &data,
@ -101,7 +101,7 @@ public:
void signalIspPrepare(const ipa::RPi::ISPConfig &data) override; void signalIspPrepare(const ipa::RPi::ISPConfig &data) override;
private: private:
void setMode(const CameraSensorInfo &sensorInfo); void setMode(const IPACameraSensorInfo &sensorInfo);
bool validateSensorControls(); bool validateSensorControls();
bool validateIspControls(); bool validateIspControls();
void queueRequest(const ControlList &controls); void queueRequest(const ControlList &controls);
@ -278,7 +278,7 @@ void IPARPi::start(const ControlList &controls, ipa::RPi::StartConfig *startConf
lastRunTimestamp_ = 0; lastRunTimestamp_ = 0;
} }
void IPARPi::setMode(const CameraSensorInfo &sensorInfo) void IPARPi::setMode(const IPACameraSensorInfo &sensorInfo)
{ {
mode_.bitdepth = sensorInfo.bitsPerPixel; mode_.bitdepth = sensorInfo.bitsPerPixel;
mode_.width = sensorInfo.outputSize.width; mode_.width = sensorInfo.outputSize.width;
@ -323,7 +323,7 @@ void IPARPi::setMode(const CameraSensorInfo &sensorInfo)
mode_.max_frame_length = sensorInfo.maxFrameLength; mode_.max_frame_length = sensorInfo.maxFrameLength;
} }
int IPARPi::configure(const CameraSensorInfo &sensorInfo, int IPARPi::configure(const IPACameraSensorInfo &sensorInfo,
[[maybe_unused]] const std::map<unsigned int, IPAStream> &streamConfig, [[maybe_unused]] const std::map<unsigned int, IPAStream> &streamConfig,
const std::map<unsigned int, ControlInfoMap> &entityControls, const std::map<unsigned int, ControlInfoMap> &entityControls,
const ipa::RPi::IPAConfig &ipaConfig, const ipa::RPi::IPAConfig &ipaConfig,

View file

@ -37,7 +37,7 @@ public:
int start() override; int start() override;
void stop() override {} void stop() override {}
int configure(const CameraSensorInfo &info, int configure(const IPACameraSensorInfo &info,
const std::map<uint32_t, IPAStream> &streamConfig, const std::map<uint32_t, IPAStream> &streamConfig,
const std::map<uint32_t, ControlInfoMap> &entityControls) override; const std::map<uint32_t, ControlInfoMap> &entityControls) override;
void mapBuffers(const std::vector<IPABuffer> &buffers) override; void mapBuffers(const std::vector<IPABuffer> &buffers) override;
@ -90,12 +90,12 @@ int IPARkISP1::start()
} }
/** /**
* \todo The RkISP1 pipeline currently provides an empty CameraSensorInfo * \todo The RkISP1 pipeline currently provides an empty IPACameraSensorInfo
* if the connected sensor does not provide enough information to properly * if the connected sensor does not provide enough information to properly
* assemble one. Make sure the reported sensor information are relevant * assemble one. Make sure the reported sensor information are relevant
* before accessing them. * before accessing them.
*/ */
int IPARkISP1::configure([[maybe_unused]] const CameraSensorInfo &info, int IPARkISP1::configure([[maybe_unused]] const IPACameraSensorInfo &info,
[[maybe_unused]] const std::map<uint32_t, IPAStream> &streamConfig, [[maybe_unused]] const std::map<uint32_t, IPAStream> &streamConfig,
const std::map<uint32_t, ControlInfoMap> &entityControls) const std::map<uint32_t, ControlInfoMap> &entityControls)
{ {

View file

@ -205,7 +205,7 @@ int CameraSensor::validateSensorDriver()
* *
* Failures in reading any of the targets are not deemed to be fatal, * Failures in reading any of the targets are not deemed to be fatal,
* but some properties and features, like constructing a * but some properties and features, like constructing a
* CameraSensorInfo for the IPA module, won't be supported. * IPACameraSensorInfo for the IPA module, won't be supported.
* *
* \todo Make support for selection targets mandatory as soon as all * \todo Make support for selection targets mandatory as soon as all
* test platforms have been updated. * test platforms have been updated.
@ -674,7 +674,7 @@ int CameraSensor::setControls(ControlList *ctrls)
* *
* \return 0 on success, a negative error code otherwise * \return 0 on success, a negative error code otherwise
*/ */
int CameraSensor::sensorInfo(CameraSensorInfo *info) const int CameraSensor::sensorInfo(IPACameraSensorInfo *info) const
{ {
if (!bayerFormat_) if (!bayerFormat_)
return -EINVAL; return -EINVAL;
@ -701,7 +701,7 @@ int CameraSensor::sensorInfo(CameraSensorInfo *info) const
} }
/* /*
* CameraSensorInfo::analogCrop::x and CameraSensorInfo::analogCrop::y * IPACameraSensorInfo::analogCrop::x and IPACameraSensorInfo::analogCrop::y
* are defined relatively to the active pixel area, while V4L2's * are defined relatively to the active pixel area, while V4L2's
* TGT_CROP target is defined in respect to the full pixel array. * TGT_CROP target is defined in respect to the full pixel array.
* *

View file

@ -87,7 +87,7 @@ namespace libcamera {
*/ */
/** /**
* \struct CameraSensorInfo * \struct IPACameraSensorInfo
* \brief Report the image sensor characteristics * \brief Report the image sensor characteristics
* *
* The structure reports image sensor characteristics used by IPA modules to * The structure reports image sensor characteristics used by IPA modules to
@ -105,7 +105,7 @@ namespace libcamera {
*/ */
/** /**
* \var CameraSensorInfo::model * \var IPACameraSensorInfo::model
* \brief The image sensor model name * \brief The image sensor model name
* *
* The sensor model name is a free-formed string that uniquely identifies the * The sensor model name is a free-formed string that uniquely identifies the
@ -113,18 +113,18 @@ namespace libcamera {
*/ */
/** /**
* \var CameraSensorInfo::bitsPerPixel * \var IPACameraSensorInfo::bitsPerPixel
* \brief The number of bits per pixel of the image format produced by the * \brief The number of bits per pixel of the image format produced by the
* image sensor * image sensor
*/ */
/** /**
* \var CameraSensorInfo::activeAreaSize * \var IPACameraSensorInfo::activeAreaSize
* \brief The size of the pixel array active area of the sensor * \brief The size of the pixel array active area of the sensor
*/ */
/** /**
* \var CameraSensorInfo::analogCrop * \var IPACameraSensorInfo::analogCrop
* \brief The portion of the pixel array active area which is read-out and * \brief The portion of the pixel array active area which is read-out and
* processed * processed
* *
@ -137,7 +137,7 @@ namespace libcamera {
*/ */
/** /**
* \var CameraSensorInfo::outputSize * \var IPACameraSensorInfo::outputSize
* \brief The size of the images produced by the camera sensor * \brief The size of the images produced by the camera sensor
* *
* The output image size defines the horizontal and vertical sizes of the images * The output image size defines the horizontal and vertical sizes of the images
@ -150,7 +150,7 @@ namespace libcamera {
*/ */
/** /**
* \var CameraSensorInfo::pixelRate * \var IPACameraSensorInfo::pixelRate
* \brief The number of pixels produced in a second * \brief The number of pixels produced in a second
* *
* To obtain the read-out time in seconds of a full line: * To obtain the read-out time in seconds of a full line:
@ -161,14 +161,14 @@ namespace libcamera {
*/ */
/** /**
* \var CameraSensorInfo::lineLength * \var IPACameraSensorInfo::lineLength
* \brief Total line length in pixels * \brief Total line length in pixels
* *
* The total line length in pixel clock periods, including blanking. * The total line length in pixel clock periods, including blanking.
*/ */
/** /**
* \var CameraSensorInfo::minFrameLength * \var IPACameraSensorInfo::minFrameLength
* \brief The minimum allowable frame length in units of lines * \brief The minimum allowable frame length in units of lines
* *
* The sensor frame length comprises of active output lines and blanking lines * The sensor frame length comprises of active output lines and blanking lines
@ -183,7 +183,7 @@ namespace libcamera {
*/ */
/** /**
* \var CameraSensorInfo::maxFrameLength * \var IPACameraSensorInfo::maxFrameLength
* \brief The maximum allowable frame length in units of lines * \brief The maximum allowable frame length in units of lines
* *
* The sensor frame length comprises of active output lines and blanking lines * The sensor frame length comprises of active output lines and blanking lines

View file

@ -547,7 +547,7 @@ int PipelineHandlerIPU3::configure(Camera *camera, CameraConfiguration *c)
if (ret) if (ret)
return ret; return ret;
CameraSensorInfo sensorInfo; IPACameraSensorInfo sensorInfo;
cio2->sensor()->sensorInfo(&sensorInfo); cio2->sensor()->sensorInfo(&sensorInfo);
data->cropRegion_ = sensorInfo.analogCrop; data->cropRegion_ = sensorInfo.analogCrop;
@ -924,7 +924,7 @@ int PipelineHandlerIPU3::initControls(IPU3CameraData *data)
if (ret) if (ret)
return ret; return ret;
CameraSensorInfo sensorInfo{}; IPACameraSensorInfo sensorInfo{};
ret = sensor->sensorInfo(&sensorInfo); ret = sensor->sensorInfo(&sensorInfo);
if (ret) if (ret)
return ret; return ret;

View file

@ -210,7 +210,7 @@ public:
BayerFormat::Order nativeBayerOrder_; BayerFormat::Order nativeBayerOrder_;
/* For handling digital zoom. */ /* For handling digital zoom. */
CameraSensorInfo sensorInfo_; IPACameraSensorInfo sensorInfo_;
Rectangle ispCrop_; /* crop in ISP (camera mode) pixels */ Rectangle ispCrop_; /* crop in ISP (camera mode) pixels */
Rectangle scalerCrop_; /* crop in sensor native pixels */ Rectangle scalerCrop_; /* crop in sensor native pixels */
Size ispMinCropSize_; Size ispMinCropSize_;
@ -1275,7 +1275,7 @@ int RPiCameraData::configureIPA(const CameraConfiguration *config)
ipaConfig.lsTableHandle = lsTable_; ipaConfig.lsTableHandle = lsTable_;
} }
/* We store the CameraSensorInfo for digital zoom calculations. */ /* We store the IPACameraSensorInfo for digital zoom calculations. */
int ret = sensor_->sensorInfo(&sensorInfo_); int ret = sensor_->sensorInfo(&sensorInfo_);
if (ret) { if (ret) {
LOG(RPI, Error) << "Failed to retrieve camera sensor info"; LOG(RPI, Error) << "Failed to retrieve camera sensor info";

View file

@ -648,7 +648,7 @@ int PipelineHandlerRkISP1::configure(Camera *camera, CameraConfiguration *c)
return ret; return ret;
/* Inform IPA of stream configuration and sensor controls. */ /* Inform IPA of stream configuration and sensor controls. */
CameraSensorInfo sensorInfo = {}; IPACameraSensorInfo sensorInfo = {};
ret = data->sensor_->sensorInfo(&sensorInfo); ret = data->sensor_->sensorInfo(&sensorInfo);
if (ret) { if (ret) {
/* \todo Turn this into a hard failure. */ /* \todo Turn this into a hard failure. */