I think the way we're phrasing this is off.
Quite a bit of GPL licensed code violates the principles of the GPL and free
software movement. This is something that distinguishes the free software
movement from the "open source" movement. "open source" proponent have no
problem with non-free pieces as the goal is purely to code more efficiently
(code reuse where its beneficial and non-free code where it isn't).
CodeWeaver's CrossOver Linux is a good example of a piece of software that is
"open source". It is based off of mostly free software, but has a non-free
user interface that runs on top of the free software piece (WINE) to make it
easier to configure/use MS Windows software (keep in mind some MS
Windows-only software is 100% free, but only runs on the non-free platform,
and therefore needs WINE).
Ralink and most companies developing GPL licensed drivers are doing something
similar although in a reverse fashion. Instead of making the interference
proprietary they make the core proprietary. This is worse because now the
software is totally useless. Unlike with WINE / CrossOver Linux it is at
least possible to utilize the software without the non-free parts. That is
not the case with drives that depend on non-free firmware.
Ralink and most other companies developing drivers dependent on firmware have
not released the code because the "open source" community isn't demanding it.
Unfortunately Linus Torvalds (the lead kernel developer) has taken a stance
that he doesn't care. This has lead to an undesirable situation where
companies are less cooperative than they probably otherwise would be. It's so
bad in many cases that even Linus has gotten upset and yelled out at times.
Personally I think it is in part his own doing in his support of the "open
source" movement. While it can be argued that the "open source" movement is
the reason we have many of the drivers that we do it can also be argued it's
why we have many of the problems we do.
In any event Ralink has been uncooperative in the full release of source.
While the driver is under a GNU GPL license it's not free software as the
source consists of a binary-only (and thus not free despite it being under
the GNU GPL) component. That violates the spirit of the GNU GPL license.
What you should take from all this is that GNU GPL licensed work is not
sufficient to make something free software in its entirety. While in many
cases the free software community gains some benefit from partly free
software it gains nothing in other cases (as it is in this case, with
drivers).
In most cases the GNU GPL licensed driver has separate firmware, but in other
cases, like the Ralink drivers that firmware is non-free and embedded within
the free code and thus not really free (and particularly not in any useful
way).