3 ms·
The lack of proper boot and hardware standardisation is a huge issue. DTB tries to solve the fact different people put different peripherals on different ports,
by g_p 6y ago
The lack of proper boot and hardware standardisation is a huge issue. DTB tries to solve the fact different people put different peripherals on different ports, and there's no real hardware enumeration process to get around this.
But beneath this, one of the root issues at least in mobile devices is the system on chip nature of the design meaning you're at the mercy of the chipmaker to maintain appropriate drivers. These are invariably very very closed source on phones, as some areas like imaging and camera support were (and are now still, I guess) being bought in as super expensive IP blocks with serious NDAs and restrictions on what can be made available.
One reason Android is as fragmented as it was, was that they kept changing the system HAL, and chipset makers weren't providing upgraded drivers to support the new HAL as, from their perspective, the chip was end-of-life, old news, last year's model not making them any more money. I assume it isn't quite as bad on server, but single board computers running mainline Linux without patches, and with all peripheral and SoC component support are very rare, and noteworthy when they are found. Most still have pretty closed GPUs.
But when it's all on one chip, and you don't have any hardware discovery process, or even a standard way to boot the CPU, it's hard to see much of a generic future, as much as one would be great!