Skip to content

Commit

Permalink
overlays: Add "always-on" parameter to imx477 and imx296
Browse files Browse the repository at this point in the history
Leave the camera's power supplies up, to prevent the camera
clamping its 1.8V digital I/Os to ground. This may be useful
when synchronizing multiple camera systems using XVS or XTRIG.

Signed-off-by: Nick Hollinghurst <nick.hollinghurst@raspberrypi.com>
  • Loading branch information
njhollinghurst committed Dec 15, 2023
1 parent 4753721 commit d868adf
Show file tree
Hide file tree
Showing 3 changed files with 24 additions and 0 deletions.
6 changes: 6 additions & 0 deletions arch/arm/boot/dts/overlays/README
Original file line number Diff line number Diff line change
Expand Up @@ -2514,6 +2514,8 @@ Params: rotation Mounting rotation of the camera sensor (0 or
clock-frequency Sets the clock frequency to match that used on
the board, which should be one of 54000000
(the default), 37125000 or 74250000.
always-on Leave the regulator powered up, to stop the
camera clamping I/Os such as XTRIG to 0V.


Name: imx327
Expand Down Expand Up @@ -2552,6 +2554,8 @@ Params: rotation Mounting rotation of the camera sensor (0 or
configuring the sensor (default on)
cam0 Adopt the default configuration for CAM0 on a
Compute Module (CSI0, i2c_vc, and cam0_reg).
always-on Leave the regulator powered up, to stop the
camera clamping I/Os such as XVS to 0V.


Name: imx462
Expand Down Expand Up @@ -2590,6 +2594,8 @@ Params: rotation Mounting rotation of the camera sensor (0 or
configuring the sensor (default on)
cam0 Adopt the default configuration for CAM0 on a
Compute Module (CSI0, i2c_vc, and cam0_reg).
always-on Leave the regulator powered up, to stop the
camera clamping I/Os such as XVS to 0V.


Name: imx519
Expand Down
9 changes: 9 additions & 0 deletions arch/arm/boot/dts/overlays/imx296-overlay.dts
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,13 @@
};
};

reg_alwayson_frag: fragment@99 {
target = <&cam1_reg>;
__dormant__ {
regulator-always-on;
};
};

i2c_frag: fragment@100 {
target = <&i2c_csi_dsi>;
__overlay__ {
Expand Down Expand Up @@ -98,8 +105,10 @@
<&csi_frag>, "target:0=",<&csi0>,
<&clk_frag>, "target:0=",<&cam0_clk>,
<&reg_frag>, "target:0=",<&cam0_reg>,
<&reg_alwayson_frag>, "target:0=",<&cam0_reg>,
<&imx296>, "clocks:0=",<&cam0_clk>,
<&imx296>, "avdd-supply:0=",<&cam0_reg>;
clock-frequency = <&clk_over>, "clock-frequency:0";
always-on = <0>, "+99";
};
};
9 changes: 9 additions & 0 deletions arch/arm/boot/dts/overlays/imx477_378-overlay.dtsi
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,13 @@
};
};

reg_alwayson_frag: fragment@99 {
target = <&cam1_reg>;
__dormant__ {
regulator-always-on;
};
};

i2c_frag: fragment@100 {
target = <&i2c_csi_dsi>;
__overlay__ {
Expand Down Expand Up @@ -69,8 +76,10 @@
<&csi_frag>, "target:0=",<&csi0>,
<&clk_frag>, "target:0=",<&cam0_clk>,
<&reg_frag>, "target:0=",<&cam0_reg>,
<&reg_alwayson_frag>, "target:0=",<&cam0_reg>,
<&cam_node>, "clocks:0=",<&cam0_clk>,
<&cam_node>, "VANA-supply:0=",<&cam0_reg>;
always-on = <0>, "+99";
};
};

Expand Down

0 comments on commit d868adf

Please sign in to comment.