diff mbox series

[06/11,media] marvell-ccic: drop ctlr_reset()

Message ID 20181105073054.24407-7-lkundrak@v3.sk (mailing list archive)
State New, archived
Headers show
Series media: make Marvell camera work on DT-based OLPC XO-1.75 | expand

Commit Message

Lubomir Rintel Nov. 5, 2018, 7:30 a.m. UTC
This accesses the clock registers directly and thus is not too
devicetree friendly. If it's actually needed it needs to be done
differently.

Signed-off-by: Lubomir Rintel <lkundrak@v3.sk>
---
 .../media/platform/marvell-ccic/mcam-core.c   |  6 -----
 .../media/platform/marvell-ccic/mcam-core.h   |  1 -
 .../media/platform/marvell-ccic/mmp-driver.c  | 23 -------------------
 3 files changed, 30 deletions(-)

Comments

Pavel Machek Nov. 5, 2018, 9:11 a.m. UTC | #1
On Mon 2018-11-05 08:30:49, Lubomir Rintel wrote:
> This accesses the clock registers directly and thus is not too
> devicetree friendly. If it's actually needed it needs to be done
> differently.

Device-tree unfriendly is bad, but you still don't want to cause
regression to people needing this.

(Perhaps noone uses this, but...)

> Signed-off-by: Lubomir Rintel <lkundrak@v3.sk>

Git blame says: 7c269f454 . Perhaps its authors should be Cced here,
too?
								Pavel

> ---
>  .../media/platform/marvell-ccic/mcam-core.c   |  6 -----
>  .../media/platform/marvell-ccic/mcam-core.h   |  1 -
>  .../media/platform/marvell-ccic/mmp-driver.c  | 23 -------------------
>  3 files changed, 30 deletions(-)
> 
> diff --git a/drivers/media/platform/marvell-ccic/mcam-core.c b/drivers/media/platform/marvell-ccic/mcam-core.c
> index d24e5b7a3bc5..1b879035948c 100644
> --- a/drivers/media/platform/marvell-ccic/mcam-core.c
> +++ b/drivers/media/platform/marvell-ccic/mcam-core.c
> @@ -1154,12 +1154,6 @@ static void mcam_vb_stop_streaming(struct vb2_queue *vq)
>  	if (cam->state != S_STREAMING)
>  		return;
>  	mcam_ctlr_stop_dma(cam);
> -	/*
> -	 * Reset the CCIC PHY after stopping streaming,
> -	 * otherwise, the CCIC may be unstable.
> -	 */
> -	if (cam->ctlr_reset)
> -		cam->ctlr_reset(cam);
>  	/*
>  	 * VB2 reclaims the buffers, so we need to forget
>  	 * about them.
> diff --git a/drivers/media/platform/marvell-ccic/mcam-core.h b/drivers/media/platform/marvell-ccic/mcam-core.h
> index ad8955f9f0a1..f93f23faf364 100644
> --- a/drivers/media/platform/marvell-ccic/mcam-core.h
> +++ b/drivers/media/platform/marvell-ccic/mcam-core.h
> @@ -137,7 +137,6 @@ struct mcam_camera {
>  	int (*plat_power_up) (struct mcam_camera *cam);
>  	void (*plat_power_down) (struct mcam_camera *cam);
>  	void (*calc_dphy) (struct mcam_camera *cam);
> -	void (*ctlr_reset) (struct mcam_camera *cam);
>  
>  	/*
>  	 * Everything below here is private to the mcam core and
> diff --git a/drivers/media/platform/marvell-ccic/mmp-driver.c b/drivers/media/platform/marvell-ccic/mmp-driver.c
> index 70a2833db0d1..92a79ad8a12c 100644
> --- a/drivers/media/platform/marvell-ccic/mmp-driver.c
> +++ b/drivers/media/platform/marvell-ccic/mmp-driver.c
> @@ -183,28 +183,6 @@ static void mmpcam_power_down(struct mcam_camera *mcam)
>  	mcam_clk_disable(mcam);
>  }
>  
> -static void mcam_ctlr_reset(struct mcam_camera *mcam)
> -{
> -	unsigned long val;
> -	struct mmp_camera *cam = mcam_to_cam(mcam);
> -
> -	if (mcam->ccic_id) {
> -		/*
> -		 * Using CCIC2
> -		 */
> -		val = ioread32(cam->power_regs + REG_CCIC2_CRCR);
> -		iowrite32(val & ~0x2, cam->power_regs + REG_CCIC2_CRCR);
> -		iowrite32(val | 0x2, cam->power_regs + REG_CCIC2_CRCR);
> -	} else {
> -		/*
> -		 * Using CCIC1
> -		 */
> -		val = ioread32(cam->power_regs + REG_CCIC_CRCR);
> -		iowrite32(val & ~0x2, cam->power_regs + REG_CCIC_CRCR);
> -		iowrite32(val | 0x2, cam->power_regs + REG_CCIC_CRCR);
> -	}
> -}
> -
>  /*
>   * calc the dphy register values
>   * There are three dphy registers being used.
> @@ -352,7 +330,6 @@ static int mmpcam_probe(struct platform_device *pdev)
>  	mcam = &cam->mcam;
>  	mcam->plat_power_up = mmpcam_power_up;
>  	mcam->plat_power_down = mmpcam_power_down;
> -	mcam->ctlr_reset = mcam_ctlr_reset;
>  	mcam->calc_dphy = mmpcam_calc_dphy;
>  	mcam->dev = &pdev->dev;
>  	mcam->use_smbus = 0;
diff mbox series

Patch

diff --git a/drivers/media/platform/marvell-ccic/mcam-core.c b/drivers/media/platform/marvell-ccic/mcam-core.c
index d24e5b7a3bc5..1b879035948c 100644
--- a/drivers/media/platform/marvell-ccic/mcam-core.c
+++ b/drivers/media/platform/marvell-ccic/mcam-core.c
@@ -1154,12 +1154,6 @@  static void mcam_vb_stop_streaming(struct vb2_queue *vq)
 	if (cam->state != S_STREAMING)
 		return;
 	mcam_ctlr_stop_dma(cam);
-	/*
-	 * Reset the CCIC PHY after stopping streaming,
-	 * otherwise, the CCIC may be unstable.
-	 */
-	if (cam->ctlr_reset)
-		cam->ctlr_reset(cam);
 	/*
 	 * VB2 reclaims the buffers, so we need to forget
 	 * about them.
diff --git a/drivers/media/platform/marvell-ccic/mcam-core.h b/drivers/media/platform/marvell-ccic/mcam-core.h
index ad8955f9f0a1..f93f23faf364 100644
--- a/drivers/media/platform/marvell-ccic/mcam-core.h
+++ b/drivers/media/platform/marvell-ccic/mcam-core.h
@@ -137,7 +137,6 @@  struct mcam_camera {
 	int (*plat_power_up) (struct mcam_camera *cam);
 	void (*plat_power_down) (struct mcam_camera *cam);
 	void (*calc_dphy) (struct mcam_camera *cam);
-	void (*ctlr_reset) (struct mcam_camera *cam);
 
 	/*
 	 * Everything below here is private to the mcam core and
diff --git a/drivers/media/platform/marvell-ccic/mmp-driver.c b/drivers/media/platform/marvell-ccic/mmp-driver.c
index 70a2833db0d1..92a79ad8a12c 100644
--- a/drivers/media/platform/marvell-ccic/mmp-driver.c
+++ b/drivers/media/platform/marvell-ccic/mmp-driver.c
@@ -183,28 +183,6 @@  static void mmpcam_power_down(struct mcam_camera *mcam)
 	mcam_clk_disable(mcam);
 }
 
-static void mcam_ctlr_reset(struct mcam_camera *mcam)
-{
-	unsigned long val;
-	struct mmp_camera *cam = mcam_to_cam(mcam);
-
-	if (mcam->ccic_id) {
-		/*
-		 * Using CCIC2
-		 */
-		val = ioread32(cam->power_regs + REG_CCIC2_CRCR);
-		iowrite32(val & ~0x2, cam->power_regs + REG_CCIC2_CRCR);
-		iowrite32(val | 0x2, cam->power_regs + REG_CCIC2_CRCR);
-	} else {
-		/*
-		 * Using CCIC1
-		 */
-		val = ioread32(cam->power_regs + REG_CCIC_CRCR);
-		iowrite32(val & ~0x2, cam->power_regs + REG_CCIC_CRCR);
-		iowrite32(val | 0x2, cam->power_regs + REG_CCIC_CRCR);
-	}
-}
-
 /*
  * calc the dphy register values
  * There are three dphy registers being used.
@@ -352,7 +330,6 @@  static int mmpcam_probe(struct platform_device *pdev)
 	mcam = &cam->mcam;
 	mcam->plat_power_up = mmpcam_power_up;
 	mcam->plat_power_down = mmpcam_power_down;
-	mcam->ctlr_reset = mcam_ctlr_reset;
 	mcam->calc_dphy = mmpcam_calc_dphy;
 	mcam->dev = &pdev->dev;
 	mcam->use_smbus = 0;