How to view the kernel output information? - Miscellaneous Android Development

If there is no development board, how to view the kernel start output information?
I compiled an ROM, but can't start. Don't know where is the problem? How to check the output information of core startup?

Related

Building Kernel for Dream

Hello
As the prebuilt Kernel which comes with the dream-open project is not as cutting edge es I'd like it to be, I wanted to build the Kernel myself and checked out the sources for 2.6.29.
Now I've got some questions and problems:
Are there any known problems of using this kernel with the master branch? Are there any special/manual changes needed?
What are the best settings for the .config file to get a performance oriented and good kernel? Is msm_defconfig any good? (Maybe someone has a .config he could share with me?)
Are there any build time optimizations which would increase perfomance? (I read something about -O2)
Does only the WiFi Module have to be rebuilt?
When I played around, I got an error that a file (elf.h) is missing. How would I correct that/Which file is meant/Where would I get it?
It would be great if someone could answer these questions
Thank you very much

[DEV] LANYU 910 / Airpaid RK2918 - Kernel / ICS WorkInProgress

Working on porting ICS to the Lanyu 910 / X10 Airpad MID-910. I think the kernel sources used for the Pascal2 could possibly work with the 910 after some config changes.
Basically with the 910 we have no stock kernel source available for reference, no stock configuration, no detailed hardware inside the device.. We know it uses the rk2918 rockchip and I know it uses the SWL-2480 / Marvel 8686, simply from observing the identifying markings on the chip. Other than that, all we know is that it uses a 2.6.32 kernel with android 2.3, has an unknown 7" capacitive touch screen, unknown camera, etc. In order for ICS to work with the 910 we'll have to use a 3.0.8+ kernel or backport all of the required components from 3.x to our working 2.6.32 sources -however we don't have the patched sources for the stock firmware, so we are better off to just use 3.0.8 kernel that the source is available for on many rk2918 devices - of course we'd have to make configuration changes to our specific hardware, and possibly patch the sources with modified/new source code for our specific hardware (if we can obtain it).
Pascal 2 has a realtek based wireless chipset.. 910 uses the SWL-2940 / Marvel 8686, the module for this is also included in the kernel sources. The 910 has an unknown touchscreen, so the kernel for the pascal2 may or may not work with the touch screen settings. It is quiet difficult to work on the kernel without in depth knowledge of all the hardware. The 910 has Lanyu printed on the motherboard, and I'm not successful in finding any detailed hardware information for the board on the 910.
Also I am concerned with the memory mappings since the 910 only has 512mb ram and the pascal2 has 1GB+
Really wish these Chinese tablet manufacturers would follow the rules of GPL and release their source code, it would help A LOT with getting ICS to work with the 910.
As far as the rockchip and the ICS rom that vurrut has put together, I am almost 100% sure that the system.img that he used will work with the 910 as long as I get a working 3.0.8 kernel for ICS reconfigured/recompiled and implement some changes in the boot.img for the init services relating to hardware.
If anyone has the X10 airpad (rk2918 based) or the Lanyu 910 and has some important information regarding the internal hardware, please contact me with details, as I can probably get a working kernel for our device in a matter of hours.
Needed:
Gsensor/Accelerometer MFG/Model
Input Keys Controller - MFG/Model
Battery Sensor Chip - MFG/Model
TouchScreen/Display - MFG/Model
Other mainboard chipsets - MFG/Model (excluding RK2918 Rockchip SoC)
It would be of much help if there was someone here knows the MFG/Model of any of the above hardware, and it would also be a great help if anyone knows what linux kernel drivers are used for any of the components inside the 910.
When I was working with the Kindle Fire kernel I had found a very helpful information page on the internal parts of the device, with very detailed information - it was really helpful. I know that with these generic Chinese tablets finding such info may be much more difficult due to lack of interest and lack of popularity when compared to major brand tablets such as the Kindle Fire - but if anyone out there has ran across similar information it would give us GREAT progress in developing an ICS ROM for the 910. Here is a link to the breakdown of components in the Kindle Fire:
http://www2.electronicproducts.com/Amazon_Kindle_Fire_D01400_Tablet-whatsinside_text-123.aspx
The thread to the ICS ROM for Pacal 2 (rk2918) device is here: http://forum.xda-developers.com/showthread.php?t=1734181
A big thanks to Vurrut for all of his work! Hopefully we can use parts of his ROM to get ICS running on our Lanyu/Airpad!
Pls open a terminal, type "dmesg" and upload the log. Then we will see
If you have luck your build has also the kernel config file. You will find it under /proc/config.gz.
- Oma -
Oma7144 said:
Pls open a terminal, type "dmesg" and upload the log. Then we will see
If you have luck your build has also the kernel config file. You will find it under /proc/config.gz.
- Oma -
Click to expand...
Click to collapse
Do you honestly think I would be working on a Linux kernel without a knowledge of the existence of dmesg or config.gz? Did you also forget to remind me of adb shell logcat -d >> logcat.log ?
Sent from my A100 using xda premium
linuxsociety said:
Do you honestly think I would be working on a Linux kernel without a knowledge of the existence of dmesg or config.gz? Did you also forget to remind me of adb shell logcat -d >> logcat.log ?
Click to expand...
Click to collapse
Sry. You've been asking for touch, sensors etc.. In the named logs you will find all that.
- Oma -
Oma7144 said:
Sry. You've been asking for touch, sensors etc.. In the named logs you will find all that.
- Oma -
Click to expand...
Click to collapse
Only partial information can be obtained in this manner as it will only show what device modules are loaded, the information I was wanting was precise model information of the chipsets used in the tablet. And the config for the stock kernel is not included in procfs anyway as the developers must have not said =Y to CONFIG_IKCONFIG
Sent from my A100 using xda premium
]
Code:
CONFIG_INPUT_TOUCHSCREEN=y
# CONFIG_TOUCHSCREEN_AD7879_I2C is not set
# CONFIG_TOUCHSCREEN_AD7879 is not set
# CONFIG_I2C_LZ300 is not set
CONFIG_I2C_LZ300_ST=y
# CONFIG_I2C_SIS809 is not set
# CONFIG_INPUT_MISC is not set
CONFIG_INPUT_GPIO=y
#
# Magnetometer sensors
#
# CONFIG_COMPASS_AK8975 is not set
# CONFIG_COMPASS_AK8973 is not set
CONFIG_G_SENSOR_DEVICE=y
# CONFIG_GS_MMA7660 is not set
CONFIG_GS_MMA8452=y
# CONFIG_GS_L3G4200D is not set
# CONFIG_INPUT_JOGBALL is not set
# CONFIG_LIGHT_SENSOR_DEVICE is not set
With the Model (SIS809, MMA8452, AK8975 etc.) you have all what you need. This you will also find in the dmsg log.
That's enough to compile from sources.
Anyway.
- Oma -
Oma7144 said:
]
Code:
CONFIG_INPUT_TOUCHSCREEN=y
# CONFIG_TOUCHSCREEN_AD7879_I2C is not set
# CONFIG_TOUCHSCREEN_AD7879 is not set
# CONFIG_I2C_LZ300 is not set
CONFIG_I2C_LZ300_ST=y
# CONFIG_I2C_SIS809 is not set
# CONFIG_INPUT_MISC is not set
CONFIG_INPUT_GPIO=y
#
# Magnetometer sensors
#
# CONFIG_COMPASS_AK8975 is not set
# CONFIG_COMPASS_AK8973 is not set
CONFIG_G_SENSOR_DEVICE=y
# CONFIG_GS_MMA7660 is not set
CONFIG_GS_MMA8452=y
# CONFIG_GS_L3G4200D is not set
# CONFIG_INPUT_JOGBALL is not set
# CONFIG_LIGHT_SENSOR_DEVICE is not set
With the Model (SIS809, MMA8452, AK8975 etc.) you have all what you need. This you will also find in the dmsg log.
That's enough to compile from sources.
Anyway.
- Oma -
Click to expand...
Click to collapse
Mr. Oma, I am sorry but I think you may be in the wrong thread, the Lanyu 910 only shares one thing in common with the other common RK2918 based tablets, and that is the RK2918 its self, the rest of the hardware that makes up the full system is different on the 910/Airpad than the more popular tablets that are using the RK2918. For example you probably use a RTL based wifi chip in the config you are using also, where the 910/AP uses the SWL-2480 which uses a Marvel 8686 driver in the linux kernel or you can use the libertas driver in more recent kernels. What exactly is the config you pasted here from? At this point I know the internal hardware enough to get a proper config file for the 910/Airpad, however there are compile issues with certain components and without resolving the compile issues there is no kernel image going to be generated unless I disable the problems at hand in the config, if you want more up-to-date information then head over the the x10 forums and check the original thread for 910/AP kernel development: http://forums.x10.com/index.php?topic=27184.0
Have you seen this?
Here is another Tab using SWL-2480 (looks like an Aoson M12).
Here is another 3.0.8 source, originally from a Chinese Tab named Xinboa.
Maybe that helps.
- Oma -
Oma7144 said:
Have you seen this?
Here is another Tab using SWL-2480 (looks like an Aoson M12).
Here is another 3.0.8 source, originally from a Chinese Tab named Xinboa.
Maybe that helps.
- Oma -
Click to expand...
Click to collapse
I appreciate your effort in helping me find info, but I have already researched most the possibilities and am already aware of the sites you linked. The problems aren't finding hardware specs, the problem now is getting 3.0.8 sources to compile with the Airpads hardware selected in the configuration, as I posted in the x10 forum, it doesn't appear that any 3.0.8 kernels have been successfully compiled for other devices using the same board-config as the 910, in fact the link you specified with the swl-2480 is the only device that has similar hardware aside from the rk2918 that I have found. The wifi and audio both fail to compile with Ody.se sources. I have decided to put most of my work now into testing/development of Jelly Bean for the Acer Iconia Tab, as it doesn't seem that many others are interested in the 910/Airpad development. Thanks again
Ok.
Odys-Xpress sources? That's kernel 2.6.32.27, isn't it?
But try the sources from above link. Could search for that
A library for Marvell 8686 SDIO WLAN devices.
So far, the following modules have been verified:
(1) Samsung SWL-2480
(2) Azurewave AW-GH321
(3) USI WM-G-MR-09
(4) Murata SP-8HEP-P
I don't know if they will compile.
- Oma -
Oma7144 said:
Ok.
Odys-Xpress sources? That's kernel 2.6.32.27, isn't it?
But try the sources from above link. Could search for that
A library for Marvell 8686 SDIO WLAN devices.
So far, the following modules have been verified:
(1) Samsung SWL-2480
(2) Azurewave AW-GH321
(3) USI WM-G-MR-09
(4) Murata SP-8HEP-P
I don't know if they will compile.
- Oma -
Click to expand...
Click to collapse
They won't compile with 4.2.0 or 4.4.0 arm eabi toolchain in 3.0.8 sources, i tried them, since 3.0.8 it has been replaced with libertas instead of mv8686, i've done looked into all of it man
linuxsociety said:
They won't compile with 4.2.0 or 4.4.0 arm eabi toolchain in 3.0.8 sources, i tried them, since 3.0.8 it has been replaced with libertas instead of mv8686, i've done looked into all of it man
Click to expand...
Click to collapse
Use gcc 4.5.2 or higher.
- Oma -
Oma7144 said:
Use gcc 4.5.2 or higher.
- Oma -
Click to expand...
Click to collapse
I also tried gcc 4.6.2 and 4.6.3 natively setup with cross compile in Gentoo / Funtoo - I get the same same errors with the wifi and the audio as using the appropriate eabi-arm toolchains.. I tracked down the problems though, it is a dephell with major code changes in common headers. The headers that are included in the sources have changed from 2.6.32.27 and to 3.0.8 and porting everything up to current is quiet more code changes than I am willing to work on. Like I have said though, I am no longer working on this kernel for the generic devices 910/AP, I have more work on my slate now than I need working on the Acer Vangogh / Vendetta kernels for Jelly Bean to incorporate Tiny HAL and newer tegra changes keeping compatability with the only Acer source we have available. But at least I am not limited to products that aren't following the GPL appropriately, and the use of uncommon hardware that makes debugging damn near impossible. I almost have the Vangogh board and Acer specifics ported over to 3.1's grouper from the nexus project and it's much more smoother than working with that chinese developed tab
Ok, than have a good time!
Greetings to Southern Kentucky.
- Oma -
linuxsociety said:
If anyone has the X10 airpad (rk2918 based) or the Lanyu 910 and has some important information regarding the internal hardware, please contact me with details, as I can probably get a working kernel for our device in a matter of hours.
Click to expand...
Click to collapse
Here you go: eboda-TS, MV8686 WLAN, MMA8452Q Sensor, WM8988 Audio, ANX7150 HDMI, HYM8563 Clock, APX192 Powermgt.
Could you pls compile a kernel?
- Oma -

[Question] Kernel Compilation for Modules

First post in the Dev section but this seemed to be the place to talk about kernel compilation and module development.
I have twice now, and am working on my third kernel compilation for the purposes of custom module building for the TF700 and the TF201.
The question I have has to do with the compilation process. Every time I have gone through this with the downloadable Asus Kernel zip I run in to several issues. Either missing references in code or portions that won't compile at all. Is this normal for kernel compilations? I would have thought that it would be fully compilable out of the box ( so to speak). Is it ASUS or just android/Linux in general that works out this way?
Is there a better way to do it? Should I use some generic source with the same version numbers? The current source is just not working at all. I am using an Ubuntu distro. Have the cross compile tools etc... but it just fails. I have already resolved two missing definition references and it just keeps on failing in new places
Hopefully this question doesn't offend developers. I have moved from WinPhone to here and want to better my understanding of how this should all work but need to start with some basics before I can make a meaningful contribution.
Thanks.
P.S... I looked and didn't find a "Compiling android kernels for dummies" book
hx4700 Killer said:
I looked and didn't find a "Compiling android kernels for dummies" book
Click to expand...
Click to collapse
"Dummies" doesn't write a book on kernel dev. Too wrapped up in telling people how to download iTunes.....
Use your "Google". And when you find it, Google XDA University.
There, you will find steps for setting a build environment and kernel and cross arm.
Understand, all kernels are different, but a good place to start. Plus, you learn how to use Google. An added bonus.
Oh... and... as an extra bonus, I will move this to Q & A, as this post has no development work attached. :silly:
MD
My question wasn't HOW to cross compile. I have done it.
My question is WHY are there so many errors that need correcting when compiling the ASUS downloadable kernels and if this is typical of the source from any device or just ASUS?
hx4700 Killer said:
The question I have has to do with the compilation process. Every time I have gone through this with the downloadable Asus Kernel zip I run in to several issues. Either missing references in code or portions that won't compile at all.
Click to expand...
Click to collapse
I had to fix exactly one pair of quotes vs. angle brackets somewhere in the RIL - get the patch pack from my kernel and apply the ril include fix. Then it should compile. If not, you are doing something wrong.
Can you post any links or names of everything ill need to get started on cross compiling a kernel for my tf700t I download the source and get my config.gz and am running a ubuntu distribution but if you could post a link to a tutorial that has detailed instructions that will work for the infinity that would be greatly appreciated thankyou
alexcass4 said:
Can you post any links or names of everything ill need to get started on cross compiling a kernel for my tf700t I download the source and get my config.gz and am running a ubuntu distribution but if you could post a link to a tutorial that has detailed instructions that will work for the infinity that would be greatly appreciated thankyou
Click to expand...
Click to collapse
Step 1: Get a suitable ARM toolchain. I can't help you here with Ubuntu because I'm using Gentoo and their crossdev tool (http://www.gentoo.org/proj/en/base/embedded/handbook/?part=1).
Step 2: Cross-compiling the kernel works just as for native kernels (make menuconfig, make), but you have to pass parameters to each make, e.g. make ARCH="arm" CROSS_COMPILE="arm-gentoo-linux-gnueabi-" (or whatever your toolchain is called)
Step 3: For the TF700-specific blob stuff I have written a detailed tutorial here: http://forum.xda-developers.com/showpost.php?p=36925180&postcount=4

Compiling boot.img for particular device

I want to compile android for a new device with that setup:
Code:
PLATFORM
OS Android 7.0 (Nougat)
Chipset Qualcomm MSM8940 Snapdragon 435
CPU Octa-core 1.4 GHz Cortex-A53
GPU Adreno 505
What compiler / env vars I should use?
Do I have emulator that I can config for that setup?
Thanks.
roman.mandeleil said:
I want to compile android for a new device with that setup:
Code:
PLATFORM
OSAndroid 7.0 (Nougat)
ChipsetQualcomm MSM8940 Snapdragon 435
CPUOcta-core 1.4 GHz Cortex-A53
GPUAdreno 505
What compiler / env vars I should use?
Do I have emulator that I can config for that setup?
Thanks.
Click to expand...
Click to collapse
https://source.android.com/source/initializing
DO NOT CONTACT ME VIA PM TO RECEIVE HELP, YOU WILL BE IGNORED. KEEP IT IN THE THREADS WHERE EVERYONE CAN SHARE
Droidriven said:
https://source.android.com/source/initializing
Click to expand...
Click to collapse
Thanks for the reply. I know that page but cant find there
the concrete differences in conifgs between different
chipset?
roman.mandeleil said:
Thanks for the reply. I know that page but cant find there
the concrete differences in conifgs between different
chipset?
Click to expand...
Click to collapse
What do you mean "configs between different chipset"? Setting up the environment is a universal thing, the differences should come when you sync repo to download your device's source code. Sync the correct source and you're ready to go, as far as I know.
DO NOT CONTACT ME VIA PM TO RECEIVE HELP, YOU WILL BE IGNORED. KEEP IT IN THE THREADS WHERE EVERYONE CAN SHARE

Help building Kernel Module

Hello All,
I am new in the android world, but am fairly experienced on the Linux side of things. I would like to build a loadable kernel module for a specific version of JB (4.2.2_r1) and have some general questions.
As I understand it, the process should be as follows:
Get kernel source for JB, compile kernel, then compile kernel module. Please correct me if I am wrong
I can't seem to find the kernel source for this, can anyone point me to exactly where it is?
Thanks

Categories

Resources