While porting SGH-T959V to the aries kernel, we've ran into a rather nasty SoD.
Without further ado, here is what I see on the usb-uart:
Code:
[ 168.243223] (hpd_status = 0)++
[ 171.568772] wm8994_set_mic_bias: HWREV=13, on=0
[ 171.581786] PM: Syncing filesystems ... done.
[ 171.591614] Freezing user space processes ... (elapsed 0.01 seconds) done.
[ 171.614047] Freezing remaining freezable tasks ... (elapsed 0.01 seconds) done.
[ 171.633556] Suspending console(s) (use no_console_suspend to debug)
Then the device never comes back from suspend. The power button, nor any other button on the phone will wake the phone.
This issue does not happen if:
usb is plugged in
a device that holds a wakelock, such as sdhc/mmc, is active. So: logging to sdcard
So the only way for me to debug the issue is over usb-uart or internal uart (which I'm still working on trying to solder correctly).
My first assumption is that a gpio pin is set incorrectly, but I've spent the last 3 months tinkering around with gpio settings and got no where.
I've also tried enabling power management (both platform specific and generic) debugging, and followed the basic pm debugging documentation in the kernel.
I get zero information about which device is either failing to suspend or any evidence as to where I should look.
At first we suspected the ril (samsung-modemctl), but after I checked out a commit before that code was committed and disabled rild in our init.aries.rc, I was able to reproduce the issue. So that rules out ril/samsung-modemctl.
I'm was also thinking it might have been one of the gpio interrupt pins, and I went through each pin and tried changing settings with no change.
Any help would be most appreciated, as I'm at a loss to where I should go next.
I am more then happy to test any theories and provide verbose results.
Here is the full log to boot:
http://pastebin.com/ymxU7qTM
Here is what happens when I turn off the screen:
Code:
[ 32.282978] request_suspend_state: sleep (0->3) at 31638909909 (2012-11-13 08:09:37.690081300 UTC)
[ 32.325302] (hpd_status = 0)++
[ 32.558317] PM: Syncing filesystems ... done.
[ 32.571488] Freezing user space processes ... (elapsed 0.01 seconds) done.
[ 32.590714] Freezing remaining freezable tasks ... (elapsed 0.01 seconds) done.
[ 32.610223] Suspending console(s) (use no_console_suspend to debug)
Is any of the core files open source?? Like who made it? My friend told me he saw a protection on the core files
Sent from my SGH-T959V using xda app-developers app
xtrem88 said:
Is any of the core files open source?? Like who made it? My friend told me he saw a protection on the core files
Sent from my SGH-T959V using xda app-developers app
Click to expand...
Click to collapse
Everything is up on github.
Sync cm9 like normal:
Code:
mkdir android
cd android
repo init -u https://github.com/CyanogenMod/android.git -b ics
Add the local_manifest.xml:
Code:
cd .repo
wget http://bhundven.github.com/CM9/local_manifest.xml
cd ..
Sync the repo:
Code:
repo sync -j<# of repos to sync in parallel>
What do you mean by:
xtrem88 said:
he saw a protection on the core files
Click to expand...
Click to collapse
according to him its " The Pieces of Codes That Is Responsible For Pinging the Device's rtc and Boot Loader Has A Unique SLL Pinging ID On It.... and Since It locked For A Specific Type Of Hardware; The Only thing To Do Is To Dissemble The ROM And Re program It......"
this might be far fetched but im always about finding a small way around, but is there anyways we could make a loop so when the screen is off we can keep the sdhc/mmc active or make the phone think usb is plugged in?
dsexton702 said:
this might be far fetched but im always about finding a small way around, but is there anyways we could make a loop so when the screen is off we can keep the sdhc/mmc active or make the phone think usb is plugged in?
Click to expand...
Click to collapse
I downloaded the whole kernel from bhundven's git, I am trying to see the kernel
debugging parameters, but I don't know where to look exactly, what I wanted
to see if "no_console_suspend" is set to 1. I don't know if we can boot the kernel
with this parameter from the terminal :/
more specifically:
Kernel panic during suspend
Debugging suspend/resume issues can be difficult if the kernel panics during suspend, especially late in the suspend because console messages are disabled. One can stop console messages from being suspended by using the kernel parameter no_console_suspend:
no_console_suspend=1
This will force the console not to suspend. Boot with this option, chvt 1 (to console #1), and suspend using pm-suspend
Click to expand...
Click to collapse
Some valuable information about kernel debugging found here:
https://wiki.ubuntu.com/Kernel/KernelDebuggingTricks
Although it is for ubuntu kernel, but android is quite similar I think.
It could be Heisenbug that bryan mentioned before as a side effect of printk causing a slow down and
race condition issue.
but probably bryan already did that.. I don't really know, just throwing ideas here and there.. Sorry for reviving the thread btw
Rebel_X said:
I downloaded the whole kernel from bhundven's git, I am trying to see the kernel
debugging parameters, but I don't know where to look exactly, what I wanted
to see if "no_console_suspend" is set to 1. I don't know if we can boot the kernel
with this parameter from the terminal :/
more specifically:
Some valuable information about kernel debugging found here:
https://wiki.ubuntu.com/Kernel/KernelDebuggingTricks
Although it is for ubuntu kernel, but android is quite similar I think.
It could be Heisenbug that bryan mentioned before as a side effect of printk causing a slow down and
race condition issue.
but probably bryan already did that.. I don't really know, just throwing ideas here and there.. Sorry for reviving the thread btw
Click to expand...
Click to collapse
No way, any help I can get on this the better it will be for the sgs4g users.
I'm not at a place where I can review the link or do anything, but I will check it out.
'no_console_suspend' also stops the SoD.
Sent from my SAMSUNG-SGH-I717 using Tapatalk 2
Related
kaiser ubuntu port based on zubuntu by Omegamoon for Sharp Zaurus was successfully launched on HTC Nike!
Instructions:
1. download kernel
http://84.23.71.227/kerneloftheday/zImageUbuntu
2. download ubuntu basefiles and rootfs
3. place ubuntu.img, haret, initrd.gz and zImageUbuntu to Storage Card/ubuntu/
4. place this default.txt there too
Code:
set RAMADDR 0x10000000
set MTYPE 1724
set KERNEL zImageUbuntu
set initrd initrd.gz
set cmdline "pm.sleep_mode=1 mddi.width=320 mddi.height=480 lcd.density=160 board-htcnike-keypad.keypadlayout=1 board-htcnike-keypad.sticky_timer_time_ms=350 no_console_suspend"
boot
5. change board-htcnike-keypad.keypadlayout=1 to 0 if you have 20key nike.
6. run haret and press "Run", ubuntu & kernel will be loaded to login prompt, login with username root and no password, you will get root shell.
7. write
Code:
export TSLIB_TSDEVICE=/dev/input/event0
ts_calibrate
and calibrate your screen.
8. write startx and see LXDE running on your nike! you've got real linux box in pocket!
Note, rootfs for ubuntu needs 1GB of free space on your sdcard!
For now, you cannot work with screen, we have some difference from kaiser panel's, i.e. ubuntu gui is completely unusable, this thread were started to find out why.
based on this thread from kaiser forum.
Credits: dzo, Omegamoon, domy007, mblaster and guys from Rhodubuntu thread.
I dont get any response when i try to calibrate screen on niki 200
thats strange, it must work.
I will debug on touchscreen problems, but ubuntu running and that is great, now we have only input-devices problems, and this is more better than nothing.
Sounds great, but wouldn't it be better to try something smaller like puppylinux or Feather linux ?
zubuntu is only we have compiled for ARM and working with our hardware that starts X and tested on other htc's devices.
rzk333 said:
zubuntu is only we have compiled for ARM and working with our hardware that starts X and tested on other htc's devices.
Click to expand...
Click to collapse
Ok thanks for the information, did some reading before and was always wondering why they use ubuntu but this answer set things straight.
Greetz,
Great to see a full linux distro around for htc devices. I will fix the '_' tomorrow... Any other missing characters?
How is the speed of ubuntu? Is it very sluggish or usable?
'=' character maybe, for export line.
zImageUbuntu is updated (your link is still valid).
'=' and '-'are on '*'-button, '_' is Alt-
I have included the msm_fb_refresh and the keypad changes into my auto-updated-kernel, so you should be able to use the fresh kernels from my thread with ubuntu if you want recent updates (zImageUbuntu is not automatically updated).
got some progress,
1) msm refresh thread seems to disable sleep mode in android, thread polls framebuffer many times in second and drains battery.
2) linux logo on bootup must be disabled - logo gets over ts_calibrate's first crosshair point.
2) still trying to make touchscreen and tslib friends - i2c bus debug messages logs saying that touchscreen is connected and recieves data correctly.
found some data:
/dev/input/event0 - htcnike-kbd
/dev/input/event1 - htcnike-ts
but still no data from touchscreen...
rzk333 said:
got some progress,
1) msm refresh thread seems to disable sleep mode in android, thread polls framebuffer many times in second and drains battery.
2) linux logo on bootup must be disabled - logo gets over ts_calibrate's first crosshair point.
2) still trying to make touchscreen and tslib friends - i2c bus debug messages logs saying that touchscreen is connected and recieves data correctly.
found some data:
/dev/input/event0 - htcnike-kbd
/dev/input/event1 - htcnike-ts
but still no data from touchscreen...
Click to expand...
Click to collapse
Disabled msm refresh thread from the android kernels again. The kernel you linked in your first post is now automatically updated with anything new in the repository. Bootlogo is disabled, too. Good luck with tslib, let me know if when you need something else to be hacked into the kernel.
mblaster
I've just test the usb ether function in the zImage from the post
showthread.php?p=6675397
and it works just fine.
(Just when I had managed to make adbd works... but ssh is more reliable)
Thanks gTan64.
wow, that is good, now I can dump system state without hours of keyboard typing
I've managed to get internet by usb (cdc only) thanks to gTan64: just apply the patch from is post ("Debian on the vogue"), you can extract it from the download links.
And the TOUCHSCREEN WORK!!!!!!!
But you need to compile tslib from the tslib git (github.com/kergoth/tslib.git), the one in the rootfs from this post doesn't work.
Will make a more complete post later, I think.
Bye.
Ubuntu always shows me a black screen when I try to startup it!
What can I do make it work?
omg, I knew that something is wrong with tslib in this rootfs!
thanks for r&d, if you will make some packages & mans, I'll add them to first post.
Maybe you can upload some pics ?
But you need to compile tslib from the tslib git
Click to expand...
Click to collapse
I tried to compile - but no luck, autoconf fails to make configure...
I also uploaded debian rootfs and posted links in gTan's Debian on Vogue thread.
nothing happened last month?
This is useful for identifying phones on the local networks by looking at DHCP lease tables in the routers. It doesn't make your phone appear on Windows networks, since the phone needs to broadcast NetBIOS name for that. If you want your phone to show up on Windows networks (and share files) - you need Samba server, and JimmyChingala is working on one.
ROM developers can insert the option to customize hostname using the way described below in their Spare Parts options. Feel free to do so.
[SOLUTION]
The following shell command does the job of changing WiFi hostname:
echo YOURHOSTNAME > /proc/sys/kernel/hostname
Click to expand...
Click to collapse
For the change to stay, it should be executed on each boot. And here the things start being more problematic.
For custom ROMs:
Most, if not all, custom ROMs include some user init shell script that will be executed on boot, making the solution easy.
Enter the following line in the Terminal / ADB shell:
echo "echo YOURHOSTNAME > /proc/sys/kernel/hostname" >> the_path_and_name_of_userinit_script.sh
chmod 777 the_path_and_name_of_userinit_script.sh
Click to expand...
Click to collapse
Several examples of custom ROMs and their userinit scripts:
Suggested - will work for most ROMs (creates another file in directory of autoexecuted scripts): /etc/init.d/88hostnameinit
Additional possibility for Enomther's ROM: /data/local/userinit.sh
Additional possibility for CyanogenMOD: /sd-ext/userinit.sh
For stock ROMs:
There is no autorun script for stock ROMs, so they have to be added through modifying boot.img. It's a complicated procedure, and even though guides exist for it - I suggest not to mess with it only because of the hostname. The easiest solution would be to create a script file with the line above using Gscript or other scripting solutions, and execute it after each reboot. If anyone really wishes to modify boot.img - I assume that he/she knows enough about Linux/Android since it can be relatively easily done only on Linux, can find the necessary guides with some googling (like I did), and in this case the modification is easiest to do directly in init.rc - changing "hostname localhost" to "hostname name_of_your_choice".
[ORIGINAL POST]
Hi people,
I'm not much of a dev, but I can find my way around with a bit of Google search And sorry about the links that don't link, new user's permissions don't allow me to...
Anyway, after messing with my router today I've noticed that Nexus transmits "localhost" as its host name to DHCP server, causing my DD-WRT to show it as "*". I went to Google and to my surprise, discovered that there isn't such an option in any Nexus ROM yet.
Found this: LINK_www_laslow_net_?p=501
To change your hostname on Cyanogen 5.x, add the following line to the bottom of /system/etc/init.d/01sysctl -- and make sure you make a backup of 01sysctl before editing it!
echo NEWHOSTNAME > /proc/sys/kernel/hostname
Click to expand...
Click to collapse
I tested it, and it didn't work. After booting, the file still read "localhost" in it, and the hostname on DHCP server reflected it.
But, I didn't get frustrated, connected with ADB, manually executed the command:
echo MyHostName > /proc/sys/kernel/hostname
checked that the file was overwritten, disabled WiFi, deleted DHCP lease, enabled WiFi back - and voila, I have a new hostname!
Then I went to search for hostname setting, which got me to /init.rc:
on boot
# basic network init
ifup lo
hostname localhost
domainname localdomain
Click to expand...
Click to collapse
Well, I guess that's the place. A tiny problem, though - it's in the boot image, which can't be easily modified. Thanks to the latest thread on update.zip creation I can probably do it myself, but I wanted to share the findings and ask for the correct way to implement.
There's a "dirty but functional" way of "disable WiFi - override /proc/sys/kernel/hostname - enable WiFi", and it's probably not a problem to stick it somewhere in the boot sequence, or even write an app that writes those changes to one of the boot scripts and allows configuration of host and domain names. But it's not the best way - DHCP might already give out a lease, and the new host name might not register.
And there's a correct (?) way of doing it, introducing it into init.rc. Since it's "on boot", I suppose that it runs after mounting the partitions - which means that the partitions are already accessible.
In this case, the best way would be executing a small shell script that would check for existence of, say, "/system/etc/settinghostdomainnames.rc" and create a default one if it's not there, then use "import /system/etc/settinghostdomainnames.rc" and set a manual trigger, like the guy is trying to do here:
LINK_groups.google.co.jp_group_android-developers_browse_thread_thread_e2f432707b735ff0
"trigger someeventtobringupnetworkinterface"
That would allow to use a custom setting for host and domain names that can be changed by SW, and adding that as another option into ROM Settings app or external app.
But the guy in question didn't succeed. What did he miss? Would it be better to do something like "on fakesystemproperty=something" and instead of manual trigger, doing "setprop fakesystemproperty something"?
I can probably test it and find out myself, but it would take loads of time compared to one of the kernel devs, and I don't even have the environment set up for modifying boot images. I was kinda hoping that one of the kernel devs would test it. I can write and post the modifications to init.rc and the custom script, they're very simple.
So, who can help me with answering the questions in the thread, and/or testing the modification?
Thanks! It's back.
Oh well, I'll keep preparing Ubuntu VM anyway
OK, first test fired - updated /init.rc in my own boot.img, checked the values. It's working, hostname is indeed modified.
Now I'll try to rewrite /init.rc in such way as to load the hostname setting from elsewhere, while not screwing the security. Will post results soon.
Setting it to the same value as the BT value would be ideal. I'm not sure how you could do that though, because the init scripts run before the frameworks load
Looking forward for a fix to this problem.
Update, but only partially on topic:
God, I hate SH scripting. Couldn't even google a normal tutorial that would explain where I went wrong. A script of 10 lines, and I can't make it work.
Let's see, I need something like this:
#!/system/bin/sh
echo "on service-exited-network_prepare" > /system/etc/net_init.rc
echo " ifup lo" >> /system/etc/net_init.rc
if [ -e "/system/etc/net_init.domain" ];
then
echo "hostname `cat /system/etc/net_init.host`" >> /system/etc/net_init.rc
else
echo "hostname localhost" >> /system/etc/net_init.rc
fi
if [ -e "/system/etc/net_init.domain" ];
then
echo "domainname `cat /system/etc/net_init.domain`" >> /system/etc/net_init.rc
else
echo "domainname localdomain" >> /system/etc/net_init.rc
fi
echo >> /system/etc/net_init.rc
Of course, this thing fails miserably with -
Syntax error: end of file unexpected (expecting "then")
What the hell am I doing wrong? Never used SH before, mostly tcsh and perl.
Thanks.
Oh well, I guess I got the problem.. Unix vs Windows file format. Sorry for bothering.
its always bothered me that you cant change the device name for wifi networks, and ive always looked for a way to change it.
kudos to you for the ambition and diligence to do it!
dont give up, if you can get it smoothed out enough im sure cyanogen will implement it in his next mod. ive always wished there was an option in wifi settings to change device name. itd be very useful for lan ip configuring and when your connected to a random hotspot lol
Ok, after fighting for a day, I still didn't manage to import another .RC file and run on service exit (I don't even see the trace of the process I'm trying to start - the first thing it does is attempting to write log, and there is no log, no matter where I put the start command), but at least for a "quick-and-dirty way" there's a very simple solution, given SD-EXT partition (I believe everyone creates it):
open terminal application, type the following command:
echo "echo YOURHOSTNAME > /proc/sys/kernel/hostname" > /sd-ext/userinit.sh
That would override the hostname of the system before boot completion.
After some reading, I believe there's nothing bad in setting the hostname twice - once default localhost in init.rc, and then overriding it using /proc/sys directory, Linux is designed to cope with that and hopefully so does Android.
So, as to pershoot's request, it's possible to write a small application to read Bluetooth device name value and write it as WiFi hostname, and include it in boot process right before 20userinit.
Now this is a task I'm not suitable for, I have no knowledge of frameworks whatsoever. Anybody up to the task?
Jack_R1 said:
After some reading, I believe there's nothing bad in setting the hostname twice - once default localhost in init.rc, and then overriding it using /proc/sys directory, Linux is designed to cope with that and hopefully so does Android.
So, as to pershoot's request, it's possible to write a small application to read Bluetooth device name value and write it as WiFi hostname, and include it in boot process right before 20userinit.
Now this is a task I'm not suitable for, I have no knowledge of frameworks whatsoever. Anybody up to the task?
Click to expand...
Click to collapse
I requested it and I'm not pershoot
Oops Sorry, my bad. Fever and lots of time in front of the computer don't do me good...
Kudos to you Jack_R1. Watching this.
Let me know if you need any help with shell scripting.
Gonna watch this and try it out later, the solution so far.
is this a stable fix?
is this confirmed to work?
Sorted out, updated with the most current info and several examples of custom ROMs.
Jack_R1 said:
Sorted out, updated with the most current info and several examples of custom ROMs.
Click to expand...
Click to collapse
I am running CM6 with a2sd and somehow the /sd-ext/userinit.rc is not executed. Even if I change permissions of the file to 777, it's not executed.
I also haven't found in init.d the script which executes userinit.rc, might be because I am running custom kernel? (wildmonks).
The only way for me to do it was to put the script in /etc/init.d/88userinit file and change it's permissions to 777
It's /scripts/userinit.sh, not userinit.rc
The execution of /sd-ext/userinit.rc used to be in /init.rc, in boot.img.
But the preferred way for most of the ROMs is to use /etc/init.d/ scripts anyway, since a lot of ROMs use them.
Changed the 1st post to reflect it.
I just got my GSIV today and rooted it using the stickied root method. I have installed setcpu. The rom crashes the second I set the governor to MSM-DCVS. Any ideas?
PelPix said:
I just got my GSIV today and rooted it using the stickied root method. I have installed setcpu. The rom crashes the second I set the governor to MSM-DCVS. Any ideas?
Click to expand...
Click to collapse
My S4 GT-i9505 crash too...
PelPix said:
I just got my GSIV today and rooted it using the stickied root method. I have installed setcpu. The rom crashes the second I set the governor to MSM-DCVS. Any ideas?
Click to expand...
Click to collapse
Same here.... i searched and really have not found an answer.
Stacktrace from enabling msm-dcvs
Here's the relevant stack trace from the kernel panic when enabling the msm-dcvs governor.
Code:
[ 2811.452880] MSM_DCVS: msm_dcvs_freq_sink_start: msm_dcvs_freq_sink_start invalid dcvs_core_id = 0 returning -EINVAL
[ 2811.462585] ------------[ cut here ]------------
[ 2811.466979] kernel BUG at /opt/jenkins/android/workspace/android/jellybean/kernel/samsung/jf/drivers/cpufreq/cpufreq_gov_msm.c:206!
[ 2811.478790] Internal error: Oops - BUG: 0 [#1] PREEMPT SMP ARM
[ 2811.484557] Modules linked in: dhd vpnclient
[ 2811.488799] CPU: 0 Not tainted (3.4.0-cyanogenmod-gfbaa5c7 #1)
I've done a little cursory exploring and noticed that the CPU_OFFSET parameter starts at 1 on this kernel module, but it is being told to enable this governor on core 0, hence the message above. Not sure at the moment if it's the module's fault, or just some misconfiguration from settings activity when enabling this module.
I plan to look into this in a bit more depth sometime in the next few weeks(hopefully).
Follow up to stepheno's message
stephenopdx said:
Here's the relevant stack trace from the kernel panic when enabling the msm-dcvs governor.
Code:
[ 2811.452880] MSM_DCVS: msm_dcvs_freq_sink_start: msm_dcvs_freq_sink_start invalid dcvs_core_id = 0 returning -EINVAL
[ 2811.462585] ------------[ cut here ]------------
[ 2811.466979] kernel BUG at /opt/jenkins/android/workspace/android/jellybean/kernel/samsung/jf/drivers/cpufreq/cpufreq_gov_msm.c:206!
[ 2811.478790] Internal error: Oops - BUG: 0 [#1] PREEMPT SMP ARM
[ 2811.484557] Modules linked in: dhd vpnclient
[ 2811.488799] CPU: 0 Not tainted (3.4.0-cyanogenmod-gfbaa5c7 #1)
I've done a little cursory exploring and noticed that the CPU_OFFSET parameter starts at 1 on this kernel module, but it is being told to enable this governor on core 0, hence the message above. Not sure at the moment if it's the module's fault, or just some misconfiguration from settings activity when enabling this module.
I plan to look into this in a bit more depth sometime in the next few weeks(hopefully).
Click to expand...
Click to collapse
Hi, stephenopdx and I are working together on this issue in our free time. As a follow up, we've found that the call to msm_dcvs_scm_init is returning a non-zero value (specifically 4). This function is calling the command DCVD_CMD_INIT (command ID 5) in the SCM_SVC_DCVS service. The continues down to an ARM instruction call to move the processor into "secure mode" (aka TrustZone). I'd like to emphasize at this point that both stephenopdx are complete noobs when it comes to kernel development.
We are wondering:
1) Why, if the scm_call to DCVS_CMD_INIT fails, does the kernel continue on its merry way?
2) What does that return code of 4 mean?
3) What preconditions are necessary to initialize DCVS?
4) Is there a place where we can find reference materials (things like return codes and their meanings) for the Qualcomm MSM 8960 SoC? Googling for return code 4 was fairly futile.
5) Is there some sort of kernel debugger so that we can stop using terrible pr_err messages?
We can also produce stack traces or kernel panic logs (heavily augmented with demented pr_err messages to help us figure out what's going on) if anyone is interested.
Thanks!
Hi, since I closed my DEV threads there is no place for discussing development related things.
I've opened this thread so we can discuss any development related stuff (kernel etc).
Please keep the thread clean. I will report any non-low-level development posts.
ION kernel status
Kernel boots, lcd backlight is on but no image is shown.
I only get a display full of noise for half a second, after the following error occurs:
Code:
[ 8.994812] ------------[ cut here ]------------
[ 8.995025] WARNING: at /home/mike/android/cm10.1/kernel/semc/msm7x30/kernel/mutex.c:198 __mutex_lock_slowpath+0x70/0x27c()
[ 8.995483] Modules linked in:
[ 8.995758] [<c001428c>] (unwind_backtrace+0x0/0x11c) from [<c008a6f0>] (warn_slowpath_common+0x4c/0x64)
[ 8.996154] [<c008a6f0>] (warn_slowpath_common+0x4c/0x64) from [<c008a720>] (warn_slowpath_null+0x18/0x1c)
[ 8.996582] [<c008a720>] (warn_slowpath_null+0x18/0x1c) from [<c061b524>] (__mutex_lock_slowpath+0x70/0x27c)
[ 8.998138] [<c061b524>] (__mutex_lock_slowpath+0x70/0x27c) from [<c061b73c>] (mutex_lock+0xc/0x24)
[ 9.007171] [<c061b73c>] (mutex_lock+0xc/0x24) from [<c02988dc>] (mddi_host_timer_service+0x374/0x430)
[ 9.016448] [<c02988dc>] (mddi_host_timer_service+0x374/0x430) from [<c00949dc>] (run_timer_softirq+0x18c/0x260)
[ 9.026519] [<c00949dc>] (run_timer_softirq+0x18c/0x260) from [<c008fa1c>] (__do_softirq+0x74/0x120)
[ 9.035705] [<c008fa1c>] (__do_softirq+0x74/0x120) from [<c008fe8c>] (irq_exit+0x44/0xa8)
[ 9.043884] [<c008fe8c>] (irq_exit+0x44/0xa8) from [<c000f08c>] (handle_IRQ+0x68/0x8c)
[ 9.051788] [<c000f08c>] (handle_IRQ+0x68/0x8c) from [<c00084e4>] (vic_handle_irq+0x28/0x30)
[ 9.060119] [<c00084e4>] (vic_handle_irq+0x28/0x30) from [<c000dd80>] (__irq_svc+0x40/0x70)
[ 9.068511] Exception stack(0xc0879f58 to 0xc0879fa0)
[ 9.073547] 9f40: ffffffff 000000b0
[ 9.081634] 9f60: 00000001 00000000 c0878000 c0889470 c0908048 c0889464 00204059 511f00f2
[ 9.089874] 9f80: 00000000 00000000 00000000 c0879fa0 c007dbd8 c000f1a0 400b0013 ffffffff
[ 9.098052] [<c000dd80>] (__irq_svc+0x40/0x70) from [<c000f1a0>] (default_idle+0x24/0x2c)
[ 9.106201] [<c000f1a0>] (default_idle+0x24/0x2c) from [<c000f458>] (cpu_idle+0x5c/0xac)
[ 9.114196] [<c000f458>] (cpu_idle+0x5c/0xac) from [<c060af7c>] (rest_init+0x84/0x9c)
[ 9.122100] [<c060af7c>] (rest_init+0x84/0x9c) from [<c0840a54>] (start_kernel+0x368/0x3c4)
[ 9.130432] ---[ end trace 826fbc4fa566ec66 ]---
EDIT: Full log with mddi & msm_fb debugging enabled here: http://pastebin.com/Tj1izvyt
I don't see anything useful
I'm not familiar with these kernel building i know u people @android1234567 @DevConnection_Team @Christopher83 @johnnyslt @arco68 can help us building ION kernel for xperia 2011 devices ... sorry if I'm interrupting u .. thank you
mike maybe we need some specific changes in qcom_display_caf try to use arco'w variant
Does kernel panic if you exclude display driver?
Gesendet von meinem Xperia Neo V mit Tapatalk 2
deccen90 said:
I'm not familiar with these kernel building i know u people @android1234567 @DevConnection_Team @Christopher83 @johnnyslt @arco68 can help us building ION kernel for xperia 2011 devices ... sorry if I'm interrupting u .. thank you
Click to expand...
Click to collapse
Where is the stable pmem kernel source? and in what branch @mikeioannina tried to enable ION?
johnnyslt said:
Where is the stable pmem kernel source? and in what branch @mikeioannina tried to enable ION?
Click to expand...
Click to collapse
current pmem kernel: https://github.com/LegacyXperia/msm7x30-3.4.x-nAa/commits/cm-10.1
new ion kernel: https://github.com/mikeNG/android_kernel_semc_msm7x30/commits/cm-10.1-mutex-error
You can check the second post for more info.
mikeioannina said:
current pmem kernel: https://github.com/LegacyXperia/msm7x30-3.4.x-nAa/commits/cm-10.1
new ion kernel: https://github.com/mikeNG/android_kernel_semc_msm7x30/commits/cm-10.1-mutex-error
You can check the second post for more info.
Click to expand...
Click to collapse
I'm seeing that pmem_adsp doesn't get allocated and it should:
Code:
[ 3.558837] pmem: pmem_setup: unable to register pmem driver(pmem_adsp) - zero size passed in!
What adreno libs are you using?
Also are you using patched gralloc with PMEM_ADSP support?
hi @mikeioannina
I would like to help fix the fm radio in cm11. I am not a dev and I only have some basic C programming and github skills. If you think it is worth the time ( mine and yours), could you describe how to build the fm app for cm11 and where to look for bugs?
johnny.tifosi said:
hi @mikeioannina
I would like to help fix the fm radio in cm11. I am not a dev and I only have some basic C programming and github skills. If you think it is worth the time ( mine and yours), could you describe how to build the fm app for cm11 and where to look for bugs?
Click to expand...
Click to collapse
I believe that the FM app is broken because there is no wrapper for the SEMC FM libs...
johnny.tifosi said:
hi @mikeioannina
I would like to help fix the fm radio in cm11. I am not a dev and I only have some basic C programming and github skills. If you think it is worth the time ( mine and yours), could you describe how to build the fm app for cm11 and where to look for bugs?
Click to expand...
Click to collapse
kemoba said:
I believe that the FM app is broken because there is no wrapper for the SEMC FM libs...
Click to expand...
Click to collapse
You can pick this change: http://legacyxperia.us.to:8080/131 in order to build the TI FM stuff. It's only for cm10.1 currently but in my opinion it's the best version to work on FM, since we have the most complete code for msm7x30 & TI wl12xx in that version.
I'm afraid you won't manage to do anything since you need some knowledge of how android audio stuff works (I also haven't worked on audio stuff very much in the past and don't have much knowledge)
Anyway, the code is there for anyone who wants to try
mikeioannina said:
Kernel boots, lcd backlight is on but no image is shown.
I only get a display full of noise for half a second, after the following error occurs:
Code:
[ 8.994812] ------------[ cut here ]------------
[ 8.995025] WARNING: at /home/mike/android/cm10.1/kernel/semc/msm7x30/kernel/mutex.c:198 __mutex_lock_slowpath+0x70/0x27c()
[ 8.995483] Modules linked in:
[ 8.995758] [<c001428c>] (unwind_backtrace+0x0/0x11c) from [<c008a6f0>] (warn_slowpath_common+0x4c/0x64)
[ 8.996154] [<c008a6f0>] (warn_slowpath_common+0x4c/0x64) from [<c008a720>] (warn_slowpath_null+0x18/0x1c)
[ 8.996582] [<c008a720>] (warn_slowpath_null+0x18/0x1c) from [<c061b524>] (__mutex_lock_slowpath+0x70/0x27c)
[ 8.998138] [<c061b524>] (__mutex_lock_slowpath+0x70/0x27c) from [<c061b73c>] (mutex_lock+0xc/0x24)
[ 9.007171] [<c061b73c>] (mutex_lock+0xc/0x24) from [<c02988dc>] (mddi_host_timer_service+0x374/0x430)
[ 9.016448] [<c02988dc>] (mddi_host_timer_service+0x374/0x430) from [<c00949dc>] (run_timer_softirq+0x18c/0x260)
[ 9.026519] [<c00949dc>] (run_timer_softirq+0x18c/0x260) from [<c008fa1c>] (__do_softirq+0x74/0x120)
[ 9.035705] [<c008fa1c>] (__do_softirq+0x74/0x120) from [<c008fe8c>] (irq_exit+0x44/0xa8)
[ 9.043884] [<c008fe8c>] (irq_exit+0x44/0xa8) from [<c000f08c>] (handle_IRQ+0x68/0x8c)
[ 9.051788] [<c000f08c>] (handle_IRQ+0x68/0x8c) from [<c00084e4>] (vic_handle_irq+0x28/0x30)
[ 9.060119] [<c00084e4>] (vic_handle_irq+0x28/0x30) from [<c000dd80>] (__irq_svc+0x40/0x70)
[ 9.068511] Exception stack(0xc0879f58 to 0xc0879fa0)
[ 9.073547] 9f40: ffffffff 000000b0
[ 9.081634] 9f60: 00000001 00000000 c0878000 c0889470 c0908048 c0889464 00204059 511f00f2
[ 9.089874] 9f80: 00000000 00000000 00000000 c0879fa0 c007dbd8 c000f1a0 400b0013 ffffffff
[ 9.098052] [<c000dd80>] (__irq_svc+0x40/0x70) from [<c000f1a0>] (default_idle+0x24/0x2c)
[ 9.106201] [<c000f1a0>] (default_idle+0x24/0x2c) from [<c000f458>] (cpu_idle+0x5c/0xac)
[ 9.114196] [<c000f458>] (cpu_idle+0x5c/0xac) from [<c060af7c>] (rest_init+0x84/0x9c)
[ 9.122100] [<c060af7c>] (rest_init+0x84/0x9c) from [<c0840a54>] (start_kernel+0x368/0x3c4)
[ 9.130432] ---[ end trace 826fbc4fa566ec66 ]---
EDIT: Full log with mddi & msm_fb debugging enabled here: http://pastebin.com/Tj1izvyt
I don't see anything useful
Click to expand...
Click to collapse
Hello,
I'm porting 3.x kernel on an other xperia device (x10) and facing the same issue ... Did you managed to solve it ?
I'm using ion memory management and as johnnyslt wrote I got this line in log too :
PHP:
pmem: pmem_setup: unable to register pmem driver(pmem_adsp) - zero size passed in!
I'll look with for this (that musn't be a big deal to allocate pmem_adsp with fitting lines in board ... let's see if this is what is causing the trouble.
If you didn't find the solution yet, I'll let you know if I find
Regards
Tof37 said:
Hello,
I'm porting 3.x kernel on an other xperia device (x10) and facing the same issue ... Did you managed to solve it ?
I'm using ion memory management and as johnnyslt wrote I got this line in log too :
PHP:
pmem: pmem_setup: unable to register pmem driver(pmem_adsp) - zero size passed in!
I'll look with for this (that musn't be a big deal to allocate pmem_adsp with fitting lines in board ... let's see if this is what is causing the trouble.
If you didn't find the solution yet, I'll let you know if I find
Regards
Click to expand...
Click to collapse
No, still having the problem. I have limited time these days so no much progress...
If you manage anything let me know
@mikeioannina
Hope it'll help ... you should have a look to your drivers/video/msm/logo.c and msm_fb.c and .h files
In the last 2 files the lines which are dealing with fb_msm_logo ...
I ported 3.4 video drivers in the 3.0.8 kernel I use and add the same issue.
I add this problem too with 3.0.8 drivers and solving the problem of fb_msm_logo did it.
If you disable fb_msm_logo in your config file but still have the issue this means you're mising lines specific for your device.
If 3.0.X kernel is already working on your device, try to make a diff with video drivers.
I'll take a look at your repo when I'll have a little time
Regards
Tof37 said:
@mikeioannina
Hope it'll help ... you should have a look to your drivers/video/msm/logo.c and msm_fb.c and .h files
In the last 2 files the lines which are dealing with fb_msm_logo ...
I ported 3.4 video drivers in the 3.0.8 kernel I use and add the same issue.
I add this problem too with 3.0.8 drivers and solving the problem of fb_msm_logo did it.
If you disable fb_msm_logo in your config file but still have the issue this means you're mising lines specific for your device.
If 3.0.X kernel is already working on your device, try to make a diff with video drivers.
I'll take a look at your repo when I'll have a little time
Regards
Click to expand...
Click to collapse
Thanks for the hints,
hmm... I think I have tried without bootlogo with no luck, I will try again to be sure.
3.0.8 works fine on our devices, 3.4 works too but with 3.0.8 video drivers. When I try pure 3.4 it doesn't boot with the above error.
EDIT:
I tried disabling bootlogo with no change, still no display.
Making a diff of 3.0.8/3.4 drivers/video/msm is almost impossible since there are too many changes involved, I already tried it with no luck, spent hours and it didn't even compile.
I'm really sad with this situation, I'm working for 3 months on this kernel with the exact same issue. where the hell is the problem?
mikeioannina said:
Thanks for the hints,
hmm... I think I have tried without bootlogo with no luck, I will try again to be sure.
3.0.8 works fine on our devices, 3.4 works too but with 3.0.8 video drivers. When I try pure 3.4 it doesn't boot with the above error.
EDIT:
I tried disabling bootlogo with no change, still no display.
Making a diff of 3.0.8/3.4 drivers/video/msm is almost impossible since there are too many changes involved, I already tried it with no luck, spent hours and it didn't even compile.
I'm really sad with this situation, I'm working for 3 months on this kernel with the exact same issue. where the hell is the problem?
Click to expand...
Click to collapse
I see so I'm facing exactly the same problem ...
do you have this problem with your kernel with pmem ?
I didn't try with mine (only tried with the one where ion is enabled)
Even in the ion enabled version, pmem_adsp is allocated but still have the problem.
ps : It's been nearly 1 year I started to port 3.0.8 kernel on x10 ... I got nearly 6 months (including 2 months to not work on it) to try to solve display problem
@mikeioannina
You should try this ...
in drivers/video/msm/mddi.c
in void pmdh_clk_enable() you've got
PHP:
if (mddi_host_timer.function)
mddi_host_timer_service(0);
In my .32 video drivers this if is in static int mddi_resume ...
Try to get the the above function like this :
PHP:
static int mddi_resume(struct platform_device *pdev)
{
mddi_host_type host_idx = MDDI_HOST_PRIM;
if (!mddi_is_in_suspend)
return 0;
mddi_is_in_suspend = 0;
if (mddi_power_locked)
return 0;
pmdh_clk_enable();
mddi_host_reg_out(PAD_CTL, mddi_pad_ctrl);
[B]if (mddi_host_timer.function)
mddi_host_timer_service(0);[/B]
return 0;
}
The mddi_host_timer_service error in log dissapeared ... seems there are some problems is it stays in pmdh_clk_enable...
Tof37 said:
@mikeioannina
You should try this ...
in drivers/video/msm/mddi.c
in void pmdh_clk_enable() you've got
PHP:
if (mddi_host_timer.function)
mddi_host_timer_service(0);
In my .32 video drivers this if is in static int mddi_resume ...
Try to get the the above function like this :
PHP:
static int mddi_resume(struct platform_device *pdev)
{
mddi_host_type host_idx = MDDI_HOST_PRIM;
if (!mddi_is_in_suspend)
return 0;
mddi_is_in_suspend = 0;
if (mddi_power_locked)
return 0;
pmdh_clk_enable();
mddi_host_reg_out(PAD_CTL, mddi_pad_ctrl);
[B]if (mddi_host_timer.function)
mddi_host_timer_service(0);[/B]
return 0;
}
The mddi_host_timer_service error in log dissapeared ... seems there are some problems is it stays in pmdh_clk_enable...
Click to expand...
Click to collapse
that did nothing, still getting the same error...
mikeioannina said:
that did nothing, still getting the same error...
Click to expand...
Click to collapse
Have to solve a |kgsl_mh_intrcallback| axi read error interrupt: error in my kernel and will take a more attentive look to 3.4 video drivers .
Stay tuned
btw if you ever have a solution for my problem
Thanks
mikeioannina said:
Code:
[ 8.994812]
[ 8.995025] WARNING: at /home/mike/android/cm10.1/kernel/semc/msm7x30/kernel/mutex.c:198 __mutex_lock_slowpath+0x70/0x27c()
Click to expand...
Click to collapse
I'm going to just throw this out, is it possible that you are building a kernel for CM10.1 and booting it on CM11 ?
I have been trying to compile a userdebug kernel for months now and i finally got a kernel built but it would not boot. Well it booted but just to the splash screen.
This is a build for the LM-X210ULM. Im wanting to be able to use it a rooted phone to debug my other phones and possibly root them. I would also like to be able to build kernels and roms on my device which is prohibited in the user builds.
Ok the first issues i ran across after a non working kernel were LGE_USB_HOST_LIST_INPUT warnings which were easily taken care of by removing the items it said were missing dependencies.
Next are the SND_SOC_CONFIGS which i just removed the ITEMS listed as having missing dependencies.
But im still getting warnings about drivers/soc/qcom/kconfig which has something to do with fatal errorr and the value of the function being outside its normal paramaters. So i marked the defconfig line as not set for the error being fatal.
Now all of a sudden im getting fatal errors that stop my compilation having to do with the built-in.o file not being in the EDIDX out put and i grepped EDIDX and nothing was found
Please help me
i was wrong on grepping the exdid stuff but i did earlier and the only way i found to fix both errors was to go into the .config and unset arm_unwind.
I dont know what that will do to a working kernel but it compiles. Also i switched to the linux msm-3.18 source by caf since his toolchain works and gw? His source is less buggy,
But even after adding dependencies from the lg build i still am not producing a working image zImage or zImage-dtb
Ok i spent last night compiling ovet and over again. I compiled my kernel in about 8 different ways including using the defconfigs unaltered. But still i produce a Image zImage and zimage-dtb. I have renamed each image boot.img-kernel and repacked my boot.image and flashed it via fast boot. Each time it goes past the bootloader and hangs.
well here it is my actual 2nd compiled kernel for cv1 devices. Duhjokers laughter boot image with the upset clown kernel.
I figured out the non-booting issue problem kind of in a round about way. Part of it recompressing the boot.img after placing the kernel inside. For some reason fastboot is giving me a remote fail for anything 32mb. The kernel packed and patched by magisk is 34mb.
The other thing i think is that the compiler signs the kernel image as its being compiled but the boot.img itself will need some kind of signing itself so magisk comes into play there as tops patching system resigns the boot.img as it patches it.
Othet than that its good to go.
Features are set at
Fastcharge
Full OTG usb host and slave
performace rated w cpu governor
rcu boost
Smb
pre-empt
Handle panic
cma
Swap
auto wakelocks
loop device
Tun
Rndis
Rmnet
Spi
Pin control for msm devices
Devtmpfs
Ntfs
Ext4
ext2
ext3
vfat
Smb charging
Otg charging
Media and camera support
Confugured for
msm8916
msm8917
msm8920
msm8937
msm8940
msm8953
Debug android
Debug windows
Debug mass storage
Debug most generic gpio
Debug most generic ACM
Debug most generic
Debug usb gadget
Debug mutexes and spinlocks
Full encryption support and so much more
This baby is packed full of the latest features to help you debug most items around your house and full of the latest features for calling and internet. Enjoy
Im back and better than ever with the jokerfish kernel. Its killer!! SMILE
Ok i cant get force fast charge to show up in sys/kernel and its drivung me crazy. Huhuh.
Its compiling. I see the object files. i first used phy-msm-usb that wasnt showing up so retrofitted msm-otg into the mix per standard orrder back in the day but nothing. Every thing works all features are go but no fastcharge.
Could some one help me stop my compiling madness
Oh yea heres the flashable zip....