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

Commit 1dff212c authored by Laurent Pinchart's avatar Laurent Pinchart Committed by Tomi Valkeinen
Browse files

drm: omapdrm: Drop support for non-DT devices



All OMAP platforms use DT nowadays, drop support for non-DT devices.

Signed-off-by: default avatarLaurent Pinchart <laurent.pinchart@ideasonboard.com>
Reviewed-by: default avatarTomi Valkeinen <tomi.valkeinen@ti.com>
Signed-off-by: default avatarTomi Valkeinen <tomi.valkeinen@ti.com>
parent b22622f0
Loading
Loading
Loading
Loading
+5 −14
Original line number Diff line number Diff line
@@ -87,26 +87,17 @@ int omapdss_register_display(struct omap_dss_device *dssdev)
	int id;

	/*
	 * Note: this presumes all the displays are either using DT or non-DT,
	 * which normally should be the case. This also presumes that all
	 * displays either have an DT alias, or none has.
	 * Note: this presumes that all displays either have an DT alias, or
	 * none has.
	 */

	if (dssdev->dev->of_node) {
	id = of_alias_get_id(dssdev->dev->of_node, "display");

	if (id < 0)
		id = disp_num_counter++;
	} else {
		id = disp_num_counter++;
	}

	snprintf(dssdev->alias, sizeof(dssdev->alias), "display%d", id);

	/* Use 'label' property for name, if it exists */
	if (dssdev->dev->of_node)
		of_property_read_string(dssdev->dev->of_node, "label",
			&dssdev->name);
	of_property_read_string(dssdev->dev->of_node, "label", &dssdev->name);

	if (dssdev->name == NULL)
		dssdev->name = dssdev->alias;
+19 −74
Original line number Diff line number Diff line
@@ -5276,12 +5276,12 @@ static int dsi_init_pll_data(struct platform_device *dsidev)
static int dsi_bind(struct device *dev, struct device *master, void *data)
{
	struct platform_device *dsidev = to_platform_device(dev);
	const struct dsi_module_id_data *d;
	u32 rev;
	int r, i;
	struct dsi_data *dsi;
	struct resource *dsi_mem;
	struct resource *res;
	struct resource temp_res;

	dsi = devm_kzalloc(&dsidev->dev, sizeof(*dsi), GFP_KERNEL);
	if (!dsi)
@@ -5311,55 +5311,17 @@ static int dsi_bind(struct device *dev, struct device *master, void *data)
	dsi->te_timer.data = 0;
#endif

	res = platform_get_resource_byname(dsidev, IORESOURCE_MEM, "proto");
	if (!res) {
		res = platform_get_resource(dsidev, IORESOURCE_MEM, 0);
		if (!res) {
			DSSERR("can't get IORESOURCE_MEM DSI\n");
			return -EINVAL;
		}

		temp_res.start = res->start;
		temp_res.end = temp_res.start + DSI_PROTO_SZ - 1;
		res = &temp_res;
	}

	dsi_mem = res;

	dsi->proto_base = devm_ioremap_resource(&dsidev->dev, res);
	dsi_mem = platform_get_resource_byname(dsidev, IORESOURCE_MEM, "proto");
	dsi->proto_base = devm_ioremap_resource(&dsidev->dev, dsi_mem);
	if (IS_ERR(dsi->proto_base))
		return PTR_ERR(dsi->proto_base);

	res = platform_get_resource_byname(dsidev, IORESOURCE_MEM, "phy");
	if (!res) {
		res = platform_get_resource(dsidev, IORESOURCE_MEM, 0);
		if (!res) {
			DSSERR("can't get IORESOURCE_MEM DSI\n");
			return -EINVAL;
		}

		temp_res.start = res->start + DSI_PHY_OFFSET;
		temp_res.end = temp_res.start + DSI_PHY_SZ - 1;
		res = &temp_res;
	}

	dsi->phy_base = devm_ioremap_resource(&dsidev->dev, res);
	if (IS_ERR(dsi->phy_base))
		return PTR_ERR(dsi->phy_base);

	res = platform_get_resource_byname(dsidev, IORESOURCE_MEM, "pll");
	if (!res) {
		res = platform_get_resource(dsidev, IORESOURCE_MEM, 0);
		if (!res) {
			DSSERR("can't get IORESOURCE_MEM DSI\n");
			return -EINVAL;
		}

		temp_res.start = res->start + DSI_PLL_OFFSET;
		temp_res.end = temp_res.start + DSI_PLL_SZ - 1;
		res = &temp_res;
	}

	dsi->pll_base = devm_ioremap_resource(&dsidev->dev, res);
	if (IS_ERR(dsi->pll_base))
		return PTR_ERR(dsi->pll_base);
@@ -5377,18 +5339,7 @@ static int dsi_bind(struct device *dev, struct device *master, void *data)
		return r;
	}

	if (dsidev->dev.of_node) {
		const struct of_device_id *match;
		const struct dsi_module_id_data *d;

		match = of_match_node(dsi_of_match, dsidev->dev.of_node);
		if (!match) {
			DSSERR("unsupported DSI module\n");
			return -ENODEV;
		}

		d = match->data;

	d = of_match_node(dsi_of_match, dsidev->dev.of_node)->data;
	while (d->address != 0 && d->address != dsi_mem->start)
		d++;

@@ -5398,9 +5349,6 @@ static int dsi_bind(struct device *dev, struct device *master, void *data)
	}

	dsi->module_id = d->id;
	} else {
		dsi->module_id = dsidev->id;
	}

	/* DSI VCs initialization */
	for (i = 0; i < ARRAY_SIZE(dsi->vc); i++) {
@@ -5437,18 +5385,15 @@ static int dsi_bind(struct device *dev, struct device *master, void *data)

	dsi_init_output(dsidev);

	if (dsidev->dev.of_node) {
	r = dsi_probe_of(dsidev);
	if (r) {
		DSSERR("Invalid DSI DT data\n");
		goto err_probe_of;
	}

		r = of_platform_populate(dsidev->dev.of_node, NULL, NULL,
			&dsidev->dev);
	r = of_platform_populate(dsidev->dev.of_node, NULL, NULL, &dsidev->dev);
	if (r)
		DSSERR("Failed to populate DSI child devices: %d\n", r);
	}

	dsi_runtime_put(dsidev);

+3 −5
Original line number Diff line number Diff line
@@ -696,11 +696,9 @@ static int hdmi4_bind(struct device *dev, struct device *master, void *data)
	mutex_init(&hdmi.lock);
	spin_lock_init(&hdmi.audio_playing_lock);

	if (pdev->dev.of_node) {
	r = hdmi_probe_of(pdev);
	if (r)
		return r;
	}

	r = hdmi_wp_init(pdev, &hdmi.wp);
	if (r)
+3 −5
Original line number Diff line number Diff line
@@ -728,11 +728,9 @@ static int hdmi5_bind(struct device *dev, struct device *master, void *data)
	mutex_init(&hdmi.lock);
	spin_lock_init(&hdmi.audio_playing_lock);

	if (pdev->dev.of_node) {
	r = hdmi_probe_of(pdev);
	if (r)
		return r;
	}

	r = hdmi_wp_init(pdev, &hdmi.wp);
	if (r)
+5 −11
Original line number Diff line number Diff line
@@ -643,11 +643,7 @@ static int venc_init_regulator(void)
	if (venc.vdda_dac_reg != NULL)
		return 0;

	if (venc.pdev->dev.of_node)
	vdda_dac = devm_regulator_get(&venc.pdev->dev, "vdda");
	else
		vdda_dac = devm_regulator_get(&venc.pdev->dev, "vdda_dac");

	if (IS_ERR(vdda_dac)) {
		if (PTR_ERR(vdda_dac) != -EPROBE_DEFER)
			DSSERR("can't get VDDA_DAC regulator\n");
@@ -888,13 +884,11 @@ static int venc_bind(struct device *dev, struct device *master, void *data)

	venc_runtime_put();

	if (pdev->dev.of_node) {
	r = venc_probe_of(pdev);
	if (r) {
		DSSERR("Invalid DT data\n");
		goto err_probe_of;
	}
	}

	dss_debugfs_create_file("venc", venc_dump_regs);