[meta-xilinx] [PATCH 3/9] meta-xilinx-standalone: Create layer, distro and machine to build standalone components

Alejandro Enedino Hernandez Samaniego alejandro.enedino.hernandez-samaniego at xilinx.com
Tue Dec 11 14:16:28 PST 2018


Hey Luca,


On 12/11/2018 07:41 AM, Luca Ceresoli wrote:
> Hi Alejandro,
>
> On 06/12/18 22:56, Alejandro Enedino Hernandez Samaniego wrote:
>> This layer is meant to augment Yocto/OE functionality to provide a
>> toolchain to build standalone components for Xilinx architectures.
>>
>> Signed-off-by: Alejandro Enedino Hernandez Samaniego <alejandr at xilinx.com>
>> Signed-off-by: Manjukumar Matha <manjukumar.harthikote-matha at xilinx.com>
>> ---
>>   meta-xilinx-standalone/README.md                   | 56 ++++++++++++++++++++++
>>   .../conf/distro/xilinx-standalone.conf             | 12 +++++
>>   meta-xilinx-standalone/conf/layer.conf             | 14 ++++++
>>   .../conf/machine/zynqmp-pmu.conf                   | 11 +++++
>>   4 files changed, 93 insertions(+)
>>   create mode 100644 meta-xilinx-standalone/README.md
>>   create mode 100644 meta-xilinx-standalone/conf/distro/xilinx-standalone.conf
>>   create mode 100644 meta-xilinx-standalone/conf/layer.conf
>>   create mode 100644 meta-xilinx-standalone/conf/machine/zynqmp-pmu.conf
>>
>> diff --git a/meta-xilinx-standalone/README.md b/meta-xilinx-standalone/README.md
>> new file mode 100644
>> index 0000000..da7f4e1
>> --- /dev/null
>> +++ b/meta-xilinx-standalone/README.md
>> @@ -0,0 +1,56 @@
>> +meta-xilinx-standalone
>> +=====================
> Nitpick: there should be an extra '='.
>
> [...]
>> +Dependencies
>> +============
>> +
>> +This layer depends on:
>> +
>> +     URI: git://git.yoctoproject.org/poky
>> +
>> +     URI: git://git.yoctoproject.org/meta-xilinx
> That's the repo, not the layer. Maybe clarify as:
>
>    URI: git://git.yoctoproject.org/meta-xilinx -> meta-xilinx-bsp layer
True

>
>> +Usage
>> +=====
>> +
>> +1.- Clone this layer along with the specified layers
>> +
>> +2.- $ source oe-init-build-env
>> +
>> +3.- Add this layer to BBLAYERS on conf/bblayers.conf
>> +
>> +4.- Add the following to your conf/local.conf to build for the microblaze architecture:
>> +
>> +DISTRO="xilinx-standalone"
>> +
>> +MACHINE="zynqmp-pmu"
> To the best of my knowledge, to use U-Boot SPL people link the
> pm_cfg_obj.c file in the pmufw binary and then patch the pmufw code to
> load that config object instead of getting it via smc calls [0]. This
> makes pmufw binary machine-specfic.
>
> How do you think the same goal should be obtained with the new
> "zynqmp-pmu" machine?
Unless I'm not understanding this correctly, using MACHINEOVERRIDES 
should do it
>> diff --git a/meta-xilinx-standalone/conf/distro/xilinx-standalone.conf b/meta-xilinx-standalone/conf/distro/xilinx-standalone.conf
>> new file mode 100644
>> index 0000000..b90b113
>> --- /dev/null
>> +++ b/meta-xilinx-standalone/conf/distro/xilinx-standalone.conf
>> @@ -0,0 +1,12 @@
>> +DISTRO = "xilinx-standalone"
>> +DISTRO_NAME = "Xilinx Standalone Distro"
>> +DISTRO_VERSION = "1.0"
>> +TARGET_VENDOR = "-xilinx"
>> +
>> +TCLIBC = "newlib"
>> +TCLIBCAPPEND =""
>> +
>> +# Change SDK name
>> +SDK_VERSION = "xilinx-standalone"
>> +
>> +BB_DANGLINGAPPENDS_WARNONLY = "1"
> Why?
Good catch, its no longer necessary
>
>> diff --git a/meta-xilinx-standalone/conf/machine/zynqmp-pmu.conf b/meta-xilinx-standalone/conf/machine/zynqmp-pmu.conf
>> new file mode 100644
>> index 0000000..2f692db
>> --- /dev/null
>> +++ b/meta-xilinx-standalone/conf/machine/zynqmp-pmu.conf
>> @@ -0,0 +1,11 @@
>> +DEFAULTTUNE ?= "microblaze"
>> +
>> +require conf/machine/include/microblaze/arch-microblaze.inc
>> +
>> +# Endianess, multiplier, barrel shift, pattern compare, floating point double or single, are the possibilities
>> +AVAILTUNES += "microblaze"
>> +TUNE_FEATURES_tune-microblaze = "microblaze v9.2 barrel-shift pattern-compare"
> The above comment is not clear to a non-MB expert as I am. Does it refer
> to AVAILTUNES or to TUNE_FEATURES? Also I'd put in the comment the
> verbatim strings that can be put in variables, as in:
>
> # TUNE_FEATURES can contain zero or more of:
> # - multiplier
> # - barrel-shift
> # - pattern-compare
> # - etc...
>
> which is probably wrong, but should illustrate what I mean.

They're tightly coupled, so the comment is technically for both, so its 
for the TUNE_FEATURES, specifically for the AVAILTUNES microblaze.
>
>
> [0]
> https://github.com/topic-embedded-products/meta-topic/tree/master/recipes-bsp/pmu-firmware
>



More information about the meta-xilinx mailing list