diff options
author | Francisco Jerez <currojerez@riseup.net> | 2010-07-22 11:07:38 -0400 |
---|---|---|
committer | Dave Airlie <airlied@redhat.com> | 2010-08-04 19:37:45 -0400 |
commit | a1e09b62592eb57e25f8d076ffa5b7bef18be812 (patch) | |
tree | fb8ec34351322f3735d9eb892ce9a4f80452193b /drivers/gpu/drm | |
parent | fca3ec01e0b40cab82cac7745e154b01969e6219 (diff) |
drm/kms: Simplify setup of the initial I2C encoder config.
In most use cases the driver will be using the same static config all
the time: interpreting i2c_board_info::platform_data as the default
config we can can save the GPU driver a redundant set_config() call.
Signed-off-by: Francisco Jerez <currojerez@riseup.net>
Signed-off-by: Dave Airlie <airlied@redhat.com>
Diffstat (limited to 'drivers/gpu/drm')
-rw-r--r-- | drivers/gpu/drm/drm_encoder_slave.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/gpu/drm/drm_encoder_slave.c b/drivers/gpu/drm/drm_encoder_slave.c index f0184696edf3..d62c064fbaa0 100644 --- a/drivers/gpu/drm/drm_encoder_slave.c +++ b/drivers/gpu/drm/drm_encoder_slave.c | |||
@@ -41,6 +41,9 @@ | |||
41 | * &drm_encoder_slave. The @slave_funcs field will be initialized with | 41 | * &drm_encoder_slave. The @slave_funcs field will be initialized with |
42 | * the hooks provided by the slave driver. | 42 | * the hooks provided by the slave driver. |
43 | * | 43 | * |
44 | * If @info->platform_data is non-NULL it will be used as the initial | ||
45 | * slave config. | ||
46 | * | ||
44 | * Returns 0 on success or a negative errno on failure, in particular, | 47 | * Returns 0 on success or a negative errno on failure, in particular, |
45 | * -ENODEV is returned when no matching driver is found. | 48 | * -ENODEV is returned when no matching driver is found. |
46 | */ | 49 | */ |
@@ -85,6 +88,10 @@ int drm_i2c_encoder_init(struct drm_device *dev, | |||
85 | if (err) | 88 | if (err) |
86 | goto fail_unregister; | 89 | goto fail_unregister; |
87 | 90 | ||
91 | if (info->platform_data) | ||
92 | encoder->slave_funcs->set_config(&encoder->base, | ||
93 | info->platform_data); | ||
94 | |||
88 | return 0; | 95 | return 0; |
89 | 96 | ||
90 | fail_unregister: | 97 | fail_unregister: |