Hacker News new | past | comments | ask | show | jobs | submit login

(the below is my ignorant understand of drivers in Fuschia and linux)

It's not just the kernel design, it's the driver design as well. Fuschia has drivers being ELF binaries that hook into Device Manager process[0]. I believe they are developing a standard API for how drivers interact with Fuschia.

Linux doesn't really have this today, which means that the driver must be in the kernel tree to have it keep up with the kernel's interface. And with ARM lacking something like a BIOS for phones, each chip that Qualcomm et al make requires a full BSP to get it working. And from what I understand, Linus and others don't want these (relatively) short-lived processors to be checked into mainline linux (plus you have the lag time of that code being available). Android's Project Treble[1] aims to address this some by creating a stable API for hardware makers to use to talk with Linux, but it is not an ideal solution.

[0] https://fuchsia.googlesource.com/zircon/+/HEAD/docs/ddk/over...

[1] https://android-developers.googleblog.com/2017/05/here-comes...




There is device tree [0] to resolve the problem with chip support but I guess it would make "universal" drivers more complex and harder to maintain if all hardware features are to be supported (in an effective way). Seems like the Fuschia model might handle this better.

[0] https://en.wikipedia.org/wiki/Device_tree


> Linus and others don't want these (relatively) short-lived processors to be checked into mainline linux

I don't think that's true. e.g. 4.17 is accepting code to run Samsung Galaxy S3 (released nearly 5 years ago). It is left to volunteers since most vendors dump a source release to comply with the GPL but themselves don't upstream it to Linus.


Because it can take 5 years, in which time the product is obsolete.

But, the core idea behind SBSA and SBBR is to form a common platform to which the vendors conform their machines so they don't have to keep up-streaming special little drivers for their special little SOCs. Only time will tell if its a success, but a large part of the community has effectively declared that they aren't really going to conform to the ideals of a standard platform. So, the ball keeps rolling and new DT properties keep getting added, and new pieces of core platform IP keep showing up. At this point arm64, despite just being a few years old already looks as crufty as much older architectures with regard to GIC versions, dozens of firmware interfaces, etc due to the lack of a coherent platform/firmware isolation strategy.




Consider applying for YC's Fall 2025 batch! Applications are open till Aug 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: