Creating armv7 MACHINE_ARCH

Warner Losh imp at bsdimp.com
Mon Jun 12 21:00:46 UTC 2017


On Mon, Jun 12, 2017 at 11:36 AM, Mark Millard <markmi at dsl-only.net> wrote:

>
> On 2017-Jun-12, at 8:39 AM, Warner Losh <imp at bsdimp.com> wrote:
>
> > . . .
> >
> > Plus, we aren't quite doing what Ian wanted. He wanted a full rename. The
> > proposal on the able is to add an armv7 TARGET_ARCH in 12. Not to rename
> or
> > remove armv6. Sadly, that will still be there since the RPI foundation
> > keeps finding new ways to repackage the rpi into new boards that are just
> > too cheap to ignore.
>
> On 2017-Jun-12, at 6:59 AM, Andrew Turner <andrew at fubar.geek.nz> wrote:
>
> > I like this. My understanding is adding armv7 would also fix many of the
> currently broken ports that assume they are being built for armv7 as many
> Linux distros target ARMv7+.
> >
> > It should also be noted the GENERIC kernel is likely to only ever target
> ARMv7+ even without an armv7 TARGET_ARCH.
>
>
> Hopefully the choices related to TARGET and TARGET_ARCH
> for armv7 end up identifying the context to port builds
> so that many would just automatically do the right thing.
>

Yes. That's a prereq for having a new TARGET_ARCH support: relevant kernels
must identify themselves correctly so that ports build correctly.


> As for GENERIC:
>
> powerpc has. . .
>
> TARGET=powerpc TARGET_ARCH=powerpc   and GENERIC
> TARGET=powerpc TARGET_ARCH=powerpc64 and GENERIC64
>
> So there is precedent for more than one GENERIC*
> for a family, with which one being appropriate
> being based on TARGET_ARCH.
>
> For powerpc TARGET=powerpc implicitly uses
> TARGET_ARCH=powerpc when TARGET_ARCH is not
> specified (if I remember right). Which should
> be the default for armv6 vs. armv7 might go
> the other direction (TARGET_ARCH=armv7 by
> default).
>
>
> Side note:
>
> A caution about talking about "rpi2" as
> an example. . .
>
> Raspberry Pi 2 Model B V1.2 is Cortex-A53 based
> (so arm64/aarch64). (A BCM2837, not a BCM2836.)
> This dates about to something like 2014 based
> on the pictures showing the (c) notice on the
> boards.
>
> V1.1 and before were armv7 (BCM2836) based.
>
> Unless a kernel and world are made that can
> also configure/handle a Cortex-A53 in a
> armv7-like manor there will be two different
> GENERIC builds in order to span the "rpi2"
> family, based on just V1.2+ vs. V1.1 and
> before.
>
> (A single, modern distribution of the official
> Raspbian software for the rpi2 does support
> all the V1.x boards if I understand right.)


Yea, that's crazy on their part. I don't know if we support the 64-bit CPU
in 32-bit mode at all. But that's an orthogonal issue to this discussion.

Warner


More information about the freebsd-arm mailing list