Author: richard
Date: Tue May 12 04:02:28 2009
New Revision: 5723
URL: http://svn.slimdevices.com/jive?rev=5723&view=rev
Log:
r5...@harrypotter (orig r5701): richard | 2009-05-11 14:00:00 +0100
Bug: 11921
Description:
Fix factory test power management settings, following a factory reset.
r5...@harrypotter (orig r5703): richard | 2009-05-11 15:29:26 +0100
Bug: 10875
Description:
Fix clock screensaver so it always disappers on motion. A bug meant it was
disappering only 50%
of the time.
r5...@harrypotter (orig r5704): richard | 2009-05-11 16:14:40 +0100
Bug: 11956
Description:
Allow motion events to be sent from lua.
r5...@harrypotter (orig r5705): richard | 2009-05-11 16:15:24 +0100
Bug: 11956
Description:
Send motion event when waking up to close screensaver.
r5...@harrypotter (orig r5707): richard | 2009-05-11 16:56:47 +0100
Bug: 11989
Description:
The sleep timer only starts once the controller has left suspend mode, so if
it takes a long time
to wake up it does not suspend immediately.
r5...@harrypotter (orig r5708): richard | 2009-05-11 17:26:32 +0100
Bug: 11990
Description:
Don't allow power off when forced popups are shown.
r5...@harrypotter (orig r5716): richard | 2009-05-11 22:13:39 +0100
Bug: 11980
Description:
Wake up from suspend every three hours to check the battery level, shutdown if
it gets too low.
r5...@harrypotter (orig r5717): richard | 2009-05-11 22:14:35 +0100
Bug: 11980
Description:
wake up in x seconds is no longer supported.
r5...@harrypotter (orig r5718): richard | 2009-05-11 22:16:04 +0100
Bug: 11980
Description:
Suspend wake is no longer supported.
Modified:
7.4/trunk/ (props changed)
7.4/trunk/squeezeos/poky/meta-squeezeos/packages/base-files/files/suspend
7.4/trunk/squeezeos/poky/meta-squeezeos/packages/base-files/squeezeos-base-files_1.0.bb
7.4/trunk/squeezeos/src/s3c2412/linux-2.6.22/arch/arm/plat-s3c24xx/pm.c
7.4/trunk/squeezeos/src/s3c2412/linux-2.6.22/drivers/char/jive/jive_mgmt.c
7.4/trunk/squeezeos/src/s3c2412/linux-2.6.22/drivers/rtc/rtc-s3c.c
7.4/trunk/squeezeos/src/s3c2412/linux-2.6.22/drivers/video/logo/logo.c
7.4/trunk/squeezeplay/src/squeezeplay/share/applets/Clock/ClockApplet.lua
7.4/trunk/squeezeplay/src/squeezeplay/src/ui/jive_event.c
7.4/trunk/squeezeplay/src/squeezeplay_jive/share/applets/SqueezeboxJive/SqueezeboxJiveApplet.lua
7.4/trunk/squeezeplay/src/squeezeplay_jive/share/applets/SqueezeboxJive/SqueezeboxJiveMeta.lua
Propchange: 7.4/trunk/
------------------------------------------------------------------------------
--- svk:merge (original)
+++ svk:merge Tue May 12 04:02:28 2009
@@ -3,7 +3,7 @@
bbe22326-0783-4b3a-ac2b-7ab96b24c8d9:/7.1/trunk:2920
bbe22326-0783-4b3a-ac2b-7ab96b24c8d9:/7.2/trunk:2921
bbe22326-0783-4b3a-ac2b-7ab96b24c8d9:/7.3/private-branches/jive-refresh:3653
-bbe22326-0783-4b3a-ac2b-7ab96b24c8d9:/7.3/trunk:5649
+bbe22326-0783-4b3a-ac2b-7ab96b24c8d9:/7.3/trunk:5718
bbe22326-0783-4b3a-ac2b-7ab96b24c8d9:/branches/7.0:2013
bbe22326-0783-4b3a-ac2b-7ab96b24c8d9:/branches/SN:1083
bbe22326-0783-4b3a-ac2b-7ab96b24c8d9:/branches/scrolling:1378
Modified:
7.4/trunk/squeezeos/poky/meta-squeezeos/packages/base-files/files/suspend
URL:
http://svn.slimdevices.com/jive/7.4/trunk/squeezeos/poky/meta-squeezeos/packages/base-files/files/suspend?rev=5723&r1=5722&r2=5723&view=diff
==============================================================================
--- 7.4/trunk/squeezeos/poky/meta-squeezeos/packages/base-files/files/suspend
(original)
+++ 7.4/trunk/squeezeos/poky/meta-squeezeos/packages/base-files/files/suspend
Tue May 12 04:02:28 2009
@@ -1,17 +1,4 @@
#!/bin/sh
-
-
-# (Optional) number of seconds before wakeup
-SECONDS=$1
-
-if [ "x$SECONDS" != "x" ]
-then
- NOW=`cat /sys/devices/platform/s3c2410-rtc/rtc\:rtc0/since_epoch`
- WAKEAT=$(($NOW + $SECONDS))
-
- /usr/bin/logger -s "Suspend wakeat $WAKEAT"
- echo $WAKEAT > /sys/devices/platform/s3c2410-rtc/rtc\:rtc0/wakealarm
-fi
/usr/bin/logger -s "suspending ..."
Modified:
7.4/trunk/squeezeos/poky/meta-squeezeos/packages/base-files/squeezeos-base-files_1.0.bb
URL:
http://svn.slimdevices.com/jive/7.4/trunk/squeezeos/poky/meta-squeezeos/packages/base-files/squeezeos-base-files_1.0.bb?rev=5723&r1=5722&r2=5723&view=diff
==============================================================================
---
7.4/trunk/squeezeos/poky/meta-squeezeos/packages/base-files/squeezeos-base-files_1.0.bb
(original)
+++
7.4/trunk/squeezeos/poky/meta-squeezeos/packages/base-files/squeezeos-base-files_1.0.bb
Tue May 12 04:02:28 2009
@@ -3,7 +3,7 @@
PRIORITY = "required"
LICENSE = "GPL"
-PR = "r32"
+PR = "r33"
SRC_URI = " \
file://85-mtd.rules \
Modified:
7.4/trunk/squeezeos/src/s3c2412/linux-2.6.22/arch/arm/plat-s3c24xx/pm.c
URL:
http://svn.slimdevices.com/jive/7.4/trunk/squeezeos/src/s3c2412/linux-2.6.22/arch/arm/plat-s3c24xx/pm.c?rev=5723&r1=5722&r2=5723&view=diff
==============================================================================
--- 7.4/trunk/squeezeos/src/s3c2412/linux-2.6.22/arch/arm/plat-s3c24xx/pm.c
(original)
+++ 7.4/trunk/squeezeos/src/s3c2412/linux-2.6.22/arch/arm/plat-s3c24xx/pm.c Tue
May 12 04:02:28 2009
@@ -35,6 +35,7 @@
#include <linux/ioport.h>
#include <linux/delay.h>
#include <linux/serial_core.h>
+#include <linux/bcd.h>
#include <asm/cacheflush.h>
#include <asm/hardware.h>
@@ -45,6 +46,7 @@
#include <asm/arch/regs-gpio.h>
#include <asm/arch/regs-mem.h>
#include <asm/arch/regs-irq.h>
+#include <asm/arch/regs-rtc.h>
#include <asm/mach/time.h>
@@ -118,6 +120,7 @@
SAVE_ITEM(S3C2410_DCLKCON),
};
+#define CONFIG_S3C2410_PM_DEBUG
#ifdef CONFIG_S3C2410_PM_DEBUG
#define SAVE_UART(va) \
@@ -612,8 +615,47 @@
return 0;
}
+
+extern void __iomem *s3c_rtc_base;
+extern bool jive_is_battery_flat(int *pbat);
+
+static int jive_pm_enter(suspend_state_t state)
+{
+ void __iomem *rtc_base = s3c_rtc_base;
+ unsigned int rtc_hour, alm_hour, alrm_en;
+ int rtc_wakeup, bat_lvl, bat_flat;
+
+ do {
+ /* set rtc alarm to wake up every three hours */
+ rtc_hour = readb(rtc_base + S3C2410_RTCHOUR);
+ BCD_TO_BIN(rtc_hour);
+
+ alm_hour = (rtc_hour + 3) % 12;
+ alrm_en = S3C2410_RTCALM_HOUREN | S3C2410_RTCALM_ALMEN;
+ DBG("rtc_hour=%d alm_hour=%d\n", rtc_hour, alm_hour);
+
+ writeb(BIN2BCD(alm_hour), rtc_base + S3C2410_ALMHOUR);
+ writeb(alrm_en, rtc_base + S3C2410_RTCALM);
+
+ /* suspend */
+ s3c2410_pm_enter(state);
+
+ /* woken by rtc? */
+ rtc_wakeup = (__raw_readl(S3C2410_SRCPND) == 0);
+
+ /* check battery */
+ bat_flat = jive_is_battery_flat(&bat_lvl);
+ DBG("battery flat=%d level=%d\n", bat_flat, bat_lvl);
+
+ if (bat_flat) {
+ kernel_power_off();
+ }
+ } while (rtc_wakeup);
+}
+
+
static struct pm_ops s3c2410_pm_ops = {
- .enter = s3c2410_pm_enter,
+ .enter = jive_pm_enter,
.valid = pm_valid_only_mem,
};
Modified:
7.4/trunk/squeezeos/src/s3c2412/linux-2.6.22/drivers/char/jive/jive_mgmt.c
URL:
http://svn.slimdevices.com/jive/7.4/trunk/squeezeos/src/s3c2412/linux-2.6.22/drivers/char/jive/jive_mgmt.c?rev=5723&r1=5722&r2=5723&view=diff
==============================================================================
--- 7.4/trunk/squeezeos/src/s3c2412/linux-2.6.22/drivers/char/jive/jive_mgmt.c
(original)
+++ 7.4/trunk/squeezeos/src/s3c2412/linux-2.6.22/drivers/char/jive/jive_mgmt.c
Tue May 12 04:02:28 2009
@@ -634,7 +634,7 @@
/* Called from logo.c to determine if the battery is flat during boot.
* Note this is called before jive_mgmt_init.
*/
-bool jive_is_battery_flat(void) {
+bool jive_is_battery_flat(int *pbat) {
int bat, nacpr;
bat = get_battery();
@@ -647,6 +647,10 @@
printk("battery flat? %s (level=%d nacpr=%d)\n",
battery_flat?"yes":"no", bat, nacpr);
+ if (pbat) {
+ *pbat = bat;
+ }
+
return battery_flat;
}
Modified: 7.4/trunk/squeezeos/src/s3c2412/linux-2.6.22/drivers/rtc/rtc-s3c.c
URL:
http://svn.slimdevices.com/jive/7.4/trunk/squeezeos/src/s3c2412/linux-2.6.22/drivers/rtc/rtc-s3c.c?rev=5723&r1=5722&r2=5723&view=diff
==============================================================================
--- 7.4/trunk/squeezeos/src/s3c2412/linux-2.6.22/drivers/rtc/rtc-s3c.c
(original)
+++ 7.4/trunk/squeezeos/src/s3c2412/linux-2.6.22/drivers/rtc/rtc-s3c.c Tue May
12 04:02:28 2009
@@ -36,7 +36,7 @@
static struct resource *s3c_rtc_mem;
-static void __iomem *s3c_rtc_base;
+void __iomem *s3c_rtc_base;
static int s3c_rtc_alarmno = NO_IRQ;
static int s3c_rtc_tickno = NO_IRQ;
static int s3c_rtc_freq = 1;
Modified: 7.4/trunk/squeezeos/src/s3c2412/linux-2.6.22/drivers/video/logo/logo.c
URL:
http://svn.slimdevices.com/jive/7.4/trunk/squeezeos/src/s3c2412/linux-2.6.22/drivers/video/logo/logo.c?rev=5723&r1=5722&r2=5723&view=diff
==============================================================================
--- 7.4/trunk/squeezeos/src/s3c2412/linux-2.6.22/drivers/video/logo/logo.c
(original)
+++ 7.4/trunk/squeezeos/src/s3c2412/linux-2.6.22/drivers/video/logo/logo.c Tue
May 12 04:02:28 2009
@@ -22,7 +22,7 @@
#endif
#ifdef CONFIG_LOGO_LOGITECH_CLUT224
-extern bool jive_is_battery_flat(void);
+extern bool jive_is_battery_flat(int *pbat);
#endif
extern const struct linux_logo logo_linux_mono;
@@ -108,7 +108,7 @@
#endif
#ifdef CONFIG_LOGO_LOGITECH_CLUT224
{
- if (jive_is_battery_flat()) {
+ if (jive_is_battery_flat(NULL)) {
logo = &logo_battery_clut224;
}
else {
Modified:
7.4/trunk/squeezeplay/src/squeezeplay/share/applets/Clock/ClockApplet.lua
URL:
http://svn.slimdevices.com/jive/7.4/trunk/squeezeplay/src/squeezeplay/share/applets/Clock/ClockApplet.lua?rev=5723&r1=5722&r2=5723&view=diff
==============================================================================
--- 7.4/trunk/squeezeplay/src/squeezeplay/share/applets/Clock/ClockApplet.lua
(original)
+++ 7.4/trunk/squeezeplay/src/squeezeplay/share/applets/Clock/ClockApplet.lua
Tue May 12 04:02:28 2009
@@ -116,7 +116,7 @@
function Clock:__init()
log:info("Init Clock")
- obj = oo.rawnew(self)
+ local obj = oo.rawnew(self)
obj.screen_width, obj.screen_height = Framework:getScreenSize()
@@ -126,7 +126,7 @@
obj.window:addListener(EVENT_MOTION,
function()
- obj.window:hide()
+ obj.window:hide(Window.transitionNone)
return EVENT_CONSUME
end)
Modified: 7.4/trunk/squeezeplay/src/squeezeplay/src/ui/jive_event.c
URL:
http://svn.slimdevices.com/jive/7.4/trunk/squeezeplay/src/squeezeplay/src/ui/jive_event.c?rev=5723&r1=5722&r2=5723&view=diff
==============================================================================
--- 7.4/trunk/squeezeplay/src/squeezeplay/src/ui/jive_event.c (original)
+++ 7.4/trunk/squeezeplay/src/squeezeplay/src/ui/jive_event.c Tue May 12
04:02:28 2009
@@ -68,6 +68,12 @@
case JIVE_EVENT_MOUSE_DRAG:
event->u.mouse.x = lua_tointeger(L, 3);
event->u.mouse.y = lua_tointeger(L, 4);
+ break;
+
+ case JIVE_EVENT_MOTION:
+ event->u.motion.x = lua_tointeger(L, 3);
+ event->u.motion.y = lua_tointeger(L, 4);
+ event->u.motion.z = lua_tointeger(L, 5);
break;
default:
Modified:
7.4/trunk/squeezeplay/src/squeezeplay_jive/share/applets/SqueezeboxJive/SqueezeboxJiveApplet.lua
URL:
http://svn.slimdevices.com/jive/7.4/trunk/squeezeplay/src/squeezeplay_jive/share/applets/SqueezeboxJive/SqueezeboxJiveApplet.lua?rev=5723&r1=5722&r2=5723&view=diff
==============================================================================
---
7.4/trunk/squeezeplay/src/squeezeplay_jive/share/applets/SqueezeboxJive/SqueezeboxJiveApplet.lua
(original)
+++
7.4/trunk/squeezeplay/src/squeezeplay_jive/share/applets/SqueezeboxJive/SqueezeboxJiveApplet.lua
Tue May 12 04:02:28 2009
@@ -19,6 +19,7 @@
local Sample = require("squeezeplay.sample")
local Checkbox = require("jive.ui.Checkbox")
local Choice = require("jive.ui.Choice")
+local Event = require("jive.ui.Event")
local Font = require("jive.ui.Font")
local Framework = require("jive.ui.Framework")
local Group = require("jive.ui.Group")
@@ -238,7 +239,7 @@
return EVENT_CONSUME
end
return EVENT_UNUSED
- end)
+ end, 1)
Framework:addActionListener("soft_reset", self, _softResetAction, true)
@@ -979,7 +980,7 @@
local settings = self:getSettings()
- local sleepOptions = { 10, 30, 60 }
+ local sleepOptions = { 10, 30, 60, 120 }
local sleepIndex
for i, v in ipairs(sleepOptions) do
if v == (settings.sleepTimeout / 1000) then
@@ -988,7 +989,7 @@
end
end
- local suspendOptions = { 10, 20, 30, 60, 600, 3600 }
+ local suspendOptions = { 10, 30, 60, 600, 1200, 2400, 3600 }
local suspendIndex
for i, v in ipairs(suspendOptions) do
if v == (settings.suspendWhenPlayingTimeout / 1000) then
@@ -1035,17 +1036,6 @@
)
},
{
- text = "Suspend Wake",
- icon = Checkbox(
- "checkbox",
- function(obj, isSelected)
- settings.suspendWake = isSelected
and 30 or nil
- log:info("suspendWake=",
settings.suspendWake)
- end,
- settings.suspendWake ~= nil
- )
- },
- {
text = self:string("WLAN_POWER_SAVE"),
icon = Checkbox(
"checkbox",
@@ -1161,7 +1151,6 @@
local zeroconf = status.ip_address and string.match(status.ip_address,
"^169.254.") ~= nil
local settings = self:getSettings()
- local wakeAfter = settings.suspendWake and settings.suspendWake or ""
-- start timer to resume this task every second
self.suspendPopup:addTimer(1000,
@@ -1186,13 +1175,16 @@
until not connected
-- suspend
- os.execute("/etc/init.d/suspend " .. wakeAfter)
+ os.execute("/etc/init.d/suspend")
-- wake up power state
- self:wakeup()
+ self:wakeup('motion')
while true do
local status = self.wireless:t_wpaStatus()
+
+ -- wake up
+ self:wakeup('motion')
-- network connected?
if status then
@@ -1212,11 +1204,11 @@
jnt:notify("networkConnected")
end
+ -- simulate motion to kill (some) screensavers
+ Framework:pushEvent(Event:new(EVENT_MOTION, 0, 0, 0))
+
-- close popup
self.suspendPopup:hide()
-
- -- wake up
- self:wakeup()
self.suspendPopup = nil
self.suspendTask = nil
Modified:
7.4/trunk/squeezeplay/src/squeezeplay_jive/share/applets/SqueezeboxJive/SqueezeboxJiveMeta.lua
URL:
http://svn.slimdevices.com/jive/7.4/trunk/squeezeplay/src/squeezeplay_jive/share/applets/SqueezeboxJive/SqueezeboxJiveMeta.lua?rev=5723&r1=5722&r2=5723&view=diff
==============================================================================
---
7.4/trunk/squeezeplay/src/squeezeplay_jive/share/applets/SqueezeboxJive/SqueezeboxJiveMeta.lua
(original)
+++
7.4/trunk/squeezeplay/src/squeezeplay_jive/share/applets/SqueezeboxJive/SqueezeboxJiveMeta.lua
Tue May 12 04:02:28 2009
@@ -26,7 +26,6 @@
suspendWhenPlayingTimeout = 2400000, -- 40 minutes
suspendWhenStoppedTimeout = 1200000, -- 20 minutes
suspendEnabled = true,
- suspendWake = nil,
dimmedAC = false,
wlanPSEnabled = true,
}
_______________________________________________
Jive-checkins mailing list
[email protected]
http://lists.slimdevices.com/mailman/listinfo/jive-checkins