Hi Sergio,

Thanks for the patch.

On Mon, Nov 15, 2010 at 03:29:59PM +0100, ext Sergio Aguirre wrote:
> 1. Get rid of CSI2 / CCP2 power settings, as they are controlled
>    in the receivers code anyways.

CCP2 is not correctly handling this. It's setting SMART STANDBY mode one
when reading from memory. You should fix it before remove such code from
ISP core driver.

> 2. Avoid code duplication.

Agree. But only after considering the comment above.

Regards,

David

> 
> Signed-off-by: Sergio Aguirre <saagui...@ti.com>
> ---
>  drivers/media/video/isp/isp.c |   49 
> ++++++-----------------------------------
>  1 files changed, 7 insertions(+), 42 deletions(-)
> 
> diff --git a/drivers/media/video/isp/isp.c b/drivers/media/video/isp/isp.c
> index de9352b..30bdc48 100644
> --- a/drivers/media/video/isp/isp.c
> +++ b/drivers/media/video/isp/isp.c
> @@ -254,48 +254,13 @@ EXPORT_SYMBOL(isp_set_xclk);
>   */
>  static void isp_power_settings(struct isp_device *isp, int idle)
>  {
> -     if (idle) {
> -             isp_reg_writel(isp,
> -                            (ISP_SYSCONFIG_MIDLEMODE_SMARTSTANDBY <<
> -                             ISP_SYSCONFIG_MIDLEMODE_SHIFT),
> -                            OMAP3_ISP_IOMEM_MAIN, ISP_SYSCONFIG);
> -             if (omap_rev() == OMAP3430_REV_ES1_0) {
> -                     isp_reg_writel(isp, ISPCSI1_AUTOIDLE |
> -                                    (ISPCSI1_MIDLEMODE_SMARTSTANDBY <<
> -                                     ISPCSI1_MIDLEMODE_SHIFT),
> -                                    OMAP3_ISP_IOMEM_CSI2A_REGS1,
> -                                    ISPCSI2_SYSCONFIG);
> -                     isp_reg_writel(isp, ISPCSI1_AUTOIDLE |
> -                                    (ISPCSI1_MIDLEMODE_SMARTSTANDBY <<
> -                                     ISPCSI1_MIDLEMODE_SHIFT),
> -                                    OMAP3_ISP_IOMEM_CCP2,
> -                                    ISPCCP2_SYSCONFIG);
> -             }
> -             isp_reg_writel(isp, ISPCTRL_SBL_AUTOIDLE, OMAP3_ISP_IOMEM_MAIN,
> -                            ISP_CTRL);
> -
> -     } else {
> -             isp_reg_writel(isp,
> -                            (ISP_SYSCONFIG_MIDLEMODE_FORCESTANDBY <<
> -                             ISP_SYSCONFIG_MIDLEMODE_SHIFT),
> -                            OMAP3_ISP_IOMEM_MAIN, ISP_SYSCONFIG);
> -             if (omap_rev() == OMAP3430_REV_ES1_0) {
> -                     isp_reg_writel(isp, ISPCSI1_AUTOIDLE |
> -                                    (ISPCSI1_MIDLEMODE_FORCESTANDBY <<
> -                                     ISPCSI1_MIDLEMODE_SHIFT),
> -                                    OMAP3_ISP_IOMEM_CSI2A_REGS1,
> -                                    ISPCSI2_SYSCONFIG);
> -
> -                     isp_reg_writel(isp, ISPCSI1_AUTOIDLE |
> -                                    (ISPCSI1_MIDLEMODE_FORCESTANDBY <<
> -                                     ISPCSI1_MIDLEMODE_SHIFT),
> -                                    OMAP3_ISP_IOMEM_CCP2,
> -                                    ISPCCP2_SYSCONFIG);
> -             }
> -
> -             isp_reg_writel(isp, ISPCTRL_SBL_AUTOIDLE, OMAP3_ISP_IOMEM_MAIN,
> -                            ISP_CTRL);
> -     }
> +     isp_reg_writel(isp,
> +                    ((idle ? ISP_SYSCONFIG_MIDLEMODE_SMARTSTANDBY :
> +                             ISP_SYSCONFIG_MIDLEMODE_FORCESTANDBY) <<
> +                     ISP_SYSCONFIG_MIDLEMODE_SHIFT),
> +                    OMAP3_ISP_IOMEM_MAIN, ISP_SYSCONFIG);
> +     isp_reg_writel(isp, ISPCTRL_SBL_AUTOIDLE, OMAP3_ISP_IOMEM_MAIN,
> +                    ISP_CTRL);
>  }
>  
>  /*
> -- 
> 1.7.0.4
> 
> --
> To unsubscribe from this list: send the line "unsubscribe linux-media" in
> the body of a message to majord...@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
--
To unsubscribe from this list: send the line "unsubscribe linux-media" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to