Re: [meta-xilinx] [PATCH] arm-trusted-firmware: Use constants for memory addresses
On 28-09-16 17:20, Nathan Rossi wrote: On Wed, Sep 28, 2016 at 10:50 AM, Manjukumar Harthikote Matha wrote: Hi Mike, <.> LD[unexport] = "1" +ZYNQMP_ATF_MEM_BASE = "0xfffe5000" +ZYNQMP_ATF_MEM_SIZE ="0x16000" Maybe reading the load address from elf might help. I think MEM_BASE address might change going forward. For example: https://github.com/Xilinx/arm-trusted-firmware/commit/eb4fa652d424b895 7a927c6137e2ae3652b0b1bb This patch was to accommodate that. The current version will load it at the wrong location. I am looking to see if we can read from the generated elf and populate the MEM_BASE and MEM_SIZE With the current patch, I think it will be maintenance burden every release, trying to mitigate it if possible. The generated bl31.elf is populated with the correct entry point address: Entry point address: 0xfffe5000 Which is pointing to bl31_entrypoint, https://github.com/Xilinx/arm-trusted-firmware/blob/eb4fa652d424b8957a927c6137e2ae3652b0b1bb/bl31/bl31.ld.S#L35 Which could be used as an alternate source of the address: 625: fffe5000 212 FUNCGLOBAL DEFAULT1 bl31_entrypoint My only query is whether the ZYNQ_ATF_MEM_* variables make sense as overrides? Essentially if there is a potential use case when bl31 needs to be built to execute in an older/newer environment that differs from the default values (of the current version used)? What I really wanted is the opposite, get the address from the binary. That would solve the "magic number" that you have to put in the recipe. I couldn't find a way to do that, so I did the opposite, make sure that both code and recipe share the same magic number. I had no intention of making this "configurable" or so, I just wanted it consistent. Kind regards, Mike Looijmans System Expert TOPIC Products Materiaalweg 4, NL-5681 RJ Best Postbus 440, NL-5680 AK Best Telefoon: +31 (0) 499 33 69 79 E-mail: mike.looijm...@topicproducts.com Website: www.topicproducts.com Please consider the environment before printing this e-mail -- ___ meta-xilinx mailing list meta-xilinx@yoctoproject.org https://lists.yoctoproject.org/listinfo/meta-xilinx
[meta-xilinx] [PATCH] arm-trusted-firmware: Dynamically get entry address
Dynamically get the entry point address for the atf.ub image from the bl31.elf based on the program headers entry point address which matches the expected entry address (aka MEM_BASE). Signed-off-by: Nathan Rossi --- .../arm-trusted-firmware/arm-trusted-firmware_git.bb| 13 ++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/recipes-bsp/arm-trusted-firmware/arm-trusted-firmware_git.bb b/recipes-bsp/arm-trusted-firmware/arm-trusted-firmware_git.bb index f384f5bc51..8962429bc7 100644 --- a/recipes-bsp/arm-trusted-firmware/arm-trusted-firmware_git.bb +++ b/recipes-bsp/arm-trusted-firmware/arm-trusted-firmware_git.bb @@ -43,10 +43,17 @@ do_install() { : } +OUTPUT_DIR = "${S}/build/${PLATFORM}/release" + do_deploy() { install -d ${DEPLOYDIR} - install -m 0644 ${S}/build/${PLATFORM}/release/bl31/bl31.elf ${DEPLOYDIR}/bl31-${MACHINE}.elf - install -m 0644 ${S}/build/${PLATFORM}/release/bl31.bin ${DEPLOYDIR}/bl31-${MACHINE}.bin - mkimage -A arm64 -O linux -T kernel -C none -a 0xfffe5000 -e 0xfffe5000 -d ${S}/build/${PLATFORM}/release/bl31.bin ${DEPLOYDIR}/atf.ub + install -m 0644 ${OUTPUT_DIR}/bl31/bl31.elf ${DEPLOYDIR}/bl31-${MACHINE}.elf + install -m 0644 ${OUTPUT_DIR}/bl31.bin ${DEPLOYDIR}/bl31-${MACHINE}.bin + + # Get the entry point address from the elf. + BL31_BASE_ADDR=$(${READELF} -h ${OUTPUT_DIR}/bl31/bl31.elf | egrep -m 1 -i "entry point.*?0x" | sed -r 's/.*?(0x.*?)/\1/g') + mkimage -A arm64 -O linux -T kernel -C none \ + -a $BL31_BASE_ADDR -e $BL31_BASE_ADDR \ + -d ${OUTPUT_DIR}/bl31.bin ${DEPLOYDIR}/atf.ub } addtask deploy before do_build after do_compile -- 2.9.3 -- ___ meta-xilinx mailing list meta-xilinx@yoctoproject.org https://lists.yoctoproject.org/listinfo/meta-xilinx
Re: [meta-xilinx] [PATCH] arm-trusted-firmware: Use constants for memory addresses
On Thu, Sep 29, 2016 at 7:46 PM, Mike Looijmans wrote: > On 28-09-16 17:20, Nathan Rossi wrote: >> >> On Wed, Sep 28, 2016 at 10:50 AM, Manjukumar Harthikote Matha >> wrote: >>> >>> Hi Mike, >>> >>> <.> >> >> LD[unexport] = "1" >> >> +ZYNQMP_ATF_MEM_BASE = "0xfffe5000" >> +ZYNQMP_ATF_MEM_SIZE ="0x16000" > > Maybe reading the load address from elf might help. I think MEM_BASE > address might change going forward. > > For example: > https://github.com/Xilinx/arm-trusted-firmware/commit/eb4fa652d424b895 > 7a927c6137e2ae3652b0b1bb > This patch was to accommodate that. The current version will load it at the wrong location. >>> I am looking to see if we can read from the generated elf and populate >>> the MEM_BASE and MEM_SIZE >>> With the current patch, I think it will be maintenance burden every >>> release, trying to mitigate it if possible. >> >> >> The generated bl31.elf is populated with the correct entry point address: >>Entry point address: 0xfffe5000 >> >> Which is pointing to bl31_entrypoint, >> >> https://github.com/Xilinx/arm-trusted-firmware/blob/eb4fa652d424b8957a927c6137e2ae3652b0b1bb/bl31/bl31.ld.S#L35 >> >> Which could be used as an alternate source of the address: >> 625: fffe5000 212 FUNCGLOBAL DEFAULT1 >> bl31_entrypoint >> >> My only query is whether the ZYNQ_ATF_MEM_* variables make sense as >> overrides? Essentially if there is a potential use case when bl31 >> needs to be built to execute in an older/newer environment that >> differs from the default values (of the current version used)? >> > > What I really wanted is the opposite, get the address from the binary. That > would solve the "magic number" that you have to put in the recipe. I > couldn't find a way to do that, so I did the opposite, make sure that both > code and recipe share the same magic number. > > I had no intention of making this "configurable" or so, I just wanted it > consistent. > > That makes it simpler then :). I have a sent a patch that does the dynamic reading from the elf to solve this. If you could please give it a test and let me know that it works as you expect. Thanks, Nathan > > > > > > Kind regards, > > Mike Looijmans > System Expert > > TOPIC Products > Materiaalweg 4, NL-5681 RJ Best > Postbus 440, NL-5680 AK Best > Telefoon: +31 (0) 499 33 69 79 > E-mail: mike.looijm...@topicproducts.com > Website: www.topicproducts.com > > Please consider the environment before printing this e-mail > > > > > -- ___ meta-xilinx mailing list meta-xilinx@yoctoproject.org https://lists.yoctoproject.org/listinfo/meta-xilinx
Re: [meta-xilinx] [PATCH 10/29] conf/machine: update for new runqemu
On Thu, Sep 29, 2016 at 7:16 AM, Alistair Francis wrote: > On Wed, Sep 28, 2016 at 8:15 AM, Nathan Rossi wrote: >> From: Robert Yang >> >> The new runqemu has removed machine knowledge, these info can set in >> bsp's conf file, please see oe-core's meta/classes/qemuboot.bbclass for >> more info. >> >> Signed-off-by: Robert Yang >> Signed-off-by: Nathan Rossi >> --- >> conf/machine/qemumicroblaze.conf | 7 +++ >> conf/machine/qemuzynq.conf | 10 ++ >> conf/machine/qemuzynqmp.conf | 12 >> 3 files changed, 29 insertions(+) >> >> diff --git a/conf/machine/qemumicroblaze.conf >> b/conf/machine/qemumicroblaze.conf >> index 9de93c8cce..d3708dd180 100644 >> --- a/conf/machine/qemumicroblaze.conf >> +++ b/conf/machine/qemumicroblaze.conf >> @@ -17,3 +17,10 @@ SERIAL_CONSOLE = "115200 ttyS0" >> # Use the networking setup from qemuarm >> FILESOVERRIDES_append_pn-init-ifupdown = ":qemuarm" >> >> +# For runqemu >> +IMAGE_CLASSES += "qemuboot" >> +QB_SYSTEM_NAME = "qemu-system-microblazeel" >> +QB_MACHINE = "-machine petalogix-ml605" >> +QB_DEFAULT_FSTYPE = "cpio" >> +QB_KERNEL_CMDLINE_APPEND = "console=ttyPS0 earlyprintk" >> +QB_MEM = "-m 256" >> diff --git a/conf/machine/qemuzynq.conf b/conf/machine/qemuzynq.conf >> index c23db5da44..894fee8173 100644 >> --- a/conf/machine/qemuzynq.conf >> +++ b/conf/machine/qemuzynq.conf >> @@ -17,3 +17,13 @@ MACHINE_DEVICETREE = "qemu/qemuzynq.dts" >> # Use the networking setup from qemuarm >> FILESOVERRIDES_append_pn-init-ifupdown = ":qemuarm" >> >> +# For runqemu >> +IMAGE_CLASSES += "qemuboot" >> +QB_SYSTEM_NAME = "qemu-system-arm" > > Can we use aarch64 instead? > > It is a super-set of system-arm. Sure, however I will add the change in machine-xilinx-qemu.inc to swap "arm" -> "aarch64" in the python function. > >> +QB_MEM = "-m 1024" >> +QB_MACHINE = "-machine xilinx-zynq-a9" >> +QB_DTB = "${MACHINE}.dtb" >> +QB_SERIAL_OPT = "-serial null -serial mon:stdio" >> +QB_OPT_APPEND = "-net nic -net nic -usb -usbdevice tablet" >> +QB_DEFAULT_FSTYPE = "cpio" >> +QB_KERNEL_CMDLINE_APPEND = "console=ttyPS0" >> diff --git a/conf/machine/qemuzynqmp.conf b/conf/machine/qemuzynqmp.conf >> index 8b4dd5d230..6fa93b164b 100644 >> --- a/conf/machine/qemuzynqmp.conf >> +++ b/conf/machine/qemuzynqmp.conf >> @@ -5,3 +5,15 @@ >> MACHINEOVERRIDES =. "ep108-zynqmp:" >> >> require conf/machine/ep108-zynqmp.conf >> + >> +# For runqemu >> +IMAGE_CLASSES += "qemuboot" >> +QB_SYSTEM_NAME = "qemu-system-aarch64" >> +QB_MACHINE = "-machine xlnx-ep108" >> +QB_CPU = "-cpu cortex-a57" > > ZynqMP has A53s, why is this setting the A57? > > Also, we don't need the CPU option at all. Will drop it where adding the runqemu setup support for ep108/zcu102. Regards, Nathan > > Thanks, > > Alistair > >> +QB_MEM = "-m 2048" >> +QB_DTB = "${QEMU_DTB}.dtb" >> +QB_SERIAL_OPT = "-serial mon:stdio -serial null" >> +QB_DEFAULT_KERNEL = "Image" >> +QB_DEFAULT_FSTYPE = "cpio" >> +QB_KERNEL_CMDLINE_APPEND = "console=ttyPS0" >> -- >> 2.9.3 >> -- >> ___ >> meta-xilinx mailing list >> meta-xilinx@yoctoproject.org >> https://lists.yoctoproject.org/listinfo/meta-xilinx -- ___ meta-xilinx mailing list meta-xilinx@yoctoproject.org https://lists.yoctoproject.org/listinfo/meta-xilinx
Re: [meta-xilinx] [PATCH 14/29] zcu102-zynqmp: Add runqemu support
On Thu, Sep 29, 2016 at 7:33 AM, Alistair Francis wrote: > On Wed, Sep 28, 2016 at 8:15 AM, Nathan Rossi wrote: >> QEMU 2.7 introduced support for the 'xlnx-zcu102' machine model. This >> allows for runqemu to boot a machine based on the zcu102 hardware. The >> support added is based on the support that is provided for ep108-zynq. >> >> Signed-off-by: Nathan Rossi >> --- >> README.md | 2 +- >> conf/machine/zcu102-zynqmp.conf | 17 + >> 2 files changed, 18 insertions(+), 1 deletion(-) >> >> diff --git a/README.md b/README.md >> index 11b2198428..491b19c4dc 100644 >> --- a/README.md >> +++ b/README.md >> @@ -26,7 +26,7 @@ Boards/Machines supported by this layer: >>* [Digilent Zybo Linux BD](conf/machine/zybo-linux-bd-zynq7.conf) - >> `zybo-linux-bd-zynq7` >> * ZynqMP: >>* [Xilinx EP108](conf/machine/ep108-zynqmp.conf) - `ep108-zynqmp` (QEMU >> support) >> - * [Xilinx ZCU102](conf/machine/zcu102-zynqmp.conf) - `zcu102-zynqmp` >> + * [Xilinx ZCU102](conf/machine/zcu102-zynqmp.conf) - `zcu102-zynqmp` >> (QEMU support) >> >> Additional information on Xilinx architectures can be found at: >> http://www.xilinx.com/support/index.htm >> diff --git a/conf/machine/zcu102-zynqmp.conf >> b/conf/machine/zcu102-zynqmp.conf >> index 11a8ddbfbe..cf25baeee4 100644 >> --- a/conf/machine/zcu102-zynqmp.conf >> +++ b/conf/machine/zcu102-zynqmp.conf >> @@ -9,6 +9,9 @@ require conf/machine/include/machine-xilinx-board.inc >> >> MACHINE_FEATURES = "rtc ext2 ext3 vfat usbhost mali" >> >> +# This machine has a qemu machine model >> +EXTRA_IMAGEDEPENDS += "qemu-native qemu-helper-native" >> + >> UBOOT_MACHINE = "xilinx_zynqmp_zcu102_revB_defconfig" >> >> SERIAL_CONSOLE = "115200 ttyPS0" >> @@ -21,3 +24,17 @@ PREFERRED_PROVIDER_virtual/bootloader ?= "u-boot-xlnx" >> EXTRA_IMAGEDEPENDS += "\ >> arm-trusted-firmware \ >> " >> + >> +# For runqemu >> +IMAGE_CLASSES += "qemuboot" >> +QB_SYSTEM_NAME = "qemu-system-aarch64" >> +QB_MACHINE = "-machine xlnx-zcu102" >> +QB_CPU = "-cpu cortex-a57" > > We don't want this Will remove this. > >> +QB_MEM = "-m 2048" >> +QB_DTB = >> "${KERNEL_IMAGETYPE}-${@os.path.splitext(os.path.basename(d.getVar("KERNEL_DEVICETREE",True)))[0]}.dtb" >> +QB_OPT_APPEND = "-nographic -serial mon:stdio -serial null" >> +QB_DEFAULT_FSTYPE = "cpio" > > Do we not need the kernel image type as well? It is already populated in qemuboot.bbclass as "KERNEL_IMAGETYPE" by default, which is what zynqmp has set as the default kernel type. Also I will squish this patch with the ep108 patch. Regards, Nathan > > Thanks, > > Alistair > >> +QB_KERNEL_CMDLINE_APPEND = "console=ttyPS0" >> +QB_TAP_OPT = "-netdev tap,id=net0,ifname=@TAP@,script=no,downscript=no -net >> nic -net nic -net nic -net nic,netdev=net0,macaddr=@MAC@" >> +QB_SLIRP_OPT = "-netdev user,id=net0 -net nic -net nic -net nic -net >> nic,netdev=net0" >> + >> -- >> 2.9.3 >> -- >> ___ >> meta-xilinx mailing list >> meta-xilinx@yoctoproject.org >> https://lists.yoctoproject.org/listinfo/meta-xilinx -- ___ meta-xilinx mailing list meta-xilinx@yoctoproject.org https://lists.yoctoproject.org/listinfo/meta-xilinx
Re: [meta-xilinx] [PATCH 16/29] qemumicroblaze-s3adsp1800: Add runqemu support
On Thu, Sep 29, 2016 at 7:41 AM, Alistair Francis wrote: > On Wed, Sep 28, 2016 at 8:15 AM, Nathan Rossi wrote: >> Add runqemu support using the 'petalogix-s3adsp1800' QEMU machine. Based >> on the qemumicroblaze runqemu setup. >> >> Signed-off-by: Nathan Rossi >> --- >> conf/machine/qemumicroblaze-s3adsp1800.conf | 11 +++ >> 1 file changed, 11 insertions(+) >> >> diff --git a/conf/machine/qemumicroblaze-s3adsp1800.conf >> b/conf/machine/qemumicroblaze-s3adsp1800.conf >> index 330500c8a3..65a8500314 100644 >> --- a/conf/machine/qemumicroblaze-s3adsp1800.conf >> +++ b/conf/machine/qemumicroblaze-s3adsp1800.conf >> @@ -16,3 +16,14 @@ SERIAL_CONSOLE = "115200 ttyUL0" >> >> MACHINE_ESSENTIAL_EXTRA_RDEPENDS_remove = "device-tree" >> >> +# For runqemu >> +IMAGE_CLASSES += "qemuboot" >> +QB_SYSTEM_NAME = "qemu-system-microblaze" >> +QB_MEM = "-m 256" >> +QB_MACHINE = "-machine petalogix-s3adsp1800" >> +QB_OPT_APPEND = "-nographic -serial mon:stdio" >> +QB_DEFAULT_FSTYPE = "cpio" >> +QB_KERNEL_CMDLINE_APPEND = "console=ttyUL0 earlyprintk" >> +QB_TAP_OPT = "-netdev tap,id=net0,ifname=@TAP@,script=no,downscript=no -net >> nic,netdev=net0,macaddr=@MAC@" >> +QB_SLIRP_OPT = "-netdev user,id=net0 -net nic,netdev=net0" > > I didn't realise this machine existed! > > While we are having all this churn is there any possibility of > removing the 'qemumicroblaze' part of the names, and just have the > machines be named after the QEMU machine name? > Then if we remove the qemuzynq machine there will be no qemu* machines left. I'm not sure on renaming them. There are a couple of issues with removing the qemu* naming. * (qemuzynq) Not a real board, what would you name it? xilinx-zynq-a9-zynq7, just seems a bit odd :P. * (qemuzynq) Maybe time to make the QEMU model match a real board (zc702?)? * (qemumicroblaze*) Whilst real boards, there are no bitstreams or default designs as these QEMU models were based on some now very old BSPs that PetaLinux shipped * Also giving them names like "s3adsp1800-microblazeeb" has the reverse implication that there is physical board support aka U-Boot, bitstream, etc. * Maybe using "s3adsp1800-qemu-microblazeeb" could work, but its a little long?... I was actually planning on renaming the s3adsp1800 to qemumicroblazeeb now that it has runqemu support However I am open to suggestions, feel free to throw ideas out :). Regards, Nathan > > Reviewed-by: Alistair Francis > > Thanks, > > Alistair > >> + >> -- >> 2.9.3 >> -- >> ___ >> meta-xilinx mailing list >> meta-xilinx@yoctoproject.org >> https://lists.yoctoproject.org/listinfo/meta-xilinx -- ___ meta-xilinx mailing list meta-xilinx@yoctoproject.org https://lists.yoctoproject.org/listinfo/meta-xilinx
Re: [meta-xilinx] [PATCH 00/29] Large set of updates/fixes/etc.
> -Original Message- > From: meta-xilinx-boun...@yoctoproject.org [mailto:meta-xilinx- > boun...@yoctoproject.org] On Behalf Of Nathan Rossi > Sent: Wednesday, September 28, 2016 8:15 AM > To: meta-xil...@lists.yoctoproject.org > Subject: [meta-xilinx] [PATCH 00/29] Large set of updates/fixes/etc. > > This series of patches update and fix various parts more details described > below. If > there are no comments or objections I will merge them in a few days. > > Kernel: > * Added linux-yocto 4.8, defaulted linux-yocto to 4.8% > * Updates to config fragments to clean up config check output issues > * Update linux-xlnx-dev SRCREV and LINUX_VERSION to a newer point > > U-Boot: > * Update u-boot-xlnx-dev to a newer point > * Sort out FORCE_PS7INIT to work with the newer directory naming. This >variable is now just a enable flag, see patch for more details > * Fixed UBOOT_OFEMBED for u-boot-xlnx-dev > > QEMU: > * Updates appends for 2.7 > * Fix for qemuzynq for XADC (backport from upstream) > > QEMU/runqemu: > * Applied Robert's patch > * Added runqemu support for zcu102-zynqmp (supported in QEMU 2.7), >ep108-zynq (removed qemuzynqmp) and qemumicroblaze-s3adsp1800 > * Consolidated common QB_* and qemu setup into machine-xilinx-qemu.inc > * Removed old "runqemu" dtb filename support from device-tree > > MicroBlaze: > * User space working again, yay :) Awesome :) Good patch series > * Fixes for binutils 2.27 and gcc 6 > * Fixed some missing pthread support (added DWARF exception patches) > > These changes are also available at: > https://github.com/nathanrossi/meta-xilinx/tree/nrossi/next-wip > > Regards, > Nathan > > Nathan Rossi (28): > linux-yocto_4.8: Add appends for linux-yocto 4.8 > linux/config: Clean up common zynq7.cfg > linux/config: When enabling USB_GADGET_XILINX also enable USB_GADGET > linux/config: Update linux-xlnx config fragment > linux/config: CONFIG_VT is not broken for MicroBlaze anymore > linux/config: Clean up soc/microblaze.cfg > zybo-linux-bd: Use deploy class to handle shared state > kc705-bitstream: Use deploy class to handle shared state > device-tree: Use deploy class to handle shared state > qemuzynq.conf: Update runqemu support > ep108-zynqmp: Add runqemu support > qemuzynqmp: Remove this machine > zcu102-zynqmp: Add runqemu support > qemumicroblaze: Default runqemu to nographic and serial output > qemumicroblaze-s3adsp1800: Add runqemu support > machine-xilinx-qemu.inc: Move common runqemu setup to include > device-tree: Remove old runqemu compatiblity outputs > recipes-zynqmp/qemu: Update append to QEMU 2.7% > recipes-{zynqmp -> devtools}: Move the QEMU appends to generic dir > qemu: Add patch to fix XADC access on Zynq targets > u-boot-spl-zynq-init.inc: Enable the FORCE_PS7INIT for new U-Boot > u-boot-xlnx-dev: Update the default revision > machine-xilinx-default.inc: Set UBOOT_OFEMBED for u-boot-xlnx-dev > linux-xlnx-dev: Update kernel to current master version at 4.6+ > binutils: Fix bug in binutils for MicroBlaze > gcc-source: Add patch to fix MicroBlaze ABI bug > gcc-source: Add MicroBlaze DWARF exception support > machine-xilinx-default.inc: Update default linux-yocto version to 4.8 > > Robert Yang (1): > conf/machine: update for new runqemu > > README.md | 2 +- > conf/machine/ep108-zynqmp.conf | 12 +- > conf/machine/include/machine-xilinx-default.inc| 4 +- > conf/machine/include/machine-xilinx-qemu.inc | 34 + > conf/machine/qemumicroblaze-s3adsp1800.conf| 10 +- > conf/machine/qemumicroblaze.conf | 10 +- > conf/machine/qemuzynq.conf | 10 +- > conf/machine/qemuzynqmp.conf | 7 - > conf/machine/zcu102-zynqmp.conf| 10 ++ > recipes-bsp/device-tree/device-tree.bb | 20 +-- > .../reference-design/kc705-bitstream_2016.1.bb | 6 +- > recipes-bsp/reference-design/zybo-linux-bd.bb | 9 +- > recipes-bsp/u-boot/u-boot-spl-zynq-init.inc| 13 +- > recipes-bsp/u-boot/u-boot-xlnx-dev.bb | 3 +- > .../8fa2346723fb74e8220ac9f186dabc2f57e4cb43.patch | 0 > .../qemu/files/dma-xlnx-zynq-devcfg.patch | 55 +++ > .../qemu/qemu_2.7%.bbappend| 1 + > .../bsp/xilinx/soc/linux-xlnx/drivers/xilinx.cfg | 4 - > .../bsp/xilinx/soc/drivers/xilinx.cfg | 1 + > .../xilinx-common/bsp/xilinx/soc/microblaze.cfg| 7 +- > .../config/xilinx-common/bsp/xilinx/soc/zynq7.cfg | 6 +- > recipes-kernel/linux/linux-xlnx-dev.bb | 4 +- > recipes-kernel/linux/linux-yocto_4.8.bbappend | 4 + > recipes-microblaze/binutils/binutils%.bbappend | 1 + > ...f32-microblaze.c-Fix-regression-with-RELA.patch | 103 + > .../Enable-DWARF-exception-handling-support.patch | 167 > +
Re: [meta-xilinx] [PATCH 14/29] zcu102-zynqmp: Add runqemu support
On Thu, Sep 29, 2016 at 7:41 AM, Nathan Rossi wrote: > On Thu, Sep 29, 2016 at 7:33 AM, Alistair Francis > wrote: >> On Wed, Sep 28, 2016 at 8:15 AM, Nathan Rossi wrote: >>> QEMU 2.7 introduced support for the 'xlnx-zcu102' machine model. This >>> allows for runqemu to boot a machine based on the zcu102 hardware. The >>> support added is based on the support that is provided for ep108-zynq. >>> >>> Signed-off-by: Nathan Rossi >>> --- >>> README.md | 2 +- >>> conf/machine/zcu102-zynqmp.conf | 17 + >>> 2 files changed, 18 insertions(+), 1 deletion(-) >>> >>> diff --git a/README.md b/README.md >>> index 11b2198428..491b19c4dc 100644 >>> --- a/README.md >>> +++ b/README.md >>> @@ -26,7 +26,7 @@ Boards/Machines supported by this layer: >>>* [Digilent Zybo Linux BD](conf/machine/zybo-linux-bd-zynq7.conf) - >>> `zybo-linux-bd-zynq7` >>> * ZynqMP: >>>* [Xilinx EP108](conf/machine/ep108-zynqmp.conf) - `ep108-zynqmp` (QEMU >>> support) >>> - * [Xilinx ZCU102](conf/machine/zcu102-zynqmp.conf) - `zcu102-zynqmp` >>> + * [Xilinx ZCU102](conf/machine/zcu102-zynqmp.conf) - `zcu102-zynqmp` >>> (QEMU support) >>> >>> Additional information on Xilinx architectures can be found at: >>> http://www.xilinx.com/support/index.htm >>> diff --git a/conf/machine/zcu102-zynqmp.conf >>> b/conf/machine/zcu102-zynqmp.conf >>> index 11a8ddbfbe..cf25baeee4 100644 >>> --- a/conf/machine/zcu102-zynqmp.conf >>> +++ b/conf/machine/zcu102-zynqmp.conf >>> @@ -9,6 +9,9 @@ require conf/machine/include/machine-xilinx-board.inc >>> >>> MACHINE_FEATURES = "rtc ext2 ext3 vfat usbhost mali" >>> >>> +# This machine has a qemu machine model >>> +EXTRA_IMAGEDEPENDS += "qemu-native qemu-helper-native" >>> + >>> UBOOT_MACHINE = "xilinx_zynqmp_zcu102_revB_defconfig" >>> >>> SERIAL_CONSOLE = "115200 ttyPS0" >>> @@ -21,3 +24,17 @@ PREFERRED_PROVIDER_virtual/bootloader ?= "u-boot-xlnx" >>> EXTRA_IMAGEDEPENDS += "\ >>> arm-trusted-firmware \ >>> " >>> + >>> +# For runqemu >>> +IMAGE_CLASSES += "qemuboot" >>> +QB_SYSTEM_NAME = "qemu-system-aarch64" >>> +QB_MACHINE = "-machine xlnx-zcu102" >>> +QB_CPU = "-cpu cortex-a57" >> >> We don't want this > > Will remove this. Thanks > >> >>> +QB_MEM = "-m 2048" >>> +QB_DTB = >>> "${KERNEL_IMAGETYPE}-${@os.path.splitext(os.path.basename(d.getVar("KERNEL_DEVICETREE",True)))[0]}.dtb" >>> +QB_OPT_APPEND = "-nographic -serial mon:stdio -serial null" >>> +QB_DEFAULT_FSTYPE = "cpio" >> >> Do we not need the kernel image type as well? > > It is already populated in qemuboot.bbclass as "KERNEL_IMAGETYPE" by > default, which is what zynqmp has set as the default kernel type. Ahh, makes sense. > > Also I will squish this patch with the ep108 patch. Ok great. Thanks, Alistair > > Regards, > Nathan > >> >> Thanks, >> >> Alistair >> >>> +QB_KERNEL_CMDLINE_APPEND = "console=ttyPS0" >>> +QB_TAP_OPT = "-netdev tap,id=net0,ifname=@TAP@,script=no,downscript=no >>> -net nic -net nic -net nic -net nic,netdev=net0,macaddr=@MAC@" >>> +QB_SLIRP_OPT = "-netdev user,id=net0 -net nic -net nic -net nic -net >>> nic,netdev=net0" >>> + >>> -- >>> 2.9.3 >>> -- >>> ___ >>> meta-xilinx mailing list >>> meta-xilinx@yoctoproject.org >>> https://lists.yoctoproject.org/listinfo/meta-xilinx -- ___ meta-xilinx mailing list meta-xilinx@yoctoproject.org https://lists.yoctoproject.org/listinfo/meta-xilinx