izumitomonori

Members
  • Content Count

    16
  • Joined

  • Last visited

About izumitomonori

  • Rank
    Member

Recent Profile Visitors

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

  1. Hi Mihai, Hmm, the detailed version is the same with me.... Do you mean two hardware modules for "two interfaces"? Do you use the IP Integrator in Vivado? If so, you should check the module name and addresses for the two in the IP Integrator tool and register both of them in pl.dtsi. Regards, Tom IZUMI
  2. Hi, Mihai I think I have listed all I did in my report. In my experience, details changes version by version. If you would disclose the detailed versions of your PetaLinux and your environments, some experts here may give you a hint. Regards, Tom IZUMI
  3. Dear sbobrowicz, Thanks for your kind help. I think I have registered board_files/zybo but not delete board_parts/zynq/zybo. After deleting boards/board_parts/zynq/zybo, ZYNQ PS in Vivado IP Integrator seems to be configured well. Thanks a lot. I would like to ask a request to the Digilent support team. The website has no explanation that older files should be removed when newer files are installed. Non-expert users should run into chaos without the direction of deletion. There should be such direction in the how-to-install. Best regards, Tom IZUMI
  4. Dear sbobrowicz, Thanks for the kind advice. I have selected the ZYBO board file and perform [Run Block Automation] with [Apply Board Preset] in the Block Design. However, Zynq PS is not well configured. Here attached are screenshots of the situation. test_boardfile0.gif : Check the ZYBO borad file specified. test_boardfile1.gif : Put Zynq PS in Block Design and see [Run Block Automation] test_boardfile2.gif : Perform [Run Block Automation] with [Apply Board Preset]. test_boardfile3.gif : [Run Block Automation] done. test_boardfile4.gif : Check the configuration of Zynq PS but not configured well. For example, ENET0, USB0, UART1, GPIO MIO7,50,51,... After test_boardfile3.gif, I have to import ZYBO_zynq_def.xml and make some additional settings such as GPIO MIO7,50,51. The tool used is Vivado 2015.4. I wonder my procedure is correct or something wrong. Thanks in advance. Best regards, Tom IZUMI
  5. Dear sbobrowicz, Yes, I do use Vivado 2015.4 for the design, not ISE. I wonder if my understanding is right but in my experience ZYNQ PS is not well configured only with the ZYBO board file from https://reference.digilentinc.com/vivado:boardfiles even for Vivado. I have to import additional board definition from https://github.com/ucb-bar/fpga-zynq/blob/master/zybo/src/xml/ZYBO_zynq_def.xml and to make some modification for devices such as LED on MIO7, buttons on MIO51,50. Best regards, Tom IZUMI
  6. Dear AndrewHolzer, Thank your very much for the valuable information. Solving the equations in the paragraph: base_gpio = +ARCH_NR_GPIOS -ZYNQ_GPIO_NR_GPIOS allocated_gpios = +ARCH_NR_GPIOS -base_gpio other_gpio = +allocated_gpios -ZYNQ_GPIO_NR_GPIOS gpio_offset = +base_gpio +other_gpio I got... base_gpio = +ARCH_NR_GPIOS -ZYNQ_GPIO_NR_GPIOS allocated_gpios = +ZYNQ_GPIO_NR_GPIOS other_gpio = 0 gpio_offset = +ARCH_NR_GPIOS -ZYNQ_GPIO_NR_GPIOS ...Hmm.... I should make some misunderstandings. But anyway, the website says the number is calculated by some formula based on the devicetree, so I think I could assume a rule on the number. I can determine the module with /sys/class/gpio/gpiochip*/label and it seems that the numbers for ports are given in descending order. I conclude that I can guess with the hints and if it is critical to know the port position I use /dev/uio instead of /sys/class/gpio. Again, thanks for your kind help. Best regards, Tom IZUMI
  7. Dear JColvin, Thanks for your comment and help. Seeking for solutions, I have found a Zynq PS setting file ZYBO_zynq_def.xml in a github directory. https://github.com/ucb-bar/fpga-zynq/blob/master/zybo/src/xml/ZYBO_zynq_def.xml Importing this file as XPS settings and making changes needed on the setting, I have got both (Serial Number D5***** and D7*****) types of ZYBO working fine. I wonder this is provided and maintained yet officially. I am not sure what are the key properties which make the difference. Regards, Tom IZUMI
  8. Dear Experts, I would like ask for help about a trouble concerning to the difference of ZYBO boards. I have made up a micro SD card to boot my PetaLinux system for ZYBO. Some ZYBO work fine with the card, while other ZYBOs fail to boot with it. With the clock from L16 pin, PL modules seems to work fine for every board. When I tried to run a C program on SDK (Run As Hardware), some boards fail even for the same design. It seems that the clock from PS is dead. For every ZYBO, JP5 is set to SD when I use SD and JTAG when I use Vivado or SDK. Every ZYBO works fine with a SD card for another design. The serial numbers of the ZYBOs are as follows. success: PB200-279 REV B, D575131, D575052 failure: PB200-279 REV B, D772329, D759942 The attached PS_Properties.xlsx is the properties of the processing system for my design. It would be much appreciated if you would give me some advices and/or hints for the problem. Thanks in advance. Best regards, Tom IZUMI PS_Properties.xlsx
  9. Dear Experts, I would like to ask how I can determine GPIO port# of /sys/class/gpio/gpiochip# in PetaLinux. Here is my design environment. Board: ZYBO Tools: Vivado 2015.4, SDK 2015.4, PetaLinux 2015.4 My design includes a GPIO module with two ports in PL part as follows. axi_gpio_0: gpio@41200000 { #gpio-cells = <2>; compatible = "xlnx,xps-gpio-1.00.a"; gpio-controller ; reg = <0x41200000 0x10000>; : After building PetaLinux boot image, I got the followings: root@plzybotr:~# ls /sys/class/gpio export gpiochip842 gpiochip874 gpiochip906 unexport root@plzybotr:~# cat /sys/class/gpio/gpiochip842/label /amba_pl/gpio@41200000 root@plzybotr:~# cat /sys/class/gpio/gpiochip842/ngpio 32 root@plzybotr:~# cat /sys/class/gpio/gpiochip874/label /amba_pl/gpio@41200000 root@plzybotr:~# cat /sys/class/gpio/gpiochip874/ngpio 32 root@plzybotr:~# cat /sys/class/gpio/gpiochip906/label zynq_gpio root@plzybotr:~# cat /sys/class/gpio/gpiochip906/ngpio 118 I found that 874 is Port#1 and 842 is Port#2 of axi_gpio_0 by "trials and errors". It would be much appreciated if you would give me any advices and/or hints to determine the mapping between the GPIO numbers and ports without trials and errors. Thanks in advance. Best regards, Tom IZUMI
  10. Hi, sbobrowicz, Thank you very much for your kind help and valuable comment. That's it! I have editted ./subsystems/linux/configs/device-tree/system-conf.dtsi as bootargs = "console=ttyPS0,115200 earlyprintk uio_pdrv_genirq.of_id=generic-uio"; and now I can control my HW module via /dev/uio0. Best regards, Tom IZUMI
  11. Dear Experts, Please let me ask for help about PetaLinux on ZYBO. I tried to register my device as UIO at /sys/class/uio/uio* but failed. The procedure I did is in the followings. My HW module works fine via /dev/mem. But I can't find /sys/class/uio/uio*. It would be much appreciated if you would give me any advices, comments and/or pointers. Thanks in advance. Best regards, Tom IZUMI ---------------------------------------------------------------- [Board] Digilent ZYBO [Design] ARM processor + Xilinx GPIO IP connected via AXIGP + my own module as user IP connected via AXIGP * LEDs, SWs, BTNs, simple counter, UART display for debugging * loopback connection via for test of my own module [Tools] Vivado & SDK 2015.4 on Windows 10 Pro PetaLinux v2015.4 final on Ubuntu 14.04.4 LTS ---------------------------------------------------------------- 1. Procedure with Vivado and SDK on Win10 On Vivado, I have integrated IPs including ARM, GPIO, my module and others by IP integrator. They are compiled with the top module and debugging peripherals to be a bitstream. The HW platform is imported in SDK. It seems to work fine with a test program in the 'standalone' mode. I also build the FSBL with the template in the 'standalone' mode. I export the HW platform to Ubuntu PC equipped with PetaLinux. ---------------------------------------------------------------- 2. Procedure with PetaLinux builder on Ubuntu14 % petalinux-create --type project --template zynq --name plhw2 (cd Vivado's plhw2prj/plhw2prj.sdk/ZYBO_top_hw_platform_0/ including ZYBO_top.bit ps7_init.c ps7_init.html ps7_init_gpl.c system.hdf Zynq_PS_bd.tcl ps7_init.h ps7_init.tcl ps7_init_gpl.h) % petalinux-config --get-hw-description -p /home/izumi/pltest/plhw2/ (proceed with default values) (cd petalinux project top plhw2/) (modify my module in ./subsystems/linux/configs/device-tree/pl.dtsi from rizm_axilite_fifo_0: rizm_axilite_fifo@43c00000 { compatible = "rizm_axilite_fifo"; reg = <0x43c00000 0x10000>; }; to rizm_axilite_fifo_0: rizm_axilite_fifo@43c00000 { compatible = "generic-uio"; reg = <0x43c00000 0x10000>; }; ) % petalinux-config -c kernel (set [Device Drivers] -> [Userspace I/O drivers] to <M>) (select [Userspace I/O platform driver with generic IRQ handling]) % petalinux-config -c rootfs (add some apps in [Filesystem Package] and [Apps] menu) % petalinux-build % petalinux-package --boot --fsbl ../plhw2prj/plhw2prj.sdk/fsbl/Debug/fsbl.elf --fpga ../plhw2prj/plhw2prj.sdk/ZYBO_top_hw_platform_0/ZYBO_top.bit --uboot (copy images/linux/{BOOT.BIN,image.ub} to microSD card) ---------------------------------------------------------------- 3. Procedure on ZYBO with the above microSD (Bootup PetaLinux and login as root) root@plhw2:~# ls /sys/class/gpio/ export gpiochip842 gpiochip874 gpiochip906 unexport root@plhw2:~# gpio-demo -g 842 -o 0xaa : (GPIOs seem to work fine with my debugging peripherals) root@plhw2:~# ls /sys/class/uio ls: /sys/class/uio: No such file or directory root@plhw2:~# modprobe uio root@plhw2:~# ls /sys/class/uio (empty) root@plhw2:~# lsmod Not tainted uio 6934 0 - Live 0xbf058000 ipv6 256764 12 [permanent], Live 0xbf000000 root@plhw2:~# modprobe uio_pdrv_genirq root@plhw2:~# lsmod Not tainted uio_pdrv_genirq 2650 0 - Live 0xbf05e000 uio 6934 1 uio_pdrv_genirq, Live 0xbf058000 ipv6 256764 12 [permanent], Live 0xbf000000 root@plhw2:~# ls /sys/class/uio/ (empty) root@plhw2:~# mdev -s root@plhw2:~# ls /dev/*uio* ls: /dev/*uio*: No such file or directory
  12. Dear BKallaher, Thanks for the info. Now, I enjoy designs with ZYBO+PetaLinux. Best regards, Tom IZUMI
  13. Dear BKallaher, Thanks for your help. That's it! The specified older version seems to work fine. I confirmed that ssh, ftp, and nfs works fine on my ZYBO. I should not ignore the warning of the different versions. Now I know PetaLinux tools are very sensitive to version. There are some messages of troubles as attached. I wish they could be ignored.... Thanks a lot! Best regards, Tom IZUMI ---------------------------------------------------------------- izumi@rsl-op780w7-03:~$ /opt/petalinux-v2015.4-final/settings.sh PetaLinux environment set to '/opt/petalinux-v2015.4-final' INFO: Checking free disk space INFO: Checking installed tools INFO: Checking installed development libraries INFO: Checking network and other services izumi@rsl-op780w7-03:~$ petalinux-create -t project -s /opt/Xilinx/Digilent-Zybo-Linux-BD-v2015.4.bsp INFO: Create project: INFO: Projects: INFO: * Digilent-Zybo-Linux-BD-v2015.4 INFO: has been successfully installed to /home/izumi/ INFO: New project successfully created in /home/izumi/ izumi@rsl-op780w7-03:~$ cd Digilent-Zybo-Linux-BD-v2015.4/ izumi@rsl-op780w7-03:~/Digilent-Zybo-Linux-BD-v2015.4$ petalinux-config -c rootfs (select dropbear's server) INFO: Checking component... INFO: Config linux/rootfs [INFO ] config linux/rootfs configuration written to /home/izumi/Digilent-Zybo-Linux-BD-v2015.4/subsystems/linux/configs/rootfs/config *** End of the configuration. *** Execute 'make' to start the build or try 'make help'. fatal: Operation not supported by protocol. Unexpected end of command stream Cloning into '/home/izumi/Digilent-Zybo-Linux-BD-v2015.4/build/linux/kernel/download/linux-digilent'... remote: Counting objects: 4091553, done. remote: Total 4091553 (delta 0), reused 0 (delta 0), pack-reused 4091553 Receiving objects: 100% (4091553/4091553), 877.48 MiB | 2.79 MiB/s, done. Resolving deltas: 100% (3442346/3442346), done. Checking connectivity... done. Checking out files: 100% (49606/49606), done. Note: checking out '86b46b6606eea44c59af56b732e5393f2eb0adce'. You are in 'detached HEAD' state. You can look around, make experimental changes and commit them, and you can discard any commits you make in this state without impacting any branches by performing another checkout. If you want to create a new branch to retain commits you create, you may do so (now or later) by using -b with the checkout command again. Example: git checkout -b new_branch_name HEAD is now at 86b46b6... drm: xilinx: fb: Get vblank before waiting fatal: Operation not supported by protocol. Unexpected end of command stream Cloning into '/home/izumi/Digilent-Zybo-Linux-BD-v2015.4/build/linux/u-boot/download/u-boot-digilent'... remote: Counting objects: 382092, done. remote: Total 382092 (delta 0), reused 0 (delta 0), pack-reused 382092 Receiving objects: 100% (382092/382092), 91.79 MiB | 1.69 MiB/s, done. Resolving deltas: 100% (306792/306792), done. Checking connectivity... done. Checking out files: 100% (11306/11306), done. Note: checking out '4dd0f06c46085cacc607dabbdf288bef6ad67115'. You are in 'detached HEAD' state. You can look around, make experimental changes and commit them, and you can discard any commits you make in this state without impacting any branches by performing another checkout. If you want to create a new branch to retain commits you create, you may do so (now or later) by using -b with the checkout command again. Example: git checkout -b new_branch_name HEAD is now at 4dd0f06... configs: zynq-common: Add uEnv.txt support webtalk failed:PetaLinux statistics:extra lines detected:notsent_nofile! webtalk failed:Failed to get PetaLinux usage statistics! izumi@rsl-op780w7-03:~/Digilent-Zybo-Linux-BD-v2015.4$ petalinux-build INFO: Checking component... INFO: Generating make files and build linux INFO: Generating make files for the subcomponents of linux WARNING: /home/izumi/Digilent-Zybo-Linux-BD-v2015.4/build/linux/kernel/download/linux-digilent already exists. WARNING: Not fetching from remote url! WARNING: If you want to get a fresh copy, please run 'petalinux-build -c <COMPONENT> -x mrproper' WARNING: /home/izumi/Digilent-Zybo-Linux-BD-v2015.4/build/linux/u-boot/download/u-boot-digilent already exists. WARNING: Not fetching from remote url! WARNING: If you want to get a fresh copy, please run 'petalinux-build -c <COMPONENT> -x mrproper' INFO: Building linux [INFO ] pre-build linux/rootfs/console-blank [INFO ] pre-build linux/rootfs/fwupgrade (skip) [INFO ] install linux/kernel [INFO ] Package HDF bitstream webtalk failed:PetaLinux statistics:extra lines detected:notsent_nofile! webtalk failed:Failed to get PetaLinux usage statistics! izumi@rsl-op780w7-03:~/Digilent-Zybo-Linux-BD-v2015.4$ tail build/build.log [ALL ] petalinux-reloc-blob -l 0 -i /home/izumi/Digilent-Zybo-Linux-BD-v2015.4/images/linux/u-boot.elf -o /home/izumi/Digilent-Zybo-Linux-BD-v2015.4/images/linux/u-boot-s [ALL ] INFO: Payload load address:0x04000000 [ALL ] INFO: Payload size: 434496 [ALL ] INFO: Jump offset:0x00000000 [ALL ] [ -d "/home/izumi/Digilent-Zybo-Linux-BD-v2015.4/images/linux/" ] || mkdir -p "/home/izumi/Digilent-Zybo-Linux-BD-v2015.4/images/linux/" [INFO ] Package HDF bitstream [ALL ] hdf_file="/home/izumi/Digilent-Zybo-Linux-BD-v2015.4/subsystems/linux/hw-description/system.hdf"; if [ -f "${hdf_file}" ]; then bit_file=$(petalinux-util --find-hdf-bitstream --hdf-file "${hdf_file}"); if [ -n "${bit_file}" ]; then unzip -o "${hdf_file}" "${bit_file}" -d "/home/izumi/Digilent-Zybo-Linux-BD-v2015.4/images/linux/" > /dev/null; fi; else level=; if [ -z "${level}" ]; then level=0; fi; echo "No HDF is provided. Skip packaging bitstream." | log_progress INFO ${level}; fi [ALL ] tftpboot=$(grep -e "^CONFIG_SUBSYSTEM_TFTPBOOT_DIR=" "/home/izumi/Digilent-Zybo-Linux-BD-v2015.4/subsystems/linux/config" | awk -F "=" '{print $2}' | tr -d '"'); if [ "${TFTPDIR_DISABLE}" != "TRUE" ]; then rsync -a "/home/izumi/Digilent-Zybo-Linux-BD-v2015.4/images/linux"/* "${tftpboot}/"; if [ ! $? -eq 0 ]; then level=; if [ -z "${level}" ]; then level=0; fi; echo "Failed to copy images to TFTPBOOT ${tftpboot}" | log_progress INFO ${level}; fi; fi [ALL ] make[1]: Leaving directory `/home/izumi/Digilent-Zybo-Linux-BD-v2015.4/build/linux' [ALL ] make: Leaving directory `/home/izumi/Digilent-Zybo-Linux-BD-v2015.4/build/linux'
  14. Dear BKallaher, Thanks so much for your kind help. Following your instruction, I have apt-got and installed the 32bit libraries and tried again. But unfortunately the result is the same. I have deleted the project folder first and created, configured, and built the project again. The build.log indicates the same error about miiphy_reset. Should I re-install PetaLinux tools after installation of the 32bit libraries? Or, I would like to welcome another options and/or comments for the trouble. Thanks in advance. Best regards, Tom IZUMI
  15. Dear Experts, I am 3days beginner of petalinux and would like to ask for help about petalinux for ZYBO. I have tried to build petalinux for ZYBO but failed as the attached. It would be much appreciated if you would kindly give me some help, hints, comments, and/or pointers. Thanks in advance. Best regards, Tom IZUMI ---------------------------------------------------------------- Here is the list of tools and versions. * Ubuntu 14.04.4 LTS (GNU/Linux 3.13.0-87-generic x86_64) * Vivado 2015.4 * petalinux-v2016.2-final * Digilent-Zybo-Linux-BD-v2015.4.bsp The commands are as follows: $ petalinux-create -t project -s /opt/Xilinx/Digilent-Zybo-Linux-BD-v2015.4.bsp (skip...successfully done.) $ petalinux-build WARNING: Your PetaLinux project was last modified by PetaLinux SDK version "2015.4", WARNING: however, you are using PetaLinux SDK version "2016.2". Please input "y" to continue. Otherwise it will exit![n]y (skip...First build without extra configuration is successfully done.) (BOOT.BIN and image.ub work well on my ZYBO) $ petalinuc-config -c rootfs (select dropbear-openssh-sftp-server and save config.) (skip...it seems to be successfully done.) $ petalinux-build INFO: Checking component... INFO: Generating make files and build linux INFO: Generating make files for the subcomponents of linux WARNING: /home/izumi/pltest/Digilent-Zybo-Linux-BD-v2015.4/build/linux/kernel/download/linux-digilent already exists. WARNING: Not fetching from remote url! WARNING: If you want to get a fresh copy, please run 'petalinux-build -c <COMPONENT> -x mrproper' WARNING: /home/izumi/pltest/Digilent-Zybo-Linux-BD-v2015.4/build/linux/u-boot/download/u-boot-digilent already exists. WARNING: Not fetching from remote url! WARNING: If you want to get a fresh copy, please run 'petalinux-build -c <COMPONENT> -x mrproper' INFO: Building linux (skip) [INFO ] build linux/u-boot [ERROR] make[3]: *** [u-boot] Error 1 [ERROR] make[2]: *** [sub-make] Error 2 [ERROR] make[1]: *** [/home/izumi/pltest/Digilent-Zybo-Linux-BD-v2015.4/build/linux/u-boot/u-boot-digilent/u-boot] Error 2 ERROR: Failed to build linux $ tail -12 build/build.log [ALL ] LD u-boot [ALL ] drivers/net/phy/built-in.o: In function `miiphy_reset': [ALL ] /home/izumi/pltest/Digilent-Zybo-Linux-BD-v2015.4/build/linux/u-boot/src/u-boot-digilent/drivers/net/phy/phy.c:792: multiple definition of `miiphy_reset' [ALL ] common/built-in.o::(.text.miiphy_reset+0x0): first defined here [ERROR] make[3]: *** [u-boot] Error 1 [ALL ] make[3]: Leaving directory `/home/izumi/pltest/Digilent-Zybo-Linux-BD-v2015.4/build/linux/u-boot/u-boot-digilent' [ERROR] make[2]: *** [sub-make] Error 2 [ALL ] make[2]: Leaving directory `/home/izumi/pltest/Digilent-Zybo-Linux-BD-v2015.4/build/linux/u-boot/src/u-boot-digilent' [ERROR] make[1]: *** [/home/izumi/pltest/Digilent-Zybo-Linux-BD-v2015.4/build/linux/u-boot/u-boot-digilent/u-boot] Error 2 [ALL ] make[1]: Leaving directory `/home/izumi/pltest/Digilent-Zybo-Linux-BD-v2015.4/build/linux/u-boot' [ALL ] make: *** [sub_build_component_/none/u-boot/single/remote] Error 2 [ALL ] make: Leaving directory `/home/izumi/pltest/Digilent-Zybo-Linux-BD-v2015.4/build/linux'