From mboxrd@z Thu Jan 1 00:00:00 1970 From: =?UTF-8?Q?Andr=c3=a9_Przywara?= Date: Mon, 27 Jan 2020 01:20:30 +0000 Subject: [PATCH v2 0/3] Ethernet support for Raspberry Pi 4 In-Reply-To: <70a60933-3001-9a16-9e51-b0fe7ef83758@suse.com> References: <20200117012047.31096-1-andre.przywara@arm.com> <0b66d850-c7d7-6c69-fde3-56fb1b134483@suse.com> <20200122173443.7ec8d416@donnerap.cambridge.arm.com> <20200123112913.089b59f9@donnerap.cambridge.arm.com> <3d0350dc-a67a-9117-83b5-4256fe5fbe31@suse.com> <70a60933-3001-9a16-9e51-b0fe7ef83758@suse.com> Message-ID: List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable To: u-boot@lists.denx.de On 26/01/2020 02:28, Matthias Brugger wrote: > On 24/01/2020 01:26, Andr=C3=A9 Przywara wrote: [ ... ] >> Found the culprit, after following a lead started by an over-lunch >> discussion: Colleagues pointed out the SError (interrupts) early in the >> kernel could just show because they just got unmasked when dropping into >> EL1. And indeed in AArch64 U-Boot we keep Aborts masked - we don't clear >> the A bit in DAIF normally (only for Freescale). >> So allowing SError exceptions in U-Boot's start.S revealed that the >> SError interrupt was actually triggered by the writel in write_hwaddr(), >> I guess because the MAC wasn't reset before. And the SError condition >> stayed pending all the time, until the kernel announced its interest in >> being told about fatal errors - then it inherited U-Boot's error. >=20 > Thanks for the explanation. I think the situation leaves space for improv= ing. > Either should we warn about a pending Abort before leaving U-Boot or we s= hould > allow aborts in general. Definitively we should unmasks SErrors in U-Boot, since they point us to serious problems, with this one here actually being somewhat on the harmless side. Also U-Boot has exception handlers that dump useful information, so we should use them. But doing so would need to be done for all ARMv8 ports (in start.S), so I am a bit reluctant to post something this late in the merge window without proper testing on multiple platforms. >> So for me the issue is fixed after adding the reset routine I sketched >> in that thread before. >> >> But you mentioned that it still didn't work for you? >> >=20 > I just double checked and everything works fine. Please feel free to send= a new > version :) Great, thanks! Did just that. Cheers, Andre