]> asedeno.scripts.mit.edu Git - linux.git/commitdiff
drm/i2c: tda998x: cleanup from previous changes
authorRussell King <rmk+kernel@armlinux.org.uk>
Thu, 2 Aug 2018 09:25:19 +0000 (10:25 +0100)
committerRussell King <rmk+kernel@armlinux.org.uk>
Tue, 7 Aug 2018 09:32:03 +0000 (10:32 +0100)
Cleanup the code a little from the effects of the previous changes:
- Move tda998x_destroy() to be above tda998x_create()
- Use 'dev' directly in tda998x_create() where appropriate.

Tested-by: Peter Rosin <peda@axentia.se>
Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
drivers/gpu/drm/i2c/tda998x_drv.c

index 74c2e5e59922b98a888ec7fc1da01b53d38ea4b5..f486d85ac5759ce4061a7bc1ef982bff15981f15 100644 (file)
@@ -1576,31 +1576,6 @@ static const struct drm_bridge_funcs tda998x_bridge_funcs = {
        .enable = tda998x_bridge_enable,
 };
 
-static void tda998x_destroy(struct device *dev)
-{
-       struct tda998x_priv *priv = dev_get_drvdata(dev);
-
-       drm_bridge_remove(&priv->bridge);
-
-       /* disable all IRQs and free the IRQ handler */
-       cec_write(priv, REG_CEC_RXSHPDINTENA, 0);
-       reg_clear(priv, REG_INT_FLAGS_2, INT_FLAGS_2_EDID_BLK_RD);
-
-       if (priv->audio_pdev)
-               platform_device_unregister(priv->audio_pdev);
-
-       if (priv->hdmi->irq)
-               free_irq(priv->hdmi->irq, priv);
-
-       del_timer_sync(&priv->edid_delay_timer);
-       cancel_work_sync(&priv->detect_work);
-
-       i2c_unregister_device(priv->cec);
-
-       if (priv->cec_notify)
-               cec_notifier_put(priv->cec_notify);
-}
-
 /* I2C driver functions */
 
 static int tda998x_get_audio_ports(struct tda998x_priv *priv,
@@ -1664,6 +1639,31 @@ static void tda998x_set_config(struct tda998x_priv *priv,
        priv->audio_params = p->audio_params;
 }
 
+static void tda998x_destroy(struct device *dev)
+{
+       struct tda998x_priv *priv = dev_get_drvdata(dev);
+
+       drm_bridge_remove(&priv->bridge);
+
+       /* disable all IRQs and free the IRQ handler */
+       cec_write(priv, REG_CEC_RXSHPDINTENA, 0);
+       reg_clear(priv, REG_INT_FLAGS_2, INT_FLAGS_2_EDID_BLK_RD);
+
+       if (priv->audio_pdev)
+               platform_device_unregister(priv->audio_pdev);
+
+       if (priv->hdmi->irq)
+               free_irq(priv->hdmi->irq, priv);
+
+       del_timer_sync(&priv->edid_delay_timer);
+       cancel_work_sync(&priv->detect_work);
+
+       i2c_unregister_device(priv->cec);
+
+       if (priv->cec_notify)
+               cec_notifier_put(priv->cec_notify);
+}
+
 static int tda998x_create(struct device *dev)
 {
        struct i2c_client *client = to_i2c_client(dev);
@@ -1705,13 +1705,13 @@ static int tda998x_create(struct device *dev)
        /* read version: */
        rev_lo = reg_read(priv, REG_VERSION_LSB);
        if (rev_lo < 0) {
-               dev_err(&client->dev, "failed to read version: %d\n", rev_lo);
+               dev_err(dev, "failed to read version: %d\n", rev_lo);
                return rev_lo;
        }
 
        rev_hi = reg_read(priv, REG_VERSION_MSB);
        if (rev_hi < 0) {
-               dev_err(&client->dev, "failed to read version: %d\n", rev_hi);
+               dev_err(dev, "failed to read version: %d\n", rev_hi);
                return rev_hi;
        }
 
@@ -1722,20 +1722,19 @@ static int tda998x_create(struct device *dev)
 
        switch (priv->rev) {
        case TDA9989N2:
-               dev_info(&client->dev, "found TDA9989 n2");
+               dev_info(dev, "found TDA9989 n2");
                break;
        case TDA19989:
-               dev_info(&client->dev, "found TDA19989");
+               dev_info(dev, "found TDA19989");
                break;
        case TDA19989N2:
-               dev_info(&client->dev, "found TDA19989 n2");
+               dev_info(dev, "found TDA19989 n2");
                break;
        case TDA19988:
-               dev_info(&client->dev, "found TDA19988");
+               dev_info(dev, "found TDA19988");
                break;
        default:
-               dev_err(&client->dev, "found unsupported device: %04x\n",
-                       priv->rev);
+               dev_err(dev, "found unsupported device: %04x\n", priv->rev);
                return -ENXIO;
        }
 
@@ -1778,8 +1777,7 @@ static int tda998x_create(struct device *dev)
                                           tda998x_irq_thread, irq_flags,
                                           "tda998x", priv);
                if (ret) {
-                       dev_err(&client->dev,
-                               "failed to request IRQ#%u: %d\n",
+                       dev_err(dev, "failed to request IRQ#%u: %d\n",
                                client->irq, ret);
                        goto err_irq;
                }
@@ -1788,13 +1786,13 @@ static int tda998x_create(struct device *dev)
                cec_write(priv, REG_CEC_RXSHPDINTENA, CEC_RXSHPDLEV_HPD);
        }
 
-       priv->cec_notify = cec_notifier_get(&client->dev);
+       priv->cec_notify = cec_notifier_get(dev);
        if (!priv->cec_notify) {
                ret = -ENOMEM;
                goto fail;
        }
 
-       priv->cec_glue.parent = &client->dev;
+       priv->cec_glue.parent = dev;
        priv->cec_glue.data = priv;
        priv->cec_glue.init = tda998x_cec_hook_init;
        priv->cec_glue.exit = tda998x_cec_hook_exit;
@@ -1839,8 +1837,8 @@ static int tda998x_create(struct device *dev)
 
                if (priv->audio_port[0].format != AFMT_UNUSED)
                        tda998x_audio_codec_init(priv, &client->dev);
-       } else if (client->dev.platform_data) {
-               tda998x_set_config(priv, client->dev.platform_data);
+       } else if (dev->platform_data) {
+               tda998x_set_config(priv, dev->platform_data);
        }
 
        priv->bridge.funcs = &tda998x_bridge_funcs;