[yocto] [meta-raspberrypi][PATCH 1/1] Modify raspberrypi3.conf and add raspberrypi3-64.conf

Herve Jourdain herve.jourdain at neuf.fr
Mon Nov 21 22:32:04 PST 2016


Hi Khem,

I believe it would be more appropriate to have it "system-wide", because at some point it should not be something the apps need to worry about.
Plus, it's really a SoC thing, some armv8 SoCs do implement those options, some don't (when I say "option" there, I mean it's a HW block that may or may not be implemented in the SoC, it's not just a compilation switch that would work for all revisions of armv8).
So I believe those HW options should indeed be defined in arch-armv8.inc, and each soc-specific file should select the options that are possible for it.
For instance, cortex-a53 has "by definition" the crc HW included, but the crypto HW block may or may not be implemented. For Raspberrypi3, BCM2837 does not have it. Most other Cortex-A53 I know of have it, though.
Therefore, the definition of the "crypto" variant for cortexa53-32, in addition with the sf/hf variants for aarch32.
For aarch64, the floating point abi is hf, so that's less variants, but I should also add cortexa53crypto-64, to be exhaustive... It's not going to be useful for RPI3, but it might be for all future armv8/cortex-a53/cortex-a57/cortex-a72/cortex-a73 based SoCs that will have to be supported in the future.
So we could add it all now, or we could add it in the future as needs emerge.

Herve

-----Original Message-----
From: Khem Raj [mailto:raj.khem at gmail.com] 
Sent: lundi 21 novembre 2016 17:35
To: Herve Jourdain <herve.jourdain at neuf.fr>
Cc: yocto at yoctoproject.org
Subject: Re: [yocto] [meta-raspberrypi][PATCH 1/1] Modify raspberrypi3.conf and add raspberrypi3-64.conf

On Sun, Nov 20, 2016 at 9:21 PM, Herve Jourdain <herve.jourdain at neuf.fr> wrote:
> Hi Khem,
>
> For cortexa53 in aarch32, the problem is to figure out if we want to cover all cases or not.
> Raspberrypi3 is one case of CortexA53 that has crc support, but no crypto support. So I could define a cortexa53-32 as being just that.
> But then, there are other CortexA53-based SoCs that do have the crypto extension, and I thought that, since I was going to modify it, I'd rather cover all possible cases/options...
>
> The one thing that could be scrapped is the hf option, if we decide that all cortexa53 aarch32 will be hf only.
> Then that would avoid the hf duplication of the aarch32 tunes, leaving only 2 tunes for cortexa53 aarch32 + 1 tune for cortexa53 aarch64.
>
> Please advise what you would prefer me to do.

is there an advantage of having crc and crypto as systemwide tune options or is it more beneficial to apply them surgically to needed apps via MACHINE_FEATURES
>
> Herve
>
> -----Original Message-----
> From: Khem Raj [mailto:raj.khem at gmail.com]
> Sent: dimanche 20 novembre 2016 20:30
> To: Herve Jourdain <herve.jourdain at neuf.fr>
> Cc: yocto at yoctoproject.org
> Subject: Re: [yocto] [meta-raspberrypi][PATCH 1/1] Modify 
> raspberrypi3.conf and add raspberrypi3-64.conf
>
> Herve,
>
> There is no need to create so many variants for a53 32 bit mode. We can keep using whatever we have its only 64bit that needs to be added as a new machine.
>
> On Sun, Nov 20, 2016 at 4:06 AM, Herve Jourdain <herve.jourdain at neuf.fr> wrote:
>> Hi Khem,
>>
>> FYI, I am sending a slightly modified version (cortexa53hf-32 instead 
>> of
>> cortexa53-32 for raspberrypi3.conf).
>> They still depend on modifications in oe-core (heavier this time than 
>> before), also posted to the list.
>>
>> Herve
>>
>> -----Original Message-----
>> From: Khem Raj [mailto:raj.khem at gmail.com]
>> Sent: samedi 19 novembre 2016 19:19
>> To: Herve Jourdain <herve.jourdain at neuf.fr>; yocto at yoctoproject.org
>> Subject: Re: [yocto] [meta-raspberrypi][PATCH 1/1] Modify 
>> raspberrypi3.conf and add raspberrypi3-64.conf
>>
>> Nevermind, I managed to apply it, there are some CR changes I guess 
>> which was freaking git
>>
>> On 11/19/16 5:03 AM, Herve Jourdain wrote:
>>> Signed-off-by: Herve Jourdain <herve.jourdain at neuf.fr>
>>> ---
>>>  conf/machine/raspberrypi3-64.conf | 19 +++++++++++++++++++
>>>  conf/machine/raspberrypi3.conf    |  8 ++++++--
>>>  2 files changed, 25 insertions(+), 2 deletions(-)  create mode
>>> 100644 conf/machine/raspberrypi3-64.conf
>>>
>>> diff --git a/conf/machine/raspberrypi3-64.conf
>>> b/conf/machine/raspberrypi3-64.conf
>>> new file mode 100644
>>> index 0000000..a5ceddb
>>> --- /dev/null
>>> +++ b/conf/machine/raspberrypi3-64.conf
>>> @@ -0,0 +1,19 @@
>>> +#@TYPE: Machine
>>> +#@NAME: RaspberryPi 3 Development Board
>>> +#@DESCRIPTION: Machine configuration for the RaspberryPi 3 in 64 
>>> +bits mode
>>> +
>>> +DEFAULTTUNE ?= "cortexa53-64"
>>> +
>>> +MACHINEOVERRIDES = "raspberrypi3:raspberrypi:${MACHINE}"
>>> +
>>> +MACHINE_EXTRA_RRECOMMENDS += "linux-firmware-bcm43430"
>>> +
>>> +PREFERRED_VERSION_linux-raspberrypi_raspberrypi3-64 ?= "4.7.%"
>>> +
>>> +require conf/machine/include/tune-cortexa53.inc
>>> +include conf/machine/include/rpi-base.inc
>>> +
>>> +SERIAL_CONSOLE = "115200 ttyS0"
>>> +VC4_CMA_SIZE ?= "cma-256"
>>> +
>>> +UBOOT_MACHINE = "rpi_3_config"
>>> diff --git a/conf/machine/raspberrypi3.conf 
>>> b/conf/machine/raspberrypi3.conf index 9820209..f142323 100644
>>> --- a/conf/machine/raspberrypi3.conf
>>> +++ b/conf/machine/raspberrypi3.conf
>>> @@ -2,12 +2,16 @@
>>>  #@NAME: RaspberryPi 3 Development Board
>>>  #@DESCRIPTION: Machine configuration for the RaspberryPi 3
>>>
>>> -MACHINEOVERRIDES = "raspberrypi2:${MACHINE}"
>>> +DEFAULTTUNE ?= "cortexa53-32"
>>> +
>>> +MACHINEOVERRIDES = "raspberrypi2:raspberrypi:${MACHINE}"
>>>
>>>  MACHINE_EXTRA_RRECOMMENDS += "linux-firmware-bcm43430"
>>>
>>> -include conf/machine/raspberrypi2.conf
>>> +require conf/machine/include/tune-cortexa53.inc
>>> +include conf/machine/include/rpi-base.inc
>>>
>>>  SERIAL_CONSOLE = "115200 ttyS0"
>>>  VC4_CMA_SIZE ?= "cma-256"
>>>
>>> +UBOOT_MACHINE = "rpi_3_config"
>>>
>>
>>
>




More information about the yocto mailing list