Hi Eric,
I was able to get it to work as expected in the "develop" branch using a Docker container (with a little snag on python3). Of course, this doesn't answer the sudo question, sorry. I also "cheated" by mounting my host's copy of Vivado. Some commentary inline.
$ docker run --rm -it -v/opt/Xilinx:/opt/Xilinx:ro centos:7 bash
[root@07ca427b7db8 /]# yum install -y git epel-release
[root@07ca427b7db8 /]# mkdir work
[root@07ca427b7db8 /]# cd work/
[root@07ca427b7db8 work]# git clone https://github.com/opencpi/opencpi.git
[root@07ca427b7db8 work]# cd opencpi/
[root@07ca427b7db8 opencpi]# git checkout develop
[root@07ca427b7db8 opencpi]# ./projects/core/rcc/platforms/centos7/centos7-packages.sh yumlist | xargs yum install -y
[root@07ca427b7db8 opencpi]# ln -s /usr/bin/python3.4 /usr/bin/python3
[root@07ca427b7db8 opencpi]# make exports
[root@07ca427b7db8 opencpi]# . ./exports/opencpi-setup.sh -v -r
This opencpi-setup.sh script is located at:
/work/opencpi/./exports/opencpi-setup.sh
OCPI_CDK_DIR is being set to be /work/opencpi/exports.
Determining the OpenCPI platform we are running on...
opencpi-setup.sh: /opt/opencpi/prerequisites does not exist. The installation/build of OpenCPI is incomplete.
[root@07ca427b7db8 opencpi]# make prerequisites
[root@07ca427b7db8 opencpi]# make prerequisites Platform=xilinx13_4 # Had some problems with rsync mirror but eventually got it
[root@07ca427b7db8 opencpi]# make Platforms="centos7 zed xilinx13_4"
[root@07ca427b7db8 opencpi]# rmdir prerequisites # was empty dir?
[root@07ca427b7db8 opencpi]# ln -s /opt/opencpi/prerequisites
[root@07ca427b7db8 opencpi]# make Platforms="centos7 zed xilinx13_4"
[root@07ca427b7db8 opencpi]# make deploy Platform=zed:xilinx13_4
Updating exports for platforms: zed:xilinx13_4
Using extra exports file for platform zed: /work/opencpi/exports/../project-registry/ocpi.assets/hdl/platforms/zed/zed.exports
Adding files for sw platform: xilinx13_4
Adding files for hw platform: zed
[root@07ca427b7db8 opencpi]# ll exports/zed
total 0
drwxr-xr-x. 3 root root 42 Apr 15 17:40 xilinx13_3
drwxr-xr-x. 3 root root 42 Apr 15 17:42 xilinx13_4
drwxr-xr-x. 4 root root 54 Apr 15 17:42 zed-deploy
[root@07ca427b7db8 opencpi]# ll exports/zed/zed-deploy/
total 0
drwxr-xr-x. 2 root root 42 Apr 15 17:42 host-udev-rules
drwxr-xr-x. 3 root root 98 Apr 15 17:42 sdcard-xilinx13_4
[root@07ca427b7db8 opencpi]# ll exports/zed/zed-deploy/sdcard-xilinx13_4/
total 9944
-rw-r--r--. 1 root root 371388 Apr 15 17:42 boot.bin
-rw-r--r--. 1 root root 7495 Apr 15 17:42 devicetree.dtb
drwxr-xr-x. 5 root root 280 Apr 15 17:42 opencpi
-rw-r--r--. 1 root root 3129808 Apr 15 17:42 uImage
-rw-r--r--. 1 root root 6666042 Apr 15 17:42 uramdisk.image.gz
We're running out of ideas on what we can do to help you along. Each step should tell if you there are any concerns.
Aaron
From: discuss discuss-bounces@lists.opencpi.org on behalf of Chris Hinkey chinkey@geontech.onmicrosoft.com
Sent: Monday, April 15, 2019 08:17
To: Paulz, Eric; discuss@lists.opencpi.org
Subject: Re: [Discuss OpenCPI] RCC Platform Development
might be something to do with using sudo for everything. I would try untaring in a directory that is owned by your user instead of root.
From: Paulz, Eric epaulz@vt.edu
Sent: Friday, April 12, 2019 2:42 PM
To: Chris Hinkey; discuss@lists.opencpi.org
Subject: Re: [Discuss OpenCPI] RCC Platform Development
I followed your exact steps (with a fresh version of the framework) and I'm still getting the same thing. Not really sure what is going on...
1030 sudo tar xzf OpenCPI-2018.Q4-v1.4.0.tar.gz
1031 cd opencpi-OpenCPI-2018.Q4-v1.4.0/
1032 sudo make exports
1033 ls
1034 . exports/opencpi-setup.sh -r
1035 env | grep OCPI
1036 sudo make prerequisites Platforms=centos7
1037 ll
1038 sudo make cleaneverything
1039 sudo make prerequisites Platforms=centos7
1040 ll
1041 rm -rf prerequisites
1042 sudo rm -rf prerequisites
1043 sudo make prerequisites Platforms=centos7
1044 sudo make prerequisites Platforms=xilinx13_4
1045 sudo make; sudo make Platform=xilinx13_4; sudo make Platform=zed
1046 sudo make deploy Platform=zed:xilinx13_4
1047 ll
1048 ll exports
1049 ll exports/zed
1050 history
[epaulz@hume-crc-183 opencpi-OpenCPI-2018.Q4-v1.4.0]$ ll exports/zed
total 0
lrwxrwxrwx 1 root root 36 Apr 12 14:34 system.xml -> ../../platforms/zynq/zynq_system.xml
drwxr-xr-x 2 root root 31 Apr 12 14:34 udev-rules
From: Chris Hinkey chinkey@geontech.onmicrosoft.com
Sent: Friday, April 12, 2019 1:13:43 PM
To: Paulz, Eric; discuss@lists.opencpi.org
Subject: Re: [Discuss OpenCPI] RCC Platform Development
hmmm... I grabbed a clean version of the framework and got the following results:
1021 make exports
1022 . exports/opencpi-setup.sh -r
1023 make prerequisites Platforms=centos7
1024 ll
1025 make cleaneverything
1026 make prerequisites Platforms=centos7
1027 ll
1028 rm -rf prerequisites
1029 make prerequisites Platforms=centos7
1030 make prerequisites Platforms=xilinx13_4
1031 make; make Platform=xilinx13_4; make Platform=zed
1032 make deploy Platform=zed:xilinx13_4
1033 ll
1034 cd exports/zed/zed-deploy/
1035 ls
1036 history
chris.hinkey@opencpi (v1.4.0gh =)$ ll exports/zed/
total 0
lrwxrwxrwx. 1 chris.hinkey chris.hinkey 36 Apr 12 12:09 system.xml -> ../../platforms/zynq/zynq_system.xml
drwxr-xr-x. 2 chris.hinkey chris.hinkey 31 Apr 12 12:09 udev-rules
drwxr-xr-x. 4 chris.hinkey chris.hinkey 54 Apr 12 12:23 zed-deploy
From: Paulz, Eric epaulz@vt.edu
Sent: Friday, April 12, 2019 11:42 AM
To: Chris Hinkey; discuss@lists.opencpi.org
Subject: RE: [Discuss OpenCPI] RCC Platform Development
I am using an Ubuntu machine to SSH into a more powerful machine that runs CentOS 7, which we are using for development.
From: Chris Hinkey chinkey@geontech.onmicrosoft.com
Sent: Friday, April 12, 2019 11:40 AM
To: Paulz, Eric epaulz@vt.edu; discuss@lists.opencpi.org
Subject: Re: [Discuss OpenCPI] RCC Platform Development
that image makes me think that you are on an ubuntu operating system is this the case?
From: Paulz, Eric <epaulz@vt.edumailto:epaulz@vt.edu>
Sent: Friday, April 12, 2019 11:15 AM
To: Chris Hinkey; discuss@lists.opencpi.orgmailto:discuss@lists.opencpi.org
Subject: Re: [Discuss OpenCPI] RCC Platform Development
[cid:image001.png@01D4F124.C80D52A0]
From: Chris Hinkey <chinkey@geontech.onmicrosoft.commailto:chinkey@geontech.onmicrosoft.com>
Sent: Friday, April 12, 2019 11:11:04 AM
To: Paulz, Eric; discuss@lists.opencpi.orgmailto:discuss@lists.opencpi.org
Subject: Re: [Discuss OpenCPI] RCC Platform Development
can you show me the output of the tree command in the "zed" directory?
From: Paulz, Eric <epaulz@vt.edumailto:epaulz@vt.edu>
Sent: Friday, April 12, 2019 10:18 AM
To: Chris Hinkey; discuss@lists.opencpi.orgmailto:discuss@lists.opencpi.org
Subject: RE: [Discuss OpenCPI] RCC Platform Development
Good point, I’ll reply all from now on.
I ran through the process again and sourced the script directly from exports but with the same result. I see separate directories in exports for each sw and hw platform I’ve built for but nothing about an SD card in any of them.
From: Chris Hinkey <chinkey@geontech.onmicrosoft.commailto:chinkey@geontech.onmicrosoft.com>
Sent: Friday, April 12, 2019 10:09 AM
To: Paulz, Eric <epaulz@vt.edumailto:epaulz@vt.edu>; discuss@lists.opencpi.orgmailto:discuss@lists.opencpi.org
Subject: Re: [Discuss OpenCPI] RCC Platform Development
sometimes that script acts strange if its not ran from the exports location. so give "source ./exports/opencpi-setup.sh –s –r" and rerun the make commands a shot.
also if you respond to discuss@lists.opencpi.orgmailto:discuss@lists.opencpi.org as well as me more smart people will be able to answer you questions
From: Paulz, Eric <epaulz@vt.edumailto:epaulz@vt.edu>
Sent: Friday, April 12, 2019 10:01 AM
To: Chris Hinkey
Subject: RE: [Discuss OpenCPI] RCC Platform Development
Yes, I mistyped. I ran ‘source ./cdk/opencpi-setup.sh –s –r’ and confirmed I was pointing at my source build with ‘env | grep OCPI’. Then I ran all of the other make commands for good measure.
From: Chris Hinkey <chinkey@geontech.onmicrosoft.commailto:chinkey@geontech.onmicrosoft.com>
Sent: Friday, April 12, 2019 9:51 AM
To: Paulz, Eric <epaulz@vt.edumailto:epaulz@vt.edu>; discuss@lists.opencpi.orgmailto:discuss@lists.opencpi.org
Subject: Re: [Discuss OpenCPI] RCC Platform Development
ok that all seems right/reasonable
did you run the environment script by doing "source exports/ocpencpi-setup.sh -r"? This will change your enviroment (in your current shell) from pointing at the rpm install to the source install.
From: Paulz, Eric <epaulz@vt.edumailto:epaulz@vt.edu>
Sent: Friday, April 12, 2019 9:43 AM
To: Chris Hinkey
Subject: RE: [Discuss OpenCPI] RCC Platform Development
It looks like cdk is a symlink to exports and they are identical for me. So no I’m not seeing that path in either.
I downloaded the source code .tar.gz from https://github.com/opencpi/opencpi/releases. I unpacked and then built for centos7 and xilinx13_4 (make && make Platform=xilinx13_4). Then I ran ‘./cdk/opencpi-set.sh –s –reset’. Then I ran the commands from your previous email (make Platform=zed then make deploy Platform=zed:xilinx13_4). Unfortunately I don’t see anything in ./exports/zed/ other than ‘system.xml’ and ‘udev-rules’.
From: Chris Hinkey <chinkey@geontech.onmicrosoft.commailto:chinkey@geontech.onmicrosoft.com>
Sent: Friday, April 12, 2019 9:32 AM
To: Paulz, Eric <epaulz@vt.edumailto:epaulz@vt.edu>; discuss@lists.opencpi.orgmailto:discuss@lists.opencpi.org
Subject: Re: [Discuss OpenCPI] RCC Platform Development
I was expecting "make deploy Platform=zed:xilinx13_4" to create a folder in exports/zed/zed-deploy/sdcard-xilinx13_4/opencpi is that not the case?
From: Paulz, Eric <epaulz@vt.edumailto:epaulz@vt.edu>
Sent: Friday, April 12, 2019 9:27 AM
To: Chris Hinkey
Subject: RE: [Discuss OpenCPI] RCC Platform Development
Unfortunately I still don’t see the SD card directory. In ‘./cdk’ I see separate directories for ‘zed’ and ‘xilinx13_4’. ‘./cdk/zed/’ contains ‘system.xml’ and ‘udev-rules’, ‘./cdk/xilinx13_4’ contains some artifacts, binaries and setup scripts.
Sorry I’m having so many issues. I want to keep pursuing this because I think it will be very helpful for my project.
From: Chris Hinkey <chinkey@geontech.onmicrosoft.commailto:chinkey@geontech.onmicrosoft.com>
Sent: Friday, April 12, 2019 8:50 AM
To: Paulz, Eric <epaulz@vt.edumailto:epaulz@vt.edu>; discuss@lists.opencpi.orgmailto:discuss@lists.opencpi.org
Subject: Re: [Discuss OpenCPI] RCC Platform Development
So i think i missed a step all you should need to do is "make Platform=zed" then the make deploy command should work as i had expected before.
more lengthy explanation:
make prerequisites Platforms=centos7 make prerequisites Platforms=xilinx13_4
make Platform=zed
#mv: cannot stat ‘/tmp/tmp.MtgFaZ91Rr/zed/sdcard-xilinx13_4/opencpi/udev-rules/*’: No such file or directory
#rmdir: failed to remove ‘/tmp/tmp.MtgFaZ91Rr/zed/sdcard-xilinx13_4/opencpi/udev-rules’: No such file or directory
make deploy Platform=zed:xilinx13_4
From: Paulz, Eric <epaulz@vt.edumailto:epaulz@vt.edu>
Sent: Thursday, April 11, 2019 3:33 PM
To: Chris Hinkey
Subject: RE: [Discuss OpenCPI] RCC Platform Development
Thanks, this is very helpful.
I switched over to a source build. My source tree is built for both centos7 and xilinx13_4. I ran the command ‘make deploy Platform=zed:xilinx13_4’ from the top of the tree. However I don’t see the file path you said would be created. I see ‘exports/xilinx13_4/’ which has some artifacts and setup scripts, and I also see ‘exports/deploy/xilinx13_4/’ that contains ‘boot.bin’, ‘uImage’ and ‘uramdisk.image.gz’. I don’t see anything about an SD card.
From: Chris Hinkey <chinkey@geontech.onmicrosoft.commailto:chinkey@geontech.onmicrosoft.com>
Sent: Tuesday, April 9, 2019 3:49 PM
To: Paulz, Eric <epaulz@vt.edumailto:epaulz@vt.edu>; discuss@lists.opencpi.orgmailto:discuss@lists.opencpi.org
Subject: Re: [Discuss OpenCPI] RCC Platform Development
In order to do rcc platform development you will need to switch over to a source build to get access to the framework build system.
you basically need to port over the binaries that the framework builds this is what that section of the doc is trying to describe.
for example if i have a source tree that is built for xilinx13_3 and i run the command "make deploy Platform=matchstiq_z1:xilinx13_3"
this will put everything that is needed for standalone mode into a single folder in "exports/matchstiq_z1/matchstiq_z1-deploy/sdcard-xilinx13_3/opencpi"
you will need to specify a hdl platform even if you haven created yours yet I would recommend just running the command "make deploy Platform=matchstiq:erics_sw_platform" (after building the framework for your new software platform) this should give you what you would need to test the rcc side of things on your platform.
From: Paulz, Eric <epaulz@vt.edumailto:epaulz@vt.edu>
Sent: Tuesday, April 9, 2019 2:25 PM
To: Chris Hinkey
Subject: Re: [Discuss OpenCPI] RCC Platform Development
RPM, version 1.4
On Apr 9, 2019, at 14:00, Chris Hinkey <chinkey@geontech.onmicrosoft.commailto:chinkey@geontech.onmicrosoft.com> wrote:
trying to find the right people for help to answer your question. I'll get back to you shortly.
Are you using a source build tor rpm enviroment?
From: Paulz, Eric <epaulz@vt.edumailto:epaulz@vt.edu>
Sent: Tuesday, April 9, 2019 1:05 PM
To: Chris Hinkey
Subject: RE: [Discuss OpenCPI] RCC Platform Development
Thanks for your response, that does help. I have a quick follow-up question:
I have built a simple application and run is successfully on my development machine. I am now following the steps in 4.2.1 of the Platform Development Guide trying to create a ‘runtime’ and a ‘deployment’ package so that I can test it on a SDR board. The document seems to make the assumption that the development and embedded systems can share files over a network and this fulfills the ‘runtime’ aspect. Say the board I’m working with does not have network capabilities… what would be the best way to create a runtime/deployment package all in one and load the whole thing onto an SD card that the board can reference when trying to run an OpenCPI application?
Hope this makes sense and thanks in advance.
From: Chris Hinkey <chinkey@geontech.onmicrosoft.commailto:chinkey@geontech.onmicrosoft.com>
Sent: Thursday, April 4, 2019 2:07 PM
To: Paulz, Eric <epaulz@vt.edumailto:epaulz@vt.edu>; discuss@lists.opencpi.orgmailto:discuss@lists.opencpi.org
Subject: Re: [Discuss OpenCPI] RCC Platform Development
all the rcc platforms xilinx13_3/4 in the core project afre for embedded radios
one other place to look that might be useful to look is geontech's implementation of the xilinx18_2 rcc platform https://github.com/Geontech/sw_xilinx18_2
what you essentially need to do is to set the make file to point to your compiler and set any flags that are needed for this compiler then build the framework from source and move these executables to the platform to run them. In order for the build tools to recognize the new platform that you created the project that you created it in has to be registered in your project registry. one way to determine if the tools can see your platform at all is to use the command "ocpidev show rcc platforms"
The fact that the platforms we have use SD cards too boot is maybe a poor choice of words in the documentation. Outside of opencpi you have a way to boot your platform, you have a compiler to compile executables, and you have some way to get built executable on to the platform use those in order to complete your task.
hope this helps
From: discuss <discuss-bounces@lists.opencpi.orgmailto:discuss-bounces@lists.opencpi.org> on behalf of Paulz, Eric <epaulz@vt.edumailto:epaulz@vt.edu>
Sent: Thursday, April 4, 2019 1:41 PM
To: discuss@lists.opencpi.orgmailto:discuss@lists.opencpi.org
Subject: [Discuss OpenCPI] RCC Platform Development
Hello,
I am working on an RCC platform for an embedded target (AstroSDR) on which the existing OS must remain as is. The main challenge I'm facing is that all examples of enabling execution for GPP platforms recommend running Petalinux on the target, and all other examples of RCC platforms seem to be for development (I could be wrong on this). Another issue is that the board is not configured to boot from an SD card as is detailed in the Platform Development Guide. I attended the training workshop late last month and picked up some great tips, but I'm still struggling to get the platform to build properly so that I can test it out with some basic apps.
Are there any steps that I may be missing or existing cases similar to this that could be referenced?
Eric C. Paulz
Computer Engineer
Hume Center for National Security & Technology
epaulz@vt.edumailto:epaulz@vt.edumailto:epaulz@vt.edu
Office: 540-231-6180
Cell: 864-243-6767
Hi Aaron,
So that worked. I don't really feel like I did anything different though... why did switching to the 'develop' branch fix it for me when Chris was able to get it working using the same .tar file as me?
Anyway, thank you and thanks to Chris for bearing with me for so long.
From: Marasco, Aaron aaron.marasco@bia-boeing.com
Sent: Monday, April 15, 2019 1:52 PM
To: EXT-Hinkey, Chris (Geon Technologies) chinkey@geontech.onmicrosoft.com; Paulz, Eric epaulz@vt.edu; discuss@lists.opencpi.org
Subject: Re: [Discuss OpenCPI] RCC Platform Development
Hi Eric,
I was able to get it to work as expected in the "develop" branch using a Docker container (with a little snag on python3). Of course, this doesn't answer the sudo question, sorry. I also "cheated" by mounting my host's copy of Vivado. Some commentary inline.
$ docker run --rm -it -v/opt/Xilinx:/opt/Xilinx:ro centos:7 bash
[root@07ca427b7db8 /]# yum install -y git epel-release
[root@07ca427b7db8 /]# mkdir work
[root@07ca427b7db8 /]# cd work/
[root@07ca427b7db8 work]# git clone https://github.com/opencpi/opencpi.git
[root@07ca427b7db8 work]# cd opencpi/
[root@07ca427b7db8 opencpi]# git checkout develop
[root@07ca427b7db8 opencpi]# ./projects/core/rcc/platforms/centos7/centos7-packages.sh yumlist | xargs yum install -y
[root@07ca427b7db8 opencpi]# ln -s /usr/bin/python3.4 /usr/bin/python3
[root@07ca427b7db8 opencpi]# make exports
[root@07ca427b7db8 opencpi]# . ./exports/opencpi-setup.sh -v -r
This opencpi-setup.sh script is located at:
/work/opencpi/./exports/opencpi-setup.sh
OCPI_CDK_DIR is being set to be /work/opencpi/exports.
Determining the OpenCPI platform we are running on...
opencpi-setup.sh: /opt/opencpi/prerequisites does not exist. The installation/build of OpenCPI is incomplete.
[root@07ca427b7db8 opencpi]# make prerequisites
[root@07ca427b7db8 opencpi]# make prerequisites Platform=xilinx13_4 # Had some problems with rsync mirror but eventually got it
[root@07ca427b7db8 opencpi]# make Platforms="centos7 zed xilinx13_4"
[root@07ca427b7db8 opencpi]# rmdir prerequisites # was empty dir?
[root@07ca427b7db8 opencpi]# ln -s /opt/opencpi/prerequisites
[root@07ca427b7db8 opencpi]# make Platforms="centos7 zed xilinx13_4"
[root@07ca427b7db8 opencpi]# make deploy Platform=zed:xilinx13_4
Updating exports for platforms: zed:xilinx13_4
Using extra exports file for platform zed: /work/opencpi/exports/../project-registry/ocpi.assets/hdl/platforms/zed/zed.exports
Adding files for sw platform: xilinx13_4
Adding files for hw platform: zed
[root@07ca427b7db8 opencpi]# ll exports/zed
total 0
drwxr-xr-x. 3 root root 42 Apr 15 17:40 xilinx13_3
drwxr-xr-x. 3 root root 42 Apr 15 17:42 xilinx13_4
drwxr-xr-x. 4 root root 54 Apr 15 17:42 zed-deploy
[root@07ca427b7db8 opencpi]# ll exports/zed/zed-deploy/
total 0
drwxr-xr-x. 2 root root 42 Apr 15 17:42 host-udev-rules
drwxr-xr-x. 3 root root 98 Apr 15 17:42 sdcard-xilinx13_4
[root@07ca427b7db8 opencpi]# ll exports/zed/zed-deploy/sdcard-xilinx13_4/
total 9944
-rw-r--r--. 1 root root 371388 Apr 15 17:42 boot.bin
-rw-r--r--. 1 root root 7495 Apr 15 17:42 devicetree.dtb
drwxr-xr-x. 5 root root 280 Apr 15 17:42 opencpi
-rw-r--r--. 1 root root 3129808 Apr 15 17:42 uImage
-rw-r--r--. 1 root root 6666042 Apr 15 17:42 uramdisk.image.gz
We're running out of ideas on what we can do to help you along. Each step should tell if you there are any concerns.
Aaron
From: discuss <discuss-bounces@lists.opencpi.orgmailto:discuss-bounces@lists.opencpi.org> on behalf of Chris Hinkey <chinkey@geontech.onmicrosoft.commailto:chinkey@geontech.onmicrosoft.com>
Sent: Monday, April 15, 2019 08:17
To: Paulz, Eric; discuss@lists.opencpi.orgmailto:discuss@lists.opencpi.org
Subject: Re: [Discuss OpenCPI] RCC Platform Development
might be something to do with using sudo for everything. I would try untaring in a directory that is owned by your user instead of root.
From: Paulz, Eric <epaulz@vt.edumailto:epaulz@vt.edu>
Sent: Friday, April 12, 2019 2:42 PM
To: Chris Hinkey; discuss@lists.opencpi.orgmailto:discuss@lists.opencpi.org
Subject: Re: [Discuss OpenCPI] RCC Platform Development
I followed your exact steps (with a fresh version of the framework) and I'm still getting the same thing. Not really sure what is going on...
1030 sudo tar xzf OpenCPI-2018.Q4-v1.4.0.tar.gz
1031 cd opencpi-OpenCPI-2018.Q4-v1.4.0/
1032 sudo make exports
1033 ls
1034 . exports/opencpi-setup.sh -r
1035 env | grep OCPI
1036 sudo make prerequisites Platforms=centos7
1037 ll
1038 sudo make cleaneverything
1039 sudo make prerequisites Platforms=centos7
1040 ll
1041 rm -rf prerequisites
1042 sudo rm -rf prerequisites
1043 sudo make prerequisites Platforms=centos7
1044 sudo make prerequisites Platforms=xilinx13_4
1045 sudo make; sudo make Platform=xilinx13_4; sudo make Platform=zed
1046 sudo make deploy Platform=zed:xilinx13_4
1047 ll
1048 ll exports
1049 ll exports/zed
1050 history
[epaulz@hume-crc-183 opencpi-OpenCPI-2018.Q4-v1.4.0]$ ll exports/zed
total 0
lrwxrwxrwx 1 root root 36 Apr 12 14:34 system.xml -> ../../platforms/zynq/zynq_system.xml
drwxr-xr-x 2 root root 31 Apr 12 14:34 udev-rules
From: Chris Hinkey <chinkey@geontech.onmicrosoft.commailto:chinkey@geontech.onmicrosoft.com>
Sent: Friday, April 12, 2019 1:13:43 PM
To: Paulz, Eric; discuss@lists.opencpi.orgmailto:discuss@lists.opencpi.org
Subject: Re: [Discuss OpenCPI] RCC Platform Development
hmmm... I grabbed a clean version of the framework and got the following results:
1021 make exports
1022 . exports/opencpi-setup.sh -r
1023 make prerequisites Platforms=centos7
1024 ll
1025 make cleaneverything
1026 make prerequisites Platforms=centos7
1027 ll
1028 rm -rf prerequisites
1029 make prerequisites Platforms=centos7
1030 make prerequisites Platforms=xilinx13_4
1031 make; make Platform=xilinx13_4; make Platform=zed
1032 make deploy Platform=zed:xilinx13_4
1033 ll
1034 cd exports/zed/zed-deploy/
1035 ls
1036 history
chris.hinkey@opencpimailto:chris.hinkey@opencpi (v1.4.0gh =)$ ll exports/zed/
total 0
lrwxrwxrwx. 1 chris.hinkey chris.hinkey 36 Apr 12 12:09 system.xml -> ../../platforms/zynq/zynq_system.xml
drwxr-xr-x. 2 chris.hinkey chris.hinkey 31 Apr 12 12:09 udev-rules
drwxr-xr-x. 4 chris.hinkey chris.hinkey 54 Apr 12 12:23 zed-deploy
From: Paulz, Eric <epaulz@vt.edumailto:epaulz@vt.edu>
Sent: Friday, April 12, 2019 11:42 AM
To: Chris Hinkey; discuss@lists.opencpi.orgmailto:discuss@lists.opencpi.org
Subject: RE: [Discuss OpenCPI] RCC Platform Development
I am using an Ubuntu machine to SSH into a more powerful machine that runs CentOS 7, which we are using for development.
From: Chris Hinkey <chinkey@geontech.onmicrosoft.commailto:chinkey@geontech.onmicrosoft.com>
Sent: Friday, April 12, 2019 11:40 AM
To: Paulz, Eric <epaulz@vt.edumailto:epaulz@vt.edu>; discuss@lists.opencpi.orgmailto:discuss@lists.opencpi.org
Subject: Re: [Discuss OpenCPI] RCC Platform Development
that image makes me think that you are on an ubuntu operating system is this the case?
From: Paulz, Eric <epaulz@vt.edu<mailto:epaulz@vt.edumailto:epaulz@vt.edu%3cmailto:epaulz@vt.edu>>
Sent: Friday, April 12, 2019 11:15 AM
To: Chris Hinkey; discuss@lists.opencpi.org<mailto:discuss@lists.opencpi.orgmailto:discuss@lists.opencpi.org%3cmailto:discuss@lists.opencpi.org>
Subject: Re: [Discuss OpenCPI] RCC Platform Development
[cid:image001.png@01D4F124.C80D52A0]
From: Chris Hinkey <chinkey@geontech.onmicrosoft.com<mailto:chinkey@geontech.onmicrosoft.commailto:chinkey@geontech.onmicrosoft.com%3cmailto:chinkey@geontech.onmicrosoft.com>>
Sent: Friday, April 12, 2019 11:11:04 AM
To: Paulz, Eric; discuss@lists.opencpi.org<mailto:discuss@lists.opencpi.orgmailto:discuss@lists.opencpi.org%3cmailto:discuss@lists.opencpi.org>
Subject: Re: [Discuss OpenCPI] RCC Platform Development
can you show me the output of the tree command in the "zed" directory?
From: Paulz, Eric <epaulz@vt.edu<mailto:epaulz@vt.edumailto:epaulz@vt.edu%3cmailto:epaulz@vt.edu>>
Sent: Friday, April 12, 2019 10:18 AM
To: Chris Hinkey; discuss@lists.opencpi.org<mailto:discuss@lists.opencpi.orgmailto:discuss@lists.opencpi.org%3cmailto:discuss@lists.opencpi.org>
Subject: RE: [Discuss OpenCPI] RCC Platform Development
Good point, I'll reply all from now on.
I ran through the process again and sourced the script directly from exports but with the same result. I see separate directories in exports for each sw and hw platform I've built for but nothing about an SD card in any of them.
From: Chris Hinkey <chinkey@geontech.onmicrosoft.com<mailto:chinkey@geontech.onmicrosoft.commailto:chinkey@geontech.onmicrosoft.com%3cmailto:chinkey@geontech.onmicrosoft.com>>
Sent: Friday, April 12, 2019 10:09 AM
To: Paulz, Eric <epaulz@vt.edu<mailto:epaulz@vt.edumailto:epaulz@vt.edu%3cmailto:epaulz@vt.edu>>; discuss@lists.opencpi.org<mailto:discuss@lists.opencpi.orgmailto:discuss@lists.opencpi.org%3cmailto:discuss@lists.opencpi.org>
Subject: Re: [Discuss OpenCPI] RCC Platform Development
sometimes that script acts strange if its not ran from the exports location. so give "source ./exports/opencpi-setup.sh -s -r" and rerun the make commands a shot.
also if you respond to discuss@lists.opencpi.org<mailto:discuss@lists.opencpi.orgmailto:discuss@lists.opencpi.org%3cmailto:discuss@lists.opencpi.org> as well as me more smart people will be able to answer you questions
From: Paulz, Eric <epaulz@vt.edu<mailto:epaulz@vt.edumailto:epaulz@vt.edu%3cmailto:epaulz@vt.edu>>
Sent: Friday, April 12, 2019 10:01 AM
To: Chris Hinkey
Subject: RE: [Discuss OpenCPI] RCC Platform Development
Yes, I mistyped. I ran 'source ./cdk/opencpi-setup.sh -s -r' and confirmed I was pointing at my source build with 'env | grep OCPI'. Then I ran all of the other make commands for good measure.
From: Chris Hinkey <chinkey@geontech.onmicrosoft.com<mailto:chinkey@geontech.onmicrosoft.commailto:chinkey@geontech.onmicrosoft.com%3cmailto:chinkey@geontech.onmicrosoft.com>>
Sent: Friday, April 12, 2019 9:51 AM
To: Paulz, Eric <epaulz@vt.edu<mailto:epaulz@vt.edumailto:epaulz@vt.edu%3cmailto:epaulz@vt.edu>>; discuss@lists.opencpi.org<mailto:discuss@lists.opencpi.orgmailto:discuss@lists.opencpi.org%3cmailto:discuss@lists.opencpi.org>
Subject: Re: [Discuss OpenCPI] RCC Platform Development
ok that all seems right/reasonable
did you run the environment script by doing "source exports/ocpencpi-setup.sh -r"? This will change your enviroment (in your current shell) from pointing at the rpm install to the source install.
From: Paulz, Eric <epaulz@vt.edu<mailto:epaulz@vt.edumailto:epaulz@vt.edu%3cmailto:epaulz@vt.edu>>
Sent: Friday, April 12, 2019 9:43 AM
To: Chris Hinkey
Subject: RE: [Discuss OpenCPI] RCC Platform Development
It looks like cdk is a symlink to exports and they are identical for me. So no I'm not seeing that path in either.
I downloaded the source code .tar.gz from https://github.com/opencpi/opencpi/releases. I unpacked and then built for centos7 and xilinx13_4 (make && make Platform=xilinx13_4). Then I ran './cdk/opencpi-set.sh -s -reset'. Then I ran the commands from your previous email (make Platform=zed then make deploy Platform=zed:xilinx13_4). Unfortunately I don't see anything in ./exports/zed/ other than 'system.xml' and 'udev-rules'.
From: Chris Hinkey <chinkey@geontech.onmicrosoft.com<mailto:chinkey@geontech.onmicrosoft.commailto:chinkey@geontech.onmicrosoft.com%3cmailto:chinkey@geontech.onmicrosoft.com>>
Sent: Friday, April 12, 2019 9:32 AM
To: Paulz, Eric <epaulz@vt.edu<mailto:epaulz@vt.edumailto:epaulz@vt.edu%3cmailto:epaulz@vt.edu>>; discuss@lists.opencpi.org<mailto:discuss@lists.opencpi.orgmailto:discuss@lists.opencpi.org%3cmailto:discuss@lists.opencpi.org>
Subject: Re: [Discuss OpenCPI] RCC Platform Development
I was expecting "make deploy Platform=zed:xilinx13_4" to create a folder in exports/zed/zed-deploy/sdcard-xilinx13_4/opencpi is that not the case?
From: Paulz, Eric <epaulz@vt.edu<mailto:epaulz@vt.edumailto:epaulz@vt.edu%3cmailto:epaulz@vt.edu>>
Sent: Friday, April 12, 2019 9:27 AM
To: Chris Hinkey
Subject: RE: [Discuss OpenCPI] RCC Platform Development
Unfortunately I still don't see the SD card directory. In './cdk' I see separate directories for 'zed' and 'xilinx13_4'. './cdk/zed/' contains 'system.xml' and 'udev-rules', './cdk/xilinx13_4' contains some artifacts, binaries and setup scripts.
Sorry I'm having so many issues. I want to keep pursuing this because I think it will be very helpful for my project.
From: Chris Hinkey <chinkey@geontech.onmicrosoft.com<mailto:chinkey@geontech.onmicrosoft.commailto:chinkey@geontech.onmicrosoft.com%3cmailto:chinkey@geontech.onmicrosoft.com>>
Sent: Friday, April 12, 2019 8:50 AM
To: Paulz, Eric <epaulz@vt.edu<mailto:epaulz@vt.edumailto:epaulz@vt.edu%3cmailto:epaulz@vt.edu>>; discuss@lists.opencpi.org<mailto:discuss@lists.opencpi.orgmailto:discuss@lists.opencpi.org%3cmailto:discuss@lists.opencpi.org>
Subject: Re: [Discuss OpenCPI] RCC Platform Development
So i think i missed a step all you should need to do is "make Platform=zed" then the make deploy command should work as i had expected before.
more lengthy explanation:
make prerequisites Platforms=centos7 make prerequisites Platforms=xilinx13_4
make Platform=zed
#mv: cannot stat '/tmp/tmp.MtgFaZ91Rr/zed/sdcard-xilinx13_4/opencpi/udev-rules/*': No such file or directory
#rmdir: failed to remove '/tmp/tmp.MtgFaZ91Rr/zed/sdcard-xilinx13_4/opencpi/udev-rules': No such file or directory
make deploy Platform=zed:xilinx13_4
From: Paulz, Eric <epaulz@vt.edu<mailto:epaulz@vt.edumailto:epaulz@vt.edu%3cmailto:epaulz@vt.edu>>
Sent: Thursday, April 11, 2019 3:33 PM
To: Chris Hinkey
Subject: RE: [Discuss OpenCPI] RCC Platform Development
Thanks, this is very helpful.
I switched over to a source build. My source tree is built for both centos7 and xilinx13_4. I ran the command 'make deploy Platform=zed:xilinx13_4' from the top of the tree. However I don't see the file path you said would be created. I see 'exports/xilinx13_4/' which has some artifacts and setup scripts, and I also see 'exports/deploy/xilinx13_4/' that contains 'boot.bin', 'uImage' and 'uramdisk.image.gz'. I don't see anything about an SD card.
From: Chris Hinkey <chinkey@geontech.onmicrosoft.com<mailto:chinkey@geontech.onmicrosoft.commailto:chinkey@geontech.onmicrosoft.com%3cmailto:chinkey@geontech.onmicrosoft.com>>
Sent: Tuesday, April 9, 2019 3:49 PM
To: Paulz, Eric <epaulz@vt.edu<mailto:epaulz@vt.edumailto:epaulz@vt.edu%3cmailto:epaulz@vt.edu>>; discuss@lists.opencpi.org<mailto:discuss@lists.opencpi.orgmailto:discuss@lists.opencpi.org%3cmailto:discuss@lists.opencpi.org>
Subject: Re: [Discuss OpenCPI] RCC Platform Development
In order to do rcc platform development you will need to switch over to a source build to get access to the framework build system.
you basically need to port over the binaries that the framework builds this is what that section of the doc is trying to describe.
for example if i have a source tree that is built for xilinx13_3 and i run the command "make deploy Platform=matchstiq_z1:xilinx13_3"
this will put everything that is needed for standalone mode into a single folder in "exports/matchstiq_z1/matchstiq_z1-deploy/sdcard-xilinx13_3/opencpi"
you will need to specify a hdl platform even if you haven created yours yet I would recommend just running the command "make deploy Platform=matchstiq:erics_sw_platform" (after building the framework for your new software platform) this should give you what you would need to test the rcc side of things on your platform.
From: Paulz, Eric <epaulz@vt.edu<mailto:epaulz@vt.edumailto:epaulz@vt.edu%3cmailto:epaulz@vt.edu>>
Sent: Tuesday, April 9, 2019 2:25 PM
To: Chris Hinkey
Subject: Re: [Discuss OpenCPI] RCC Platform Development
RPM, version 1.4
On Apr 9, 2019, at 14:00, Chris Hinkey <chinkey@geontech.onmicrosoft.com<mailto:chinkey@geontech.onmicrosoft.commailto:chinkey@geontech.onmicrosoft.com%3cmailto:chinkey@geontech.onmicrosoft.com>> wrote:
trying to find the right people for help to answer your question. I'll get back to you shortly.
Are you using a source build tor rpm enviroment?
From: Paulz, Eric <epaulz@vt.edu<mailto:epaulz@vt.edumailto:epaulz@vt.edu%3cmailto:epaulz@vt.edu>>
Sent: Tuesday, April 9, 2019 1:05 PM
To: Chris Hinkey
Subject: RE: [Discuss OpenCPI] RCC Platform Development
Thanks for your response, that does help. I have a quick follow-up question:
I have built a simple application and run is successfully on my development machine. I am now following the steps in 4.2.1 of the Platform Development Guide trying to create a 'runtime' and a 'deployment' package so that I can test it on a SDR board. The document seems to make the assumption that the development and embedded systems can share files over a network and this fulfills the 'runtime' aspect. Say the board I'm working with does not have network capabilities... what would be the best way to create a runtime/deployment package all in one and load the whole thing onto an SD card that the board can reference when trying to run an OpenCPI application?
Hope this makes sense and thanks in advance.
From: Chris Hinkey <chinkey@geontech.onmicrosoft.com<mailto:chinkey@geontech.onmicrosoft.commailto:chinkey@geontech.onmicrosoft.com%3cmailto:chinkey@geontech.onmicrosoft.com>>
Sent: Thursday, April 4, 2019 2:07 PM
To: Paulz, Eric <epaulz@vt.edu<mailto:epaulz@vt.edumailto:epaulz@vt.edu%3cmailto:epaulz@vt.edu>>; discuss@lists.opencpi.org<mailto:discuss@lists.opencpi.orgmailto:discuss@lists.opencpi.org%3cmailto:discuss@lists.opencpi.org>
Subject: Re: [Discuss OpenCPI] RCC Platform Development
all the rcc platforms xilinx13_3/4 in the core project afre for embedded radios
one other place to look that might be useful to look is geontech's implementation of the xilinx18_2 rcc platform https://github.com/Geontech/sw_xilinx18_2
what you essentially need to do is to set the make file to point to your compiler and set any flags that are needed for this compiler then build the framework from source and move these executables to the platform to run them. In order for the build tools to recognize the new platform that you created the project that you created it in has to be registered in your project registry. one way to determine if the tools can see your platform at all is to use the command "ocpidev show rcc platforms"
The fact that the platforms we have use SD cards too boot is maybe a poor choice of words in the documentation. Outside of opencpi you have a way to boot your platform, you have a compiler to compile executables, and you have some way to get built executable on to the platform use those in order to complete your task.
hope this helps
From: discuss <discuss-bounces@lists.opencpi.org<mailto:discuss-bounces@lists.opencpi.orgmailto:discuss-bounces@lists.opencpi.org%3cmailto:discuss-bounces@lists.opencpi.org>> on behalf of Paulz, Eric <epaulz@vt.edu<mailto:epaulz@vt.edumailto:epaulz@vt.edu%3cmailto:epaulz@vt.edu>>
Sent: Thursday, April 4, 2019 1:41 PM
To: discuss@lists.opencpi.org<mailto:discuss@lists.opencpi.orgmailto:discuss@lists.opencpi.org%3cmailto:discuss@lists.opencpi.org>
Subject: [Discuss OpenCPI] RCC Platform Development
Hello,
I am working on an RCC platform for an embedded target (AstroSDR) on which the existing OS must remain as is. The main challenge I'm facing is that all examples of enabling execution for GPP platforms recommend running Petalinux on the target, and all other examples of RCC platforms seem to be for development (I could be wrong on this). Another issue is that the board is not configured to boot from an SD card as is detailed in the Platform Development Guide. I attended the training workshop late last month and picked up some great tips, but I'm still struggling to get the platform to build properly so that I can test it out with some basic apps.
Are there any steps that I may be missing or existing cases similar to this that could be referenced?
Eric C. Paulz
Computer Engineer
Hume Center for National Security & Technology
epaulz@vt.edumailto:epaulz@vt.edu<mailto:epaulz@vt.edumailto:epaulz@vt.edu%3e%3cmailto:epaulz@vt.edu>
Office: 540-231-6180
Cell: 864-243-6767
There have been 100s of changes since that tarball release, so I cannot easily answer that, sorry. We're aiming to have 1.5 at the end of this month, and the "develop" that is on GitHub is effectively RC0 of 1.5.0. (Any other readers planning on jumping on that should note that the PCI interface is known to be broken and is fixed but not yet synchronized out.)
From: Paulz, Eric epaulz@vt.edu
Sent: Monday, April 15, 2019 15:01
To: Marasco, Aaron; EXT-Hinkey, Chris (Geon Technologies); discuss@lists.opencpi.org
Subject: RE: [Discuss OpenCPI] RCC Platform Development
Hi Aaron,
So that worked. I don’t really feel like I did anything different though… why did switching to the ‘develop’ branch fix it for me when Chris was able to get it working using the same .tar file as me?
Anyway, thank you and thanks to Chris for bearing with me for so long.
From: Marasco, Aaron aaron.marasco@bia-boeing.com
Sent: Monday, April 15, 2019 1:52 PM
To: EXT-Hinkey, Chris (Geon Technologies) chinkey@geontech.onmicrosoft.com; Paulz, Eric epaulz@vt.edu; discuss@lists.opencpi.org
Subject: Re: [Discuss OpenCPI] RCC Platform Development
Hi Eric,
I was able to get it to work as expected in the "develop" branch using a Docker container (with a little snag on python3). Of course, this doesn't answer the sudo question, sorry. I also "cheated" by mounting my host's copy of Vivado. Some commentary inline.
$ docker run --rm -it -v/opt/Xilinx:/opt/Xilinx:ro centos:7 bash
[root@07ca427b7db8 /]# yum install -y git epel-release
[root@07ca427b7db8 /]# mkdir work
[root@07ca427b7db8 /]# cd work/
[root@07ca427b7db8 work]# git clone https://github.com/opencpi/opencpi.git
[root@07ca427b7db8 work]# cd opencpi/
[root@07ca427b7db8 opencpi]# git checkout develop
[root@07ca427b7db8 opencpi]# ./projects/core/rcc/platforms/centos7/centos7-packages.sh yumlist | xargs yum install -y
[root@07ca427b7db8 opencpi]# ln -s /usr/bin/python3.4 /usr/bin/python3
[root@07ca427b7db8 opencpi]# make exports
[root@07ca427b7db8 opencpi]# . ./exports/opencpi-setup.sh -v -r
This opencpi-setup.sh script is located at:
/work/opencpi/./exports/opencpi-setup.sh
OCPI_CDK_DIR is being set to be /work/opencpi/exports.
Determining the OpenCPI platform we are running on...
opencpi-setup.sh: /opt/opencpi/prerequisites does not exist. The installation/build of OpenCPI is incomplete.
[root@07ca427b7db8 opencpi]# make prerequisites
[root@07ca427b7db8 opencpi]# make prerequisites Platform=xilinx13_4 # Had some problems with rsync mirror but eventually got it
[root@07ca427b7db8 opencpi]# make Platforms="centos7 zed xilinx13_4"
[root@07ca427b7db8 opencpi]# rmdir prerequisites # was empty dir?
[root@07ca427b7db8 opencpi]# ln -s /opt/opencpi/prerequisites
[root@07ca427b7db8 opencpi]# make Platforms="centos7 zed xilinx13_4"
[root@07ca427b7db8 opencpi]# make deploy Platform=zed:xilinx13_4
Updating exports for platforms: zed:xilinx13_4
Using extra exports file for platform zed: /work/opencpi/exports/../project-registry/ocpi.assets/hdl/platforms/zed/zed.exports
Adding files for sw platform: xilinx13_4
Adding files for hw platform: zed
[root@07ca427b7db8 opencpi]# ll exports/zed
total 0
drwxr-xr-x. 3 root root 42 Apr 15 17:40 xilinx13_3
drwxr-xr-x. 3 root root 42 Apr 15 17:42 xilinx13_4
drwxr-xr-x. 4 root root 54 Apr 15 17:42 zed-deploy
[root@07ca427b7db8 opencpi]# ll exports/zed/zed-deploy/
total 0
drwxr-xr-x. 2 root root 42 Apr 15 17:42 host-udev-rules
drwxr-xr-x. 3 root root 98 Apr 15 17:42 sdcard-xilinx13_4
[root@07ca427b7db8 opencpi]# ll exports/zed/zed-deploy/sdcard-xilinx13_4/
total 9944
-rw-r--r--. 1 root root 371388 Apr 15 17:42 boot.bin
-rw-r--r--. 1 root root 7495 Apr 15 17:42 devicetree.dtb
drwxr-xr-x. 5 root root 280 Apr 15 17:42 opencpi
-rw-r--r--. 1 root root 3129808 Apr 15 17:42 uImage
-rw-r--r--. 1 root root 6666042 Apr 15 17:42 uramdisk.image.gz
We're running out of ideas on what we can do to help you along. Each step should tell if you there are any concerns.
Aaron
From: discuss <discuss-bounces@lists.opencpi.orgmailto:discuss-bounces@lists.opencpi.org> on behalf of Chris Hinkey <chinkey@geontech.onmicrosoft.commailto:chinkey@geontech.onmicrosoft.com>
Sent: Monday, April 15, 2019 08:17
To: Paulz, Eric; discuss@lists.opencpi.orgmailto:discuss@lists.opencpi.org
Subject: Re: [Discuss OpenCPI] RCC Platform Development
might be something to do with using sudo for everything. I would try untaring in a directory that is owned by your user instead of root.
From: Paulz, Eric <epaulz@vt.edumailto:epaulz@vt.edu>
Sent: Friday, April 12, 2019 2:42 PM
To: Chris Hinkey; discuss@lists.opencpi.orgmailto:discuss@lists.opencpi.org
Subject: Re: [Discuss OpenCPI] RCC Platform Development
I followed your exact steps (with a fresh version of the framework) and I'm still getting the same thing. Not really sure what is going on...
1030 sudo tar xzf OpenCPI-2018.Q4-v1.4.0.tar.gz
1031 cd opencpi-OpenCPI-2018.Q4-v1.4.0/
1032 sudo make exports
1033 ls
1034 . exports/opencpi-setup.sh -r
1035 env | grep OCPI
1036 sudo make prerequisites Platforms=centos7
1037 ll
1038 sudo make cleaneverything
1039 sudo make prerequisites Platforms=centos7
1040 ll
1041 rm -rf prerequisites
1042 sudo rm -rf prerequisites
1043 sudo make prerequisites Platforms=centos7
1044 sudo make prerequisites Platforms=xilinx13_4
1045 sudo make; sudo make Platform=xilinx13_4; sudo make Platform=zed
1046 sudo make deploy Platform=zed:xilinx13_4
1047 ll
1048 ll exports
1049 ll exports/zed
1050 history
[epaulz@hume-crc-183 opencpi-OpenCPI-2018.Q4-v1.4.0]$ ll exports/zed
total 0
lrwxrwxrwx 1 root root 36 Apr 12 14:34 system.xml -> ../../platforms/zynq/zynq_system.xml
drwxr-xr-x 2 root root 31 Apr 12 14:34 udev-rules
From: Chris Hinkey <chinkey@geontech.onmicrosoft.commailto:chinkey@geontech.onmicrosoft.com>
Sent: Friday, April 12, 2019 1:13:43 PM
To: Paulz, Eric; discuss@lists.opencpi.orgmailto:discuss@lists.opencpi.org
Subject: Re: [Discuss OpenCPI] RCC Platform Development
hmmm... I grabbed a clean version of the framework and got the following results:
1021 make exports
1022 . exports/opencpi-setup.sh -r
1023 make prerequisites Platforms=centos7
1024 ll
1025 make cleaneverything
1026 make prerequisites Platforms=centos7
1027 ll
1028 rm -rf prerequisites
1029 make prerequisites Platforms=centos7
1030 make prerequisites Platforms=xilinx13_4
1031 make; make Platform=xilinx13_4; make Platform=zed
1032 make deploy Platform=zed:xilinx13_4
1033 ll
1034 cd exports/zed/zed-deploy/
1035 ls
1036 history
chris.hinkey@opencpimailto:chris.hinkey@opencpi (v1.4.0gh =)$ ll exports/zed/
total 0
lrwxrwxrwx. 1 chris.hinkey chris.hinkey 36 Apr 12 12:09 system.xml -> ../../platforms/zynq/zynq_system.xml
drwxr-xr-x. 2 chris.hinkey chris.hinkey 31 Apr 12 12:09 udev-rules
drwxr-xr-x. 4 chris.hinkey chris.hinkey 54 Apr 12 12:23 zed-deploy
From: Paulz, Eric <epaulz@vt.edumailto:epaulz@vt.edu>
Sent: Friday, April 12, 2019 11:42 AM
To: Chris Hinkey; discuss@lists.opencpi.orgmailto:discuss@lists.opencpi.org
Subject: RE: [Discuss OpenCPI] RCC Platform Development
I am using an Ubuntu machine to SSH into a more powerful machine that runs CentOS 7, which we are using for development.
From: Chris Hinkey <chinkey@geontech.onmicrosoft.commailto:chinkey@geontech.onmicrosoft.com>
Sent: Friday, April 12, 2019 11:40 AM
To: Paulz, Eric <epaulz@vt.edumailto:epaulz@vt.edu>; discuss@lists.opencpi.orgmailto:discuss@lists.opencpi.org
Subject: Re: [Discuss OpenCPI] RCC Platform Development
that image makes me think that you are on an ubuntu operating system is this the case?
From: Paulz, Eric <epaulz@vt.edu<mailto:epaulz@vt.edumailto:epaulz@vt.edu%3cmailto:epaulz@vt.edu>>
Sent: Friday, April 12, 2019 11:15 AM
To: Chris Hinkey; discuss@lists.opencpi.org<mailto:discuss@lists.opencpi.orgmailto:discuss@lists.opencpi.org%3cmailto:discuss@lists.opencpi.org>
Subject: Re: [Discuss OpenCPI] RCC Platform Development
[cid:image001.png@01D4F124.C80D52A0]
From: Chris Hinkey <chinkey@geontech.onmicrosoft.com<mailto:chinkey@geontech.onmicrosoft.commailto:chinkey@geontech.onmicrosoft.com%3cmailto:chinkey@geontech.onmicrosoft.com>>
Sent: Friday, April 12, 2019 11:11:04 AM
To: Paulz, Eric; discuss@lists.opencpi.org<mailto:discuss@lists.opencpi.orgmailto:discuss@lists.opencpi.org%3cmailto:discuss@lists.opencpi.org>
Subject: Re: [Discuss OpenCPI] RCC Platform Development
can you show me the output of the tree command in the "zed" directory?
From: Paulz, Eric <epaulz@vt.edu<mailto:epaulz@vt.edumailto:epaulz@vt.edu%3cmailto:epaulz@vt.edu>>
Sent: Friday, April 12, 2019 10:18 AM
To: Chris Hinkey; discuss@lists.opencpi.org<mailto:discuss@lists.opencpi.orgmailto:discuss@lists.opencpi.org%3cmailto:discuss@lists.opencpi.org>
Subject: RE: [Discuss OpenCPI] RCC Platform Development
Good point, I’ll reply all from now on.
I ran through the process again and sourced the script directly from exports but with the same result. I see separate directories in exports for each sw and hw platform I’ve built for but nothing about an SD card in any of them.
From: Chris Hinkey <chinkey@geontech.onmicrosoft.com<mailto:chinkey@geontech.onmicrosoft.commailto:chinkey@geontech.onmicrosoft.com%3cmailto:chinkey@geontech.onmicrosoft.com>>
Sent: Friday, April 12, 2019 10:09 AM
To: Paulz, Eric <epaulz@vt.edu<mailto:epaulz@vt.edumailto:epaulz@vt.edu%3cmailto:epaulz@vt.edu>>; discuss@lists.opencpi.org<mailto:discuss@lists.opencpi.orgmailto:discuss@lists.opencpi.org%3cmailto:discuss@lists.opencpi.org>
Subject: Re: [Discuss OpenCPI] RCC Platform Development
sometimes that script acts strange if its not ran from the exports location. so give "source ./exports/opencpi-setup.sh –s –r" and rerun the make commands a shot.
also if you respond to discuss@lists.opencpi.org<mailto:discuss@lists.opencpi.orgmailto:discuss@lists.opencpi.org%3cmailto:discuss@lists.opencpi.org> as well as me more smart people will be able to answer you questions
From: Paulz, Eric <epaulz@vt.edu<mailto:epaulz@vt.edumailto:epaulz@vt.edu%3cmailto:epaulz@vt.edu>>
Sent: Friday, April 12, 2019 10:01 AM
To: Chris Hinkey
Subject: RE: [Discuss OpenCPI] RCC Platform Development
Yes, I mistyped. I ran ‘source ./cdk/opencpi-setup.sh –s –r’ and confirmed I was pointing at my source build with ‘env | grep OCPI’. Then I ran all of the other make commands for good measure.
From: Chris Hinkey <chinkey@geontech.onmicrosoft.com<mailto:chinkey@geontech.onmicrosoft.commailto:chinkey@geontech.onmicrosoft.com%3cmailto:chinkey@geontech.onmicrosoft.com>>
Sent: Friday, April 12, 2019 9:51 AM
To: Paulz, Eric <epaulz@vt.edu<mailto:epaulz@vt.edumailto:epaulz@vt.edu%3cmailto:epaulz@vt.edu>>; discuss@lists.opencpi.org<mailto:discuss@lists.opencpi.orgmailto:discuss@lists.opencpi.org%3cmailto:discuss@lists.opencpi.org>
Subject: Re: [Discuss OpenCPI] RCC Platform Development
ok that all seems right/reasonable
did you run the environment script by doing "source exports/ocpencpi-setup.sh -r"? This will change your enviroment (in your current shell) from pointing at the rpm install to the source install.
From: Paulz, Eric <epaulz@vt.edu<mailto:epaulz@vt.edumailto:epaulz@vt.edu%3cmailto:epaulz@vt.edu>>
Sent: Friday, April 12, 2019 9:43 AM
To: Chris Hinkey
Subject: RE: [Discuss OpenCPI] RCC Platform Development
It looks like cdk is a symlink to exports and they are identical for me. So no I’m not seeing that path in either.
I downloaded the source code .tar.gz from https://github.com/opencpi/opencpi/releases. I unpacked and then built for centos7 and xilinx13_4 (make && make Platform=xilinx13_4). Then I ran ‘./cdk/opencpi-set.sh –s –reset’. Then I ran the commands from your previous email (make Platform=zed then make deploy Platform=zed:xilinx13_4). Unfortunately I don’t see anything in ./exports/zed/ other than ‘system.xml’ and ‘udev-rules’.
From: Chris Hinkey <chinkey@geontech.onmicrosoft.com<mailto:chinkey@geontech.onmicrosoft.commailto:chinkey@geontech.onmicrosoft.com%3cmailto:chinkey@geontech.onmicrosoft.com>>
Sent: Friday, April 12, 2019 9:32 AM
To: Paulz, Eric <epaulz@vt.edu<mailto:epaulz@vt.edumailto:epaulz@vt.edu%3cmailto:epaulz@vt.edu>>; discuss@lists.opencpi.org<mailto:discuss@lists.opencpi.orgmailto:discuss@lists.opencpi.org%3cmailto:discuss@lists.opencpi.org>
Subject: Re: [Discuss OpenCPI] RCC Platform Development
I was expecting "make deploy Platform=zed:xilinx13_4" to create a folder in exports/zed/zed-deploy/sdcard-xilinx13_4/opencpi is that not the case?
From: Paulz, Eric <epaulz@vt.edu<mailto:epaulz@vt.edumailto:epaulz@vt.edu%3cmailto:epaulz@vt.edu>>
Sent: Friday, April 12, 2019 9:27 AM
To: Chris Hinkey
Subject: RE: [Discuss OpenCPI] RCC Platform Development
Unfortunately I still don’t see the SD card directory. In ‘./cdk’ I see separate directories for ‘zed’ and ‘xilinx13_4’. ‘./cdk/zed/’ contains ‘system.xml’ and ‘udev-rules’, ‘./cdk/xilinx13_4’ contains some artifacts, binaries and setup scripts.
Sorry I’m having so many issues. I want to keep pursuing this because I think it will be very helpful for my project.
From: Chris Hinkey <chinkey@geontech.onmicrosoft.com<mailto:chinkey@geontech.onmicrosoft.commailto:chinkey@geontech.onmicrosoft.com%3cmailto:chinkey@geontech.onmicrosoft.com>>
Sent: Friday, April 12, 2019 8:50 AM
To: Paulz, Eric <epaulz@vt.edu<mailto:epaulz@vt.edumailto:epaulz@vt.edu%3cmailto:epaulz@vt.edu>>; discuss@lists.opencpi.org<mailto:discuss@lists.opencpi.orgmailto:discuss@lists.opencpi.org%3cmailto:discuss@lists.opencpi.org>
Subject: Re: [Discuss OpenCPI] RCC Platform Development
So i think i missed a step all you should need to do is "make Platform=zed" then the make deploy command should work as i had expected before.
more lengthy explanation:
make prerequisites Platforms=centos7 make prerequisites Platforms=xilinx13_4
make Platform=zed
#mv: cannot stat ‘/tmp/tmp.MtgFaZ91Rr/zed/sdcard-xilinx13_4/opencpi/udev-rules/*’: No such file or directory
#rmdir: failed to remove ‘/tmp/tmp.MtgFaZ91Rr/zed/sdcard-xilinx13_4/opencpi/udev-rules’: No such file or directory
make deploy Platform=zed:xilinx13_4
From: Paulz, Eric <epaulz@vt.edu<mailto:epaulz@vt.edumailto:epaulz@vt.edu%3cmailto:epaulz@vt.edu>>
Sent: Thursday, April 11, 2019 3:33 PM
To: Chris Hinkey
Subject: RE: [Discuss OpenCPI] RCC Platform Development
Thanks, this is very helpful.
I switched over to a source build. My source tree is built for both centos7 and xilinx13_4. I ran the command ‘make deploy Platform=zed:xilinx13_4’ from the top of the tree. However I don’t see the file path you said would be created. I see ‘exports/xilinx13_4/’ which has some artifacts and setup scripts, and I also see ‘exports/deploy/xilinx13_4/’ that contains ‘boot.bin’, ‘uImage’ and ‘uramdisk.image.gz’. I don’t see anything about an SD card.
From: Chris Hinkey <chinkey@geontech.onmicrosoft.com<mailto:chinkey@geontech.onmicrosoft.commailto:chinkey@geontech.onmicrosoft.com%3cmailto:chinkey@geontech.onmicrosoft.com>>
Sent: Tuesday, April 9, 2019 3:49 PM
To: Paulz, Eric <epaulz@vt.edu<mailto:epaulz@vt.edumailto:epaulz@vt.edu%3cmailto:epaulz@vt.edu>>; discuss@lists.opencpi.org<mailto:discuss@lists.opencpi.orgmailto:discuss@lists.opencpi.org%3cmailto:discuss@lists.opencpi.org>
Subject: Re: [Discuss OpenCPI] RCC Platform Development
In order to do rcc platform development you will need to switch over to a source build to get access to the framework build system.
you basically need to port over the binaries that the framework builds this is what that section of the doc is trying to describe.
for example if i have a source tree that is built for xilinx13_3 and i run the command "make deploy Platform=matchstiq_z1:xilinx13_3"
this will put everything that is needed for standalone mode into a single folder in "exports/matchstiq_z1/matchstiq_z1-deploy/sdcard-xilinx13_3/opencpi"
you will need to specify a hdl platform even if you haven created yours yet I would recommend just running the command "make deploy Platform=matchstiq:erics_sw_platform" (after building the framework for your new software platform) this should give you what you would need to test the rcc side of things on your platform.
From: Paulz, Eric <epaulz@vt.edu<mailto:epaulz@vt.edumailto:epaulz@vt.edu%3cmailto:epaulz@vt.edu>>
Sent: Tuesday, April 9, 2019 2:25 PM
To: Chris Hinkey
Subject: Re: [Discuss OpenCPI] RCC Platform Development
RPM, version 1.4
On Apr 9, 2019, at 14:00, Chris Hinkey <chinkey@geontech.onmicrosoft.com<mailto:chinkey@geontech.onmicrosoft.commailto:chinkey@geontech.onmicrosoft.com%3cmailto:chinkey@geontech.onmicrosoft.com>> wrote:
trying to find the right people for help to answer your question. I'll get back to you shortly.
Are you using a source build tor rpm enviroment?
From: Paulz, Eric <epaulz@vt.edu<mailto:epaulz@vt.edumailto:epaulz@vt.edu%3cmailto:epaulz@vt.edu>>
Sent: Tuesday, April 9, 2019 1:05 PM
To: Chris Hinkey
Subject: RE: [Discuss OpenCPI] RCC Platform Development
Thanks for your response, that does help. I have a quick follow-up question:
I have built a simple application and run is successfully on my development machine. I am now following the steps in 4.2.1 of the Platform Development Guide trying to create a ‘runtime’ and a ‘deployment’ package so that I can test it on a SDR board. The document seems to make the assumption that the development and embedded systems can share files over a network and this fulfills the ‘runtime’ aspect. Say the board I’m working with does not have network capabilities… what would be the best way to create a runtime/deployment package all in one and load the whole thing onto an SD card that the board can reference when trying to run an OpenCPI application?
Hope this makes sense and thanks in advance.
From: Chris Hinkey <chinkey@geontech.onmicrosoft.com<mailto:chinkey@geontech.onmicrosoft.commailto:chinkey@geontech.onmicrosoft.com%3cmailto:chinkey@geontech.onmicrosoft.com>>
Sent: Thursday, April 4, 2019 2:07 PM
To: Paulz, Eric <epaulz@vt.edu<mailto:epaulz@vt.edumailto:epaulz@vt.edu%3cmailto:epaulz@vt.edu>>; discuss@lists.opencpi.org<mailto:discuss@lists.opencpi.orgmailto:discuss@lists.opencpi.org%3cmailto:discuss@lists.opencpi.org>
Subject: Re: [Discuss OpenCPI] RCC Platform Development
all the rcc platforms xilinx13_3/4 in the core project afre for embedded radios
one other place to look that might be useful to look is geontech's implementation of the xilinx18_2 rcc platform https://github.com/Geontech/sw_xilinx18_2
what you essentially need to do is to set the make file to point to your compiler and set any flags that are needed for this compiler then build the framework from source and move these executables to the platform to run them. In order for the build tools to recognize the new platform that you created the project that you created it in has to be registered in your project registry. one way to determine if the tools can see your platform at all is to use the command "ocpidev show rcc platforms"
The fact that the platforms we have use SD cards too boot is maybe a poor choice of words in the documentation. Outside of opencpi you have a way to boot your platform, you have a compiler to compile executables, and you have some way to get built executable on to the platform use those in order to complete your task.
hope this helps
From: discuss <discuss-bounces@lists.opencpi.org<mailto:discuss-bounces@lists.opencpi.orgmailto:discuss-bounces@lists.opencpi.org%3cmailto:discuss-bounces@lists.opencpi.org>> on behalf of Paulz, Eric <epaulz@vt.edu<mailto:epaulz@vt.edumailto:epaulz@vt.edu%3cmailto:epaulz@vt.edu>>
Sent: Thursday, April 4, 2019 1:41 PM
To: discuss@lists.opencpi.org<mailto:discuss@lists.opencpi.orgmailto:discuss@lists.opencpi.org%3cmailto:discuss@lists.opencpi.org>
Subject: [Discuss OpenCPI] RCC Platform Development
Hello,
I am working on an RCC platform for an embedded target (AstroSDR) on which the existing OS must remain as is. The main challenge I'm facing is that all examples of enabling execution for GPP platforms recommend running Petalinux on the target, and all other examples of RCC platforms seem to be for development (I could be wrong on this). Another issue is that the board is not configured to boot from an SD card as is detailed in the Platform Development Guide. I attended the training workshop late last month and picked up some great tips, but I'm still struggling to get the platform to build properly so that I can test it out with some basic apps.
Are there any steps that I may be missing or existing cases similar to this that could be referenced?
Eric C. Paulz
Computer Engineer
Hume Center for National Security & Technology
epaulz@vt.edumailto:epaulz@vt.edu<mailto:epaulz@vt.edumailto:epaulz@vt.edu%3e%3cmailto:epaulz@vt.edu>
Office: 540-231-6180
Cell: 864-243-6767