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

My understanding is the interface between hardware and kernel is more vendor-specific on ARM than it is on the PC. So the PC has lots of hardware diversity but the way you talk to a given device is already somewhat abstracted from the perspective of the kernel.

A major thing you have on PCs that you do not have on ARM is bus query.

With PCI and later the OS can ask each device on the bus to ID itself and thus figure out if it is a known device type or not (and if not, ask the admin to install drivers).

On ARM You have things sitting off various buses that expect the kernel to know what they are and how to talk to them from the word go.

It has gotten better as now there exist something known as a device tree that can be read by the kernel at boot. But not every SoC provide support.

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