Jump to content

tkuraku

Members
  • Posts

    8
  • Joined

  • Last visited

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

tkuraku's Achievements

Newbie

Newbie (1/4)

0

Reputation

  1. @thinkthinkthink, thanks for your help on this. It I tried to built the petalinux project from your link. I wasn't able to get a frame buffer device to show a GUI like was done on the 2017.4 version. It seemed that the project-spec/meta-user/recipes-kernel/linux/linux-xlnx/0001-drm-xilinx-Add-encoder-for-Digilent-boards-new.patch is not set to be applied by default. Is this still a work in progress then?
  2. Fantastic. This is exactly what I wanted. I will test it out this weekend. thank you
  3. My main goal is to be able to display a GUI from an up-to-date petalinux on the Zybo Z7 board. Are there plans to provide an updated petalinux BSP and hardware design for the Zybo Z7 boards? There are BSPs for 2017.4, https://digilent.com/reference/software/petalinux/start and HDL design here, https://github.com/Digilent/Zybo-Z7-10-base-linux. in the petalinux 2017.4 there are two drivers in the digilent source tree that make the HDMI display work. clk-dglnt-dynclk.c and digilent_encoder.c. Attached here. as well as some device tree entries: &amba_pl { encoder_0: digilent_encoder { compatible = "digilent,drm-encoder"; digilent,fmax = <150000>; digilent,edid-i2c = <&i2c0>; }; xilinx_drm { compatible = "xlnx,drm"; xlnx,vtc = <&v_tc_out>; xlnx,connector-type = "HDMIA"; xlnx,encoder-slave = <&encoder_0>; clocks = <&axi_dynclk_0>; planes { xlnx,pixel-format = "rgb888"; plane0 { dmas = <&axi_vdma_1 0>; dma-names = "dma0"; }; }; }; }; &axi_dynclk_0 { compatible = "digilent,axi-dynclk"; #clock-cells = <0>; clocks = <&clkc 15>; }; &axi_vdma_1 { dma-ranges = <0x00000000 0x00000000 0x40000000>; }; &v_tc_out { compatible = "xlnx,v-tc-5.01.a"; }; and two kernel configurations options, enable `CONFIG_COMMON_CLK_AXI_CLKGEN` in the kernel configuration and set the CONFIG_CMA_SIZE_MBYTES kernel parameter to 128. I found these through looking through the 2017.4 BSP. These additions allow the hdmi output to work with a vanilla petalinux 2017.4 project using the xilinx kernel/u-boot sources. I tried upgrading the HDL design to 2020.1 and 2021.1 and I am not able to get the HDMI display to work with petalinux. It seems there are two issues, one is that I had to modify the two drivers to compile with the newer kernel and may have broken something (though I don't think so), and two that the v_tc_out device tree node that is auto generated from the hardware file in petalinux is significantly different. The relevant file is components/plnx_workspace/device-tree/device-tree-generation/pl.dtsi. I would really like to get this functionality working on an up to date tool chain. Any help or support from Digilent would be appreciated. Thank you clk-dglnt-dynclk.c digilent_encoder.c
  4. You need to get the device tree modifications from the digilent BSP. specifically you need teh following in `project-spec/meta-user/recipes-bsp/device-tree/files/system-user.dtsi` in your petalinux project. &amba_pl { encoder_0: digilent_encoder { compatible = "digilent,drm-encoder"; digilent,fmax = <150000>; digilent,edid-i2c = <&i2c0>; }; xilinx_drm { compatible = "xlnx,drm"; xlnx,vtc = <&v_tc_out>; xlnx,connector-type = "HDMIA"; xlnx,encoder-slave = <&encoder_0>; clocks = <&axi_dynclk_0>; planes { xlnx,pixel-format = "rgb888"; plane0 { dmas = <&axi_vdma_1 0>; dma-names = "dma0"; }; }; }; }; &axi_dynclk_0 { compatible = "digilent,axi-dynclk"; #clock-cells = <0>; clocks = <&clkc 15>; }; &axi_vdma_1 { dma-ranges = <0x00000000 0x00000000 0x40000000>; }; &v_tc_out { compatible = "xlnx,v-tc-5.01.a"; }; Then you need to enable `CONFIG_COMMON_CLK_AXI_CLKGEN` in the kernel configuration and set the CONFIG_CMA_SIZE_MBYTES kernel parameter to 128. Finally you need to get two drivers from the 2017.4 petalinux kernel source as used in the digilient BSP. The digilent_encoder and digilent dynamic clock. I have included the source files. Then you need to add the drivers as modules in petalinux. petalinux-create -t modules --name clk-dglnt-dynclk --enable petalinux-create -t modules --name digilent-encoder --enable copy the contents of `clk-dglnt-dynclk.c` into `project-spec/meta-user/recipes-modules/clk-dglnt-dynclk/files/clk-dglnt-dynclk.c` copy the contents of `digilent_encoder.c` to `project-spec/meta-user/recipes-modules/digilent-enconder/files/digilent-enconder.c` Then rebuild and it should work. Tested on 2017.4 digilent_encoder.c clk-dglnt-dynclk.c
  5. hi @AndrewHolzer It would be great to get the instructions to recreate the magic for 2017.4 and because the 2020.1 demo is under construction it would be great to get those instructions as well. Thank you so much.
  6. looks like you need to run it and specify the frame buffer to use. I haven't figured out how to get it to do this on startup yet, but I got a gui on screen now. FRAMEBUFFER=/dev/fb xinit /usr/local/bin/matchbox-desktop
  7. Can someone show me how to enable a GUI for the petalinux project available here: https://github.com/Digilent/Petalinux-Zybo-Z7-10 I changed it to have an external rootfs on the SD card and activated the matchbox desktop session in the rootfs configuration, but when it boots I get the following error: # matchbox-desktop ** (matchbox-desktop:1242): WARNING **: Cannot open display: Not sure how to get the HDMI display working...
  8. I am looking at the petalnux demo here https://reference.digilentinc.com/reference/programmable-logic/zybo-z7/demos/petalinux and https://github.com/Digilent/Petalinux-Zybo-Z7-10. These are a good resource. I am anxiously awaiting the update to 2020.1. However, I would can you include or provide here a list of the steps need to recreate the functionality in the distributed BSP. You don't need to provide in depth instructions as we can reference the provided petalinux project. For instance, I don't even know where to start looking for how to configure the HDMI video driver on a new project. With a list of steps on how to recreate the project from scratch it will be a better learning tool. thanks!
×
×
  • Create New...