diff options
Diffstat (limited to 'drivers/gpu')
| -rw-r--r-- | drivers/gpu/drm/i2c/sil164_drv.c | 7 | 
1 files changed, 5 insertions, 2 deletions
| diff --git a/drivers/gpu/drm/i2c/sil164_drv.c b/drivers/gpu/drm/i2c/sil164_drv.c index a839f78a4c8a..741886b54419 100644 --- a/drivers/gpu/drm/i2c/sil164_drv.c +++ b/drivers/gpu/drm/i2c/sil164_drv.c @@ -393,7 +393,7 @@ sil164_detect_slave(struct i2c_client *client)  		return NULL;  	} -	return i2c_new_device(adap, &info); +	return i2c_new_client_device(adap, &info);  }  static int @@ -402,6 +402,7 @@ sil164_encoder_init(struct i2c_client *client,  		    struct drm_encoder_slave *encoder)  {  	struct sil164_priv *priv; +	struct i2c_client *slave_client;  	priv = kzalloc(sizeof(*priv), GFP_KERNEL);  	if (!priv) @@ -410,7 +411,9 @@ sil164_encoder_init(struct i2c_client *client,  	encoder->slave_priv = priv;  	encoder->slave_funcs = &sil164_encoder_funcs; -	priv->duallink_slave = sil164_detect_slave(client); +	slave_client = sil164_detect_slave(client); +	if (!IS_ERR(slave_client)) +		priv->duallink_slave = slave_client;  	return 0;  } | 
