3 ms·
> specifies all sorts of things about how other things on the motherboard communicate with each other and with the CPU That used to be true, but I dont know ho
by 737maxtw 6y ago
> specifies all sorts of things about how other things on the motherboard communicate with each other and with the CPU
That used to be true, but I dont know how true it is now.
Once upon a time, ISA and ATA were both wired right to the bus.
By the P3/Athlon era everything was probably on a super-io controller and or south bridge, but that communication towards the northbridge/CPU was over PCI or ever fancier links.
But the clear cutting point to me is EFI. Most of the standards in how things communicate on older PCs was more based on the IBM BIOS. Early clones couldnt exist until that was nailed down. But... EFI replaces all of that with a new abstraction.
- fiddlerwoaroof 6y agoI’m not a hardware person, really, but—even with EFI—my understanding is that x86 motherboards all implement standards that specify how the motherboard’s features can be accessed from software in a way that is fairly uncommon in ARM/MIPS/etc.
- yjftsjthsd-h 6y agoBasically correct; the key bit is that x86 usually has a bus that can be enumerated by the OS. So you boot, and the OS can look around and see what hardware it has (and where it all is). On most ARM, the OS boots blind and you have to tell it (usually via device tree) what devices are attached and where.
- vertex-four 6y agoThere's a spec for putting a device tree in an ARM chip's rom, the problem being that it's often wrong in some way, requiring device-specific corrections. Note, however, that there's a lot of "quirks" and similar device-specific corrections for x86 as well. These get presented to Microsoft by the manufacturer, and Linux gets to reverse-engineer them.
- yjftsjthsd-h 6y ago> There's a spec for putting a device tree in an ARM chip's rom, the problem being that it's often wrong in some way, requiring device-specific corrections. I was aware of being able to have ex. u-boot pass a device tree file to the kernel at boot time; are you talking about that, or something more generic?