Related
CyanogenMod is a free, community built, aftermarket firmware distribution of Android 5.1.1 (LP), which is designed to increase performance and reliability over stock Android for your device.
Code:
#include <std_disclaimer.h>
/*
* Your warranty is now void.
*
* I am not responsible for bricked devices, dead SD cards,
* thermonuclear war, or you getting fired because the alarm app failed. Please
* do some research if you have any concerns about features included in this ROM
* before flashing it! YOU are choosing to make these modifications, and if
* you point the finger at me for messing up your device, I will laugh at you.
*
*/
BEFORE INSTALLING THIS ROM, MAKE SURE YOUR DEVICE MODEL IS THE SAME AS TITLE
IF YOU ASK ANY QUESTIONS LIKE "IS THIS FOR MODEL BLABLABLA" THEY WILL BE ALL IGNORGED
CyanogenMod is based on the Android Open Source Project with extra contributions from many people within the Android community. It can be used without any need to have any Google application installed. Linked below is a package that has come from another Android project that restore the Google parts. CyanogenMod does still include various hardware-specific code, which is also slowly being open-sourced anyway.
We'll not support users and answer questions from users which:
are running a custom kernel
have flashed mods
modified system files
didn't follow our intructions word by word
are unfriendly
And most important: DON'T READ THE OP
What's working:
Wifi (connection, tethering, etc)
Bluetooth
Camera, video codecs
RIL (Calls, SMS, mobile data)
Storage (both internal and external)
MTP storage (both internal and external)
Offline charging
zRAM (compressed-RAM swap)
GAPPS
Tethering (USB, Wifi, Bluetooth)
GPS
Sound recording
Torch (flashlight)
BUGS/Not working :
There're lots of bugs, but main are
(SM-G313ML) Mobile data doesn't work
Switching to other fonts will get bootloops after restart. In this case, if you use TWRP recovery, go to File Manager >> delete "themes" from /data/system would help you escape this without factory reset
Distorted Bluetooth sound on calls
First time installing CyanogenMod 12.1 to your Galaxy V, or coming from another ROM:
Install TWRP Recovery
Reboot into Recovery using 3-button-combo (Vol-up+Home+Power)
Do a Nandroid backup! (Optional and only if you weren't running TouchWiz before)
WIPE (wipe data/factory reset + wipe cache partition + format /system partition)*
Install the ROM from sdcard using TWRP Recovery
Optionally install the Google Apps ( get it here: https://opengapps.org ) (pico GAPPS recommended)
INSTALLATION VIDEO
DEAR KANGERS
Click to expand...
Click to collapse
If you're going to reuse our work, be kind and give proper credits
This is the only payment we're really demanding and we deserve it to be mentioned because of the countless hours we've put into this project.
Open-source doesn't mean "out of respect"
DOWNLOADS:
Click to expand...
Click to collapse
In Downloads section
Mirror: Beta 3 Update 1
XDA:DevDB Information
CyanogenMod 12.1, ROM for the Samsung Galaxy Ace 4
Contributors
doesntexits, ngoquang2708
Source Code: https://github.com/ngoquang2708/android_device_samsung_vivalto3gvn/tree/cm-12.1
ROM OS Version: 5.1.x Lollipop
ROM Kernel: Linux 3.10.x
ROM Firmware Required: Stock 4.4.x
Based On: CyanogenMod
Version Information
Status: Beta
Current Beta Version: 3 Update 1
Beta Release Date: 2016-05-28
Created 2016-02-16
Last Updated 2016-06-12
CHANGELOG:
- ALPHA-1
Initial release
- ALPHA-2
Fixed ION driver, now camera, video codecs, etc are working
Fixed audio
Dual-SIM is dead for now
Reserved zRAM size to 128MB
- ALPHA-3
Fully fixed RIL (thanks to @ngoquang2708), will switch to beta on next builds
Fully fixed Bluetooth
- BETA-1
Faster app installation, but slower app startup, a trade-off!
Improve media playback: some media app can play flawlessly, but not YouTube, sorry
zRAM size now can be set in build.prop
thanks to @ngoquang2708
- BETA-2
Fixed audio stuffs
Fixed video decoding stuffs (included YouTube)
Fixed video recording
Don't remember list start, blah blah...
- BETA-3
Updated sources, Android security patch version 2016-04-01
Switched memory allocator to dlmalloc(), which increase performance a lot
Odexed apps now will be in /system partition, not in /data/dalvik-cache anymore (significantly save internal storage, as this thingy eats up to 300MB of our internal storage)
Powered by OC Kernel (unexpectedly compiled )
- BETA-3 update 1: Fixed random reboots, switched to stock kernel
F.A.Q
Q: ROM startup too slow?
A: This device is just a single-core phone, so the first startup is super-duper slow, and some lags are expected during usage
Q: ETAs?
A: See here: Link
Q: Anymore models supported?
A: SM-G313ML, SM-G313H
Q: Is init.d supported on this ROM?
A: Every CyanogenMod ROMs support init.d, so be free at scriptings
Q: Can you include ABCXYZ feature / Samsung Apps here?
A: NO!
Q: Can i use your ROM as a base for portings?
A: Yes, you could, but give proper credits
Q: Status 7 when installing the ROM?
A: Use TWRP recovery to install the ROM, as CWM is not supported yet
Q: Server error in Google Play Store?
A: Install latest Google Play Services manually first (might take long time, due to Lollipop's nature), then you can install apps from GG Play as usual
Finally, I've waiting for a long time for this cm 12.:good:
Cool nice to see more spredtrum device get cm
great work
btw is audio working ?
Dreamstar said:
Cool nice to see more spredtrum device get cm
great work
btw is audio working ?
Click to expand...
Click to collapse
Yes, it's working
Remove audio CFLAGS from BoardConfig.mk and use audio_policy.default, it still working. IDK why
@corphish
A little bit weird here. The coreprimveve3g's binder doesn't have MemoryHeapIon. Just do some "grep", you'll see it.
doesntexits said:
@corphish
A little bit weird here. The coreprimveve3g's binder doesn't have MemoryHeapIon. Just do some "grep", you'll see it.
Click to expand...
Click to collapse
Well grep through Camera or HWC HAL and see whether they are dependent on those symbols or not:/
Anyways, I had a confusion about HWRendering and HWC. I still have tho.
SWRendering means running the system on CPU only, on HWRendering, its done by GPU (and CPU probably). HWC plays a part in it, if HWC is broken, I don't think HWRendering will necessarily be broken. So you were right earlier .
So if on egl.cfg, you are on mali renderer and no kernel.qemu flag set, and everything is fine, then HWRendering works, you would probably mention that HWC is not working. Anyway if that's the case, have you applied this icu4c patch?
Because we have applied it and boom, HWRendering is broken badly. We are on SWRendering now, and its so sluggish.
corphish said:
Well grep through Camera or HWC HAL and see whether they are dependent on those symbols or not:/
Anyways, I had a confusion about HWRendering and HWC. I still have tho.
SWRendering means running the system on CPU only, on HWRendering, its done by GPU (and CPU probably). HWC plays a part in it, if HWC is broken, I don't think HWRendering will necessarily be broken. So you were right earlier .
So if on egl.cfg, you are on mali renderer and no kernel.qemu flag set, and everything is fine, then HWRendering works, you would probably mention that HWC is not working. Anyway if that's the case, have you applied this icu4c patch?
Because we have applied it and boom, HWRendering is broken badly. We are on SWRendering now, and its so sluggish.
Click to expand...
Click to collapse
I haven't patched anything. Just used the source and it still works. Our HW rendering seems working fine, but it's very sluggish if in low RAM mode (damn laggy, lockscreen goes black). IDK why that CPVE works with HWC? Maybe some more "grep"?
Btw, our camera already gives missing symbol in logcat. It disappeared from Trebuchet and if open it from lockscreen, it FCs, so everything related to ION driver are broken for now. IDK why codecs needs ION (failed allocating)
Another question: How to make a link in makefile? Prebuilt webview doesn't work if missing a link to /system/app/webview/lib/arm
Edit: I got wrong question The coreprimeve3g HAL requires those symbols:
Code:
[email protected]:~/Downloads/hw$ strings hwcomposer.sc8830.so | grep Ion
_ZN7android13MemoryHeapIon21Get_phy_addr_from_ionEiPmPj
Camera HAL:
Code:
_ZN7android13MemoryHeapIon16IOMMU_is_enabledEi
_ZN7android13MemoryHeapIon9free_iovaEimj
_ZN7android2spINS_13MemoryHeapIonEED2Ev
_ZN7android2spINS_13MemoryHeapIonEED1Ev
_ZN7android2spINS_13MemoryHeapIonEEaSEPS1_
_ZN7android13MemoryHeapIonC1EPKcjjm
_ZNK7android13MemoryHeapIon9getHeapIDEv
_ZN7android13MemoryHeapIon21get_phy_addr_from_ionEPmPj
_ZN7android13MemoryHeapIon8get_iovaEiPmPj
_ZNK7android13MemoryHeapIon7getBaseEv
_ZN7android13MemoryHeapIon9Free_iovaEiimj
_ZN7android13MemoryHeapIon21Get_phy_addr_from_ionEiPmPj
_ZN7android13MemoryHeapIon8Get_iovaEiiPmPj
_ZN7android13MemoryHeapIon16flush_ion_bufferEPvS1_j
MemoryHeapIon::Get_mm_ion: %d addr 0x%x size 0x%x
MemoryHeapIon::Get_mm_iova: %d
allocCameraMem: error pHeapIon is null.
allocCameraMem: error get pHeapIon addr - method %d result 0x%x
MemoryHeapIon::Get_mm_ion: %d addr 0x%lx size 0x%x
But... with libbinder:
Code:
[email protected]:~/Downloads$ strings libbinder.so | grep Ion
[email protected]:~/Downloads$
Nothing shown. IDK why. Maybe Sammy has applied ION driver inside those HAL blobs :/
doesntexits said:
I haven't patched anything. Just used the source and it still works. Our HW rendering seems working fine, but it's very sluggish if in low RAM mode (damn laggy, lockscreen goes black). IDK why that CPVE works with HWC? Maybe some more "grep"?
Btw, our camera already gives missing symbol in logcat. It disappeared from Trebuchet and if open it from lockscreen, it FCs, so everything related to ION driver are broken for now. IDK why codecs needs ION (failed allocating)
Another question: How to make a link in makefile? Prebuilt webview doesn't work if missing a link to /system/app/webview/lib/arm
Edit: I got wrong question The coreprimeve3g HAL requires those symbols:
Code:
[email protected]:~/Downloads/hw$ strings hwcomposer.sc8830.so | grep Ion
_ZN7android13MemoryHeapIon21Get_phy_addr_from_ionEiPmPj
But... with libbinder:
Code:
[email protected]:~/Downloads$ strings libbinder.so | grep Ion
[email protected]:~/Downloads$
Nothing shown. IDK why
Click to expand...
Click to collapse
Alright..recursive grep through lib folder
Code:
cd system/lib
grep -R Ion
You mean symbolic link?
Code:
$(shell ln [-OPTIONS] <source> <target>)
corphish said:
Alright..recursive grep through lib folder
Code:
cd system/lib
grep -R Ion
Click to expand...
Click to collapse
Haha, we got our result. MemoryHeapIon is being used as seperate lib.
Code:
[email protected]:~/Downloads/lib$ grep -R Ion
Binary file libstagefright_sprd_h264enc.so matches
Binary file libstagefright_sprd_vpxdec.so matches
Binary file libstagefright_sprd_h264dec.so matches
Binary file hw/camera.sc8830.so matches
Binary file hw/hwcomposer.sc8830.so matches
Binary file libstagefright_sprd_mpeg4enc.so matches
Binary file libomxvpu.so matches
Binary file libstagefrighthw.so matches
Binary file libvpu.so matches
Binary file libstagefright_sprd_mpeg4dec.so matches
Binary file libmemoryheapion.so matches
[email protected]:~/Downloads/lib$
I thought it must be in binder, but we've all wrong
doesntexits said:
Haha, we got our result. MemoryHeapIon is being used as seperate lib.
Code:
[email protected]:~/Downloads/lib$ grep -R Ion
Binary file libstagefright_sprd_h264enc.so matches
Binary file libstagefright_sprd_vpxdec.so matches
Binary file libstagefright_sprd_h264dec.so matches
Binary file hw/camera.sc8830.so matches
Binary file hw/hwcomposer.sc8830.so matches
Binary file libstagefright_sprd_mpeg4enc.so matches
Binary file libomxvpu.so matches
Binary file libstagefrighthw.so matches
Binary file libvpu.so matches
Binary file libstagefright_sprd_mpeg4dec.so matches
Binary file libmemoryheapion.so matches
[email protected]:~/Downloads/lib$
I thought it must be in binder, but we've all wrong
Click to expand...
Click to collapse
Get me that blob plox..and see my earlier post..I did not see your query abt webview
Edit @ doesntexits
Add it and see logs, HWC and Camera HAL should load.
You will probably need a factory reset to make Camera App visible, and the torch toggle too.
Because during first boot, if Camera HAL fails to load, no camera app in system will be viewed even tho its fixed later.
corphish said:
Get me that blob plox..and see my earlier post..I did not see your query abt webview
Click to expand...
Click to collapse
Change it to .so
corphish said:
Edit @ doesntexits
Add it and see logs, HWC and Camera HAL should load.
You will probably need a factory reset to make Camera App visible, and the torch toggle too.
Because during first boot, if Camera HAL fails to load, no camera app in system will be viewed even tho its fixed later.
Click to expand...
Click to collapse
But...
Code:
E/HAL ( 178): load: module=/system/lib/hw/camera.scx15.so
E/HAL ( 178): dlopen failed: cannot locate symbol "_ZN7android13MemoryHeapIonC1EPKcjjm" referenced by "camera.scx15.so"...
E/CameraService( 178): Could not load camera HAL module
and...
Code:
E/HAL ( 124): load: module=/system/lib/hw/hwcomposer.scx15.so
E/HAL ( 124): dlopen failed: cannot locate symbol "_ZN7android13MemoryHeapIon21Get_phy_addr_from_ionEiPiS1_" referenced by "hwcomposer.scx15.so"...
E/SurfaceFlinger( 124): hwcomposer module not found
Edit: I "grep"ed again, and those symbols from our libs is different than libmemoryheapion.so. Looks like we've to re-build it for ourselves
doesntexits said:
But...
Code:
E/HAL ( 178): load: module=/system/lib/hw/camera.scx15.so
E/HAL ( 178): dlopen failed: cannot locate symbol "_ZN7android13MemoryHeapIonC1EPKcjjm" referenced by "camera.scx15.so"...
E/CameraService( 178): Could not load camera HAL module
and...
Code:
E/HAL ( 124): load: module=/system/lib/hw/hwcomposer.scx15.so
E/HAL ( 124): dlopen failed: cannot locate symbol "_ZN7android13MemoryHeapIon21Get_phy_addr_from_ionEiPiS1_" referenced by "hwcomposer.scx15.so"...
E/SurfaceFlinger( 124): hwcomposer module not found
Edit: I "grep"ed again, and those symbols from our libs is different than libmemoryheapion.so. Looks like we've to re-build it for ourselves
Click to expand...
Click to collapse
Alright.
I really liked what Sammy did here, ship memory heap ion as a separate unit. In this way they dont have to adapt binder.
I will do the same too. I will however build on cm11 tree as I dont have cm12.1 tree. Probably you could try and let me know if it builds or not.
Is for smg316m model?
noelpalacios said:
is for smg316m model?
Click to expand...
Click to collapse
read carefully the op please
before installing this rom, make sure your device model is the same as title
Click to expand...
Click to collapse
doesntexits Is most likely the fastest moving developer I have seen. CM11 just stable and a almost stable CM12.
The moment Mobile Data is resolved Ill flash for further testing, unfortunately cant flash without mobile data else work and wife looses contact with me.
tjvvuuren said:
doesntexits Is most likely the fastest moving developer I have seen. CM11 just stable and a almost stable CM12.
The moment Mobile Data is resolved Ill flash for further testing, unfortunately cant flash without mobile data else work and wife looses contact with me.
Click to expand...
Click to collapse
Agree with you.
tjvvuuren said:
doesntexits Is most likely the fastest moving developer I have seen. CM11 just stable and a almost stable CM12.
The moment Mobile Data is resolved Ill flash for further testing, unfortunately cant flash without mobile data else work and wife looses contact with me.
Click to expand...
Click to collapse
Actually, CM12.1 just missing ION driver, which makes camera, codecs and some thingies work. We just need that, else mobile data could be fixed later.
WiFi direct has a shell tool for doing configuration changes called "p2p_cli". I can't find a newer version compiled to run on Android 5.0 with the new PIE security requirement.
It seems to be part of the Android platform source code, here: https://android.googlesource.com/platform/external/wpa_supplicant_8/+/master/src/p2p
Reference on PIE compile:
http://stackoverflow.com/questions/...id-l-error-only-position-independent-executab
Some ROM developer can maybe compile it for me and provide a download of the binary? Thank you.
Hi, I'am doing a piece of coursework and I'm working with a Proof Of Concept that utilises the ashmem driver and must be patched for it to work, so I need to compile a new kernel with this patch.
Patching these files in specific, can do this successfully on "android-msm-marlin-3.18-oreo".
(/drivers/staging/android/ashmem.c)
(/include/uapi/linux/ashmem.h)
The main problem comes when I come to compile the kernels, I've yet to have a single successful compile using the Google Git kernel(Both GCC and Clang) as well as compiling the source code of ElementalX ,PureZ and NiKernel.
I've been following this guide using GCC, I've also tried his Clang guide from github: By nathanchance
I seem to get an error in regards to"find: 'arch/arm64/boot/dts': No such file or directory" even though that directory exists. I've also found it hard to debug with the GCC deprecation coming up, is there a flag to remove this?
I'd ideally like to do this myself but if anyone can compile this for me with the patch included that would also be greatly appreciated. The patch can be found: Here
Any assistance would be greatly appreciated
This is LineageOS 17.1, which is based on Android 10, for the WiFi-only variant of the Samsung Galaxy Tab A 10.1" (2016), codenamed gtaxlwifi. LineageOS doesn't need much of an introduction - It's a well-known custom firmware/Android distribution.
I started these builds because the LineageOS builds from @Valera1978 had 2 particular significant bugs in them that were always being mentioned in posts in that thread: display backlight brightness not changeable from full brightness and the touchscreen appearing to not respond after putting the tablet to sleep. Those bugs had existed for quite a long time. @followmsi has some changes in his 17.1 device tree that fixed those 2 bugs.
These builds really became a continuation of Valera's builds after he unfortunately discontinued work on this device due to an (understandable) lack of interest, with many improvements and additional features.
I've now discontinued these 17.1 builds.
I've long ago moved onto LineageOS 18.1 and 19.1.
Very important note for those upgrading from the releases from 20210523 and 20210413 in this post: https://forum.xda-developers.com/t/lineageos-17-1-for-sm-t580-gtaxlwifi.4059571/post-85106105
Note: I've never had any builds for the LTE variant. However, builds for the WiFi-only variant boot and work on the LTE variant, only without mobile networking (of course), GPS and vibration, so since I've allowed installation on the LTE variant in the last several builds, you can try to use my builds on it if you can go without any of that functionality.
Downloads:
Latest build from 20211116 (with security patch level 20211105):
https://drive.google.com/file/d/14ZCYYcT5b6E9zWiFNgwUP3Kxlvf-dyVn
Folder for these builds (which includes text files with MD5 and SHA256 checksums for the final build, and another folder within it containing some previous builds): https://drive.google.com/open?id=1UiUlSbfj3agDvt-4f_YLIS0Xyuz5RtFC
Changelog:
Final release for 20211116:
Latest updates from LineageOS, including the 20211105 Android security updates.
The WiFi driver has been switched from being a kernel module to being built into the kernel. This may improve reliability for enabling and disabling WiFi and the WiFi hotspot very slightly.
The rewrite of the sepolicy containing all of the SELinux rules that I did for 18.1 has been ported over to 17.1, and so it's now of much better quality.
The audio outputted from the audio jack while playing media will now be noticeably louder, as the headset "DAC1 playback volume" for media has been increased to the maximum of 175 from 162.
An issue where there was additional extremely quiet high-pitched noise from the right speaker has been fixed.
The ZRAM size has been increased to 768MiB.
The BSP sources have been redone to closely match what has been done with the new exynos7880-specific part of Lineage's BSP sources, and with that, there are now more exynos7870-specific changes to the open source gralloc that is in use.
Some miscellaneous cleanups have been done.
The qcom_cfg.ini configuration file for WiFi has been imported from Samsung's A720SKSU5CTL2 firmware - A change within it appears to have made WiFi more reliable.
The system image size has been increased from 3072000000 bytes to 3145728000 bytes, which is the size of the system partition on Korean and Chinese variant T580s and T585s, and the smallest system partition size out of all T580s and T585s.
Some proprietary blobs have been updated as follows:
WiFi and Bluetooth firmwares from Samsung's T390XXS9CUG1 firmware
libexynoscamera3.so library from Samsung's P580ZSS1CTI1 stock firmware - This improves the situation with the issues with stretched/squashed camera previews for images and stretching/squashing in videos at some resolutions
MFC (Multi-Format Codec) firmware from Samsung's A305FDDU6CUI3 firmware
sensors.universal7870.so library from Samsung's P580ZSS1CTI1 stock firmware
As the oldest proprietary blobs are now as in Samsung's P580ZSS1CTI1 stock firmware (with a few exceptions), the vendor security patch level has been increased to 2020-09-01, which is the security patch level that firmware has.
The 32-bit wcnss_filter binary, used for Bluetooth, that was used previously has been replaced with the 64-bit wcnss_filter binary from Samsung's A520FZTU4BRB1 firmware.
Configuration files for media codecs and profiles have been updated from Samsung's T580XXS5CTK1 stock firmware.
There are many (final) updates from the (unfortunately now deprecated so no longer updated) 3.18 Android common kernel, many updates from Linux 4.4, and some updates from a few of Samsung's newer kernel sources to the kernel, and also some other various changes.
A few changes have been imported to the MMC block device driver in the kernel from Samsung's M105GDXS6CUD4 kernel sources that specifically fix extremely rare kernel panics that occurred when there was an error with a MMC device (mainly with SD cards).
Some unnecessary drivers have been disabled in the kernel.
The sdfat driver in the kernel, which is used for exFAT filesystem support, has been updated to version 2.4.5.
The fix for an issue where the duration of videos that are taken is lengthened by the time spent in deep sleep/suspended that was previously used has been replaced with a better fix in the Exynos fimc-is2 driver in the kernel.
Previous releases:
Release for 20210530:
Latest updates from LineageOS.
File-based encryption has been disabled after I left it enabled by mistake after testing FBE before moving onto LineageOS 18.1.
Release for 20210523:
Latest updates from LineageOS, including the 20210505 Android security updates.
Some changes have been imported to libbt-vendor from https://github.com/LineageOS/android_hardware_qcom_bt on branch lineage-18.1-caf (same as branch lineage-17.1-caf).
The rampatch_tlv_tf_1.1.tlv firmware for Bluetooth has been updated from Samsung's stock T585XXS6CTJ7 firmware.
There are some updates from the 3.18 Android common kernel and Linux 4.4 to the kernel.
A workaround that was used to get USB tethering and Bluetooth tethering to work is no longer used, and has been replaced with a proper fix (enabling CONFIG_NETFILTER_XT_TARGET_CT in the kernel).
Release for 20210413:
Latest updates from LineageOS, including the 20210405 Android security updates.
There are some updates from the 3.18 Android common kernel and Linux 4.4 to the kernel.
Release for 20210313:
Latest updates from LineageOS, including the 20210305 Android security updates.
There are some updates from the 3.18 Android common kernel and Linux 4.4 to the kernel, many changes to the rcu, locking and btrfs code from 4.4, and a few changes from Samsung's M105GDXU6CUA1 kernel to the kernel.
The exynos part of the BSP has a few changes from Lineage's 18.1 branch for HWC and memtrack.
Release for 20210207:
Latest updates from LineageOS, including the 20210205 Android security updates.
SELinux denials that caused the torch feature to not work have been addressed.
The issue where videos that are recorded have a duration that is lengthened by the time spent in deep sleep has been worked around - It looks like Samsung did something wrong in the camera HALs for Exynos 7870 devices.
There are some more updates from the 3.18 Android common kernel and Linux 4.4 to the kernel, and a few changes from Samsung's M105GDXU6CTL3 kernel.
Release for 20210116:
Latest updates from LineageOS, including the 20210105 Android security updates.
The custom camera provider HAL has been removed, and the camera provider HAL has been binderized - this fixes camera glitches when there is motion.
Quota support has been enabled on userdata, so that storage usage statistics can be gotten more quickly.
The Widevine DRM blobs from the Pixel 3 XL's last Android 10 firmware are now used.
The MFC (Multi Format Codec) firmware has been updated from Samsung's M105FDDU3CTK3 firmware, and the camera.vendor.universal7870.so library has been updated from Samsung's latest stock firmware (version T580XXS5CTK1).
There are some more updates from Linux v4.4 and the 3.18 Android common kernel to the kernel.
Release for 20201223:
Latest updates from LineageOS.
Address hal_graphics_composer_default SELinux denials on video_device - fixes issues with video playback with SELinux set to enforcing. (Thanks to @Kostareka for providing logs with the SELinux denials)
Release for 20201221:
Latest updates from LineageOS, including the 20201205 Android security updates.
I've prepared new BSP sources, based on Lineage's SLSI BSP sources, and the BSP libraries are now built from those sources. (Thanks to @Valera1978 for providing his old BSP sources! Without them, this wouldn't have been possible.)
Samsung's proprietary audio libraries, adapted by @Valera1978, are now used, to workaround an issue where audio will be outputted to both the 3.5mm audio jack and the speakers quietly when something is connected to the audio jack.
The build fingerprint has been changed to an older Android 8.1 fingerprint for the Google Pixel C. (For information on why we can't use the fingerprint from the stock firmware, see: https://github.com/TALUAtGitHub/android_device_samsung_gtaxlwifi/issues/1 )
Installation on the LTE variant (SM-T585, codenamed gtaxllte) is now allowed - apparently, builds for the WiFi-only variant boot and work on the LTE variant, only with no mobile networking (of course) and GPS.
There are a few minor cleanups.
Version 2 of the AOSP bluetooth audio HAL has been enabled.
FIFO UI scheduling has been enabled.
The camera libraries have been updated from Samsung's latest stock firmware, version T580XXS5CTK1.
There are a few other miscellaneous improvements.
There are some updates to the kernel from the Android 3.18 common kernel and Linux v4.4, and there are updates to some of the drivers from Samsung's M105GDXU5CTI3 kernel.
Release for 20201121:
Latest updates from LineageOS, including the 20201105 Android security updates.
The sepolicy has been improved - many unnecessary SELinux rules have been removed and a few SELinux denials have been addressed.
The init.power.rc script is now actually used to set some parameters for the interactive CPU governor to make it less aggressive.
The GNSS and sensors HAL are now compiled from source in the device tree with necessary modifications. (Thanks to @followmsi for some very useful information regarding this!)
As many vendor blobs as possible have been updated from Samsung's T580XXS5CTD1 and A520FXXUGCTI9 stock firmwares, the gpsd shim has been removed as it's no longer necessary after updating gpsd from T580XXS5CTD1 and a few unused vendor blobs have also been removed.
cbd/cpboot-daemon has been removed, because it, along with the modem_v1 driver in the kernel, no longer works with the latest bootloader and spams the kernel log with error messages, I have very little idea of what it does for the WiFi-only variant and it's unnecessary.
Made a few other miscellaneous improvements.
Many more updates to the kernel from Linux v4.4 and the 3.18 Android common kernel, some miscellaneous improvements and many changes to the f2fs filesystem driver from newer Android common kernels and mainline Linux.
The kernel is now compiled using the clang compiler after having applied the many necessary changes to it to do so.
Release for 20201022:
Latest updates from LineageOS, including the 20201005 Android security updates.
Enable config_setColorTransformAccelerated - LiveDisplay colour calibration and reading mode is now available. (Thanks to @followmsi for finding this fix.)
Add FlipFlap for flip covers. (Note that FlipFlap only works if the timeouts in Settings -> Connected devices -> Connection preferences -> Smart cover are set to 'immediately')
Fix a typo in the power profile.
More updates to the kernel from Linux v4.4 and the 3.18 Android common kernel.
Apply/backport some changes to zram and the lz4 compression algorithm from mainline Linux for faster compression and decompression, and add a backport of the zstd compression algorithm from the 4.9 Android common kernel which can be used as the compression algorithm for zram (lz4 is still the default compression algorithm).
Release for 20200915:
Latest updates from LineageOS, including the 20200905 Android security updates.
Increase microphone gains.
Many more updates from Linux v4.4 and android-3.18 and a few improvements to the kernel.
Release for 20200821:
Latest updates from LineageOS.
A few more updates from Linux v4.4 and android-3.18 and improvements to the kernel.
Revert 2 changes to the kernel related to hotplugging - should fix an issue where the device doesn't wake up after a while of deep sleeping in certain cases, and a hard reset is needed.
Release for 20200814:
Latest updates from LineageOS, including the 20200805 Android security updates.
Update the Mali graphics blob to r28p0 from r22p0.
Make a few changes for GPS that fix Assisted GPS, and switch to different XTRA servers with HTTPS.
Fix OpenCL.
Symlink libGLES_mali.so to libOpenCL.so, libOpenCL.so.1 and libOpenCL.so.1.1 instead of copying - saves a significant amount of space in /system and makes the installation zip slightly smaller.
Change media volume control to be in 25 steps rather than 15 steps.
More updates from Linux v4.4 and android-3.18 to the kernel and some improvements.
Release for 20200711:
Latest updates from LineageOS.
Android security updates from 20200705, manually applied to skip the wait for them to be merged. ('repopick -t android-10.0.0_r40')
Disable window rounded corner animations.
Reduce ZRAM size to 512MB.
Enable debug.sf.disable_backpressure.
A few more updates to the kernel from Linux v4.4 and android-3.18.
Port over/import zsmalloc, zram, zswap, zbud and zpool from Linux v4.4.
Fix the issues with hanging/freezing that were present in the previous release.
Release for 20200703:
Latest updates from LineageOS.
Enable support for using USB for MIDI.
Fix/workaround issues with USB tethering.
Remove sswap and use ZRAM.
Latest update from @Valera1978 - "update audio_policy_configuration.xml from SM-A600FN q stock"
Many more updates to the kernel from v4.4, android-3.18 and a few from v3.16.
Disable the Exynos hotplug governor again. (in the kernel)
Release for 20200608:
Latest updates from LineageOS including the 20200605 Android security updates.
Use userspace lmkd.
Enable Always On Display. (Thanks to @followmsi)
Address a few more SELinux denials.
power_profile: change names as per pie naming changes.
Switch to [email protected]g. (Thanks to @followmsi)
Fix freeform window moving/resizing doesn't work (In my new fork of LineageOS' android_frameworks_base repository).
Add back support for Miracast using the changes from https://review.lineageos.org/q/topic:%22ten-aosp-wfd%22 (In my new fork of LineageOS' android_frameworks_av repository).
More updates to the kernel, including many updates from Linux v4.4 and v3.16 and general updates. There are also improvements to downstream drivers.
Release for 20200512:
Latest updates from LineageOS including the 20200505 Android security updates.
Address more SELinux denials.
Remove the ro.enable_boot_charger_mode property and revert "gtaxl: workaround for offline charging".
Remove some useless services for non-existent binaries in init files.
Hide sRGB toggle in developer options.
More updates to the kernel, including many updates from Linux 4.4 and to the kernel-based wireguard implementation.
Release for 20200411:
Latest updates from LineageOS including the 20200405 Android security updates.
Update the cpu.speeds array in the power profile for 1.69GHz, 449MHz and 343MHz frequencies.
Make the power profile aware of the big.LITTLE cluster.
Address more SELinux denials and remove duplicate rules.
Use an up-to-date Samsung hardware repository based on LineageOS' repository, and make changes to the device tree for it. ((Thanks to @followmsi for changing the sepolicy to accommodate for modem/macloader having been moved to /vendor and mentioning that the Exynos hidl power HAL has to be used after the old power HAL was removed)
Enable secure ADB and set persist.sys.usb.config to none.
Use pool.ntp.org for the NTP servers.
ramdisk: cleanup the init files and fstab for readability.
ramdisk: init.samsungexynos7870.rc: only start gpsd after booting - fixes GPS when encrypted.
More updates to the kernel, including many updates from Linux 4.4, general updates (such as updates to the wireguard kernel module) and fixes.
Use sdfat for exFAT support.
Add toggle for disabling newly added USB devices.
Release for 20200309:
Latest updates including 20200305 security patches
Upgrade android.hardware.keymaster to 4.0.
lineage-gtaxlwifi_defconfig: disable CRYPTO_FIPS to get encryption partially working.
sdfat: update to version 2.3.0.
Update the BFQ IO scheduler to v8r12 using a port.
Release for 20200303:
wireless: add back Samsung's 'temporary' workaround due to qcacld-2.0 page allocation errors. Looks like this is actually necessary. Works around issues with WiFi not being possible to be enabled after some time again due to page allocation failures that still exist.
Revert duplicate "signal/ptrace: Don't leak unitialized kernel memory with PTRACE_PEEK_SIGINFO". We already had this commit as in Linux v3.18, the content of this reverted commit are useless.
Release for 20200301:
Fix a few SELinux denials. (including app_zygote denials, sepolicy in post 5 no longer needed for this build at all and also shouldn't be used anymore as more denials beyond just the app_zygote denials have been fixed)
Release for 20200229:
Initial release.
Known issues and workarounds (if any):
Issue 1: adoptable storage is reported to not work correctly.
Somewhat of a workaround to issue 1: format and use your micro SD card with the exFAT filesystem.
Issue 2: Camera previews for images to be taken at resolutions with aspect ratios other than 16:9 using the rear camera are squashed from 16:9 (while final saved images at any resolution are unaffected by any squashing), and videos taken at some resolutions are affected by similar issues with squashing in previews, and, in a smaller set of resolutions, also in final saved video files. (Note that these issues don't affect the front-facing camera)
Somewhat of a workaround to issue 2: Use resolutions at which there are no issues with squashing from 16:9.
Issue 3: the on-screen navigation bar feature that can be enabled with the option at Settings -> System -> Buttons -> "Enable on-screen nav bar" doesn't work properly.
To report issues, get a log from logcat and dmesg. If you are unsure of how to get both, there is good documentation out there for how to do so.
Sources:
A manifest containing all of the necessary repositories to make a build is in this repository on branch lineage-17.1: https://github.com/TALUAtGitHub/gtaxlwifi-manifests
Thanks to:
@Valera1978 - for all of the previous work for these devices, and for providing his old BSP sources without which the previously used open BSP sources wouldn't have been possible.
@followmsi - for fixes to various issues and other improvements, for useful information, and for working with me on much of this stuff.
LineageOS - for the Android distribution itself.
...and everyone else who's worked on anything that is in use.
No build for sm-t585?
Echo_2000 said:
No build for sm-t585?
Click to expand...
Click to collapse
Unfortunately not, as I mentioned in the original post.
Sorry.
Edit on 2020/12/22: for anyone who is reading this post and has missed my new note in the original post, installation is now allowed on the LTE variant in my latest build, so you can try my build on it.
TALUAtXDA said:
Unfortunately not. As I mentioned in the original post:
Sorry.
Click to expand...
Click to collapse
Too bad, bad no problem.
I installed this, mostly seemed to work OK, but although I could install Chrome from Play Store it would simply disappear (no error) every time I opened it. Tried Chrome Beta instead and same issue.
I don't know if Gapps related. I used Bit gapps for what it's worth.
Gone back to old build.
Thanks anyway.
Glenn2 said:
I installed this, mostly seemed to work OK, but although I could install Chrome from Play Store it would simply disappear (no error) every time I opened it. Tried Chrome Beta instead and same issue.
I don't know if Gapps related. I used Bit gapps for what it's worth.
Gone back to old build.
Thanks anyway.
Click to expand...
Click to collapse
Hi,
The issue was caused by SELinux denials. I've fixed these denials in this commit: https://github.com/TALUAtGitHub/and...mmit/0ec43a448795230a3d2d8576cd93c5b156468e21
I was able to get the SELinux denials you were experiencing as you told me how you encountered them. Attached is a zip archive named 'sepolicy_and_precompiled_sepolicy.zip' containing 2 files: 'sepolicy' and 'precompiled_sepolicy'. This is a new sepolicy containing the rules to fix the denials. If you decide to use my builds again, extract the zip archive and copy the 'sepolicy' file to /system/ and 'precompiled_sepolicy' file to /system/system/vendor/etc/selinux/ in TWRP with system mounted. You may want to run SELinux as permissive for now, though keep in mind that this will ignore denials. To set SELinux to permissive, run:
Code:
setenforce 0
I never caught these denials as I don't use Chrome, and use Bromite web browser which doesn't seem to trigger these denials. I'll probably upload a new build tomorrow containing a sepolicy with the new rules. Also, I've put this in the original post for reporting SELinux denials:
TALUAtXDA said:
There maybe more issues due to SELinux denials. If something doesn't work, test it with SELinux set to permissive:
Code:
setenforce 0
If the issue is no longer reproducible, it's due to SELinux denials. Get logs by running:
Code:
dmesg | grep "avc: denied" > dmesg_selinux_denials
logcat | grep "avc: denied" > logcat_selinux_denials
while SELinux is permissive after doing whatever triggered the denials in a shell and upload the files 'dmesg_selinux_denials' and 'logcat_selinux_denials'. It would also be preferable to report what triggered the denials. In some rare cases, SELinux has to be set to enforcing to get certain denials, which would unfortunately mean that every denied action isn't logged and it takes multiple tries to get every denied action causing issues. Don't report any random denials that don't cause any issues. I won't fix some denials (such as proc_version denials, which should be denied and it causes no real issues) and I'll only fix denials that cause unintended issues.
Click to expand...
Click to collapse
Thanks I will try it again soon.
Did as suggested, seems ok now! Thanks.
Good evening,
God bless you and thank you very much for fixing this beautiful rom.
I have a request and a question.
Request: I am using sm-t580. When I was using stock rom, I was able to cast my screen to my Samsung TV. I am aware that LOS and Pixel have removed this ability. Would you consider please to re-enable "smart cast". I would love to enjoy your ROM on my sm-t580 and be able to cast to Samsung TV.
Question: I am unable to edit build.prop or other system files. I tried to re-mount root but probably doing something wrong. Not very good with this. Could you walk me through how to remount and what do I need to use (what terminal inside your rom). I have root access with Magisk and in twrp used shell terminal with your command "mount -o rw,remount /" without success. Then I downloaded some some terminal app and tried. No use... I get "/dev/block/platform/13540000.dmmmc0/by-name/system" not user moutable in fstab. Thank you.
Thanks for building a rom with selinux enforced. I used encryption on 14.1 but it doesn't seem to work here. Some more denials to add, or maybe I need a newer recovery to format data with first?
Jet T said:
Good evening,
God bless you and thank you very much for fixing this beautiful rom.
I have a request and a question.
Request: I am using sm-t580. When I was using stock rom, I was able to cast my screen to my Samsung TV. I am aware that LOS and Pixel have removed this ability. Would you consider please to re-enable "smart cast". I would love to enjoy your ROM on my sm-t580 and be able to cast to Samsung TV.
Question: I am unable to edit build.prop or other system files. I tried to re-mount root but probably doing something wrong. Not very good with this. Could you walk me through how to remount and what do I need to use (what terminal inside your rom). I have root access with Magisk and in twrp used shell terminal with your command "mount -o rw,remount /" without success. Then I downloaded some some terminal app and tried. No use... I get "/dev/block/platform/13540000.dmmmc0/by-name/system" not user moutable in fstab. Thank you.
Click to expand...
Click to collapse
Hi,
You're welcome, though kudos to followmsi of course.
Smart cast seems to be a Samsung specific, proprietary feature. But we do have the generic casting feature available in Settings -> Connected devices -> Connection preferences -> Cast. Casting to wireless displays can be enabled through the 3 dot menu and then the "Enable wireless display" option and your TV should be detected. However, this doesn't work. A TV either doesn't connect or there's a soft reboot. I also have a Samsung smart TV with which I could test it with. The TV gets detected as "[TV] Samsung", and selecting it makes it say that it's connecting but it either stops trying to connect or it soft reboots and the TV displays an "loading" message that's infinite.
I found this while searching for "MediaPlayerService: listenForRemoteDisplay is no longer supported!" (this seems to be the main error): https://pastebin.com/s4utSi6c It seems like this issue has been reported before and existed at least a few months (though most certainly more) before my builds. I'll try finding a way to fix this, but my knowledge is unfortunately quite limited at this moment.
To do a mount command like that, you need to be root. To get a root shell, run "su", grant your terminal app root access and then run any commands needed to be run as root in that shell, such as that mount command.
EDIT: found this: https://forum.xda-developers.com/galaxy-tab-a/development/rom-t4006261/post81782081#post81782081 The replies say that you need to go back to Android 8 to use Miracast. I'm not sure if that's true but that's apparently how it is. There's probably nothing that can be done. Since smart cast is proprietary and Samsung specific, you'd only find it in Samsung ROMs. Also found this: https://forum.xda-developers.com/showpost.php?p=81369313&postcount=143 saying that support for Miracast is no longer available in Android 9 and 10.
I had another device where encryption didn't work. Turned out to be twrp writing incorrect (encryption?) footer when formatting data partition. But here encryption on 14.1 worked. Maybe encryption changed 14.1 to 17.1 with different footer, or maybe encryption on the los 17.1 base is broken on all devices. Difficult.
TALUAtXDA said:
Hi,
You're welcome, though kudos to followmsi of course.
Smart cast seems to be a Samsung specific, proprietary feature. But we do have the generic casting feature available in Settings -> Connected devices -> Connection preferences -> Cast. Casting to wireless displays can be enabled through the 3 dot menu and then the "Enable wireless display" option and your TV should be detected. However, this doesn't work. A TV either doesn't connect or there's a soft reboot. I also have a Samsung smart TV with which I could test it with. The TV gets detected as "[TV] Samsung", and selecting it makes it say that it's connecting but it either stops trying to connect or it soft reboots and the TV displays an "loading" message that's infinite. I captured a logcat at a time when it soft rebooted:
I found this while searching for "MediaPlayerService: listenForRemoteDisplay is no longer supported!" (this seems to be the main error): https://pastebin.com/s4utSi6c It seems like this issue has been reported before and existed at least a few months (though most certainly more) before my builds. I'll try finding a way to fix this, but my knowledge is unfortunately quite limited at this moment.
To do a mount command like that, you need to be root. To get a root shell, run "su", grant your terminal app root access and then run any commands needed to be run as root in that shell, such as that mount command.
EDIT: found this: https://forum.xda-developers.com/galaxy-tab-a/development/rom-t4006261/post81782081#post81782081 The replies say that you need to go back to Android 8 to use Miracast. I'm not sure if that's true but that's apparently how it is. There's probably nothing that can be done. Since smart cast is proprietary and Samsung specific, you'd only find it in Samsung ROMs. Also found this: https://forum.xda-developers.com/showpost.php?p=81369313&postcount=143 saying that support for Miracast is no longer available in Android 9 and 10.
Click to expand...
Click to collapse
I appreciate your answer!
I have now installed EX Kernel Manager as I had previously purchased it anyway when I (briefly) used the ElementalX kernel on my Pixel 3a.
I can see that we lose half the CPU permanently after the device goes to sleep, as you described, by looking at the dashboard.
Under Tools/User Settings I added a setting for /sys/devices/system/cpu/cpuhotplug/enable with a value of 0 as you suggested (to apply on boot) and this has cured the issue. It explains why I sometimes had smooth and sometimes not so smooth performance on the old rom! Now it's just always smooth.
Interestingly, I could not write to this value once the problem had occurred and the CPU was half disabled. The '0' value would not save, it stayed at '1'. It was not writable - is that a clue to the cause? I had to reboot and put the setting in EXKM before the device had been to sleep. Now it is fine even after reboot.
Thanks.
Thanks for your work and contributions to this device.
Many thanks for your work. Your ROM is working perfectly. No screen freeze.
Thank you for the rom!
I flashed it because it should have signature spoofing, but actually microG self-check doesn't tick signature spoofing permission and correct signature for play services and play store. Can anyone help me?
Jamess27 said:
Thank you for the rom!
I flashed it because it should have signature spoofing, but actually microG self-check doesn't tick signature spoofing permission and correct signature for play services and play store. Can anyone help me?
Click to expand...
Click to collapse
Hi,
It should be possible to select the "System grants signature spoofing permission" option in the MicroG self-check menu to get a dialog asking if you'd like to allow signature spoofing. Otherwise, you can grant the signature spoofing permission using a root shell or ADB with these pm commands:
Code:
pm grant com.google.android.gms android.permission.FAKE_PACKAGE_SIGNATURE
pm grant com.android.vending android.permission.FAKE_PACKAGE_SIGNATURE
TALUAtXDA said:
Hi,
It should be possible to select the "System grants signature spoofing permission" option in the MicroG self-check menu to get a dialog asking if you'd like to allow signature spoofing. Otherwise, you can grant the signature spoofing permission using a root shell or ADB with these pm commands:
Code:
pm grant com.google.android.gms android.permission.FAKE_PACKAGE_SIGNATURE
pm grant com.android.vending android.permission.FAKE_PACKAGE_SIGNATURE
Click to expand...
Click to collapse
Thanks for the fast response! I got the permission with the dialog in MicroG, but apps still don't find google play services
Jamess27 said:
Thanks for the fast response! I got the permission with the dialog in MicroG, but apps still don't find google play services
Click to expand...
Click to collapse
You're welcome. Now, the signature spoofing permission is granted to microG, but from what you describe, it's likely that play store (or fake store) doesn't have the signature spoofing permission. You can check if this is the case by opening the MicroG self-check menu and checking if the "Play Store (Phonesky) has correct signature" item is checked. If play store doesn't have the signature spoofing permission granted, you need to run this one pm command in a root shell or using ADB:
Code:
pm grant com.android.vending android.permission.FAKE_PACKAGE_SIGNATURE
PLEASE BEFORE YOU decide to try this rom, you MUST read all of post 1, 2, 3 and 4 (about 10 minute read). If you think this is an unreasonable request, then stop reading now and find another rom. Thank you.
I am not responsible for lost data, identity theft, lost money, security vulnerabilities, bricked devices or any other hardware or software malfunctions that comes as a result of flashing this rom.
BACKUP YOUR DATA AND OLD rom BEFORE trying my rom.
If you are NOT an expert in using fastboot, adb, odin, heimdall, twrp, DO NOT use this rom. You must know how to use these tools to revert back to your old rom. If you are new to flashing custom roms, do NOT attempt this.
If you need your tablet for work and something important, do NOT flash this rom. This rom could result in a bricked device or boot loop or non booting device or you not being able to revert back to your old rom.
What works
1. bluetooth
2. wifi
3. brightness
4. external audio
5. GPS
6. audio through headphone jack
7. audio over bluetooth
8. camera
What doesn't work
1. selinux is permissive. I have tried to make this build enforcing for weeks, but when I do, the OS doesn't boot and there is no adb logcat output despite making an "eng" build. Without adb logcat output, it's virtually impossible to determine what is wrong and I'm not spending anymore time on it. If having enforcing mode is important to you, use my 18.1 builds.
2. keyboard bug workaround. When prompted to enter something like a Bluetooth pin or text based password, sometimes the keyboard is not shown on the screen or off screen. The workaround is to goto settings, system, languages & input, on-screen keyboard, Android Keyboard (AOSP), appearance & layout, theme and choose "Material - follow system settings".
This keyboard bug is a LineageOS bug as per
https://review.lineageos.org/c/LineageOS/android_packages_inputmethods_LatinIME/+/325438
3. gapps. Some of you require gapps for whatever reason. I use Aurora Store for my purposes and thus have NO KNOWLEDGE of the current state of gapps.
There are various gapps projects (at least 5 in 2022). Each has pros and cons. It's your job to do the research and find a suitable gapps project. I suggest you allocate at least a couple of hours doing your own research. My rom works by itself fine without gapps. DO NOT talk about gapps in this thread. As a courtesy to gapps users, if you want to talk about gapps, I have opened a new thread at
https://forum.xda-developers.com/t/...m-t35x-sm-t550-sm-t560nu-and-sm-p550.4479285/
so you may discuss gapps wrt to the msm8916 platform. I will NOT be participating in that thread as I do NOT use gapps.
Source Code
Links and instructions on how to build this rom from source are in post #2 FAQ 1.
Thanks
1. LineageOS team for source code.
2. Kyle Harrison
- looking through the adb logcat and suggesting that my binder code was too old to work with Android 12's keystore2 code
- for the graphics and legacy camera patches to allow msm8916 to work with Android 12
- for his Motorola LineageOS 19.1 device trees so I could use his patches as a template for msm8916
3. @tarkzim
- adding back audio hal 2.0 and legacy camera hal 1.0 into the LineageOS trees
- helping me think through the msm8916 random reboots which was due to the TCP/IP patches
- maintaing and updating his repos so I can study them for learning purposes
4. @lpedia
- testing gapps, video conferencing, stability, reliabilty, paid apps
- helping verify my 19.1 repos are buildable by anyone
FAQ - I spent hundreds of hours building this rom. It was frustrating process from Nov 2021 to Aug 2022 running into bug after bug. The least you can do is spend a few minutes reading everything before posting.
Q1. Where are the source and kernel source files?
A1. The kernel source files are at
https://github.com/retiredtab/android_kernel_samsung_msm8916
The device tree files are at
https://github.com/retiredtab/android_device_samsung_msm8916-common/tree/lineage-19.1
https://github.com/retiredtab/android_device_samsung_gt58ltebmc/tree/lineage-19.1
https://github.com/retiredtab/device_samsung_gte-common/tree/lineage-19.1
The vendor tree files are at
https://github.com/retiredtab/android_vendor_samsung_gt58ltebmc
https://github.com/retiredtab/vendor_samsung_msm8916-common/tree/lineage-19.1
The manifest.xml (or roomservice.xml) and build instructions for 19.1 are at
https://github.com/retiredtab/LineageOS-build-manifests
Q2. Is this ALPHA rom suitable as a daily driver?
A2. It can be depending on your requirements. I can't test every app so you try it yourself to see if it's suitable. I've been using this rom myself since mid March 2022 with no major issues. I suggest you do a clean install, see FAQ 11, and flash this 19.1 ROM BY ITSELF (no gapps, magisk, etc) and see if you like it. If you do like it and want to add gapps then see FAQ 12.
Q3. What if my app, xyz, doesn't work?
A3. If your app doesn't work, then go back to your old rom.
Q4. Your rom is laggy and buggy.
A4. If you find the above, then go back to your old rom. There's only so much software can do on a 2015 budget level tablet. Remember a budget tablet will have the slower SoC/CPU and less DRAM than a top of the line model. Your tablet will also run slower when you use gapps. You can run a lot of software without using gapps. Research fdroid, newpipe, Aurora store etc.
Q5. What TWRP should I use?
A5. You MUST use TWRP 3.5.2_9. Get it from
https://forum.xda-developers.com/t/...-0-v7-10-android-11-galaxy-tab-a-8-0.4293577/
Q6. Why should I use this rom?
A6. If you don't like this rom, then don't use it.
Q7. Will you offer monthly updates with security patches?
A7. I will try to offer monthly security patches, but that all depends on if I continue to have high speed Internet in the future.
Q8. Can you help me? I'm a newbie. Can you provide step by step instructions?
A8. I don't have the time to help newbies, so please do your own research. There are lots of tutorials, videos, etc on how to flash roms. Newbie questions must be posted in the Questions and Answers forum, not here.
Q9. Can I report a bug with respect to the rom?
A9. Yes, but you need to supply the following information. If you don't, I won't look at it.
You must provide an adb logcat of the problem and tell me how to reproduce it. Note I will not be downloading any apps that require money or an userid/password. For example, if you have problems with Netflix, I cannot help you since I don't have a paid subscription. If you use some app that requires an userid/password, I cannot help you as I'm not willing to create another userid/password even if it's free.
To get a logcat, open up a terminal window.
Code:
# clear the logcat first
adb logcat -c
# start logcat trace
adb logcat > problem.txt
# reproduce problem
# wait until problem has occured, then stop trace by hitting ctrl-c
# attach the problem.txt ZIPPED as text files don't seem to get attached properly
Q10. Will you still build 18.1 for this device?
A10. Yes, for rest of 2022, but I will make a decision in January 2023 on how 18.1 and 19.1 will be maintained. If you like to help by building 18.1/19.1, please let me know.
Q11. Do I need to erase everything and format my data?
A11. Yes, you MUST erase all the partitions (system, data, dalvik/art cache, cache) using TWRP and MUST format your data before installing 19.1 when you are coming from stock or an earlier version of LineageOS or from another custom rom. If you get stuck at the boot animation for more than 5 minutes, it's likely because you didn't follow the instructions I just wrote. Dirty flashes from stock, other custom roms or older LineageOS versions are not supported and not likely to work.
Q12. What gapps should I use?
A12. I don't use gapps anymore. I use Aurora Store. As of Nov 6, 2021, I no longer make recommendations on which gapps to use as your mileage may vary.
Let me by crystal clear. YOU NEED TO DO YOUR OWN HOMEWORK selecting between the various gapps offered. There are 5: opengapps, nikgapps, mindthegapps, flamegapps and bitgapps. Each one will have it's own installation instructions. The only recommendation I will offer to use the SMALLEST version of gapps.
Don't be surprised that whatever gapps you use might have problems like "Just a sec", voice not working, updating google play store please wait, etc. These are NOT problems of the OS as the OS will run fine without gapps. These are gapps problems and you must ask in the gapps forum why it doesn't work.
In addition, some of the gapps may not install properly when using TWRP and say "cannot /mnt/system". For those cases, please use the LineageOS recovery.img you can download from
https://sourceforge.net/projects/retiredtab/files/SM-T350/LineageOS-recovery/
By flashing the LineageOS recovery.img, it will overwrite the existing TWRP and you will get a different UI.
Q13. I'm having problems with gapps, can you answer why it's not working?
A13. I WILL NOT answer any questions regarding gapps. This thread is about the rom, not gapps. Android does not depend on gapps in order to work.
Questions about gapps, for your courtesy, should be asked at
https://forum.xda-developers.com/t/...m-t35x-sm-t550-sm-t560nu-and-sm-p550.4479285/
Q14. Why isn't my post answered or ignored?
A14. Questions already answered in the FAQ will be completely ignored. Again, I do not use Windows OS or gapps.
Q16. What speed up/optimization tips do you suggest?
A16.
1. Turn off animations. Go into developer settings, scroll down to the drawing section, and set window, transition and animator scale all to "off".
2. If you don't have a google account, don't install gapps. Use Aurora Store to get your apps as you can get all the same apps from the play store using an anonymous login.
3. Dont' run more than 2 apps at the same time. You can probably listen to music in the background and use a web browser at the same time, but don't expect great performance from a 2015 entry level tablet.
4. Use a web browser like Brave that has built in adblock and privacy features.
5. Use newpipe to watch your streaming content. It has built in adblock so you don't have to watch forced ads.
6. Look for apps that are open source, ad free and lightweight.
7. Remove all unused quick setting "bubbles" from the quick pull down menu. I only need and have 6.
Q17. Does this rom support Magisk for root?
A17. I don't use Magisk myself so I don't know and Magisk is always being updated to fool Google's certification process. Others have reported Magisk as working, but I won't answer any questions regarding it.
Q18. Will this rom ever become official?
A18. With 19.1, legacy devices like ours will NEVER be official due to lack of ebpf support. See https://lineageos.org/Changelog-26/
Also, I don't want the responsibilities that come with being an official maintainer.
Q19. What is the difference between this rom and others?
A19. This rom tries to be pure LineageOS with little to no modifications.
Q20. Will there be any major 19.1 code modifications in the future?
A20. I don't anticipate any major modifications. There may be some small bug fixes and minor code cleanup, but all the hard work in getting the rom up and running and fixing all the major bugs have been done completed. This doesn't mean the code is perfect or well organized, but I won't be doing any major changes now that 19.1 is working.
Q21. Why did you fork the device and vendor trees for 19.1?
A21. The msm8916 repos seem geared towards phones and sometimes do not work or cause boot animation loops for tablets so I decided to fork their repos. In other words, what's deemed as msm8916-common code isn't common to all devices.
In addition, since I'm building SM-T350, SM-T357W, SM-T550, SM-P550 and SM-T560NU (all use the same msm8916 code), it seems easier to maintain all of them if I can control my own code repos and not worry if my changes affects the phones or not.
I have completely decommonized and rearranged the 19.1 msm8916-common tree so it's easier for me to maintain and build.
Q22. Can you build a variant of this device? For example, a LTE or S-pen version.
A22. If I don't physically have the device, I cannot and will not build it unless I can boot and test it myself. Even then, there's no guarantee that I can get those variant features working.
Q23. Can I load this rom on a variant devivce like LTE or S-pen version?
A23. The rom is built for the device explicitly listed. If you are an advanced user and understand TWRP, adb, odin, heimdall, you can try loading it on a LTE or S-pen variant by modifying the updater-script, but it may cause a bricked device, bootloops or non functionality of LTE/S-pen. You have been informed and warned!
Q24. How do I know if I have a BOE panel?
A24. Some ST-350 tablets have a BOE display panel. In order for it to work with TWRP and any custom rom, you must have the correct bootloader installed on a BOE panel otherwise you will see a black/blank screen. To check to see if you have a BOE panel, open a terminal and
Download an app called devcheck by flar2. In the hardware tab, scroll down to the display section and look at the panel.
If you see BOE anywhere in that string, then you have a BOE panel.
There is a fix as documented at post #41
https://forum.xda-developers.com/t/...galaxy-tab-a-8-0.4158163/page-3#post-83488241
This fix loads the Android 6.0 stock rom bootloader so that it works with TWRP and the custom rom.
Q25. Why is this NOT a GO build when 18.1 was a GO build.
A25. A GO build uses less DRAM, disk space and supposed to be better suited for devices with 2GB DRAM or less. I have no idea whether it's true or not vs a NON GO build, but I figured I would try a GO build for 18.1.
With Android 12L, the settings panel requires a split screen feature which is not in the GO build. When I made a 19.1 GO build in March 2022, half the setting screen would not show up so. When I made a NON GO build, then both sides the settings panel showed up on the screen.
Q26. What major code changes are in 19.1 vs 18.1.
A26.
- iptables has been removed in favour of ebpf
- keystore v1 has been replaced with keystore v2 which requires that the binder calls have some built-in security
- audio hal 2.0 has been deprecated
- legacy camera hal 1.0 and snap app have deprecated
Q27. I don't like the taskbar, how do I turn it off?
A27. Choose settings, type task into the search bar. Choose enable taskbar and disable taskbar. This will leave the on screen nav bar. If you want to disable that, go to settings, system, gestures, system navigation, gesture navigation.
Q28. Okay, I understand the consequences and that this is ALPHA rom and willing to take the risks outlined, now where can I find the rom?
A28. You can download it from https://sourceforge.net/projects/retiredtab/files/SM-T350/19.1/
NOTE: All builds that I upload have been personally tested on my device to boot and function as described in post #1. Having said that, there's still a chance it won't work on your device due to human error, your configuration, your apps, etc. If it won't boot, always start with a complete wipe of everything and format your data in TWRP. This is known has a clean install. Backup your data before a clean install.
19.1 has been my daily driver since March 2022.
May 6, 2023 release notes
1. May 5 security patches as per https://review.lineageos.org/q/topic:S_asb_2023-05
2. Whatever LineageOS changed since Apr 5 patches. About 7,400 files had to be recompiled.
Apr 13, 2023 release notes
1. Apr 5 security patches as per https://review.lineageos.org/q/topic:S_asb_2023-04
2. Whatever LineageOS changed since Mar 5 patches. About 23,000 files had to be recompiled.
March 18, 2023 release notes
1. Mar 5 security patches as per https://review.lineageos.org/q/topic:S_asb_2023-03
2. Whatever LineageOS changed since Feb 5 patches. About 24,000 files had to be recompiled.
Feb 12, 2023 release notes
1. Feb 5 security patches as per https://review.lineageos.org/q/topic:S_asb_2023-02
2. Whatever LineageOS changed since Jan 5 patches. About 12,500 files had to be recompiled.
Jan 7, 2023 release notes
1. Jan 5 security patches as per https://review.lineageos.org/q/topic:S_asb_2023-01
2. Whatever LineageOS changed since Dec 5 patches. About 4,400 files had to be recompiled.
Dec 9, 2022 release notes
1. Dec 5 security patches as per https://review.lineageos.org/q/topic:S_asb_2022-12
2. Whatever LineageOS changed since Nov 5 patches. About 4,700 files had to be recompiled.
Nov 11, 2022 release notes
1. Nov 5 security patches as per https://review.lineageos.org/q/topic:S_asb_2022-11
2. Whatever LineageOS changed since Oct 5 patches. About 5,400 files had to be recompiled.
Oct 6, 2022 release notes
1. Oct 5 security patches as per https://review.lineageos.org/q/topic:S_asb_2022-10
2. Whatever LineageOS changed since Sept 5 patches. About 7,200 files had to be recompiled.
Sept 11, 2022 release notes
1. Sept 5 security patches as per https://review.lineageos.org/q/topic:S_asb_2022-09
2. Switched to different timekeep repo that works with Android 12 and up.
3. Whatever LineageOS changed since Aug 5 patches. About 9,500 files had to be recompiled.
Aug 9, 2022 release notes
1. Aug 5 security patches as per https://review.lineageos.org/q/topic:S_asb_2022-08
2. Initial ALPHA release to public.
Reserved.
Thanks for making this! So far I haven't found any other issues than the ones you have listed. Stability so far is pretty solid too. Had no idea a12 had a taskbar until today, I quite like it.
One thing, the twrp you have listed does not seem to work by default, as the install script thinks its a different device. I stuck with using nubianprince's build and it worked fine. If people do the research they're supposed to though they can probably noodle around that .
lividhen said:
Thanks for making this! So far I haven't found any other issues than the ones you have listed. Stability so far is pretty solid too. Had no idea a12 had a taskbar until today, I quite like it.
Click to expand...
Click to collapse
I like the taskbar, but disabling it is a FAQ in many 19.1 threads.
lividhen said:
One thing, the twrp you have listed does not seem to work by default, as the install script thinks its a different device.
Click to expand...
Click to collapse
Oops, that's a cut and paste error. I put the T357 TWRP in T350 thread and vice versa. Thanks I have fixed that now. That's what I get for announcing 7 (yes, seven) 19.1 roms in a 24 hour span.
lividhen said:
I stuck with using nubianprince's build and it worked fine. If people do the research they're supposed to though they can probably noodle around that .
Click to expand...
Click to collapse
Yes, my FAQ now correctly points to @nubianprince's TWRP build. I've been using that one as well. It works so I haven't bothered to make an updated version. It's the same build that I recommended in my 18.1 FAQ as well.
Thanks for catching my cut and paste TWRP error and glad you find the 19.1 build working well so far.
Holy crap! 7?!
You have been very busy.
Also I don't know if this was you or if this was the lineage team, but thank you to whoever made the lowest android setting brightness actually be 1 on the soc lcd block instead of 5.
(I swear there is a name for when a device is mounted like that but I can't remember, eg /sys/devices/soc.0/1a00000.qcom,mdss_mdp/qcom,mdss_fb_primary.132/leds/lcd-backlight/brightness is the hardware brightness value I think)
Just saw it, will flash and will reply with an update later
John007778 said:
Just saw it, will flash and will reply with an update later
Click to expand...
Click to collapse
There are definitely bugs but the name says it but it booted
Why is the file size displayed as 558.8MB on the download page, but only 533MB when it is actually downloaded? Is this normal?
uOySsElNu said:
Why is the file size displayed as 558.8MB on the download page, but only 533MB when it is actually downloaded? Is this normal?
Click to expand...
Click to collapse
Yes it is. Source forge is funky. I am not sure if they somehow calculate the file size differently, or store it different. I think androidfilehost.com does this too. If you want to check it, click the (i) on the right side of the file on source forge to get some checksums.
uOySsElNu said:
Why is the file size displayed as 558.8MB on the download page, but only 533MB when it is actually downloaded? Is this normal?
Click to expand...
Click to collapse
Do "man ls" and you know why.
Bash:
gt58wifi:/sdcard $ ls -alh lineage-19.1-20220809-UNOFFICIAL-gt58wifi.zip
-rw-rw---- 1 root everybody 533M 2022-08-09 18:00 lineage-19.1-20220809-UNOFFICIAL-gt58wifi.zip
gt58wifi:/sdcard $ ls -al lineage-19.1-20220809-UNOFFICIAL-gt58wifi.zip
-rw-rw---- 1 root everybody 558839729 2022-08-09 18:00 lineage-19.1-20220809-UNOFFICIAL-gt58wifi.zip
lividhen said:
If you want to check it, click the (i) on the right side of the file on source forge to get some checksums.
Click to expand...
Click to collapse
The above is the correct answer. Each time I upload a file, I check the sha1sum on my local drive to make sure it matches with the uploaded sha1sum. While sha1sum takes longer than md5, it's more "tamper" resistant.
The build process also includes a sha256sum file, but based on other rom download stats, very few people download that sha256sum file to check the integrity of the download. And yes, doing a sha256sum takes longest of the three.
To anyone wondering how this performs compared to the 18 build, it runs just as good. So dont let the alpha scare you off. I have been using for 3 days now and haven't encountered any issues.
Thank you for your continued work on these ROMS.
tried turning it on today and it's bootlooping, will try to send the log
my tab boot looped when i was using ur other custom lineage 18.1 rom, and when i tried to re-flash using this new rom it is still boot looping, what do you think the problem is??
Tested dirty flash update from your last LineageOS 18.1 build to your 19.1 build on a T355Y device.
Confirmed working.
F-Droid will lose privileged extension and Aurora services will be gone though, but I easily re-installed via adb root.
Root manager (Lygisk) is also lost but is easily re-installable via TWRP 3.5.2_9-0 recovery. Now confirmed working with Lygisk version 25.1
In Aurora Store, I reviewed the blacklist because upgrading to Android 12 has a few extra bits and pieces which are sometimes "updatable" via Google Play Store but I didn't want to be interfered with during automatic app updates.
Nova launcher required permission confirmation again for notification badges and my custom keyboards needed permissions again too, so maybe other apps with permission requests might need to be granted again.
Thanks for supporting this device. I don't really use it for much other than as an occasional ebook reader, but it is fun to show friends that it is running Android 11 (now 12) when they see it on the coffee table and that old devices can have an extended life.
Hi @retiredtab
First of all, thanks for all your help and hardwork in keeping Galaxy Tab A devices alive.
I am trying to build your sources to start development for my SM-P555 device and following the instructions detailed in your https://github.com/retiredtab/LineageOS-build-manifests/blob/main/191-build-instructions.txt
While executing https://github.com/retiredtab/LineageOS-build-manifests/blob/main/191-build-instructions.txt#L43, I am hitting this prompt and seeking your advice on what needs to be done.
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
Many thanks!
psuryatej said:
While executing https://github.com/retiredtab/LineageOS-build-manifests/blob/main/191-build-instructions.txt#L43, I am hitting this prompt and seeking your advice on what needs to be done.
Click to expand...
Click to collapse
Please start a new thread called "How to build 19.1 for SM-P555" in the Q&A subforum.
New build called lineage-19.1-20220911-UNOFFICIAL-gt58wifi.zip
NOTE: All builds that I upload have been personally tested on my device to boot and function as described in post #1. Having said that, there's still a chance it won't work on your device due to human error, your configuration, your apps, etc. If it won't boot, always start with a complete wipe of everything and format your data in TWRP. This is known has a clean install. Backup your data before a clean install.
19.1 has been my daily driver since March 2022.
Sept 11, 2022 release notes
1. Sept 5 security patches as per https://review.lineageos.org/q/topic:S_asb_2022-09
2. Switched to different timekeep repo that works with Android 12 and up.
3. Whatever LineageOS changed since Aug 5 patches. About 9,500 files had to be recompiled.