Received: by 2002:ac0:a5a6:0:0:0:0:0 with SMTP id m35-v6csp3246470imm; Tue, 4 Sep 2018 18:56:06 -0700 (PDT) X-Google-Smtp-Source: ANB0VdabrSXTzJd2J1KUf+C6Yo23Dglx4FIQgWFwDVqNvdHet9c8TW8+EB5UZq3kFGxMLJQINngW X-Received: by 2002:a62:12c7:: with SMTP id 68-v6mr37700084pfs.216.1536112566649; Tue, 04 Sep 2018 18:56:06 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1536112566; cv=none; d=google.com; s=arc-20160816; b=G97LnMMcRA2AoBgezTc21GR0s4Oyae3eGPlxQtC+Iig4IEwfVM2s89hhPpZX/sn/6T q2mOAHcIbaPAgTHiIPZZnc2hZ2S+XkQWwj37wHAcY7vzLmO9mw1O9XVEcp7OPCaNA3BF X8qUeingJsJ8QZno+pLWLOQXbW8/7Ieq7aRKH5D7YUDEwEerfhOYLGn3cFhJ55PeHwMP rsMG2wYcGXuCDoX0VRB7Q+crB6Xf/la8rcdncV+E8tbvGMJR1Bqa0qLw8fuf3tqR6qHX H7L244GLPFRmSSwmCdz9LwZmxt/6SCCQEUDMlKF6LPo37/U8enAx9g2IZ+rRjB8isrp+ 4IdA== 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 :content-language:in-reply-to:mime-version:user-agent:date :message-id:from:references:cc:to:subject:dkim-signature; bh=jSu3Tnv4Suvym0TdNDWpnRmgc1IGVVG8+wYxPonTSSQ=; b=KEluclcNFo4tdyABDWl0NufsjrTZ8VNZLxsOfEV/NS5td3H2fO2pgM/R0TUGq1WQTF bTZhFTdhakboMMCmCH9NRui49yfN5quBQZS6344njpgqZbcJm5S7xu0XNdWJnxv/911U grtev6jpDcUNZn8JbcKe63cqYfJtlhRkYlPOL8tPuTyLzkfGP65pBAk2lfpd/dXDz5tm gpcPNCTpQp+XDjr5870PkqC6koYo22cywNz0xCQTYE8nXSu6XaVvJxRGbeHmpidB9Qzx nEFlPf39pp0BeBQyZXIHovwWvk2oA7XuoBKVoo16ipmSFYbEKkfuB8c2rKqrneVRc/EC 1FtA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=Si8045YZ; 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; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id d38-v6si497611pla.422.2018.09.04.18.55.51; Tue, 04 Sep 2018 18:56:06 -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 header.i=@gmail.com header.s=20161025 header.b=Si8045YZ; 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; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726440AbeIEGWL (ORCPT + 99 others); Wed, 5 Sep 2018 02:22:11 -0400 Received: from mail-pl1-f194.google.com ([209.85.214.194]:43826 "EHLO mail-pl1-f194.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1725825AbeIEGWL (ORCPT ); Wed, 5 Sep 2018 02:22:11 -0400 Received: by mail-pl1-f194.google.com with SMTP id x6-v6so2484391plv.10; Tue, 04 Sep 2018 18:54:23 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=subject:to:cc:references:from:message-id:date:user-agent :mime-version:in-reply-to:content-language:content-transfer-encoding; bh=jSu3Tnv4Suvym0TdNDWpnRmgc1IGVVG8+wYxPonTSSQ=; b=Si8045YZA4Grf/u/zYidVkDjBdwQ/miNmM9uMtEYWa/7oHZK5iS8Fr9yGWHLYayjv1 uIeyZP3I/clTqJ2CN+NiiIwVrWzW5BmAKQzBPIhzWVRUUtMC5+QLdvkvcZoAiopj8HDa GiLW2zBoh4KL95de0Ssx6oeKDP1UdROwryN5yX+NcQEYHaXE3Kd8x3DRLeqB9Vv4uHX2 Gd423rOf6hIDkEzTVjE3vL8uNh3MeLI/skzcYByLCztb+6VCOnTajY172qZekLFacXBC fYL56crTsF91yC05xLeb+ZB6C/gWc7EsB45M4n01xF6UTxfxhhCdiecYmPg3cIG2E7g1 WhPw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:cc:references:from:message-id:date :user-agent:mime-version:in-reply-to:content-language :content-transfer-encoding; bh=jSu3Tnv4Suvym0TdNDWpnRmgc1IGVVG8+wYxPonTSSQ=; b=AeKZNkn+dkQFZxezz4CSH7sT1HHR7gvwyVf7rslrC9mm4whurEW+o+kXxpoHKhcjB6 baUJsDODk96pTrhxSCYx/O3Q0n9NH4Gcw+U7NYgac/fedFBBTbDAJiZ4XYG41SDJKu3C rZttL05QCKyqOYncEKoNyA2aM6/HJ7+g7GSYJ6YdkUaHujQHk5Q9I24I8kM/WAgBdR3m YsBjOAG8qYRT6gD+IGIc6tU4SAKTM/fVNQiFbwbcWRMxUE9x6hq/sH0nCtsGyiMV7tTN nL6Wp0fVvXcrN36BMbL7cIHvTBKwseFvWUbGP3+z0HwR8U0s5zWCxWQqzzY6rSADPS5G +9sw== X-Gm-Message-State: APzg51CUyuY1+KIrmYKPU318aO1HRRY0DOVfsafZP0I5KOtepU+LWBia NluTgMCxZS7y4GPuCoRkDeNJTdFD X-Received: by 2002:a17:902:b218:: with SMTP id t24-v6mr5036648plr.235.1536112463633; Tue, 04 Sep 2018 18:54:23 -0700 (PDT) Received: from [192.168.1.70] (c-24-6-192-50.hsd1.ca.comcast.net. [24.6.192.50]) by smtp.gmail.com with ESMTPSA id 6-v6sm328367pgf.38.2018.09.04.18.54.22 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 04 Sep 2018 18:54:23 -0700 (PDT) Subject: Re: [PATCH 2/3] of/fdt: avoid re-parsing '#{address,size}-cells' in of_fdt_limit_memory To: Rob Herring , devicetree@vger.kernel.org Cc: linux-kernel@vger.kernel.org References: <20180830190523.31474-1-robh@kernel.org> <20180830190523.31474-3-robh@kernel.org> From: Frank Rowand Message-ID: <8b866d4d-1362-311d-5a6e-3e414d8f90ab@gmail.com> Date: Tue, 4 Sep 2018 18:54:22 -0700 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.9.1 MIME-Version: 1.0 In-Reply-To: <20180830190523.31474-3-robh@kernel.org> Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 08/30/18 12:05, Rob Herring wrote: > Now that we initialize dt_root_addr_cells and dt_root_size_cells earlier, > use them and simplify of_fdt_limit_memory. > > Cc: Frank Rowand > Signed-off-by: Rob Herring > --- > drivers/of/fdt.c | 23 +---------------------- > 1 file changed, 1 insertion(+), 22 deletions(-) > > diff --git a/drivers/of/fdt.c b/drivers/of/fdt.c > index 49abe18f1bde..fef4b2c8a171 100644 > --- a/drivers/of/fdt.c > +++ b/drivers/of/fdt.c As kbuild test robot noted, of_fdt_limit_memory() will access __initdata dt_root_addr_cells and __initdata dt_root_size_cells. A possible (untested) fix would be: - void of_fdt_limit_memory(int limit) - { + void __init of_fdt_limit_memory(int limit) + { > @@ -44,28 +44,7 @@ void of_fdt_limit_memory(int limit) > int memory; > int len; > const void *val; > - int nr_address_cells = OF_ROOT_NODE_ADDR_CELLS_DEFAULT; > - int nr_size_cells = OF_ROOT_NODE_SIZE_CELLS_DEFAULT; > - const __be32 *addr_prop; > - const __be32 *size_prop; > - int root_offset; > - int cell_size; > - > - root_offset = fdt_path_offset(initial_boot_params, "/"); > - if (root_offset < 0) > - return; > - > - addr_prop = fdt_getprop(initial_boot_params, root_offset, > - "#address-cells", NULL); > - if (addr_prop) > - nr_address_cells = fdt32_to_cpu(*addr_prop); > - > - size_prop = fdt_getprop(initial_boot_params, root_offset, > - "#size-cells", NULL); > - if (size_prop) > - nr_size_cells = fdt32_to_cpu(*size_prop); > - > - cell_size = sizeof(uint32_t)*(nr_address_cells + nr_size_cells); > + int cell_size = sizeof(uint32_t)*(dt_root_addr_cells + dt_root_size_cells); > > memory = fdt_path_offset(initial_boot_params, "/memory"); > if (memory > 0) { >