I need to support VPU encoding/decoding on Windows Embedded Compact 2013 (Windows CE). My intention is to port linux code, but I have some problems finding the source code. I'm definitely not a linux build nor Yocto expert, so I'm a little lost.
The source code for the VPU library is not included in the linux source available on codeaurora - neither in linux-imx nor in linux-lib nor elsewhere I looked at. Furthermore, I need also the binary blob for the VPU firmware (vpu_fw_imx6q.bin and vpu_fw_imx6d.bin), which again seems not to be part of the imx-linux distribution.
After much googling I ended up at repository.timesys.com/buildsources, which looks (to me) to "the" repo currently used by the Yocto distributions. There I found the compressed packages for both the VPU library source and the VPU firmare, respectively:
Still, I have some questions:
 Is timesys the/an official repository I can safely download up-to-date i.MX linux sources from?
 Are those two packages (library 5.4.38 and firmware 5.4) compatible to each other?
 Are they the latest and stable? A more recent package firmware-imx-8.0.bin is available, which contains a different vpu_fw_imx6q.bin - which VPU library version is that compatible with?
 Will there be any licensing issue if I use the source code and the firmware blob as a reference to port VPU functionality to Windows CE?
I hope someone can help with the above questions - being a linux rookie makes it sometimes very difficult for me to point at the right resources and to find reliable information.
Unfortunately, we do not support Windows CE on our boards. However, we do have the Linux drivers for the VPU in our BSPs. You could port them to windows on your own.
I apologize for the inconvenience this may give you.
Hi Diego, thank you for the reply.
Porting to Windows CE is no problem - provided I can find the sources! Unfortunately the link you provided points to the VPU driver, which is just one piece of the puzzle. The VPU driver can be used to access VPU registers, but without a firmware (binary blob) and the related API it's useless.
The point is: where are the (latest stable) VPU firmware binary blob and the companion API source code?
Unfortunately, what we have so far is what I sent you. You will need to make the porting of the kernel into the Linux distribution on your own. If you want to use Windows on our boards. I apologize for the inconvenience this may give you.