Linaro Connect San Francisco 2015 is taking place this week, and several 96Boards have been presented including LeMaker Hikey and Qualcomm DragonBoard 410c, both of which will finally be available by the end of the year. But there are also many technical presentation and discussions that are uploaded to LinaroOnAir Youtube account, and they’ve greatly improved video and audio quality compared to the past, with presentation slides also available on Slideshare. I’ve just watched one of the session entitled “Kernel Mainline Status of Mobile Chipsets” by Tim Bird, Sony Mobile. Also the talk focus on mobile SoC, it’s also relevant to other consumer electronics products, and some embedded systems.
The presentation states the extend of the issues, shares comparisons between the vendor device tree and mainline, and explains how developers can participate, with the talk ending with a discussion within the group of attendees.
Here’s a summary of some of the key points:
- Shipping products are 20 versions behind Linux mainline, that’s about 3 years old, and have between 1 to 3 million lines of code out-of-tree, as shown in the table below, where they compared the vendors’ GPL source code releases to mainline Linux.
- Manufacturers find working with Linux is hard, even for a company like Sony with 1,100 developers, and many manufacturers don’t participate because they don’t understand the benefit, or simply don’t know how to do. The end results however is that users’ device don’t get any long term support for their devices.
- One of the issue is the development cycle goes through multiple parties. Google selects an LTS kernel, which then gets to SoC vendors, then device manufacturers, before reaching the end user, and the cycle repeat with a large “version gap” between mainline and the kernel used on devices.
- To reduce to version gap, a joint project between Linaro and the Linux Foundation aims to determine obstacles to mainlining, and reduce or eliminate them, and the results of analysis, generated with upstream-analysis-tools, shows large differences for the expect media & video drivers, as well as the architecture directory, but also for USB 2.0 code, simply because of the extra code required to handle USB charging that’s not supported in mainline.
- The analysis lead to kernel area of focus for mainling Wiki entry which includes potential work to be done for sensors, charging, NFC,GPS & Bluetooth using UART, and more. So if you a student looking for a summer or final year project, this could be something you could explore.
- Beside technical issues, and there’s a lot of work, there are also institutional barriers, and management must be convinced mainlining – and avoid binary blobs – is the way to go before committing resources. Some ideas are listed on eLinux.org such as gathering data to show the benefit of mainlining, possibly showing smaller code base for mainlined code which can leverage the kernel framework, making software costs visible, etc… You can edit the Wiki, and add your own ideas too.
You can watch the full 55-minute presentation below, and/or download the presentation slides.
Jean-Luc started CNX Software in 2010 as a part-time endeavor, before quitting his job as a software engineering manager, and starting to write daily news, and reviews full time later in 2011.
Support CNX Software! Donate via cryptocurrencies, become a Patron on Patreon, or purchase goods on Amazon or Aliexpress
It’s not hard working with Linux- it’s that they don’t want to play ball doing it. They want to keep everything in house and not give anything away at-all, at IP Counsel’s instructions. It’s more a problem of lawyers not “getting it” and the Execs not being clueful enough to realize that their lawyers are blowing smoke up their backsides.
The last thing these guys want is maintainable hardware: these things are disposable fashion items with a designed-in limited life-span of months and not years.
The device manufacturers themselves are just another consumer in the chain. For rapidly changing soc hardware which quickly becomes obsolete itself the effort of upstream patches is actually just a sunk cost since there’s no future benefit to be gained from the shared development resources this adds. In effect even the GPL compliance is also just a sunk economic cost for society – each kernel releases is just another isolated fork which gets thrown on a giant pile of software rubbish which grows every year and simply isn’t worth the effort to sort through.
If the hardware reaches a level of maturity/stability the incentives will flip over. But this may never be allowed to happen as it would break the economic model of unbounded consumption on which the entire tech industry is based and lead to an inevitable economic crash. We live in such obscene economic times that this isn’t even an exceptional industry in this regard.
Rockchip RK3368 and Mediatek MT6795 are part of mainline kernel now and will be released in with Linux kernel 4.3 :).
@Totor
I think many mobile SoCs are part of mainline, but at different levels of implementations, and many can only boot to the command line, with more work to be done. It’s still nice that work is done in that direction.
@Nobody of Import
It’s not as simple as that. The cost of defending a GPL licensed code is steep and is litigated in the accused party’s country. Even for individuals and small companies, the GPL is nearly useless when dealing with big corporations.
This is why Microsoft is able to extort money over non-existent FAT patents and the likes from every Android device OEM.
It’s also why Samsung could lose against Apple’s curved-angles nonsense.
And it’s not getting any better. The US recession made pharmaceuticals and IT to cut back on R&D in the same panic that made factories in the 30s to lay off workers. Now, with less and worse products on the market, they’re desperately trying to monetize their IP through the Trans-Pacific Partnership Agreement. This naturally just results in the equivalent of a peasants revolt: Entire Asian markets are being driven to counterfeit everything from pharmacy to electronics in much the same way they do with textiles… Well, besides the obvious violent escalations, the GPL is obviously being left behind where there’s no intention of litigating things.
I wanted to chime in here as this is a topic that is near and dear to my heart. First, I want to say that this is a worthy struggle for manufacturers and for end users and for developers and for prosumers. If we focus on only the economic aspects, well I don’t care. Except, I do care sort of but not in the way that most people might. The way that I care is this open source is the only thing that I can see on the horizon that properly exploits technology for the benefit of everyone open source reduces the cost of applying new technologies drastically. At the same time, its open study of all major enables people to develop new technologies more quickly. New technologies are certainly the only way that we are going to be able to feed everybody given the population expansion and their expectation of food. No, I want better than that and I think many of you do too when I want I want to see a millionaires lifestyle livable by the sword of person who can only earned maybe 5 $10,000 a year today. This is an accomplishable feet because today we all live far better then the millionaires of the 1870. While on 1870 millionaire was certainly much more powerful than me, technology has given me myriad Abilities and vast knowledge that that 1870s millionaire had no opportunity to taste.
Take a moment and look at the Internet. One thing that I am sure you will quickly notice is that all of its building blocks are open source, this is pretty much a universal. No, it’s open software can only run on special, open hardware I think we’re going to have a big problem. The large players are just not giving up their intellectual property fast enough for us to have a reasonable fully open hardware platform fast enough. Of course, I am aware of LowRISC in the related constellation of projects, but there’s a whole world out there just begging to be programmed. Now, none of us knows where this will lead but god damn it in the world where it’s completely possible that we may virtualize are very selves in the next 20 years I think open software is very worth fighting for. If you’ve given up on it, fine do so privately please. Some of us have been trying to push open source in every work environment they’ve had for the past 20 years and are really tired of hearing baseless arguments against it. If you as a technical person choose to criticize open source or minimize its usability in business environment please no I do consider you to blame. Software is special, it can belong to everyone at the same time and yet still keep its intrinsic value.
The connection between my little rant here and the topic of the article is this: lookout fast to Linux kernel has been moving these days in terms of its development toward something even more epic than it already is. Now, imagine that every cell phone matured equally quickly. That’s what mainlining is. That’s the goal of mainlining new hardware.