Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 01 Mar 2017 21:15:25 -0700
From:      Ian Lepore <ian@freebsd.org>
To:        "Rodney W. Grimes" <freebsd-rwg@pdx.rh.CN85.dnsmgr.net>
Cc:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org
Subject:   Re: svn commit: r314525 - in stable/11/sys: arm/arm arm/include conf
Message-ID:  <1488428125.60166.55.camel@freebsd.org>
In-Reply-To: <201703020206.v2226QGL060130@pdx.rh.CN85.dnsmgr.net>
References:  <201703020206.v2226QGL060130@pdx.rh.CN85.dnsmgr.net>

next in thread | previous in thread | raw e-mail | index | archive | help
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@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@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




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1488428125.60166.55.camel>