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=-15.8 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER, INCLUDES_PATCH,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS autolearn=ham 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 BE936C47080 for ; Thu, 3 Jun 2021 04:40:34 +0000 (UTC) Received: from phobos.denx.de (phobos.denx.de [85.214.62.61]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 6D6CC613B8 for ; Thu, 3 Jun 2021 04:40:32 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 6D6CC613B8 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=hitachi-powergrids.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=u-boot-bounces@lists.denx.de Received: from h2850616.stratoserver.net (localhost [IPv6:::1]) by phobos.denx.de (Postfix) with ESMTP id 2397B82F44; Thu, 3 Jun 2021 06:40:30 +0200 (CEST) Authentication-Results: phobos.denx.de; dmarc=pass (p=none dis=none) header.from=hitachi-powergrids.com Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=u-boot-bounces@lists.denx.de Authentication-Results: phobos.denx.de; dkim=pass (1024-bit key; unprotected) header.d=hitachi-powergrids.com header.i=@hitachi-powergrids.com header.b="Ru+Od6wk"; dkim-atps=neutral Received: by phobos.denx.de (Postfix, from userid 109) id 40AA682F44; Thu, 3 Jun 2021 06:40:29 +0200 (CEST) Received: from EUR05-DB8-obe.outbound.protection.outlook.com (mail-db8eur05on20722.outbound.protection.outlook.com [IPv6:2a01:111:f400:7e1a::722]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by phobos.denx.de (Postfix) with ESMTPS id 163AD82F4A for ; Thu, 3 Jun 2021 06:40:26 +0200 (CEST) Authentication-Results: phobos.denx.de; dmarc=pass (p=none dis=none) header.from=hitachi-powergrids.com Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=aleksandar.gerasimovski@hitachi-powergrids.com ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=FLG5QI4nSgZztylCJvFHND8W6DIVjN7fMh0rSg+0matg/fHtLXyfpmsCUh04FEYzd39IfK+t1fhF0CkbsDx/AYrculFpzlIc13wwrXvdnOgU//M9Zx6pLi40lZTS7swuE3EWId940Ob87toHqPFK9zs+i4o4+4LL19JQrEZFHyGqCf8uXz7F66r/2EOL+JXHlkNYZo0dmOR37OIu3hQ7Ht6O++0V6mWzosNzTkABiNBh74rng/K4R5g6Ye7zV7ntf87GPUiq6sq1iEYBwjDW3fQE5T3iewEcDzzBHRvDZv0oRiDMTJxgf5pEhfKNy/rpvST0NnAFoBDnFWMSp5Jwxg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=cV6rB43MtRqCQLQc0V1WpA8Lc+R5N9TU1eOJKz6074o=; b=KUk1vS/WM/JjVrX2Au5NIM0VjpXuTnxwIIh/F6fHZ82d7ow7CSaGUDN+HhbvFqQoRQvrUrbJCb/9VbMuSkoG+eXWtiu06+r0Bo8FhfRh+AXW57yqV6pZWEW/3BaAXq25kbm1Ydav2GZylWB/yFhDDO2KQbVPuvp3GVzYYW9iAeWxcGcZ+E/q84jVBXKh5HIBCrQlSCFZvHsBDwx4/1xZPIcqyxOPom3YDdIy3Dteq5pwzK8bx0riFUUsXg/A/AKrbtvlVJGCHQaRxaX2k91JqJSeHMxrwX45kPOpOkROgxUZsCPL27mncreNkAhtWXFekK2cm8vIwRD1AJSyYiQ0UQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=hitachi-powergrids.com; dmarc=pass action=none header.from=hitachi-powergrids.com; dkim=pass header.d=hitachi-powergrids.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=hitachi-powergrids.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=cV6rB43MtRqCQLQc0V1WpA8Lc+R5N9TU1eOJKz6074o=; b=Ru+Od6wkEoEjqvzws1Q/CBDPvmhhTLqcVDlRGkjVr2HaFHn8QJmo+SZzvIiGJqc9Jg/tKTxjE8F9uHTCVMSA9fwtXG7Ou3pBAblpWUrI47ZD59pGJ9CSq8AkfkFIGJERmY1BYfyDcXplXrDgMQyP6g+GZLwmWbRYVRyPlwkLDoc= Received: from AM9PR06MB8100.eurprd06.prod.outlook.com (2603:10a6:20b:388::22) by AM0PR06MB5938.eurprd06.prod.outlook.com (2603:10a6:208:11f::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4173.22; Thu, 3 Jun 2021 04:40:23 +0000 Received: from AM9PR06MB8100.eurprd06.prod.outlook.com ([fe80::ed0d:f546:3c75:3931]) by AM9PR06MB8100.eurprd06.prod.outlook.com ([fe80::ed0d:f546:3c75:3931%6]) with mapi id 15.20.4195.023; Thu, 3 Jun 2021 04:40:23 +0000 From: Aleksandar Gerasimovski To: Tom Rini , Patrick Delaunay , Michal Simek , ". Simon Goldschmidt" CC: "u-boot@lists.denx.de" Subject: RE: [PATCH] arm: bootm: wrong lmb region reservation when PRAM is used Thread-Topic: [PATCH] arm: bootm: wrong lmb region reservation when PRAM is used Thread-Index: AdcHCGYgZHKm9mywQqiv5sJrFoIqXA2ru1gABp60GYA= Date: Thu, 3 Jun 2021 04:40:23 +0000 Message-ID: References: <20210430115242.GL17669@bill-the-cat> In-Reply-To: <20210430115242.GL17669@bill-the-cat> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-processedbytemplafy: true authentication-results: konsulko.com; dkim=none (message not signed) header.d=none;konsulko.com; dmarc=none action=none header.from=hitachi-powergrids.com; x-originating-ip: [31.10.133.24] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 4f3c1ca9-0d29-4b63-5de0-08d92649b39f x-ms-traffictypediagnostic: AM0PR06MB5938: x-microsoft-antispam-prvs: x-abb-o365-outbound: ABBOUTBOUND1 x-ms-oob-tlc-oobclassifiers: OLM:8882; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: ombGwU/dW2tNo1uu8CN9iWNj8Wj4I6AMgmmD3pux6iqvM3b5SPANQVUvw9qa0OzEN6o9oRt2INSAKz3R4ZF8AEpc6MaHb1yvc/f/E1rbA8E/HQK5MuR+Aa3k5wtBmc/CX9sHxH554Pu0Y5iqpw/yf3DOsFron2hkiSyoOPEGHYMR6HdlOhU4gVRkn9rxAEyUd4nyzwiZ16OI9GDy4Gtk0GjXSY5uE515ufRvzo4E8OnOkxbrFz5BP3ibxtZySuwvIRUQvLmv5iBv21q7HBToCeKOXsBIedVmLZwnkP3QyRFBkBLP39qMTKebmThKliU3lao1MBkokYQB7h0Pn1Nn8fCQOlUQ9zN5yNIB3R5TZoA1Rf1ViP2rhkMUt1DCfdOyQU+4jGGJnoYu4uq0mvzOWsnxRM+s4la/a1yJt6Jm2vIZ8rL1wI1Dwvple+yAZy5NbjDp5vBKQR7iyZ7mvZXiIm8+ptPEZX2s+5QRED2DSMfPAZKk/PkuagxImsO1tSah9cE3EWgX8CmHeHARBXnuLEJ0hTZxbU1Cqq/5D5wtpVKmCKQkSTwWHE/va4EOquwuqwOoyexyyEj43t/KqOOzzIssRia4PXVM8cNQC900K3E= x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:AM9PR06MB8100.eurprd06.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(396003)(366004)(136003)(346002)(39860400002)(376002)(53546011)(6506007)(186003)(8936002)(9686003)(478600001)(7696005)(5660300002)(55016002)(2906002)(86362001)(66556008)(33656002)(66446008)(110136005)(26005)(66476007)(8676002)(71200400001)(4326008)(38100700002)(122000001)(83380400001)(66946007)(52536014)(76116006)(316002)(44832011)(64756008); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata: =?iso-8859-1?Q?JEx57aPaFG5B/XC+5Zszr119zLoTzpv+MmLEwoa606ZLeCMARGOWq4VTpj?= =?iso-8859-1?Q?7ndvilZirpCq7hP5M9vg4ifY0MqnYBqSo1ouz/EfExCEHXlkCFNelUZdoP?= =?iso-8859-1?Q?2kG6E5bnL2tS+4jhwlF+JNCeV6rZa6lbSTZecwkFMOU6+YU/qX8kjhUUKX?= =?iso-8859-1?Q?0+00cx1uofvgqiaqQnG05nQWdu57KdK4s6+ru1leOq5jnBPHjxR8MoMKav?= =?iso-8859-1?Q?BRuAUU0GraTzKq3fGh54jSuNOGelr6asDxx2+GS3H2qUwAvVBXG50d8HFU?= =?iso-8859-1?Q?i4XibUTdqcjEghkmaiuweFT5fQ5r9ER+AeqYU2/nPcNnIS8/EBKyeY6wii?= =?iso-8859-1?Q?FiyaEOT1M+eBmr3/jScD4yfKKGXmlKhyEqPRStBOikWHXetzSRrAVkLe/9?= =?iso-8859-1?Q?KXHf01dh+GRVG2RTF8/DLwyOocOMgupxiNQkKH/g6YZ+bhz0qBG1VoH8+s?= =?iso-8859-1?Q?UMb2IUKl6HGQEupYnvFVZwlDfuTDL/cgAQMJcwbzs2dkA2GfCRQsyfphWP?= =?iso-8859-1?Q?TQb37w72/WrxgNSdw5lXLXEQeNqEk/hk0FcfCSA9MYLYhvuIFApb9dq6Kr?= =?iso-8859-1?Q?qpQtaSNHQKlJQmZO3pOmY+0GTsqPxaT1QO1d7cGDXqHme2dPoqKF1FlLYI?= =?iso-8859-1?Q?Ls0zScSfEkbQG18795JmVvdmerB5td3bfV4/HgCoGUG9AdmVO/TTcPp0WH?= =?iso-8859-1?Q?2bQnGzeCS8Rgh87NrzWz6K48vlzmf401G56RqQz0TBykgLBtY7+yW0f9MU?= =?iso-8859-1?Q?IeFbsrPfNeFgWsFopzzeLBHgPQe9/v8mxMytXAMpHslli68SB0UesoqNqV?= =?iso-8859-1?Q?IhAYtQE0/BBmpyACAMcLcV5evuQjLYWMlolfpRUtSqTn1AuGVfRrXe2Qw3?= =?iso-8859-1?Q?CKsF+rri8hEYs5Uz+JBreXEnaz5WWiEBRFvvDKnrCFE4w3/xW3jBZ6oAsD?= =?iso-8859-1?Q?d+VBrrNkxIjTdL0Vmovrz7SHsx/R59ZWtZE2dUUeuNZnyCDeJUnxE8YX3q?= =?iso-8859-1?Q?ftBMmG0PfOTasGXBoERq7F8eijR9DH495OwXF4nwTcQ2cBu2fHWUsT/9t6?= =?iso-8859-1?Q?/IyHAvVKCgYHQEsdSccKLJAsHFeNzWRF6fw+KlRjz6zR5hCqVPfBTpyZhN?= =?iso-8859-1?Q?FhwWj+uJqONHy0RNlBpNzz3348fYReoSMoBx69Na8tNmBWJxtJLMnWTC9h?= =?iso-8859-1?Q?Rm0BrI54TO5eK50rX7wwPvJ+stbRZTmHlQlAkeGpbvOYUBvhmYzkDxicbk?= =?iso-8859-1?Q?neRXn55cciQYidByVZ1mwVSdpVelCnc1eb2c9yqtMHw68JlE2wxk0mcHzF?= =?iso-8859-1?Q?hWYYZYT8nLNaIMjTrVNyzk2dKwxJXxVxKEqm+/5vGRGZpyI=3D?= x-ms-exchange-transport-forked: True Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-OriginatorOrg: hitachi-powergrids.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: AM9PR06MB8100.eurprd06.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 4f3c1ca9-0d29-4b63-5de0-08d92649b39f X-MS-Exchange-CrossTenant-originalarrivaltime: 03 Jun 2021 04:40:23.6793 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 7831e6d9-dc6c-4cd1-9ec6-1dc2b4133195 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: JNBewIV+xSW+O5jWOxcac3XlXwH5ERnRDBCb7yHGlsSuxNRHt7bPdiX4FSpmyzTJpA4HJHRGXMI6Qss+FRb9mK+yAfOfqFMuxmEZjgbkbSXBDOZgqgc16MYS5BTCyDp9LFPAemSsZm2uDNz7faZ0yw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR06MB5938 X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.34 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: u-boot-bounces@lists.denx.de Sender: "U-Boot" X-Virus-Scanned: clamav-milter 0.102.4 at phobos.denx.de X-Virus-Status: Clean Hi Folks, I hope you are all doing well! Is it possible this patch to get some attention? Thanks! Regards, Aleksandar -----Original Message----- From: Tom Rini =20 Sent: Freitag, 30. April 2021 13:53 To: Aleksandar Gerasimovski ; Patrick Delaunay ; Michal Simek ; . Simon Goldschmidt Cc: u-boot@lists.denx.de Subject: Re: [PATCH] arm: bootm: wrong lmb region reservation when PRAM is = used On Fri, Feb 19, 2021 at 09:46:49PM +0000, Aleksandar Gerasimovski wrote: > This is a draft patch to describe the problem and to=A0initiate a=20 > discussion for solution. >=20 > PRAM usage is not taken into account when reserving lmb for ARM=20 > architecture, this means that predefined PRAM region is reserved by=20 > the u-boot and cannot be used by the u-boot users. >=20 > In our case this bug leads to non functional ramfs boot, as the PRAM=20 > and ram rootfs address ranges are getting reserved by the u-boot. >=20 > It is obvious that here PRAM region is ignored, but my question is is=20 > this clear to everyone and expected? >=20 > Taking=A0 board_f.c as reference, when calculating relocation address=20 > PRAM area is taken into account so I would expect that to be case here. > Here the intention is to reserve unused space at the end of the=20 > effective RAM but PRAM is not part of that. >=20 > Possible solution would be to introduce something like=20 > get_effective_memsize here e.g powerpc/lib/bootm.c but then also=20 > NR_DRAM_BANKS has to be considered? >=20 > Signed-off-by: Aleksandar Gerasimovski=20 > > --- > arch/arm/lib/bootm.c | 10 ++++++++-- > 1 file changed, 8 insertions(+), 2 deletions(-) >=20 > diff --git a/arch/arm/lib/bootm.c b/arch/arm/lib/bootm.c index=20 > 11af9e2..4b06d25 100644 > --- a/arch/arm/lib/bootm.c > +++ b/arch/arm/lib/bootm.c > @@ -54,7 +54,7 @@ static ulong get_sp(void) > =20 > void arch_lmb_reserve(struct lmb *lmb) { > - ulong sp, bank_end; > + ulong sp, bank_end, pram =3D 0; > int bank; > =20 > /* > @@ -69,6 +69,11 @@ void arch_lmb_reserve(struct lmb *lmb) > sp =3D get_sp(); > debug("## Current stack ends at 0x%08lx ", sp); > =20 > +#ifdef CONFIG_PRAM > + pram =3D env_get_ulong("pram", 10, CONFIG_PRAM); > + pram =3D pram << 10; /* size is in kB */ > +#endif > + > /* adjust sp by 4K to be safe */ > sp -=3D 4096; > for (bank =3D 0; bank < CONFIG_NR_DRAM_BANKS; bank++) { @@ -76,8 +81,9= =20 > @@ void arch_lmb_reserve(struct lmb *lmb) > sp < gd->bd->bi_dram[bank].start) > continue; > /* Watch out for RAM at end of address space! */ > + /* @todo: pram obviously wrong if NR_DRAM_BANKS > 1 */ > bank_end =3D gd->bd->bi_dram[bank].start + > - gd->bd->bi_dram[bank].size - 1; > + gd->bd->bi_dram[bank].size - pram - 1; > if (sp > bank_end) > continue; > if (bank_end > gd->ram_top) Adding a few folks who have touched lmb code relatively recently for their = thoughts. Thanks! -- Tom