Skip to content

Commit 0872fee

Browse files
committed
drm/ast: Pass AST device to ast_ddc_create()
The DDC code needs the AST device. Pass it to ast_ddc_create() and avoid an internal upcast. Improves type safety within the DDC code. Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de> Reviewed-by: Sui Jingfeng <sui.jingfeng@linux.dev> Reviewed-by: Jocelyn Falempe <jfalempe@redhat.com> Link: https://patchwork.freedesktop.org/patch/msgid/20240325200855.21150-8-tzimmermann@suse.de
1 parent 42f4980 commit 0872fee

3 files changed

Lines changed: 8 additions & 4 deletions

File tree

drivers/gpu/drm/ast/ast_ddc.c

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -110,8 +110,9 @@ static void ast_ddc_release(struct drm_device *dev, void *res)
110110
i2c_del_adapter(&ddc->adapter);
111111
}
112112

113-
struct ast_ddc *ast_ddc_create(struct drm_device *dev)
113+
struct ast_ddc *ast_ddc_create(struct ast_device *ast)
114114
{
115+
struct drm_device *dev = &ast->base;
115116
struct ast_ddc *ddc;
116117
struct i2c_adapter *adapter;
117118
struct i2c_algo_bit_data *bit;

drivers/gpu/drm/ast/ast_ddc.h

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
#include <linux/i2c.h>
77
#include <linux/i2c-algo-bit.h>
88

9+
struct ast_device;
910
struct drm_device;
1011

1112
struct ast_ddc {
@@ -14,6 +15,6 @@ struct ast_ddc {
1415
struct i2c_algo_bit_data bit;
1516
};
1617

17-
struct ast_ddc *ast_ddc_create(struct drm_device *dev);
18+
struct ast_ddc *ast_ddc_create(struct ast_device *ast);
1819

1920
#endif

drivers/gpu/drm/ast/ast_mode.c

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1388,10 +1388,11 @@ static const struct drm_connector_funcs ast_vga_connector_funcs = {
13881388

13891389
static int ast_vga_connector_init(struct drm_device *dev, struct drm_connector *connector)
13901390
{
1391+
struct ast_device *ast = to_ast_device(dev);
13911392
struct ast_ddc *ddc;
13921393
int ret;
13931394

1394-
ddc = ast_ddc_create(dev);
1395+
ddc = ast_ddc_create(ast);
13951396
if (IS_ERR(ddc)) {
13961397
ret = PTR_ERR(ddc);
13971398
drm_err(dev, "failed to add DDC bus for connector; ret=%d\n", ret);
@@ -1485,10 +1486,11 @@ static const struct drm_connector_funcs ast_sil164_connector_funcs = {
14851486

14861487
static int ast_sil164_connector_init(struct drm_device *dev, struct drm_connector *connector)
14871488
{
1489+
struct ast_device *ast = to_ast_device(dev);
14881490
struct ast_ddc *ddc;
14891491
int ret;
14901492

1491-
ddc = ast_ddc_create(dev);
1493+
ddc = ast_ddc_create(ast);
14921494
if (IS_ERR(ddc)) {
14931495
ret = PTR_ERR(ddc);
14941496
drm_err(dev, "failed to add DDC bus for connector; ret=%d\n", ret);

0 commit comments

Comments
 (0)