# PowerVR SGX 535 (Intel GMA 500 / Poulsbo) – Any Documentation Still Available?

**URL:** <https://forums.imgtec.com/t/powervr-sgx-535-intel-gma-500-poulsbo-any-documentation-still-available/4266>\
**Category:** Uncategorized\
**Created:** [April 16, 2026, 6:22am UTC](https://forums.imgtec.com/t/powervr-sgx-535-intel-gma-500-poulsbo-any-documentation-still-available/4266 "2026-04-16T06:22:18Z")\
**Posts on this page:** 15\
**Page:** 1

<div class="post-metadata">

**Author:** ![Operating](https://avatars.discourse-cdn.com/v4/letter/o/439d5e/32.png) [@Operating](https://forums.imgtec.com/u/Operating)\
**Post date:** [April 16, 2026, 6:22am UTC](https://forums.imgtec.com/t/powervr-sgx-535-intel-gma-500-poulsbo-any-documentation-still-available/4266/1 "2026-04-16T06:22:18Z")

</div>

Hello,

I’m writing regarding the PowerVR SGX 535 used in the Intel GMA 500 (Poulsbo platform).

I know this hardware is quite old, but there are still a few people maintaining Atom Z500 Series devices (like the Dell Inspiron Mini 10 and similar systems). On Linux, support is limited to basic display functionality through the gma500 driver, and there is no usable 3D acceleration due to the lack of public documentation.

I understand there may be licensing agreements between Intel and Imagination that prevent releasing full drivers. However, I wanted to ask:

- Is there any technical documentation for SGX 535 that could be shared today?
- Even partial architectural information?
- Or any guidance about whether legacy documentation might ever become public?

This is mostly for preservation and educational purposes. Many of these devices still function perfectly well except for graphics support.

I appreciate your time, and thank you for maintaining this forum.

---

<div class="post-metadata">

**Author:** ![Operating](https://avatars.discourse-cdn.com/v4/letter/o/439d5e/32.png) [@Operating](https://forums.imgtec.com/u/Operating)\
**Post date:** [April 16, 2026, 7:10am UTC](https://forums.imgtec.com/t/powervr-sgx-535-intel-gma-500-poulsbo-any-documentation-still-available/4266/2 "2026-04-16T07:10:27Z")

</div>

I also reached out to Intel engineers through their official community forums regarding the GMA 500 (Poulsbo) and the SGX 535 driver situation.

The response I received was that any questions related to the 3D driver stack and GPU documentation should be directed to Imagination Technologies, since the core graphics IP was licensed from PowerVR.

This suggests that responsibility for the platform was historically divided between Intel (integration and product delivery) and Imagination (GPU IP and associated components), which may explain why documentation and long-term driver support became difficult to access publicly.

I am sharing this for context, as there still appears to be some interest in understanding the technical and historical aspects of this platform.

---

<div class="post-metadata">

**Author:** ![SimonFenney](https://sea1.discourse-cdn.com/flex015/user_avatar/forums.imgtec.com/simonfenney/32/257_2.png) [@SimonFenney](https://forums.imgtec.com/u/SimonFenney)\
**Post date:** [May 18, 2026, 7:52am UTC](https://forums.imgtec.com/t/powervr-sgx-535-intel-gma-500-poulsbo-any-documentation-still-available/4266/3 "2026-05-18T07:52:01Z")

</div>

Poulsbo ! 😮

 ![image](https://us1.discourse-cdn.com/flex015/uploads/imagination1/original/1X/0f69baf064728d654dcd6c85a6fc59fb48f10768.png)

I don’t know if many at IMG now would even have heard of it. I’m not sure who to even ask.

---

<div class="post-metadata">

**Author:** ![Operating](https://avatars.discourse-cdn.com/v4/letter/o/439d5e/32.png) [@Operating](https://forums.imgtec.com/u/Operating)\
**Post date:** [May 20, 2026, 5:48am UTC](https://forums.imgtec.com/t/powervr-sgx-535-intel-gma-500-poulsbo-any-documentation-still-available/4266/4 "2026-05-20T05:48:33Z")

</div>

It’s funny how this GPU is almost 20 years old yet there’s still occasional news about it, even the Linux driver received updates in recent kernel versions

It was part of my childhood so even though it’s very old hardware now, I still use it occasionally when i’m away from home etc

---

<div class="post-metadata">

**Author:** ![SimonFenney](https://sea1.discourse-cdn.com/flex015/user_avatar/forums.imgtec.com/simonfenney/32/257_2.png) [@SimonFenney](https://forums.imgtec.com/u/SimonFenney)\
**Post date:** [May 20, 2026, 6:37am UTC](https://forums.imgtec.com/t/powervr-sgx-535-intel-gma-500-poulsbo-any-documentation-still-available/4266/5 "2026-05-20T06:37:26Z")

</div>

I didn’t work directly on it, but I have _a very foggy,_ and thus probably unreliable, recollection that Intel might have written their own drivers for Atom’s 535.

---

<div class="post-metadata">

**Author:** ![Operating](https://avatars.discourse-cdn.com/v4/letter/o/439d5e/32.png) [@Operating](https://forums.imgtec.com/u/Operating)\
**Post date:** [September 16, 2026, 10:54pm UTC](https://forums.imgtec.com/t/powervr-sgx-535-intel-gma-500-poulsbo-any-documentation-still-available/4266/6 "2026-09-16T22:54:34Z")

</div>

Hello! I did an intense search for 4 days and found some previously unpublished material related to the SGX535 on Intel Poulsbo, including historical DDK code, SGX535-specific definitions, and traces of an explicit Poulsbo integration that had been removed from later source trees. I’m now organizing and cross-referencing everything with the modern Linux `gma500` driver to reconstruct as much technical documentation as possible: github: [github](https://github.com/gabrieelgama/SGX535-reMESA/tree/main) (only docs for now)

(It’s actually in Portuguese, too)

Some links are broken because they point to reference files from my workspace, so I’ll be rewriting the documentation soon to fix this.

---

<div class="post-metadata">

**Author:** ![Operating](https://avatars.discourse-cdn.com/v4/letter/o/439d5e/32.png) [@Operating](https://forums.imgtec.com/u/Operating)\
**Post date:** [September 17, 2026, 3:40am UTC](https://forums.imgtec.com/t/powervr-sgx-535-intel-gma-500-poulsbo-any-documentation-still-available/4266/7 "2026-09-17T03:40:36Z")

</div>

Intel really did create its own drivers for the SGX535 through EMGD! Your answer really helped me dig deeper into the SGX535. Thank you!

---

<div class="post-metadata">

**Author:** ![Operating](https://avatars.discourse-cdn.com/v4/letter/o/439d5e/32.png) [@Operating](https://forums.imgtec.com/u/Operating)\
**Post date:** [September 22, 2026, 10:27pm UTC](https://forums.imgtec.com/t/powervr-sgx-535-intel-gma-500-poulsbo-any-documentation-still-available/4266/8 "2026-09-22T22:27:19Z")

</div>

It seems I’ve reached the point where there is no more public documentation to be found on the internet! Even with AI-assisted search, I couldn’t find any further files online

---

<div class="post-metadata">

**Author:** ![Operating](https://avatars.discourse-cdn.com/v4/letter/o/439d5e/32.png) [@Operating](https://forums.imgtec.com/u/Operating)\
**Post date:** [September 24, 2026, 10:30pm UTC](https://forums.imgtec.com/t/powervr-sgx-535-intel-gma-500-poulsbo-any-documentation-still-available/4266/9 "2026-09-24T22:30:43Z")

</div>

Unexpected things happened, LOL. Two hours after I said there was nothing left publicly available on the internet, I ended up finding old Poulsbo Linux packages that preserved key parts of the original graphics stack, including psb\_dri.so and Xpsb.so. Since then, I’ve started performing static analysis on these binaries and comparing the results with historical code from the Xorg driver, libdrm, and the PSB kernel. I’m not executing these binaries or sending commands to the GPU; for now, the work remains purely static analysis (though we’ll likely see a triangle rendered in the coming days I HOPE). One of the most interesting discoveries was that psb\_dri.so itself contains an internal USC/USSE compilation path. My earlier claim that there was “no more public documentation available on the internet” didn’t age well at all. 🙂 (It was a matter of just two hours.) Still no driver yet, unfortunately.

---

<div class="post-metadata">

**Author:** ![Operating](https://avatars.discourse-cdn.com/v4/letter/o/439d5e/32.png) [@Operating](https://forums.imgtec.com/u/Operating)\
**Post date:** [October 6, 2026, 6:29am UTC](https://forums.imgtec.com/t/powervr-sgx-535-intel-gma-500-poulsbo-any-documentation-still-available/4266/10 "2026-10-06T06:29:04Z")

</div>

Well, it happened 😃

The SGX535 finally drew a triangle.

After around 20 days of reverse engineering Poulsbo / SGX535 rev121, I now have the first established triangle from SGX535-reMESA.

The successful run produced a 32×32 readback with:

- 120 pixels exactly `0xffff00ff`
- 904 pixels exactly `0x00000000`
- the expected triangular footprint
- TA completion confirmed
- end-render confirmed
- 3D-memory-free confirmed
- retirement confirmed
- response, operation evidence and readback all attributable to the same operation

The important part is that this isn’t based only on seeing the completion bits and assuming rendering worked.

My previous run actually reached TA completion, end-render, 3D-memory-free and retirement successfully, but returned a completely zeroed 4096-byte color buffer.

For the next experiment I kept the rest of the qualified rendering setup unchanged and replaced the suffix-only fragment program with a constant-color diagnostic program, expecting opaque magenta (`0xffff00ff`).

And this time I got exactly that: 120 magenta pixels forming the expected triangle.

So:

triangle established

The next step is getting those pixels out of the qualified GPU-memory/readback path and onto the actual display. I’m currently mapping the gma500 framebuffer/scanout path and preserving the successful FIRE #3 configuration as a reproducible milestone.

I’ll put the successful triangle work, documentation and reproduction details on GitHub soon as well, once I’ve cleaned everything up enough that someone other than me can actually follow it 😃

It’s slightly ridiculous how much archaeology was required to convince a 2008 GPU to draw three vertices, but here we are.

Also, thanks @SimonFenney for the help 🙂

---

<div class="post-metadata">

**Author:** ![Operating](https://avatars.discourse-cdn.com/v4/letter/o/439d5e/32.png) [@Operating](https://forums.imgtec.com/u/Operating)\
**Post date:** [October 6, 2026, 7:14am UTC](https://forums.imgtec.com/t/powervr-sgx-535-intel-gma-500-poulsbo-any-documentation-still-available/4266/11 "2026-10-06T07:14:52Z")

</div>

Here is the proof

 ![IMG_20261006_040949](https://us1.discourse-cdn.com/flex015/uploads/imagination1/original/1X/b5c2717783e7ff8e3127a2b0838849b98520bb69.jpeg)

---

<div class="post-metadata">

**Author:** ![SimonFenney](https://sea1.discourse-cdn.com/flex015/user_avatar/forums.imgtec.com/simonfenney/32/257_2.png) [@SimonFenney](https://forums.imgtec.com/u/SimonFenney)\
**Post date:** [October 6, 2026, 9:53am UTC](https://forums.imgtec.com/t/powervr-sgx-535-intel-gma-500-poulsbo-any-documentation-still-available/4266/12 "2026-10-06T09:53:57Z")

</div>

Nice 😃

BTW, _assuming_ the following isn’t from you, one of my colleagues saw this on LinkedIn:  
(Basically someone else doing SGX dev)

> **[| René Rebe](https://www.linkedin.com/feed/update/urn:li:activity:7503025431160389632/)**
>
> Sign in or join now to see posts like this one and more.

Might be worth teaming up?

---

<div class="post-metadata">

**Author:** ![Operating](https://avatars.discourse-cdn.com/v4/letter/o/439d5e/32.png) [@Operating](https://forums.imgtec.com/u/Operating)\
**Post date:** [October 6, 2026, 10:54am UTC](https://forums.imgtec.com/t/powervr-sgx-535-intel-gma-500-poulsbo-any-documentation-still-available/4266/13 "2026-10-06T10:54:29Z")

</div>

Thanks Simon! That isn’t me. I hadn’t seen René’s work before. Very interesting that he’s working on SGX/Poulsbo too. I’ll reach out to him, comparing notes could definitely be useful since I’ve been approaching the SGX535 from the reverse engineering/documentation side.

For now, while I figure out the next steps towards a Mesa driver, I’ll also try adapting the old proprietary driver to a modern kernel.

It will probably be a lot more problematic, though, since even the original Intel driver didn’t contain enough information to fully reconstruct some parts of the GPU’s behavior. One example was 0x07000345: I eventually had to make an educated guess based on the evidence I had, and it turned out to be correct. It also gave me some serious dark circles under my eyes, I swear I dream about that DWORD now

---

<div class="post-metadata">

**Author:** ![Operating](https://avatars.discourse-cdn.com/v4/letter/o/439d5e/32.png) [@Operating](https://forums.imgtec.com/u/Operating)\
**Post date:** [October 7, 2026, 11:05pm UTC](https://forums.imgtec.com/t/powervr-sgx-535-intel-gma-500-poulsbo-any-documentation-still-available/4266/14 "2026-10-07T23:05:16Z")

</div>

yo Simon, there’s one more thing I wanted to ask about René’s SGX535 driver

I checked T2 Linux’s original patch (SVN r96340), and it explicitly references the “vendor’s own DDK”, including `sgxdefs.h:8865`, `3d.asm:714-776`, and `sgx_utils.asm:2390-2560`.

What caught my attention is the provenance of those files. Some SGX5 DDK sources have circulated online with unclear licensing histories, and I know there’s been concern about using such material in open-source driver development.

I’m not claiming René used leaked or unauthorized code, but I think it’s worth clarifying which DDK release those references came from and whether its license permits this kind of use.

Since I’m developing reMESA independently, I also want to make sure I don’t accidentally introduce code with questionable provenance

Do you know whether those particular SGX535 DDK sources were officially released for public use?

---

<div class="post-metadata">

**Author:** ![Operating](https://avatars.discourse-cdn.com/v4/letter/o/439d5e/32.png) [@Operating](https://forums.imgtec.com/u/Operating)\
**Post date:** [October 7, 2026, 11:44pm UTC](https://forums.imgtec.com/t/powervr-sgx-535-intel-gma-500-poulsbo-any-documentation-still-available/4266/15 "2026-10-07T23:44:21Z")

</div>

`sgxdefs.h:8865`, `3d.asm:714-776`, and `sgx_utils.asm:2390-2560` is all leaked files
