cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
1,592 Views
Registered: ‎03-21-2018

How to generate prebuilt linux image for custom SDSoC platform

Jump to solution

Hi everyone,

 

I want to modify the hardware platform of ZCU102_es2_rv_ss in order to modify the processing applied on the signal at the output of the IMX274 sensor. I'm using SDoC suite version 2017.4 on Centos.

Here are the steps I followed so far to create an SDSoC platform from the modified hardware (from UG1146):

-- Hardware platform generation

1) Open DSA of zcu102_es2_rv_ss in Vivado.

2) Export hdf file of the circuit after bitstream generation.

-- Software platform generation

3) Copy-paste this hdf file into zcu102_rv_ss/sw/petalinux_bsp/project-spec/hw-description/system.hdf

4) Rebuild the PetaLinux BSP (petalinux-config --oldconfig) followed by (petalinux-build).

5) Create a bif file and prepare the image for the SDSoC platform utility (namely, gather files in /image and boot/ folders according to page 49 of UG1146)

-- SDSoC platform generation

6) Create a new platform in SDx according to chapter 2 of UG1146. At this stage I'm quite confused because I do not know how to generate the "Prebuilt Linux Image" required by the platform creation wizard.  According to page 45 of UG1146, this prebuilt image can be generated by setting the "-rebuild-hardware" option while compiling an SDSoC application with sdscc. But if I want to be able to create an application to compile, I must first create the platform and this requires that I already have the prebuilt folder available...

 

I'm pretty sure I'm not clear here, I must have misunderstood something ...

Could you please provide support?

Thanks,

Alex

 

0 Kudos
Reply
1 Solution

Accepted Solutions
Moderator
Moderator
1,965 Views
Registered: ‎09-12-2007

Are you taking an existing platform, and applying your changes to this? This is a common use-case with users.

However, there is a bit of work here as the HW projects templates aren't delivered with the DSA (like the PFM commands used here)

 

Here are the steps you would need to take:

Launch Vivado (same version of the SDx)

open_dsa <path to dsa in platform>

This will open the Vivado project in the DSA.

Make your modification here to the BD

Apply your PFM properties (see user guide). Unfortunately, you will need to create this :-(

 

 set name [get_property NAME [current_project]]
 generate_target all [get_files project_1/project_1.srcs/sources_1/bd/arty/arty.bd]
 set_property dsa.vendor  "xilinx.com" [current_project]
 set_property dsa.board_id $name [current_project]
 set_property dsa.name  $name [current_project]
 set_property dsa.version "1.0" [current_project]
 set_property dsa.platform_state "pre_synth" [current_project]
 set_property dsa.ip_cache_dir [get_property ip_output_repo [current_project]] [current_project]

write the dsa back into the platform (write_dsa -force <path to dsa in platform>

 

To update the Linux image files, you would need the Petalinux commands:

petalinux-config --get-hw-description=<path to HDF>

petalinux-build

 

You should be able to re-use the existing BIF from the existing platform, as only the images have changed.

 

The -rebuild-hardware option is only needed if you don't use the generate bitstream option in the SDx. This will just tell the tools to use a prebuilt bitstream in the platform (if available).

View solution in original post

3 Replies
Moderator
Moderator
1,966 Views
Registered: ‎09-12-2007

Are you taking an existing platform, and applying your changes to this? This is a common use-case with users.

However, there is a bit of work here as the HW projects templates aren't delivered with the DSA (like the PFM commands used here)

 

Here are the steps you would need to take:

Launch Vivado (same version of the SDx)

open_dsa <path to dsa in platform>

This will open the Vivado project in the DSA.

Make your modification here to the BD

Apply your PFM properties (see user guide). Unfortunately, you will need to create this :-(

 

 set name [get_property NAME [current_project]]
 generate_target all [get_files project_1/project_1.srcs/sources_1/bd/arty/arty.bd]
 set_property dsa.vendor  "xilinx.com" [current_project]
 set_property dsa.board_id $name [current_project]
 set_property dsa.name  $name [current_project]
 set_property dsa.version "1.0" [current_project]
 set_property dsa.platform_state "pre_synth" [current_project]
 set_property dsa.ip_cache_dir [get_property ip_output_repo [current_project]] [current_project]

write the dsa back into the platform (write_dsa -force <path to dsa in platform>

 

To update the Linux image files, you would need the Petalinux commands:

petalinux-config --get-hw-description=<path to HDF>

petalinux-build

 

You should be able to re-use the existing BIF from the existing platform, as only the images have changed.

 

The -rebuild-hardware option is only needed if you don't use the generate bitstream option in the SDx. This will just tell the tools to use a prebuilt bitstream in the platform (if available).

View solution in original post

1,535 Views
Registered: ‎03-21-2018

Hi Stephen,

 

Thanks a lot for you answer! Nonetheless, I finally managed to make it work by myself. I broadly followed the same steps as those you described.

Cheers,

Alexandre

0 Kudos
Reply
Moderator
Moderator
1,514 Views
Registered: ‎09-12-2007

Great!! thanks for coming back to clarify

0 Kudos
Reply