Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 389c5763 authored by Peter Ujfalusi's avatar Peter Ujfalusi Committed by Tomi Valkeinen
Browse files

drm/omap: display: Add displays in sorted order to the panel_list



Keep the panel_list ordered according to aliases. The DRM connectors will
be created following the panel_list. By keeping the list ordered the DRM
connectors will be created in the same order regardless of the driver
probe order.

Signed-off-by: default avatarPeter Ujfalusi <peter.ujfalusi@ti.com>
Signed-off-by: default avatarTomi Valkeinen <tomi.valkeinen@ti.com>
parent a09d2bc1
Loading
Loading
Loading
Loading
+9 −1
Original line number Diff line number Diff line
@@ -83,6 +83,7 @@ static int disp_num_counter;
int omapdss_register_display(struct omap_dss_device *dssdev)
{
	struct omap_dss_driver *drv = dssdev->driver;
	struct list_head *cur;
	int id;

	/*
@@ -118,7 +119,14 @@ int omapdss_register_display(struct omap_dss_device *dssdev)
		drv->get_timings = omapdss_default_get_timings;

	mutex_lock(&panel_list_mutex);
	list_add_tail(&dssdev->panel_list, &panel_list);
	list_for_each(cur, &panel_list) {
		struct omap_dss_device *ldev = list_entry(cur,
							 struct omap_dss_device,
							 panel_list);
		if (strcmp(ldev->alias, dssdev->alias) > 0)
			break;
	}
	list_add_tail(&dssdev->panel_list, cur);
	mutex_unlock(&panel_list_mutex);
	return 0;
}