mripard / sunxi-mali

GNU General Public License v2.0
100 stars 54 forks source link

Potentially integrating r7p0? #40

Closed cnlohr closed 6 years ago

cnlohr commented 6 years ago

Is there any hope of integrating r7p0 from here: https://github.com/Icenowy/sunxi-mali into this branch?

Additionally, I'm unclear as to if this branch actually supports the Mali 450 or only Mali 400.

Charles

sergey-suloev commented 6 years ago

why r7 ?
you can easily download r8 from arm site https://developer.arm.com/products/software/mali-drivers/utgard-kernel

cnlohr commented 6 years ago

I just noticed the r8 stuff now. >.<;;

Which raises some questions - what is the currently recommended processes? Under what situations is this repo relevant? Which branch should I be using, etc.

sergey-suloev commented 6 years ago

Unfortunately, the user-space library is only available for r6. Moving to r8 would need the corresponding libMali.so for r8 which is hard to obtain. In case I am wrong let @mripard to clarify the question.

cnlohr commented 6 years ago

Ok, now I am very confused. I would love to use the new hotness (r8p1) but why would they release the new rev there, but not make closed source drivers widely available? Is that not what these are? https://developer.arm.com/products/software/mali-drivers/user-space

sergey-suloev commented 6 years ago

Similar to this, yes. You have to understand that ARM want to make money and they have opened user-space library source code to those who want to pay for it. The link you have referenced is for Midgard (and for limited number of platforms), but we need Utgard. I have no idea where @mripard obtained the existing binary, you can ask him directly. I think you can use the latest kernel module from ARM but you have to apply the patches and fix all issues that may happen.

hor63 commented 6 years ago

Please see here: https://bootlin.com/blog/mali-opengl-support-on-allwinner-platforms-with-mainline-linux/ The binary BLOB is from Allwinner. Seemingly also the userspace Blob has hardware-specific parts in it concerning the hardware glue, clocking, gating... It depends on these guys.

sergey-suloev commented 6 years ago

The user-space binary that @hor63 has referenced is for r6p2, but @cnlohr is willing to use r8p2 kernel module. I would also want to know if we can find the r8p2-compatible user-space binary. I actually have no idea what is a real difference between r6p2 and r8p2 kernel modules and if I really need r8p2. We are just talking about a possibility to use up-to-date modules.

hor63 commented 6 years ago

The issue seems more to find the r8p2 Blob for the Allwinner platform. This is closed source, and the source of it is solely allwinner because they build it with the commercial Mali DDK from ARM.

The kernel module is just a bridge to allow the user space blob to access the Mali hardware most efficiently. The heavy lifting of OpenGL ES is done by the user space blob.

The kernel driver version follows the user space blob, not the other way around.

sergey-suloev commented 6 years ago

@hor63 Did I correctly understand that the only way to get r8 stuff working if someone steals the r8 blob from Allwinner ? I don't see too much effort from Allwinner to make it public. Same thing about arm64 blob.

mripard commented 6 years ago

That blob would need to be available under a proper license that would allow redistribution, yes. That's not the case for now, for either r7p0 or r8p2.

cnlohr commented 6 years ago

Is there any hope to use the Mali450 at all?