The board requires custom modifications to the kernel. These modifications never get cleaned up and submitted as patches to the kernel. So you are stuck with a kernel frozen in time.
And this is the situation with damn near every ARM board you can buy! It's depressing. I finally had to give up on my Efika MX smartbook because they never got past a 2.6 kernel, which IIRC eventually meant I couldn't upgrade libc past a certain point, which meant I couldn't upgrade anything else.
Yes it is and it is terrible. The lack of upstreaming also makes things like applying the PREEMPT_RT patches much more difficult than it should be. You might be stuck at a version of the kernel where PREEMPT_RT was never released, not to mention you will be missing the PREEMPT_RT changes in the custom code.
Phone hardware is absolutely infuriating in this regard. People figured out how to standardize bootloaders and do drivers on the PC decades ago, why can't SBC and phone manufacturers figure this out?
Why can't their be a generic build of Android that will at least boot on every phone, even if there might be some driver issues on different devices? This situation has gone on for so long it is past the point of being a joke. And don't try to tell me that there is a good technical reason why it has to be this way, we're talking about machines that are as powerful as a mid 2000s PC, you can afford the overhead of a bootloader on there.
They have a bootloader, they just don't have a BIOS, or ACPI, which you would need for the operating system to detect and interface with peripherals.
I think right now they are trying to decide between Device Tree (FDT) and ACPI for ARM, in the mean time nothing gets done and I'm not confident anything will get done until ARM the IP holder itself mandates something.
Shouldn't this have been done years ago? Do all of these manufacturers like reinventing the wheel every time they spin a new silicon? Didn't building custom bootloaders for every device get old a long long time ago?
The systems powered by these ARM processors were typically bespoke embedded software anyway, so not many people cared. Hardware vendor provides a bootloader of sorts and some shitty SDK or RTOS patch, you heap your own custom code on top and ship it. Never update any of the components, that's just asking for extra work.
Now that the processors are powerful enough to replace what would ordinarily run Windows or Linux it's very painful. The Linux code is littered with support files for a bazillion of different boards and hardware platforms.
Every new mainline kernel release includes improvements for Allwinner chips. Older Allwinner chips, such as A10 and A20, are already supported very well. The support for newer chips is progressing nicely, but there is always a bit of delay.
Yes, you can't expect this newly released Orange Pi PC 2 board to be already supported in the mainline kernel today. But maybe half a year later everything is likely going to be much better. And even right now, there should be some sort of a legacy 3.10 kernel available too, so it is not like you can't use the board at all.