libcamera: pipelines: Use sensor ID as camera name
Use the CameraSensor ID as the camera name in pipelines that uses a
CameraSensors, this is done in preparation of turning the camera name
into an ID. The CameraSensor ID meets the requirements that will be put
on camera ID.
Before this change example of camera names:
* OF based systems
ov5695 7-0036
ov2685 7-003c
* ACPI based systems
ov13858 8-0010
ov5670 10-0036
* VIMC
VIMC Sensor B
After this change the same cameras are:
* OF based systems
/base/i2c@ff160000/camera@36
/base/i2c@ff160000/camera@36
* ACPI based systems
\_SB_.PCI0.I2C2.CAM0
\_SB_.PCI0.I2C4.CAM1
* VIMC
platform/vimc.0 Sensor B
Signed-off-by: Niklas Söderlund <niklas.soderlund@ragnatech.se>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Reviewed-by: Jacopo Mondi <jacopo@jmondi.org>
This commit is contained in:
@@ -805,16 +805,15 @@ int PipelineHandlerIPU3::registerCameras()
|
||||
&IPU3CameraData::imguOutputBufferReady);
|
||||
|
||||
/* Create and register the Camera instance. */
|
||||
std::string cameraName = cio2->sensor()->entity()->name();
|
||||
std::shared_ptr<Camera> camera = Camera::create(this,
|
||||
cameraName,
|
||||
streams);
|
||||
std::string cameraId = cio2->sensor()->id();
|
||||
std::shared_ptr<Camera> camera =
|
||||
Camera::create(this, cameraId, streams);
|
||||
|
||||
registerCamera(std::move(camera), std::move(data));
|
||||
|
||||
LOG(IPU3, Info)
|
||||
<< "Registered Camera[" << numCameras << "] \""
|
||||
<< cameraName << "\""
|
||||
<< cameraId << "\""
|
||||
<< " connected to CSI-2 receiver " << id;
|
||||
|
||||
numCameras++;
|
||||
|
||||
@@ -972,7 +972,8 @@ bool PipelineHandlerRPi::match(DeviceEnumerator *enumerator)
|
||||
streams.insert(&data->isp_[Isp::Stats]);
|
||||
|
||||
/* Create and register the camera. */
|
||||
std::shared_ptr<Camera> camera = Camera::create(this, data->sensor_->model(), streams);
|
||||
std::shared_ptr<Camera> camera =
|
||||
Camera::create(this, data->sensor_->id(), streams);
|
||||
registerCamera(std::move(camera), std::move(data));
|
||||
|
||||
return true;
|
||||
|
||||
@@ -971,7 +971,7 @@ int PipelineHandlerRkISP1::createCamera(MediaEntity *sensor)
|
||||
|
||||
std::set<Stream *> streams{ &data->stream_ };
|
||||
std::shared_ptr<Camera> camera =
|
||||
Camera::create(this, sensor->name(), streams);
|
||||
Camera::create(this, data->sensor_->id(), streams);
|
||||
registerCamera(std::move(camera), std::move(data));
|
||||
|
||||
return 0;
|
||||
|
||||
@@ -815,7 +815,7 @@ bool SimplePipelineHandler::match(DeviceEnumerator *enumerator)
|
||||
continue;
|
||||
|
||||
std::shared_ptr<Camera> camera =
|
||||
Camera::create(this, data->sensor_->entity()->name(),
|
||||
Camera::create(this, data->sensor_->id(),
|
||||
data->streams());
|
||||
registerCamera(std::move(camera), std::move(data));
|
||||
}
|
||||
|
||||
@@ -432,9 +432,9 @@ bool PipelineHandlerVimc::match(DeviceEnumerator *enumerator)
|
||||
return false;
|
||||
|
||||
/* Create and register the camera. */
|
||||
std::string name{ "VIMC " + data->sensor_->model() };
|
||||
std::set<Stream *> streams{ &data->stream_ };
|
||||
std::shared_ptr<Camera> camera = Camera::create(this, name, streams);
|
||||
std::shared_ptr<Camera> camera =
|
||||
Camera::create(this, data->sensor_->id(), streams);
|
||||
registerCamera(std::move(camera), std::move(data));
|
||||
|
||||
return true;
|
||||
|
||||
Reference in New Issue
Block a user