NOTE: I have seen those old HTC Android upgrade flowchart pics. So nowadays Android hardware is probably a lot more homogenous than it used to be. Most use a Qualcomm CPU/GPU and possibly the same sensors, radios and whatnot. So how come it still can take many, many months for an Android update to arrive for a specific model? It took Oneplus almost a year to bring just Marshmallow to the Oneplus X and Samsung had similar issues with their Galaxy A7. At the same time we have PCs with much more varied hardware with no issues upgrading to Win10 when it was released. Shouldn't Android phones work much the same, as in the OEM provides compatible drivers and boom, Android runs fine? Carriers are often blamed for the slowness, but I'm pretty sure that for example Finnish carriers don't get contacted much regarding Android updates for various devices. Yet devices not even sold in this country work perfectly fine as long as they support the LTE/3G bands used. Likewise 3rd party developers often get a custom ROM running the latest Android running on a popular device way faster than the OEM. Ok, they don't have to do much testing and can deliver partially working stuff but it's still a huge difference despite most of these guys probably doing the work in the evening/weekend because it's not their day job. A small team of developers at the OEM should have no trouble getting a new Android version working quite fast. So what exactly is the holdup?