Hey guys,
So I've been searching around for a while now and I could not find any updated guide on porting/building custom kernels. I need a lot of help for this, as I am completely new and do not know anything to do with kernel stuff. I do my part by finding out whats a ramdisk and stuff, but please pardon me if I ask very stupid questions which may give you cancer.
I asked quite a few people, but all those don't reply. I won't list names, but just to let you know I tried.
Anyways, my problem here is I want to port a kernel which isn't available for my device, i9305. First kernel I want to try porting is boeffla kernel. Here is the repo --> https://github.com/n0aaz/boeffla-kernel-cm-s3/tree/boeffla13.0_u600 I am continuing off @aaz03 's work, as his laptop spoilt or something. In the first place, when I tried to use the script bbuild.sh, the terminal window immediately closes after a bunch of stuff happened and I cannot find the .zip. I don't even know if there's an error in building because terminal window immediately closes after a huge bunch of text showed up
I would also want to port other kernels in the future but I guess I'll get some basic knowledge of kernels first.
Thanks,
limjh16
limjh16 said:
Hey guys,
So I've been searching around for a while now and I could not find any updated guide on porting/building custom kernels. I need a lot of help for this, as I am completely new and do not know anything to do with kernel stuff. I do my part by finding out whats a ramdisk and stuff, but please pardon me if I ask very stupid questions which may give you cancer.
I asked quite a few people, but all those don't reply. I won't list names, but just to let you know I tried.
Anyways, my problem here is I want to port a kernel which isn't available for my device, i9305. First kernel I want to try porting is boeffla kernel. Here is the repo --> https://github.com/n0aaz/boeffla-kernel-cm-s3/tree/boeffla13.0_u600 I am continuing off @aaz03 's work, as his laptop spoilt or something. In the first place, when I tried to use the script bbuild.sh, the terminal window immediately closes after a bunch of stuff happened and I cannot find the .zip. I don't even know if there's an error in building because terminal window immediately closes after a huge bunch of text showed up
I would also want to port other kernels in the future but I guess I'll get some basic knowledge of kernels first.
Thanks,
limjh16
Click to expand...
Click to collapse
Told you in private : launch the script using
Code:
sudo ./bbuild.sh
The terminal closing problem is due to a syntax error.
Also the kernel, first time I managed to build it was booting, not working, it booted until lockscreen and then immediately bootloop. Will upload the faulty kernel for those who want to try, for every dev/contributer that can help please come and let us make a glorious boeffla kernel
The boeffla I built is from zanezam's custom for i9300 and everything is on my github.
EDIT: make a thread in i9305 Q&A, no one gives a shirt about i9305 here and we will be more visible to i9305 users
aaz03 said:
Told you in private : launch the script using
Code:
sudo ./bbuild.sh
The terminal closing problem is due to a syntax error.
Also the kernel, first time I managed to build it was booting, not working, it booted until lockscreen and then immediately bootloop. Will upload the faulty kernel for those who want to try, for every dev/contributer that can help please come and let us make a glorious boeffla kernel
The boeffla I built is from zanezam's custom for i9300 and everything is on my github.
EDIT: make a thread in i9305 Q&A, no one gives a shirt about i9305 here and we will be more visible to i9305 users
Click to expand...
Click to collapse
Nope, I tried and the terminal still dies.
Anyways I posted here because not only boeffla I also want to port AK. But boeffla first since the "base" has been set I guess...
edit: I'll make a thread in i9305 Q&A tmr, no time today.
limjh16 said:
Nope, I tried and the terminal still dies.
Anyways I posted here because not only boeffla I also want to port AK. But boeffla first since the "base" has been set I guess...
edit: I'll make a thread in i9305 Q&A tmr, no time today.
Click to expand...
Click to collapse
Here the booting boeffla I built : https://mega.nz/#!PEh2mTCL!jvkZ-xaDXiMlymTUMxeObZ471-d_9kCGP2xAYF67Pmw it will probably help
Hello,
I asked Boeffla once and he told me to pick all commits from his Boeffla Kernel to your kernel. At your site, I would start with adding some custom Governos. And after that pick some schedulers.
Clone your kernel (git clone)
Fetch the other kernel repo (git fetch)
Pick the commit (git cherrz-pick)
Push the commit (git push)
Then you will see n0aaz committed with Trafalgar-Square (your username) on date in GitHub.
Trafalgar Square said:
Hello,
I asked Boeffla once and he told me to pick all commits from his Boeffla Kernel to your kernel. At your site, I would start with adding some custom Governos. And after that pick some schedulers.
Clone your kernel (git clone)
Fetch the other kernel repo (git fetch)
Pick the commit (git cherrz-pick)
Push the commit (git push)
Then you will see n0aaz committed with Trafalgar-Square (your username) on date in GitHub.
Click to expand...
Click to collapse
Yeah I agree this is a normal procedure for a kernel port but for us it isn't really a port as the i9300 and the i9305 share the same smdk4412 source with very few differences so you can easily recycle the folder and I take as proof that it is booting. Plus I have zero knowledge about standalone kernel building so I'm happy with the boeffla building script...
Related
Hello! I just recently got a brand new MyTouch4GSlide ($5 from t-mobile xD) Anyhow since the lack of development going on for this phone I decided to join in and do my part... My original plan was to create a simple CM7 Kernel with support for UV and OC + Smartass... I have successfully in the past week set up my ubuntu virtual machine, kernel source, kitchen (boot.img extract/compile), voltage table & have successfully compiled a custom working kernel for my device, but i just need a bit of help.... I have 3 specific questions wich hopefully someone will be able to answer so I may get better with developing and continue developing in the future...
1) Adding new frequencies to the kernel
-I have created my voltage table and have added it to the file acpuclock-8x60.c (Which is corresponding to my device) located in /arch/arm/mach-msm O have also disabled the performance lock in the .config file using the make menuconfig command but when I compile the kernel and flash it setcpu does not recognize the frequencies... Did I not edit the correct file? Am I missing a lock placed by HTC somewhere else?
2) Adding Smartass
-I have found 1 source for the smartass module but whenever I try to compile the module I get #define OFS_KALLSYMS_LOOKUP_NAME 0xc009684c // kallsyms_lookup_name any reason why this is? am I using the wrong source? is there an easier way?
3) WiFi Module
-Whenever I compile my kernel the WiFi does not turn on... Probably because I have not compiled a Wifi module -_- but how can I compile a WiFi module? do I use the same source as the kernel? how would I go about doing this? how do I pack it with the boot.img?
Thats all for now... I shall edit this if I have more questions... I shall constantly be checking this thread hoping for some responses... I am eager to get this working!
Thanks in advanced! ~GiGoO
P.S. If you want you may add me on Skype if you would like to help me with this xD (robster105)
gigoo25 said:
Hello! I just recently got a brand new MyTouch4GSlide ($5 from t-mobile xD) Anyhow since the lack of development going on for this phone I decided to join in and do my part... My original plan was to create a simple CM7 Kernel with support for UV and OC + Smartass... I have successfully in the past week set up my ubuntu virtual machine, kernel source, kitchen (boot.img extract/compile), voltage table & have successfully compiled a custom working kernel for my device, but i just need a bit of help.... I have 3 specific questions wich hopefully someone will be able to answer so I may get better with developing and continue developing in the future...
1) Adding new frequencies to the kernel
-I have created my voltage table and have added it to the file acpuclock-8x60.c (Which is corresponding to my device) located in /arch/arm/mach-msm O have also disabled the performance lock in the .config file using the make menuconfig command but when I compile the kernel and flash it setcpu does not recognize the frequencies... Did I not edit the correct file? Am I missing a lock placed by HTC somewhere else?
2) Adding Smartass
-I have found 1 source for the smartass module but whenever I try to compile the module I get #define OFS_KALLSYMS_LOOKUP_NAME 0xc009684c // kallsyms_lookup_name any reason why this is? am I using the wrong source? is there an easier way?
3) WiFi Module
-Whenever I compile my kernel the WiFi does not turn on... Probably because I have not compiled a Wifi module -_- but how can I compile a WiFi module? do I use the same source as the kernel? how would I go about doing this? how do I pack it with the boot.img?
Thats all for now... I shall edit this if I have more questions... I shall constantly be checking this thread hoping for some responses... I am eager to get this working!
Thanks in advanced! ~GiGoO
P.S. If you want you may add me on Skype if you would like to help me with this xD (robster105)
Click to expand...
Click to collapse
Hey Rob, I wish you the best of luck and don't give up!
The one thing I can say is when I was compiling my own kernels a while back and when I was trying to do the exact same thing and add different frequencies, if I remember correctly, there is a couple files that need to be changed, not just one, but don't quote me on that
I would also try getting help from other phone developers too. Post in the Q&A section of the phones, you might get more help that way.
Other then that good luck!
Questions or Problems Should Not Be Posted in the Development Forum
Please Post in the Correct Forums
Moving to Q&A
Hey,
first excuse me when this is the wrong section :-x
But since it might be a general problem which is not related to the Device, I thought I might should post it here.
Just a week ago I bought a new Laptop and moved all my (windows) stuff over there.
Since Im a programmer for C# and C++ for over 5 years now, I installed Ubuntu 12.10 on my Old Laptop and wanted to start messing with Android, CyanogenMod 10.1 to be specific.
But I came up with a few Problems and questions ...
I have a few questions regarding Building CM10.1 for the Samsung Galaxy S3 GT-I9300 (international) and some which might be general to building from Source.
Every time I close a Terminal window in Ubuntu 12.10 and open one again, I have to execute "envsetup.sh" all over again, to use the "croot" command or anything related to building. Is there a way to ( more or less ) integrate that into Ubuntu ?
Right now I got the CM10.1 Source tree located in the specified location the Wiki states. How do I cherry pick Changes from Gerrit effectively ? Sure, the easiest way would be to Copy&Paste the Code, but is there any way to keep the changes after "repo sync" and keep track of additional patch sets that have been added, which might be required ?
Like I said I have problems building CM10.1 for my (german) i9300. Booting is well, everything running like on the Nightlies, but the Radio is "missing", just like the IMEI and IMEI SV. Ive tried to google the issue but dont get anything clear, I also followed every point in their Wiki but dont get any further. How do I fix this ?
Whats the average time when you build CM10.1 ? Is about 1 1/2 Hours good ?
Again, Im sorry if this is the wrong section or anything I can find here, but I might searched for the wrong things and came up with Hundreds of Threads, none related to my issues ( related to building ).
Thank you in advance
v3n3 said:
Hey,
first excuse me when this is the wrong section :-x
But since it might be a general problem which is not related to the Device, I thought I might should post it here.
Just a week ago I bought a new Laptop and moved all my (windows) stuff over there.
Since Im a programmer for C# and C++ for over 5 years now, I installed Ubuntu 12.10 on my Old Laptop and wanted to start messing with Android, CyanogenMod 10.1 to be specific.
But I came up with a few Problems and questions ...
I have a few questions regarding Building CM10.1 for the Samsung Galaxy S3 GT-I9300 (international) and some which might be general to building from Source.
Every time I close a Terminal window in Ubuntu 12.10 and open one again, I have to execute "envsetup.sh" all over again, to use the "croot" command or anything related to building. Is there a way to ( more or less ) integrate that into Ubuntu ?
Right now I got the CM10.1 Source tree located in the specified location the Wiki states. How do I cherry pick Changes from Gerrit effectively ? Sure, the easiest way would be to Copy&Paste the Code, but is there any way to keep the changes after "repo sync" and keep track of additional patch sets that have been added, which might be required ?
Like I said I have problems building CM10.1 for my (german) i9300. Booting is well, everything running like on the Nightlies, but the Radio is "missing", just like the IMEI and IMEI SV. Ive tried to google the issue but dont get anything clear, I also followed every point in their Wiki but dont get any further. How do I fix this ?
Whats the average time when you build CM10.1 ? Is about 1 1/2 Hours good ?
Again, Im sorry if this is the wrong section or anything I can find here, but I might searched for the wrong things and came up with Hundreds of Threads, none related to my issues ( related to building ).
Thank you in advance
Click to expand...
Click to collapse
Answer's here
1)no you cant integrate that into ubuntu ..ps why do you need to integrate something which is just a line to type....
2)for cherry picking commits you can do git am or download the diff patch .. if you repo is frameworks base then copy that patch to frameworks/base cd into frameworks/base and type git patch -p1 and drag the dif patch on to the terminal and hit enter
3)u can use boardconfig flags to make use of stock radio, go through boardconfigs of different devices..
4)for me it takes 2hrs to build gb and 3-4 hours of ics..really i have a crap pc it depends on your processing power ..you could make use of make -j4 if you havent yet ..but it the build gets crashed reduce the number next to j like j3 or j2..
Hello everyone, I'm trying to compile a version of CM10.1 with Linaro Toolchain, but so far only managed to set the Linaro for part of the ROM (JAVA), while for the Kernel (C/C++) has not been successful.
In the link below, infected_ posted a brief tutorial on how to configure the environment to use Linaro, but only for part of the ROM (and works well :good. As for the kernel, it was unclear how to perform the configuration.
http://forum.xda-developers.com/showpost.php?p=42976693&postcount=12
Could anyone give me some help on how to configure Linaro to compile the Kernel CM10.1 along with the rest of the ROM?
Before someone politely send me to Google... I searched and got many errors... (I even "kill" my phone, but already revived her.).
Note: I have no interest in publishing my work, I'm just looking for knowledge because I am very curious!
New informations about Linaro configurations to compile the CM10.1 Kernel released by infected_:
http://forum.xda-developers.com/showpost.php?p=43649447&postcount=449
All information gathered here are authored by infected_, then give thanks to him!:good:
Sorry for my English and thank you!:highfive:
Someone, somewhere?
Ask the devs on here to help you mate. A few on here using that way of building . Im sure they will help out. Just ask really nice :thumbup:
andrewwright said:
Ask the devs on here to help you mate. A few on here using that way of building . Im sure they will help out. Just ask really nice :thumbup:
Click to expand...
Click to collapse
Thank you my friend, I tried to ask a few things for some devs via PM, but usually they do not respond, because there are many requests all the days.
I found it interesting to create this topic because I've seen some people with the same question that I, and perhaps could be kept here a discussion.
But anyway I appreciate your interest!:good:
To be honest mate that sounds like a great idea. Keep trying pms and when you have compiled a working rom come bk and tells us (me) how. Soon im going to build a rom and am looking for all the info I can get on it. If I find what you need il come bk here. I read its smoother ui and better battery this way. It that why you choose this way of building?
Precisely, I read about it, and as I understand, when using Linaro Toochain, we get a gain of over 30% in performance, but I believe that the secret of all this performace is in the compilation of Kernel. And it is this part that I "got stuck" hehehe...
Currently my environment works well with Linaro Toochain 4.8-13.06 (compiling part of the ROM), and with Official Google GCC 4.7 (compiling the kernel).
At that moment I did not notice a significant gain in performance compared to the CM10.1 Official Nightly Builds.
Hi all,
In short i want to modify Android 4.2.2 on my MK802IIIS to allow me to use an external USB WIFI Adapter. The one i have uses a Ralink (MediaTek) RT5372 chipset.
I'm not a beginner, but by no means an expert. I have compiled firmware for my Linux based routers. But compiling Android, or parts of, seems much more complicated. I only want to add support for a USB adapter. Do i need to build the kernel from scratch, or can i create a module? Do i need to cross compile a module or can it be "made" in Ubunutu and just copied across?
I have searched for a RT5372.ko file online, finding references to RT5370, but i dont think it's the same.
I downloaded the driver from the Mediatek website and proceeded to attempt to create a .ko file by making it in Ubuntu but it only created a RT5372STA.dat file. Does this driver need to be cross compilied for android? Also how do i turn it in to a module that i can just load into my currently installed ROM?
I have been poking around for a while so i havent covered everhything i've tried. I'd really like to understand how building for Android works. If anyone can answer any of these questions for me, it'd help me imensely. Or if there is a resource covering these topics that i have yet to come across please point me at it. I know there are a lot of very detailed How-To's for compliling but i seem to get lost with the amount of detail.
Many thanks
More info regarding my setup:
Building in Ubuntu 14.04, 64bit.
The current ROM appears to have been built using the Linaro 4.6.2 toolchain, so u have downloaded that, currently stored in /home/wriggerz/RK3066/Toolchains
Also downloaded the RK3066 Kernel Source, stored in /home/wriggerz/RK3066/RK3066-Kernel
The RT5372 driver has been extracted to /home/wriggerz/RT5572NEW
I've been mashing bits of different guides and suggestions found on other forums together to try and frankenstien this KO module. From within the drivers folder i ran the two commands below. From what i've read this needs to be done to specify which "Toolchain" and "Compiler" to use.
Code:
export CROSS_COMPILE=~/home/wriggerz/rk3066/toolchains/arm-eabi-linaro-4.6.2/bin/arm-eabi-
export ARCH=arm
Then i ran the make command like below to try and have the driver built for the correct Toolchain with the correct Compiler:
Code:
make ARCH=arm CROSS_COMPILE=arm-eabi-linaro-4.6.2
However i get the following response:
Code:
make -C tools
make[1]: Entering directory `/home/wriggerz/RT5572NEW/tools'
gcc -g bin2h.c -o bin2h
make[1]: Leaving directory `/home/wriggerz/RT5572NEW/tools'
/home/wriggerz/RT5572NEW/tools/bin2h
cp -f os/linux/Makefile.6 /home/wriggerz/RT5572NEW/os/linux/Makefile
make -C /lib/modules/3.16.0-30-generic/build SUBDIRS=/home/wriggerz/RT5572NEW/os/linux modules
make[1]: Entering directory `/usr/src/linux-headers-3.16.0-30-generic'
Makefile:652: Cannot use CONFIG_CC_STACKPROTECTOR_REGULAR: -fstack-protector not supported by compiler
make[1]: arm-eabi-linaro-4.6.2-gcc: Command not found
CC [M] /home/wriggerz/RT5572NEW/os/linux/../../common/crypt_md5.o
/bin/sh: 1: arm-eabi-linaro-4.6.2-gcc: not found
make[2]: *** [/home/wriggerz/RT5572NEW/os/linux/../../common/crypt_md5.o] Error 127
make[1]: *** [_module_/home/wriggerz/RT5572NEW/os/linux] Error 2
make[1]: Leaving directory `/usr/src/linux-headers-3.16.0-30-generic'
make: *** [LINUX] Error 2
Someone knowledgeable will hopefully look at the steps i have just taken to rip it to shreds...... :fingers-crossed:
If not, is there anyone with any ideas of where i'm going wrong?
I think i've put this in the wrong section....
If anyone has to go out of their way to move it they have my sincere apologies.
J Double You said:
I think i've put this in the wrong section....
If anyone has to go out of their way to move it they have my sincere apologies.
Click to expand...
Click to collapse
First of all, I would suggest to recompile the kernel and the entire source code (like when building CM), it is way better than insmodding modules every time, and you have less errors to solve. I'm currently writing a guide about building Cyanogenmod to support awus036h wireless adapter, maybe I can have a look for yours too, shouldn't be too hard. There are two or there good references around, however I'm trying to out all of them together in this new one I want to publish. Hope this will help you too.
Don't download a .KO from internet, it's not going to work. You would not only need to build for the specific device, but also for the specific kernel, which may vary from build to build, that's why I recommend to compile the whole kernel. Please consider to download a ROM's source code or your device kernel.
Ciuffy's SM-G900F CM 12.1 spirit hath marked this way. Thank if helped your soul.
Thanks for the helpful response Ciuffy.
Before i ask any more potetnially stupid questions i will do some research on that approach. I look forward to seeing your guide. For now i may be back for some direction.
Thanks again
I do like the ROM i'm on at the minute. NeoTV CR 2.0 (4.2.2), works really well, snappier than others i;ve tried and the benchmark results are pretty good too, but there are a couple of issues with it:
Busybox isnt installed and doesnt install.
Commands dont seem to work in terminal.
Now it doesnt really matter, as i wont be Insmodding the driver now, but it would be nice to have. How do i stay as cose to my current ROM as possible while re-compiling? Do i need to contact the ROM creator and ask them for the source? Should it be available on the web somewhere? Or can i "rip" it off the device? My main goal is to add driver support to the kernel from the drivers srouce files. But it would be nice to have busybox installed too. Was thinking i might re-comile the whole rom, but that be like trying to run before i can stand..... But, learning is amazing, and i learn best by doing!!
Main question: Whats the easiest way to re-compile my current kernel? Do i need source files from the ROM creator? I have asked but havent had a repsonse yet, but it's only been about 16 hours, not even that.
J Double You said:
I do like the ROM i'm on at the minute. NeoTV CR 2.0 (4.2.2), works really well, snappier than others i;ve tried and the benchmark results are pretty good too, but there are a couple of issues with it:
Busybox isnt installed and doesnt install.
Commands dont seem to work in terminal.
Now it doesnt really matter, as i wont be Insmodding the driver now, but it would be nice to have. How do i stay as cose to my current ROM as possible while re-compiling? Do i need to contact the ROM creator and ask them for the source? Should it be available on the web somewhere? Or can i "rip" it off the device? My main goal is to add driver support to the kernel from the drivers srouce files. But it would be nice to have busybox installed too. Was thinking i might re-comile the whole rom, but that be like trying to run before i can stand..... But, learning is amazing, and i learn best by doing!!
Main question: Whats the easiest way to re-compile my current kernel? Do i need source files from the ROM creator? I have asked but havent had a repsonse yet, but it's only been about 16 hours, not even that.
Click to expand...
Click to collapse
Definetely, you should find the kernel source code, I think you can find it on Github, I'll give a look at it. I honestly don't think you can reverse engineer the kernel and recompile it.
Edit: I can't seem to find it. It is also possibile that the source code was not released.
Ciuffy's SM-G900F CM 12.1 spirit hath marked this way. Thank if helped your soul.
Stupid Question: Is the SDK the same thing as the source?
If so i think i found what i need to build from scratch here: http://www.cnx-software.com/2013/08/20/rockchip-rk3066-android-4-2-2-hdmi-tv-stick-sdk-leaked/
If thats right, i need to find a way to add the driver i found to the source so it's included in the compilation.
Boom, think i found my base... And answered my previous question. SDK is not source.
http://freaktab.com/forum/tv-player...73-full-1080p-modded-kit-kat-4-4-2-rk3066-rom
The OP kindly links to the kernel source.
Apologies for spamming my own thread, i like to keep anyone watching up to date with progress so they dont waste their time replying to old stuff.
J Double You said:
Boom, think i found my base... And answered my previous question. SDK is not source.
http://freaktab.com/forum/tv-player...73-full-1080p-modded-kit-kat-4-4-2-rk3066-rom
The OP kindly links to the kernel source.
Apologies for spamming my own thread, i like to keep anyone watching up to date with progress so they dont waste their time replying to old stuff.
Click to expand...
Click to collapse
SDK stands for Software Development Kit, in other words the environment that lets you build applications and related for a specific platform.
So, you found the source you were looking for?
Ciuffy's SM-G900F CM 12.1 spirit hath marked this way. Thank if helped your soul.
Sure did, i also now know which compiler i need.... arm-linux-gnueabi-4.7.
Now to find out how to add the driver i have downloaded to the kernel.
From what i've read i need to "make" the driver, cross compiling in the process, then put some of the resulting files in situ within the kernel source. (along these lines: http://stackoverflow.com/questions/11710022/adding-new-driver-code-to-linux-source-code).
J Double You said:
Sure did, i also now know which compiler i need.... arm-linux-gnueabi-4.7.
Now to find out how to add the driver i have downloaded to the kernel.
From what i've read i need to "make" the driver, cross compiling in the process, then put some of the resulting files in situ within the kernel source. (along these lines: http://stackoverflow.com/questions/11710022/adding-new-driver-code-to-linux-source-code).
Click to expand...
Click to collapse
Excuse me, are you then going to compile the enitre kernel? Waiting for your answer, there should be an easier way to do this.
Ciuffy's SM-G900F CM 12.1 spirit hath marked this way. Thank if helped your soul.
I was going to, based on your suggestion to compile from scratch, but i have most likely mis-understood what it was you were getting at.
Also, i have downloaded a bunch of toolchains and i have arm-linux-androideabi-4.7, but is that the same as arm-linux-gnueabi-4.7
Again, i could be barking up the completely wrong tree. Which is a shame, as i thought i was actually getting somewhere..... hahaha!
As always, your continued input is greatly appreciated Ciuffy.
J Double You said:
As always, your continued input is greatly appreciated Ciuffy.
Click to expand...
Click to collapse
Yes, I was in fact suggesting you to build from scratch, thinking you could include modules for your adapter in the kernel configuration. However, I can't find what kernel module is exactly going to do it. I found rt2800usb, however I am not sure. You may try to include support for rt2800 and also build the kernel module from the driver source code, as explained in that link for example.
Ciuffy's SM-G900F CM 12.1 spirit hath marked this way. Thank if helped your soul.
Ciuffy said:
Yes, I was in fact suggesting you to build from scratch, thinking you could include modules for your adapter in the kernel configuration. However, I can't find what kernel module is exactly going to do it. I found rt2800usb, however I am not sure. You may try to include support for rt2800 and also build the kernel module from the driver source code, as explained in that link for example.
Ciuffy's SM-G900F CM 12.1 spirit hath marked this way. Thank if helped your soul.
Click to expand...
Click to collapse
Ah.... I have downloaded the Linux driver from the MediaTek websitefor the RT5372, but it needs "making". Would cross compiling the driver not give me the modules i need to load in to the kernel?
That link explains how to add the required files, but doesnt explain how they're created. I dont think....
J Double You said:
Ah.... I have downloaded the Linux driver from the MediaTek websitefor the RT5372, but it needs "making". Would cross compiling the driver not give me the modules i need to load in to the kernel?
That link explains how to add the required files, but doesnt explain how they're created. I dont think....
Click to expand...
Click to collapse
If by cross compiling you mean building the kernel module while also compiling the source code and then loading it in the running kernel, yes, as long as you downloaded the drivers compatible with the Linux kernel on your Android.
You can either use the instruction on that link on StackExchange, or follow the "How to build them?" section here:
http://forum.xda-developers.com/showthread.php?t=1455382
Ciuffy's SM-G900F CM 12.1 spirit hath marked this way. Thank if helped your soul.
Thanks Ciuffy.
Seems i've still got some stuff to get my head around. I'll re-read up and come back.
FAIL!!!
Tried flashing the unit with the ROM i was going to compile a kernel for. Looked to go well, but wouldn't boot past the boot splash screen. And after rebooting wouldnt boot at all. Obviously some fundamental incompatibility, or the fact that it cant handle the overclock....
Problem is i have previously broken the OTG port so i have no way to flash using ADB, not until i get a cable soldered in it's place.
Really just wanted to explain why i may be absent from this topic for a bit. I'm going to make some calls to see if any nearby electronics shops can do the job. Once done i'll be back.
J Double You said:
FAIL!!!
Tried flashing the unit with the ROM i was going to compile a kernel for. Looked to go well, but wouldn't boot past the boot splash screen. And after rebooting wouldnt boot at all. Obviously some fundamental incompatibility, or the fact that it cant handle the overclock....
Problem is i have previously broken the OTG port so i have no way to flash using ADB, not until i get a cable soldered in it's place.
Really just wanted to explain why i may be absent from this topic for a bit. I'm going to make some calls to see if any nearby electronics shops can do the job. Once done i'll be back.
Click to expand...
Click to collapse
In case you misunderstood: I just wanted to point out that once compiled the kernel modules along with the kernel, you don't keed to flash the kernel, only insmod the modules.
Hope you can solve the OTG problem, waiting for your response.
Ciuffy's SM-G900F CM 12.1 spirit hath marked this way. Thank if helped your soul.
Is there a custom kernel patched for Nethunter available for the v30?
A moderate browsing suggests that there isn't one already available. How difficult would it be to do this on my own? Im decent on a command line, I've got the time to teach myself how it is done, and Im not too afraid of borking my phone.
Are there guides, kitchens, or the like for doing this? Is there anyone who can point me in the right direction, and doesn't mind the occasional question or two (I don't really want someone to do it for me- I'd like to learn a skill I can use in the future as well)?
Thanks.
This is leading nowhere
First you guys asking for kali nethunter "custom kernel" need to clarify what Nethunter even is (the differences from e.g. a LineageOS 15.1 or dot os 2.6 Android Oreo custom ROM build) and what it would require to get it running in the V30
Also: why changes or features are needed from the kernel side
otherwise it's like turning in circles and the dog chasing its tail ...
zacharias.maladroit said:
This is leading nowhere
First you guys asking for kali nethunter "custom kernel" need to clarify what Nethunter even is (the differences from e.g. a LineageOS 15.1 or dot os 2.6 Android Oreo custom ROM build) and what it would require to get it running in the V30
Also: why changes or features are needed from the kernel side
otherwise it's like turning in circles and the dog chasing its tail ...
Click to expand...
Click to collapse
being flippant certainly will get you the answers you are looking for.
furthermore your reading ability is a bit sub-par, to be honest. I asked for a couple pointers on how to begin going about patching a kernel, myself.. Just pointers, or someone willing to let me bounce a couple questions off them. Being a **** is pointless here. I literally cannot tell you what is needed to get it up and running. Im starting at square one, chief.
Nethunter is Linux that runs in a chroot on top of android. It'll run as-is with a unmodified kernel, but to be able to put an external wifi adapter into monitor mode, you need a kernel patched to allow this.
If you don't have something constructive to offer, maybe next time g-g-go kick rocks dude. It takes soooo much *less* time to just not respond, than it does to fire off some half-assed reply because your reading context sucks eggs.
elijah420 said:
[snip]
Nethunter is Linux that runs in a chroot on top of android. It'll run as-is with a unmodified kernel, but to be able to put an external wifi adapter into monitor mode, you need a kernel patched to allow this.
[snap]
Click to expand...
Click to collapse
lol - sorry for the venting - there was lots of built-up anger at all the folks who just ask ask ask and don't do research on their own (probably not even knowing what kali is),
even with a custom kernel we won't get far thus more is needed - OP5 folks might have just what we need (as a good basis)
that's exactly what I needed (sorry my ranty post was kinda like venting anger and getting a reasonable answer to not lose faith in humanity, XDA isn't what it used to be)
pie_I_6_WIP9_11
the last 2 commits are what to be added to the kernel.
I've looked around but haven't found anything related to qcacld (our wifi driver) that would indicate it supports packet injection (perhaps need to look more) in any case thus OTG and usb-powered WiFi adapters would be needed
OP5 elementalx kali defconfig is the diff for OP5 elementalx kernel to get kali wifi drivers
with e.g. lunar kernel base other changes would be needed
When using Markus' kernel base (lineage-15.1 vanilla) - it probably would be easier for you to get there quickly: lineage-15.1
https://medium.com/@ruvoteka/how-to...-android-device-universal-method-32e58660d084
is a somewhat better explanation on how to install kali (non-func on our device currently)
https://forum.xda-developers.com/oneplus-5/development/burgerhunter-t3638810
should offer lots of valuable groundwork and git repos to work with
A good "training" would be to attempt to build a custom ROM (e.g. lineageOS 15.1) and a standalone kernel (either for LG stock or lineage-15.1) and see if both are able to boot
zacharias.maladroit said:
lol - sorry for the venting - there was lots of built-up anger at all the folks who just ask ask ask and don't do research on their own (probably not even knowing what kali is),
even with a custom kernel we won't get far thus more is needed - OP5 folks might have just what we need (as a good basis)
that's exactly what I needed (sorry my ranty post was kinda like venting anger and getting a reasonable answer to not lose faith in humanity, XDA isn't what it used to be)
pie_I_6_WIP9_11
the last 2 commits are what to be added to the kernel.
I've looked around but haven't found anything related to qcacld (our wifi driver) that would indicate it supports packet injection (perhaps need to look more) in any case thus OTG and usb-powered WiFi adapters would be needed
OP5 elementalx kali defconfig is the diff for OP5 elementalx kernel to get kali wifi drivers
with e.g. lunar kernel base other changes would be needed
When using Markus' kernel base (lineage-15.1 vanilla) - it probably would be easier for you to get there quickly: lineage-15.1
https://medium.com/@ruvoteka/how-to...-android-device-universal-method-32e58660d084
is a somewhat better explanation on how to install kali (non-func on our device currently)
https://forum.xda-developers.com/oneplus-5/development/burgerhunter-t3638810
should offer lots of valuable groundwork and git repos to work with
Click to expand...
Click to collapse
no problem. I understand. tone doesn't carry well via text sometimes, so things can get muddled.
I have a couple wifi adapters that support monitor mode. One uses the ath9k driver, and the other uses the rtl8812 driver. I had intended to use one of them (I use them currently with Kali in vbox on my desktop/laptop, so they are known good/working), whichever works best. one is a 11ac, the other 11n.
Does the stock kernel need recompiling with built in support for the wifi adapter/s? Is this the desired end result- a recompiled kernel with support for my particular wifi adapter?
Im going thru the links you posted, currently.
zacharias.maladroit said:
A good "training" would be to attempt to build a custom ROM (e.g. lineageOS 15.1) and a standalone kernel (either for LG stock or lineage-15.1) and see if both are able to boot
Click to expand...
Click to collapse
Im willing to learn how to do this, first. Are there some decent up to date guides that I can follow? Is there a subforum here for this, that I can follow/subscribe to for this?
elijah420 said:
no problem. I understand. tone doesn't carry well via text sometimes, so things can get muddled.
I have a couple wifi adapters that support monitor mode. One uses the ath9k driver, and the other uses the rtl8812 driver. I had intended to use one of them (I use them currently with Kali in vbox on my desktop/laptop, so they are known good/working), whichever works best. one is a 11ac, the other 11n.
Does the stock kernel need recompiling with built in support for the wifi adapter/s? Is this the desired end result- a recompiled kernel with support for my particular wifi adapter?
Im going thru the links you posted, currently.
Click to expand...
Click to collapse
thanks for understanding, agreed - solely text can be pretty prone for misunderstandings
yeah, that's the gist of it
however from the looks of it e.g. SYSVIPC is deprecated and not sure if relay fs (config_relay) is really needed, also options below CONFIG_QCA_CLD_WLAN probably don't need changes at all (might break the wifi of the phone itself)
also CONFIG_USB_G_ANDROID isn't selected in the new config and the f_hid.o and usb_f_hid.o might clash/broken with the patched up state without that config entry being selected
besides that the other config changes might be okay ( OP5_elementalx_kali_defconfig.diff )
elijah420 said:
Im willing to learn how to do this, first. Are there some decent up to date guides that I can follow? Is there a subforum here for this, that I can follow/subscribe to for this?
Click to expand...
Click to collapse
dotfiles that include needed mkbootimg and unpack_bootimg
copy over to ~/bin/
build_lunar.sh
lines out the steps to build a kernel as standalone
Sample steps for lineageos:
https://wiki.lineageos.org/devices/cheeseburger/build
steps are valid until "Download the source code" (including repo sync)
needed git repos for "joan" (V30) have lge in their name:
https://github.com/SGCMarkus?tab=repositories
mostly up to "Updated on May 27" (from the top = newest)
the repos below shouldn't be needed
Those need to be added to .repo/local/manifest.xml (or so, hope that is correct path & file name)
in xml syntax
XDA Y U NO MERGE POSTS ?
edit:
steps for current LineageOS 16.0 related source are:
Code:
export USE_CCACHE=1
export CACHE_DIR=~/.ccache
export KBUILD_BUILD_USER=zacharias.maladroit
export KBUILD_BUILD_HOST=BuildHost
export ARCH=arm64
export CROSS_COMPILE=aarch64-linux-gnu-
export PATH=~/android/toolchains/gcc-arm-8.2-2018.08-x86_64-aarch64-linux-gnu/bin/:$PATH
fakeroot make lineageos_h930_defconfig
fakeroot make -j8
Code:
mkbootimg --kernel arch/arm64/boot/Image.gz-dtb --ramdisk ~/android/final_files/ramdisks_V30_8.0/boot_lineage-16.0_20181118_h930_unpack_b/ramdisk --second /dev/null --cmdline "androidboot.hardware=joan user_debug=31 msm_rtb.filter=0x37 ehci-hcd.park=3 lpm_levels.sleep_disabled=1 sched_enable_hmp=1 sched_enable_power_aware=1 service_locator.enable=1 rcupdate.rcu_expedited=1 swiotlb=2048 androidboot.configfs=true androidboot.usbcontroller=a800000.dwc3 androidboot.selinux=permissive buildvariant=userdebug" --base 0x00000000 --kernel_offset 0x00008000 --ramdisk_offset 0x02200000 --second_offset 0x00f00000 --os_version 9.0.0 --os_patch_level 2018-11 --tags_offset 0x00000100 --board "" --pagesize 4096 --out ~/android/final_files/ramdisks_V30_8.0/test/H930_lineageOS-16.0_18.11.2018/boot
ramdisk from "stock" (LineageOS default) kernel was extracted via unpack_bootimg , mkbootimg is used to re-assemble the kernel
both are from dotfiles: https://github.com/luca020400/dotfiles/tree/master/bin
zacharias.maladroit said:
dotfiles that include needed mkbootimg and unpack_bootimg
copy over to ~/bin/
build_lunar.sh
lines out the steps to build a kernel as standalone
Sample steps for lineageos:
https://wiki.lineageos.org/devices/cheeseburger/build
steps are valid until "Download the source code" (including repo sync)
needed git repos for "joan" (V30) have lge in their name:
https://github.com/SGCMarkus?tab=repositories
mostly up to "Updated on May 27" (from the top = newest)
the repos below shouldn't be needed
Click to expand...
Click to collapse
thanks for the starting place. I've got plenty to chew on now for the time being.
elijah420 said:
being flippant certainly will get you the answers you are looking for.
furthermore your reading ability is a bit sub-par, to be honest. I asked for a couple pointers on how to begin going about patching a kernel, myself.. Just pointers, or someone willing to let me bounce a couple questions off them. Being a **** is pointless here. I literally cannot tell you what is needed to get it up and running. Im starting at square one, chief.
Click to expand...
Click to collapse
You're replying to a V30 custom kernel developer. The ONLY custom kernel developer for V30, right now. He can be as (seemingly) flippant as he wants, as he has the information you need. He doesn't know yet how much you know or if you can handle full detailed information. Insulting him would not be the best strategy...
I see you two have worked it out. I was starting from the beginning of the thread.
ChazzMatt said:
You're replying to a V30 custom kernel developer. The ONLY custom kernel developer for V30, right now. He can be as (seemingly) flippant as he wants, as he has the information you need. He doesn't know yet how much you know or if you can handle full detailed information. Insulting him would not be the best strategy...
I see you two have worked it out. I was starting from the beginning of the thread.
Click to expand...
Click to collapse
idk, that's a bit extreme
XDA is/was made for developers and thus it's supposed to be fun (if you remember the previous threads where devs were scared off by people with a salient arrogant attitude)
however in this discussion it just seemed that we both might have taken things a bit too personal - so it's fine.
Also - I might not be the only custom kernel dev anymore - jollaman999 is working on a great custom kernel (each custom kernel is unique with its own goals)
not sure if he's ready to release it already though or if it's for personal use.
There are also other devs or users working on the V30 which might not have released their stuff (or are not willing to release it [again] for whatever reason - such as tattedup, etc. )
zacharias.maladroit said:
idk, that's a bit extreme
XDA is/was made for developers and thus it's supposed to be fun (if you remember the previous threads where devs were scared off by people with a salient arrogant attitude)
however in this discussion it just seemed that we both might have taken things a bit too personal - so it's fine.
Also - I might not be the only custom kernel dev anymore - jollaman999 is working on a great custom kernel (each custom kernel is unique with its own goals)
not sure if he's ready to release it already though or if it's for personal use.
There are also other devs or users working on the V30 which might not have released their stuff (or are not willing to release it [again] for whatever reason - such as tattedup, etc. )
Click to expand...
Click to collapse
Well, I wasn't saying you were arrogant. I was saying even if you seemed that way (you didn't seem that way to me, you seemed to be asking legitimate questions about how much detailed information he could handle), still why would he call the person names like "****" or other offenses -- who just might be extremely important resource?
It's all straightened out now, I was reading from beginning of thread.
ChazzMatt said:
You're replying to a V30 custom kernel developer. The ONLY custom kernel developer for V30, right now. He can be as (seemingly) flippant as he wants, as he has the information you need. He doesn't know yet how much you know or if you can handle full detailed information. Insulting him would not be the best strategy...
I see you two have worked it out. I was starting from the beginning of the thread.
Click to expand...
Click to collapse
I understand *exactly* who I was conversing with. I also understand the questions I asked. He/she can certainly be as flippant as they want. It's within their rights to be. Likewise, I can tell him/her to pound sand. To be perfectly blunt, it doesn't bother me.
He is a great dev. I've used his stuff on my v20. Doesn't change the fact that he made some incorrect assumptions and acted on them. Dont attempt to chide me for someone else's goof. It's not correct, and you aren't contributing anything relevant to the actual question. Besides, it was obviously put to bed well before you decided you have to chuck in your two pennies.
elijah420 said:
Besides, it was obviously put to bed well before you decided you have to chuck in your two pennies.
Click to expand...
Click to collapse
As I've said at least twice. So you're not adding anything either. Or you can't read.
Sent via open market LG US998 V30/V30+
zacharias.maladroit said:
lol - sorry for the venting - there was lots of built-up anger at all the folks who just ask ask ask and don't do research on their own (probably not even knowing what kali is),
even with a custom kernel we won't get far thus more is needed - OP5 folks might have just what we need (as a good basis)
that's exactly what I needed (sorry my ranty post was kinda like venting anger and getting a reasonable answer to not lose faith in humanity, XDA isn't what it used to be)
pie_I_6_WIP9_11
the last 2 commits are what to be added to the kernel.
I've looked around but haven't found anything related to qcacld (our wifi driver) that would indicate it supports packet injection (perhaps need to look more) in any case thus OTG and usb-powered WiFi adapters would be needed
OP5 elementalx kali defconfig is the diff for OP5 elementalx kernel to get kali wifi drivers
with e.g. lunar kernel base other changes would be needed
When using Markus' kernel base (lineage-15.1 vanilla) - it probably would be easier for you to get there quickly: lineage-15.1
https://medium.com/@ruvoteka/how-to...-android-device-universal-method-32e58660d084
is a somewhat better explanation on how to install kali (non-func on our device currently)
https://forum.xda-developers.com/oneplus-5/development/burgerhunter-t3638810
should offer lots of valuable groundwork and git repos to work with
A good "training" would be to attempt to build a custom ROM (e.g. lineageOS 15.1) and a standalone kernel (either for LG stock or lineage-15.1) and see if both are able to boot
Click to expand...
Click to collapse
The last two including
"sched/core: Allow __sched_setscheduler() in interrupts when PI is not..."?
I've never built a kernel but I'd like to have the option of mobile pentesting. If you find yourself with the time and inclination I'd be interested. I'm still learning Java, struggling with recursion, so custom kernels is probably out of my reach.
tooandrew said:
The last two including
"sched/core: Allow __sched_setscheduler() in interrupts when PI is not..."?
I've never built a kernel but I'd like to have the option of mobile pentesting. If you find yourself with the time and inclination I'd be interested. I'm still learning Java, struggling with recursion, so custom kernels is probably out of my reach.
Click to expand...
Click to collapse
nope - I moved the commits to a dedicated branch:
pie_I_6_WIP9_11_kali
so it's
HID patch
Wireless packet injection & selinux patch
the related wifi drivers from the kernel diff need to selected though - since specific wireless adapters are needed which support packet injection functionality