[PATCH] gpu: host1x: clk_round_rate() can return a zero upon error

Paul Walmsley pwalmsley at nvidia.com
Mon Dec 9 18:00:12 PST 2013


Treat both negative and zero return values from clk_round_rate() as
errors.  This is needed since subsequent patches will convert
clk_round_rate()'s return value to be an unsigned type, rather than a
signed type, since some clock sources can generate rates higher than
(2^31)-1 Hz.

Eventually, when calling clk_round_rate(), only a return value of zero
will be considered a error.  All other values will be considered valid
rates.  The comparison against values less than 0 is kept to preserve
the correct behavior in the meantime.

Signed-off-by: Paul Walmsley <pwalmsley at nvidia.com>
Cc: Mikko Perttunen <mperttunen at nvidia.com>
Cc: Arto Merilainen <amerilainen at nvidia.com>
Cc: Thierry Reding <thierry.reding at gmail.com>
Cc: Terje Bergström <tbergstrom at nvidia.com>
---
Applies on v3.13-rc3.  See also:

http://marc.info/?l=linux-arm-kernel&m=138542591313620&w=2

  drivers/gpu/drm/tegra/hdmi.c |    2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/tegra/hdmi.c b/drivers/gpu/drm/tegra/hdmi.c
index 0cd9bc2056e8..8cf9d3aeb0cd 100644
--- a/drivers/gpu/drm/tegra/hdmi.c
+++ b/drivers/gpu/drm/tegra/hdmi.c
@@ -959,7 +959,7 @@ static int tegra_output_hdmi_check_mode(struct tegra_output *output,
  	parent = clk_get_parent(hdmi->clk_parent);

  	err = clk_round_rate(parent, pclk * 4);
-	if (err < 0)
+	if (err <= 0)
  		*status = MODE_NOCLOCK;
  	else
  		*status = MODE_OK;


More information about the dri-devel mailing list