Welcome to XDA

Search to go directly to your device's forum

Register an account

Unlock full posting privileges

Ask a question

No registration required
Post Reply

[24 SEP 2012][DEV] HWA Kernel For HD2

OP securecrt

27th April 2012, 02:58 PM   |  #1  
OP Recognized Contributor
Flag Shanghai
Thanks Meter: 2,764
 
763 posts
Join Date:Joined: Aug 2010
Donate to Me
HWA Kernel for HD2

My kernel is based on Tytyung's r2.5 base
and mix the KGSL driver from Code Aurora

This is a DEV thread. the latest code may cause some problems.


HTC HD2 is still the KING!!!!


Notes:
1. this kernel can't be used in CM7 ROM
2. the current(before 27 Apr 2012) existing android4.0 ROMs can not directly use this kernel, becasue they are not using the correct libs to match the latest KGSL driver.

Update: 4 MAY 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: link
Update: 13 MAY 2012
Rick_1995 and tytung made some more progress : link

Update: 19 JUN 2012
Memory tweaks : link
msm: kgsl: Add support for the preamble context flag link

Update: 21 JUN 2012
backport the following items from the latest KGSL driver: link
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

22 JUN 2012 update link
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.

23 JUN 2012 update link
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.

25 JUN 2012 update
need more people to do the new GPU libs test link

25 JULY 2012 update link
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

31 JULY 2012 link
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

6 AUG 2012 link
JellyBean Kernel
1. msm: kgsl: Add per context timestamp
2. net: netfilter: enable bandwidth control (data limit)
3. update base to tytung r3.3

7 AUG 2012 link
Jellybean Kernel
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

7 AUG 2012 link
Jellybean Kernel
1. Fixed data limit

15 AUG 2012 link
ics
  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
ics & jellybean
  1. Staging: android: binder: Don't call dump_stack in binder_vma_open
  2. Staging: android: binder: Fix crashes when sharing a binder file between processes
  3. drivers:staging:android Typos: fix some comments that have typos in them.
  4. fs: Remove missed ->fds_bits from cessation use of fd_set structs internally
  5. Staging:android: Change type for binder_debug_no_lock switch to bool
  6. Staging: android: binder: Fix use-after-free bug
  7. staging: android: lowmemorykiller: sysfs node and notifications
  8. android, lowmemorykiller: remove task handoff notifier
  9. staging: android: lowmemorykiller: Fix task_struct leak
  10. staging: android/lowmemorykiller: Don't unregister notifier from atomic context
  11. staging: android, lowmemorykiller: convert to use oom_score_adj
  12. staging: android/lowmemorykiller: Do not kill kernel threads
  13. staging: android/lowmemorykiller: No need for task->signal check
  14. staging: android/lowmemorykiller: Better mm handling
  15. staging: android/lowmemorykiller: Don't grab tasklist_lock
  16. staging: android: lowmemorykiller: Don't wait more than one second for a process to die
  17. Staging: android: fixed 80 characters warnings in lowmemorykiller.c
  18. staging: android: lowmemorykiller: Ignore shmem pages in page-cache
  19. staging: android: lowmemorykiller: Remove bitrotted codepath
  20. staging: android: lowmemkiller: Substantially reduce overhead during reclaim
  21. staging: android: lowmemorykiller: Don't try to kill the same pid over and over
  22. android: logger: Allow a UID to read it's own log entries
  23. staging: logger: hold mutex while removing reader
  24. staging: android: logger: clarify non-update of w_off in do_write_log_from_user
  25. staging: android: logger: clarify code in clock_interval
  26. staging: android: logger: reorder prepare_to_wait and mutex_lock
  27. staging: android: logger: simplify and optimize get_entry_len
  28. staging: android: logger: Change logger_offset() from macro to function
  29. Staging: android: fixed white spaces coding style issue in logger.c
  30. android: logger: bump up the logger buffer sizes
  31. pmem: Check for valid virtual address while flushing
  32. pmem: Correctly account for aligned blocks
  33. pmem_adsp (user-space) as non-cached
  34. pmem_venc (user-space) as non-cached
  35. change MSM_NAND_DMA_BUFFER_SIZE to SZ_1M

23 AUG 2012 link
ics & jellybean
  1. ksm: remove unswappable max_kernel_pages …
  2. ksm: fix bad user data when swapping
  3. thp: ksm: free swap when swapcache page is replaced
  4. staging: zram: fix zram locking
  5. Staging: zram: Replace mutex lock by a R/W semaphore
  6. Staging: zram: Add a missing GFP_KERNEL specifier in zram_init_device()
  7. mm/ksm.c is doing an unneeded _notify in write_protect_page.
  8. ksm: check for ERR_PTR from follow_page()
  9. vmalloc(): adjust gfp mask passed on nested vmalloc() invocation
  10. staging:lowmemkiller add Fudgeswap
  11. drivers/mmc/host/msm-sdcc: remove dead config options
  12. mmc: msm_sdcc: Fix possible circular locking dependency warning
  13. mmc: msm_sdcc: Add prog done interrupt support
  14. mmc: msm_sdcc: Fix bug in PIO mode when data size is not word aligned
  15. mmc: msm: fix dma usage not to use internal APIs
  16. mmc: change clock from 50Mhz to 64Mhz PCLK
  17. mmc: change NR_SG from 32 to 128 for better performance
  18. staging: Add Snappy compression support to zram
  19. disable KSM for unstable reason while zram is enabled.

24 SEP 2012 link
ICS & JB
  1. ashmem: Implement read(2) in ashmem driver
  2. ashmem: Fix ASHMEM_SET_PROT_MASK.
  3. ashmem: Support lseek(2) in ashmem driver
  4. ashmem: Fix the build failure when OUTER_CACHE is enabled
  5. ashmem: Fix ashmem vm range comparison to stop roll-over
  6. Disabling Gentle Fair Sleepers improve UI responsiveness.
  7. base: genlock: handle error while creating lock/handle inode
  8. base: genlock: add magic to protect attach from non-genlock file
  9. base: genlock: protect kref counting with spinlock
  10. Staging: android: binder: Add some missing binder_stat_br calls
  11. tweak iosched for better android performance
JB
  1. video: msm: add mdp version to id string,and put a bogus panel id



Great thanks to Xylograph , dorimanx , Rick_1995, tytung and all of the guys who is reading this thread.

If you like my work please don't hesitate to press the Thanks button.
Last edited by securecrt; 24th September 2012 at 05:30 PM.
The Following 407 Users Say Thank You to securecrt For This Useful Post: [ View ]
27th April 2012, 06:19 PM   |  #2  
Dr_Grip's Avatar
Senior Member
Thanks Meter: 184
 
417 posts
Join Date:Joined: Jul 2011
More
Quote:
Originally Posted by hypergamer1231

You mean you wont release it today :(

I don't really get what you guys mean by "no kernel?" or "no release today?".

The code is there in a GIT repository and as far as I understood the OP the kernel is useless without a matching ICS/CM9 ROM anyways, so it makes no sense at all to release a binary and get flooded with "OMG IT DOES NOT WORK WITH CM7" replies.

If you think you know what to do with this kernel you should be able to set up GIT and a Android compile toolchain and compile it from source. If you need a flashable ZIP, this kernel is useless for you anyways.

This thread is dev/bug collection-related, not a kernel download thread. Wait for Xylograph to release his CM9.
Last edited by Dr_Grip; 27th April 2012 at 06:25 PM.
The Following 4 Users Say Thank You to Dr_Grip For This Useful Post: [ View ]
27th April 2012, 06:27 PM   |  #3  
Rick_1995's Avatar
Recognized Developer
Whoville
Thanks Meter: 3,059
 
1,114 posts
Join Date:Joined: Sep 2009
Calm down people, none of the roms available yet use it anyway.

Xylograph in pm (removed few things)
Quote:

Ok guys,
I think my beta build is amost finished and I will be leaving my workplace soon and go home..
I will be available again in about 4 hours from now to work on it again.. Will check XDA every once in a while..
Cheers !

I could post link to the alpha test rom we used, but it isn't that exciting with most stuff being buggy (some things even worse than current ics roms).

@securecrt, You have done what i was afraid of.. WHY WHY WHY overwrite git data with "first commit", if you had just used git push and git add remote, we could see what you had done without downloading the kernel.
The Following 7 Users Say Thank You to Rick_1995 For This Useful Post: [ View ]
27th April 2012, 07:23 PM   |  #4  
tytung's Avatar
Senior Member
Thanks Meter: 15,071
 
3,574 posts
Join Date:Joined: Jun 2010
More
Quote:
Originally Posted by Rick_1995

@securecrt, You have done what i was afraid of.. WHY WHY WHY overwrite git data with "first commit", if you had just used git push and git add remote, we could see what you had done without downloading the kernel.

+1

@securecrt:
Congratulation that you have added HWA feature to the 2.6.32 kernel.
But I suggest that you may consider re-uploading another version including all the old commits and your changes.

Edit:
Or share your changes by executing "git diff > HWA.diff" or "git format-patch -o HWA.patch".
Last edited by tytung; 27th April 2012 at 07:27 PM.
The Following 7 Users Say Thank You to tytung For This Useful Post: [ View ]
27th April 2012, 09:00 PM   |  #5  
Member
Flag Wiesbaden
Thanks Meter: 85
 
90 posts
Join Date:Joined: Dec 2008
More
Quote:
Originally Posted by tytung

+1

@securecrt:
Congratulation that you have added HWA feature to the 2.6.32 kernel.
But I suggest that you may consider re-uploading another version including all the old commits and your changes.

Edit:
Or share your changes by executing "git diff > HWA.diff" or "git format-patch -o HWA.patch".

Hey tytung

I created a diff of latest DORIMANX git and the HWA Kernel git.

Diff is available here https://www.dropbox.com/s/isv8ggyot1....32.X-HWA.diff
Last edited by a-st; 27th April 2012 at 09:03 PM.
The Following 2 Users Say Thank You to a-st For This Useful Post: [ View ]
28th April 2012, 12:40 AM   |  #6  
Robbie P's Avatar
Recognized Contributor
Flag London
Thanks Meter: 3,115
 
4,307 posts
Join Date:Joined: Feb 2011
More
Hi securecrt, thanks for your work here.
I am trying to port Xylograph's ROM with portadroid, as I think you tried with more success than me. Could you post your initrd.gz?
Many thanks
The Following 3 Users Say Thank You to Robbie P For This Useful Post: [ View ]
28th April 2012, 04:05 AM   |  #7  
elesbb's Avatar
Senior Member
Thanks Meter: 4,439
 
6,897 posts
Join Date:Joined: Jun 2010
Donate to Me
More
I have a question, can i just take the "lib" directory from the CM9 ROM and add it to the AOKP build you made xlo? would that work? since they are both based off of CM9?
28th April 2012, 04:10 AM   |  #8  
OP Recognized Contributor
Flag Shanghai
Thanks Meter: 2,764
 
763 posts
Join Date:Joined: Aug 2010
Donate to Me
Quote:
Originally Posted by elesbb

I have a question, can i just take the "lib" directory from the CM9 ROM and add it to the AOKP build you made xlo? would that work? since they are both based off of CM9?

I don't know, you can hack it by yourself
The Following 3 Users Say Thank You to securecrt For This Useful Post: [ View ]
28th April 2012, 07:39 AM   |  #9  
famewolf's Avatar
Senior Member
Thanks Meter: 412
 
2,752 posts
Join Date:Joined: Jul 2006
Quote:
Originally Posted by tytung

+1

@securecrt:
Congratulation that you have added HWA feature to the 2.6.32 kernel.
But I suggest that you may consider re-uploading another version including all the old commits and your changes.

Edit:
Or share your changes by executing "git diff > HWA.diff" or "git format-patch -o HWA.patch".

Tytung,

Please make a note that the securecrt kernel DOES work with usb tethering via the wired-tether 1.4 apk where your kernel does not. Perhaps this might help in debugging the issue? "normal" usb tethering brings up the rndis device (your kernel returns a -1 return code at that point) but fails to send or receive data...the wired tether apk gets around the issue and works as normal usb tether should.
28th April 2012, 08:00 AM   |  #10  
OP Recognized Contributor
Flag Shanghai
Thanks Meter: 2,764
 
763 posts
Join Date:Joined: Aug 2010
Donate to Me
I have seen some of the ROM Devs are working on the HWA ICS ROMs . It is really a good start point.

Today is new life for HD2.

Cheers.

The Following 24 Users Say Thank You to securecrt For This Useful Post: [ View ]
Post Reply Subscribe to Thread

Tags
hd2 hwa kernel ics jellybean cm9 cm10
Previous Thread Next Thread
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes