[KERNEL][3.4.106][KK][ION] K^Kernel 3.4.106 v5.0 per KK 4.4 [09/02/2015]
In questo thread potrete trovare il mio custom kernel 3.4.x per rom KitKat 4.4 (CM 11.0 e derivate) che usano allocazioni di memoria ION+PMEM ADSP.
Naturalmente, i vostri pareri, come sempre, sono i benvenuti e sicuramente preziosi.
Le principali caratteristiche sono le seguenti:
- Kernel 3.4.x
- Kernel basato sul branch kk_2.7-stable del Code Aurora Forum
- Sorgenti sincronizzati con il branch cm-11.0 dell'ADC Team
- Compilato con la mia custom toolchain Linaro 4.9.3-2015.01 ottimizzata per Cortex-A8
- Uso dei flag di compilazione ottimizzati per Cortex-A8 e NEON VFP (sia per il kernel che per i moduli)
- Uso dell'ottimizzazione -O3 (sia per il kernel che per i moduli)
- CPU overclockabile fino a 1824 MHz
- Undervolting standard delle frequenze della CPU (versioni UV) o undervolting estremo (versioni EXUV)
- CPU voltage control VDD sys interface (click per maggiori dettagli)
- Allocazione dinamica della memoria per gli heap ION attraverso CMA (Contiguous Memory Allocator)
- Allocazione dinamica della memoria per lo heap PMEM ADSP attraverso CMA (Contiguous Memory Allocator)
- Circa 426MB di RAM libera
- Init.d
- Fast Charge (default disabilitato, click per maggiori dettagli)
- Battery Life eXtender (default disabled, click per maggiori dettagli)
- Ram Console (click per maggiori dettagli)
- Backlight Notification v10 (BLNv10) (click per maggiori dettagli)
- USB OTG (se supportato dalla rom)
- Intensità della vibrazione personalizzabile (click per maggiori dettagli)
- Diminuito il voltaggio del display panel
- Diminuito il voltaggio del touchscreen
- Diminuito il voltaggio del wifi
- Abbassato il valore di swappiness (60 -> 45)
- Aumentata la frequenza della CPU in fase di boot
- Routine ottimizzate AES e SHA1 per cpu con architettura ARM
- 100% battery notification al termine della fase di carica (rimozione del caricatore)
- Aumentata la potenza audio
- Con Kolivas' CK3 Tweaks
- Ottimizzazione SLUB memory allocator
- Ottimizzazione algoritmo ARM RWSEM (read/write semaphore)
- Ottimizzazione asynchronous I/O latency per le sd card
- Libs string e memcopy ottimizzate
- Disabilitati i Gentle Fair Sleepers per migliori performance dell'interfaccia utente
- Supporto modulo CIFS al boot
- Memory compaction
- Compressione dinamica delle pagine pagecache libere
- Fast Random generator (frandom) (click per maggiori dettagli)
- Nuovi driver per il display presi dal Samsung Galaxy SII
- Aggiornamenti e modifiche al sensore della luminosità del display
- Phantom key presses filter (nuovo modulo per il filtro di pressioni "fantasma", click per maggiori dettagli)
- Dynamic FSync v1.2 (click per maggiori dettagli)
- Dynamic dirty page writebacks (click per maggiori dettagli)
- Modifiche ai parametri della VM per migliori performance e riduzione dei consumi
- Modificati i parametri del LowMemoryKiller per migliori performance
- Timeout personalizzabile dei touchkey luminosi dopo la pressione dei pulsanti o del touchscreen (click per maggiori dettagli)
- Possibilità di attivare/disabilitare la retroilluminazione dei touchkey luminosi in caso di pressioni sul touchscreen (click per maggiori dettagli)
- Timer slack controller (click per maggiori dettagli)
- Gestione dinamica del minimo timer slack durante il suspend/resume (click per maggiori dettagli)
- Gestione dei processi da non essere terminati da parte del LowMemoryKiller (click per maggiori dettagli)
- Supporto filesystem exFAT
- Algoritmi di TCP Congestion aggiuntivi
- Modulo ZRAM aggiornato
Governor CPU disponibili:
- Adaptive
- BrazilianWax
- Conservative
- Hyper
- Intellidemand
- Interactive
- InteractiveX
- LionHeart
- LulzActive
- OnDemand (default)
- OnDemandX
- Performance
- Powersave
- SmartAssV2
Scheduler I/O disponibili:
- BFQ
- CFQ
- Deadline
- Fiops
- Noop
- ROW
- SIO (default)
- V(R)
Download kernel per KitKat ION+PMEM ADSP:
Come installare il kernel:
1) Download dello zip della versione preferita del kernel nella sdcard interna o esterna
2) Reboot in recovery
3) Flash del file compresso
4) Reboot del sistema
Sorgenti del kernel (su GitHub):
Informazioni utili:
- Special features and sysfs settings
- Frequently asked questions
Risorse aggiuntive:
Per ulteriori dettagli sulle funzionalità del kernel, la customizzazione di alcune di esse e altre utili info, vi invito a consultare anche il relativo thread su XDA:
Crediti e ringraziamenti a:
arco68, CastagnaIT and ivendor per il loro fantastico ed eccezionale lavoro e i loro sorgenti del kernel
Ezekeel, Doomlord, Faux123, Stratosk, Tegrak, ErasmuX, Imoseyon, Blefish, mikeioannina e altri dev che starò sicuramente dimenticando
CyanogenMod, Kernel.org, Code Aurora Forum, Google, Linaro GCC developers
KTulu, Smeroni68, XeLLaR* per il loro supporto in fase di test
Sament83, B1tt1, Dellup, Pierm, Leonbeson, Cippoz89, Marco Z., Rhonin86, modog, Ludovic D. per le loro donazioni
1 allegato(i)
K^Kernel 3.4.75 v1.1 per KK 4.4 ION+PMEM ADSP
Ciao a tutti e buon anno,
ho rilasciato le build del kernel v1.1 pronte per essere usate con la rom ADC CM 11.0 ION+PMEM ADSP Beta 2 e le prossime rom basate su questa rom:
codice:
- Kernel 3.4.75
- Sources synched with cm-11.0_ion_pmem_adsp repo branch of DevCon Team
- Built with my latest custom Linaro 4.8.3-2013.11 toolchain optimized for Cortex-A8
- ancora: don't use FB console (credits to hadidjapri)
- Updates and fixes to ARM memory management, timers and specific architecture routines (credits to CAF Team)
- Updates and fixes to ALSA and ASOC sound drivers (credits to CAF Team)
- Updates and fixes to diagnostics driver (credits to CAF Team)
- Updates and fixes to EMMC/SD drivers (credits to CAF Team)
- Updates and fixes to IPC Router driver (credits to CAF Team)
- Updates and fixes to serial drivers (credits to CAF Team)
- Updates and fixes to framebuffer and display drivers (credits to CAF Team)
- Updates to qseecom driver (credits to AnilKumar Chimata)
- base: sync: increase size of sync_timeline name (credits to Fred Fettinger)
- Bluetooth: GAP: Fast ACL disconnection only for Auth fail (credits to Sumit Bajpai)
- Bluetooth: hidp: Remove sysfs entry if hid connection is disconnected (credits to Hemant Gupta)
- Fix pairing not successful when remote reports missing pin (credits to Archana Ramachandran)
- ion: Update ION_SECURE and ION_FORCE_CONTIGUOUS flags (credits to Adrian Alexei)
- mfd: pm8xxx: implement cold_boot sysctl parameter (credits to David Keitel)
- msm: subsystem_restart: Don't use phase 3 SSR on the SGLTE2 (credits to Joel King)
- msm: SSR: Fix problems with concurrent SSRs (credits to Stephen Boyd)
- msm: spm: set vdd directly for current cpu (credits to Venkat Devarasetty)
- msm: rq_stats: Register for Cpufreq policy notification (credits to Archana Sathyakumar)
- msm: socinfo: Add new hw_platform for QRD (credits to Taniya Das)
- msm: msm_bus: Correct the return value from register-client (credits to Gagan Mac)
- Revert "Revert "msm: cache_erp: Handle recoverable L1 errors"" (credits to Neha Pandey)
- msm: pm: send notification only for SPC and PC (credits to Venkat Devarasetty)
- msm: rpm: add debug msg for rpm outstanding req (credits to Venkat Devarasetty)
- msm: Fix race condition in domain lookup (credits to Olav Haugan)
- slim_msm: Wait for reconfig sequence to complete (credits to Kiran Gunda)
- sync: signal pt before sync_timeline object gets destroyed (credits to Prakash Kamliya)
- sysctl: add cold_boot sysctl entry (credits to David Keitel)
- Updates and fixes to USB drivers (credits to Rajkumar Raghupathy, Pavankumar Kondeti, Manu Gautam)
- drivers: staging: Fix Zcache (credits to Steve Kondik)
- msm: mdp: Update sync pt. behaviour (credits to naseer)
- mach-msm: Some changes to Ancora, Ancora_Tmo, Apache and Ariesve boards (credits to arco68)
- Revert "msm: pm2: Setup memory for save/restore cpu registers early" (credits to arco68)
- netfilter: xt_qtaguid: report only uid tags to non-privileged processes (credits to JP Abgrall)
- netfilter: x_tables: fix ordering of jumpstack allocation and table update (credits to Will Deacon)
- Update defconfigs and custom defconfigs to enable Zcache, additional features and
to enable additional features and to build NFS, LockD, SunRPC, TUN as standalone modules (credits to arco68 and Christopher83)
- Fix OTG support (credits to Rajkumar Raghupathy, Murali Nalajala, Vijayavardhan Vennapusa)
Nota:
Queste build non possono essere usate sulla ADC CM 11.0 Beta 1, perchè ci sono delle modifiche lato display driver e composer (retire fence sync), quindi, per favore, aggiornate prima la vostra rom alla Beta 2 che include anche varie migliorie in termini di performance e varie fix (tra cui fix alla fotocamera e USB OTG), dopodichè installate il nuovo kernel v1.1.
Ecco uno dei risultati più alti che ho ottenuto con Antutu Benchmark usando il K^Kernel v1.1 OC/EXUV 370MB con l'overclock alla frequenza massima (1824 MHz):
K^Kernel 3.4 v1.2 per KK 4.4 ION+PMEM ADSP
Ciao a tutti,
ho rilaciato le nuove build del kernel v1.2, pronte per essere usate con la rom ADC Team CM 11 ION Beta 3.
Ecco il changelog:
codice:
18/01/2014 - K^Kernel 3.4 v1.2 for KitKat ION+PMEM ADSP
- Kernel 3.4.77
- Sources synched with cm-11.0_ion_pmem_adsp repo branch of DevCon Team
- Built with my latest custom Linaro 4.8.3-2013.12 toolchain optimized for Cortex-A8
- ARM: dts: msm: Add new 'sharedmem' devices (credits to Pratibhasagar V)
- Asoc:msm:Added Buffer overflow check (credits to Mohammad Johny Shaik)
- cfg80211: intersect the regulatory rules for a new country (credits to Mihir Shete)
- csdio: Remove the driver (credits to Hamad Kadmany)
- msm: kgsl: Protect against a potential overflow in kgsl_sg_alloc (credits to Jordan Crouse)
- msm: kgsl: avoid zero length scatterlist allocation (credits to Prakash Kamliya)
- msm_serial_hs: Programming Auto RFR Ctrl bit (credits to Dilip Kota)
- radio: iris: Avoid inconsistent free (credits to Ayaz Ahmad)
- radio: tavarua: Added NULL checks for input arguments. (credits to Satish Kodishala)
- radio: iris: Prevent probable overflow (credits to Ayaz Ahmad)
- radio: iris: Use kernel API to copy data from user space (credits to Ayaz Ahmad)
- radio: iris: Avoid memory leak and NULL pointer dereferencing (credits to Ayaz Ahmad)
- radio: iris: Prevent loss of data (credits to Ayaz Ahmad)
- spi_qsd: Remove check for unaligned length during input_irq. (credits to Sana Venkat Raju)
- uio: msm_sharedmem: Add new device driver for sharedmemory access (credits to Pratibhasagar V)
- Update defconfigs to build TUN/TAP and ZRAM as a built-in modules (credits to Christopher83)
- Update defconfigs to build NFS, LockD, SunRPC as built-in modules (credits to arco68)
- msm: pm2: Setup memory for save/restore cpu registers early (credits to Christopher83)
- workqueue: Added null check and warning (credits to Srinivasarao P)
- cfg80211: discard regulatory hints from country IEs with undefined wiphy (credits to Mihir Shete)
- msm: msm_fb: Update panel info in case of resolution change (credits to raghavendra ambadas)
- Revert "mm: make is_vmalloc_addr work properly." (credits to Shruthi Krishna)
- mm: make is_vmalloc_addr lockless (credits to Laura Abbott)
- android: lowmemorykiller: add lmk parameters tunning code. (credits to seungho1.park)
- android/lowmemorykiller: Account for total_swapcache_pages (credits to Liam Mark)
- defconfig: Disable CONFIG_ENABLE_VMALLOC_SAVING (credits to arco68)
- defconfig: Disable KGSL shadow writes (credits to arco68)
- ARM: kconfig: select HAVE_EFFICIENT_UNALIGNED_ACCESS for CPUv6+ && MMU (credits to Will Deacon)
- Revert "staging: zram: Add auto loading of module if user opens /dev/zram." (credits to Greg Kroah-Hartman)
- Staging: zram: Fix access of NULL pointer (credits to Rashika Kheria)
- Staging: zram: Fix memory leak by refcount mismatch (credits to Rashika Kheria)
- usb: msm72k_otg: Update OTG status management (credits to Christopher83)
- usb: msm72k_otg: Allow USB bus overdraw for Legacy OTG (credits to Christopher83)
- Update defconfigs (credits to Christopher83)
- msm: Qdsp5v2: audio: Migrate to ION. (credits to Kalyani Polepeddy)
- audio: msm: qdsp5v2: Switch hostPCM driver to ION (credits to Kalyani Polepeddy)
- Initial commit for ION compilation errors (credits to Kalyani Polepeddy)
- msm: audio : Enable LPA (credits to Kalyani polepeddy)
- audio : Copyright correction. (credits to Kalyani polepeddy)
- msm: audio VOIP fixes. (credits to Kalyani polepeddy)
- msm: Remove all references to pmem from audio files (credits to Laura Abbott)
- qdsp5: memset stack buffer allocation (credits to Asish Bhattacharya)
- exFAT: Update to v1.2.5 (credits to arco68)
- defconfig: Disable NTFS and build exFAT as built-in (credits to arco68)
- Revert lowmem and vmalloc patches (credits to arco68)
Buona domenica!
K^Kernel 3.4 v1.3 for KitKat ION+PMEM ADSP
Ciao a tutti,
ho rilasciato le nuove build del kernel v1.3, compatibili con la nuova rom ADC Team CM 11.0 Beta 4:
codice:
- Kernel 3.4.77
- Sources synched with cm-11.0_ion_pmem_adsp repo branch of DevCon Team
- Built with my latest custom Linaro 4.8.3-2014.01 toolchain optimized for Cortex-A8
- sensors_ariesve: gp2a_proximity: Fix unbalanced enable for proximity IRQ (credits to Christopher83)
- misc: bln: New implementation and changes for BLNv10 (credits to Christopher83)
K^Kernel 3.4.80 v1.5 per KK 4.4 ION+PMEM ADSP
Ciao a tutti,
ho rilasciato le build del nuovo K^Kernel v1.5, pronte per essere usate con la nuova rom ADC CM 11.0 Release 2.
Changelog:
codice:
- Kernel 3.4.80
- Sources synched with cm-11.0_ion_pmem_adsp repo branch of DevCon Team
- Built with my latest custom Linaro 4.8.3-2014.02 toolchain optimized for Cortex-A8
- crypto: Several updates and fixes to crypto drivers (credits to CAF Team)
- msm: kgsl: Add an input handler to power up the GPU on a touch event (credits to Tk-Glitch)
- ARM: be strict about FP exceptions in kernel mode (credits to mrg666)
- ARM: add support for kernel mode NEON (credits to mrg666)
- ARM: crypto: add NEON accelerated XOR implementation (credits to Ard Biesheuvel)
- ARM: 7835/2: fix modular build of xor_blocks() with NEON enabled (credits to Ard Biesheuvel)
- ARM: move VFP init to an earlier boot stage (credits to Ard Biesheuvel)
- ARM: Perform the creation of procfs node for VFP later (credits to Christopher83)
- ARM: only allow kernel mode neon with AEABI This prevents the linker erroring with: (credits to Russell King)
- ARM: 7626/1: arm/crypto: Make asm SHA-1 and AES code Thumb-2 compatible (credits to Dave Martin)
- ARM: 7723/1: crypto: sha1-armv4-large.S: fix SP handling (credits to Ard Biesheuvel)
- ARM: 7837/3: fix Thumb-2 bug in AES assembler code (credits to Ard Biesheuvel)
- crypto: create generic version of ablk_helper (credits to Ard Biesheuvel)
- ARM: pull in <asm/simd.h> from asm-generic (credits to Ard Biesheuvel)
- ARM: move AES typedefs and function prototypes to separate header (credits to Ard Biesheuvel)
- ARM: add support for bit sliced AES using NEON instructions (credits to Ard Biesheuvel)
- ARM: add .gitignore entry for aesbs-core.S (credits to Russell King)
- crypto: Fix more AES build errors (credits to Russell King)
- workqueue: Introduce new flag WQ_POWER_EFFICIENT for power oriented workqueues (credits to Viresh Kumar)
- workqueue: Add system wide power_efficient workqueues (credits to Viresh Kumar)
- block: queue work on power efficient wq (credits to Viresh Kumar)
- xsched: Optimize build_sched_domains() for saving first SD node for a cpu (credits to Viresh Kumar)
- PHYLIB: queue work on system_power_efficient_wq (credits to Viresh Kumar)
- ASoC: pcm: Use the power efficient workqueue for delayed powerdown (credits to Mark Brown)
- ASoC: jack: Use power efficient workqueue (credits to Luis Cruz)
- regulator: core: Use the power efficient workqueue for delayed powerdown (credits to Luis Cruz)
- ASM: word-at-a-time: make the interfaces truly generic (credits to Chad Goodman and poondog)
- LIB: use generic strnlen_user and strncpy_from_user functions (credits to Chad Goodman and poondog)
- ARM: dcache: select DCACHE_WORD_ACCESS for little-endian ARMv6+ CPUs (credits to Chad Goodman and poondog)
- ARM: 7927/1: dcache: select DCACHE_WORD_ACCESS for big-endian CPUs (credits to Will Deacon)
- sched: Add sysinterface for GENTLE_FAIR_SLEEPERS (credits to Tk-Glitch)
- sched: Consider max cost of idle balance per sched domain (credits to Paul Reioux)
- sched: Periodically decay max cost of idle balance (credits to Paul Reioux)
- cpufreq: Optimize cpufreq_frequency_table_verify() (credits to Viresh Kumar)
- Update default and custom defconfigs (credits to Christopher83)
- msm: camera: Don't set a flip for S5KA3DFX front camera on Ariesve (credits to Christopher83)
- mach-msm: Revised VIDC memory reservation to fix video re-encoding issues (credits to Christopher83)
Nota:
Per risolvere i problemi di video re-encoding (ad esempio la conversione effettuata prima di inviare un video usando WhatsApp) è stato necessario aggiungere alcuni MB in più all'allocazione ION destinata al video encoder/decoder (VIDC), le nuove configurazioni della memoria sono:
- 348MB di ram libera invece di 352MB, come il kernel stock della nuova rom
- 356MB di ram libera invece di 360MB
- 366MB di ram libera invece di 370MB
- 374MB di ram libera invece di 378MB
Per maggiori dettagli sulle configurazioni della memoria, date un'occhiata alla FAQ section del thread originario (in inglese).
K^Kernel 3.4 v1.6 per KitKat ION+PMEM ADSP
Ciao a tutti,
ho rilasciato le nuove build del kernel v1.6:
codice:
- Kernel 3.4.82
- Sources synched with cm-11.0_ion_pmem_adsp repo branch of DevCon Team
- Built with my latest custom Linaro 4.8.3-2014.02 toolchain optimized for Cortex-A8
- s6e63m0: added new brightness levels to decrease more the brightness (credits to CastagnaIT)
- fix false disconnect due to a signal sent to the reading process (credits to keunyoung)
- MDP: correct clock calculation logic for up-scaling scenario (credits to Nirmal Abraham)
- sync: don't block the flusher thread waiting on IO (credits to Dave Chinner)
- timer: optimize apply_slack() (credits to Felix Fietkau)
- writeback: fix writeback cache thrashing (credits to Namjae Jeon)
- block/partitions: optimize memory allocation in check_partition() (credits to Ming Lei)
- rtc: alarm: Add power-on alarm feature (credits to Ashay Jaiswal)
- rtc: alarm: Set power-on alarm 120 sec before actual alarm time (credits to Mohit Aggarwal)
- kernel: alarm: fix the BUG that device automatically powers on (credits to Figo Wang)
- kernel: alarm: add dedicated alarm type for poweroff alarm (credits to Figo Wang)
- kernel: alarm: Do not call rtc_alarm_irq_enable in IRQ Disabled context (credits to Prasad Sodagudi)
- power: add an API to log wakeup reasons (credits to Ruchi Kandoi)
- power: fix compile warnings in log_wakeup_reason (credits to Ruchi Kandoi)
Grazie a CastagnaIT, sulla nuova rom ADC Team CM 11.0 Release 3, è ora possibile impostare una luminosità inferiore per il display.
Se volete ridurre l'attuale luminosità minima, andate in Impostazioni -> Display & Luci -> Luminosità, accedete alle regolazioni e impostate la luminosità minima desiderata.