Date: Thu, 26 Aug 2010 08:27:51 -0700 From: Patrick Mahan <PMahan@adaranet.com> To: "M. Warner Losh" <imp@bsdimp.com>, "c.jayachandran@gmail.com" <c.jayachandran@gmail.com> Cc: "freebsd-mips@FreeBSD.org" <freebsd-mips@FreeBSD.org> Subject: RE: Is the MIPS kernel buildable from HEAD? Message-ID: <32AB5C9615CC494997D9ABB1DB12783C024C875653@SJ-EXCH-1.adaranet.com> In-Reply-To: <20100825.232923.287595822763821210.imp@bsdimp.com> References: <32AB5C9615CC494997D9ABB1DB12783C024C875590@SJ-EXCH-1.adaranet.com> <20100825.151325.645538350615354761.imp@bsdimp.com> <AANLkTi=FZrdjE0KoUHvOiB9hyz5ZDWepS9743ghAw9SU@mail.gmail.com> <20100825.232923.287595822763821210.imp@bsdimp.com>
next in thread | previous in thread | raw e-mail | index | archive | help
> -----Original Message----- > From: M. Warner Losh [mailto:imp@bsdimp.com] > Sent: Wednesday, August 25, 2010 10:29 PM > To: c.jayachandran@gmail.com > Cc: Patrick Mahan; freebsd-mips@FreeBSD.org > Subject: Re: Is the MIPS kernel buildable from HEAD? > > In message: <AANLkTi=3DFZrdjE0KoUHvOiB9hyz5ZDWepS9743ghAw9SU@mail.gmail.c= om> > "Jayachandran C." <c.jayachandran@gmail.com> writes: > : On Thu, Aug 26, 2010 at 2:43 AM, M. Warner Losh <imp@bsdimp.com> wrote: > : > In message: <32AB5C9615CC494997D9ABB1DB12783C024C875590@SJ-EXCH- > 1.adaranet.com> > : > Patrick Mahan <PMahan@adaranet.com> writes: > : > : Is it possible to build the MIPS kernel from HEAD? Or is the > : > : current development still external to the HEAD branch? > : > > : > Yes. The tip of head is where the mips action is these days. There > : > is no external development branch. > : > > : > There is one issue, however. If you are building for one of the > : > 64-bit processors a 64-bit kernel, then the required userland won't > : > build. There's still issues that need to be sorted out... > : > : The 64-bit userland builds for me with -DWITHOUT_CDDL -DWITHOUT_USB > : -DWITHOUT_BLUETOOTH -DWITHOUT_RESCUE - are you referring to these, or > : are there other issues? > > I can do a buildworld now without any of these flags. I don't know > what the bluetooth issue is/was, but it doesn't kill the build. I > fixed the CDDL issue, and papered over the uath and rescue issues in > the build system. > > I can now build a n64 world in -current. I haven't had a chance to > run it yet, but hope to soon. My CN38xx board doesn't like the 32-bit > kernel anymore... It also doesn't like the 64-bit kernel, but I think > that's a uboot issue. It seems older ldscripts didn't tickle the bugs > the current one does (on the other hand, the old ldscripts only worked > on the CN38xx board). On the other hand, SDK 1.9.0's uboot on another > board works fine with the 64-bit kernel. > Warner, We build o32 with our modified FreeBSD 8.0 that boots under the SDK 1.8.1 on a CN58XX. However, I was looking at the ldscript that we use versus the one in use for you. We are using what is basically sys/conf/ldscript.m= ips. Also, I think our problem is with the a3 register passed in as part of platform_start() in cavium/octeon_machdep.c. We have the following in mips/lowcore.S - #if defined(TARGET_OCTEON) la a0, app_descriptor_addr sw a3, 0(a0) /* Store app descriptor ptr */ #endif So we are storing the value of a3 into a global that we later use in octeon32/Octeon_machdep.c - static void mips_boot_params_init(void) { int descriptor_not_parsed =3D 1; if ((app_descriptor_addr =3D=3D 0) || (app_descriptor_addr >=3D 0xA= fffffff)) { printf("address of app_descriptor is %x\n", app_descriptor_addr); } else { app_desc_ptr =3D (octeon_boot_descriptor_t *) app_descripto= r_addr; octeon_bd_ver =3D app_desc_ptr->desc_version; ... I am need to investigate, but I think we found that a3 was getting clobbere= d on the inbound call to platform_start(). Patrick
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?32AB5C9615CC494997D9ABB1DB12783C024C875653>