[meta-xilinx] [PATCH v1] qemuzynmp: Add the qemuzynqmp machine

Nathan Rossi nathan at nathanrossi.com
Sun May 15 01:17:14 PDT 2016


On Sat, May 14, 2016 at 2:54 AM, Alistair Francis
<alistair.francis at xilinx.com> wrote:
> On Fri, May 13, 2016 at 2:35 AM, Nathan Rossi <nathan at nathanrossi.com> wrote:
>> On Fri, May 13, 2016 at 6:11 AM, Alistair Francis
>> <alistair.francis at xilinx.com> wrote:
>>> Add the qemuzynqmp machine based on the physical ZCU02 revB board.
>>
>> Hi Alistair,
>>
>> So I am a little confused, is this machine supposed to emulate the
>> ep108 (the args to QEMU appear to be for the ep108) or the zcu102? or
>> are both able to be emulated?
>
> Hey Nathan,
>
> This machine is supposed to be emulating the ZCU102.
>
> At the moment we only have the EP108 in upstream QEMU. It isn't worth
> adding a ZCU102 model upstream yet as at the moment we don't have
> enough modeled upstream to notice any differences between the boards.

Ah ok, so in the future QEMU will have models for both the EP108 and
the ZCU102 boards. In that case I don't actually see a need for a
'qemuzynqmp' machine, since the ep108-zynqmp already provides the
setup for QEMU. The same can be done for the zcu102-zynqmp board, this
would also make it easier to maintain consistency (aka changes only
need to be made to the zcu102-zynqmp machine).

>
>>
>>>
>>> Signed-off-by: Alistair Francis <alistair.francis at xilinx.com>
>>> ---
>>> This patch relies on QEMU ZynqMP support in the Yocto scripts.
>>> I am sending a patch for that as well.
>>
>> Also in regards to adding the qemu config to oe-core/runqemu. It might
>> also be worth looking into a recent RFC that was posted for oe-core
>> (http://patchwork.openembedded.org/patch/122049/).
>
> Hmm... interesting. Thanks for pointing that out.
>
> I don't follow the OE-core mailing list (until yesterday) do you know
> if that series is gaining traction?

I believe so, at least that is how it appears from the discussions on
list. I am definitely interested in seeing it applied, I haven't had a
chance to test it just yet though.

Regarding getting a zynqmp machine into oe-core/runqemu. If this
runqemu refactoring is going to make it into the next oe release then
I recommend working towards that as opposed to just getting zynqmp
support into runqemu. As it would also better work towards the ability
to have both the ep108 and zcu102 models available in the future.

Regards,
Nathan

>
> Thanks,
>
> Alistair
>
>>
>> Regards,
>> Nathan
>>
>>>
>>> conf/machine/qemuzynqmp.conf        | 21 +++++++++++++++++++++
>>>  recipes-kernel/linux/linux-xlnx.inc |  4 +++-
>>>  2 files changed, 24 insertions(+), 1 deletion(-)
>>>  create mode 100644 conf/machine/qemuzynqmp.conf
>>>
>>> diff --git a/conf/machine/qemuzynqmp.conf b/conf/machine/qemuzynqmp.conf
>>> new file mode 100644
>>> index 0000000..c5ca3c9
>>> --- /dev/null
>>> +++ b/conf/machine/qemuzynqmp.conf
>>> @@ -0,0 +1,21 @@
>>> +#@TYPE: Machine
>>> +#@NAME: qemuzynqmp
>>> +#@DESCRIPTION: Zynq UltraScale+ QEMU machine support ('xlnx-ep108' model)
>>> +
>>> +require conf/machine/include/tune-zynqmp.inc
>>> +require conf/machine/include/machine-xilinx-default.inc
>>> +require conf/machine/include/machine-xilinx-board.inc
>>> +
>>> +MACHINE_FEATURES = "rtc ext2 ext3 vfat usbhost"
>>> +
>>> +EXTRA_IMAGEDEPENDS += "qemu-native qemu-helper-native"
>>> +
>>> +UBOOT_MACHINE = "xilinx_zynqmp_zcu102_revB_defconfig"
>>> +
>>> +SERIAL_CONSOLE = "115200 ttyPS0"
>>> +
>>> +KERNEL_DEVICETREE = "xilinx/zynqmp-zcu102-revB.dtb"
>>> +QEMU_DTB = "Image-zynqmp-zcu102-revB"
>>> +
>>> +PREFERRED_PROVIDER_virtual/kernel ?= "linux-xlnx"
>>> +PREFERRED_PROVIDER_virtual/bootloader ?= "u-boot-xlnx"
>>> diff --git a/recipes-kernel/linux/linux-xlnx.inc b/recipes-kernel/linux/linux-xlnx.inc
>>> index fe0a2ad..f152a7d 100644
>>> --- a/recipes-kernel/linux/linux-xlnx.inc
>>> +++ b/recipes-kernel/linux/linux-xlnx.inc
>>> @@ -19,10 +19,12 @@ require recipes-kernel/linux/linux-yocto.inc
>>>
>>>  DESCRIPTION = "Xilinx Kernel"
>>>
>>> +KBUILD_DEFCONFIG_qemuzynqmp = "xilinx_zynqmp_defconfig"
>>> +KCONFIG_MODE_qemuzynqmp = "--alldefconfig"
>>> +
>>>  require linux-xilinx-configs.inc
>>>  require linux-xilinx-machines.inc
>>>
>>>  KERNEL_FEATURES_append = " bsp/xilinx/soc/linux-xlnx/drivers/xilinx.scc"
>>>  KERNEL_FEATURES_append_zynq = " bsp/xilinx/soc/linux-xlnx/drivers/zynq7.scc"
>>>  KERNEL_FEATURES_append_zynqmp = " bsp/xilinx/soc/linux-xlnx/drivers/zynqmp.scc"
>>> -
>>> --
>>> 2.7.4
>>>
>> --
>> _______________________________________________
>> meta-xilinx mailing list
>> meta-xilinx at yoctoproject.org
>> https://lists.yoctoproject.org/listinfo/meta-xilinx



More information about the meta-xilinx mailing list