|
@@ -346,10 +346,15 @@ static int cam_actuator_platform_component_bind(struct device *dev,
|
|
{
|
|
{
|
|
int32_t rc = 0;
|
|
int32_t rc = 0;
|
|
int32_t i = 0;
|
|
int32_t i = 0;
|
|
|
|
+ bool i3c_i2c_target;
|
|
struct cam_actuator_ctrl_t *a_ctrl = NULL;
|
|
struct cam_actuator_ctrl_t *a_ctrl = NULL;
|
|
struct cam_actuator_soc_private *soc_private = NULL;
|
|
struct cam_actuator_soc_private *soc_private = NULL;
|
|
struct platform_device *pdev = to_platform_device(dev);
|
|
struct platform_device *pdev = to_platform_device(dev);
|
|
|
|
|
|
|
|
+ i3c_i2c_target = of_property_read_bool(pdev->dev.of_node, "i3c-i2c-target");
|
|
|
|
+ if (i3c_i2c_target)
|
|
|
|
+ return 0;
|
|
|
|
+
|
|
/* Create actuator control structure */
|
|
/* Create actuator control structure */
|
|
a_ctrl = devm_kzalloc(&pdev->dev,
|
|
a_ctrl = devm_kzalloc(&pdev->dev,
|
|
sizeof(struct cam_actuator_ctrl_t), GFP_KERNEL);
|
|
sizeof(struct cam_actuator_ctrl_t), GFP_KERNEL);
|
|
@@ -444,8 +449,13 @@ static void cam_actuator_platform_component_unbind(struct device *dev,
|
|
struct cam_actuator_ctrl_t *a_ctrl;
|
|
struct cam_actuator_ctrl_t *a_ctrl;
|
|
struct cam_actuator_soc_private *soc_private;
|
|
struct cam_actuator_soc_private *soc_private;
|
|
struct cam_sensor_power_ctrl_t *power_info;
|
|
struct cam_sensor_power_ctrl_t *power_info;
|
|
|
|
+ bool i3c_i2c_target;
|
|
struct platform_device *pdev = to_platform_device(dev);
|
|
struct platform_device *pdev = to_platform_device(dev);
|
|
|
|
|
|
|
|
+ i3c_i2c_target = of_property_read_bool(pdev->dev.of_node, "i3c-i2c-target");
|
|
|
|
+ if (i3c_i2c_target)
|
|
|
|
+ return;
|
|
|
|
+
|
|
a_ctrl = platform_get_drvdata(pdev);
|
|
a_ctrl = platform_get_drvdata(pdev);
|
|
if (!a_ctrl) {
|
|
if (!a_ctrl) {
|
|
CAM_ERR(CAM_ACTUATOR, "Actuator device is NULL");
|
|
CAM_ERR(CAM_ACTUATOR, "Actuator device is NULL");
|