Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 9fe17dd1 authored by Lokesh Kumar Aakulu's avatar Lokesh Kumar Aakulu Committed by Gerrit - the friendly Code Review server
Browse files

msm: camera: isp: configure correct pixel per line with Testgen



When camera session is operated with isp test generator signal
configure pixel per line as per testgen configuration not with
default pix camif config.

Change-Id: I444bb9efefea764806bea13ffbd0e136f9af2f6b
Signed-off-by: default avatarLokesh Kumar Aakulu <lkumar@codeaurora.org>
parent 6cec3ff5
Loading
Loading
Loading
Loading
+10 −2
Original line number Diff line number Diff line
@@ -1360,6 +1360,7 @@ void msm_vfe47_cfg_camif(struct vfe_device *vfe_dev,
{
	uint16_t first_pixel, last_pixel, first_line, last_line;
	struct msm_vfe_camif_cfg *camif_cfg = &pix_cfg->camif_cfg;
	struct msm_vfe_testgen_cfg *testgen_cfg = &pix_cfg->testgen_cfg;
	uint32_t val, subsample_period, subsample_pattern;
	uint32_t irq_sub_period = 32;
	uint32_t frame_sub_period = 32;
@@ -1383,8 +1384,15 @@ void msm_vfe47_cfg_camif(struct vfe_device *vfe_dev,
	subsample_period = camif_cfg->subsample_cfg.irq_subsample_period;
	subsample_pattern = camif_cfg->subsample_cfg.irq_subsample_pattern;

	if (pix_cfg->input_mux == TESTGEN)
		msm_camera_io_w((testgen_cfg->lines_per_frame - 1) << 16 |
			(testgen_cfg->pixels_per_line - 1),
			vfe_dev->vfe_base + 0x484);
	else
		msm_camera_io_w((camif_cfg->lines_per_frame - 1) << 16 |
		(camif_cfg->pixels_per_line - 1), vfe_dev->vfe_base + 0x484);
			(camif_cfg->pixels_per_line - 1),
			vfe_dev->vfe_base + 0x484);

	if (bus_sub_en) {
		val = msm_camera_io_r(vfe_dev->vfe_base + 0x47C);
		val &= 0xFFFFFFDF;
+6 −2
Original line number Diff line number Diff line
@@ -479,8 +479,12 @@ static int msm_isp_cfg_pix(struct vfe_device *vfe_dev,

	if (input_cfg->d.pix_cfg.input_mux == CAMIF ||
		input_cfg->d.pix_cfg.input_mux == TESTGEN) {
		if (input_cfg->d.pix_cfg.input_mux == CAMIF)
			vfe_dev->axi_data.src_info[VFE_PIX_0].width =
				input_cfg->d.pix_cfg.camif_cfg.pixels_per_line;
		if (input_cfg->d.pix_cfg.input_mux == TESTGEN)
			vfe_dev->axi_data.src_info[VFE_PIX_0].width =
			input_cfg->d.pix_cfg.testgen_cfg.pixels_per_line;
		if (input_cfg->d.pix_cfg.camif_cfg.subsample_cfg.
			sof_counter_step > 0) {
			vfe_dev->axi_data.src_info[VFE_PIX_0].