Le début de l'affaire du pilote
pwc remonte à août 2004. Jusqu'à cette époque, la partie libre de ce pilote pour webcams basés sur des chipsets Philips était disponible dans la version officielle du noyau Linux. Toutefois, ce pilote ne permettait de gérer que les modes de basse qualité des webcams, un module supplémentaire propriétaire,
pwcx, étant nécessaire pour accéder aux modes évolués qui nécessitaient des routines de décompression.
En août 2004, un différent opposa les développeurs du noyau Linux au développeur du pilote. En effet, le module libre mettait en place un
hook spécifique dans le noyau permettant au module non-libre de mettre à disposition ses fonctionnalités avancées de décompression. Or, les développeurs noyau, et en particulier Linus Torvalds, ne souhaitaient pas mettre à disposition un
hook particulier pour les besoins d'un module propriétaire :
"if a change is needed to be made to the kernel in order to get a closed source module to work, that module must be made opensource".
L'auteur du pilote a
alors fait savoir que ce
hook existait depuis longtemps et qu'il ne comprenait pas cette décision. Au final, la discussion a amené
l'auteur à demander le retrait du pilote.
Le noyau Linux ne disposait alors plus de pilote pour les webcams à base de composants Philips, pourtant très répandues. Heureusement, un français, Luc Saillard, a repris le développement de ce dernier. À la mi-septembre 2004, il envoie
un patch contenant une nouvelle version du pilote, entièrement libre, et permettant d'utiliser certains modes de décompression qui n'étaient auparavant utilisables qu'avec le module propriétaire, grâce à de l'ingénierie inverse. Tout semblait donc s'arranger.
Mais, tout récemment, nouveau coup de théâtre : le développeur originel du pilote
demande de nouveau le retrait de ce dernier, arguant du fait que le pilote de Luc Saillard aurait été réalisé plus par décompilation du pilote propriétaire que par ingénierie inverse. Après une investigation plus poussée, Alan Cox a trouvé que les remarques de l'auteur originel étaient recevables. Il a par ailleurs eu une discussion amicale avec Philips qui a abouti au
retrait du code litigieux des décompresseurs.
À ce jour, le noyau Linux supporte donc toujours les webcams à base de composants Philips, mais uniquement dans les modes basiques. Toutefois, ce rebondissement n'est certainement pas le dernier dans cette saga, et l'espoir de disposer un jour d'un pilote complètement libre et dégagé de tout problème reste présent.