Something I was particularly proud of being able to demo last week at Linaro Connect, was the Nexus7 running a mainline kernel, which has been part of our form-factor enablement effort.

So here is a little demo video of the current status:

We've got Android Marshmallow running on a mainline kernel with ~50 patches on top of mainline:

We've got accelerated graphics using freedreno and the latest mesa, with a DRM based hwcomposer.

This is really great, because we now have a very-close to mainline test bed on a actual consumer device. So we can make sure upstream doesn't introduce any regressions (just recently, two ABI breaks that affected android were recently caught) and allows us to make sure when we push Android functionality upstream, that any interface changes required by maintainers can be properly tested to make sure what lands upstream really works.

Again, I've not done much actual development to make this happen. I've just been doing integration work. So a huge thanks to +Rob Clark, +Bjorn Andersson, +Vinay Simha, +Archit Taneja, +Rob Herring, +Amit Pundir +Srinivas Kandagatla, and everyone who has been pushing related patches upstream at Qualcomm, Sony and Linaro's landing teams.

Its a huge credit to those folks that for the most part enabling functionality on this device has just been a matter of adding config options and devicetree entries. Of the ~50 patches, half are for the iommu and rpm-clk support for the device, ~10% is the display panel, and the rest are really config and device-tree changes, and a few small hacks to integrate into Android builds and getting the touch panel working.

If you want to try to reproduce this yourself, you can find instructions here (though no promises this won't set your device on fire):
Shared publiclyView activity