Received: by 10.213.65.68 with SMTP id h4csp1064966imn; Thu, 22 Mar 2018 14:31:57 -0700 (PDT) X-Google-Smtp-Source: AG47ELujnzzkEoz+Yepe4ly321oWo87Uwm2+JpzVwXO1YiXPXHTOgSRbXzUz1nVYmnUTHyQVVSh9 X-Received: by 10.98.102.131 with SMTP id s3mr15071140pfj.89.1521754317196; Thu, 22 Mar 2018 14:31:57 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1521754317; cv=none; d=google.com; s=arc-20160816; b=okIy0pe/fR93OHU82f7pbzzyVXopLujS7DhKnqHJewC1EqiRcfagcZKMn7Kr3bZifP HLuAYAy4sPgK31KOC8eL0cunqC6svOyX1AJfAv397yl78k1o4YOAId41Acp5lEWjIA1/ ch/vTADZ6NYUr3NVzOXgdryJ/3XJyVSENlV8CWPAGCj4pD0/Vqsw3B4e2buDUXcgw2Xf oqdGjnegVLYzRqZAwf1WmIk9s+Gohx5T4UOJz/xRm1AOrYM6K4fQO1eP/NXIryFaFGW6 wk40aj6FAro6509zcNnqTUbwhIjC/ZRIxfYTOvVXfLR34bZJwwtS/zzZ/7wG2PIAIsOl mr1g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:message-id:date:subject:cc:to:from :dkim-signature:arc-authentication-results; bh=WqhjHg7zKk0dSsn01eOoZe4tzROrmnHiX+jCeIq3Cng=; b=rBUFxXOskXq9IteTejWTkbn6cb1cNHpyrhPzy1e7OKabP9VUYBz3DjxpCm4x2HIeTI pwCe6WX6aj1ZdkH9QoPDPtLv6NH6SMaMSDo+Ru5u7qVXaNriKxF26/oIwFYdXjF3y58S 9sfnTaheUbUq6hh6TZIQHHcL/K4xm+WBA0goG/+Qpe9xgD0f7iAtH/x9Jy3Deoi++OWz lnuRWPZ5akNQuSR7uyLob0yb9MZbENdJYMaTuRpyLbp2WSB6XUIuw0FA/X0cJqdWEvBN GLVdxaEzKpHQ3x3tKX7PHgHWzCyLP2FptOvDcSIV3a4NLZSo9OBbWeKIkBs54tHt5Xbk kqfQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass (test mode) header.i=@ideasonboard.com header.s=mail header.b=S9HNlG/z; 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 u11si5346840pfh.197.2018.03.22.14.31.42; Thu, 22 Mar 2018 14:31:57 -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 (test mode) header.i=@ideasonboard.com header.s=mail header.b=S9HNlG/z; 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 S1751866AbeCVVas (ORCPT + 99 others); Thu, 22 Mar 2018 17:30:48 -0400 Received: from galahad.ideasonboard.com ([185.26.127.97]:54960 "EHLO galahad.ideasonboard.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751730AbeCVVaq (ORCPT ); Thu, 22 Mar 2018 17:30:46 -0400 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 Cc: Sergei Shtylyov , Lars-Peter Clausen , Laurent Pinchart , Simon Horman , Kieran Bingham , Magnus Damm , Rob Herring , Mark Rutland , Russell King , devicetree@vger.kernel.org (open list:OPEN FIRMWARE AND FLATTENED DEVICE TREE BINDINGS), linux-arm-kernel@lists.infradead.org (moderated list:ARM PORT) 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 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 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"; -- 2.7.4