yashsingh1/xdaforums huggingface dataset:
[Samsung Galaxy J5 (2016) ROMs, Kernels, Recoveries] RootedLee:
@prototype74 great to see you're still monitoring this thread of yours :cool:

I apologize if you've already answered this before: the latest Android for the A8 2018 is Android 8. Can you shine a light on why you never ported that update over into your existing j510xx ROM? I had to move on (see below) but would so much prefer to return to a genuine Samsung ROM out of your talented forge for my j5 as secondary mobile, even if it's just one version higher.

Here's the background why: what forced me to move to a ROM with a higher version of Android (see my sig) was that legacy XPosed was slowing everything down too much. Because for how I use this phone, a flavor of Xposed is simply required - no way around it. Now with LSPosed in LineageOS 17.1/ Android 10, everything is as snappy again as supposed. As I bet you know, LSPosed (and also the outdated EdXposed) require Android 8.0+

After working in LineageOS for a while now, I do miss your ROM: VoLTE was a huge plus; so was Samsung's TouchWIz launcher (and I also prefer the A8 (2018) Android 8 launcher over the one from LOS 17.1 and even Nova launcher), and several other details here and there.

Is it just a time or also a technical issue? There is Android 8 kernels for the j5 2016, + matching launchers. If it was/ is just a matter of allotting time, how many hours do you estimate it would

roughly

take to port the latest A8 (2018) Android 8 over?

Sonnige Grüße von Konstanz nach Freiburg 🌴
[Samsung Galaxy J5 (2016) ROMs, Kernels, Recoveries] RootedLee:
@prototype74 Whenever you have a minute, I'd still like to learn what you can say about my inquiry :)
[Samsung Galaxy J5 (2016) ROMs, Kernels, Recoveries] prototype74:
You should know that the ROM isn't fully based on Galaxy A8 2018. The actually base is from J5 2016 itself. What I have done back in 2018 was porting the framework of Galaxy A8 2018 on top of J5's vendor. This way does allow us to have working hardware features (wifi, display, gpu etc.) with full Galaxy A8 2018 software features.

The main issue why I never brought a newer Samsung based ROM to MSM8916 is that Samsung never did release any Android 8.0+ Update to any of it's MSM8916 devices. An attempt to full port Galaxy A8 2018 ROM to J5 2016 will fail at the beginning due to different SOCs (Exynos =/= Snapdragon you know). This is why the J5 2016 never got a newer Sammy based ROM from me.

Anyway I can call that all now is pure b*llsh*t: porting newer Samsung based ROMs DOES NOT actually rely on same SOC! :p I have started a project last year that should proof that we can indeed port ROMs from Snapdragon to Snapdragon devices (MSM8916 to MSM8926 for example). Such attempts were done between Exynos devices by other xda developers already which did work ofc. But did it work between Snapdragon devices too? YES it did! I was able to boot Android 7.1.1 from MSM8916 to my old S3 Neo (MSM8228; which never even got official Android 5 from Samsung) with 90% of working hardware features. It took months of work to do that but I can confirm that porting Sammy ROMs from different Snapdragon devices does work. This experience means it's not impossible to get Samsung Experience 9.x or even OneUI 1.x running on J5 2016 but this all just needs a lot of time, patience and especially experience how backporting Kernel features does work. Since I own a J5 2016 I might think about it to start a new project in summer ;)

Last but not least don't forget, LineageOS is completely open source which means it's easier to get and adapt newer LineageOS (or AOSP ROMs in general) on J5 2016 than Samsung based ROMs (open source vs. closed source software).

Noch sonnige grüße zurück nach Konstanz
[Samsung Galaxy J5 (2016) ROMs, Kernels, Recoveries] RootedLee:
@prototype74 perfect all-encompassing answer (y) - all details understood.

I'm hopeful you'll keep us updated about your new tentative J5 2016 project in summer. I'm sure your aim would be 100% of working hardware features in that case. Good luck with all of it. Feel free to let me know then once you're in need of a beta tester :)
[Samsung Galaxy J5 (2016) ROMs, Kernels, Recoveries] RootedLee:
@prototype74 just touching base with you: maybe a J5 2016 Android 8+/ SEP 9.x or even OneUI 1.x winter project ⛄ ? (My J5 still running well here as secondary mobile handset :cool:).
[Samsung Galaxy J5 (2016) ROMs, Kernels, Recoveries] prototype74:
I can't promise anything if there will ever be an android project from my side for the j5. I'm currently using my j5 for a different project (not android) which is the reason why I didn't start an android project for it during summer. The only thing I can tell is if I ever decide to work on an android rom for j5 again it might be based on 8.0+ but still, I'm not sure if it ever will happen...

Anyway thanks that you're still showing some interests about my (old) projects!
[Samsung Galaxy J5 (2016) ROMs, Kernels, Recoveries] RootedLee:
Gotcha @prototype74 - I appreciate the update.

Non-android project on your J5.. now you've piqued my curiosity. A recovery like TWRP, OrangeFox, PitchBlack etc., or something complety different like a mini Linux server? Would love to learn from you what you have running on it 💡
[Samsung Galaxy J5 (2016) ROMs, Kernels, Recoveries] alisadty:
Hello brother, can you do this for j5 2015

Custom ROM build

For this phone port Samsung Android 8 for this phone
[Samsung Galaxy J5 (2016) ROMs, Kernels, Recoveries] prototype74:
No.
[Samsung Galaxy J5 (2016) ROMs, Kernels, Recoveries] reggyxt:
good to see that you're still here even after such a long time
[Samsung Galaxy J5 (2016) ROMs, Kernels, Recoveries] ofeking06:
Hi where i can download to this rom s clean??
[Samsung Galaxy J5 (2016) ROMs, Kernels, Recoveries] alisadty:
SEPerience-ROM by @prototype74 - Google Drive

drive.google.com
[Samsung Galaxy J5 (2016) ROMs, Kernels, Recoveries] ofeking06:
This for j5 2016?
[Samsung Galaxy J5 (2016) ROMs, Kernels, Recoveries] alisadty:
Yes it is for j5 2016
[Samsung Galaxy J5 (2016) ROMs, Kernels, Recoveries] RootedLee:
really? Wow
[Samsung Galaxy J5 (2016) ROMs, Kernels, Recoveries] ofeking06:
Whay dont have here the aod?
[Samsung Galaxy J5 (2016) ROMs, Kernels, Recoveries] alisadty:
Brother, if you mean Always on display, you should go to settings_screen and find it and turn it on to enable this feature.
[Samsung Galaxy J5 (2016) ROMs, Kernels, Recoveries] prototype74:
There are specific reasons why. You can read about them here.
[Samsung Galaxy J5 (2016) ROMs, Kernels, Recoveries] alisadty:
Hello, why not?

j5 2015 and j5 2016 are no different

Only j5 2015 1.5 GB RAM

And J5 2016 has 2 GB of RAM
[Samsung Galaxy J5 (2016) ROMs, Kernels, Recoveries] prototype74:
There are more differences between J5 2015 and J5 2016 than just the amount of RAM. Also I don't own a J5 2015.
[Samsung Galaxy J5 (2016) ROMs, Kernels, Recoveries] alisadty:
If I give the money to buy the j5 2015, can you port a new Samsung Android 8 ROM for the j5 2015?
[Samsung Galaxy J5 (2016) ROMs, Kernels, Recoveries] prototype74:
TBH I wouldn't, also I wouldn't accept donations anyway.
[Samsung Galaxy J5 (2016) ROMs, Kernels, Recoveries] Zozo919:
is there any updates or progress on one ui for this device? no need to rush it, just take your time
[Samsung Galaxy J5 (2016) ROMs, Kernels, Recoveries] RootedLee:
@Zozo919 prototype74's reply couldn't have been any clearer..

Best ROM for the J5 2016 is said to be this specific LineageOS 17.1 (Android 10) one. Read more about it in the comments which follow the comment from my link.

Disclaimer: I have NOT tested it myself (yet, but have been planning to) !!
[Samsung Galaxy J5 (2016) ROMs, Kernels, Recoveries] prototype74:
This ROM is EOL since years. It will not receive any further updates.
[Samsung Galaxy J5 (2016) ROMs, Kernels, Recoveries] lolvatveo:
https://source.android.com/devices/camera/versioning#camera_apis

64 bit mode process faster than 32bit in any case even if you have 1mb ram or 1mhz cpu frequency. poor samsung engineer don't create 64 bit for their products
[Samsung Galaxy J5 (2016) ROMs, Kernels, Recoveries] prototype74:
Well Samsung did that starting with the Galaxy S6 and newer but yes they didn't for any of their msm8916/msm8929/msm8939 devices. But that doesn't prevent me to try to bring up an arm64 based kernel to the Galaxy J5 2016. I'm currently working on it but samsung's own code, especially the debugging stuff, in msm8916 source isn't really arm64 friendly, I have to patch them to make aarch64 toolchains happy. Anyway, there is still plenty much of work to do before 64bit can be a thing on J5. I'm not even sure if it will ever boot...
[Samsung Galaxy J5 (2016) ROMs, Kernels, Recoveries] RootedLee:
.. and after the kernel, kernel extensions aka drivers for the hardware need to be aarch64, too, for which they'd need to be open source, too. If not: no chance
[Samsung Galaxy J5 (2016) ROMs, Kernels, Recoveries] lolvatveo:
So let me in, I can overclock the cpu up to 2.13GHz and drop the J5 voltage. Can you refer my custom kernel, I really feel good about it but I want to go further to overclock it more, maybe you can help me. I will cooperate!

Post in thread '[KERNEL][TW][7.1.1][J510x]Quasar Kernel v2.0' https://xdaforums.com/t/kernel-tw-7-1-1-j510x-quasar-kernel-v2-0.3740626/post-87914667
[Samsung Galaxy J5 (2016) ROMs, Kernels, Recoveries] RootedLee:
@prototype74 @lolvatveo which Android are you tageting for the J5 2016 - A. 8 or even 9?
[Samsung Galaxy J5 (2016) ROMs, Kernels, Recoveries] lolvatveo:
I don't know yet, I will participating in any project
[Samsung Galaxy J5 (2016) ROMs, Kernels, Recoveries] prototype74:
Sorry, I'm not a fan of overclocking hardware

That's not really an issue. Qualcomm released arm64-v8a blobs for msm8916, so at least AOSP devs could profit from it.

Anyway, I'm half way done with arm64 kernel. 80% of all drivers are compiled (including j5x specific drivers), however, Samsung's debugging system is really though. It will take some time to convert it to arm64.

Currently stock 7.1.1 to ensure kernel stuff are working fine. After that I will move on to Android O.
[Samsung Galaxy J5 (2016) ROMs, Kernels, Recoveries] KlesterPvPer:
Are you gonna make a new custom rom for this device if yes do it please! Wondering what will be the name of it hmmm hoping it will release sooner
[Samsung Galaxy J5 (2016) ROMs, Kernels, Recoveries] RootedLee:
@prototype74 impressive, to say the least.

@KlesterPvPer stop pushing, please, that's of no use at all - much rather the opposite. Learn to humbly wait patiently in the background and just observe. Thanks.
[Samsung Galaxy J5 (2016) ROMs, Kernels, Recoveries] lolvatveo:
does anyone know how to change boot logo j5? I hate android 7's word powered by android, it's not as pretty as android 6 so I want to change it to android 6 boot logo
[Samsung Galaxy J5 (2016) ROMs, Kernels, Recoveries] prototype74:
Yes it's definitely planned but I haven't started to custom rom devving for J5 2016 yet. I'm still searching for a samsung snapdragon device that's the closest to our msm8916 proprietary software (spoiler: found some candidates, still need some tests tho). Therefore a name doesn't exist, not that I'm actually interested to give ROM names nowadays.

Let's make it more impressive: I've got an aarch64 compiled kernel booted on my J5 2016!!

j5xnlte:/ $ uname -a
Linux localhost 3.10.49-j5xlte-gd879b70c762-dirty #5 SMP PREEMPT Sun Aug 27 16:56:39 CEST 2023 armv8l

j5xnlte:/ $ cat /proc/cpuinfo
Processor : AArch64 Processor rev 0 (aarch64)
processor : 0
processor : 1
processor : 2
processor : 3
Features : fp asimd evtstrm crc32 wp half thumb fastmult vfp edsp neon vfpv3 tlsi vfpv4 idiva idivt
CPU implementer : 0x41
CPU architecture: 8
CPU variant : 0x0
CPU part : 0xd03
CPU revision : 0

Hardware : Qualcomm Technologies, Inc MSM8916
Revision : 0004
Serial : 0110100001101001
j5xnlte:/ $

This is actually great because that also mean our bootloader is indeed capable to decompress arm64 kernels (and boot them in 64-bit mode?)!

However the bad news is, so many things are broken. Literally no (with no I really mean NO) hardware device features (especially input devices) do work that means touchscreen, key buttons, connected mouse and keyboards, camera, sound card, sensors (probably even more) are not working. Not even the battery driver works as you can see in the screenshots (shows 0% even tho the battery was fully charged). Only the display and the USB (but not MTP) did work. Also the kernel panics (device hard reboots) after 3 mins (sometimes after 7 mins) of uptime, which made it difficult to take these screenshots in attachments.

For some reasons all drivers fail at probe according to kernel logs. Idk why but I guess there is something wrong in the pinctrl and/or gpio(mux). I hope it's just a kernel config thing as converting samsung's code was an exhausting work already.

Anyways, it's a milestone that the kernel did boot on J5 2016. But still we're not close to a functional and usable arm64 kernel. It just need more time and (especially) patience.
[Samsung Galaxy J5 (2016) ROMs, Kernels, Recoveries] RootedLee:
@prototype74

Thanks for keeping us up-to-date on your cutting-edge ventures!

Aarch64 compiled kernel booted: great, congrats! Accdg. to https://stackoverflow.com/a/73696522, armv8l means the kernel - even though built to run on an ARMv8 chip = 64 bit CPU - runs in 32-bit mode (?)

No hardware device features: yeah that's what I feared for 64 bit. But that would mean that the kernel, even though running in 32-bit mode, is already requiring 64-bit drivers? Hmm.

Not sure how it is with Android in this case, if all or some device drivers are open source or rather Samsung propriety.
[Samsung Galaxy J5 (2016) ROMs, Kernels, Recoveries] prototype74:
I'm not 100% sure if armv8l kernel means it's operating in 64bit or 32bit mode. It could also be due to the combination of arm64 kernel + arm OS (stock rom runs obviously in 32 bit mode). I've seen other samsung devices using arm64 kernel and arm OS (mostly exynos 7570, 7870 and msm8917) but also some devices using full arm64 kernel and OS (e.g. galaxy s7 edge), it's still displaying their arch as armv8l. Anyways, I'm 100% sure the toolchain I used was aarch64 and also cpuinfo shows "AArch64 Processor (aarch64)" whereas on stock it was showing "ARMv7 Processor (v7l)".

I wouldn't worry much about the drivers, they can operate in 64bit and 32bit mode. I'm sure something else causes them currently not to work. Everything is fixable but the way to get to it takes a lot of efforts.

Only kernel-side drivers from Samsung are open source, vendor proprietary (ROM-side) from Samsung are not. This is why most of the time the cameras aren't working in early releases on newer android custom roms (aosp or ported, doesn't matter)
[Samsung Galaxy J5 (2016) ROMs, Kernels, Recoveries] RootedLee:
OK gotcha - thanks for taking the time to explain. So now I hope for you that the step-by-step successes outweigh the efforts (y) 🍀
[Samsung Galaxy J5 (2016) ROMs, Kernels, Recoveries] lolvatveo:
not only kernel, os, but maybe a lot of related things that are only designed to run in 32 bit mode. it is located somewhere start from the root directory "/"
[Samsung Galaxy J5 (2016) ROMs, Kernels, Recoveries] prototype74:
Any examples? I couldn't find any executable binaries outside of /boot (kernel) and /system (OS).

🗿
[Samsung Galaxy J5 (2016) ROMs, Kernels, Recoveries] lolvatveo:
some partition may only working on 32bit mode. since it's not easy to create a 64bit system, so i will prefer overclocking to squeeze the most out of the sd410. My first success was undervolting it to 1.1625volts, I don't know why frequencies greater than 1.19ghz are fake display frequencies because I used thermal throttling test app to measure gmip and tried different frequencies, 1.19ghz has the same gmip score as 2.13ghz
[Samsung Galaxy J5 (2016) ROMs, Kernels, Recoveries] prototype74:
There is no such thing like 64bit or 32bit partition. Partitions don't have bits like ELF binaries.

Overclocking and undervolting together might not be the best idea imo. iirc 1.19Ghz is just a custom max frequency set by Samsung. Official MSM8916's default frequency is at 1.209Ghz, its max at 1.36Ghz but it depends on the speed bin reported by the SoC. There are 6 speed bins defined by Qualcomm, however, Samsung reduced them to one speed bin in their sources. I think the J5 may has a higher speed bin set that supports a max frequency of 1.36Ghz. Anyways, there is probably a reason why Samsung did set all their MSM8916 devices to 1.19Ghz.

Overclocking itself doesn't give you much performance boost if the mainboard, RAM and GPU are still at stock speeds, idk if the hardware would even survive higher speeds overall...
[Samsung Galaxy J5 (2016) ROMs, Kernels, Recoveries] lolvatveo:
I don't mean partition itself, but what it contain

I don't think the engineers were "smart" because they specified low speed with high voltage. The stock voltage on samsung doesn't even have a floor voltage, which will quickly kill the j5-sd410 in any long term work. We will improve cpu perf to the maximum extent possible, which is overclocking and adjust voltage to achive highest perf as possible while keeping temperatures safe. The 28nm process can achieve a frequency of about 2.5 with a voltage of 1.2v with this voltage level the device will always be cool and operate for a long time without throtlle, for example qualcomm sd805, it have 4cores like sd410 running max 2,5ghz and max voltage 1,2v same 28nm process like sd410. My idea is put the perf of sd805 on sd410, turn j5 sd410 into j5 like it have sd805 on, but the kernel code does not allow it, it secretly prevents the processor from working better with oc freq as stock max freq perf while shows fake oc'ed working frequency. And they give the sd410 a voltage of 1.35v with only 1.19ghz, wow the engineers are amazing, all of this because they have planned for this. they want to keep the sd410 as a entry-level cpu and they do everything in kernel code to make sure it is entry-level cpu, but I believe sd410 silicon have no different compare to sd805 or many others 28nm qualcomm cpu. about speedbin, this might be an idea for me to add a few speedbins back into the code instead of 1 like samsung's. But I also don't understand why perf also doesn't improve when I overclock the gpu to 2ghz (stock 400mhz), when I overclock it still shows in cpu z as 2000mhz but the fps is not.

improved, it can display fake freq. There is no difficulty in overclocking exynos or the GPU of the new qualcomm chips. Play with cpu/gpu mhz is my happiness about kernel development

https://xdaforums.com/t/overclocking-modifying-the-kernel.3602190/post-72202344
[Samsung Galaxy J5 (2016) ROMs, Kernels, Recoveries] prototype74:
Well here I mentioned that I couldn't find any other partition besides boot and system that contain executable binaries. Anyways, I think paritions are something we don't need to worry about. when it comes to 32/64bit.

I don't know why Samsung decided to set the max cpu freq to 1.19Ghz but there's probably a reason behind it we don't know about.

It seems like you researched a lot about overlock CPU/GPU and its configuration in kernel source. If it makes you happy, I wish you good luck about OC'ing the snap 410. Maybe you can figure out the mystery why OC'ing is or isn't a thing with snap 410.
[Samsung Galaxy J5 (2016) ROMs, Kernels, Recoveries] rom_tester_for_j510fn:
Hello,i tried this rom and its perfect.

But i would like to request to add aod please.I like this rom.Thank you
[Samsung Galaxy J5 (2016) ROMs, Kernels, Recoveries] ofeking06:
is there aod in this rom?
[Samsung Galaxy J5 (2016) ROMs, Kernels, Recoveries] totyax:
(translated) Hi, this ROM works surprisingly well on my phone (SM-J510FN). My biggest problem is that the banking application does not start (detected a modified device). Is there any way to bypass this?
[Samsung Galaxy J5 (2016) ROMs, Kernels, Recoveries] prototype74:
There is no AOD as it makes no sense to add it without kernel support. Also read this.

You may need Magisk Hide to make your banking app to work.
[Samsung Galaxy J5 (2016) ROMs, Kernels, Recoveries] totyax:
Thank you for the answer!

Magisk is not installed (as far I know). I need to install Magisk, and the Magisk Hide?

I have a second problem. I Installed your ROM, and few days later I put a SIM card to the phone. I got message, I need factory reset to use SIM (auto preconfig). This is mean my all data/app lost on the phone, is it normal? This is primarily a problem because the phone will be a gift, and it is certain that the sim will only be inserted later.
[Samsung Galaxy J5 (2016) ROMs, Kernels, Recoveries] prototype74:
Yes that should fix your banking app

This is a Samsung thing and usually occurs if you insert a new SIM from a different country. Thus, the ROM wants to change the CSC and prompts a factory reset.
[Samsung Galaxy J5 (2016) ROMs, Kernels, Recoveries] totyax:
Thank you for your answer!

(Translated) As I wrote, there was no SIM in the device when the rom was installed, the previous owner also used it with the same service provider as me ("telenor"/"yettel"), since he also received the phone from them.

Anyway, I did a clean installation, so first I installed the exact original Samsung ROM for the device, the service provider applications also appeared.

The interesting thing is that even the mobile internet started immediately, since the apn settings were also there, so everything worked, except for the annoying message (new SIM - auto preconfig - need factory reset)

I did a factory reset, then the ROM came in and wrote something, but I didn't understand what it was because it was in Russian, the google translator showed that if I press one of them, I accept that the phone will restart because of the SIM.

After that, the phone no longer complained about the inserted SIM. Okay.

That's when the interesting thing came, I had a fresh TWRP backup (Boot/System/Data) that I restored (and deleted the cache/dalvik cache), so basically everything was restored. However, after restarting, the phone still didn't complain about the inserted SIM, so I think it writes this provider information to an area that is outside the Boot/System/Data partition.

The point is that it is possible to solve with this backup/restore method so that we don't have to do a factory reset and reinstall and configure everything with unnecessary hassle.
[Samsung Galaxy J5 (2016) ROMs, Kernels, Recoveries] prototype74:
I don't see you ever mentioned there was no SIM inserted but anyway I'm glad the issue got fixed.

Perhaps Samsung writes the last sales_code (CSC) somewhere in EFS partition. Therefore the "new SIM detected, factory reset required" pop up won't appear again even if you restore a backup unless you restore a backup that contains an older EFS state.
[Samsung Galaxy J5 (2016) ROMs, Kernels, Recoveries] lolvatveo:
1,19ghz is the max frequency this kernel accepted. on other device it only run at 1,15ghz. all frequency above 1,19ghz is fake. you can try throttle test app and see gmip score for each frequency step. you can set max frequency in kernel tweak tool and then go test score. All frequency above 1,19ghz have same performance 1,19ghz. I still investgate this kernel source code until I success overclock snapdragon 410 to be like snapdragon 805. all the frequency or speed of bus, cpu, gpu, or sound, camera, screen of phone must be set as high as possible, so the sd410 can be sd805 or 810. why don't try to make kernel for sd410 like sd805/810 kernel and turn 410 to 805/810 cpu? but it just so difficult