Received: by 2002:ac0:a5a7:0:0:0:0:0 with SMTP id m36-v6csp527101imm; Thu, 26 Jul 2018 07:43:26 -0700 (PDT) X-Google-Smtp-Source: AAOMgpdTFaaiHgrVCKoxNJjU7c+BwtlmAf6hrPagOiFDguVnSnOp30jvJmWRWFS4o6O/gUfUq4br X-Received: by 2002:a62:9b57:: with SMTP id r84-v6mr2450341pfd.6.1532616206004; Thu, 26 Jul 2018 07:43:26 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1532616205; cv=none; d=google.com; s=arc-20160816; b=ZIawsZFOdR9yDVSqy7JuCtPoNRP5Qctv/EkCzWYZqoOrATaPCqK/zDkpDsEQCW/CI8 Sx436zzHmYZOgQJmku4DmgFDmxuLYD775hHytzMiUkTaKpRodNwHtG5KQ+rnPI99E+rP sYjXlPZl3rZkJtizIXKmqsxy9tBd3LldjvCYiMSijy/n/tSWPQTLNmRiF+2sMbhgSVkv SZ8L9C5T8dCqJtpH5qg8Z4/TVja75OS2gYa8nxTz/2Q0GIo2b0olCpw7rQC96VYA4UmR Gzqs2xHU3PX/aRSBjMDMAudEm/SmFfaPSnj/qO68YI0LUIufP/N92lOmnOqVCO+guI3R dMRw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:in-reply-to :mime-version:user-agent:date:message-id:from:cc:references:to :subject:arc-authentication-results; bh=b97Kf/eYPWyn6PY1lVUixUH6wjIz/5/HEtdhob/Cf0k=; b=u4d/W2CIWnFSCD2eTJOqTTIugNKdFyCj9PKIVrToPQ658g+32+b981yvFjDN547YMD SyvYwVTbJkfLZiar62fB0COT+s5Xayjmk6hds0yBQXUUU/KyF7TV3gtbg73cwN2hc7hZ zUGQuFJzKkAPTE+tqtomP6zEDJJ+BZH2J3gceZNBTrO2MjirrwQUK7RAOVbcASe7agqQ hLvgEkw0P3XEvA9S2o9A0wqmaZXrcF6NsgHm5RX3Vi70lf56BE3OAIMfzXKgbhzqy9AE Ws3diar3WLgxJfaV4uLq7VtiY9VPWEJK5xSXQ5QYhzKQ5aZTxJtqfvINPHwu3XA44gBN Gg6A== ARC-Authentication-Results: i=1; mx.google.com; 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 e132-v6si1523711pfg.171.2018.07.26.07.43.10; Thu, 26 Jul 2018 07:43:25 -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; 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 S1731374AbeGZP7G (ORCPT + 99 others); Thu, 26 Jul 2018 11:59:06 -0400 Received: from mail-sh2.amlogic.com ([58.32.228.45]:8229 "EHLO mail-sh2.amlogic.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1730184AbeGZP7G (ORCPT ); Thu, 26 Jul 2018 11:59:06 -0400 Received: from [192.168.90.67] (61.170.236.39) by mail-sh2.amlogic.com (10.18.11.6) with Microsoft SMTP Server (TLS) id 15.0.1320.4; Thu, 26 Jul 2018 22:42:01 +0800 Subject: Re: [PATCH] arm64: dts: meson: Switch simple-mfd and syscon order To: Neil Armstrong , References: <1532614438-7207-1-git-send-email-narmstrong@baylibre.com> CC: , , , From: Yixun Lan Message-ID: <494ff778-1888-7743-3a91-62364431d82e@amlogic.com> Date: Thu, 26 Jul 2018 22:41:51 +0800 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.5.1 MIME-Version: 1.0 In-Reply-To: <1532614438-7207-1-git-send-email-narmstrong@baylibre.com> Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit X-Originating-IP: [61.170.236.39] X-ClientProxiedBy: mail-sh2.amlogic.com (10.18.11.6) To mail-sh2.amlogic.com (10.18.11.6) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org HI Neil On 07/26/2018 10:13 PM, Neil Armstrong wrote: > The order between "syscon" and "simple-mfd" is important because in these > particular cases, the node needs to be first a "simple-mfd" to expose > it's sub-nodes, and later on a "syscon" to permit other nodes to access > this register space through the "syscon" mechanism. > could you explain a bit which specific case that it need compatible "simple-mfd" come first? is this a problem in kernel side? because I see you have a comment below about problem in U-Boot.. also while Rob review the mmc-clkc patch, he raise a suggestion to drop "syscon" in drivers/mfd/syscon.c, see [1], will that solve or affect your problem? [1] https://lkml.kernel.org/r/CAL_Jsq+r+7BaJAPBn3L26sdxATVyDiuC=V3xE+yz0-27q0RJhA@mail.gmail.com > Signed-off-by: Neil Armstrong > --- > This also has a consequence for U-Boot since the U-Boot DM is much simpler > and can only associate a single device to a node, thus here we want these > nodes to be an mfd bus to be able to probe the sub-nodes. > > arch/arm64/boot/dts/amlogic/meson-axg.dtsi | 4 ++-- > arch/arm64/boot/dts/amlogic/meson-gx.dtsi | 4 ++-- > 2 files changed, 4 insertions(+), 4 deletions(-) > > diff --git a/arch/arm64/boot/dts/amlogic/meson-axg.dtsi b/arch/arm64/boot/dts/amlogic/meson-axg.dtsi > index 6adc8d3..3f0de9d 100644 > --- a/arch/arm64/boot/dts/amlogic/meson-axg.dtsi > +++ b/arch/arm64/boot/dts/amlogic/meson-axg.dtsi > @@ -342,7 +342,7 @@ > ranges = <0x0 0x0 0x0 0xff63c000 0x0 0x1c00>; > > sysctrl: system-controller@0 { > - compatible = "amlogic,meson-axg-hhi-sysctrl", "syscon", "simple-mfd"; > + compatible = "amlogic,meson-axg-hhi-sysctrl", "simple-mfd", "syscon"; > reg = <0 0 0 0x400>; > > clkc: clock-controller { > @@ -1180,7 +1180,7 @@ > ranges = <0x0 0x0 0x0 0xff800000 0x0 0x100000>; > > sysctrl_AO: sys-ctrl@0 { > - compatible = "amlogic,meson-axg-ao-sysctrl", "syscon", "simple-mfd"; > + compatible = "amlogic,meson-axg-ao-sysctrl", "simple-mfd", "syscon"; > reg = <0x0 0x0 0x0 0x100>; > > clkc_AO: clock-controller { > diff --git a/arch/arm64/boot/dts/amlogic/meson-gx.dtsi b/arch/arm64/boot/dts/amlogic/meson-gx.dtsi > index b8dc4db..d88699f 100644 > --- a/arch/arm64/boot/dts/amlogic/meson-gx.dtsi > +++ b/arch/arm64/boot/dts/amlogic/meson-gx.dtsi > @@ -344,7 +344,7 @@ > ranges = <0x0 0x0 0x0 0xc8100000 0x0 0x100000>; > > sysctrl_AO: sys-ctrl@0 { > - compatible = "amlogic,meson-gx-ao-sysctrl", "syscon", "simple-mfd"; > + compatible = "amlogic,meson-gx-ao-sysctrl", "simple-mfd", "syscon"; > reg = <0x0 0x0 0x0 0x100>; > > pwrc_vpu: power-controller-vpu { > @@ -431,7 +431,7 @@ > ranges = <0x0 0x0 0x0 0xc883c000 0x0 0x2000>; > > sysctrl: system-controller@0 { > - compatible = "amlogic,meson-gx-hhi-sysctrl", "syscon", "simple-mfd"; > + compatible = "amlogic,meson-gx-hhi-sysctrl", "simple-mfd", "syscon"; > reg = <0 0 0 0x400>; > }; > >