Use connector helper
This commit is contained in:
parent
574dd02bc3
commit
489d5baa8a
21
sharp.c
21
sharp.c
@ -342,22 +342,8 @@ static const struct drm_simple_display_pipe_funcs sharp_memory_pipe_funcs = {
|
||||
static int sharp_memory_connector_get_modes(struct drm_connector *connector)
|
||||
{
|
||||
struct sharp_memory_panel *panel = drm_to_panel(connector->dev);
|
||||
struct drm_display_mode *mode;
|
||||
|
||||
mode = drm_mode_duplicate(connector->dev, panel->mode);
|
||||
if (!mode) {
|
||||
DRM_ERROR("Failed to duplicate mode\n");
|
||||
return 0;
|
||||
}
|
||||
|
||||
drm_mode_set_name(mode);
|
||||
mode->type |= DRM_MODE_TYPE_PREFERRED;
|
||||
drm_mode_probed_add(connector, mode);
|
||||
|
||||
connector->display_info.width_mm = mode->width_mm;
|
||||
connector->display_info.height_mm = mode->height_mm;
|
||||
|
||||
return 1;
|
||||
return drm_connector_helper_get_modes_fixed(connector, panel->mode);
|
||||
}
|
||||
|
||||
static const struct drm_connector_helper_funcs sharp_memory_connector_hfuncs = {
|
||||
@ -457,12 +443,12 @@ static int sharp_memory_probe(struct spi_device *spi)
|
||||
drm->mode_config.max_height = mode->vdisplay;
|
||||
|
||||
// Configure DRM connector
|
||||
drm_connector_helper_add(&panel->connector, &sharp_memory_connector_hfuncs);
|
||||
ret = drm_connector_init(drm, &panel->connector, &sharp_memory_connector_funcs,
|
||||
DRM_MODE_CONNECTOR_SPI);
|
||||
if (ret) {
|
||||
return ret;
|
||||
}
|
||||
drm_connector_helper_add(&panel->connector, &sharp_memory_connector_hfuncs);
|
||||
|
||||
// Initialize DRM pipe
|
||||
ret = drm_simple_display_pipe_init(drm, &panel->pipe, &sharp_memory_pipe_funcs,
|
||||
@ -472,6 +458,9 @@ static int sharp_memory_probe(struct spi_device *spi)
|
||||
return ret;
|
||||
}
|
||||
|
||||
// Enable damaged screen area clips
|
||||
drm_plane_enable_fb_damage_clips(&panel->pipe.plane);
|
||||
|
||||
drm_mode_config_reset(drm);
|
||||
|
||||
printk(KERN_INFO "sharp_memory: registering DRM device\n");
|
||||
|
Loading…
Reference in New Issue
Block a user