[Libre-soc-dev] Intro

vivek pandya vivekvpandya at gmail.com
Mon Mar 8 14:42:26 GMT 2021


Hello Eduardo,

I am happy to help you get started!

Here is source code
https://git.libre-soc.org/?p=mesa.git;a=shortlog;h=refs/heads/libresoc_dev

>From this bug (Thanks to Cole!)
https://bugs.libre-soc.org/show_bug.cgi?id=472 you should get all required
help to setup development environment I am using.

At very high level the project aims ( Luke please correct if required) to
experimental driver which can allow testing libresoc instruction on desktop
environment till a simulator/silicon is available.
So this is software rasterizer based on mesa environment. where currently
everything is just done on CPU (like storing image memory in simple array
rather than access it on actual HW through linux abstraction)
And hopefully when this becomes more mature we have switches at few places
like MapMemory etc so that we can execute things on actual HW.

Current Status:
I am trying to run
https://software.intel.com/content/www/us/en/develop/articles/api-without-secrets-introduction-to-vulkan-part-3.html
and as of now I can run part 2 which just displays a simple color in the
window.
The Driver can generate NIR/LLVM/x86  assembly for very simple shaders.

To make something drawn with a simple VS and FS I need to implement a fake
GPUState to hold indexBuffer and VertexBuffers.
Implement command buffer and on receiving draw command execute sw
rasterizer (which is to be implemented) which can just process triangles
through LLVM's ORCjit and followed by them fragment shader can process 3
vertex batch and shade them.
This is all based on https://github.com/baldurk/visor

Please ask any questions you have while getting started. If I get time this
month I will try to complete a few things from above.
Once a simple triangle is ready we can add more graphics related processing
algorithms.
My knowledge is limited in that area , you can see how I just implemented
ClearColorImage
https://git.libre-soc.org/?p=mesa.git;a=blobdiff;f=src/libre-soc/vulkan/libresoc_meta_clear.c;h=80ed9904080fb948bce271d77fa53d58ea7ddb3c;hp=5650d3e94a96f201551fea7a0be72c909f37ea7f;hb=ed7212f4d2407f38d4b9fb7cd86a8a5226c8d678;hpb=df494d9287f13d4cd7802909bf385b48b619421b

We also need to think how actual HW will be represented and interact with
the Linux environment (but yes that can be done later).

Hope this helps!

-Vivek
On Mon, Mar 8, 2021 at 8:47 AM Luke Kenneth Casson Leighton <lkcl at lkcl.net>
wrote:

>
>
> On Sunday, March 7, 2021, Eduardo Pires <eduardo.pires at protonmail.com>
> wrote:
>
>>
>>
>> From the main page section 5.3 Needed Skills I noticed that you need some
>> help with the MESA 3D driver and because of my interest in 3D technology
>> (after university I did a 2 year game developer TAFE in AU), I thought that
>> it would be an interesting challenge.
>
>
> nice to hear from you, am ccing you (not subscribed) added you approved
> send.  late here, brief: vivek has been working on mesa, intro above, do
> catch up with him.
>
> please do remember we do all development and technical discussion through
> libre-soc resources for transparency and audit purposes for our sponsors,
> NLnet.
>
> therefore if you collaborate on source code you need to use
> git.libre-soc.org not gitlab not github, and if you need a mailing list i
> can arrange for one on lists.libre-soc.org
>
> more tomorrow when it is not 3am
>
>
>>
>> Anyway, that is it for now, and hope to see you around.
>>
>> Ed
>>
>> Sent with [ProtonMail](https://protonmail.com/) Secure Email.
>> _______________________________________________
>> Libre-soc-dev mailing list
>> Libre-soc-dev at lists.libre-soc.org
>> http://lists.libre-soc.org/mailman/listinfo/libre-soc-dev
>>
>
>
> --
> ---
> crowd-funded eco-conscious hardware: https://www.crowdsupply.com/eoma68
>
>


More information about the Libre-soc-dev mailing list