Date: Tue, 17 Jun 2014 12:44:58 +0800 From: Jia-Shiun Li <jiashiun@gmail.com> To: Michael Tuexen <tuexen@freebsd.org>, markm@freebsd.org, Ian Lepore <ian@freebsd.org> Cc: "freebsd-arm@freebsd.org" <freebsd-arm@freebsd.org>, Andreas Schwarz <freebsd.asc@strcmp.org> Subject: Re: FreeBSD doesn't boot anymore on RPi Message-ID: <CAHNYxxM9Yy0w0H9m3vMJ1ToeNkaW91%2B1unHVWqR1MG%2Bn1RsC3g@mail.gmail.com> In-Reply-To: <A4EE9C49-DF7E-458F-9A69-C1B75FFA47CA@freebsd.org> References: <D8D9CAB0-A33C-45C5-AD17-E7C23F5309C8@fh-muenster.de> <44921fa0c7.323fafd0@mail.schwarzes.net> <A4EE9C49-DF7E-458F-9A69-C1B75FFA47CA@freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, Jun 16, 2014 at 1:53 PM, Michael Tuexen <tuexen@freebsd.org> wrote: > On 16 Jun 2014, at 03:04, Andreas Schwarz <freebsd.asc@strcmp.org> wrote: >> On 21.05.14, Michael Tuexen wrote: >> >> Hi all, >> >>> I just built r266500 and when booting that on a Raspberry Pi the booting stalls >>> after displaying Kernel args: (null). >> >> I run still in this problem, the last kernel which was working for me is r265403. Is this >> a know problem? > Yes, it is known. There were two problems, one is fixed now. The other problem > is currently been worked on. Right now, you need to revert r266083 and should > get a working kernel. If not, please let us know. > adding ian@ and markm@. Hi, looks ARM1176, aka RPi, has different register location for performance counters. r266083 uses PMC registers defined at c9:c12~c14 of CP15. The location is true for Cortex-A8[1] onward. For ARM11 which predated A8, however, these registers are located at c15:c12[2]. c9:c12~c14 are undefined on ARM1176. According to ARMARM, pre-ARM11 cores do not have PMC. So they must have decided the debut location of PMC was not suitable anymore , and moved to c9 afterward. For RPi I think it is simpler to exclude ARM11 in original code for now. After making sure PMC registers on ARM11, despite different location, are still suitable for the purpose, it can have dedicated handling different from other cores. Other cores like pj4b and Krait may need additional check. [1] Ch.3.2.1 of Cortex-A8 TRM r3p2, http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.ddi0344k/ch03s02s01.html [2] Ch.3.2.1 of ARM1176jz-s TRM r0p7, http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.ddi0333h/ch03s02s01.html -Jia-Shiun.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAHNYxxM9Yy0w0H9m3vMJ1ToeNkaW91%2B1unHVWqR1MG%2Bn1RsC3g>