Lines Matching refs:dbidev
209 struct mipi_dbi_dev *dbidev = drm_to_mipi_dbi_dev(fb->dev); in mipi_dbi_buf_copy() local
230 switch (dbidev->pixel_format) { in mipi_dbi_buf_copy()
251 static void mipi_dbi_set_window_address(struct mipi_dbi_dev *dbidev, in mipi_dbi_set_window_address() argument
255 struct mipi_dbi *dbi = &dbidev->dbi; in mipi_dbi_set_window_address()
257 xs += dbidev->left_offset; in mipi_dbi_set_window_address()
258 xe += dbidev->left_offset; in mipi_dbi_set_window_address()
259 ys += dbidev->top_offset; in mipi_dbi_set_window_address()
260 ye += dbidev->top_offset; in mipi_dbi_set_window_address()
271 struct mipi_dbi_dev *dbidev = drm_to_mipi_dbi_dev(fb->dev); in mipi_dbi_fb_dirty() local
275 struct mipi_dbi *dbi = &dbidev->dbi; in mipi_dbi_fb_dirty()
288 tr = dbidev->tx_buf; in mipi_dbi_fb_dirty()
296 mipi_dbi_set_window_address(dbidev, rect->x1, rect->x2 - 1, rect->y1, in mipi_dbi_fb_dirty()
300 dst_format = drm_format_info(dbidev->pixel_format); in mipi_dbi_fb_dirty()
323 struct mipi_dbi_dev *dbidev = drm_to_mipi_dbi_dev(pipe->crtc.dev); in mipi_dbi_pipe_mode_valid() local
325 return drm_crtc_helper_mode_valid_fixed(&pipe->crtc, mode, &dbidev->mode); in mipi_dbi_pipe_mode_valid()
376 void mipi_dbi_enable_flush(struct mipi_dbi_dev *dbidev, in mipi_dbi_enable_flush() argument
390 if (!drm_dev_enter(&dbidev->drm, &idx)) in mipi_dbi_enable_flush()
395 backlight_enable(dbidev->backlight); in mipi_dbi_enable_flush()
401 static void mipi_dbi_blank(struct mipi_dbi_dev *dbidev) in mipi_dbi_blank() argument
403 struct drm_device *drm = &dbidev->drm; in mipi_dbi_blank()
406 struct mipi_dbi *dbi = &dbidev->dbi; in mipi_dbi_blank()
413 memset(dbidev->tx_buf, 0, len); in mipi_dbi_blank()
415 mipi_dbi_set_window_address(dbidev, 0, width - 1, 0, height - 1); in mipi_dbi_blank()
417 (u8 *)dbidev->tx_buf, len); in mipi_dbi_blank()
432 struct mipi_dbi_dev *dbidev = drm_to_mipi_dbi_dev(pipe->crtc.dev); in mipi_dbi_pipe_disable() local
436 if (dbidev->backlight) in mipi_dbi_pipe_disable()
437 backlight_disable(dbidev->backlight); in mipi_dbi_pipe_disable()
439 mipi_dbi_blank(dbidev); in mipi_dbi_pipe_disable()
441 if (dbidev->regulator) in mipi_dbi_pipe_disable()
442 regulator_disable(dbidev->regulator); in mipi_dbi_pipe_disable()
443 if (dbidev->io_regulator) in mipi_dbi_pipe_disable()
444 regulator_disable(dbidev->io_regulator); in mipi_dbi_pipe_disable()
534 struct mipi_dbi_dev *dbidev = drm_to_mipi_dbi_dev(connector->dev); in mipi_dbi_connector_get_modes() local
536 return drm_connector_helper_get_modes_fixed(connector, &dbidev->mode); in mipi_dbi_connector_get_modes()
602 int mipi_dbi_dev_init_with_formats(struct mipi_dbi_dev *dbidev, in mipi_dbi_dev_init_with_formats() argument
612 struct drm_device *drm = &dbidev->drm; in mipi_dbi_dev_init_with_formats()
615 if (!dbidev->dbi.command) in mipi_dbi_dev_init_with_formats()
622 dbidev->tx_buf = devm_kmalloc(drm->dev, tx_buf_size, GFP_KERNEL); in mipi_dbi_dev_init_with_formats()
623 if (!dbidev->tx_buf) in mipi_dbi_dev_init_with_formats()
626 drm_mode_copy(&dbidev->mode, mode); in mipi_dbi_dev_init_with_formats()
627 ret = mipi_dbi_rotate_mode(&dbidev->mode, rotation); in mipi_dbi_dev_init_with_formats()
633 drm_connector_helper_add(&dbidev->connector, &mipi_dbi_connector_hfuncs); in mipi_dbi_dev_init_with_formats()
634 ret = drm_connector_init(drm, &dbidev->connector, &mipi_dbi_connector_funcs, in mipi_dbi_dev_init_with_formats()
639 ret = drm_simple_display_pipe_init(drm, &dbidev->pipe, funcs, formats, format_count, in mipi_dbi_dev_init_with_formats()
640 modifiers, &dbidev->connector); in mipi_dbi_dev_init_with_formats()
644 drm_plane_enable_fb_damage_clips(&dbidev->pipe.plane); in mipi_dbi_dev_init_with_formats()
647 drm->mode_config.min_width = dbidev->mode.hdisplay; in mipi_dbi_dev_init_with_formats()
648 drm->mode_config.max_width = dbidev->mode.hdisplay; in mipi_dbi_dev_init_with_formats()
649 drm->mode_config.min_height = dbidev->mode.vdisplay; in mipi_dbi_dev_init_with_formats()
650 drm->mode_config.max_height = dbidev->mode.vdisplay; in mipi_dbi_dev_init_with_formats()
651 dbidev->rotation = rotation; in mipi_dbi_dev_init_with_formats()
652 dbidev->pixel_format = formats[0]; in mipi_dbi_dev_init_with_formats()
654 dbidev->dbi.write_memory_bpw = 8; in mipi_dbi_dev_init_with_formats()
679 int mipi_dbi_dev_init(struct mipi_dbi_dev *dbidev, in mipi_dbi_dev_init() argument
685 dbidev->drm.mode_config.preferred_depth = 16; in mipi_dbi_dev_init()
687 return mipi_dbi_dev_init_with_formats(dbidev, funcs, mipi_dbi_formats, in mipi_dbi_dev_init()
743 static int mipi_dbi_poweron_reset_conditional(struct mipi_dbi_dev *dbidev, bool cond) in mipi_dbi_poweron_reset_conditional() argument
745 struct device *dev = dbidev->drm.dev; in mipi_dbi_poweron_reset_conditional()
746 struct mipi_dbi *dbi = &dbidev->dbi; in mipi_dbi_poweron_reset_conditional()
749 if (dbidev->regulator) { in mipi_dbi_poweron_reset_conditional()
750 ret = regulator_enable(dbidev->regulator); in mipi_dbi_poweron_reset_conditional()
757 if (dbidev->io_regulator) { in mipi_dbi_poweron_reset_conditional()
758 ret = regulator_enable(dbidev->io_regulator); in mipi_dbi_poweron_reset_conditional()
761 if (dbidev->regulator) in mipi_dbi_poweron_reset_conditional()
762 regulator_disable(dbidev->regulator); in mipi_dbi_poweron_reset_conditional()
774 if (dbidev->regulator) in mipi_dbi_poweron_reset_conditional()
775 regulator_disable(dbidev->regulator); in mipi_dbi_poweron_reset_conditional()
776 if (dbidev->io_regulator) in mipi_dbi_poweron_reset_conditional()
777 regulator_disable(dbidev->io_regulator); in mipi_dbi_poweron_reset_conditional()
804 int mipi_dbi_poweron_reset(struct mipi_dbi_dev *dbidev) in mipi_dbi_poweron_reset() argument
806 return mipi_dbi_poweron_reset_conditional(dbidev, false); in mipi_dbi_poweron_reset()
822 int mipi_dbi_poweron_conditional_reset(struct mipi_dbi_dev *dbidev) in mipi_dbi_poweron_conditional_reset() argument
824 return mipi_dbi_poweron_reset_conditional(dbidev, true); in mipi_dbi_poweron_conditional_reset()
1370 struct mipi_dbi_dev *dbidev = m->private; in mipi_dbi_debugfs_command_write() local
1375 if (!drm_dev_enter(&dbidev->drm, &idx)) in mipi_dbi_debugfs_command_write()
1414 ret = mipi_dbi_command_buf(&dbidev->dbi, cmd, parameters, i); in mipi_dbi_debugfs_command_write()
1426 struct mipi_dbi_dev *dbidev = m->private; in mipi_dbi_debugfs_command_show() local
1427 struct mipi_dbi *dbi = &dbidev->dbi; in mipi_dbi_debugfs_command_show()
1432 if (!drm_dev_enter(&dbidev->drm, &idx)) in mipi_dbi_debugfs_command_show()
1496 struct mipi_dbi_dev *dbidev = drm_to_mipi_dbi_dev(minor->dev); in mipi_dbi_debugfs_init() local
1499 if (dbidev->dbi.read_commands) in mipi_dbi_debugfs_init()
1501 debugfs_create_file("command", mode, minor->debugfs_root, dbidev, in mipi_dbi_debugfs_init()