diff options
author | Matthias Hentges <oe@hentges.net> | 2006-02-19 13:47:29 +0000 |
---|---|---|
committer | OpenEmbedded Project <openembedded-devel@lists.openembedded.org> | 2006-02-19 13:47:29 +0000 |
commit | 98265b38cb79547bd05a14149906e1aba8e6e1e8 (patch) | |
tree | 7db0a80923f8866a87f53ed171b7ac7595eb176e /packages/gpe-bootsplash | |
parent | ba81094a28b35db729737a391e266c92ecf588e4 (diff) |
gpe-bootsplash:
Dump /dev/fb0 after the first successful launch of bootsplash and use the dump to display the splashscreen from that point on. Speeds up display of large bootsplash-theme _a lot_. Handles theme changes as well.
Diffstat (limited to 'packages/gpe-bootsplash')
-rw-r--r-- | packages/gpe-bootsplash/files/speed.patch | 51 | ||||
-rw-r--r-- | packages/gpe-bootsplash/gpe-bootsplash_1.15.bb | 5 |
2 files changed, 54 insertions, 2 deletions
diff --git a/packages/gpe-bootsplash/files/speed.patch b/packages/gpe-bootsplash/files/speed.patch new file mode 100644 index 0000000000..32d0432a87 --- /dev/null +++ b/packages/gpe-bootsplash/files/speed.patch @@ -0,0 +1,51 @@ +--- gpe-bootsplash-1.15/gpe-bootsplash.init.orig 2006-02-19 14:34:22.404426869 +0100 ++++ gpe-bootsplash-1.15/gpe-bootsplash.init 2006-02-19 14:29:35.044269116 +0100 +@@ -32,14 +32,46 @@ + esac + echo "0" > /proc/sys/kernel/printk + +- # Clear tty2 ++ # Clear tty2 + echo -e "\033c" > /dev/tty2 ++ + chvt 2 + + echo -e "\nLoading bootsplash..." > /dev/tty2 + echo "Use Fn-LeftArrow to see the boot messages." > /dev/tty2 + +- /usr/bin/gpe-bootsplash $ARGS || chvt 1 ++ # Catch when the user has changed the symlinks manually (normally it doesn't matter which link we check ++ # as themes always update both of them ++ echo "$ARGS" | grep -q -- "--force-landscape" && source_link="splash-l.svg" || source_link="splash-p.svg" ++ ++ # echo "[`cat /etc/bootsplash.name`] = [`readlink /usr/share/gpe/$source_link`]" ++ ++ # bootsplash takes quite some time to load external images into an svg file. ++ # We speed things up by dumping the content of fb0, and catting it back (which works instantly) ++ if test -e /etc/bootsplash.raw.gz -a "`cat /etc/bootsplash.name`" = "`readlink /usr/share/gpe/$source_link`" ++ then ++ echo -e "\nUsing /etc/bootsplash.raw.gz...." > /dev/tty2 ++ sleep 1 ++ ++ # Turn off the cursor on tty2 ++ echo -e "\033[?25l\000" > /dev/tty2 ++ ++ zcat /etc/bootsplash.raw.gz > /dev/fb0 ++ else ++ rm -f /etc/bootsplash.* ++ # Store the symlinks name as an indication which theme is used at the time we dump the image ++ if (/usr/bin/gpe-bootsplash $ARGS) ++ then ++ readlink /usr/share/gpe/$source_link > /etc/bootsplash.name ++ ++ cat /dev/fb0 > /etc/bootsplash.raw ; gzip /etc/bootsplash.raw ++ else ++ echo -e "\nNOTE: gpe-bootsplash failed to start" >/dev/tty2 ++ sleep 3 ++ chvt 1 ++ fi ++ ++ fi + ;; + 'stop') + ;; diff --git a/packages/gpe-bootsplash/gpe-bootsplash_1.15.bb b/packages/gpe-bootsplash/gpe-bootsplash_1.15.bb index fd17846103..ca48c6086b 100644 --- a/packages/gpe-bootsplash/gpe-bootsplash_1.15.bb +++ b/packages/gpe-bootsplash/gpe-bootsplash_1.15.bb @@ -5,11 +5,12 @@ MAINTAINER = "Phil Blundell <pb@handhelds.org>" SECTION = "gpe" PRIORITY = "optional" LICENSE = "GPL" -PR = "r2" +PR = "r3" SRC_URI += "file://splash-p.svg \ file://splash-l.svg \ - file://tty2-message.patch;patch=1" + file://tty2-message.patch;patch=1 \ + file://speed.patch;patch=1" FILES_${PN} += "${datadir}/gpe" |