]> git.karo-electronics.de Git - karo-tx-linux.git/commitdiff
drm/i2c: tda998x: switch to boolean is_on
authorRussell King <rmk+kernel@armlinux.org.uk>
Sun, 23 Oct 2016 10:39:04 +0000 (11:39 +0100)
committerRussell King <rmk+kernel@armlinux.org.uk>
Fri, 18 Nov 2016 00:00:40 +0000 (00:00 +0000)
Rather than storing the DPMS mode (which will always be on or off) use a
boolean to store this instead.

Tested-by: Robin Murphy <robin.murphy@arm.com>
Tested-by: Jon Medhurst <tixy@linaro.org>
Acked-by: Jon Medhurst <tixy@linaro.org>
Tested-by: Jyri Sarha <jsarha@ti.com>
Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
drivers/gpu/drm/i2c/tda998x_drv.c

index 78df92b3e055a6c14296ab422f4fa967fb6db9c8..ffd87edde840ee707d9d92aeaf94d4e639e28e93 100644 (file)
@@ -42,7 +42,7 @@ struct tda998x_priv {
        struct mutex mutex;
        u16 rev;
        u8 current_page;
-       int dpms;
+       bool is_on;
        bool supports_infoframes;
        bool sink_has_audio;
        u8 vip_cntrl_0;
@@ -1159,16 +1159,15 @@ static int tda998x_connector_init(struct tda998x_priv *priv,
 static void tda998x_encoder_dpms(struct drm_encoder *encoder, int mode)
 {
        struct tda998x_priv *priv = enc_to_tda998x_priv(encoder);
+       bool on;
 
        /* we only care about on or off: */
-       if (mode != DRM_MODE_DPMS_ON)
-               mode = DRM_MODE_DPMS_OFF;
+       on = mode == DRM_MODE_DPMS_ON;
 
-       if (mode == priv->dpms)
+       if (on == priv->is_on)
                return;
 
-       switch (mode) {
-       case DRM_MODE_DPMS_ON:
+       if (on) {
                /* enable video ports, audio will be enabled later */
                reg_write(priv, REG_ENA_VP_0, 0xff);
                reg_write(priv, REG_ENA_VP_1, 0xff);
@@ -1177,16 +1176,16 @@ static void tda998x_encoder_dpms(struct drm_encoder *encoder, int mode)
                reg_write(priv, REG_VIP_CNTRL_0, priv->vip_cntrl_0);
                reg_write(priv, REG_VIP_CNTRL_1, priv->vip_cntrl_1);
                reg_write(priv, REG_VIP_CNTRL_2, priv->vip_cntrl_2);
-               break;
-       case DRM_MODE_DPMS_OFF:
+
+               priv->is_on = true;
+       } else {
                /* disable video ports */
                reg_write(priv, REG_ENA_VP_0, 0x00);
                reg_write(priv, REG_ENA_VP_1, 0x00);
                reg_write(priv, REG_ENA_VP_2, 0x00);
-               break;
-       }
 
-       priv->dpms = mode;
+               priv->is_on = false;
+       }
 }
 
 static void
@@ -1482,8 +1481,6 @@ static int tda998x_create(struct i2c_client *client, struct tda998x_priv *priv)
        if (!priv->cec)
                return -ENODEV;
 
-       priv->dpms = DRM_MODE_DPMS_OFF;
-
        mutex_init(&priv->mutex);       /* protect the page access */
        init_waitqueue_head(&priv->edid_delay_waitq);
        setup_timer(&priv->edid_delay_timer, tda998x_edid_delay_done,