{"id":20135411,"url":"https://github.com/pojavlauncherteam/panfork_offscreen_rootless","last_synced_at":"2025-04-09T17:32:45.845Z","repository":{"id":208048267,"uuid":"720702259","full_name":"PojavLauncherTeam/panfork_offscreen_rootless","owner":"PojavLauncherTeam","description":"A version of Panfork meant to be integrated into Pojav. Works on the kbase driver, and can be used through OSMesa.","archived":false,"fork":false,"pushed_at":"2023-11-20T18:55:56.000Z","size":303797,"stargazers_count":6,"open_issues_count":0,"forks_count":14,"subscribers_count":3,"default_branch":"csf","last_synced_at":"2025-03-23T19:39:11.312Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/PojavLauncherTeam.png","metadata":{"files":{"readme":"README-CSF.rst","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":"CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2023-11-19T10:28:01.000Z","updated_at":"2025-01-27T07:59:25.000Z","dependencies_parsed_at":null,"dependency_job_id":"3744c9e7-713d-4804-9fb0-b86d9fa59bc0","html_url":"https://github.com/PojavLauncherTeam/panfork_offscreen_rootless","commit_stats":null,"previous_names":["pojavlauncherteam/panfork_offscreen_rootless"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PojavLauncherTeam%2Fpanfork_offscreen_rootless","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PojavLauncherTeam%2Fpanfork_offscreen_rootless/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PojavLauncherTeam%2Fpanfork_offscreen_rootless/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PojavLauncherTeam%2Fpanfork_offscreen_rootless/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/PojavLauncherTeam","download_url":"https://codeload.github.com/PojavLauncherTeam/panfork_offscreen_rootless/tar.gz/refs/heads/csf","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248077565,"owners_count":21043985,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-13T21:14:48.600Z","updated_at":"2025-04-09T17:32:45.553Z","avatar_url":"https://github.com/PojavLauncherTeam.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"Valhall CSF Tests\n=================\n\nThe ``csf`` branch contains a test program for v10 Valhall GPUs (G710\netc.) which uses the Arm ``kbase`` kernel driver, which is generally\npresent on vendor kernels but is not in the upstream Linux kernel.\n\nHowever, the kernel driver source can also be downloaded `from Arm\n\u003chttps://developer.arm.com/downloads/-/mali-drivers/valhall-kernel\u003e`_,\nof which the newer releases should work well enough with a mainline\nkernel (though some work may be needed to integrate the vendor\nplatform).\n\nMaking sure that the ``libmali`` blob drivers work before trying this\nprogram is recommended, otherwise you will be trying to debug\nuserspace and kernel bugs at the same time.\n\nNote that firmware is required for these GPUs, for RK3588 try\ndownloading the file from the Rockchip `libmali\n\u003chttps://github.com/JeffyCN/rockchip_mirrors/tree/libmali/firmware/g610\u003e`_\nrepo, and placing it in ``/lib/firmware/``.\n\nCompiling\n---------\n\n.. code-block:: sh\n\n  $ mkdir build\n  $ cd build\n  $ meson --buildtype=debug -Dgallium-drivers=panfrost -Dvulkan-drivers=\n  $ ninja src/panfrost/csf_test\n\nRunning\n-------\n\n.. code-block:: sh\n\n  $ src/panfrost/csf_test\n\nwill run the tests.\n\nNormally it will start running cleanup steps as soon as one test\nfails, though setting the environment variable ``TEST_KEEP_GOING=1``\nwill change this behaviour.\n\nTest failures\n-------------\n\nGitlab issues can be created against `my repo\n\u003chttps://gitlab.freedesktop.org/icecream95/mesa/-/issues\u003e`_, though\nsome problems should be easy to fix (wrong permissions on\n``/dev/mali0``?).\n\nInclude all output from running the test program. Including logs from\n``strace`` might also help.\n\nCommand stream test script\n--------------------------\n\n``src/panfrost/csf_test/interpret.py`` is a test script for assembling\nand executing command streams.\n\nTo use it, symlink the ``csf_test`` binary into ``$PATH`` and optionally\nalso write a ``rebuild-mesa`` script which recompiles ``csf_test``.\n\nThen running ``interpret.py`` will execute the ``cmds`` variable,\nwhich is defined inside the script file.\n\nExample:\n\n.. code-block:: txt\n\n  @ comments are started with '@'\n\n  @ run on command stream 2\n  !cs 2\n  @ allocate some memory\n  !alloc x 4096\n  @ allocate event memory, for evstr instructions\n  !alloc ev 4096 0x8200f\n\n  mov x50, $x\n\n  @ dump all registers to the memory starting at x50\n  regdump x50\n\n  @ dump the memory region named 'x'\n  !dump x 0 4096\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpojavlauncherteam%2Fpanfork_offscreen_rootless","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpojavlauncherteam%2Fpanfork_offscreen_rootless","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpojavlauncherteam%2Fpanfork_offscreen_rootless/lists"}