1. 17 Dec, 2013 2 commits
    • Radek Polak's avatar
      bump version · 57e71ffd
      Radek Polak authored
      57e71ffd
    • Radek Polak's avatar
      phonepowermanager - increase interval between screen off and suspend · 50836b37
      Radek Polak authored
      GTA02 has problem that it does not automatically suspends. This is
      in the log:
      
      PhonePowerManager::setIntervals: 1 10 10  size:  3
      PhonePowerManager::setIntervals: 1000 9000 100
      QtopiaPowerManager: restoring screen saver
      Using Block level  1
      PhonePowerManager::save() level 0 action 0 homescreen settings: "Never" false
      QtopiaPowerManager: setBacklight => 1
      Dimming light
      PhonePowerManager::save() level 1 action 1 homescreen settings: "Never" false
      QtopiaPowerManager: setBacklight => 0
      turning light off
      QtopiaPowerManager: restoring screen saver
      QtopiaPowerManager: setBacklight => -1
      
      Successful suspend looks like this:
      
      QtopiaPowerManager: setBacklight => -3
      PhonePowerManager::setIntervals: 1 10 10  size:  3
      PhonePowerManager::setIntervals: 1000 9000 100
      QtopiaPowerManager: restoring screen saver
      Using Block level  1
      PhonePowerManager::save() level 0 action 0 homescreen settings: "Never" false
      QtopiaPowerManager: setBacklight => 1
      Dimming light
      PhonePowerManager::save() level 1 action 1 homescreen settings: "Never" false
      QtopiaPowerManager: setBacklight => 0
      turning light off
      PhonePowerManager::save() level 2 action 2 homescreen settings: "Never" false
      case PhonePowerManager::Suspend: m_powerConstraint 1000 m_suspendEnabled true
      Suspending device
      ModemSuspend(0xc0db88) checking whether canSuspend...
      SystemSuspendHandler(0x637958) checking whether canSuspend...
      ModemSuspend(0xc0db88) suspending...
       ...waiting for completion...
      
      This is from my mail:
      
      It seems i understand the problem and have a workaround that works on v58. The
      problem seems to be in QtMoko power management handling. You can set intervals
      for dim, screen off and suspend. There are intervals between them and it
      always goes like:
      
      dim->screen off->suspend
      
      If you dont specify interval between screen off->suspend QtMoko automatically
      places 100ms there. But this is probably not enough and suspend never happens.
      
      The workaround: go to Settings->Power management->select "On battery" and fill
      in good intevals - e.g. Dim=off, Display off=30s, Suspend=40s and it will auto
      suspend ok. The trick is that Display off must be filled and must be more then
      10s less then suspend.
      
      From qwindowsystem_qws.cpp we are most likely hitting this case:
      
              if (screensavertime.elapsed() > *screensaverinterval*2) {
                  // bogus (eg. unsuspend, system time changed)
                  _q_screenSaverWake(); // try again
                  return;
              }
      
      because previous screen off took more then 100ms. The solution is to increase 100ms
      to 1s which should be safe. We assume that tunring screen off wont take more then 1s.
      50836b37
  2. 12 Dec, 2013 1 commit
  3. 11 Dec, 2013 6 commits
  4. 10 Dec, 2013 2 commits
  5. 09 Dec, 2013 1 commit
  6. 07 Dec, 2013 3 commits
  7. 04 Dec, 2013 2 commits
  8. 02 Dec, 2013 1 commit
  9. 01 Dec, 2013 4 commits
  10. 30 Nov, 2013 2 commits
  11. 26 Oct, 2013 1 commit
  12. 11 Oct, 2013 2 commits
  13. 17 Sep, 2013 1 commit
  14. 14 Sep, 2013 7 commits
  15. 13 Sep, 2013 2 commits
  16. 12 Sep, 2013 3 commits
    • Radek Polak's avatar
      gta04 - trim charge log if it's too long · 16cea544
      Radek Polak authored
      16cea544
    • Radek Polak's avatar
      gta04 - fix and improve charging · 4dd49fea
      Radek Polak authored
      4dd49fea
    • Radek Polak's avatar
      gta04 charging - implement charging logic to avoid charging bugs · 211ce073
      Radek Polak authored
      GTA04 charging on some chargers is bugged. The problem is that by
      default kernel sets charging current to 600mA and if the USB power
      supply is not strong enough, then voltage drops under 4.5V. This
      confuses GTA04 charging logic and the result is that GTA04 after
      charged to full then discharges to 0 because charging never starts
      again. See twl4030_charger.c and especially the function
      twl4030_charger_enable_usb().
      
      The solution QtMoko now uses is that we disable charging with 600mA
      when QtMoko starts. That's the line:
      
      qWriteFile("/sys/module/twl4030_charger/parameters/allow_usb", "N");
      
      Now when USB is plugged it starts charging just with 100mA. We slowly
      raise the current and check if voltage remains above 4.5V.
      
      There is even some logic when battery is getting full we lower the
      charging current (using values from battery) so that battery charges
      very very slowly.
      
      You can check charging in NeoControl - it has nice charging graph now.
      211ce073