svn commit: r314525 - in stable/11/sys: arm/arm arm/include conf
Ian Lepore
ian at freebsd.org
Thu Mar 2 04:15:28 UTC 2017
On Wed, 2017-03-01 at 18:06 -0800, Rodney W. Grimes wrote:
> >
> > Author: ian
> > Date: Wed Mar 1 22:45:12 2017
> > New Revision: 314525
> > URL: https://svnweb.freebsd.org/changeset/base/314525
> ...
>
> >
> >
> > Modified: stable/11/sys/conf/files.arm
> > ===================================================================
> > ===========
> > --- stable/11/sys/conf/files.arm Wed Mar 1 21:58:26 2017
> > (r314524)
> > +++ stable/11/sys/conf/files.arm Wed Mar 1 22:45:12 2017
> > (r314525)
> > @@ -53,7 +53,8 @@ arm/arm/gdb_machdep.c optional
> > gdb
> > arm/arm/generic_timer.c optional generic_tim
> > er
> > arm/arm/gic.c optional gic
> > arm/arm/hdmi_if.m optional hdmi
> > -arm/arm/identcpu.c standard
> > +arm/arm/identcpu-v4.c optional !armv6
> > +arm/arm/identcpu-v6.c optional armv6
> > arm/arm/in_cksum.c optional inet | inet6
> > arm/arm/in_cksum_arm.S optional inet | inet6
> > arm/arm/intr.c optional !intrng
> > _______________________________________________
> > svn-src-stable-11 at freebsd.org mailing list
> > https://lists.freebsd.org/mailman/listinfo/svn-src-stable-11
> > To unsubscribe, send any mail to "svn-src-stable-11-unsubscribe at fre
> > ebsd.org"
> If we are adding armv4 as an optional supported cpu type (I didnt
> think
> we could run on anything less than an armv6, this patch clearly seems
> to
> make that false.) I think we should just do the above as
>
> >
> > +arm/arm/identcpu-v4.c optional !armv6 |
> > armv4
> > +arm/arm/identcpu-v6.c optional armv6
> As your above code would make the config for an armv6 machine be
> expressed by the lack of a CPU token in the CONFIG file, which is
> non intutive.
>
There is no such cpuarch as armv4.
Arm v4/v5 support has been around since 2005-ish, and when v6/v7
support came along, it was differentiated in kernel config files using
"optional [!]armv6". That leverages a feature in config(8) that
exports the 'cpuarch' argument of the machine keyword as an option
keyword (for armv6/7 machines it's always "machine arm armv6").
In the old arm config files there is no cpuarch specified, it's always
just "machine arm". I think that implies that for armv4/5 that cpuarch
keyword would default to 'arm' (same as the machine arch), and that
would allow using 'optional arm' rather than 'optional !armv6'. I
would find that confusing because TARGET=arm TARGET_ARCH=armv6 makes me
think "armv6 is arm too". Also, this is in files.arm, so having lines
that say "optional arm" would be confusing too -- everything in there
is for arm (of some flavor).
-- Ian
More information about the svn-src-stable
mailing list