From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-6.2 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,MAILING_LIST_MULTI,SPF_HELO_NONE, SPF_PASS autolearn=no autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 65A0AC4332E for ; Thu, 11 Mar 2021 13:36:18 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 3343864FF2 for ; Thu, 11 Mar 2021 13:36:18 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233643AbhCKNfr (ORCPT ); Thu, 11 Mar 2021 08:35:47 -0500 Received: from mail.kernel.org ([198.145.29.99]:43020 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233603AbhCKNfX (ORCPT ); Thu, 11 Mar 2021 08:35:23 -0500 Received: by mail.kernel.org (Postfix) with ESMTPSA id C174464FF5; Thu, 11 Mar 2021 13:35:22 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1615469722; bh=6q4IiXUJWgYscOCHecS9Mt3djdFy8TY6aKd4onYASzw=; h=References:In-Reply-To:From:Date:Subject:To:Cc:From; b=UqYI40kpdj9pTyDaevY8Rj3aeYiZ42jbr3bj19Mi76nRVXy04kZ924TdIsyUPe5nI kVHCtANhj9MAOhAsi4EcR9R2xtU4MvIMQr7ZTEzzjdilqv+4kCNlORUhtjd8pMR2TR a5HSjhZpsqZyxNzVFKbM1y69DNNfFHM24NsdO67YBiYrU14vwxDLEm6ecS2AiOzBc9 4SaZgpwGtDHuQC9aKCe8UCl1mVfahUsXDBZvkbTfyKbiCpAGeKylgMr9UdZ6gr8xb+ GjGi8i8c01jNVRFO8iKW48+xTZ+NV+BcVcnm/aJ83vcD+4RmlPuxgYInkS79eYQnk7 IxUX0bVdkDD8A== Received: by mail-oi1-f174.google.com with SMTP id u198so18155082oia.4; Thu, 11 Mar 2021 05:35:22 -0800 (PST) X-Gm-Message-State: AOAM532+Ces9QDIaU/LU6w45qWc3ktC+O6h9xmA/qhDkN8dL6z/uTpDG dr3KBk9UwQU3d5GwGf+egq8FbHrimebEd9Ewrps= X-Google-Smtp-Source: ABdhPJxVF0HenIu8QBC6I7NhfOa4G3V0f41d1dKsWotCdWeJNJpyBNdwAHcVht7bLnu5j10LoEjZUejMgModqVzmgxA= X-Received: by 2002:aca:5e85:: with SMTP id s127mr6048962oib.67.1615469721794; Thu, 11 Mar 2021 05:35:21 -0800 (PST) MIME-Version: 1.0 References: <20210304213902.83903-1-marcan@marcan.st> <20210304213902.83903-13-marcan@marcan.st> <6e4880b3-1fb6-0cbf-c1a5-7a46fd9ccf62@marcan.st> <20210308211306.GA2920998@robh.at.kernel.org> <332c0b9a-dcfd-4c3b-9038-47cbda90eb3f@marcan.st> <7ee4a1ac-9fd4-3eca-853d-d12a16ddbb60@marcan.st> In-Reply-To: <7ee4a1ac-9fd4-3eca-853d-d12a16ddbb60@marcan.st> From: Arnd Bergmann Date: Thu, 11 Mar 2021 14:35:05 +0100 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [RFT PATCH v3 12/27] of/address: Add infrastructure to declare MMIO as non-posted To: Hector Martin Cc: Rob Herring , linux-arm-kernel , Marc Zyngier , Olof Johansson , Krzysztof Kozlowski , Mark Kettenis , Tony Lindgren , Mohamed Mediouni , Stan Skowronek , Alexander Graf , Will Deacon , Linus Walleij , Mark Rutland , Andy Shevchenko , Greg Kroah-Hartman , Jonathan Corbet , Catalin Marinas , Christoph Hellwig , "David S. Miller" , DTML , "open list:SERIAL DRIVERS" , Linux Doc Mailing List , linux-samsung-soc , "open list:GENERIC INCLUDE/ASM HEADER FILES" , "linux-kernel@vger.kernel.org" Content-Type: text/plain; charset="UTF-8" Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Thu, Mar 11, 2021 at 1:11 PM Hector Martin wrote: > On 11/03/2021 18.12, Arnd Bergmann wrote: > > On Wed, Mar 10, 2021 at 6:01 PM Rob Herring wrote: > >> On Wed, Mar 10, 2021 at 1:27 AM Hector Martin wrote: > >>> Works for me; then let's just make it non-recursive. > >>> > >>> Do you think we can get rid of the Apple-only optimization if we do > >>> this? It would mean only looking at the parent during address > >>> resolution, not recursing all the way to the top, so presumably the > >>> performance impact would be quite minimal. > > > > Works for me. > > Incidentally, even though it would now be unused, I'd like to keep the > apple,arm-platform compatible at this point; we've already been pretty > close to a use case for it, and I don't want to have to fall back to a > list of SoC compatibles if we ever need another quirk for all Apple ARM > SoCs (or break backwards compat). It doesn't really hurt to have it in > the binding and devicetrees, right? Yes, keeping the compatible string is a good idea regardless. > >> Yeah, that should be fine. I'd keep an IS_ENABLED() config check > >> though. Then I'll also know if anyone else needs this. > > > > Ok, makes sense. > > > > Conceptually, I'd like to then see a check that verifies that the > > property is only set for nodes whose parent also has it set, since > > that is how AXI defines it: A bus can wait for the ack from its > > child node, or it can acknowledge the write to its parent early. > > However, this breaks down as soon as a bus does the early ack: > > all its children by definition use posted writes (as seen by the > > CPU), even if they wait for stores that come from other masters. > > > > Does this make sense to you? > > Makes sense. This shouldn't really be something the kernel concerns > itself with at runtime, just something for the dts linting, right? > > I assume this isn't representable in json-schema, so it would presumably > need some ad-hoc validation code. Agreed, having a check in either dtc or expressed in the json scheme is better than a runtime check. I assume Rob would know how to best add such a check. Arnd From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-4.2 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS, URIBL_BLOCKED autolearn=no autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 563E3C433DB for ; Thu, 11 Mar 2021 13:37:05 +0000 (UTC) Received: from desiato.infradead.org (desiato.infradead.org [90.155.92.199]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id BACFB64E58 for ; Thu, 11 Mar 2021 13:37:04 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org BACFB64E58 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=kernel.org Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=desiato.20200630; h=Sender:Content-Transfer-Encoding :Content-Type:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:Cc:To:Subject:Message-ID:Date:From:In-Reply-To: References:MIME-Version:Reply-To:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=Mi5wK/tcna8aFIdD2zZOujQc0kaNEtnZg6e3l3eG7Zw=; b=nciJzNsCM5tvF5XGk2x16PckR SeHhPVYMkSWIHBZTTr6bO//SPQ266wgKlfFbL4d//g0oPZ6EJ0oJGsldWN4YKiQEzAmmEH0r4IWKq Sj0srwNw4xcNDfH95jmfN5r3lPphJVAtDAiHDn+1dBA2USf+uEuemXORulBSGbg4DA6pD4rpbQLxf zizfXkX42SoV7jKY/EeThTJjr9ArmBq9vIHj3+IeLxTTq5R+mTt95oJPmUW1Azz3ELPpICeELCdwl aCWaHLmko9+NLLbsV9SnTPPqEG+xsOGhyrdson4jMaAKEtI3f+J8NVTXJUr/Zq4+92wntrtjdh/a0 2PjuW5+kQ==; Received: from localhost ([::1] helo=desiato.infradead.org) by desiato.infradead.org with esmtp (Exim 4.94 #2 (Red Hat Linux)) id 1lKLTN-009EXg-75; Thu, 11 Mar 2021 13:35:29 +0000 Received: from mail.kernel.org ([198.145.29.99]) by desiato.infradead.org with esmtps (Exim 4.94 #2 (Red Hat Linux)) id 1lKLTI-009EWe-BT for linux-arm-kernel@lists.infradead.org; Thu, 11 Mar 2021 13:35:26 +0000 Received: by mail.kernel.org (Postfix) with ESMTPSA id BB69464FF3 for ; Thu, 11 Mar 2021 13:35:22 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1615469722; bh=6q4IiXUJWgYscOCHecS9Mt3djdFy8TY6aKd4onYASzw=; h=References:In-Reply-To:From:Date:Subject:To:Cc:From; b=UqYI40kpdj9pTyDaevY8Rj3aeYiZ42jbr3bj19Mi76nRVXy04kZ924TdIsyUPe5nI kVHCtANhj9MAOhAsi4EcR9R2xtU4MvIMQr7ZTEzzjdilqv+4kCNlORUhtjd8pMR2TR a5HSjhZpsqZyxNzVFKbM1y69DNNfFHM24NsdO67YBiYrU14vwxDLEm6ecS2AiOzBc9 4SaZgpwGtDHuQC9aKCe8UCl1mVfahUsXDBZvkbTfyKbiCpAGeKylgMr9UdZ6gr8xb+ GjGi8i8c01jNVRFO8iKW48+xTZ+NV+BcVcnm/aJ83vcD+4RmlPuxgYInkS79eYQnk7 IxUX0bVdkDD8A== Received: by mail-oi1-f173.google.com with SMTP id y131so20246632oia.8 for ; Thu, 11 Mar 2021 05:35:22 -0800 (PST) X-Gm-Message-State: AOAM5305KKQBJk+m+zaK12OYXZviiotAyCIoIexuu+driCKfy619DesD l8EXR+ZSuC1kHR7ukwKB1E30fhSlTEbT/5X+Rhk= X-Google-Smtp-Source: ABdhPJxVF0HenIu8QBC6I7NhfOa4G3V0f41d1dKsWotCdWeJNJpyBNdwAHcVht7bLnu5j10LoEjZUejMgModqVzmgxA= X-Received: by 2002:aca:5e85:: with SMTP id s127mr6048962oib.67.1615469721794; Thu, 11 Mar 2021 05:35:21 -0800 (PST) MIME-Version: 1.0 References: <20210304213902.83903-1-marcan@marcan.st> <20210304213902.83903-13-marcan@marcan.st> <6e4880b3-1fb6-0cbf-c1a5-7a46fd9ccf62@marcan.st> <20210308211306.GA2920998@robh.at.kernel.org> <332c0b9a-dcfd-4c3b-9038-47cbda90eb3f@marcan.st> <7ee4a1ac-9fd4-3eca-853d-d12a16ddbb60@marcan.st> In-Reply-To: <7ee4a1ac-9fd4-3eca-853d-d12a16ddbb60@marcan.st> From: Arnd Bergmann Date: Thu, 11 Mar 2021 14:35:05 +0100 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [RFT PATCH v3 12/27] of/address: Add infrastructure to declare MMIO as non-posted To: Hector Martin Cc: Rob Herring , linux-arm-kernel , Marc Zyngier , Olof Johansson , Krzysztof Kozlowski , Mark Kettenis , Tony Lindgren , Mohamed Mediouni , Stan Skowronek , Alexander Graf , Will Deacon , Linus Walleij , Mark Rutland , Andy Shevchenko , Greg Kroah-Hartman , Jonathan Corbet , Catalin Marinas , Christoph Hellwig , "David S. Miller" , DTML , "open list:SERIAL DRIVERS" , Linux Doc Mailing List , linux-samsung-soc , "open list:GENERIC INCLUDE/ASM HEADER FILES" , "linux-kernel@vger.kernel.org" X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20210311_133524_760002_528B700F X-CRM114-Status: GOOD ( 32.04 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org On Thu, Mar 11, 2021 at 1:11 PM Hector Martin wrote: > On 11/03/2021 18.12, Arnd Bergmann wrote: > > On Wed, Mar 10, 2021 at 6:01 PM Rob Herring wrote: > >> On Wed, Mar 10, 2021 at 1:27 AM Hector Martin wrote: > >>> Works for me; then let's just make it non-recursive. > >>> > >>> Do you think we can get rid of the Apple-only optimization if we do > >>> this? It would mean only looking at the parent during address > >>> resolution, not recursing all the way to the top, so presumably the > >>> performance impact would be quite minimal. > > > > Works for me. > > Incidentally, even though it would now be unused, I'd like to keep the > apple,arm-platform compatible at this point; we've already been pretty > close to a use case for it, and I don't want to have to fall back to a > list of SoC compatibles if we ever need another quirk for all Apple ARM > SoCs (or break backwards compat). It doesn't really hurt to have it in > the binding and devicetrees, right? Yes, keeping the compatible string is a good idea regardless. > >> Yeah, that should be fine. I'd keep an IS_ENABLED() config check > >> though. Then I'll also know if anyone else needs this. > > > > Ok, makes sense. > > > > Conceptually, I'd like to then see a check that verifies that the > > property is only set for nodes whose parent also has it set, since > > that is how AXI defines it: A bus can wait for the ack from its > > child node, or it can acknowledge the write to its parent early. > > However, this breaks down as soon as a bus does the early ack: > > all its children by definition use posted writes (as seen by the > > CPU), even if they wait for stores that come from other masters. > > > > Does this make sense to you? > > Makes sense. This shouldn't really be something the kernel concerns > itself with at runtime, just something for the dts linting, right? > > I assume this isn't representable in json-schema, so it would presumably > need some ad-hoc validation code. Agreed, having a check in either dtc or expressed in the json scheme is better than a runtime check. I assume Rob would know how to best add such a check. Arnd _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel