diff mbox series

media: platform: return early if the iface is not handled

Message ID 20220319143456.2159540-1-trix@redhat.com
State Accepted
Commit 6bf9691159e5e5111c91478888524c5396a9ce9e
Headers show
Series media: platform: return early if the iface is not handled | expand

Commit Message

Tom Rix March 19, 2022, 2:34 p.m. UTC
From: Tom Rix <trix@redhat.com>

Clang static analysis reports this issue
ispcsiphy.c:63:14: warning: The left operand of '<<'
  is a garbage value
        reg |= mode << shift;
               ~~~~ ^
The iface switch-statement default case falls through
to ISP_INTERFACE_CCP2B_PHY1.  Which is later checked
to set the mode.  Since the default case is left out
of this check mode is never set.  Instead of falling
through and assuming a ISP_INTERFACE_CCP2B_PHY1
iface, return.

Signed-off-by: Tom Rix <trix@redhat.com>
---
 drivers/media/platform/ti/omap3isp/ispcsiphy.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

Comments

Nick Desaulniers April 5, 2022, 5:53 p.m. UTC | #1
On Sat, Mar 19, 2022 at 7:35 AM <trix@redhat.com> wrote:
>
> From: Tom Rix <trix@redhat.com>
>
> Clang static analysis reports this issue
> ispcsiphy.c:63:14: warning: The left operand of '<<'
>   is a garbage value
>         reg |= mode << shift;
>                ~~~~ ^
> The iface switch-statement default case falls through
> to ISP_INTERFACE_CCP2B_PHY1.  Which is later checked
> to set the mode.  Since the default case is left out
> of this check mode is never set.  Instead of falling
> through and assuming a ISP_INTERFACE_CCP2B_PHY1
> iface, return.
>
> Signed-off-by: Tom Rix <trix@redhat.com>

Thanks for the patch!
Reviewed-by: Nick Desaulniers <ndesaulniers@google.com>

> ---
>  drivers/media/platform/ti/omap3isp/ispcsiphy.c | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/media/platform/ti/omap3isp/ispcsiphy.c b/drivers/media/platform/ti/omap3isp/ispcsiphy.c
> index 6dc7359c5131d..1bde76c0adbee 100644
> --- a/drivers/media/platform/ti/omap3isp/ispcsiphy.c
> +++ b/drivers/media/platform/ti/omap3isp/ispcsiphy.c
> @@ -31,7 +31,8 @@ static void csiphy_routing_cfg_3630(struct isp_csiphy *phy,
>
>         switch (iface) {
>         default:
> -       /* Should not happen in practice, but let's keep the compiler happy. */
> +               /* Should not happen in practice, but let's keep the compiler happy. */
> +               return;
>         case ISP_INTERFACE_CCP2B_PHY1:
>                 reg &= ~OMAP3630_CONTROL_CAMERA_PHY_CTRL_CSI1_RX_SEL_PHY2;
>                 shift = OMAP3630_CONTROL_CAMERA_PHY_CTRL_CAMMODE_PHY1_SHIFT;
> --
> 2.26.3
>
diff mbox series

Patch

diff --git a/drivers/media/platform/ti/omap3isp/ispcsiphy.c b/drivers/media/platform/ti/omap3isp/ispcsiphy.c
index 6dc7359c5131d..1bde76c0adbee 100644
--- a/drivers/media/platform/ti/omap3isp/ispcsiphy.c
+++ b/drivers/media/platform/ti/omap3isp/ispcsiphy.c
@@ -31,7 +31,8 @@  static void csiphy_routing_cfg_3630(struct isp_csiphy *phy,
 
 	switch (iface) {
 	default:
-	/* Should not happen in practice, but let's keep the compiler happy. */
+		/* Should not happen in practice, but let's keep the compiler happy. */
+		return;
 	case ISP_INTERFACE_CCP2B_PHY1:
 		reg &= ~OMAP3630_CONTROL_CAMERA_PHY_CTRL_CSI1_RX_SEL_PHY2;
 		shift = OMAP3630_CONTROL_CAMERA_PHY_CTRL_CAMMODE_PHY1_SHIFT;