Skip to content

Commit df4effe

Browse files
Update Tyr Info
Now that Tyr is upstream, the process for contributing has changed. Update the documentation about the development process to help new contributors. Also, while here, update progress in the downstream driver. Signed-off-by: Deborah Brouwer <deborah.brouwer@collabora.com>
1 parent b198398 commit df4effe

File tree

1 file changed

+14
-14
lines changed

1 file changed

+14
-14
lines changed

src/Tyr-GPU-Driver.md

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -16,10 +16,14 @@ ecosystem. It will probably take a couple of years for Tyr to fully pick up.
1616

1717
## Where is Tyr developed?
1818

19-
The development of Tyr takes place both upstream, through our [latest
20-
submission](https://lore.kernel.org/rust-for-linux/20250627-tyr-v1-1-cb5f4c6ced46@collabora.com/)
21-
— and downstream, on the `tyr-next` branch at the [Panfrost Gitlab
22-
repository](https://gitlab.freedesktop.org/panfrost/linux).
19+
Tyr is developed both upstream and downstream:
20+
21+
### Upstream
22+
The initial skeleton of the Tyr driver is now upstream. Submissions against the upstream Tyr driver should go to the [rust-for-linux](https://lore.kernel.org/rust-for-linux/) mailing list. If the submission is larger and/or needs to be pre-reviewed, open a merge request against the [tyr-for-upstream](https://gitlab.freedesktop.org/panfrost/linux/-/tree/tyr-for-upstream) branch in the [panfrost/linux](https://gitlab.freedesktop.org/panfrost/linux) repository.
23+
24+
25+
### Downstream
26+
A more complete implementation of the Tyr driver is also available in the [tyr-dev](https://gitlab.freedesktop.org/panfrost/linux/-/tree/tyr-dev) branch. Make submissions against the downstream Tyr driver by opening a merge request against `tyr-dev`. It's expected that `tyr-dev` will be significantly refactored before upstreaming.
2327

2428
This split is unfortunately necessary as we do not have the required
2529
infrastructure in upstream yet, although our plan is to eventually migrate to
@@ -41,20 +45,15 @@ functional driver with the abstractions that are currently being proposed.
4145

4246
## What is the current status of the driver?
4347

44-
The current upstream submission can power up the GPU and probe the device on an
48+
The current upstream driver can power up the GPU and probe the device on an
4549
RK3588 system-on-chip. This lets us read a few sections of ROM in the GPU,
4650
which in turn lets us provide this information to userspace by means of a
4751
`DRM_IOCTL_PANTHOR_DEV_QUERY` call.
4852

4953
This is all that can be done for now in upstream code, at least until the Micro
5054
Controller Unit can be made to work.
5155

52-
Our downstream branch (`tyr-next`) can submit small parcels of work to the GPU,
53-
and we will soon be able to submit more elaborate workflows. We hope to see
54-
[VkCube](https://github.com/KhronosGroup/Vulkan-Tools) running on Tyr soon.
55-
56-
In any case, there is no power management and little error recovery. We will be
57-
working on that in the coming months.
56+
Our downstream branch (`tyr-dev`) provides a full, working prototype that can run GNOME, Weston, and full-screen 3D games like SuperTuxKart: see [Racing karts on a Rust GPU kernel driver](https://www.collabora.com/news-and-blog/news-and-events/racing-karts-on-a-rust-gpu-kernel-driver.html).
5857

5958
## Can I try it out?
6059

@@ -65,7 +64,7 @@ replacing Panthor yet. A good candidate device is Radxa's
6564
A good starting point is to run our [IGT
6665
tests](https://gitlab.freedesktop.org/dwlsalmeida/igt-gpu-tools/-/tree/panthor?ref_type=heads).
6766
While only a subset of the tests pass on the upstream code for the reasons
68-
highlighted above, they should all pass if run on `tyr-next`.
67+
highlighted above, they should all pass if run on `tyr-dev`.
6968

7069
Note that Mali GPUs are found in a vast array of devices, and that we will
7170
support more hardware as we progress in the implementation.
@@ -78,7 +77,8 @@ board](https://gitlab.freedesktop.org/panfrost/linux/-/issues/?label_name%5B%5D=
7877
We will be posting good starting tasks at a future point.
7978

8079
To work on any given task, assign it to yourself and follow up with a merge
81-
request against `tyr-next`. Please also write the IGT tests needed to ensure that
82-
your code works.
80+
request against `tyr-for-upstream` (for patches targeting the upstream driver) or `tyr-dev` (for work in the downstream staging branch).
81+
82+
Please also write the IGT tests needed to ensure that your code works.
8383

8484
Happy hacking!

0 commit comments

Comments
 (0)