hc
2024-10-22 8ac6c7a54ed1b98d142dce24b11c6de6a1e239a5
kernel/drivers/gpu/drm/rockchip/rk618/rk618_dsi.c
....@@ -11,13 +11,14 @@
1111 #include <linux/regmap.h>
1212 #include <linux/mfd/rk618.h>
1313
14
-#include <drm/drmP.h>
14
+#include <drm/drm_drv.h>
1515 #include <drm/drm_of.h>
1616 #include <drm/drm_atomic.h>
1717 #include <drm/drm_crtc_helper.h>
1818 #include <drm/drm_atomic_helper.h>
1919 #include <drm/drm_mipi_dsi.h>
2020 #include <drm/drm_panel.h>
21
+#include <drm/drm_probe_helper.h>
2122
2223 #include <video/of_display_timing.h>
2324 #include <video/mipi_display.h>
....@@ -736,7 +737,7 @@
736737 {
737738 struct rk618_dsi *dsi = connector_to_dsi(connector);
738739
739
- return drm_panel_get_modes(dsi->panel);
740
+ return drm_panel_get_modes(dsi->panel, connector);
740741 }
741742
742743 static const struct drm_connector_helper_funcs
....@@ -753,9 +754,6 @@
753754
754755 static void rk618_dsi_connector_destroy(struct drm_connector *connector)
755756 {
756
- struct rk618_dsi *dsi = connector_to_dsi(connector);
757
-
758
- drm_panel_detach(dsi->panel);
759757 drm_connector_cleanup(connector);
760758 }
761759
....@@ -793,8 +791,8 @@
793791 }
794792
795793 static void rk618_dsi_bridge_mode_set(struct drm_bridge *bridge,
796
- struct drm_display_mode *mode,
797
- struct drm_display_mode *adj)
794
+ const struct drm_display_mode *mode,
795
+ const struct drm_display_mode *adj)
798796 {
799797 struct rk618_dsi *dsi = bridge_to_dsi(bridge);
800798
....@@ -804,7 +802,8 @@
804802 drm_mode_copy(&dsi->mode, adj);
805803 }
806804
807
-static int rk618_dsi_bridge_attach(struct drm_bridge *bridge)
805
+static int rk618_dsi_bridge_attach(struct drm_bridge *bridge,
806
+ enum drm_bridge_attach_flags flags)
808807 {
809808 struct rk618_dsi *dsi = bridge_to_dsi(bridge);
810809 struct drm_connector *connector = &dsi->connector;
....@@ -821,11 +820,6 @@
821820 drm_connector_helper_add(connector, &rk618_dsi_connector_helper_funcs);
822821 drm_connector_attach_encoder(connector, bridge->encoder);
823822
824
- ret = drm_panel_attach(dsi->panel, connector);
825
- if (ret) {
826
- dev_err(dsi->dev, "Failed to attach panel\n");
827
- return ret;
828
- }
829823 dsi->sub_dev.connector = &dsi->connector;
830824 dsi->sub_dev.of_node = dsi->dev->of_node;
831825 rockchip_drm_register_sub_dev(&dsi->sub_dev);