ARM Support in the Linux Kernel, the Unseen and Untold Truth

ARM support in the Linux kernel has been a debated issue for too long and today, it stands at a point where it is making more compromises. Every device with its own code for ARM support creates a bloatware out of the entire ARM section in the Linux kernel. This is a huge dilemma because if these codes are not submitted at the end of the day, it will (probably) be termed as a violation of GPL v2 and if they are submitted, they are too complex to include into the kernel. So they just lay there.
With a mini community of independent agents formed inside the Linux kernel developer community itself, these device manufacturers are finding it hard to get their ARM changes upstream into the mainline kernel. The reason?

  1. There are too many of them
  2. They are highly complex in their own way
  3. Most of them are just redundant

In short, there is utter chaos when it comes to ARM support in the Linux kernel and it was best left ignored until now.

The scenario is taking a turn and  attempts  are being made to standardize the process. ARM has moved to a separate Git tree but it still annoyed the maintainer all the more. Torvalds is rightfully annoyed here, as he would not include every bit of code that some device manufacturer somewhere has written to support some hardware that few people use!

This is a strong but a welcome decision because in the long run, it will keep hardware vendors from breaking the Linux ecosystem and acting in a more co-operative and a less competitive way.

The state of ARM in Linux kernel can still be ignored all right but we have seen how Microsoft is talking of a Windows 8 tablet now. ARM is indeed important for the future of portable and mobile computing and undoubtedly, Linux plays a major role in its future. The sooner they marry, the better it is for both of them.

Published by

Chinmoy Kanjilal

Chinmoy Kanjilal is a FOSS enthusiast and evangelist. He is passionate about Android. Security exploits turn him on and he loves to tinker with computer networks. He rants occasionally at You can connect with him on Twitter @ckandroid.