# Verständnisfrage, ME und PFP Microcode

## Haubentaucher

Hallo,

ich habe mal eine Verständnisfrage:

Im Wikiartikel zum radeon-Treiber steht, man solle im Kernel diverse Firmwaredateien einbinden. Allerdings sind zumindest die neueren Namen davon nicht im firmware-Verzeichnis des Kernel zu finden. Ist der Wikiartikel da veraltet? Dann habe ich als Chip den RV710. Muss ich jetzt auch so eine Firmware einbinden? Und wenn ja, welche? Wo ist der Unterschied zwischen RV710_me.bin und RV710_pfp.bin.

Außerdem stellt sich die Frage mit der Lizenz. Ich habe gedacht, der radeon-Treiber ist komplett OpenSource, wozu genau braucht man jetzt eine Firmware und unter welcher Lizenz steht dann diese?

Ich hoffe, Ihr könnt mir da weiterhelfen.

mfG Haubentaucher

----------

## V10lator

Ich hoffe ich kann ein wenig Licht ins Dunkel bringen.

Früher brauchte der radeon Treiber weniger Firmware-Files. Diese wurden in den Kernel übernommen. Nun änderte sich aber die Einstellung der Linux-Entwickler "jeden Firmware-Blob in den Kernel zu übernehmen" und der radeon Treiber brauchte neue Firmware.

Für deinen Chip steckt nun ein Teil der Firmware im Kernel, der Rest in

x11-drivers/radeon-ucode

Damit der radeon Treiber alles findet:

CONFIG_EXTRA_FIRMWARE="radeon/R700_rlc.bin"

CONFIG_EXTRA_FIRMWARE_DIR="/lib/firmware"

So, wenn du nun noch wissen willst wieso eine Karte zig Firmwares benötigt:

 *Quote:*   

> The me and pfp firmware is for the command processor (which fetches and processes command buffers), and the rlc firmware is for the interrupt controller.

 (Quelle: http://phoronix.com/forums/showthread.php?38445-Confused-by-firmware )

Zu guter Letzt: http://de.wikipedia.org/wiki/Firmware - Alles "wichtige" ist im AtomBIOS (so nennt AMD diese quasi mini-Firmware) der Karte. Nicht so wichtiges wird durch die Firmware-Files nachgeladen. Diese Files stammen von AMD und ohne kannst du (3D) Beschleunigung auf der Karte vergessen.  :Wink: 

All dies wurde mit einem RV730 getestet. Sollte aber mit RV710 auch funktionieren.  :Wink: 

P.S. Guckt auf die Uhr! Es ist verdammt spät und alle Infos stammen aus meinem Gedächtnis. Fehler bitte ich also zu entschuldigen.  :Smile: 

//EDIT: P.S. Der Catalyst Treiber benötigt diese Files nicht. Da du aber den OS-Treiber nutzen möchtest mach dich schonmal über dev-libs/libtxc_dxtn in Verbindung mit mesa-git (mesa-9999) schlau. Bei mesa-9999 sollte man auch gleich auf das (neue) bindist USE-Flag achten...  :Wink: 

----------

## Haubentaucher

Danke für die Hilfe, das war wahrhaft ein wenig Licht im Dunkeln. Jetzt funktioniert alles und ich denke auch mal, ich habe verstanden wieso (zumindest auf der Konfigurationsebene).

----------

