[oe] [PATCH] base.bbclass: add support for SOC_FAMILY in COMPATIBLE_MACHINES

Maupin, Chase chase.maupin at ti.com
Wed Aug 4 14:11:19 UTC 2010


> -----Original Message-----
> From: openembedded-devel-bounces at lists.openembedded.org
> [mailto:openembedded-devel-bounces at lists.openembedded.org] On Behalf Of
> Phil Blundell
> Sent: Wednesday, August 04, 2010 6:49 AM
> To: openembedded-devel at lists.openembedded.org
> Subject: Re: [oe] [PATCH] base.bbclass: add support for SOC_FAMILY in
> COMPATIBLE_MACHINES
> 
> On Wed, 2010-08-04 at 13:17 +0200, Michael 'Mickey' Lauer wrote:
> > FWIW, minimal is using MACHINE_CLASS since quite a while to
> > reduce the need for adding the same files over and over again,
> > this is being used e.g. for HTC msm7 series and OpenEZX series
> > (see conf/machine/include).
> >
> > Perhaps it's time to standardize something like that.
> 
> Yeah.  I certainly don't think we want a proliferation of such
> mechanisms.  If minimal is already using MACHINE_CLASS then there would
> be some sense in trying to make use of the same thing.

minimal doesn't use MACHINE_CLASS.  Perhaps this is getting confused with distro/micro.conf.

> 
> My preference would be to make the MACHINEs in question be, for example,
> "motorola-ezx-a1200", "motorola-ezx-a780" and so on.  This would then
> allow you to set COMPATIBLE_MACHINE = "motorola-ezx-.*" which I think
> would solve the SOC_FAMILY problem, although it wouldn't replace
> MACHINE_CLASS in OVERRIDES.

Unfortunately we can't change the MACHINE names.  They are set to correspond to the real device names and part numbers.

> 
> Failing that though, testing COMPATIBLE_MACHINE against MACHINE_CLASS
> probably is more desirable than adding a completely new variable (i.e.
> SOC_FAMILY) for that purpose.

>From what I've learned it seems that MACHINE_CLASS and SOC_FAMILY are different in what they are trying to accomplish.

SOC_FAMILY is defining a family of processors and the features that processor has.  Whereas MACHINE_CLASS is defining a type of device and its features which can use different processors.  So basically SOC_FAMILY defines common processors and MACHINE_CLASS defines common end devices.

This difference is why SOC_FAMILY exists.  We can have many processors that fit into an SOC_FAMILY that can be used across a variety of end applications from DVR to ip net camera to mobile phone.

> 
> p.
> 
> 
> 
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel at lists.openembedded.org
> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel




More information about the Openembedded-devel mailing list