[Kernel][10/01][N7100 N7105 R950] Perseus

M

Martini3001

Gast
Hallo,

ich habe mal den Persus Kernel hier im "Programm" aufgenommen.

Habe gerade wenig Zeit, sonst würde ich euch die wichtigsten Passagen des Themas übersetzten.
Wenn das gewünscht ist, werde ich eine kurze Übersetzung in den kommenden Tagen nachliefern.

Dazu sei gesagt, dass ich den Kernel auf meinem N2 nutze - unter Note-Runner 1.5 funktionierte mein System sparsam und tadellos! Der CRT-Effekt funktioniert mit diesem Kernel ebenfalls sauber!

Hier der Link zum originalen XDA-Thread:
ungültiger Link

VIELEN DANK AN DIE ENTWICKLER!!!

Welcome to the Perseus kernel! I thought it would be a nice catchname considering the Galaxy/Universe/Pegasus themes.

Advanced users are welcome to modify the scaling mechanisms of PegasusQ and I advise SetCPU 3 for this, most of the behaviour that one should configure is configurable via that application. CPU undervolting is compatible with most undervolting applications. For all other things, one should use scripts.

Don't be scared by the alpha denomination of the kernel, I'm just taking the traditional naming scheme where alpha designates feature development, beta is feature-completeness, and final will actually be when I'll actively stop developing the kernel. The kernel is very stable, and any bugs are fixed in hotfix versions (alpha x.y)

The kernel is also being maintained and released cross-device for the I9305 (S3 LTE), i9300 (S3) and N7105 (Note 2 LTE) and shares the same base-source. I solely own a I9300 Galaxy S3, but since all the phones derive from the same Midas platform, I merely adapt the differences without having the other devices.

Features / changelist:

Perseus alpha31 (09/01):
  • Removed my own security fixes and replaced them with the official Samsung one. I guess it can now be disclosed: exynos-mem was only one of multiple entry-points for the memory exploit. We discovered the s5p-smem exploit ourselves back in December but kept it quiet, I fixed that one back in version 29.2 without mentioning. Nobody was secure from a smart exploiter up until then, SuperCurios or Chainfire's software fixes are also just patching a single hole in what is a Swiss cheese. Kernels >v31 and beyond stock LLA are now the only truly protected ones.
  • Samsung's fix for the sudden death syndrome (SDS) included. It is caused by eMMC failure on phones with VTU00M 16GB internal memory chips with revision 0xF1. You can check your phone with the "eMMC Brickbug Check" in the Play Store (Ignore the message if it says you're not affected, the type and revision is what matters). The patch is a firmware soft-patch that is applied on every boot and MMC resume, it is not a permanent fix. You will need to stay forever on kernels which include the patch, this also includes updated recoveries and their embedded kernels.
  • Some other minor MMC changes extracted from Update 7 sources.

Perseus alpha30 (06/01):
  • Internal and memory voltage control. This is the first and only working implementation out there. Memory interface voltage is exactly what it the name implies, the voltage on the chip-to-chip interface from the SoC to the memory chip. Internal voltage is the whole SoC voltage excluding CPU, GPU, and the MIF. This includes all auxiliary function blocks such as the ISP/Image signal processor, camera interfaces, I/O interfaces, display controller and the MFC/Multi function codec hardware video de-/en-coder.

    - Internal voltage respectively memory voltage table is found in /sys/devices/cpu/busfreq/ as int_volt_table or mif_volt_table
    - The frequencies are defined as OPP's (Operating performance points), internal frequency and memory frequency (And voltages) together as a pair form an OPP. If you want to change the voltages through the sysfs files, keep in mind how you change them. MIF voltages are stored independently with each OPP step. INT voltages are stored in respect of their frequency key.

    - Default OPP steps are: 440220, 293220, 293176, 176176, 147147, 110110. The first three numbers represent the memory frequency, the other three the internal base frequency. For example 293220 means the memory interface is at 293MHz (586MHz DDR) and the internal frequency is 220MHz.

    - The voltages in STweaks are sorted out through some magic and are frequency unique, I recommend using that for controlling them.
  • Busfreq logic control added into STweaks, this includes all the already available configurables in the stock kernel with added explanations and I supplemented it with a sampling rate parameter.
  • Sensorhub driver and firmware updated.
  • Touchscreen driver and firmware updated.
  • Replaced pegasusq's runqueue detection logic with a new more superiror and precise in-scheduler collection logic, I found that the real runqueues are much less than what was previously reported. This should help a lot with hotplugging.
  • Enabled AFTR by default since we are now running very often in single-core mode. Keep in mind this mode is WFI Idle + LPA + AFTR.
  • Fixed a kernel bug which was eating up randomness entropy. This is related to that whole seeder business - please don't use any of those fixes. I also disabled virtual addresss randomization and at the same time disabled entropy generation from the block layer, which should avoid I/O overheads.
  • I raised the LPA CPU idle target residency, and fixed a bug in the ABB control for voltages for 900 and 1000MHz. I suspect these two to be causes of the sudden reboots for Note 2 users, and may fix them.

Perseus alpha29 (18/12):
  • I'm doing a quick release because of the security fix, not very feature rich.
  • Fixes the exynos-mem security hole. This is my own fix and will not break camera. Read about it here. You don't need to use Chainfire's or Supercurio's fixes, in fact, you shouldn't use them because of the camera.
    [strike]
  • Updated Wifi drivers.[/strike]
  • Increased max brightness by 50 candela. (Thanks nebkat)
  • Added GPU utilization control to sysfs and STweaks.
  • Changed default GPU thresholds to more relaxed values (75/17)
  • Added block device read-ahead control to STweaks. Additionally set the default read-ahead for internal memory to 256kB and 1mB for SD cards.

    29.1: - Reverted the Wifi drivers back.

Perseus alpha28 (13/12):
  • 28.1: I reverted the striked out changes due to exFat. I changed my mind due to demand. I apologize for the chaos.
  • [strike]On your SD card showing up as damaged: it is not.
    I made a decision in terms of exFat compatibility; either I advance the kernel with newer upstream Linux versions or stay back and keep compatibility with the exFat modules. While I have nothing against proprietary modules or such, not being able to adapt them to the kernel is not optimal. You can format your cards to FAT32 or ext4 without much issue. Please back up your data and format your card accordingly before flashing v28.
  • Updated the block system to Linux kernel 3.3.[/strike]
  • Introduced [strike]FIOPSv2[/strike], ROWv4, ZEN, [strike]BFQv5[/strike] as new I/O schedulers;

    FIOPS is the new default scheduler, it's a CFQ like fairness scheduler optimized for solid state storage. ROW should be the actual better performer here as it has superior logic, but I didn't set it as default because of some lags when installing applications. ZEN is just a mix of SIO and Deadline and nothing special. BFQ seems to underperform. I recommend the first two over everything else, and added the latter two just for comparison's sake.
  • Added dynamic Fsync control (Faux123). It disables Fsync only when the screen is on. Enabled by default (Fsync off).
  • Changed some logic on when the adaptive scaling voltages are applied in the kernel init sequence. This fixes GPU voltages not being applied at boot and also fixes the wrong default voltages being displayed in STweaks.
  • STweaks tab for I/O with scheduler selection for each device block and also dynamic Fsync.
  • New script side feature in the uci.sh framework: When inserting an override.profile file into the profile folder (/data/.perseus), the entries in the override profile will supersede the ones in your default profile. You can use to make CWM zips to turn off set at boot flags or to share targeted settings with others. The override is applied once at boot after which the profile deletes itself.


Sources:

https://github.com/AndreiLux/Perseus-S3

Credit and thanks:

gokhanmoral, netarchy, and anybody credited in the commits.

Thanks to sswagonman for the initial testing.

TL;DR: before flashing aside from known issues in the second post.
  • This isn't an AOSP kernel.
  • Please choose the right version between N7100 (International 3G) and N7105 (International LTE).
    The kernels are labelled for their respective target device. You have no excuse in messing this up.
 
R

rudl1220

Gast
Das passt perfekt^^

Cool :)

Edit:

Der perseus v31.2 ist jetzt standart in dee note runner v2.0 drin

Gruß rudl
 
J

Jo3black

Gast
der CRT-Off MOD aus der runner 1.5 funktioniert NICHT mit der 2.0....zumindest nicht in verbindung mit Simplistic Framework LL4
 
Oben