diff --git a/hardware/nvidia-spiri/platform/t18x/common/kernel-dts/t18x-common-platforms/tegra186-tx2-spiri-camera.dtsi b/hardware/nvidia-spiri/platform/t18x/common/kernel-dts/t18x-common-platforms/tegra186-tx2-spiri-camera.dtsi index 34ec666..4feaba2 100644 --- a/hardware/nvidia-spiri/platform/t18x/common/kernel-dts/t18x-common-platforms/tegra186-tx2-spiri-camera.dtsi +++ b/hardware/nvidia-spiri/platform/t18x/common/kernel-dts/t18x-common-platforms/tegra186-tx2-spiri-camera.dtsi @@ -93,18 +93,18 @@ i2c8 = "/i2c@31e0000"; csi_pixel_bit_depth = "12"; mode_type = "bayer"; pixel_phase = "rggb"; - readout_orientation = "0"; + readout_orientation = "0"; line_length = "1650"; inherent_gain = "1"; pix_clk_hz = "74250000"; - gain_factor = "3"; + gain_factor = "3125"; framerate_factor = "1000000"; exposure_factor = "1000000"; - min_gain_val = "96"; /* 1x */ - max_gain_val = "765"; /* 7.97x */ + min_gain_val = "100000"; /* 1x */ + max_gain_val = "796875"; /* 7.97x */ step_gain_val = "1"; - default_gain = "96"; /* 1x */ + default_gain = "100000"; /* 1x */ min_hdr_ratio = "1"; max_hdr_ratio = "1"; @@ -132,18 +132,18 @@ i2c8 = "/i2c@31e0000"; csi_pixel_bit_depth = "12"; mode_type = "bayer"; pixel_phase = "rggb"; - readout_orientation = "0"; + readout_orientation = "0"; line_length = "1650"; inherent_gain = "1"; pix_clk_hz = "74250000"; - gain_factor = "3"; + gain_factor = "3125"; framerate_factor = "1000000"; exposure_factor = "1000000"; - min_gain_val = "96"; /* 1x */ - max_gain_val = "765"; /* 7.97x */ + min_gain_val = "100000"; /* 1x */ + max_gain_val = "796875"; /* 7.97x */ step_gain_val = "1"; - default_gain = "96"; /* 1x */ + default_gain = "100000"; /* 1x */ min_hdr_ratio = "1"; max_hdr_ratio = "1"; @@ -220,18 +220,18 @@ i2c8 = "/i2c@31e0000"; csi_pixel_bit_depth = "12"; mode_type = "bayer"; pixel_phase = "rggb"; - readout_orientation = "0"; + readout_orientation = "0"; line_length = "1650"; inherent_gain = "1"; pix_clk_hz = "74250000"; - gain_factor = "3"; + gain_factor = "3125"; framerate_factor = "1000000"; exposure_factor = "1000000"; - min_gain_val = "96"; /* 1x */ - max_gain_val = "765"; /* 7.97x */ + min_gain_val = "100000"; /* 1x */ + max_gain_val = "796875"; /* 7.97x */ step_gain_val = "1"; - default_gain = "96"; /* 1x */ + default_gain = "100000"; /* 1x */ min_hdr_ratio = "1"; max_hdr_ratio = "1"; @@ -259,18 +259,18 @@ i2c8 = "/i2c@31e0000"; csi_pixel_bit_depth = "12"; mode_type = "bayer"; pixel_phase = "rggb"; - readout_orientation = "0"; + readout_orientation = "0"; line_length = "1650"; inherent_gain = "1"; pix_clk_hz = "74250000"; - gain_factor = "3"; + gain_factor = "3125"; framerate_factor = "1000000"; exposure_factor = "1000000"; - min_gain_val = "96"; /* 1x */ - max_gain_val = "765"; /* 7.97x */ + min_gain_val = "100000"; /* 1x */ + max_gain_val = "796875"; /* 7.97x */ step_gain_val = "1"; - default_gain = "96"; /* 1x */ + default_gain = "100000"; /* 1x */ min_hdr_ratio = "1"; max_hdr_ratio = "1"; diff --git a/kernel/nvidia-spiri/drivers/media/i2c/mt9m021.c b/kernel/nvidia-spiri/drivers/media/i2c/mt9m021.c index af90b27..c273f3d 100644 --- a/kernel/nvidia-spiri/drivers/media/i2c/mt9m021.c +++ b/kernel/nvidia-spiri/drivers/media/i2c/mt9m021.c @@ -416,7 +416,7 @@ static int mt9m021_set_gain(struct tegracam_device *tc_dev, s64 val) * gain_factor = 3 * */ - gain = val / 3; + gain = val / 3125; /* Update global gain */ err = mt9m021_write_reg16(s_data, MT9M021_GLOBAL_GAIN, gain);