diff options
author | 2018-05-27 22:35:22 -0700 | |
---|---|---|
committer | 2018-06-11 23:56:26 -0700 | |
commit | c0768c241a012f8e549f4bf55ab2ce4c5258c487 (patch) | |
tree | e7505b9759dd148c979ef85020052d2c6ca46be9 | |
parent | 394edb22b4019c93cd468b58009a8194fe5dc633 (diff) | |
download | meta-xilinx-c0768c241a012f8e549f4bf55ab2ce4c5258c487.tar.gz meta-xilinx-c0768c241a012f8e549f4bf55ab2ce4c5258c487.tar.bz2 meta-xilinx-c0768c241a012f8e549f4bf55ab2ce4c5258c487.zip |
machine-xilinx-overrides.inc: Provide override mechanism depending on SoC features
This patch enables to add overrides depending on the SoC capabilities.
UltraScale+ FPGA has different variants of silicon to support different
features like MALI400, VCU. Categorically there are three variants: cg
devices, eg devices(MALI 400) and ev devices (MALI 400+ VCU)
See:
https://www.xilinx.com/products/silicon-devices/soc/zynq-ultrascale-mpsoc.html#productTable
dr devices are based for UltraScale+ RFSoC
This patch allows machineoverides to be extended as zynqmp(cg|eg|ev|dr)
and mali400/vcu (based on functionality). This helps in grouping of
settings for similar SoC
This patch also adds packages to be a part of the feed based on
SOC_FAMILY and SOC_VARIANT
Signed-off-by: Alejandro Enedino Hernandez Samaniego <alejandr@xilinx.com>
Signed-off-by: Vineeth Chowdary Karumanchi <vineethchowz.chowdary@xilinx.com>
Signed-off-by: Manjukumar Matha <manjukumar.harthikote-matha@xilinx.com>
-rw-r--r-- | meta-xilinx-bsp/conf/machine/include/machine-xilinx-overrides.inc | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/meta-xilinx-bsp/conf/machine/include/machine-xilinx-overrides.inc b/meta-xilinx-bsp/conf/machine/include/machine-xilinx-overrides.inc new file mode 100644 index 00000000..30049bc0 --- /dev/null +++ b/meta-xilinx-bsp/conf/machine/include/machine-xilinx-overrides.inc @@ -0,0 +1,21 @@ +SOC_VARIANT ??= "" +MACHINEOVERRIDES =. "${@['', '${SOC_FAMILY}${SOC_VARIANT}:']['${SOC_VARIANT}' != '']}" + +# Here we can extend overrides for the corresponding family and variant +def get_soc_overrides(fam, var, d): + extender = '' + if (fam == 'zynqmp'): + if (var == 'eg'): + extender = 'mali400:' + elif (var == 'ev'): + extender = 'mali400:vcu:' + return extender + +# Gets OVERRIDES extender depending on the board +SOC_OVERRIDES = "${@get_soc_overrides(d.getVar('SOC_FAMILY'),d.getVar('SOC_VARIANT'), d)}" + +MACHINEOVERRIDES =. "${SOC_OVERRIDES}" + +PACKAGE_EXTRA_ARCHS_append = " ${SOC_FAMILY}" +PACKAGE_EXTRA_ARCHS_append = "${@['', ' ${SOC_FAMILY}${SOC_VARIANT}']['${SOC_VARIANT}' != '']}" + |