Received: by 2002:ac0:a5b6:0:0:0:0:0 with SMTP id m51-v6csp2224727imm; Mon, 28 May 2018 04:17:03 -0700 (PDT) X-Google-Smtp-Source: AB8JxZpTBCQy+Iwpe4kiw27Prgj0GG4Ps/j6s/NVzDeeTbRgtrSOUL3h+7AFvBKghwkMdEmjVNZS X-Received: by 2002:a63:794d:: with SMTP id u74-v6mr10267703pgc.328.1527506223352; Mon, 28 May 2018 04:17:03 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1527506223; cv=none; d=google.com; s=arc-20160816; b=mj3qnQa7dNHawsby4Oy7qtGkDTNivCYI+cr3zx2OHungfjPd9JICXBJ8dLQ+zAjKQj S0UKhYjNrEEfxO2cHtD/i/i0dCsQV9b0cjgQq58aBDCBV8PHiMcL9xR542W9g90+xzgZ afs1F6skjeAPcbn2dh5X6K494c4HNfwUErh0WMIGdNf+MafzcP+2Vf2wwxdYRi3Z/1Sm KTZZHzGTwzc9CcMCHERO22WbxPkDlw4j+2nSjETkpdIK2MCvkrRh5TdvecUwGROMTjBx wrVzR5QRgqMieCnRSV5a7oxTALhVTsSZtwTDZjRcP5fb/NDXpATgG0nBARjM8mUxeRb3 Q0HA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:mime-version:user-agent:references :in-reply-to:message-id:date:subject:cc:to:from:dkim-signature :arc-authentication-results; bh=3unjfn+alQoTqc07y0BwsbZilLZ14Rd2VXG4QapugzM=; b=chVk/14TB7RjjunNIPVZBcNTesZRmVzAtpWRQuiy1ze+Q7Gv+PGS/nEOBXSfcTzkBC lCv6WQQ3yCgxMmkmwgT9D6paoD/InvLLTDU2zXlC8+0vgLzbU5Kh2Wbo8rB3gjazEoAx zx0cTBq+kNsbm3Gq5WgRn3i7rQvSeJ/BaL6OuN6ENlOX8sRvZGaDQ+iZvLUZod3rL/HI CdW6ndqKe3dU/X0fuixTZc9l3VUM4/zBZlAGGkh5m0aYrRcbUqUkh9p3+d68Na8uoCR6 nHV35q8mTT7o9k+86Wip99c3k7bE0XZ7AXAFLXkp/BSlQMUqcKB6mwtiZlgSkVAjIjlf iaXQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=faTR63td; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id b62-v6si2637519pfm.104.2018.05.28.04.16.48; Mon, 28 May 2018 04:17:03 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=faTR63td; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1424632AbeE1LQA (ORCPT + 99 others); Mon, 28 May 2018 07:16:00 -0400 Received: from mail.kernel.org ([198.145.29.99]:34962 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1422828AbeE1LPw (ORCPT ); Mon, 28 May 2018 07:15:52 -0400 Received: from localhost (LFbn-1-12247-202.w90-92.abo.wanadoo.fr [90.92.61.202]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id B4AB7206B7; Mon, 28 May 2018 11:15:51 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1527506152; bh=tGjN+vp+RHvzWcSYpjIN/Y0cnLxwOkmULAUt8y+gBDI=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=faTR63tdzwmh/GYJO74nOKqkJhRpTIOkLNHKjQvgVE1j30sSQJGINWZCy3CQeAzFl HFJ7OPl1itvFN4LfWx1sSNbcnKcYnV77g+wWPn+ZPTo8y1Qmf89Lo9IAkk8Lb85hXR reFqroHaAiw0hUsP+nNMtXPcM6YlvLfxQJ1IgG/g= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Sergei Shtylyov , Laurent Pinchart , Sasha Levin Subject: [PATCH 4.16 258/272] drm: rcar-du: lvds: Fix LVDS startup on R-Car Gen3 Date: Mon, 28 May 2018 12:04:51 +0200 Message-Id: <20180528100301.872922042@linuxfoundation.org> X-Mailer: git-send-email 2.17.0 In-Reply-To: <20180528100240.256525891@linuxfoundation.org> References: <20180528100240.256525891@linuxfoundation.org> User-Agent: quilt/0.65 X-stable: review MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 4.16-stable review patch. If anyone has any objections, please let me know. ------------------ From: Sergei Shtylyov [ Upstream commit 796ceb9269626afaed3b4955c40d2c3d7a8c5d01 ] According to the latest revisions of the R-Car Gen3 manual, the LVDS mode must be set before the LVDS I/O pins are enabled, not after -- fix the Gen3 LVDS startup sequence accordingly. Fixes: e947eccbeba4 ("drm: rcar-du: Add support for LVDS mode selection") Signed-off-by: Sergei Shtylyov Reviewed-by: Laurent Pinchart [Updated comment in rcar_du_lvdsenc_start_gen3()] [Moved Gen2 startup comment update to separate commit] [Fixed =| typo] Tested-by: Laurent Pinchart Signed-off-by: Laurent Pinchart Signed-off-by: Sasha Levin Signed-off-by: Greg Kroah-Hartman --- drivers/gpu/drm/rcar-du/rcar_du_lvdsenc.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) --- a/drivers/gpu/drm/rcar-du/rcar_du_lvdsenc.c +++ b/drivers/gpu/drm/rcar-du/rcar_du_lvdsenc.c @@ -95,7 +95,7 @@ static void rcar_du_lvdsenc_start_gen3(s u32 lvdcr0; u32 pllcr; - /* PLL clock configuration */ + /* Set the PLL clock configuration and LVDS mode. */ if (freq < 42000) pllcr = LVDPLLCR_PLLDIVCNT_42M; else if (freq < 85000) @@ -107,6 +107,9 @@ static void rcar_du_lvdsenc_start_gen3(s rcar_lvds_write(lvds, LVDPLLCR, pllcr); + lvdcr0 = lvds->mode << LVDCR0_LVMD_SHIFT; + rcar_lvds_write(lvds, LVDCR0, lvdcr0); + /* Turn all the channels on. */ rcar_lvds_write(lvds, LVDCR1, LVDCR1_CHSTBY_GEN3(3) | LVDCR1_CHSTBY_GEN3(2) | @@ -117,7 +120,7 @@ static void rcar_du_lvdsenc_start_gen3(s * Turn the PLL on, set it to LVDS normal mode, wait for the startup * delay and turn the output on. */ - lvdcr0 = (lvds->mode << LVDCR0_LVMD_SHIFT) | LVDCR0_PLLON; + lvdcr0 |= LVDCR0_PLLON; rcar_lvds_write(lvds, LVDCR0, lvdcr0); lvdcr0 |= LVDCR0_PWD;