Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

drm/sitronix/st7571-i2c: add 'struct device' to st7571_device

Keep a copy of the device structure instead of referring to i2c_client.
This is a preparation step to separate the generic part from all i2c
stuff.

Reviewed-by: Javier Martinez Canillas <javierm@redhat.com>
Signed-off-by: Marcus Folkesson <marcus.folkesson@gmail.com>
Link: https://patch.msgid.link/20251215-st7571-split-v3-2-d5f3205c3138@gmail.com
Signed-off-by: Javier Martinez Canillas <javierm@redhat.com>

authored by

Marcus Folkesson and committed by
Javier Martinez Canillas
bc12f3e1 c497e597

+16 -14
+16 -14
drivers/gpu/drm/sitronix/st7571-i2c.c
··· 113 113 114 114 struct st7571_device { 115 115 struct drm_device drm; 116 + struct device *dev; 116 117 117 118 struct drm_plane primary_plane; 118 119 struct drm_crtc crtc; ··· 742 741 743 742 static int st7571_validate_parameters(struct st7571_device *st7571) 744 743 { 745 - struct device *dev = st7571->dev.dev; 744 + struct device *dev = st7571->dev; 746 745 const struct st7571_panel_constraints *constraints = &st7571->pdata->constraints; 747 746 748 747 if (st7571->width_mm == 0) { ··· 782 781 783 782 static int st7567_parse_dt(struct st7571_device *st7567) 784 783 { 785 - struct device *dev = &st7567->client->dev; 784 + struct device *dev = st7567->dev; 786 785 struct device_node *np = dev->of_node; 787 786 struct display_timing dt; 788 787 int ret; ··· 809 808 810 809 static int st7571_parse_dt(struct st7571_device *st7571) 811 810 { 812 - struct device *dev = &st7571->client->dev; 811 + struct device *dev = st7571->dev; 813 812 struct device_node *np = dev->of_node; 814 813 struct display_timing dt; 815 814 int ret; ··· 944 943 return PTR_ERR(st7571); 945 944 946 945 drm = &st7571->drm; 946 + st7571->dev = &client->dev; 947 947 st7571->client = client; 948 948 i2c_set_clientdata(client, st7571); 949 - st7571->pdata = device_get_match_data(&client->dev); 949 + st7571->pdata = device_get_match_data(st7571->dev); 950 950 951 951 ret = st7571->pdata->parse_dt(st7571); 952 952 if (ret) ··· 968 966 if (i2c_check_functionality(client->adapter, I2C_FUNC_PROTOCOL_MANGLING)) 969 967 st7571->ignore_nak = true; 970 968 971 - st7571->regmap = devm_regmap_init(&client->dev, &st7571_regmap_bus, 969 + st7571->regmap = devm_regmap_init(st7571->dev, &st7571_regmap_bus, 972 970 client, &st7571_regmap_config); 973 971 if (IS_ERR(st7571->regmap)) { 974 - return dev_err_probe(&client->dev, PTR_ERR(st7571->regmap), 972 + return dev_err_probe(st7571->dev, PTR_ERR(st7571->regmap), 975 973 "Failed to initialize regmap\n"); 976 974 } 977 975 978 - st7571->hwbuf = devm_kzalloc(&client->dev, 976 + st7571->hwbuf = devm_kzalloc(st7571->dev, 979 977 (st7571->nlines * st7571->ncols * st7571->bpp) / 8, 980 978 GFP_KERNEL); 981 979 if (!st7571->hwbuf) 982 980 return -ENOMEM; 983 981 984 - st7571->row = devm_kzalloc(&client->dev, 982 + st7571->row = devm_kzalloc(st7571->dev, 985 983 (st7571->ncols * st7571->bpp), 986 984 GFP_KERNEL); 987 985 if (!st7571->row) ··· 989 987 990 988 ret = st7571_mode_config_init(st7571); 991 989 if (ret) 992 - return dev_err_probe(&client->dev, ret, 990 + return dev_err_probe(st7571->dev, ret, 993 991 "Failed to initialize mode config\n"); 994 992 995 993 ret = st7571_plane_init(st7571, st7571->pformat); 996 994 if (ret) 997 - return dev_err_probe(&client->dev, ret, 995 + return dev_err_probe(st7571->dev, ret, 998 996 "Failed to initialize primary plane\n"); 999 997 1000 998 ret = st7571_crtc_init(st7571); 1001 999 if (ret < 0) 1002 - return dev_err_probe(&client->dev, ret, 1000 + return dev_err_probe(st7571->dev, ret, 1003 1001 "Failed to initialize CRTC\n"); 1004 1002 1005 1003 ret = st7571_encoder_init(st7571); 1006 1004 if (ret < 0) 1007 - return dev_err_probe(&client->dev, ret, 1005 + return dev_err_probe(st7571->dev, ret, 1008 1006 "Failed to initialize encoder\n"); 1009 1007 1010 1008 ret = st7571_connector_init(st7571); 1011 1009 if (ret < 0) 1012 - return dev_err_probe(&client->dev, ret, 1010 + return dev_err_probe(st7571->dev, ret, 1013 1011 "Failed to initialize connector\n"); 1014 1012 1015 1013 drm_mode_config_reset(drm); 1016 1014 1017 1015 ret = drm_dev_register(drm, 0); 1018 1016 if (ret) 1019 - return dev_err_probe(&client->dev, ret, 1017 + return dev_err_probe(st7571->dev, ret, 1020 1018 "Failed to register DRM device\n"); 1021 1019 1022 1020 drm_client_setup(drm, NULL);