Slashdot Mirror


OpenBSD Ahead of Linux for Wi-Fi Drivers

algae writes "It looks like some kernel developers have noticed that the OpenBSD project is including reverse-engineered drivers for wireless ethernet cards while Linux is still using binary blobs. A large part of the issue is that much OpenBSD development takes place abroad, where having to do clean-room reverse-engineering isn't as important." From the article: "Christoph Hellwig took another stance, 'please don't let this reverse engineering idiocy hinder wireless driver adoption, we're already falling far behind openbsd who are very successfully reverse engineering lots of wireless chipsets.'"

2 of 256 comments (clear)

  1. You can help end this argument by Bruce+Perens · · Score: 5, Insightful
    BLOBs are bad, and their legality in the kernel is questionable. Of course really free drivers that let us extend devices are better.

    Leaving BLOBs in the kernel might just mean you have different plaintiffs than if you used a reverse-engineered driver.

    However, full clean-room reverse-engineering a free driver with full source code, rather than one that you have to disassemble and figure out, is a reasonably easy task. And, we have to write a Linux driver anyway. So, find one friend to work with and get started.

    One person must not write any kernel code concerned with the driver. That person must read the existing driver, document the hardware, and publish the document. The document should not reproduce algorithms in the existing driver unless they are integral to driving the device and there isn't another way to do it.

    A second person must not look at the existing driver. This person reads the document and writes a new driver.

    Keep notes about the entire process. You could someday have to testify that you did it the right way.

    Bruce

  2. Re:This seems bogus by Just+Some+Guy · · Score: 5, Insightful
    Yeah, because all the BSDs and Linux have identical kernel interfaces, PCI subsystems, DMA handlers, etc. A simple ./configure; make install is all that separates OpenBSD's kernel from 2.6.15, after all.

    In reality, on the other hand, the reverse engineered drivers can serve as excellent documentation for how the same logic can be implemented in another OS, but that's about as close as it's likely to get.

    --
    Dewey, what part of this looks like authorities should be involved?