Received: by 10.213.65.68 with SMTP id h4csp1033871imn; Thu, 22 Mar 2018 13:52:41 -0700 (PDT) X-Google-Smtp-Source: AG47ELuNMLSCgkDCBZLOwL6+Q+RP6j/FHoxrEjBHuMzq9hRtvErZWPuaexWP7XGEz7bOpf1Lza7H X-Received: by 10.99.176.12 with SMTP id h12mr3739735pgf.448.1521751961924; Thu, 22 Mar 2018 13:52:41 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1521751961; cv=none; d=google.com; s=arc-20160816; b=Y98v6e4RzLUihVlfOjPZ67tQc4P7Ue3nYcNaFB6WWD9t0tPm14+TWSrlkN2rfyrbFf xm7gWJXbl3kyfpQZZglvVItlJHRrE2JXx7+1A8Ml5hoWSQH2YWI/mB5ASc62x6456ydQ 9yOsZ8ycbHrmgCiSxPn//x/74bnYQOHTuh1K5tf6RFHLmqNDpsnx7N7puiFcS8jzT/L7 tFAbXJ0SKlcx+ZcdT7UTVJj51rhsfIMh5MgdtPmo6RfxqHm3rkhhPnAOhcIHIW7wMvxl s+DlF529cKV4mRLceFYXI+6LrTBlXdRmvOOeWGMIJ2in/Hq4venraLRemU2PEic0nl3a 9rqQ== 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=WcOigjvHe9gvuqn01XhXAX2fAfGhAR5nFXmQkmOYHmk=; b=kYLRcocxy9qepvSwsFCux3BEU0Fltd0xs+bHwKXm8WpSZv5OajOSFw/48FWytMbvOx rqF801ZkYWruKzcRe9zIoqbLMAzu7x5/hoanifezXF91hmOuTdNxgIkhscZekTzHCHwa sSWxKrArArZGLYmIjeZtpr9NWq6Xl8H50UFSl5+nrDyPJ12yrpBR10ZPVTKAQqatgtp3 aU70UpxtfbLAtYaSbtfTamXyXuKYG6btng/8g5EdtUS1p1S0ADGfk5fHPGxAcbSJ2P24 vy3jb3y+GDBfDRec4VpDotTXavEVhk9t4PPPs0Mqz9k205NyugRYspYLpmAIua3bBbKt tK7g== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass (test mode) header.i=@ideasonboard.com header.s=mail header.b=BvjEmXQN; 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 q17si5243697pfg.298.2018.03.22.13.52.26; Thu, 22 Mar 2018 13:52:41 -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=BvjEmXQN; 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 S1751687AbeCVUvd (ORCPT + 99 others); Thu, 22 Mar 2018 16:51:33 -0400 Received: from galahad.ideasonboard.com ([185.26.127.97]:54769 "EHLO galahad.ideasonboard.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751455AbeCVUvb (ORCPT ); Thu, 22 Mar 2018 16:51:31 -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 63AE920064; Thu, 22 Mar 2018 21:49:05 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com; s=mail; t=1521751746; bh=ONwJOLe4q3BSvnJ79Fbi5ri4H7ds7EIU/8w+4ksVTX0=; h=From:To:Cc:Subject:Date:From; b=BvjEmXQNaTKGLrUYICvyflCjKOcMA8OISBkB9qqAh6xaZYpOwXVo+kS0SRcOBjczF Jv/BFLxEH/+zZAY38jFkaZnsNM164mEkLsSply82Y/2t2DPfpEzbXxq1ldgw/T2xCV VCDO9MkfBZAlQLCABegoY+ZUZaXMd5RleRE8Mys4= 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 v5] ARM: dts: wheat: Fix ADV7513 address usage Date: Thu, 22 Mar 2018 20:51:22 +0000 Message-Id: <1521751882-7996-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: - No change from v4 except to repost and drop the [RFT] now that it's tested 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 | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/arch/arm/boot/dts/r8a7792-wheat.dts b/arch/arm/boot/dts/r8a7792-wheat.dts index 293b9e3b3e70..3e9f70e87a60 100644 --- a/arch/arm/boot/dts/r8a7792-wheat.dts +++ b/arch/arm/boot/dts/r8a7792-wheat.dts @@ -245,9 +245,16 @@ status = "okay"; clock-frequency = <400000>; + /* + * The adv75xx resets its addresses to defaults during low power 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 +284,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