[ROM][6.0.1] Unlegacy Android 6.0.1/Lineage-13.0 For A2109 [2017-05-28]

I know this may sound silly but I saw a few articles saying the stock firmware got an upgrade to marshmallow. I didnt click the links but it seems like you could get a copy of it here:

Update/Upgrade to 6.0.1 Marshmallow for Lenovo Ideatab A2109 16gb | Custom ROM Android Operating System Upgrade/Update

I don't know if anyone has tried updating or installing the rom, and I'm not sure if having this rom could help in the building of CM13 but I thought I would mention it.

Well, if that turns out to be true, then yes, it would certainly make marshmallow. And in any case, having stock marshmallow would be just as great! So if anyone can confirm, I'd like to hear it. But my gut feeling says this is a hoax.

@PJBrs i find seriuos bug with sdcard.
If use sdcard like internal storage cwm recovery dosen't see it.

Yep, that's to be expected, cwm was built with kitkat sources, which didn't have the adoptable storage option yet. I may get around building twrp later, but first let's try to really fix the camera.

Incidentally, under buttons settings you can choose for the volume buttons to control media volume instead of ringer volume, much better that way :) I also hoped to have found a workaround for the spurious reboots on usb insertion, but no such luck yet. Also, on further reflection, all video recordings are now at 1280x720, if I'm correct. So, it's working, but not very well. Still trying to find out what's wrong.

I am having some issues with my SD card too. After installing the new rom, CM13 was telling me the SD card needed to be formatted but would error out trying to format it. I kept reseating it and still had the same issue. I jumped back to CM12 to see if it would work but it didn't (i think the failed format messed it up). I took out the SD card and used a tool on my computer to reformat it in FAT32 format. After reformatting my micro SD card it is not visible in CM13 or in CWM, and I no longer have an error message saying my SD card isn't working properly.

Well, that's weird. How did you partition your sdcard? Can you get a kernel log? Open a terminal, preferably over adb, get root (su), and do
Code:
cat /proc/kmsg
on your tablet. Then insert the sdcard and copy the log to this forum.
 
It might be issues with my own SD card slot. I had some issues with the card not staying in, so I removed the spring a while ago, but the card was working properly at that time. Since flashed the new rom, I started having issues. I have played around with the slot a few times since the issue to see if the issue was the card not being seated properly. I received a few different error messages from the log, so I tried seating the card a few different ways but this is one of the messages.

Well, that's weird. How did you partition your sdcard? Can you get a kernel log? Open a terminal, preferably over adb, get root (su), and do
Code:
cat /proc/kmsg
on your tablet. Then insert the sdcard and copy the log to this forum.

<4>[ 2216.550646] Battery Voltage: 4.082 V
<4>[ 2216.554701] Battery Current: 20 mA
<4>[ 2216.557104] Battery Soc: 95 %
<4>[ 2216.558998] Battery Temperature: 28.1 C
<3>[ 2217.208250] max77663_ldo3: unsupportable voltage range: 3300000-3100000uV
<3>[ 2217.208634] sdhci-tegra sdhci-tegra.0: could not set regulator OCR (-22)
<4>[ 2217.363904] mmc2: host does not support reading read-only switch. assuming write-enable.
<6>[ 2217.369360] mmc2: new ultra high speed DDR DDR50 SDXC card at address 0001
<6>[ 2217.375785] mmcblk mmc2:0001: Card claimed for testing.
<6>[ 2217.379539] mmcblk1: mmc2:0001 00000 59.6 GiB
<6>[ 2217.394944] mmcblk1: p1 p2
<4>[ 2217.556240] EXT4-fs (dm-0): warning: mounting unchecked fs, running e2fsck is recommended
<6>[ 2217.597309] EXT4-fs (dm-0): mounted filesystem without journal. Opts: nomblk_io_submit,errors=remount-ro
<7>[ 2217.597475] SELinux: initialized (dev dm-0, type ext4), uses xattr
<7>[ 2217.712569] cpu-tegra: force EDP limit 1150000 kHz
<7>[ 2225.908667] cpu-tegra: force EDP limit 1150000 kHz
<4>[ 2226.566456] Battery Voltage: 4.073 V
<4>[ 2226.567790] Battery Current: -253 mA
<4>[ 2226.569151] Battery Soc: 95 %
<4>[ 2226.570555] Battery Temperature: 28.1 C
 
Last edited:
I think I am just going to remove the SD card for now. It wasn't seating properly (besides it not formatting properly if held in place).
 
@PJBrs, thanks for the latest CM13 built.

I took my a2109 back from my kid and upgrade it from the CM11 to CM13 last night.
First impression is a "big" slow down compare to CM11. The UI is not as smooth as CM11, the big problem is the app launching or switching. The UI within the apps is ok, but it freeze when it loads a big datafile such as ebook.
I think one of the problem is running low on (or out of) memory. Is it possible to rebuild kernel with zRAM support? This may help the OOM problem.


I have the similar slowness experience with my nexus 7 2012. Nothing works beyond CM11 until I discovered ParrotMod. Now I have no slow down no my Nexus 7 even on CM14.1

Not sure you can check the ParrotMod source code and do something similar on the A2109..


Anyway, I will continue to test it :)

Thanks.

KK
 
@PJBrs, thanks for the latest CM13 built.

I took my a2109 back from my kid and upgrade it from the CM11 to CM13 last night.
First impression is a "big" slow down compare to CM11. The UI is not as smooth as CM11, the big problem is the app launching or switching. The UI within the apps is ok, but it freeze when it loads a big datafile such as ebook.
I think one of the problem is running low on (or out of) memory. Is it possible to rebuild kernel with zRAM support? This may help the OOM problem.


I have the similar slowness experience with my nexus 7 2012. Nothing works beyond CM11 until I discovered ParrotMod. Now I have no slow down no my Nexus 7 even on CM14.1

Not sure you can check the ParrotMod source code and do something similar on the A2109..


Anyway, I will continue to test it :)

Thanks.

KK

First of all - thanks for testing! Can you give me a pointer to ParrotMod sources? And what is zRAM?

Also, what gapps did you install? I installed pico and I currently find cm-13 a big improvement in terms of responsiveness. Did you clear out cache and dalvik cache before testing?

Also a general question - did anybody test hdmi out?
 
First of all - thanks for testing! Can you give me a pointer to ParrotMod sources? And what is zRAM?

Also, what gapps did you install? I installed pico and I currently find cm-13 a big improvement in terms of responsiveness. Did you clear out cache and dalvik cache before testing?

Also a general question - did anybody test hdmi out?

This is the XDA forum about the ParrotMod.
[UNIVERSAL] ParrotMod - SPEED UP the 2012 Nexus 7! FULL FLASH STORAGE SPEED FIX!

I am using the pico version of open gapps I have download last year for my phone. Not the latest.
open_gapps-arm-6.0-pico-20160817.

I formatted the "system" and "Cache", but kept the "data" partition when I updated it. Don't want to reinstall all the apps, but may try to do it later today. :)

For the ZRAM, it is a Linux Kernel feature. I never work on the Android Kernel source, but there is parameter on the standard Kernel source configuration file. I believe there should be one on the Android version. Also, most of the latest custom ROM has it enable already. I have it on my Nexus 7 and Moto-g CM13/14.


I have the HDMI cable and just tried it, but I don't see any option in the setup, and nothing happen on my TV. Not sure how to enable it on the current ROM.


KK
 
All in all, we *are* at feature parity with Lollipop, we do have added features from Marshmallow, and kernel 3.4 does seem faster, especially browsing internet with Chrome is rather stable now.

cm-13.0-20170120-UNOFFICIAL-kai.zip
.

I install this build over the first CM13 build @PJBrs had done and the upgrade process gone true easily. I had used TWRP.

Bluetooth audio is working with my headset even the microphone is working,

It is fast and flawless. I had used it for 2 hours without problem except the auto rotation problem. I had to reboot the tablet to made it work again.

Nice Work @PJBrs . :)
 

Okay, I checked it out. Sources are on github:
GitHub - parrotgeek1/ParrotMod_Grouper: fix slow flash storage on 2012 Nexus 7

However, quite a few fixes are binary hacks that I don't see the original patches for. A few tweaks can be added to init, perhaps, or to the power hal, but they do require quite a lot of studying on my part, teasing out what does what on our tablet. Also, I don't know what kernel version the parrot people are targeting. As it is, I'll keep your suggestions in mind, but I'd prefer to first work on bugs (hdmi out, camera, spurious reboot on usb connect, though I might have solved that one using a patch from the great grouper 3.4 kernel devs) and security (kernel, android, probably move to either lineageos or aosp) before I work on optimisation.

I am using the pico version of open gapps I have download last year for my phone.
I have the HDMI cable and just tried it, but I don't see any option in the setup, and nothing happen on my TV. Not sure how to enable it on the current ROM.

Ok. Well, there isn't a setup option anyway, it should basically just work. Since my hdmi-cable broke, it would be of great help if you could get a kernel log from inserting the hdmi cable. To do so, open a terminal on the tablet, preferably using adb. Then get root:
Code:
su

The command to get a kernel log is:
Code:
cat /proc/kmsg

When the log is running, plug in the hdmi cable and post any resulting kernel messages here. You might see some lines containing "avc:" . If that is the case, then background the kernel log by doing ctrl-z and then:
Code:
bg

Then disable selinux:

Code:
setenforce 0

Now make sure that you're still seeing kernel log messages from time to time (or you can just close the terminal, open a new one, get root, disable selinux, and cat /proc/kmsg), and plug in the hdmi cable again. If the problem is solely selinux related, then hdmi should now work, and should be able to make it work using your kernel log, posted here.
 
Well. Camera is really bugging me. The bug is this one:

Code:
E CameraSource: Failed to set video frame size to 640x480. The actual video size is 1280x720

Basically, this says that the actual video size cannot be adapted to the size requested. So even if you select 480p as resolution, and indeed the camera does try to set this resolution, but it isn't effected. You'll always get 1280x720 instead. And I haven't the faintest idea why... I tried kernel 3.4 on lollipop, but there the camera is just fine. So we're not dealing with a kernel issue here.
 
I HAAATEEEEE the camera :mad:

In better news - I confirmed that the touch screen is laggy and I found that the power HAL is doing it. I can revert that change. Also, I added a small change to the overlay and now the rotation button works like it should. We're getting quite close now :)
 
I've found some newish nvidia blobs, like I said, from the wexler tab. I have some interesting results. Most importantly - no screen flashing due to kernel 3.4 anymore (I worked around it in the test version, now we don't need the workaround anymore!). Compatibility seems quite good, perhaps problems with skype. Apart from crashing hard on disconnect, we can even cast display to chromecast (!).

NO luck with camera... I hope to put up a new build not too long from now.
 
STILL NO CAMERA SUCCESS, AAAAARGH!!!

But, this build is GOOD. I am very happy with it. It greatly simplifies the build too, needs way fewer patches. So, good stuff. Also, screen recording now works (without sound though), and screen casting as well (will crash hard on disconnect though). Only regression since Lollipop is that both cameras will only record at 1280x720. And I really don't understand why. And hdmi-out may not yet work, but I did a small change that should enable it.

For now, I think this is it. Please test! I'll probably update the first page to link to this build and announce Lollipop to be deprecated in a couple of days.

cm-13.0-20170214-UNOFFICIAL-kai.zip
MD5: c3297eb4c7f6d795d893566e788c33b8

The only thing that really needs fixing is the camera. But since it is relatively unimportant, and skype works anyway, well...
Hmm... and the tablet may reboot when in deep sleep mode and you plug in USB. I think I mostly fixed that, but probably not entirely...
 
Last edited:
I install the last build over the previous one and it install without problem.

I will test it and come back with my remarks on it.

Thank you @PJBrs
 
Back
Top