• After 15+ years, we've made a big change: Android Forums is now Early Bird Club. Learn more here.

So you want to upgrade your kernel?

Status
Not open for further replies.
G

g60madman

Guest
Well shit who doesn't? I for one need to for the Samsung Victory. So what does it entail? So far it doesn't seem too bad and actually really easy especially if you know how to copy and paste and open files. So get ready ctrl+c and ctrl+v

http://docs.blackfin.uclinux.org/doku.php?id=linux-kernel:customizing_for_your_board

The breakdown is you simply need to copy out your boards from your current kernel and replace them in the new kernel. Right now I am taking the stock kernel from Samsung Victory (gogh-vmu) and copying out the board. You will need to copy all of them for wifi, usb, you know all the drivers. The sweet thing is they are located in the Makefile located in your hardware, so since this is an msm it's located in

kernel_folder/arch/arm/mach-msm/Makefile

also you need to copy the Kconfig for your board, along with the deconfig file from kernel_folder/arch/arm/configs/youboardname_deconfig

Sounds to good to be true but so far it is. I also started with the vanilla kernel taken from here

$ git clone git://codeaurora.org/quic/la/kernel/msm -b jb_2.5

Once downloaded you can edit the .git/config and replace it with your url with your github new repo in my case it's listed as url = git@github.com:vmobi-goghvmu/android_kernel_msm.git

Code:
[core]
	repositoryformatversion = 0
	filemode = true
	bare = false
	logallrefupdates = true
[remote "origin"]
	fetch = +refs/heads/*:refs/remotes/origin/*
	url = git@github.com:vmobi-goghvmu/android_kernel_msm.git
[branch "jb_2.5"]
	remote = origin
	merge = refs/heads/jb_2.5

Nice thing is when you push back up you will have all the commits from codeaurora as seen here (yeah I renamed it already after my first push but whatever)

https://github.com/vmobi-goghvmu/android_kernel_samsung_gogh/commits/jb_2.5

Anyways I am still working on this so if I run into stuff I will post on it but so far I still have a bunch to copy and paste.

Good luck, and post away if you have questions!
 
It was going pretty well until I hit this error.

HTML:
[HIGH]CC      arch/arm/mach-msm/board-msm7x30.o
/home/phenomx4/ics/kernel/lge/msm-ics/arch/arm/mach-msm/board-msm7x30.c: In function 'pm8058_gpios_init':
/home/phenomx4/ics/kernel/lge/msm-ics/arch/arm/mach-msm/board-msm7x30.c:196: error: variable 'sdcc_det' has initializer but incomplete type
/home/phenomx4/ics/kernel/lge/msm-ics/arch/arm/mach-msm/board-msm7x30.c:197: error: unknown field 'direction' specified in initializer
/home/phenomx4/ics/kernel/lge/msm-ics/arch/arm/mach-msm/board-msm7x30.c:197: warning: excess elements in struct initializer
error, forbidden warning: board-msm7x30.c:197
make[3]: *** [arch/arm/mach-msm/board-msm7x30.o] Error 1
make[2]: *** [arch/arm/mach-msm] Error 2
make[2]: *** Waiting for unfinished jobs....
make[1]: *** [sub-make] Error 2
make[1]: Leaving directory `/home/phenomx4/ics/kernel/lge/msm-ics'
make: *** [TARGET_KERNEL_BINARIES] Error 2
phenomx4@phenomx4-desktop:~/ics$ 
[/HIGH]
Any ideas?
 
Upvote 0
It was going pretty well until I hit this error.

HTML:
[HIGH]CC      arch/arm/mach-msm/board-msm7x30.o
/home/phenomx4/ics/kernel/lge/msm-ics/arch/arm/mach-msm/board-msm7x30.c: In function 'pm8058_gpios_init':
/home/phenomx4/ics/kernel/lge/msm-ics/arch/arm/mach-msm/board-msm7x30.c:196: error: variable 'sdcc_det' has initializer but incomplete type
/home/phenomx4/ics/kernel/lge/msm-ics/arch/arm/mach-msm/board-msm7x30.c:197: error: unknown field 'direction' specified in initializer
/home/phenomx4/ics/kernel/lge/msm-ics/arch/arm/mach-msm/board-msm7x30.c:197: warning: excess elements in struct initializer
error, forbidden warning: board-msm7x30.c:197
make[3]: *** [arch/arm/mach-msm/board-msm7x30.o] Error 1
make[2]: *** [arch/arm/mach-msm] Error 2
make[2]: *** Waiting for unfinished jobs....
make[1]: *** [sub-make] Error 2
make[1]: Leaving directory `/home/phenomx4/ics/kernel/lge/msm-ics'
make: *** [TARGET_KERNEL_BINARIES] Error 2
phenomx4@phenomx4-desktop:~/ics$ 
[/HIGH]
Any ideas?

Line 196 of /home/phenomx4/ics/kernel/lge/msm-ics/arch/arm/mach-msm/board-msm7x30.c is looking for a type to know what the variable 'sdcc_det' can return. It should be set before the variable is declared.

What is the source for your kernel? At the top of the *.c files there is an include set for the headers (*.h) It can be setup in either set.
 
Upvote 0
Line 196 of /home/phenomx4/ics/kernel/lge/msm-ics/arch/arm/mach-msm/board-msm7x30.c is looking for a type to know what the variable 'sdcc_det' can return. It should be set before the variable is declared.

What is the source for your kernel? At the top of the *.c files there is an include set for the headers (*.h) It can be setup in either set.

I just end up with endless errors. Looks like I'm sticking with 2.6 for now.
 
Upvote 0
Status
Not open for further replies.

BEST TECH IN 2023

We've been tracking upcoming products and ranking the best tech since 2007. Thanks for trusting our opinion: we get rewarded through affiliate links that earn us a commission and we invite you to learn more about us.

Smartphones