logoalt Hacker News

petcatyesterday at 10:21 PM10 repliesview on HN

I feel like ubiquitous hardware support in every OS is going to be a solved problem soon. We're very close to just being able to set an AI coding agent to brute-force a driver for anything. The hardware designer would have to go well out of their way to obfuscate the interface if they really wanted to forbid it, instead of just not bothering to support an OS like BSD or Linux.


Replies

diathyesterday at 10:43 PM

The primary reason why it worked is because Claude could rip off the Linux driver. Without any prior work to rely on, how will the AI figure out proprietary hardware?

show 10 replies
Gigachadyesterday at 10:45 PM

Maybe one day, but it doesn't look like we are very close yet. From the OP article, they handed it the working linux driver and asked it to just make this FreeBSD compatible, but it could not. Looks like it took OP a significant amount of work over 2 months to get something that seems to work.

What is interesting is it seems like the work resembles regular management, asking for a written specification, proof reading, etc.

show 3 replies
ahokayesterday at 10:41 PM

That pesky GPL does not stop us anymore, cool.

show 2 replies
estimator7292yesterday at 10:46 PM

Drivers can be anywhere from so trivial you can throw it together by hand in an afternoon to so complex that it requires an entire engineering team six months of concentrated effort.

show 1 reply
rvzyesterday at 10:29 PM

> We're very close to just being about to set an AI coding agent to brute-force a driver for anything.

That sounds quite naive and it isn't that simple. Even the author expressed caution and isn't sure about how robust the driver is since he hasn't seen the code himself nor does he know if it works reliably.

Even entertaining the idea, someone would have already have replaced those closed source Nvidia drivers that have firmware blobs and other drivers that have firmware blobs to be open replacements. (Yes Nouveau exists, but at the disadvantage of not performing as well as the closed source driver)

That would be a task left to the reader.

show 4 replies
mschuster91today at 12:54 AM

> We're very close to just being able to set an AI coding agent to brute-force a driver for anything.

Yeah, but that only works for so long as the AI doesn't brute force a command that hard-bricks the device. Say, it causes a voltage controller to give out way too high voltages by a command, burns e-fuses or erases vital EEPROM data (factory calibration presets come to my mind here).

octoberfranklinyesterday at 10:51 PM

Hardware driver bugs frequently manifest as concurrency flakiness or heisenbugs.

AI is notoriously bad at dealing with bugs that only cause problems every few weeks.

show 4 replies
skydhashyesterday at 11:10 PM

The driver used as inspiration is fully opensource

https://github.com/torvalds/linux/tree/v6.18/drivers/net/wir...

I don't know why it has not been brought in the BSDs (maybe license), but they do are a bit more careful with what they include in the OS.

wangzhongwangtoday at 1:17 AM

I think we're closer than most people realize, but the hard part isn't generating the code — it's testing it. Drivers need to handle edge cases that only show up under specific hardware conditions, timing issues, power states, etc. An AI can write a first draft pretty fast, but validating it still requires actual hardware in the loop. The FreeBSD case worked because brcmfmac is well-documented and the author could test on real hardware. For more obscure chipsets with no public datasheets, we're still stuck.

jwattetoday at 1:07 AM

Tell me you've never developed a driver, without telling me you've never developed a driver.