Questions

Started by Mulder3, 24. Nov 2008, 03:31

previous topic - next topic
Go Down

Mulder3

24. Nov 2008, 03:31 Last Edit: 24. Nov 2008, 03:36 by Mulder3
Since i am Portuguese,i don't speak German, i usually use Google translate tools to read the German posts, the problem is that Google messes up everything and i can barely understand what are you talking about, so i have a couple of questions for you...

- What are xtasks? As far as i understood, they are some kind of applications that you can execute on XPU, they are arranged in slots(i.e. you upload xtask X in XPU/XOS slot Y) So, the Video decoder uCode is a xtask? The same with the audio decoder and demuxer? They are xtasks? You can communicate with these xtasks or the xos via XRPC? Am i right?

- In the Portugal Telecom MEO firmware package the is 4 files in the root folder(XTLBoot.bin, XTUBoot.bin, XTLApp_1.2_XosE0.bin and XTUApp_1.2_XosE0.bin) What they represent? Also, the naming scheme is a bit odd, what is XTU, XTL, XTA?

- As far as i understood, we can't run the Linux version(i.e. the Popcorn version) of the audio/video uCodes because they are signed with a different certificate? So, what's stopping us from loading the WinCE version of these uCodes? Where they are located? Are they these files i mentioned in my last question?

- In PDA/Windows Mobile world the is a standard WinCE app called hret that can boot Linux from Windows Mobile by jump'ing into linux kernel directly from windows mobile, if we use that technique to boot linux from an already initialized WinCE with uCodes already loaded, in theory it should work... Anybody tried this?

-Where is the bootstrap/discovery address hard-coded in stb? In IPTV boot loader?

PS- the discovery address of Portugal Telecom's MEO iptv service is discovery.iptv.telecom.pt, you can add it to wiki (doesn't work using normal internet connection)

Hoernchen

-xtasks are, well, encrypted tasks which run on the xpu and are managed by the XOS, at least as far as i know. xtasks are more like a conventional program, the ucode is basically the one and only program which controls the correspondig part of the chip, i.e. the demux ucode manages the demux hardware and gets executed by the demux risc CPU (there are about 6 CPUs : MIPS host CPU (wince), MIPS XPU (xos), video DSP (video ucode),  2 audio DSPs (2x audio ucode), risc demux CPU (demux ucode)). You should take a look at README.xpu from the mrua package for a general overview and at rmrpc2xtask for the fifo communication with xtasks.

-XTL* and XTU* are xtasks, L is for load, U is for unload - again, look at README.xpu. No idea what they do...

-The problem with the wince ucodes is : there are none. At least it looks like this, i can't find them. No idea how the WinCE stuff could work without them...

-Most windows ce devices are ARM based, so you would have to port haret to MIPS, that's why i didn't try it so far ;)

bringer of linux, conqueror of hdmi, jack of all trades.

mce2222

also I dont' see any benefit of porting Haret ...  even if there were ucodes in WinCE, you need the matching kernel module for Linux to make the uCodes work, otherwise the API can be incompatible.

since you have to modify the bootloader anyway to allow modification of files, it is just easier to instantly start Linux instead of WinCE.


the xtask load and unload is used to allocate XPU execution slots... there is a limit on how many xtasks can be loaded (and run) at the same time. so it is recommended to unload an xtask when it is not used.
just for security reasons, they require the "unloading token" so that only the creator of the xtask can load and unload the xtask.
it is the same for certificates... only the owner of a certificate can unbind it.


the bootstrap address is stored at the end of the flash.

Go Up