[K3 Note Original Android Development] daniel_hk:
Things about kernel

I don't like unnecessary arguments so I usually just keep silent. But, there are just too many posts and query about kernel. :cyclops:

I'm not the one who built it. How would I know if it's working or not? I don't know why people would ask me why? If you want my opinion, I might tell if I know. Otherwise, I just have no idea. Should it be possible, I hope this would be my last response to kernel. Or, can you bring them to the corresponding thread?

Actually, kernel was the first place I started with Android on my first Samsung device. It's the easiest part because I could get the full source from Samsung.

What the custom kernels provided for our devices now are mainly Governors, DT2W, backports, etc.

1. Governor was a Linux thing since the early stage (1.x or 2.x?). For those early Android devices powered by single or double core CPUs, it would have some impact to efficiency and consumption. Just like the PC. Nowadays, even the entry level SOCs are muti-cores and mostly in clusters. 6-cores, 8-cores and 10 cores etc. with different architectures. The manufacturers are using their own managing technology which are built inside the SOC and/or with their own proprietary modules. Obviously, Qcom and Samsung (may be Huawei too) are doing better jobs than Mediatek now. That's their own core technology which they won't share. Therefore what we might do would be in the global view which is very very limited. Their engineers spent months and years to polish their own method. It would involve the power chip and all hardware supported chips. Do you really believe guys like us can do a better job by adjusting a few parameters? There would be neglectable or no effect at all. AND most likely, we would make things worse without notice. We might just haven't encounter those situations yet. I don't have problem with people who find it interesting to do their own experiments. It might be fun for them too. Just don't drag me to your playground.

2. I played with D2TW a few years ago. The existing methods are all derived from the one from early Nexus 5 (LP? forgot). I had ported to a few devices with different touch screens before. Touch screens is not equal to display. They have different drivers. I didn't support it first because my former experiences were not friendly to consumption. I needed to study MTK's native method first. At that time, if you want that feature, custom kernels would be the only alternative.

After I studied the spec. of our touchscreen chip (last June?), I found that its the chip's native feature. It has a full package of gesture support with proximity sensor handler. Power handling is also on chip and claim to be just a few uA extra. Theoretically, there is no difference between ON and OFF (just soft ON/OFF). But one thing can be sure. When it's ON, extra wakeups (either accidentally or in operation) of the kernel would consume some power. Imagine it's the decoder, I don't know why people would replace the hardware decoder with a software decoder. Obviously, a software driver would consume even more power with less features. Again, I don't have problem with those people find that interesting too.

3. OK, why I don't "upgrade" to latest 3.10.y? Mediatek grouped most of its drivers to the directory drivers/misc/mediatek (and a few other */*/mediatek). Those would be untouched by whatever Linux upgrade. Beside a few net and fs changes, the recent few minor versions are irrelevant to our device. I already backport some part of net and fs to 4.9. Do I need to "downgrade" those or just change the number like others? Either way, it's no big deal to me. However, I would backport some driver whenever I feel necessary. If subsequent 3.10.y is relevant, I might spend some time later. I would say 3.10 is almost done now. To be honest, if possible, I rather upgrade the kernel to 3.18 or higher. But, that would be far too much work for an already obsolete device. So if you want to feel better, just change the number to whatever you want. ;)

You don't have to believe what I said. There is the source and spec. you may consult. The fact is there. :)

I'm not trying to build or release something for publicity. I'm not even in the IT field now so I would say I'm just an amateur. If there is official updates, I probably would stick with it. When there isn't, I want to learn how to upgrade my own device. I was electronic major so I prefer to study the hardware spec. first. I like to read so I would consult the proper manual/reference first. Learning why is always my first objective and its the fun part to me. I'm not eager to seek for "fixes". Android is just one of my hobby and I won't spend all my time on it.

Hoping the above may answer most of your questions. :)

After a long day, I would pour myself a drink and enjoy the rest of the evening. Cheers! :D