From mboxrd@z Thu Jan 1 00:00:00 1970 From: York Sun Date: Mon, 30 Nov 2015 08:59:49 -0800 Subject: [U-Boot] [PATCH] arm: ls1021a: Ensure LS1021 ARM Generic Timer CompareValue Set 64-bit In-Reply-To: <1436944385-28323-1-git-send-email-b18965@freescale.com> References: <1436944385-28323-1-git-send-email-b18965@freescale.com> Message-ID: <565C8085.5080307@freescale.com> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de On 07/15/2015 12:13 AM, Alison Wang wrote: > This patch addresses a problem mentioned recently on this mailing list: > [1]. > > In that posting a LS1021 based system was locking up at about 5 minutes > after boot, but the problem was mysteriously related to the toolchain > used for building u-boot. Debugging the problem reveals a stuck > interrupt 29 on the GIC. > > It appears Freescale's LS1021 support in u-boot erroneously sets the > 64-bit ARM generic PL1 physical time CompareValue register to all-ones > with a 32-bit value. This causes the timer compare to fire 344 seconds > after u-boot configures it. Depending on how fast u-boot gets the > kernel booted, this amounts to about 5-minutes of Linux uptime before > locking up. > > Apparently the bug is masked by some toolchains. Perhaps this is > explained by default compiler options, word sizes, or binutils versions. > At any rate this patch makes the manipulation explicitly 64-bit which > alleviates the issue. > > [1] > https://lists.yoctoproject.org/pipermail/meta-freescale/2015-June/014400.html > > Signed-off-by: Chris Kilgour > Signed-off-by: Alison Wang > --- Applied to fsl-qoriq master. Thanks. York