11-11-2014 02:21 PM
275 123 ...
  1. bigsupersquid's Avatar
    Now for KitKat too!
    This runs decently with thekraven's PAC 4.2.2 and JBC, apparently CAI (cm9), as well. Any ROMs older than the JBC need an extra zip for test 45 to beta2a. It removes sbin/charger (or sbin/chargerlogo) from the ramdisk to avoid bootloop. beta2b and later now include this by default in the kernel zip.
    CAI/ICS has no USB functionality.
    I'm uploading unsigned flashable zips.

    bigsuperkernel3.0.101r6.0_noTLS_noMTDswap.zip for ROM versions built before before 7/12/2014
    bigsuperkernel3.0.101r6.0_TLS_MTDswap.zip for everything more recent.
    md5sum files in the shared folder too.

    as it says, linaro gcc 4.7 toolchain. Supposed to be faster, better, stronger; the standard $6,000,000 man stuff. Not to mention -O2 optimizations in the build.
    Thanks justarchi on xda for the toolchain and optimization instructions. The ROM thread has a link to his optimization thread in the OP.
    includes thunderg ami304d to fix rotation/compass issues.
    mount whichever /system you're using in recovery before flashing.

    debugged enough to not be beta anymore. Binary finally uploaded after skipping r1.3-1.5
    commit log for changes
    r6.0 kernel 3.0.101, f2fs, accelerometer hopefully really fixed using thunderg blob, (MTD system and userdata partitions swapped, hardware TLS enabled) or not.

    r3.0 compass fixed
    uhid bluetooth fixes for kitkat.

    beta 6.
    androidarmv6 bluetooth fixes and thekraven updates.

    A revised beta 2b is out since fixing the rest of the charger. 2a and older all charge at about 400mA regardless of charger type or fastcharge toggle. 2b seems to pull power correctly. Fastcharge enabled, use the existing widgets or terminal instructions from jawz101's post.
    Beta 2b uses 99% of the above patch but allows adb and mass storage by directly changing charge current instead of changing the charger type. updated with more charger code.

    as of alpha test 81, everything works.
    DISCLAIMER: You flash it, you're responsible for the outcome. This is an experimental kernel. Any zips labeled "test" are alpha releases. They are buggy one way or another but are archived in case anyone wants them.
    Be sure to make a backup before flashing! I'm really only releasing it because I, too, once could not build kernels, but still enjoyed playing with them with my then-new OV.
    (Ah, Zefie's Xionia. And Blarf's first build with the USB charge power turned up enough to charge while downloading on wifi. Memories...)
    Plus it's the only way to get bluetooth on PAC and JBC at the moment.

    Turn signature verification off in recovery or it won't work. Mount /system before flashing or wifi may break.

    Two old files...
    ]init.thunderc.rc.pac.zip to replace file in ramdisk for PAC to stop bootloop. The problem, surprise, is the charger init. Updated with actual modified file from PAC instead of from JBC.
    MD5sum: 13054b8784f4e798b88759f92ca9a410
    Attachment 75968
    init.thunderc.rc.cai.zip for CAI to stop bootloop. no adb in CAI with this... in fact, no usb functionality at all. no charging indicator, either. otg_low_power mode on and off is it.
    MD5sum: f1dd00b0d4ede60c8b3a97dd4f670ee5
    Attachment 75969
    also archived, both the above files replaced by
    removecharger.zip, md5sum b1a9f21285e09e06dc94422a8578dc98
    which removes the offline charging functionality in a generic way which should work on any ROM.
    keyswap zip for Optimus S, also unsigned (reversed keys build 6 JBC)
    MD5sum: eb58010bfad29fc91c838ae0f5f1fb3a
    alternate, reversed
    MD5sum: 9e561b977b8c30ef6fbb8b355dba3af2

    wipe /cache and dalvik-cache in recovery before flashing kernel to avoid issues.

    kernel binaries are now archived with Google. They know everything anyway, and it's not like these are closed source.

    ashmem fixed, swap enabled
    uhid bluetooth fixes for kitkat.
    beta 6.
    androidarmv6 bluetooth fixes and thekraven updates.
    ...duh... missing 5 and 4 info.
    beta3: fix battery temperature and merge from 
    beta2b: alternate fastcharge method. updated, plus removecharger.zip incorporated to simplify.
    MD5sum: 7a42bc3ab9b3591493cd2eaad8ab3b47
    beta2a: fastcharge enabled.
    MD5sum: 43ff961305541c21e4f3af35254b9c44
    beta 1: usb cable type detect code patched in from original thunderc. Everything working but offline charging, and I blame the differences between 2.6 and 3.0 kernels that block USB functions in ICS and GB with this kernel.
    MD5sum: eddd341703a9c394448c61b26bd91399
    test 81: battery!
    MD5sum: cd4e8679c67b296cafd31e938ce83fc7
    test 80: revert battery driver to test 55.
    test 75: (phone info still says test 70) revert battery capacity to pre-test 41 for readout.
    MD5sum: 9bb77f0b83afdb6bbf0a00e5bbc5a638
    test 70: remove extra filesystems, tweak at battery some more. should read battery level correctly on boot again (nope, reads 100% till it dies. use at own risk.) still wake/sleep deal for charger notify and battery level update.
    MD5sum: d81ab3ef70845875bd274c815da9ed84
    test 65: clean up battery readout a little, should be more accurate and less jumpy. Reads 100% until after sleeping first time, though. Increase usb charge current to 500 mA. Turn off USB host mode since I can't get it working yet.
    MD5sum: 38941925b3cc7fbd4aa09656f8348448
    test 61: clean up battery charger notification some with seperate rpc calls for battery and charger info, fix battery capacity issue always 100% in test 60.
    MD5sum: 8b19df8379a278577a7f1deda860bb69
    test 55: bring wifi patches up-to-date with thekraven
    MD5sum: 387f7d136da3c58d4b1c51160e9b8232
    test50: battery charging notification partially working. like battery info, charger status only refreshes on sleep or wake. unplugging or plugging in cable without sleep/wake shows no changes.
    MD5sum: afc606ad98f7778d60e536057ae5f1e7
    test 45: revert log sizes to standard.
    add dev/frandom for crossbreeder.
    fix ld0 voltage that was incorrectly changed after test 41 and correct other ldo voltages from p500 to thunderc (no binary uploaded here, nothing to worry about unless you're building from source.)
    MD5sum: 3581cad26bd0cda646fc1370bec1a426
    test 41: first release with accellerometer working
    MD5sum: ee7dd6972a6526ce87f2ecc9dd8c1d71
    archived until further notice:
    test 40
    MD5sum: 8bfa68857c49f62c9520cfc7583e093c
    test 30: initial release
    MD5sum: 20e018be78c65878bd6df1ec841001d2
    This is intended for android 4.2. Specifically tested with thekraven's PAC and JBC.
    You'll need the Virgin fix he posted for mms, carrier name, and such, but remove the /system/usr folder from the zip or you'll have your home/menu keys reversed since this kernel is built for the V instead of the S.
    the test versions of JBC may not need keyswapped.
    Tested with ICS (specifically thekraven's CAI.) No USB functionality on ICS. Maybe if it was rebuilt with the kernel headers it'd work.
    Boots with GB (mirage.) But... no USB access. video whitescreen. Flash player only kind of works. I wouldn't bother. Like CAI, maybe if it was rebuilt with the kernel headers it'd work.
    It ran froyo Harmonia with modifications to the battery code, but had weird little problems like black-and-white youtube playback (even with new EGL libs,) and no adb. This release will power off froyo as soon as it gets to the lockscreen.

    Anyone wants to poke around with building or modifying, fork it or just git clone it!
    Here's the source link:
    (branch cm-11.0)
    you'll want to change or remove the toolchain path in the config. Highly unlikely your cross toolchain is in the same path as mine. I set it in there to avoid having to add "CROSS_COMPILE=/blah/blah/etc" to the make command every time I rebuild the kernel.

    merged some ZV9 stuff in... it looks like the 2.6.35 Sprint stuff (https://bitbucket.org/thekraven/iscr...-2.6.35-rebase) may merge more cleanly into 3.0.8 though. Used some of each here, some there.

    Where it's at currently (working/nonworking):
    beta 1: offline charging still down, but has stock LG charger detection in battery code. Everything else, working fine.
    as of test 81, basically everything works except offline charging!
    pre-test 81:
    adb works.
    USB mass storage works.
    bluetooth works! pairs with my keyboard.
    3g works, as does wifi.
    triple framebuffer works. Enabled.
    youtube video plays. regular and hq both.
    phone works, mms and sms too.
    audio routed correctly now for on-device outputs. Speakerphone a bit on the quiet side. stock headset works but high volume. headset button picks up calls, or mutes microphone if in-call. I own no bluetooth headsets to check functionality though.
    bluetooth audio seems to mostly work in JBC and CAI, test 40 and up.
    all hard keys working.
    vibrator works.
    GPS works... locked within 10' of my actual location.
    button backlights working.
    NOVATEK_HITACHI mess from LG for the multidevice display driver is working. Should be no black screen on newer or older phones.
    proximity sensor works.
    camera completely working in test41. videocamera, panorama(!) still camera, and even that weird HDR mode.
    thanks to thekraven for camera fixes!
    battery meter working, but only refreshes after screen off/on. charging indicator also refreshes, but only on sleep/wake, as of test 50. Charges faster than standard through usb, I set it to 350mA instead of the default 2. The charge rate can be changed, in the config under drivers-usb-gadget.
    accelerometer working as of test 41.
    compass working as of test 41.

    framebuffer console after display initializes... I took patches from [DEV] Framebuffer console - xda-developers and added a .config switch to turn this on or off. dmesg display requires funky kernel command line, and goes away when initlogo.rle and the bootanimation play. this shows crashes and panics before adb connects, though, is good for debugging, and is borrowed from gingerbread p500 kernel. thanks to tasssadar. Disabled in this build, but can be turned on in config if you build your own.
    overclock enabled. Including AHB memory overclock from http://androidforums.com/3528567-post12.html. thanks to jiilik.
    restored log size in test 45, was blocking logcat.
    dev/frandom for crossbreeder included (not a module.) As of test 45.

    random reboots appear to be a thing of the past. hopefully.

    test40 onwards compiled using hardfloat flags (meaning it uses the math coprocessor instead of doing math with the CPU)
    gnu toolchain here
    added armv6k compile flags since the MSM7627 is capable of handling the added instructions.

    1-4-2014: now battery temperature readout should work right. Source pushed but no new binary yet. commit

    Thanks to:

    thekraven for helping point things out and providing a test ROM with the right kernel headers. It still runs fine with the standard builds of PAC and JBC.
    also thanks to androidarmv6 team and all the thunderg devs who got it working on their device. Without all that code I'd have had no hope of getting this working at all, since I just copied so much of it over from thunderg to thunderc...
    meld is my best friend with linux and kernel patching to compare and patch the differences.
    05-28-2013 05:40 PM
  2. sellers86's Avatar
    im in contact with the p500 guys, they may have had the same issues. ill get a hold of them soon if you would like.
    05-28-2013 10:41 PM
  3. thewraith420's Avatar
    Very cool Bigsupersquid, I've moved on to a new phone but it's only made me realize how amazing it is that the OV devs have gotten things working soo good on android versions the manufacturer never dreamt could run on it. My thanks goes out to the whole ov community for making my first android one to remember

    Sent from my Evo V 4G using Tapatalk 4 Beta
    bkttk2 and bigsupersquid like this.
    05-28-2013 11:23 PM
  4. bigsupersquid's Avatar
    im in contact with the p500 guys, they may have had the same issues. ill get a hold of them soon if you would like.
    without a working thunderg kernel source, I'd've never gotten this far. those devs rock.
    somebody actually knows what they're doing might have better luck than I, is mostly Frankenstein monster work again so far.
    05-29-2013 09:14 AM
  5. gollum18's Avatar
    You could try to get a hold of thekraven, he does a lot of building for both the s and v.

    Sent from my SPH-L710 using Tapatalk 2
    05-29-2013 10:46 AM
  6. sellers86's Avatar
    He lost his OS. Squid, I get out of school in a couple days. I'll start in on kernels then. No promises though.

    Sent from my Nexus 4 using Android Central Forums
    bigsupersquid likes this.
    05-29-2013 02:06 PM
  7. bigsupersquid's Avatar
    He's given me a bit of advice already.
    I posted this in the Sprint section too... more kernel devs over there, I think.

    - - - Updated - - -

    You could try to get a hold of thekraven, he does a lot of building for both the s and v.

    Sent from my SPH-L710 using Tapatalk 2
    05-29-2013 03:33 PM
  8. AndyOpie150's Avatar
    Just started learning kernel development (So far have only added a couple of governors to a kernel). Wow! Do I have a huge amount to learn. Will follow progress and all links in order to learn more.

    Sent from my LG-VM670 using Android Central Forums
    05-29-2013 08:39 PM
  9. bigsupersquid's Avatar
    Bump. For booting.
    Still no display, and it resets the phone when the last_kmsg looks like it's going to sleep.
    But it actually boots, and loads some of Android, enough for adb. Which is working
    Hoping somebody with actual kernel know-how will join in here and help out with the broken bits... this could be lotsa fun to have on our /supposedly obsolete/ devices that Qualcomm and LG say aren't worth supporting anymore.
    06-08-2013 08:35 PM
  10. AndyOpie150's Avatar
    Have you tried PMing BobZohme or mrg666 they have more time with kernels than most.
    There is also tvall as well.

    Sent from my LG-VM670 using Android Central Forums
    06-09-2013 12:53 PM
  11. bigsupersquid's Avatar
    nah, rather than looking for a tutor I'm plopping the source out there to see if anyone else wants to pick it up and run with it.
    Otherwise I'll keep plodding along tweaking things one at a time.
    Now the backlight registers correctly, for example. But still no display.
    actually, Hitachi screen now shows blurry lg logo but won't boot to adb or panic or sleep, so it's hard to pin down issue.
    06-09-2013 07:49 PM
  12. vector84an's Avatar
    [    2.069501] Warning: unable to open an initial console.
    I don't have a lot of experience with android kernels... but from what I remember of linux... isn't this a fatal boot error that will cause the subsequent kernel panic from not syncing?
    Can't find console device, so something about env not setup right or wrong boot args?

    I also see it fails to find or execute the PA init (PA has a bunch of screen hackery in it, doesn't it?) ... again, I don't know much, but might it be worth it to try loading it up in JBC or similar?

    Have you tried raising the loglevel in init.rc to get more detailed information out of your init logs? max is 8 I think?

    Dunno if any of this is helpful or just useless clutter, but figured I'd toss it out there...
    06-10-2013 11:36 AM
  13. bigsupersquid's Avatar
    The lack of console doesn't stop boot.
    It keeps going until Android requests sleep. Then it shuts down and syncs (if only Novatek driver that won't turn on, or no LCD panel set in config.)
    308wmddi_Novatek-enabled - Pastebin.com
    I verified in logcat that the sleep request (from being unable to open the framebuffer) occurs before the sync.
    Sleep causes a shutdown until a key is pressed, then an instant reboot. Or skips the keypress and goes straight to a reboot on its own.
    So, sleep is messed up, but it's nice that it reboots so the ram console can be read (/proc/last_kmsg)
    When there is no video driver built in (no lcd panel in config) it syncs before sleep/reboot. Same if it uses Novatek driver.
    [    1.264353] primary mddi base phy_addr = 0xaa600000 virt = 0xdd80a000
    [    1.274941] mddi_novatek_lcd_probe: started.
    [    1.275043] mddi_novatek_lcd_init: setting up panel info.
    [    1.275378] mddi_novatek_lcd_probe: started.
    [    1.277541] pm_runtime: fail to wake up
    [    1.305229] mddi_novatek_lcd_on: started.
    It doesn't wake the display. Backlight stays on and it's blacked out. Flickers when changing modes.
    Using NOVATEK_HITACHI hybrid driver from LG's thunderc kernels does the same as using the Hitachi driver. It doesn't sync or sleep, and never starts ADB. The hitachi driver shows the LG logo and never gets past it. ADB becomes accessible shortly after initlogo.rle is shown.
    The loglevel is for Android. Logcat didn't tell me much of use, and I'm using dmseg/last_kmsg for debugging which comes straight from the kernel. Verbosity is set in the config.
    I've tried booting recovery instead of PAC with the blacked-out kernel which syncs before sleep of death, but no adb and it just locks up.
    PAC gives a decent logcat up until it b*tches about the framebuffer and puts the phone to sleep.
    interesting bits:
    I/gralloc (   92): using (fd=15)
    I/gralloc (   92): id           = msmfb30_1000a
    I/gralloc (   92): xres         = 320 px
    I/gralloc (   92): yres         = 480 px
    I/gralloc (   92): xres_virtual = 320 px
    I/gralloc (   92): yres_virtual = 960 px
    I/gralloc (   92): bpp          = 16
    I/gralloc (   92): r            = 11:5
    I/gralloc (   92): g            =  5:6
    I/gralloc (   92): b            =  0:5
    I/gralloc (   92): width        = 51 mm (159.372543 dpi)
    I/gralloc (   92): height       = 76 mm (160.421051 dpi)
    I/gralloc (   92): refresh rate = 60.00 Hz
    I/InputReader(  383):   Touch device 'touch_mcs6000' could not query the properties of its associated display.  The device will be inoperable until the display size becomes available.
    D/SurfaceFlinger(   92): Screen acquired, type=0 flinger=0x1e7c318
    D/SurfaceFlinger(   92):  screen was previously acquired
    I/ActivityManager(  383): System now ready
    I/SystemServer(  383): Making services ready
    I/Zygote  (  383): Process: zygote socket opened
    I/ActivityManager(  383): Start proc com.android.systemui for service com.android.systemui/.SystemUIService: pid=460 uid=10009 gids={50009, 1028, 1015, 1023, 3002, 3001, 1006}
    W/WindowManager(  383): Window freeze timeout expired.
    W/WindowManager(  383): Force clearing orientation change: Window{40e471e0 u0 Keyguard}
    I/SurfaceFlinger(  637): SurfaceFlinger is starting
    I/SurfaceFlinger(  637): use dithering
    I/SurfaceFlinger(  637): SurfaceFlinger's main thread ready to run. Initializing graphics H/W...
    D/libEGL  (  637): loaded /system/lib/egl/libEGL_adreno200.so
    D/libEGL  (  637): loaded /system/lib/egl/libGLESv1_CM_adreno200.so
    D/libEGL  (  637): loaded /system/lib/egl/libGLESv2_adreno200.so
    E/SurfaceFlinger(  637): framebuffer_open failed (No such file or directory)
    E/        (  637): FBIOGET_FSCREENINFO failed
    E/copybit (  637): Error opening frame buffer errno=2 (No such file or directory)
    I/hwcomposer(  637): Initializing Qualcomm Hardware Composer
    I/hwcomposer(  637): MDP version: 0
    I/hwcomposer(  637): DYN composition threshold : 2.000000
    I/hwcomposer(  637): hwc_device_open: Faking Hardware VSYNC
    E/SurfaceFlinger(  637): ERROR: failed to open framebuffer, aborting
    F/libc    (  637): Fatal signal 11 (SIGSEGV) at 0xdeadbaad (code=1), thread 640 (SurfaceFlinger)
    and the start of the sleep cycle, from a better logcat:
    I/PowerManagerService(  387): Going to sleep due to screen timeout...
    D/PermissionCache(   91): checking android.permission.READ_FRAME_BUFFER for uid=1000 => granted (393 us)
    D/SurfaceFlinger(   91): Screen released, type=0 flinger=0xaa1318
    D/dalvikvm(  387): GC_CONCURRENT freed 743K, 29% free 5670K/7916K, paused 19ms+21ms, total 119ms
    D/dalvikvm(  387): WAIT_FOR_CONCURRENT_GC blocked 89ms
    I/WindowManager(  387): Lock screen displayed!
    parallel with
    [  124.039269] request_suspend_state: sleep (0->3) at 124044403291 (2013-06-09 07:24:48.462239955 UTC)
    [  124.039328] aat28xx_sleep: cur state=1 to sleep state(2)
    [  124.039656] aat28xx_power_internal: on = 0, refcnt = 1
    [  124.085339] [Touch] ts_set_vreg() onoff:0
    [  124.234931] mddi_novatek_lcd_off: started.
    [  124.329806] display_table_novatek() : delay 50 msec
    [  124.533929] display_table_novatek() : delay 100 msec
    [  124.533963] mddi_novatek_lcd_panel_poweroff: started.
    [  124.550606] mddi_novatek_lcd_off: NOVATEK LCD OFF
    [  124.559253] msmsdcc_early_suspend : start 
    [  124.559284] msmsdcc_early_suspend : end 
    [  124.559298] msmsdcc_early_suspend : start 
    [  124.559313] msmsdcc_early_suspend : end 
    [  124.559351] PM: Syncing filesystems...
    [  124.559569] active wake lock PowerManagerService.Broadcasts
    [  124.559588] active wake lock usb_bus_active
    [  124.561841] sync done.
    since it gets to the lockscreen, I doubt it's issues with PAC specifically.
    I'm pretty sure a working video driver would allow more debugging.
    gtdappert likes this.
    06-10-2013 02:14 PM
  14. bigsupersquid's Avatar
    visible boot!
    (Novatek display only. old type.)
    multiscreen NOVATEK_HITACHI driver not quite patched yet. Soon.
    Hitachi may or may not work works with regulator changes in board-thunderc-panel.c that fixed Novatek output.
    Either hitachi or novatek must be individually selected in config as yet.
    There are still regulator errors but the screen and touchscreen work.
    sleep still kills the device, and it reboots pretty quickly right now anyway.
    regardless of that, I soon hope to screenshot the kernel version...
    sleep is fine. deep sleep works.
    screenshot in OP
    Hitachi screen works too
    also 3g and wifi.
    06-10-2013 05:13 PM
  15. sellers86's Avatar
    Good job!

    Sent from my Nexus 4 using Android Central Forums
    bigsupersquid likes this.
    06-10-2013 06:28 PM
  16. AndyOpie150's Avatar
    Any info on what you did to get it working right?

    Sent from my LG-VM670 using Android Central Forums
    06-11-2013 08:48 AM
  17. bigsupersquid's Avatar
    Any info on what you did to get it working right?

    Sent from my LG-VM670 using Android Central Forums
    look at last commit to arch/arm/mach-msm/lge/board-thunderc-panel.c
    here, specifically, this is what you see on github as the patch.

    @@ -33,13 +33,12 @@
         (vreg_##op == vreg_enable) ? "vreg_enable" \
           : "vreg_disable", name); \
     } while (0)
     static char *msm_fb_vreg[] = {
     //  "gp1",
     static int mddi_power_save_on;
     static int msm_fb_mddi_power_save(int on)
    @@ -49,14 +48,14 @@ static int msm_fb_mddi_power_save(int on)
       static struct regulator *vreg_gp2;
       if (!mddi_power_save_on) {
    -    vreg_gp1 = regulator_get(0, "gp1");
    +    vreg_gp1 = regulator_get(0, msm_fb_vreg[0]);
         if (IS_ERR_OR_NULL(vreg_gp1)) {
           pr_err("could not get vreg_gp1, rc = %ld\n",
           return -ENODEV;
    -    vreg_gp2 = regulator_get(0, "gp2");
    +    vreg_gp2 = regulator_get(0, msm_fb_vreg[1]);
         if (IS_ERR_OR_NULL(vreg_gp2)) {
           pr_err("could not get vreg_gp2, rc = %ld\n",
    @@ -122,6 +121,19 @@ static int msm_fb_mddi_power_save(int on)
     static void __init msm_fb_add_devices(void)
    +  /* 
    +  ------------------------------------
    +     |  Rev C     |  Rev 1.0
    +  ------------------------------------
    +  VREG_GP1 | always off | +2.8V_LCD 
    +  ------------------------------------
    +  VREG_GP2 | +2.8V_LCD  | +1.8V_HPVDD
    +  ------------------------------------
    +  */
    +  if(lge_bd_rev >= 8) /* >= Rev 1.0 */
    +    strcpy(msm_fb_vreg[1], "gp1");
    +    /* LGE_CHANGE_E [james.jang@lge.com] 2010-07-06 */
       msm_fb_register_device("mdp", &mdp_pdata);
       msm_fb_register_device("pmdh", &mddi_pdata);
       msm_fb_register_device("lcdc", 0);
    I also ended up changing the voltage on one regulator to match a dmesg error so it'd shut up.

    //edit: and eventually ended up changing the voltage back, and fixing the regulator itself because it was configured wrong.
    06-11-2013 09:15 AM
  18. bigsupersquid's Avatar
    The forum has been boring.
    I found a neat trick.
    /proc/last_kmsg can sometimes be read after a lockup, by pulling and quickly replacing the battery with the usb cable still connected.
    seems to cause a soft reset, while the kernel reboots politely, which allows the ram console to survive.
    07-04-2013 10:53 AM
  19. bigsupersquid's Avatar
    msm_battery.c tweaked with msm_battery_thunderc.c and shaved down by almost half its length of useless code (about 900 lines shorter,) yields all required battery info, and even some useless extra info that doesn't make it out into the sysfs.
    well, all required info except for no charger info yet; but it is charging though usb, even though it doesn't realize that fact.
    no random reboots yet since changing battery code. It's still early in the day, though.
    testing on my daily driver phone!
    will upload changes soon.
    by the way, I cut out all the LGE rapi, PIF, LGE_FUEL_GAUGE, and other stupid cruft that wasn't upwardly compatible. Why leave in bad LG code that just slows things down anyway?
    Unfortunately I don't know how the VBATT thing works, so I flat disabled the msm_battery.c in the config, and also in the Makefile to avoid conflicts (Makefile uses a couple of switches to check for thunderc.)
    With that knowhow I could make this like the original thunderc battery, where it exported its info as a pseudo battery to the regular msm_battery code through the VBATT section.
    At least this way it's a lot shorter and (somewhat) easier to read.

    dmesg still shows rpc issues with msm_hsusb and a few other similar problems, but it's usable enough for my daily driver so far... except I can't use GNavigator turn-by-turn until the accelerometers and compass are fixed.
    audio output routing is correct now.

    //edit: the battery output is readable by Jellybean, but Froyo doesn't see power and shuts down (why am I testing different Android versions? Zefie's multi-OS kernel was my favorite until it got outdated.)
    Apparently the battery info has at least one output that needs renamed. Froyo doesn't see voltage_now, and powers off... the old kernel output batt_vol, batt_temp, batt_therm, etc. Going to see about fixing that.
    //edit: Froyo will boot and runs ok with extra bit of power_supply_sysfs.c included, but youtube videos play black-and-white in froyo? and adb won't connect with that android version. adb doesn't work in any recovery I have currently, either, and I have collected a LOT of recoveries. weird. recovery probably needs rebuilt from JB source for adb to get along with the 3.x kernel.
    to h*** with froyo support! froyo bites anyway.
    07-06-2013 11:05 AM
  20. upconvert's Avatar
    Good stuff! Are you still running this with the PAC ROM? Is the Bluetooth working?

    Sent from my GT-P7310 using AC Forums mobile app
    07-06-2013 09:04 PM
  21. bigsupersquid's Avatar
    Good stuff! Are you still running this with the PAC ROM? Is the Bluetooth working?

    Sent from my GT-P7310 using AC Forums mobile app
    yes, with PAC and JBC.
    yes, everything works but the accelerometers and notification of the charger.
    No reboots since "fixing" battery code! even on my in-use phone.
    fixing in the most general sense, that is. The battery info only refreshes after screen off/screen on. While messing with slightly modified stock msm_battery.c, it would recognize the charger after screen off/on as well. Looking into that as time permits.
    upconvert and dingermtb like this.
    07-07-2013 09:51 AM
  22. bigsupersquid's Avatar
    dang, I wanked the AHB overclock code a bit. (in arch/arm/mach-msm/acpuclock-7201.c)
    I put it in the section labelled 7627 cdma, but the init process loads the table for 7627 gsm instead.
    should be fixed now.
    kanged OC settings from iscream-thunder-rebase. I wasn't aware that the AHB OC was built into that already... always on by default, #defined in the acpuclock.c
    As I recall, there was a lot of fine-tuning of the OC including remove bad frequencies put into that kernel.

    also the kernel command line needs lge.rev=10 appended to the end for the accelerometer init in board-thunderc-input.c to start the correct device (kr3dh instead of kr3dm)... 'mem=471M console=ttyMSM2,115200n8 androidboot.hardware=thunderc lge.rev=10' (thanks tdmcode on xda)
    read that post years ago but had forgotten.
    not that the accelerometer or compass is working yet, but at least it tries to start the correct hardware.
    07-08-2013 04:17 PM
  23. flapjack.fiasco's Avatar
    So awesome that you're still making progress on this! Can't wait to see how it turns out!
    07-08-2013 09:13 PM
  24. evox2008's Avatar
    Are you kidding? If my wife's OV gets a 4.2.2 upgrade she'll never leave VM. You guys are so amazing!
    07-09-2013 03:04 PM
  25. bigsupersquid's Avatar
    I like my OV. best $50 phone ever.
    my first and only android experience. and 4.2.2 kicks so much a** over the froyo junk that comes with the phone, I completely understand the interest.
    since I'm so cheap I'll probably not let go of it for years to come, I'm trying my best to contribute to the open-source community keeping this little beastie alive. The android ROM devs are the real driving force, I suggest contributing to them (somehow or another) to keep 'em interested in building for our obsolete devices. Even <thanks> can help with that.
    LG's website says the OV is discontinued. Surprise, surprise, LG support is awful anyway. Still better than Polaroid, though, they've repeatedly ignored me asking for GPL release of their kernel code for my tablet except telling me "in two months" last November....
    07-09-2013 03:26 PM
275 123 ...

Similar Threads

  1. [Kernel][android_kernel_lge_msm7x27-3.0.x (3.0.8)]bigsuperkernel-3.0.8
    By bigsupersquid in forum LG Optimus S Rooting, ROMs, and Hacks
    Replies: 0
    Last Post: 05-28-2013, 05:33 PM
  2. Verizon Teaser Video - Feb Release [Old News]
    By bmcclure937 in forum Verizon HTC Thunderbolt
    Replies: 4
    Last Post: 02-08-2011, 09:36 AM
  3. Amazon's annoying teaser pricing
    By joebob2000 in forum Verizon Fascinate
    Replies: 7
    Last Post: 10-01-2010, 10:13 AM
  4. Exclusive: DROID X See You Tomorrow Teaser
    By stacyadell in forum Motorola Droid X
    Replies: 14
    Last Post: 07-15-2010, 08:37 AM
  5. Evo commerials vs Droid X teaser video
    By Jerzyiroc in forum HTC EVO 4G
    Replies: 0
    Last Post: 07-15-2010, 01:29 AM