Kodi Community Forum
Allwinner A10 : Is XBMC ported to MALI-400MP ? - Printable Version

+- Kodi Community Forum (https://forum.kodi.tv)
+-- Forum: Discussions (https://forum.kodi.tv/forumdisplay.php?fid=222)
+--- Forum: Hardware (https://forum.kodi.tv/forumdisplay.php?fid=112)
+--- Thread: Allwinner A10 : Is XBMC ported to MALI-400MP ? (/showthread.php?tid=126995)



RE: Allwinner A10 : Is XBMC ported to MALI-400MP ? - Snippo - 2012-11-07

The problem is probably the same for both native and crosscompiling. The armhf rootfs has broken (or missing) python libraries.
Try this and see if it fixes the problems:
Code:
sudo apt-get purge libpython2.7 python2.7 python2.7-dev libssh2*
sudo apt-get install libpython2.7 python2.7 python2.7-dev libssh2*
Something like that fixed it for me. Took me a few hours before I found the problem so I don't remember exactly which steps I took.

I'm also curious about the VPU support on those Pengpod devices. I can't find any information on it so it wouldn't amaze me if they just used empat0's xbmca10 in the video Tongue.


RE: Allwinner A10 : Is XBMC ported to MALI-400MP ? - CreaB - 2012-11-07

Hey there!

I followed the guide from http://linux-sunxi.org/XBMC#Improve_XBMC_rendering_for_Mali_400_GPU to build xbmc on linaro without any problems, but when i try to start xbm i get the following error:

Code:
ERROR: Unable to create GUI. Exiting
Segmentation fault

is there any fix for that. I've seen that this error appeared for others too, maybe the re is any idea?


RE: Allwinner A10 : Is XBMC ported to MALI-400MP ? - rellla - 2012-11-07

why doesn't anybody post a logfile? there are crashlog-files, config.logs .... without these logs it's hard to guess.
rellla


RE: Allwinner A10 : Is XBMC ported to MALI-400MP ? - CreaB - 2012-11-07

(2012-11-07, 20:23)rellla Wrote: why doesn't anybody post a logfile? there are crashlog-files, config.logs .... without these logs it's hard to guess.
rellla

Thats true... :-)
Because it's too long, my last log is here:
http://db.tt/va4K3pQV



RE: Allwinner A10 : Is XBMC ported to MALI-400MP ? - wolfgar - 2012-11-07

Hi CreaB,

I have just had a look at your log, do you have kernel display and graphic modules loaded ?
(on my setup disp_ump, mali_drm, drm, mali, and ump modules are required so that the libEGL works properly...)

Regards



RE: Allwinner A10 : Is XBMC ported to MALI-400MP ? - rellla - 2012-11-07

and do the mali-binarys from empat0's repo (r3p0) fit to mali kernel drivers? don't know, what linaro uses here.
EDIT: what does lsmod and ldd xbmc.bin say?


RE: Allwinner A10 : Is XBMC ported to MALI-400MP ? - chandankp - 2012-11-07

rellla can you please share your .bin with us? I am using image created by Guillaume, hope its the similar setup you use.


AW: Allwinner A10 : Is XBMC ported to MALI-400MP ? - CreaB - 2012-11-07

Here are my lsmod and ldd xbmc.bin:

[code]
lsmod

Module Size Used by
mali_drm 1954 0
8192cu 512561 0
drm 178356 1 mali_drm
mali 130936 0
hdmi 15237 0
lcd 2706 0
disp 219086 3 hdmi,lcd
ump 42518 4 mali,disp
[code]

[code]
ldd xbm.bin

libsmbclient.so.0 => /usr/lib/arm-linux-gnueabihf/libsmbclient.so.0 (0x40360000)
libssh.so.4 => /usr/lib/arm-linux-gnueabihf/libssh.so.4 (0x401bc000)
libavahi-client.so.3 => /usr/lib/arm-linux-gnueabihf/libavahi-client.so.3 (0x40068000)
libavahi-common.so.3 => /usr/lib/arm-linux-gnueabihf/libavahi-common.so.3 (0x4003b000)
libmicrohttpd.so.5 => /usr/lib/libmicrohttpd.so.5 (0x400a0000)
librt.so.1 => /lib/arm-linux-gnueabihf/librt.so.1 (0x400fc000)
libdl.so.2 => /lib/arm-linux-gnueabihf/libdl.so.2 (0x400db000)
libtinyxml.so.2.6.2 => /usr/lib/libtinyxml.so.2.6.2 (0x4004c000)
libyajl.so.1 => /usr/lib/arm-linux-gnueabihf/libyajl.so.1 (0x400e6000)
libbluetooth.so.3 => /usr/lib/arm-linux-gnueabihf/libbluetooth.so.3 (0x4010a000)
libcrypto.so.1.0.0 => /lib/arm-linux-gnueabihf/libcrypto.so.1.0.0 (0x40765000)
libz.so.1 => /lib/arm-linux-gnueabihf/libz.so.1 (0x40151000)
liblzo2.so.2 => /usr/lib/arm-linux-gnueabihf/liblzo2.so.2 (0x40082000)
libpthread.so.0 => /lib/arm-linux-gnueabihf/libpthread.so.0 (0x40124000)
libjpeg.so.8 => /usr/lib/arm-linux-gnueabihf/libjpeg.so.8 (0x40169000)
libgcrypt.so.11 => /lib/arm-linux-gnueabihf/libgcrypt.so.11 (0x401eb000)
libGLESv2.so => /allwinner/xbmc-pvr-binhf/lib/libGLESv2.so (0x4027b000)
libpython2.7.so.1.0 => /usr/lib/libpython2.7.so.1.0 (0x40878000)
libfribidi.so.0 => /usr/lib/libfribidi.so.0 (0x40337000)
libsqlite3.so.0 => /usr/lib/arm-linux-gnueabihf/libsqlite3.so.0 (0x40a94000)
libpcre.so.3 => /lib/arm-linux-gnueabihf/libpcre.so.3 (0x40afb000)
libpcrecpp.so.0 => /usr/lib/arm-linux-gnueabihf/libpcrecpp.so.0 (0x4002d000)
libcdio.so.13 => /usr/lib/libcdio.so.13 (0x40b31000)
libsamplerate.so.0 => /usr/lib/arm-linux-gnueabihf/libsamplerate.so.0 (0x40b51000)
libfreetype.so.6 => /usr/lib/arm-linux-gnueabihf/libfreetype.so.6 (0x40cc3000)
libasound.so.2 => /usr/lib/arm-linux-gnueabihf/libasound.so.2 (0x40d24000)
libdbus-1.so.3 => /lib/arm-linux-gnueabihf/libdbus-1.so.3 (0x40dbb000)
libhal.so.1 => /usr/lib/libhal.so.1 (0x40252000)
libhal-storage.so.1 => /usr/lib/libhal-storage.so.1 (0x4013f000)
libudev.so.0 => /lib/arm-linux-gnueabihf/libudev.so.0 (0x401a4000)
libvecore.so => /allwinner/xbmc-pvr-binhf/lib/libvecore.so (0x40dec000)
libstdc++.so.6 => /usr/lib/arm-linux-gnueabihf/libstdc++.so.6 (0x40e73000)
libm.so.6 => /lib/arm-linux-gnueabihf/libm.so.6 (0x40f1a000)
libgcc_s.so.1 => /lib/arm-linux-gnueabihf/libgcc_s.so.1 (0x40f84000)
libc.so.6 => /lib/arm-linux-gnueabihf/libc.so.6 (0x40f95000)
/lib/ld-linux-armhf.so.3 (0x400b6000)
libtalloc.so.2 => /usr/lib/arm-linux-gnueabihf/libtalloc.so.2 (0x41079000)
libtdb.so.1 => /usr/lib/arm-linux-gnueabihf/libtdb.so.1 (0x41089000)
libwbclient.so.0 => /usr/lib/arm-linux-gnueabihf/libwbclient.so.0 (0x4109c000)
libcap.so.2 => /lib/arm-linux-gnueabihf/libcap.so.2 (0x40353000)
libresolv.so.2 => /lib/arm-linux-gnueabihf/libresolv.so.2 (0x410ad000)
libnsl.so.1 => /lib/arm-linux-gnueabihf/libnsl.so.1 (0x410c5000)
libgssapi_krb5.so.2 => /usr/lib/arm-linux-gnueabihf/libgssapi_krb5.so.2 (0x410dd000)
libkrb5.so.3 => /usr/lib/arm-linux-gnueabihf/libkrb5.so.3 (0x41107000)
libk5crypto.so.3 => /usr/lib/arm-linux-gnueabihf/libk5crypto.so.3 (0x41191000)
libcom_err.so.2 => /lib/arm-linux-gnueabihf/libcom_err.so.2 (0x411b8000)
libldap_r-2.4.so.2 => /usr/lib/arm-linux-gnueabihf/libldap_r-2.4.so.2 (0x411c3000)
liblber-2.4.so.2 => /usr/lib/arm-linux-gnueabihf/liblber-2.4.so.2 (0x411fc000)
libgpg-error.so.0 => /lib/arm-linux-gnueabihf/libgpg-error.so.0 (0x4120d000)
libUMP.so => /allwinner/xbmc-pvr-binhf/lib/libUMP.so (0x41219000)
libssl.so.1.0.0 => /lib/arm-linux-gnueabihf/libssl.so.1.0.0 (0x41227000)
libutil.so.1 => /lib/arm-linux-gnueabihf/libutil.so.1 (0x41264000)
libkrb5support.so.0 => /usr/lib/arm-linux-gnueabihf/libkrb5support.so.0 (0x4126f000)
libkeyutils.so.1 => /lib/arm-linux-gnueabihf/libkeyutils.so.1 (0x4127c000)
libsasl2.so.2 => /usr/lib/arm-linux-gnueabihf/libsasl2.so.2 (0x41287000)
libgssapi.so.3 => /usr/lib/arm-linux-gnueabihf/libgssapi.so.3 (0x4129f000)
libgnutls.so.26 => /usr/lib/arm-linux-gnueabihf/libgnutls.so.26 (0x412c2000)
libheimntlm.so.0 => /usr/lib/arm-linux-gnueabihf/libheimntlm.so.0 (0x41346000)
libkrb5.so.26 => /usr/lib/arm-linux-gnueabihf/libkrb5.so.26 (0x41353000)
libasn1.so.8 => /usr/lib/arm-linux-gnueabihf/libasn1.so.8 (0x413a7000)
libhcrypto.so.4 => /usr/lib/arm-linux-gnueabihf/libhcrypto.so.4 (0x41404000)
libroken.so.18 => /usr/lib/arm-linux-gnueabihf/libroken.so.18 (0x41430000)
libtasn1.so.3 => /usr/lib/arm-linux-gnueabihf/libtasn1.so.3 (0x41445000)
libp11-kit.so.0 => /usr/lib/arm-linux-gnueabihf/libp11-kit.so.0 (0x41457000)
libwind.so.0 => /usr/lib/arm-linux-gnueabihf/libwind.so.0 (0x4146a000)
libheimbase.so.1 => /usr/lib/arm-linux-gnueabihf/libheimbase.so.1 (0x4149a000)
libhx509.so.5 => /usr/lib/arm-linux-gnueabihf/libhx509.so.5 (0x414ab000)
libcrypt.so.1 => /lib/arm-linux-gnueabihf/libcrypt.so.1 (0x414dd000)
[code]

I guess, there is something missing?


RE: Allwinner A10 : Is XBMC ported to MALI-400MP ? - rellla - 2012-11-07

not sure if it's ok to post a link to my binary tarball including closed librarys here in xbmc forum!? moderators?


RE: Allwinner A10 : Is XBMC ported to MALI-400MP ? - wolfgar - 2012-11-07

CreaB,

lsmod and ldd look fine...
Odds are quite high that rellla is right and your modules mali and ump are not version r3p0 (while libUMP and libEGL libGLES are for version r3p0...)

if you have your kernel source code and config then you can rebuild these modules out of tree by downloading ump and mali drivers from
http://www.malideveloper.com/developer-resources/drivers/index.php (stick to r3p0)

Regards

Edit : just forgot to mention that in order to build drivers from official mali drivers you will require the arch-ca8-virtex820-m400-1 arch folder (that you can find in sunxi kernel ) which contains the config.h relevant for the mali config of A10 soc...



AW: RE: Allwinner A10 : Is XBMC ported to MALI-400MP ? - CreaB - 2012-11-07

(2012-11-07, 22:26)wolfgar Wrote: CreaB,

lsmod and ldd look fine...
Odds are quite high that rellla is right and your modules mali and ump are not version r3p0 (while libUMP and libEGL libGLES are for version r3p0...)

if you have your kernel source code and config then you can rebuild these modules out of tree by downloading ump and mali drivers from
http://www.malideveloper.com/developer-resources/drivers/index.php (stick to r3p0)

Regards

Edit : just forgot to mention that in order to build drivers from official mali drivers you will require the arch-ca8-virtex820-m400-1 arch folder (that you can find in sunxi kernel ) which contains the config.h relevant for the mali config of A10 soc...

Ahh ok, thank you for the hint. Will try that tomorrow. Is there any guide how to build them?


RE: Allwinner A10 : Is XBMC ported to MALI-400MP ? - wolfgar - 2012-11-07

Not that I am aware of but here is how I have built mine :


- extract DX910-SW-99002-r3p0-04rel0.tgz
- copy arch-ca8-virtex820-m400-1 https://github.com/linux-sunxi/linux-sunxi/tree/sunxi-3.0/drivers/gpu/mali/mali/arch-ca8-virtex820-m400-1 to DX910-SW-99002-r3p0-04rel0/driver/src/devicedrv/mali
- copy arch-ca8-virtex820-m400-1 https://github.com/linux-sunxi/linux-sunxi/blob/sunxi-3.0/drivers/gpu/mali/ump/arch-ca8-virtex820-m400-1 to DX910-SW-99002-r3p0-04rel0/driver/src/devicedrv/ump
- export ARCH=arm
- export CROSS_COMPILE=arm-linux-gnueabihf-
- cd to DX910-SW-99002-r3p0-04rel0/driver/src/devicedrv/mali and run
KDIR=/path/to/your/kernel/build USING_UMP=1 BUILD=release TARGET_PLATFORM=mali400-pmu CONFIG=ca8-virtex820-m400-1 make
- cd to DX910-SW-99002-r3p0-04rel0/driver/src/devicedrv/ump and run
KDIR=/path/to/your/kernel/build USING_UMP=1 BUILD=release TARGET_PLATFORM=mali400-pmu CONFIG=ca8-virtex820-m400-1 make

and you should have new ump and mali drivers ...



RE: Allwinner A10 : Is XBMC ported to MALI-400MP ? - servili007 - 2012-11-07

My GUI creation errors were just the result of permission issues. Did you try running it as root and seeing if it still fails to create with the UMP error? Also, take a look at xmbc-watchdog.sh even if you don't plan on using it for a full list of modprobes, expected permissions, etc.


RE: Allwinner A10 : Is XBMC ported to MALI-400MP ? - wolfgar - 2012-11-07

good remark ! It is indeed worthy to check perms before going the hard way of building modules...



RE: Allwinner A10 : Is XBMC ported to MALI-400MP ? - Snippo - 2012-11-08

Anyone having success getting the IR receiver to work? I've succesfully installed lirc following this guide but it won't recognize my remote signals