Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Info

Make sure you also update your QNX SDP 7.1 installation to the latest version

Note that some of the packages are available as “Experimental” or are grouped under “Partner” software - make sure to select visibility of both Experimental and Partner packages in the QNX Software Center application to see these packages.

Note

The current packages do no support Python testing due to a version mismatch with the latest QNX Python version 3.11. The highlighted cells below will be updated once updated packages are available. . All python references will be updated from 3.8 to 3.11.

795 (TBD)795 (TBD)16 (TBD)17 (TBD)49 (TBD)

Package Type

Package Name

Build ID (min)

Version

QNX Software Development Platform 7.1

QNX® SDP 7.1 Neutrino RTOS and QNX Momentics Tool Suite

472

BSP

QNX® SDP 7.1 BSP for Xilinx Zynq UltraScale+ MPSoC ZCU102

16

AMD-Xilinx

QNX® SDP 7.1 Xilinx Vitis-AI

807

Vitis-AI 3.0

AMD-Xilinx

QNX® SDP 7.1 Xilinx XRT

807

XRT 2.14.354 (2022.2)

Graphics

QNX SDP 7.1 Screen Board Support ZCU10x

535

OSR

Numpy

30

Request latest from BlackBerry

OpenCV

40

Request latest from BlackBerry

OS utilities

Python 3.8

1

61

Once the packages are installed, the installed tab in Software Center should include all of the packages shown below, at a minimum. In this example, a new QNX 7.1 SDP installation named “qnx710_vai3” vai3.0_2” was used:

...

Xilinx Vitis-AI Design Files

...

  • rename zcu102.build to zcu102.build.original (right click on the file name and select rename….“rename”)

  • copy zcu102-graphics.build to zcu102.build

...

Expand
titleExpand this section for detailed steps

The following steps are required for both Vitis and Vivado flows.

  1. Add VAI libraries
    Several libraries need to be installed in the root file system. Add the following lines to the build file after the .script section. If the Vitis-AI Library layer is not needed, the lines after # Vitis-AI Library below can be excluded to save space, or only certain models can be included.

    Code Block
    ###########################################################################
    ## Vitis-AI
    ###########################################################################
    # Utilities & Drivers
    /bin/show_dpu=show_dpu
    
    # Vitis-AI libs
    /usr/lib/libjson-c.so=libjson-c.so
    /usr/lib/libprotobuf.so=libprotobuf.so
    /usr/lib/libprotoc.so=libprotoc.so
    /usr/lib/libc++.so=libc++.so
    /usr/lib/libiconv.so=libiconv.so
    /usr/lib/libintl.so=libintl.so
    /usr/lib/libboost_system.so=libboost_system.so
    /usr/lib/libboost_atomic.so=libboost_atomic.so
    /usr/lib/libboost_filesystem.so=libboost_filesystem.so
    /usr/lib/libglog.so=libglog.so
    /usr/lib/libgflags.so=libgflags.so
    /lib/libcatalog.so=libcatalog.so
    /lib/libunilog.so=libunilog.so
    /lib/libtarget_factory.so=libtarget_factory.so
    /lib/libxir.so=libxir.so
    /lib/libvart.so=libvart.so
    /lib/libvart-dpu-runner.so=libvart-dpu-runner.so
    
    # Vitis-AI Library libs
    /lib/libvitis_ai_library-extra_ops.so=libvitis_ai_library-extra_ops.so
    /lib/libvitis_ai_library-model_config.so=libvitis_ai_library-model_config.so
    /lib/libvitis_ai_library-math.so=libvitis_ai_library-math.so
    /lib/libvitis_ai_library-runner_helper.so=libvitis_ai_library-runner_helper.so
    /lib/libvitis_ai_library-dpu_task.so=libvitis_ai_library-dpu_task.so
    /lib/libvitis_ai_library-cpu_task.so=libvitis_ai_library-cpu_task.so
    /lib/libvitis_ai_library-graph_runner.so=libvitis_ai_library-graph_runner.so
    /lib/libvitis_ai_library-xmodel_jit.so=libvitis_ai_library-xmodel_jit.so
    /lib/libvitis_ai_library-xmodel_image.so=libvitis_ai_library-xmodel_image.so
    /lib/libvitis_ai_library-xnnpp.so=libvitis_ai_library-xnnpp.so
    
    # Vitis-AI Library model-specific libraries
    /lib/libvitis_ai_library-classification.so=libvitis_ai_library-classification.so
    /lib/libvitis_ai_library-tfssd.so=libvitis_ai_library-tfssd.so
    /lib/libvitis_ai_library-facedetect.so=libvitis_ai_library-facedetect.so
    /lib/libvitis_ai_library-facefeature.so=libvitis_ai_library-facefeature.so
    /lib/libvitis_ai_library-lanedetect.so=libvitis_ai_library-lanedetect.so
    /lib/libvitis_ai_library-yolov2.so=libvitis_ai_library-yolov2.so
    /lib/libvitis_ai_library-yolov3.so=libvitis_ai_library-yolov3.so
    /lib/libvitis_ai_library-RGBDsegmentation.so=libvitis_ai_library-RGBDsegmentation.so
    /lib/libvitis_ai_library-facelandmark.so=libvitis_ai_library-facelandmark.so
    /lib/libvitis_ai_library-facequality5pt.so=libvitis_ai_library-facequality5pt.so
    /lib/libvitis_ai_library-ssd.so=libvitis_ai_library-ssd.so
    /lib/libvitis_ai_library-segmentation.so=libvitis_ai_library-segmentation.so
    /lib/libvitis_ai_library-covid19segmentation.so=libvitis_ai_library-covid19segmentation.so
    /lib/libvitis_ai_library-3Dsegmentation.so=libvitis_ai_library-3Dsegmentation.so
    /lib/libvitis_ai_library-refinedet.so=libvitis_ai_library-refinedet.so
    /lib/libvitis_ai_library-openpose.so=libvitis_ai_library-openpose.so
    /lib/libvitis_ai_library-hourglass.so=libvitis_ai_library-hourglass.so
    /lib/libvitis_ai_library-posedetect.so=libvitis_ai_library-posedetect.so
    /lib/libvitis_ai_library-reid.so=libvitis_ai_library-reid.so
    /lib/libvitis_ai_library-rcan.so=libvitis_ai_library-rcan.so
    /lib/libvitis_ai_library-reidtracker.so=libvitis_ai_library-reidtracker.so
    /lib/libvitis_ai_library-multitask.so=libvitis_ai_library-multitask.so
    /lib/libvitis_ai_library-multitaskv3.so=libvitis_ai_library-multitaskv3.so
    /lib/libvitis_ai_library-platedetect.so=libvitis_ai_library-platedetect.so
    /lib/libvitis_ai_library-platenum.so=libvitis_ai_library-platenum.so
    /lib/libvitis_ai_library-platerecog.so=libvitis_ai_library-platerecog.so
    /lib/libvitis_ai_library-carplaterecog.so=libvitis_ai_library-carplaterecog.so
    /lib/libvitis_ai_library-medicalsegmentation.so=libvitis_ai_library-medicalsegmentation.so
    /lib/libvitis_ai_library-medicaldetection.so=libvitis_ai_library-medicaldetection.so
    /lib/libvitis_ai_library-facerecog.so=libvitis_ai_library-facerecog.so
    /lib/libvitis_ai_library-facedetectrecog.so=libvitis_ai_library-facedetectrecog.so
    /lib/libvitis_ai_library-pointpillars.so=libvitis_ai_library-pointpillars.so
    /lib/libvitis_ai_library-pointpillars_nuscenes.so=libvitis_ai_library-pointpillars_nuscenes.so
    /lib/libvitis_ai_library-pointpainting.so=libvitis_ai_library-pointpainting.so
    /lib/libvitis_ai_library-centerpoint.so=libvitis_ai_library-centerpoint.so
    /lib/libvitis_ai_library-retinaface.so=libvitis_ai_library-retinaface.so
    /lib/libvitis_ai_library-mnistclassification.so=libvitis_ai_library-mnistclassification.so
    /lib/libvitis_ai_library-medicalsegcell.so=libvitis_ai_library-medicalsegcell.so
    /lib/libvitis_ai_library-bcc.so=libvitis_ai_library-bcc.so
    /lib/libvitis_ai_library-pmg.so=libvitis_ai_library-pmg.so
    /lib/libvitis_ai_library-general1.so=libvitis_ai_library-general1.so
    /lib/libvitis_ai_library-multi_runner.so=libvitis_ai_library-multi_runner.so
    /lib/libvitis_ai_library-arflow.so=libvitis_ai_library-arflow.so
    /lib/libvitis_ai_library-bevdet.so=libvitis_ai_library-bevdet.so
    /lib/libvitis_ai_library-c2d2_lite.so=libvitis_ai_library-c2d2_lite.so
    /lib/libvitis_ai_library-cflownet.so=libvitis_ai_library-cflownet.so
    /lib/libvitis_ai_library-clocs.so=libvitis_ai_library-clocs.so
    /lib/libvitis_ai_library-efficientdet_d2.so=libvitis_ai_library-efficientdet_d2.so
    /lib/libvitis_ai_library-fairmot.so=libvitis_ai_library-fairmot.so
    /lib/libvitis_ai_library-fusion_cnn.so=libvitis_ai_library-fusion_cnn.so
    /lib/libvitis_ai_library-monodepth2.so=libvitis_ai_library-monodepth2.so
    /lib/libvitis_ai_library-movenet.so=libvitis_ai_library-movenet.so
    /lib/libvitis_ai_library-ocr.so=libvitis_ai_library-ocr.so
    /lib/libvitis_ai_library-ofa_yolo.so=libvitis_ai_library-ofa_yolo.so
    /lib/libvitis_ai_library-pmrid.so=libvitis_ai_library-pmrid.so
    /lib/libvitis_ai_library-polypsegmentation.so=libvitis_ai_library-polypsegmentation.so
    /lib/libvitis_ai_library-solo.so=libvitis_ai_library-solo.so
    /lib/libvitis_ai_library-textmountain.so=libvitis_ai_library-textmountain.so
    /lib/libvitis_ai_library-tracker.so=libvitis_ai_library-tracker.so
    /lib/libvitis_ai_library-ultrafast.so=libvitis_ai_library-ultrafast.so
    /lib/libvitis_ai_library-vehicleclassification.so=libvitis_ai_library-vehicleclassification.so
    /lib/libvitis_ai_library-yolov6.so=libvitis_ai_library-yolov6.so
    /lib/libvitis_ai_library-yolovx.so=libvitis_ai_library-yolovx.so
    /lib/libxmodel_postprocessor_common.so=libxmodel_postprocessor_common.so
    /lib/libxmodel_postprocessor_classification.so=libxmodel_postprocessor_classification.so
    /lib/libxmodel_postprocessor_densebox.so=libxmodel_postprocessor_densebox.so
    /lib/libxmodel_postprocessor_plate_number.so=libxmodel_postprocessor_plate_number.so
    /lib/libxmodel_postprocessor_face_recognition.so=libxmodel_postprocessor_face_recognition.so
    /lib/libxmodel_postprocessor_face_quality.so=libxmodel_postprocessor_face_quality.so
    /lib/libxmodel_postprocessor_face_landmark.so=libxmodel_postprocessor_face_landmark.so
    /lib/libxmodel_postprocessor_open_pose.so=libxmodel_postprocessor_open_pose.so
    /lib/libxmodel_postprocessor_segmentation.so=libxmodel_postprocessor_segmentation.so
    /lib/libxmodel_postprocessor_ssd.so=libxmodel_postprocessor_ssd.so
    /lib/libxmodel_postprocessor_yolov3.so=libxmodel_postprocessor_yolov3.so
    /lib/libxmodel_preprocessor_common.so=libxmodel_preprocessor_common.so
    /lib/libxmodel_preprocessor_vgg.so=libxmodel_preprocessor_vgg.so
    /lib/libxmodel_preprocessor_efficientnet.so=libxmodel_preprocessor_efficientnet.so
    

  2. Add sample applications
    There are a few sample applications packaged with the Vitis-AI package. Add these lines to the build file after the Vitis-AI libraries.

    Code Block
    /usr/bin/resnet50=resnet50
    /usr/bin/test_jpeg_facedetect=test_jpeg_facedetect
    /usr/bin/segmentation=segmentation
  3. Add Python support
    Add the following to include python support. This is optional and only required for exercising the VAI python APIs.

Note

The current packages do not support Python testing due to a version mismatch with the latest QNX Python version 3.11. Once updated packages are available, this section will be updated.

Code Block
# /usr/lib/libpython3.11.so=libpython3.11.so
#
/usr/lib/libffi.so=libffi.so

#
/usr/bin/python3=python3
# /usr/bin/python3.11=python3.11

# [search=${QNX_TARGET}/${PROCESSOR}/usr/lib/python3.11/site-packages]/usr/lib/python3.11/site-packages/xir.so=xir.so
# [search=${QNX_TARGET}/${PROCESSOR}/usr/lib/python3.11/site-packages]/usr/lib/python3.11/site-packages/vart.so=vart.so

/usr/bin/dirname=dirname
/usr/bin/python3=python3
/usr/bin/python3.11=python3.11
  1. Add OpenCV support
    Vitis-AI requires access to OpenCV, so add the following OpenCV libraries to the IFS.

    Code Block
    #################################
    # OpenCV
    #################################
    [prefix=/usr/lib]
    libopencv_calib3d.so 
    libopencv_core.so 
    libopencv_dnn.so
    libopencv_features2d.so
    libopencv_flann.so
    libopencv_highgui.so
    libopencv_imgcodecs.so
    libopencv_imgproc.so
    libopencv_ml.so
    libopencv_objdetect.so
    libopencv_photo.so
    libopencv_stitching.so
    libopencv_videoio.so
    libopencv_video.so
    #Restore default prefix
    [prefix=/proc/boot]

...

Expand
titleExpand this section for detailed steps

Next, add some useful utilities at the end of the .build file:

Code Block
# Extra commands
/usr/bin/mkdir=mkdir

/usr/bin/curl=curl
/usr/lib/libcurl.so=libcurl.so
/usr/lib/libcares.so=libcares.so

/usr/bin/ldd=ldd

/lib/libjpeg.so=libjpeg.so
/usr/lib/libpng.so=libpng.so
/usr/lib/libpng16.so=libpng16.so
/usr/lib/libtiff.so=libtiff.so

/usr/bin/tar=tar
/usr/lib/libxml2.so=libxml2.so
/usr/lib/liblzma.so=liblzma.so
/usr/lib/libbz2.so=libbz2.so

/usr/bin/unzip=unzip

...

Expand
titleExpand this section for detailed steps
Info

Make sure that the correct SDK is selected before executing the next two steps. In Momentics, do the following to change the SDK

  • Window->Preferences

  • Select QNX

  • Set the “Select SDK” dropdown to the SDK you installed the packages referenced above.

  • Click “Apply and Close”

  • You will be prompted to restart the workspace if you selected a new SDK

  1. First, make sure you have saved zcu102.build.

  2. Right click on the project name and select "Clean Project”

  3. Right click on the project name and select "Build Project"

  4. Wait for the build to complete. This process will take several minutes.

  5. Once complete, the QNX-IFS (QNX Initial File System) will be available in the images folder.

...

These applications have been included in QNX-IFS during the build process. However, we need some other files to exercise the tests, including machine learning model files (.xmodel) and test images/videos. For simplicity, the instructions here assume that you will download any necessary files on your development machine and copy them to the SD card. The applications are provided so that a basic Vitis-AI 3.0 system validation can be done. The building of custom Vitis-AI applications in the QNX environment is outside of the scope of this document.

Downloading the Files

Power off the target, and take your SD card back to your development machine. Next, use a browser or other means to download the files listed below:

...

In the serial console, cd to the the resnet50 directory you created and run the resnet50 example. Provide the .xmodel you downloaded as an argument:

Code Block
# cd /vai-test/resnet50
#
resnet50 ./resnet50.xmodel

...

Expand
titlezcu102.build
Code Block
###################################################################################
#
# QNX Neutrino on the Xilinx Zynq UltraScale+ MPSoC ZCU102 Evaluation Kit,
# based on ARM Cortex A53
#
####################################################################################

#[+keeplinked]
[+compress]
[image=0x100000]

[virtual=aarch64le,raw] .bootstrap = {
    # Startup parameters
    #  "-a <AXI INTC base address>,<GIC IRQ #>[,<GIC IRQ trigger mode>]"
    #
    #    Configure the AXI INTC controller(s) present in the PL image.
    #    <GIC IRQ trigger mode> should be 0 for level-triggered (the default)
    #    or 1 for edge-triggered.
    #    A maximum of 4 INTC controllers can be configured.

    # Ex: Configure an INTC with base address 0x80042000 connected to level-triggered GIC IRQ 141.
    # Also configure a second INTC with base address 0x80043000 connected to edge-triggered GIC IRQ 142.
    # startup-xzynq-zcu10x -v -a0x80042000,141 -a0x80043000,142,1

    startup-xzynq-zcu10x -v -a0x80020000,121,0
    PATH=/proc/boot:/bin:/usr/bin:/sbin:/usr/sbin:/usr/lib LD_LIBRARY_PATH=/proc/boot:/lib:/usr/lib:/lib/dll:/lib/dll/pci procnto-smp-instr -v
}
[+script] .script = {
    display_msg Welcome to QNX Neutrino 7.1.0 on the Xilinx MPSoC ZCU102 (ARM Cortex-A53)

    # Setup Environment variables
    ENV=/etc/profile

    # Start some common servers
    slogger2
    pipe

    #######################################################################
    ## MPSoC clock manager
    #######################################################################
    display_msg Starting clock manager...
    clock-xzynq -v

    #######################################################################
    ## Random service
    #######################################################################
    display_msg Starting random service...
    random -t
    waitfor /dev/random 5

    #######################################################################
    ## Serial driver
    #######################################################################
    display_msg Starting Serial driver (UART0 and UART1)...
    devc-serxzynq -e -F -S 0xFF000000,53 0xFF010000,54
    reopen /dev/ser1

    #######################################################################
    ## SD driver
    #######################################################################
    display_msg Starting SDMMC driver for SD card (SDIO1)...
    devb-sdmmc-xzynq sdio addr=0xFF170000,irq=81

    #######################################################################
    ## USB
    #######################################################################
    display_msg Starting USB OTG...
    io-usb-otg -d hcd-xzynq-xhci ioport=0xFE200000,irq=97

    display_msg Starting USB mass storage driver...
    devb-umass cam pnp

    #######################################################################
    ## PCI Server
    #######################################################################
    PCI_HW_MODULE=/lib/dll/pci/pci_hw-xzynq-zcu102.so
    PCI_BKWD_COMPAT_MODULE=/lib/dll/pci/pci_bkwd_compat.so
    PCI_SLOG_MODULE=/lib/dll/pci/pci_slog2.so
    PCI_DEBUG_MODULE=/lib/dll/pci/pci_debug2.so
    PCI_BASE_VERBOSITY=0
    display_msg Starting PCI Server...
    pci-server -c --bus-scan-limit=1

    #######################################################################
    ## QSPI flash driver
    #######################################################################
    display_msg Starting QSPI flash driver...
    devf-qspi-xzynq-zcu102 -r bus_speed=100000000,input_clk=200000000 &

    #######################################################################
    ## I2C devices
    #######################################################################
    display_msg Starting I2C drivers (/dev/i2c0 and /dev/i2c1)...
    i2c-xzynq -p 0xFF020000 -i 49 --u 0
    i2c-xzynq -p 0xFF030000 -i 50 --u 1

    #######################################################################
    ## CAN
    #######################################################################
    display_msg Starting CAN driver (/dev/can2/)...
    dev-can-xzynq mpsoccan2

    #######################################################################
    ## Networking
    #######################################################################
    display_msg Starting Network driver...
    sh -c "io-pkt-v6-hc -dxzynq-ultrascale mac=`getmac-i2c-zcu102`"
    if_up -p xzynq0
    dhclient -m -lf /dev/shmem/dhclient.leases -pf /dev/shmem/dhclient.pid -nw xzynq0

    #######################################################################
    ## SPI driver
    #######################################################################
    display_msg Starting SPI0 and SPI1...
    spi-master -u 0 -d xzynq-zcu102 base=0xFF040000,irq=51,clock=150000000
    spi-master -u 1 -d xzynq-zcu102 base=0xFF050000,irq=52,clock=150000000

    #######################################################################
    ## On Chip Memory driver
    #######################################################################
    display_msg Starting OCM driver...
    ocm-xzynq

    # Start inetd for telnet access
    inetd

    #######################################################################
    ## Graphics
    #######################################################################
    display_msg Starting Screen Graphics...
    /sbin/screen -c /usr/lib/graphics/zcu10x/graphics.conf
    
    zocl -U 523:523 -i 8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8203,8204,8205,8206,8207,8208,8209,8210,8211,8212,8213,8214,8215,8216,8217,8218,8219,8220,8221,8222,8223 &

    # Make sure QSPI flash is up before continuing
    waitfor /dev/fs0p0

    /bin/mountSDcard.sh
    # Start the main shell
    [+session] ksh /proc/boot/.console.sh &
}

#SDcard boot partition mount
[uid=0 gid=0 perms=0540] /bin/mountSDcard.sh = {
	echo "Mounting SD Card at /"
	if [[ -e /dev/hd0t11 ]]; then 
		mount -w -t dos -o exe=all /dev/hd0t11 /
	elif [[ -e /dev/hd0t12 ]]; then 
		mount -w -t dos -o exe=all /dev/hd0t12 /
	elif [[ -e /dev/hd0t14 ]]; then 
		mount -w -t dos -o exe=all /dev/hd0t14 /
	elif [[ -e /dev/hd0t131 ]]; then 
		echo "Mounting SD Card as dos type even though detected type is ext4"
		mount -w -t dos -o exe=all /dev/hd0t131 /
	else
		echo "Could not mount SD Card"
	fi
}

# Redirect console messages
[type=link] /bin/sh=/bin/ksh
[type=link] /dev/console=/dev/ser1
[type=link] /tmp=/dev/shmem
[type=link] /var/log=/tmp
[type=link] /usr/tmp=/tmp

# Shared libraries
/lib/libc.so=libc.so
/lib/libgcc_s.so.1=libgcc_s.so.1
/usr/lib/ldqnx-64.so.2=ldqnx-64.so.2
/lib/libregex.so=libregex.so
/lib/libqh.so=libqh.so
/lib/libm.so=libm.so
/lib/libsecpol.so=libsecpol.so
/usr/lib/libncursesw.so=libncursesw.so

##########################################################################
## Xilinx XRT
###########################################################################
/lib/libxrt_coreutil.so=libxrt_coreutil.so
/lib/libxrt_core.so=libxrt_core.so
/lib/libxrt++.so=libxrt++.so
/lib/libxilinxopencl.so=libxilinxopencl.so
/lib/libxdp_core.so=libxdp_core.so
/lib/libxdp_appdebug_plugin.so=libxdp_appdebug_plugin.so
/lib/libxdp_debug_plugin.so=libxdp_debug_plugin.so
/lib/libxdp_device_offload_plugin.so=libxdp_device_offload_plugin.so
/lib/libxdp_hal_api_interface_plugin.so=libxdp_hal_api_interface_plugin.so
/lib/libxdp_hal_device_offload_plugin.so=libxdp_hal_device_offload_plugin.so
/lib/libxdp_hal_plugin.so=libxdp_hal_plugin.so
/lib/libxdp_lop_plugin.so=libxdp_lop_plugin.so
/lib/libxdp_native_plugin.so=libxdp_native_plugin.so
/lib/libxdp_noc_plugin.so=libxdp_noc_plugin.so
/lib/libxdp_opencl_counters_plugin.so=libxdp_opencl_counters_plugin.so
/lib/libxdp_opencl_trace_plugin.so=libxdp_opencl_trace_plugin.so
/lib/libxdp_pl_deadlock_plugin.so=libxdp_pl_deadlock_plugin.so
/lib/libxdp_power_plugin.so=libxdp_power_plugin.so
/lib/libxdp_system_compiler_plugin.so=libxdp_system_compiler_plugin.so
/lib/libxdp_user_plugin.so=libxdp_user_plugin.so
/lib/libxdp_vart_plugin.so=libxdp_vart_plugin.so
/lib/libsecpol.so=libsecpol.so
/lib/libcatalog.so=libcatalog.so
/usr/lib/libc++.so=libc++.so
/usr/lib/libboost_filesystem.so=libboost_filesystem.so
/usr/lib/libboost_system.so=libboost_system.so
/usr/lib/libboost_program_options.so=libboost_program_options.so
/usr/lib/libboost_atomic.so=libboost_atomic.so

# Utilities & Drivers
/bin/zocl=zocl
/usr/bin/xbutil=xbutil

###########################################################################
## Vitis-AI
###########################################################################
# Utilities & drivers
/bin/show_dpu=show_dpu

# Vitis-AI libs
/usr/lib/libjson-c.so=libjson-c.so
/usr/lib/libprotobuf.so=libprotobuf.so
/usr/lib/libprotoc.so=libprotoc.so
/usr/lib/libc++.so=libc++.so
/usr/lib/libiconv.so=libiconv.so
/usr/lib/libintl.so=libintl.so
/usr/lib/libboost_system.so=libboost_system.so
/usr/lib/libboost_atomic.so=libboost_atomic.so
/usr/lib/libboost_filesystem.so=libboost_filesystem.so
/usr/lib/libglog.so=libglog.so
/usr/lib/libgflags.so=libgflags.so
/lib/libcatalog.so=libcatalog.so
/lib/libunilog.so=libunilog.so
/lib/libtarget_factory.so=libtarget_factory.so
/lib/libxir.so=libxir.so
/lib/libvart.so=libvart.so
/lib/libvart-dpu-runner.so=libvart-dpu-runner.so

# Vitis-AI Library libs
/lib/libvitis_ai_library-extra_ops.so=libvitis_ai_library-extra_ops.so
/lib/libvitis_ai_library-model_config.so=libvitis_ai_library-model_config.so
/lib/libvitis_ai_library-math.so=libvitis_ai_library-math.so
/lib/libvitis_ai_library-runner_helper.so=libvitis_ai_library-runner_helper.so
/lib/libvitis_ai_library-dpu_task.so=libvitis_ai_library-dpu_task.so
/lib/libvitis_ai_library-cpu_task.so=libvitis_ai_library-cpu_task.so
/lib/libvitis_ai_library-graph_runner.so=libvitis_ai_library-graph_runner.so
/lib/libvitis_ai_library-xmodel_jit.so=libvitis_ai_library-xmodel_jit.so
/lib/libvitis_ai_library-xmodel_image.so=libvitis_ai_library-xmodel_image.so
/lib/libvitis_ai_library-xnnpp.so=libvitis_ai_library-xnnpp.so
/lib/libvitis_ai_library-classification.so=libvitis_ai_library-classification.so
/lib/libvitis_ai_library-tfssd.so=libvitis_ai_library-tfssd.so
/lib/libvitis_ai_library-facedetect.so=libvitis_ai_library-facedetect.so
/lib/libvitis_ai_library-facefeature.so=libvitis_ai_library-facefeature.so
/lib/libvitis_ai_library-lanedetect.so=libvitis_ai_library-lanedetect.so
/lib/libvitis_ai_library-yolov2.so=libvitis_ai_library-yolov2.so
/lib/libvitis_ai_library-yolov3.so=libvitis_ai_library-yolov3.so
/lib/libvitis_ai_library-RGBDsegmentation.so=libvitis_ai_library-RGBDsegmentation.so
/lib/libvitis_ai_library-facelandmark.so=libvitis_ai_library-facelandmark.so
/lib/libvitis_ai_library-facequality5pt.so=libvitis_ai_library-facequality5pt.so
/lib/libvitis_ai_library-ssd.so=libvitis_ai_library-ssd.so
/lib/libvitis_ai_library-segmentation.so=libvitis_ai_library-segmentation.so
/lib/libvitis_ai_library-covid19segmentation.so=libvitis_ai_library-covid19segmentation.so
/lib/libvitis_ai_library-3Dsegmentation.so=libvitis_ai_library-3Dsegmentation.so
/lib/libvitis_ai_library-refinedet.so=libvitis_ai_library-refinedet.so
/lib/libvitis_ai_library-openpose.so=libvitis_ai_library-openpose.so
/lib/libvitis_ai_library-hourglass.so=libvitis_ai_library-hourglass.so
/lib/libvitis_ai_library-posedetect.so=libvitis_ai_library-posedetect.so
/lib/libvitis_ai_library-reid.so=libvitis_ai_library-reid.so
/lib/libvitis_ai_library-rcan.so=libvitis_ai_library-rcan.so
/lib/libvitis_ai_library-reidtracker.so=libvitis_ai_library-reidtracker.so
/lib/libvitis_ai_library-multitask.so=libvitis_ai_library-multitask.so
/lib/libvitis_ai_library-multitaskv3.so=libvitis_ai_library-multitaskv3.so
/lib/libvitis_ai_library-platedetect.so=libvitis_ai_library-platedetect.so
/lib/libvitis_ai_library-platenum.so=libvitis_ai_library-platenum.so
/lib/libvitis_ai_library-platerecog.so=libvitis_ai_library-platerecog.so
/lib/libvitis_ai_library-carplaterecog.so=libvitis_ai_library-carplaterecog.so
/lib/libvitis_ai_library-medicalsegmentation.so=libvitis_ai_library-medicalsegmentation.so
/lib/libvitis_ai_library-medicaldetection.so=libvitis_ai_library-medicaldetection.so
/lib/libvitis_ai_library-facerecog.so=libvitis_ai_library-facerecog.so
/lib/libvitis_ai_library-facedetectrecog.so=libvitis_ai_library-facedetectrecog.so
/lib/libvitis_ai_library-pointpillars.so=libvitis_ai_library-pointpillars.so
/lib/libvitis_ai_library-pointpillars_nuscenes.so=libvitis_ai_library-pointpillars_nuscenes.so
/lib/libvitis_ai_library-pointpainting.so=libvitis_ai_library-pointpainting.so
/lib/libvitis_ai_library-centerpoint.so=libvitis_ai_library-centerpoint.so
/lib/libvitis_ai_library-retinaface.so=libvitis_ai_library-retinaface.so
/lib/libvitis_ai_library-mnistclassification.so=libvitis_ai_library-mnistclassification.so
/lib/libvitis_ai_library-medicalsegcell.so=libvitis_ai_library-medicalsegcell.so
/lib/libvitis_ai_library-bcc.so=libvitis_ai_library-bcc.so
/lib/libvitis_ai_library-pmg.so=libvitis_ai_library-pmg.so
/lib/libvitis_ai_library-general1.so=libvitis_ai_library-general1.so
/lib/libvitis_ai_library-multi_runner.so=libvitis_ai_library-multi_runner.so
/lib/libvitis_ai_library-arflow.so=libvitis_ai_library-arflow.so
/lib/libvitis_ai_library-bevdet.so=libvitis_ai_library-bevdet.so
/lib/libvitis_ai_library-c2d2_lite.so=libvitis_ai_library-c2d2_lite.so
/lib/libvitis_ai_library-cflownet.so=libvitis_ai_library-cflownet.so
/lib/libvitis_ai_library-clocs.so=libvitis_ai_library-clocs.so
/lib/libvitis_ai_library-efficientdet_d2.so=libvitis_ai_library-efficientdet_d2.so
/lib/libvitis_ai_library-fairmot.so=libvitis_ai_library-fairmot.so
/lib/libvitis_ai_library-fusion_cnn.so=libvitis_ai_library-fusion_cnn.so
/lib/libvitis_ai_library-monodepth2.so=libvitis_ai_library-monodepth2.so
/lib/libvitis_ai_library-movenet.so=libvitis_ai_library-movenet.so
/lib/libvitis_ai_library-ocr.so=libvitis_ai_library-ocr.so
/lib/libvitis_ai_library-ofa_yolo.so=libvitis_ai_library-ofa_yolo.so
/lib/libvitis_ai_library-pmrid.so=libvitis_ai_library-pmrid.so
/lib/libvitis_ai_library-polypsegmentation.so=libvitis_ai_library-polypsegmentation.so
/lib/libvitis_ai_library-solo.so=libvitis_ai_library-solo.so
/lib/libvitis_ai_library-textmountain.so=libvitis_ai_library-textmountain.so
/lib/libvitis_ai_library-tracker.so=libvitis_ai_library-tracker.so
/lib/libvitis_ai_library-ultrafast.so=libvitis_ai_library-ultrafast.so
/lib/libvitis_ai_library-vehicleclassification.so=libvitis_ai_library-vehicleclassification.so
/lib/libvitis_ai_library-yolov6.so=libvitis_ai_library-yolov6.so
/lib/libvitis_ai_library-yolovx.so=libvitis_ai_library-yolovx.so
/lib/libxmodel_postprocessor_common.so=libxmodel_postprocessor_common.so
/lib/libxmodel_postprocessor_classification.so=libxmodel_postprocessor_classification.so
/lib/libxmodel_postprocessor_densebox.so=libxmodel_postprocessor_densebox.so
/lib/libxmodel_postprocessor_plate_number.so=libxmodel_postprocessor_plate_number.so
/lib/libxmodel_postprocessor_face_recognition.so=libxmodel_postprocessor_face_recognition.so
/lib/libxmodel_postprocessor_face_quality.so=libxmodel_postprocessor_face_quality.so
/lib/libxmodel_postprocessor_face_landmark.so=libxmodel_postprocessor_face_landmark.so
/lib/libxmodel_postprocessor_open_pose.so=libxmodel_postprocessor_open_pose.so
/lib/libxmodel_postprocessor_segmentation.so=libxmodel_postprocessor_segmentation.so
/lib/libxmodel_postprocessor_ssd.so=libxmodel_postprocessor_ssd.so
/lib/libxmodel_postprocessor_yolov3.so=libxmodel_postprocessor_yolov3.so
/lib/libxmodel_preprocessor_common.so=libxmodel_preprocessor_common.so
/lib/libxmodel_preprocessor_vgg.so=libxmodel_preprocessor_vgg.so
/lib/libxmodel_preprocessor_efficientnet.so=libxmodel_preprocessor_efficientnet.so

# Sample apps
/usr/bin/resnet50=resnet50
/usr/bin/test_jpeg_facedetect=test_jpeg_facedetect
/usr/bin/segmentation=segmentation

# Python Support coming soon
#/usr/lib/libpython3.11.so=libpython3.11.so
#/usr/lib/libffi.so=libffi.so
#/usr/bin/python3=python3
#/usr/bin/python3.11=python3.11
#[search=${QNX_TARGET}/${PROCESSOR}/usr/lib/python3.11/site-packages]/usr/lib/python3.11/site-packages/xir.so=xir.so
#[search=${QNX_TARGET}/${PROCESSOR}/usr/lib/python3.11/site-packages]/usr/lib/python3.11/site-packages/vart.so=vart.so
.so

/usr/bin/dirname=dirname
/usr/bin/python3=python3
/usr/bin/python3.11=python3.11

###########################################################################
# OpenCV
###########################################################################
[prefix=/usr/lib]
libopencv_calib3d.so 
libopencv_core.so 
libopencv_dnn.so
libopencv_features2d.so
libopencv_flann.so
libopencv_highgui.so
libopencv_imgcodecs.so
libopencv_imgproc.so
libopencv_ml.so
libopencv_objdetect.so
libopencv_photo.so
libopencv_stitching.so
libopencv_videoio.so
libopencv_video.so
#Restore default prefix
[prefix=/proc/boot]

###########################################################################
## Tracelog
###########################################################################
/lib/libtracelog.so=libtracelog.so

###########################################################################
## Slogger2
###########################################################################
/lib/libslog2.so=libslog2.so
/lib/libslog2parse.so=libslog2parse.so

###########################################################################
## uncomment for SPI driver
###########################################################################
/lib/dll/spi-xzynq-zcu102.so=spi-xzynq-zcu102.so

###########################################################################
## uncomment for NETWORK driver
###########################################################################
/lib/dll/devnp-xzynq-ultrascale.so=devnp-xzynq-ultrascale.so
/lib/dll/devnp-e1000.so=devnp-e1000.so

/lib/libsocket.so=libsocket.so
/usr/lib/libz.so=libz.so
/usr/lib/libssl.so=libssl.so
/usr/lib/libcrypto.so=libcrypto.so
/usr/lib/libqcrypto.so=libqcrypto.so
/lib/dll/qcrypto-openssl.so=qcrypto-openssl.so
/usr/lib/libnbutil.so=libnbutil.so

###########################################################################
## uncomment for USB
###########################################################################
/lib/dll/devu-hcd-xzynq-xhci.so=devu-hcd-xzynq-xhci.so
/lib/libusbdi.so=libusbdi.so

###########################################################################
## BLOCK drivers libraries
###########################################################################
/lib/libcam.so=libcam.so
/lib/dll/io-blk.so=io-blk.so
/lib/dll/cam-disk.so=cam-disk.so
/lib/dll/cam-cdrom.so=cam-cdrom.so
/lib/dll/fs-qnx6.so=fs-qnx6.so
/lib/dll/fs-dos.so=fs-dos.so

###########################################################################
## GPIO
###########################################################################
/lib/libgpio-xzynq.so=libgpio-xzynq.so

###########################################################################
## PCIe server Support
###########################################################################
/lib/libpanelw.so=libpanelw.so
/lib/libncurses.so=libncurses.so

/lib/libpci.so=libpci.so

# For the PCI server we need to separately search the SDP folder and the
# install folder so we get both the full set of PCI modules (from the SDP)
# and the patched pci_hw modules (from install). The order here matters,
# we need to check ../install first to get the correct pci_hw*.so symlinks.

[-followlink search=${QNX_TARGET}/${PROCESSOR}/lib/dll] /lib/dll/pci=pci

###########################################################################
## Graphics support - screen
###########################################################################
/lib/dll/screen-gles2blt.so=screen-gles2blt.so
/lib/dll/screen-debug.so=screen-debug.so
/lib/dll/screen-zynq-alloc.so=screen-zynq-alloc.so

/usr/lib/libWFD.so=libWFD.so
/lib/libgestures.so=libgestures.so
/lib/libmemobj.so=libmemobj.so
/lib/libscrmem.so=libscrmem.so
/lib/libinputevents.so=libinputevents.so
/lib/libkalman.so=libkalman.so
/usr/lib/libscreen.so=libscreen.so

/lib/libhiddi.so=libhiddi.so

###########################################################################
## Graphics base libraries
###########################################################################
/lib/dll/libwfdcfg-sample.so=libwfdcfg-sample.so
/lib/dll/screen-gles1.so=screen-gles1.so
/usr/lib/libEGL.so=libEGL.so
/usr/lib/libGLESv1_CL.so=libGLESv1_CL.so
/usr/lib/libGLESv1_CM.so=libGLESv1_CM.so
/usr/lib/libGLESv2.so=libGLESv2.so

###########################################################################
## Font libraries
###########################################################################
/usr/lib/libfontconfig.so=libfontconfig.so
/usr/lib/libfreetype.so=libfreetype.so

###########################################################################
## Image Codecs
# uncomment for image loading
###########################################################################
#[search=${QNX_TARGET}/etc/system/config]/etc/system/config/img.conf=img.conf
#/lib/libimg.so=libimg.so
#/lib/libjpeg.so=libjpeg.so
#/lib/dll/img_codec_bmp.so=img_codec_bmp.so
#/lib/dll/img_codec_gif.so=img_codec_gif.so
#/lib/dll/img_codec_jpg.so=img_codec_jpg.so
#/lib/dll/img_codec_pcx.so=img_codec_pcx.so
#/lib/dll/img_codec_png.so=img_codec_png.so
#/lib/dll/img_codec_sgi.so=img_codec_sgi.so
#/lib/dll/img_codec_tga.so=img_codec_tga.so
#/lib/dll/img_codec_tif.so=img_codec_tif.so
#/lib/dll/img_codec_wbmp.so=img_codec_wbmp.so
#/usr/lib/libgif.so=libgif.so
#/usr/lib/liblzma.so=liblzma.so
#/usr/lib/libpng.so=libpng.so
#/usr/lib/libpng16.so=libpng16.so
#/usr/lib/libtiff.so=libtiff.so

###########################################################################
## Input libraries
###########################################################################
/lib/libmtouch-calib.so=libmtouch-calib.so
/lib/libmtouch-devi.so=libmtouch-devi.so
/lib/libmtouch-fake.so=libmtouch-fake.so
/lib/libmtouch-hid.so=libmtouch-hid.so
/lib/libmtouch-inject.so=libmtouch-inject.so

###########################################################################
## Board specific graphics files
###########################################################################
/usr/lib/graphics/zcu10x/graphics.conf=graphics/zcu10x/graphics.conf
/usr/lib/graphics/zcu10x/libwfdcfg-zcu10x.so=graphics/zcu10x/libwfdcfg-zcu10x.so
/usr/lib/graphics/zcu10x/libWFDzynq.so=graphics/zcu10x/libWFDzynq.so
/usr/lib/graphics/zcu10x/libmali.so=graphics/zcu10x/libmali.so
/usr/lib/graphics/zcu10x/libmali-kbase.so=graphics/zcu10x/libmali-kbase.so

[dperms=0755]

###########################################################################
## helper scripts
###########################################################################
[search=../install/scripts] /usr/sbin/reflash-image.sh=reflash-image.sh

###########################################################################
## libqcrypto support
###########################################################################
[perms=644] /etc/qcrypto.conf = {
openssl     tags=*
}

###########################################################################
## uncomment for board clock manager
###########################################################################
/sbin/clock-xzynq=clock-xzynq

###########################################################################
## uncomment for SD driver
###########################################################################
/sbin/devb-sdmmc-xzynq=devb-sdmmc-xzynq

###########################################################################
## uncomment for QSPI flash driver
###########################################################################
/sbin/devf-qspi-xzynq-zcu102=devf-qspi-xzynq-zcu102
/usr/bin/flashctl=flashctl

###########################################################################
## uncomment for NETWORK driver
###########################################################################
/sbin/io-pkt-v6-hc=io-pkt-v6-hc
/bin/getmac-i2c-zcu102=getmac-i2c-zcu102

###########################################################################
## dhclient support
###########################################################################
/sbin/dhclient=dhclient
[search=${QNX_TARGET}/sbin perms=a+x] /sbin/dhclient-script=dhclient-script
[search=${QNX_TARGET}/etc]/etc/dhclient.conf=dhclient.conf

###########################################################################
## uncomment for USB
###########################################################################
/sbin/io-usb-otg=io-usb-otg
/sbin/usb=usb
/sbin/devb-umass=devb-umass

###########################################################################
## uncomment for REMOTE_DEBUG
###########################################################################
/sbin/devc-pty=devc-pty
/usr/sbin/qconn=qconn
/usr/bin/pdebug=pdebug

###########################################################################
## uncomment for Serial driver
###########################################################################
/sbin/devc-serxzynq=devc-serxzynq

###########################################################################
## uncomment for I2C, SPI and OCM drivers
###########################################################################
/sbin/i2c-xzynq=i2c-xzynq
/sbin/spi-master=spi-master
/sbin/ocm-xzynq=ocm-xzynq

###########################################################################
## PCI support
###########################################################################
/sbin/pci-server=pci-server
/sbin/pci-tool=pci-tool
/sbin/rsrcdb_query=rsrcdb_query
[search=${QNX_TARGET}/etc/system/config/pci] /etc/system/config/pci/pcidatabase.com-tab_delimited.txt=pcidatabase.com-tab_delimited.txt

###########################################################################
## uncomment for CAN driver
###########################################################################
/bin/dev-can-xzynq=dev-can-xzynq
/bin/canctl=canctl

###########################################################################
## Screen executables
###########################################################################
/sbin/screen=screen
/usr/bin/sw-vsync=sw-vsync
/usr/bin/gles2-gears=gles2-gears
/usr/bin/calib-touch=calib-touch
/usr/bin/events=events

###########################################################################
## Network services (telnet) support
###########################################################################
[type=link] /var/log=/tmp
[type=link] /var/run=/tmp
[type=link] /var/lock=/tmp

/etc/esh = {
}

/etc/hosts=${QNX_TARGET}/etc/hosts
/etc/services=${QNX_TARGET}/etc/services

/etc/inetd.conf = {
ftp        stream tcp nowait root  /usr/sbin/ftpd           in.ftpd -l
telnet     stream tcp nowait root  /usr/sbin/telnetd        in.telnetd
}

/etc/ftpusers=${QNX_TARGET}/etc/ftpusers

/etc/ftpd.conf = {
/* Make things a+rw by default */
umask all 0000
}

[uid=0 gid=0 perms=0644] /etc/passwd = {
root:x:0:0:Superuser:/root:/bin/sh
sshd:x:15:6:sshd:/var/chroot/sshd:/bin/false
qnxuser:x:1000:1000:QNX User:/home/qnxuser:/bin/sh
}

# Enabled Username/Password: root/root, qnxuser/qnxuser
[uid=0 gid=0 perms=0600] /etc/shadow = {
root:@S@NKlWES1quMp1wmqugkUSnFEpPGn58kIs4wQOgDDNs06vimR+bbGPUKM+9P6jbFUzo3Rm+Qe5MS+17xKhwaeJEg==@Mjg5ZTJiMTM0YTRjYTE2ZGFjMDdhZTFlY2NlMDVmNmE=:1468494669:0:0
sshd:*:1231323780:0:0
qnxuser:@S@HZERXjgixvb3157FFeraShhvTVw+10ccUtVUVZbi0fUwpzlzBZFw5gHiFd1XHKit8D39Whe749XAY8fV4P5ANQ==@Y2ZlOTg3M2RhNTM4Y2M2ODY0OWZhODdiNDRkMmU5Nzg=:1468488235:0:0
}

[uid=0 gid=0 perms=0644] /etc/group = {
root:x:0:root
sshd:x:6:
qnxuser:x:qnxuser
}

###########################################################################
## PAM configurations addon build file
###########################################################################
[uid=0 gid=0 perms=4755] /bin/login=login
[uid=0 gid=0 perms=4755] /bin/passwd=passwd
[uid=0 gid=0 perms=4755] /bin/su=su
[uid=0 gid=0 perms=0755] /usr/sbin/sshd=sshd
[uid=0 gid=0 perms=0755] /usr/sbin/ftpd=ftpd
[uid=0 gid=0 perms=0755] /usr/sbin/inetd=inetd
[uid=0 gid=0 perms=0755] /usr/sbin/telnetd=telnetd

[uid=0 gid=0 type=dir dperms=0755] /usr
[uid=0 gid=0 type=dir dperms=0755] /usr/lib
[uid=0 gid=0 type=dir dperms=0755] /etc
[uid=0 gid=0 type=dir dperms=0755] /etc/pam.d
[uid=0 gid=0 perms=0644] /etc/pam.d/login=${QNX_TARGET}/etc/pam.d/login
[uid=0 gid=0 perms=0644] /etc/pam.d/passwd=${QNX_TARGET}/etc/pam.d/passwd
[uid=0 gid=0 perms=0644] /etc/pam.d/su=${QNX_TARGET}/etc/pam.d/su
[uid=0 gid=0 perms=0644] /etc/pam.d/ftpd=${QNX_TARGET}/etc/pam.d/ftpd

[uid=0 gid=0 perms=0755] /usr/lib/libpam.so=libpam.so
[uid=0 gid=0 perms=0755] /usr/lib/pam_ftpusers.so=pam_ftpusers.so
[uid=0 gid=0 perms=0755] /usr/lib/pam_rootok.so=pam_rootok.so
[uid=0 gid=0 perms=0755] /usr/lib/pam_qnx.so=pam_qnx.so
#[uid=0 gid=0 perms=0755] /usr/lib/pam_deny.so=pam_deny.so
#[uid=0 gid=0 perms=0755] /usr/lib/pam_echo.so=pam_echo.so
#[uid=0 gid=0 perms=0755] /usr/lib/pam_exec.so=pam_exec.so
#[uid=0 gid=0 perms=0755] /usr/lib/pam_group.so=pam_group.so
#[uid=0 gid=0 perms=0755] /usr/lib/pam_mac.so=pam_mac.so
#[uid=0 gid=0 perms=0755] /usr/lib/pam_permit.so=pam_permit.so
#[uid=0 gid=0 perms=0755] /usr/lib/pam_radius.so=pam_radius.so
#[uid=0 gid=0 perms=0755] /usr/lib/pam_self.so=pam_self.so

##########################################################################
## Set environment
###########################################################################
# Create a profile so telnet sessions will get environment variables
/etc/profile={
# env settings for new PCIe server
export PCI_HW_MODULE=/lib/dll/pci/pci_hw-xzynq-zcu102.so
export PCI_BKWD_COMPAT_MODULE=/lib/dll/pci/pci_bkwd_compat.so
export PCI_SLOG_MODULE=/lib/dll/pci/pci_slog2.so
export PCI_DEBUG_MODULE=/lib/dll/pci/pci_debug2.so
export PCI_BASE_VERBOSITY=0
# If running on a pre Rev 1 board with pre ES2 silicon, uncomment the next line
#export PCI_HW_CONFIG_FILE=/etc/pci_hw.cfg

export HOME=/
export SYSNAME=nto
export TERM=qansi
export PATH=/proc/boot:/bin:/usr/bin:/sbin:/usr/sbin:/usr/lib
export LD_LIBRARY_PATH=/proc/boot:/lib:/usr/lib:/lib/dll:/lib/dll/pci

export  XLNX_VART_FIRMWARE=/dpu.xclbin

}

[uid=0 gid=0 perms=0444] /etc/pci_hw.cfg = {
[slots]
10ee;7024;0;1

# next 2 lines are for pre Rev 1/ES2 silicon only
#[XZYNQ]
#DYN_OFFSET_CALIBRATION = disable
}

###########################################################################
## disk commands
###########################################################################
/sbin/chkqnx6fs=chkqnx6fs
/bin/df=df
/bin/du=du
/sbin/fdisk=fdisk
/sbin/mkdosfs=mkdosfs
/sbin/mkqnx6fs=mkqnx6fs
/bin/mount=mount
/bin/sync=sync
/bin/umount=umount

###########################################################################
## network commands
###########################################################################
/usr/bin/arp=arp
/usr/sbin/fs-nfs3=fs-nfs3
/bin/hostname=hostname
/sbin/ifconfig=ifconfig
/usr/sbin/if_up=if_up
/usr/bin/netstat=netstat
/usr/sbin/nicinfo=nicinfo
/usr/bin/ping=ping
/usr/bin/qtalk=qtalk
/sbin/route=route
/usr/bin/setconf=setconf

###########################################################################
## Slogger
###########################################################################
/bin/slogger2=slogger2
/bin/slog2info=slog2info

###########################################################################
## Start the main shell
###########################################################################
[perms=0744] .console.sh={
    #######################################################################
    ## REMOTE_DEBUG (gdb or Momentics)
    ##  - refer to the help documentation for the gdb, qconn and the IDE
    ##    for more information on remote debugging
    ##  - the commands shown require that NETWORK is enabled too
    #######################################################################
    echo "Starting devc-pty..."
    devc-pty

    # Wait for socket before starting qconn
    waitfor /dev/socket 4

    echo "Starting qconn..."
    qconn

    ksh -l
}

###########################################################################
## general commands
###########################################################################
/usr/bin/awk=awk
/bin/cat=cat
/bin/chmod=chmod
/usr/bin/cksum=cksum
/bin/cp=cp
/usr/bin/date=date
/bin/dd=dd
/sbin/devb-ram=devb-ram
/usr/bin/diff=diff
/usr/bin/env=env
/usr/bin/grep=grep
/bin/isendrecv=isendrecv
/bin/ksh=ksh
/bin/ln=ln
/bin/ls=ls
/bin/mv=mv
/bin/on=on
/bin/pidin=pidin
/sbin/pipe=pipe
/usr/bin/printf=printf
/usr/sbin/random=random
/bin/rm=rm
/sbin/shutdown=shutdown
/bin/slay=slay
/usr/bin/sleep=sleep
/bin/stty=stty
/usr/bin/top=top
/usr/bin/touch=touch
/bin/uname=uname
/usr/bin/use=use
/bin/waitfor=waitfor
/usr/bin/wc=wc
/usr/bin/which=which

# Extra commands
/usr/bin/mkdir=mkdir

/usr/bin/curl=curl
/usr/lib/libcurl.so=libcurl.so
/usr/lib/libcares.so=libcares.so

/usr/bin/ldd=ldd

/lib/libjpeg.so=libjpeg.so
/usr/lib/libpng.so=libpng.so
/usr/lib/libpng16.so=libpng16.so
/usr/lib/libtiff.so=libtiff.so

/usr/bin/tar=tar
/usr/lib/libxml2.so=libxml2.so
/usr/lib/liblzma.so=liblzma.so
/usr/lib/libbz2.so=libbz2.so

/usr/bin/unzip=unzip
###########################################################################
## END OF BUILD SCRIPT
###########################################################################
 

...

Expand
titlezcu102.build
Code Block
###################################################################################
#
# QNX Neutrino on the Xilinx Zynq UltraScale+ MPSoC ZCU102 Evaluation Kit,
# based on ARM Cortex A53
#
####################################################################################

#[+keeplinked]
[+compress]
[image=0x100000]

[virtual=aarch64le,raw] .bootstrap = {
    # Startup parameters
    #  "-a <AXI INTC base address>,<GIC IRQ #>[,<GIC IRQ trigger mode>]"
    #
    #    Configure the AXI INTC controller(s) present in the PL image.
    #    <GIC IRQ trigger mode> should be 0 for level-triggered (the default)
    #    or 1 for edge-triggered.
    #    A maximum of 4 INTC controllers can be configured.

    # Ex: Configure an INTC with base address 0x80042000 connected to level-triggered GIC IRQ 141.
    # Also configure a second INTC with base address 0x80043000 connected to edge-triggered GIC IRQ 142.
    # startup-xzynq-zcu10x -v -a0x80042000,141 -a0x80043000,142,1

    startup-xzynq-zcu10x -v 
    PATH=/proc/boot:/bin:/usr/bin:/sbin:/usr/sbin:/usr/lib LD_LIBRARY_PATH=/proc/boot:/lib:/usr/lib:/lib/dll:/lib/dll/pci procnto-smp-instr -v
}
[+script] .script = {
    display_msg Welcome to QNX Neutrino 7.1.0 on the Xilinx MPSoC ZCU102 (ARM Cortex-A53)

    # Setup Environment variables
    ENV=/etc/profile

    # Start some common servers
    slogger2
    pipe

    #######################################################################
    ## MPSoC clock manager
    #######################################################################
    display_msg Starting clock manager...
    clock-xzynq -v

    #######################################################################
    ## Random service
    #######################################################################
    display_msg Starting random service...
    random -t
    waitfor /dev/random 5

    #######################################################################
    ## Serial driver
    #######################################################################
    display_msg Starting Serial driver (UART0 and UART1)...
    devc-serxzynq -e -F -S 0xFF000000,53 0xFF010000,54
    reopen /dev/ser1

    #######################################################################
    ## SD driver
    #######################################################################
    display_msg Starting SDMMC driver for SD card (SDIO1)...
    devb-sdmmc-xzynq sdio addr=0xFF170000,irq=81

    #######################################################################
    ## USB
    #######################################################################
    display_msg Starting USB OTG...
    io-usb-otg -d hcd-xzynq-xhci ioport=0xFE200000,irq=97

    display_msg Starting USB mass storage driver...
    devb-umass cam pnp

    #######################################################################
    ## PCI Server
    #######################################################################
    PCI_HW_MODULE=/lib/dll/pci/pci_hw-xzynq-zcu102.so
    PCI_BKWD_COMPAT_MODULE=/lib/dll/pci/pci_bkwd_compat.so
    PCI_SLOG_MODULE=/lib/dll/pci/pci_slog2.so
    PCI_DEBUG_MODULE=/lib/dll/pci/pci_debug2.so
    PCI_BASE_VERBOSITY=0
    display_msg Starting PCI Server...
    pci-server -c --bus-scan-limit=1

    #######################################################################
    ## QSPI flash driver
    #######################################################################
    display_msg Starting QSPI flash driver...
    devf-qspi-xzynq-zcu102 -r bus_speed=100000000,input_clk=200000000 &

    #######################################################################
    ## I2C devices
    #######################################################################
    display_msg Starting I2C drivers (/dev/i2c0 and /dev/i2c1)...
    i2c-xzynq -p 0xFF020000 -i 49 --u 0
    i2c-xzynq -p 0xFF030000 -i 50 --u 1

    #######################################################################
    ## CAN
    #######################################################################
    display_msg Starting CAN driver (/dev/can2/)...
    dev-can-xzynq mpsoccan2

    #######################################################################
    ## Networking
    #######################################################################
    display_msg Starting Network driver...
    sh -c "io-pkt-v6-hc -dxzynq-ultrascale mac=`getmac-i2c-zcu102`"
    if_up -p xzynq0
    dhclient -m -lf /dev/shmem/dhclient.leases -pf /dev/shmem/dhclient.pid -nw xzynq0

    #######################################################################
    ## SPI driver
    #######################################################################
    display_msg Starting SPI0 and SPI1...
    spi-master -u 0 -d xzynq-zcu102 base=0xFF040000,irq=51,clock=150000000
    spi-master -u 1 -d xzynq-zcu102 base=0xFF050000,irq=52,clock=150000000

    #######################################################################
    ## On Chip Memory driver
    #######################################################################
    display_msg Starting OCM driver...
    ocm-xzynq

    # Start inetd for telnet access
    inetd

    #######################################################################
    ## Graphics
    #######################################################################
    display_msg Starting Screen Graphics...
    /sbin/screen -c /usr/lib/graphics/zcu10x/graphics.conf
    
    ##########################################################################
    ## Xilinx DPU driver
    ##########################################################################
    dpu -U 523:523 -a 0x8F000000 -i 121,122,123,124 &
    
    # Make sure QSPI flash is up before continuing
    waitfor /dev/fs0p0

    /bin/mountSDcard.sh
    
    # Start the main shell
    [+session] ksh /proc/boot/.console.sh &
}

#SDcard boot partition mount
[uid=0 gid=0 perms=0540] /bin/mountSDcard.sh = {
	echo "Mounting SD Card at /"
	if [[ -e /dev/hd0t11 ]]; then 
		mount -w -t dos -o exe=all /dev/hd0t11 /
	elif [[ -e /dev/hd0t12 ]]; then 
		mount -w -t dos -o exe=all /dev/hd0t12 /
	elif [[ -e /dev/hd0t14 ]]; then 
		mount -w -t dos -o exe=all /dev/hd0t14 /
	elif [[ -e /dev/hd0t131 ]]; then 
		echo "Mounting SD Card as dos type even though detected type is ext4"
		mount -w -t dos -o exe=all /dev/hd0t131 /
	else
		echo "Could not mount SD Card"
	fi
}

# Redirect console messages
[type=link] /bin/sh=/bin/ksh
[type=link] /dev/console=/dev/ser1
[type=link] /tmp=/dev/shmem
[type=link] /var/log=/tmp
[type=link] /usr/tmp=/tmp

# Shared libraries
/lib/libc.so=libc.so
/lib/libgcc_s.so.1=libgcc_s.so.1
/usr/lib/ldqnx-64.so.2=ldqnx-64.so.2
/lib/libregex.so=libregex.so
/lib/libqh.so=libqh.so
/lib/libm.so=libm.so
/lib/libsecpol.so=libsecpol.so
/usr/lib/libncursesw.so=libncursesw.so

###########################################################################
## Minimal XRT
###########################################################################
/lib/libxrt_coreutil.so=libxrt_coreutil.so
/lib/libxrt_core.so=libxrt_core.so

###########################################################################
## Vitis-AI
###########################################################################
# Utilities & drivers
/bin/show_dpu=show_dpu
/bin/dpu=dpu

# Vitis-AI libs
/usr/lib/libjson-c.so=libjson-c.so
/usr/lib/libprotobuf.so=libprotobuf.so
/usr/lib/libprotoc.so=libprotoc.so
/usr/lib/libc++.so=libc++.so
/usr/lib/libiconv.so=libiconv.so
/usr/lib/libintl.so=libintl.so
/usr/lib/libboost_system.so=libboost_system.so
/usr/lib/libboost_atomic.so=libboost_atomic.so
/usr/lib/libboost_filesystem.so=libboost_filesystem.so
/usr/lib/libglog.so=libglog.so
/usr/lib/libgflags.so=libgflags.so
/lib/libcatalog.so=libcatalog.so
/lib/libunilog.so=libunilog.so
/lib/libtarget_factory.so=libtarget_factory.so
/lib/libxir.so=libxir.so
/lib/libvart.so=libvart.so
/lib/libvart-dpu-runner.so=libvart-dpu-runner.so

# Vitis-AI Library libs
/lib/libvitis_ai_library-extra_ops.so=libvitis_ai_library-extra_ops.so
/lib/libvitis_ai_library-model_config.so=libvitis_ai_library-model_config.so
/lib/libvitis_ai_library-math.so=libvitis_ai_library-math.so
/lib/libvitis_ai_library-runner_helper.so=libvitis_ai_library-runner_helper.so
/lib/libvitis_ai_library-dpu_task.so=libvitis_ai_library-dpu_task.so
/lib/libvitis_ai_library-cpu_task.so=libvitis_ai_library-cpu_task.so
/lib/libvitis_ai_library-graph_runner.so=libvitis_ai_library-graph_runner.so
/lib/libvitis_ai_library-xmodel_jit.so=libvitis_ai_library-xmodel_jit.so
/lib/libvitis_ai_library-xmodel_image.so=libvitis_ai_library-xmodel_image.so
/lib/libvitis_ai_library-xnnpp.so=libvitis_ai_library-xnnpp.so
/lib/libvitis_ai_library-classification.so=libvitis_ai_library-classification.so
/lib/libvitis_ai_library-tfssd.so=libvitis_ai_library-tfssd.so
/lib/libvitis_ai_library-facedetect.so=libvitis_ai_library-facedetect.so
/lib/libvitis_ai_library-facefeature.so=libvitis_ai_library-facefeature.so
/lib/libvitis_ai_library-lanedetect.so=libvitis_ai_library-lanedetect.so
/lib/libvitis_ai_library-yolov2.so=libvitis_ai_library-yolov2.so
/lib/libvitis_ai_library-yolov3.so=libvitis_ai_library-yolov3.so
/lib/libvitis_ai_library-RGBDsegmentation.so=libvitis_ai_library-RGBDsegmentation.so
/lib/libvitis_ai_library-facelandmark.so=libvitis_ai_library-facelandmark.so
/lib/libvitis_ai_library-facequality5pt.so=libvitis_ai_library-facequality5pt.so
/lib/libvitis_ai_library-ssd.so=libvitis_ai_library-ssd.so
/lib/libvitis_ai_library-segmentation.so=libvitis_ai_library-segmentation.so
/lib/libvitis_ai_library-covid19segmentation.so=libvitis_ai_library-covid19segmentation.so
/lib/libvitis_ai_library-3Dsegmentation.so=libvitis_ai_library-3Dsegmentation.so
/lib/libvitis_ai_library-refinedet.so=libvitis_ai_library-refinedet.so
/lib/libvitis_ai_library-openpose.so=libvitis_ai_library-openpose.so
/lib/libvitis_ai_library-hourglass.so=libvitis_ai_library-hourglass.so
/lib/libvitis_ai_library-posedetect.so=libvitis_ai_library-posedetect.so
/lib/libvitis_ai_library-reid.so=libvitis_ai_library-reid.so
/lib/libvitis_ai_library-rcan.so=libvitis_ai_library-rcan.so
/lib/libvitis_ai_library-reidtracker.so=libvitis_ai_library-reidtracker.so
/lib/libvitis_ai_library-multitask.so=libvitis_ai_library-multitask.so
/lib/libvitis_ai_library-multitaskv3.so=libvitis_ai_library-multitaskv3.so
/lib/libvitis_ai_library-platedetect.so=libvitis_ai_library-platedetect.so
/lib/libvitis_ai_library-platenum.so=libvitis_ai_library-platenum.so
/lib/libvitis_ai_library-platerecog.so=libvitis_ai_library-platerecog.so
/lib/libvitis_ai_library-carplaterecog.so=libvitis_ai_library-carplaterecog.so
/lib/libvitis_ai_library-medicalsegmentation.so=libvitis_ai_library-medicalsegmentation.so
/lib/libvitis_ai_library-medicaldetection.so=libvitis_ai_library-medicaldetection.so
/lib/libvitis_ai_library-facerecog.so=libvitis_ai_library-facerecog.so
/lib/libvitis_ai_library-facedetectrecog.so=libvitis_ai_library-facedetectrecog.so
/lib/libvitis_ai_library-pointpillars.so=libvitis_ai_library-pointpillars.so
/lib/libvitis_ai_library-pointpillars_nuscenes.so=libvitis_ai_library-pointpillars_nuscenes.so
/lib/libvitis_ai_library-pointpainting.so=libvitis_ai_library-pointpainting.so
/lib/libvitis_ai_library-centerpoint.so=libvitis_ai_library-centerpoint.so
/lib/libvitis_ai_library-retinaface.so=libvitis_ai_library-retinaface.so
/lib/libvitis_ai_library-mnistclassification.so=libvitis_ai_library-mnistclassification.so
/lib/libvitis_ai_library-medicalsegcell.so=libvitis_ai_library-medicalsegcell.so
/lib/libvitis_ai_library-bcc.so=libvitis_ai_library-bcc.so
/lib/libvitis_ai_library-pmg.so=libvitis_ai_library-pmg.so
/lib/libvitis_ai_library-general1.so=libvitis_ai_library-general1.so
/lib/libvitis_ai_library-multi_runner.so=libvitis_ai_library-multi_runner.so
/lib/libvitis_ai_library-arflow.so=libvitis_ai_library-arflow.so
/lib/libvitis_ai_library-bevdet.so=libvitis_ai_library-bevdet.so
/lib/libvitis_ai_library-c2d2_lite.so=libvitis_ai_library-c2d2_lite.so
/lib/libvitis_ai_library-cflownet.so=libvitis_ai_library-cflownet.so
/lib/libvitis_ai_library-clocs.so=libvitis_ai_library-clocs.so
/lib/libvitis_ai_library-efficientdet_d2.so=libvitis_ai_library-efficientdet_d2.so
/lib/libvitis_ai_library-fairmot.so=libvitis_ai_library-fairmot.so
/lib/libvitis_ai_library-fusion_cnn.so=libvitis_ai_library-fusion_cnn.so
/lib/libvitis_ai_library-monodepth2.so=libvitis_ai_library-monodepth2.so
/lib/libvitis_ai_library-movenet.so=libvitis_ai_library-movenet.so
/lib/libvitis_ai_library-ocr.so=libvitis_ai_library-ocr.so
/lib/libvitis_ai_library-ofa_yolo.so=libvitis_ai_library-ofa_yolo.so
/lib/libvitis_ai_library-pmrid.so=libvitis_ai_library-pmrid.so
/lib/libvitis_ai_library-polypsegmentation.so=libvitis_ai_library-polypsegmentation.so
/lib/libvitis_ai_library-solo.so=libvitis_ai_library-solo.so
/lib/libvitis_ai_library-textmountain.so=libvitis_ai_library-textmountain.so
/lib/libvitis_ai_library-tracker.so=libvitis_ai_library-tracker.so
/lib/libvitis_ai_library-ultrafast.so=libvitis_ai_library-ultrafast.so
/lib/libvitis_ai_library-vehicleclassification.so=libvitis_ai_library-vehicleclassification.so
/lib/libvitis_ai_library-yolov6.so=libvitis_ai_library-yolov6.so
/lib/libvitis_ai_library-yolovx.so=libvitis_ai_library-yolovx.so
/lib/libxmodel_postprocessor_common.so=libxmodel_postprocessor_common.so
/lib/libxmodel_postprocessor_classification.so=libxmodel_postprocessor_classification.so
/lib/libxmodel_postprocessor_densebox.so=libxmodel_postprocessor_densebox.so
/lib/libxmodel_postprocessor_plate_number.so=libxmodel_postprocessor_plate_number.so
/lib/libxmodel_postprocessor_face_recognition.so=libxmodel_postprocessor_face_recognition.so
/lib/libxmodel_postprocessor_face_quality.so=libxmodel_postprocessor_face_quality.so
/lib/libxmodel_postprocessor_face_landmark.so=libxmodel_postprocessor_face_landmark.so
/lib/libxmodel_postprocessor_open_pose.so=libxmodel_postprocessor_open_pose.so
/lib/libxmodel_postprocessor_segmentation.so=libxmodel_postprocessor_segmentation.so
/lib/libxmodel_postprocessor_ssd.so=libxmodel_postprocessor_ssd.so
/lib/libxmodel_postprocessor_yolov3.so=libxmodel_postprocessor_yolov3.so
/lib/libxmodel_preprocessor_common.so=libxmodel_preprocessor_common.so
/lib/libxmodel_preprocessor_vgg.so=libxmodel_preprocessor_vgg.so
/lib/libxmodel_preprocessor_efficientnet.so=libxmodel_preprocessor_efficientnet.so

# Sample apps
/usr/bin/resnet50=resnet50
/usr/bin/test_jpeg_facedetect=test_jpeg_facedetect
/usr/bin/segmentation=segmentation

# Python support coming soon
#/usr/lib/libpython3.11.so=libpython3.11.so
#/usr/lib/libffi.so=libffi.so
#/usr/bin/python3=python3
#/usr/bin/python3.11=python3.11
#[search=${QNX_TARGET}/${PROCESSOR}/usr/lib/python3.11/site-packages]/usr/lib/python3.11/site-packages/xir.so=xir.so
#[search=${QNX_TARGET}/${PROCESSOR}/usr/lib/python3.11/site-packages]/usr/lib/python3.11/site-packages/vart.so=vart.so

/usr/bin/dirname=dirname
/usr/bin/python3=python3
/usr/bin/python3.11=python3.11
###########################################################################
# OpenCV
###########################################################################
[prefix=/usr/lib]
libopencv_calib3d.so 
libopencv_core.so 
libopencv_dnn.so
libopencv_features2d.so
libopencv_flann.so
libopencv_highgui.so
libopencv_imgcodecs.so
libopencv_imgproc.so
libopencv_ml.so
libopencv_objdetect.so
libopencv_photo.so
libopencv_stitching.so
libopencv_videoio.so
libopencv_video.so
#Restore default prefix
[prefix=/proc/boot]

###########################################################################
## Tracelog
###########################################################################
/lib/libtracelog.so=libtracelog.so

###########################################################################
## Slogger2
###########################################################################
/lib/libslog2.so=libslog2.so
/lib/libslog2parse.so=libslog2parse.so

###########################################################################
## uncomment for SPI driver
###########################################################################
/lib/dll/spi-xzynq-zcu102.so=spi-xzynq-zcu102.so

###########################################################################
## uncomment for NETWORK driver
###########################################################################
/lib/dll/devnp-xzynq-ultrascale.so=devnp-xzynq-ultrascale.so
/lib/dll/devnp-e1000.so=devnp-e1000.so

/lib/libsocket.so=libsocket.so
/usr/lib/libz.so=libz.so
/usr/lib/libssl.so=libssl.so
/usr/lib/libcrypto.so=libcrypto.so
/usr/lib/libqcrypto.so=libqcrypto.so
/lib/dll/qcrypto-openssl.so=qcrypto-openssl.so
/usr/lib/libnbutil.so=libnbutil.so

###########################################################################
## uncomment for USB
###########################################################################
/lib/dll/devu-hcd-xzynq-xhci.so=devu-hcd-xzynq-xhci.so
/lib/libusbdi.so=libusbdi.so

###########################################################################
## BLOCK drivers libraries
###########################################################################
/lib/libcam.so=libcam.so
/lib/dll/io-blk.so=io-blk.so
/lib/dll/cam-disk.so=cam-disk.so
/lib/dll/cam-cdrom.so=cam-cdrom.so
/lib/dll/fs-qnx6.so=fs-qnx6.so
/lib/dll/fs-dos.so=fs-dos.so

###########################################################################
## GPIO
###########################################################################
/lib/libgpio-xzynq.so=libgpio-xzynq.so

###########################################################################
## PCIe server Support
###########################################################################
/lib/libpanelw.so=libpanelw.so
/lib/libncurses.so=libncurses.so

/lib/libpci.so=libpci.so

# For the PCI server we need to separately search the SDP folder and the
# install folder so we get both the full set of PCI modules (from the SDP)
# and the patched pci_hw modules (from install). The order here matters,
# we need to check ../install first to get the correct pci_hw*.so symlinks.

[-followlink search=${QNX_TARGET}/${PROCESSOR}/lib/dll] /lib/dll/pci=pci

###########################################################################
## Graphics support - screen
###########################################################################
/lib/dll/screen-gles2blt.so=screen-gles2blt.so
/lib/dll/screen-debug.so=screen-debug.so
/lib/dll/screen-zynq-alloc.so=screen-zynq-alloc.so

/usr/lib/libWFD.so=libWFD.so
/lib/libgestures.so=libgestures.so
/lib/libmemobj.so=libmemobj.so
/lib/libscrmem.so=libscrmem.so
/lib/libinputevents.so=libinputevents.so
/lib/libkalman.so=libkalman.so
/usr/lib/libscreen.so=libscreen.so

/lib/libhiddi.so=libhiddi.so

###########################################################################
## Graphics base libraries
###########################################################################
/lib/dll/libwfdcfg-sample.so=libwfdcfg-sample.so
/lib/dll/screen-gles1.so=screen-gles1.so
/usr/lib/libEGL.so=libEGL.so
/usr/lib/libGLESv1_CL.so=libGLESv1_CL.so
/usr/lib/libGLESv1_CM.so=libGLESv1_CM.so
/usr/lib/libGLESv2.so=libGLESv2.so

###########################################################################
## Font libraries
###########################################################################
/usr/lib/libfontconfig.so=libfontconfig.so
/usr/lib/libfreetype.so=libfreetype.so

###########################################################################
## Image Codecs
# uncomment for image loading
###########################################################################
#[search=${QNX_TARGET}/etc/system/config]/etc/system/config/img.conf=img.conf
#/lib/libimg.so=libimg.so
#/lib/libjpeg.so=libjpeg.so
#/lib/dll/img_codec_bmp.so=img_codec_bmp.so
#/lib/dll/img_codec_gif.so=img_codec_gif.so
#/lib/dll/img_codec_jpg.so=img_codec_jpg.so
#/lib/dll/img_codec_pcx.so=img_codec_pcx.so
#/lib/dll/img_codec_png.so=img_codec_png.so
#/lib/dll/img_codec_sgi.so=img_codec_sgi.so
#/lib/dll/img_codec_tga.so=img_codec_tga.so
#/lib/dll/img_codec_tif.so=img_codec_tif.so
#/lib/dll/img_codec_wbmp.so=img_codec_wbmp.so
#/usr/lib/libgif.so=libgif.so
#/usr/lib/liblzma.so=liblzma.so
#/usr/lib/libpng.so=libpng.so
#/usr/lib/libpng16.so=libpng16.so
#/usr/lib/libtiff.so=libtiff.so

###########################################################################
## Input libraries
###########################################################################
/lib/libmtouch-calib.so=libmtouch-calib.so
/lib/libmtouch-devi.so=libmtouch-devi.so
/lib/libmtouch-fake.so=libmtouch-fake.so
/lib/libmtouch-hid.so=libmtouch-hid.so
/lib/libmtouch-inject.so=libmtouch-inject.so

###########################################################################
## Board specific graphics files
###########################################################################
/usr/lib/graphics/zcu10x/graphics.conf=graphics/zcu10x/graphics.conf
/usr/lib/graphics/zcu10x/libwfdcfg-zcu10x.so=graphics/zcu10x/libwfdcfg-zcu10x.so
/usr/lib/graphics/zcu10x/libWFDzynq.so=graphics/zcu10x/libWFDzynq.so
/usr/lib/graphics/zcu10x/libmali.so=graphics/zcu10x/libmali.so
/usr/lib/graphics/zcu10x/libmali-kbase.so=graphics/zcu10x/libmali-kbase.so

[dperms=0755]

###########################################################################
## helper scripts
###########################################################################
[search=../install/scripts] /usr/sbin/reflash-image.sh=reflash-image.sh

###########################################################################
## libqcrypto support
###########################################################################
[perms=644] /etc/qcrypto.conf = {
openssl     tags=*
}

###########################################################################
## uncomment for board clock manager
###########################################################################
/sbin/clock-xzynq=clock-xzynq

###########################################################################
## uncomment for SD driver
###########################################################################
/sbin/devb-sdmmc-xzynq=devb-sdmmc-xzynq

###########################################################################
## uncomment for QSPI flash driver
###########################################################################
/sbin/devf-qspi-xzynq-zcu102=devf-qspi-xzynq-zcu102
/usr/bin/flashctl=flashctl

###########################################################################
## uncomment for NETWORK driver
###########################################################################
/sbin/io-pkt-v6-hc=io-pkt-v6-hc
/bin/getmac-i2c-zcu102=getmac-i2c-zcu102

###########################################################################
## dhclient support
###########################################################################
/sbin/dhclient=dhclient
[search=${QNX_TARGET}/sbin perms=a+x] /sbin/dhclient-script=dhclient-script
[search=${QNX_TARGET}/etc]/etc/dhclient.conf=dhclient.conf

###########################################################################
## uncomment for USB
###########################################################################
/sbin/io-usb-otg=io-usb-otg
/sbin/usb=usb
/sbin/devb-umass=devb-umass

###########################################################################
## uncomment for REMOTE_DEBUG
###########################################################################
/sbin/devc-pty=devc-pty
/usr/sbin/qconn=qconn
/usr/bin/pdebug=pdebug

###########################################################################
## uncomment for Serial driver
###########################################################################
/sbin/devc-serxzynq=devc-serxzynq

###########################################################################
## uncomment for I2C, SPI and OCM drivers
###########################################################################
/sbin/i2c-xzynq=i2c-xzynq
/sbin/spi-master=spi-master
/sbin/ocm-xzynq=ocm-xzynq

###########################################################################
## PCI support
###########################################################################
/sbin/pci-server=pci-server
/sbin/pci-tool=pci-tool
/sbin/rsrcdb_query=rsrcdb_query
[search=${QNX_TARGET}/etc/system/config/pci] /etc/system/config/pci/pcidatabase.com-tab_delimited.txt=pcidatabase.com-tab_delimited.txt

###########################################################################
## uncomment for CAN driver
###########################################################################
/bin/dev-can-xzynq=dev-can-xzynq
/bin/canctl=canctl

###########################################################################
## Screen executables
###########################################################################
/sbin/screen=screen
/usr/bin/sw-vsync=sw-vsync
/usr/bin/gles2-gears=gles2-gears
/usr/bin/calib-touch=calib-touch
/usr/bin/events=events

###########################################################################
## Network services (telnet) support
###########################################################################
[type=link] /var/log=/tmp
[type=link] /var/run=/tmp
[type=link] /var/lock=/tmp

/etc/esh = {
}

/etc/hosts=${QNX_TARGET}/etc/hosts
/etc/services=${QNX_TARGET}/etc/services

/etc/inetd.conf = {
ftp        stream tcp nowait root  /usr/sbin/ftpd           in.ftpd -l
telnet     stream tcp nowait root  /usr/sbin/telnetd        in.telnetd
}

/etc/ftpusers=${QNX_TARGET}/etc/ftpusers

/etc/ftpd.conf = {
/* Make things a+rw by default */
umask all 0000
}

[uid=0 gid=0 perms=0644] /etc/passwd = {
root:x:0:0:Superuser:/root:/bin/sh
sshd:x:15:6:sshd:/var/chroot/sshd:/bin/false
qnxuser:x:1000:1000:QNX User:/home/qnxuser:/bin/sh
}

# Enabled Username/Password: root/root, qnxuser/qnxuser
[uid=0 gid=0 perms=0600] /etc/shadow = {
root:@S@NKlWES1quMp1wmqugkUSnFEpPGn58kIs4wQOgDDNs06vimR+bbGPUKM+9P6jbFUzo3Rm+Qe5MS+17xKhwaeJEg==@Mjg5ZTJiMTM0YTRjYTE2ZGFjMDdhZTFlY2NlMDVmNmE=:1468494669:0:0
sshd:*:1231323780:0:0
qnxuser:@S@HZERXjgixvb3157FFeraShhvTVw+10ccUtVUVZbi0fUwpzlzBZFw5gHiFd1XHKit8D39Whe749XAY8fV4P5ANQ==@Y2ZlOTg3M2RhNTM4Y2M2ODY0OWZhODdiNDRkMmU5Nzg=:1468488235:0:0
}

[uid=0 gid=0 perms=0644] /etc/group = {
root:x:0:root
sshd:x:6:
qnxuser:x:qnxuser
}

###########################################################################
## PAM configurations addon build file
###########################################################################
[uid=0 gid=0 perms=4755] /bin/login=login
[uid=0 gid=0 perms=4755] /bin/passwd=passwd
[uid=0 gid=0 perms=4755] /bin/su=su
[uid=0 gid=0 perms=0755] /usr/sbin/sshd=sshd
[uid=0 gid=0 perms=0755] /usr/sbin/ftpd=ftpd
[uid=0 gid=0 perms=0755] /usr/sbin/inetd=inetd
[uid=0 gid=0 perms=0755] /usr/sbin/telnetd=telnetd

[uid=0 gid=0 type=dir dperms=0755] /usr
[uid=0 gid=0 type=dir dperms=0755] /usr/lib
[uid=0 gid=0 type=dir dperms=0755] /etc
[uid=0 gid=0 type=dir dperms=0755] /etc/pam.d
[uid=0 gid=0 perms=0644] /etc/pam.d/login=${QNX_TARGET}/etc/pam.d/login
[uid=0 gid=0 perms=0644] /etc/pam.d/passwd=${QNX_TARGET}/etc/pam.d/passwd
[uid=0 gid=0 perms=0644] /etc/pam.d/su=${QNX_TARGET}/etc/pam.d/su
[uid=0 gid=0 perms=0644] /etc/pam.d/ftpd=${QNX_TARGET}/etc/pam.d/ftpd

[uid=0 gid=0 perms=0755] /usr/lib/libpam.so=libpam.so
[uid=0 gid=0 perms=0755] /usr/lib/pam_ftpusers.so=pam_ftpusers.so
[uid=0 gid=0 perms=0755] /usr/lib/pam_rootok.so=pam_rootok.so
[uid=0 gid=0 perms=0755] /usr/lib/pam_qnx.so=pam_qnx.so
#[uid=0 gid=0 perms=0755] /usr/lib/pam_deny.so=pam_deny.so
#[uid=0 gid=0 perms=0755] /usr/lib/pam_echo.so=pam_echo.so
#[uid=0 gid=0 perms=0755] /usr/lib/pam_exec.so=pam_exec.so
#[uid=0 gid=0 perms=0755] /usr/lib/pam_group.so=pam_group.so
#[uid=0 gid=0 perms=0755] /usr/lib/pam_mac.so=pam_mac.so
#[uid=0 gid=0 perms=0755] /usr/lib/pam_permit.so=pam_permit.so
#[uid=0 gid=0 perms=0755] /usr/lib/pam_radius.so=pam_radius.so
#[uid=0 gid=0 perms=0755] /usr/lib/pam_self.so=pam_self.so

##########################################################################
## Set environment
###########################################################################
# Create a profile so telnet sessions will get environment variables
/etc/profile={
# env settings for new PCIe server
export PCI_HW_MODULE=/lib/dll/pci/pci_hw-xzynq-zcu102.so
export PCI_BKWD_COMPAT_MODULE=/lib/dll/pci/pci_bkwd_compat.so
export PCI_SLOG_MODULE=/lib/dll/pci/pci_slog2.so
export PCI_DEBUG_MODULE=/lib/dll/pci/pci_debug2.so
export PCI_BASE_VERBOSITY=0
# If running on a pre Rev 1 board with pre ES2 silicon, uncomment the next line
#export PCI_HW_CONFIG_FILE=/etc/pci_hw.cfg

export HOME=/
export SYSNAME=nto
export TERM=qansi
export PATH=/proc/boot:/bin:/usr/bin:/sbin:/usr/sbin:/usr/lib
export LD_LIBRARY_PATH=/proc/boot:/lib:/usr/lib:/lib/dll:/lib/dll/pci

export  XLNX_VART_FIRMWARE=/dpu.xclbin

}

[uid=0 gid=0 perms=0444] /etc/pci_hw.cfg = {
[slots]
10ee;7024;0;1

# next 2 lines are for pre Rev 1/ES2 silicon only
#[XZYNQ]
#DYN_OFFSET_CALIBRATION = disable
}

###########################################################################
## disk commands
###########################################################################
/sbin/chkqnx6fs=chkqnx6fs
/bin/df=df
/bin/du=du
/sbin/fdisk=fdisk
/sbin/mkdosfs=mkdosfs
/sbin/mkqnx6fs=mkqnx6fs
/bin/mount=mount
/bin/sync=sync
/bin/umount=umount

###########################################################################
## network commands
###########################################################################
/usr/bin/arp=arp
/usr/sbin/fs-nfs3=fs-nfs3
/bin/hostname=hostname
/sbin/ifconfig=ifconfig
/usr/sbin/if_up=if_up
/usr/bin/netstat=netstat
/usr/sbin/nicinfo=nicinfo
/usr/bin/ping=ping
/usr/bin/qtalk=qtalk
/sbin/route=route
/usr/bin/setconf=setconf

###########################################################################
## Slogger
###########################################################################
/bin/slogger2=slogger2
/bin/slog2info=slog2info

###########################################################################
## Start the main shell
###########################################################################
[perms=0744] .console.sh={
    #######################################################################
    ## REMOTE_DEBUG (gdb or Momentics)
    ##  - refer to the help documentation for the gdb, qconn and the IDE
    ##    for more information on remote debugging
    ##  - the commands shown require that NETWORK is enabled too
    #######################################################################
    echo "Starting devc-pty..."
    devc-pty

    # Wait for socket before starting qconn
    waitfor /dev/socket 4

    echo "Starting qconn..."
    qconn

    ksh -l
}

###########################################################################
## general commands
###########################################################################
/usr/bin/awk=awk
/bin/cat=cat
/bin/chmod=chmod
/usr/bin/cksum=cksum
/bin/cp=cp
/usr/bin/date=date
/bin/dd=dd
/sbin/devb-ram=devb-ram
/usr/bin/diff=diff
/usr/bin/env=env
/usr/bin/grep=grep
/bin/isendrecv=isendrecv
/bin/ksh=ksh
/bin/ln=ln
/bin/ls=ls
/bin/mv=mv
/bin/on=on
/bin/pidin=pidin
/sbin/pipe=pipe
/usr/bin/printf=printf
/usr/sbin/random=random
/bin/rm=rm
/sbin/shutdown=shutdown
/bin/slay=slay
/usr/bin/sleep=sleep
/bin/stty=stty
/usr/bin/top=top
/usr/bin/touch=touch
/bin/uname=uname
/usr/bin/use=use
/bin/waitfor=waitfor
/usr/bin/wc=wc
/usr/bin/which=which

# Extra commands
/usr/bin/mkdir=mkdir

/usr/bin/curl=curl
/usr/lib/libcurl.so=libcurl.so
/usr/lib/libcares.so=libcares.so

/usr/bin/ldd=ldd

/lib/libjpeg.so=libjpeg.so
/usr/lib/libpng.so=libpng.so
/usr/lib/libpng16.so=libpng16.so
/usr/lib/libtiff.so=libtiff.so

/usr/bin/tar=tar
/usr/lib/libxml2.so=libxml2.so
/usr/lib/liblzma.so=liblzma.so
/usr/lib/libbz2.so=libbz2.so

/usr/bin/unzip=unzip
###########################################################################
## END OF BUILD SCRIPT
###########################################################################