At Fri, 29 Jun 2007 13:21:06 -0500, Ash Willis wrote:
Hi all, Sorry for straying a little off topic, but talk of these couple of chips got me thinking about unsupported hardware in general.
Does anyone know the legal implications of reverse engineering with regards to producing new drivers? I myself wouldn't mind reversing a certain chip or two but I'm not too aware of the legality of it all, particularly in the case where the vendor is hostile or unwilling to release chip information.
In general, is it legally acceptable to reverse engineer for the purposes of interoperability?
Are vendors likely to make a noise if their hardware gains support under Linux without or against their consent? or is it more a matter of protecting the original product specification than hiding details of the product's interface?
Takashi, may I ask your thoughts on this? What's your position on accepting reverse engineered code? (Let's assume that the driver works as well as one written in a more correct manner ;)) I'm fully aware that uncooperative vendors don't deserve to have their hardware supported, but I think that Linux users and Linux itself deserves the support.
IANAL, so just an empirical guess: the Linux kernel has many device drivers written after some reverse-engineering work, so it must be OK in a certain level. The reverse-enginnering itself is allowed in many countries. The question is rather the legality of the derivative works. My understanding is that the way of reverse-engineering is also another point. For example, snooping the protocol is a very clean way, and a fairly safe way. Disassembling is questionable, but it'd be hard to prove only from the source code. I've never heard of complains from hardware vendors about it, though.
Anyway, I think the problem in the case of SB X-Fi is no juridical but technical one. Such a complex chip is likely very hard to do reverse engineering. Unfortunately, we have so far no contact with Creative Labs, and I have no idea how real is their plan to release the linux (even ALSA) driver as announced sometime ago...
Takashi