Received: by 2002:a05:6a10:22f:0:0:0:0 with SMTP id 15csp1240660pxk; Fri, 2 Oct 2020 04:57:36 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwGdsY12q6JmkxNvqQ5aFwG4CmyqRZDY/+m/okQoJaOX4vmRY7aWxSRRdeDwiQU6/t6UtYv X-Received: by 2002:aa7:da89:: with SMTP id q9mr1852030eds.111.1601639856582; Fri, 02 Oct 2020 04:57:36 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1601639856; cv=none; d=google.com; s=arc-20160816; b=rc7FGrVCVQE+JIgC+k86teGZ8sN29uLB2A972z5GaQg63711C72FpyysObL7b4DLus ivMes4XezQyUy1cRpT6s4dga+6g4p+KTXrK15iCDKxokQeaZvVp/cthXnmJ1f8BAvyiM UYxWnIyGUYm9SDRLYDponqkK4MvDVCb+dpVjlVg+UV79f6EjGfMFZHpNUyt6w+tl+5Yb +yA1aiOLZu5UtRZFBLkqH+A/fH34WoEDOZhGe0v22L098Uji3rsSNZ6Ua63O+hkPK3wn ZpeAK/4HKw/Fa/8WKbgX2GBrr8sbvMWCWaEFih5aE8gbQvGJxfTPEy99scP9RXp16n8n zCYA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:user-agent:in-reply-to:content-disposition :mime-version:references:message-id:subject:cc:to:from:date; bh=ENhi7oiqldDngpw2IC36kkDO7RcPnqvEuZ7KlbtQWRI=; b=Pk6EK7d2MG/8c2YRkvxHCMrX36qUomN+tAG/w8mro93Y41ksQob2ic/QyEkh6xAcse Ub8P9+rBoqkwKsVgiNQ9QitXCHCvXlxa2w9FLS067oFJ1qkXkH4UsBFhMj03DXNkEptF 4TnvkqvOsI54GanK/8RdVvJlOuGHnjTzrpQThlAFhO/4BgOreIet1ZfuNsGukh+dDxPr r1oivzDe+aosCdOTEagxWJCCLrsMzi9b27YQPAvcWZRx6pN6Jq/FuJEXoQhQ0aIEhUuI /6mCK683F6ycy8rfdEtAvRaE+3C6wVQX7qI+SA1wbMX1GJ4kayJvTQD+YqgvnEbcdMT9 3wXQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=arm.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id mj10si898217ejb.723.2020.10.02.04.57.14; Fri, 02 Oct 2020 04:57:36 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=arm.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2387677AbgJBLzq (ORCPT + 99 others); Fri, 2 Oct 2020 07:55:46 -0400 Received: from mail.kernel.org ([198.145.29.99]:47906 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726282AbgJBLzq (ORCPT ); Fri, 2 Oct 2020 07:55:46 -0400 Received: from gaia (unknown [95.149.105.49]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 12001206B7; Fri, 2 Oct 2020 11:55:43 +0000 (UTC) Date: Fri, 2 Oct 2020 12:55:41 +0100 From: Catalin Marinas To: Nicolas Saenz Julienne Cc: Rob Herring , devicetree@vger.kernel.org, will@kernel.org, Frank Rowand , linux-kernel@vger.kernel.org, linux-mm@kvack.org, iommu@lists.linux-foundation.org, linux-rpi-kernel@lists.infradead.org, robin.murphy@arm.com, hch@lst.de, linux-arm-kernel@lists.infradead.org Subject: Re: [PATCH 1/4] of/fdt: Update zone_dma_bits when running in bcm2711 Message-ID: <20201002115541.GC7034@gaia> References: <20201001161740.29064-1-nsaenzjulienne@suse.de> <20201001161740.29064-2-nsaenzjulienne@suse.de> <20201001171500.GN21544@gaia> <20201001172320.GQ21544@gaia> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.10.1 (2018-07-13) Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Thu, Oct 01, 2020 at 07:31:19PM +0200, Nicolas Saenz Julienne wrote: > On Thu, 2020-10-01 at 18:23 +0100, Catalin Marinas wrote: > > On Thu, Oct 01, 2020 at 06:15:01PM +0100, Catalin Marinas wrote: > > > On Thu, Oct 01, 2020 at 06:17:37PM +0200, Nicolas Saenz Julienne wrote: > > > > diff --git a/drivers/of/fdt.c b/drivers/of/fdt.c > > > > index 4602e467ca8b..cd0d115ef329 100644 > > > > --- a/drivers/of/fdt.c > > > > +++ b/drivers/of/fdt.c > > > > @@ -25,6 +25,7 @@ > > > > #include > > > > #include > > > > #include > > > > +#include /* for zone_dma_bits */ > > > > > > > > #include /* for COMMAND_LINE_SIZE */ > > > > #include > > > > @@ -1198,6 +1199,14 @@ void __init early_init_dt_scan_nodes(void) > > > > of_scan_flat_dt(early_init_dt_scan_memory, NULL); > > > > } > > > > > > > > +void __init early_init_dt_update_zone_dma_bits(void) > > > > +{ > > > > + unsigned long dt_root = of_get_flat_dt_root(); > > > > + > > > > + if (of_flat_dt_is_compatible(dt_root, "brcm,bcm2711")) > > > > + zone_dma_bits = 30; > > > > +} > > > > > > I think we could keep this entirely in the arm64 setup_machine_fdt() and > > > not pollute the core code with RPi4-specific code. > > > > Actually, even better, could we not move the check to > > arm64_memblock_init() when we initialise zone_dma_bits? > > I did it this way as I vaguely remembered Rob saying he wanted to centralise > all early boot fdt code in one place. But I'll be happy to move it there. I can see Rob replied and I'm fine if that's his preference. However, what I don't particularly like is that in the arm64 code, if zone_dma_bits == 24, we set it to 32 assuming that it wasn't touched by the early_init_dt_update_zone_dma_bits(). What if at some point we'll get a platform that actually needs 24 here (I truly hope not, but just the principle of relying on magic values)? So rather than guessing, I'd prefer if the arch code can override ZONE_DMA_BITS_DEFAULT. Then, in arm64, we'll just set it to 32 and no need to explicitly touch the zone_dma_bits variable. -- Catalin