HWA Kernel For HD2
Description
My kernel is based on Tytyung's r2.5 base
and mix the KGSL driver from Code Aurora Code Aurora
Test it with Xylograph's CM9 ROM (a beta release is also on the way) and finally proved it is working.
I 'd like to share my work to you.
1) This kernel can't be used in CM7 ROM
2) The current existing android4.0 ROMs can not directly use this kernel, becasue they are not using the correct libs to match the latest KGSL driver.
(I think the ROMs' Devs will change the libs after this release, just wait for a few days).
Installation
A flasher comme une Rom pour Zram soit actif il faut une partition swap sur la Sd
Derniers Changements
23 août 2012 :
ics & jellybean
ksm: remove unswappable max_kernel_pages …
ksm: fix bad user data when swapping
thp: ksm: free swap when swapcache page is replaced
staging: zram: fix zram locking
Staging: zram: Replace mutex lock by a R/W semaphore
Staging: zram: Add a missing GFP_KERNEL specifier in zram_init_device()
mm/ksm.c is doing an unneeded _notify in write_protect_page.
ksm: check for ERR_PTR from follow_page()
vmalloc(): adjust gfp mask passed on nested vmalloc() invocation
staging:lowmemkiller add Fudgeswap
drivers/mmc/host/msm-sdcc: remove dead config options
mmc: msm_sdcc: Fix possible circular locking dependency warning
mmc: msm_sdcc: Add prog done interrupt support
mmc: msm_sdcc: Fix bug in PIO mode when data size is not word aligned
mmc: msm: fix dma usage not to use internal APIs
mmc: change clock from 50Mhz to 64Mhz PCLK
mmc: change NR_SG from 32 to 128 for better performance
staging: Add Snappy compression support to zram
disable KSM for unstable reason while zram is enabled.
Spoiler :
ics
base: genlock: Remove genlock_release_lock and associated ioctl
base: genlock: allow synchronization with a single gralloc handle
base: genlock: remove BIT macro usage
ics & jellybean
Staging: android: binder: Don't call dump_stack in binder_vma_open
Staging: android: binder: Fix crashes when sharing a binder file between processes
drivers:staging:android Typos: fix some comments that have typos in them.
fs: Remove missed ->fds_bits from cessation use of fd_set structs internally
Staging:android: Change type for binder_debug_no_lock switch to bool
Staging: android: binder: Fix use-after-free bug
staging: android: lowmemorykiller: sysfs node and notifications
android, lowmemorykiller: remove task handoff notifier
staging: android: lowmemorykiller: Fix task_struct leak
staging: android/lowmemorykiller: Don't unregister notifier from atomic context
staging: android, lowmemorykiller: convert to use oom_score_adj
staging: android/lowmemorykiller: Do not kill kernel threads
staging: android/lowmemorykiller: No need for task->signal check
staging: android/lowmemorykiller: Better mm handling
staging: android/lowmemorykiller: Don't grab tasklist_lock
staging: android: lowmemorykiller: Don't wait more than one second for a process to die
Staging: android: fixed 80 characters warnings in lowmemorykiller.c
staging: android: lowmemorykiller: Ignore shmem pages in page-cache
staging: android: lowmemorykiller: Remove bitrotted codepath
staging: android: lowmemkiller: Substantially reduce overhead during reclaim
staging: android: lowmemorykiller: Don't try to kill the same pid over and over
android: logger: Allow a UID to read it's own log entries
staging: logger: hold mutex while removing reader
staging: android: logger: clarify non-update of w_off in do_write_log_from_user
staging: android: logger: clarify code in clock_interval
staging: android: logger: reorder prepare_to_wait and mutex_lock
staging: android: logger: simplify and optimize get_entry_len
staging: android: logger: Change logger_offset() from macro to function
Staging: android: fixed white spaces coding style issue in logger.c
android: logger: bump up the logger buffer sizes
pmem: Check for valid virtual address while flushing
pmem: Correctly account for aligned blocks
pmem_adsp (user-space) as non-cached
pmem_venc (user-space) as non-cached
change MSM_NAND_DMA_BUFFER_SIZE to SZ_1M
base: genlock: Remove genlock_release_lock and associated ioctl
base: genlock: allow synchronization with a single gralloc handle
base: genlock: remove BIT macro usage
ics & jellybean
Staging: android: binder: Don't call dump_stack in binder_vma_open
Staging: android: binder: Fix crashes when sharing a binder file between processes
drivers:staging:android Typos: fix some comments that have typos in them.
fs: Remove missed ->fds_bits from cessation use of fd_set structs internally
Staging:android: Change type for binder_debug_no_lock switch to bool
Staging: android: binder: Fix use-after-free bug
staging: android: lowmemorykiller: sysfs node and notifications
android, lowmemorykiller: remove task handoff notifier
staging: android: lowmemorykiller: Fix task_struct leak
staging: android/lowmemorykiller: Don't unregister notifier from atomic context
staging: android, lowmemorykiller: convert to use oom_score_adj
staging: android/lowmemorykiller: Do not kill kernel threads
staging: android/lowmemorykiller: No need for task->signal check
staging: android/lowmemorykiller: Better mm handling
staging: android/lowmemorykiller: Don't grab tasklist_lock
staging: android: lowmemorykiller: Don't wait more than one second for a process to die
Staging: android: fixed 80 characters warnings in lowmemorykiller.c
staging: android: lowmemorykiller: Ignore shmem pages in page-cache
staging: android: lowmemorykiller: Remove bitrotted codepath
staging: android: lowmemkiller: Substantially reduce overhead during reclaim
staging: android: lowmemorykiller: Don't try to kill the same pid over and over
android: logger: Allow a UID to read it's own log entries
staging: logger: hold mutex while removing reader
staging: android: logger: clarify non-update of w_off in do_write_log_from_user
staging: android: logger: clarify code in clock_interval
staging: android: logger: reorder prepare_to_wait and mutex_lock
staging: android: logger: simplify and optimize get_entry_len
staging: android: logger: Change logger_offset() from macro to function
Staging: android: fixed white spaces coding style issue in logger.c
android: logger: bump up the logger buffer sizes
pmem: Check for valid virtual address while flushing
pmem: Correctly account for aligned blocks
pmem_adsp (user-space) as non-cached
pmem_venc (user-space) as non-cached
change MSM_NAND_DMA_BUFFER_SIZE to SZ_1M
Anciennes versions :
Spoiler :
07 août 2012 :
Jellybean Kernel http://forum.xda-developers.com/showpost.php?p=29898261&postcount=655
1. Fixed data limit
Jellybean Kernel http://forum.xda-developers.com/showpost.php?p=29863257&postcount=624
1.base: genlock: Remove genlock_release_lock and associated ioctl
2.base: genlock: allow synchronization with a single gralloc handle
3.base: genlock: remove BIT macro usage
31 juillet 2012 :
-Update lien
ics & jellybean HWA kernel updates
1. msm: kgsl: Change name of vmalloc allocator
2. msm: kgsl: Map a guard page on the back of GPU MMU regions
3. msm: kgsl: Optimize page_alloc allocations
4.msm: kgsl: Add markers to identify IB sequence start and end
5.msm: kgsl: rework ib checking
jellybean
1. include: checkout msm_mdp from ics_chocolate
25 juillet 2012 :
-Update lien
1. ignore the version check in Qdsp6 Vdec which can prevent some crash when the vdec being used.
2. msm: kgsl: Write the retired timestamp on resume
3. msm: kgsl: handle larger instruction store for adreno225
4. msm: kgsl: Add support for the A3XX family of GPUs
5. reduced the PMEM_ADSP size as the HW decoder still can't work on HD2 (now we have 420MB memory for userspace)
6. msm: kgsl: Update the GMEM and istore size for A320
7. msm: kgsl: return correct error code for unknown ioctls
8. msm: kgsl: handle all indirect buffer types in postmortem
9. msm: kgsl: Detach memory objects from a process ahead of destroy time
10. msm: kgsl: Find a mem_entry by way of a GPU address and a pagetable base
11. msm: kgsl: Cleanup header file macros
12. msm: kgsl: Add GMEM size configuration in gpu list
13. msm: kgsl: don't clear gpuaddr when unmapping global mappings
14. msm: kgsl: Do not dereference pointer before checking against NULL
add new GPU libs
25 juin 2012 :
-need more people to do the new GPU libs test lien
23 juin 2012 :
-Update lien
-Change back the pmem size to 32MB adsp_pmem to 41MB this is the default configuration, It seems resolved the crash problem with DesireC GPU libs.
-In this version I have already include the DesireC gpu libs in the zip file.
With the new GPU libs the Chrome Browser is very smooth, the hardware H.264 decoder is working.
22 juin 2012 :
-Update lien
msm: kgsl: remove readl/writel use for dma memory
msm: kgsl: convert sg allocation to vmalloc
msm: kgsl: Allocate physical pages instead of using vmalloc
msm: kgsl: make cffdump work with the MMU enabled
msm: kgsl: Add ION as an external memory source
msm: kgsl: Fixup per-process memory statistics
msm: kgsl: Make sure kmemleak tool does not report incorrect mem leak.
msm: kgsl: Add a new property to IOCTL_KGSL_DEVICE_GETPROPERTY
msm: kgsl: Poke regularly in adreno_idle
msm: kgsl: increase valid timestamp range
msm: kgsl: flush outer cache for alloc_page() pages
msm: kgsl: Add a constant for adreno_ringbuffer_issuecmds flags
Important Tips : don't turn on the Settings->Developer options-> Force GPU rendering
Turn on this option will cause problem.
21 juin 2012 :
backport the following items from the latest KGSL driver: Lien
msm: kgsl: let postmortem dump find context switch IBs
msm: kgsl: fix size checking in adreno_find_region
msm: kgsl: Set default value of wait_timeout in the adreno_dev struct
msm: kgsl: Make sure WPTR reg is updated properly
msm: kgsl: fix error handling in adreno_waittimestamp()
msm: kgsl: let postmortem dump find context switch IBs
18 juin 2012 :
-Memory tweaks ici
13 mai 2012 :
-Rick_1995 and tytung made some more progress, voir ici
04 mai 2012 :
Rick_1995 back port all the KGSL , MDP from 2.6.38 to tytung's 2.6.32 and the latest build can be found here
Téléchargement
ICS kernel
JB kernel
Autres Infos
Source
Dernière édition par colonel59 le Jeu 9 Aoû 2012 - 0:22, édité 14 fois