Hello all,
I tested UART,SD and memory using Standalone mode (PS only) in Vivado and Vitis under Windows 10. I am wondering if have the same simple way to test USB,LAN and display port. Thanks.
Hello all,
I tested UART,SD and memory using Standalone mode (PS only) in Vivado and Vitis under Windows 10. I am wondering if have the same simple way to test USB,LAN and display port. Thanks.
When you say Standalone mode, I think you are referring to operating in bare metal mode. Note that you can run bare metal with PS-only or combo PS/PL hardware platforms. I was a little confused stating Standalone and PS-only since those are independent things -- PS-only refers to the hardware platform while Standalone / bare metal refers to the Software Platform.
If you are only concerned about a PS-only hardware platform, then you could still run Petalinux and do lots of things with USB, Ethernet, and DisplayPort. I expect that's not what you were asking, but reply back if it was.
If you want to test the PS peripherals for USB, Ethernet, and DisplayPort using Standalone / bare metal, then I think the question makes a lot more sense. I haven't done any of these personally, but there are some interesting results if you use the keywords "xilinx" and "bare metal" and then the peripheral you want. That directed me to this page, which seemed to have a lot of good stuff.
https://xilinx-wiki.atlassian.net/wiki/spaces/A/pages/18841745/Baremetal+Drivers+and+Libraries
Ethernet:
https://xilinx-wiki.atlassian.net/wiki/spaces/A/pages/18842012/Standalone+Ethernet+Driver
USB:
DisplayPort:
https://xilinx-wiki.atlassian.net/wiki/spaces/A/pages/18842318/ZynqMP+Standalone+DisplayPort+Driver
Are these helpful? Please let us know how it goes!
Bryan
I believe this is what I need. But how can I do it in Vitis? Thanks.
Here's another good one to look at for Ethernet --
https://xilinx-wiki.atlassian.net/wiki/spaces/A/pages/18842366/Standalone+LWIP+library
Your Vitis installation has both built-in generated examples and other examples buried deep in the Vitis install (and also on GitHub).
Built-in Generated Examples
Take a look at https://www.hackster.io/BryanF/ultra96-v2-vitis-2020-2-hello-world-from-arm-a53-2d952a . Instead of picking Hello World, you could pick an LwIP example for the Ethernet. I don't see any built-in examples for USB or DisplayPort, although there might be something in the Peripherals Test.
Examples Deep Within Vitis (and also on GitHub)
If you browse deep within your Vitis install, you will find copies of the drivers AND EXAMPLES! Those examples will almost certainly need to be modified, but it at least gives you a starting point. Here's where I find them in my Linux installation: /tools/Xilinx/Vitis/2020.2/data/embeddedsw/XilinxProcessorIPLib/drivers/
For example, for that Standalone Ethernet Driver, if you go to the GitHub page, you will see that the driver is named "emacps." You also find a link to GitHub: https://github.com/Xilinx/embeddedsw/tree/master/XilinxProcessorIPLib/drivers/emacps
That GitHub link gives you the driver but notice there is also an Examples folder
https://github.com/Xilinx/embeddedsw/tree/master/XilinxProcessorIPLib/drivers/emacps/examples
This same thing is found in your Vitis installation. I found it here:
/tools/Xilinx/Vitis/2020.2/data/embeddedsw/XilinxProcessorIPLib/drivers/emacps_v3_12/examples/
Pick one of those examples and start from there.
Bryan
Here's another good one to look at for Ethernet --
https://xilinx-wiki.atlassian.net/wiki/spaces/A/pages/18842366/Standalone+LWIP+library
Your Vitis installation has both built-in generated examples and other examples buried deep in the Vitis install (and also on GitHub).
Built-in Generated Examples
Take a look at https://www.hackster.io/BryanF/ultra96-v2-vitis-2020-2-hello-world-from-arm-a53-2d952a . Instead of picking Hello World, you could pick an LwIP example for the Ethernet. I don't see any built-in examples for USB or DisplayPort, although there might be something in the Peripherals Test.
Examples Deep Within Vitis (and also on GitHub)
If you browse deep within your Vitis install, you will find copies of the drivers AND EXAMPLES! Those examples will almost certainly need to be modified, but it at least gives you a starting point. Here's where I find them in my Linux installation: /tools/Xilinx/Vitis/2020.2/data/embeddedsw/XilinxProcessorIPLib/drivers/
For example, for that Standalone Ethernet Driver, if you go to the GitHub page, you will see that the driver is named "emacps." You also find a link to GitHub: https://github.com/Xilinx/embeddedsw/tree/master/XilinxProcessorIPLib/drivers/emacps
That GitHub link gives you the driver but notice there is also an Examples folder
https://github.com/Xilinx/embeddedsw/tree/master/XilinxProcessorIPLib/drivers/emacps/examples
This same thing is found in your Vitis installation. I found it here:
/tools/Xilinx/Vitis/2020.2/data/embeddedsw/XilinxProcessorIPLib/drivers/emacps_v3_12/examples/
Pick one of those examples and start from there.
Bryan