Re: [Trisquel-users] So is this true about AMD on Trisquel?

2014-07-04 Thread mikko . viinamaki
And on the lingo, driver is one thing, microcode and firmware another. And as  
you've noticed people use all three in a confusing mash.


Re: [Trisquel-users] So is this true about AMD on Trisquel?

2014-07-04 Thread mtjm
They have clear definitions: driver is the code running on the main CPU.   
There are drivers in the kernel (DRM: direct rendering manager; radeon), X  
server (DDX; xf86-video-ati), Mesa (DRI; e.g. r600g).  Firmware and microcode  
are different words for the same (Linux calls it firmware, developers and  
documentation microcode): code uploaded by the kernel driver and run on the  
GPU.


The open source drivers have no nonfree code running on the main CPU  
(except for code stored in the VGA ROM: AtomBIOS), unlike the fully nonfree  
driver that AMD develops too.  This leads to confusing claims as if no  
nonfree code was used for 3D acceleration on Radeons.


There were some improvements: xf86-video-radeonhd worked nearly without the  
VGA ROM, not running AtomBIOS code, there was more documentation available  
for these purposes then. AMD worked against this.


Re: [Trisquel-users] So is this true about AMD on Trisquel?

2014-07-03 Thread os9junkie
Well then why the heck do they even celebrate these drivers like a win for  
GNU/Linux users?  You can't even use them wihtout proprietary code!  I don't  
understand supposed Linux enthusiasts writers that are doing this then... I  
mean if anything it'll get current Free software users to accidently convert  
to closed code.  At least that's how it's worked for me, lol.  I sadly don't  
have an Intel chipset, I prefer AMD (don't ask why, I just do, lol).  I use a  
high end ASUS motherboard as well, so it can use four videocards at once, but  
doesn't contain an integrated video card.  This kinda stinks!  So my only  
hope of 3D acceleration in Trisquel is using Intel integrated graphics (NOT  
my prefered choice) or antique Nvidia cards like the 9500GT?  Thanks for your  
respose by the way.


Re: [Trisquel-users] So is this true about AMD on Trisquel?

2014-07-03 Thread onpon4
That's just what not valuing freedom leads to. You've got people thinking  
it's fine because of where the proprietary firmware is being run, and it  
doesn't help that the main distribution of the kernel Linux includes these  
proprietary blobs. For example, one of the people responsible for the  
OpenPandora once justified proprietary firmware as more open than  
proprietary drivers because you can get the firmware to work with any OS. If  
all you value is openness, this makes sense. If you value freedom, a  
proprietary firmware requirement is no better than a proprietary driver  
requirement.


Indeed, using an old Nvidia card (that works with Nouveau) is the best  
choice. I don't think there's even an active reverse-engineering effort for  
Radeon cards, so you can expect them to be essentially pieces of junk  
forever.


Re: [Trisquel-users] So is this true about AMD on Trisquel?

2014-07-03 Thread tobias
Some time ago when I did not care about freedom, I was using AMD CPUs. When I  
switched to Trisquel I realized that AMD does not want users to have freedom.  
AMD could easly solve the problem by burning the firmware into a ROM or  
hardwiring the command processor. I think releasing the source code would not  
help here in this specific case, as there is no free compiler that handles  
hardware description languages and works with real hardware.


I also learned how to reverse engineer the nonfree firmware that drives the  
Yamaha FB-01. In this case the nonfree program was burned into a ROM, so that  
old device is not a problematic one. The CPU is a well known one, and free  
disassembly tools are avialable. I also know how to design a CPU, which can  
be implemented on an FPGA. I know that there is a reverse engineering project  
that tries to replace the nonfree tools required to program an FPGA.


Recently I baught a refurbished OpenPandora. First I deleted all nonfree  
firmwares, and installed the free firmware for the TPE-N150USB. Now I can use  
the wireless network without giving up my freedom. I think the hardest part  
here is GPU, as there are no free drivers and no free fireware for the GPU.  
There is a reverse engineering project at[1], but this seems to be dead. But  
I can play some games such as Wesnoth and Tetris without using nonfree  
software. Unlike the Raspberry Pi no nonfree startup software is required,  
instead a boot-ROM is used instead. I think using a ROM for the boot firmware  
is the best solution as it prevents the user from accidently bricking the  
computer.


Currently I do not have time to reverse engineer the GPU as I'm working on a  
free software replacement for the mbrola speech synthesizer. I can do so  
without reverse engineering, as the algorithms used by mbrola are well  
documented. Reverse engineering would be needed if you want to use mbrola  
voices with a free program. However the licence of the mbrola project does  
not allow to use of the voices with a different program than mbrola itself.


[1]  
https://www.fsf.org/blogs/community/new-high-priority-project-powervr-drivers  
  


Re: [Trisquel-users] So is this true about AMD on Trisquel?

2014-07-03 Thread legimet . calc
I have a Replicant tablet with PowerVR. I really hope someone reverse  
engineers it.


BTW, the Raspberry Pi's GPU blob was actually freed by Broadcom. :)
https://libv.livejournal.com/26434.html


Re: [Trisquel-users] So is this true about AMD on Trisquel?

2014-07-03 Thread mtjm
At least the ME microcode for R600 (and probably earlier CP microcode) is  
simple code with separate instructions for reading or writing registers, Rob  
Clark of Freedreno partially reverse engineered the instruction format.   
Newer Radeons have different ISAs.  (ME is microengine, CP is control  
processor which has e.g. ME; it's not related to the Intel management engine  
used for AMT.)


Lack of existing free compilers is not an issue here: it needs a very simple  
assembler and some ISA documentation.  It's not like CPU microcode or FPGA  
data.


Some time-consuming work is needed to reverse engineer the ISA and replace  
the microcode, all interested people that I know have other projects and do  
not have enough free time to do this.


(There was an important kernel change regarding microcode dependency: now  
modesetting won't work on recent Radeons without the microcode, since the  
driver uses features that require it. I don't know the details of these  
changes.)