#include <linux/slab.h>
 #include <linux/string.h>
 
+#include <drm/drm_device.h>
 #include <drm/drm_dp_dual_mode_helper.h>
 #include <drm/drm_print.h>
 
         */
        ret = drm_dp_dual_mode_read(adapter, DP_DUAL_MODE_HDMI_ID,
                                    hdmi_id, sizeof(hdmi_id));
-       DRM_DEBUG_KMS("DP dual mode HDMI ID: %*pE (err %zd)\n",
-                     ret ? 0 : (int)sizeof(hdmi_id), hdmi_id, ret);
+       drm_dbg_kms(dev, "DP dual mode HDMI ID: %*pE (err %zd)\n",
+                   ret ? 0 : (int)sizeof(hdmi_id), hdmi_id, ret);
        if (ret)
                return DRM_DP_DUAL_MODE_UNKNOWN;
 
         */
        ret = drm_dp_dual_mode_read(adapter, DP_DUAL_MODE_ADAPTOR_ID,
                                    &adaptor_id, sizeof(adaptor_id));
-       DRM_DEBUG_KMS("DP dual mode adaptor ID: %02x (err %zd)\n",
-                     adaptor_id, ret);
+       drm_dbg_kms(dev, "DP dual mode adaptor ID: %02x (err %zd)\n", adaptor_id, ret);
        if (ret == 0) {
                if (is_lspcon_adaptor(hdmi_id, adaptor_id))
                        return DRM_DP_DUAL_MODE_LSPCON;
                 * that we may have misdetected the type.
                 */
                if (!is_type1_adaptor(adaptor_id) && adaptor_id != hdmi_id[0])
-                       DRM_ERROR("Unexpected DP dual mode adaptor ID %02x\n",
-                                 adaptor_id);
+                       drm_err(dev, "Unexpected DP dual mode adaptor ID %02x\n", adaptor_id);
 
        }
 
        ret = drm_dp_dual_mode_read(adapter, DP_DUAL_MODE_MAX_TMDS_CLOCK,
                                    &max_tmds_clock, sizeof(max_tmds_clock));
        if (ret || max_tmds_clock == 0x00 || max_tmds_clock == 0xff) {
-               DRM_DEBUG_KMS("Failed to query max TMDS clock\n");
+               drm_dbg_kms(dev, "Failed to query max TMDS clock\n");
                return 165000;
        }
 
        ret = drm_dp_dual_mode_read(adapter, DP_DUAL_MODE_TMDS_OEN,
                                    &tmds_oen, sizeof(tmds_oen));
        if (ret) {
-               DRM_DEBUG_KMS("Failed to query state of TMDS output buffers\n");
+               drm_dbg_kms(dev, "Failed to query state of TMDS output buffers\n");
                return ret;
        }
 
                ret = drm_dp_dual_mode_write(adapter, DP_DUAL_MODE_TMDS_OEN,
                                             &tmds_oen, sizeof(tmds_oen));
                if (ret) {
-                       DRM_DEBUG_KMS("Failed to %s TMDS output buffers (%d attempts)\n",
-                                     enable ? "enable" : "disable",
-                                     retry + 1);
+                       drm_dbg_kms(dev, "Failed to %s TMDS output buffers (%d attempts)\n",
+                                   enable ? "enable" : "disable", retry + 1);
                        return ret;
                }
 
                ret = drm_dp_dual_mode_read(adapter, DP_DUAL_MODE_TMDS_OEN,
                                            &tmp, sizeof(tmp));
                if (ret) {
-                       DRM_DEBUG_KMS("I2C read failed during TMDS output buffer %s (%d attempts)\n",
-                                     enable ? "enabling" : "disabling",
-                                     retry + 1);
+                       drm_dbg_kms(dev,
+                                   "I2C read failed during TMDS output buffer %s (%d attempts)\n",
+                                   enable ? "enabling" : "disabling", retry + 1);
                        return ret;
                }
 
                        return 0;
        }
 
-       DRM_DEBUG_KMS("I2C write value mismatch during TMDS output buffer %s\n",
-                     enable ? "enabling" : "disabling");
+       drm_dbg_kms(dev, "I2C write value mismatch during TMDS output buffer %s\n",
+                   enable ? "enabling" : "disabling");
 
        return -EIO;
 }
        int retry;
 
        if (!mode) {
-               DRM_ERROR("NULL input\n");
+               drm_err(dev, "NULL input\n");
                return -EINVAL;
        }
 
        }
 
        if (ret < 0) {
-               DRM_DEBUG_KMS("LSPCON read(0x80, 0x41) failed\n");
+               drm_dbg_kms(dev, "LSPCON read(0x80, 0x41) failed\n");
                return -EFAULT;
        }
 
        ret = drm_dp_dual_mode_write(adapter, DP_DUAL_MODE_LSPCON_MODE_CHANGE,
                                     &data, sizeof(data));
        if (ret < 0) {
-               DRM_ERROR("LSPCON mode change failed\n");
+               drm_err(dev, "LSPCON mode change failed\n");
                return ret;
        }
 
        do {
                ret = drm_lspcon_get_mode(dev, adapter, ¤t_mode);
                if (ret) {
-                       DRM_ERROR("can't confirm LSPCON mode change\n");
+                       drm_err(dev, "can't confirm LSPCON mode change\n");
                        return ret;
                } else {
                        if (current_mode != mode) {
                                msleep(10);
                                time_out -= 10;
                        } else {
-                               DRM_DEBUG_KMS("LSPCON mode changed to %s\n",
-                                               mode == DRM_LSPCON_MODE_LS ?
-                                               "LS" : "PCON");
+                               drm_dbg_kms(dev, "LSPCON mode changed to %s\n",
+                                           mode == DRM_LSPCON_MODE_LS ? "LS" : "PCON");
                                return 0;
                        }
                }
        } while (time_out);
 
-       DRM_ERROR("LSPCON mode change timed out\n");
+       drm_err(dev, "LSPCON mode change timed out\n");
        return -ETIMEDOUT;
 }
 EXPORT_SYMBOL(drm_lspcon_set_mode);