Armbian 23.05: optimized for single-board computers
Armbian 23.05: optimized for single-board computers
Posted Jun 21, 2023 22:42 UTC (Wed) by sobkas (subscriber, #40809)Parent article: Armbian 23.05: optimized for single-board computers
Posted Jun 22, 2023 0:11 UTC (Thu)
by gmgod (subscriber, #143864)
[Link] (2 responses)
What I would really wish for is for those boards to follow standards and being able to boot mainline linux on a mainline bootloader using mainline drivers by design.
Posted Jun 22, 2023 10:06 UTC (Thu)
by farnz (subscriber, #17727)
[Link]
The device-specific stuff should be manageable via Device Tree - there's a lot of effort in determining that (for example) MyBoard SBC's "custom" interrupt controller is just a weirdly wired ARM GICv2, but once that's done, Device Tree should let you indicate that the interrupt controller is a GICv2 with this weird wiring, without the need to grow the kernel and distro 100x.
Posted Jun 22, 2023 14:15 UTC (Thu)
by mfuzzey (subscriber, #57966)
[Link]
Agreed but that doesn't, for the most part, require following standards (with maybe the bootloader part as an exception).
It requires
#1 and #2 are quite doable in mainline, at least for things that aren't brand new, and, being component specific rather than board specific, scale quite well.
#3 is where it gets more complicated. I'm not sure its reasonable to expect mainline to have the DTS files for every board in existance (today its mostly dev boards and a few common consumer devices.). But the actual volume here is low (nothing like 100x bigger). Writing a DT is normally fairly straightforward but it does require having schematic level information about the exact board design. I generally do it with the schematic open on one monitor and a text editor on the other - sometimes I dream of a netlist to DT converter...
I think the idea was for the board designer to ship a DT for the board but it doesn't seem to work like that in practice. There was also an idea of moving the DTS files out of the kernel tree and to a separate repositiory but I haven't heard any more about that for quite a while.
I don't think "standards" would solve the problem given the diversity of hardware (often for good reasons).
Posted Jun 22, 2023 5:06 UTC (Thu)
by voltagex (subscriber, #86296)
[Link]
Armbian 23.05: optimized for single-board computers
Armbian 23.05: optimized for single-board computers
Armbian 23.05: optimized for single-board computers
1) The SoC (and all its internal peripherals) to be supported in mainline
2) There to be mainline drivers for all the external components on the board
3) There to be a device tree describing how it's all wired up.
It also helps when the chip manufacturers provide full register level programming information, which is quite common for "industrial" type chips but more complicated for "mobile" chips.
In fact even PCs these days don't rely that much on standards (as in specific chips at specific adresses) anymore but rather a mixture of discoverable busses (like USB & PCI) and ACPI tables for non discoverable busses (like I2C and SPI). And ACPI is really DT on steroids the difference being that the tables *are* shipped by the device manufacturer.
Armbian 23.05: optimized for single-board computers