From patchwork Thu Mar 22 21:30:40 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Kieran Bingham X-Patchwork-Id: 10302351 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork.web.codeaurora.org (Postfix) with ESMTP id 93B3760386 for ; Thu, 22 Mar 2018 21:31:07 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 82FB8289F9 for ; Thu, 22 Mar 2018 21:31:07 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 77521289FF; Thu, 22 Mar 2018 21:31:07 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-1.9 required=2.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID autolearn=unavailable version=3.3.1 Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.wl.linuxfoundation.org (Postfix) with ESMTPS id 0E64E289F9 for ; Thu, 22 Mar 2018 21:31:07 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20170209; h=Sender: Content-Transfer-Encoding:Content-Type:MIME-Version:Cc:List-Subscribe: List-Help:List-Post:List-Archive:List-Unsubscribe:List-Id:Message-Id:Date: Subject:To:From:Reply-To:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To: References:List-Owner; bh=AUk7LboEnI9WikrerSXfkDoT1V40QWpv/nUMZHhYFSY=; b=XAm KL5JFJh83tDHZuh9PfL9BHnALzRgsa0q9U3Pc2vY50ulnOtj7wzGk1XhvWhq1ipXItyh6kMsTgEpO jY5hrosWZJV/55dileoZrCg1J4CUGjuKP1CIiIVKfdaCaqpXfWEuUXQYPbwOTRjrs1kE6wL5bzezz 08PoCz/xwjWNYMO5upKMrhKUGmTgjk5XlrT4pPeEOkHuKEG4PMvzP+bLL8HNlZDRUVc/rfsDUfHdl bS7k0/WirTBDVHnAVPm0CuHVW+7JEWvubPDRyUH+vYHrJgXtqJc2Jx4HTV/DokFN3P4X4tJCS/LU+ 1XZISDvRxZuMxvc9Z27trGdJV+aaz4Q==; Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.90_1 #2 (Red Hat Linux)) id 1ez7nb-00014X-AG; Thu, 22 Mar 2018 21:31:03 +0000 Received: from galahad.ideasonboard.com ([185.26.127.97]) by bombadil.infradead.org with esmtps (Exim 4.90_1 #2 (Red Hat Linux)) id 1ez7nW-00012I-8T for linux-arm-kernel@lists.infradead.org; Thu, 22 Mar 2018 21:31:00 +0000 Received: from localhost.localdomain (cpc89242-aztw30-2-0-cust488.18-1.cable.virginm.net [86.31.129.233]) by galahad.ideasonboard.com (Postfix) with ESMTPSA id C91D520064; Thu, 22 Mar 2018 22:28:21 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com; s=mail; t=1521754102; bh=cDKk7399Ssr3c0TWm6/Vkxp3cIrSm1lUEeDew00rl/8=; h=From:To:Cc:Subject:Date:From; b=S9HNlG/z6mN3Cbz5PwCGgxwe//kCl4rpOC+bbG60nfTbLKGqSOB+LUWvcpT/qZOWS QLX4L7yqk0nwjUEuFkZ1saz4mfyw+yLBdBv7Fg8T3JT2xSAsrF0Q9TXeMAMsnNP2rn BneaXm8K9SyzVAGnGkUDnKISGmE4ySDxNViTqqW4= From: Kieran Bingham To: linux-kernel@vger.kernel.org, linux-media@vger.kernel.org, dri-devel@lists.freedesktop.org, linux-renesas-soc@vger.kernel.org Subject: [PATCH v6] ARM: dts: wheat: Fix ADV7513 address usage Date: Thu, 22 Mar 2018 21:30:40 +0000 Message-Id: <1521754240-10470-1-git-send-email-kieran.bingham+renesas@ideasonboard.com> X-Mailer: git-send-email 2.7.4 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20180322_143058_797916_47DCCBA0 X-CRM114-Status: GOOD ( 16.12 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Mark Rutland , "open list:OPEN FIRMWARE AND FLATTENED DEVICE TREE BINDINGS" , Lars-Peter Clausen , Sergei Shtylyov , Kieran Bingham , Magnus Damm , Russell King , Rob Herring , Simon Horman , Laurent Pinchart , "moderated list:ARM PORT" MIME-Version: 1.0 Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+patchwork-linux-arm=patchwork.kernel.org@lists.infradead.org X-Virus-Scanned: ClamAV using ClamSMTP The r8a7792 Wheat board has two ADV7513 devices sharing a single I2C bus, however in low power mode the ADV7513 will reset it's slave maps to use the hardware defined default addresses. The ADV7511 driver was adapted to allow the two devices to be registered correctly - but it did not take into account the fault whereby the devices reset the addresses. This results in an address conflict between the device using the default addresses, and the other device if it is in low-power-mode. Repair this issue by moving both devices away from the default address definitions. Signed-off-by: Kieran Bingham Reviewed-by: Laurent Pinchart --- v2: - Addition to series v3: - Split map register addresses into individual declarations. v4: - Normalise I2C usage v5: - Repost without [RFT] now that it has been tested v6: - s/low power power/low power/ correction from Laurent. Testing on a wheat board shows the addresses correctly assigned, and the default addresses (0x38, 0x3e, 0x3f which would otherwise conflict) are shown as actively returning data in low power mode during the scan. (they return 0) 0 1 2 3 4 5 6 7 8 9 a b c d e f 00: -- -- -- -- -- -- -- -- -- -- -- -- -- 10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 20: -- -- -- -- -- -- -- -- -- UU -- -- -- UU -- -- 30: -- -- -- -- -- -- -- -- 38 UU -- -- -- UU 3e 3f 40: -- -- -- -- -- -- -- -- -- UU -- -- -- UU -- -- 50: -- -- -- -- -- -- -- -- -- UU -- -- -- UU -- -- 60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 70: -- -- -- -- -- -- -- -- arch/arm/boot/dts/r8a7792-wheat.dts | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/arch/arm/boot/dts/r8a7792-wheat.dts b/arch/arm/boot/dts/r8a7792-wheat.dts index 293b9e3b3e70..db01de7a3811 100644 --- a/arch/arm/boot/dts/r8a7792-wheat.dts +++ b/arch/arm/boot/dts/r8a7792-wheat.dts @@ -245,9 +245,15 @@ status = "okay"; clock-frequency = <400000>; + /* + * The adv75xx resets its addresses to defaults during low power mode. + * Because we have two ADV7513 devices on the same bus, we must change + * both of them away from the defaults so that they do not conflict. + */ hdmi@3d { compatible = "adi,adv7513"; - reg = <0x3d>; + reg = <0x3d>, <0x2d>, <0x4d>, <0x5d>; + reg-names = "main", "cec", "edid", "packet"; adi,input-depth = <8>; adi,input-colorspace = "rgb"; @@ -277,7 +283,8 @@ hdmi@39 { compatible = "adi,adv7513"; - reg = <0x39>; + reg = <0x39>, <0x29>, <0x49>, <0x59>; + reg-names = "main", "cec", "edid", "packet"; adi,input-depth = <8>; adi,input-colorspace = "rgb";