Skip to contentSkip to conversation

Patch "drm/imx: imx-tve: Do not set the regulator voltage" has been added to the 4.10-stable tree

PATCH [email protected] 1 participant 1 message Mar 12, 2017

Subsystems (4)
lore
Share & tools
lore

[email protected]

author maintainer Applied
#0 lore raw

This is a note to let you know that I've just added the patch titled

drm/imx: imx-tve: Do not set the regulator voltage

to the 4.10-stable tree which can be found at:
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
drm-imx-imx-tve-do-not-set-the-regulator-voltage.patch
and it can be found in the queue-4.10 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree, please let <[email protected]> know about it.

Quoted 1 line

From fc12bccda8b6f5c38139eceec9e369ed78091b2b Mon Sep 17 00:00:00 2001

From: Fabio Estevam <[email protected]>
Date: Wed, 8 Feb 2017 10:47:49 -0200
Subject: drm/imx: imx-tve: Do not set the regulator voltage

From: Fabio Estevam <[email protected]>

commit fc12bccda8b6f5c38139eceec9e369ed78091b2b upstream.

Commit deb65870b5d9d ("drm/imx: imx-tve: check the value returned by regulator_set_voltage()") exposes the following probe issue:

63ff0000.tve supply dac not found, using dummy regulator
imx-drm display-subsystem: failed to bind 63ff0000.tve (ops imx_tve_ops): -22

When the 'dac-supply' is not passed in the device tree a dummy regulator is used and setting its voltage is not allowed.

To fix this issue, do not set the dac-supply voltage inside the driver and let its voltage be specified in the device tree.

Print a warning if the the 'dac-supply' voltage has a value different from 2.75V.

Fixes deb65870b5d9d ("drm/imx: imx-tve: check the value returned by regulator_set_voltage()")
---
 drivers/gpu/drm/imx/imx-tve.c |    7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)
drivers/gpu/drm/imx/imx-tve.c +4 -3
@@ -98,6 +98,8 @@
 /* TVE_TST_MODE_REG */
 #define TVE_TVDAC_TEST_MODE_MASK	(0x7 << 0)
 
+#define IMX_TVE_DAC_VOLTAGE	2750000
+
 enum {
 	TVE_MODE_TVOUT,
 	TVE_MODE_VGA,
@@ -621,9 +623,8 @@ static int imx_tve_bind(struct device *d
 
 	tve->dac_reg = devm_regulator_get(dev, "dac");
 	if (!IS_ERR(tve->dac_reg)) {
-		ret = regulator_set_voltage(tve->dac_reg, 2750000, 2750000);
-		if (ret)
-			return ret;
+		if (regulator_get_voltage(tve->dac_reg) != IMX_TVE_DAC_VOLTAGE)
+			dev_warn(dev, "dac voltage is not %d uV\n", IMX_TVE_DAC_VOLTAGE);
 		ret = regulator_enable(tve->dac_reg);
 		if (ret)
 			return ret;

Patches currently in stable-queue which might be from [email protected] are

queue-4.10/drm-imx-imx-tve-do-not-set-the-regulator-voltage.patch