Why does the sgx driver can't work with hard float distros ?

Linux-SWAT

Hardcore Member
Joined
Feb 13, 2010
Messages
8,220
Someone asked me, and i can't answer.


I think myself it's about C libraries and compiler, but it's just a guess.
 

Linux-SWAT

Hardcore Member
Joined
Feb 13, 2010
Messages
8,220
Ah ?


5x ES Pandoras are >= 512M ones ?


So the last incompatibility with hf would be the pnd system ?


BTW do you see a better performance with the 4.8.0.1 ?
 
Last edited by a moderator:

Cloudef

Member
Joined
Dec 30, 2009
Messages
460
Location
Gensokyo
5x ES Pandoras are >= 512M ones ?
Not entierly sure, but in default OS you can check with `cat /etc/powervr-esrev`

So the last incompatibility with hf would be the pnd system ?
The pnd system itself works, the pnds from repo not, since they are softfp binaries.
 

Linux-SWAT

Hardcore Member
Joined
Feb 13, 2010
Messages
8,220
Ok i get it, softfp distros can run hardfp programs.


But not the contrary.
 

Exophase

Nothing good will ever come of Exophase.
Joined
Sep 21, 2006
Messages
10,308
Age
36
Location
Cleveland OH
The reason why hardfp libraries don't work with softfp binaries and vice-versa is because the way parameters are passed to function calls is different. You'd think there'd be a way for the linker to bridge the two with some kind of code shim (of course in a hypothetical OS that's aware of both ABIs) but the performance would be even worse than it is with softfp..
 

asdfffdsa

Still Fresh
Joined
Sep 23, 2012
Messages
25
Pandora Rebirth here and


$ cat /etc/powervr-esrev


3


OK, so I want to get archlinux ARM running on my openpandora. The Archlinux ARM armv7 repos are hard float only.


Given the results of the 'cat' operation above, my open pandora's PowerVR SGX530 does not support hardware floating point operations in the hardware itself (correct?). Few questions:


1) If I were to upgrade to the 1GHz board (swap out my 600Mhz board), would my Open Pandora's PowerVR SGX530 support hardware floats and thus be able to run the Archlinux ARM armv7 repos with accelerated 3d support from the sgx? Or is the driver module for the PowerVR SGX530 only compiled for soft-floats (thus making it impossible for me--even with the 1Ghz pandora--to run archlinux ARM v7 repos with accelerated 3d support from the sgx)?


2) Lastly, is there a subset of packages in the Archlinux ARM armv7 repos that I could recompile with soft-floats and make the soft-float module compatible? From the archlinux ARM freenode IRC chat I was told "the entire chain of packages and dependencies leading back from your graphics driver" and that this would be "pretty much everything"
 

Exophase

Nothing good will ever come of Exophase.
Joined
Sep 21, 2006
Messages
10,308
Age
36
Location
Cleveland OH
Given the results of the 'cat' operation above, my open pandora's PowerVR SGX530 does not support hardware floating point operations in the hardware itself (correct?).
No, there just aren't hardfloat drivers available for it. If you upgrade your Pandora you should be able to use the hardfp binaries provided in the links on this thread. No idea if Arch's repositories offer them or not.
 
Last edited by a moderator:

asdfffdsa

Still Fresh
Joined
Sep 23, 2012
Messages
25
Given the results of the 'cat' operation above, my open pandora's PowerVR SGX530 does not support hardware floating point operations in the hardware itself (correct?).
No, there just aren't hardfloat drivers available for it. If you upgrade your Pandora you should be able to use the hardfp binaries provided in the links on this thread. No idea if Arch's repositories offer them or not.
I see, thanks. So what I'll try to do then is:


1) upgrade to 1Ghz pandora


2) download the driver in this thread (possibly along with notaz's kernel and kernel patch)


3) try to get this kernel to work with the archlinux armv7 repo


4) hope it works
 

Cloudef

Member
Joined
Dec 30, 2009
Messages
460
Location
Gensokyo
The 4.8.0.1 has hfp drivers for from es3 to es8. Dunno if the es3 drivers work though.


I can confirm that ES5 works fine.


As for archlinuxarm, I have binary repo here http://cloudef.eu/archlinuxarm-pandora/ for pandora specific packages. So no compiling needed.


If you can confirm that es3.x userspace libraries work with the compiled kernel module, I can add package for it I guess.


However omapfb is no longer maintaned and the xorg driver doesn't compile against new Xorg ABI. So you can't use GLES with X applications with similar setup as in default OS. pvr xorg driver from the SGX sdk package works, but is really unstable and not really good.. There is omapdrm in the latest kernels that has KMS, etc.., but it's not in the 3.2.20 that notaz has.
 
Last edited by a moderator:

Linux-SWAT

Hardcore Member
Joined
Feb 13, 2010
Messages
8,220

Cloudef

Member
Joined
Dec 30, 2009
Messages
460
Location
Gensokyo
I can run hardfp programs flawlessy on my softfp Slackware.
They might work, but they are ABI incompatible. You can't dynamically link hardfp programs with softfp libraries and vice versa.


Techincally you could give hardfp support by providing hardfp libraries in additional to softfp ones, but that would be pointless waste.
 
Top