Android Marshmallow 6.0.1 GA release
Published on June 10, 2016
We are glad to deliver the latest Android Marshmallow 6.0.1 GA release for all our platforms: BD-SL-i.MX6 (SABRE Lite), Nitrogen6x, Nitrogen6_Max (Quad and QuadPlus), Nitrogen6_SOM, Nitrogen6_SOMv2, Nitrogen6_Lite, Nit6_SoloX and Nitrogen6_VM.
This release went under the same testing as our previous releases which is why we now recommend this release for new designs.
For the impatient
You can download images from here:
- m601-nitrogen6x-20170224.img.gz for Nitrogen6X, BD-SL-i.MX6 (SABRE Lite), Nitrogen6_Max, Nitrogen6_SOM and Nitrogen6_SOMv2
- m601-nit6xlite-20170224.img.gz for Nitrogen6_Lite
- NOTE: After several remarks, we recommend only Nitrogen6_Lite with 1GB of RAM for this version. For boards with only 512MB or RAM, KitKat 4.4.3 is the best option.
- m601-nitrogen6sx-20170224.img.gz for Nit6_SoloX
As usual, you'll need to register on our site and agree to the EULA because it contains Freescale content.
Update 20170224 changelog:
- Fixed BT A2DP connection for TiWi-BLE
- Fixed USB storage management
- Fixed 6QP media profile
- Updated TiWi firmware files (both BT & WiFi)
Update 20161129 changelog:
- Fix ft5x06 firmware bug (timeout)
- Fix dirty cow kernel exploit (CVE-2016-5195)
- Add hwrotation override capability from U-Boot
- Updated TiWi firmware files to latest
- Updated TC358743 HDMI input driver
Update 20160811 changelog:
- Navigation bar buttons working on both Landscape and Portrait mode
- WiFi auto-connect at bootup
- Can now skip the "ANDROID_" text at bootup (
ro.init.skip.text
) - Updated TiWi wpa_supplicant lib
- Fixed CPUFreq permissions for Power HAL
Update 20160620 changelog:
- Adds basic OV564x autofocus support
The image is a 4GB SD card image that can be restored using zcat and dd under Linux.
~$ zcat m601*.img.gz | sudo dd of=/dev/sdX bs=1M
For Windows users, please use Alex Page's USB Image Tool.
What's new?
This section will only describe the changes brought either by the OS update itself or modified/added features.
OS update
Here is a non-exhaustive list of noticeable changes between Android 5.1.1 and 6.0.1:
- Security enhancements
- SELinux policies more strict
- Adoptable external storage
- App permissions now selectable
- MultiWindow mode
Google also provides a list of notable changes for developers:
For a more complete changelog between the two versions, we invite you to look at the very nice Opersys website which lists all the different commits between every version:
Same as before, TiWi-BLE offer the WiFi-P2P feature (also called WiFi Direct) but its firmware has proven not be stable. In case you want to disabled that feature to have a more stable connection, enter the following command line:
~/$ adb shell 'setprop persist.sys.wifidirect disabled'
Linux Kernel 3.14.52
Just like Android 5.1.1, this release is based on a 3.14 kernel. The only notable change since 5.1.1 is the use of the latest (and greatest) Vivante graphics libraries (v5.0.11 p8).
If you haven't used Android with a 3.14.x kernel yet, please make sure to update U-Boot.
U-Boot changes
As said in the previous section, using a Linux Kernel >= 3.14.x now requires to have a U-Boot version >= v2015.07 due to our new display detection mechanism.
More information on those U-Boot changes on a previous blog post:
- https://boundarydevices.com/u-boot-v2016-03/
- https://boundarydevices.com/compiling-latest-u-boot-for-i-mx6-2015-edition/
As of this writing, the latest version we support is the 2016.03. You can download binaries directly from this webpage:
Then, you need to set a uboot_defconfig
variable which is unique per platform:
nit6xlite1g
for Nit6xlite with 1GB of RAMnitrogen6_max
for Nitrogen6_MAXnitrogen6q
for Nitrogen6x/BD-SL-i.MX6nitrogen6sx
for Nit6_SoloX
Below is an example for Nitrogen6x.
U-Boot> setenv uboot_defconfig nitrogen6q
U-Boot> run upgradeu
Miscellaneous additions
- Support of data encryption
- ExFAT, NTFS and Ext4 are supported for all external media
- BUT requires SELinux to be disabled or permissive due to new more restrictive AOSP policies.
- Fastboot support improvement
- Requires to use latest U-Boot v2016.03
- Works with both sparse and regular images
- However, latest fastboot doesn't look for unknown USB product ID so you now need to specify it as follows:
~/$ adb shell reboot bootloader
~/$ fastboot -i 0x0525 flash boot $OUT/boot.img
finished. total time: 3.762s
~/$ fastboot -i 0x0525 flash recovery $OUT/recovery.img
finished. total time: 3.402s
~/$ fastboot -i 0x0525 flash system $OUT/system.img
finished. total time: 52.153s
~/$ fastboot -i 0x0525 continue
resuming boot...
- Camera HALv3 is now being used
- Note that our auto-focus support has been integrated in version 20160620 of the Nitrogen6x image.
- Bluetooth Low Energy
- Dual display demo
- Our previous dual display demo is still working on this Marshmallow release
- SuperUser removal
- Since the Koush app isn't supported in Marshmallow and that new SELinux policies prevent its use
Source code access
For the newcomers, please make sure to read our "Android Getting Started Guide" since it contains all the information you need to download, build and flash an Android image.
For those already familiar with our releases, here is a condensed version to get the source code:
~/$ mkdir myandroid
~/$ cd myandroid
~/myandroid$ repo init -u git://github.com/boundarydevices/android-manifest.git
-b boundary-imx-m6.0.1_1.0.0-ga
~/myandroid$ repo sync
~/myandroid$ source build/envsetup.sh
~/myandroid$ lunch
... choose nitrogen6x / nit6xlite / nitrogen6sx from the list of boards
~/myandroid$ make 2>&1 | tee build.out
As always, let us know your experiences (both good and bad) when you test out this image.