Hey guys,
i have a problem when building 4.0.3 from source. When i flash the fresh compiled
OTA package to my device, the device ends in a bootloop stuck at the google logo.
Logcat says:
Code:
I/SystemServer( 238): Power Manager
I/SystemServer( 238): Activity Manager
I/ActivityManager( 238): Memory class: 64
I/SurfaceFlinger( 251): SurfaceFlinger is starting
I/SurfaceFlinger( 251): SurfaceFlinger's main thread ready to run. Initializing graphics H/W...
E/IMGSRV ( 251): :0: PVRSRVBridgeCall: Failed to access device. Function ID:3223086860 (Bad address).
E/IMGSRV ( 251): :0: OpenServices: PVRSRVBridgeCall failed.
E/IMGSRV ( 251): :0: PVRSRVConnect: Unable to open connection.
E/IMGSRV ( 251): :0: OpenPVRServices: Failed to open services connection
E/IMGSRV ( 251): :0: hal_init: Failed to open services (err=-14)
E/IMGSRV ( 251): :0: hal_open: Graphics HAL not initialized
E/FramebufferNativeWindow( 251): couldn't open framebuffer HAL (Not a typewriter)
E/IMGSRV ( 251): :0: hal_open: Graphics HAL not initialized
E/FramebufferNativeWindow( 251): couldn't open gralloc HAL (Not a typewriter)
E/SurfaceFlinger( 251): Display subsystem failed to initialize. check logs. exiting...
I/ServiceManager( 109): service 'sensorservice' died
I/ServiceManager( 109): service 'power' died
I/ServiceManager( 109): service 'entropy' died
D/AndroidRuntime( 259):
D/AndroidRuntime( 259): >>>>>> AndroidRuntime START com.android.internal.os.ZygoteInit <<<<<<
D/AndroidRuntime( 259): CheckJNI is OFF
I don't know whats going wrong. Can it be a kernel problem? I have tried different 4.0.3 kernels from the dev section, but the result is the same.
The device is a GSM device with PRIMEKK15 unlocked bootloader and I9250XXKK6 baseband.
After pulling the latest 4.0.3 sources with repo and setting up the proprietary files i'have compiled the system without errors:
Code:
~/android/4.0.3$ . build/envsetup.sh
~/android/4.0.3$ lunch full_maguro-userdebug
~/android/4.0.3$ make -j4 otapackage
I really don't understand what i am doing wrong ...
Thanks for any suggestions or answers.
i got this problem when I updated my phone using fastboot.
for me, it was an application installed from market. after wipe everything and redo the flash procedure, everything was fine.
don't know if it is the same problem here.
Did you pull in the proprietary files needed for the build?
At least you've got to the boot animation, my ROM fails at the flashing with a status 7 error mentioning the boot.img
PaulW21781 said:
Did you pull in the proprietary files needed for the build?
Click to expand...
Click to collapse
with ./extract-files.sh .correct?
PaulW21781 said:
Did you pull in the proprietary files needed for the build?
Click to expand...
Click to collapse
Yes, the files are pulled from the device ( if you mean the extract_files.sh from the device folder), compilation finishes without errors.
No boot animation, nothing...
Sent from my Galaxy Nexus using XDA App
Now at this point too, bootloops all the time. I think the code is ****ed
Ok, dmesg gave me this:
Code:
<6>[ 5.367248] PVR: Installing MISR with cookie c0833f74
<6>[ 5.367828] PVR: Installing device LISR SGX ISR on IRQ 53 with cookie c79f5700
<6>[ 5.368255] PVR: OSUnMapPhysToLin: unmapping 65535 bytes from c8be0000
<6>[ 5.368469] PVR: SysFinalise: Version string: SGX revision = 1.2.0
<6>[ 5.369171] PVR_K: (FAIL) SGXInit: Incompatible driver DDK revision (785978)/device DDK revision (780209).
<6>[ 5.369537] PVR_K:(Error): PVRSRVFinaliseSystem: Failed PVRSRVDevInitCompatCheck call (device index: 0) [449, drivers/gpu/pvr/pvrsrv.c]
<6>[ 5.370025] PVR_K:(Error): BridgedDispatchKM: Initialisation failed. Driver unusable. [4812, drivers/gpu/pvr/bridged_pvr_bridge.c]
<6>[ 5.552337] max17040 4-0036: online = 1 vcell = 4007500 soc = 77 status = 1 health = 1 temp = 340 charger status = 0
<3>[ 5.643005] init: sys_prop: permission denied uid:1001 name:net.rmnet1.dns1
<3>[ 5.643737] init: sys_prop: permission denied uid:1001 name:net.rmnet1.dns2
<3>[ 5.644287] init: sys_prop: permission denied uid:1001 name:net.rmnet1.gw
<3>[ 5.645263] init: sys_prop: permission denied uid:1001 name:net.rmnet2.dns1
<3>[ 5.645812] init: sys_prop: permission denied uid:1001 name:net.rmnet2.dns2
<3>[ 5.646484] init: sys_prop: permission denied uid:1001 name:net.rmnet2.gw
<6>[ 5.707031] [MODEM_IF] misc_open : umts_boot0
<6>[ 5.707153] omap_hsi omap_hsi.0: HSI clock is now 96000000
<6>[ 5.723510] omap_hsi omap_hsi.0: Entering RX wakeup in 3 wires mode (no CAWAKE)
<6>[ 5.723602] [MODEM_IF] xmm6260_off()
<6>[ 5.723724] [MODEM_IF] xmm6260_on()
<6>[ 5.724456] [MODEM_IF] PA EVENT : reset =0, pa=1
<6>[ 5.724548] [MODEM_IF] umts_ipc0 state changed: OFFLINE
<6>[ 5.835540] [MODEM_IF] PA EVENT : reset =1, pa=0
<6>[ 5.979125] virtio_rpmsg_bus virtio1: creating channel rpmsg-omx addr 0x3c
<6>[ 5.980194] rpmsg_omx rpmsg-omx1: new OMX connection srv channel: 1024 -> 60!
<6>[ 6.087188] PVR_K:(Error): BridgedDispatchKM: Initialisation failed. Driver unusable. [4812, drivers/gpu/pvr/bridged_pvr_bridge.c]
<3>[ 6.094604] init: untracked pid 118 exited
Anyone knows how to fix this issue?
Try reflashing the boot.img created by your build..
Did you also install the binaries from the google http://code.google.com/android/nexus/drivers.html#maguro into your AOSP source before building?
I built my own AOSP rom too, but haven't tried it yet.
also
Cleaning up when adding proprietary binaries
In order to make sure that the newly installed binaries are properly taken into account after being extracted, the existing output of any previous build needs to be deleted with
$ make clobber
Click to expand...
Click to collapse
http://source.android.com/source/building-devices.html
sorry if you did all this - I'm a noob to ASOP building
Did you wipe the device before installing the rom and kernel?
Luxferro said:
Did you also install the binaries from the google http://code.google.com/android/nexus/drivers.html#maguro into your AOSP source before building?
Click to expand...
Click to collapse
Hey man, that was the problem! Thank you very much... I didn't knew that such libraries exist for 4.0.3.
After installing the binaries and recompiling the phone boots up. Thanks again, also to all the people who tried to help me.
m0rph3us said:
Hey man, that was the problem! Thank you very much... I didn't knew that such libraries exist for 4.0.3.
After installing the binaries and recompiling the phone boots up. Thanks again, also to all the people who tried to help me.
Click to expand...
Click to collapse
No problem. Glad I can help
I guess that hopefully means my build would work too if I ever tried it. Was hoping official 4.0.3 OTA would be out by now. I might just have to try my build too.
Sent from my Galaxy Nexus using Tapatalk
I ran the script under /device/samsung/toro/
is that the correct place to run it, or should I be running it somewhere else?
Nevermind, I'm dumb. I read the post and got it now lol
I'm having the same issue, except for the toro (CDMA/LTE) galaxy nexus. Are these steps in the right order?
step 0: make clobber, step 1: run the extract-imgtec-toro.sh and make clobber, step 2: extract-files.sh, step 3: build/envsetup.sh, step 4: make?
jab416171 said:
I'm having the same issue, except for the toro (CDMA/LTE) galaxy nexus. Are these steps in the right order?
step 0: make clobber, step 1: run the extract-imgtec-toro.sh and make clobber, step 2: extract-files.sh, step 3: build/envsetup.sh, step 4: make?
Click to expand...
Click to collapse
you don't need to excessively run make clobber. all it really does is delete the out/ directory.
Here's how I was able to get a fully functional build ($ANDROID_SOURCE is your build dir):
0) make clobber; # just for the initial cleansing
1) cd $ANDROID_SOURCE/device/samsung/toro && ./extract-files.sh
2) run extract-imgtec-toro.sh OUTSIDE of your build directory (in a temporary location)
3) copy the contents of $TEMPDIR/vendor/imgtec/toro/proprietary/* into $ANDROID_SOURCE/vendor/samsung/toro/proprietary/
4) cd $ANDROID_SOURCE; . build/envsetup.sh
5) lunch #pick your desired toro build. Probably full_toro-userdebug
6) make
The reality is that extract-files.sh does everything well, except it doesn't include the gpu drivers (so we copy them manually). The make files that extract-files.sh creates DOES reference the gpu drivers, they're just not extracted by the script.
Messing with extract-imgtec-toro.sh will give you make files that don't reference any of the other binaries. Your image will boot, but won't have much else working.
Good luck!
Thanks for the quick reply. Here's my script, let me know if you see any errors.
The reason I did make clobber after the extract-imgtec-toro was because the documentation on google's site recommended doing that.
export TOP=/home/jab416171/android/dev/aosp
export GNEXTEMP=/home/jab416171/gnexproprietaryfiles
cd $TOP
repo sync
make clobber
adb wait-for-device
cd $TOP/device/samsung/toro && ./extract-files.sh
cd $GNEXTEMP && ./extract-imgtec-toro.sh
cp $GNEXTEMP/vendor/imgtec/toro/proprietary $TOP/vendor/samsung/toro/proprietary/
cd $TOP
source build/envsetup.sh
lunch full_toro-userdebug
make -j5
jab416171 said:
Thanks for the quick reply. Here's my script, let me know if you see any errors.
The reason I did make clobber after the extract-imgtec-toro was because the documentation on google's site recommended doing that.
export TOP=/home/jab416171/android/dev/aosp
export GNEXTEMP=/home/jab416171/gnexproprietaryfiles
cd $TOP
repo sync
make clobber
adb wait-for-device
cd $TOP/device/samsung/toro && ./extract-files.sh
cd $GNEXTEMP && ./extract-imgtec-toro.sh
cp $GNEXTEMP/vendor/imgtec/toro/proprietary $TOP/vendor/samsung/toro/proprietary/
cd $TOP
source build/envsetup.sh
lunch full_toro-userdebug
make -j5
Click to expand...
Click to collapse
I think your cp needs a '/*' after the first proprietary. The object is to copy the contents of one proprietary directory into the proprietary directory of another. Unless I'm mistaken, your cp will copy the proprietary source folder into the proprietary destination folder resulting in a $TOP/vendor/samsung/toro/proprietary/proprietary. Either that or error out because you specified to cp a dir without a -R.
You should certainly run a make clobber after extracting new binaries if you have files from a previous build still lying around. if you've already cleaned it out, then its just redundant (and not hurting anything).
Otherwise it looks good to me! Good luck!
Makes sense on the cp command. I haven't actually run the script yet, and thanks for taking your time to overlook it.
And do I need to run extract-files and extract-imgtec-toro *every time* I want to do a build, or can I just extract them once, and copy them from another location on my drive, or will the files they extract just stay in the repository?
jab416171 said:
Makes sense on the cp command. I haven't actually run the script yet, and thanks for taking your time to overlook it.
And do I need to run extract-files and extract-imgtec-toro *every time* I want to do a build, or can I just extract them once, and copy them from another location on my drive, or will the files they extract just stay in the repository?
Click to expand...
Click to collapse
Just once. I usually just tar up my vendor/samsung/toro directory and keep the tar in a safe location. No more extractions once you have it.
Related
Hello!
Cuz Dzo doesnt update zImage after every code change I decided to help us and compile fresh zImage after every patch
Attachment including "support for nordic keyboard" and "revert port BT II drivers from 2.6.32" patches too.
Info needed
Hi,
Can any one please tell me how to create a nbh file form zImage? I would like to flash my own kernel in Kaiser. I have tried to search for this info on the net but couldnt find any thing useful.
Thanks in advance.
Instructions for building nbh's are in the sticky at the top of the forum : http://forum.xda-developers.com/showthread.php?t=621001
pentagramII said:
Hello!
Cuz Dzo doesnt update zImage after every code change I decided to help us and compile fresh zImage after every patch
Attachment including "support for nordic keyboard" and "revert port BT II drivers from 2.6.32" patches too.
Click to expand...
Click to collapse
No need to do this by hand . My server runs a kernel compliation service, you can get a fresh zImage there (updated hourly): http://84.23.71.227/kerneloftheday/
It has a few patches for nike, but it should work on kaiser/vogue/polaris too. If anyone has problems with it send me a pm (can also add a vanilla kernel).
If it wouldn't be too tough, I would certainly appreciate an auto-compiled version of the vanilla zImage.
mblaster said:
No need to do this by hand . My server runs a kernel compliation service, you can get a fresh zImage there (updated hourly): http://84.23.71.227/kerneloftheday/
It has a few patches for nike, but it should work on kaiser/vogue/polaris too. If anyone has problems with it send me a pm (can also add a vanilla kernel).
Click to expand...
Click to collapse
Is it ok for WarmDonut also?
Its working with donut too Thats the same zimage like Dzo but it has also a few another patches for nike.
Alamei said:
If it wouldn't be too tough, I would certainly appreciate an auto-compiled version of the vanilla zImage.
Click to expand...
Click to collapse
OK, I will include it later.
The kernel works with both, eclair and donut. For eclair just add hw3d.version=1 to dafault.txt.
BTW: Yes, it is DZOs kernel, so credits go to him of course
error while loading new compiled Linux kernel image into the android emulator
I have successfully compiled Linux kernel for android:
[email protected]:~/common# ARCH=arm CROSS_COMPILE=~/mydroid/prebuilt/linux-x86/toolchain/arm-eabi-4.4.0/bin/arm-eabi- make
CHK include/linux/version.h
make[1]: `include/asm-arm/mach-types.h' is up to date.
CHK include/linux/utsrelease.h
.
.
.
SYMLINK include/asm -> include/asm-arm
CALL scripts/checksyscalls.sh
<stdin>:1097:2: warning: #warning syscall fadvise64 not implemented
<stdin>:1265:2: warning: #warning syscall migrate_pages not implemented
<stdin>:1321:2: warning: #warning syscall pselect6 not implemented
<stdin>:1325:2: warning: #warning syscall ppoll not implemented
<stdin>:1365:2: warning: #warning syscall epoll_pwait not implemented
CHK include/linux/compile.h
Kernel: arch/arm/boot/Image is ready
Kernel: arch/arm/boot/zImage is ready
Building modules, stage 2.
MODPOST 157 modules
[email protected]:~/common#
but i get the following error while loading this images in the emulator:
[email protected]:~/android-sdk-linux_x86/tools# ./emulator -avd avd1.5 -kernel ~/common/arch/arm/boot/zImage -show-kernel -verbose
emulator: found SDK root at /home/preetam/android-sdk-linux_x86
emulator: root virtual device file at /home/preetam/.android/avd/avd1.5.ini
.
.
.
yaffs_read_super: isCheckpointed 0
sh: can't access tty; job control turned off
# init: cannot find '/system/bin/playmp3', disabling 'bootsound'
init: cannot find '/system/bin/dbus-daemon', disabling 'dbus'
eth0: link up
init: untracked pid 578 exited
init: untracked pid 579 exited
warning: `rild' uses 32-bit capabilities (legacy support in use)
init: untracked pid 601 exited
init: untracked pid 592 exited
init: untracked pid 605 exited
init: untracked pid 602 exited
init: untracked pid 609 exited
init: untracked pid 606 exited
init: critical process 'servicemanager' exited 4 times in 4 minutes; rebooting into recovery mode
save exit: isCheckpointed 1
save exit: isCheckpointed 1
Restarting system with command 'recovery'.
Reboot failed -- System halted
and the emulator didn't start with the new kernel image(emulator didn't reboot). what is the problem here..?? and how can i replace my emulator's image with newly compiled Linux permanently??
please help, i am stuck here from many days. thank you!
It's a bad idea release the code from git because developers up many "problematic code" and test it before release a kernel...
I release the kernel after testing on the link in my signaure and also dzo stopped working on from several weeks :-(
Hello,
When I found out this morning that HTC has released their hero-2.6.29-5f74b252, I decided to go ahead and try to compile this without modifications. Just to make sure it works as the pre-compiled version before doing any modifications.
As I'm already running the official 2.1 (ChungHwa, same kernel as the source) I performed the following steps to try to replicate the official build:
Fetch kernel config from my device
Code:
adb pull /proc/config.gz config-htc-2.1.gz
Build zImage
Code:
export PATH=$PATH:<path/to/android/source>prebuilt/linux-x86/toolchain/arm-eabi-4.3.1/bin/
gunzip -c ../config-htc-2.1.gz > .config
make -j4 zImage ARCH=arm CROSS_COMPILE=arm-eabi-
After that I built a new wlan.ko and created a boot.img, followed by a signed update package and so on.
The kernel booted just fine and everything seemed to be working as it should. But sometimes when unlocking (lock screen) the phone and entering sense with the weather/clock widget (that shows a weather animation overlay in fullscreen) I get some bad looking gray-scale shapes flying over the screen. Also games like Labyrinth runs really slow after this problem occurs. Attaching screenshot of weather animation bug.
Has anyone else had similar experience with the released kernel source???
I've been running the official hero-2.6.29-5f74b252 kernel for quite some time now and never had any problems like this.
logcat (when unlocking)
Code:
I/HtcLockScreen( 90): touch ACTION_DOWN
D/skia ( 90): purging 191K from font cache [26 entries]
I/HtcLockScreen( 90): touch ACTION_UP
W/dalvikvm( 90): disableGcForExternalAlloc: true
D/HtcLockScreen( 90): unlock animationn done
I/HtcLockScreen( 90): Drag down to unlock screen
W/dalvikvm( 90): disableGcForExternalAlloc: false
I/HtcLockScreen( 90): HtcLockScreen:onPause
D/dalvikvm( 160): GC freed 9041 objects / 531616 bytes in 200ms
W/IndicatorRequest( 445): The running request PersonIndicatorRequest(112) is no longer valid... requeue it!
W/IndicatorRequest( 445): The running request PersonIndicatorRequest(112) is no longer valid... requeue it!
D/KeyguardViewMediator( 90): pokeWakelock(7000)
D/KeyguardViewMediator( 90): pokeWakelock(7000)
D/HtcLockScreen( 90): onScreenPause
D/KeyguardViewManager( 90): hide()
W/InputManagerService( 90): Window already focused, ignoring focus gain of: com.android.internal.view.IInputMethodClient$Stub$Proxy <at> 4494e8b0
D/dalvikvm( 1732): GC freed 1224 objects / 190144 bytes in 80ms
D/dalvikvm( 1732): GC freed 483 objects / 186216 bytes in 82ms
D/libEGL ( 1732): loaded /system/lib/egl/libGLES_qcom.so
[B]E/EGL.oem ( 1732): could not open hw3dc (Operation not permitted)
E/libEGL ( 1732): No EGLDisplay for hardware EGL!
E/copybit ( 1732): Error opening frame buffer errno=13 (Permission denied)
E/copybit ( 1732): Error opening frame buffer errno=13 (Permission denied)
E/copybit ( 1732): Error opening frame buffer errno=13 (Permission denied)[/B]
D/dalvikvm( 1533): GC freed 567 objects / 28344 bytes in 10 sec
dmesg (when unlocking)
Code:
<6>[ 4886.515686] request_suspend_state: wakeup (3->0) at 4883223881359 (2010-07-06 06:31:19.395568809 UTC)
<6>[ 4886.516357] [R] late_resume start
<6>[ 4886.517425] perflock_notifier_call: screen_on_policy_req 1,policy_min 480000
<6>[ 4886.517700] perflock_notifier_call: cpufreq recover policy 480000 528000
<6>[ 4886.538818] lightsensor_enable
<3>[ 4886.541076] lightsensor_enable: microp is suspended
<6>[ 4886.829010] msmfb: ready, waiting for full update
<6>[ 4886.829345] hero_ts_power:1
<6>[ 4886.836975] msmfb: pan_update in state(1)
<6>[ 4886.837005] msmfb: full update starting
<6>[ 4886.866638] msmfb: full update completed
<6>[ 4886.867065] msmfb: turning on panel
<7>[ 4886.907775] turn on backlight.
<6>[ 4887.109832] microp-i2c 0-0066: microp_i2c_auto_backlight_set_interrupt_mode: 1
<6>[ 4887.112579] [R] late_resume end
<7>[ 4887.613098] ALS value: 0x4, level: 2 #
<7>[ 4887.618255] ALS value: 0x4, level: 2 #
<6>[ 4887.649444] S1 <at> 2025, 2676
<6>[ 4887.925445] E1 <at> 2071, 5196
[B]<6>[ 4892.686065] hw3d_open: pid 1772 tid 1777 opening client node
<4>[ 4892.686340] hw3d_open: can't open hw3d while suspending
<6>[ 4892.697113] hw3d_open: pid 1772 tid 1777 opening client node
<4>[ 4892.697387] hw3d_open: can't open hw3d while suspending
<6>[ 4892.708160] hw3d_open: pid 1772 tid 1777 opening client node
<4>[ 4892.708435] hw3d_open: can't open hw3d while suspending
<6>[ 4892.719207] hw3d_open: pid 1772 tid 1777 opening client node
<4>[ 4892.719482] hw3d_open: can't open hw3d while suspending
<6>[ 4892.730255] hw3d_open: pid 1772 tid 1777 opening client node
<4>[ 4892.730560] hw3d_open: can't open hw3d while suspending
<6>[ 4892.741302] hw3d_open: pid 1772 tid 1777 opening client node
<4>[ 4892.741577] hw3d_open: can't open hw3d while suspending
<6>[ 4892.752532] hw3d_open: pid 1772 tid 1777 opening client node
<4>[ 4892.752807] hw3d_open: can't open hw3d while suspending
<6>[ 4892.763763] hw3d_open: pid 1772 tid 1777 opening client node
<4>[ 4892.764068] hw3d_open: can't open hw3d while suspending
<6>[ 4892.774871] hw3d_open: pid 1772 tid 1777 opening client node
<4>[ 4892.775146] hw3d_open: can't open hw3d while suspending
<6>[ 4892.785919] hw3d_open: pid 1772 tid 1777 opening client node
<4>[ 4892.786224] hw3d_open: can't open hw3d while suspending[/B]
<4>[ 4893.162109] select 1762 (ufou.android.su), adj 15, size 4030, to kill
<4>[ 4893.162384] send sigkill to 1762 (ufou.android.su), adj 15, size 4030
It seems as there is some kind of conflict with the power states, as if the kernel has not understood that the device is awake:
Code:
hw3d_open: can't open hw3d while suspending
arch / arm / mach-msm / hw3d.c
Code:
...
spin_lock_irqsave(&info->lock, flags);
if (info->suspending) {
pr_warning("%s: can't open hw3d while suspending\n", __func__);
ret = -EPERM;
spin_unlock_irqrestore(&info->lock, flags);
goto err;
}
...
Can you please share that .config? I need the one from an official 2.1 WWE based build, like the one you have. Thanks.
RaduG said:
Can you please share that .config? I need the one from an official 2.1 based build, like the one you have. Thanks.
Click to expand...
Click to collapse
Sure, attaching the config here
Thanks mate. I will compile now too and I'll let you know.
I bet its caused by the animated weather overlay from the clock widget, does it still happen if you remove the clock widget from your homescreen?
Yup, you're right it's caused by the animated weather overlay. It happens to be partly sunny here today, so some light clouds are supposed to fly over the screen after unlocking... and these are now the grayish boxes instead.
The problem on the attached picture will go away when removing the widget or just tapping the screen.
But there must be an underlaying problem with the new kernel (or my compilation at least) since the same problem also affects games that uses 3D, i.e. Labyrinth Lite for example.
The same "hw3d_open: can't open hw3d while suspending" can be seen when playing Labyrinth...
Just to add... after rebooting the problem does not usually show up immediately... meaning I will see the weather clouds etc (and games run smoothly). But after using the phone for a short while, i.e. unlocking a couple of times and perhaps opening a few 3D related apps the problem will appear. A reboot will again make it OK for a while and so on...
As I promised, I'm back with feedback.
I've done some kernel tweaks and enabled overclocking and it works properly. I get no 3D issues whatsoever. I need to optimize it because it is not working as I want it to(speed wise).
Thanks RaduG, I'm re-building again as well... and will double check that the code is clean first. Hope it solves my 3D issues as well...
Could it be, that if the Device is going into a "powersave" mode, some functions are going into standby and cannot come up, when the device is awaken?
Could be something like that...
I just finished another recompile after making sure the code from HTC was properly clean (ready to build), when running it it again looked perfectly OK for some time... but after starting and stopping i.e. Labyrinth (3D mode) and locking/unlocking a couple of times the problem came back :-(
I found a dmesg log indicating that the 3D "device" failed to suspend:
Code:
<6>[ 1272.269500] [R] suspend start
<6>[ 1272.275177] PM: Syncing filesystems ... done.
<4>[ 1272.281707] Freezing user space processes ... (elapsed 0.05 seconds) done.
<4>[ 1272.336822] Freezing remaining freezable tasks ... (elapsed 0.00 seconds) done.
<3>[ 1272.362335] pm_op(): platform_pm_suspend+0x0/0x58 returns 1
[B]<3>[ 1272.363372] PM: Device msm_hw3d.0 failed to suspend: error 1[/B]
<3>[ 1272.363891] PM: Some devices failed to suspend
For me the following steps solved my problem...
I noticed that during compilation a few warnings was thrown related to the file "arch/arm/mach-msm/hw3d.c". When looking deeper into this it seems that the driver suspend function was wrong.
I therefore applied the following changes, and the problem has not re-occurred since then:
Code:
diff -crB hero-2.6.29-5f74b252/arch/arm/mach-msm/hw3d.c hero-2.6.29-5f74b252-pon/arch/arm/mach-msm/hw3d.c
*** hero-2.6.29-5f74b252/arch/arm/mach-msm/hw3d.c 2010-06-15 17:58:03.000000000 +0800
--- hero-2.6.29-5f74b252-pon/arch/arm/mach-msm/hw3d.c 2010-07-06 21:02:59.288988755 +0800
***************
*** 645,651 ****
}
#ifndef CONFIG_MSM_HW3D_EARLYSUSPEND_ENABLED
! static void hw3d_suspend(struct platform_device *pdev)
{
struct hw3d_info *info = platform_get_drvdata(pdev);
unsigned long flags;
--- 645,651 ----
}
#ifndef CONFIG_MSM_HW3D_EARLYSUSPEND_ENABLED
! static int hw3d_suspend(struct platform_device *pdev, pm_message_t state)
{
struct hw3d_info *info = platform_get_drvdata(pdev);
unsigned long flags;
your patch is very usaful!
I'm glad if you find it useful
So what did RaduG change?
Guys, you're really crazy, doing kernel hacking and stuff... and I'm loving it
I was wondering: if these are the official kernel sources, HTC should have used these sources for the official kernel. So, why doesn't this happen with the official kernel?
xdafalter said:
Guys, you're really crazy, doing kernel hacking and stuff... and I'm loving it
I was wondering: if these are the official kernel sources, HTC should have used these sources for the official kernel. So, why doesn't this happen with the official kernel?
Click to expand...
Click to collapse
Because they removed a few lines of codes to "fully" support all the hardware
I'm kinda wondering the same thing, it's hard to know if the source is really the exact one that HTC used for our device. But it could also be affected by i.e. which gcc version was used to compile it. I'm gonna compare the GCC version as soon as I bother to boot up the official kernel again. I'm currently using arm-eabi-4.3.1 (because it's the only one I happen to have installed) while I've seen that most people seem to use arm-eabi-4.4.0 by now.
Regardless of if another compiler would make it work I think I will stick to the patch, as this is the expected format of a suspend function for a platform driver of this kernel version
Code:
struct platform_driver {
int (*probe)(struct platform_device *);
int (*remove)(struct platform_device *);
void (*shutdown)(struct platform_device *);
[B]int (*suspend)(struct platform_device *, pm_message_t state);[/B]
int (*suspend_late)(struct platform_device *, pm_message_t state);
int (*resume_early)(struct platform_device *);
int (*resume)(struct platform_device *);
struct device_driver driver;
};
As you would see it's supposed to return an int (not void) as well as taking an additional parameter (pm_message_t).
Hi, All,
I have some problems while compiling the WIFI driver with this kernel.
it seems something changed we didn't know with the WIFI support? I use the same .config works great with the leak version of kernel source, but with this official one, it doesn't work.
if I check the wlan.ko module with insmod, it can be loaded.
and use lsmod, it's there but just not work.
witysimon said:
Hi, All,
I have some problems while compiling the WIFI driver with this kernel.
it seems something changed we didn't know with the WIFI support? I use the same .config works great with the leak version of kernel source, but with this official one, it doesn't work.
if I check the wlan.ko module with insmod, it can be loaded.
and use lsmod, it's there but just not work.
Click to expand...
Click to collapse
cant confirm that, wifi is working fine here, sure you rebuild your wlan.ko with the new kernel sources and not using the old one?
Hey devs,
I'm in training of possibly becoming a future dev to xda, with the help of Magnus.
I need a guide or actually some pointers in how to compile a kernel from a source. or even building. Doesn't matter, as long as i can get a great kernel up and running, gonna try make a decent rom without just visual mods.
SO, if you have a inside-tip or maybe came across a link to a guide, i would really appreciate it. Learning to build for me evo. Maybe even help others with there current roms. Thanks XDA.
NEEDS to be for EVO though. Again thanks.
http://developer.htc.com/
http://developer.android.com/
Please post questions in relevant forums. ie, this should've probably gone to General Android Q&A, not EVO Android Development.
Thanks. I was contiplating which one it went to...but i just stuck it here. Thanks though
Sent from my PC36100 using XDA App
Moved to Q&A with redirect, as question regarding development
Here's a guide i used for the hero that worked. You can most likely skip the second step because your gonna want to download the source code yourself. Just some help.
http://forum.xda-developers.com/showpost.php?p=5447589
Here's a question for any devs out there....I have been able to compile kernels on ubuntu but anyone compiled on a mac? Any guildes out there?
I'd recommend these instructions as they are ubber detailed:
http://forum.androidcentral.com/htc...how-build-your-own-kernel-package-source.html
Alright thanks so much for the guides. will check them all out.
david279 said:
Here's a guide i used for the hero that worked. You can most likely skip the second step because your gonna want to download the source code yourself. Just some help.
http://forum.xda-developers.com/showpost.php?p=5447589
Click to expand...
Click to collapse
Thanks man great link I will try that out this weekend..
spiicytuna said:
I'd recommend these instructions as they are ubber detailed:
http://forum.androidcentral.com/htc...how-build-your-own-kernel-package-source.html
Click to expand...
Click to collapse
Thanks, two is always better than one.
spiicytuna said:
I'd recommend these instructions as they are ubber detailed:
http://forum.androidcentral.com/htc...how-build-your-own-kernel-package-source.html
Click to expand...
Click to collapse
I love this guide. Its very depictive. Gonna run the compiling process tonight. Just by reading it, i feel like i can already see it working.....hqha
error while loading new compiled Linux kernel image into the android emulator
I have successfully compiled Linux kernel for android:
[email protected]:~/common# ARCH=arm CROSS_COMPILE=~/mydroid/prebuilt/linux-x86/toolchain/arm-eabi-4.4.0/bin/arm-eabi- make
CHK include/linux/version.h
make[1]: `include/asm-arm/mach-types.h' is up to date.
CHK include/linux/utsrelease.h
.
.
.
SYMLINK include/asm -> include/asm-arm
CALL scripts/checksyscalls.sh
<stdin>:1097:2: warning: #warning syscall fadvise64 not implemented
<stdin>:1265:2: warning: #warning syscall migrate_pages not implemented
<stdin>:1321:2: warning: #warning syscall pselect6 not implemented
<stdin>:1325:2: warning: #warning syscall ppoll not implemented
<stdin>:1365:2: warning: #warning syscall epoll_pwait not implemented
CHK include/linux/compile.h
Kernel: arch/arm/boot/Image is ready
Kernel: arch/arm/boot/zImage is ready
Building modules, stage 2.
MODPOST 157 modules
[email protected]:~/common#
but i get the following error while loading this images in the emulator:
[email protected]:~/android-sdk-linux_x86/tools# ./emulator -avd avd1.5 -kernel ~/common/arch/arm/boot/zImage -show-kernel -verbose
emulator: found SDK root at /home/preetam/android-sdk-linux_x86
emulator: root virtual device file at /home/preetam/.android/avd/avd1.5.ini
.
.
.
yaffs_read_super: isCheckpointed 0
sh: can't access tty; job control turned off
# init: cannot find '/system/bin/playmp3', disabling 'bootsound'
init: cannot find '/system/bin/dbus-daemon', disabling 'dbus'
eth0: link up
init: untracked pid 578 exited
init: untracked pid 579 exited
warning: `rild' uses 32-bit capabilities (legacy support in use)
init: untracked pid 601 exited
init: untracked pid 592 exited
init: untracked pid 605 exited
init: untracked pid 602 exited
init: untracked pid 609 exited
init: untracked pid 606 exited
init: critical process 'servicemanager' exited 4 times in 4 minutes; rebooting into recovery mode
save exit: isCheckpointed 1
save exit: isCheckpointed 1
Restarting system with command 'recovery'.
Reboot failed -- System halted
and the emulator didn't start with the new kernel image(emulator didn't reboot). what is the problem here..?? and how can i replace my emulator's image with newly compiled Linux permanently??
please help. thank you!
Ok, finally got the build environment finished, got a successful 'generic' Gingerbread build done.
Now what the hell do I do with the files? I've got a ramdisk.img / system.img / userdata.img in my 'OUT' directory.
I'm figuring I just flash them to the phone and see what happens...
Doward said:
Ok, finally got the build environment finished, got a successful 'generic' Gingerbread build done.
Now what the hell do I do with the files? I've got a ramdisk.img / system.img / userdata.img in my 'OUT' directory.
I'm figuring I just flash them to the phone and see what happens...
Click to expand...
Click to collapse
after make did you try a make -j{whatever} otapackage?
Doing so now... what's this going to do? Set it up as a flashable zip file?
*EDIT*
make-3.81: *** No rule to make target `otapackage'. Stop.
Yeah, I had to recompile make 3.81 from scratch, then stuck it in my /bin as make-3.81
Anyone mind helping a fellow noob out on some steps on how to build a gingerbread rom?
digitalrurouni said:
Anyone mind helping a fellow noob out on some steps on how to build a gingerbread rom?
Click to expand...
Click to collapse
I'm trying to work out how to at least attempt to load the image in the Emulator, before testing it on my phone...
Well, copying system.img into my android 2.2 and 2.3 AVD directories yields - boots 2.3 no problem, 2.2 does not boot.
My first reaction is that the 2.2 kernel's not compatible with the 2.3 system.img, but isn't the kernel included in system.img?
Doward said:
Well, copying system.img into my android 2.2 and 2.3 AVD directories yields - boots 2.3 no problem, 2.2 does not boot.
My first reaction is that the 2.2 kernel's not compatible with the 2.3 system.img, but isn't the kernel included in system.img?
Click to expand...
Click to collapse
The kernel is packed in to the boot.img
xHausx said:
The kernel is packed in to the boot.img
Click to expand...
Click to collapse
When you compile Android from source, where is boot.img located?
Under out/target/product/generic, I have ramdisk.img, system.img, and userdata.img - no boot.img.
Doward said:
When you compile Android from source, where is boot.img located?
Under out/target/product/generic, I have ramdisk.img, system.img, and userdata.img - no boot.img.
Click to expand...
Click to collapse
The boot.img is made from the kernel and ramdisk. See below
HOWTO: Unpack, Edit and Repack Boot Images
error while loading new compiled Linux kernel image into the android emulator
I have successfully compiled Linux kernel for android:
[email protected]:~/common# ARCH=arm CROSS_COMPILE=~/mydroid/prebuilt/linux-x86/toolchain/arm-eabi-4.4.0/bin/arm-eabi- make
CHK include/linux/version.h
make[1]: `include/asm-arm/mach-types.h' is up to date.
CHK include/linux/utsrelease.h
.
.
.
SYMLINK include/asm -> include/asm-arm
CALL scripts/checksyscalls.sh
<stdin>:1097:2: warning: #warning syscall fadvise64 not implemented
<stdin>:1265:2: warning: #warning syscall migrate_pages not implemented
<stdin>:1321:2: warning: #warning syscall pselect6 not implemented
<stdin>:1325:2: warning: #warning syscall ppoll not implemented
<stdin>:1365:2: warning: #warning syscall epoll_pwait not implemented
CHK include/linux/compile.h
Kernel: arch/arm/boot/Image is ready
Kernel: arch/arm/boot/zImage is ready
Building modules, stage 2.
MODPOST 157 modules
[email protected]:~/common#
but i get the following error while loading this images in the emulator:
[email protected]:~/android-sdk-linux_x86/tools# ./emulator -avd avd1.5 -kernel ~/common/arch/arm/boot/zImage -show-kernel -verbose
emulator: found SDK root at /home/preetam/android-sdk-linux_x86
emulator: root virtual device file at /home/preetam/.android/avd/avd1.5.ini
.
.
.
yaffs_read_super: isCheckpointed 0
sh: can't access tty; job control turned off
# init: cannot find '/system/bin/playmp3', disabling 'bootsound'
init: cannot find '/system/bin/dbus-daemon', disabling 'dbus'
eth0: link up
init: untracked pid 578 exited
init: untracked pid 579 exited
warning: `rild' uses 32-bit capabilities (legacy support in use)
init: untracked pid 601 exited
init: untracked pid 592 exited
init: untracked pid 605 exited
init: untracked pid 602 exited
init: untracked pid 609 exited
init: untracked pid 606 exited
init: critical process 'servicemanager' exited 4 times in 4 minutes; rebooting into recovery mode
save exit: isCheckpointed 1
save exit: isCheckpointed 1
Restarting system with command 'recovery'.
Reboot failed -- System halted
and the emulator didn't start with the new kernel image(emulator didn't reboot). what is the problem here..?? and how can i replace my emulator's image with newly compiled Linux permanently??
please help. thank you!
Was this ever resolved because I'm having the same issue. .
Hello,
I was wondering if there is a Lineage OS distribution for Lenovo Tab 11 Pro with the reference TB-J716F. If not, is it possible for me to build one? I'm a noob in custom ROMs, but I'm willing to learn
LinageOS doesn't specifically support this tablet. You can however flash a GSI (Generic System Image) since this tablet supports Project Treble with this guide. Make sure you have updated to the latest ZUI update before flashing the GSI.
Right now I'm using Andy Yan's LineageOS GSI builds, they work great on this tablet
The GSI used to have some annoying bugs but after the latest ZUI 14 update they got fixed.
I tried making a normal LineageOS port, but it's really hard and the build process always takes very long. The errors are hard to understand too
Ungeskriptet said:
LinageOS doesn't specifically support this tablet. You can however flash a GSI (Generic System Image) since this tablet supports Project Treble with this guide. Make sure you have updated to the latest ZUI update before flashing the GSI.
Right now I'm using Andy Yan's LineageOS GSI builds, they work great on this tablet
The GSI used to have some annoying bugs but after the latest ZUI 14 update they got fixed.
I tried making a normal LineageOS port, but it's really hard and the build process always takes very long. The errors are hard to understand too
Click to expand...
Click to collapse
Thanks, I'll check all of that once I managed to get my tab working.........
Ungeskriptet said:
LinageOS doesn't specifically support this tablet. You can however flash a GSI (Generic System Image) since this tablet supports Project Treble with this guide. Make sure you have updated to the latest ZUI update before flashing the GSI.
Right now I'm using Andy Yan's LineageOS GSI builds, they work great on this tablet
The GSI used to have some annoying bugs but after the latest ZUI 14 update they got fixed.
I tried making a normal LineageOS port, but it's really hard and the build process always takes very long. The errors are hard to understand too
Click to expand...
Click to collapse
I managed to install LineageOS. But I cannot install twrp using your image.
These are my logs:
Code:
01-01 08:33:29.842 0 0 I init : starting service 'recovery'...
01-01 08:33:29.847 756 756 F linker : CANNOT LINK EXECUTABLE "/system/bin/vendor.qti.hardware.vibrator.service": library "android.hardware.vibrator-V1-ndk_platform.so" not found: needed by main executable
01-01 08:33:29.847 0 0 I init : Service 'vendor.qti.vibrator' (pid 756) exited with status 1
01-01 08:33:29.847 0 0 I init : Sending signal 9 to service 'vendor.qti.vibrator' (pid 756) process group...
01-01 08:33:29.847 0 0 I libprocessgroup: Successfully killed process cgroup uid 0 pid 756 in 0ms
01-01 08:33:29.882 755 755 W libc : Unable to set property "ro.twrp.boot" to "1": error code: 0xb
01-01 08:33:29.882 755 755 W libc : Unable to set property "ro.twrp.version" to "3.6.1_11-0": error code: 0xb
01-01 08:33:29.882 0 0 E init : Unable to set property 'ro.twrp.boot' from uid:0 gid:0 pid:755: Read-only property was already set
01-01 08:33:29.882 0 0 E init : Unable to set property 'ro.twrp.version' from uid:0 gid:0 pid:755: Read-only property was already setunsupported, phys idx 0
01-01 08:33:29.900 755 755 F libc : Fatal signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 0x10 in tid 755 (recovery), pid 755 (recovery)
01-01 08:33:29.902 758 758 F libc : failed to exec crash_dump helper: No such file or directory
01-01 08:33:29.903 755 755 F libc : crash_dump helper failed to exec
01-01 08:33:29.908 0 0 I init : Service 'recovery' (pid 755) received signal 11
redblood252 said:
I managed to install LineageOS. But I cannot install twrp using your image.
These are my logs:
Code:
01-01 08:33:29.842 0 0 I init : starting service 'recovery'...
01-01 08:33:29.847 756 756 F linker : CANNOT LINK EXECUTABLE "/system/bin/vendor.qti.hardware.vibrator.service": library "android.hardware.vibrator-V1-ndk_platform.so" not found: needed by main executable
01-01 08:33:29.847 0 0 I init : Service 'vendor.qti.vibrator' (pid 756) exited with status 1
01-01 08:33:29.847 0 0 I init : Sending signal 9 to service 'vendor.qti.vibrator' (pid 756) process group...
01-01 08:33:29.847 0 0 I libprocessgroup: Successfully killed process cgroup uid 0 pid 756 in 0ms
01-01 08:33:29.882 755 755 W libc : Unable to set property "ro.twrp.boot" to "1": error code: 0xb
01-01 08:33:29.882 755 755 W libc : Unable to set property "ro.twrp.version" to "3.6.1_11-0": error code: 0xb
01-01 08:33:29.882 0 0 E init : Unable to set property 'ro.twrp.boot' from uid:0 gid:0 pid:755: Read-only property was already set
01-01 08:33:29.882 0 0 E init : Unable to set property 'ro.twrp.version' from uid:0 gid:0 pid:755: Read-only property was already setunsupported, phys idx 0
01-01 08:33:29.900 755 755 F libc : Fatal signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 0x10 in tid 755 (recovery), pid 755 (recovery)
01-01 08:33:29.902 758 758 F libc : failed to exec crash_dump helper: No such file or directory
01-01 08:33:29.903 755 755 F libc : crash_dump helper failed to exec
01-01 08:33:29.908 0 0 I init : Service 'recovery' (pid 755) received signal 11
Click to expand...
Click to collapse
You shouldn't need TWRP.
mikefnz said:
You shouldn't need TWRP.
Click to expand...
Click to collapse
Why not? All I have is stock rom recovery....
redblood252 said:
Why not? All I have is stock rom recovery....
Click to expand...
Click to collapse
Just need adb & fastboot
For example:
Download vbmeta.img from google
Reboot to fastboot
Open an cmd:
fastboot flash vbmeta vbmeta.img
fastboot reboot fastboot
fastboot flash system XYZ.img
fastboot reboot recovery
Make an factory reset
Reboot