summaryrefslogtreecommitdiff
path: root/meta-extras
diff options
context:
space:
mode:
Diffstat (limited to 'meta-extras')
-rw-r--r--meta-extras/COPYING.MIT17
-rw-r--r--meta-extras/conf/distro/include/poky-extras-src-revisions.inc6
-rw-r--r--meta-extras/conf/layer.conf11
-rw-r--r--meta-extras/conf/machine/mx31litekit.conf14
-rw-r--r--meta-extras/conf/machine/nokia770.conf35
-rw-r--r--meta-extras/conf/machine/nokia800.conf30
-rw-r--r--meta-extras/conf/machine/om-gta01.conf48
-rw-r--r--meta-extras/conf/machine/om-gta02.conf49
-rw-r--r--meta-extras/packages/acct/acct_6.3.99+6.4pre1.bb9
-rw-r--r--meta-extras/packages/acct/files/cross-compile.patch34
-rw-r--r--meta-extras/packages/clutter/clutter-helix.inc15
-rw-r--r--meta-extras/packages/clutter/clutter-helix_git.bb8
-rw-r--r--meta-extras/packages/clutter/moblin-proto/fix-shader-and-callbacks.patch44
-rw-r--r--meta-extras/packages/clutter/moblin-proto/fix.patch22
-rw-r--r--meta-extras/packages/clutter/moblin-proto/paths.patch15
-rw-r--r--meta-extras/packages/clutter/moblin-proto_git.bb19
-rw-r--r--meta-extras/packages/cx3110x/cx3110x_1.1.bb21
-rw-r--r--meta-extras/packages/cx3110x/cx3110x_2.0.15.bb23
-rw-r--r--meta-extras/packages/cx3110x/files/no-linux-config.patch12
-rw-r--r--meta-extras/packages/eventlog/eventlog_0.2.5.bb7
-rw-r--r--meta-extras/packages/evince/evince_2.20.0.bb10
-rw-r--r--meta-extras/packages/evince/evince_svn.bb14
-rw-r--r--meta-extras/packages/evince/files/no-icon-theme.diff13
-rw-r--r--meta-extras/packages/flumotion/flumotion/no-check-for-python-stuff.patch68
-rw-r--r--meta-extras/packages/flumotion/flumotion/python-path.patch25
-rw-r--r--meta-extras/packages/flumotion/flumotion_0.4.1.bb41
-rw-r--r--meta-extras/packages/gnome/libbonobo.inc36
-rw-r--r--meta-extras/packages/gnome/libbonobo/configure-gthread.patch11
-rw-r--r--meta-extras/packages/gnome/libbonobo/gtk-doc.m453
-rw-r--r--meta-extras/packages/gnome/libbonobo/gtk-doc.make148
-rw-r--r--meta-extras/packages/gnome/libbonobo_2.22.0.bb6
-rw-r--r--meta-extras/packages/gnome/libbonoboui_2.18.0.bb15
-rw-r--r--meta-extras/packages/gnome/orbit2-native_2.14.12.bb22
-rw-r--r--meta-extras/packages/gnome/orbit2/configure-lossage.patch35
-rw-r--r--meta-extras/packages/gnome/orbit2/gtk-doc.m453
-rw-r--r--meta-extras/packages/gnome/orbit2/gtk-doc.make148
-rw-r--r--meta-extras/packages/gnome/orbit2/pkgconfig-fix.patch12
-rw-r--r--meta-extras/packages/gnome/orbit2_2.14.16.bb30
-rw-r--r--meta-extras/packages/helix/helix-libs.bb49
-rw-r--r--meta-extras/packages/helix/helix-libs/add-clutter.patch12668
-rw-r--r--meta-extras/packages/helix/helix-libs/helix-player.pc11
-rw-r--r--meta-extras/packages/helix/helix-libs/hxclient.pc11
-rw-r--r--meta-extras/packages/helix/ribosome.bb43
-rw-r--r--meta-extras/packages/helix/ribosome/buildrc4
-rwxr-xr-xmeta-extras/packages/helix/ribosome/clutter.bif68
-rw-r--r--meta-extras/packages/images/poky-image-extras.bb9
-rw-r--r--meta-extras/packages/libol/libol_0.3.18.bb8
-rw-r--r--meta-extras/packages/librds/librds_0.0.1.bb11
-rw-r--r--meta-extras/packages/libxosd/files/autofoo.patch116
-rw-r--r--meta-extras/packages/libxosd/files/use-sane-default-font.patch13
-rw-r--r--meta-extras/packages/libxosd/libxosd_svn.bb20
-rw-r--r--meta-extras/packages/linux/linux-nokia800-2.6.18-osso40/fix_oprofile.patch30
-rw-r--r--meta-extras/packages/linux/linux-nokia800-2.6.18-osso40/nokia770/defconfig1451
-rw-r--r--meta-extras/packages/linux/linux-nokia800-2.6.18-osso40/nokia770_nand_fix.patch415
-rw-r--r--meta-extras/packages/linux/linux-nokia800-2.6.18-osso40/nokia800/defconfig1312
-rw-r--r--meta-extras/packages/linux/linux-nokia800-2.6.21-200823maemo6/kernel-source_2.6.21-200823maemo6.diff.gzbin932654 -> 0 bytes
-rw-r--r--meta-extras/packages/linux/linux-nokia800-2.6.21-200823maemo6/nokia800/defconfig1650
-rw-r--r--meta-extras/packages/linux/linux-nokia800-2.6.21-200823maemo6/suspend-button.patch60
-rw-r--r--meta-extras/packages/linux/linux-nokia800-2.6.21-osso71/nokia800/defconfig1642
-rw-r--r--meta-extras/packages/linux/linux-nokia800-2.6.21-osso71/suspend-button.patch60
-rw-r--r--meta-extras/packages/linux/linux-nokia800.inc43
-rw-r--r--meta-extras/packages/linux/linux-nokia800_2.6.18-osso40.bb18
-rw-r--r--meta-extras/packages/linux/linux-nokia800_2.6.21-200823maemo6.bb18
-rw-r--r--meta-extras/packages/linux/linux-nokia800_2.6.21-osso71.bb18
-rw-r--r--meta-extras/packages/linux/linux-openmoko.inc25
-rw-r--r--meta-extras/packages/linux/linux-openmoko/timespec_add_ns_avoid_udivdi3.patch20
-rw-r--r--meta-extras/packages/linux/linux-openmoko_2.6.24+git.bb53
-rw-r--r--meta-extras/packages/lirc/files/lirc_sir-sa1100.patch10
-rw-r--r--meta-extras/packages/lirc/files/lircd.conf_nslu21886
-rwxr-xr-xmeta-extras/packages/lirc/files/lircd.init39
-rwxr-xr-xmeta-extras/packages/lirc/files/lircexec.init37
-rwxr-xr-xmeta-extras/packages/lirc/files/lircmd.init38
-rw-r--r--meta-extras/packages/lirc/files/lircrc_nslu2113
-rw-r--r--meta-extras/packages/lirc/files/split-hauppauge.patch141
-rw-r--r--meta-extras/packages/lirc/lirc-config.inc13
-rw-r--r--meta-extras/packages/lirc/lirc-modules_0.8.3.bb33
-rw-r--r--meta-extras/packages/lirc/lirc_0.8.3.bb31
-rw-r--r--meta-extras/packages/llvm/llvm-native/fix_ldflags_export.patch26
-rw-r--r--meta-extras/packages/llvm/llvm-native_svn.bb13
-rw-r--r--meta-extras/packages/madplay/madplay_0.15.2b.bb12
-rw-r--r--meta-extras/packages/maemo-mapper/files/fix_segfault.patch31
-rw-r--r--meta-extras/packages/maemo-mapper/maemo-mapper-nohildon_svn.bb22
-rw-r--r--meta-extras/packages/maemo/nokia770-init/fixup-770.sh26
-rw-r--r--meta-extras/packages/maemo/nokia770-init_1.0.bb38
-rw-r--r--meta-extras/packages/maemo/xpext/auxdir.patch13
-rw-r--r--meta-extras/packages/maemo/xpext_1.0-5.bb22
-rw-r--r--meta-extras/packages/maemo/xsp_1.0.0-8.bb12
-rw-r--r--meta-extras/packages/matchbox-applet-inputmanager/matchbox-applet-inputmanager_0.6.bb12
-rw-r--r--meta-extras/packages/matchbox-applet-light/matchbox-applet-light_svn.bb10
-rw-r--r--meta-extras/packages/matchbox-applet-startup-monitor/matchbox-applet-startup-monitor_0.1.bb11
-rw-r--r--meta-extras/packages/matchbox-applet-volume/matchbox-applet-volume_0.1.bb12
-rw-r--r--meta-extras/packages/matchbox-common/matchbox-common_0.9.1.bb14
-rw-r--r--meta-extras/packages/matchbox-common/matchbox-common_svn.bb17
-rw-r--r--meta-extras/packages/matchbox-panel-hacks/matchbox-panel-hacks-0.3-1/home-panelapp.desktop7
-rwxr-xr-xmeta-extras/packages/matchbox-panel-hacks/matchbox-panel-hacks-0.3-1/mb-applet-home2
-rw-r--r--meta-extras/packages/matchbox-panel-hacks/matchbox-panel-hacks-0.3-1/xrandr-panelapp.desktop7
-rwxr-xr-xmeta-extras/packages/matchbox-panel-hacks/matchbox-panel-hacks-0.3-1/xrandr-panelapp.sh9
-rw-r--r--meta-extras/packages/matchbox-panel-hacks/matchbox-panel-hacks-0.3-1/xrandr.pngbin1651 -> 0 bytes
-rw-r--r--meta-extras/packages/matchbox-panel-hacks/matchbox-panel-hacks_0.3-1.bb23
-rw-r--r--meta-extras/packages/matchbox-panel-manager/matchbox-panel-manager_0.1.bb12
-rw-r--r--meta-extras/packages/matchbox-panel/matchbox-panel.inc27
-rw-r--r--meta-extras/packages/matchbox-panel/matchbox-panel_0.9.2.bb6
-rw-r--r--meta-extras/packages/matchbox-panel/matchbox-panel_svn.bb9
-rw-r--r--meta-extras/packages/mozilla/files/eabi-fix.patch66
-rw-r--r--meta-extras/packages/mozilla/files/eabi-fix2.patch56
-rw-r--r--meta-extras/packages/mozilla/files/eabi-fix3.patch15
-rw-r--r--meta-extras/packages/mozilla/files/minimo.desktop9
-rw-r--r--meta-extras/packages/mozilla/files/minimo.pngbin4323 -> 0 bytes
-rw-r--r--meta-extras/packages/mozilla/minimo/bug-322806.diff13
-rw-r--r--meta-extras/packages/mozilla/minimo/minimo4
-rw-r--r--meta-extras/packages/mozilla/minimo/minimo.patch356
-rw-r--r--meta-extras/packages/mozilla/minimo/minimo.pngbin4323 -> 0 bytes
-rw-r--r--meta-extras/packages/mozilla/minimo/mozconfig36
-rw-r--r--meta-extras/packages/mozilla/minimo_cvs.bb153
-rw-r--r--meta-extras/packages/networkmanager/files/70NetworkManagerApplet.shbg4
-rw-r--r--meta-extras/packages/networkmanager/files/99_networkmanager1
-rw-r--r--meta-extras/packages/networkmanager/files/NetworkManager43
-rw-r--r--meta-extras/packages/networkmanager/files/allow-disabling.patch45
-rw-r--r--meta-extras/packages/networkmanager/files/applet-no-animation.patch234
-rw-r--r--meta-extras/packages/networkmanager/files/applet-no-gnome.diff59
-rw-r--r--meta-extras/packages/networkmanager/files/libnlfix.patch29
-rw-r--r--meta-extras/packages/networkmanager/files/makefile-fix.patch17
-rw-r--r--meta-extras/packages/networkmanager/files/nmutil-fix.patch12
-rw-r--r--meta-extras/packages/networkmanager/files/no-restarts.diff21
-rw-r--r--meta-extras/packages/networkmanager/files/no_vpn.patch13
-rw-r--r--meta-extras/packages/networkmanager/networkmanager-applet_svn.bb33
-rw-r--r--meta-extras/packages/networkmanager/networkmanager_svn.bb51
-rw-r--r--meta-extras/packages/notification-daemon/files/no-wnck-sexy.patch98
-rw-r--r--meta-extras/packages/notification-daemon/notification-daemon_0.3.7.bb21
-rwxr-xr-xmeta-extras/packages/osc/osc-native_svn.bb28
-rw-r--r--meta-extras/packages/prism-firmware/prism-firmware.bb32
-rw-r--r--meta-extras/packages/prism-firmware/prism-firmware/hostap.rules4
-rw-r--r--meta-extras/packages/prism-firmware/prism-firmware/prism-fw.sh32
-rw-r--r--meta-extras/packages/python/python-iniparse-native_0.3.2.bb6
-rw-r--r--meta-extras/packages/python/python-iniparse_0.3.2.bb11
-rw-r--r--meta-extras/packages/python/python-urlgrabber-native_3.9.1.bb4
-rw-r--r--meta-extras/packages/python/python-urlgrabber/urlgrabber-3.0.0-cleanup.patch28
-rw-r--r--meta-extras/packages/python/python-urlgrabber/urlgrabber-HEAD.patch142
-rw-r--r--meta-extras/packages/python/python-urlgrabber/urlgrabber-reset.patch15
-rw-r--r--meta-extras/packages/python/python-urlgrabber_3.9.1.bb16
-rw-r--r--meta-extras/packages/python/yum-metadata-parser-native_1.1.4.bb7
-rw-r--r--meta-extras/packages/python/yum-metadata-parser_1.1.4.bb15
-rw-r--r--meta-extras/packages/qmake/qmake2-cross/0001-fix-mkspecs.patch120
-rw-r--r--meta-extras/packages/qmake/qmake2-cross/linux-oe-qmake.conf1
-rw-r--r--meta-extras/packages/qmake/qmake2-cross/use-lflags-last.patch22
-rw-r--r--meta-extras/packages/qmake/qmake2-cross_2.10a.bb74
-rw-r--r--meta-extras/packages/redland/files/crosscompile.patch29
-rw-r--r--meta-extras/packages/redland/files/sane_pkgconfig.patch126
-rw-r--r--meta-extras/packages/redland/redland_1.0.8.bb9
-rw-r--r--meta-extras/packages/smart/smart_1.1.bb29
-rw-r--r--meta-extras/packages/spectrum-fw/spectrum-fw.bb22
-rwxr-xr-xmeta-extras/packages/spectrum-fw/spectrum-fw/get_symbol_fw29
-rwxr-xr-xmeta-extras/packages/spectrum-fw/spectrum-fw/parse_symbol_fw129
-rw-r--r--meta-extras/packages/syslog-ng/files/initscript45
-rw-r--r--meta-extras/packages/syslog-ng/files/syslog-ng.conf89
-rw-r--r--meta-extras/packages/syslog-ng/syslog-ng_2.0.5.bb34
-rw-r--r--meta-extras/packages/tasks/task-poky-extras.bb9
-rw-r--r--meta-extras/packages/tasks/task-poky-x11-netbook.bb28
-rw-r--r--meta-extras/packages/twisted/twisted-2.5.0/remove-zope-check.patch18
-rw-r--r--meta-extras/packages/twisted/twisted_2.5.0.bb175
-rw-r--r--meta-extras/packages/uicmoc/uicmoc4-native.inc67
-rw-r--r--meta-extras/packages/uicmoc/uicmoc4-native_4.3.2.bb1
-rw-r--r--meta-extras/packages/xorg-app/iceauth_1.0.2.bb6
-rw-r--r--meta-extras/packages/xorg-app/luit_1.0.2.bb8
-rw-r--r--meta-extras/packages/xorg-app/oclock_1.0.1.bb5
-rw-r--r--meta-extras/packages/xorg-app/rgb_1.0.1.bb6
-rw-r--r--meta-extras/packages/xorg-app/sessreg_1.0.4.bb6
-rw-r--r--meta-extras/packages/xorg-app/twm_1.0.4.bb11
-rw-r--r--meta-extras/packages/xorg-app/xbiff_1.0.1.bb9
-rw-r--r--meta-extras/packages/xorg-app/xclipboard_1.1.0.bb4
-rw-r--r--meta-extras/packages/xorg-app/xclock_1.0.4.bb5
-rw-r--r--meta-extras/packages/xorg-app/xcmsdb_1.0.1.bb4
-rw-r--r--meta-extras/packages/xorg-app/xconsole_1.0.3.bb9
-rw-r--r--meta-extras/packages/xorg-app/xcursorgen_1.0.2.bb4
-rw-r--r--meta-extras/packages/xorg-app/xdriinfo_1.0.2.bb4
-rw-r--r--meta-extras/packages/xorg-app/xfd_1.0.1.bb9
-rw-r--r--meta-extras/packages/xorg-app/xfontsel_1.0.2.bb9
-rw-r--r--meta-extras/packages/xorg-app/xgamma_1.0.2.bb5
-rw-r--r--meta-extras/packages/xorg-app/xkbevd_1.0.2.bb4
-rw-r--r--meta-extras/packages/xorg-app/xkbprint_1.0.2.bb4
-rw-r--r--meta-extras/packages/xorg-app/xkbutils_1.0.2.bb5
-rw-r--r--meta-extras/packages/xorg-app/xkill_1.0.1.bb4
-rw-r--r--meta-extras/packages/xorg-app/xload_1.0.2.bb10
-rw-r--r--meta-extras/packages/xorg-app/xlogo_1.0.1.bb4
-rw-r--r--meta-extras/packages/xorg-app/xlsatoms_1.0.1.bb4
-rw-r--r--meta-extras/packages/xorg-app/xlsclients_1.0.1.bb4
-rw-r--r--meta-extras/packages/xorg-app/xlsfonts_1.0.2.bb4
-rw-r--r--meta-extras/packages/xorg-app/xmag_1.0.2.bb10
-rw-r--r--meta-extras/packages/xorg-app/xmessage_1.0.2.bb10
-rw-r--r--meta-extras/packages/xorg-app/xorg-app-common.inc15
-rw-r--r--meta-extras/packages/xorg-app/xpr_1.0.2.bb5
-rw-r--r--meta-extras/packages/xorg-app/xrefresh_1.0.2.bb4
-rw-r--r--meta-extras/packages/xorg-app/xsetroot_1.0.2.bb6
-rw-r--r--meta-extras/packages/xorg-app/xstdcmap_1.0.1.bb4
-rw-r--r--meta-extras/packages/xorg-app/xterm_207.bb24
-rw-r--r--meta-extras/packages/xorg-app/xtrap_1.0.2.bb4
-rw-r--r--meta-extras/packages/xorg-app/xvidtune_1.0.1.bb9
-rw-r--r--meta-extras/packages/xorg-app/xvinfo_1.0.2.bb5
-rw-r--r--meta-extras/packages/xorg-app/xwd_1.0.1.bb4
-rw-r--r--meta-extras/packages/xorg-app/xwud_1.0.1.bb4
-rw-r--r--meta-extras/packages/xorg-data/xbitmaps_1.0.1.bb5
-rw-r--r--meta-extras/packages/xorg-data/xorg-data-common.inc10
-rw-r--r--meta-extras/packages/xorg-xserver/xserver-kdrive-glamo/fbdev-not-fix.patch14
-rw-r--r--meta-extras/packages/xorg-xserver/xserver-kdrive-glamo/fix-picturestr-include-order.patch15
-rw-r--r--meta-extras/packages/xorg-xserver/xserver-kdrive-glamo/fix_default_mode.patch26
-rw-r--r--meta-extras/packages/xorg-xserver/xserver-kdrive-glamo/gumstix-kmode.patch23
-rw-r--r--meta-extras/packages/xorg-xserver/xserver-kdrive-glamo/kdrive-1.3-18bpp.patch419
-rw-r--r--meta-extras/packages/xorg-xserver/xserver-kdrive-glamo/kmode-palm.patch34
-rw-r--r--meta-extras/packages/xorg-xserver/xserver-kdrive-glamo/kmode.patch28
-rw-r--r--meta-extras/packages/xorg-xserver/xserver-kdrive-glamo/w100-autofoo.patch54
-rw-r--r--meta-extras/packages/xorg-xserver/xserver-kdrive-glamo/w100-fix-offscreen-bmp.patch15
-rw-r--r--meta-extras/packages/xorg-xserver/xserver-kdrive-glamo/w100-new-input-world-order.patch28
-rw-r--r--meta-extras/packages/xorg-xserver/xserver-kdrive-glamo/w100.patch6335
-rw-r--r--meta-extras/packages/xorg-xserver/xserver-kdrive-glamo_1.3.0.0+git.bb64
-rw-r--r--meta-extras/packages/xorg-xserver/xserver-kdrive-xomap/button_only.patch20
-rw-r--r--meta-extras/packages/xorg-xserver/xserver-kdrive-xomap/calibrateext.patch124
-rw-r--r--meta-extras/packages/xorg-xserver/xserver-kdrive-xomap/configfix.patch15
-rw-r--r--meta-extras/packages/xorg-xserver/xserver-kdrive-xomap/disable-apm.patch20
-rw-r--r--meta-extras/packages/xorg-xserver/xserver-kdrive-xomap/disable-xf86-dga-xorgcfg.patch37
-rw-r--r--meta-extras/packages/xorg-xserver/xserver-kdrive-xomap/disable-xkb.patch82
-rw-r--r--meta-extras/packages/xorg-xserver/xserver-kdrive-xomap/enable-builtin-fonts.patch12
-rw-r--r--meta-extras/packages/xorg-xserver/xserver-kdrive-xomap/enable-tslib.patch23
-rw-r--r--meta-extras/packages/xorg-xserver/xserver-kdrive-xomap/fbdev-not-fix.patch14
-rw-r--r--meta-extras/packages/xorg-xserver/xserver-kdrive-xomap/fixups.patch446
-rw-r--r--meta-extras/packages/xorg-xserver/xserver-kdrive-xomap/kdrive-evdev.patch503
-rw-r--r--meta-extras/packages/xorg-xserver/xserver-kdrive-xomap/kdrive-use-evdev.patch53
-rw-r--r--meta-extras/packages/xorg-xserver/xserver-kdrive-xomap/kmode.patch43
-rw-r--r--meta-extras/packages/xorg-xserver/xserver-kdrive-xomap/no-serial-probing.patch13
-rw-r--r--meta-extras/packages/xorg-xserver/xserver-kdrive-xomap/xcalibrate.patch73
-rw-r--r--meta-extras/packages/xorg-xserver/xserver-kdrive-xomap/xcalibrate_coords.patch122
-rw-r--r--meta-extras/packages/xorg-xserver/xserver-kdrive-xomap/xfbdev-fb-opt.patch82
-rw-r--r--meta-extras/packages/xorg-xserver/xserver-kdrive-xomap_1.1.99.3.bb52
-rw-r--r--meta-extras/packages/yum/createrepo-native/pathfix.patch81
-rw-r--r--meta-extras/packages/yum/createrepo-native_0.9.8.bb17
-rw-r--r--meta-extras/packages/yum/files/98_yum1
-rw-r--r--meta-extras/packages/yum/files/extract-postinst.awk11
-rw-r--r--meta-extras/packages/yum/files/fix18
-rw-r--r--meta-extras/packages/yum/files/hacks.patch81
-rw-r--r--meta-extras/packages/yum/files/paths.patch106
-rw-r--r--meta-extras/packages/yum/files/paths2.patch35
-rwxr-xr-xmeta-extras/packages/yum/files/yum-install-recommends.py39
-rw-r--r--meta-extras/packages/yum/yum_3.2.27.bb46
-rw-r--r--meta-extras/packages/zope/zope_3.3.1.bb45
243 files changed, 0 insertions, 36079 deletions
diff --git a/meta-extras/COPYING.MIT b/meta-extras/COPYING.MIT
deleted file mode 100644
index fb950dc69..000000000
--- a/meta-extras/COPYING.MIT
+++ /dev/null
@@ -1,17 +0,0 @@
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in
-all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-THE SOFTWARE.
diff --git a/meta-extras/conf/distro/include/poky-extras-src-revisions.inc b/meta-extras/conf/distro/include/poky-extras-src-revisions.inc
deleted file mode 100644
index 4fc380ad8..000000000
--- a/meta-extras/conf/distro/include/poky-extras-src-revisions.inc
+++ /dev/null
@@ -1,6 +0,0 @@
-SRCREV_pn-evince ??= "2437"
-SRCDATE_maemo-mapper-nohildon ??= "20061114"
-SRCREV_pn-libxosd ??= "627"
-SRCREV_pn-matchbox-applet-light ??= "1548"
-SRCREV_pn-matchbox-common ??= "1561"
-
diff --git a/meta-extras/conf/layer.conf b/meta-extras/conf/layer.conf
deleted file mode 100644
index c992abc9f..000000000
--- a/meta-extras/conf/layer.conf
+++ /dev/null
@@ -1,11 +0,0 @@
-# We have a conf and classes directory, add to BBPATH
-BBPATH := "${BBPATH}:${LAYERDIR}"
-
-# We have a packages directory, add to BBFILES
-BBFILES := "${BBFILES} ${LAYERDIR}/packages/*/*.bb"
-
-BBFILE_COLLECTIONS += "extras"
-BBFILE_PATTERN_extras := "^${LAYERDIR}/"
-BBFILE_PRIORITY_extras = "5"
-
-require conf/distro/include/poky-extras-src-revisions.inc
diff --git a/meta-extras/conf/machine/mx31litekit.conf b/meta-extras/conf/machine/mx31litekit.conf
deleted file mode 100644
index 2dc288375..000000000
--- a/meta-extras/conf/machine/mx31litekit.conf
+++ /dev/null
@@ -1,14 +0,0 @@
-#@TYPE: Machine
-#@NAME: imx31 Lite Kit
-#@DESCRIPTION: Machine configuration for the imx31 based Lite Kit
-TARGET_ARCH = "arm"
-PACKAGE_EXTRA_ARCHS = "armv4 armv4t armv5te armv6"
-
-PREFERRED_PROVIDER_virtual/kernel = "linux-mx31"
-
-MACHINE_FEATURES = "kernel26 apm alsa bluetooth irda screen touchscreen"
-
-IMAGE_FSTYPES ?= "tar.gz"
-SERIAL_CONSOLE = "-L 115200 ttymxc0"
-
-require conf/machine/include/tune-arm1136jf-s.inc
diff --git a/meta-extras/conf/machine/nokia770.conf b/meta-extras/conf/machine/nokia770.conf
deleted file mode 100644
index c8b4c3c91..000000000
--- a/meta-extras/conf/machine/nokia770.conf
+++ /dev/null
@@ -1,35 +0,0 @@
-#@TYPE: Machine
-#@NAME: Nokia 770 internet tablet
-#@DESCRIPTION: Machine configuration for the Nokia 770, an omap 1710 based tablet
-TARGET_ARCH = "arm"
-PACKAGE_EXTRA_ARCHS = "armv4 armv4t armv5te"
-
-PREFERRED_PROVIDER_virtual/xserver = "xserver-kdrive-xomap"
-PREFERRED_PROVIDER_virtual/bootloader = ""
-
-XSERVER = "xserver-kdrive-xomap"
-
-# 800x480 is big enough for me
-GUI_MACHINE_CLASS = "bigscreen"
-
-require conf/machine/include/tune-arm926ejs.inc
-
-#size of the root partition (yes, it is 123 MB)
-ROOT_FLASH_SIZE = "123"
-EXTRA_IMAGECMD_jffs2_nokia770 = "--pad --little-endian --eraseblock=0x20000 -n"
-
-IMAGE_FSTYPES ?= "jffs2"
-
-# serial console port on devboard rev. B3
-SERIAL_CONSOLE = "115200 ttyS0"
-
-PREFERRED_PROVIDER_virtual/kernel = "linux-nokia800"
-
-#use this if you are using the nokia initfs
-ROOTFS_POSTPROCESS_COMMAND += " remove_init_link; "
-
-MACHINE_FEATURES = "kernel26 apm alsa bluetooth usbgadget usbhost screen vfat"
-MACHINE_EXTRA_RDEPENDS = "usbinit"
-MACHINE_ESSENTIAL_EXTRA_RDEPENDS = "nokia770-init"
-
-KERNEL_IMAGE_MAXSIZE = "2097152"
diff --git a/meta-extras/conf/machine/nokia800.conf b/meta-extras/conf/machine/nokia800.conf
deleted file mode 100644
index fb2cd02b0..000000000
--- a/meta-extras/conf/machine/nokia800.conf
+++ /dev/null
@@ -1,30 +0,0 @@
-#@TYPE: Machine
-#@NAME: Nokia 800/810 internet tablet
-#@DESCRIPTION: Machine configuration for the Nokia 800/810
-TARGET_ARCH = "arm"
-PACKAGE_EXTRA_ARCHS = "armv4 armv4t armv5te armv6"
-
-PREFERRED_PROVIDER_virtual/xserver = "xserver-kdrive-xomap"
-XSERVER = "xserver-kdrive-xomap"
-
-GUI_MACHINE_CLASS = "bigscreen"
-
-require conf/machine/include/tune-arm1136jf-s.inc
-
-ROOT_FLASH_SIZE = "174"
-EXTRA_IMAGECMD_jffs2_nokia800 = "--pad --little-endian --eraseblock=0x20000 -n"
-
-IMAGE_FSTYPES ?= "jffs2"
-
-SERIAL_CONSOLE = "-L 115200 ttyS0"
-
-PREFERRED_PROVIDER_virtual/kernel = "linux-nokia800"
-
-#use this if you are using the nokia initfs
-ROOTFS_POSTPROCESS_COMMAND += " remove_init_link; "
-
-MACHINE_FEATURES = "kernel26 apm alsa bluetooth usbgadget usbhost vfat"
-MACHINE_EXTRA_RDEPENDS = "cx3110x usbinit"
-MACHINE_ESSENTIAL_EXTRA_RDEPENDS = "nokia770-init"
-
-KERNEL_IMAGE_MAXSIZE = "2097152"
diff --git a/meta-extras/conf/machine/om-gta01.conf b/meta-extras/conf/machine/om-gta01.conf
deleted file mode 100644
index f40457e22..000000000
--- a/meta-extras/conf/machine/om-gta01.conf
+++ /dev/null
@@ -1,48 +0,0 @@
-#-----------------------------------------------------------------------------
-#@TYPE: Machine
-#@NAME: FIC GTA01 (Neo1973)
-#@DESCRIPTION: Machine configuration for the FIC Neo1973/1 GSM phone
-#-----------------------------------------------------------------------------
-
-TARGET_ARCH = "arm"
-MACHINE_CLASS = "neo1973"
-PACKAGE_EXTRA_ARCHS = "armv4t fic-gta01 ${MACHINE_CLASS}"
-
-PREFERRED_PROVIDER_virtual/kernel = "linux-openmoko"
-UBOOT_ENTRYPOINT = "30008000"
-
-MACHINE_FEATURES = "kernel26 apm alsa bluetooth gps usbgadget usbhost phone vfat ext2"
-MACHINE_DISPLAY_WIDTH_PIXELS = "480"
-MACHINE_DISPLAY_HEIGHT_PIXELS = "640"
-MACHINE_DISPLAY_ORIENTATION = "0"
-MACHINE_DISPLAY_PPI = "285"
-XSERVER = "xserver-kdrive-fbdev"
-
-MACHINE_EXTRA_RDEPENDS = "usbinit"
-# package machine specific modules
-MACHINE_EXTRA_RRECOMMENDS = "\
- kernel-module-gta01-pm-bt \
- kernel-module-gta01-pm-gps \
- kernel-module-gta01-pm-gsm \
- kernel-module-gta01kbd \
- kernel-module-s3cmci \
- kernel-module-snd-soc-neo1973-wm8753 \
- kernel-module-snd-soc-smdk2440 \
-"
-
-# do not outcomment, we bypass the sysvinit.bb logic here -- see FIC GTA01 inittab
-#SERIAL_CONSOLE = "115200 ttySAC0"
-
-# used by some images
-ROOT_FLASH_SIZE = "60"
-
-# extra jffs2 tweaks
-IMAGE_FSTYPES ?= "jffs2"
-EXTRA_IMAGECMD_jffs2 = "--little-endian --eraseblock=0x4000 --pad -n"
-
-# build / upload tools
-#EXTRA_IMAGEDEPENDS += "dfu-util-native"
-
-# tune for S3C24x0
-include conf/machine/include/tune-arm920t.inc
-
diff --git a/meta-extras/conf/machine/om-gta02.conf b/meta-extras/conf/machine/om-gta02.conf
deleted file mode 100644
index 55f4bec21..000000000
--- a/meta-extras/conf/machine/om-gta02.conf
+++ /dev/null
@@ -1,49 +0,0 @@
-#-----------------------------------------------------------------------------
-#@TYPE: Machine
-#@NAME: FIC GTA02 (Neo1973)
-#@DESCRIPTION: Machine configuration for the FIC Neo1973/2 GSM phone
-#-----------------------------------------------------------------------------
-
-TARGET_ARCH = "arm"
-MACHINE_CLASS = "neo1973"
-PACKAGE_EXTRA_ARCHS = "armv4t fic-gta02 ${MACHINE_CLASS}"
-
-PREFERRED_PROVIDER_virtual/kernel = "linux-openmoko"
-PREFERRED_PROVIDER_virtual/xserver = "xserver-kdrive-glamo"
-UBOOT_ENTRYPOINT = "30008000"
-
-MACHINE_FEATURES = "kernel26 apm alsa bluetooth gps usbgadget usbhost phone wifi vfat ext2"
-MACHINE_DISPLAY_WIDTH_PIXELS = "480"
-MACHINE_DISPLAY_HEIGHT_PIXELS = "640"
-MACHINE_DISPLAY_ORIENTATION = "0"
-MACHINE_DISPLAY_PPI = "285"
-XSERVER = "xserver-kdrive-glamo xserver-kdrive-fbdev"
-
-# package machine specific modules
-MACHINE_EXTRA_RRECOMMENDS = "\
- kernel-module-gta01-pm-bt \
- kernel-module-gta01-pm-gps \
- kernel-module-gta01-pm-gsm \
- kernel-module-gta01kbd \
- kernel-module-s3cmci \
- kernel-module-snd-soc-neo1973-gta02-wm8753 \
-"
-
-SERIAL_CONSOLE = "115200 ttySAC2"
-
-# used by some images
-ROOT_FLASH_SIZE = "256"
-
-# extra jffs2 tweaks
-IMAGE_FSTYPES ?= "jffs2"
-EXTRA_IMAGECMD_jffs2 = "--little-endian --eraseblock=0x20000 --pagesize=0x800 \
- --no-cleanmarkers --pad -n ; sumtool --eraseblock=0x20000 --no-cleanmarkers \
- --littleendian --pad \
- -i ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.rootfs.jffs2 \
- -o ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.rootfs.jffs2.summary"
-
-# build / upload tools
-#EXTRA_IMAGEDEPENDS += "sjf2410-linux-native dfu-util-native"
-
-# tune for S3C24x0
-include conf/machine/include/tune-arm920t.inc
diff --git a/meta-extras/packages/acct/acct_6.3.99+6.4pre1.bb b/meta-extras/packages/acct/acct_6.3.99+6.4pre1.bb
deleted file mode 100644
index 078013c39..000000000
--- a/meta-extras/packages/acct/acct_6.3.99+6.4pre1.bb
+++ /dev/null
@@ -1,9 +0,0 @@
-LICENSE = "GPL"
-DESCRIPTION = "GNU Accounting Utilities - user and process accounting."
-
-SRC_URI = "http://www.physik3.uni-rostock.de/tim/kernel/utils/acct/acct-6.4-pre1.tar.gz \
- file://cross-compile.patch;patch=1"
-
-S = "${WORKDIR}/acct-6.4-pre1"
-
-inherit autotools
diff --git a/meta-extras/packages/acct/files/cross-compile.patch b/meta-extras/packages/acct/files/cross-compile.patch
deleted file mode 100644
index 78b57104c..000000000
--- a/meta-extras/packages/acct/files/cross-compile.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-diff -ur acct-6.4-pre1.org/configure.in acct-6.4-pre1/configure.in
---- acct-6.4-pre1.org/configure.in 2006-01-07 23:56:46.000000000 +0200
-+++ acct-6.4-pre1/configure.in 2006-08-03 21:16:17.000000000 +0300
-@@ -87,6 +87,10 @@
- ACCTON_MAN=accton.8
- LASTCOMM_MAN=lastcomm.1
- SA_MAN=sa.8
-+ WTMP_FILE_LOC=/var/log/wtmp
-+ ACCT_FILE_LOC=/var/account/pacct
-+ SAVACCT_FILE_LOC=/var/account/savacct
-+ USRACCT_FILE_LOC=/var/account/usracct
- AC_DEFINE(HAVE_ACUTIME, ,
- [Define if <sys/acct.h> has the AC_UTIME field.])
- AC_DEFINE(ACUTIME_COMPT, ,
-@@ -130,6 +134,10 @@
- ACCTON_MAN=accton.8
- LASTCOMM_MAN=lastcomm.1
- SA_MAN=sa.8
-+ WTMP_FILE_LOC=/var/log/wtmp
-+ ACCT_FILE_LOC=/var/account/pacct
-+ SAVACCT_FILE_LOC=/var/account/savacct
-+ USRACCT_FILE_LOC=/var/account/usracct
- AC_HEADER_EGREP(ac_utime, sys/acct.h,
- AC_DEFINE(HAVE_ACUTIME, ,
- [Define if <sys/acct.h> has the AC_UTIME field.])
-@@ -277,7 +285,7 @@
- }
- ], . ./locs; rm locs,
- echo "Error -- could not locate your wtmp and acct files."; exit 1,
-- echo "Sorry -- you cannot cross-compile this package (FIXME)."; exit 1 )
-+ echo "Cross-compiling - cannot find out accounting file locations - using Linux defaults."; )
- AC_TYPE_PID_T dnl for sys/acct.h
- AC_TYPE_UID_T dnl same as above
- AC_TYPE_SIZE_T
diff --git a/meta-extras/packages/clutter/clutter-helix.inc b/meta-extras/packages/clutter/clutter-helix.inc
deleted file mode 100644
index 6bbbb244d..000000000
--- a/meta-extras/packages/clutter/clutter-helix.inc
+++ /dev/null
@@ -1,15 +0,0 @@
-DESCRIPTION = "Clutter Helix"
-HOMEPAGE = "http://www.clutter-project.org/"
-LICENSE = "LGPL"
-
-DEPENDS = "helix-libs"
-
-FILESPATH = "${FILE_DIRNAME}/clutter-helix"
-
-COMPATIBLE_HOST = '(x86_64|i.86.*)-linux'
-
-PACKAGES =+ "${PN}-examples"
-FILES_${PN}-examples = "${bindir}/video-player ${bindir}/audio-player"
-
-inherit autotools pkgconfig gtk-doc
-
diff --git a/meta-extras/packages/clutter/clutter-helix_git.bb b/meta-extras/packages/clutter/clutter-helix_git.bb
deleted file mode 100644
index 1c272306b..000000000
--- a/meta-extras/packages/clutter/clutter-helix_git.bb
+++ /dev/null
@@ -1,8 +0,0 @@
-require clutter-helix.inc
-
-PV = "0.8.0+git${SRCPV}"
-PR = "r0"
-
-SRC_URI = "git://git.clutter-project.org/clutter-helix.git;protocol=git"
-
-S = "${WORKDIR}/git"
diff --git a/meta-extras/packages/clutter/moblin-proto/fix-shader-and-callbacks.patch b/meta-extras/packages/clutter/moblin-proto/fix-shader-and-callbacks.patch
deleted file mode 100644
index 4a3eddb8c..000000000
--- a/meta-extras/packages/clutter/moblin-proto/fix-shader-and-callbacks.patch
+++ /dev/null
@@ -1,44 +0,0 @@
-diff --git a/Makefile b/Makefile
-index e05b5b7..c348a1e 100644
---- a/Makefile
-+++ b/Makefile
-@@ -64,7 +64,7 @@ HFILES = $(wildcard *.h)
- %.o: %.c $(HFILES)
- $(CC) -g $(CFLAGS) $(INCS) -c $< -o$@
- $(BINARY): $(OBJECTS)
-- $(CXX) -o $@ $(OBJECTS) $(LIBS)
-+ $(CXX) -rdynamic -o $@ $(OBJECTS) $(LIBS)
-
- #$(BINARY): $(CFILES)
- # $(LD) $(CFLAGS) $(INCS) $(CFILES) $(LIBS) -o $@
-diff --git a/moblin-desktop.c b/moblin-desktop.c
-index 6dd4f2c..fb9d231 100644
---- a/moblin-desktop.c
-+++ b/moblin-desktop.c
-@@ -103,6 +103,8 @@ void moblin_blur (void)
- if (desktop->maincopy)
- return;
-
-+ if (clutter_feature_available (CLUTTER_FEATURE_SHADERS_GLSL))
-+ {
- #if 0
- desktop->maincopy = clutter_texture_new_from_actor (desktop->mainstuff);
- #else
-@@ -158,6 +160,17 @@ void moblin_blur (void)
- 1.0f / moblin_desktop_width ());
- }
- clutter_actor_set_shader_param (desktop->maincopy, "radius", 3.0);
-+ }
-+ else
-+ {
-+ ClutterColor clr= { 0x44, 0x44, 0x44, 0x77 };
-+ guint w, h;
-+
-+ desktop->maincopy = clutter_rectangle_new_with_color (&clr);
-+ clutter_actor_get_size (desktop->mainstuff, &w, &h);
-+ clutter_actor_set_size (desktop->maincopy, w, h);
-+ clutter_group_add (desktop->copyholder, desktop->maincopy);
-+ }
- }
-
- void moblin_unblur (void)
diff --git a/meta-extras/packages/clutter/moblin-proto/fix.patch b/meta-extras/packages/clutter/moblin-proto/fix.patch
deleted file mode 100644
index 8bde67762..000000000
--- a/meta-extras/packages/clutter/moblin-proto/fix.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-Index: git/Makefile
-===================================================================
---- git.orig/Makefile 2008-08-11 22:49:48.000000000 +0100
-+++ git/Makefile 2008-08-12 12:16:52.000000000 +0100
-@@ -15,7 +15,7 @@
-
- SCP_DESTINATION=pug.vpn:tmp
-
--BINARY=$(shell basename `pwd`)#
-+BINARY=moblin-proto
- PACKAGE=../$(BINARY).tar.bz2 # you can use both .gz and .bz2 as extension here
-
- #CFLAGS= -Wall -I /home/pippin/src/clutter-box2d/clutter-box2d
-@@ -61,7 +61,7 @@
- %.o: %.c $(HFILES)
- $(CC) -g $(CFLAGS) $(INCS) -c $< -o$@
- $(BINARY): $(OBJECTS)
-- $(CC) -o $@ $(OBJECTS) $(LIBS)
-+ $(CXX) -o $@ $(OBJECTS) $(LIBS)
-
- #$(BINARY): $(CFILES)
- # $(LD) $(CFLAGS) $(INCS) $(CFILES) $(LIBS) -o $@
diff --git a/meta-extras/packages/clutter/moblin-proto/paths.patch b/meta-extras/packages/clutter/moblin-proto/paths.patch
deleted file mode 100644
index d241c8ff7..000000000
--- a/meta-extras/packages/clutter/moblin-proto/paths.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-diff --git a/moblin-desktop.h b/moblin-desktop.h
-index 880a9ad..3d51a14 100644
---- a/moblin-desktop.h
-+++ b/moblin-desktop.h
-@@ -29,8 +29,8 @@
- #define __MAIN_H__
-
-
--#define ASSET_ROOT "./assets/"
--#define JSON_ROOT "./layouts/"
-+#define ASSET_ROOT "/usr/share/moblin-proto/assets/"
-+#define JSON_ROOT "/usr/share/moblin-proto/layouts/"
-
- typedef struct
- {
diff --git a/meta-extras/packages/clutter/moblin-proto_git.bb b/meta-extras/packages/clutter/moblin-proto_git.bb
deleted file mode 100644
index b86d62238..000000000
--- a/meta-extras/packages/clutter/moblin-proto_git.bb
+++ /dev/null
@@ -1,19 +0,0 @@
-DEPENDS = "clutter-box2d"
-
-PV = "0.0+git${SRCPV}"
-PR = "r2"
-
-SRC_URI = "git://moblin.org/repos/users/pippin/prototype.git/;protocol=http \
- file://paths.patch;patch=1 \
- file://fix-shader-and-callbacks.patch;patch=1"
-
-S = "${WORKDIR}/git"
-
-do_install () {
- install -d ${D}${bindir}
- install ${S}/moblin-proto ${D}${bindir}
-
- install -d ${D}${datadir}/moblin-proto/
- cp -a ${S}/assets ${D}${datadir}/moblin-proto/
- cp -a ${S}/layouts ${D}${datadir}/moblin-proto/
-}
diff --git a/meta-extras/packages/cx3110x/cx3110x_1.1.bb b/meta-extras/packages/cx3110x/cx3110x_1.1.bb
deleted file mode 100644
index 95bbc3508..000000000
--- a/meta-extras/packages/cx3110x/cx3110x_1.1.bb
+++ /dev/null
@@ -1,21 +0,0 @@
-DESCRIPTION = "cx3110x wifi support as found in the Nokia 770/800"
-SECTION = "kernel/modules"
-LICENSE = "GPL"
-PR = "r1"
-PACKAGES = "${PN}"
-
-COMPATIBLE_MACHINE = "(nokia770|nokia800)"
-
-export KERNEL_SRC_DIR = ${STAGING_KERNEL_DIR}
-export LDFLAGS = ""
-
-SRC_URI = "https://garage.maemo.org/frs/download.php/939/cx3110x-1.1.tar.gz"
-
-S = "${WORKDIR}/cx3110x-${PV}"
-
-inherit module
-
-do_compile() {
- oe_runmake modules
-}
-
diff --git a/meta-extras/packages/cx3110x/cx3110x_2.0.15.bb b/meta-extras/packages/cx3110x/cx3110x_2.0.15.bb
deleted file mode 100644
index c952b2a94..000000000
--- a/meta-extras/packages/cx3110x/cx3110x_2.0.15.bb
+++ /dev/null
@@ -1,23 +0,0 @@
-DESCRIPTION = "cx3110x wifi support as found in the Nokia 770/N800/N810"
-SECTION = "kernel/modules"
-LICENSE = "GPL"
-PACKAGES = "${PN}"
-PR = "r1"
-
-COMPATIBLE_MACHINE = "(nokia800)"
-
-export KERNEL_SRC_DIR = ${STAGING_KERNEL_DIR}
-export LDFLAGS = ""
-
-DEFAULT_PREFERENCE_nokia770 = "-1"
-
-SRC_URI = "http://repository.maemo.org/pool/os2008/free/source/c/cx3110x-module-src/cx3110x-module-src_2.0.15-1.tar.gz \
- file://no-linux-config.patch;patch=1"
-
-S = "${WORKDIR}/cx3110x-module-src-${PV}"
-
-inherit module
-
-do_compile() {
- oe_runmake modules
-}
diff --git a/meta-extras/packages/cx3110x/files/no-linux-config.patch b/meta-extras/packages/cx3110x/files/no-linux-config.patch
deleted file mode 100644
index e6ab31724..000000000
--- a/meta-extras/packages/cx3110x/files/no-linux-config.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-Index: cx3110x-module-src-2.0.15/src/sm_drv_spi.c
-===================================================================
---- cx3110x-module-src-2.0.15.orig/src/sm_drv_spi.c 2008-02-08 13:52:28.000000000 +0100
-+++ cx3110x-module-src-2.0.15/src/sm_drv_spi.c 2008-02-08 13:52:40.000000000 +0100
-@@ -36,7 +36,6 @@
- #include <linux/platform_device.h>
- #include <linux/string.h>
- #include <linux/firmware.h>
--#include <linux/config.h>
- #if !defined(CONFIG_FW_LOADER) && !defined(CONFIG_FW_LOADER_MODULE)
- #error No Firmware Loading configured in the kernel !
- #endif
diff --git a/meta-extras/packages/eventlog/eventlog_0.2.5.bb b/meta-extras/packages/eventlog/eventlog_0.2.5.bb
deleted file mode 100644
index 67e88ead8..000000000
--- a/meta-extras/packages/eventlog/eventlog_0.2.5.bb
+++ /dev/null
@@ -1,7 +0,0 @@
-DESCRIPTION = "Replacement syslog API"
-LICENSE = "BSD"
-PR = "r1"
-
-SRC_URI = "http://www.balabit.com/downloads/files/eventlog/0.2/${P}.tar.gz"
-
-inherit autotools pkgconfig
diff --git a/meta-extras/packages/evince/evince_2.20.0.bb b/meta-extras/packages/evince/evince_2.20.0.bb
deleted file mode 100644
index be18d911a..000000000
--- a/meta-extras/packages/evince/evince_2.20.0.bb
+++ /dev/null
@@ -1,10 +0,0 @@
-DESCRIPTION = "Evince is a document viewer for document formats like PDF, PS, DjVu."
-LICENSE = "GPL"
-SECTION = "x11/office"
-DEPENDS = "gnome-doc-utils poppler libxml2 gtk+ gnome-vfs gconf libglade gnome-keyring"
-
-inherit gnome pkgconfig gtk-icon-cache
-
-SRC_URI += "file://no-icon-theme.diff;patch=1;pnum=0"
-
-EXTRA_OECONF = "--without-libgnome --disable-thumbnailer"
diff --git a/meta-extras/packages/evince/evince_svn.bb b/meta-extras/packages/evince/evince_svn.bb
deleted file mode 100644
index 8df9577f8..000000000
--- a/meta-extras/packages/evince/evince_svn.bb
+++ /dev/null
@@ -1,14 +0,0 @@
-DESCRIPTION = "Evince is a document viewer for document formats like PDF, PS, DjVu."
-LICENSE = "GPL"
-SECTION = "x11/office"
-DEPENDS = "gnome-doc-utils poppler libxml2 gtk+ gnome-vfs gconf libglade gnome-keyring"
-PV = "0.9.0+svnr${SRCREV}"
-
-inherit gnome pkgconfig gtk-icon-cache
-
-SRC_URI = "svn://svn.gnome.org/svn/evince;module=trunk \
- file://no-icon-theme.diff;patch=1;pnum=0"
-
-S = "${WORKDIR}/trunk"
-
-EXTRA_OECONF = "--without-libgnome --disable-thumbnailer"
diff --git a/meta-extras/packages/evince/files/no-icon-theme.diff b/meta-extras/packages/evince/files/no-icon-theme.diff
deleted file mode 100644
index 7b7771ba0..000000000
--- a/meta-extras/packages/evince/files/no-icon-theme.diff
+++ /dev/null
@@ -1,13 +0,0 @@
-Index: configure.ac
-===================================================================
---- configure.ac (revision 2436)
-+++ configure.ac (working copy)
-@@ -57,7 +57,7 @@
- PKG_CHECK_MODULES(LIB, gtk+-2.0 >= $GTK_REQUIRED libxml-2.0 >= $LIBXML_REQUIRED)
- PKG_CHECK_MODULES(BACKEND, gtk+-2.0 >= $GTK_REQUIRED gnome-vfs-2.0)
- PKG_CHECK_MODULES(FRONTEND_CORE, gtk+-2.0 >= $GTK_REQUIRED libglade-2.0 gnome-vfs-2.0)
--PKG_CHECK_MODULES(SHELL_CORE, libxml-2.0 >= $LIBXML_REQUIRED gtk+-2.0 >= $GTK_REQUIRED gnome-icon-theme >= $GNOME_ICON_THEME_REQUIRED gnome-vfs-2.0 libglade-2.0 gconf-2.0 gnome-keyring-1 >= $KEYRING_REQUIRED)
-+PKG_CHECK_MODULES(SHELL_CORE, libxml-2.0 >= $LIBXML_REQUIRED gtk+-2.0 >= $GTK_REQUIRED gnome-vfs-2.0 libglade-2.0 gconf-2.0 gnome-keyring-1 >= $KEYRING_REQUIRED)
-
- AC_ARG_WITH(libgnome,
- AC_HELP_STRING([--without-libgnome],[disable the use of libgnome]),
diff --git a/meta-extras/packages/flumotion/flumotion/no-check-for-python-stuff.patch b/meta-extras/packages/flumotion/flumotion/no-check-for-python-stuff.patch
deleted file mode 100644
index 08503c82e..000000000
--- a/meta-extras/packages/flumotion/flumotion/no-check-for-python-stuff.patch
+++ /dev/null
@@ -1,68 +0,0 @@
-Index: flumotion-0.4.1/configure.ac
-===================================================================
---- flumotion-0.4.1.orig/configure.ac 2007-03-05 17:16:48.121264330 +0100
-+++ flumotion-0.4.1/configure.ac 2007-03-05 17:20:40.343837320 +0100
-@@ -73,13 +73,6 @@
- AC_MSG_ERROR([PyGTK 2.5.2 contains known bugs, please install other version])
- fi
-
--if test "x$DISPLAY" != "x"; then
-- AS_PYTHON_IMPORT([gtk.glade],,
-- AC_MSG_ERROR([You need to have python libglade bindings installed]))
--else
-- AC_MSG_NOTICE([Not trying to import gtk.glade because DISPLAY is unset])
--fi
--
- if test $GST_010_SUPPORTED = "no"; then
- AC_MSG_ERROR([No appropriate version of PyGTK installed. Correct the above
- errors and try again.])
-@@ -94,16 +87,6 @@
- [AC_MSG_RESULT([$PYGST_010_PKG_ERRORS])
- GST_010_SUPPORTED=no])
-
-- if test $GST_010_SUPPORTED = "yes"; then
-- saved_PYTHONPATH=$PYTHONPATH
-- export PYTHONPATH=$PYGST_010_DIR:$PYTHONPATH
-- AS_PYTHON_IMPORT([gst],,
-- [AC_MSG_NOTICE([Unable to import gst-python 0.10 -- check your PYTHONPATH?])
-- GST_010_SUPPORTED=no],
-- [import pygst; pygst.require('0.10')],
-- [assert gst.pygst_version[[1]] == 10 or (gst.pygst_version[[1]] == 9 and gst.pygst_version[[2]] >= 7)])
--
-- fi
- fi
-
- if test $GST_010_SUPPORTED = "no"; then
-@@ -158,32 +141,7 @@
- AC_CHECK_PROG(PYCHECKER, pychecker, yes, no)
- AM_CONDITIONAL(HAVE_PYCHECKER, test "x$PYCHECKER" = "xyes")
-
--dnl check for Twisted
--AS_PYTHON_IMPORT(twisted,
-- [
-- AC_MSG_CHECKING(for Twisted >= 2.0.1)
-- prog="
--import sys
--import twisted.copyright
--minver = '2.0.1'
--if twisted.copyright.version < minver:
-- sys.exit(1)
--sys.exit(0)
--"
-- if $PYTHON -c "$prog" 1>&AC_FD_CC 2>&AC_FD_CC
-- then
-- AC_MSG_RESULT(found)
-- else
-- AC_MSG_RESULT(too old)
-- AC_MSG_ERROR([You need at least version 2.0.1 of Twisted])
-- fi
-- ]
-- ,
-- AC_MSG_ERROR([You need at least version 2.0.1 of Twisted])
--)
-
--TWISTED_MODULE([twisted.names])
--TWISTED_MODULE([twisted.web])
-
- AC_CONFIG_FILES([env], [chmod +x env])
- AC_CONFIG_FILES([bin/flumotion], [chmod +x bin/flumotion])
diff --git a/meta-extras/packages/flumotion/flumotion/python-path.patch b/meta-extras/packages/flumotion/flumotion/python-path.patch
deleted file mode 100644
index 377994e72..000000000
--- a/meta-extras/packages/flumotion/flumotion/python-path.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-Index: flumotion-0.3.1/common/as-python.m4
-===================================================================
---- flumotion-0.3.1.orig/common/as-python.m4 2007-03-02 15:26:46.704717964 +0100
-+++ flumotion-0.3.1/common/as-python.m4 2007-03-02 15:27:28.601326374 +0100
-@@ -199,6 +199,12 @@
- AC_MSG_CHECKING(for headers required to compile python extensions)
-
- dnl deduce PYTHON_INCLUDES
-+
-+ AC_ARG_WITH(python-includes,
-+ [ --with-python-includes=DIR path to Python includes], py_exec_prefix=$withval)
-+ if test x$py_exec_prefix != x; then
-+ PYTHON_INCLUDES="-I${py_exec_prefix}/include/python${PYTHON_VERSION}"
-+ else
- py_prefix=`$PYTHON -c "import sys; print sys.prefix"`
- py_exec_prefix=`$PYTHON -c "import sys; print sys.exec_prefix"`
- PYTHON_INCLUDES="-I${py_prefix}/include/python${PYTHON_VERSION}"
-@@ -206,6 +212,7 @@
- if test "$py_prefix" != "$py_exec_prefix"; then
- PYTHON_INCLUDES="$PYTHON_INCLUDES -I${py_exec_prefix}/include/python${PYTHON_VERSION}"
- fi
-+ fi
- AC_SUBST(PYTHON_INCLUDES)
-
- dnl check if the headers exist:
diff --git a/meta-extras/packages/flumotion/flumotion_0.4.1.bb b/meta-extras/packages/flumotion/flumotion_0.4.1.bb
deleted file mode 100644
index 976c8c414..000000000
--- a/meta-extras/packages/flumotion/flumotion_0.4.1.bb
+++ /dev/null
@@ -1,41 +0,0 @@
-DESCRIPTION = "Fluendo Streaming Server"
-LICENSE = "GPL"
-DEPENDS = "gstreamer python-imaging python-gst twisted python-pygtk"
-RDEPENDS = "python-resource python-pprint python-threading \
- python-imaging python-xml python-curses \
- python-compression python-fcntl python-pygobject \
- python-pickle python-netclient python-datetime \
- python-crypt python-twisted-core python-twisted-web \
- python-lang python-zopeinterface python-textutils \
- python-gst python-misc"
-RDEPENDS_${PN}-gui = "${PN} python-pygtk python-pycairo"
-PR = "r10"
-
-SRC_URI = "http://www.flumotion.net/src/flumotion/flumotion-${PV}.tar.bz2 \
- file://python-path.patch;patch=1 \
- file://no-check-for-python-stuff.patch;patch=1"
-
-inherit autotools distutils-base pkgconfig
-
-export EPYDOC = "no"
-
-EXTRA_OECONF += "--with-python-includes=${STAGING_INCDIR}/../"
-
-PACKAGES =+ "flumotion-gui"
-
-FILES_${PN}-dbg += "${libdir}/flumotion/python/flumotion/extern/*/.debug/*"
-FILES_${PN} = "${bindir} ${sbindir} ${libdir}/flumotion"
-FILES_${PN}-dev += "${libdir}/pkgconfig"
-FILES_${PN}-gui = "${bindir}/flumotion-admin ${bindir}/flumotion-tester \
- ${libdir}/flumotion/python/flumotion/admin/gtk \
- ${libdir}/flumotion/python/flumotion/component/*/admin_gtk* \
- ${libdir}/flumotion/python/flumotion/component/*/*/admin_gtk* \
- ${libdir}/flumotion/python/flumotion/extern/*.py* \
- ${libdir}/flumotion/python/flumotion/extern/fdpass/*.py* \
- ${libdir}/flumotion/python/flumotion/extern/fdpass/fdpass.so \
- ${libdir}/flumotion/python/flumotion/extern/pytrayicon/*.py* \
- ${libdir}/flumotion/python/flumotion/extern/pytrayicon/pytrayicon.so \
- ${libdir}/flumotion/python/flumotion/manager \
- ${libdir}/flumotion/python/flumotion/ui \
- ${libdir}/flumotion/python/flumotion/wizard \
- ${datadir}/pixmaps ${datadir}/flumotion ${datadir}/applications"
diff --git a/meta-extras/packages/gnome/libbonobo.inc b/meta-extras/packages/gnome/libbonobo.inc
deleted file mode 100644
index db5c58a51..000000000
--- a/meta-extras/packages/gnome/libbonobo.inc
+++ /dev/null
@@ -1,36 +0,0 @@
-DESCRIPTION = "Bonobo CORBA interfaces library"
-LICENSE = "GPL"
-SECTION = "x11/gnome/libs"
-DEPENDS = "glib-2.0 orbit2 intltool-native libxml2"
-
-inherit gnome
-
-SRC_URI += "file://gtk-doc.m4 \
- file://gtk-doc.make \
- "
-
-ORBIT_IDL_SRC = "${STAGING_BINDIR_NATIVE}/orbit-idl-2"
-
-FILES_${PN} += "${libdir}/orbit-2.0/*.so ${libdir}/bonobo/monikers/*.so"
-FILES_${PN}-dbg += "${libdir}/bonobo/monikers/.debug \
- ${libdir}/bonobo-2.0/samples/.debug ${libdir}/orbit-2.0/.debug"
-FILES_${PN}-dev += "${libdir}/orbit-2.0/* ${libdir}/bonobo/monikers/* \
- ${libdir}/bonobo-2.0/samples"
-
-LEAD_SONAME = "libbonobo-2.so"
-
-PARALLEL_MAKE = ""
-
-do_configure_prepend() {
- install -d m4
- install ${WORKDIR}/gtk-doc.m4 m4/
- install ${WORKDIR}/gtk-doc.make ./
-}
-
-do_compile() {
- oe_runmake ORBIT_IDL="${ORBIT_IDL_SRC}"
-}
-
-do_install() {
- oe_runmake ORBIT_IDL="${ORBIT_IDL_SRC}" DESTDIR="${D}" install
-}
diff --git a/meta-extras/packages/gnome/libbonobo/configure-gthread.patch b/meta-extras/packages/gnome/libbonobo/configure-gthread.patch
deleted file mode 100644
index 005fa6760..000000000
--- a/meta-extras/packages/gnome/libbonobo/configure-gthread.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- libbonobo-2.14.0/configure.in.orig 2006-09-04 09:21:54.000000000 +0100
-+++ libbonobo-2.14.0/configure.in 2006-09-04 09:22:58.000000000 +0100
-@@ -166,7 +166,7 @@
- AC_MSG_RESULT(no)
- AC_MSG_ERROR(
- [No working gthread-2.0 support found, using --disable-threads IS DISCOURAGED])
-- ]
-+ ],[AC_MSG_RESULT(yes)]
- )
- CFLAGS=$libbonobo_save_CFLAGS
- LIBS=$libbonobo_save_LIBS
diff --git a/meta-extras/packages/gnome/libbonobo/gtk-doc.m4 b/meta-extras/packages/gnome/libbonobo/gtk-doc.m4
deleted file mode 100644
index 3ec41666b..000000000
--- a/meta-extras/packages/gnome/libbonobo/gtk-doc.m4
+++ /dev/null
@@ -1,53 +0,0 @@
-dnl -*- mode: autoconf -*-
-
-# serial 1
-
-dnl Usage:
-dnl GTK_DOC_CHECK([minimum-gtk-doc-version])
-AC_DEFUN([GTK_DOC_CHECK],
-[
- AC_BEFORE([AC_PROG_LIBTOOL],[$0])dnl setup libtool first
- AC_BEFORE([AM_PROG_LIBTOOL],[$0])dnl setup libtool first
- dnl for overriding the documentation installation directory
- AC_ARG_WITH(html-dir,
- AC_HELP_STRING([--with-html-dir=PATH], [path to installed docs]),,
- [with_html_dir='${datadir}/gtk-doc/html'])
- HTML_DIR="$with_html_dir"
- AC_SUBST(HTML_DIR)
-
- dnl enable/disable documentation building
- AC_ARG_ENABLE(gtk-doc,
- AC_HELP_STRING([--enable-gtk-doc],
- [use gtk-doc to build documentation [default=no]]),,
- enable_gtk_doc=no)
-
- have_gtk_doc=no
- if test -z "$PKG_CONFIG"; then
- AC_PATH_PROG(PKG_CONFIG, pkg-config, no)
- fi
- if test "$PKG_CONFIG" != "no" && $PKG_CONFIG --exists gtk-doc; then
- have_gtk_doc=yes
- fi
-
- dnl do we want to do a version check?
-ifelse([$1],[],,
- [gtk_doc_min_version=$1
- if test "$have_gtk_doc" = yes; then
- AC_MSG_CHECKING([gtk-doc version >= $gtk_doc_min_version])
- if $PKG_CONFIG --atleast-version $gtk_doc_min_version gtk-doc; then
- AC_MSG_RESULT(yes)
- else
- AC_MSG_RESULT(no)
- have_gtk_doc=no
- fi
- fi
-])
- if test x$enable_gtk_doc = xyes; then
- if test "$have_gtk_doc" != yes; then
- enable_gtk_doc=no
- fi
- fi
-
- AM_CONDITIONAL(ENABLE_GTK_DOC, test x$enable_gtk_doc = xyes)
- AM_CONDITIONAL(GTK_DOC_USE_LIBTOOL, test -n "$LIBTOOL")
-])
diff --git a/meta-extras/packages/gnome/libbonobo/gtk-doc.make b/meta-extras/packages/gnome/libbonobo/gtk-doc.make
deleted file mode 100644
index c319e7ad7..000000000
--- a/meta-extras/packages/gnome/libbonobo/gtk-doc.make
+++ /dev/null
@@ -1,148 +0,0 @@
-# -*- mode: makefile -*-
-
-####################################
-# Everything below here is generic #
-####################################
-
-if GTK_DOC_USE_LIBTOOL
-GTKDOC_CC = $(LIBTOOL) --mode=compile $(CC) $(INCLUDES) $(AM_CFLAGS) $(CFLAGS)
-GTKDOC_LD = $(LIBTOOL) --mode=link $(CC) $(AM_CFLAGS) $(CFLAGS) $(LDFLAGS)
-else
-GTKDOC_CC = $(CC) $(INCLUDES) $(AM_CFLAGS) $(CFLAGS)
-GTKDOC_LD = $(CC) $(AM_CFLAGS) $(CFLAGS) $(LDFLAGS)
-endif
-
-# We set GPATH here; this gives us semantics for GNU make
-# which are more like other make's VPATH, when it comes to
-# whether a source that is a target of one rule is then
-# searched for in VPATH/GPATH.
-#
-GPATH = $(srcdir)
-
-TARGET_DIR=$(HTML_DIR)/$(DOC_MODULE)
-
-EXTRA_DIST = \
- $(content_files) \
- $(HTML_IMAGES) \
- $(DOC_MAIN_SGML_FILE) \
- $(DOC_MODULE).types \
- $(DOC_MODULE)-sections.txt \
- $(DOC_MODULE)-overrides.txt
-
-DOC_STAMPS=scan-build.stamp tmpl-build.stamp sgml-build.stamp html-build.stamp \
- $(srcdir)/tmpl.stamp $(srcdir)/sgml.stamp $(srcdir)/html.stamp
-
-SCANOBJ_FILES = \
- $(DOC_MODULE).args \
- $(DOC_MODULE).hierarchy \
- $(DOC_MODULE).interfaces \
- $(DOC_MODULE).prerequisites \
- $(DOC_MODULE).signals
-
-CLEANFILES = $(SCANOBJ_FILES) $(DOC_MODULE)-scan.o $(DOC_MODULE)-unused.txt $(DOC_STAMPS)
-
-if ENABLE_GTK_DOC
-all-local: html-build.stamp
-
-#### scan ####
-
-scan-build.stamp: $(HFILE_GLOB)
- @echo '*** Scanning header files ***'
- @-chmod -R u+w $(srcdir)
- if grep -l '^..*$$' $(srcdir)/$(DOC_MODULE).types > /dev/null ; then \
- CC="$(GTKDOC_CC)" LD="$(GTKDOC_LD)" CFLAGS="$(GTKDOC_CFLAGS)" LDFLAGS="$(GTKDOC_LIBS)" gtkdoc-scangobj $(SCANGOBJ_OPTIONS) --module=$(DOC_MODULE) --output-dir=$(srcdir) ; \
- else \
- cd $(srcdir) ; \
- for i in $(SCANOBJ_FILES) ; do \
- test -f $$i || touch $$i ; \
- done \
- fi
- cd $(srcdir) && \
- gtkdoc-scan --module=$(DOC_MODULE) --source-dir=$(DOC_SOURCE_DIR) --ignore-headers="$(IGNORE_HFILES)" $(SCAN_OPTIONS) $(EXTRA_HFILES)
- touch scan-build.stamp
-
-$(DOC_MODULE)-decl.txt $(SCANOBJ_FILES): scan-build.stamp
- @true
-
-#### templates ####
-
-tmpl-build.stamp: $(DOC_MODULE)-decl.txt $(SCANOBJ_FILES) $(DOC_MODULE)-sections.txt $(DOC_MODULE)-overrides.txt
- @echo '*** Rebuilding template files ***'
- @-chmod -R u+w $(srcdir)
- cd $(srcdir) && gtkdoc-mktmpl --module=$(DOC_MODULE)
- touch tmpl-build.stamp
-
-tmpl.stamp: tmpl-build.stamp
- @true
-
-#### xml ####
-
-sgml-build.stamp: tmpl.stamp $(CFILE_GLOB) $(srcdir)/tmpl/*.sgml
- @echo '*** Building XML ***'
- @-chmod -R u+w $(srcdir)
- cd $(srcdir) && \
- gtkdoc-mkdb --module=$(DOC_MODULE) --source-dir=$(DOC_SOURCE_DIR) --output-format=xml $(MKDB_OPTIONS)
- touch sgml-build.stamp
-
-sgml.stamp: sgml-build.stamp
- @true
-
-#### html ####
-
-html-build.stamp: sgml.stamp $(DOC_MAIN_SGML_FILE) $(content_files)
- @echo '*** Building HTML ***'
- @-chmod -R u+w $(srcdir)
- rm -rf $(srcdir)/html
- mkdir $(srcdir)/html
- cd $(srcdir)/html && gtkdoc-mkhtml $(DOC_MODULE) ../$(DOC_MAIN_SGML_FILE)
- test "x$(HTML_IMAGES)" = "x" || ( cd $(srcdir) && cp $(HTML_IMAGES) html )
- @echo '-- Fixing Crossreferences'
- cd $(srcdir) && gtkdoc-fixxref --module-dir=html --html-dir=$(HTML_DIR) $(FIXXREF_OPTIONS)
- touch html-build.stamp
-endif
-
-##############
-
-clean-local:
- rm -f *~ *.bak
-
-maintainer-clean-local: clean
- cd $(srcdir) && rm -rf xml html $(DOC_MODULE)-decl-list.txt $(DOC_MODULE)-decl.txt
-
-install-data-local:
- $(mkinstalldirs) $(DESTDIR)$(TARGET_DIR)
- (installfiles=`echo $(srcdir)/html/*`; \
- if test "$$installfiles" = '$(srcdir)/html/*'; \
- then echo '-- Nothing to install' ; \
- else \
- for i in $$installfiles; do \
- echo '-- Installing '$$i ; \
- $(INSTALL_DATA) $$i $(DESTDIR)$(TARGET_DIR); \
- done; \
- echo '-- Installing $(srcdir)/html/index.sgml' ; \
- $(INSTALL_DATA) $(srcdir)/html/index.sgml $(DESTDIR)$(TARGET_DIR) || :; \
- fi)
-
-uninstall-local:
- rm -f $(DESTDIR)$(TARGET_DIR)/*
-
-#
-# Require gtk-doc when making dist
-#
-if ENABLE_GTK_DOC
-dist-check-gtkdoc:
-else
-dist-check-gtkdoc:
- @echo "*** gtk-doc must be installed and enabled in order to make dist"
- @false
-endif
-
-dist-hook: dist-check-gtkdoc dist-hook-local
- mkdir $(distdir)/tmpl
- mkdir $(distdir)/xml
- mkdir $(distdir)/html
- -cp $(srcdir)/tmpl/*.sgml $(distdir)/tmpl
- -cp $(srcdir)/xml/*.xml $(distdir)/xml
- -cp $(srcdir)/html/* $(distdir)/html
-
-.PHONY : dist-hook-local
diff --git a/meta-extras/packages/gnome/libbonobo_2.22.0.bb b/meta-extras/packages/gnome/libbonobo_2.22.0.bb
deleted file mode 100644
index feecaf590..000000000
--- a/meta-extras/packages/gnome/libbonobo_2.22.0.bb
+++ /dev/null
@@ -1,6 +0,0 @@
-require libbonobo.inc
-
-PR = "r0"
-
-SRC_URI += "file://configure-gthread.patch;patch=1"
-
diff --git a/meta-extras/packages/gnome/libbonoboui_2.18.0.bb b/meta-extras/packages/gnome/libbonoboui_2.18.0.bb
deleted file mode 100644
index 85840f705..000000000
--- a/meta-extras/packages/gnome/libbonoboui_2.18.0.bb
+++ /dev/null
@@ -1,15 +0,0 @@
-LICENSE = "GPL"
-SECTION = "x11/gnome/libs"
-PR = "r1"
-
-inherit gnome pkgconfig
-
-FILES_${PN} += "${libdir}/libglade/2.0/*.so"
-FILES_${PN}-dev += "${libdir}/libglade/2.0/* ${datadir}/gnome-2.0/ui \
- ${libdir}/bonobo-2.0/samples"
-FILES_${PN}-dbg += "${libdir}/bonobo-2.0/samples/.debug \
- ${libdir}/libglade/2.0/.debug"
-
-DEPENDS = "libgnomecanvas libbonobo libgnome glib-2.0 gtk-doc gconf libxml2 libglade"
-
-EXTRA_OECONF = "--disable-gtk-doc"
diff --git a/meta-extras/packages/gnome/orbit2-native_2.14.12.bb b/meta-extras/packages/gnome/orbit2-native_2.14.12.bb
deleted file mode 100644
index c4d3132f4..000000000
--- a/meta-extras/packages/gnome/orbit2-native_2.14.12.bb
+++ /dev/null
@@ -1,22 +0,0 @@
-DESCRIPTION = "CORBA ORB"
-PR = "r0"
-LICENSE = "LGPL GPL"
-SECTION = "x11/gnome/libs"
-SRC_URI = "http://ftp.gnome.org/pub/GNOME/sources/ORBit2/2.14/ORBit2-${PV}.tar.bz2 \
- file://configure-lossage.patch;patch=1;pnum=1 \
- file://gtk-doc.m4 \
- file://gtk-doc.make"
-DEPENDS = "libidl-native popt-native gtk-doc"
-
-S = "${WORKDIR}/ORBit2-${PV}"
-
-PARALLEL_MAKE = ""
-inherit autotools native pkgconfig
-
-EXTRA_OECONF = "--disable-gtk-doc"
-
-do_configure_prepend() {
- mkdir -p m4
- install ${WORKDIR}/gtk-doc.m4 ./m4/
- install ${WORKDIR}/gtk-doc.make ./
-}
diff --git a/meta-extras/packages/gnome/orbit2/configure-lossage.patch b/meta-extras/packages/gnome/orbit2/configure-lossage.patch
deleted file mode 100644
index 7485a0ce0..000000000
--- a/meta-extras/packages/gnome/orbit2/configure-lossage.patch
+++ /dev/null
@@ -1,35 +0,0 @@
---- orbit/configure.in~ 2004-05-07 09:31:32.000000000 +0100
-+++ orbit/configure.in 2004-05-08 19:27:35.000000000 +0100
-@@ -193,19 +193,19 @@
- dnl So many people with broken linking setups asked about this
- dnl it turned out to be necessary to check for this.
- dnl
--dofus_save_libs="$LIBS"
--LIBS="$ORBIT_LIBS $LIBS"
--AC_TRY_RUN([ #include <stdio.h>
-- main ()
-- {
-- return 0;
-- } ],,
-- AC_MSG_ERROR([
--Linking is badly borked on your system. Please ensure your library path is correct
--Check config.log for details - check near the end of the log above 'failed program was'
--Alternatively ensure that your /etc/ld.so.conf (and/or LD_LIBRARY_PATH) includes the
--prefix you're compiling on: '${prefix}' ]))
--LIBS="$dofus_save_libs"
-+dnl dofus_save_libs="$LIBS"
-+dnl LIBS="$ORBIT_LIBS $LIBS"
-+dnl AC_TRY_RUN([ #include <stdio.h>
-+dnl main ()
-+dnl {
-+dnl return 0;
-+dnl } ],,
-+dnl AC_MSG_ERROR([
-+dnl Linking is badly borked on your system. Please ensure your library path is correct
-+dnl Check config.log for details - check near the end of the log above 'failed program was'
-+dnl Alternatively ensure that your /etc/ld.so.conf (and/or LD_LIBRARY_PATH) includes the
-+dnl prefix you're compiling on: '${prefix}' ]))
-+dnl LIBS="$dofus_save_libs"
-
- orig_CPPFLAGS=$CPPFLAGS
- CPPFLAGS="$CPPFLAGS $ORBIT_CFLAGS"
diff --git a/meta-extras/packages/gnome/orbit2/gtk-doc.m4 b/meta-extras/packages/gnome/orbit2/gtk-doc.m4
deleted file mode 100644
index 3ec41666b..000000000
--- a/meta-extras/packages/gnome/orbit2/gtk-doc.m4
+++ /dev/null
@@ -1,53 +0,0 @@
-dnl -*- mode: autoconf -*-
-
-# serial 1
-
-dnl Usage:
-dnl GTK_DOC_CHECK([minimum-gtk-doc-version])
-AC_DEFUN([GTK_DOC_CHECK],
-[
- AC_BEFORE([AC_PROG_LIBTOOL],[$0])dnl setup libtool first
- AC_BEFORE([AM_PROG_LIBTOOL],[$0])dnl setup libtool first
- dnl for overriding the documentation installation directory
- AC_ARG_WITH(html-dir,
- AC_HELP_STRING([--with-html-dir=PATH], [path to installed docs]),,
- [with_html_dir='${datadir}/gtk-doc/html'])
- HTML_DIR="$with_html_dir"
- AC_SUBST(HTML_DIR)
-
- dnl enable/disable documentation building
- AC_ARG_ENABLE(gtk-doc,
- AC_HELP_STRING([--enable-gtk-doc],
- [use gtk-doc to build documentation [default=no]]),,
- enable_gtk_doc=no)
-
- have_gtk_doc=no
- if test -z "$PKG_CONFIG"; then
- AC_PATH_PROG(PKG_CONFIG, pkg-config, no)
- fi
- if test "$PKG_CONFIG" != "no" && $PKG_CONFIG --exists gtk-doc; then
- have_gtk_doc=yes
- fi
-
- dnl do we want to do a version check?
-ifelse([$1],[],,
- [gtk_doc_min_version=$1
- if test "$have_gtk_doc" = yes; then
- AC_MSG_CHECKING([gtk-doc version >= $gtk_doc_min_version])
- if $PKG_CONFIG --atleast-version $gtk_doc_min_version gtk-doc; then
- AC_MSG_RESULT(yes)
- else
- AC_MSG_RESULT(no)
- have_gtk_doc=no
- fi
- fi
-])
- if test x$enable_gtk_doc = xyes; then
- if test "$have_gtk_doc" != yes; then
- enable_gtk_doc=no
- fi
- fi
-
- AM_CONDITIONAL(ENABLE_GTK_DOC, test x$enable_gtk_doc = xyes)
- AM_CONDITIONAL(GTK_DOC_USE_LIBTOOL, test -n "$LIBTOOL")
-])
diff --git a/meta-extras/packages/gnome/orbit2/gtk-doc.make b/meta-extras/packages/gnome/orbit2/gtk-doc.make
deleted file mode 100644
index c319e7ad7..000000000
--- a/meta-extras/packages/gnome/orbit2/gtk-doc.make
+++ /dev/null
@@ -1,148 +0,0 @@
-# -*- mode: makefile -*-
-
-####################################
-# Everything below here is generic #
-####################################
-
-if GTK_DOC_USE_LIBTOOL
-GTKDOC_CC = $(LIBTOOL) --mode=compile $(CC) $(INCLUDES) $(AM_CFLAGS) $(CFLAGS)
-GTKDOC_LD = $(LIBTOOL) --mode=link $(CC) $(AM_CFLAGS) $(CFLAGS) $(LDFLAGS)
-else
-GTKDOC_CC = $(CC) $(INCLUDES) $(AM_CFLAGS) $(CFLAGS)
-GTKDOC_LD = $(CC) $(AM_CFLAGS) $(CFLAGS) $(LDFLAGS)
-endif
-
-# We set GPATH here; this gives us semantics for GNU make
-# which are more like other make's VPATH, when it comes to
-# whether a source that is a target of one rule is then
-# searched for in VPATH/GPATH.
-#
-GPATH = $(srcdir)
-
-TARGET_DIR=$(HTML_DIR)/$(DOC_MODULE)
-
-EXTRA_DIST = \
- $(content_files) \
- $(HTML_IMAGES) \
- $(DOC_MAIN_SGML_FILE) \
- $(DOC_MODULE).types \
- $(DOC_MODULE)-sections.txt \
- $(DOC_MODULE)-overrides.txt
-
-DOC_STAMPS=scan-build.stamp tmpl-build.stamp sgml-build.stamp html-build.stamp \
- $(srcdir)/tmpl.stamp $(srcdir)/sgml.stamp $(srcdir)/html.stamp
-
-SCANOBJ_FILES = \
- $(DOC_MODULE).args \
- $(DOC_MODULE).hierarchy \
- $(DOC_MODULE).interfaces \
- $(DOC_MODULE).prerequisites \
- $(DOC_MODULE).signals
-
-CLEANFILES = $(SCANOBJ_FILES) $(DOC_MODULE)-scan.o $(DOC_MODULE)-unused.txt $(DOC_STAMPS)
-
-if ENABLE_GTK_DOC
-all-local: html-build.stamp
-
-#### scan ####
-
-scan-build.stamp: $(HFILE_GLOB)
- @echo '*** Scanning header files ***'
- @-chmod -R u+w $(srcdir)
- if grep -l '^..*$$' $(srcdir)/$(DOC_MODULE).types > /dev/null ; then \
- CC="$(GTKDOC_CC)" LD="$(GTKDOC_LD)" CFLAGS="$(GTKDOC_CFLAGS)" LDFLAGS="$(GTKDOC_LIBS)" gtkdoc-scangobj $(SCANGOBJ_OPTIONS) --module=$(DOC_MODULE) --output-dir=$(srcdir) ; \
- else \
- cd $(srcdir) ; \
- for i in $(SCANOBJ_FILES) ; do \
- test -f $$i || touch $$i ; \
- done \
- fi
- cd $(srcdir) && \
- gtkdoc-scan --module=$(DOC_MODULE) --source-dir=$(DOC_SOURCE_DIR) --ignore-headers="$(IGNORE_HFILES)" $(SCAN_OPTIONS) $(EXTRA_HFILES)
- touch scan-build.stamp
-
-$(DOC_MODULE)-decl.txt $(SCANOBJ_FILES): scan-build.stamp
- @true
-
-#### templates ####
-
-tmpl-build.stamp: $(DOC_MODULE)-decl.txt $(SCANOBJ_FILES) $(DOC_MODULE)-sections.txt $(DOC_MODULE)-overrides.txt
- @echo '*** Rebuilding template files ***'
- @-chmod -R u+w $(srcdir)
- cd $(srcdir) && gtkdoc-mktmpl --module=$(DOC_MODULE)
- touch tmpl-build.stamp
-
-tmpl.stamp: tmpl-build.stamp
- @true
-
-#### xml ####
-
-sgml-build.stamp: tmpl.stamp $(CFILE_GLOB) $(srcdir)/tmpl/*.sgml
- @echo '*** Building XML ***'
- @-chmod -R u+w $(srcdir)
- cd $(srcdir) && \
- gtkdoc-mkdb --module=$(DOC_MODULE) --source-dir=$(DOC_SOURCE_DIR) --output-format=xml $(MKDB_OPTIONS)
- touch sgml-build.stamp
-
-sgml.stamp: sgml-build.stamp
- @true
-
-#### html ####
-
-html-build.stamp: sgml.stamp $(DOC_MAIN_SGML_FILE) $(content_files)
- @echo '*** Building HTML ***'
- @-chmod -R u+w $(srcdir)
- rm -rf $(srcdir)/html
- mkdir $(srcdir)/html
- cd $(srcdir)/html && gtkdoc-mkhtml $(DOC_MODULE) ../$(DOC_MAIN_SGML_FILE)
- test "x$(HTML_IMAGES)" = "x" || ( cd $(srcdir) && cp $(HTML_IMAGES) html )
- @echo '-- Fixing Crossreferences'
- cd $(srcdir) && gtkdoc-fixxref --module-dir=html --html-dir=$(HTML_DIR) $(FIXXREF_OPTIONS)
- touch html-build.stamp
-endif
-
-##############
-
-clean-local:
- rm -f *~ *.bak
-
-maintainer-clean-local: clean
- cd $(srcdir) && rm -rf xml html $(DOC_MODULE)-decl-list.txt $(DOC_MODULE)-decl.txt
-
-install-data-local:
- $(mkinstalldirs) $(DESTDIR)$(TARGET_DIR)
- (installfiles=`echo $(srcdir)/html/*`; \
- if test "$$installfiles" = '$(srcdir)/html/*'; \
- then echo '-- Nothing to install' ; \
- else \
- for i in $$installfiles; do \
- echo '-- Installing '$$i ; \
- $(INSTALL_DATA) $$i $(DESTDIR)$(TARGET_DIR); \
- done; \
- echo '-- Installing $(srcdir)/html/index.sgml' ; \
- $(INSTALL_DATA) $(srcdir)/html/index.sgml $(DESTDIR)$(TARGET_DIR) || :; \
- fi)
-
-uninstall-local:
- rm -f $(DESTDIR)$(TARGET_DIR)/*
-
-#
-# Require gtk-doc when making dist
-#
-if ENABLE_GTK_DOC
-dist-check-gtkdoc:
-else
-dist-check-gtkdoc:
- @echo "*** gtk-doc must be installed and enabled in order to make dist"
- @false
-endif
-
-dist-hook: dist-check-gtkdoc dist-hook-local
- mkdir $(distdir)/tmpl
- mkdir $(distdir)/xml
- mkdir $(distdir)/html
- -cp $(srcdir)/tmpl/*.sgml $(distdir)/tmpl
- -cp $(srcdir)/xml/*.xml $(distdir)/xml
- -cp $(srcdir)/html/* $(distdir)/html
-
-.PHONY : dist-hook-local
diff --git a/meta-extras/packages/gnome/orbit2/pkgconfig-fix.patch b/meta-extras/packages/gnome/orbit2/pkgconfig-fix.patch
deleted file mode 100644
index f629e506d..000000000
--- a/meta-extras/packages/gnome/orbit2/pkgconfig-fix.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -urN ORBit2-2.14.12.orig/ORBit-2.0.pc.in ORBit2-2.14.12/ORBit-2.0.pc.in
---- ORBit2-2.14.12.orig/ORBit-2.0.pc.in 2008-01-29 13:45:22.000000000 +0100
-+++ ORBit2-2.14.12/ORBit-2.0.pc.in 2008-09-23 20:13:07.000000000 +0200
-@@ -2,7 +2,7 @@
- exec_prefix=@exec_prefix@
- libdir=@libdir@
- includedir=@includedir@
--orbit_idl=@bindir@/orbit-idl-2@EXEEXT@
-+orbit_idl=@exec_prefix@/bin/orbit-idl-2@EXEEXT@
-
-
- Name: ORBit-2.0
diff --git a/meta-extras/packages/gnome/orbit2_2.14.16.bb b/meta-extras/packages/gnome/orbit2_2.14.16.bb
deleted file mode 100644
index 42ade84d1..000000000
--- a/meta-extras/packages/gnome/orbit2_2.14.16.bb
+++ /dev/null
@@ -1,30 +0,0 @@
-LICENSE = "GPL"
-DESCRIPTION = "CORBA ORB"
-SECTION = "x11/gnome/libs"
-SRC_URI = "http://ftp.gnome.org/pub/GNOME/sources/ORBit2/2.14/ORBit2-${PV}.tar.bz2 \
- file://configure-lossage.patch;patch=1;pnum=1 \
- file://pkgconfig-fix.patch;patch=1 \
- file://gtk-doc.m4 \
- file://gtk-doc.make"
-DEPENDS = "libidl popt orbit2-native gtk-doc"
-PARALLEL_MAKE = ""
-
-FILES_${PN} += "${libdir}/orbit-2.0/*.so"
-FILES_${PN}-dev += "${libdir}/orbit-2.0/*.a ${libdir}/orbit-2.0/*.la"
-FILES_${PN}-dbg += "${libdir}/orbit-2.0/.debug"
-
-S = "${WORKDIR}/ORBit2-${PV}"
-
-LEAD_SONAME = "libORBit-2.so"
-
-inherit autotools pkgconfig
-
-EXTRA_OECONF = "--disable-gtk-doc"
-EXTRA_OEMAKE = "IDL_COMPILER='${STAGING_BINDIR_NATIVE}/orbit-idl-2'"
-
-do_configure_prepend() {
- mkdir -p m4
- install ${WORKDIR}/gtk-doc.m4 ./m4/
- install ${WORKDIR}/gtk-doc.make ./
-}
-
diff --git a/meta-extras/packages/helix/helix-libs.bb b/meta-extras/packages/helix/helix-libs.bb
deleted file mode 100644
index 9fcbd4b67..000000000
--- a/meta-extras/packages/helix/helix-libs.bb
+++ /dev/null
@@ -1,49 +0,0 @@
-DESCRIPTION = "Helix Client Libraries"
-SECTION = "base"
-DEPENDS = "ribosome gtk+ libxv"
-HOMEPAGE = "http://helixcommunity.org"
-LICENSE = "RPSL"
-
-_SNAPSHOT = "atlas310_11212008"
-_TARBALL_SERVER = "http://git.moblin.org/repos/users/rusty"
-
-PV="r0"
-
-SRC_URI = "${_TARBALL_SERVER}/helix-libs_${_SNAPSHOT}.tar.bz2 \
- file://helix-libs/helix-player.pc \
- file://helix-libs/add-clutter.patch;patch=1"
-S = "${WORKDIR}/helix-libs_${_SNAPSHOT}"
-
-export BUILD_ROOT=${STAGING_DIR_HOST}${libdir}/ribosome
-export BUILDRC=${BUILD_ROOT}/buildrc
-export SYSTEM_ID=linux-2.2-libc6-gcc32-i586
-export BUILD=$BUILD_ROOT/bin/build.py
-
-COMPATIBLE_HOST = '(i.86.*-linux)'
-
-do_compile() {
- ${BUILD} -k -trelease -mclutter -Phelix-client-all-defines clutter
-}
-
-do_install() {
- mkdir -p ${D}/opt/helix/lib
- mkdir -p ${D}/opt/helix/include
- mkdir -p ${D}${libdir}/pkgconfig
-
- install -m 0644 clientapps/clutter/player.h ${D}/opt/helix/include/
- install -m 0644 ../helix-libs/helix-player.pc ${D}${libdir}/pkgconfig
-
- install -m 0644 release/*.so ${D}/opt/helix/lib
-
- install -d ${D}${libdir}
- install -m 0644 release/libhelix-player.so ${D}${libdir}
-}
-
-sysroot_stage_all_append() {
- sysroot_stage_dir ${D}/opt/helix ${SYSROOT_DESTDIR}/${STAGING_DIR_TARGET}/helix
-}
-
-FILES_${PN} = "/usr/lib/libhelix-player.so"
-FILES_${PN} += "/opt/helix/lib"
-FILES_${PN}-dev = "/usr/lib/pkgconfig"
-FILES_${PN}-dev += "/opt/helix/include"
diff --git a/meta-extras/packages/helix/helix-libs/add-clutter.patch b/meta-extras/packages/helix/helix-libs/add-clutter.patch
deleted file mode 100644
index eb545ff73..000000000
--- a/meta-extras/packages/helix/helix-libs/add-clutter.patch
+++ /dev/null
@@ -1,12668 +0,0 @@
-Index: helix-libs/clientapps/clutter/LICENSE.txt
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ helix-libs/clientapps/clutter/LICENSE.txt 2008-10-13 06:05:49.000000000 -0700
-@@ -0,0 +1,30 @@
-+ Copyright (c) 1995-2004 RealNetworks, Inc. All Rights Reserved.
-+
-+ The contents of this directory, and (except where otherwise
-+ indicated) the directories included within this directory, are
-+ subject to the current version of the RealNetworks Public Source
-+ License (the "RPSL") available at RPSL.txt in this directory, unless
-+ you have licensed the directory under the current version of the
-+ RealNetworks Community Source License (the "RCSL") available at
-+ RCSL.txt in this directory, in which case the RCSL will apply. You
-+ may also obtain the license terms directly from RealNetworks. You
-+ may not use the files in this directory except in compliance with the
-+ RPSL or, if you have a valid RCSL with RealNetworks applicable to
-+ this directory, the RCSL. Please see the applicable RPSL or RCSL for
-+ the rights, obligations and limitations governing use of the contents
-+ of the directory.
-+
-+ This directory is part of the Helix DNA Technology. RealNetworks is
-+ the developer of the Original Code and owns the copyrights in the
-+ portions it created.
-+
-+ This directory, and the directories included with this directory, are
-+ distributed and made available on an 'AS IS' basis, WITHOUT WARRANTY
-+ OF ANY KIND, EITHER EXPRESS OR IMPLIED, AND REALNETWORKS HEREBY
-+ DISCLAIMS ALL SUCH WARRANTIES, INCLUDING WITHOUT LIMITATION, ANY
-+ WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE,
-+ QUIET ENJOYMENT OR NON-INFRINGEMENT.
-+
-+ Technology Compatibility Kit Test Suite(s) Location:
-+ http://www.helixcommunity.org/content/tck
-+
-Index: helix-libs/clientapps/clutter/RCSL.txt
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ helix-libs/clientapps/clutter/RCSL.txt 2008-10-13 06:05:49.000000000 -0700
-@@ -0,0 +1,948 @@
-+The RCSL is made up of a base agreement and a few Attachments.
-+
-+For Research and Development use, you agree to the terms of the
-+RCSL R&D License (base RCSL and Attachments A, B, and C)
-+
-+For Commercial Use (either distribution or internal commercial
-+deployment) of the Helix DNA with or without support for RealNetworks'
-+RealAudio and RealVideo Add-on Technology, you agree to the
-+terms of the same RCSL R&D license
-+and execute one or more additional Commercial Use License attachments
-+<see http://www.helixcommunity.org/content/rcsl-attachments>.
-+
-+------------------------------------------------------------------------
-+
-+
-+ REALNETWORKS COMMUNITY SOURCE LICENSE
-+
-+Version 1.2 (Rev. Date: January 22, 2003).
-+
-+
-+ RECITALS
-+
-+Original Contributor has developed Specifications, Source Code
-+implementations and Executables of certain Technology; and
-+
-+Original Contributor desires to license the Technology to a large
-+community to facilitate research, innovation and product development
-+while maintaining compatibility of such products with the Technology as
-+delivered by Original Contributor; and
-+
-+Original Contributor desires to license certain Trademarks for the
-+purpose of branding products that are compatible with the relevant
-+Technology delivered by Original Contributor; and
-+
-+You desire to license the Technology and possibly certain Trademarks
-+from Original Contributor on the terms and conditions specified in this
-+License.
-+
-+In consideration for the mutual covenants contained herein, You and
-+Original Contributor agree as follows:
-+
-+
-+ AGREEMENT
-+
-+*1. Introduction.*
-+
-+The RealNetworks Community Source License ("RCSL") and effective
-+attachments ("License") may include five distinct licenses:
-+
-+i) Research Use license -- License plus Attachments A, B and C only.
-+
-+ii) Commercial Use and Trademark License, which may be for Internal
-+Deployment Use or external distribution, or both -- License plus
-+Attachments A, B, C, and D.
-+
-+iii) Technology Compatibility Kit (TCK) license -- Attachment C.
-+
-+iv) Add-On Technology License (Executable) Commercial Use License
-+-Attachment F.
-+
-+v) Add-On Technology Source Code Porting and Optimization
-+License-Attachment G.
-+
-+The Research Use license is effective when You click and accept this
-+License. The TCK is effective when You click and accept this License,
-+unless otherwise specified in the TCK attachments. The Commercial Use
-+and Trademark, Add-On Technology License, and the Add-On Technology
-+Source Code Porting and Optimization licenses must each be signed by You
-+and Original Contributor to become effective. Once effective, these
-+licenses and the associated requirements and responsibilities are
-+cumulative. Capitalized terms used in this License are defined in the
-+Glossary.
-+
-+*2. License Grants.*
-+
-+2.1 Original Contributor Grant.
-+
-+Subject to Your compliance with Sections 3, 8.10 and Attachment A of
-+this License, Original Contributor grants to You a worldwide,
-+royalty-free, non-exclusive license, to the extent of Original
-+Contributor's Intellectual Property Rights covering the Original Code,
-+Upgraded Code and Specifications, to do the following:
-+
-+(a) Research Use License:
-+
-+(i) use, reproduce and modify the Original Code, Upgraded Code and
-+Specifications to create Modifications and Reformatted Specifications
-+for Research Use by You;
-+
-+(ii) publish and display Original Code, Upgraded Code and Specifications
-+with, or as part of Modifications, as permitted under Section 3.1(b) below;
-+
-+(iii) reproduce and distribute copies of Original Code and Upgraded Code
-+to Licensees and students for Research Use by You;
-+
-+(iv) compile, reproduce and distribute Original Code and Upgraded Code
-+in Executable form, and Reformatted Specifications to anyone for
-+Research Use by You.
-+
-+(b) Other than the licenses expressly granted in this License, Original
-+Contributor retains all right, title, and interest in Original Code and
-+Upgraded Code and Specifications.
-+
-+2.2 Your Grants.
-+
-+(a) To Other Licensees. You hereby grant to each Licensee a license to
-+Your Error Corrections and Shared Modifications, of the same scope and
-+extent as Original Contributor's licenses under Section 2.1 a) above
-+relative to Research Use and Attachment D relative to Commercial Use.
-+
-+(b) To Original Contributor. You hereby grant to Original Contributor a
-+worldwide, royalty-free, non-exclusive, perpetual and irrevocable
-+license, to the extent of Your Intellectual Property Rights covering
-+Your Error Corrections, Shared Modifications and Reformatted
-+Specifications, to use, reproduce, modify, display and distribute Your
-+Error Corrections, Shared Modifications and Reformatted Specifications,
-+in any form, including the right to sublicense such rights through
-+multiple tiers of distribution.
-+
-+(c) Other than the licenses expressly granted in Sections 2.2(a) and (b)
-+above, and the restrictions set forth in Section 3.1(d)(iv) below, You
-+retain all right, title, and interest in Your Error Corrections, Shared
-+Modifications and Reformatted Specifications.
-+
-+2.3 Contributor Modifications.
-+
-+You may use, reproduce, modify, display and distribute Contributor Error
-+Corrections, Shared Modifications and Reformatted Specifications,
-+obtained by You under this License, to the same scope and extent as with
-+Original Code, Upgraded Code and Specifications.
-+
-+2.4 Subcontracting.
-+
-+You may deliver the Source Code of Covered Code to other Licensees
-+having at least a Research Use license, for the sole purpose of
-+furnishing development services to You in connection with Your rights
-+granted in this License. All such Licensees must execute appropriate
-+documents with respect to such work consistent with the terms of this
-+License, and acknowledging their work-made-for-hire status or assigning
-+exclusive right to the work product and associated Intellectual Property
-+Rights to You.
-+
-+*3. Requirements and Responsibilities*.
-+
-+3.1 Research Use License.
-+
-+As a condition of exercising the rights granted under Section 2.1(a)
-+above, You agree to comply with the following:
-+
-+(a) Your Contribution to the Community. All Error Corrections and Shared
-+Modifications which You create or contribute to are automatically
-+subject to the licenses granted under Section 2.2 above. You are
-+encouraged to license all of Your other Modifications under Section 2.2
-+as Shared Modifications, but are not required to do so. You agree to
-+notify Original Contributor of any errors in the Specification.
-+
-+(b) Source Code Availability. You agree to provide all Your Error
-+Corrections to Original Contributor as soon as reasonably practicable
-+and, in any event, prior to Internal Deployment Use or Commercial Use,
-+if applicable. Original Contributor may, at its discretion, post Source
-+Code for Your Error Corrections and Shared Modifications on the
-+Community Webserver. You may also post Error Corrections and Shared
-+Modifications on a web-server of Your choice; provided, that You must
-+take reasonable precautions to ensure that only Licensees have access to
-+such Error Corrections and Shared Modifications. Such precautions shall
-+include, without limitation, a password protection scheme limited to
-+Licensees and a click-on, download certification of Licensee status
-+required of those attempting to download from the server. An example of
-+an acceptable certification is attached as Attachment A-2.
-+
-+(c) Notices. All Error Corrections and Shared Modifications You create
-+or contribute to must include a file documenting the additions and
-+changes You made and the date of such additions and changes. You must
-+also include the notice set forth in Attachment A-1 in the file header.
-+If it is not possible to put the notice in a particular Source Code file
-+due to its structure, then You must include the notice in a location
-+(such as a relevant directory file), where a recipient would be most
-+likely to look for such a notice.
-+
-+(d) Redistribution.
-+
-+(i) Source. Covered Code may be distributed in Source Code form only to
-+another Licensee (except for students as provided below). You may not
-+offer or impose any terms on any Covered Code that alter the rights,
-+requirements, or responsibilities of such Licensee. You may distribute
-+Covered Code to students for use in connection with their course work
-+and research projects undertaken at accredited educational institutions.
-+Such students need not be Licensees, but must be given a copy of the
-+notice set forth in Attachment A-3 and such notice must also be included
-+in a file header or prominent location in the Source Code made available
-+to such students.
-+
-+(ii) Executable. You may distribute Executable version(s) of Covered
-+Code to Licensees and other third parties only for the purpose of
-+evaluation and comment in connection with Research Use by You and under
-+a license of Your choice, but which limits use of such Executable
-+version(s) of Covered Code only to that purpose.
-+
-+(iii) Modified Class, Interface and Package Naming. In connection with
-+Research Use by You only, You may use Original Contributor's class,
-+Interface and package names only to accurately reference or invoke the
-+Source Code files You modify. Original Contributor grants to You a
-+limited license to the extent necessary for such purposes.
-+
-+(iv) You expressly agree that any distribution, in whole or in part, of
-+Modifications developed by You shall only be done pursuant to the terms
-+and conditions of this License.
-+
-+(e) Extensions.
-+
-+(i) Covered Code. You may not include any Source Code of Community Code
-+in any Extensions. You may include the compiled Header Files of
-+Community Code in an Extension provided that Your use of the Covered
-+Code, including Heading Files, complies with the Commercial Use License,
-+the TCK and all other terms of this License.
-+
-+(ii) Publication. No later than the date on which You first distribute
-+such Extension for Commercial Use, You must publish to the industry, on
-+a non-confidential basis and free of all copyright restrictions with
-+respect to reproduction and use, an accurate and current specification
-+for any Extension. In addition, You must make available an appropriate
-+test suite, pursuant to the same rights as the specification,
-+sufficiently detailed to allow any third party reasonably skilled in the
-+technology to produce implementations of the Extension compatible with
-+the specification. Such test suites must be made available as soon as
-+reasonably practicable but, in no event, later than ninety (90) days
-+after Your first Commercial Use of the Extension. You must use
-+reasonable efforts to promptly clarify and correct the specification and
-+the test suite upon written request by Original Contributor.
-+
-+(iii) Open. You agree to refrain from enforcing any Intellectual
-+Property Rights You may have covering any interface(s) of Your
-+Extension, which would prevent the implementation of such interface(s)
-+by Original Contributor or any Licensee. This obligation does not
-+prevent You from enforcing any Intellectual Property Right You have that
-+would otherwise be infringed by an implementation of Your Extension.
-+
-+(iv) Interface Modifications and Naming. You may not modify or add to
-+the GUID space * * "xxxxxxxx-0901-11d1-8B06-00A024406D59" or any other
-+GUID space designated by Original Contributor. You may not modify any
-+Interface prefix provided with the Covered Code or any other prefix
-+designated by Original Contributor.* *
-+
-+* *
-+
-+(f) You agree that any Specifications provided to You by Original
-+Contributor are confidential and proprietary information of Original
-+Contributor. You must maintain the confidentiality of the Specifications
-+and may not disclose them to any third party without Original
-+Contributor's prior written consent. You may only use the Specifications
-+under the terms of this License and only for the purpose of implementing
-+the terms of this License with respect to Covered Code. You agree not
-+use, copy or distribute any such Specifications except as provided in
-+writing by Original Contributor.
-+
-+3.2 Commercial Use License.
-+
-+You may not make Commercial Use of any Covered Code unless You and
-+Original Contributor have executed a copy of the Commercial Use and
-+Trademark License attached as Attachment D.
-+
-+*4. Versions of the License.*
-+
-+4.1 License Versions.
-+
-+Original Contributor may publish revised versions of the License from
-+time to time. Each version will be given a distinguishing version number.
-+
-+4.2 Effect.
-+
-+Once a particular version of Covered Code has been provided under a
-+version of the License, You may always continue to use such Covered Code
-+under the terms of that version of the License. You may also choose to
-+use such Covered Code under the terms of any subsequent version of the
-+License. No one other than Original Contributor has the right to
-+promulgate License versions.
-+
-+4.3 Multiple-Licensed Code.
-+
-+Original Contributor may designate portions of the Covered Code as
-+"Multiple-Licensed." "Multiple-Licensed" means that the Original
-+Contributor permits You to utilize those designated portions of the
-+Covered Code under Your choice of this License or the alternative
-+license(s), if any, specified by the Original Contributor in an
-+Attachment to this License.
-+
-+*5. Disclaimer of Warranty.*
-+
-+5.1 COVERED CODE PROVIDED AS IS.
-+
-+COVERED CODE IS PROVIDED UNDER THIS LICENSE "AS IS," WITHOUT WARRANTY OF
-+ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING, WITHOUT LIMITATION,
-+WARRANTIES THAT THE COVERED CODE IS FREE OF DEFECTS, MERCHANTABLE, FIT
-+FOR A PARTICULAR PURPOSE OR NON-INFRINGING. YOU AGREE TO BEAR THE ENTIRE
-+RISK IN CONNECTION WITH YOUR USE AND DISTRIBUTION OF COVERED CODE UNDER
-+THIS LICENSE. THIS DISCLAIMER OF WARRANTY CONSTITUTES AN ESSENTIAL PART
-+OF THIS LICENSE. NO USE OF ANY COVERED CODE IS AUTHORIZED HEREUNDER
-+EXCEPT SUBJECT TO THIS DISCLAIMER.
-+
-+5.2 Not Designed for High Risk Activities.
-+
-+You acknowledge that Original Code, Upgraded Code and Specifications are
-+not designed or intended for use in high risk activities including, but
-+not limited to: (i) on-line control of aircraft, air traffic, aircraft
-+navigation or aircraft communications; or (ii) in the design,
-+construction, operation or maintenance of any nuclear facility. Original
-+Contributor disclaims any express or implied warranty of fitness for
-+such uses.
-+
-+*6. Termination.*
-+
-+6.1 By You.
-+
-+You may terminate this Research Use license at anytime by providing
-+written notice to Original Contributor.
-+
-+6.2 By Original Contributor.
-+
-+This License and the rights granted hereunder will terminate:
-+
-+(i) automatically if You fail to comply with the terms of this License
-+and fail to cure such breach within 30 days of receipt of written notice
-+of the breach;
-+
-+(ii) immediately in the event of circumstances specified in Sections 7.1
-+and 8.4; or
-+
-+(iii) at Original Contributor's discretion upon any action initiated by
-+You (including by cross-claim or counter claim) alleging that use or
-+distribution by Original Contributor or any Licensee, of Original Code,
-+Upgraded Code, Error Corrections, Shared Modifications or Specifications
-+infringe a patent owned or controlled by You.
-+
-+6.3 Effective of Termination.
-+
-+Upon termination, You agree to discontinue use of and destroy all copies
-+of Covered Code in Your possession. All sublicenses to the Covered Code
-+which You have properly granted shall survive any termination of this
-+License. Provisions that, by their nature, should remain in effect
-+beyond the termination of this License shall survive including, without
-+limitation, Sections 2.2, 3, 5, 7 and 8.
-+
-+6.4 No Compensation.
-+
-+Each party waives and releases the other from any claim to compensation
-+or indemnity for permitted or lawful termination of the business
-+relationship established by this License.
-+
-+*7. Liability.*
-+
-+7.1 Infringement. Should any of the Original Code, Upgraded Code, TCK or
-+Specifications ("Materials") become the subject of a claim of
-+infringement, Original Contributor may, at its sole option, (i) attempt
-+to procure the rights necessary for You to continue using the Materials,
-+(ii) modify the Materials so that they are no longer infringing, or
-+(iii) terminate Your right to use the Materials, immediately upon
-+written notice, and refund to You the amount, if any, having then
-+actually been paid by You to Original Contributor for the Original Code,
-+Upgraded Code and TCK, depreciated on a straight line, five year basis.
-+
-+7.2 LIMITATION OF LIABILITY. TO THE FULL EXTENT ALLOWED BY APPLICABLE
-+LAW, ORIGINAL CONTRIBUTOR'S LIABILITY TO YOU FOR CLAIMS RELATING TO THIS
-+LICENSE, WHETHER FOR BREACH OR IN TORT, SHALL BE LIMITED TO ONE HUNDRED
-+PERCENT (100%) OF THE AMOUNT HAVING THEN ACTUALLY BEEN PAID BY YOU TO
-+ORIGINAL CONTRIBUTOR FOR ALL COPIES LICENSED HEREUNDER OF THE PARTICULAR
-+ITEMS GIVING RISE TO SUCH CLAIM, IF ANY, DURING THE TWELVE MONTHS
-+PRECEDING THE CLAIMED BREACH. IN NO EVENT WILL YOU (RELATIVE TO YOUR
-+SHARED MODIFICATIONS OR ERROR CORRECTIONS) OR ORIGINAL CONTRIBUTOR BE
-+LIABLE FOR ANY INDIRECT, PUNITIVE, SPECIAL, INCIDENTAL OR CONSEQUENTIAL
-+DAMAGES IN CONNECTION WITH OR RISING OUT OF THIS LICENSE (INCLUDING,
-+WITHOUT LIMITATION, LOSS OF PROFITS, USE, DATA, OR OTHER ECONOMIC
-+ADVANTAGE), HOWEVER IT ARISES AND ON ANY THEORY OF LIABILITY, WHETHER IN
-+AN ACTION FOR CONTRACT, STRICT LIABILITY OR TORT (INCLUDING NEGLIGENCE)
-+OR OTHERWISE, WHETHER OR NOT YOU OR ORIGINAL CONTRIBUTOR HAS BEEN
-+ADVISED OF THE POSSIBILITY OF SUCH DAMAGE AND NOTWITHSTANDING THE
-+FAILURE OF ESSENTIAL PURPOSE OF ANY REMEDY.
-+
-+*8. Miscellaneous.*
-+
-+8.1 Trademark.
-+
-+You shall not use any Trademark unless You and Original Contributor
-+execute a copy of the Commercial Use and Trademark License Agreement
-+attached hereto as Attachment D. Except as expressly provided in the
-+License, You are granted no right, title or license to, or interest in,
-+any Trademarks. Whether or not You and Original Contributor enter into
-+the Trademark License, You agree not to (i) challenge Original
-+Contributor's ownership or use of Trademarks; (ii) attempt to register
-+any Trademarks, or any mark or logo substantially similar thereto; or
-+(iii) incorporate any Trademarks into Your own trademarks, product
-+names, service marks, company names, or domain names.
-+
-+8.2 Integration.
-+
-+This License represents the complete agreement concerning the subject
-+matter hereof.
-+
-+8.3 Assignment.
-+
-+Original Contributor may assign this License, and its rights and
-+obligations hereunder, in its sole discretion. You may assign the
-+Research Use portions of this License and the TCK license to a third
-+party upon prior written notice to Original Contributor (which may be
-+provided electronically via the Community Web-Server). You may not
-+assign the Commercial Use and Trademark license, the Add-On Technology
-+License, or the Add-On Technology Source Code Porting License, including
-+by way of merger (regardless of whether You are the surviving entity) or
-+acquisition, without Original Contributor's prior written consent.
-+
-+8.4 Severability.
-+
-+If any provision of this License is held to be unenforceable, such
-+provision shall be reformed only to the extent necessary to make it
-+enforceable. Notwithstanding the foregoing, if You are prohibited by law
-+from fully and specifically complying with Sections 2.2 or 3, this
-+License will immediately terminate and You must immediately discontinue
-+any use of Covered Code.
-+
-+8.5 Governing Law.
-+
-+This License shall be governed by the laws of the United States and the
-+State of Washington, as applied to contracts entered into and to be
-+performed in Washington between Washington residents. The application of
-+the United Nations Convention on Contracts for the International Sale of
-+Goods is expressly excluded. You agree that the state and federal courts
-+located in Seattle, Washington have exclusive jurisdiction over any
-+claim relating to the License, including contract and tort claims.
-+
-+8.6 Dispute Resolution.
-+
-+a) Arbitration. Any dispute arising out of or relating to this License
-+shall be finally settled by arbitration as set out herein, except that
-+either party may bring any action, in a court of competent jurisdiction
-+(which jurisdiction shall be exclusive), with respect to any dispute
-+relating to such party's Intellectual Property Rights or with respect to
-+Your compliance with the TCK license. Arbitration shall be administered:
-+(i) by the American Arbitration Association (AAA), (ii) in accordance
-+with the rules of the United Nations Commission on International Trade
-+Law (UNCITRAL) (the "Rules") in effect at the time of arbitration as
-+modified herein; and (iii) the arbitrator will apply the substantive
-+laws of Washington and the United States. Judgment upon the award
-+rendered by the arbitrator may be entered in any court having
-+jurisdiction to enforce such award.
-+
-+b) Arbitration language, venue and damages. All arbitration proceedings
-+shall be conducted in English by a single arbitrator selected in
-+accordance with the Rules, who must be fluent in English and be either a
-+retired judge or practicing attorney having at least ten (10) years
-+litigation experience and be reasonably familiar with the technology
-+matters relative to the dispute. Unless otherwise agreed, arbitration
-+venue shall be in Seattle, Washington. The arbitrator may award monetary
-+damages only and nothing shall preclude either party from seeking
-+provisional or emergency relief from a court of competent jurisdiction.
-+The arbitrator shall have no authority to award damages in excess of
-+those permitted in this License and any such award in excess is void.
-+All awards will be payable in U.S. dollars and may include, for the
-+prevailing party (i) pre-judgment award interest, (ii) reasonable
-+attorneys' fees incurred in connection with the arbitration, and (iii)
-+reasonable costs and expenses incurred in enforcing the award. The
-+arbitrator will order each party to produce identified documents and
-+respond to no more than twenty-five single question interrogatories.
-+
-+8.7 Construction.
-+
-+Any law or regulation, which provides that the language of a contract
-+shall be construed against the drafter, shall not apply to this License.
-+
-+8.8 U.S. Government End Users.
-+
-+The Covered Code is a "commercial item," as that term is defined in 48
-+C.F.R. 2.101 (Oct. 1995), consisting of "commercial computer software"
-+and "commercial computer software documentation," as such terms are used
-+in 48 C.F.R. 12.212 (Sept. 1995). Consistent with 48 C.F.R. 12.212 and
-+48 C.F.R. 227.7202-1 through 227.7202-4 (June 1995), all U.S. Government
-+End Users acquire Covered Code with only those rights set forth herein.
-+You agree to pass this notice to our licensees.
-+
-+8.9 Marketing Activities.
-+
-+Licensee hereby grants Original Contributor a non-exclusive,
-+non-transferable, limited license to use the Licensee's company name and
-+logo ("Licensee Marks") in any presentations, press releases, or
-+marketing materials solely for the purpose of identifying Licensee as a
-+member of the Helix Community. Licensee shall provide samples of
-+Licensee Marks to Original Contributor upon request by Original
-+Contributor. Original Contributor acknowledges that the Licensee Marks
-+are the trademarks of Licensee. Original Contributor shall not use the
-+Licensee Marks in a way that may imply that Original Contributor is an
-+agency or branch of Licensee. Original Contributor understands and
-+agrees that the use of any Licensee Marks in connection with this
-+Agreement shall not create any right, title or interest, in, or to the
-+Licensee Marks or any Licensee trademarks and that all such use and
-+goodwill associated with any such trademarks will inure to the benefit
-+of Licensee. Further the Original Contributor will stop usage of the
-+Licensee Marks upon Licensee's request.
-+
-+8.10 Press Announcements.
-+
-+You may make press announcements or other public statements regarding
-+this License without the prior written consent of the Original
-+Contributor, if Your statement is limited to announcing the licensing of
-+the Covered Code or the availability of Your Product and its
-+compatibility with the Covered Code. All other public announcements
-+regarding this license require the prior written consent of the Original
-+Contributor. Consent requests are welcome at press@helixcommunity.org.
-+
-+8.11 International Use.
-+
-+a) Export/Import laws. Covered Code is subject to U.S. export control
-+laws and may be subject to export or import regulations in other
-+countries. Each party agrees to comply strictly with all such laws and
-+regulations and acknowledges their responsibility to obtain such
-+licenses to export, re-export, or import as may be required. You agree
-+to pass these obligations to Your licensees.
-+
-+b) Intellectual Property Protection. Due to limited intellectual
-+property protection and enforcement in certain countries, You agree not
-+to redistribute the Original Code, Upgraded Code, TCK and Specifications
-+to any country on the list of restricted countries on the Community Web
-+Server.
-+
-+8.12 Language.
-+
-+This License is in the English language only, which language shall be
-+controlling in all respects, and all versions of this License in any
-+other language shall be for accommodation only and shall not be binding
-+on the parties to this License. All communications and notices made or
-+given pursuant to this License, and all documentation and support to be
-+provided, unless otherwise noted, shall be in the English language.
-+
-+PLEASE READ THE TERMS OF THIS LICENSE CAREFULLY. BY CLICKING ON THE
-+"ACCEPT" BUTTON BELOW YOU ARE ACCEPTING AND AGREEING TO THE TERMS AND
-+CONDITIONS OF THIS LICENSE WITH REALNETWORKS, INC. IF YOU ARE AGREEING
-+TO THIS LICENSE ON BEHALF OF A COMPANY, YOU REPRESENT THAT YOU ARE
-+AUTHORIZED TO BIND THE COMPANY TO SUCH A LICENSE. WHETHER YOU ARE ACTING
-+ON YOUR OWN BEHALF, OR REPRESENTING A COMPANY, YOU MUST BE OF MAJORITY
-+AGE AND BE OTHERWISE COMPETENT TO ENTER INTO CONTRACTS. IF YOU DO NOT
-+MEET THIS CRITERIA OR YOU DO NOT AGREE TO ANY OF THE TERMS AND
-+CONDITIONS OF THIS LICENSE, CLICK ON THE REJECT BUTTON TO EXIT.
-+
-+
-+ GLOSSARY
-+
-+1. *"Added Value"* means code which:
-+
-+(i) has a principal purpose which is substantially different from that
-+of the stand-alone Technology;
-+
-+(ii) represents a significant functional and value enhancement to the
-+Technology;
-+
-+(iii) operates in conjunction with the Technology; and
-+
-+(iv) is not marketed as a technology which replaces or substitutes for
-+the Technology
-+
-+2. "*Applicable Patent Rights*" mean: (a) in the case where Original
-+Contributor is the grantor of rights, claims of patents that (i) are now
-+or hereafter acquired, owned by or assigned to Original Contributor and
-+(ii) are necessarily infringed by using or making the Original Code or
-+Upgraded Code, including Modifications provided by Original Contributor,
-+alone and not in combination with other software or hardware; and (b) in
-+the case where Licensee is the grantor of rights, claims of patents that
-+(i) are now or hereafter acquired, owned by or assigned to Licensee and
-+(ii) are infringed (directly or indirectly) by using or making
-+Licensee's Modifications or Error Corrections, taken alone or in
-+combination with Covered Code.
-+
-+3. "*Application Programming Interfaces (APIs)"* means the interfaces,
-+associated header files, service provider interfaces, and protocols that
-+enable a device, application, Operating System, or other program to
-+obtain services from or make requests of (or provide services in
-+response to requests from) other programs, and to use, benefit from, or
-+rely on the resources, facilities, and capabilities of the relevant
-+programs using the APIs. APIs includes the technical documentation
-+describing the APIs, the Source Code constituting the API, and any
-+Header Files used with the APIs.
-+
-+4. "*Commercial Use*" means any use (internal or external), copying,
-+sublicensing or distribution (internal or external), directly or
-+indirectly of Covered Code by You other than Your Research Use of
-+Covered Code within Your business or organization or in conjunction with
-+other Licensees with equivalent Research Use rights. Commercial Use
-+includes any use of the Covered Code for direct or indirect commercial
-+or strategic gain, advantage or other business purpose. Any Commercial
-+Use requires execution of Attachment D by You and Original Contributor.
-+
-+5. "*Community Code*" means the Original Code, Upgraded Code, Error
-+Corrections, Shared Modifications, or any combination thereof.
-+
-+6. "*Community Webserver(s)"* means the webservers designated by
-+Original Contributor for access to the Original Code, Upgraded Code, TCK
-+and Specifications and for posting Error Corrections and Shared
-+Modifications.
-+
-+7. "*Compliant Covered Code*" means Covered Code that complies with the
-+requirements of the TCK.
-+
-+8. "*Contributor*" means each Licensee that creates or contributes to
-+the creation of any Error Correction or Shared Modification.
-+
-+9. "*Covered Code*" means the Original Code, Upgraded Code,
-+Modifications, or any combination thereof.
-+
-+10. "*Error Correction*" means any change made to Community Code which
-+conforms to the Specification and corrects the adverse effect of a
-+failure of Community Code to perform any function set forth in or
-+required by the Specifications.
-+
-+11. "*Executable*" means Covered Code that has been converted from
-+Source Code to the preferred form for execution by a computer or digital
-+processor (e.g. binary form).
-+
-+12. "*Extension(s)"* means any additional Interfaces developed by or for
-+You which: (i) are designed for use with the Technology; (ii) constitute
-+an API for a library of computing functions or services; and (iii) are
-+disclosed or otherwise made available to third party software developers
-+for the purpose of developing software which invokes such additional
-+Interfaces. The foregoing shall not apply to software developed by Your
-+subcontractors to be exclusively used by You.
-+
-+13. "*Header File(s)"* means that portion of the Source Code that
-+provides the names and types of member functions, data members, class
-+definitions, and interface definitions necessary to implement the APIs
-+for the Covered Code. Header Files include, files specifically
-+designated by Original Contributor as Header Files. Header Files do not
-+include the code necessary to implement the functionality underlying the
-+Interface.
-+
-+14. *"Helix DNA Server Technology"* means the program(s) that implement
-+the Helix Universal Server streaming engine for the Technology as
-+defined in the Specification.
-+
-+15. *"Helix DNA Client Technology"* means the Covered Code that
-+implements the RealOne Player engine as defined in the Specification.
-+
-+16. *"Helix DNA Producer Technology"* means the Covered Code that
-+implements the Helix Producer engine as defined in the Specification.
-+
-+17. *"Helix DNA Technology"* means the Helix DNA Server Technology, the
-+Helix DNA Client Technology, the Helix DNA Producer Technology and other
-+Helix technologies designated by Original Contributor.
-+
-+18. "*Intellectual Property Rights*" means worldwide statutory and
-+common law rights associated solely with (i) Applicable Patent Rights;
-+(ii) works of authorship including copyrights, copyright applications,
-+copyright registrations and "moral rights"; (iii) the protection of
-+trade and industrial secrets and confidential information; and (iv)
-+divisions, continuations, renewals, and re-issuances of the foregoing
-+now existing or acquired in the future.
-+
-+19. *"Interface*" means interfaces, functions, properties, class
-+definitions, APIs, Header Files, GUIDs, V-Tables, and/or protocols
-+allowing one piece of software, firmware or hardware to communicate or
-+interoperate with another piece of software, firmware or hardware.
-+
-+20. "*Internal Deployment Use*" means use of Compliant Covered Code
-+(excluding Research Use) within Your business or organization only by
-+Your employees and/or agents on behalf of Your business or organization,
-+but not to provide services, including content distribution, to third
-+parties, subject to execution of Attachment D by You and Original
-+Contributor, if required.
-+
-+21. "*Licensee*" means any party that has entered into and has in effect
-+a version of this License with Original Contributor.
-+
-+22. "*MIME type*" means a description of what type of media or other
-+content is in a file, including by way of example but not limited to
-+'audio/x-pn-realaudio-plugin.'
-+
-+23. "*Modification(s)"* means (i) any addition to, deletion from and/or
-+change to the substance and/or structure of the Covered Code, including
-+Interfaces; (ii) the combination of any Covered Code and any previous
-+Modifications; (iii) any new file or other representation of computer
-+program statements that contains any portion of Covered Code; and/or
-+(iv) any new Source Code implementing any portion of the Specifications.
-+
-+24. "*MP3 Patents*" means any patents necessary to make, use or sell
-+technology implementing any portion of the specification developed by
-+the Moving Picture Experts Group known as MPEG-1 Audio Layer-3 or MP3,
-+including but not limited to all past and future versions, profiles,
-+extensions, parts and amendments relating to the MP3 specification.
-+
-+25. "*MPEG-4 Patents*" means any patents necessary to make, use or sell
-+technology implementing any portion of the specification developed by
-+the Moving Pictures Experts Group known as MPEG-4, including but not
-+limited to all past and future versions, profiles, extensions, parts and
-+amendments relating to the MPEG-4 specification.
-+
-+26. "*Original Code*" means the initial Source Code for the Technology
-+as described on the Community Web Server.
-+
-+27. "*Original Contributor*" means RealNetworks, Inc., its affiliates
-+and its successors and assigns.
-+
-+28. "*Original Contributor MIME Type*" means the MIME registry, browser
-+preferences, or local file/protocol associations invoking any Helix DNA
-+Client-based application, including the RealOne Player, for playback of
-+RealAudio, RealVideo, other RealMedia MIME types or datatypes (e.g.,
-+.ram, .rnx, .rpm, .ra, .rm, .rp, .rt, .rf, .prx, .mpe, .rmp, .rmj, .rav,
-+.rjs, .rmx, .rjt, .rms), and any other Original Contributor-specific or
-+proprietary MIME types that Original Contributor may introduce in the
-+future.
-+
-+29. "*Personal Use*" means use of Covered Code by an individual solely
-+for his or her personal, private and non-commercial purposes. An
-+individual's use of Covered Code in his or her capacity as an officer,
-+employee, member, independent contractor or agent of a corporation,
-+business or organization (commercial or non-commercial) does not qualify
-+as Personal Use.
-+
-+30. "*RealMedia File Format*" means the file format designed and
-+developed by RealNetworks for storing multimedia data and used to store
-+RealAudio and RealVideo encoded streams. Valid RealMedia File Format
-+extensions include: .rm, .rmj, .rmc, .rmvb, .rms.
-+
-+31. "*RCSL Webpage*" means the RealNetworks Community Source License
-+webpage located at https://www.helixcommunity.org/content/rcsl or such
-+other URL that Original Contributor may designate from time to time.
-+
-+32. "*Reformatted Specifications*" means any revision to the
-+Specifications which translates or reformats the Specifications (as for
-+example in connection with Your documentation) but which does not alter,
-+subset or superset * *the functional or operational aspects of the
-+Specifications.
-+
-+33. "*Research Use*" means use and distribution of Covered Code only for
-+Your Personal Use, research or development use and expressly excludes
-+Internal Deployment Use and Commercial Use. Research Use also includes
-+use of Covered Code to teach individuals how to use Covered Code.
-+
-+34. "*Shared Modifications*" means Modifications that You distribute or
-+use for a Commercial Use, in addition to any Modifications provided by
-+You, at Your option, pursuant to Section 2.2, or received by You from a
-+Contributor pursuant to Section 2.3.
-+
-+35. "*Source Code*" means the preferred form of the Covered Code for
-+making modifications to it, including all modules it contains, plus any
-+associated interface definition files, scripts used to control
-+compilation and installation of an Executable, or source code
-+differential comparisons against either the Original Code or another
-+well known, available Covered Code of the Contributor's choice. The
-+Source Code can be in a compressed or archival form, provided the
-+appropriate decompression or de-archiving software is widely available
-+for no charge.
-+
-+36. "*Specifications*" means the specifications for the Technology and
-+other documentation, as designated on the Community Web Server, as may
-+be revised by Original Contributor from time to time.
-+
-+37. "*Trademarks*" means Original Contributor's trademarks and logos,
-+including, but not limited to, RealNetworks, RealAudio, RealVideo,
-+RealOne, RealSystem, SureStream, Helix, Helix DNA and other trademarks
-+whether now used or adopted in the future.
-+
-+38. "*Technology*" means the technology described in Attachment B, and
-+Upgrades.
-+
-+39. "*Technology Compatibility Kit"* or *"TCK*" means the test programs,
-+procedures, acceptance criteria and/or other requirements, designated by
-+Original Contributor for use in verifying compliance of Covered Code
-+with the Specifications, in conjunction with the Original Code and
-+Upgraded Code. Original Contributor may, in its sole discretion and from
-+time to time, revise a TCK to correct errors and/or omissions and in
-+connection with Upgrades.
-+
-+40. "*Upgrade(s)"* means new versions of Technology designated
-+exclusively by Original Contributor as an "Upgrade" and released by
-+Original Contributor from time to time under the terms of the License.
-+
-+41. "*Upgraded Code*" means the Source Code and/or Executables for
-+Upgrades, possibly including Modifications made by Contributors.
-+
-+42. *"User's Guide"* means the users guide for the TCK which Original
-+Contributor makes available to You to provide direction in how to run
-+the TCK and properly interpret the results, as may be revised by
-+Original Contributor from time to time.
-+
-+43. "*You(r)*" means an individual, or a legal entity acting by and
-+through an individual or individuals, exercising rights either under
-+this License or under a future version of this License issued pursuant
-+to Section 4.1. For legal entities, "You(r)" includes any entity that by
-+majority voting interest controls, is controlled by, or is under common
-+control with You.
-+
-+44. "*Your Products*" means any (i) hardware products You distribute
-+integrating the Covered Code; (ii) any software products You distribute
-+with the Covered Code that utilize the APIs of the Covered Code; or
-+(iii) any services You provide using the Covered Code.
-+
-+
-+ ATTACHMENT A
-+
-+REQUIRED NOTICES
-+
-+
-+ ATTACHMENT A-1
-+
-+REQUIRED IN ALL CASES
-+
-+Notice to be included in header file of all Error Corrections and Shared
-+Modifications:
-+
-+Portions Copyright 1994-2003 © RealNetworks, Inc. All rights reserved.
-+
-+The contents of this file, and the files included with this file, are
-+subject to the current version of RealNetworks Community Source License
-+Version 1.1 (the "License"). You may not use this file except in
-+compliance with the License executed by both You and RealNetworks. You
-+may obtain a copy of the License at *
-+https://www.helixcommunity.org/content/rcsl.* You may also obtain a copy
-+of the License by contacting RealNetworks directly. Please see the
-+License for the rights, obligations and limitations governing use of the
-+contents of the file.
-+
-+This file is part of the Helix DNA technology. RealNetworks, Inc., is
-+the developer of the Original code and owns the copyrights in the
-+portions it created.
-+
-+This file, and the files included with this file, are distributed on an
-+'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED,
-+AND REALNETWORKS HEREBY DISCLAIMS ALL SUCH WARRANTIES, INCLUDING WITHOUT
-+LIMITATION, ANY WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
-+PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
-+
-+Contributor(s):
-+
-+_______________________________________________
-+
-+Technology Compatibility Kit Test Suite(s) Location:
-+
-+________________________________
-+
-+
-+ ATTACHMENT A-2
-+
-+SAMPLE LICENSEE CERTIFICATION
-+
-+"By clicking the `Agree' button below, You certify that You are a
-+Licensee in good standing under the RealNetworks Community Source
-+License, ("License") and that Your access, use and distribution of code
-+and information You may obtain at this site is subject to the License.
-+If You are not a Licensee under the RealNetworks Community Source
-+License You agree not to download, copy or use the Helix DNA technology.
-+
-+
-+ ATTACHMENT A-3
-+
-+REQUIRED STUDENT NOTIFICATION
-+
-+"This software and related documentation has been obtained by Your
-+educational institution subject to the RealNetworks Community Source
-+License. You have been provided access to the software and related
-+documentation for use only in connection with your course work and
-+research activities as a matriculated student of Your educational
-+institution. Any other use is expressly prohibited.
-+
-+THIS SOFTWARE AND RELATED DOCUMENTATION CONTAINS PROPRIETARY MATERIAL OF
-+REALNETWORKS, INC, WHICH ARE PROTECTED BY VARIOUS INTELLECTUAL PROPERTY
-+RIGHTS.
-+
-+You may not use this file except in compliance with the License. You may
-+obtain a copy of the License on the web at
-+https://www.helixcommunity.org/content/rcsl.
-+
-+*
-+*
-+
-+
-+ ATTACHMENT B
-+
-+Description of Technology
-+
-+Helix DNA, which consists of Helix DNA Client, Helix DNA Server and
-+Helix DNA Producer.
-+
-+Description of "Technology"
-+
-+Helix DNA Technology v1.0 as described on the Community Web Server.
-+
-+
-+ ATTACHMENT C
-+
-+TECHNOLOGY COMPATIBILITY KIT LICENSE
-+
-+The following license is effective for the *Helix DNA* Technology
-+Compatibility Kit - as described on the Community Web Server. The
-+Technology Compatibility Kit(s) for the Technology specified in
-+Attachment B may be accessed at the Community Web Server.
-+
-+1. TCK License.
-+
-+1.1 Grants to use TCK
-+
-+Subject to the terms and restrictions set forth below and the
-+RealNetworks Community Source License, and the Research Use license,
-+Original Contributor grants to You a worldwide, non-exclusive,
-+non-transferable license, to the extent of Original Contributor's
-+Intellectual Property Rights in the TCK (without the right to
-+sublicense), to use the TCK to develop and test Covered Code.
-+
-+1.2 TCK Use Restrictions.
-+
-+You are not authorized to create derivative works of the TCK or use the
-+TCK to test any implementation of the Specification that is not Covered
-+Code. You may not publish Your test results or make claims of
-+comparative compatibility with respect to other implementations of the
-+Specification. In consideration for the license grant in Section 1.1
-+above You agree not to develop Your own tests that are intended to
-+validate conformation with the Specification.
-+
-+2. Test Results.
-+
-+You agree to provide to Original Contributor or the third party test
-+facility if applicable, Your test results that demonstrate that Covered
-+Code is Compliant Covered Code and that Original Contributor may publish
-+or otherwise distribute such test results.
-+
-+PLEASE READ THE TERMS OF THIS LICENSE CAREFULLY. BY CLICKING ON THE
-+"ACCEPT" BUTTON BELOW YOU ARE ACCEPTING AND AGREEING TO THE TERMS AND
-+CONDITIONS OF THIS LICENSE WITH THE ORIGINAL CONTRIBUTOR, REALNETWORKS,
-+INC. IF YOU ARE AGREEING TO THIS LICENSE ON BEHALF OF A COMPANY, YOU
-+REPRESENT THAT YOU ARE AUTHORIZED TO BIND THE COMPANY TO SUCH A LICENSE.
-+WHETHER YOU ARE ACTING ON YOUR OWN BEHALF, OR REPRESENTING A COMPANY,
-+YOU MUST BE OF MAJORITY AGE AND BE OTHERWISE COMPETENT TO ENTER INTO
-+CONTRACTS. IF YOU DO NOT MEET THIS CRITERIA OR YOU DO NOT AGREE TO ANY
-+OF THE TERMS AND CONDITIONS OF THIS LICENSE, CLICK ON THE REJECT BUTTON
-+TO EXIT.
-+
-+*ACCEPT / REJECT
-+*
-+
-+*
-+*
-+
-+*To agree to the R&D/academic terms of this license, please register
-+<https://www.helixcommunity.org/2002/intro/why-register> on the site --
-+you will then be given a chance to agree to the clickwrap RCSL
-+<https://reguseronly.helixcommunity.org/2002/clickwrap/rcsl-clickwrap>
-+R&D License
-+<https://reguseronly.helixcommunity.org/2002/clickwrap/rcsl-clickwrap>
-+and gain access to the RCSL-licensed source code. To build or deploy
-+commercial applications based on the RCSL, you will need to agree to the
-+Commercial Use license attachments
-+<https://www.helixcommunity.org/content/rcsl-attachments>*
-+
-+
-+
-Index: helix-libs/clientapps/clutter/RPSL.txt
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ helix-libs/clientapps/clutter/RPSL.txt 2008-10-13 06:05:49.000000000 -0700
-@@ -0,0 +1,518 @@
-+RealNetworks Public Source License Version 1.0
-+(Rev. Date October 28, 2002)
-+
-+1. General Definitions. This License applies to any program or other work which
-+RealNetworks, Inc., or any other entity that elects to use this license,
-+("Licensor") makes publicly available and which contains a notice placed by
-+Licensor identifying such program or work as "Original Code" and stating that it
-+is subject to the terms of this RealNetworks Public Source License version 1.0
-+(or subsequent version thereof) ("License"). You are not required to accept this
-+License. However, nothing else grants You permission to use, copy, modify or
-+distribute the software or its derivative works. These actions are prohibited by
-+law if You do not accept this License. Therefore, by modifying, copying or
-+distributing the software (or any work based on the software), You indicate your
-+acceptance of this License to do so, and all its terms and conditions. In
-+addition, you agree to the terms of this License by clicking the Accept button
-+or downloading the software. As used in this License:
-+
-+1.1 "Applicable Patent Rights" mean: (a) in the case where Licensor is the
-+grantor of rights, claims of patents that (i) are now or hereafter acquired,
-+owned by or assigned to Licensor and (ii) are necessarily infringed by using or
-+making the Original Code alone and not in combination with other software or
-+hardware; and (b) in the case where You are the grantor of rights, claims of
-+patents that (i) are now or hereafter acquired, owned by or assigned to You and
-+(ii) are infringed (directly or indirectly) by using or making Your
-+Modifications, taken alone or in combination with Original Code.
-+
-+1.2 "Compatible Source License" means any one of the licenses listed on Exhibit
-+B or at https://www.helixcommunity.org/content/complicense or other licenses
-+specifically identified by Licensor in writing. Notwithstanding any term to the
-+contrary in any Compatible Source License, any code covered by any Compatible
-+Source License that is used with Covered Code must be made readily available in
-+Source Code format for royalty-free use under the terms of the Compatible Source
-+License or this License.
-+
-+1.3 "Contributor" means any person or entity that creates or contributes to the
-+creation of Modifications.
-+
-+1.4 "Covered Code" means the Original Code, Modifications, the combination of
-+Original Code and any Modifications, and/or any respective portions thereof.
-+
-+1.5 "Deploy" means to use, sublicense or distribute Covered Code other than for
-+Your internal research and development (R&D) and/or Personal Use, and includes
-+without limitation, any and all internal use or distribution of Covered Code
-+within Your business or organization except for R&D use and/or Personal Use, as
-+well as direct or indirect sublicensing or distribution of Covered Code by You
-+to any third party in any form or manner.
-+
-+1.6 "Derivative Work" means either the Covered Code or any derivative work under
-+United States copyright law, and including any work containing or including any
-+portion of the Covered Code or Modifications, either verbatim or with
-+modifications and/or translated into another language. Derivative Work also
-+includes any work which combines any portion of Covered Code or Modifications
-+with code not otherwise governed by the terms of this License.
-+
-+1.7 "Externally Deploy" means to Deploy the Covered Code in any way that may be
-+accessed or used by anyone other than You, used to provide any services to
-+anyone other than You, or used in any way to deliver any content to anyone other
-+than You, whether the Covered Code is distributed to those parties, made
-+available as an application intended for use over a computer network, or used to
-+provide services or otherwise deliver content to anyone other than You.
-+
-+1.8. "Interface" means interfaces, functions, properties, class definitions,
-+APIs, header files, GUIDs, V-Tables, and/or protocols allowing one piece of
-+software, firmware or hardware to communicate or interoperate with another piece
-+of software, firmware or hardware.
-+
-+1.9 "Modifications" mean any addition to, deletion from, and/or change to, the
-+substance and/or structure of the Original Code, any previous Modifications, the
-+combination of Original Code and any previous Modifications, and/or any
-+respective portions thereof. When code is released as a series of files, a
-+Modification is: (a) any addition to or deletion from the contents of a file
-+containing Covered Code; and/or (b) any new file or other representation of
-+computer program statements that contains any part of Covered Code.
-+
-+1.10 "Original Code" means (a) the Source Code of a program or other work as
-+originally made available by Licensor under this License, including the Source
-+Code of any updates or upgrades to such programs or works made available by
-+Licensor under this License, and that has been expressly identified by Licensor
-+as such in the header file(s) of such work; and (b) the object code compiled
-+from such Source Code and originally made available by Licensor under this
-+License.
-+
-+1.11 "Personal Use" means use of Covered Code by an individual solely for his or
-+her personal, private and non-commercial purposes. An individual's use of
-+Covered Code in his or her capacity as an officer, employee, member, independent
-+contractor or agent of a corporation, business or organization (commercial or
-+non-commercial) does not qualify as Personal Use.
-+
-+1.12 "Source Code" means the human readable form of a program or other work that
-+is suitable for making modifications to it, including all modules it contains,
-+plus any associated interface definition files, scripts used to control
-+compilation and installation of an executable (object code).
-+
-+1.13 "You" or "Your" means an individual or a legal entity exercising rights
-+under this License. For legal entities, "You" or "Your" includes any entity
-+which controls, is controlled by, or is under common control with, You, where
-+"control" means (a) the power, direct or indirect, to cause the direction or
-+management of such entity, whether by contract or otherwise, or (b) ownership of
-+fifty percent (50%) or more of the outstanding shares or beneficial ownership of
-+such entity.
-+
-+2. Permitted Uses; Conditions & Restrictions. Subject to the terms and
-+conditions of this License, Licensor hereby grants You, effective on the date
-+You accept this License (via downloading or using Covered Code or otherwise
-+indicating your acceptance of this License), a worldwide, royalty-free,
-+non-exclusive copyright license, to the extent of Licensor's copyrights cover
-+the Original Code, to do the following:
-+
-+2.1 You may reproduce, display, perform, modify and Deploy Covered Code,
-+provided that in each instance:
-+
-+(a) You must retain and reproduce in all copies of Original Code the copyright
-+and other proprietary notices and disclaimers of Licensor as they appear in the
-+Original Code, and keep intact all notices in the Original Code that refer to
-+this License;
-+
-+(b) You must include a copy of this License with every copy of Source Code of
-+Covered Code and documentation You distribute, and You may not offer or impose
-+any terms on such Source Code that alter or restrict this License or the
-+recipients' rights hereunder, except as permitted under Section 6;
-+
-+(c) You must duplicate, to the extent it does not already exist, the notice in
-+Exhibit A in each file of the Source Code of all Your Modifications, and cause
-+the modified files to carry prominent notices stating that You changed the files
-+and the date of any change;
-+
-+(d) You must make Source Code of all Your Externally Deployed Modifications
-+publicly available under the terms of this License, including the license grants
-+set forth in Section 3 below, for as long as you Deploy the Covered Code or
-+twelve (12) months from the date of initial Deployment, whichever is longer. You
-+should preferably distribute the Source Code of Your Deployed Modifications
-+electronically (e.g. download from a web site); and
-+
-+(e) if You Deploy Covered Code in object code, executable form only, You must
-+include a prominent notice, in the code itself as well as in related
-+documentation, stating that Source Code of the Covered Code is available under
-+the terms of this License with information on how and where to obtain such
-+Source Code. You must also include the Object Code Notice set forth in Exhibit A
-+in the "about" box or other appropriate place where other copyright notices are
-+placed, including any packaging materials.
-+
-+2.2 You expressly acknowledge and agree that although Licensor and each
-+Contributor grants the licenses to their respective portions of the Covered Code
-+set forth herein, no assurances are provided by Licensor or any Contributor that
-+the Covered Code does not infringe the patent or other intellectual property
-+rights of any other entity. Licensor and each Contributor disclaim any liability
-+to You for claims brought by any other entity based on infringement of
-+intellectual property rights or otherwise. As a condition to exercising the
-+rights and licenses granted hereunder, You hereby assume sole responsibility to
-+secure any other intellectual property rights needed, if any. For example, if a
-+third party patent license is required to allow You to make, use, sell, import
-+or offer for sale the Covered Code, it is Your responsibility to acquire such
-+license(s).
-+
-+2.3 Subject to the terms and conditions of this License, Licensor hereby grants
-+You, effective on the date You accept this License (via downloading or using
-+Covered Code or otherwise indicating your acceptance of this License), a
-+worldwide, royalty-free, perpetual, non-exclusive patent license under
-+Licensor's Applicable Patent Rights to make, use, sell, offer for sale and
-+import the Covered Code, provided that in each instance you comply with the
-+terms of this License.
-+
-+3. Your Grants. In consideration of, and as a condition to, the licenses granted
-+to You under this License:
-+
-+(a) You grant to Licensor and all third parties a non-exclusive, perpetual,
-+irrevocable, royalty free license under Your Applicable Patent Rights and other
-+intellectual property rights owned or controlled by You, to make, sell, offer
-+for sale, use, import, reproduce, display, perform, modify, distribute and
-+Deploy Your Modifications of the same scope and extent as Licensor's licenses
-+under Sections 2.1 and 2.2; and
-+
-+(b) You grant to Licensor and its subsidiaries a non-exclusive, worldwide,
-+royalty-free, perpetual and irrevocable license, under Your Applicable Patent
-+Rights and other intellectual property rights owned or controlled by You, to
-+make, use, sell, offer for sale, import, reproduce, display, perform,
-+distribute, modify or have modified (for Licensor and/or its subsidiaries),
-+sublicense and distribute Your Modifications, in any form and for any purpose,
-+through multiple tiers of distribution.
-+
-+(c) You agree not use any information derived from Your use and review of the
-+Covered Code, including but not limited to any algorithms or inventions that may
-+be contained in the Covered Code, for the purpose of asserting any of Your
-+patent rights, or assisting a third party to assert any of its patent rights,
-+against Licensor or any Contributor.
-+
-+4. Derivative Works. You may create a Derivative Work by combining Covered Code
-+with other code not otherwise governed by the terms of this License and
-+distribute the Derivative Work as an integrated product. In each such instance,
-+You must make sure the requirements of this License are fulfilled for the
-+Covered Code or any portion thereof, including all Modifications.
-+
-+4.1 You must cause any Derivative Work that you distribute, publish or
-+Externally Deploy, that in whole or in part contains or is derived from the
-+Covered Code or any part thereof, to be licensed as a whole at no charge to all
-+third parties under the terms of this License and no other license except as
-+provided in Section 4.2. You also must make Source Code available for the
-+Derivative Work under the same terms as Modifications, described in Sections 2
-+and 3, above.
-+
-+4.2 Compatible Source Licenses. Software modules that have been independently
-+developed without any use of Covered Code and which contain no portion of the
-+Covered Code, Modifications or other Derivative Works, but are used or combined
-+in any way wtih the Covered Code or any Derivative Work to form a larger
-+Derivative Work, are exempt from the conditions described in Section 4.1 but
-+only to the extent that: the software module, including any software that is
-+linked to, integrated with, or part of the same applications as, the software
-+module by any method must be wholly subject to one of the Compatible Source
-+Licenses. Notwithstanding the foregoing, all Covered Code must be subject to the
-+terms of this License. Thus, the entire Derivative Work must be licensed under a
-+combination of the RPSL (for Covered Code) and a Compatible Source License for
-+any independently developed software modules within the Derivative Work. The
-+foregoing requirement applies even if the Compatible Source License would
-+ordinarily allow the software module to link with, or form larger works with,
-+other software that is not subject to the Compatible Source License. For
-+example, although the Mozilla Public License v1.1 allows Mozilla code to be
-+combined with proprietary software that is not subject to the MPL, if
-+MPL-licensed code is used with Covered Code the MPL-licensed code could not be
-+combined or linked with any code not governed by the MPL. The general intent of
-+this section 4.2 is to enable use of Covered Code with applications that are
-+wholly subject to an acceptable open source license. You are responsible for
-+determining whether your use of software with Covered Code is allowed under Your
-+license to such software.
-+
-+4.3 Mere aggregation of another work not based on the Covered Code with the
-+Covered Code (or with a work based on the Covered Code) on a volume of a storage
-+or distribution medium does not bring the other work under the scope of this
-+License. If You deliver the Covered Code for combination and/or integration with
-+an application previously provided by You (for example, via automatic updating
-+technology), such combination and/or integration constitutes a Derivative Work
-+subject to the terms of this License.
-+
-+5. Exclusions From License Grant. Nothing in this License shall be deemed to
-+grant any rights to trademarks, copyrights, patents, trade secrets or any other
-+intellectual property of Licensor or any Contributor except as expressly stated
-+herein. No right is granted to the trademarks of Licensor or any Contributor
-+even if such marks are included in the Covered Code. Nothing in this License
-+shall be interpreted to prohibit Licensor from licensing under different terms
-+from this License any code that Licensor otherwise would have a right to
-+license. Modifications, Derivative Works and/or any use or combination of
-+Covered Code with other technology provided by Licensor or third parties may
-+require additional patent licenses from Licensor which Licensor may grant in its
-+sole discretion. No patent license is granted separate from the Original Code or
-+combinations of the Original Code with other software or hardware.
-+
-+5.1. Trademarks. This License does not grant any rights to use the trademarks or
-+trade names owned by Licensor ("Licensor Marks" defined in Exhibit C) or to any
-+trademark or trade name belonging to any Contributor. No Licensor Marks may be
-+used to endorse or promote products derived from the Original Code other than as
-+permitted by the Licensor Trademark Policy defined in Exhibit C.
-+
-+6. Additional Terms. You may choose to offer, and to charge a fee for, warranty,
-+support, indemnity or liability obligations and/or other rights consistent with
-+the scope of the license granted herein ("Additional Terms") to one or more
-+recipients of Covered Code. However, You may do so only on Your own behalf and
-+as Your sole responsibility, and not on behalf of Licensor or any Contributor.
-+You must obtain the recipient's agreement that any such Additional Terms are
-+offered by You alone, and You hereby agree to indemnify, defend and hold
-+Licensor and every Contributor harmless for any liability incurred by or claims
-+asserted against Licensor or such Contributor by reason of any such Additional
-+Terms.
-+
-+7. Versions of the License. Licensor may publish revised and/or new versions of
-+this License from time to time. Each version will be given a distinguishing
-+version number. Once Original Code has been published under a particular version
-+of this License, You may continue to use it under the terms of that version. You
-+may also choose to use such Original Code under the terms of any subsequent
-+version of this License published by Licensor. No one other than Licensor has
-+the right to modify the terms applicable to Covered Code created under this
-+License.
-+
-+8. NO WARRANTY OR SUPPORT. The Covered Code may contain in whole or in part
-+pre-release, untested, or not fully tested works. The Covered Code may contain
-+errors that could cause failures or loss of data, and may be incomplete or
-+contain inaccuracies. You expressly acknowledge and agree that use of the
-+Covered Code, or any portion thereof, is at Your sole and entire risk. THE
-+COVERED CODE IS PROVIDED "AS IS" AND WITHOUT WARRANTY, UPGRADES OR SUPPORT OF
-+ANY KIND AND LICENSOR AND LICENSOR'S LICENSOR(S) (COLLECTIVELY REFERRED TO AS
-+"LICENSOR" FOR THE PURPOSES OF SECTIONS 8 AND 9) AND ALL CONTRIBUTORS EXPRESSLY
-+DISCLAIM ALL WARRANTIES AND/OR CONDITIONS, EXPRESS OR IMPLIED, INCLUDING, BUT
-+NOT LIMITED TO, THE IMPLIED WARRANTIES AND/OR CONDITIONS OF MERCHANTABILITY, OF
-+SATISFACTORY QUALITY, OF FITNESS FOR A PARTICULAR PURPOSE, OF ACCURACY, OF QUIET
-+ENJOYMENT, AND NONINFRINGEMENT OF THIRD PARTY RIGHTS. LICENSOR AND EACH
-+CONTRIBUTOR DOES NOT WARRANT AGAINST INTERFERENCE WITH YOUR ENJOYMENT OF THE
-+COVERED CODE, THAT THE FUNCTIONS CONTAINED IN THE COVERED CODE WILL MEET YOUR
-+REQUIREMENTS, THAT THE OPERATION OF THE COVERED CODE WILL BE UNINTERRUPTED OR
-+ERROR-FREE, OR THAT DEFECTS IN THE COVERED CODE WILL BE CORRECTED. NO ORAL OR
-+WRITTEN DOCUMENTATION, INFORMATION OR ADVICE GIVEN BY LICENSOR, A LICENSOR
-+AUTHORIZED REPRESENTATIVE OR ANY CONTRIBUTOR SHALL CREATE A WARRANTY. You
-+acknowledge that the Covered Code is not intended for use in high risk
-+activities, including, but not limited to, the design, construction, operation
-+or maintenance of nuclear facilities, aircraft navigation, aircraft
-+communication systems, or air traffic control machines in which case the failure
-+of the Covered Code could lead to death, personal injury, or severe physical or
-+environmental damage. Licensor disclaims any express or implied warranty of
-+fitness for such uses.
-+
-+9. LIMITATION OF LIABILITY. TO THE EXTENT NOT PROHIBITED BY LAW, IN NO EVENT
-+SHALL LICENSOR OR ANY CONTRIBUTOR BE LIABLE FOR ANY INCIDENTAL, SPECIAL,
-+INDIRECT OR CONSEQUENTIAL DAMAGES ARISING OUT OF OR RELATING TO THIS LICENSE OR
-+YOUR USE OR INABILITY TO USE THE COVERED CODE, OR ANY PORTION THEREOF, WHETHER
-+UNDER A THEORY OF CONTRACT, WARRANTY, TORT (INCLUDING NEGLIGENCE OR STRICT
-+LIABILITY), PRODUCTS LIABILITY OR OTHERWISE, EVEN IF LICENSOR OR SUCH
-+CONTRIBUTOR HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES AND
-+NOTWITHSTANDING THE FAILURE OF ESSENTIAL PURPOSE OF ANY REMEDY. SOME
-+JURISDICTIONS DO NOT ALLOW THE LIMITATION OF LIABILITY OF INCIDENTAL OR
-+CONSEQUENTIAL DAMAGES, SO THIS LIMITATION MAY NOT APPLY TO YOU. In no event
-+shall Licensor's total liability to You for all damages (other than as may be
-+required by applicable law) under this License exceed the amount of ten dollars
-+($10.00).
-+
-+10. Ownership. Subject to the licenses granted under this License, each
-+Contributor retains all rights, title and interest in and to any Modifications
-+made by such Contributor. Licensor retains all rights, title and interest in and
-+to the Original Code and any Modifications made by or on behalf of Licensor
-+("Licensor Modifications"), and such Licensor Modifications will not be
-+automatically subject to this License. Licensor may, at its sole discretion,
-+choose to license such Licensor Modifications under this License, or on
-+different terms from those contained in this License or may choose not to
-+license them at all.
-+
-+11. Termination.
-+
-+11.1 Term and Termination. The term of this License is perpetual unless
-+terminated as provided below. This License and the rights granted hereunder will
-+terminate:
-+
-+(a) automatically without notice from Licensor if You fail to comply with any
-+term(s) of this License and fail to cure such breach within 30 days of becoming
-+aware of such breach;
-+
-+(b) immediately in the event of the circumstances described in Section 12.5(b);
-+or
-+
-+(c) automatically without notice from Licensor if You, at any time during the
-+term of this License, commence an action for patent infringement against
-+Licensor (including by cross-claim or counter claim in a lawsuit);
-+
-+(d) upon written notice from Licensor if You, at any time during the term of
-+this License, commence an action for patent infringement against any third party
-+alleging that the Covered Code itself (excluding combinations with other
-+software or hardware) infringes any patent (including by cross-claim or counter
-+claim in a lawsuit).
-+
-+11.2 Effect of Termination. Upon termination, You agree to immediately stop any
-+further use, reproduction, modification, sublicensing and distribution of the
-+Covered Code and to destroy all copies of the Covered Code that are in your
-+possession or control. All sublicenses to the Covered Code which have been
-+properly granted prior to termination shall survive any termination of this
-+License. Provisions which, by their nature, should remain in effect beyond the
-+termination of this License shall survive, including but not limited to Sections
-+3, 5, 8, 9, 10, 11, 12.2 and 13. No party will be liable to any other for
-+compensation, indemnity or damages of any sort solely as a result of terminating
-+this License in accordance with its terms, and termination of this License will
-+be without prejudice to any other right or remedy of any party.
-+
-+12. Miscellaneous.
-+
-+12.1 Government End Users. The Covered Code is a "commercial item" as defined in
-+FAR 2.101. Government software and technical data rights in the Covered Code
-+include only those rights customarily provided to the public as defined in this
-+License. This customary commercial license in technical data and software is
-+provided in accordance with FAR 12.211 (Technical Data) and 12.212 (Computer
-+Software) and, for Department of Defense purchases, DFAR 252.227-7015 (Technical
-+Data -- Commercial Items) and 227.7202-3 (Rights in Commercial Computer Software
-+or Computer Software Documentation). Accordingly, all U.S. Government End Users
-+acquire Covered Code with only those rights set forth herein.
-+
-+12.2 Relationship of Parties. This License will not be construed as creating an
-+agency, partnership, joint venture or any other form of legal association
-+between or among You, Licensor or any Contributor, and You will not represent to
-+the contrary, whether expressly, by implication, appearance or otherwise.
-+
-+12.3 Independent Development. Nothing in this License will impair Licensor's
-+right to acquire, license, develop, have others develop for it, market and/or
-+distribute technology or products that perform the same or similar functions as,
-+or otherwise compete with, Modifications, Derivative Works, technology or
-+products that You may develop, produce, market or distribute.
-+
-+12.4 Waiver; Construction. Failure by Licensor or any Contributor to enforce any
-+provision of this License will not be deemed a waiver of future enforcement of
-+that or any other provision. Any law or regulation which provides that the
-+language of a contract shall be construed against the drafter will not apply to
-+this License.
-+
-+12.5 Severability. (a) If for any reason a court of competent jurisdiction finds
-+any provision of this License, or portion thereof, to be unenforceable, that
-+provision of the License will be enforced to the maximum extent permissible so
-+as to effect the economic benefits and intent of the parties, and the remainder
-+of this License will continue in full force and effect. (b) Notwithstanding the
-+foregoing, if applicable law prohibits or restricts You from fully and/or
-+specifically complying with Sections 2 and/or 3 or prevents the enforceability
-+of either of those Sections, this License will immediately terminate and You
-+must immediately discontinue any use of the Covered Code and destroy all copies
-+of it that are in your possession or control.
-+
-+12.6 Dispute Resolution. Any litigation or other dispute resolution between You
-+and Licensor relating to this License shall take place in the Seattle,
-+Washington, and You and Licensor hereby consent to the personal jurisdiction of,
-+and venue in, the state and federal courts within that District with respect to
-+this License. The application of the United Nations Convention on Contracts for
-+the International Sale of Goods is expressly excluded.
-+
-+12.7 Export/Import Laws. This software is subject to all export and import laws
-+and restrictions and regulations of the country in which you receive the Covered
-+Code and You are solely responsible for ensuring that You do not export,
-+re-export or import the Covered Code or any direct product thereof in violation
-+of any such restrictions, laws or regulations, or without all necessary
-+authorizations.
-+
-+12.8 Entire Agreement; Governing Law. This License constitutes the entire
-+agreement between the parties with respect to the subject matter hereof. This
-+License shall be governed by the laws of the United States and the State of
-+Washington.
-+
-+Where You are located in the province of Quebec, Canada, the following clause
-+applies: The parties hereby confirm that they have requested that this License
-+and all related documents be drafted in English. Les parties ont exig&eacute;
-+que le pr&eacute;sent contrat et tous les documents connexes soient
-+r&eacute;dig&eacute;s en anglais.
-+
-+ EXHIBIT A.
-+
-+"Copyright &copy; 1995-2002
-+RealNetworks, Inc. and/or its licensors. All Rights Reserved.
-+
-+The contents of this file, and the files included with this file, are subject to
-+the current version of the RealNetworks Public Source License Version 1.0 (the
-+"RPSL") available at https://www.helixcommunity.org/content/rpsl unless you have
-+licensed the file under the RealNetworks Community Source License Version 1.0
-+(the "RCSL") available at https://www.helixcommunity.org/content/rcsl, in which
-+case the RCSL will apply. You may also obtain the license terms directly from
-+RealNetworks. You may not use this file except in compliance with the RPSL or,
-+if you have a valid RCSL with RealNetworks applicable to this file, the RCSL.
-+Please see the applicable RPSL or RCSL for the rights, obligations and
-+limitations governing use of the contents of the file.
-+
-+This file is part of the Helix DNA Technology. RealNetworks is the developer of
-+the Original code and owns the copyrights in the portions it created.
-+
-+This file, and the files included with this file, is distributed and made
-+available on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR
-+IMPLIED, AND REALNETWORKS HEREBY DISCLAIMS ALL SUCH WARRANTIES, INCLUDING
-+WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
-+PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
-+
-+Contributor(s): ____________________________________
-+
-+Technology Compatibility Kit Test
-+Suite(s) Location (if licensed under the RCSL): ______________________________
-+
-+Object Code Notice: Helix DNA Client technology included. Copyright (c)
-+RealNetworks, Inc., 1995-2002. All rights reserved.
-+
-+
-+ EXHIBIT B
-+
-+Compatible Source Licenses for the RealNetworks Public Source License. The
-+following list applies to the most recent version of the license as of October
-+25, 2002, unless otherwise indicated.
-+
-+* Academic Free License
-+* Apache Software License
-+* Apple Public Source License
-+* Artistic license
-+* Attribution Assurance Licenses
-+* BSD license
-+* Common Public License (1)
-+* Eiffel Forum License
-+* GNU General Public License (GPL) (1)
-+* GNU Library or "Lesser" General Public License (LGPL) (1)
-+* IBM Public License
-+* Intel Open Source License
-+* Jabber Open Source License
-+* MIT license
-+* MITRE Collaborative Virtual Workspace License (CVW License)
-+* Motosoto License
-+* Mozilla Public License 1.0 (MPL)
-+* Mozilla Public License 1.1 (MPL)
-+* Nokia Open Source License
-+* Open Group Test Suite License
-+* Python Software Foundation License
-+* Ricoh Source Code Public License
-+* Sun Industry Standards Source License (SISSL)
-+* Sun Public License
-+* University of Illinois/NCSA Open Source License
-+* Vovida Software License v. 1.0
-+* W3C License
-+* X.Net License
-+* Zope Public License
-+* zlib/libpng license
-+
-+(1) Note: because this license contains certain reciprocal licensing terms that
-+purport to extend to independently developed code, You may be prohibited under
-+the terms of this otherwise compatible license from using code licensed under
-+its terms with Covered Code because Covered Code may only be licensed under the
-+RealNetworks Public Source License. Any attempt to apply non RPSL license terms,
-+including without limitation the GPL, to Covered Code is expressly forbidden.
-+You are responsible for ensuring that Your use of Compatible Source Licensed
-+code does not violate either the RPSL or the Compatible Source License.
-+
-+The latest version of this list can be found at:
-+https://www.helixcommunity.org/content/complicense
-+
-+ EXHIBIT C
-+
-+RealNetworks' Trademark policy.
-+
-+RealNetworks defines the following trademarks collectively as "Licensor
-+Trademarks": "RealNetworks", "RealPlayer", "RealJukebox", "RealSystem",
-+"RealAudio", "RealVideo", "RealOne Player", "RealMedia", "Helix" or any other
-+trademarks or trade names belonging to RealNetworks.
-+
-+RealNetworks "Licensor Trademark Policy" forbids any use of Licensor Trademarks
-+except as permitted by and in strict compliance at all times with RealNetworks'
-+third party trademark usage guidelines which are posted at
-+http://www.realnetworks.com/info/helixlogo.html.
-+
-Index: helix-libs/clientapps/clutter/Umakefil
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ helix-libs/clientapps/clutter/Umakefil 2008-10-13 06:05:49.000000000 -0700
-@@ -0,0 +1,325 @@
-+#
-+# ***** BEGIN LICENSE BLOCK *****
-+# Version: RCSL 1.0/RPSL 1.0
-+#
-+# Portions Copyright (c) 1995-2002 RealNetworks, Inc. All Rights Reserved.
-+#
-+# The contents of this file, and the files included with this file, are
-+# subject to the current version of the RealNetworks Public Source License
-+# Version 1.0 (the "RPSL") available at
-+# http://www.helixcommunity.org/content/rpsl unless you have licensed
-+# the file under the RealNetworks Community Source License Version 1.0
-+# (the "RCSL") available at http://www.helixcommunity.org/content/rcsl,
-+# in which case the RCSL will apply. You may also obtain the license terms
-+# directly from RealNetworks. You may not use this file except in
-+# compliance with the RPSL or, if you have a valid RCSL with RealNetworks
-+# applicable to this file, the RCSL. Please see the applicable RPSL or
-+# RCSL for the rights, obligations and limitations governing use of the
-+# contents of the file.
-+#
-+# This file is part of the Helix DNA Technology. RealNetworks is the
-+# developer of the Original Code and owns the copyrights in the portions
-+# it created.
-+#
-+# This file, and the files included with this file, is distributed and made
-+# available on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
-+# EXPRESS OR IMPLIED, AND REALNETWORKS HEREBY DISCLAIMS ALL SUCH WARRANTIES,
-+# INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY, FITNESS
-+# FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
-+#
-+# Technology Compatibility Kit Test Suite(s) Location:
-+# http://www.helixcommunity.org/content/tck
-+#
-+# Contributor(s):
-+#
-+# ***** END LICENSE BLOCK *****
-+#
-+
-+UmakefileVersion(2,2)
-+
-+project.AddModuleIncludes("common/include",
-+ "common/runtime/pub",
-+ "client/include",
-+ "client/common/system/pub",
-+ "client/common/container/pub",
-+ "client/audiosvc/pub",
-+ "common/container/pub",
-+ "video/sitelib/pub",
-+ "video/colconverter/pub",
-+ "video/sitelib/pub/platform/unix",
-+ "video/sitelib",
-+ "datatype/rm/include",
-+ "client/core")
-+
-+project.AddSources("player.cpp",
-+ "excontxt.cpp",
-+ "exsite.cpp",
-+ "exroot.cpp",
-+ "exadvsnk.cpp",
-+ "exerror.cpp",
-+ "iids.cpp",
-+ "exstateadvsnk.cpp",
-+ "excallback.cpp",
-+ "print.cpp")
-+
-+project.AddModuleLibraries(
-+ "common/runtime[runtlib]",
-+ "common/system[syslib]",
-+ "common/container[contlib]",
-+ "common/runtime[runtlib]",
-+ "client/common/system[sysclntlib]",
-+ "common/dbgtool[debuglib]",
-+ "common/util[utillib]",
-+ "video/sitelib[sitelib]",
-+ "video/sitelib[sitecreatelib]",
-+ "common/log/logutil[logutillib]",
-+ "video/vidutil[vidutillib]"
-+ )
-+project.AddSystemLibraries('Xv', 'Xext')
-+
-+if project.IsDefined("HELIX_FEATURE_PREFERENCES"):
-+ project.AddSources("preflist.cpp")
-+
-+if project.IsDefined("HELIX_FEATURE_AUTHENTICATION"):
-+ project.AddSources("exaumgr.cpp")
-+
-+if project.IsDefined("HELIX_FEATURE_VIDEO"):
-+ project.AddSources("exsitsup.cpp",
-+ "fivemmap.cpp")
-+ project.AddModuleIncludes('video/include')
-+ if project.IsDefined("HELIX_FEATURE_PNG"):
-+ project.AddModuleIncludes('datatype/image/png/common/pub')
-+ project.AddModuleLibraries("common/import/zlib[zlib]",
-+ "datatype/image/png/import/libpng[libpng]",
-+ "datatype/image/png/common[pngcomlib]")
-+
-+if project.IsDefined("HELIX_FEATURE_PROGRESSIVE_DOWNLD_STATUS"):
-+ project.AddSources("exprdnld.cpp")
-+
-+if project.BuildOption("nodll"):
-+ ## Client core
-+ static_plugin_list = ["clntcore"]
-+ project.AddModuleLibraries("common/runtime[runtlib]",
-+ "common/fileio[fileiolib]",
-+ "client/common/system[sysclntlib]",
-+ "client/common/container[contclntlib]",
-+ "client/core[clntcorelib]")
-+ if not project.IsDefined("HELIX_FEATURE_LOGLEVEL_NONE"):
-+ project.AddModuleLibraries("common/log/logutil[logutillib]")
-+ if not project.IsDefined("HELIX_CONFIG_MINIMIZE_SIZE"):
-+ project.AddModuleLibraries("client/common/util[utlclntlib]")
-+ ## Client core libraries
-+ if project.IsDefined("HELIX_FEATURE_AUDIO"):
-+ project.AddModuleLibraries("audio/device[auddevlib]",
-+ "client/audiosvc[audsvclib]")
-+ if ('HELIX_FEATURE_VOLUME' in project.defines):
-+ project.AddModuleLibraries("audio/gaintool[audgainlib]" )
-+ if ('HELIX_FEATURE_VOLUME' in project.defines):
-+ project.AddModuleLibraries("audio/crossfade[audxfadelib]")
-+ if project.IsDefined("HELIX_FEATURE_MIXER"):
-+ project.AddModuleLibraries("audio/mixer[audmixlib]")
-+ if project.IsDefined("HELIX_FEATURE_RESAMPLER"):
-+ project.AddModuleLibraries("audio/resampler[audresamplib]")
-+ if project.IsDefined("HELIX_FEATURE_LIMITER"):
-+ project.AddModuleLibraries("audio/limiter[audlimiter]")
-+
-+ if project.IsDefined("HELIX_FEATURE_VIDEO"):
-+ project.AddModuleLibraries("client/videosvc[vidsvclib]",
-+ "protocol/sdp[sdplib]")
-+ if project.IsDefined("HELIX_FEATURE_PLAYBACK_NET"):
-+ project.AddModuleLibraries("client/netwksvc[netsvclib]",
-+ "common/netio[netiolib]",
-+ "client/common/netio[netioclntlib]",
-+ "protocol/transport/common/system[systranlib]",
-+ "protocol/transport/rtp[rtptranlib]",
-+ "protocol/common/util[protutillib]",
-+ "protocol/rtsp[rtsplib]")
-+ if project.IsDefined("HELIX_FEATURE_RDT"):
-+ project.AddLibraries(GetSDKPath("prtclrdt_lib"))
-+ project.AddModuleLibraries("protocol/transport/rdt[rdttranlib]")
-+ if project.IsDefined("HELIX_FEATURE_PNA"):
-+ project.AddLibraries(GetSDKPath("prtclpna_lib"))
-+ if project.IsDefined("HELIX_FEATURE_XMLPARSER"):
-+ project.AddModuleLibraries("common/lang/xml[xmllib]")
-+ ## Add RAM file format and renderer
-+ if project.IsDefined("HELIX_FEATURE_META"):
-+ static_plugin_list[-1:-1] = ["ramfformat", "ramrender"]
-+ project.AddModuleLibraries("datatype/ram/renderer[ramrendrlib]")
-+ ## Add local file system
-+ if project.IsDefined("HELIX_FEATURE_PLAYBACK_LOCAL"):
-+ static_plugin_list[-1:-1] = ["smplfsys"]
-+ project.AddModuleLibraries("common/fileio[fileiolib]")
-+ ## Add http file system
-+ if project.IsDefined("HELIX_FEATURE_PLAYBACK_NET"):
-+ static_plugin_list[-1:-1] = ["hxsdp", "httpfsys"]
-+ project.AddModuleLibraries("protocol/http[httplib]",
-+ "protocol/common/util[protutillib]",
-+ "protocol/sdp[sdplib]",
-+ "filesystem/data[datafsys]",
-+ "common/fileio[fileiolib]",
-+ "common/import/zlib[zlib]")
-+ ## Add realmedia file format
-+ if project.IsDefined("HELIX_FEATURE_PLAYBACK_LOCAL") and \
-+ (project.IsDefined("HELIX_FEATURE_AUDIO_REAL") or \
-+ project.IsDefined("HELIX_FEATURE_VIDEO_REAL")):
-+ static_plugin_list[-1:-1] = ["rmfformat"]
-+ project.AddModuleLibraries("datatype/common/util[dtutillib]",
-+ "datatype/common/container[dtcomcontlib]")
-+ project.AddLibraries(GetSDKPath("rmcom_lib"),
-+ GetSDKPath("rmacom_lib"),
-+ GetSDKPath("rmff_lib"),
-+ GetSDKPath("rmvidpyld_lib"))
-+
-+ ## Add realmedia renderer
-+ if project.IsDefined("HELIX_FEATURE_AUDIO_REAL"):
-+ static_plugin_list[-1:-1] = ["rarender"]
-+ project.AddModuleLibraries("datatype/rm/audio/payload[rapayld]")
-+ project.AddLibraries(GetSDKPath("rmarend_lib"),
-+ GetSDKPath("rmacom_lib"))
-+ ## Add mp3 file format and renderer
-+ if project.IsDefined("HELIX_FEATURE_AUDIO_MPA_LAYER3") or \
-+ project.IsDefined("HELIX_FEATURE_AUDIO_MPA_LAYER2") or \
-+ project.IsDefined("HELIX_FEATURE_AUDIO_MPA_LAYER1"):
-+ static_plugin_list[-1:-1] = ["mp3render"]
-+ project.AddModuleLibraries("datatype/mp3/codec/fltpt[mp3codecfltpt]",
-+ "datatype/mp3/common[mp3lib]",
-+ "datatype/mp3/payload[mp3payld]",
-+ "datatype/common/util[dtutillib]")
-+ if project.IsDefined("HELIX_FEATURE_PLAYBACK_LOCAL"):
-+ static_plugin_list[-1:-1] = ["mp3fformat"]
-+ project.AddModuleLibraries("datatype/mp3/common[mp3lib]")
-+ ## Add gecko realmedia codec
-+ if project.IsDefined("HELIX_FEATURE_AUDIO_CODEC_GECKO"):
-+ static_plugin_list[-1:-1] = ["cook"]
-+ if not project.IsDefined("HELIX_CONFIG_FIXEDPOINT"):
-+ project.AddLibraries(GetSDKPath("ra8lbrdec_flt_lib"))
-+ else:
-+ project.AddLibraries(GetSDKPath("ra8lbrdec_fix_lib"))
-+ project.AddModuleLibraries("datatype/rm/audio/codec/common[racompat]")
-+ ## Add RAAC codec
-+ if project.IsDefined("HELIX_FEATURE_AUDIO_CODEC_RAAC"):
-+ static_plugin_list[-1:-1] = ["raac"]
-+ project.AddModuleLibraries("datatype/mp4/common[mp4comlib]",
-+ "datatype/aac/codec/fixpt/decoder/hxwrap[aacdeclib]")
-+ ## Add sipro realmedia codec
-+ ## (Right now this only works for floating-point platforms)
-+ if project.IsDefined("HELIX_FEATURE_AUDIO_CODEC_SIPRO"):
-+ static_plugin_list[-1:-1] = ["sipr"]
-+ project.AddLibraries(GetSDKPath("sipro_flt_backend_lib"))
-+ ## Add tokyo realmedia codec
-+ if project.IsDefined("HELIX_FEATURE_AUDIO_CODEC_TOKYO"):
-+ static_plugin_list[-1:-1] = ["atrc"]
-+ project.AddLibraries(GetSDKPath("ra8hbr_lib"))
-+ ##
-+ if project.IsDefined("HELIX_FEATURE_VIDEO"):
-+ static_plugin_list[-1:-1] = ["vidsite"]
-+ static_plugin_list[-1:-1] = ["hxltcolor"]
-+ project.AddModuleLibraries("datatype/common/vidrend[vidrend]",
-+ "video/sitelib[sitelib]",
-+ "video/site[vidsite]",
-+ "video/colconverter[hxltcolor]",
-+ "datatype/rm/common[rmcomlib]",
-+ "video/vidutil[vidutillib]")
-+
-+ if (project.IsDefined('HELIX_FEATURE_ALTERNATE_SITE_CREATE_LIB')):
-+ project.AddLibraries(GetSDKPath("sitecreate_lib"))
-+ else:
-+ project.AddModuleLibraries('video/sitelib[sitecreatelib]')
-+
-+ ## Add realvideo renderer
-+ if project.IsDefined("HELIX_FEATURE_VIDEO_REAL"):
-+ project.AddModuleLibraries("datatype/rm/video/renderer[rvxrendlib]")
-+ project.AddLibraries(GetSDKPath("rmvidcom_lib"),
-+ GetSDKPath("rmvidpyld_lib"),
-+ GetSDKPath("rvcodcom_lib"))
-+ project.AddModuleLibraries("datatype/common/util[dtutillib]")
-+ static_plugin_list[-1:-1] = ["rvrender"]
-+
-+ ## Add mpeg4 file format
-+ if project.IsDefined("HELIX_FEATURE_PLAYBACK_LOCAL")and \
-+ (project.IsDefined("HELIX_FEATURE_VIDEO_H263") or \
-+ project.IsDefined("HELIX_FEATURE_VIDEO_MPEG4") or \
-+ project.IsDefined("HELIX_FEATURE_AUDIO_MPEG4")):
-+ static_plugin_list[-1:-1] = ["mp4fformat"]
-+ project.AddModuleLibraries("datatype/common/util[dtutillib]",
-+ "datatype/common/audrend",
-+ "datatype/mp4/common[mp4comlib]",
-+ "datatype/mp4/payload[mp4pyldlib]",
-+ "datatype/mp4/fileformat[mp4fformatlib]")
-+ if not project.IsDefined("HELIX_FEATURE_MP4_FILEFORMAT_M4A_ONLY"):
-+ project.AddModuleLibraries("protocol/sdp[sdplib]",
-+ "protocol/rtsp[rtsplib]",
-+ "protocol/common/util[protutillib]",
-+ "datatype/rm/common[rmcomlib]",
-+ "datatype/amr/common[amrcomlib]")
-+ ## Add h.263 renderer
-+ if project.IsDefined("HELIX_FEATURE_VIDEO_H263"):
-+ project.AddModuleLibraries("datatype/h263/payload[h263pyldlib]")
-+ static_plugin_list[-1:-1] = ["h263render"]
-+ ## Add MPEG4 renderer
-+# if project.IsDefined("HELIX_FEATURE_VIDEO_MPEG4"):
-+# static_plugin_list[-1:-1] = ["mp4xrender"]
-+ ## Add mpeg 4 audio renderer
-+ if project.IsDefined("HELIX_FEATURE_AUDIO_MPEG4"):
-+ static_plugin_list[-1:-1] = ["mp4arender"]
-+ project.AddModuleLibraries("datatype/mp4/audio/renderer[mp4arenderlib]")
-+ if not project.IsDefined("HELIX_FEATURE_MP4_FILEFORMAT_M4A_ONLY"):
-+ project.AddModuleLibraries("datatype/amr/common[amrcomlib]")
-+ ## Add RV10 codec
-+ if project.IsDefined("HELIX_FEATURE_VIDEO_CODEC_RV10"):
-+ project.AddLibraries(GetSDKPath("rv1dec_libs")+"[rv10lib]",
-+ GetSDKPath("rv1dec_libs")+"[drv1lib]")
-+ static_plugin_list[-1:-1] = ["rv10", "drv1"]
-+ ## Add RV20 codec
-+ if project.IsDefined("HELIX_FEATURE_VIDEO_CODEC_RV20"):
-+ project.AddLibraries(GetSDKPath("rvg2dec_libs")+"[rv20lib]",
-+ GetSDKPath("rvg2dec_libs")+"[drv2lib]")
-+ static_plugin_list[-1:-1] = ["rv20", "drv2"]
-+
-+ if project.IsDefined("HELIX_FEATURE_VIDEO_CODEC_RV30") or \
-+ project.IsDefined("HELIX_FEATURE_VIDEO_CODEC_RV40"):
-+ static_plugin_list[-1:-1] = ["drvc"]
-+ if project.IsDefined("HELIX_FEATURE_ANSIC_RV89COMBO"):
-+ project.AddLibraries(GetSDKPath("rv89combo_c_libs")+"[drvc]")
-+ else:
-+ project.AddLibraries(GetSDKPath("rv89combo_libs")+"[drvclib]")
-+
-+ if project.IsDefined("HELIX_FEATURE_VIDEO_CODEC_RV30"):
-+ static_plugin_list[-1:-1] = ["rv30"]
-+ project.AddLibraries(GetSDKPath("rv89combo_libs")+"[rv3xlib]")
-+ project.AddModuleLibraries("datatype/rm/video/codec/rv89combo[rv30]")
-+
-+ if project.IsDefined("HELIX_FEATURE_VIDEO_CODEC_RV40"):
-+ static_plugin_list[-1:-1] = ["rv40"]
-+ project.AddLibraries(GetSDKPath("rv89combo_libs")+"[rv4xlib]")
-+ project.AddModuleLibraries("datatype/rm/video/codec/rv89combo[rv40]")
-+
-+# if project.IsDefined("HELIX_FEATURE_AUDIO_CODEC_AAC"):
-+# static_plugin_list[-1:-1] = ["aac4"]
-+
-+ CreateStaticPluginTable(static_plugin_list)
-+
-+project.ExportFunction("init_main", "void")
-+project.ExportFunction("deinit_main", "void")
-+project.ExportFunction("get_player", "void **ppPlayer",
-+ "on_buffering_cb_t on_buffering_cb",
-+ "on_pos_length_cb_t on_pos_length_cb")
-+project.ExportFunction("player_openurl", "void *pPlayerHandle",
-+ "char *pszRawURL")
-+project.ExportFunction("put_player", "void *pPlayerHandle")
-+project.ExportFunction("player_geturl", "void *pPlayerHandle", "char **pszURL")
-+project.ExportFunction("player_begin", "void *pPlayerHandle")
-+project.ExportFunction("player_stop", "void *pPlayerHandle")
-+project.ExportFunction("player_pause", "void *pPlayerHandle")
-+project.ExportFunction("player_seek", "void *pPlayerHandle", "int pos")
-+project.ExportFunction("get_curr_playtime", "void *pPlayerHandle")
-+project.ExportFunction("player_getvolume", "void *pPlayerHandle")
-+project.ExportFunction("player_canseek", "void *pPlayerHandle")
-+project.ExportFunction("player_setvolume", "void *pPlayerHandle", "unsigned short volumn")
-+
-+
-+
-+DLLTarget('libhelix-player')
-+
-+DependTarget()
-+
-Index: helix-libs/clientapps/clutter/exabd.cpp
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ helix-libs/clientapps/clutter/exabd.cpp 2008-10-13 06:05:49.000000000 -0700
-@@ -0,0 +1,245 @@
-+/* ***** BEGIN LICENSE BLOCK *****
-+ * Version: RCSL 1.0/RPSL 1.0
-+ *
-+ * Portions Copyright (c) 1995-2002 RealNetworks, Inc. All Rights Reserved.
-+ *
-+ * The contents of this file, and the files included with this file, are
-+ * subject to the current version of the RealNetworks Public Source License
-+ * Version 1.0 (the "RPSL") available at
-+ * http://www.helixcommunity.org/content/rpsl unless you have licensed
-+ * the file under the RealNetworks Community Source License Version 1.0
-+ * (the "RCSL") available at http://www.helixcommunity.org/content/rcsl,
-+ * in which case the RCSL will apply. You may also obtain the license terms
-+ * directly from RealNetworks. You may not use this file except in
-+ * compliance with the RPSL or, if you have a valid RCSL with RealNetworks
-+ * applicable to this file, the RCSL. Please see the applicable RPSL or
-+ * RCSL for the rights, obligations and limitations governing use of the
-+ * contents of the file.
-+ *
-+ * This file is part of the Helix DNA Technology. RealNetworks is the
-+ * developer of the Original Code and owns the copyrights in the portions
-+ * it created.
-+ *
-+ * This file, and the files included with this file, is distributed and made
-+ * available on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
-+ * EXPRESS OR IMPLIED, AND REALNETWORKS HEREBY DISCLAIMS ALL SUCH WARRANTIES,
-+ * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY, FITNESS
-+ * FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
-+ *
-+ * Technology Compatibility Kit Test Suite(s) Location:
-+ * http://www.helixcommunity.org/content/tck
-+ *
-+ * Contributor(s):
-+ *
-+ * ***** END LICENSE BLOCK ***** */
-+
-+#include <stdio.h>
-+
-+#include "hxtypes.h"
-+
-+#include "hxcom.h"
-+#include "hxcomm.h"
-+#include "hxmon.h"
-+#include "hxcore.h"
-+#include "hxengin.h"
-+#include "chxpckts.h"
-+#include "hxclsnk.h"
-+#include "hxstrutl.h"
-+#include "exabd.h"
-+
-+#include "print.h"
-+
-+#include "globals.h"
-+
-+struct _stGlobals*& GetGlobal(); //in main.cpp
-+
-+ExampleABD::ExampleABD(IUnknown* pUnknown)
-+ : m_lRefCount (0)
-+ , m_pUnknown (NULL)
-+ , m_ulABDStartTime(0)
-+ , m_ulABDResult(0)
-+ , m_bABDDone(FALSE)
-+{
-+ if (pUnknown)
-+ {
-+ m_pUnknown = pUnknown;
-+ m_pUnknown->AddRef();
-+ }
-+}
-+
-+ExampleABD::~ExampleABD(void)
-+{
-+ HX_RELEASE(m_pUnknown);
-+}
-+
-+
-+// *** IUnknown methods ***
-+
-+/////////////////////////////////////////////////////////////////////////
-+// Method:
-+// IUnknown::QueryInterface
-+// Purpose:
-+// Implement this to export the interfaces supported by your
-+// object.
-+//
-+STDMETHODIMP ExampleABD::QueryInterface(REFIID riid, void** ppvObj)
-+{
-+ if (IsEqualIID(riid, IID_IUnknown))
-+ {
-+ AddRef();
-+ *ppvObj = (IUnknown*)(IHXAutoBWCalibrationAdviseSink*)this;
-+ return HXR_OK;
-+ }
-+ else if (IsEqualIID(riid, IID_IHXAutoBWCalibrationAdviseSink))
-+ {
-+ AddRef();
-+ *ppvObj = (IHXAutoBWCalibrationAdviseSink*)this;
-+ return HXR_OK;
-+ }
-+
-+ *ppvObj = NULL;
-+ return HXR_NOINTERFACE;
-+}
-+
-+/////////////////////////////////////////////////////////////////////////
-+// Method:
-+// IUnknown::AddRef
-+// Purpose:
-+// Everyone usually implements this the same... feel free to use
-+// this implementation.
-+//
-+STDMETHODIMP_(ULONG32) ExampleABD::AddRef()
-+{
-+ return InterlockedIncrement(&m_lRefCount);
-+}
-+
-+/////////////////////////////////////////////////////////////////////////
-+// Method:
-+// IUnknown::Release
-+// Purpose:
-+// Everyone usually implements this the same... feel free to use
-+// this implementation.
-+//
-+STDMETHODIMP_(ULONG32) ExampleABD::Release()
-+{
-+ if (InterlockedDecrement(&m_lRefCount) > 0)
-+ {
-+ return m_lRefCount;
-+ }
-+
-+ delete this;
-+ return 0;
-+}
-+
-+/*
-+ * IHXAutoBWCalibrationAdviseSink methods
-+ */
-+STDMETHODIMP
-+ExampleABD::AutoBWCalibrationStarted (const char* pszServer)
-+{
-+ if (pszServer)
-+ {
-+ STDOUT("ABD: contacting %s\n", pszServer);
-+ }
-+
-+ return HXR_OK;
-+}
-+
-+STDMETHODIMP
-+ExampleABD::AutoBWCalibrationDone(HX_RESULT status,
-+ UINT32 ulBW)
-+{
-+ m_bABDDone = TRUE;
-+
-+ if (HXR_OK == status)
-+ {
-+ m_ulABDResult = ulBW;
-+ STDOUT("ABD: %lu(Kbps) %lu(ms)\n", ulBW, GetTickCount() - m_ulABDStartTime);
-+ }
-+ else
-+ {
-+ STDOUT("ABD failed: %lu\n", status);
-+ }
-+
-+ return HXR_OK;
-+}
-+
-+HX_RESULT
-+ExampleABD::DoABD(const char* pszServer,
-+ UINT32 mode,
-+ UINT32 packetSize,
-+ UINT32 packetNum)
-+{
-+ HX_RESULT rc = HXR_OK;
-+ UINT32 length = 0;
-+ IHXAutoBWCalibration* pABD = NULL;
-+ IHXValues* pValues = NULL;
-+ IHXBuffer* pBuffer = NULL;
-+
-+ m_ulABDStartTime = GetTickCount();
-+ m_ulABDResult = 0;
-+ m_bABDDone = FALSE;
-+
-+ if (m_pUnknown &&
-+ HXR_OK == m_pUnknown->QueryInterface(IID_IHXAutoBWCalibration, (void**)&pABD))
-+ {
-+ pValues = (IHXValues*) new CHXHeader();
-+ pValues->AddRef();
-+
-+ pBuffer = (IHXBuffer*) new CHXBuffer();
-+ pBuffer->AddRef();
-+
-+ pBuffer->Set((UCHAR*)pszServer, strlen(pszServer)+1);
-+ pValues->SetPropertyCString("ABDServers", pBuffer);
-+
-+ pValues->SetPropertyULONG32("AutoBWDetectionMode", mode);
-+ pValues->SetPropertyULONG32("AutoBWDetectionPacketSize", packetSize);
-+ pValues->SetPropertyULONG32("AutoBWDetectionPackets", packetNum);
-+
-+ pABD->AddAutoBWCalibrationSink((IHXAutoBWCalibrationAdviseSink*)this);
-+ pABD->InitAutoBWCalibration(pValues);
-+
-+ pABD->StartAutoBWCalibration();
-+
-+ while (!m_bABDDone)
-+ {
-+ MSG msg;
-+ DWORD starttime, endtime, i;
-+ BOOL sleep = TRUE;
-+ static const int checkinterval = 10;
-+
-+ starttime = GetTickCount();
-+ endtime = starttime + (20);
-+ i = 0;
-+ while (PeekMessage(&msg, NULL, 0, 0, PM_REMOVE))
-+ {
-+ DispatchMessage(&msg);
-+ if ((i % checkinterval) == 0)
-+ {
-+ if (GetTickCount() > endtime)
-+ break;
-+ ++i;
-+ }
-+ sleep = FALSE;
-+ }
-+
-+ if (sleep)
-+ Sleep(10);
-+ }
-+ }
-+
-+cleanup:
-+
-+ if (pABD)
-+ {
-+ pABD->RemoveAutoBWCalibrationSink((IHXAutoBWCalibrationAdviseSink*)this);
-+ }
-+
-+ HX_RELEASE(pBuffer);
-+ HX_RELEASE(pValues);
-+ HX_RELEASE(pABD);
-+
-+ return rc;
-+}
-+
-+
-Index: helix-libs/clientapps/clutter/exabd.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ helix-libs/clientapps/clutter/exabd.h 2008-10-13 06:05:49.000000000 -0700
-@@ -0,0 +1,85 @@
-+/* ***** BEGIN LICENSE BLOCK *****
-+ * Version: RCSL 1.0/RPSL 1.0
-+ *
-+ * Portions Copyright (c) 1995-2002 RealNetworks, Inc. All Rights Reserved.
-+ *
-+ * The contents of this file, and the files included with this file, are
-+ * subject to the current version of the RealNetworks Public Source License
-+ * Version 1.0 (the "RPSL") available at
-+ * http://www.helixcommunity.org/content/rpsl unless you have licensed
-+ * the file under the RealNetworks Community Source License Version 1.0
-+ * (the "RCSL") available at http://www.helixcommunity.org/content/rcsl,
-+ * in which case the RCSL will apply. You may also obtain the license terms
-+ * directly from RealNetworks. You may not use this file except in
-+ * compliance with the RPSL or, if you have a valid RCSL with RealNetworks
-+ * applicable to this file, the RCSL. Please see the applicable RPSL or
-+ * RCSL for the rights, obligations and limitations governing use of the
-+ * contents of the file.
-+ *
-+ * This file is part of the Helix DNA Technology. RealNetworks is the
-+ * developer of the Original Code and owns the copyrights in the portions
-+ * it created.
-+ *
-+ * This file, and the files included with this file, is distributed and made
-+ * available on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
-+ * EXPRESS OR IMPLIED, AND REALNETWORKS HEREBY DISCLAIMS ALL SUCH WARRANTIES,
-+ * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY, FITNESS
-+ * FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
-+ *
-+ * Technology Compatibility Kit Test Suite(s) Location:
-+ * http://www.helixcommunity.org/content/tck
-+ *
-+ * Contributor(s):
-+ *
-+ * ***** END LICENSE BLOCK ***** */
-+
-+#ifndef _EXAMPLEABD_
-+#define _EXAMPLEABD_
-+
-+struct IHXAutoBWCalibrationAdviseSink;
-+struct IUnknown;
-+
-+class ExampleABD : public IHXAutoBWCalibrationAdviseSink
-+{
-+ private:
-+ LONG32 m_lRefCount;
-+ IUnknown* m_pUnknown;
-+ UINT32 m_ulABDStartTime;
-+ UINT32 m_ulABDResult;
-+ BOOL m_bABDDone;
-+
-+ ~ExampleABD();
-+
-+ public:
-+
-+ ExampleABD(IUnknown* /*IN*/ pUnknown);
-+
-+ /*
-+ * IUnknown methods
-+ */
-+ STDMETHOD(QueryInterface) (THIS_
-+ REFIID riid,
-+ void** ppvObj);
-+
-+ STDMETHOD_(ULONG32,AddRef) (THIS);
-+
-+ STDMETHOD_(ULONG32,Release) (THIS);
-+
-+ /*
-+ * IHXAutoBWCalibrationAdviseSink methods
-+ */
-+ STDMETHOD(AutoBWCalibrationStarted) (THIS_
-+ const char* pszServer);
-+ STDMETHOD(AutoBWCalibrationDone) (THIS_
-+ HX_RESULT status,
-+ UINT32 ulBW);
-+
-+ HX_RESULT DoABD(const char* pszServer,
-+ UINT32 mode,
-+ UINT32 packetSize,
-+ UINT32 packetNum);
-+
-+ UINT32 GetABD(void) { return m_ulABDResult; };
-+};
-+
-+#endif /* _EXAMPLEABDSNK_ */
-Index: helix-libs/clientapps/clutter/exadvsnk.cpp
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ helix-libs/clientapps/clutter/exadvsnk.cpp 2008-10-13 06:05:49.000000000 -0700
-@@ -0,0 +1,1116 @@
-+/* ***** BEGIN LICENSE BLOCK *****
-+ * Version: RCSL 1.0/RPSL 1.0
-+ *
-+ * Portions Copyright (c) 1995-2002 RealNetworks, Inc. All Rights Reserved.
-+ *
-+ * The contents of this file, and the files included with this file, are
-+ * subject to the current version of the RealNetworks Public Source License
-+ * Version 1.0 (the "RPSL") available at
-+ * http://www.helixcommunity.org/content/rpsl unless you have licensed
-+ * the file under the RealNetworks Community Source License Version 1.0
-+ * (the "RCSL") available at http://www.helixcommunity.org/content/rcsl,
-+ * in which case the RCSL will apply. You may also obtain the license terms
-+ * directly from RealNetworks. You may not use this file except in
-+ * compliance with the RPSL or, if you have a valid RCSL with RealNetworks
-+ * applicable to this file, the RCSL. Please see the applicable RPSL or
-+ * RCSL for the rights, obligations and limitations governing use of the
-+ * contents of the file.
-+ *
-+ * This file is part of the Helix DNA Technology. RealNetworks is the
-+ * developer of the Original Code and owns the copyrights in the portions
-+ * it created.
-+ *
-+ * This file, and the files included with this file, is distributed and made
-+ * available on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
-+ * EXPRESS OR IMPLIED, AND REALNETWORKS HEREBY DISCLAIMS ALL SUCH WARRANTIES,
-+ * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY, FITNESS
-+ * FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
-+ *
-+ * Technology Compatibility Kit Test Suite(s) Location:
-+ * http://www.helixcommunity.org/content/tck
-+ *
-+ * Contributor(s):
-+ *
-+ * ***** END LICENSE BLOCK ***** */
-+
-+#include <stdio.h>
-+
-+#include "hxtypes.h"
-+
-+#include "hxcom.h"
-+#include "hxcomm.h"
-+#include "hxmon.h"
-+#include "hxcore.h"
-+#include "hxengin.h"
-+#include "hxclsnk.h"
-+#include "hxgroup.h"
-+#include "hxstrutl.h"
-+#include "exadvsnk.h"
-+#include "hxstring.h"
-+#include "hxprefs.h"
-+#include "excontxt.h"
-+
-+#include "print.h"
-+
-+#include "globals.h"
-+#include "player.h"
-+
-+struct _stGlobals*& GetGlobal(); //in main.cpp
-+
-+#ifdef __TCS__
-+extern unsigned long gStreamTime;
-+
-+static int iOpened = 0;
-+
-+
-+#if defined(__cplusplus)
-+extern "C" {
-+#endif /* defined(__cplusplus) */
-+
-+typedef enum hookBuffering {
-+ eContacting = 0,
-+ eConnecting = 1,
-+ eBuffering = 2,
-+ ePlaying = 3
-+}hookBuffering;
-+
-+void hookRealAudio_Buffering(hookBuffering connectState, int pct);
-+
-+void hookRealAudio_PlayPosition(unsigned long current,unsigned long duration);
-+
-+typedef enum hookState {
-+ ePlay = 0,
-+ ePause = 1,
-+ eStop = 2,
-+ eResume = 3,
-+ eComplete // Clip is done playing
-+}hookState;
-+void hookRealAudio_State(hookState newState);
-+
-+
-+#if defined(__cplusplus)
-+}
-+#endif /* defined(__cplusplus) */
-+
-+#endif // __TCS__
-+
-+void PrintBuffer(const char* pszName,const unsigned char* pbBuf, unsigned int dwBytes);
-+
-+ExampleClientAdviceSink::ExampleClientAdviceSink(IUnknown* pUnknown, LONG32 lClientIndex, on_buffering_cb_t on_buffering_cb, on_pos_length_cb_t on_pos_length_cb, void *context)
-+ : m_lRefCount (0)
-+ , m_lClientIndex (lClientIndex)
-+ , m_pUnknown (NULL)
-+ , m_pRegistry (NULL)
-+ , m_pScheduler (NULL)
-+ , m_lCurrentBandwidth(0)
-+ , m_lAverageBandwidth(0)
-+ , m_bOnStop(0)
-+ , m_pPlayer(0)
-+ , m_bWaitForTrackStart(0)
-+ , m_on_buffering_cb(on_buffering_cb)
-+ , m_on_pos_length_cb(on_pos_length_cb)
-+ , m_context(context)
-+{
-+ if (pUnknown)
-+ {
-+ m_pUnknown = pUnknown;
-+ m_pUnknown->AddRef();
-+
-+ if (HXR_OK != m_pUnknown->QueryInterface(IID_IHXRegistry, (void**)&m_pRegistry))
-+ {
-+ m_pRegistry = NULL;
-+ }
-+
-+ if (HXR_OK != m_pUnknown->QueryInterface(IID_IHXScheduler, (void**)&m_pScheduler))
-+ {
-+ m_pScheduler = NULL;
-+ }
-+
-+ IHXPlayer* pPlayer;
-+ if(HXR_OK == m_pUnknown->QueryInterface(IID_IHXPlayer,
-+ (void**)&pPlayer))
-+ {
-+ m_pPlayer = pPlayer;
-+
-+ IHXGroupManager* pGroupMgr = NULL;
-+ if(HXR_OK == m_pPlayer->QueryInterface(IID_IHXGroupManager,
-+ (void**)&pGroupMgr))
-+ {
-+ pGroupMgr->AddSink((IHXGroupSink*)this);
-+ pGroupMgr->Release();
-+ }
-+
-+ pPlayer->AddAdviseSink(this);
-+
-+ }
-+ }
-+
-+#ifdef __TCS__
-+ bEnableAdviceSink = TRUE;
-+ iOpened = 0;
-+#endif
-+}
-+
-+ExampleClientAdviceSink::~ExampleClientAdviceSink(void)
-+{
-+ if (m_pScheduler)
-+ {
-+ m_pScheduler->Release();
-+ m_pScheduler = NULL;
-+ }
-+
-+ if (m_pRegistry)
-+ {
-+ m_pRegistry->Release();
-+ m_pRegistry = NULL;
-+ }
-+
-+ if (m_pPlayer)
-+ {
-+ m_pPlayer->Release();
-+ m_pPlayer = NULL;
-+ }
-+ if (m_pUnknown)
-+ {
-+ m_pUnknown->Release();
-+ m_pUnknown = NULL;
-+ }
-+}
-+
-+
-+// *** IUnknown methods ***
-+
-+/////////////////////////////////////////////////////////////////////////
-+// Method:
-+// IUnknown::QueryInterface
-+// Purpose:
-+// Implement this to export the interfaces supported by your
-+// object.
-+//
-+STDMETHODIMP ExampleClientAdviceSink::QueryInterface(REFIID riid, void** ppvObj)
-+{
-+ if (IsEqualIID(riid, IID_IUnknown))
-+ {
-+ AddRef();
-+ *ppvObj = (IUnknown*)(IHXClientAdviseSink*)this;
-+ return HXR_OK;
-+ }
-+ else if (IsEqualIID(riid, IID_IHXClientAdviseSink))
-+ {
-+ AddRef();
-+ *ppvObj = (IHXClientAdviseSink*)this;
-+ return HXR_OK;
-+ }
-+ else if (IsEqualIID(riid, IID_IHXGroupSink))
-+ {
-+ AddRef();
-+ *ppvObj = (IHXGroupSink*)this;
-+ return HXR_OK;
-+ }
-+
-+ *ppvObj = NULL;
-+ return HXR_NOINTERFACE;
-+}
-+
-+/////////////////////////////////////////////////////////////////////////
-+// Method:
-+// IUnknown::AddRef
-+// Purpose:
-+// Everyone usually implements this the same... feel free to use
-+// this implementation.
-+//
-+STDMETHODIMP_(ULONG32) ExampleClientAdviceSink::AddRef()
-+{
-+ return InterlockedIncrement(&m_lRefCount);
-+}
-+
-+/////////////////////////////////////////////////////////////////////////
-+// Method:
-+// IUnknown::Release
-+// Purpose:
-+// Everyone usually implements this the same... feel free to use
-+// this implementation.
-+//
-+STDMETHODIMP_(ULONG32) ExampleClientAdviceSink::Release()
-+{
-+ if (InterlockedDecrement(&m_lRefCount) > 0)
-+ {
-+ return m_lRefCount;
-+ }
-+
-+ delete this;
-+ return 0;
-+}
-+
-+/*
-+ * IHXClientAdviseSink methods
-+ */
-+
-+/************************************************************************
-+ * Method:
-+ * IHXClientAdviseSink::OnPosLength
-+ * Purpose:
-+ * Called to advise the client that the position or length of the
-+ * current playback context has changed.
-+ */
-+
-+#ifdef __TCS__
-+static long lastPosition = -1;
-+#endif
-+
-+STDMETHODIMP
-+ExampleClientAdviceSink::OnPosLength(UINT32 ulPosition,
-+ UINT32 ulLength)
-+{
-+ // Are we doing a multi-seek?
-+ if (GetGlobal()->g_bMultiSeek)
-+ {
-+ // Have we run out of seek times?
-+ if (GetGlobal()->g_ulMultiSeekIndex < GetGlobal()->g_ulNumMultiSeeks)
-+ {
-+ STDOUT("Multi-seeking the first player to %lu\n",
-+ GetGlobal()->g_ulMultiSeekTime[GetGlobal()->g_ulMultiSeekIndex]);
-+ GetGlobal()->g_Players[0]->Seek(GetGlobal()->g_ulMultiSeekTime[GetGlobal()->g_ulMultiSeekIndex++]);
-+ }
-+ else
-+ {
-+ // We've run out - stop the multi-seek
-+ GetGlobal()->g_bMultiSeek = FALSE;
-+ GetGlobal()->g_ulNumMultiSeeks = 0;
-+ GetGlobal()->g_ulMultiSeekIndex = 0;
-+ }
-+ }
-+
-+ if (m_on_pos_length_cb)
-+ m_on_pos_length_cb(ulPosition, ulLength, m_context);
-+
-+ return HXR_OK;
-+}
-+
-+/************************************************************************
-+ * Method:
-+ * IHXClientAdviseSink::OnPresentationOpened
-+ * Purpose:
-+ * Called to advise the client a presentation has been opened.
-+ */
-+STDMETHODIMP ExampleClientAdviceSink::OnPresentationOpened()
-+{
-+#ifdef __TCS__
-+ iOpened = 1;
-+ lastPosition = -1;
-+#else
-+ if (GetGlobal()->bEnableAdviceSink)
-+ {
-+ STDOUT("OnPresentationOpened()\n");
-+ }
-+#if defined(HELIX_FEATURE_PLAYBACK_VELOCITY)
-+ // Try to get the IHXPlaybackVelocity interface
-+ // from the first player
-+ if (GetGlobal()->g_nPlayers > 0 && GetGlobal()->g_Players[0])
-+ {
-+ IHXPlaybackVelocity* pVel = NULL;
-+ HX_RESULT rv = GetGlobal()->g_Players[0]->QueryInterface(IID_IHXPlaybackVelocity, (void**) &pVel);
-+ if (SUCCEEDED(rv))
-+ {
-+ // Get the capabilities object from the player
-+ rv = pVel->QueryVelocityCaps(GetGlobal()->g_pVelocityCaps);
-+ if (SUCCEEDED(rv) && GetGlobal()->bEnableAdviceSink)
-+ {
-+ STDOUT("Available Velocity Ranges:");
-+ UINT32 ulNumRanges = GetGlobal()->g_pVelocityCaps->GetNumRanges();
-+ for (UINT32 i = 0; i < ulNumRanges && SUCCEEDED(rv); i++)
-+ {
-+ INT32 lMin = 0;
-+ INT32 lMax = 0;
-+ rv = GetGlobal()->g_pVelocityCaps->GetRange(i, lMin, lMax);
-+ if (SUCCEEDED(rv))
-+ {
-+ STDOUT(" [%ld,%ld]", lMin, lMax);
-+ }
-+ }
-+ STDOUT("\n");
-+ }
-+ }
-+ HX_RELEASE(pVel);
-+ }
-+#endif /* #if defined(HELIX_FEATURE_PLAYBACK_VELOCITY) */
-+#endif
-+
-+ UINT32 sourceCount = m_pPlayer->GetSourceCount();
-+ for (UINT32 sourceID = 0; sourceID < sourceCount; sourceID ++)
-+ {
-+ // get HXSource
-+ IUnknown* pUnkSource = NULL;
-+ IHXStreamSource* pStreamSrc = NULL;
-+
-+ if (HXR_OK != m_pPlayer->GetSource (sourceID, pUnkSource))
-+ {
-+ continue;
-+ }
-+
-+ pUnkSource->QueryInterface(IID_IHXStreamSource, (void **)&pStreamSrc);
-+
-+ HX_RELEASE(pUnkSource);
-+
-+ if (!pStreamSrc)
-+ {
-+ continue;
-+ }
-+
-+ UINT32 num_streams = pStreamSrc->GetStreamCount();
-+
-+ // get information from Streams
-+ for (UINT32 streamID = 0; streamID < num_streams ; streamID++)
-+ {
-+ IUnknown* pUnkStream = NULL;
-+
-+ if (HXR_OK == pStreamSrc->GetStream(streamID, pUnkStream))
-+ {
-+ IHXStream* pStream = NULL;
-+
-+ if (HXR_OK == pUnkStream->QueryInterface(IID_IHXStream,
-+ (void**)&pStream))
-+ {
-+ const char* pMimeType = pStream->GetStreamType();
-+ if( 0 == strcmp(pMimeType, "application/ram"))
-+ {
-+ m_bWaitForTrackStart = TRUE;
-+ }
-+ else
-+ {
-+ m_bWaitForTrackStart = FALSE;
-+ }
-+ }
-+ HX_RELEASE(pStream);
-+ }
-+ HX_RELEASE(pUnkStream);
-+ if (!m_bWaitForTrackStart)
-+ {
-+ break;
-+ }
-+ }
-+
-+ if (!m_bWaitForTrackStart)
-+ {
-+ break;
-+ }
-+ HX_RELEASE(pStreamSrc);
-+ }
-+
-+ if (!m_bWaitForTrackStart)
-+ {
-+ STDOUT("----------------clip info--------------------\n");
-+ if(m_pScheduler) {
-+ m_hCallback = m_pScheduler->RelativeEnter(this,50);
-+ }
-+ }
-+ return HXR_OK;
-+}
-+
-+
-+/************************************************************************
-+ * Method:
-+ * IHXClientAdviseSink::OnPresentationClosed
-+ * Purpose:
-+ * Called to advise the client a presentation has been closed.
-+ */
-+STDMETHODIMP ExampleClientAdviceSink::OnPresentationClosed()
-+{
-+#ifdef __TCS__
-+ iOpened = 0;
-+ lastPosition = -1;
-+#else
-+ if (GetGlobal()->bEnableAdviceSink)
-+ {
-+ STDOUT("OnPresentationClosed()\n");
-+ }
-+#endif
-+
-+ return HXR_OK;
-+}
-+
-+void ExampleClientAdviceSink::GetStatistics (char* pszRegistryKey)
-+{
-+ char szRegistryValue[MAX_DISPLAY_NAME] = {0}; /* Flawfinder: ignore */
-+ INT32 lValue = 0;
-+ INT32 i = 0;
-+ INT32 lStatistics = 8;
-+ UINT32 *plValue;
-+
-+#ifdef __TCS__
-+ return; // DISABLED FOR NOW
-+#endif
-+
-+ // collect statistic
-+ for (i = 0; i < lStatistics; i++)
-+ {
-+ plValue = NULL;
-+ switch (i)
-+ {
-+ case 0:
-+ SafeSprintf(szRegistryValue, MAX_DISPLAY_NAME, "%s.Normal", pszRegistryKey);
-+ break;
-+ case 1:
-+ SafeSprintf(szRegistryValue, MAX_DISPLAY_NAME, "%s.Recovered", pszRegistryKey);
-+ break;
-+ case 2:
-+ SafeSprintf(szRegistryValue, MAX_DISPLAY_NAME, "%s.Received", pszRegistryKey);
-+ break;
-+ case 3:
-+ SafeSprintf(szRegistryValue, MAX_DISPLAY_NAME, "%s.Lost", pszRegistryKey);
-+ break;
-+ case 4:
-+ SafeSprintf(szRegistryValue, MAX_DISPLAY_NAME, "%s.Late", pszRegistryKey);
-+ break;
-+ case 5:
-+ SafeSprintf(szRegistryValue, MAX_DISPLAY_NAME, "%s.ClipBandwidth", pszRegistryKey);
-+ break;
-+ case 6:
-+ SafeSprintf(szRegistryValue, MAX_DISPLAY_NAME, "%s.AverageBandwidth", pszRegistryKey);
-+ plValue = &m_lAverageBandwidth;
-+ break;
-+ case 7:
-+ SafeSprintf(szRegistryValue, MAX_DISPLAY_NAME, "%s.CurrentBandwidth", pszRegistryKey);
-+ plValue = &m_lCurrentBandwidth;
-+ break;
-+ default:
-+ break;
-+ }
-+
-+ m_pRegistry->GetIntByName(szRegistryValue, lValue);
-+ if (plValue)
-+ {
-+ if (m_bOnStop || lValue == 0)
-+ {
-+ lValue = *plValue;
-+ }
-+ else
-+ {
-+ *plValue = lValue;
-+ }
-+ }
-+ if (GetGlobal()->bEnableAdviceSink || (GetGlobal()->bEnableVerboseMode && m_bOnStop))
-+ {
-+ STDOUT("%s = %ld\n", szRegistryValue, lValue);
-+ }
-+ }
-+}
-+
-+void ExampleClientAdviceSink::GetAllStatistics(void)
-+{
-+ UINT32 unPlayerIndex = 0;
-+ UINT32 unSourceIndex = 0;
-+ UINT32 unStreamIndex = 0;
-+
-+ char* pszRegistryPrefix = "Statistics";
-+ char szRegistryName[MAX_DISPLAY_NAME] = {0}; /* Flawfinder: ignore */
-+
-+#ifdef __TCS__
-+ return; // DISABLED FOR NOW
-+#endif
-+
-+ // display the content of whole statistic registry
-+ if (m_pRegistry)
-+ {
-+ // ok, let's start from the top (player)
-+ SafeSprintf(szRegistryName, MAX_DISPLAY_NAME, "%s.Player%ld", pszRegistryPrefix, m_lClientIndex);
-+ if (PT_COMPOSITE == m_pRegistry->GetTypeByName(szRegistryName))
-+ {
-+ // display player statistic
-+ GetStatistics(szRegistryName);
-+
-+ SafeSprintf(szRegistryName, MAX_DISPLAY_NAME, "%s.Source%ld", szRegistryName, unSourceIndex);
-+ while (PT_COMPOSITE == m_pRegistry->GetTypeByName(szRegistryName))
-+ {
-+ // display source statistic
-+ GetStatistics(szRegistryName);
-+
-+ SafeSprintf(szRegistryName, MAX_DISPLAY_NAME, "%s.Stream%ld", szRegistryName, unStreamIndex);
-+ while (PT_COMPOSITE == m_pRegistry->GetTypeByName(szRegistryName))
-+ {
-+ // display stream statistic
-+ GetStatistics(szRegistryName);
-+
-+ unStreamIndex++;
-+
-+ SafeSprintf(szRegistryName, MAX_DISPLAY_NAME, "%s.Player%ld.Source%ld.Stream%ld",
-+ pszRegistryPrefix, unPlayerIndex, unSourceIndex, unStreamIndex);
-+ }
-+
-+ unSourceIndex++;
-+
-+ SafeSprintf(szRegistryName, MAX_DISPLAY_NAME, "%s.Player%ld.Source%ld",
-+ pszRegistryPrefix, unPlayerIndex, unSourceIndex);
-+ }
-+
-+ unPlayerIndex++;
-+
-+ SafeSprintf(szRegistryName, MAX_DISPLAY_NAME, "%s.Player%ld", pszRegistryPrefix, unPlayerIndex);
-+ }
-+ }
-+}
-+
-+/************************************************************************
-+ * Method:
-+ * IHXClientAdviseSink::OnStatisticsChanged
-+ * Purpose:
-+ * Called to advise the client that the presentation statistics
-+ * have changed.
-+ */
-+STDMETHODIMP ExampleClientAdviceSink::OnStatisticsChanged(void)
-+{
-+ char szBuff[1024]; /* Flawfinder: ignore */
-+ HX_RESULT res = HXR_OK;
-+ UINT16 uPlayer = 0;
-+
-+#ifdef __TCS__
-+ return HXR_OK; // DISABLED FOR NOW
-+#endif
-+
-+ if(GetGlobal()->bEnableAdviceSink)
-+ {
-+ STDOUT("OnStatisticsChanged():\n");
-+
-+ SafeSprintf(szBuff, 1024, "Statistics");
-+ res = DumpRegTree( szBuff );
-+ }
-+
-+ return HXR_OK;
-+}
-+
-+HX_RESULT ExampleClientAdviceSink::DumpRegTree(const char* pszTreeName )
-+{
-+ const char* pszName = NULL;
-+ ULONG32 ulRegID = 0;
-+ HX_RESULT res = HXR_OK;
-+ INT32 nVal = 0;
-+ IHXBuffer* pBuff = NULL;
-+ IHXValues* pValues = NULL;
-+
-+ //See if the name exists in the reg tree.
-+ res = m_pRegistry->GetPropListByName( pszTreeName, pValues);
-+ if( HXR_OK!=res || !pValues )
-+ return HXR_FAIL;
-+
-+ //make sure this is a PT_COMPOSITE type reg entry.
-+ if( PT_COMPOSITE != m_pRegistry->GetTypeByName(pszTreeName))
-+ return HXR_FAIL;
-+
-+ //Print out the value of each member of this tree.
-+ res = pValues->GetFirstPropertyULONG32( pszName, ulRegID );
-+ while( HXR_OK == res )
-+ {
-+ //We have at least one entry. See what type it is.
-+ HXPropType pt = m_pRegistry->GetTypeById(ulRegID);
-+ switch(pt)
-+ {
-+ case PT_COMPOSITE:
-+ DumpRegTree(pszName);
-+ break;
-+ case PT_INTEGER :
-+ nVal = 0;
-+ m_pRegistry->GetIntById( ulRegID, nVal );
-+ STDOUT("%s : %d\n", pszName, nVal );
-+ break;
-+ case PT_INTREF :
-+ nVal = 0;
-+ m_pRegistry->GetIntById( ulRegID, nVal );
-+ STDOUT("%s : %d\n", pszName, nVal );
-+ break;
-+ case PT_STRING :
-+ pBuff = NULL;
-+ m_pRegistry->GetStrById( ulRegID, pBuff );
-+ STDOUT("%s : \"", pszName );
-+ if( pBuff )
-+ STDOUT("%s", (const char *)(pBuff->GetBuffer()) );
-+ STDOUT("\"\n" );
-+ HX_RELEASE(pBuff);
-+ break;
-+ case PT_BUFFER :
-+ STDOUT("%s : BUFFER TYPE NOT SHOWN\n",
-+ pszName, nVal );
-+ break;
-+ case PT_UNKNOWN:
-+ STDOUT("%s Unkown registry type entry\n", pszName );
-+ break;
-+ default:
-+ STDOUT("%s Unkown registry type entry\n", pszName );
-+ break;
-+ }
-+ res = pValues->GetNextPropertyULONG32( pszName, ulRegID);
-+ }
-+
-+ HX_RELEASE( pValues );
-+
-+ return HXR_OK;
-+}
-+
-+
-+/************************************************************************
-+ * Method:
-+ * IHXClientAdviseSink::OnPreSeek
-+ * Purpose:
-+ * Called by client engine to inform the client that a seek is
-+ * about to occur. The render is informed the last time for the
-+ * stream's time line before the seek, as well as the first new
-+ * time for the stream's time line after the seek will be completed.
-+ *
-+ */
-+STDMETHODIMP ExampleClientAdviceSink::OnPreSeek( ULONG32 ulOldTime,
-+ ULONG32 ulNewTime)
-+{
-+#if !defined(__TCS__)
-+ if (GetGlobal()->bEnableAdviceSink)
-+ {
-+ STDOUT("OnPreSeek(%ld, %ld)\n", ulOldTime, ulNewTime);
-+ }
-+#endif
-+
-+ return HXR_OK;
-+}
-+
-+
-+/************************************************************************
-+ * Method:
-+ * IHXClientAdviseSink::OnPostSeek
-+ * Purpose:
-+ * Called by client engine to inform the client that a seek has
-+ * just occured. The render is informed the last time for the
-+ * stream's time line before the seek, as well as the first new
-+ * time for the stream's time line after the seek.
-+ *
-+ */
-+STDMETHODIMP ExampleClientAdviceSink::OnPostSeek( ULONG32 ulOldTime,
-+ ULONG32 ulNewTime)
-+{
-+#ifdef __TCS__
-+ lastPosition = -1;
-+#else
-+ if (GetGlobal()->bEnableAdviceSink)
-+ {
-+ STDOUT("OnPostSeek(%ld, %ld)\n", ulOldTime, ulNewTime);
-+ }
-+#endif
-+
-+ return HXR_OK;
-+}
-+
-+
-+/************************************************************************
-+ * Method:
-+ * IHXClientAdviseSink::OnStop
-+ * Purpose:
-+ * Called by client engine to inform the client that a stop has
-+ * just occured.
-+ *
-+ */
-+STDMETHODIMP ExampleClientAdviceSink::OnStop(void)
-+{
-+ HXTimeval now;
-+
-+#ifdef __TCS__
-+ hookRealAudio_State(eStop);
-+#else
-+ if (GetGlobal()->bEnableAdviceSink)
-+ {
-+ STDOUT("OnStop()\n");
-+ }
-+
-+ if (GetGlobal()->bEnableVerboseMode)
-+ {
-+ STDOUT("Player %ld stopped.\n", m_lClientIndex);
-+ m_bOnStop = TRUE;
-+ GetAllStatistics();
-+ }
-+#endif
-+
-+ // Find out the current time and subtract the beginning time to
-+ // figure out how many seconds we played
-+ now = m_pScheduler->GetCurrentSchedulerTime();
-+ m_ulStopTime = now.tv_sec;
-+
-+ GetGlobal()->g_ulNumSecondsPlayed = m_ulStopTime - m_ulStartTime;
-+
-+ return HXR_OK;
-+}
-+
-+/************************************************************************
-+ * Method:
-+ * IHXClientAdviseSink::OnPause
-+ * Purpose:
-+ * Called by client engine to inform the client that a pause has
-+ * just occured. The render is informed the last time for the
-+ * stream's time line before the pause.
-+ *
-+ */
-+STDMETHODIMP ExampleClientAdviceSink::OnPause(ULONG32 ulTime)
-+{
-+#ifdef __TCS__
-+ hookRealAudio_State(ePause);
-+#else
-+ if (GetGlobal()->bEnableAdviceSink)
-+ {
-+ STDOUT("OnPause(%ld)\n", ulTime);
-+ }
-+#endif
-+
-+ return HXR_OK;
-+}
-+
-+
-+/************************************************************************
-+ * Method:
-+ * IHXClientAdviseSink::OnBegin
-+ * Purpose:
-+ * Called by client engine to inform the client that a begin or
-+ * resume has just occured. The render is informed the first time
-+ * for the stream's time line after the resume.
-+ *
-+ */
-+STDMETHODIMP ExampleClientAdviceSink::OnBegin(ULONG32 ulTime)
-+{
-+ HXTimeval now;
-+
-+#if !defined(__TCS__)
-+ if (GetGlobal()->bEnableAdviceSink)
-+ {
-+ STDOUT("OnBegin(%ld)\n", ulTime);
-+ }
-+
-+ if (GetGlobal()->bEnableVerboseMode)
-+ {
-+ STDOUT("Player %ld beginning playback...\n", m_lClientIndex);
-+ }
-+#endif
-+
-+ GetGlobal()->g_bOnBeginOccurred = TRUE;
-+
-+ // Record the current time, so we can figure out many seconds we played
-+ now = m_pScheduler->GetCurrentSchedulerTime();
-+ m_ulStartTime = now.tv_sec;
-+
-+ return HXR_OK;
-+}
-+
-+
-+/************************************************************************
-+ * Method:
-+ * IHXClientAdviseSink::OnBuffering
-+ * Purpose:
-+ * Called by client engine to inform the client that buffering
-+ * of data is occuring. The render is informed of the reason for
-+ * the buffering (start-up of stream, seek has occured, network
-+ * congestion, etc.), as well as percentage complete of the
-+ * buffering process.
-+ *
-+ */
-+STDMETHODIMP ExampleClientAdviceSink::OnBuffering(ULONG32 ulFlags,
-+ UINT16 unPercentComplete)
-+{
-+#ifdef __TCS__
-+static UINT16 lastPct = 0;
-+ if (unPercentComplete > 0)
-+ {
-+ UINT16 nextPct = lastPct + 10;
-+ if (unPercentComplete < lastPct)
-+ {
-+ lastPct = 0;
-+ nextPct = lastPct + 10;
-+ }
-+ if (unPercentComplete >= nextPct)
-+ {
-+ lastPct = (unPercentComplete / 10) * 10;
-+ nextPct = lastPct + 10;
-+ hookRealAudio_Buffering(eBuffering,lastPct);
-+ }
-+ }
-+#else
-+ if (GetGlobal()->bEnableAdviceSink)
-+ {
-+ STDOUT("OnBuffering(%ld, %d)\n", ulFlags, unPercentComplete);
-+ }
-+#endif
-+ if (m_on_buffering_cb)
-+ m_on_buffering_cb(ulFlags, unPercentComplete, m_context);
-+
-+ return HXR_OK;
-+}
-+
-+
-+/************************************************************************
-+ * Method:
-+ * IHXClientAdviseSink::OnContacting
-+ * Purpose:
-+ * Called by client engine to inform the client is contacting
-+ * hosts(s).
-+ *
-+ */
-+STDMETHODIMP ExampleClientAdviceSink::OnContacting(const char* pHostName)
-+{
-+#ifdef __TCS__
-+ printf("Contacting\n");
-+ hookRealAudio_Buffering(eContacting,0);
-+#else
-+ if (GetGlobal()->bEnableAdviceSink)
-+ {
-+ STDOUT("OnContacting(\"%s\")\n", pHostName);
-+ }
-+#endif
-+
-+ return HXR_OK;
-+}
-+
-+void ExampleClientAdviceSink::PrintPropName( IHXValues* pHeader )
-+{
-+ if ( pHeader == NULL )
-+ {
-+ return ;
-+ }
-+
-+ const char *pChar;
-+ ULONG32 pValue;
-+ if(HXR_OK == pHeader->GetFirstPropertyULONG32(pChar, pValue))
-+ {
-+ do
-+ {
-+ STDOUT("%s %d\n", pChar, pValue);
-+ }
-+ while(HXR_OK == pHeader->GetNextPropertyULONG32(pChar, pValue));
-+ }
-+
-+ IHXBuffer *pBuffer;
-+
-+ if(HXR_OK == pHeader->GetFirstPropertyBuffer(pChar, pBuffer))
-+ {
-+ do
-+ {
-+ STDOUT("%s %s\n", pChar, (const char *) ( pBuffer->GetBuffer() ));
-+ PrintBuffer(pChar, pBuffer->GetBuffer() ,pBuffer->GetSize());
-+ HX_RELEASE(pBuffer);
-+ } while(HXR_OK == pHeader->GetNextPropertyBuffer(pChar, pBuffer ));
-+ }
-+
-+ if(HXR_OK == pHeader->GetFirstPropertyCString(pChar, pBuffer))
-+ {
-+ do
-+ {
-+ STDERR("%s %s\n", pChar, (const char *) ( pBuffer->GetBuffer() ));
-+ HX_RELEASE(pBuffer);
-+ } while(HXR_OK == pHeader->GetNextPropertyCString(pChar, pBuffer ));
-+ }
-+
-+ fflush(stdout);
-+}
-+
-+
-+void ExampleClientAdviceSink::SetClipInfo( IHXPlayer* m_pRMAPlayer)
-+{
-+ bool bSendOnClipInfo = false;
-+
-+ // Get HXSource and try to get clip infor.
-+ UINT32 sourceCount = m_pRMAPlayer->GetSourceCount();
-+ for (UINT32 sourceID = 0; sourceID < sourceCount; sourceID ++)
-+ {
-+ // get HXSource
-+ STDOUT("========Source %d========\n",sourceID);
-+ IUnknown* pUnkSource = NULL;
-+ IHXStreamSource* pStreamSrc = NULL;
-+
-+ if (HXR_OK != m_pRMAPlayer->GetSource (sourceID, pUnkSource))
-+ {
-+ continue;
-+ }
-+
-+ pUnkSource->QueryInterface(IID_IHXStreamSource, (void **)&pStreamSrc);
-+
-+ HX_RELEASE(pUnkSource);
-+
-+ if (!pStreamSrc)
-+ {
-+ continue;
-+ }
-+
-+ UINT32 num_streams = pStreamSrc->GetStreamCount();
-+
-+ STDOUT("====File Header====\n");
-+
-+ IHXValues* pFileHdr = NULL;
-+ pStreamSrc->QueryInterface(IID_IHXValues, (void**)&pFileHdr);
-+
-+ if ( pFileHdr)
-+ {
-+ PrintPropName(pFileHdr);
-+ }
-+ HX_RELEASE(pFileHdr);
-+
-+ // get information from Streams
-+ for (UINT32 streamID = 0; streamID < num_streams ; streamID++)
-+ {
-+ STDOUT("====Stream %d====\n",streamID);
-+ IUnknown* pUnkStream = NULL;
-+
-+ if (HXR_OK == pStreamSrc->GetStream(streamID, pUnkStream))
-+ {
-+ IHXStream* pStream = NULL;
-+
-+ if (HXR_OK == pUnkStream->QueryInterface(IID_IHXStream,
-+ (void**)&pStream))
-+ {
-+ IHXValues* pStreamHdr = pStream->GetHeader();
-+ if (pStreamHdr)
-+ {
-+ PrintPropName(pStreamHdr);
-+ }
-+ HX_RELEASE(pStreamHdr);
-+ }
-+ HX_RELEASE(pStream);
-+ }
-+ HX_RELEASE(pUnkStream);
-+ }
-+ STDOUT("---------------------------------------------\n");
-+
-+ HX_RELEASE(pStreamSrc);
-+ }
-+}
-+
-+
-+STDMETHODIMP ExampleClientAdviceSink::Func()
-+{
-+ m_hCallback = 0;
-+
-+ // set clip info
-+ if(m_pPlayer)
-+ SetClipInfo(m_pPlayer);
-+
-+ return HXR_OK;
-+}
-+
-+void PrintBuffer(const char* pszName,const unsigned char* pbBuf, unsigned int dwBytes)
-+{
-+ if(pszName == NULL || pbBuf == NULL)
-+ return;
-+
-+ STDOUT(" ");
-+ for(unsigned int i= 0; i<dwBytes; i++) {
-+ STDOUT("0x%02x ",*pbBuf++);
-+ if(i % 15 == 0 && i!=0)
-+ STDOUT("\n ");
-+ }
-+ STDOUT("\n");
-+ return;
-+}
-+
-+/*
-+ * IHXGroupSink methods
-+ */
-+/************************************************************************
-+ * Method:
-+ * IHXGroupSink::GroupAdded
-+ * Purpose:
-+ * Notification of a new group being added to the presentation.
-+ */
-+STDMETHODIMP ExampleClientAdviceSink::GroupAdded( UINT16 /*IN*/ uGroupIndex,
-+ IHXGroup* /*IN*/ pGroup)
-+{
-+ return HXR_OK;
-+}
-+
-+/************************************************************************
-+ * Method:
-+ * IHXGroupSink::GroupRemoved
-+ * Purpose:
-+ * Notification of a group being removed from the presentation.
-+ */
-+STDMETHODIMP ExampleClientAdviceSink::GroupRemoved( UINT16 /*IN*/ uGroupIndex,
-+ IHXGroup* /*IN*/ pGroup)
-+{
-+ return HXR_OK;
-+}
-+
-+/************************************************************************
-+ * Method:
-+ * IHXGroupSink::AllGroupsRemoved
-+ * Purpose:
-+ * Notification that all groups have been removed from the
-+ * current presentation.
-+ */
-+STDMETHODIMP ExampleClientAdviceSink::AllGroupsRemoved()
-+{
-+ return HXR_OK;
-+}
-+
-+/************************************************************************
-+ * Method:
-+ * IHXGroupSink::TrackAdded
-+ * Purpose:
-+ * Notification of a new track being added to a group.
-+ */
-+STDMETHODIMP ExampleClientAdviceSink::TrackAdded( UINT16 /*IN*/ uGroupIndex,
-+ UINT16 /*IN*/ uTrackIndex,
-+ IHXValues* /*IN*/ pTrack)
-+{
-+ return HXR_OK;
-+}
-+
-+/************************************************************************
-+ * Method:
-+ * IHXGroupSink::TrackRemoved
-+ * Purpose:
-+ * Notification of a track being removed from a group.
-+ */
-+STDMETHODIMP ExampleClientAdviceSink::TrackRemoved( UINT16 /*IN*/ uGroupIndex,
-+ UINT16 /*IN*/ uTrackIndex,
-+ IHXValues* /*IN*/ pTrack)
-+{
-+ return HXR_OK;
-+}
-+
-+/************************************************************************
-+ * Method:
-+ * IHXGroupSink::TrackStarted
-+ * Purpose:
-+ * Notification of a track being started (to get duration, for
-+ * instance...)
-+ */
-+STDMETHODIMP ExampleClientAdviceSink::TrackStarted( UINT16 /*IN*/ uGroupIndex,
-+ UINT16 /*IN*/ uTrackIndex,
-+ IHXValues* /*IN*/ pTrack)
-+{
-+ if ( m_bWaitForTrackStart )
-+ {
-+ STDOUT("----------------clip info--------------------\n");
-+ if(m_pScheduler)
-+ {
-+ m_hCallback = m_pScheduler->RelativeEnter(this,50);
-+ }
-+ m_bWaitForTrackStart = FALSE;
-+ }
-+ return HXR_OK;
-+}
-+
-+/************************************************************************
-+ * Method:
-+ * IHXGroupSink::TrackStopped
-+ * Purpose:
-+ * Notification of a track being stopped
-+ *
-+ */
-+STDMETHODIMP ExampleClientAdviceSink::TrackStopped( UINT16 /*IN*/ uGroupIndex,
-+ UINT16 /*IN*/ uTrackIndex,
-+ IHXValues* /*IN*/ pTrack)
-+{
-+ return HXR_OK;
-+}
-+
-+/************************************************************************
-+ * Method:
-+ * IHXGroupSink::CurrentGroupSet
-+ * Purpose:
-+ * This group is being currently played in the presentation.
-+ */
-+STDMETHODIMP ExampleClientAdviceSink::CurrentGroupSet( UINT16 /*IN*/ uGroupIndex,
-+ IHXGroup* /*IN*/ pGroup)
-+{
-+ return HXR_OK;
-+}
-+
-Index: helix-libs/clientapps/clutter/exadvsnk.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ helix-libs/clientapps/clutter/exadvsnk.h 2008-10-13 06:05:49.000000000 -0700
-@@ -0,0 +1,324 @@
-+/* ***** BEGIN LICENSE BLOCK *****
-+ * Version: RCSL 1.0/RPSL 1.0
-+ *
-+ * Portions Copyright (c) 1995-2002 RealNetworks, Inc. All Rights Reserved.
-+ *
-+ * The contents of this file, and the files included with this file, are
-+ * subject to the current version of the RealNetworks Public Source License
-+ * Version 1.0 (the "RPSL") available at
-+ * http://www.helixcommunity.org/content/rpsl unless you have licensed
-+ * the file under the RealNetworks Community Source License Version 1.0
-+ * (the "RCSL") available at http://www.helixcommunity.org/content/rcsl,
-+ * in which case the RCSL will apply. You may also obtain the license terms
-+ * directly from RealNetworks. You may not use this file except in
-+ * compliance with the RPSL or, if you have a valid RCSL with RealNetworks
-+ * applicable to this file, the RCSL. Please see the applicable RPSL or
-+ * RCSL for the rights, obligations and limitations governing use of the
-+ * contents of the file.
-+ *
-+ * This file is part of the Helix DNA Technology. RealNetworks is the
-+ * developer of the Original Code and owns the copyrights in the portions
-+ * it created.
-+ *
-+ * This file, and the files included with this file, is distributed and made
-+ * available on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
-+ * EXPRESS OR IMPLIED, AND REALNETWORKS HEREBY DISCLAIMS ALL SUCH WARRANTIES,
-+ * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY, FITNESS
-+ * FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
-+ *
-+ * Technology Compatibility Kit Test Suite(s) Location:
-+ * http://www.helixcommunity.org/content/tck
-+ *
-+ * Contributor(s):
-+ *
-+ * ***** END LICENSE BLOCK ***** */
-+
-+#ifndef _EXAMPLECLSNK_
-+#define _EXAMPLECLSNK_
-+
-+#include "player.h"
-+
-+struct IHXClientAdviseSink;
-+struct IHXGroupSink;
-+struct IUnknown;
-+struct IHXRegistry;
-+struct IHXScheduler;
-+struct IHXCallback;
-+struct IHXPlayer;
-+struct IHXGroup;
-+
-+class ExampleClientAdviceSink : public IHXClientAdviseSink,
-+ public IHXGroupSink,
-+ public IHXCallback
-+{
-+ private:
-+ LONG32 m_lRefCount;
-+ LONG32 m_lClientIndex;
-+
-+ IUnknown* m_pUnknown;
-+ IHXRegistry* m_pRegistry;
-+ IHXScheduler* m_pScheduler;
-+
-+ UINT32 m_ulStartTime;
-+ UINT32 m_ulStopTime;
-+
-+ UINT32 m_lCurrentBandwidth;
-+ UINT32 m_lAverageBandwidth;
-+ HXBOOL m_bOnStop;
-+
-+ HXBOOL m_bWaitForTrackStart;
-+
-+ on_buffering_cb_t m_on_buffering_cb;
-+ on_pos_length_cb_t m_on_pos_length_cb;
-+ void *m_context; /* a argument passed by texture-helix lib */
-+
-+ // IHXCallback
-+ IHXPlayer* m_pPlayer;
-+ ULONG32 m_hCallback;
-+ ~ExampleClientAdviceSink();
-+ HX_RESULT DumpRegTree(const char* pszTreeName );
-+
-+
-+ void GetStatistics (char* /*IN*/ pszRegistryKey);
-+ void GetAllStatistics (void);
-+ void SetClipInfo( IHXPlayer* m_pRMAPlayer);
-+ void PrintPropName( IHXValues* pHeader );
-+
-+ public:
-+
-+ ExampleClientAdviceSink(IUnknown* /*IN*/ pUnknown, LONG32 /*IN*/ lClientIndex, on_buffering_cb_t on_buffer_cb, on_pos_length_cb_t on_pos_length_cb, void *context);
-+
-+ /*
-+ * IUnknown methods
-+ */
-+ STDMETHOD(QueryInterface) (THIS_
-+ REFIID riid,
-+ void** ppvObj);
-+
-+ STDMETHOD_(ULONG32,AddRef) (THIS);
-+
-+ STDMETHOD_(ULONG32,Release) (THIS);
-+
-+ /*
-+ * IHXClientAdviseSink methods
-+ */
-+
-+ /************************************************************************
-+ * Method:
-+ * IHXClientAdviseSink::OnPosLength
-+ * Purpose:
-+ * Called to advise the client that the position or length of the
-+ * current playback context has changed.
-+ */
-+ STDMETHOD(OnPosLength) (THIS_
-+ UINT32 ulPosition,
-+ UINT32 ulLength);
-+
-+ /************************************************************************
-+ * Method:
-+ * IHXClientAdviseSink::OnPresentationOpened
-+ * Purpose:
-+ * Called to advise the client a presentation has been opened.
-+ */
-+ STDMETHOD(OnPresentationOpened) (THIS);
-+
-+ /************************************************************************
-+ * Method:
-+ * IHXClientAdviseSink::OnPresentationClosed
-+ * Purpose:
-+ * Called to advise the client a presentation has been closed.
-+ */
-+ STDMETHOD(OnPresentationClosed) (THIS);
-+
-+ /************************************************************************
-+ * Method:
-+ * IHXClientAdviseSink::OnStatisticsChanged
-+ * Purpose:
-+ * Called to advise the client that the presentation statistics
-+ * have changed.
-+ */
-+ STDMETHOD(OnStatisticsChanged) (THIS);
-+
-+ /************************************************************************
-+ * Method:
-+ * IHXClientAdviseSink::OnPreSeek
-+ * Purpose:
-+ * Called by client engine to inform the client that a seek is
-+ * about to occur. The render is informed the last time for the
-+ * stream's time line before the seek, as well as the first new
-+ * time for the stream's time line after the seek will be completed.
-+ *
-+ */
-+ STDMETHOD (OnPreSeek) (THIS_
-+ ULONG32 ulOldTime,
-+ ULONG32 ulNewTime);
-+
-+ /************************************************************************
-+ * Method:
-+ * IHXClientAdviseSink::OnPostSeek
-+ * Purpose:
-+ * Called by client engine to inform the client that a seek has
-+ * just occured. The render is informed the last time for the
-+ * stream's time line before the seek, as well as the first new
-+ * time for the stream's time line after the seek.
-+ *
-+ */
-+ STDMETHOD (OnPostSeek) (THIS_
-+ ULONG32 ulOldTime,
-+ ULONG32 ulNewTime);
-+
-+ /************************************************************************
-+ * Method:
-+ * IHXClientAdviseSink::OnStop
-+ * Purpose:
-+ * Called by client engine to inform the client that a stop has
-+ * just occured.
-+ *
-+ */
-+ STDMETHOD (OnStop) (THIS);
-+
-+ /************************************************************************
-+ * Method:
-+ * IHXClientAdviseSink::OnPause
-+ * Purpose:
-+ * Called by client engine to inform the client that a pause has
-+ * just occured. The render is informed the last time for the
-+ * stream's time line before the pause.
-+ *
-+ */
-+ STDMETHOD (OnPause) (THIS_
-+ ULONG32 ulTime);
-+
-+ /************************************************************************
-+ * Method:
-+ * IHXClientAdviseSink::OnBegin
-+ * Purpose:
-+ * Called by client engine to inform the client that a begin or
-+ * resume has just occured. The render is informed the first time
-+ * for the stream's time line after the resume.
-+ *
-+ */
-+ STDMETHOD (OnBegin) (THIS_
-+ ULONG32 ulTime);
-+
-+ /************************************************************************
-+ * Method:
-+ * IHXClientAdviseSink::OnBuffering
-+ * Purpose:
-+ * Called by client engine to inform the client that buffering
-+ * of data is occuring. The render is informed of the reason for
-+ * the buffering (start-up of stream, seek has occured, network
-+ * congestion, etc.), as well as percentage complete of the
-+ * buffering process.
-+ *
-+ */
-+ STDMETHOD (OnBuffering) (THIS_
-+ ULONG32 ulFlags,
-+ UINT16 unPercentComplete);
-+
-+
-+ /************************************************************************
-+ * Method:
-+ * IHXClientAdviseSink::OnContacting
-+ * Purpose:
-+ * Called by client engine to inform the client is contacting
-+ * hosts(s).
-+ *
-+ */
-+ STDMETHOD (OnContacting) (THIS_
-+ const char* pHostName);
-+
-+ // IHXCallback
-+ STDMETHOD(Func) (THIS);
-+
-+ /*
-+ * IHXGroupSink methods
-+ */
-+ /************************************************************************
-+ * Method:
-+ * IHXGroupSink::GroupAdded
-+ * Purpose:
-+ * Notification of a new group being added to the presentation.
-+ */
-+ STDMETHOD(GroupAdded) (THIS_
-+ UINT16 /*IN*/ uGroupIndex,
-+ IHXGroup* /*IN*/ pGroup);
-+
-+ /************************************************************************
-+ * Method:
-+ * IHXGroupSink::GroupRemoved
-+ * Purpose:
-+ * Notification of a group being removed from the presentation.
-+ */
-+ STDMETHOD(GroupRemoved) (THIS_
-+ UINT16 /*IN*/ uGroupIndex,
-+ IHXGroup* /*IN*/ pGroup);
-+
-+ /************************************************************************
-+ * Method:
-+ * IHXGroupSink::AllGroupsRemoved
-+ * Purpose:
-+ * Notification that all groups have been removed from the
-+ * current presentation.
-+ */
-+ STDMETHOD(AllGroupsRemoved) (THIS);
-+
-+ /************************************************************************
-+ * Method:
-+ * IHXGroupSink::TrackAdded
-+ * Purpose:
-+ * Notification of a new track being added to a group.
-+ */
-+ STDMETHOD(TrackAdded) (THIS_
-+ UINT16 /*IN*/ uGroupIndex,
-+ UINT16 /*IN*/ uTrackIndex,
-+ IHXValues* /*IN*/ pTrack);
-+
-+ /************************************************************************
-+ * Method:
-+ * IHXGroupSink::TrackRemoved
-+ * Purpose:
-+ * Notification of a track being removed from a group.
-+ */
-+ STDMETHOD(TrackRemoved) (THIS_
-+ UINT16 /*IN*/ uGroupIndex,
-+ UINT16 /*IN*/ uTrackIndex,
-+ IHXValues* /*IN*/ pTrack);
-+
-+ /************************************************************************
-+ * Method:
-+ * IHXGroupSink::TrackStarted
-+ * Purpose:
-+ * Notification of a track being started (to get duration, for
-+ * instance...)
-+ */
-+ STDMETHOD (TrackStarted) (THIS_
-+ UINT16 /*IN*/ uGroupIndex,
-+ UINT16 /*IN*/ uTrackIndex,
-+ IHXValues* /*IN*/ pTrack) ;
-+
-+ /************************************************************************
-+ * Method:
-+ * IHXGroupSink::TrackStopped
-+ * Purpose:
-+ * Notification of a track being stopped
-+ *
-+ */
-+ STDMETHOD(TrackStopped) (THIS_
-+ UINT16 /*IN*/ uGroupIndex,
-+ UINT16 /*IN*/ uTrackIndex,
-+ IHXValues* /*IN*/ pTrack);
-+
-+ /************************************************************************
-+ * Method:
-+ * IHXGroupSink::CurrentGroupSet
-+ * Purpose:
-+ * This group is being currently played in the presentation.
-+ */
-+ STDMETHOD(CurrentGroupSet) (THIS_
-+ UINT16 /*IN*/ uGroupIndex,
-+ IHXGroup* /*IN*/ pGroup);
-+
-+};
-+
-+#endif /* _EXAMPLECLSNK_ */
-Index: helix-libs/clientapps/clutter/exaumgr.cpp
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ helix-libs/clientapps/clutter/exaumgr.cpp 2008-10-13 06:05:49.000000000 -0700
-@@ -0,0 +1,137 @@
-+/* ***** BEGIN LICENSE BLOCK *****
-+ * Version: RCSL 1.0/RPSL 1.0
-+ *
-+ * Portions Copyright (c) 1995-2002 RealNetworks, Inc. All Rights Reserved.
-+ *
-+ * The contents of this file, and the files included with this file, are
-+ * subject to the current version of the RealNetworks Public Source License
-+ * Version 1.0 (the "RPSL") available at
-+ * http://www.helixcommunity.org/content/rpsl unless you have licensed
-+ * the file under the RealNetworks Community Source License Version 1.0
-+ * (the "RCSL") available at http://www.helixcommunity.org/content/rcsl,
-+ * in which case the RCSL will apply. You may also obtain the license terms
-+ * directly from RealNetworks. You may not use this file except in
-+ * compliance with the RPSL or, if you have a valid RCSL with RealNetworks
-+ * applicable to this file, the RCSL. Please see the applicable RPSL or
-+ * RCSL for the rights, obligations and limitations governing use of the
-+ * contents of the file.
-+ *
-+ * This file is part of the Helix DNA Technology. RealNetworks is the
-+ * developer of the Original Code and owns the copyrights in the portions
-+ * it created.
-+ *
-+ * This file, and the files included with this file, is distributed and made
-+ * available on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
-+ * EXPRESS OR IMPLIED, AND REALNETWORKS HEREBY DISCLAIMS ALL SUCH WARRANTIES,
-+ * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY, FITNESS
-+ * FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
-+ *
-+ * Technology Compatibility Kit Test Suite(s) Location:
-+ * http://www.helixcommunity.org/content/tck
-+ *
-+ * Contributor(s):
-+ *
-+ * ***** END LICENSE BLOCK ***** */
-+
-+#include <stdio.h>
-+#include "hxtypes.h"
-+#include "hxcom.h"
-+#include "hxauth.h"
-+#include "hxstrutl.h"
-+#include "exaumgr.h"
-+#include <ctype.h>
-+#include "print.h"
-+
-+
-+#include "globals.h"
-+struct _stGlobals*& GetGlobal(); //in main.cpp
-+
-+
-+
-+ExampleAuthenticationManager::ExampleAuthenticationManager() :
-+ m_lRefCount(0),
-+ m_bSentPassword(FALSE)
-+{
-+}
-+
-+ExampleAuthenticationManager::~ExampleAuthenticationManager()
-+{
-+}
-+
-+STDMETHODIMP
-+ExampleAuthenticationManager::QueryInterface(REFIID riid, void**ppvObj)
-+{
-+ if(IsEqualIID(riid, IID_IUnknown))
-+ {
-+ AddRef();
-+ *ppvObj = (IUnknown*)(IHXAuthenticationManager*)this;
-+ return HXR_OK;
-+ }
-+ else if(IsEqualIID(riid, IID_IHXAuthenticationManager))
-+ {
-+ AddRef();
-+ *ppvObj = (IHXAuthenticationManager*)this;
-+ return HXR_OK;
-+ }
-+ *ppvObj = NULL;
-+ return HXR_NOINTERFACE;
-+}
-+
-+STDMETHODIMP_(UINT32)
-+ExampleAuthenticationManager::AddRef()
-+{
-+ return InterlockedIncrement(&m_lRefCount);
-+}
-+
-+STDMETHODIMP_(UINT32)
-+ExampleAuthenticationManager::Release()
-+{
-+ if (InterlockedDecrement(&m_lRefCount) > 0)
-+ {
-+ return m_lRefCount;
-+ }
-+
-+ delete this;
-+ return 0;
-+}
-+
-+STDMETHODIMP
-+ExampleAuthenticationManager::HandleAuthenticationRequest(IHXAuthenticationManagerResponse* pResponse)
-+{
-+ char username[1024] = ""; /* Flawfinder: ignore */
-+ char password[1024] = ""; /* Flawfinder: ignore */
-+ HX_RESULT res = HXR_FAIL;
-+
-+ if( !m_bSentPassword )
-+ {
-+ res = HXR_OK;
-+ if (GetGlobal()->bEnableVerboseMode)
-+ STDOUT("\nSending Username and Password...\n");
-+
-+ SafeStrCpy(username, GetGlobal()->g_pszUsername, 1024);
-+ SafeStrCpy(password, GetGlobal()->g_pszPassword, 1024);
-+
-+ //strip trailing whitespace
-+ char* c;
-+ for(c = username + strlen(username) - 1;
-+ c > username && isspace(*c);
-+ c--)
-+ ;
-+ *(c+1) = 0;
-+
-+ for(c = password + strlen(password) - 1;
-+ c > password && isspace(*c);
-+ c--)
-+ ;
-+ *(c+1) = 0;
-+
-+ m_bSentPassword = TRUE;
-+ }
-+
-+ if (GetGlobal()->bEnableVerboseMode && FAILED(res) )
-+ STDOUT("\nInvalid Username and/or Password.\n");
-+
-+ pResponse->AuthenticationRequestDone(res, username, password);
-+ return res;
-+}
-+
-Index: helix-libs/clientapps/clutter/exaumgr.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ helix-libs/clientapps/clutter/exaumgr.h 2008-10-13 06:05:49.000000000 -0700
-@@ -0,0 +1,56 @@
-+/* ***** BEGIN LICENSE BLOCK *****
-+ * Version: RCSL 1.0/RPSL 1.0
-+ *
-+ * Portions Copyright (c) 1995-2002 RealNetworks, Inc. All Rights Reserved.
-+ *
-+ * The contents of this file, and the files included with this file, are
-+ * subject to the current version of the RealNetworks Public Source License
-+ * Version 1.0 (the "RPSL") available at
-+ * http://www.helixcommunity.org/content/rpsl unless you have licensed
-+ * the file under the RealNetworks Community Source License Version 1.0
-+ * (the "RCSL") available at http://www.helixcommunity.org/content/rcsl,
-+ * in which case the RCSL will apply. You may also obtain the license terms
-+ * directly from RealNetworks. You may not use this file except in
-+ * compliance with the RPSL or, if you have a valid RCSL with RealNetworks
-+ * applicable to this file, the RCSL. Please see the applicable RPSL or
-+ * RCSL for the rights, obligations and limitations governing use of the
-+ * contents of the file.
-+ *
-+ * This file is part of the Helix DNA Technology. RealNetworks is the
-+ * developer of the Original Code and owns the copyrights in the portions
-+ * it created.
-+ *
-+ * This file, and the files included with this file, is distributed and made
-+ * available on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
-+ * EXPRESS OR IMPLIED, AND REALNETWORKS HEREBY DISCLAIMS ALL SUCH WARRANTIES,
-+ * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY, FITNESS
-+ * FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
-+ *
-+ * Technology Compatibility Kit Test Suite(s) Location:
-+ * http://www.helixcommunity.org/content/tck
-+ *
-+ * Contributor(s):
-+ *
-+ * ***** END LICENSE BLOCK ***** */
-+
-+#ifndef _EXAUMGR_H_
-+#define _EXAUMGR_H_
-+
-+#include "hxauth.h"
-+
-+class ExampleAuthenticationManager : public IHXAuthenticationManager
-+{
-+private:
-+ INT32 m_lRefCount;
-+ HXBOOL m_bSentPassword;
-+ ~ExampleAuthenticationManager();
-+
-+public:
-+ ExampleAuthenticationManager();
-+ STDMETHOD(QueryInterface) (THIS_ REFIID riid, void** ppvObj);
-+ STDMETHOD_(UINT32,AddRef) (THIS);
-+ STDMETHOD_(UINT32,Release) (THIS);
-+
-+ STDMETHOD(HandleAuthenticationRequest) (IHXAuthenticationManagerResponse* pResponse);
-+};
-+#endif
-Index: helix-libs/clientapps/clutter/excallback.cpp
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ helix-libs/clientapps/clutter/excallback.cpp 2008-10-13 06:05:49.000000000 -0700
-@@ -0,0 +1,38 @@
-+#include "excallback.h"
-+
-+STDMETHODIMP ExCallback::QueryInterface(REFIID riid, void** ppvObj)
-+{
-+ if (IsEqualIID(riid, IID_IHXCallback))
-+ {
-+ AddRef();
-+ *ppvObj = (IHXCallback*)this;
-+ return HXR_OK;
-+ }
-+ else if (IsEqualIID(riid, IID_IUnknown))
-+ {
-+ AddRef();
-+ *ppvObj = this;
-+ return HXR_OK;
-+ }
-+
-+ *ppvObj = NULL;
-+ return HXR_NOINTERFACE;
-+}
-+
-+STDMETHODIMP_(ULONG32) ExCallback::AddRef()
-+{
-+ return HXR_OK;
-+}
-+
-+STDMETHODIMP_(ULONG32) ExCallback::Release()
-+{
-+ return HXR_OK;
-+}
-+
-+STDMETHODIMP ExCallback::Func(void)
-+{
-+ UINT32 sleepTime = 0;
-+ m_pKicker->Kick(HXGetCurrentThreadID, &sleepTime);
-+ printf("Get called, sleeptime:%d\n", sleepTime);
-+ m_pScheduler->RelativeEnter(this, sleepTime/1000);
-+}
-Index: helix-libs/clientapps/clutter/excallback.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ helix-libs/clientapps/clutter/excallback.h 2008-10-13 06:05:49.000000000 -0700
-@@ -0,0 +1,32 @@
-+#ifndef _EX_CALLBACK_H_
-+#define _EX_CALLBACK_H_
-+
-+#include "hxcom.h"
-+#include "hxengin.h"
-+#include "ihxmedpltfm.h"
-+#include "thrdutil.h"
-+
-+class ExCallback : public IHXCallback
-+{
-+ public:
-+ ExCallback(IHXScheduler *pIHXScheduler, IHXMediaPlatformKicker *pKicker) : m_pScheduler(pIHXScheduler), m_pKicker(pKicker){};
-+
-+ /*
-+ * * IUnknown methods
-+ * */
-+ STDMETHOD(QueryInterface) (THIS_ REFIID riid, void** ppvObj);
-+ STDMETHOD_(ULONG32,AddRef) (THIS);
-+ STDMETHOD_(ULONG32,Release) (THIS);
-+
-+ /*
-+ * * IHXCallback methods
-+ * */
-+ STDMETHOD(Func) (THIS);
-+ private:
-+ IHXScheduler *m_pScheduler;
-+ IHXMediaPlatformKicker* m_pKicker;
-+
-+};
-+
-+
-+#endif
-Index: helix-libs/clientapps/clutter/excontxt.cpp
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ helix-libs/clientapps/clutter/excontxt.cpp 2008-10-13 06:05:49.000000000 -0700
-@@ -0,0 +1,315 @@
-+/* ***** BEGIN LICENSE BLOCK *****
-+ * Version: RCSL 1.0/RPSL 1.0
-+ *
-+ * Portions Copyright (c) 1995-2002 RealNetworks, Inc. All Rights Reserved.
-+ *
-+ * The contents of this file, and the files included with this file, are
-+ * subject to the current version of the RealNetworks Public Source License
-+ * Version 1.0 (the "RPSL") available at
-+ * http://www.helixcommunity.org/content/rpsl unless you have licensed
-+ * the file under the RealNetworks Community Source License Version 1.0
-+ * (the "RCSL") available at http://www.helixcommunity.org/content/rcsl,
-+ * in which case the RCSL will apply. You may also obtain the license terms
-+ * directly from RealNetworks. You may not use this file except in
-+ * compliance with the RPSL or, if you have a valid RCSL with RealNetworks
-+ * applicable to this file, the RCSL. Please see the applicable RPSL or
-+ * RCSL for the rights, obligations and limitations governing use of the
-+ * contents of the file.
-+ *
-+ * This file is part of the Helix DNA Technology. RealNetworks is the
-+ * developer of the Original Code and owns the copyrights in the portions
-+ * it created.
-+ *
-+ * This file, and the files included with this file, is distributed and made
-+ * available on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
-+ * EXPRESS OR IMPLIED, AND REALNETWORKS HEREBY DISCLAIMS ALL SUCH WARRANTIES,
-+ * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY, FITNESS
-+ * FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
-+ *
-+ * Technology Compatibility Kit Test Suite(s) Location:
-+ * http://www.helixcommunity.org/content/tck
-+ *
-+ * Contributor(s):
-+ *
-+ * ***** END LICENSE BLOCK ***** */
-+
-+#include "hxtypes.h"
-+
-+#include "hxwintyp.h"
-+#include "hxcom.h"
-+#include "hxcomm.h"
-+#include "hxwin.h"
-+#include "fivemmap.h"
-+
-+#include "hxbuffer.h"
-+#include "hxmangle.h"
-+
-+#include "hxclsnk.h"
-+#include "hxgroup.h"
-+#include "hxerror.h"
-+#include "hxprefs.h"
-+#include "hxstrutl.h"
-+
-+#include "exadvsnk.h"
-+#include "exstateadvsnk.h"
-+#include "exerror.h"
-+#include "exsitsup.h"
-+#include "exaumgr.h"
-+#include "hxprdnld.h"
-+#include "exprdnld.h"
-+
-+#include "excontxt.h"
-+
-+extern HXBOOL bEnableAdviceSink;
-+
-+
-+ExampleClientContext::ExampleClientContext(LONG32 lClientIndex)
-+ : m_lRefCount(0)
-+ , m_lClientIndex(lClientIndex)
-+ , m_pClientSink(NULL)
-+ , m_pClientStateSink(NULL)
-+ , m_pErrorSink(NULL)
-+ , m_pAuthMgr(NULL)
-+ , m_pSiteSupplier(NULL)
-+ , m_pDefaultPrefs(NULL)
-+#if defined(HELIX_FEATURE_PROGRESSIVE_DOWNLD_STATUS)
-+ , m_pPrgDnldStatusObserver(NULL)
-+#endif // /HELIX_FEATURE_PROGRESSIVE_DOWNLD_STATUS.
-+{
-+}
-+
-+
-+ExampleClientContext::~ExampleClientContext()
-+{
-+ Close();
-+};
-+
-+void ExampleClientContext::Init(IUnknown* /*IN*/ pUnknown,
-+ IHXPreferences* /*IN*/ pPreferences,
-+ char* /*IN*/ pszGUID,
-+ on_buffering_cb_t on_buffering_cb,
-+ on_pos_length_cb_t on_pos_length_cb,
-+ on_state_change_cb_t on_state_change_cb,
-+ on_new_frame_cb_t on_new_frame_cb,
-+ void *context)
-+{
-+ char* pszCipher = NULL;
-+
-+
-+ m_pClientSink = new ExampleClientAdviceSink(pUnknown, m_lClientIndex, on_buffering_cb, on_pos_length_cb, context);
-+
-+ m_pClientStateSink = new ExampleClientStateAdviceSink(pUnknown, m_lClientIndex, on_state_change_cb, context);
-+ m_pErrorSink = new ExampleErrorSink(pUnknown);
-+#if defined(HELIX_FEATURE_AUTHENTICATION)
-+ m_pAuthMgr = new ExampleAuthenticationManager();
-+ if(m_pAuthMgr)
-+ {
-+ m_pAuthMgr->AddRef();
-+ }
-+
-+#endif /* #if defined(HELIX_FEATURE_AUTHENTICATION) */
-+#if defined(HELIX_FEATURE_VIDEO)
-+ m_pSiteSupplier = new ExampleSiteSupplier(pUnknown, on_new_frame_cb, context);
-+#endif
-+
-+#if defined(HELIX_FEATURE_PROGRESSIVE_DOWNLD_STATUS)
-+ m_pPrgDnldStatusObserver = new ExamplePDStatusObserver(pUnknown);
-+#endif // /HELIX_FEATURE_PROGRESSIVE_DOWNLD_STATUS.
-+
-+ if (m_pClientSink)
-+ {
-+ m_pClientSink->AddRef();
-+ }
-+
-+ if (m_pErrorSink)
-+ {
-+ m_pErrorSink->AddRef();
-+ }
-+
-+ if (m_pClientStateSink)
-+ m_pClientStateSink->AddRef();
-+
-+ if(m_pSiteSupplier)
-+ {
-+ m_pSiteSupplier->AddRef();
-+ }
-+
-+ if (pPreferences)
-+ {
-+ m_pDefaultPrefs = pPreferences;
-+ m_pDefaultPrefs->AddRef();
-+ }
-+
-+ if (pszGUID && *pszGUID)
-+ {
-+ // Encode GUID
-+ pszCipher = Cipher(pszGUID);
-+ SafeStrCpy(m_pszGUID, pszCipher, 256);
-+ }
-+ else
-+ {
-+ m_pszGUID[0] = '\0';
-+ }
-+}
-+
-+void ExampleClientContext::Close()
-+{
-+ HX_RELEASE(m_pClientSink);
-+ HX_RELEASE(m_pClientStateSink);
-+ HX_RELEASE(m_pErrorSink);
-+#if defined(HELIX_FEATURE_AUTHENTICATION)
-+ HX_RELEASE(m_pAuthMgr);
-+#endif /* #if defined(HELIX_FEATURE_AUTHENTICATION) */
-+ HX_RELEASE(m_pSiteSupplier);
-+ HX_RELEASE(m_pDefaultPrefs);
-+#if defined(HELIX_FEATURE_PROGRESSIVE_DOWNLD_STATUS)
-+ HX_RELEASE(m_pPrgDnldStatusObserver);
-+#endif // /HELIX_FEATURE_PROGRESSIVE_DOWNLD_STATUS.
-+}
-+
-+
-+
-+// *** IUnknown methods ***
-+
-+/////////////////////////////////////////////////////////////////////////
-+// Method:
-+// IUnknown::QueryInterface
-+// Purpose:
-+// Implement this to export the interfaces supported by your
-+// object.
-+//
-+STDMETHODIMP ExampleClientContext::QueryInterface(REFIID riid, void** ppvObj)
-+{
-+ if (IsEqualIID(riid, IID_IUnknown))
-+ {
-+ AddRef();
-+ *ppvObj = this;
-+ return HXR_OK;
-+ }
-+ else if (IsEqualIID(riid, IID_IHXPreferences))
-+ {
-+ AddRef();
-+ *ppvObj = (IHXPreferences*)this;
-+ return HXR_OK;
-+ }
-+ else if (m_pClientSink &&
-+ m_pClientSink->QueryInterface(riid, ppvObj) == HXR_OK)
-+ {
-+ return HXR_OK;
-+ }
-+ else if (m_pErrorSink &&
-+ m_pErrorSink->QueryInterface(riid, ppvObj) == HXR_OK)
-+ {
-+ return HXR_OK;
-+ }
-+ else if (m_pClientStateSink &&
-+ m_pClientStateSink->QueryInterface(riid, ppvObj) == HXR_OK)
-+ {
-+ return HXR_OK;
-+ }
-+#if defined(HELIX_FEATURE_AUTHENTICATION)
-+ else if(m_pAuthMgr &&
-+ m_pAuthMgr->QueryInterface(riid, ppvObj) == HXR_OK)
-+ {
-+ return HXR_OK;
-+ }
-+#endif /* #if defined(HELIX_FEATURE_AUTHENTICATION) */
-+ else if(m_pSiteSupplier &&
-+ m_pSiteSupplier->QueryInterface(riid, ppvObj) == HXR_OK)
-+ {
-+ return HXR_OK;
-+ }
-+ *ppvObj = NULL;
-+ return HXR_NOINTERFACE;
-+}
-+
-+/////////////////////////////////////////////////////////////////////////
-+// Method:
-+// IUnknown::AddRef
-+// Purpose:
-+// Everyone usually implements this the same... feel free to use
-+// this implementation.
-+//
-+STDMETHODIMP_(ULONG32) ExampleClientContext::AddRef()
-+{
-+ return InterlockedIncrement(&m_lRefCount);
-+}
-+
-+/////////////////////////////////////////////////////////////////////////
-+// Method:
-+// IUnknown::Release
-+// Purpose:
-+// Everyone usually implements this the same... feel free to use
-+// this implementation.
-+//
-+STDMETHODIMP_(ULONG32) ExampleClientContext::Release()
-+{
-+ if (InterlockedDecrement(&m_lRefCount) > 0)
-+ {
-+ return m_lRefCount;
-+ }
-+
-+ delete this;
-+ return 0;
-+}
-+
-+
-+// *** IUnknown methods ***
-+
-+/////////////////////////////////////////////////////////////////////////
-+// Method:
-+// IHXPreferences::ReadPref
-+// Purpose:
-+// Read a Preference from the registry.
-+//
-+STDMETHODIMP
-+ExampleClientContext::ReadPref(const char* pref_key, IHXBuffer*& buffer)
-+{
-+ HX_RESULT hResult = HXR_OK;
-+ char* pszCipher = NULL;
-+
-+ if ((stricmp(pref_key, CLIENT_GUID_REGNAME) == 0) &&
-+ (*m_pszGUID))
-+ {
-+ // Create a Buffer
-+ buffer = new CHXBuffer();
-+ buffer->AddRef();
-+
-+ // Copy the encoded GUID into the buffer
-+ buffer->Set((UCHAR*)m_pszGUID, strlen(m_pszGUID) + 1);
-+ }
-+ else if (m_pDefaultPrefs)
-+ {
-+ hResult = m_pDefaultPrefs->ReadPref(pref_key, buffer);
-+ }
-+ else
-+ {
-+ hResult = HXR_NOTIMPL;
-+ }
-+
-+ return hResult;
-+}
-+
-+/////////////////////////////////////////////////////////////////////////
-+// Method:
-+// IHXPreferences::WritePref
-+// Purpose:
-+// Write a Preference to the registry.
-+//
-+STDMETHODIMP
-+ExampleClientContext::WritePref(const char* pref_key, IHXBuffer* buffer)
-+{
-+ if (m_pDefaultPrefs)
-+ {
-+ return m_pDefaultPrefs->WritePref(pref_key, buffer);
-+ }
-+ else
-+ {
-+ return HXR_OK;
-+ }
-+}
-+
-+EHXClientState ExampleClientContext::GetState()
-+{
-+ return m_pClientStateSink->GetState();
-+};
-Index: helix-libs/clientapps/clutter/excontxt.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ helix-libs/clientapps/clutter/excontxt.h 2008-10-13 06:05:49.000000000 -0700
-@@ -0,0 +1,106 @@
-+/* ***** BEGIN LICENSE BLOCK *****
-+ * Version: RCSL 1.0/RPSL 1.0
-+ *
-+ * Portions Copyright (c) 1995-2002 RealNetworks, Inc. All Rights Reserved.
-+ *
-+ * The contents of this file, and the files included with this file, are
-+ * subject to the current version of the RealNetworks Public Source License
-+ * Version 1.0 (the "RPSL") available at
-+ * http://www.helixcommunity.org/content/rpsl unless you have licensed
-+ * the file under the RealNetworks Community Source License Version 1.0
-+ * (the "RCSL") available at http://www.helixcommunity.org/content/rcsl,
-+ * in which case the RCSL will apply. You may also obtain the license terms
-+ * directly from RealNetworks. You may not use this file except in
-+ * compliance with the RPSL or, if you have a valid RCSL with RealNetworks
-+ * applicable to this file, the RCSL. Please see the applicable RPSL or
-+ * RCSL for the rights, obligations and limitations governing use of the
-+ * contents of the file.
-+ *
-+ * This file is part of the Helix DNA Technology. RealNetworks is the
-+ * developer of the Original Code and owns the copyrights in the portions
-+ * it created.
-+ *
-+ * This file, and the files included with this file, is distributed and made
-+ * available on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
-+ * EXPRESS OR IMPLIED, AND REALNETWORKS HEREBY DISCLAIMS ALL SUCH WARRANTIES,
-+ * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY, FITNESS
-+ * FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
-+ *
-+ * Technology Compatibility Kit Test Suite(s) Location:
-+ * http://www.helixcommunity.org/content/tck
-+ *
-+ * Contributor(s):
-+ *
-+ * ***** END LICENSE BLOCK ***** */
-+#ifndef _EXCONTXT_H_
-+#define _EXCONTXT_H_
-+
-+#include "exerror.h"
-+#include "exsitsup.h"
-+#include "hxprefs.h"
-+#include "player.h"
-+#include "hxclsnk.h"
-+
-+struct IUnknown;
-+struct IHXPreferences;
-+class ExampleClientAdviceSink;
-+class ExampleClientStateAdviceSink;
-+class ExampleErrorMessages;
-+class ExampleAuthenticationManager;
-+class ExamplePDStatusObserver;
-+
-+
-+class ExampleClientContext : public IHXPreferences
-+{
-+private:
-+ LONG32 m_lRefCount;
-+ LONG32 m_lClientIndex;
-+
-+ ExampleClientAdviceSink* m_pClientSink;
-+ ExampleClientStateAdviceSink* m_pClientStateSink;
-+ ExampleErrorSink* m_pErrorSink;
-+ ExampleAuthenticationManager* m_pAuthMgr;
-+
-+ ExampleSiteSupplier* m_pSiteSupplier;
-+ ExamplePDStatusObserver* m_pPrgDnldStatusObserver;
-+ IHXPreferences* m_pDefaultPrefs;
-+ char m_pszGUID[256]; /* Flawfinder: ignore */
-+
-+
-+public:
-+
-+ ExampleClientContext(LONG32 /*IN*/ lClientIndex);
-+ ~ExampleClientContext();
-+
-+ void Init(IUnknown* /*IN*/ pUnknown,
-+ IHXPreferences* /*IN*/ pPreferences,
-+ char* /*IN*/ pszGUID,
-+ on_buffering_cb_t on_buffering_cb = NULL,
-+ on_pos_length_cb_t on_pos_length_cb = NULL,
-+ on_state_change_cb_t on_state_change_cb = NULL,
-+ on_new_frame_cb_t on_new_frame_cb = NULL,
-+ void *context = NULL);
-+ void Close();
-+
-+ EHXClientState GetState();
-+
-+ /*
-+ * IUnknown methods
-+ */
-+ STDMETHOD(QueryInterface) (THIS_
-+ REFIID riid,
-+ void** ppvObj);
-+
-+ STDMETHOD_(ULONG32,AddRef) (THIS);
-+ STDMETHOD_(ULONG32,Release) (THIS);
-+
-+ /*
-+ * IHXPreferences methods
-+ */
-+ STDMETHOD(ReadPref) (THIS_ const char* pref_key,
-+ IHXBuffer*& buffer);
-+ STDMETHOD(WritePref) (THIS_ const char* pref_key,
-+ IHXBuffer* buffer);
-+};
-+
-+#endif
-Index: helix-libs/clientapps/clutter/exerror.cpp
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ helix-libs/clientapps/clutter/exerror.cpp 2008-10-13 06:05:49.000000000 -0700
-@@ -0,0 +1,230 @@
-+/* ***** BEGIN LICENSE BLOCK *****
-+ * Version: RCSL 1.0/RPSL 1.0
-+ *
-+ * Portions Copyright (c) 1995-2002 RealNetworks, Inc. All Rights Reserved.
-+ *
-+ * The contents of this file, and the files included with this file, are
-+ * subject to the current version of the RealNetworks Public Source License
-+ * Version 1.0 (the "RPSL") available at
-+ * http://www.helixcommunity.org/content/rpsl unless you have licensed
-+ * the file under the RealNetworks Community Source License Version 1.0
-+ * (the "RCSL") available at http://www.helixcommunity.org/content/rcsl,
-+ * in which case the RCSL will apply. You may also obtain the license terms
-+ * directly from RealNetworks. You may not use this file except in
-+ * compliance with the RPSL or, if you have a valid RCSL with RealNetworks
-+ * applicable to this file, the RCSL. Please see the applicable RPSL or
-+ * RCSL for the rights, obligations and limitations governing use of the
-+ * contents of the file.
-+ *
-+ * This file is part of the Helix DNA Technology. RealNetworks is the
-+ * developer of the Original Code and owns the copyrights in the portions
-+ * it created.
-+ *
-+ * This file, and the files included with this file, is distributed and made
-+ * available on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
-+ * EXPRESS OR IMPLIED, AND REALNETWORKS HEREBY DISCLAIMS ALL SUCH WARRANTIES,
-+ * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY, FITNESS
-+ * FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
-+ *
-+ * Technology Compatibility Kit Test Suite(s) Location:
-+ * http://www.helixcommunity.org/content/tck
-+ *
-+ * Contributor(s):
-+ *
-+ * ***** END LICENSE BLOCK ***** */
-+
-+#include "hxtypes.h"
-+
-+#include "hxcom.h"
-+#include "hxcomm.h"
-+#include "hxerror.h"
-+#include "hxstrutl.h"
-+#include "hxcore.h"
-+#include "hxassert.h"
-+#include "hxbuffer.h"
-+
-+#ifdef __TCS__
-+#include "hxresult.h"
-+#endif
-+
-+#if !defined(HELIX_CONFIG_MINIMIZE_SIZE)
-+#include "HXErrorCodeStrings.h"
-+#endif
-+
-+#include "exerror.h"
-+
-+#include <stdio.h>
-+#include "print.h"
-+
-+#include "globals.h"
-+struct _stGlobals*& GetGlobal(); //in main.cpp
-+
-+#ifdef __TCS__
-+#if defined(__cplusplus)
-+extern "C" {
-+#endif
-+
-+void hookRealAudio_ReportError(int err, long errVal);
-+
-+#ifdef __cplusplus
-+}
-+#endif
-+#endif
-+
-+ExampleErrorSink::ExampleErrorSink(IUnknown* pUnknown)
-+ : m_lRefCount(0),
-+ m_pPlayer(NULL)
-+{
-+ IHXClientEngine* pEngine = NULL;
-+ pUnknown->QueryInterface(IID_IHXClientEngine, (void**)&pEngine );
-+ if( pEngine )
-+ {
-+ IUnknown* pTmp = NULL;
-+ pEngine->GetPlayer(0, pTmp);
-+ m_pPlayer = (IHXPlayer*)pTmp;
-+ }
-+
-+ HX_RELEASE( pEngine );
-+ HX_ASSERT(m_pPlayer);
-+}
-+
-+ExampleErrorSink::~ExampleErrorSink()
-+{
-+ HX_RELEASE(m_pPlayer);
-+}
-+
-+// *** IUnknown methods ***
-+
-+/////////////////////////////////////////////////////////////////////////
-+// Method:
-+// IUnknown::QueryInterface
-+// Purpose:
-+// Implement this to export the interfaces supported by your
-+// object.
-+//
-+STDMETHODIMP ExampleErrorSink::QueryInterface(REFIID riid, void** ppvObj)
-+{
-+ if (IsEqualIID(riid, IID_IUnknown))
-+ {
-+ AddRef();
-+ *ppvObj = (IUnknown*)(IHXErrorSink*)this;
-+ return HXR_OK;
-+ }
-+ else if (IsEqualIID(riid, IID_IHXErrorSink))
-+ {
-+ AddRef();
-+ *ppvObj = (IHXErrorSink*) this;
-+ return HXR_OK;
-+ }
-+
-+ *ppvObj = NULL;
-+ return HXR_NOINTERFACE;
-+}
-+
-+/////////////////////////////////////////////////////////////////////////
-+// Method:
-+// IUnknown::AddRef
-+// Purpose:
-+// Everyone usually implements this the same... feel free to use
-+// this implementation.
-+//
-+STDMETHODIMP_(ULONG32) ExampleErrorSink::AddRef()
-+{
-+ return InterlockedIncrement(&m_lRefCount);
-+}
-+
-+/////////////////////////////////////////////////////////////////////////
-+// Method:
-+// IUnknown::Release
-+// Purpose:
-+// Everyone usually implements this the same... feel free to use
-+// this implementation.
-+//
-+STDMETHODIMP_(ULONG32) ExampleErrorSink::Release()
-+{
-+ if (InterlockedDecrement(&m_lRefCount) > 0)
-+ {
-+ return m_lRefCount;
-+ }
-+
-+ delete this;
-+ return 0;
-+}
-+
-+/*
-+ * IHXErrorSink methods
-+ */
-+
-+STDMETHODIMP
-+ExampleErrorSink::ErrorOccurred(const UINT8 unSeverity,
-+ const ULONG32 ulHXCode,
-+ const ULONG32 ulUserCode,
-+ const char* pUserString,
-+ const char* pMoreInfoURL
-+ )
-+{
-+ char HXDefine[256]; /* Flawfinder: ignore */
-+
-+ // Store the code, so we can return it from main()
-+ GetGlobal()->g_Error = ulHXCode;
-+
-+ ConvertErrorToString(ulHXCode, HXDefine, 256);
-+
-+#ifdef __TCS__
-+ hookRealAudio_ReportError(ulHXCode,ulUserCode);
-+#else
-+ STDOUT("Report(%d, %ld, \"%s\", %ld, \"%s\", \"%s\")\n",
-+ unSeverity,
-+ ulHXCode,
-+ (pUserString && *pUserString) ? pUserString : "(NULL)",
-+ ulUserCode,
-+ (pMoreInfoURL && *pMoreInfoURL) ? pMoreInfoURL : "(NULL)",
-+ HXDefine);
-+#endif
-+
-+ return HXR_OK;
-+}
-+
-+void
-+ExampleErrorSink::ConvertErrorToString(const ULONG32 ulHXCode, char* pszBuffer, UINT32 ulBufLen)
-+{
-+ IHXErrorMessages* pErrMsg = NULL;
-+
-+ if( !pszBuffer)
-+ return;
-+
-+ pszBuffer[0]='\0';
-+
-+ HX_ASSERT(m_pPlayer);
-+ if( m_pPlayer)
-+ {
-+ m_pPlayer->QueryInterface(IID_IHXErrorMessages, (void**)&pErrMsg);
-+ if( pErrMsg )
-+ {
-+ IHXBuffer* pMessage = pErrMsg->GetErrorText(ulHXCode);
-+ if( pMessage )
-+ {
-+ SafeStrCpy( pszBuffer, (const char*)pMessage->GetBuffer(), ulBufLen);
-+ pMessage->Release();
-+ }
-+ }
-+ HX_RELEASE(pErrMsg);
-+ }
-+
-+ if( strlen(pszBuffer)==0 )
-+ {
-+#if !defined(HELIX_CONFIG_MINIMIZE_SIZE)
-+ const char* pszHXCodeString = HXErrorCodeToString(ulHXCode);
-+ if (pszHXCodeString)
-+ {
-+ SafeSprintf( pszBuffer, ulBufLen, "%s", pszHXCodeString);
-+ }
-+ else
-+#endif
-+ {
-+ HX_ASSERT(FALSE);
-+ SafeSprintf( pszBuffer, ulBufLen, "Can't convert error code %p - make sure it's defined in common/util/HXErrorCodeStrings.c", ulHXCode );
-+ }
-+ }
-+}
-+
-Index: helix-libs/clientapps/clutter/exerror.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ helix-libs/clientapps/clutter/exerror.h 2008-10-13 06:05:49.000000000 -0700
-@@ -0,0 +1,92 @@
-+/* ***** BEGIN LICENSE BLOCK *****
-+ * Version: RCSL 1.0/RPSL 1.0
-+ *
-+ * Portions Copyright (c) 1995-2002 RealNetworks, Inc. All Rights Reserved.
-+ *
-+ * The contents of this file, and the files included with this file, are
-+ * subject to the current version of the RealNetworks Public Source License
-+ * Version 1.0 (the "RPSL") available at
-+ * http://www.helixcommunity.org/content/rpsl unless you have licensed
-+ * the file under the RealNetworks Community Source License Version 1.0
-+ * (the "RCSL") available at http://www.helixcommunity.org/content/rcsl,
-+ * in which case the RCSL will apply. You may also obtain the license terms
-+ * directly from RealNetworks. You may not use this file except in
-+ * compliance with the RPSL or, if you have a valid RCSL with RealNetworks
-+ * applicable to this file, the RCSL. Please see the applicable RPSL or
-+ * RCSL for the rights, obligations and limitations governing use of the
-+ * contents of the file.
-+ *
-+ * This file is part of the Helix DNA Technology. RealNetworks is the
-+ * developer of the Original Code and owns the copyrights in the portions
-+ * it created.
-+ *
-+ * This file, and the files included with this file, is distributed and made
-+ * available on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
-+ * EXPRESS OR IMPLIED, AND REALNETWORKS HEREBY DISCLAIMS ALL SUCH WARRANTIES,
-+ * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY, FITNESS
-+ * FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
-+ *
-+ * Technology Compatibility Kit Test Suite(s) Location:
-+ * http://www.helixcommunity.org/content/tck
-+ *
-+ * Contributor(s):
-+ *
-+ * ***** END LICENSE BLOCK ***** */
-+
-+#ifndef _EXAMPLEERRORMESSAGES_
-+#define _EXAMPLEERRORMESSAGES_
-+
-+#include "hxerror.h"
-+
-+struct IUnknown;
-+struct IHXErrorMessages;
-+struct IHXPlayer;
-+
-+class ExampleErrorSink : public IHXErrorSink
-+{
-+public:
-+
-+ ExampleErrorSink(IUnknown* pUnknown);
-+ ~ExampleErrorSink();
-+
-+ /*
-+ * IUnknown methods
-+ */
-+ STDMETHOD(QueryInterface) (THIS_
-+ REFIID riid,
-+ void** ppvObj);
-+
-+ STDMETHOD_(ULONG32,AddRef) (THIS);
-+
-+ STDMETHOD_(ULONG32,Release) (THIS);
-+
-+ /*
-+ * IHXErrorSink methods
-+ */
-+
-+ /************************************************************************
-+ * Method:
-+ * IHXErrorSink::ErrorOccurred
-+ * Purpose:
-+ * After you have registered your error sink with an IHXErrorSinkControl
-+ * (either in the server or player core) this method will be called to
-+ * report an error, event, or status message.
-+ *
-+ * The meaning of the arguments is exactly as described in
-+ * hxerror.h
-+ */
-+ STDMETHOD(ErrorOccurred) (THIS_
-+ const UINT8 unSeverity,
-+ const ULONG32 ulHXCode,
-+ const ULONG32 ulUserCode,
-+ const char* pUserString,
-+ const char* pMoreInfoURL
-+ );
-+
-+protected:
-+ LONG32 m_lRefCount;
-+ IHXPlayer* m_pPlayer;
-+
-+ void ConvertErrorToString (const ULONG32 ulHXCode, char* pszBuffer, UINT32 ulBufLen);
-+};
-+#endif /*_EXAMPLEERRORMESSAGES_*/
-Index: helix-libs/clientapps/clutter/exprdnld.cpp
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ helix-libs/clientapps/clutter/exprdnld.cpp 2008-10-13 06:05:49.000000000 -0700
-@@ -0,0 +1,468 @@
-+/* ***** BEGIN LICENSE BLOCK *****
-+ * Version: RCSL 1.0/RPSL 1.0
-+ *
-+ * Portions Copyright (c) 1995-2004 RealNetworks, Inc. All Rights Reserved.
-+ *
-+ * The contents of this file, and the files included with this file, are
-+ * subject to the current version of the RealNetworks Public Source License
-+ * Version 1.0 (the "RPSL") available at
-+ * http://www.helixcommunity.org/content/rpsl unless you have licensed
-+ * the file under the RealNetworks Community Source License Version 1.0
-+ * (the "RCSL") available at http://www.helixcommunity.org/content/rcsl,
-+ * in which case the RCSL will apply. You may also obtain the license terms
-+ * directly from RealNetworks. You may not use this file except in
-+ * compliance with the RPSL or, if you have a valid RCSL with RealNetworks
-+ * applicable to this file, the RCSL. Please see the applicable RPSL or
-+ * RCSL for the rights, obligations and limitations governing use of the
-+ * contents of the file.
-+ *
-+ * This file is part of the Helix DNA Technology. RealNetworks is the
-+ * developer of the Original Code and owns the copyrights in the portions
-+ * it created.
-+ *
-+ * This file, and the files included with this file, is distributed and made
-+ * available on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
-+ * EXPRESS OR IMPLIED, AND REALNETWORKS HEREBY DISCLAIMS ALL SUCH WARRANTIES,
-+ * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY, FITNESS
-+ * FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
-+ *
-+ * Technology Compatibility Kit Test Suite(s) Location:
-+ * http://www.helixcommunity.org/content/tck
-+ *
-+ * Contributor(s):
-+ *
-+ * ***** END LICENSE BLOCK ***** */
-+
-+#include "hxcom.h"
-+#include "hxtypes.h"
-+#include "hxcore.h"
-+#include "hxprdnld.h"
-+#include "exprdnld.h"
-+#include "print.h"
-+
-+#include "globals.h"
-+struct _stGlobals*& GetGlobal();
-+
-+UINT32 GetTime(); // /In main.cpp.
-+
-+// /#if defined(HELIX_FEATURE_PROGRESSIVE_DOWNLD_STATUS)
-+/************************************************************************
-+ * Method:
-+ * Constructor
-+ */
-+ExamplePDStatusObserver::ExamplePDStatusObserver(IUnknown* pUnkPlayer)
-+ : m_lRefCount(0)
-+ , m_pPrgDnldStatusMgr(NULL)
-+ , m_pUnkPlayer(pUnkPlayer)
-+ , m_pHXPlayer(NULL)
-+ , m_bPlayerIsPausedByThis(FALSE)
-+ , m_bFirstPDStatusMessage(TRUE)
-+ , m_ulTotalDurReported(HX_PROGDOWNLD_UNKNOWN_DURATION)
-+ , m_ulDurSoFar(HX_PROGDOWNLD_UNKNOWN_DURATION)
-+ , m_ulCurStatusUpdateGranularity(
-+ HX_PROGDOWNLD_DEFAULT_STATUSREPORT_INTERVAL_MSEC)
-+ , m_bInitialPrerollUpateGranularitySet(FALSE)
-+ , m_bDownloadIsComplete(FALSE)
-+{
-+ if (m_pUnkPlayer)
-+ {
-+ m_pUnkPlayer->QueryInterface(IID_IHXPlayer,
-+ (void**)&m_pHXPlayer);
-+
-+ m_pUnkPlayer->QueryInterface(IID_IHXPDStatusMgr,
-+ (void**)&m_pPrgDnldStatusMgr);
-+
-+ if (m_pPrgDnldStatusMgr)
-+ {
-+ // /Add ourselves as an observer of progressive download playback:
-+ m_pPrgDnldStatusMgr->AddObserver(this);
-+ // /Set granularity of status reports to 10 per second until we
-+ // know enough about the situation to go back to getting reports
-+ // at the default interval (every 5 seconds). Do that as soon
-+ // as we receive the first progress report:
-+ m_ulCurStatusUpdateGranularity = 100;
-+ }
-+
-+ m_pUnkPlayer->AddRef();
-+ }
-+};
-+
-+/************************************************************************
-+ * Method:
-+ * Destructor
-+ */
-+ExamplePDStatusObserver::~ExamplePDStatusObserver()
-+{
-+ if (m_pPrgDnldStatusMgr)
-+ {
-+ m_pPrgDnldStatusMgr->RemoveObserver(this);
-+ }
-+ HX_RELEASE(m_pPrgDnldStatusMgr);
-+ HX_RELEASE(m_pHXPlayer);
-+ HX_RELEASE(m_pUnkPlayer);
-+}
-+
-+/************************************************************************
-+ * Method:
-+ * IUnknown::QueryInterface
-+ */
-+STDMETHODIMP
-+ExamplePDStatusObserver::QueryInterface(REFIID riid, void** ppvObj)
-+{
-+ if (IsEqualIID(riid, IID_IUnknown))
-+ {
-+ AddRef();
-+ *ppvObj = (IUnknown*)(IHXPDStatusObserver*)this;
-+ return HXR_OK;
-+ }
-+ else if (IsEqualIID(riid, IID_IHXPDStatusObserver))
-+ {
-+ AddRef();
-+ *ppvObj = (IHXPDStatusObserver*)this;
-+ return HXR_OK;
-+ }
-+
-+ *ppvObj = NULL;
-+ return HXR_NOINTERFACE;
-+}
-+
-+/************************************************************************
-+ * Method:
-+ * IUnknown::AddRef
-+ */
-+STDMETHODIMP_(ULONG32)
-+ExamplePDStatusObserver::AddRef()
-+{
-+ return InterlockedIncrement(&m_lRefCount);
-+}
-+
-+/************************************************************************
-+ * Method:
-+ * IUnknown::Release
-+ */
-+STDMETHODIMP_(ULONG32)
-+ExamplePDStatusObserver::Release()
-+{
-+ if (InterlockedDecrement(&m_lRefCount) > 0)
-+ {
-+ return m_lRefCount;
-+ }
-+
-+ delete this;
-+ return 0;
-+}
-+
-+
-+/*
-+ * IHXPDStatusObserver methods
-+ */
-+
-+/************************************************************************
-+ * Method:
-+ * IHXPDStatusObserver::OnDownloadProgress
-+ *
-+ * Purpose:
-+ * Notification from IHXPDStatusMgr of download progress when
-+ * file size changes.
-+ *
-+ * lTimeSurplus:
-+ * - When negative, the absolute value of it is the estimated number
-+ * of milliseconds of wall-clock time that need to pass while
-+ * downloading continues before reaching the point at which playback
-+ * can resume and play the remainder of the stream without having to
-+ * buffer, assuming that playback is paused and remains so during
-+ * that period.
-+ * - When positive, it is the estimated number of milliseconds of
-+ * wall-clock time between when the download should complete and when
-+ * the natural content play-out duration will be reached, assuming
-+ * playback is currently progressing and that no pause will occur.
-+ *
-+ * Note: ulNewDurSoFar can be HX_PROGDOWNLD_UNKNOWN_DURATION if the
-+ * IHXMediaBytesToMediaDur was not available to, or was unable to
-+ * convert the bytes to a duration for the IHXPDStatusMgr calling this:
-+ */
-+STDMETHODIMP
-+ExamplePDStatusObserver::OnDownloadProgress(
-+ IHXStreamSource* /*IN*/ /*NULL is valid value*/ pStreamSource,
-+ UINT32 /*IN*/ ulNewDurSoFar,
-+ UINT32 /*IN*/ ulNewBytesSoFar,
-+ INT32 /*IN*/ lTimeSurplus)
-+{
-+ m_ulDurSoFar = ulNewDurSoFar;
-+
-+ if (m_ulCurStatusUpdateGranularity <
-+ HX_PROGDOWNLD_DEFAULT_STATUSREPORT_INTERVAL_MSEC)
-+ {
-+ if (m_bInitialPrerollUpateGranularitySet)
-+ {
-+ if (HX_PROGDOWNLD_UNKNOWN_DURATION != ulNewDurSoFar &&
-+ // /Preroll is done, so reset update interval back to default:
-+ GetGlobal()->g_bOnBeginOccurred)
-+ {
-+ m_ulCurStatusUpdateGranularity =
-+ HX_PROGDOWNLD_DEFAULT_STATUSREPORT_INTERVAL_MSEC;
-+ m_pPrgDnldStatusMgr->SetStatusUpdateGranularityMsec(
-+ m_ulCurStatusUpdateGranularity);
-+ }
-+ }
-+ else if (!GetGlobal()->g_bOnBeginOccurred)
-+ {
-+ if (HXR_OK == m_pPrgDnldStatusMgr->SetStatusUpdateGranularityMsec(
-+ m_ulCurStatusUpdateGranularity))
-+ {
-+ m_bInitialPrerollUpateGranularitySet = TRUE;
-+ }
-+ }
-+ }
-+
-+ UINT32 ulCurPlayTime = 0;
-+
-+ HXBOOL bPauseWasAttempted = FALSE;
-+ HXBOOL bPauseOccurred = FALSE;
-+ HXBOOL bResumeWasAttempted = FALSE;
-+ HXBOOL bResumeOccurred = FALSE;
-+
-+
-+ if (m_pHXPlayer)
-+ {
-+ ulCurPlayTime = m_pHXPlayer->GetCurrentPlayTime();
-+
-+ if (GetGlobal()->g_bEnableSlowStart &&
-+ lTimeSurplus != HX_PROGDOWNLD_UNKNOWN_TIME_SURPLUS)
-+ {
-+ // /"slow start" is enabled so if we have run dry of data,
-+ // pause and wait for more data:
-+ if (!m_bPlayerIsPausedByThis)
-+ {
-+ if (!m_bDownloadIsComplete && lTimeSurplus<0)
-+ {
-+ // /Use a 1000-millisecond allowance for variation:
-+ if (lTimeSurplus < -1000)
-+ {
-+ bPauseWasAttempted = TRUE;
-+ bPauseOccurred = m_bPlayerIsPausedByThis =
-+ (HXR_OK == m_pHXPlayer->Pause());
-+ }
-+ }
-+ }
-+ else // /paused; see if we can resume yet:
-+ {
-+ if (lTimeSurplus > 0)
-+ {
-+ // /Use a 1000-millisecond allowance for variation:
-+ if (lTimeSurplus > 1000)
-+ {
-+ bResumeWasAttempted = TRUE;
-+ bResumeOccurred = (HXR_OK == m_pHXPlayer->Begin());
-+ m_bPlayerIsPausedByThis = !bResumeOccurred;
-+ }
-+ }
-+ }
-+ }
-+ }
-+
-+ if (GetGlobal()->bEnableVerboseMode && !m_bDownloadIsComplete)
-+ {
-+ STDOUT("\nDownload progress: (play time=%lu,",
-+ ulCurPlayTime);
-+ if (HX_PROGDOWNLD_UNKNOWN_TIME_SURPLUS == lTimeSurplus)
-+ {
-+ STDOUT(" UNKNOWN surplus|deficit)");
-+ }
-+ else if (HX_PROGDOWNLD_MIN_TIME_SURPLUS == lTimeSurplus)
-+ {
-+ STDOUT(" deficit exceeds maximum");
-+ }
-+ else if (HX_PROGDOWNLD_MAX_TIME_SURPLUS == lTimeSurplus)
-+ {
-+ STDOUT(" surplus exceeds maximum)");
-+ }
-+ else
-+ {
-+ STDOUT(" surplus=%ld milliseconds)", lTimeSurplus);
-+ }
-+ if (HX_PROGDOWNLD_UNKNOWN_DURATION == ulNewDurSoFar)
-+ {
-+ STDOUT("\n\thave UNKNOWN");
-+ }
-+ else
-+ {
-+ STDOUT("\n\thave %lu", ulNewDurSoFar);
-+ }
-+
-+ if (HX_PROGDOWNLD_UNKNOWN_DURATION != m_ulTotalDurReported)
-+ {
-+ STDOUT(" of %lu msec", m_ulTotalDurReported);
-+ }
-+ else
-+ {
-+ STDOUT(" of UNKNOWN msec of media");
-+ }
-+ if (HX_PROGDOWNLD_UNKNOWN_FILE_SIZE != ulNewBytesSoFar)
-+ {
-+ STDOUT(" (%lu", ulNewBytesSoFar);
-+ }
-+ else
-+ {
-+ STDOUT(" (UNKNOWN");
-+ }
-+ STDOUT(" bytes downloaded so far)\n", ulNewBytesSoFar);
-+
-+ if (bPauseOccurred || bPauseWasAttempted)
-+ {
-+ STDOUT("# Waiting for more data: %splayback.\n "
-+ " Should take %ld milliseconds before playback resumes.\n",
-+ bPauseOccurred? "Pausing " :
-+ (bPauseWasAttempted? "Failed attempting to pause "
-+ : " "), -lTimeSurplus);
-+ }
-+ if (bResumeOccurred || bResumeWasAttempted)
-+ {
-+ STDOUT("# Data available: %splayback\n "
-+ " Time surplus is now %ld",
-+ bResumeOccurred? "Resuming " :
-+ (bResumeWasAttempted? "Failed attempting to resume "
-+ : " "), lTimeSurplus);
-+ }
-+ }
-+
-+ m_bFirstPDStatusMessage = FALSE;
-+
-+ return HXR_OK;
-+}
-+
-+/************************************************************************
-+ * Method:
-+ * IHXPDStatusObserver::OnTotalDurChanged
-+ * Purpose:
-+ * This is a notification if the total file duration becomes known
-+ * or becomes better-known during download/playback
-+ *
-+ * Note: pStreamSource can be NULL. This will be true when
-+ * IHXPDStatusMgr calling this is upstream of the IHXStreamSource
-+ * object.
-+ */
-+STDMETHODIMP
-+ExamplePDStatusObserver::OnTotalDurChanged(
-+ IHXStreamSource* /*IN*/ /*NULL is valid value*/ pStreamSource,
-+ UINT32 ulNewTotalDur)
-+{
-+ m_ulTotalDurReported = ulNewTotalDur;
-+
-+ if (GetGlobal()->bEnableVerboseMode)
-+ {
-+ STDOUT("\nOnTotalDurChanged(): to %lu milliseconds\n", ulNewTotalDur);
-+ }
-+
-+ return HXR_OK;
-+}
-+
-+/************************************************************************
-+ * Method:
-+ * IHXPDStatusObserver::OnDownloadComplete
-+ *
-+ * Purpose:
-+ * Notification that the entire file has been downloaded.
-+ *
-+ * Note: pStreamSource can be NULL. This will be true when
-+ * IHXPDStatusMgr calling this is upstream of the IHXStreamSource
-+ * object.
-+ *
-+ */
-+STDMETHODIMP
-+ExamplePDStatusObserver::OnDownloadComplete(
-+ IHXStreamSource* /*IN*/ /*NULL is valid value*/ pStreamSource)
-+{
-+ m_bDownloadIsComplete = TRUE;
-+
-+ HXBOOL bResumeWasAttempted = FALSE;
-+ HXBOOL bResumeOccurred = FALSE;
-+
-+ // /In case we're paused, resume now that there is no more data to get:
-+ if (m_pHXPlayer && m_bPlayerIsPausedByThis)
-+ {
-+ bResumeWasAttempted = TRUE;
-+ bResumeOccurred = (HXR_OK == m_pHXPlayer->Begin());
-+ m_bPlayerIsPausedByThis = !bResumeOccurred;
-+ }
-+
-+ if (GetGlobal()->bEnableVerboseMode)
-+ {
-+ STDOUT("\nOnDownloadComplete()\n");
-+ if (bResumeOccurred || bResumeWasAttempted)
-+ {
-+ STDOUT("\n%splayback now that bytes are available for "
-+ "uninterrupted playback\n",
-+ bResumeOccurred? "Resuming " :
-+ (bResumeWasAttempted? "Failed attempting to resume "
-+ : " "));
-+ }
-+ }
-+
-+ return HXR_OK;
-+}
-+
-+/************************************************************************
-+ * Method:
-+ * IHXPDStatusObserver::SrcClaimsSeekSupport ref: hxprdnld.h
-+ * Purpose:
-+ * Passes along notification from file sys that seek support
-+ * is or is not claimed to be available (although sometimes HTTP
-+ * server claims this when it doesn't actually support it).
-+ */
-+STDMETHODIMP
-+ExamplePDStatusObserver::SrcClaimsSeekSupport(IHXStreamSource* pStreamSource,
-+ HXBOOL bClaimsSupport)
-+{
-+ if (GetGlobal()->bEnableVerboseMode)
-+ {
-+ STDOUT("\nSrcClaimsSeekSupport(%sE)\n", bClaimsSupport?"TRU":"FALS");
-+ }
-+ return HXR_OK;
-+}
-+
-+
-+/************************************************************************
-+ * Method:
-+ * IHXPDStatusObserver::OnDownloadPause
-+ * Purpose:
-+ * Notification that the file-download process has purposefully
-+ * and temporarily halted downloading of the file
-+ *
-+ * Note: pStreamSource can be NULL. This will be true when
-+ * IHXPDStatusMgr calling this is upstream of the IHXStreamSource
-+ * object.
-+ */
-+STDMETHODIMP
-+ExamplePDStatusObserver::OnDownloadPause(
-+ IHXStreamSource* /*IN*/ /*NULL is valid value*/ pStreamSource)
-+{
-+ if (GetGlobal()->bEnableVerboseMode)
-+ {
-+ STDOUT("\nOnDownloadPause()\n");
-+ }
-+ return HXR_OK;
-+}
-+
-+/************************************************************************
-+ * Method:
-+ * IHXPDStatusObserver::OnDownloadResume
-+ * Purpose:
-+ * Notification that the file-download process has resumed
-+ * the process of downloading the remainder of the file
-+ *
-+ * Note: pStreamSource can be NULL. This will be true when
-+ * IHXPDStatusMgr calling this is upstream of the IHXStreamSource
-+ * object.
-+ */
-+STDMETHODIMP
-+ExamplePDStatusObserver::OnDownloadResume(
-+ IHXStreamSource* /*IN*/ /*NULL is valid value*/ pStreamSource)
-+{
-+ if (GetGlobal()->bEnableVerboseMode)
-+ {
-+ STDOUT("\nOnDownloadResume()\n");
-+ }
-+ return HXR_OK;
-+}
-+// /#endif // /HELIX_FEATURE_PROGRESSIVE_DOWNLD_STATUS.
-Index: helix-libs/clientapps/clutter/exprdnld.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ helix-libs/clientapps/clutter/exprdnld.h 2008-10-13 06:05:49.000000000 -0700
-@@ -0,0 +1,196 @@
-+/* ***** BEGIN LICENSE BLOCK *****
-+ * Version: RCSL 1.0/RPSL 1.0
-+ *
-+ * Portions Copyright (c) 1995-2004 RealNetworks, Inc. All Rights Reserved.
-+ *
-+ * The contents of this file, and the files included with this file, are
-+ * subject to the current version of the RealNetworks Public Source License
-+ * Version 1.0 (the "RPSL") available at
-+ * http://www.helixcommunity.org/content/rpsl unless you have licensed
-+ * the file under the RealNetworks Community Source License Version 1.0
-+ * (the "RCSL") available at http://www.helixcommunity.org/content/rcsl,
-+ * in which case the RCSL will apply. You may also obtain the license terms
-+ * directly from RealNetworks. You may not use this file except in
-+ * compliance with the RPSL or, if you have a valid RCSL with RealNetworks
-+ * applicable to this file, the RCSL. Please see the applicable RPSL or
-+ * RCSL for the rights, obligations and limitations governing use of the
-+ * contents of the file.
-+ *
-+ * This file is part of the Helix DNA Technology. RealNetworks is the
-+ * developer of the Original Code and owns the copyrights in the portions
-+ * it created.
-+ *
-+ * This file, and the files included with this file, is distributed and made
-+ * available on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
-+ * EXPRESS OR IMPLIED, AND REALNETWORKS HEREBY DISCLAIMS ALL SUCH WARRANTIES,
-+ * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY, FITNESS
-+ * FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
-+ *
-+ * Technology Compatibility Kit Test Suite(s) Location:
-+ * http://www.helixcommunity.org/content/tck
-+ *
-+ * Contributor(s):
-+ *
-+ * ***** END LICENSE BLOCK ***** */
-+
-+#ifndef _EXPRDNLD_H_
-+#define _EXPRDNLD_H_
-+
-+// /#if defined(HELIX_FEATURE_PROGRESSIVE_DOWNLD_STATUS)
-+
-+/****************************************************************************
-+ *
-+ * Class:
-+ *
-+ * ExamplePDStatusObserver
-+ *
-+ * Purpose:
-+ *
-+ * Implementation for IHXPDStatusObserver which receives progressive-
-+ * download status reports:
-+ *
-+ */
-+class ExamplePDStatusObserver :
-+ public IHXPDStatusObserver
-+{
-+private:
-+ INT32 m_lRefCount;
-+ IHXPDStatusMgr* m_pPrgDnldStatusMgr;
-+ IUnknown* m_pUnkPlayer;
-+ IHXPlayer* m_pHXPlayer;
-+ HXBOOL m_bPlayerIsPausedByThis;
-+ HXBOOL m_bFirstPDStatusMessage;
-+ UINT32 m_ulTotalDurReported;
-+ UINT32 m_ulDurSoFar;
-+ UINT32 m_ulCurStatusUpdateGranularity;
-+ HXBOOL m_bInitialPrerollUpateGranularitySet;
-+ HXBOOL m_bDownloadIsComplete;
-+
-+ ExamplePDStatusObserver();
-+ ~ExamplePDStatusObserver();
-+
-+public:
-+ ExamplePDStatusObserver(IUnknown* pUnkPlayer);
-+
-+ /*
-+ * IUnknown methods
-+ */
-+ STDMETHOD(QueryInterface) (THIS_
-+ REFIID riid,
-+ void** ppvObj);
-+
-+ STDMETHOD_(ULONG32,AddRef) (THIS);
-+
-+ STDMETHOD_(ULONG32,Release) (THIS);
-+
-+ /*
-+ * IHXPDStatusObserver methods
-+ */
-+
-+ /************************************************************************
-+ * Method:
-+ * IHXPDStatusObserver::OnDownloadProgress
-+ *
-+ * Purpose:
-+ * Notification from IHXPDStatusMgr of download progress when
-+ * file size changes.
-+ *
-+ * lTimeSurplus:
-+ * - When negative, the absolute value of it is the estimated number
-+ * of milliseconds of wall-clock time that need to pass while
-+ * downloading continues before reaching the point at which playback
-+ * can resume and play the remainder of the stream without having to
-+ * buffer, assuming that playback is paused and remains so during
-+ * that period.
-+ * - When positive, it is the estimated number of milliseconds of
-+ * wall-clock time between when the download should complete and when
-+ * the natural content play-out duration will be reached, assuming
-+ * playback is currently progressing and that no pause will occur.
-+ *
-+ * Note: ulNewDurSoFar can be HX_PROGDOWNLD_UNKNOWN_DURATION if the
-+ * IHXMediaBytesToMediaDurConverter was not available to, or was
-+ * unable to convert the bytes to a duration for the IHXPDStatusMgr
-+ * calling this:
-+ */
-+ STDMETHOD(OnDownloadProgress) (THIS_
-+ IHXStreamSource* /*IN*/ /*NULL is valid value*/ pStreamSource,
-+ UINT32 /*IN*/ ulNewDurSoFar,
-+ UINT32 /*IN*/ ulNewBytesSoFar,
-+ INT32 /*IN*/ lTimeSurplus);
-+
-+ /************************************************************************
-+ * Method:
-+ * IHXPDStatusObserver::OnTotalDurChanged
-+ * Purpose:
-+ * This is a notification if the total file duration becomes known
-+ * or becomes better-known during download/playback
-+ *
-+ * Note: pStreamSource can be NULL. This will be true when
-+ * IHXPDStatusMgr calling this is upstream of the IHXStreamSource
-+ * object.
-+ */
-+ STDMETHOD(OnTotalDurChanged) (THIS_
-+ IHXStreamSource* /*IN*/ /*NULL is valid value*/ pStreamSource,
-+ UINT32 /*IN*/ ulNewDur);
-+
-+ /************************************************************************
-+ * Method:
-+ * IHXPDStatusObserver::OnDownloadComplete
-+ *
-+ * Purpose:
-+ * Notification that the entire file has been downloaded.
-+ *
-+ * Note: pStreamSource can be NULL. This will be true when
-+ * IHXPDStatusMgr calling this is upstream of the IHXStreamSource
-+ * object.
-+ *
-+ */
-+ STDMETHOD(OnDownloadComplete) (THIS_
-+ IHXStreamSource* /*IN*/ /*NULL is valid value*/ pStreamSource);
-+
-+ /************************************************************************
-+ * Method:
-+ * IHXPDStatusObserver::SrcClaimsSeekSupport
-+ *
-+ * Purpose:
-+ * Passes along notification from file sys that seek support
-+ * is claimed to be available (although sometimes HTTP server
-+ * claims this when it doesn't actually support it).
-+ *
-+ */
-+ STDMETHOD(SrcClaimsSeekSupport) (THIS_
-+ IHXStreamSource* pStreamSource,
-+ HXBOOL /*IN*/ bSrcClaimsSeekSupport);
-+
-+ /************************************************************************
-+ * Method:
-+ * IHXPDStatusObserver::OnDownloadPause
-+ * Purpose:
-+ * Notification that the file-download process has purposefully
-+ * and temporarily halted downloading of the file
-+ *
-+ * Note: pStreamSource can be NULL. This will be true when
-+ * IHXPDStatusMgr calling this is upstream of the IHXStreamSource
-+ * object.
-+ */
-+ STDMETHOD(OnDownloadPause) (THIS_
-+ IHXStreamSource* /*IN*/ /*NULL is valid value*/ pStreamSource);
-+
-+ /************************************************************************
-+ * Method:
-+ * IHXPDStatusObserver::OnDownloadResume
-+ * Purpose:
-+ * Notification that the file-download process has resumed
-+ * the process of downloading the remainder of the file
-+ *
-+ * Note: pStreamSource can be NULL. This will be true when
-+ * IHXPDStatusMgr calling this is upstream of the IHXStreamSource
-+ * object.
-+ */
-+ STDMETHOD(OnDownloadResume) (THIS_
-+ IHXStreamSource* /*IN*/ /*NULL is valid value*/ pStreamSource);
-+};
-+// /#endif // /HELIX_FEATURE_PROGRESSIVE_DOWNLD_STATUS.
-+
-+#endif // _EXPRDNLD_H_
-+
-Index: helix-libs/clientapps/clutter/exroot.cpp
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ helix-libs/clientapps/clutter/exroot.cpp 2008-10-13 06:54:08.000000000 -0700
-@@ -0,0 +1,672 @@
-+/* ***** BEGIN LICENSE BLOCK *****
-+ * Source last modified: $Id: unixroot.cpp,v 1.9 2007/07/06 20:54:01 jfinnecy Exp $
-+ *
-+ * Portions Copyright (c) 1995-2004 RealNetworks, Inc. All Rights Reserved.
-+ *
-+ * The contents of this file, and the files included with this file,
-+ * are subject to the current version of the RealNetworks Public
-+ * Source License (the "RPSL") available at
-+ * http://www.helixcommunity.org/content/rpsl unless you have licensed
-+ * the file under the current version of the RealNetworks Community
-+ * Source License (the "RCSL") available at
-+ * http://www.helixcommunity.org/content/rcsl, in which case the RCSL
-+ * will apply. You may also obtain the license terms directly from
-+ * RealNetworks. You may not use this file except in compliance with
-+ * the RPSL or, if you have a valid RCSL with RealNetworks applicable
-+ * to this file, the RCSL. Please see the applicable RPSL or RCSL for
-+ * the rights, obligations and limitations governing use of the
-+ * contents of the file.
-+ *
-+ * Alternatively, the contents of this file may be used under the
-+ * terms of the GNU General Public License Version 2 (the
-+ * "GPL") in which case the provisions of the GPL are applicable
-+ * instead of those above. If you wish to allow use of your version of
-+ * this file only under the terms of the GPL, and not to allow others
-+ * to use your version of this file under the terms of either the RPSL
-+ * or RCSL, indicate your decision by deleting the provisions above
-+ * and replace them with the notice and other provisions required by
-+ * the GPL. If you do not delete the provisions above, a recipient may
-+ * use your version of this file under the terms of any one of the
-+ * RPSL, the RCSL or the GPL.
-+ *
-+ * This file is part of the Helix DNA Technology. RealNetworks is the
-+ * developer of the Original Code and owns the copyrights in the
-+ * portions it created.
-+ *
-+ * This file, and the files included with this file, is distributed
-+ * and made available on an 'AS IS' basis, WITHOUT WARRANTY OF ANY
-+ * KIND, EITHER EXPRESS OR IMPLIED, AND REALNETWORKS HEREBY DISCLAIMS
-+ * ALL SUCH WARRANTIES, INCLUDING WITHOUT LIMITATION, ANY WARRANTIES
-+ * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, QUIET
-+ * ENJOYMENT OR NON-INFRINGEMENT.
-+ *
-+ * Technology Compatibility Kit Test Suite(s) Location:
-+ * http://www.helixcommunity.org/content/tck
-+ *
-+ * Contributor(s):
-+ *
-+ * ***** END LICENSE BLOCK ***** */
-+
-+// for shared memory
-+#include <sys/types.h>
-+#include <sys/ipc.h>
-+#include <sys/shm.h>
-+#include <sys/utsname.h>
-+
-+#include "hxcom.h"
-+#include "hxwintyp.h"
-+#include "hxvsurf.h"
-+#include "hxslist.h"
-+#include "colormap.h"
-+#include "hxprefs.h"
-+#include "hxtick.h"
-+#include "hxthread.h"
-+#include "basesite.h"
-+#include "exroot.h"
-+#include "exsite.h"
-+#include "unixcmap.h"
-+#include "shmhelp.h"
-+
-+// #ifdef _DEBUG
-+// #include <X11/extensions/xf86vmode.h> //for debug video sync rates..
-+// #endif
-+
-+//Work around AIX problem.
-+#ifdef _AIX
-+# define MAX_SHARED_REGIONS ((UINT32)1)
-+#else
-+# define MAX_SHARED_REGIONS ((UINT32)9999)
-+#endif
-+
-+CExRootSurf::CExRootSurf(IUnknown* pContext, CHXBaseSite* pSite, on_new_frame_cb_t on_new_frame_cb, void *context )
-+ : CBaseRootSurface(pContext, pSite)
-+ , m_bUseShm(FALSE)
-+ , m_nShmId(0)
-+ , m_pDisplay(NULL)
-+ , m_GC(0)
-+ , m_nScreenNumber(0)
-+ , m_pXImage(NULL)
-+ , m_pVisual(NULL)
-+ , m_unDepth(0)
-+ , m_pScreen(NULL)
-+ , m_pYUVScratchBits(NULL)
-+ , m_nYUVScratchPitch(0)
-+ , m_pScratchBits(NULL)
-+ , m_nScratchPitch(0)
-+ , m_nBitsPerPixel(0)
-+ , m_nCompositionSize(0)
-+ , m_on_new_frame_cb(on_new_frame_cb)
-+ , m_context(context)
-+{
-+}
-+
-+HX_RESULT CExRootSurf::Init()
-+{
-+ //get window and display from main Site.
-+ HXxWindow* pWindow = m_pSite->GetWindow();
-+ HX_ASSERT(pWindow);
-+
-+ m_pDisplay = (Display*)pWindow->display;
-+ m_window = (Window)pWindow->window;
-+
-+ HX_ASSERT( m_pDisplay );
-+ HX_ASSERT( m_window );
-+
-+ //
-+ // Now see if our X11 server supports the Shared Memory extension.
-+ //
-+ // ShmHelp::Init(m_pDisplay);
-+ // m_bUseShm = ShmHelp::ShmAvailable();
-+
-+ //Create the graphics context
-+ XGCValues values;
-+
-+ XLockDisplay(m_pDisplay);
-+ m_GC = XCreateGC(m_pDisplay, m_window, 0, &values);
-+
-+ //Get X window attributes & visual
-+ XWindowAttributes attr;
-+ XGetWindowAttributes(m_pDisplay, m_window, &attr);
-+ XUnlockDisplay(m_pDisplay);
-+ m_pVisual = attr.visual;
-+
-+ // get visual info & depth
-+ int nv=0;
-+ XVisualInfo visInfo;
-+ memset(&visInfo, 0, sizeof(XVisualInfo));
-+ XLockDisplay(m_pDisplay);
-+ visInfo.visualid = XVisualIDFromVisual(m_pVisual);
-+ XVisualInfo* pVisualInfo = XGetVisualInfo (m_pDisplay, VisualIDMask, &visInfo, &nv);
-+// m_unDepth = pVisualInfo->depth;
-+ m_unDepth = 24;
-+ m_nScreenNumber = DefaultScreen(m_pDisplay);
-+ m_pScreen = XScreenOfDisplay(m_pDisplay, m_nScreenNumber);
-+ XUnlockDisplay(m_pDisplay);
-+ m_colormap = HXGetXColormap(m_pDisplay, m_window);
-+
-+ // get pixmap (blt) information for the best depth we can display
-+ int i=0;
-+ int nNum=0;
-+ XLockDisplay(m_pDisplay);
-+ XPixmapFormatValues *pixmap_formats = XListPixmapFormats(m_pDisplay, &nNum);
-+ XUnlockDisplay(m_pDisplay);
-+ if(pixmap_formats)
-+ {
-+ for (i=0 ; i<nNum; i++)
-+ {
-+ if (pixmap_formats[i].depth == m_unDepth)
-+ {
-+ m_nBitsPerPixel = pixmap_formats[i].bits_per_pixel;
-+ }
-+ }
-+ XFree(pixmap_formats);
-+ pixmap_formats = NULL;
-+ }
-+
-+ memset(&m_bmiSave, 0, sizeof(HXBitmapInfo));
-+#if 0
-+ m_bmiSave.bmiHeader.biBitCount = m_nBitsPerPixel;
-+ m_bmiSave.bmiHeader.biCompression = (m_unDepth==8 ? BI_RGB : BI_BITFIELDS);
-+ m_bmiSave.un.dwBitMask[0] = pVisualInfo->red_mask;
-+ m_bmiSave.un.dwBitMask[1] = pVisualInfo->green_mask;
-+ m_bmiSave.un.dwBitMask[2] = pVisualInfo->blue_mask;
-+#else
-+ /* Fake a RGB24 */
-+ m_nBitsPerPixel = 24;
-+ m_bmiSave.bmiHeader.biBitCount = m_nBitsPerPixel;
-+ m_bmiSave.bmiHeader.biCompression = BI_RGB;
-+#endif
-+ //Set primary surface CID.
-+ m_nCompositionSurfaceCID = GetBitmapColor(&m_bmiSave);
-+ XFree( pVisualInfo );
-+
-+// #ifdef _DEBUG
-+// //Lets find out what Hsync and Vsync rates we have for this display.
-+// //Ripped from xvidtune.c
-+// XF86VidModeModeLine mode_line;
-+// int scrn=0;
-+// int dot_clock;
-+// double vsync_hz, HSyncRate,HTotal, VTotal, PixelClock;
-+// if(XF86VidModeGetModeLine(m_pDisplay, scrn, &dot_clock, &mode_line))
-+// {
-+// PixelClock=dot_clock;
-+// HTotal = mode_line.htotal;
-+// VTotal = mode_line.vtotal;
-+// HSyncRate = PixelClock*1000.0/HTotal;
-+// vsync_hz = HSyncRate/VTotal;
-+// fprintf( stderr, "This Display's Hsync rate is: %f and Vsync: %f\n",
-+// HSyncRate, vsync_hz );
-+// }
-+
-+// #endif
-+
-+ return HXR_OK;
-+}
-+
-+CExRootSurf::~CExRootSurf()
-+{
-+ _DestroyCompositionSurface();
-+
-+ if( m_GC )
-+ {
-+ XLockDisplay(m_pDisplay);
-+ XFreeGC( m_pDisplay, m_GC );
-+ XUnlockDisplay(m_pDisplay);
-+ m_GC=0;
-+ }
-+ if (m_pVisual)
-+ {
-+ /* PJG: don't have to free visuals */
-+ m_pVisual = NULL;
-+ }
-+
-+ if(m_bUseShm)
-+ {
-+ if( m_pCompositionSurface != NULL )
-+ ShmHelp::DetachSharedRegion(&m_pCompositionSurface, &m_shmInfo);
-+ }
-+ else
-+ {
-+ HX_DELETE(m_pCompositionSurface);
-+ m_nCompositionSize=0;
-+ m_bCompositionSurfaceCreated=FALSE;
-+ }
-+
-+ //XXXgfw any more clean up for these two?
-+ HX_VECTOR_DELETE( m_pScratchBits );
-+ HX_VECTOR_DELETE( m_pYUVScratchBits );
-+
-+}
-+
-+HX_RESULT CExRootSurf::_ResizeVideoBuffer( INT32 nSize)
-+{
-+ HX_RESULT retVal=HXR_OK;
-+
-+ if(nSize <= m_nCompositionSize)
-+ return retVal;
-+
-+ if(m_bUseShm)
-+ {
-+ if( m_pCompositionSurface != NULL )
-+ retVal = ShmHelp::DetachSharedRegion(&m_pCompositionSurface, &m_shmInfo);
-+ if( retVal==HXR_OK )
-+ {
-+ retVal = ShmHelp::CreateSharedRegion( nSize,
-+ &m_pCompositionSurface,
-+ &m_nShmId,
-+ &m_shmInfo
-+ );
-+
-+ }
-+ if( retVal != HXR_OK )
-+ {
-+ m_bCompositionSurfaceCreated = FALSE;
-+ m_nCompositionSize = 0;
-+ m_bUseShm = FALSE;
-+ }
-+ else
-+ {
-+ //It all worked
-+ m_nCompositionSize = nSize;
-+ m_bCompositionSurfaceCreated = TRUE;
-+ return retVal;
-+ }
-+
-+ }
-+
-+ //We need to fall through here so that if the shared memory stuff
-+ //above fails we can create it the old fashioned way.
-+ if(m_pCompositionSurface == NULL)
-+ {
-+ m_pCompositionSurface = (UCHAR*) malloc(nSize);
-+ }
-+ else
-+ {
-+ m_pCompositionSurface = (UCHAR*) realloc(m_pCompositionSurface, nSize);
-+ }
-+ if( m_pCompositionSurface )
-+ {
-+ m_nCompositionSize = nSize;
-+ }
-+ else
-+ {
-+ HX_ASSERT("We can't alloc the composition surface." == NULL );
-+ m_nCompositionSize = 0;
-+ }
-+
-+ return retVal;
-+}
-+
-+HX_RESULT CExRootSurf::_DebugBlt( UCHAR* pImageData, HXBitmapInfoHeader* pBitmapInfo,
-+ HXxRect& rDestRect, HXxRect& rSrcRect)
-+{
-+ HX_ASSERT( m_window );
-+ HX_ASSERT( m_pDisplay );
-+ HX_ASSERT( m_GC );
-+ XLockDisplay(m_pDisplay);
-+ XSetForeground( m_pDisplay, m_GC, WhitePixel(m_pDisplay, 0 ));
-+ XSetBackground( m_pDisplay, m_GC, BlackPixel(m_pDisplay, 0 ));
-+ XSetLineAttributes(m_pDisplay, m_GC, 5, LineSolid, CapRound, JoinRound );
-+ XSetForeground( m_pDisplay, m_GC, WhitePixel(m_pDisplay, 0) );
-+ XFillRectangle( m_pDisplay, m_window, m_GC,
-+ rDestRect.left, rDestRect.top,
-+ rDestRect.right-rDestRect.left,
-+ rDestRect.bottom-rDestRect.top
-+ );
-+ XDrawRectangle( m_pDisplay, m_window, m_GC,
-+ rDestRect.left, rDestRect.top,
-+ rDestRect.right-rDestRect.left,
-+ rDestRect.bottom-rDestRect.top
-+ );
-+ XUnlockDisplay(m_pDisplay);
-+ return HXR_OK;
-+}
-+
-+void CExRootSurf::_GetYUVScratchWidthHeight(UINT32* pWidth, UINT32* pHeight)
-+{
-+ *pWidth = m_bmiYUVScratch.bmiHeader.biWidth;
-+ *pHeight = m_bmiYUVScratch.bmiHeader.biHeight;
-+}
-+
-+XImage* CExRootSurf::_GetCompositionSurfaceDrawable()
-+{
-+ return m_pXImage;
-+}
-+
-+
-+
-+//Not used except for XING.....
-+void CExRootSurf::_CreateYUVScratchSurface(UINT32 width, UINT32 height)
-+{
-+ //Remove old bits....
-+ HX_DELETE(m_pYUVScratchBits);
-+
-+ //Clear BitmapInfo struct....
-+ memset(&m_bmiYUVScratch, 0, sizeof(HXBitmapInfo));
-+ int nResult = MakeBitmap( &m_bmiYUVScratch,
-+ sizeof(m_bmiYUVScratch),
-+ CID_YUY2,
-+ width,
-+ height,
-+ NULL,
-+ 0);
-+ if( nResult )
-+ {
-+ m_pYUVScratchBits = new UCHAR[m_bmiYUVScratch.bmiHeader.biSizeImage];
-+ m_nYUVScratchPitch = GetBitmapPitch(&m_bmiYUVScratch);
-+ }
-+}
-+
-+
-+void CExRootSurf::_GetYUVScratchSurfacePointer(UCHAR** pYUVBits, INT32* YUVPitch)
-+{
-+ *pYUVBits = m_pYUVScratchBits;
-+ *YUVPitch = m_nYUVScratchPitch;
-+}
-+
-+HX_RESULT CExRootSurf::CreateScratchSurface( int nCompositionSurfaceCID, HXxSize* pSize)
-+{
-+ //Remove old bits....
-+ HX_DELETE(m_pScratchBits);
-+
-+ //Clear BitmapInfo struct....
-+ memset(&m_bmiScratch, 0, sizeof(HXBitmapInfo));
-+ int nResult = MakeBitmap( &m_bmiScratch,
-+ sizeof(m_bmiScratch),
-+ nCompositionSurfaceCID,
-+ pSize->cx,
-+ pSize->cy,
-+ NULL,
-+ 0);
-+ if( nResult )
-+ {
-+ m_pScratchBits = new UCHAR[m_bmiScratch.bmiHeader.biSizeImage];
-+ m_nScratchPitch = GetBitmapPitch(&m_bmiScratch);
-+ }
-+
-+ return nResult? HXR_OK : HXR_FAIL;
-+}
-+
-+HX_RESULT CExRootSurf::ScratchLock(UCHAR** pBits, INT32* pPitch)
-+{
-+ *pBits = m_pScratchBits;
-+ *pPitch = m_nScratchPitch;
-+ return HXR_OK;
-+}
-+
-+HX_RESULT CExRootSurf::ScratchUnlock(UCHAR* pBits)
-+{
-+ return HXR_OK;
-+}
-+
-+HX_RESULT CExRootSurf::_MinimalUnlock(HXxWindow* pWindow)
-+{
-+// Window win = m_window;
-+// HX_ASSERT(win);
-+// HXxSize hxxSize;
-+// m_pSite->GetSize(hxxSize);
-+
-+// if (m_bUseShm)
-+// {
-+// XShmPutImage(m_pDisplay,
-+// win,
-+// m_GC,
-+// m_pXImage,
-+// 0,
-+// 0,
-+// 0,
-+// 0,
-+// hxxSize.cx,
-+// hxxSize.cy,
-+// False
-+// );
-+// }
-+// else
-+// {
-+// XPutImage(m_pDisplay,
-+// win,
-+// m_GC,
-+// m_pXImage,
-+// 0,
-+// 0,
-+// 0,
-+// 0,
-+// hxxSize.cx,
-+// hxxSize.cy
-+// );
-+// }
-+ return HXR_OK;
-+}
-+
-+HX_RESULT CExRootSurf::_LockComposition(UCHAR** pBits, INT32* pPitch)
-+{
-+ HX_RESULT retVal = HXR_OK;
-+ if( !m_bCompositionSurfaceCreated || m_pCompositionSurface==NULL )
-+ {
-+ retVal = _CreateCompositionSurface();
-+ }
-+ HX_ASSERT( m_pCompositionSurface );
-+ *pBits = m_pCompositionSurface;
-+ *pPitch = m_nCompositionPitch;
-+ return HXR_OK;
-+}
-+
-+
-+void CExRootSurf::_BltFromScratchToComposition( HXxRect& rDestRect, HXxRect& rSrcRect)
-+{
-+ HX_ASSERT( "Not implemented on unix yet...."==NULL );
-+}
-+
-+HX_RESULT CExRootSurf::_CreateCompositionSurface()
-+{
-+ HX_RESULT retVal = HXR_FAIL;
-+
-+ if(m_bCompositionSurfaceCreated)
-+ {
-+ return HXR_OK;
-+ }
-+
-+ HX_ASSERT( !m_bCompositionSurfaceCreated );
-+ HX_ASSERT( m_pSite );
-+
-+ //Create a BMI to describe the composition surface
-+ HXxSize hxxSize;
-+ m_pSite->GetSize(hxxSize);
-+ memcpy(&m_compositionSize, &hxxSize, sizeof(HXxSize)); /* Flawfinder: ignore */
-+
-+ // find out how big we want to allocate.
-+ if (m_pSite->IsFullScreen())
-+ {
-+ UINT16 unDummy=0;
-+ UINT16 unHorzRes=0;
-+ UINT16 unVertRes=0;
-+ m_pSite->_GetDeviceCaps(NULL, unDummy, unHorzRes, unVertRes );
-+ m_allocatedCompositionSize.cx = unHorzRes;
-+ m_allocatedCompositionSize.cy = unVertRes;
-+ }
-+ else
-+ {
-+ // we use root surface for BASIC_BLT and it assumes the offset(position)
-+ // of the root site it cooresponding to is (0, 0).
-+ //
-+ // this is not true for "windowless" mode where the root site can be given
-+ // an offset, as a result, we fail to blt the video.
-+ //
-+ // to fix this, we'll take the m_positionOrg into consideration when
-+ // creating the composition surface, this may not be optimal but good enough
-+ // for now.
-+ //
-+ // similar logic is also added for other platforms, we need to move this
-+ // common code to the base class when we have chance to clean it up
-+ if (m_compositionSize.cx && m_compositionSize.cy)
-+ {
-+ m_compositionSize.cx += m_pSite->m_positionOrig.x;
-+ m_compositionSize.cy += m_pSite->m_positionOrig.y;
-+ }
-+
-+ m_allocatedCompositionSize.cx = m_compositionSize.cx;
-+ m_allocatedCompositionSize.cy = m_compositionSize.cy;
-+ }
-+
-+ //XXXgfw uhhhh, OK.
-+ if( m_compositionSize.cx > m_allocatedCompositionSize.cx ||
-+ m_compositionSize.cy > m_allocatedCompositionSize.cy )
-+ {
-+ m_allocatedCompositionSize.cx = m_compositionSize.cx;
-+ m_allocatedCompositionSize.cy = m_compositionSize.cy;
-+ }
-+
-+ //Make the bitmap header struct.
-+ m_bmiComposition.bmiHeader.biBitCount = m_bmiSave.bmiHeader.biBitCount;
-+ m_bmiComposition.bmiHeader.biCompression = m_bmiSave.bmiHeader.biCompression;
-+ m_bmiComposition.un.dwBitMask[0] = m_bmiSave.un.dwBitMask[0];
-+ m_bmiComposition.un.dwBitMask[1] = m_bmiSave.un.dwBitMask[1];
-+ m_bmiComposition.un.dwBitMask[2] = m_bmiSave.un.dwBitMask[2];
-+ int nResult = MakeBitmap( &m_bmiComposition,
-+ sizeof(m_bmiComposition),
-+ m_nCompositionSurfaceCID,
-+ m_allocatedCompositionSize.cx,
-+ m_allocatedCompositionSize.cy,
-+ NULL,
-+ 0
-+ );
-+ m_bmiComposition.bmiHeader.biBitCount = m_bmiSave.bmiHeader.biBitCount;
-+ m_bmiComposition.bmiHeader.biCompression = m_bmiSave.bmiHeader.biCompression;
-+ m_bmiComposition.un.dwBitMask[0] = m_bmiSave.un.dwBitMask[0];
-+ m_bmiComposition.un.dwBitMask[1] = m_bmiSave.un.dwBitMask[1];
-+ m_bmiComposition.un.dwBitMask[2] = m_bmiSave.un.dwBitMask[2];
-+
-+ //Now create the bits....
-+ _ResizeVideoBuffer( m_bmiComposition.bmiHeader.biSizeImage );
-+ m_nCompositionPitch = GetBitmapPitch( &m_bmiComposition );
-+
-+ if( m_pXImage )
-+ {
-+ XFree( m_pXImage );
-+ }
-+
-+ if( m_bUseShm )
-+ {
-+ XLockDisplay(m_pDisplay);
-+ m_pXImage = XShmCreateImage( m_pDisplay,
-+ m_pVisual,
-+ m_unDepth,
-+ ZPixmap,
-+ (char*)m_pCompositionSurface,
-+ &m_shmInfo,
-+ m_allocatedCompositionSize.cx,
-+ m_allocatedCompositionSize.cy
-+ );
-+ XUnlockDisplay(m_pDisplay);
-+ }
-+ else
-+ {
-+ XLockDisplay(m_pDisplay);
-+ m_pXImage = XCreateImage( m_pDisplay,
-+ m_pVisual,
-+ m_unDepth,
-+ ZPixmap,
-+ 0,
-+ (char*)m_pCompositionSurface,
-+ m_allocatedCompositionSize.cx,
-+ m_allocatedCompositionSize.cy,
-+ 32,
-+ 0);
-+ XUnlockDisplay(m_pDisplay);
-+ }
-+
-+ if( m_pXImage )
-+ {
-+ m_bCompositionSurfaceCreated = TRUE;
-+#ifdef _BIG_ENDIAN
-+ m_pXImage->byte_order = MSBFirst;
-+#else
-+ m_pXImage->byte_order = LSBFirst;
-+#endif
-+ retVal = HXR_OK;
-+ }
-+ return retVal;
-+}
-+
-+void CExRootSurf::_MinimalBlt(HXxRect& destRect)
-+{
-+ if (m_on_new_frame_cb)
-+ {
-+ PlayerImgInfo Info;
-+ Info.Rect.left = destRect.left;
-+ Info.Rect.right = destRect.right;
-+ Info.Rect.top = destRect.top;
-+ Info.Rect.bottom = destRect.bottom;
-+ Info.cx = m_allocatedCompositionSize.cx;
-+ Info.cy = m_allocatedCompositionSize.cy;
-+ m_on_new_frame_cb(m_pCompositionSurface,
-+ m_bmiComposition.bmiHeader.biSizeImage,
-+ &Info,
-+ m_context);
-+ }
-+}
-+
-+HX_RESULT CExRootSurf::_DestroyCompositionSurface()
-+{
-+ HX_RESULT retVal = HXR_OK;
-+ if( m_bCompositionSurfaceCreated )
-+ {
-+ if( m_pXImage )
-+ {
-+ XFree(m_pXImage);
-+ m_pXImage = NULL;
-+ }
-+ m_bCompositionSurfaceCreated = FALSE;
-+ }
-+
-+ return retVal;
-+}
-+
-+
-+
-+HX_RESULT CExRootSurf::BeginOptimizedBlt(HXBitmapInfoHeader* pBitmapInfo)
-+{
-+#ifdef _DEBUG
-+ fprintf(stderr, "CExRootSurf::BeginOptimizedBlt Needs to be written\n" );
-+#endif
-+ return HXR_NOTIMPL;
-+}
-+
-+HX_RESULT CExRootSurf::OptimizedBlt( UCHAR* pImageBits,
-+ HXxRect& rDestRect,
-+ HXxRect& rSrcRect)
-+{
-+#ifdef _DEBUG
-+ fprintf(stderr, "CExRootSurf::OptimizedBlt Needs to be written\n" );
-+#endif
-+ return HXR_NOTIMPL;
-+}
-+
-+HX_RESULT CExRootSurf::EndOptimizedBlt(void)
-+{
-+#ifdef _DEBUG
-+ fprintf(stderr, "CExRootSurf::EndOptimizedBlt Needs to be written\n" );
-+#endif
-+ return HXR_NOTIMPL;
-+}
-+
-+HX_RESULT CExRootSurf::GetOptimizedFormat(HX_COMPRESSION_TYPE& ulType)
-+{
-+#ifdef _DEBUG
-+ fprintf(stderr, "CExRootSurf::GetOptimizedFormat Needs to be written\n" );
-+#endif
-+ return HXR_NOTIMPL;
-+}
-+
-+HX_RESULT CExRootSurf::GetPreferredFormat(HX_COMPRESSION_TYPE& ulType)
-+{
-+#ifdef _DEBUG
-+ fprintf(stderr, "CExRootSurf::GetPreferredFormat Needs to be written\n" );
-+#endif
-+ return HXR_NOTIMPL;
-+}
-+
-+GC CExRootSurf::GetGC()
-+{
-+ return m_GC;
-+}
-Index: helix-libs/clientapps/clutter/exroot.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ helix-libs/clientapps/clutter/exroot.h 2008-10-13 06:05:49.000000000 -0700
-@@ -0,0 +1,155 @@
-+/* ***** BEGIN LICENSE BLOCK *****
-+ * Source last modified: $Id: unixroot.h,v 1.8 2007/07/06 20:54:05 jfinnecy Exp $
-+ *
-+ * Portions Copyright (c) 1995-2004 RealNetworks, Inc. All Rights Reserved.
-+ *
-+ * The contents of this file, and the files included with this file,
-+ * are subject to the current version of the RealNetworks Public
-+ * Source License (the "RPSL") available at
-+ * http://www.helixcommunity.org/content/rpsl unless you have licensed
-+ * the file under the current version of the RealNetworks Community
-+ * Source License (the "RCSL") available at
-+ * http://www.helixcommunity.org/content/rcsl, in which case the RCSL
-+ * will apply. You may also obtain the license terms directly from
-+ * RealNetworks. You may not use this file except in compliance with
-+ * the RPSL or, if you have a valid RCSL with RealNetworks applicable
-+ * to this file, the RCSL. Please see the applicable RPSL or RCSL for
-+ * the rights, obligations and limitations governing use of the
-+ * contents of the file.
-+ *
-+ * Alternatively, the contents of this file may be used under the
-+ * terms of the GNU General Public License Version 2 (the
-+ * "GPL") in which case the provisions of the GPL are applicable
-+ * instead of those above. If you wish to allow use of your version of
-+ * this file only under the terms of the GPL, and not to allow others
-+ * to use your version of this file under the terms of either the RPSL
-+ * or RCSL, indicate your decision by deleting the provisions above
-+ * and replace them with the notice and other provisions required by
-+ * the GPL. If you do not delete the provisions above, a recipient may
-+ * use your version of this file under the terms of any one of the
-+ * RPSL, the RCSL or the GPL.
-+ *
-+ * This file is part of the Helix DNA Technology. RealNetworks is the
-+ * developer of the Original Code and owns the copyrights in the
-+ * portions it created.
-+ *
-+ * This file, and the files included with this file, is distributed
-+ * and made available on an 'AS IS' basis, WITHOUT WARRANTY OF ANY
-+ * KIND, EITHER EXPRESS OR IMPLIED, AND REALNETWORKS HEREBY DISCLAIMS
-+ * ALL SUCH WARRANTIES, INCLUDING WITHOUT LIMITATION, ANY WARRANTIES
-+ * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, QUIET
-+ * ENJOYMENT OR NON-INFRINGEMENT.
-+ *
-+ * Technology Compatibility Kit Test Suite(s) Location:
-+ * http://www.helixcommunity.org/content/tck
-+ *
-+ * Contributor(s):
-+ *
-+ * ***** END LICENSE BLOCK ***** */
-+
-+#ifndef _UNIXROOT_H
-+#define _UNIXROOT_H
-+
-+#include "baseroot.h"
-+#if defined(USE_XWINDOWS)
-+#include <X11/Xatom.h>
-+#include <X11/Xlib.h>
-+#include <X11/Xutil.h>
-+#include <X11/Xos.h>
-+#include <X11/Intrinsic.h>
-+#include <X11/extensions/XShm.h>
-+#endif
-+
-+#include "player.h"
-+
-+class CExRootSurf : public CBaseRootSurface
-+{
-+public:
-+ CExRootSurf(IUnknown* pContext, CHXBaseSite* pSite, on_new_frame_cb_t on_new_frame_cb = NULL, void *context = NULL);
-+
-+ //Helpers....
-+ HX_RESULT Init();
-+ GC GetGC();
-+
-+ //public inherited stuff
-+ virtual HX_RESULT CreateScratchSurface(int nCompositionSurfaceCID,
-+ HXxSize* pSize);
-+ virtual HX_RESULT ScratchLock(UCHAR** pBits, INT32* pPitch);
-+ virtual HX_RESULT ScratchUnlock(UCHAR* pBits);
-+
-+ virtual HX_RESULT BeginOptimizedBlt(HXBitmapInfoHeader* pBitmapInfo);
-+ virtual HX_RESULT OptimizedBlt( UCHAR* pImageBits,
-+ HXxRect& rDestRect,
-+ HXxRect& rSrcRect);
-+ virtual HX_RESULT EndOptimizedBlt(void);
-+ virtual HX_RESULT GetOptimizedFormat(HX_COMPRESSION_TYPE& ulType);
-+ virtual HX_RESULT GetPreferredFormat(HX_COMPRESSION_TYPE& ulType);
-+
-+ XImage* _GetCompositionSurfaceDrawable();
-+
-+ //Shared Memory helper func for the basesurf to use.
-+// HX_RESULT _DetachSharedRegion();
-+// HX_RESULT _CreateSharedRegion(INT32 nSize);
-+
-+protected:
-+
-+ //Smartly handle resizing of shm buffer.
-+ HX_RESULT _ResizeVideoBuffer(INT32 nSize);
-+
-+ //Inherited from CBaseRootSurface....
-+ virtual void _BltFromScratchToComposition(HXxRect& rDestRect,
-+ HXxRect& rSrcRect);
-+ virtual HX_RESULT _DebugBlt( UCHAR* pImageData,
-+ HXBitmapInfoHeader* pBitmapInfo,
-+ HXxRect& rDestRect,
-+ HXxRect& rSrcRect);
-+ virtual void _GetYUVScratchWidthHeight(UINT32* pWidth, UINT32* pHeight);
-+ virtual void _CreateYUVScratchSurface(UINT32 width, UINT32 height);
-+ virtual void _GetYUVScratchSurfacePointer(UCHAR** pYUVBits, INT32* YUVPitch);
-+ virtual HX_RESULT _MinimalUnlock(HXxWindow* pWindow);
-+ virtual HX_RESULT _LockComposition(UCHAR** pBits, INT32* pPitch);
-+ virtual HX_RESULT _CreateCompositionSurface();
-+ virtual HX_RESULT _DestroyCompositionSurface();
-+ virtual void _MinimalBlt(HXxRect& dest);
-+
-+
-+private:
-+
-+ virtual ~CExRootSurf();
-+
-+ //Protect unintentional copy and default ctors.
-+ CExRootSurf();
-+ CExRootSurf( const CExRootSurf& );
-+ CExRootSurf& operator=( const CExRootSurf& it );
-+
-+ //Shared memory members.
-+ HXBOOL m_bUseShm;
-+ XShmSegmentInfo m_shmInfo;
-+ int m_nShmId;
-+
-+ //General display and GC stuff.
-+ Display* m_pDisplay;
-+ GC m_GC;
-+ int m_nScreenNumber;
-+ XImage* m_pXImage;
-+ Window m_window;
-+ Visual* m_pVisual;
-+ unsigned int m_unDepth;
-+ Screen* m_pScreen;
-+ Colormap m_colormap;
-+ int m_nBitsPerPixel;
-+
-+ //Bitmap stuff.
-+ UCHAR* m_pYUVScratchBits;
-+ HXBitmapInfo m_bmiYUVScratch;
-+ int m_nYUVScratchPitch;
-+ UCHAR* m_pScratchBits;
-+ HXBitmapInfo m_bmiScratch;
-+ int m_nScratchPitch;
-+ HXBitmapInfo m_bmiSave;
-+ ULONG32 m_nCompositionSize;
-+ on_new_frame_cb_t m_on_new_frame_cb;
-+ void * m_context;
-+};
-+
-+#endif
-Index: helix-libs/clientapps/clutter/exsite.cpp
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ helix-libs/clientapps/clutter/exsite.cpp 2008-10-13 06:05:49.000000000 -0700
-@@ -0,0 +1,2915 @@
-+/* ***** BEGIN LICENSE BLOCK *****
-+ * Source last modified: $Id: unixsite.cpp,v 1.18.2.6 2008/06/05 14:24:30 lovish Exp $
-+ *
-+ * Portions Copyright (c) 1995-2004 RealNetworks, Inc. All Rights Reserved.
-+ *
-+ * The contents of this file, and the files included with this file,
-+ * are subject to the current version of the RealNetworks Public
-+ * Source License (the "RPSL") available at
-+ * http://www.helixcommunity.org/content/rpsl unless you have licensed
-+ * the file under the current version of the RealNetworks Community
-+ * Source License (the "RCSL") available at
-+ * http://www.helixcommunity.org/content/rcsl, in which case the RCSL
-+ * will apply. You may also obtain the license terms directly from
-+ * RealNetworks. You may not use this file except in compliance with
-+ * the RPSL or, if you have a valid RCSL with RealNetworks applicable
-+ * to this file, the RCSL. Please see the applicable RPSL or RCSL for
-+ * the rights, obligations and limitations governing use of the
-+ * contents of the file.
-+ *
-+ * Alternatively, the contents of this file may be used under the
-+ * terms of the GNU General Public License Version 2 (the
-+ * "GPL") in which case the provisions of the GPL are applicable
-+ * instead of those above. If you wish to allow use of your version of
-+ * this file only under the terms of the GPL, and not to allow others
-+ * to use your version of this file under the terms of either the RPSL
-+ * or RCSL, indicate your decision by deleting the provisions above
-+ * and replace them with the notice and other provisions required by
-+ * the GPL. If you do not delete the provisions above, a recipient may
-+ * use your version of this file under the terms of any one of the
-+ * RPSL, the RCSL or the GPL.
-+ *
-+ * This file is part of the Helix DNA Technology. RealNetworks is the
-+ * developer of the Original Code and owns the copyrights in the
-+ * portions it created.
-+ *
-+ * This file, and the files included with this file, is distributed
-+ * and made available on an 'AS IS' basis, WITHOUT WARRANTY OF ANY
-+ * KIND, EITHER EXPRESS OR IMPLIED, AND REALNETWORKS HEREBY DISCLAIMS
-+ * ALL SUCH WARRANTIES, INCLUDING WITHOUT LIMITATION, ANY WARRANTIES
-+ * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, QUIET
-+ * ENJOYMENT OR NON-INFRINGEMENT.
-+ *
-+ * Technology Compatibility Kit Test Suite(s) Location:
-+ * http://www.helixcommunity.org/content/tck
-+ *
-+ * Contributor(s):
-+ * Phil Dibowitz
-+ *
-+ * ***** END LICENSE BLOCK ***** */
-+
-+#ifndef _UNIX
-+#error This is the UNIX platform specific implementation.
-+#endif
-+
-+//
-+// System includes...
-+//
-+#include <stdio.h>
-+#include "hlxclib/string.h"
-+#if defined(USE_XWINDOWS)
-+#include <X11/Intrinsic.h>
-+#include <X11/Shell.h>
-+#include <X11/Xlib.h>
-+#include <X11/Xutil.h>
-+#include <X11/keysym.h>
-+#include <X11/Xos.h>
-+#include <X11/cursorfont.h>
-+#include <X11/extensions/XShm.h>
-+#endif
-+
-+
-+//
-+// RMA includes...
-+//
-+#include "hxcom.h"
-+#include "hxcore.h"
-+#include "hxevent.h"
-+#include "hxwintyp.h"
-+#include "hxwin.h"
-+#include "hxsite2.h"
-+#include "hxtypes.h"
-+#include "exsite.h"
-+#include "unixcmap.h"
-+#include "visuals.h"
-+#include "region.h"
-+#include "basesurf.h"
-+#include "exroot.h"
-+#include "hxthread.h"
-+#include "hxtick.h"
-+#include "sitetext.h"
-+
-+#include "unixsurf.h"
-+
-+#include "hxprefs.h"
-+
-+//
-+// Global & Static global/member data....
-+//
-+Display *CHXExSite::zm_display = NULL;
-+static CHXMapPtrToPtr z_mapSiteToWindow;
-+
-+//
-+// Scroll bar support
-+//
-+#define SCROLL_BAR_WIDTH 13 //Width of scroll bar.
-+//#define _ARROWS_SIDE_BY_SIDE 1 //Regular or side by side arrows?
-+
-+
-+
-+
-+//
-+// CHXExSite only Methods...
-+//
-+CHXExSite::CHXExSite( IUnknown* pContext, IUnknown* pUnkOuter, INT32 lInitialZorder, on_new_frame_cb_t on_new_frame_cb, void *context)
-+ : CHXBaseSite( pContext, pUnkOuter, lInitialZorder )
-+ , m_pUnixEventHandler(NULL)
-+ , m_ScrollHorizButtonL(0)
-+ , m_ScrollHorizButtonR(0)
-+ , m_ScrollVertButtonT(0)
-+ , m_ScrollVertButtonB(0)
-+ , m_winFullScreenWindow(0)
-+ , m_winOldParent(0)
-+ , m_bScrollingInProgress(FALSE)
-+ , m_nScrollDir(0)
-+ , m_bLastPointInSite(FALSE)
-+ , m_bDamaged(FALSE)
-+ , m_bIgnoreFocusOutInFS(FALSE)
-+ , m_bReparent(FALSE)
-+ , m_on_new_frame_cb(on_new_frame_cb)
-+ , m_context(context)
-+#if defined(HELIX_CONFIG_MOBLIN)
-+ , m_pAttachWindowCallback(NULL)
-+ , m_pForceRedrawCallback(NULL)
-+#endif
-+{
-+ m_ptScrollVertPosT.x = m_ptScrollVertPosT.y = 0;
-+ m_ptScrollVertPosB.x = m_ptScrollVertPosB.y = 0;
-+ m_ptScrollHorizPosR.x = m_ptScrollHorizPosR.y = 0;
-+ m_ptScrollHorizPosL.x = m_ptScrollHorizPosL.y = 0;
-+ m_ptFullScreenOffset.x = m_ptFullScreenOffset.y = 0;
-+ memset( &m_PreFullScreenSize, 0, sizeof( m_PreFullScreenSize ) );
-+
-+ HX_ASSERT( m_pContext );
-+
-+ /* Replace m_pVideoSurface with my own */
-+/* HX_RELEASE(m_pVideoSurface);
-+ m_pVideoSurface = new CUnixSurf(m_pContext, this);
-+ HX_ASSERT( m_pVideoSurface );
-+ m_pVideoSurface->InitSurface(m_pContext);
-+ m_pVideoSurface->AddRef();
-+*/
-+ IHXPreferences* pPreferences = NULL;
-+ if( m_pContext && HXR_OK == m_pContext->QueryInterface( IID_IHXPreferences, (void **) &pPreferences))
-+ {
-+ IHXBuffer *pBuffer = NULL;
-+ pPreferences->ReadPref("IgnoreFocusOutInFS", pBuffer);
-+ if(pBuffer)
-+ {
-+ m_bIgnoreFocusOutInFS = (::atoi((const char*)pBuffer->GetBuffer()) == 1);
-+ HX_RELEASE(pBuffer);
-+ }
-+ }
-+}
-+
-+CHXExSite::~CHXExSite()
-+{
-+#if defined(HELIX_CONFIG_MOBLIN)
-+ RemovePendingCallback(m_pAttachWindowCallback);
-+ HX_RELEASE(m_pAttachWindowCallback);
-+
-+ RemovePendingCallback(m_pForceRedrawCallback);
-+ HX_RELEASE(m_pForceRedrawCallback);
-+#endif
-+ void* pDummy;
-+ if (z_mapSiteToWindow.Lookup((void*)this, pDummy))
-+ {
-+ z_mapSiteToWindow.RemoveKey((void*)this);
-+ }
-+
-+ if( m_pUnixEventHandler )
-+ {
-+ m_pUnixEventHandler->CancelCallback();
-+ HX_RELEASE(m_pUnixEventHandler);
-+ }
-+}
-+
-+HX_RESULT CHXExSite::_OpenXDisplay(char* pszDisplayString)
-+{
-+ HX_RESULT retVal = HXR_OK;
-+
-+ //Is the connection open already?
-+ if( NULL==zm_display )
-+ {
-+ zm_display = XOpenDisplay(pszDisplayString);
-+
-+ //If you can't open the display your done.
-+ if(NULL == zm_display )
-+ {
-+ HX_ASSERT("Can't open X Display..."==NULL);
-+ retVal = HXR_FAIL;
-+ }
-+ else
-+ {
-+ HX_ASSERT(m_pScheduler);
-+ if( m_pScheduler )
-+ {
-+ //UnixEventHandler scheduls itself for init callback
-+ //in the ctor.
-+ m_pUnixEventHandler = new UnixEventHandler(this);
-+ m_pUnixEventHandler->AddRef();
-+ }
-+ }
-+ }
-+ return retVal;
-+}
-+
-+Window CHXExSite::CreateXWindow( Window win )
-+{
-+ Window parentWindow;
-+ HXxWindow* pWindow = NULL;
-+ //If parentWin is NULL then we belong to the root window.
-+ if( win )
-+ {
-+ parentWindow = win;
-+ }
-+ else
-+ {
-+ HX_ASSERT(zm_display);
-+ XLockDisplay(zm_display);
-+ parentWindow = RootWindow(zm_display, DefaultScreen(zm_display));
-+ XUnlockDisplay(zm_display);
-+ }
-+
-+ //Find the best visual to use on this display.
-+ Visual* visual = GetBestVisual(zm_display);
-+
-+ //Get the visual info.
-+ int nNotUsed=0;
-+ XVisualInfo stVisInfo;
-+
-+ memset(&stVisInfo, 0, sizeof(XVisualInfo));
-+ stVisInfo.visualid = XVisualIDFromVisual(visual);
-+ XLockDisplay(zm_display);
-+ XVisualInfo* pVisual = XGetVisualInfo( zm_display,
-+ VisualIDMask,
-+ &stVisInfo,
-+ &nNotUsed );
-+ XUnlockDisplay(zm_display);
-+
-+ // Set up attributes of the window.
-+ int attrMask = CWBackPixel | CWBorderPixel;
-+ XSetWindowAttributes attr;
-+
-+ memset(&attr, 0, sizeof(XSetWindowAttributes));
-+ XLockDisplay(zm_display);
-+ attr.background_pixel = BlackPixel(zm_display, DefaultScreen(zm_display));
-+ attr.border_pixel = BlackPixel(zm_display, DefaultScreen(zm_display));
-+ XUnlockDisplay(zm_display);
-+
-+ //See if the default visaul of hte screen is the same one we Want
-+ //to use. If not, create a new one and install it.
-+ Colormap cmap;
-+ XLockDisplay(zm_display);
-+ Visual* defVisual = DefaultVisual(zm_display, DefaultScreen(zm_display));
-+ XUnlockDisplay(zm_display);
-+ if( defVisual->visualid != stVisInfo.visualid )
-+ {
-+ //XXXgfw Are we leaking this colormap????
-+ XLockDisplay(zm_display);
-+ cmap = XCreateColormap(zm_display, parentWindow, visual, AllocNone);
-+ XUnlockDisplay(zm_display);
-+ attr.colormap = cmap;
-+ attrMask |= CWColormap;
-+ }
-+
-+ // Set the size/position of the window before creating.
-+ XSizeHints size_hints;
-+
-+ size_hints.flags = PPosition | PSize;
-+ size_hints.x = m_position.x;
-+ size_hints.y = m_position.y;
-+ size_hints.width = 1;
-+ size_hints.height = 1;
-+
-+ //Create it.
-+ XLockDisplay(zm_display);
-+ Window window = XCreateWindow(zm_display,
-+ parentWindow,
-+ size_hints.x,
-+ size_hints.y,
-+ size_hints.width,
-+ size_hints.height,
-+ 0,
-+ pVisual->depth,
-+ InputOutput,
-+ visual,
-+ attrMask,
-+ &attr);
-+ XUnlockDisplay(zm_display);
-+ XFree(pVisual);
-+
-+ //Tell the WM about this window.
-+#if 0
-+ XSetStandardProperties( zm_display,
-+ window,
-+ "CHXExSite",
-+ "CHXExSite",
-+ None,
-+ NULL, 0,
-+ &size_hints
-+ );
-+#endif
-+
-+ //Select all input events on the window since the other platforms
-+ //we work with have no concept of event masks
-+ XLockDisplay(zm_display);
-+#if 0
-+ int result = XSelectInput( zm_display, window,
-+ ButtonPressMask | ButtonReleaseMask | KeyPressMask |
-+ KeyReleaseMask | EnterWindowMask | LeaveWindowMask |
-+ PointerMotionMask | ButtonMotionMask | KeymapStateMask |
-+ ExposureMask | StructureNotifyMask | FocusChangeMask
-+ );
-+#else
-+ int result = XSelectInput( zm_display, window, 0 );
-+
-+
-+#endif
-+ XUnlockDisplay(zm_display);
-+ if( BadWindow == result )
-+ {
-+#ifdef _DEBUG
-+ fprintf( stderr, "Can select events.\n" );
-+#endif
-+ }
-+
-+ //Map the window.
-+ XLockDisplay(zm_display);
-+ /* XMapWindow(zm_display, window); */
-+
-+ //Flush event queue.
-+ XFlush(zm_display);
-+ XUnlockDisplay(zm_display);
-+
-+
-+ return window;
-+}
-+
-+void CHXExSite::_MapHorzScroll()
-+{
-+#if 0
-+ if( GetWindow() && GetWindow()->display && m_ScrollHorizButtonL)
-+ {
-+ Display* pDis = (Display*)GetWindow()->display;
-+ XLockDisplay(pDis);
-+ XMapWindow( pDis, m_ScrollHorizButtonL );
-+ XMapWindow( pDis, m_ScrollHorizButtonR );
-+ XUnlockDisplay(pDis);
-+ }
-+ _DrawArrows();
-+#endif
-+}
-+
-+void CHXExSite::_MapVertScroll()
-+{
-+#if 0
-+ if( GetWindow() && GetWindow()->display && m_ScrollVertButtonT)
-+ {
-+ Display* pDis = (Display*)GetWindow()->display;
-+ XLockDisplay(pDis);
-+ XMapWindow( pDis, m_ScrollVertButtonT );
-+ XMapWindow( pDis, m_ScrollVertButtonB );
-+ XUnlockDisplay(pDis);
-+ }
-+ _DrawArrows();
-+#endif
-+}
-+
-+void CHXExSite::_MapScrollButtons()
-+{
-+#if 0
-+ _MapHorzScroll();
-+ _MapVertScroll();
-+#endif
-+}
-+
-+void CHXExSite::_UnmapHorzScroll()
-+{
-+#if 0
-+ HX_ASSERT( GetWindow() );
-+ if( m_ScrollHorizButtonL && GetWindow()->display )
-+ {
-+ Display* pDis = (Display*)GetWindow()->display;
-+ XLockDisplay(pDis);
-+ XUnmapWindow( pDis, m_ScrollHorizButtonL );
-+ XUnmapWindow( pDis, m_ScrollHorizButtonR );
-+ XUnlockDisplay(pDis);
-+ }
-+#endif
-+}
-+void CHXExSite::_UnmapVertScroll()
-+{
-+#if 0
-+ HX_ASSERT( GetWindow() );
-+ if( m_ScrollVertButtonT && GetWindow()->display )
-+ {
-+ Display* pDis = (Display*)GetWindow()->display;
-+ XLockDisplay(pDis);
-+ XUnmapWindow( pDis, m_ScrollVertButtonT );
-+ XUnmapWindow( pDis, m_ScrollVertButtonB );
-+ XUnlockDisplay(pDis);
-+ }
-+#endif
-+}
-+
-+void CHXExSite::_UnmapScrollButtons()
-+{
-+#if 0
-+ if( GetWindow() )
-+ {
-+ _UnmapVertScroll();
-+ _UnmapHorzScroll();
-+ }
-+#endif
-+}
-+
-+void CHXExSite::_DestroyScrollButtons()
-+{
-+ HXxWindow* pWin = GetWindow();
-+ Display* pDis = (Display*)(pWin?pWin->display:NULL);
-+
-+ if( m_ScrollHorizButtonL && pDis )
-+ {
-+ XLockDisplay(pDis);
-+ XDestroyWindow( pDis, m_ScrollHorizButtonL );
-+ m_ScrollHorizButtonL = 0;
-+ XDestroyWindow( pDis, m_ScrollHorizButtonR );
-+ XUnlockDisplay(pDis);
-+ m_ScrollHorizButtonR = 0;
-+ }
-+
-+ if( m_ScrollVertButtonT && pDis)
-+ {
-+ XLockDisplay(pDis);
-+ XDestroyWindow( pDis, m_ScrollVertButtonT );
-+ m_ScrollVertButtonT = 0;
-+ XDestroyWindow( pDis, m_ScrollVertButtonB );
-+ XUnlockDisplay(pDis);
-+ m_ScrollVertButtonB = 0;
-+ }
-+ m_ptScrollVertPosT.x = m_ptScrollVertPosT.y = 0;
-+ m_ptScrollVertPosB.x = m_ptScrollVertPosB.y = 0;
-+ m_ptScrollHorizPosR.x = m_ptScrollHorizPosR.y = 0;
-+ m_ptScrollHorizPosL.x = m_ptScrollHorizPosL.y = 0;
-+}
-+
-+void CHXExSite::_DrawArrows()
-+{
-+#if 0 //Paul Debug
-+ //only do the work if our site is visible.
-+ if( !IsSiteVisible() )
-+ return;
-+
-+ //Draw an arrow on this window.
-+ XPoint points[4];
-+ int offset = SCROLL_BAR_WIDTH/10;
-+ GC tmpGC;
-+ XGCValues values;
-+ Display* dis = (Display*)GetWindow()->display;
-+
-+ if( m_ScrollVertButtonB )
-+ {
-+ XLockDisplay(dis);
-+ tmpGC = XCreateGC( dis, m_ScrollVertButtonB, 0, &values );
-+ XUnlockDisplay(dis);
-+ }
-+ else if( m_ScrollHorizButtonL )
-+ {
-+ XLockDisplay(dis);
-+ tmpGC = XCreateGC( dis, m_ScrollHorizButtonL, 0, &values );
-+ XUnlockDisplay(dis);
-+ }
-+ else
-+ {
-+ //We don't have any scroll bars to draw....
-+ return;
-+ }
-+
-+
-+ XLockDisplay(dis);
-+ XSetForeground( dis, tmpGC, WhitePixel(dis, 0 ));
-+ XSetBackground( dis, tmpGC, BlackPixel(dis, 0 ));
-+ XUnlockDisplay(dis);
-+ Colormap cmap = HXGetXColormap((Display*)GetWindow()->display,
-+ (Window)GetWindow()->window);
-+ XColor color;
-+
-+ memset(&color, 0, sizeof(XColor));
-+ XLockDisplay(dis);
-+ XParseColor(dis, cmap, "blue", &color);
-+ XUnlockDisplay(dis);
-+ HXFindBestXColor(dis, cmap, &color);
-+ XLockDisplay(dis);
-+ XSetForeground( dis, tmpGC, color.pixel);
-+ XSetLineAttributes(dis, tmpGC, 1, LineSolid, CapRound, JoinRound );
-+ XUnlockDisplay(dis);
-+
-+
-+ //Draw up Vertical arrow.
-+ if( m_ScrollVertButtonT )
-+ {
-+ points[0].x = offset;
-+ points[0].y = SCROLL_BAR_WIDTH-offset;
-+ points[1].x = SCROLL_BAR_WIDTH/2;
-+ points[1].y = offset;
-+ points[2].x = SCROLL_BAR_WIDTH-offset;
-+ points[2].y = SCROLL_BAR_WIDTH-offset;
-+ points[3].x = points[0].x;
-+ points[3].y = points[0].y;
-+ XLockDisplay(dis);
-+ XFillPolygon( dis, m_ScrollVertButtonT, tmpGC, points, 4, Convex, CoordModeOrigin);
-+ XUnlockDisplay(dis);
-+ }
-+
-+ //Draw down Vertical arrow.
-+ if( m_ScrollVertButtonB )
-+ {
-+ points[0].x = offset;
-+ points[0].y = offset;
-+ points[1].x = SCROLL_BAR_WIDTH-offset;
-+ points[1].y = offset;
-+ points[2].x = SCROLL_BAR_WIDTH/2;
-+ points[2].y = SCROLL_BAR_WIDTH-offset;
-+ points[3].x = points[0].x;
-+ points[3].y = points[0].y;
-+ XLockDisplay(dis);
-+ XFillPolygon( dis, m_ScrollVertButtonB, tmpGC, points, 4, Convex, CoordModeOrigin);
-+ XUnlockDisplay(dis);
-+ }
-+
-+ //Draw Left Horizontal arrow.
-+ if( m_ScrollHorizButtonL )
-+ {
-+ points[0].x = SCROLL_BAR_WIDTH-offset;
-+ points[0].y = offset;
-+ points[1].x = SCROLL_BAR_WIDTH-offset;
-+ points[1].y = SCROLL_BAR_WIDTH-offset;
-+ points[2].x = offset;
-+ points[2].y = SCROLL_BAR_WIDTH/2;
-+ points[3].x = points[0].x;
-+ points[3].y = points[0].y;
-+ XLockDisplay(dis);
-+ XFillPolygon( dis, m_ScrollHorizButtonL, tmpGC, points, 4, Convex, CoordModeOrigin);
-+ XUnlockDisplay(dis);
-+ }
-+
-+ //Draw Right Horizontal arrow.
-+ if( m_ScrollHorizButtonR )
-+ {
-+ points[0].x = offset;
-+ points[0].y = SCROLL_BAR_WIDTH-offset;
-+ points[1].x = offset;
-+ points[1].y = offset;
-+ points[2].x = SCROLL_BAR_WIDTH-offset;
-+ points[2].y = SCROLL_BAR_WIDTH/2;
-+ points[3].x = points[0].x;
-+ points[3].y = points[0].y;
-+ XLockDisplay(dis);
-+ XFillPolygon( dis, m_ScrollHorizButtonR, tmpGC, points, 4, Convex, CoordModeOrigin);
-+ XUnlockDisplay(dis);
-+ }
-+
-+ //Free the GC and go.
-+ XLockDisplay(dis);
-+ XFreeGC( dis, tmpGC );
-+ XUnlockDisplay(dis);
-+#endif
-+}
-+
-+HXBOOL CHXExSite::_InButton( HXxPoint& pt, int x, int y )
-+{
-+ HXBOOL retVal =FALSE;
-+ if( x>= pt.x && x< pt.x+SCROLL_BAR_WIDTH && y>=pt.y && y<pt.y+SCROLL_BAR_WIDTH )
-+ retVal=TRUE;
-+ else
-+ retVal=FALSE;
-+
-+ return retVal;
-+}
-+
-+void CHXExSite::_CreateHorizScrollBar()
-+{
-+ HX_ASSERT( m_ScrollHorizButtonL == 0 );
-+ HX_ASSERT( m_ScrollHorizButtonR == 0 );
-+
-+ HXxSize mySize;
-+
-+ HXxWindow* pParentWindow = NULL;
-+ if(GetParentSite())
-+ {
-+ pParentWindow = GetParentSite()->GetWindow();
-+ }
-+ if(pParentWindow)
-+ {
-+ GetParentSite()->GetSize(mySize);
-+ }
-+
-+ HX_ASSERT( pParentWindow );
-+ HX_ASSERT( pParentWindow->window != 0 );
-+
-+ if( m_ScrollVertButtonB )
-+ {
-+ // if the other bar already exists, don't overlap it!
-+ mySize.cx -= SCROLL_BAR_WIDTH;
-+ }
-+
-+ m_ptScrollHorizPosL.x = m_topleft.x;
-+ m_ptScrollHorizPosL.y = m_topleft.y+mySize.cy-SCROLL_BAR_WIDTH;
-+
-+#ifndef _ARROWS_SIDE_BY_SIDE
-+ m_ptScrollHorizPosR.x = m_topleft.x+mySize.cx-SCROLL_BAR_WIDTH;
-+#else
-+ m_ptScrollHorizPosR.x = m_topleft.x+SCROLL_BAR_WIDTH;
-+#endif
-+ m_ptScrollHorizPosR.y = m_topleft.y+mySize.cy-SCROLL_BAR_WIDTH;
-+
-+ Display* dis = (Display*)GetWindow()->display;
-+ XLockDisplay(dis);
-+ Pixel blackPixel = BlackPixel( dis, DefaultScreen(dis) );
-+ XUnlockDisplay(dis);
-+ Pixel greyPixel = blackPixel;
-+
-+ Colormap cmap = HXGetXColormap(dis, (Window)GetWindow()->window);
-+ XColor color;
-+
-+ XLockDisplay(dis);
-+ XParseColor(dis, cmap, "gray", &color);
-+ XUnlockDisplay(dis);
-+ HXFindBestXColor(dis, cmap, &color);
-+ greyPixel = color.pixel;
-+
-+ XLockDisplay(dis);
-+ m_ScrollHorizButtonL = XCreateSimpleWindow( dis,
-+ (Window)pParentWindow->window,
-+ m_ptScrollHorizPosL.x, m_ptScrollHorizPosL.y,
-+ SCROLL_BAR_WIDTH, SCROLL_BAR_WIDTH,
-+ 1,
-+ blackPixel,
-+ greyPixel
-+ );
-+ m_ScrollHorizButtonR = XCreateSimpleWindow( dis,
-+ (Window)pParentWindow->window,
-+ m_ptScrollHorizPosR.x, m_ptScrollHorizPosR.y,
-+ SCROLL_BAR_WIDTH, SCROLL_BAR_WIDTH,
-+ 1,
-+ blackPixel,
-+ greyPixel
-+ );
-+ XUnlockDisplay(dis);
-+ HX_ASSERT( m_ScrollHorizButtonR && m_ScrollHorizButtonL );
-+
-+}
-+
-+void CHXExSite::_CreateVertScrollBar()
-+{
-+ HX_ASSERT( m_ScrollVertButtonB == 0 );
-+ HX_ASSERT( m_ScrollVertButtonT == 0 );
-+
-+ HXxSize mySize;
-+
-+ HXxWindow* pParentWindow = NULL;
-+ if(GetParentSite())
-+ {
-+ pParentWindow = GetParentSite()->GetWindow();
-+ }
-+ if(pParentWindow)
-+ {
-+ GetParentSite()->GetSize(mySize);
-+ }
-+
-+ HX_ASSERT( pParentWindow );
-+ HX_ASSERT( pParentWindow->window != 0 );
-+
-+ if( m_ScrollHorizButtonR )
-+ {
-+ // if the other bar already exists, don't overlap it!
-+ mySize.cy -= SCROLL_BAR_WIDTH;
-+ }
-+
-+
-+ m_ptScrollVertPosT.x = m_topleft.x+mySize.cx-SCROLL_BAR_WIDTH;
-+ m_ptScrollVertPosT.y = m_topleft.y;
-+
-+ m_ptScrollVertPosB.x = m_topleft.x+mySize.cx-SCROLL_BAR_WIDTH;
-+#ifndef _ARROWS_SIDE_BY_SIDE
-+ m_ptScrollVertPosB.y = m_topleft.y+mySize.cy-SCROLL_BAR_WIDTH;
-+#else
-+ m_ptScrollVertPosB.y = m_topleft.y+SCROLL_BAR_WIDTH;
-+#endif
-+
-+ Display* dis = (Display*)GetWindow()->display;
-+ XLockDisplay(dis);
-+ Pixel blackPixel = BlackPixel( dis, DefaultScreen(dis) );
-+ XUnlockDisplay(dis);
-+ Pixel greyPixel = blackPixel;
-+ Colormap cmap = HXGetXColormap((Display*)GetWindow()->display,
-+ (Window)GetWindow()->window);
-+ XColor color;
-+ XLockDisplay(dis);
-+ XParseColor(dis, cmap, "gray", &color);
-+ XUnlockDisplay(dis);
-+ HXFindBestXColor(dis, cmap, &color);
-+ greyPixel = color.pixel;
-+
-+ HX_ASSERT( GetWindow() );
-+ XLockDisplay(dis);
-+ m_ScrollVertButtonT = XCreateSimpleWindow( dis,
-+ (Window)pParentWindow->window,
-+ m_ptScrollVertPosT.x, m_ptScrollVertPosT.y,
-+ SCROLL_BAR_WIDTH, SCROLL_BAR_WIDTH,
-+ 1,
-+ blackPixel,
-+ greyPixel
-+ );
-+ m_ScrollVertButtonB = XCreateSimpleWindow( dis,
-+ (Window)pParentWindow->window,
-+ m_ptScrollVertPosB.x, m_ptScrollVertPosB.y,
-+ SCROLL_BAR_WIDTH, SCROLL_BAR_WIDTH,
-+ 1,
-+ blackPixel,
-+ greyPixel
-+ );
-+ XUnlockDisplay(dis);
-+
-+ HX_ASSERT( m_ScrollVertButtonB && m_ScrollVertButtonT );
-+
-+}
-+
-+//
-+// Inherited CHXBaseSite methods.
-+//
-+void CHXExSite::_NeedWindowedSite()
-+{
-+#ifdef _DEBUG
-+ fprintf( stderr, "CHXExSite::_NeedWindowedSite do something here....\n" );
-+#endif
-+ //Nothing to do on unix....
-+}
-+
-+void CHXExSite::_AttachWindow()
-+{
-+#if 1
-+ void* pDummy=NULL;
-+
-+ if (m_pRootSurface)
-+ { /* Replace CUnixRootSurf with my own CExRootSurf */
-+ HX_RELEASE(m_pRootSurface);
-+ m_pRootSurface = new CExRootSurf(m_pContext, this, m_on_new_frame_cb, m_context);
-+ m_pRootSurface->AddRef();
-+ }
-+
-+ if(!z_mapSiteToWindow.Lookup((void*)this, pDummy))
-+ {
-+ z_mapSiteToWindow.SetAt((void*)this, (void*)m_pWindow);
-+ }
-+
-+ //Set the display variable.
-+ if( m_pWindow->display == NULL )
-+ {
-+ HX_ASSERT(zm_display);
-+ m_pWindow->display = zm_display;
-+ }
-+
-+ //Now that we have a window be sure to init the CExRootSurf.
-+ //this lets it set up the display, colormap, etc.
-+ ((CExRootSurf*)m_pRootSurface)->Init();
-+#endif
-+}
-+
-+void CHXExSite::_DetachWindow()
-+{
-+#if 1
-+ void* pDummy;
-+
-+ if (z_mapSiteToWindow.Lookup((void*)this, pDummy))
-+ {
-+ z_mapSiteToWindow.RemoveKey((void*)this);
-+ }
-+#endif
-+}
-+
-+void* CHXExSite::_Create(void* pParentWindow, UINT32 style)
-+{
-+ HRESULT result = HXR_OK;
-+ if( m_pWindow && m_pWindow->window )
-+ {
-+ HX_ASSERT( "We already have created a window"==NULL);
-+ return NULL;
-+ }
-+
-+ if (pParentWindow==NULL || style)
-+ {
-+ m_bIsChildWindow = FALSE;
-+ }
-+ else
-+ {
-+ m_bIsChildWindow = TRUE;
-+ }
-+
-+ if( _OpenXDisplay(NULL) != HXR_OK )
-+ {
-+ return NULL;
-+ }
-+ return (void*)CreateXWindow((Window)pParentWindow);
-+}
-+
-+
-+void CHXExSite::_Destroy(HXxWindow* pWindow)
-+{
-+ _DestroySliders();
-+ HXxWindow* pWin = GetWindow();
-+ Display* pDis = (Display*)(pWin?pWin->display:NULL);
-+ if( pDis )
-+ {
-+ XLockDisplay(pDis);
-+ XDestroyWindow( pDis, (Window)pWindow->window );
-+ XUnlockDisplay(pDis);
-+ }
-+}
-+
-+void CHXExSite::_SetSize(HXxSize size)
-+{
-+ HX_ASSERT( m_pWindow && m_pWindow->display && m_pWindow->window);
-+ //The scroll bars get resized also...
-+ _DestroySliders();
-+ Display* pDis = (Display*)GetWindow()->display;
-+ XLockDisplay(pDis);
-+ XResizeWindow(pDis,
-+ (Window) m_pWindow->window,
-+ size.cx,
-+ size.cy);
-+ XUnlockDisplay(pDis);
-+}
-+
-+void CHXExSite::_SetPosition(HXxPoint position)
-+{
-+ HX_ASSERT( m_pWindow && m_pWindow->display && m_pWindow->window);
-+ _DestroyScrollButtons();
-+ XLockDisplay((Display*) m_pWindow->display);
-+ XMoveWindow((Display*)m_pWindow->display,
-+ (Window)m_pWindow->window,
-+ position.x,
-+ position.y);
-+ XUnlockDisplay((Display*) m_pWindow->display);
-+}
-+
-+void CHXExSite::_DamageRect(HXxRect rect)
-+{
-+ if(GetWindow())
-+ {
-+ m_bDamaged = TRUE;
-+ }
-+ return;
-+}
-+
-+void CHXExSite::_DamageRegion(HXxRegion rect)
-+{
-+ if(GetWindow())
-+ {
-+ m_bDamaged = TRUE;
-+ }
-+ return;
-+}
-+
-+void CHXExSite::_SendOSUpdateMessage()
-+{
-+ //We need to redraw our window here, m_pWindow.
-+}
-+
-+void CHXExSite::_ShowSite(HXBOOL bShow)
-+{
-+ if( bShow )
-+ {
-+ _MapScrollButtons();
-+ }
-+ else
-+ {
-+ _UnmapScrollButtons();
-+ }
-+ //do nothing....
-+}
-+
-+HXBOOL CHXExSite::_AtSystemTime()
-+{
-+ return TRUE;
-+}
-+
-+void CHXExSite::_GetDeviceCaps( void* hdc,
-+ UINT16& uBitsPerPixel,
-+ UINT16& uHorzRes,
-+ UINT16& uVertRes )
-+{
-+ Screen* pScreen = NULL;
-+ HXxWindow* pWin = GetWindow();
-+ HX_ASSERT( pWin );
-+ if( pWin )
-+ {
-+ Display* dis = (Display*)pWin->display;
-+ HX_ASSERT( dis );
-+ if( dis )
-+ {
-+ Display* pDisp = (Display*)GetWindow()->display;
-+ XLockDisplay(pDisp);
-+ pScreen = DefaultScreenOfDisplay(pDisp);
-+ XUnlockDisplay(pDisp);
-+
-+ uBitsPerPixel = pScreen->root_depth;
-+ uHorzRes = pScreen->width;
-+ uVertRes = pScreen->height;
-+ }
-+ }
-+}
-+
-+void CHXExSite::_GetWindowRect(HXxRect* destRect)
-+{
-+ HX_ASSERT( "Doesn't seem to be used anywhere"==NULL );
-+}
-+
-+void CHXExSite::_DestroySliders()
-+{
-+ _DestroyScrollButtons();
-+}
-+
-+void CHXExSite::_ForwardUpdateEvent(HXxEvent* pEvent)
-+{
-+ GC gc = NULL;
-+ AddRef();
-+
-+ HX_ASSERT(GetWindow()->window);
-+ HX_ASSERT(m_pUser);
-+ if(m_bIsChildWindow)
-+ {
-+ //Create a clip region that excludes our higher z-order
-+ //siblings and is clipped to our parent.
-+ if( !m_bRegionIsValid )
-+ {
-+ RecomputeClip();
-+ }
-+
-+ // The problem is that regions are locked to the origin so we
-+ // will need to reverse shift the region before we set the
-+ // origin of the graph port! get the GC from the video surface
-+ gc = ((CExRootSurf*)m_pRootSurface)->GetGC();
-+ HX_ASSERT( gc );
-+
-+ //Actually setup our clip region
-+ Display* pDis = (Display*)GetWindow()->display;
-+ XLockDisplay(pDis);
-+ XSetRegion( pDis, gc, (Region) m_Region );
-+ XUnlockDisplay(pDis);
-+ }
-+
-+ XEvent* pXEvent = (XEvent*) pEvent->param2;
-+ XExposeEvent* exposeEvent = (XExposeEvent*) pXEvent;
-+
-+ // get the rect for this site with respect to our parent
-+ HXRECTANGLE exposedRect = { exposeEvent->x,
-+ exposeEvent->y,
-+ exposeEvent->width,
-+ exposeEvent->height };
-+ HXREGION* exposedRegion = HXCreateRegion();
-+ HXUnionRectWithRegion(&exposedRect, exposedRegion, exposedRegion);
-+
-+ // does the site intersect the current clipping region?
-+ HXREGION* resultRegion = HXCreateRegion();
-+ HXIntersectRegion(exposedRegion, m_Region, resultRegion);
-+ HXBOOL bSiteIntersectsExposed = (HXEmptyRegion(resultRegion)==FALSE);
-+
-+ HXDestroyRegion(resultRegion);
-+ HXDestroyRegion(exposedRegion);
-+
-+ // if the exposed region intersects the sites clipping region
-+ if(bSiteIntersectsExposed)
-+ {
-+ m_pUser->HandleEvent(pEvent);
-+ }
-+
-+ //If the user doesn't handle the standard update event then send
-+ //them the cross platform HX_SURFACE_UPDATE event don't damage the
-+ //original event structure
-+ if(!pEvent->handled && m_pUser )
-+ {
-+ HX_ASSERT(GetWindow());
-+ HXxEvent event;
-+ event.event = HX_SURFACE_UPDATE;
-+ event.window = GetWindow()->window;
-+ event.param1 = m_pVideoSurface;
-+ event.param2 = GetWindow();
-+ event.result = 0;
-+ event.handled = FALSE;
-+ m_pUser->HandleEvent(&event);
-+ pEvent->handled = event.handled;
-+ }
-+
-+
-+ //reset the gc to use no region
-+ if(m_bIsChildWindow && gc)
-+ {
-+ Display* pDisp = (Display*)GetWindow()->display;
-+ XLockDisplay(pDisp);
-+ XSetClipMask(pDisp, gc, None);
-+ XUnlockDisplay(pDisp);
-+ }
-+
-+ //Handle the drawing of our arrows...
-+ _DrawArrows();
-+
-+ //Now do all our children....
-+ CHXMapPtrToPtr::Iterator i = m_ChildrenMap.Begin();
-+ for(;i!=m_ChildrenMap.End();++i)
-+ {
-+ CHXExSite* pSite = (CHXExSite*) *i;
-+ pSite->_ForwardUpdateEvent(pEvent);
-+ }
-+
-+ Release();
-+}
-+
-+UINT32 CHXExSite::_MapKeySymToHXVK(KeySym sym, UINT32& uFlags )
-+{
-+ //XXXgfw if we add the extended flag in the HX_KEYBOARD event
-+ //structure then we can modify the flags here to show that these
-+ //keys are 'extended' in the windows sense.
-+ UINT32 ulRet = 0;
-+ switch( sym )
-+ {
-+ case XK_Shift_R:
-+ ulRet = XK_Shift_L;
-+ break;
-+ case XK_Alt_R:
-+ ulRet = XK_Alt_L;
-+ break;
-+ case XK_KP_Home:
-+ ulRet = XK_Home;
-+ break;
-+ case XK_KP_Next:
-+ ulRet = XK_Next;
-+ break;
-+ case XK_KP_Prior:
-+ ulRet = XK_Prior;
-+ break;
-+ case XK_KP_Enter:
-+ ulRet = XK_Return;
-+ break;
-+ case XK_KP_End:
-+ ulRet = XK_End;
-+ break;
-+ case XK_KP_Begin:
-+ ulRet = XK_Begin;
-+ break;
-+ case XK_KP_Left:
-+ ulRet = XK_Left;
-+ break;
-+ case XK_KP_Up:
-+ ulRet = XK_Up;
-+ break;
-+ case XK_Control_R:
-+ ulRet = XK_Control_L;
-+ break;
-+ case XK_KP_Right:
-+ ulRet = XK_Right;
-+ break;
-+ case XK_KP_Down:
-+ ulRet = XK_Down;
-+ break;
-+ case XK_KP_Insert:
-+ ulRet = XK_Insert;
-+ break;
-+ case XK_KP_Delete:
-+ ulRet = XK_Delete;
-+ break;
-+ default:
-+ ulRet = sym;
-+ break;
-+ }
-+ if( ulRet != sym )
-+ {
-+ //We have mapped a key from Right hand side, keypad, arrows
-+ //or other parts of an extended keyboard. Set the flag.
-+ uFlags |= HX_EXTENDED_KEY_MASK;
-+ }
-+ return ulRet;
-+}
-+
-+
-+HXBOOL CHXExSite::_ConvertToHXEvent(HXxEvent* pEvent )
-+{
-+ // get original events info from pEvent
-+ XEvent* pXEvent = (XEvent*) pEvent->param2;
-+ XButtonEvent* buttonEvent = (XButtonEvent*) pXEvent;
-+
-+
-+ //===============================================================
-+ // Convert all other event to RMA generic events and pass back.
-+ //===============================================================
-+ if( ((pEvent->event == ButtonPress) ||
-+ (pEvent->event == ButtonRelease) ||
-+ (pEvent->event == MotionNotify ) ||
-+ (pEvent->event == EnterNotify) ||
-+ (pEvent->event == FocusIn) ||
-+ (pEvent->event == FocusOut) ||
-+ (pEvent->event == KeyPress) ||
-+ (pEvent->event == KeyRelease) ||
-+ (pEvent->event == LeaveNotify))
-+ )
-+ {
-+ // set modifier flags for all events....
-+ UINT32 flags = 0;
-+
-+ // create new HXxEvent
-+ HXxEvent theEvent;
-+
-+ //XXXgfw ouch....
-+ static HXxPoint realPt = {0,0};
-+
-+ //Init certain members.
-+ memset(&theEvent, 0, sizeof(HXxEvent));
-+ theEvent.window = pEvent->window;
-+ theEvent.handled = FALSE;
-+
-+ //
-+ // NOTE:
-+ //
-+ // theEvent must be filled in by *ALL* event types.
-+ // theEvent will be memcopied into the pEvent passed
-+ // back to the basesite at the end of the method.
-+ //
-+
-+ //==================================================
-+ // LEAVE NOTIFY EVENT
-+ //==================================================
-+ if( pEvent->event==LeaveNotify)
-+ {
-+ if( m_pTopLevelSite->m_pMouseInSite )
-+ {
-+ HXxPoint oobPoint;
-+ oobPoint.x = -1;
-+ oobPoint.y = -1;
-+ HXxEvent Outevent = { HX_MOUSE_LEAVE,
-+ m_pWindow->window,
-+ (void*)&oobPoint,
-+ 0, 0,
-+ FALSE };
-+ m_pTopLevelSite->m_pMouseInSite->EventOccurred(&Outevent);
-+ m_pTopLevelSite->m_pMouseInSite = NULL;
-+ }
-+ pEvent->handled=TRUE;
-+ return TRUE;
-+ }
-+
-+ //==================================================
-+ // ENTER NOTIFY EVENT
-+ //==================================================
-+ if( pEvent->event==EnterNotify)
-+ {
-+ pEvent->handled=TRUE;
-+ return TRUE;
-+ }
-+
-+ //==================================================
-+ // KEY PRESS/RELEASE EVENT
-+ //==================================================
-+ if ( pEvent->event == KeyPress || pEvent->event==KeyRelease )
-+ {
-+ XKeyEvent* pKeyEvent = (XKeyEvent*)pEvent->param2;
-+
-+ //
-+ //Set the event type
-+ //
-+ theEvent.event = pEvent->event==KeyPress?HX_KEY_DOWN:HX_KEY_UP;
-+
-+ //
-+ // Fill in the scan/key code.
-+ //
-+ flags = pKeyEvent->keycode;
-+ flags &= 0x000000ff; //the scan code only gets bits 0-7
-+
-+ //
-+ // build key modifier list...
-+ //
-+ if( pKeyEvent->state & ShiftMask )
-+ flags |= HX_SHIFT_MASK;
-+
-+ if( pKeyEvent->state & ControlMask )
-+ flags |= HX_CTRL_MASK;
-+
-+ if( pKeyEvent->state & LockMask )
-+ flags |= HX_CAPS_LOCK_MASK;
-+
-+ if( pKeyEvent->state & Mod1Mask)
-+ flags |= HX_ALT_MASK;
-+
-+ if( pKeyEvent->state & Mod2Mask)
-+ flags |= HX_NUM_LOCK_MASK;
-+
-+ if( pKeyEvent->state & Mod5Mask)
-+ flags |= HX_SCROLL_LOCK_MASK;
-+
-+ //
-+ //Store the char pressed.
-+ //
-+ KeySym sym;
-+ char szBuf[10]; /* Flawfinder: ignore */
-+ int nNum;
-+
-+ //Save the state of the keys...
-+ unsigned int unSave = pKeyEvent->state;
-+ pKeyEvent->state=0;
-+
-+ //Lookup the key without any state.
-+ nNum = XLookupString( pKeyEvent, szBuf, 10, &sym, NULL );
-+ if( nNum > 0 )
-+ {
-+ theEvent.param1 = (void*)*szBuf;
-+ }
-+ else
-+ {
-+ theEvent.param1 = (void*)_MapKeySymToHXVK(sym, flags);
-+ flags |= HX_VIRTUAL_KEY_MASK;
-+ }
-+ //restore the state of the event
-+ pKeyEvent->state = unSave;
-+
-+ //Set the flags...
-+ theEvent.param2 = (void*)flags;
-+
-+ //Check for HX_CHAR needed or not.
-+ if( theEvent.event == HX_KEY_DOWN )
-+ {
-+ //We have to send an extra HX_CHAR event
-+ HXxEvent extraEvent;
-+ memcpy( &extraEvent, &theEvent, sizeof( extraEvent ) ); /* Flawfinder: ignore */
-+
-+ //Change the type.
-+ extraEvent.event = HX_CHAR;
-+
-+ //
-+ //Change the keycode to an translated ascii char.
-+ //
-+ KeySym sym;
-+ char szBuf[10]; /* Flawfinder: ignore */
-+ int nNum;
-+
-+ nNum = XLookupString( pKeyEvent, szBuf, 10, &sym, NULL );
-+
-+ if( nNum > 0 )
-+ {
-+ extraEvent.param1 = (void*)*szBuf;
-+ }
-+ else
-+ {
-+ extraEvent.param1 = (void*)_MapKeySymToHXVK(sym, flags);
-+ flags |= HX_VIRTUAL_KEY_MASK;
-+ }
-+ extraEvent.param2 = (void*)flags;
-+
-+ //
-+ // Now send the extra event....
-+ //
-+ CHXBaseSite::EventOccurred(&extraEvent);
-+ }
-+ }
-+
-+ //==================================================
-+ // FOCUS OUT EVENT
-+ //==================================================
-+ if ( pEvent->event == FocusOut )
-+ {
-+ theEvent.event = HX_LOSE_FOCUS;
-+ }
-+
-+ if ( pEvent->event == FocusIn )
-+ {
-+ theEvent.event = HX_SET_FOCUS;
-+ }
-+
-+ //==================================================
-+ // MOUSE MOVE EVENT
-+ //==================================================
-+ if( pEvent->event == MotionNotify )
-+ {
-+ XMotionEvent* pp = (XMotionEvent*)pEvent->param2;
-+ theEvent.event = HX_MOUSE_MOVE;
-+
-+ if( pp->state&Button1Mask )
-+ flags |= HX_PRIMARY_BUTTON;
-+
-+ if( pp->state&Button2Mask )
-+ flags |= HX_CONTEXT_BUTTON;
-+
-+ if( pp->state&Button3Mask )
-+ flags |= HX_THIRD_BUTTON;
-+
-+ if(pp->state & ShiftMask)
-+ flags |= HX_SHIFT_KEY;
-+
-+ if(pp->state & ControlMask)
-+ flags |= HX_CTRL_KEY;
-+
-+ if(pp->state & Mod1Mask)
-+ flags |= HX_ALT_COMMAND_KEY;
-+
-+ theEvent.param2 = (void*) flags;
-+
-+ //Grab the X and Y.
-+ theEvent.param1 = (void*) &realPt;
-+ realPt.x = pp->x;
-+ realPt.y = pp->y;
-+ }
-+
-+ //==================================================
-+ // BUTTON PRESS/RELEASE EVENT
-+ //==================================================
-+ if((pEvent->event == ButtonPress) || (pEvent->event == ButtonRelease))
-+ {
-+ // remap event
-+ if (pEvent->event == ButtonPress)
-+ {
-+ if (buttonEvent->button == Button3)
-+ theEvent.event = HX_CONTEXT_BUTTON_DOWN;
-+ else
-+ theEvent.event = HX_PRIMARY_BUTTON_DOWN;
-+ }
-+ else if (pEvent->event == ButtonRelease)
-+ {
-+ if (buttonEvent->button == Button3)
-+ theEvent.event = HX_CONTEXT_BUTTON_UP;
-+ else
-+ theEvent.event = HX_PRIMARY_BUTTON_UP;
-+ }
-+
-+ if(buttonEvent->state & ShiftMask)
-+ flags |= HX_SHIFT_KEY;
-+
-+ if(buttonEvent->state & ControlMask)
-+ flags |= HX_CTRL_KEY;
-+
-+ theEvent.param2 = (void*) flags;
-+
-+ //Grab the X and Y.
-+ theEvent.param1 = (void*) &realPt;
-+ realPt.x = buttonEvent->x;
-+ realPt.y = buttonEvent->y;
-+ }
-+
-+ //Copy the new event back into the passed in one for
-+ //all events that fall through here...
-+ memcpy( pEvent, &theEvent, sizeof(HXxEvent) ); /* Flawfinder: ignore */
-+
-+#if defined(_DEBUG)
-+ //If the users presses control-primary button
-+ //dump info on all sites. If shift-context, then
-+ //just this site.
-+ if( (buttonEvent->state&ControlMask)&&
-+ (theEvent.event==HX_PRIMARY_BUTTON_DOWN))
-+ {
-+ DisplayAllSiteData();
-+ }
-+ if( (buttonEvent->state&ShiftMask)&&
-+ (theEvent.event==HX_PRIMARY_BUTTON_DOWN))
-+ {
-+ DisplaySiteData("");
-+ }
-+#endif
-+ }
-+ return pEvent->handled;
-+}
-+
-+
-+void CHXExSite::CheckColorSettings()
-+{
-+#if !defined(HELIX_FEATURE_HARDWARE_COLOR_CONTROLS)
-+ CHXBaseSite::CheckColorSettings();
-+#else
-+ CUnixSurf* pSurf = (CUnixSurf*)m_pVideoSurface;
-+ if( !pSurf->HasHWColorConrols() )
-+ {
-+ CHXBaseSite::CheckColorSettings();
-+ }
-+ else
-+ {
-+ pSurf->SetHWColorControls();
-+
-+ //We do all color stuff except sharpmess in hardware.
-+ float fCurrentSharpness;
-+ INT16 bInterpolate;
-+ zm_pColorAcc->GetSharpnessAdjustments(&fCurrentSharpness, &bInterpolate);
-+
-+ if (fCurrentSharpness != m_fSharpness)
-+ {
-+ zm_pColorAcc->SetSharpnessAdjustments(m_fSharpness, FALSE);
-+ }
-+ }
-+#endif
-+}
-+
-+//
-+// OK, here it is. Take care of any OS specific duties, like scrollbar
-+// stuff and expose events. Then, if the event isn't handled, convert
-+// to an RMA event and return.
-+HXBOOL CHXExSite::_HandleOSEvents(HXxEvent* pEvent)
-+{
-+ HXxPoint position = {0, 0};
-+ HXxPoint point;
-+
-+ if( NULL==pEvent )
-+ {
-+ return FALSE;
-+ }
-+
-+ return TRUE;
-+
-+#if defined(_DEBUG) && 0
-+// fprintf( stderr, "this: %p m_pUser: %p ", this, m_pUser );
-+ switch( pEvent->event )
-+ {
-+ case HX_MOUSE_LEAVE:
-+ fprintf( stderr, "HX_MOUSE_LEAVE\n" );
-+ break;
-+// case HX_MOUSE_MOVE:
-+// point.x = ((HXxPoint*)pEvent->param1)->x;
-+// point.y = ((HXxPoint*)pEvent->param1)->y;
-+// fprintf( stderr, "HX_MOUSE_MOVE: %d %d\n", point.x, point.y );
-+// break;
-+ case HX_MOUSE_ENTER:
-+ fprintf( stderr, "HX_MOUSE_ENTER\n" );
-+ break;
-+// case MotionNotify:
-+// point.x = ((XMotionEvent*)pEvent->param2)->x;
-+// point.y = ((XMotionEvent*)pEvent->param2)->y;
-+// fprintf( stderr, "MotionNotify: %d %d\n", point.x, point.y );
-+// break;
-+ case Expose:
-+ fprintf( stderr, "Expose\n" );
-+ break;
-+ case EnterNotify :
-+ fprintf( stderr, "EnterNotify\n" );
-+ break;
-+ case LeaveNotify:
-+ fprintf( stderr, "LeaveNotify\n" );
-+ break;
-+ case KeyPress:
-+ fprintf( stderr, "this: %p m_pUser: %p ", this, m_pUser );
-+ fprintf( stderr, "Keypress\n\n" );
-+ break;
-+ case KeyRelease:
-+ fprintf( stderr, "this: %p m_pUser: %p ", this, m_pUser );
-+ fprintf( stderr, "KeyRelease\n" );
-+ break;
-+ default:
-+ fprintf( stderr, "Other\n" );
-+ break;
-+ }
-+#endif
-+
-+ //Find the ConfigureNotify events so we can drop to RGB from
-+ //overlay while we move....
-+// if( pEvent->event == ConfigureNotify && this==m_pTopLevelSite )
-+// {
-+// XConfigureEvent* pev = (XConfigureEvent*)pEvent->param2;
-+// if( m_pWindow && pev->window == (Window)m_pWindow->window )
-+// {
-+// HXxPoint p;
-+// _GetPositionRelativeToActualWindow( p );
-+// // fprintf( stderr, "wint %p -- x,y width, height: %d %d %d %d \n",
-+// // pev->window,
-+// // pev->x, pev->y, pev->width, pev->height);
-+// // fprintf( stderr, "size of site: %d %d\n", m_size.cx, m_size.cy);
-+// // fprintf( stderr, "pos of site: %d %d\n", m_topleft.x, m_topleft.y);
-+// m_pTopLevelSite->m_pMutex->Lock();
-+// m_pTopLevelSite->SiteMoving(0, 0);
-+// m_pTopLevelSite->m_nLastMoveTime = HX_GET_TICKCOUNT();
-+// m_pTopLevelSite->ScheduleCallback(MOUSE, 100);
-+// m_pTopLevelSite->m_pMutex->Unlock();
-+// }
-+// }
-+
-+ //See if we should drop out of full screen
-+ if( pEvent->event == FocusOut && IsFullScreen() && !m_bIgnoreFocusOutInFS )
-+ {
-+// fprintf( stderr, "_HandleOSEvents: focus out: " );
-+// XEvent* pXEvent = (XEvent*) pEvent->param2;
-+// XFocusChangeEvent* event = (XFocusChangeEvent*) pXEvent;
-+// switch( event->mode )
-+// {
-+// case NotifyAncestor:
-+// fprintf( stderr, "NotifyAncestor\n" );
-+// break;
-+// case NotifyVirtual:
-+// fprintf( stderr, "NotifyVirtual\n" );
-+// break;
-+// case NotifyInferior:
-+// fprintf( stderr, "NotifyInferior\n" );
-+// break;
-+// case NotifyNonlinear:
-+// fprintf( stderr, "NotifyNonlinear\n" );
-+// break;
-+// case NotifyNonlinearVirtual:
-+// fprintf( stderr, "NotifyNonlinearVirtual\n" );
-+// break;
-+// case NotifyPointer:
-+// fprintf( stderr, "NotifyPointer\n" );
-+// break;
-+// case NotifyPointerRoot:
-+// fprintf( stderr, "NotifyPointerRoot\n" );
-+// break;
-+// case NotifyDetailNone:
-+// fprintf( stderr, "NotifyDetailNone\n" );
-+// break;
-+// default:
-+// fprintf( stderr, "screwed.....\n" );
-+// }
-+ ExitFullScreen();
-+ }
-+
-+
-+#if defined(_DEBUG) && defined(TEST_FULL_SCREEN)
-+ if( pEvent->event == KeyPress )
-+ {
-+ KeySym sym;
-+ char szBuf[10]; /* Flawfinder: ignore */
-+ int nNum;
-+
-+ //Lookup the key without any state.
-+ nNum = XLookupString( (XKeyEvent*)(pEvent->param2), szBuf, 10, &sym, NULL );
-+ if( nNum > 0 )
-+ {
-+ if( 'f' == szBuf[0] && IsFullScreen() )
-+ {
-+ //Exit full screen if 'f' is pressed.....
-+ m_pTopLevelSite->ExitFullScreen();
-+ }
-+ else if( 'f' == szBuf[0] && !IsFullScreen() )
-+ {
-+ //Enter full screen if 'f' is pressed.....
-+ m_pTopLevelSite->EnterFullScreen();
-+ }
-+
-+ }
-+
-+ }
-+#endif
-+
-+#if defined(_DEBUG) && defined(_TEST_COLOR_CONTROLS)
-+ if( pEvent->event == KeyPress )
-+ {
-+ KeySym sym;
-+ char szBuf[10]; /* Flawfinder: ignore */
-+ int nNum;
-+
-+ //Lookup the key without any state.
-+ nNum = XLookupString( (XKeyEvent*)(pEvent->param2), szBuf, 10, &sym, NULL );
-+ if( nNum > 0 )
-+ {
-+ if( 'b' == szBuf[0] )
-+ {
-+ SetBrightness( GetBrightness()-.05);
-+ }
-+ if( 'B' == szBuf[0] )
-+ {
-+ SetBrightness( GetBrightness()+.05);
-+ }
-+
-+ if( 'c' == szBuf[0] )
-+ {
-+ SetContrast( GetContrast()-.05);
-+ }
-+ if( 'C' == szBuf[0] )
-+ {
-+ SetContrast( GetContrast()+.05);
-+ }
-+
-+ if( 'h' == szBuf[0] )
-+ {
-+ SetHue( GetHue()-.05);
-+ }
-+ if( 'H' == szBuf[0] )
-+ {
-+ SetHue( GetHue()+.05 );
-+ }
-+
-+ if( 's' == szBuf[0] )
-+ {
-+ SetSaturation( GetSaturation()-.05);
-+ }
-+ if( 'S' == szBuf[0] )
-+ {
-+ SetSaturation( GetSaturation()+.05);
-+ }
-+ fprintf( stderr, "colors %f %f %f %f\n",
-+ GetBrightness(),
-+ GetContrast(),
-+ GetSaturation(),
-+ GetHue());
-+ }
-+
-+ }
-+#endif
-+
-+ //Exit full screen on ESC pressed......
-+ if( pEvent->event == KeyPress )
-+ {
-+ KeySym sym;
-+ char szBuf[10]; /* Flawfinder: ignore */
-+ int nNum;
-+
-+ //Lookup the key without any state.
-+ nNum = XLookupString( (XKeyEvent*)(pEvent->param2), szBuf, 10, &sym, NULL );
-+ if( nNum > 0 )
-+ {
-+ if( 27 == (int)szBuf[0] && IsFullScreen() )
-+ {
-+ //Exit full screen if esc is pressed.....
-+ m_pTopLevelSite->ExitFullScreen();
-+ }
-+ }
-+ }
-+
-+ //Find out if this is an event we are interested in. Make sure we
-+ //are visible, it isn't a button, expose or FocusIn event and also
-+ //make sure it is headed for our window.
-+ if (!_ShouldProcess(pEvent))
-+ {
-+ return FALSE;
-+ }
-+
-+
-+ if(m_pUser && GetWindow() && GetWindow()->window)
-+ {
-+ //Do not send an update event to a hidden site.
-+ if( pEvent->event == Expose ||
-+ pEvent->event == FocusIn ||
-+ pEvent->event == HX_SURFACE_UPDATE )
-+ {
-+ if( (m_ScrollVertButtonT || m_ScrollHorizButtonR) && IsSiteVisible() )
-+ {
-+ _DrawArrows();
-+ }
-+ _ForwardUpdateEvent(pEvent);
-+ return TRUE;
-+ }
-+ else
-+ {
-+ // get original events info from pEvent
-+ XEvent* pXEvent = (XEvent*) pEvent->param2;
-+ XButtonEvent* buttonEvent = (XButtonEvent*) pXEvent;
-+
-+
-+ //XXXgfw all this code sucks! It really need to be written
-+ //for just native events or RMA events. With the change to a
-+ //common site it is all screwed up. I am leaving it for now
-+ //so we can get on with transparancy but get back to it!
-+
-+ //If the user clicks MB1 on a scroll button, handle it here and
-+ //don't pass it up or let the user handle the event.
-+ //Hit detection here.
-+
-+ ////////////////////////////////////////////////////////
-+ // BEGIN SCROLLING GARBAGE
-+ ////////////////////////////////////////////////////////
-+ if(
-+ ((pEvent->event==ButtonPress || pEvent->event==ButtonRelease) &&
-+ buttonEvent->button==Button1) &&
-+ (m_ScrollHorizButtonL || m_ScrollVertButtonB )
-+ )
-+ {
-+ int buttonX=0;
-+ int buttonY=0;
-+
-+ if( pEvent->event==ButtonRelease )
-+ {
-+ if( m_bScrollingInProgress )
-+ {
-+ m_bScrollingInProgress = FALSE;
-+ m_nScrollDir = 0;
-+ return TRUE ;
-+ }
-+ }
-+ else
-+ {
-+ buttonX = buttonEvent->x;
-+ buttonY = buttonEvent->y;
-+
-+ HXBOOL bPointInSite = FALSE;
-+ if( m_Region )
-+ bPointInSite = HXPointInRegion(m_Region, buttonX, buttonY);
-+
-+ if( bPointInSite )
-+ {
-+ if( m_ScrollHorizButtonL )
-+ {
-+ if( _InButton( m_ptScrollHorizPosL, buttonX, buttonY ))
-+ {
-+ m_bScrollingInProgress = TRUE;
-+ m_nScrollDir = 1;
-+ }
-+ if( _InButton( m_ptScrollHorizPosR, buttonX, buttonY ))
-+ {
-+ m_bScrollingInProgress = TRUE;
-+ m_nScrollDir = 2;
-+ }
-+ }
-+ if( m_ScrollVertButtonT )
-+ {
-+ if( _InButton( m_ptScrollVertPosT, buttonX, buttonY ))
-+ {
-+ m_bScrollingInProgress = TRUE;
-+ m_nScrollDir = 3;
-+ }
-+ if( _InButton( m_ptScrollVertPosB, buttonX, buttonY ))
-+ {
-+ m_bScrollingInProgress = TRUE;
-+ m_nScrollDir = 4;
-+ }
-+ }
-+ }
-+ }
-+
-+ if( (m_ScrollHorizButtonL||m_ScrollVertButtonT) && m_bScrollingInProgress)
-+ {
-+ int xx=0;
-+ int yy=0;
-+ HXxWindow* pParentWindow = GetParentSite()->GetWindow();
-+ //Make it scroll 10% of the parent window each click.
-+ HXxSize sizeTmp;
-+ GetParentSite()->GetSize(sizeTmp);
-+
-+ //Set it to a percentage of the slider range.
-+ int incX = sizeTmp.cx/10;
-+ int incY = sizeTmp.cy/10;
-+
-+ HX_ASSERT( pParentWindow );
-+
-+ xx = m_XSliderPos;
-+ yy = m_YSliderPos;
-+
-+ if( m_nScrollDir == 1 )
-+ xx-=incX;
-+ if( m_nScrollDir == 2 )
-+ xx+=incX;
-+ if( m_nScrollDir == 3 )
-+ yy-=incY;
-+ if( m_nScrollDir == 4 )
-+ yy+=incY;
-+
-+ if( xx > m_size.cx-sizeTmp.cx )
-+ xx = m_size.cx-sizeTmp.cx;
-+ if( yy > m_size.cy-sizeTmp.cy)
-+ yy = m_size.cy-sizeTmp.cy;
-+
-+ if( xx < 0 )
-+ xx = 0;
-+ if( yy < 0 )
-+ yy = 0;
-+
-+ m_XSliderPos = xx;
-+ m_YSliderPos = yy;
-+
-+ HXxRect rect;
-+ DamageRect(rect);
-+
-+ InternalForceRedraw();
-+ }
-+ //Only throw away the event if it had something to do with
-+ //scolling.
-+ if( m_bScrollingInProgress )
-+ {
-+ m_bScrollingInProgress = FALSE;
-+ m_nScrollDir = 0;
-+ return TRUE;
-+ }
-+ }
-+ ////////////////////////////////////////////////////////
-+ // END SCROLLING GARBAGE
-+ ////////////////////////////////////////////////////////
-+ point.x = -1;
-+ point.y = -1;
-+
-+ if( pEvent->event == MotionNotify)
-+ {
-+ point.x = ((XMotionEvent*)pXEvent)->x;
-+ point.y = ((XMotionEvent*)pXEvent)->y;
-+ }
-+ else if( pEvent->event == ButtonPress )
-+ {
-+ point.x = ((XMotionEvent*)pXEvent)->x;
-+ point.y = ((XMotionEvent*)pXEvent)->y;
-+ }
-+
-+ //
-+ //Give the user a chance at the native event.
-+ //
-+ if( m_RegionWithoutChildren && HXPointInRegion(m_RegionWithoutChildren, point.x, point.y ))
-+ {
-+ if( m_Region && HXPointInRegion(m_Region, point.x, point.y) )
-+ {
-+ if (m_pUser)
-+ m_pUser->HandleEvent(pEvent);
-+ }
-+ else
-+ {
-+ INT32 handledCount = 0;
-+ INT32 mapCount = 0;
-+
-+ //try send this to all of our children
-+ _unixsitecpp1:
-+ mapCount = m_ChildrenMap.GetCount();
-+ CHXMapPtrToPtr::Iterator i;
-+ for(i=m_ChildrenMap.Begin() ; i!=m_ChildrenMap.End() ; ++i)
-+ {
-+ CHXBaseSite* pSite = (CHXBaseSite*) *i;
-+ pSite->_HandleOSEvents(pEvent);
-+ if (pEvent->handled)
-+ {
-+ break;
-+ }
-+ handledCount+=pEvent->handled;
-+ pEvent->handled=0;
-+
-+ if (m_ChildrenMap.GetCount() != mapCount)
-+ {
-+ goto _unixsitecpp1;
-+ }
-+ }
-+ if (handledCount)
-+ {
-+ pEvent->handled = 1;
-+ }
-+ HX_ASSERT(handledCount<2);
-+ }
-+ }
-+ pEvent->handled=FALSE;
-+ }
-+ }
-+
-+ return FALSE;
-+}
-+
-+void CHXExSite::_GenerateOSEvent(HXxEvent* pEvent, HXxEvent* pEvent2)
-+{
-+ //XXXgfw Not needed on UNIX I guess???
-+}
-+
-+void CHXExSite::_GenerateSetCursorEvent()
-+{
-+#ifdef _DEBUG
-+ fprintf( stderr, "CHXExSite::_GenerateSetCursorEvent\n" );
-+#endif
-+ //XXXgfw do we need this??
-+}
-+
-+void CHXExSite::_TryCreateXSlider()
-+{
-+#if 0
-+ if( !m_ScrollHorizButtonL && IsSiteVisible() )
-+ _CreateHorizScrollBar();
-+#endif
-+}
-+
-+void CHXExSite::_SetXSliderValues(INT32 range, INT32 pageSize)
-+{
-+ //XXXgfw this is a do nothing as long as we only have
-+ //scroll buttons on unix and not real scroll bars.
-+}
-+
-+void CHXExSite::_TryCreateYSlider()
-+{
-+#if 0
-+ if( !m_ScrollVertButtonT && IsSiteVisible() )
-+ _CreateVertScrollBar();
-+#endif
-+}
-+
-+void CHXExSite::_SetYSliderValues(INT32 range, INT32 pageSize)
-+{
-+ //XXXgfw this is a do nothing as long as we only have
-+ //scroll buttons on unix and not real scroll bars.
-+}
-+
-+void CHXExSite::_GetSystemSizeOfSliders(INT32* pWidth, INT32* pHeight)
-+{
-+#if 0
-+ *pWidth = *pHeight = SCROLL_BAR_WIDTH;
-+#endif
-+}
-+
-+HXBOOL CHXExSite::_IsWindowVisible()
-+{
-+#if 0
-+ HX_RESULT retVal = FALSE;
-+ //XXXgfw do this for now...
-+ retVal = IsSiteVisible();
-+ return retVal;
-+#else
-+ return FALSE;
-+#endif
-+
-+}
-+
-+void CHXExSite::_ShowXSlider(HXBOOL bShow)
-+{
-+#if 0
-+ if( GetWindow() )
-+ {
-+ if( bShow )
-+ _MapHorzScroll();
-+ else
-+ _UnmapHorzScroll();
-+ }
-+#endif
-+}
-+
-+void CHXExSite::_MoveXSlider( INT32 left,
-+ INT32 top,
-+ INT32 right,
-+ INT32 bottom,
-+ HXBOOL bRedraw )
-+{
-+ //Do nothing right now....
-+}
-+
-+void CHXExSite::_ShowYSlider(HXBOOL bShow)
-+{
-+#if 0
-+ if( GetWindow() )
-+ {
-+ if( bShow )
-+ _MapVertScroll();
-+ else
-+ _UnmapVertScroll();
-+ }
-+#endif
-+}
-+
-+void CHXExSite::_MoveYSlider( INT32 left,
-+ INT32 top,
-+ INT32 right,
-+ INT32 bottom,
-+ HXBOOL bRedraw)
-+{
-+ //do nothing right now...
-+}
-+
-+HXBOOL CHXExSite::_DoesXSliderExist()
-+{
-+ return FALSE;
-+// return (m_ScrollHorizButtonL!=0);
-+}
-+
-+void* CHXExSite::_GetContainingWindow()
-+{
-+ //XXXgfw Do we need this???
-+ return NULL;
-+}
-+
-+void CHXExSite::_GetCursorPos(HXxPoint* pPoint)
-+{
-+ //Return the cursor pos in screen coords.
-+ Window rootWin;
-+ Window childWin;
-+ int rootX=0;
-+ int rootY=0;
-+ int childX=0;
-+ int childY=0;
-+ unsigned int mask=0;
-+ Bool ret=FALSE;
-+
-+ HX_ASSERT(GetWindow());
-+ Display* pDis = (Display*)GetWindow()->display;
-+ XLockDisplay(pDis);
-+ ret = XQueryPointer(pDis,
-+ (Window)GetWindow()->window,
-+ &rootWin,
-+ &childWin,
-+ &rootX, &rootY,
-+ &childX, &childY,
-+ &mask);
-+ XUnlockDisplay(pDis);
-+
-+ if(ret)
-+ {
-+ pPoint->x = rootX;
-+ pPoint->y = rootY;
-+ }
-+}
-+void* CHXExSite::_GetWindowWithCursor()
-+{
-+#if 0
-+ //Return the cursor pos in screen coords.
-+ void* pRet = NULL;
-+ int rootX = 0;
-+ int rootY = 0;
-+ int childX= 0;
-+ int childY= 0;
-+ unsigned int mask = 0;
-+ Bool ret = FALSE;
-+ Window rootWin;
-+ Window childWin;
-+
-+ HX_ASSERT(GetWindow());
-+ Display* pDis = (Display*)GetWindow()->display;
-+ XLockDisplay(pDis);
-+ ret = XQueryPointer(pDis,
-+ (Window)GetWindow()->window,
-+ &rootWin,
-+ &childWin,
-+ &rootX, &rootY,
-+ &childX, &childY,
-+ &mask);
-+ XUnlockDisplay(pDis);
-+
-+ if(ret)
-+ {
-+ pRet = (void*)childWin;
-+ }
-+ return pRet;
-+#else
-+ HX_ASSERT( "Not implemented..." == NULL );
-+ return NULL;
-+#endif
-+}
-+
-+void CHXExSite::_MapPointToOSWindow(HXxPoint* pPt, void** pWindowHandle)
-+{
-+ //XXXgfw we could query the window tree and traverse down but that
-+ //is really slow and this isn't used right now.
-+ HX_ASSERT( "Not implemented..." == NULL );
-+}
-+
-+void CHXExSite::_ReInitPrimarySurface()
-+{
-+ //Nothing to do in unix here right?
-+}
-+
-+HXBOOL CHXExSite::_MoveWindow( void* win,
-+ INT32 X,
-+ INT32 Y,
-+ INT32 nWidth,
-+ INT32 nHeight,
-+ HXBOOL bRepaint)
-+{
-+#if 0
-+ //XXXgfw we still have to do bRepaint....
-+ HX_ASSERT( m_pWindow && m_pWindow->window && m_pWindow->display);
-+ _DestroyScrollButtons();
-+ XLockDisplay((Display*) m_pWindow->display);
-+ XMoveResizeWindow( (Display*)m_pWindow->display,
-+ (Window)m_pWindow->window,
-+ X,
-+ Y,
-+ nWidth,
-+ nHeight
-+ );
-+ XUnlockDisplay((Display*) m_pWindow->display);
-+#else
-+ HX_ASSERT( "Not implemented..." == NULL );
-+#endif
-+ return TRUE;
-+}
-+
-+HXBOOL CHXExSite::_UpdateWindow(void* hWnd)
-+{
-+ //We need to generate a repaint here of the window....
-+ return TRUE;
-+}
-+
-+HXBOOL CHXExSite::_ShowWindow(void* hWnd, INT32 nCmdShow)
-+{
-+#if 0
-+ HX_ASSERT( nCmdShow==HX_SHOW_WINDOW || nCmdShow==HX_HIDE_WINDOW);
-+ if( !m_pWindow || !m_pWindow->window || !m_pWindow->display )
-+ return FALSE;
-+
-+ if( nCmdShow == HX_SHOW_WINDOW )
-+ {
-+ _MapScrollButtons();
-+ XLockDisplay((Display*) m_pWindow->display);
-+ XMapWindow( (Display*)m_pWindow->display, (Window)m_pWindow->window );
-+ XUnlockDisplay((Display*) m_pWindow->display);
-+ }
-+ else
-+ {
-+ _UnmapScrollButtons();
-+ XLockDisplay((Display*) m_pWindow->display);
-+ XUnmapWindow( (Display*)m_pWindow->display, (Window)m_pWindow->window );
-+ XUnlockDisplay((Display*) m_pWindow->display);
-+ }
-+#endif
-+ return TRUE;
-+}
-+
-+HXBOOL CHXExSite::_SetWindowPos(void* hWnd,
-+ void* hWndInsertAfter,
-+ INT32 X,
-+ INT32 Y,
-+ INT32 cx,
-+ INT32 cy,
-+ INT32 uFlags)
-+{
-+#ifdef _DEBUG
-+ fprintf( stderr, "Now what on earth is this suppose to do??\n" );
-+#endif
-+ return TRUE;
-+}
-+
-+HXBOOL CHXExSite::_SetWindowRgn(void* hWnd, HXREGION* hRgn, HXBOOL bRedraw)
-+{
-+#if 0
-+ HX_ASSERT( GetWindow() );
-+ Display* pDis = (Display*)GetWindow()->display;
-+ XLockDisplay(pDis);
-+ XSetRegion( pDis,
-+ (GC)m_pVideoSurface->_GetDC(NULL),
-+ (Region)hRgn
-+ );
-+ XUnlockDisplay(pDis);
-+ if( bRedraw )
-+ {
-+ HX_ASSERT("Redraw asked for here"==NULL );
-+ }
-+#endif
-+ return TRUE;
-+}
-+
-+void CHXExSite::_SetFocus(void* pWindow)
-+{
-+#if 0
-+ XWindowAttributes attr;
-+ HXxWindow* pWin = GetWindow();
-+
-+ HX_ASSERT(pWin);
-+ HX_ASSERT(pWindow);
-+
-+ XLockDisplay((Display*) pWin->display);
-+ XGetWindowAttributes((Display*)pWin->display, (Window)pWindow, &attr);
-+ XUnlockDisplay((Display*) pWin->display);
-+ if( attr.map_state == IsViewable )
-+ {
-+ XLockDisplay((Display*) pWin->display);
-+ XSetInputFocus( (Display*)pWin->display,
-+ (Window)pWindow,
-+ RevertToParent,
-+ CurrentTime
-+ );
-+ XUnlockDisplay((Display*) pWin->display);
-+ }
-+
-+ return;
-+#endif
-+}
-+
-+HX_RESULT CHXExSite::_EnterFullScreen(HXxWindow* pWindow)
-+{
-+#if 0
-+ HXxWindow* pWin = GetWindow();
-+ HX_ASSERT( pWin && pWin->display && pWin->display);
-+ HX_ASSERT( this == m_pTopLevelSite );
-+
-+ if( 0 != m_winFullScreenWindow || IsFullScreen() )
-+ {
-+ //We are already in full screen
-+ return HXR_FAIL;
-+ }
-+
-+ //Create a override redirect window to fill the root.
-+ XSizeHints size_hints;
-+ XLockDisplay((Display*) pWin->display);
-+ Screen* pScreen = XDefaultScreenOfDisplay((Display*)pWin->display);
-+ XUnlockDisplay((Display*) pWin->display);
-+ UINT16 uHorzRes = WidthOfScreen(pScreen);
-+ UINT16 uVertRes = HeightOfScreen(pScreen);
-+ int attrMask = 0;
-+ XSetWindowAttributes attr;
-+
-+ memset(&attr, 0, sizeof(XSetWindowAttributes));
-+ attrMask = CWOverrideRedirect | CWBorderPixel |
-+ CWBackPixel | CWCursor;
-+ attr.cursor = None;
-+ attr.override_redirect = True;
-+ XLockDisplay((Display*)pWin->display);
-+ attr.background_pixel = BlackPixel((Display*)pWin->display,
-+ DefaultScreen((Display*)pWin->display));
-+ attr.border_pixel = BlackPixel((Display*)pWin->display,
-+ DefaultScreen((Display*)pWin->display));
-+ XUnlockDisplay((Display*)pWin->display);
-+
-+ size_hints.flags = PPosition | PSize;
-+ size_hints.x = 0;
-+ size_hints.y = 0;
-+ size_hints.width = uHorzRes;
-+ size_hints.height = uVertRes;
-+
-+ //Create it.
-+ XLockDisplay((Display*) pWin->display);
-+ Window window = XCreateWindow((Display*)pWin->display,
-+ DefaultRootWindow((Display*)pWin->display),
-+ size_hints.x,
-+ size_hints.y,
-+ size_hints.width,
-+ size_hints.height,
-+ 0,
-+ CopyFromParent,
-+ InputOutput,
-+ CopyFromParent,
-+ attrMask,
-+ &attr);
-+
-+ //Tell the WM about this window.
-+ XSetStandardProperties( (Display*)pWin->display,
-+ window,
-+ "unixfullscreen",
-+ "unixfullscreen",
-+ None,
-+ NULL, 0,
-+ &size_hints
-+ );
-+
-+ int result = XSelectInput( zm_display, window,
-+ ButtonPressMask | ButtonReleaseMask | KeyPressMask |
-+ KeyReleaseMask | EnterWindowMask | LeaveWindowMask |
-+ PointerMotionMask | ButtonMotionMask | KeymapStateMask |
-+ ExposureMask | StructureNotifyMask | FocusChangeMask
-+ );
-+
-+ //Map the window.
-+ XMapWindow((Display*)pWin->display, window);
-+ XUnlockDisplay((Display*) pWin->display);
-+
-+
-+ //Get ready to resize the presentation....
-+ if(m_pTopLevelSite)
-+ {
-+ m_pTopLevelSite->m_bDisableForceRedraw = TRUE;
-+ }
-+
-+ //Maintain aspect ratio and Scale it.
-+ float fXScale = (float)uHorzRes/(float)(m_size.cx);
-+ float fYScale = (float)uVertRes/(float)(m_size.cy);
-+ float fScale = (fXScale<fYScale) ? fXScale : fYScale;
-+ int nWidth = (int)(fScale*m_size.cx+.5);
-+ int nHeight = (int)(fScale*m_size.cy+.5);
-+
-+ //Center the presentation and save the old size
-+ memcpy( &m_PreFullScreenSize, &m_size, sizeof( HXxSize) ); /* Flawfinder: ignore */
-+ HXxSize size = {nWidth, nHeight};
-+
-+ if( nWidth<uHorzRes )
-+ m_ptFullScreenOffset.x = (uHorzRes-nWidth)/2;
-+
-+ if( nHeight<uVertRes )
-+ m_ptFullScreenOffset.y = (uVertRes-nHeight)/2;
-+
-+ //Reparent our main window.......
-+ Window winRootParent = 0;
-+ Window winParent = 0;
-+ Window* pwinChildren = NULL;
-+ unsigned int nNumChildren = 0;
-+ XLockDisplay((Display*) pWin->display);
-+ XQueryTree( (Display*)pWin->display,
-+ (Window)pWin->window,
-+ &winRootParent,
-+ &winParent,
-+ &pwinChildren,
-+ &nNumChildren
-+ );
-+ //Free unused children list.
-+ XFree( pwinChildren );
-+ XUnlockDisplay((Display*) pWin->display);
-+
-+ HX_ASSERT( winParent );
-+ m_winOldParent = winParent;
-+ XLockDisplay((Display*) pWin->display);
-+ XReparentWindow( (Display*)pWin->display,
-+ (Window)pWin->window,
-+ window,
-+ m_ptFullScreenOffset.x,
-+ m_ptFullScreenOffset.y
-+ );
-+
-+ //Flush event queue.
-+ XSync((Display*)pWin->display, False);
-+ XUnlockDisplay((Display*) pWin->display);
-+
-+ //Save it
-+ m_winFullScreenWindow = window;
-+ m_bInFullScreen = TRUE;
-+
-+ //Now resize it...
-+ SetSize(m_size);
-+ //Redraw the presentation....
-+ m_pTopLevelSite->m_bDisableForceRedraw = FALSE;
-+ _ForceRedrawAll();
-+
-+ //Give it focus....
-+ _SetFocus( (void*)pWin->window );
-+
-+ // now eat all the focusouts that came as a result of this reparent...
-+ XEvent event;
-+ XLockDisplay((Display*) pWin->display);
-+ HXBOOL status = XCheckTypedWindowEvent((Display*)pWin->display, (Window)pWin->window,
-+ FocusOut, &event);
-+ XUnlockDisplay((Display*) pWin->display);
-+ while (m_bWindowCreatedByCreate && status)
-+ {
-+ // just discarding these
-+ XLockDisplay((Display*) pWin->display);
-+ status = XCheckTypedWindowEvent((Display*)pWin->display, (Window)pWin->window,
-+ FocusOut, &event);
-+ XUnlockDisplay((Display*) pWin->display);
-+ }
-+
-+ //Update the status text...
-+ if(m_pStatusText)
-+ {
-+ m_pStatusText->ParentChangedSize();
-+ m_pStatusText->Show();
-+ }
-+
-+#else
-+ HX_ASSERT( "Not implemented..." == NULL );
-+#endif
-+ return HXR_OK;
-+}
-+
-+HX_RESULT CHXExSite::_ExitFullScreen()
-+{
-+#if 0
-+ HX_ASSERT( this == m_pTopLevelSite );
-+
-+ HXxWindow* pWin = GetWindow();
-+
-+ HX_ASSERT( pWin && pWin->display && pWin->window );
-+
-+ //Give the window back to the TLC.
-+
-+ XLockDisplay((Display*) pWin->display);
-+ XReparentWindow( (Display*)pWin->display,
-+ (Window)pWin->window,
-+ m_winOldParent,
-+ m_position.x, m_position.y
-+ );
-+ XUnlockDisplay((Display*) pWin->display);
-+
-+ //Just kill our window and take us out of full screen....
-+ if( 0 != m_winFullScreenWindow )
-+ {
-+ XLockDisplay((Display*) pWin->display);
-+ XDestroyWindow( (Display*)pWin->display, m_winFullScreenWindow );
-+ XUnlockDisplay((Display*) pWin->display);
-+ m_winFullScreenWindow = 0;
-+ }
-+
-+ m_bDisableForceRedraw = TRUE;
-+
-+ m_bInFullScreen = FALSE;
-+ HXxSize size = {0,0};
-+ memcpy( &size, &m_PreFullScreenSize, sizeof(HXxSize) ); /* Flawfinder: ignore */
-+ m_PreFullScreenSize.cx = m_PreFullScreenSize.cy = 0;
-+
-+ SetSize(size);
-+ _SetFocus( (void*)pWin->window );
-+ m_ptFullScreenOffset.x = 0;
-+ m_ptFullScreenOffset.y = 0;
-+
-+
-+ m_bDisableForceRedraw = FALSE;
-+ _ForceRedrawAll();
-+
-+ if(m_pStatusText)
-+ {
-+ m_pStatusText->ParentChangedSize();
-+ m_pStatusText->Hide();
-+ }
-+
-+ //move the site back to where it was.
-+ if( m_pTopLevelSite )
-+ {
-+ m_pTopLevelSite->_SetPosition(m_CreateWindowPos);
-+ }
-+
-+ return HXR_OK;
-+#else
-+ HX_ASSERT( "Not implemented..." == NULL );
-+#endif
-+}
-+
-+HX_RESULT CHXExSite::_EnterFullScreenNoNewWindow()
-+{
-+#if 0
-+ HXxWindow* pWin = GetWindow();
-+
-+ HX_ASSERT( pWin && pWin->display && pWin->display);
-+ HX_ASSERT( this == m_pTopLevelSite );
-+
-+ if(IsFullScreen() || !pWin)
-+ {
-+ //We are already in full screen
-+ return HXR_FAIL;
-+ }
-+
-+ //Get the screen size.
-+ XLockDisplay((Display*) pWin->display);
-+ Screen* pScreen = XDefaultScreenOfDisplay((Display*)pWin->display);
-+ UINT16 uHorzRes = WidthOfScreen(pScreen);
-+ UINT16 uVertRes = HeightOfScreen(pScreen);
-+ XUnlockDisplay((Display*)pWin->display);
-+
-+ //Get ready to resize the presentation....
-+ if( m_pTopLevelSite )
-+ {
-+ m_pTopLevelSite->m_bDisableForceRedraw = TRUE;
-+ }
-+
-+ //Maintain aspect ratio and Scale it.
-+ float fXScale = (float)uHorzRes/(float)(m_size.cx);
-+ float fYScale = (float)uVertRes/(float)(m_size.cy);
-+ float fScale = (fXScale<fYScale) ? fXScale : fYScale;
-+ int nWidth = (int)(fScale*m_size.cx+.5);
-+ int nHeight = (int)(fScale*m_size.cy+.5);
-+
-+ //Center the presentation and save the old size
-+ memcpy( &m_PreFullScreenSize, &m_size, sizeof( HXxSize) ); /* Flawfinder: ignore */
-+
-+ HXxSize size = {nWidth, nHeight};
-+
-+ if( nWidth < uHorzRes )
-+ {
-+ m_ptFullScreenOffset.x = (uHorzRes - nWidth)/2;
-+ }
-+
-+ if( nHeight < uVertRes )
-+ {
-+ m_ptFullScreenOffset.y = (uVertRes - nHeight)/2;
-+ }
-+
-+ //Reparent our main window.......
-+ Window winRootParent = 0;
-+ Window winParent = 0;
-+ Window* pwinChildren = NULL;
-+ unsigned int nNumChildren = 0;
-+ XLockDisplay((Display*) pWin->display);
-+ XQueryTree( (Display*)pWin->display,
-+ (Window)pWin->window,
-+ &winRootParent,
-+ &winParent,
-+ &pwinChildren,
-+ &nNumChildren
-+ );
-+
-+ //Free unused children list.
-+ XFree( pwinChildren );
-+ XUnlockDisplay((Display*) pWin->display);
-+
-+ HX_ASSERT( winParent );
-+ m_winOldParent = winParent;
-+
-+ m_bInFullScreen = TRUE;
-+
-+ //Now resize it...
-+ SetSize(m_size);
-+
-+ //Redraw the presentation....
-+ if( m_pTopLevelSite )
-+ {
-+ m_pTopLevelSite->m_bDisableForceRedraw = FALSE;
-+ }
-+
-+ _ForceRedrawAll();
-+
-+ //Give it focus....
-+ _SetFocus( (void*)pWin->window );
-+
-+ // now eat all the focusouts that came as a result of this reparent...
-+ XEvent event;
-+ XLockDisplay((Display*) pWin->display);
-+ HXBOOL status = XCheckTypedWindowEvent((Display*)pWin->display, (Window)pWin->window,
-+ FocusOut, &event);
-+ XUnlockDisplay((Display*) pWin->display);
-+ while (m_bWindowCreatedByCreate && status)
-+ {
-+ // just discarding these
-+ XLockDisplay((Display*) pWin->display);
-+ status = XCheckTypedWindowEvent((Display*)pWin->display, (Window)pWin->window,
-+ FocusOut, &event);
-+ XUnlockDisplay((Display*) pWin->display);
-+ }
-+
-+ //Update the status text...
-+ if(m_pStatusText)
-+ {
-+ m_pStatusText->ParentChangedSize();
-+ m_pStatusText->Show();
-+ }
-+#if defined(HELIX_CONFIG_MOBLIN)
-+ if(!m_pAttachWindowCallback)
-+ {
-+ m_pAttachWindowCallback = new CHXGenericCallback((void*)this, (fGenericCBFunc)AttachWindowCallback);
-+ m_pAttachWindowCallback->AddRef();
-+ }
-+ if(!m_pForceRedrawCallback)
-+ {
-+ m_pForceRedrawCallback = new CHXGenericCallback((void*)this, (fGenericCBFunc)ForceRedrawCallback);
-+ m_pForceRedrawCallback->AddRef();
-+ }
-+
-+ // schedule callback for Attaching Window
-+ if(m_pAttachWindowCallback)
-+ {
-+ m_pAttachWindowCallback->CallbackScheduled(m_pScheduler->RelativeEnter(m_pAttachWindowCallback, 100));
-+ }
-+ if(m_pForceRedrawCallback)
-+ {
-+ m_pForceRedrawCallback->CallbackScheduled(m_pScheduler->RelativeEnter(m_pForceRedrawCallback, 500));
-+ }
-+
-+#endif
-+#else
-+ HX_ASSERT( "Not implemented..." == NULL );
-+#endif
-+ return HXR_OK;
-+}
-+
-+#if defined(HELIX_CONFIG_MOBLIN)
-+void CHXExSite::AttachWindowCallback(void* pParam)
-+{
-+ CHXExSite* pObj = (CHXExSite*)pParam;
-+ if (pObj)
-+ {
-+ pObj->_AttachWindow();
-+ }
-+}
-+
-+
-+void CHXExSite::ForceRedrawCallback(void* pParam)
-+{
-+ CHXExSite* pObj = (CHXExSite*)pParam;
-+
-+ if (pObj)
-+ {
-+ UINT32 ulNumOfChildren = pObj->GetNumberOfChildSites();
-+ if(pObj->m_pTopLevelSite)
-+ {
-+ pObj->m_pTopLevelSite->m_bDisableForceRedraw = FALSE;
-+ }
-+ for ( UINT32 i = 0; i < ulNumOfChildren; ++i )
-+ {
-+ SPIHXSite spChildSite;
-+ if ( SUCCEEDED( pObj->GetNthChildSite( i, *spChildSite.AsInOutParam() ) )
-+ && spChildSite.IsValid() )
-+ {
-+ spChildSite->DamageRegion( NULL );
-+ spChildSite->ForceRedraw();
-+ }
-+
-+ }
-+ }
-+}
-+
-+void CHXExSite::RemovePendingCallback(CHXGenericCallback* pCB)
-+{
-+ if (pCB &&
-+ pCB->GetPendingCallback() &&
-+ m_pScheduler)
-+ {
-+ m_pScheduler->Remove(pCB->GetPendingCallback());
-+ pCB->CallbackCanceled();
-+ }
-+}
-+#endif
-+
-+HX_RESULT CHXExSite::_EnterFullScreenExt(HXxWindow* pWindow, IHXValues* pValues)
-+{
-+#if 0
-+ m_bReparent = FALSE;
-+ HX_RESULT res = HXR_OK;
-+ UINT32 ulReparent = 0;
-+
-+ if (pValues)
-+ {
-+ pValues->GetPropertyULONG32("Reparent", ulReparent);
-+ }
-+
-+ m_bReparent = (HXBOOL)ulReparent;
-+
-+ if (m_bReparent)
-+ {
-+ res = _EnterFullScreen(pWindow);
-+ }
-+ else
-+ {
-+ res = _EnterFullScreenNoNewWindow();
-+ }
-+
-+ CHXBaseSite::FullScreenEntered(res);
-+ return res;
-+#else
-+ HX_ASSERT( "Not implemented..." == NULL );
-+ return HXR_OK; /* this makes compiler happy */
-+#endif
-+}
-+
-+HX_RESULT CHXExSite::_ExitFullScreenExt()
-+{
-+#if 0
-+ HX_RESULT res = _ExitFullScreen();
-+#if defined(HELIX_CONFIG_MOBLIN)
-+ // schedule callback for attaching window
-+ if(m_pAttachWindowCallback)
-+ {
-+ m_pAttachWindowCallback->CallbackScheduled(m_pScheduler->RelativeEnter(m_pAttachWindowCallback, 100));
-+ }
-+ // schedule callback for Force Redraw the window
-+ if(m_pForceRedrawCallback)
-+ {
-+ m_pForceRedrawCallback->CallbackScheduled(m_pScheduler->RelativeEnter(m_pForceRedrawCallback, 500));
-+ }
-+#endif
-+ CHXBaseSite::FullScreenExited(res);
-+
-+ return res;
-+#else
-+ HX_ASSERT( "Not implemented..." == NULL );
-+ return HXR_OK; /* this makes compiler happy */
-+#endif
-+
-+}
-+
-+HX_RESULT CHXExSite::_EventOccurred(HXxEvent* pEvent)
-+{
-+ return HXR_OK;
-+}
-+
-+HX_RESULT CHXExSite::_TestFullScreen( void* hTestBitmap,
-+ const char* pszStatusText )
-+{
-+#ifdef _DEBUG
-+ fprintf( stderr, "Going to test full screen....\n" );
-+#endif
-+ return HXR_OK;
-+}
-+
-+void CHXExSite::ProcessEvent(HXxEvent* pEvent)
-+{
-+ if(pEvent)
-+ {
-+ //Expose event compression. Combine all outstanding expose events
-+ //into one big region.
-+ if(Expose==pEvent->event)
-+ {
-+ _CollapseExposeEvents((XEvent*)pEvent->param2);
-+ }
-+ }
-+
-+ //Send the event to each registered UnixSite.
-+ void* pSite = NULL;
-+ void* pWindow = NULL;
-+ POSITION pos = z_mapSiteToWindow.GetStartPosition();
-+ while( pos )
-+ {
-+ z_mapSiteToWindow.GetNextAssoc(pos, pSite, pWindow);
-+ CHXExSite* pSiteWindowed = (CHXExSite*)pSite;
-+ CHXExSite* pTopLevel = NULL;
-+ HX_ASSERT(pSiteWindowed);
-+ pSiteWindowed->AddRef();
-+ pTopLevel = (CHXExSite*)pSiteWindowed->GetTopLevelSite();
-+
-+ if(pEvent)
-+ {
-+ //Call back into the basesite's event loop.
-+ pTopLevel->EventOccurred(pEvent);
-+ }
-+
-+ //XXXgfw As a workaround for the overlay not moving while the
-+ //player is paused, we will check it here and update it if needed.
-+
-+ //XXXRGG We might be able to use X's ConfigureNotify messages instead
-+ //of doing a refresh every 50 ms.
-+ pTopLevel->_UpdateOverlayIfNeeded();
-+
-+ pSiteWindowed->Release();
-+ }
-+}
-+
-+void CHXExSite::_CollapseExposeEvents(XEvent* xevent)
-+{
-+ Display* display = xevent->xany.display;
-+ Window window = xevent->xany.window;
-+ XExposeEvent* expose_event = (XExposeEvent*)xevent;
-+ XEvent new_event;
-+ XExposeEvent* new_expose_event = (XExposeEvent*)&new_event;
-+ ushort x1;
-+ ushort y1;
-+ ushort x2;
-+ ushort y2;
-+ ushort x3;
-+ ushort y3;
-+
-+ x1 = expose_event->x;
-+ y1 = expose_event->y;
-+ x2 = x1 + expose_event->width;
-+ y2 = y1 + expose_event->height;
-+ XLockDisplay(display);
-+ HXBOOL status = XCheckWindowEvent(display, window, ExposureMask, &new_event);
-+ XUnlockDisplay(display);
-+ while( status)
-+ {
-+ if (new_expose_event->x < x1)
-+ x1 = new_expose_event->x;
-+
-+ if (new_expose_event->y < y1)
-+ y1 = new_expose_event->y;
-+
-+ x3 = new_expose_event->x + new_expose_event->width;
-+ if (x3 > x2)
-+ x2 = x3;
-+
-+ y3 = new_expose_event->y + new_expose_event->height;
-+ if (y3 > y2)
-+ y2 = y3;
-+ XLockDisplay(display);
-+ status = XCheckWindowEvent(display, window, ExposureMask, &new_event);
-+ XUnlockDisplay(display);
-+
-+ }
-+
-+ expose_event->x = x1;
-+ expose_event->y = y1;
-+ expose_event->width = x2 - x1;
-+ expose_event->height = y2 - y1;
-+ expose_event->count = new_expose_event->count;
-+}
-+
-+
-+HXBOOL CHXExSite::_ShouldProcess(HXxEvent* pEvent)
-+{
-+ HXBOOL bShouldProcessThisEvent = TRUE;
-+
-+
-+ if( !IsSiteVisible() )
-+ {
-+ switch (pEvent->event)
-+ {
-+ case ButtonPress:
-+ case ButtonRelease:
-+ case Expose:
-+ case FocusIn:
-+ bShouldProcessThisEvent = FALSE;
-+ break;
-+ default:
-+ break;
-+ }
-+ }
-+
-+ if(m_pWindow && m_pWindow->window!=pEvent->window)
-+ {
-+ bShouldProcessThisEvent = FALSE;
-+ }
-+ return bShouldProcessThisEvent;
-+}
-+
-+
-+///////////////////////////////////////////////////////
-+//
-+// UnixEventHandler methods...
-+//
-+CHXExSite::UnixEventHandler::UnixEventHandler(CHXExSite* pParent)
-+ : m_pParent(pParent),
-+ m_lRefCount(0),
-+ m_cbHandle(0)
-+{
-+ HX_ASSERT(m_pParent);
-+ HX_ASSERT(m_pParent->m_pScheduler);
-+ m_cbHandle = m_pParent->m_pScheduler->RelativeEnter((IHXCallback*)this, 30);
-+}
-+
-+CHXExSite::UnixEventHandler::~UnixEventHandler()
-+{
-+ CancelCallback();
-+}
-+
-+void
-+CHXExSite::UnixEventHandler::CancelCallback()
-+{
-+ if( m_cbHandle && m_pParent && m_pParent->m_pScheduler )
-+ {
-+ UINT32 tempHandle = m_cbHandle;
-+ m_cbHandle = 0;
-+ m_pParent->m_pScheduler->Remove(tempHandle);
-+ }
-+}
-+
-+HX_RESULT CHXExSite::UnixEventHandler::QueryInterface(REFIID riid, void** ppvObj)
-+{
-+ if (IsEqualIID(riid, IID_IHXCallback))
-+ {
-+ AddRef();
-+ *ppvObj = (IHXCallback*)this;
-+ return HXR_OK;
-+ }
-+ else if (IsEqualIID(riid, IID_IUnknown))
-+ {
-+ AddRef();
-+ *ppvObj = this;
-+ return HXR_OK;
-+ }
-+
-+ *ppvObj = NULL;
-+ return HXR_NOINTERFACE;
-+}
-+
-+ULONG32 CHXExSite::UnixEventHandler::AddRef()
-+{
-+ return InterlockedIncrement(&m_lRefCount);
-+}
-+
-+ULONG32 CHXExSite::UnixEventHandler::Release()
-+{
-+ HX_ASSERT(m_lRefCount>0);
-+ if( InterlockedDecrement(&m_lRefCount)>0 )
-+ {
-+ return m_lRefCount;
-+ }
-+ delete this;
-+ return 0;
-+}
-+
-+//IHXCallback methods
-+HX_RESULT CHXExSite::UnixEventHandler::Func()
-+{
-+ XEvent xevent;
-+ static HXxEvent pnevent;
-+
-+ m_cbHandle = 0;
-+ XLockDisplay(m_pParent->zm_display);
-+ int status = XPending(m_pParent->zm_display);
-+ XUnlockDisplay(m_pParent->zm_display);
-+ while(status)
-+ {
-+ XLockDisplay(m_pParent->zm_display);
-+ XNextEvent(m_pParent->zm_display, &xevent);
-+ XUnlockDisplay(m_pParent->zm_display);
-+
-+ // package native event in HXxEvent and send to dispatcher
-+ pnevent.event = xevent.type;
-+ pnevent.window = (void *)xevent.xany.window;
-+ pnevent.param1 = xevent.xany.display;
-+ pnevent.param2 = &xevent;
-+
-+ m_pParent->ProcessEvent(&pnevent);
-+ XLockDisplay(m_pParent->zm_display);
-+ status = XPending(m_pParent->zm_display);
-+ XUnlockDisplay(m_pParent->zm_display);
-+ }
-+
-+ if (m_pParent && m_pParent->m_pScheduler)
-+ {
-+ m_cbHandle = m_pParent->m_pScheduler->RelativeEnter((IHXCallback*)this, 30);
-+ }
-+ return HXR_OK;
-+}
-+
-+void CHXExSite::_UpdateOverlayIfNeeded()
-+{
-+ if( m_pVideoSurface )
-+ {
-+ if( m_pVideoSurface->m_nBltMode == HX_OVERLAY_BLT )
-+ {
-+ ULONG32 ulNow = HX_GET_BETTERTICKCOUNT();
-+ CUnixSurf* pSurf = (CUnixSurf*)m_pVideoSurface;
-+ if( ulNow- pSurf->m_ulLastOverlayUpdateTime > 50 )
-+ {
-+ SiteMoving(0,0);
-+ }
-+ }
-+ }
-+ LISTPOSITION pos = m_ChildrenInZOrder.GetHeadPosition();
-+ while(pos)
-+ {
-+ CHXExSite* pSite = (CHXExSite*)m_ChildrenInZOrder.GetNext(pos);
-+ pSite->_UpdateOverlayIfNeeded();
-+ }
-+}
-+
-+
-+HXBOOL CHXExSite::_ShouldEnterForceRedraw()
-+{
-+ if( !m_bDamaged || !m_pUser || !IsSiteVisible() )
-+ {
-+ return FALSE;
-+ }
-+
-+ if(InterlockedIncrement(&m_lBltEntryCount)>1)
-+ {
-+ InterlockedDecrement(&m_lBltEntryCount);
-+ return FALSE;
-+ }
-+
-+ return TRUE;
-+}
-+
-+void CHXExSite::_ExitForceRedraw()
-+{
-+ InterlockedDecrement(&m_lBltEntryCount);
-+}
-+
-Index: helix-libs/clientapps/clutter/exsite.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ helix-libs/clientapps/clutter/exsite.h 2008-10-13 06:05:49.000000000 -0700
-@@ -0,0 +1,272 @@
-+/* ***** BEGIN LICENSE BLOCK *****
-+ * Source last modified: $Id: unixsite.h,v 1.10.2.3 2008/06/05 14:24:30 lovish Exp $
-+ *
-+ * Portions Copyright (c) 1995-2004 RealNetworks, Inc. All Rights Reserved.
-+ *
-+ * The contents of this file, and the files included with this file,
-+ * are subject to the current version of the RealNetworks Public
-+ * Source License (the "RPSL") available at
-+ * http://www.helixcommunity.org/content/rpsl unless you have licensed
-+ * the file under the current version of the RealNetworks Community
-+ * Source License (the "RCSL") available at
-+ * http://www.helixcommunity.org/content/rcsl, in which case the RCSL
-+ * will apply. You may also obtain the license terms directly from
-+ * RealNetworks. You may not use this file except in compliance with
-+ * the RPSL or, if you have a valid RCSL with RealNetworks applicable
-+ * to this file, the RCSL. Please see the applicable RPSL or RCSL for
-+ * the rights, obligations and limitations governing use of the
-+ * contents of the file.
-+ *
-+ * Alternatively, the contents of this file may be used under the
-+ * terms of the GNU General Public License Version 2 (the
-+ * "GPL") in which case the provisions of the GPL are applicable
-+ * instead of those above. If you wish to allow use of your version of
-+ * this file only under the terms of the GPL, and not to allow others
-+ * to use your version of this file under the terms of either the RPSL
-+ * or RCSL, indicate your decision by deleting the provisions above
-+ * and replace them with the notice and other provisions required by
-+ * the GPL. If you do not delete the provisions above, a recipient may
-+ * use your version of this file under the terms of any one of the
-+ * RPSL, the RCSL or the GPL.
-+ *
-+ * This file is part of the Helix DNA Technology. RealNetworks is the
-+ * developer of the Original Code and owns the copyrights in the
-+ * portions it created.
-+ *
-+ * This file, and the files included with this file, is distributed
-+ * and made available on an 'AS IS' basis, WITHOUT WARRANTY OF ANY
-+ * KIND, EITHER EXPRESS OR IMPLIED, AND REALNETWORKS HEREBY DISCLAIMS
-+ * ALL SUCH WARRANTIES, INCLUDING WITHOUT LIMITATION, ANY WARRANTIES
-+ * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, QUIET
-+ * ENJOYMENT OR NON-INFRINGEMENT.
-+ *
-+ * Technology Compatibility Kit Test Suite(s) Location:
-+ * http://www.helixcommunity.org/content/tck
-+ *
-+ * Contributor(s):
-+ * Phil Dibowitz (jaymzh)
-+ *
-+ * ***** END LICENSE BLOCK ***** */
-+
-+#ifndef _UNIXSITE_H
-+#define _UNIXSITE_H
-+
-+#if defined(USE_XWINDOWS)
-+#include <X11/Xatom.h>
-+#include <X11/Xlib.h>
-+#include <X11/Xutil.h>
-+#include <X11/Xos.h>
-+#include <X11/Intrinsic.h>
-+#include <X11/extensions/XShm.h>
-+#endif
-+
-+#include "basesite.h"
-+#include "hxcbobj.h"
-+#include "player.h"
-+
-+class CHXExSite : public CHXBaseSite
-+{
-+public:
-+
-+ friend class CExSurf;
-+ friend class CExRootSurf;
-+
-+ CHXExSite( IUnknown* pContext,
-+ IUnknown* pUnkOuter,
-+ INT32 lInitialZorder,
-+ on_new_frame_cb_t on_new_frame_cb = NULL,
-+ void *context = NULL);
-+
-+ static void ProcessEvent(HXxEvent* pEvent);
-+ Window CreateXWindow( Window win );
-+
-+ void _ForwardUpdateEvent(HXxEvent* pEvent);
-+
-+ //static member vars.
-+ static Display* zm_display;
-+ void _UpdateOverlayIfNeeded();
-+ HXBOOL m_bIgnoreFocusOutInFS;
-+
-+ //We override this.
-+ void CheckColorSettings();
-+
-+protected:
-+
-+ virtual ~CHXExSite();
-+
-+ //
-+ // CHXExSite only methods....
-+ //
-+ HX_RESULT _OpenXDisplay(char* DiplayString);
-+ static void _CollapseExposeEvents(XEvent* xevent);
-+ HXBOOL _ShouldProcess(HXxEvent* pEvent);
-+ void _DrawArrows();
-+ void _CreateHorizScrollBar(void);
-+ void _CreateVertScrollBar(void);
-+ HXBOOL _InButton(HXxPoint& pt, int x, int y );
-+ void _DestroyScrollButtons();
-+ void _MapScrollButtons();
-+ void _MapHorzScroll();
-+ void _MapVertScroll();
-+ void _UnmapHorzScroll();
-+ void _UnmapVertScroll();
-+ void _UnmapScrollButtons();
-+ void _BuildClipRegion();
-+ void _ReleaseClippingRegion();
-+
-+ //
-+ // Seperate object for our callbacks to keep the events flowing.
-+ //
-+ class UnixEventHandler : public IHXCallback
-+ {
-+ public:
-+ UnixEventHandler(CHXExSite* pParent);
-+
-+ //IUnknown methods
-+ virtual HX_RESULT QueryInterface(REFIID riid, void** ppvObj);
-+ virtual ULONG32 AddRef();
-+ virtual ULONG32 Release();
-+
-+ //IHXCallback methods
-+ virtual HX_RESULT Func();
-+ void CancelCallback();
-+
-+ private:
-+ virtual ~UnixEventHandler();
-+
-+ UnixEventHandler();
-+ UnixEventHandler(const UnixEventHandler&);
-+ UnixEventHandler& operator=(const UnixEventHandler& it );
-+
-+ CHXExSite* m_pParent;
-+ LONG32 m_lRefCount;
-+ CallbackHandle m_cbHandle;
-+
-+ IUnknown* m_pUnkPlayer;
-+ };
-+
-+
-+ //
-+ // CHXBaseSite inherited methods
-+ //
-+ virtual void _NeedWindowedSite();
-+ virtual void _AttachWindow();
-+ virtual void _DetachWindow();
-+ virtual void* _Create(void* ParentWindow, UINT32 style);
-+ virtual void _Destroy(HXxWindow* pWindow);
-+ virtual void _SetSize(HXxSize size);
-+ virtual void _SetPosition(HXxPoint position);
-+ virtual void _DamageRect(HXxRect rect);
-+ virtual void _DamageRegion(HXxRegion rect);
-+ virtual HXBOOL _ShouldEnterForceRedraw();
-+ virtual void _ExitForceRedraw();
-+ virtual void _SendOSUpdateMessage();
-+ virtual void _ShowSite(HXBOOL bShow);
-+ virtual HXBOOL _AtSystemTime();
-+ virtual void _GetDeviceCaps( void* hdc,
-+ UINT16& uBitesPerPixel,
-+ UINT16& uHorzRes,
-+ UINT16& uVertRes );
-+ virtual void _GetWindowRect(HXxRect* destRect);
-+ virtual void _DestroySliders();
-+ virtual HXBOOL _HandleOSEvents(HXxEvent* pEvent);
-+ virtual HXBOOL _ConvertToHXEvent(HXxEvent* pEvent);
-+ virtual void _GenerateOSEvent(HXxEvent* pEvent, HXxEvent* pEvent2);
-+ virtual void _GenerateSetCursorEvent();
-+ virtual void _TryCreateXSlider();
-+ virtual void _SetXSliderValues(INT32 range, INT32 pageSize);
-+ virtual void _TryCreateYSlider();
-+ virtual void _SetYSliderValues(INT32 range, INT32 pageSize);
-+ virtual void _GetSystemSizeOfSliders(INT32* pWidth, INT32* pHeight);
-+ virtual HXBOOL _IsWindowVisible();
-+ virtual void _ShowXSlider(HXBOOL bShow);
-+ virtual void _MoveXSlider( INT32 left,
-+ INT32 top,
-+ INT32 right,
-+ INT32 bottom,
-+ HXBOOL bRedraw );
-+ virtual void _ShowYSlider(HXBOOL bShow);
-+ virtual void _MoveYSlider( INT32 left,
-+ INT32 top,
-+ INT32 right,
-+ INT32 bottom,
-+ HXBOOL bRedraw);
-+ virtual HXBOOL _DoesXSliderExist();
-+ virtual void* _GetContainingWindow();
-+ virtual void _GetCursorPos(HXxPoint* pPoint);
-+ virtual void _MapPointToOSWindow(HXxPoint* pPt, void** pWindowHandle);
-+ virtual void* _GetWindowWithCursor();
-+ virtual void _ReInitPrimarySurface();
-+ virtual HXBOOL _MoveWindow( void* ,
-+ INT32 X,
-+ INT32 Y,
-+ INT32 nWidth,
-+ INT32 nHeight,
-+ HXBOOL bRepaint);
-+ virtual HXBOOL _UpdateWindow(void* hWnd);
-+ virtual HXBOOL _ShowWindow(void* hWnd, INT32 nCmdShow);
-+ virtual HXBOOL _SetWindowPos(void* hWnd,
-+ void* hWndInsertAfter,
-+ INT32 X,
-+ INT32 Y,
-+ INT32 cx,
-+ INT32 cy,
-+ INT32 uFlags);
-+ virtual HXBOOL _SetWindowRgn(void* hWnd, HXREGION* hRgn, HXBOOL bRedraw);
-+ virtual void _SetFocus(void* pWindow);
-+
-+ virtual HX_RESULT _EnterFullScreen(HXxWindow* pWindow = NULL);
-+ virtual HX_RESULT _EventOccurred(HXxEvent* pEvent);
-+ virtual HX_RESULT _ExitFullScreen();
-+ virtual HX_RESULT _TestFullScreen( void* hTestBitmap,
-+ const char* pszStatusText );
-+ virtual HX_RESULT _EnterFullScreenExt(HXxWindow* pWindow, IHXValues* pValues);
-+ virtual HX_RESULT _ExitFullScreenExt();
-+#if defined(HELIX_CONFIG_MOBLIN)
-+ static void AttachWindowCallback(void *pParam);
-+ static void ForceRedrawCallback(void *pParam);
-+ void RemovePendingCallback(CHXGenericCallback* pCB);
-+
-+ CHXGenericCallback* m_pAttachWindowCallback;
-+ CHXGenericCallback* m_pForceRedrawCallback;
-+#endif
-+ HXBOOL m_bReparent;
-+
-+private:
-+
-+ //Protect unintentional copy and default ctors.
-+ CHXExSite();
-+ CHXExSite( const CHXExSite& );
-+ CHXExSite& operator=( const CHXExSite& it );
-+ HX_RESULT _EnterFullScreenNoNewWindow();
-+
-+ //member vars.
-+ UnixEventHandler* m_pUnixEventHandler;
-+ static Cursor zm_GrabCursor;
-+ Window m_ScrollHorizButtonL;
-+ Window m_ScrollHorizButtonR;
-+ Window m_ScrollVertButtonT;
-+ Window m_ScrollVertButtonB;
-+ Window m_winFullScreenWindow;
-+ Window m_winOldParent;
-+ HXxPoint m_ptScrollHorizPosL;
-+ HXxPoint m_ptScrollHorizPosR;
-+ HXxPoint m_ptScrollVertPosT;
-+ HXxPoint m_ptScrollVertPosB;
-+ HXxPoint m_ptFullScreenOffset;
-+ HXxSize m_PreFullScreenSize;
-+ HXBOOL m_bScrollingInProgress;
-+ int m_nScrollDir;
-+ HXBOOL m_bLastPointInSite;
-+ HXBOOL m_bDamaged;
-+ //
-+ //Private helpers...
-+ //
-+
-+ //returns the HX_VK associated with this keysym....
-+ UINT32 _MapKeySymToHXVK(KeySym tmpSym, UINT32& uFlags);
-+ on_new_frame_cb_t m_on_new_frame_cb;
-+ void *m_context;
-+};
-+
-+#endif //_UNIXSITE_H
-Index: helix-libs/clientapps/clutter/exsitsup.cpp
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ helix-libs/clientapps/clutter/exsitsup.cpp 2008-10-13 06:05:49.000000000 -0700
-@@ -0,0 +1,455 @@
-+/* ***** BEGIN LICENSE BLOCK *****
-+ * Version: RCSL 1.0/RPSL 1.0
-+ *
-+ * Portions Copyright (c) 1995-2002 RealNetworks, Inc. All Rights Reserved.
-+ *
-+ * The contents of this file, and the files included with this file, are
-+ * subject to the current version of the RealNetworks Public Source License
-+ * Version 1.0 (the "RPSL") available at
-+ * http://www.helixcommunity.org/content/rpsl unless you have licensed
-+ * the file under the RealNetworks Community Source License Version 1.0
-+ * (the "RCSL") available at http://www.helixcommunity.org/content/rcsl,
-+ * in which case the RCSL will apply. You may also obtain the license terms
-+ * directly from RealNetworks. You may not use this file except in
-+ * compliance with the RPSL or, if you have a valid RCSL with RealNetworks
-+ * applicable to this file, the RCSL. Please see the applicable RPSL or
-+ * RCSL for the rights, obligations and limitations governing use of the
-+ * contents of the file.
-+ *
-+ * This file is part of the Helix DNA Technology. RealNetworks is the
-+ * developer of the Original Code and owns the copyrights in the portions
-+ * it created.
-+ *
-+ * This file, and the files included with this file, is distributed and made
-+ * available on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
-+ * EXPRESS OR IMPLIED, AND REALNETWORKS HEREBY DISCLAIMS ALL SUCH WARRANTIES,
-+ * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY, FITNESS
-+ * FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
-+ *
-+ * Technology Compatibility Kit Test Suite(s) Location:
-+ * http://www.helixcommunity.org/content/tck
-+ *
-+ * Contributor(s):
-+ *
-+ * ***** END LICENSE BLOCK ***** */
-+
-+#ifdef _WIN16
-+#include <windows.h>
-+#endif
-+
-+#include "hxcom.h"
-+#include "hxtypes.h"
-+#include "hxwintyp.h"
-+#include "hxwin.h"
-+#include "ihxpckts.h"
-+#include "hxcomm.h"
-+#include "fivemmap.h"
-+#include "hxstring.h" // CHXString
-+#include "exsite.h"
-+#include "exsitsup.h"
-+#include "pckunpck.h" // CreateBufferCCF
-+#include "ciddefs.h" // CID_RGB32
-+#if defined(HELIX_FEATURE_PNG)
-+#include "pxpngenc.h" // PXPNGEncode::EncodeToPNGBuffer
-+#endif // HELIX_FEATURE_PNG
-+#include "print.h"
-+
-+
-+#include "globals.h"
-+struct _stGlobals*& GetGlobal();
-+
-+/************************************************************************
-+ * Method:
-+ * Constructor
-+ */
-+ ExampleSiteSupplier::ExampleSiteSupplier(IUnknown* pUnkPlayer, on_new_frame_cb_t on_new_frame_cb = NULL, void *context = NULL)
-+ : m_lRefCount(0)
-+ , m_pSiteManager(NULL)
-+ , m_pSite(NULL)
-+ , m_pSiteCapture(NULL)
-+ , m_pCaptureBuffer(NULL)
-+ , m_pCCF(NULL)
-+ , m_pUnkPlayer(pUnkPlayer)
-+ , m_on_new_frame_cb(on_new_frame_cb)
-+ , m_context(context)
-+{
-+ if (m_pUnkPlayer)
-+ {
-+ m_pUnkPlayer->QueryInterface(IID_IHXSiteManager,
-+ (void**)&m_pSiteManager);
-+
-+ //printf("pauldebug:m_pUnkplayer->QueryInterface for m_pCCF calling\n");
-+ m_pUnkPlayer->QueryInterface(IID_IHXCommonClassFactory,
-+ (void**)&m_pCCF);
-+ //printf("pauldebug:m_pUnkplayer->QueryInterface for m_pCCF called\n");
-+
-+ m_pUnkPlayer->AddRef();
-+ }
-+};
-+
-+/************************************************************************
-+ * Method:
-+ * Destructor
-+ */
-+ExampleSiteSupplier::~ExampleSiteSupplier()
-+{
-+ HX_RELEASE(m_pSiteManager);
-+ HX_RELEASE(m_pSite);
-+ HX_RELEASE(m_pSiteCapture);
-+ HX_RELEASE(m_pCaptureBuffer);
-+ HX_RELEASE(m_pCCF);
-+ HX_RELEASE(m_pUnkPlayer);
-+}
-+
-+/************************************************************************
-+ * Method:
-+ * IUnknown::QueryInterface
-+ */
-+ STDMETHODIMP
-+ExampleSiteSupplier::QueryInterface(REFIID riid, void** ppvObj)
-+{
-+ if (IsEqualIID(riid, IID_IUnknown))
-+ {
-+ AddRef();
-+ *ppvObj = (IUnknown*)(IHXSiteSupplier*)this;
-+ return HXR_OK;
-+ }
-+ else if (IsEqualIID(riid, IID_IHXSiteSupplier))
-+ {
-+ AddRef();
-+ *ppvObj = (IHXSiteSupplier*)this;
-+ return HXR_OK;
-+ }
-+
-+ *ppvObj = NULL;
-+ return HXR_NOINTERFACE;
-+}
-+
-+/************************************************************************
-+ * Method:
-+ * IUnknown::AddRef
-+ */
-+ STDMETHODIMP_(ULONG32)
-+ExampleSiteSupplier::AddRef()
-+{
-+ return InterlockedIncrement(&m_lRefCount);
-+}
-+
-+/************************************************************************
-+ * Method:
-+ * IUnknown::Release
-+ */
-+ STDMETHODIMP_(ULONG32)
-+ExampleSiteSupplier::Release()
-+{
-+ if (InterlockedDecrement(&m_lRefCount) > 0)
-+ {
-+ return m_lRefCount;
-+ }
-+
-+ delete this;
-+ return 0;
-+}
-+
-+/************************************************************************
-+ * Method:
-+ * IHXSiteSupplier::SitesNeeded
-+ * Purpose:
-+ * Called to inform the site supplier that a site with a particular
-+ * set of characteristics is needed. If the site supplier can
-+ * fulfill the request it should call the site manager and add one
-+ * or more new sites.
-+ * Note that the request for sites is associated with a Request ID
-+ * the client core will inform the site supplier when this requested
-+ * site is no longer needed.
-+ */
-+STDMETHODIMP
-+ExampleSiteSupplier::SitesNeeded
-+(
-+ UINT32 uRequestID,
-+ IHXValues* pProps
-+ )
-+{
-+ /*
-+ * Don't create a site if the -NULL_RENDER command line option
-+ * was given. - jfarr
-+ */
-+ if (GetGlobal()->g_bNullRender)
-+ {
-+ return (HXR_OK);
-+ }
-+
-+ /*
-+ * If there are no properties, then we can't really create a
-+ * site, because we have no idea what type of site is desired!
-+ */
-+ if (!pProps)
-+ {
-+ return HXR_INVALID_PARAMETER;
-+ }
-+
-+ HRESULT hres = HXR_OK;
-+ IHXValues* pSiteProps = NULL;
-+ IHXSiteWindowed* pSiteWindowed = NULL;
-+ IHXBuffer* pValue = NULL;
-+ UINT32 style = 0;
-+ IHXSite* pSite = NULL;
-+
-+#if 0
-+ // Just let the RMA client core create a windowed site for us.
-+ hres = m_pCCF->CreateInstance(CLSID_IHXSiteWindowed,(void**)&pSiteWindowed);
-+ if (HXR_OK != hres)
-+ {
-+ goto exit;
-+ }
-+#else
-+ {
-+ *(void **)&pSiteWindowed = (IUnknown*)(IHXSiteWindowed*)(new CHXExSite(GetGlobal()->pMediaPlatform, NULL, 0, m_on_new_frame_cb, m_context));
-+ hres = ((IUnknown*)*(void **)&pSiteWindowed)->QueryInterface(IID_IHXSiteWindowed, (void**)&pSiteWindowed);
-+ if (HXR_OK != hres)
-+ {
-+ goto exit;
-+ }
-+ }
-+#endif
-+
-+ hres = pSiteWindowed->QueryInterface(IID_IHXSite,(void**)&pSite);
-+ if (HXR_OK != hres)
-+ {
-+ goto exit;
-+ }
-+
-+ if( !m_pSite )
-+ {
-+ m_pSite = pSite;
-+ m_pSite->AddRef();
-+ }
-+
-+
-+ hres = pSiteWindowed->QueryInterface(IID_IHXValues,(void**)&pSiteProps);
-+ if (HXR_OK != hres)
-+ {
-+ goto exit;
-+ }
-+
-+ /*
-+ * We need to figure out what type of site we are supposed to
-+ * to create. We need to "switch" between site user and site
-+ * properties. So look for the well known site user properties
-+ * that are mapped onto sites...
-+ */
-+ hres = pProps->GetPropertyCString("playto",pValue);
-+ if (HXR_OK == hres)
-+ {
-+ pSiteProps->SetPropertyCString("channel",pValue);
-+ HX_RELEASE(pValue);
-+ }
-+ else
-+ {
-+ hres = pProps->GetPropertyCString("name",pValue);
-+ if (HXR_OK == hres)
-+ {
-+ pSiteProps->SetPropertyCString("LayoutGroup",pValue);
-+ HX_RELEASE(pValue);
-+ }
-+ }
-+
-+#ifdef _WINDOWS
-+ style = WS_OVERLAPPED | WS_VISIBLE | WS_CLIPCHILDREN;
-+#endif
-+
-+ hres = pSiteWindowed->Create(NULL, style);
-+ if (HXR_OK != hres)
-+ {
-+ goto exit;
-+ }
-+
-+ /*
-+ * We need to wait until we have set all the properties before
-+ * we add the site.
-+ */
-+ hres = m_pSiteManager->AddSite(pSite);
-+ if (HXR_OK != hres)
-+ {
-+ goto exit;
-+ }
-+#ifdef _WINDOWS
-+ {
-+ HXxWindow* pWindow = pSiteWindowed->GetWindow();
-+ if (pWindow && pWindow->window) ::SetForegroundWindow( (HWND)(pWindow->window) );
-+ }
-+#endif
-+ m_CreatedSites.SetAt((void*)uRequestID,pSite);
-+ pSite->AddRef();
-+
-+exit:
-+
-+ HX_RELEASE(pSiteProps);
-+ HX_RELEASE(pSiteWindowed);
-+ HX_RELEASE(pSite);
-+
-+ return hres;
-+}
-+
-+/************************************************************************
-+ * Method:
-+ * IHXSiteSupplier::SitesNotNeeded
-+ * Purpose:
-+ * Called to inform the site supplier that all sites from a previos
-+ * site request are no longer needed. If the site supplier had
-+ * previously created non-persistant sites (like popup windows)
-+ * to fulfill a request for sites it should call the site manager
-+ * and remove those sites.
-+ */
-+STDMETHODIMP
-+ExampleSiteSupplier::SitesNotNeeded(UINT32 uRequestID)
-+{
-+ IHXSite* pSite = NULL;
-+ IHXSiteWindowed* pSiteWindowed = NULL;
-+ void* pVoid = NULL;
-+
-+ if (!m_CreatedSites.Lookup((void*)uRequestID,pVoid))
-+ {
-+ return HXR_INVALID_PARAMETER;
-+ }
-+ pSite = (IHXSite*)pVoid;
-+
-+ m_pSiteManager->RemoveSite(pSite);
-+
-+ // Need to actually do the work on destroying the window
-+ // and all that jazz.
-+ pSite->QueryInterface(IID_IHXSiteWindowed,(void**)&pSiteWindowed);
-+
-+ pSiteWindowed->Destroy();
-+
-+ // ref count = 2
-+ pSiteWindowed->Release();
-+
-+ // ref count = 1; deleted from this object's view!
-+ pSite->Release();
-+
-+ m_CreatedSites.RemoveKey((void*)uRequestID);
-+
-+ return HXR_OK;
-+}
-+
-+/************************************************************************
-+ * Method:
-+ * IHXSiteSupplier::BeginChangeLayout
-+ * Purpose:
-+ * Called to inform the site supplier a layout change has beginning
-+ * it can expect to recieve SitesNeeded() and SitesNotNeeded() calls
-+ * while a layout change is in progress,
-+ */
-+STDMETHODIMP
-+ExampleSiteSupplier::BeginChangeLayout()
-+{
-+ return HXR_OK;
-+}
-+
-+/************************************************************************
-+ * Method:
-+ * IHXSiteSupplier::DoneChangeLayout
-+ * Purpose:
-+ * Called to inform the site supplier the layout change has been
-+ * completed.
-+ */
-+STDMETHODIMP
-+ExampleSiteSupplier::DoneChangeLayout()
-+{
-+ return HXR_OK;
-+}
-+
-+HX_RESULT
-+ExampleSiteSupplier::CaptureImage(CHXString pszFileName, INT32 dWidth, INT32 dHeight)
-+{
-+ HX_RESULT res=HXR_FAIL;
-+
-+ // Get the IHXSiteCapture object from the site
-+ if (m_pSiteCapture == NULL)
-+ {
-+ if (m_pSite && m_pSite->QueryInterface(IID_IHXSiteCapture, (void**)&m_pSiteCapture) == HXR_OK)
-+ {
-+ m_pSiteCapture->AddRef();
-+ }
-+ }
-+
-+ // Create the buffer that will receive the image data
-+ if (m_pCaptureBuffer == NULL)
-+ {
-+ CreateBufferCCF(m_pCaptureBuffer, m_pCCF);
-+ if (!m_pCaptureBuffer)
-+ {
-+ return HXR_OUTOFMEMORY;
-+ }
-+ }
-+
-+ HXBOOL bCanCapture = FALSE;
-+
-+ // Check if the site is available to capture an image
-+ if (m_pSiteCapture && (res = m_pSiteCapture->CanCapture(bCanCapture)) == HXR_OK && bCanCapture)
-+ {
-+ HX_RESULT res;
-+ HXxSize outputSize;
-+ outputSize.cx = dWidth;
-+ outputSize.cy = dHeight;
-+ m_strFileName = pszFileName;
-+
-+ // Asynchronous call. CaptureDone() will be called with result.
-+ res = m_pSiteCapture->Capture((IHXSiteCaptureResponse*)this, m_pCaptureBuffer, &outputSize, CID_RGB32);
-+ }
-+
-+ return res;
-+
-+}
-+
-+//
-+// IHXSiteCaptureResponse::CaptureDone
-+//
-+// Called when the site has captured the next frame.
-+// bmiOutputFormat points to image format description which
-+// is valid until the completion of CaptureDone.
-+// bmiOutputFormat can be different for every capture.
-+// pCaptureBuffer holds the image if supplied in
-+// Capture() method. pCaptureBuffer is automatically
-+// resized if it has insufficient size to hold the image
-+// data.
-+//
-+// status may be:
-+// HXR_FAIL -- No capture was done. General Error. All data is invalid.
-+// HXR_OK -- Capture was done. Both variables are valid.
-+STDMETHODIMP
-+ExampleSiteSupplier::CaptureDone(REF(HX_RESULT) status,
-+ REF(HXBitmapInfoHeader) bmiOutputFormat,
-+ REF(IHXBuffer*) pCaptureBuffer)
-+{
-+ if (status == HXR_OK)
-+ {
-+#if defined(HELIX_FEATURE_PNG)
-+ // Convert capture buffer into PNG
-+ IHXBuffer* pConvertedBuffer=NULL;
-+ HX_RESULT res = HXR_OK;
-+ res = PXPNGEncode::EncodeToPNGBuffer(pCaptureBuffer, &bmiOutputFormat, m_pCCF, pConvertedBuffer);
-+ if (res == HXR_OK && !m_strFileName.IsEmpty())
-+ {
-+ CHXString strTail = m_strFileName.Right(4);
-+ if (strTail.CompareNoCase(".png") != 0)
-+ {
-+ m_strFileName += ".png";
-+ }
-+
-+ FILE* fp = fopen(m_strFileName, "wb");
-+ if (fp)
-+ {
-+ fwrite(pConvertedBuffer->GetBuffer(), 1, pConvertedBuffer->GetSize(), fp);
-+ fclose(fp);
-+ STDOUT("Captured image to PNG file: %s\n", (const char*)m_strFileName);
-+ STDOUT("File size: %ld\n", pConvertedBuffer->GetSize());
-+ }
-+ HX_RELEASE(pConvertedBuffer);
-+ }
-+#endif // HELIX_FEATURE_PNG
-+ }
-+
-+ return status;
-+}
-Index: helix-libs/clientapps/clutter/exsitsup.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ helix-libs/clientapps/clutter/exsitsup.h 2008-10-13 06:05:49.000000000 -0700
-@@ -0,0 +1,154 @@
-+/* ***** BEGIN LICENSE BLOCK *****
-+ * Version: RCSL 1.0/RPSL 1.0
-+ *
-+ * Portions Copyright (c) 1995-2002 RealNetworks, Inc. All Rights Reserved.
-+ *
-+ * The contents of this file, and the files included with this file, are
-+ * subject to the current version of the RealNetworks Public Source License
-+ * Version 1.0 (the "RPSL") available at
-+ * http://www.helixcommunity.org/content/rpsl unless you have licensed
-+ * the file under the RealNetworks Community Source License Version 1.0
-+ * (the "RCSL") available at http://www.helixcommunity.org/content/rcsl,
-+ * in which case the RCSL will apply. You may also obtain the license terms
-+ * directly from RealNetworks. You may not use this file except in
-+ * compliance with the RPSL or, if you have a valid RCSL with RealNetworks
-+ * applicable to this file, the RCSL. Please see the applicable RPSL or
-+ * RCSL for the rights, obligations and limitations governing use of the
-+ * contents of the file.
-+ *
-+ * This file is part of the Helix DNA Technology. RealNetworks is the
-+ * developer of the Original Code and owns the copyrights in the portions
-+ * it created.
-+ *
-+ * This file, and the files included with this file, is distributed and made
-+ * available on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
-+ * EXPRESS OR IMPLIED, AND REALNETWORKS HEREBY DISCLAIMS ALL SUCH WARRANTIES,
-+ * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY, FITNESS
-+ * FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
-+ *
-+ * Technology Compatibility Kit Test Suite(s) Location:
-+ * http://www.helixcommunity.org/content/tck
-+ *
-+ * Contributor(s):
-+ *
-+ * ***** END LICENSE BLOCK ***** */
-+
-+#ifndef _EXSITSUP_H_
-+#define _EXSITSUP_H_
-+
-+#include "fivemmap.h"
-+#include "player.h"
-+
-+/****************************************************************************
-+ *
-+ * Class:
-+ *
-+ * ExampleSiteSupplier
-+ *
-+ * Purpose:
-+ *
-+ * Implementation for ragui's IHXSiteSupplier
-+ *
-+ */
-+class ExampleSiteSupplier :
-+ public IHXSiteSupplier
-+ , public IHXSiteCaptureResponse
-+{
-+private:
-+ LONG32 m_lRefCount;
-+ IHXSiteManager* m_pSiteManager;
-+ IHXSite* m_pSite;
-+ IHXSiteCapture* m_pSiteCapture;
-+ IHXBuffer* m_pCaptureBuffer;
-+ IHXCommonClassFactory* m_pCCF;
-+ IUnknown* m_pUnkPlayer;
-+ FiveMinuteMap m_CreatedSites;
-+ CHXString m_strFileName;
-+ on_new_frame_cb_t m_on_new_frame_cb;
-+ void * m_context;
-+
-+ ~ExampleSiteSupplier();
-+
-+public:
-+ ExampleSiteSupplier(IUnknown* pUnkPlayer, on_new_frame_cb_t new_frame_cb = NULL, void *context = NULL);
-+
-+ /*
-+ * IUnknown methods
-+ */
-+ STDMETHOD(QueryInterface) (THIS_
-+ REFIID riid,
-+ void** ppvObj);
-+
-+ STDMETHOD_(ULONG32,AddRef) (THIS);
-+
-+ STDMETHOD_(ULONG32,Release) (THIS);
-+
-+ /*
-+ * IHXSiteSupplier methods
-+ */
-+
-+ /************************************************************************
-+ * Method:
-+ * IHXSiteSupplier::SitesNeeded
-+ * Purpose:
-+ * Called to inform the site supplier that a site with a particular
-+ * set of characteristics is needed. If the site supplier can
-+ * fulfill the request it should call the site manager and add one
-+ * or more new sites.
-+ * Note that the request for sites is associated with a Request ID
-+ * the client core will inform the site supplier when this requested
-+ * site is no longer needed.
-+ */
-+ STDMETHOD(SitesNeeded) (THIS_
-+ UINT32 uRequestID,
-+ IHXValues* pSiteProps);
-+
-+ /************************************************************************
-+ * Method:
-+ * IHXSiteSupplier::SitesNotNeeded
-+ * Purpose:
-+ * Called to inform the site supplier that all sites from a previos
-+ * site request are no longer needed. If the site supplier had
-+ * previously created non-persistant sites (like popup windows)
-+ * to fulfill a request for sites it should call the site manager
-+ * and remove those sites.
-+ */
-+ STDMETHOD(SitesNotNeeded)
-+ (THIS_
-+ UINT32 uRequestID);
-+
-+
-+ /************************************************************************
-+ * Method:
-+ * IHXSiteSupplier::BeginChangeLayout
-+ * Purpose:
-+ * Called to inform the site supplier a layout change has beginning
-+ * it can expect to recieve SitesNeeded() and SitesNotNeeded() calls
-+ * while a layout change is in progress,
-+ */
-+ STDMETHOD(BeginChangeLayout) (THIS);
-+
-+ /************************************************************************
-+ * Method:
-+ * IHXSiteSupplier::DoneChangeLayout
-+ * Purpose:
-+ * Called to inform the site supplier the layout change has been
-+ * completed.
-+ */
-+ STDMETHOD(DoneChangeLayout) (THIS);
-+
-+ /*
-+ * IHXSiteCaptureResponse
-+ */
-+ STDMETHOD(CaptureDone) (THIS_
-+ REF(HX_RESULT) status,
-+ REF(HXBitmapInfoHeader) bmiOutputFormat,
-+ REF(IHXBuffer*) pImageDataBuffer
-+ );
-+
-+ HX_RESULT CaptureImage(CHXString pFileName, INT32 dWidth, INT32 dHeight);
-+
-+};
-+
-+#endif // _EXSITSUP_H_
-+
-Index: helix-libs/clientapps/clutter/exstateadvsnk.cpp
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ helix-libs/clientapps/clutter/exstateadvsnk.cpp 2008-10-13 06:05:49.000000000 -0700
-@@ -0,0 +1,229 @@
-+/* ***** BEGIN LICENSE BLOCK *****
-+ * Version: RCSL 1.0/RPSL 1.0
-+ *
-+ * Portions Copyright (c) 1995-2002 RealNetworks, Inc. All Rights Reserved.
-+ *
-+ * The contents of this file, and the files included with this file, are
-+ * subject to the current version of the RealNetworks Public Source License
-+ * Version 1.0 (the "RPSL") available at
-+ * http://www.helixcommunity.org/content/rpsl unless you have licensed
-+ * the file under the RealNetworks Community Source License Version 1.0
-+ * (the "RCSL") available at http://www.helixcommunity.org/content/rcsl,
-+ * in which case the RCSL will apply. You may also obtain the license terms
-+ * directly from RealNetworks. You may not use this file except in
-+ * compliance with the RPSL or, if you have a valid RCSL with RealNetworks
-+ * applicable to this file, the RCSL. Please see the applicable RPSL or
-+ * RCSL for the rights, obligations and limitations governing use of the
-+ * contents of the file.
-+ *
-+ * This file is part of the Helix DNA Technology. RealNetworks is the
-+ * developer of the Original Code and owns the copyrights in the portions
-+ * it created.
-+ *
-+ * This file, and the files included with this file, is distributed and made
-+ * available on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
-+ * EXPRESS OR IMPLIED, AND REALNETWORKS HEREBY DISCLAIMS ALL SUCH WARRANTIES,
-+ * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY, FITNESS
-+ * FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
-+ *
-+ * Technology Compatibility Kit Test Suite(s) Location:
-+ * http://www.helixcommunity.org/content/tck
-+ *
-+ * Contributor(s):
-+ *
-+ * ***** END LICENSE BLOCK ***** */
-+
-+#include <stdio.h>
-+
-+#include "hxtypes.h"
-+
-+#include "hxcom.h"
-+#include "hxcomm.h"
-+#include "hxmon.h"
-+#include "hxcore.h"
-+#include "hxengin.h"
-+#include "hxclsnk.h"
-+#include "hxgroup.h"
-+#include "hxstrutl.h"
-+#include "exstateadvsnk.h"
-+#include "hxstring.h"
-+#include "hxprefs.h"
-+#include "excontxt.h"
-+
-+#include "print.h"
-+
-+#include "globals.h"
-+#include "player.h"
-+
-+struct _stGlobals*& GetGlobal(); //in main.cpp
-+
-+#ifdef __TCS__
-+extern unsigned long gStreamTime;
-+
-+static int iOpened = 0;
-+
-+
-+#if defined(__cplusplus)
-+extern "C" {
-+#endif /* defined(__cplusplus) */
-+
-+typedef enum hookBuffering {
-+ eContacting = 0,
-+ eConnecting = 1,
-+ eBuffering = 2,
-+ ePlaying = 3
-+}hookBuffering;
-+
-+void hookRealAudio_Buffering(hookBuffering connectState, int pct);
-+
-+void hookRealAudio_PlayPosition(unsigned long current,unsigned long duration);
-+
-+typedef enum hookState {
-+ ePlay = 0,
-+ ePause = 1,
-+ eStop = 2,
-+ eResume = 3,
-+ eComplete // Clip is done playing
-+}hookState;
-+void hookRealAudio_State(hookState newState);
-+
-+
-+#if defined(__cplusplus)
-+}
-+#endif /* defined(__cplusplus) */
-+
-+#endif // __TCS__
-+
-+void PrintBuffer(const char* pszName,const unsigned char* pbBuf, unsigned int dwBytes);
-+
-+ExampleClientStateAdviceSink::ExampleClientStateAdviceSink(IUnknown* pUnknown, LONG32 lClientIndex, on_state_change_cb_t on_state_change_cb, void *context)
-+ : m_lRefCount (0)
-+ , m_lClientIndex (lClientIndex)
-+ , m_pUnknown (NULL)
-+ , m_State (HX_CLIENT_STATE_READY)
-+ , m_state_change_cb(on_state_change_cb)
-+ , m_context(context)
-+{
-+ if (pUnknown)
-+ {
-+ m_pUnknown = pUnknown;
-+ m_pUnknown->AddRef();
-+
-+ IHXPlayer* pPlayer;
-+ IHXClientStateAdviseSinkControl *pStateControl;
-+ if(HXR_OK == m_pUnknown->QueryInterface(IID_IHXPlayer,
-+ (void**)&pPlayer))
-+ {
-+ m_pPlayer = pPlayer;
-+
-+
-+ }
-+
-+ if (HXR_OK == m_pUnknown->QueryInterface(IID_IHXClientStateAdviseSinkControl, (void **)&pStateControl))
-+ {
-+ pStateControl->AddClientStateAdviseSink(this);
-+ }
-+ }
-+
-+#ifdef __TCS__
-+ bEnableAdviceSink = TRUE;
-+ iOpened = 0;
-+#endif
-+}
-+
-+ExampleClientStateAdviceSink::~ExampleClientStateAdviceSink(void)
-+{
-+
-+ if (m_pPlayer)
-+ {
-+ m_pPlayer->Release();
-+ m_pPlayer = NULL;
-+ }
-+ if (m_pUnknown)
-+ {
-+ m_pUnknown->Release();
-+ m_pUnknown = NULL;
-+ }
-+}
-+
-+
-+// *** IUnknown methods ***
-+
-+/////////////////////////////////////////////////////////////////////////
-+// Method:
-+// IUnknown::QueryInterface
-+// Purpose:
-+// Implement this to export the interfaces supported by your
-+// object.
-+//
-+STDMETHODIMP ExampleClientStateAdviceSink::QueryInterface(REFIID riid, void** ppvObj)
-+{
-+ if (IsEqualIID(riid, IID_IUnknown))
-+ {
-+ AddRef();
-+ *ppvObj = (IUnknown*)(IHXClientStateAdviseSink *)this;
-+ return HXR_OK;
-+ }
-+ else if (IsEqualIID(riid, IID_IHXClientStateAdviseSink))
-+ {
-+ AddRef();
-+ *ppvObj = (IHXClientStateAdviseSink*)this;
-+ return HXR_OK;
-+ }
-+
-+ *ppvObj = NULL;
-+ return HXR_NOINTERFACE;
-+}
-+
-+/////////////////////////////////////////////////////////////////////////
-+// Method:
-+// IUnknown::AddRef
-+// Purpose:
-+// Everyone usually implements this the same... feel free to use
-+// this implementation.
-+//
-+STDMETHODIMP_(ULONG32) ExampleClientStateAdviceSink::AddRef()
-+{
-+ return InterlockedIncrement(&m_lRefCount);
-+}
-+
-+/////////////////////////////////////////////////////////////////////////
-+// Method:
-+// IUnknown::Release
-+// Purpose:
-+// Everyone usually implements this the same... feel free to use
-+// this implementation.
-+//
-+STDMETHODIMP_(ULONG32) ExampleClientStateAdviceSink::Release()
-+{
-+ if (InterlockedDecrement(&m_lRefCount) > 0)
-+ {
-+ return m_lRefCount;
-+ }
-+
-+ delete this;
-+ return 0;
-+}
-+
-+
-+/************************************************************************
-+ * Method:
-+ * IHXClientStateAdviseSink::OnStateChange
-+ * Purpose:
-+ * Called to advise the client state has changed state
-+ */
-+STDMETHODIMP ExampleClientStateAdviceSink::OnStateChange(UINT16 uOldState, UINT16 uNewState)
-+{
-+ if (m_state_change_cb)
-+ m_state_change_cb(uOldState, uNewState, m_context);
-+
-+ m_State = uNewState;
-+ return HXR_OK;
-+}
-+
-+EHXClientState ExampleClientStateAdviceSink::GetState()
-+{
-+ return m_State;
-+}
-+
-+
-Index: helix-libs/clientapps/clutter/exstateadvsnk.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ helix-libs/clientapps/clutter/exstateadvsnk.h 2008-10-13 06:05:49.000000000 -0700
-@@ -0,0 +1,108 @@
-+/* ***** BEGIN LICENSE BLOCK *****
-+ * Version: RCSL 1.0/RPSL 1.0
-+ *
-+ * Portions Copyright (c) 1995-2002 RealNetworks, Inc. All Rights Reserved.
-+ *
-+ * The contents of this file, and the files included with this file, are
-+ * subject to the current version of the RealNetworks Public Source License
-+ * Version 1.0 (the "RPSL") available at
-+ * http://www.helixcommunity.org/content/rpsl unless you have licensed
-+ * the file under the RealNetworks Community Source License Version 1.0
-+ * (the "RCSL") available at http://www.helixcommunity.org/content/rcsl,
-+ * in which case the RCSL will apply. You may also obtain the license terms
-+ * directly from RealNetworks. You may not use this file except in
-+ * compliance with the RPSL or, if you have a valid RCSL with RealNetworks
-+ * applicable to this file, the RCSL. Please see the applicable RPSL or
-+ * RCSL for the rights, obligations and limitations governing use of the
-+ * contents of the file.
-+ *
-+ * This file is part of the Helix DNA Technology. RealNetworks is the
-+ * developer of the Original Code and owns the copyrights in the portions
-+ * it created.
-+ *
-+ * This file, and the files included with this file, is distributed and made
-+ * available on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
-+ * EXPRESS OR IMPLIED, AND REALNETWORKS HEREBY DISCLAIMS ALL SUCH WARRANTIES,
-+ * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY, FITNESS
-+ * FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
-+ *
-+ * Technology Compatibility Kit Test Suite(s) Location:
-+ * http://www.helixcommunity.org/content/tck
-+ *
-+ * Contributor(s):
-+ *
-+ * ***** END LICENSE BLOCK ***** */
-+
-+#ifndef _EXAMPLE_CLIENT_STATE_ADVISE_SNK_H_
-+#define _EXAMPLE_CLIENT_STATE_ADVISE_SNK_H_
-+
-+#include "player.h"
-+
-+struct IHXClientStateAdviseSink;
-+struct IHXGroupSink;
-+struct IUnknown;
-+struct IHXRegistry;
-+struct IHXScheduler;
-+struct IHXCallback;
-+struct IHXPlayer;
-+struct IHXGroup;
-+
-+class ExampleClientStateAdviceSink : public IHXClientStateAdviseSink
-+{
-+ private:
-+ LONG32 m_lRefCount;
-+ LONG32 m_lClientIndex;
-+
-+ IUnknown* m_pUnknown;
-+
-+ UINT32 m_ulStartTime;
-+ UINT32 m_ulStopTime;
-+
-+ UINT32 m_lCurrentBandwidth;
-+ UINT32 m_lAverageBandwidth;
-+ HXBOOL m_bOnStop;
-+
-+ HXBOOL m_bWaitForTrackStart;
-+
-+ on_state_change_cb_t m_state_change_cb;
-+ void *m_context;
-+ EHXClientState m_State;
-+
-+ // IHXCallback
-+ IHXPlayer* m_pPlayer;
-+ ULONG32 m_hCallback;
-+ ~ExampleClientStateAdviceSink();
-+
-+
-+ public:
-+
-+ ExampleClientStateAdviceSink(IUnknown* /*IN*/ pUnknown, LONG32 /*IN*/ lClientIndex, on_state_change_cb_t on_state_change_cb = NULL, void *context = NULL);
-+
-+ /*
-+ * IUnknown methods
-+ */
-+ STDMETHOD(QueryInterface) (THIS_
-+ REFIID riid,
-+ void** ppvObj);
-+
-+ STDMETHOD_(ULONG32,AddRef) (THIS);
-+
-+ STDMETHOD_(ULONG32,Release) (THIS);
-+
-+ /***********************************************************************
-+ * Method:
-+ * IHXClientStateAdviseSink::OnStateChange
-+ * Purpose:
-+ * Called by client engine to inform the client that the state has changed.
-+ * States are defined in the enum EHXClientState, defined in this file.
-+ *
-+ */
-+ STDMETHOD(OnStateChange) (THIS_
-+ UINT16 uOldState,
-+ UINT16 uNewState
-+ ) ;
-+
-+ EHXClientState GetState();
-+};
-+
-+#endif /* _EXAMPLECLSNK_ */
-Index: helix-libs/clientapps/clutter/fivemmap.cpp
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ helix-libs/clientapps/clutter/fivemmap.cpp 2008-10-13 06:05:49.000000000 -0700
-@@ -0,0 +1,175 @@
-+/* ***** BEGIN LICENSE BLOCK *****
-+ * Version: RCSL 1.0/RPSL 1.0
-+ *
-+ * Portions Copyright (c) 1995-2002 RealNetworks, Inc. All Rights Reserved.
-+ *
-+ * The contents of this file, and the files included with this file, are
-+ * subject to the current version of the RealNetworks Public Source License
-+ * Version 1.0 (the "RPSL") available at
-+ * http://www.helixcommunity.org/content/rpsl unless you have licensed
-+ * the file under the RealNetworks Community Source License Version 1.0
-+ * (the "RCSL") available at http://www.helixcommunity.org/content/rcsl,
-+ * in which case the RCSL will apply. You may also obtain the license terms
-+ * directly from RealNetworks. You may not use this file except in
-+ * compliance with the RPSL or, if you have a valid RCSL with RealNetworks
-+ * applicable to this file, the RCSL. Please see the applicable RPSL or
-+ * RCSL for the rights, obligations and limitations governing use of the
-+ * contents of the file.
-+ *
-+ * This file is part of the Helix DNA Technology. RealNetworks is the
-+ * developer of the Original Code and owns the copyrights in the portions
-+ * it created.
-+ *
-+ * This file, and the files included with this file, is distributed and made
-+ * available on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
-+ * EXPRESS OR IMPLIED, AND REALNETWORKS HEREBY DISCLAIMS ALL SUCH WARRANTIES,
-+ * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY, FITNESS
-+ * FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
-+ *
-+ * Technology Compatibility Kit Test Suite(s) Location:
-+ * http://www.helixcommunity.org/content/tck
-+ *
-+ * Contributor(s):
-+ *
-+ * ***** END LICENSE BLOCK ***** */
-+
-+#include <string.h>
-+#include "hxtypes.h"
-+#include "fivemmap.h"
-+
-+void* FiveMinuteMap::GetFirstValue()
-+{
-+ m_nCursor = 0;
-+
-+ if (m_nMapSize)
-+ {
-+ return m_pValueArray[m_nCursor];
-+ }
-+ else
-+ {
-+ return NULL;
-+ }
-+}
-+
-+void* FiveMinuteMap::GetNextValue()
-+{
-+ m_nCursor++;
-+
-+ if (m_nCursor < m_nMapSize)
-+ {
-+ return m_pValueArray[m_nCursor];
-+ }
-+ else
-+ {
-+ return NULL;
-+ }
-+}
-+
-+HXBOOL FiveMinuteMap::Lookup(void* Key, void*& Value) const
-+{
-+ HXBOOL bFound = FALSE;
-+ int nIndex = 0;
-+
-+ // If Key is alrady in the list, replace value
-+ for (; nIndex < m_nMapSize; nIndex++)
-+ {
-+ if (m_pKeyArray[nIndex] == Key)
-+ {
-+ Value = m_pValueArray[nIndex];
-+ bFound = TRUE;
-+ goto exit;
-+ }
-+ }
-+
-+exit:
-+ return bFound;
-+}
-+
-+void FiveMinuteMap::RemoveKey(void* Key)
-+{
-+ HXBOOL bFound = FALSE;
-+ int nIndex = 0;
-+
-+ // If Key is alrady in the list, replace value
-+ for (; nIndex < m_nMapSize; nIndex++)
-+ {
-+ if (m_pKeyArray[nIndex] == Key)
-+ {
-+ if (nIndex < (m_nMapSize-1))
-+ {
-+ memmove(&(m_pKeyArray[nIndex]),&(m_pKeyArray[nIndex+1]),sizeof(void*)*(m_nMapSize-(nIndex+1)));
-+ memmove(&(m_pValueArray[nIndex]),&(m_pValueArray[nIndex+1]),sizeof(void*)*(m_nMapSize-(nIndex+1)));
-+ }
-+ m_nMapSize--;
-+ goto exit;
-+ }
-+ }
-+
-+exit:
-+ (NULL); // We're done!
-+}
-+
-+void FiveMinuteMap::RemoveValue(void* Value)
-+{
-+ HXBOOL bFound = FALSE;
-+ int nIndex = 0;
-+
-+ // If Value is alrady in the list, replace value
-+ for (; nIndex < m_nMapSize; nIndex++)
-+ {
-+ if (m_pValueArray[nIndex] == Value)
-+ {
-+ if (nIndex < (m_nMapSize-1))
-+ {
-+ memmove(&(m_pKeyArray[nIndex]),&(m_pKeyArray[nIndex+1]),sizeof(void*)*(m_nMapSize-(nIndex+1)));
-+ memmove(&(m_pValueArray[nIndex]),&(m_pValueArray[nIndex+1]),sizeof(void*)*(m_nMapSize-(nIndex+1)));
-+ }
-+ m_nMapSize--;
-+ goto exit;
-+ }
-+ }
-+
-+exit:
-+ (NULL); // We're done!
-+}
-+
-+
-+void FiveMinuteMap::SetAt(void* Key, void* Value)
-+{
-+ int nIndex = 0;
-+
-+ // If Key is alrady in the list, replace value
-+ for (; nIndex < m_nMapSize; nIndex++)
-+ {
-+ if (m_pKeyArray[nIndex] == Key)
-+ {
-+ m_pValueArray[nIndex] = Value;
-+ goto exit;
-+ }
-+ }
-+
-+ // If we have room, add it to the end!
-+ if (m_nAllocSize == m_nMapSize)
-+ {
-+ m_nAllocSize += AllocationSize;
-+ void** pNewKeys = new void*[m_nAllocSize];
-+ void** pNewValues = new void*[m_nAllocSize];
-+
-+ memcpy(pNewKeys,m_pKeyArray,sizeof(void*)*m_nMapSize); /* Flawfinder: ignore */
-+ memcpy(pNewValues,m_pValueArray,sizeof(void*)*m_nMapSize); /* Flawfinder: ignore */
-+
-+ delete [] m_pKeyArray;
-+ delete [] m_pValueArray;
-+
-+ m_pKeyArray = pNewKeys;
-+ m_pValueArray = pNewValues;
-+ }
-+
-+ m_pKeyArray[m_nMapSize] = Key;
-+ m_pValueArray[m_nMapSize] = Value;
-+ m_nMapSize++;
-+
-+exit:
-+ (NULL); // We're done!
-+}
-+
-Index: helix-libs/clientapps/clutter/fivemmap.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ helix-libs/clientapps/clutter/fivemmap.h 2008-10-13 06:05:49.000000000 -0700
-@@ -0,0 +1,79 @@
-+/* ***** BEGIN LICENSE BLOCK *****
-+ * Version: RCSL 1.0/RPSL 1.0
-+ *
-+ * Portions Copyright (c) 1995-2002 RealNetworks, Inc. All Rights Reserved.
-+ *
-+ * The contents of this file, and the files included with this file, are
-+ * subject to the current version of the RealNetworks Public Source License
-+ * Version 1.0 (the "RPSL") available at
-+ * http://www.helixcommunity.org/content/rpsl unless you have licensed
-+ * the file under the RealNetworks Community Source License Version 1.0
-+ * (the "RCSL") available at http://www.helixcommunity.org/content/rcsl,
-+ * in which case the RCSL will apply. You may also obtain the license terms
-+ * directly from RealNetworks. You may not use this file except in
-+ * compliance with the RPSL or, if you have a valid RCSL with RealNetworks
-+ * applicable to this file, the RCSL. Please see the applicable RPSL or
-+ * RCSL for the rights, obligations and limitations governing use of the
-+ * contents of the file.
-+ *
-+ * This file is part of the Helix DNA Technology. RealNetworks is the
-+ * developer of the Original Code and owns the copyrights in the portions
-+ * it created.
-+ *
-+ * This file, and the files included with this file, is distributed and made
-+ * available on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
-+ * EXPRESS OR IMPLIED, AND REALNETWORKS HEREBY DISCLAIMS ALL SUCH WARRANTIES,
-+ * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY, FITNESS
-+ * FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
-+ *
-+ * Technology Compatibility Kit Test Suite(s) Location:
-+ * http://www.helixcommunity.org/content/tck
-+ *
-+ * Contributor(s):
-+ *
-+ * ***** END LICENSE BLOCK ***** */
-+
-+#ifndef _FIVEMMAP_H_
-+#define _FIVEMMAP_H_
-+
-+#ifndef _HXTYPES_H_
-+#error FiveMinuteMap assumes pntypes.h.
-+#endif
-+
-+class FiveMinuteMap
-+{
-+ const int AllocationSize;
-+
-+ void** m_pKeyArray;
-+ void** m_pValueArray;
-+ int m_nMapSize;
-+ int m_nAllocSize;
-+ int m_nCursor;
-+public:
-+ FiveMinuteMap()
-+ : m_pKeyArray(NULL)
-+ , m_pValueArray(NULL)
-+ , m_nMapSize(0)
-+ , m_nAllocSize(0)
-+ , m_nCursor(0)
-+ , AllocationSize(10)
-+ {};
-+
-+ ~FiveMinuteMap()
-+ {
-+ delete [] m_pKeyArray;
-+ delete [] m_pValueArray;
-+ };
-+
-+ int GetCount() {return m_nMapSize;}
-+
-+ void* GetFirstValue();
-+ void* GetNextValue();
-+
-+ HXBOOL Lookup(void* Key, void*& Value) const;
-+ void RemoveKey(void* Key);
-+ void RemoveValue(void* Value);
-+ void SetAt(void* Key, void* Value);
-+};
-+
-+#endif /* _FIVEMMAP_H_ */
-Index: helix-libs/clientapps/clutter/globals.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ helix-libs/clientapps/clutter/globals.h 2008-10-13 06:05:49.000000000 -0700
-@@ -0,0 +1,150 @@
-+/* ***** BEGIN LICENSE BLOCK *****
-+ * Version: RCSL 1.0/RPSL 1.0
-+ *
-+ * Portions Copyright (c) 1995-2002 RealNetworks, Inc. All Rights Reserved.
-+ *
-+ * The contents of this file, and the files included with this file, are
-+ * subject to the current version of the RealNetworks Public Source License
-+ * Version 1.0 (the "RPSL") available at
-+ * http://www.helixcommunity.org/content/rpsl unless you have licensed
-+ * the file under the RealNetworks Community Source License Version 1.0
-+ * (the "RCSL") available at http://www.helixcommunity.org/content/rcsl,
-+ * in which case the RCSL will apply. You may also obtain the license terms
-+ * directly from RealNetworks. You may not use this file except in
-+ * compliance with the RPSL or, if you have a valid RCSL with RealNetworks
-+ * applicable to this file, the RCSL. Please see the applicable RPSL or
-+ * RCSL for the rights, obligations and limitations governing use of the
-+ * contents of the file.
-+ *
-+ * This file is part of the Helix DNA Technology. RealNetworks is the
-+ * developer of the Original Code and owns the copyrights in the portions
-+ * it created.
-+ *
-+ * This file, and the files included with this file, is distributed and made
-+ * available on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
-+ * EXPRESS OR IMPLIED, AND REALNETWORKS HEREBY DISCLAIMS ALL SUCH WARRANTIES,
-+ * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY, FITNESS
-+ * FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
-+ *
-+ * Technology Compatibility Kit Test Suite(s) Location:
-+ * http://www.helixcommunity.org/content/tck
-+ *
-+ * Contributor(s):
-+ *
-+ * ***** END LICENSE BLOCK ***** */
-+
-+/****************************************************************************
-+ *
-+ * Test Client:
-+ *
-+ *
-+ * This is an test client running on Windows, Mac, and Unix without a GUI.
-+ *
-+ */
-+
-+#ifndef _SPLAY_GLOBALS_H
-+#define _SPLAY_GLOBALS_H
-+
-+#include "dllacces.h"
-+#include "dllpath.h"
-+#include "hxengin.h"
-+#include "hxplayvelocity.h"
-+#include "hxcore.h"
-+#include "ihxmedpltfm.h"
-+#include "excontxt.h"
-+#include "preflist.h"
-+
-+#define HX_COMMAND_BUFFER_SIZE 256
-+#define HX_MAX_NUM_MULTI_SEEKS 10
-+struct _stGlobals
-+{
-+ _stGlobals()
-+ : g_pDLLAccess(NULL),
-+ g_nPlayers(0),
-+ m_fpHXMediaPlatformOpen(NULL),
-+ m_fpHXCreateMediaPlatform(NULL),
-+ m_fpHXMediaPlatformClose(NULL),
-+ m_fpCreateEngine(NULL),
-+ m_fpCloseEngine(NULL),
-+ m_fpSetDLLAccessPath(NULL),
-+ bEnableAdviceSink(FALSE),
-+ bEnableVerboseMode(FALSE),
-+ g_bEnableSlowStart(TRUE),
-+ g_bOnBeginOccurred(FALSE),
-+ g_pszUsername( NULL),
-+ g_pszPassword(NULL),
-+ g_pszGUIDFile(NULL),
-+ g_pszGUIDList(NULL),
-+ g_Error(HXR_OK),
-+ g_ulNumSecondsPlayed(0),
-+ pMediaPlatform(NULL),
-+ g_pIHXKicker(NULL),
-+ bUseLegacyAPIs(FALSE),
-+ pEngine(NULL),
-+ g_pQuickSeek(NULL),
-+ g_bNullRender(FALSE),
-+ g_bUserStop(FALSE),
-+ g_bInitVelocity(FALSE),
-+ g_bABD(FALSE),
-+ g_pVelocityCaps(NULL),
-+ g_ulNumMultiSeeks(0),
-+ g_ulMultiSeekIndex(0),
-+ g_bMultiSeek(FALSE),
-+ g_uThreadIDForKicker(-1)
-+ {
-+ memset(g_szCommandBuffer, 0, HX_COMMAND_BUFFER_SIZE);
-+ memset(g_szPriorCommandBuffer, 0, HX_COMMAND_BUFFER_SIZE);
-+ memset(g_Players, 0, sizeof(g_Players));
-+ memset(g_pszURLs, 0, sizeof(g_pszURLs));
-+ memset(g_pClientContexts, 0, sizeof(g_pClientContexts));
-+ }
-+
-+ #define MAX_NUM_PLAYERS 256
-+ IHXPlayer* g_Players[MAX_NUM_PLAYERS];
-+ char *g_pszURLs[MAX_NUM_PLAYERS];
-+ ExampleClientContext *g_pClientContexts[MAX_NUM_PLAYERS];
-+ int g_nPlayers;
-+ DLLAccessPath g_statclnt;
-+ DLLAccess* g_pDLLAccess;
-+ CHXPrefList g_prefList;
-+
-+ FPHXMEDIAPLATFORMOPEN m_fpHXMediaPlatformOpen;
-+ FPHXCREATEMEDIAPLATFORM m_fpHXCreateMediaPlatform;
-+ FPHXMEDIAPLATFORMCLOSE m_fpHXMediaPlatformClose;
-+
-+ FPRMCREATEENGINE m_fpCreateEngine;
-+ FPRMCLOSEENGINE m_fpCloseEngine;
-+ FPRMSETDLLACCESSPATH m_fpSetDLLAccessPath;
-+
-+ HXBOOL bEnableAdviceSink;
-+ HXBOOL bEnableVerboseMode;
-+ HXBOOL g_bEnableSlowStart;
-+ HXBOOL g_bOnBeginOccurred;
-+ char* g_pszUsername;
-+ char* g_pszPassword;
-+ char* g_pszGUIDFile;
-+ char* g_pszGUIDList;
-+ HX_RESULT g_Error;
-+ UINT32 g_ulNumSecondsPlayed;
-+ IHXMediaPlatform* pMediaPlatform;
-+ IHXMediaPlatformKicker* g_pIHXKicker;
-+ UINT32 g_uThreadIDForKicker;
-+ pthread_t g_pThreadKickmanId;
-+ HXBOOL bUseLegacyAPIs;
-+ IHXClientEngine* pEngine;
-+ IHXQuickSeek* g_pQuickSeek;
-+ HXBOOL g_bNullRender;
-+ HXBOOL g_bUserStop;
-+ HXBOOL g_bInitVelocity;
-+ HXBOOL g_bABD;
-+ IHXPlaybackVelocityCaps* g_pVelocityCaps;
-+ HXBOOL g_bMultiSeek;
-+ UINT32 g_ulMultiSeekTime[HX_MAX_NUM_MULTI_SEEKS];
-+ UINT32 g_ulNumMultiSeeks;
-+ UINT32 g_ulMultiSeekIndex;
-+ char g_szCommandBuffer[HX_COMMAND_BUFFER_SIZE];
-+ char g_szPriorCommandBuffer[HX_COMMAND_BUFFER_SIZE];
-+};
-+
-+
-+#endif // _SPLAY_GLOBALS_H
-Index: helix-libs/clientapps/clutter/iids.cpp
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ helix-libs/clientapps/clutter/iids.cpp 2008-10-13 06:05:49.000000000 -0700
-@@ -0,0 +1,50 @@
-+/* ***** BEGIN LICENSE BLOCK *****
-+ * Version: RCSL 1.0/RPSL 1.0
-+ *
-+ * Portions Copyright (c) 1995-2002 RealNetworks, Inc. All Rights Reserved.
-+ *
-+ * The contents of this file, and the files included with this file, are
-+ * subject to the current version of the RealNetworks Public Source License
-+ * Version 1.0 (the "RPSL") available at
-+ * http://www.helixcommunity.org/content/rpsl unless you have licensed
-+ * the file under the RealNetworks Community Source License Version 1.0
-+ * (the "RCSL") available at http://www.helixcommunity.org/content/rcsl,
-+ * in which case the RCSL will apply. You may also obtain the license terms
-+ * directly from RealNetworks. You may not use this file except in
-+ * compliance with the RPSL or, if you have a valid RCSL with RealNetworks
-+ * applicable to this file, the RCSL. Please see the applicable RPSL or
-+ * RCSL for the rights, obligations and limitations governing use of the
-+ * contents of the file.
-+ *
-+ * This file is part of the Helix DNA Technology. RealNetworks is the
-+ * developer of the Original Code and owns the copyrights in the portions
-+ * it created.
-+ *
-+ * This file, and the files included with this file, is distributed and made
-+ * available on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
-+ * EXPRESS OR IMPLIED, AND REALNETWORKS HEREBY DISCLAIMS ALL SUCH WARRANTIES,
-+ * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY, FITNESS
-+ * FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
-+ *
-+ * Technology Compatibility Kit Test Suite(s) Location:
-+ * http://www.helixcommunity.org/content/tck
-+ *
-+ * Contributor(s):
-+ *
-+ * ***** END LICENSE BLOCK ***** */
-+
-+// define all guids here once...
-+#define INITGUID
-+#define NCIHACK
-+#include "hxtypes.h"
-+#include "hxcom.h"
-+#include "hxiids.h"
-+#include "hxpiids.h"
-+#if defined _WINDOWS
-+#if defined (HELIX_FEATURE_DIRECT_SOUND)
-+#include "dsound.h"
-+#endif /* HELIX_FEATURE_DIRECT_SOUND */
-+#if defined (HELIX_FEATURE_VIDEO) && !defined(_WINCE)
-+#include "ddraw.h"
-+#endif /* HELIX_FEATURE_VIDEO */
-+#endif
-Index: helix-libs/clientapps/clutter/linux2.pcf
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ helix-libs/clientapps/clutter/linux2.pcf 2008-10-13 06:05:49.000000000 -0700
-@@ -0,0 +1,42 @@
-+#
-+# ***** BEGIN LICENSE BLOCK *****
-+# Version: RCSL 1.0/RPSL 1.0
-+#
-+# Portions Copyright (c) 1995-2002 RealNetworks, Inc. All Rights Reserved.
-+#
-+# The contents of this file, and the files included with this file, are
-+# subject to the current version of the RealNetworks Public Source License
-+# Version 1.0 (the "RPSL") available at
-+# http://www.helixcommunity.org/content/rpsl unless you have licensed
-+# the file under the RealNetworks Community Source License Version 1.0
-+# (the "RCSL") available at http://www.helixcommunity.org/content/rcsl,
-+# in which case the RCSL will apply. You may also obtain the license terms
-+# directly from RealNetworks. You may not use this file except in
-+# compliance with the RPSL or, if you have a valid RCSL with RealNetworks
-+# applicable to this file, the RCSL. Please see the applicable RPSL or
-+# RCSL for the rights, obligations and limitations governing use of the
-+# contents of the file.
-+#
-+# This file is part of the Helix DNA Technology. RealNetworks is the
-+# developer of the Original Code and owns the copyrights in the portions
-+# it created.
-+#
-+# This file, and the files included with this file, is distributed and made
-+# available on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
-+# EXPRESS OR IMPLIED, AND REALNETWORKS HEREBY DISCLAIMS ALL SUCH WARRANTIES,
-+# INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY, FITNESS
-+# FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
-+#
-+# Technology Compatibility Kit Test Suite(s) Location:
-+# http://www.helixcommunity.org/content/tck
-+#
-+# Contributor(s):
-+#
-+# ***** END LICENSE BLOCK *****
-+#
-+
-+project.AddSystemLibraries("dl", "m", "pthread")
-+
-+if (project.IsDefined("HELIX_FEATURE_VIDEO") and
-+ project.IsDefined("USE_XWINDOWS")):
-+ project.AddSystemLibraries("X11")
-Index: helix-libs/clientapps/clutter/player.cpp
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ helix-libs/clientapps/clutter/player.cpp 2008-10-13 06:05:49.000000000 -0700
-@@ -0,0 +1,1057 @@
-+/* ***** BEGIN LICENSE BLOCK *****
-+ * Version: RCSL 1.0/RPSL 1.0
-+ *
-+ * Portions Copyright (c) 1995-2002 RealNetworks, Inc. All Rights Reserved.
-+ *
-+ * The contents of this file, and the files included with this file, are
-+ * subject to the current version of the RealNetworks Public Source License
-+ * Version 1.0 (the "RPSL") available at
-+ * http://www.helixcommunity.org/content/rpsl unless you have licensed
-+ * the file under the RealNetworks Community Source License Version 1.0
-+ * (the "RCSL") available at http://www.helixcommunity.org/content/rcsl,
-+ * in which case the RCSL will apply. You may also obtain the license terms
-+ * directly from RealNetworks. You may not use this file except in
-+ * compliance with the RPSL or, if you have a valid RCSL with RealNetworks
-+ * applicable to this file, the RCSL. Please see the applicable RPSL or
-+ * RCSL for the rights, obligations and limitations governing use of the
-+ * contents of the file.
-+ *
-+ * This file is part of the Helix DNA Technology. RealNetworks is the
-+ * developer of the Original Code and owns the copyrights in the portions
-+ * it created.
-+ *
-+ * This file, and the files included with this file, is distributed and made
-+ * available on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
-+ * EXPRESS OR IMPLIED, AND REALNETWORKS HEREBY DISCLAIMS ALL SUCH WARRANTIES,
-+ * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY, FITNESS
-+ * FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
-+ *
-+ * Technology Compatibility Kit Test Suite(s) Location:
-+ * http://www.helixcommunity.org/content/tck
-+ *
-+ * Contributor(s):
-+ *
-+ * ***** END LICENSE BLOCK ***** */
-+
-+/****************************************************************************
-+ *
-+ * Test Client:
-+ *
-+ *
-+ * This is an test client running on Windows, Mac, and Unix without a GUI.
-+ *
-+ */
-+#include "hxtypes.h"
-+
-+#include <stdlib.h>
-+
-+#include "hlxclib/time.h"
-+#include "ihxmedpltfm.h"
-+#include "hxwintyp.h"
-+#include "hxcom.h"
-+#include "ihxpckts.h"
-+#include "hxcomm.h"
-+#include "hxmon.h"
-+#include "hxfiles.h"
-+#include "hxengin.h"
-+#include "hxcore.h"
-+#include "hxclsnk.h"
-+#include "hxgroup.h"
-+#include "hxerror.h"
-+#include "hxauth.h"
-+#include "hxwin.h"
-+#include "hxprefs.h"
-+#include "hxtbuf.h"
-+#include "fivemmap.h"
-+#include "dllacces.h"
-+#include "hxausvc.h"
-+#include "hxstrutl.h"
-+#include "hxgroup.h"
-+#include "hxwin.h"
-+#include "hxtick.h"
-+#include "hxbuffer.h"
-+#include "hxplayvelocity.h"
-+#include "pckunpck.h" // For CreateAndSetBufferCCF()
-+#include "hxvctrl.h"
-+#include "hxbsrc.h"
-+#include "excallback.h"
-+#include "pthread.h"
-+
-+#if defined(HELIX_FEATURE_PRESENTATION_FEATURE_SELECTION)
-+#include "hxpfs.h"
-+#endif // HELIX_FEATURE_PRESENTATION_FEATURE_SELECTION.
-+
-+#if defined(HELIX_FEATURE_PREFERENCES)
-+#include "preflist.h"
-+#endif /* #if defined(HELIX_FEATURE_PREFERENCES) */
-+#include "exadvsnk.h"
-+#include "exerror.h"
-+#include "exsitsup.h"
-+#include "exaumgr.h"
-+#if defined(_WIN32)
-+#include "exabd.h"
-+#endif
-+#include "excontxt.h"
-+#include "print.h"
-+#if defined(USE_XWINDOWS)
-+#include <X11/Xlib.h>
-+#endif
-+#if defined (_UNIX)
-+#include <stdio.h>
-+#include <sys/time.h>
-+#include <sys/types.h>
-+#include <unistd.h>
-+#include <termios.h>
-+#endif
-+#if defined(_WINDOWS)
-+#include <conio.h>
-+#endif
-+
-+#ifdef __TCS__
-+#include <unistd.h>
-+#if defined(__cplusplus)
-+extern "C" {
-+#endif /* defined(__cplusplus) */
-+ extern unsigned long tmosTimSleep(unsigned long ticks);
-+ unsigned long gForcePlayerToStop = 0;
-+#if defined(__cplusplus)
-+}
-+#endif /* defined(__cplusplus) */
-+#endif
-+
-+#if defined (_MACINTOSH) || defined (_MAC_UNIX)
-+bool gMacPlayerIsDone = false;
-+#endif
-+
-+
-+#if defined _VXWORKS
-+#include "sys/times.h"
-+#include "string.h"
-+#include "hxtime.h"
-+#endif
-+
-+#if defined(_MACINTOSH)
-+#ifndef _MAC_MACHO
-+#include <sioux.h>
-+#include <console.h>
-+#endif
-+#endif
-+
-+#include "dllpath.h"
-+
-+#ifdef _SYMBIAN
-+#include <e32svr.h>
-+#include "platform/symbian/symbian_event_hndlr.h"
-+#endif
-+
-+ENABLE_DLLACCESS_PATHS(g_SPlayAccessPath);
-+
-+// typedef for SetDLLAccessPath
-+
-+
-+#include "thrdutil.h"
-+
-+#if defined(_AIX)
-+#include <strings.h>
-+#endif
-+
-+#if defined _DEBUG || defined DEBUG
-+#include "debug.h"
-+#endif
-+
-+#ifndef MAX_PATH
-+#define MAX_PATH 256
-+#endif //!MAX_PATH
-+
-+#if defined(HELIX_CONFIG_NOSTATICS)
-+# include "globals/hxglobals.h"
-+#endif
-+
-+#define MAX_NUM_URLS 10
-+
-+#include "globals.h" //for global struct.
-+
-+#include "player.h"
-+
-+#if defined(_WINDOWS) && defined(_STATICALLY_LINKED)
-+HINSTANCE g_hInstance = NULL;
-+#endif
-+
-+struct _stGlobals*& GetGlobal()
-+{
-+#if defined(HELIX_CONFIG_NOSTATICS)
-+ static const struct _stGlobals* const _g_pstGlobals = NULL;
-+ struct _stGlobals*& g_pstGlobals = (struct _stGlobals*&)HXGlobalPtr::Get(&_g_pstGlobals);
-+#else
-+ static struct _stGlobals* g_pstGlobals = NULL;
-+#endif
-+ if( g_pstGlobals == NULL )
-+ {
-+ g_pstGlobals = new struct _stGlobals();
-+ }
-+ return g_pstGlobals;
-+
-+}
-+
-+
-+// Constants
-+const int DEFAULT_TIME_DELTA = 2000;
-+const int DEFAULT_STOP_TIME = -1;
-+const int SLEEP_TIME = 5;
-+const int GUID_LEN = 64;
-+
-+// Function prototypes
-+void PrintUsage(const char* pszAppName);
-+HXBOOL AllPlayersDone(int nNumPlayers, IHXPlayer** ppPlayers);
-+void StopAllPlayers(int nNumPlayers, IHXPlayer** ppPlayers);
-+HXBOOL ReadGUIDFile();
-+char* GetAppName(char* pszArgv0);
-+
-+#ifdef __TCS__
-+#if defined(__cplusplus)
-+extern "C" {
-+#endif /* defined(__cplusplus) */
-+
-+ extern void _alloc_stats(int verbose);
-+#if defined(__cplusplus)
-+}
-+#endif /* defined(__cplusplus) */
-+
-+static IHXPlayer** g_Players;
-+static int g_nPlayers = 0;
-+static long evtCount = 0;
-+static long evtFullCount = 0;
-+#endif
-+
-+
-+
-+#if defined(HELIX_FEATURE_PRESENTATION_FEATURE_SELECTION)
-+HX_RESULT
-+DumpPFdata(IHXPresentationFeatureManager* pPFMgr,
-+ const char* pszPFName)
-+{
-+ HX_RESULT hxr = HXR_OK;
-+
-+ IHXBuffer* pFeatureCurrentSetting = NULL;
-+ IHXValues* pFeatureOptions = NULL;
-+
-+ if (!pPFMgr || !pszPFName)
-+ {
-+ hxr = HXR_INVALID_PARAMETER;
-+ }
-+ else
-+ {
-+ // List all the options for this PF:
-+ HX_RESULT hxr = pPFMgr->GetPresentationFeature(
-+ pszPFName,
-+ pFeatureCurrentSetting,
-+ pFeatureOptions);
-+
-+ if (FAILED(hxr))
-+ {
-+ // PF doesn't exist!
-+ STDOUT("\t%s - No such presentation feature\n\n", pszPFName);
-+ }
-+ else
-+ {
-+ // Now, go through pFeatureOptions and display
-+ // them and their "is-selectable"-flag values:
-+ const char* pszPFOptionName = NULL;
-+ const char* pszPFCurSetting = pFeatureCurrentSetting?
-+ (const char*)pFeatureCurrentSetting->GetBuffer() : NULL;
-+ UINT32 bPFOptionIsSelectableFlag = FALSE;
-+ IHXBuffer* pPFOptionIsSelectableFlag = NULL;
-+
-+ HX_ASSERT(pszPFCurSetting);
-+ STDOUT("\t%s\t(Current setting == \"%s\")\n", pszPFName, pszPFCurSetting?
-+ pszPFCurSetting : "<ERROR: THIS PF HAS NO CURRENT SETTING!>");
-+
-+ if (!pFeatureOptions) // NULL is OK; that means freeform (open-ended):
-+ {
-+ STDOUT("\t\t(%s's options are freeform, i.e., open-ended)\n",
-+ pszPFName);
-+ }
-+ else // List all the options and their flags:
-+ {
-+ if (HXR_OK == pFeatureOptions->GetFirstPropertyCString(pszPFOptionName,
-+ pPFOptionIsSelectableFlag) && *pszPFOptionName)
-+ {
-+ do
-+ {
-+ const UCHAR* pIsSelFlag = pPFOptionIsSelectableFlag->GetBuffer();
-+ if (pIsSelFlag && *pIsSelFlag)
-+ {
-+ // Anything but '0' (zero) is treated as '1' (is selectable):
-+ bPFOptionIsSelectableFlag = (HXBOOL)('0' != *pIsSelFlag &&
-+ '\0' == *(pIsSelFlag+1));
-+ }
-+ else
-+ {
-+ // Set the error, but we'll go ahead and treat it as '0':
-+ hxr = HXR_INVALID_PARAMETER;
-+ bPFOptionIsSelectableFlag = FALSE;
-+ }
-+
-+ STDOUT("\t\t%s\t\tIs selectable: %s\n",
-+ pszPFOptionName, bPFOptionIsSelectableFlag? "yes":"no");
-+ // Release it to get the next PF:
-+ HX_RELEASE(pPFOptionIsSelectableFlag);
-+ } while (HXR_OK == pFeatureOptions->GetNextPropertyCString(
-+ pszPFOptionName, pPFOptionIsSelectableFlag));
-+ }
-+ }
-+
-+ HX_RELEASE(pPFOptionIsSelectableFlag);
-+ }
-+ }
-+
-+ HX_RELEASE(pFeatureCurrentSetting);
-+ HX_RELEASE(pFeatureOptions);
-+
-+ return hxr;
-+}
-+#endif // HELIX_FEATURE_PRESENTATION_FEATURE_SELECTION.
-+
-+
-+char* RemoveWrappingQuotes(char* str)
-+{
-+ int len = strlen(str);
-+ if (len > 0)
-+ {
-+ if (str[len-1] == '"') str[--len] = 0;
-+ if (str[0] == '"') { int i = 0; do { str[i++] = str[i+1]; } while(--len); }
-+ }
-+ return str;
-+}
-+
-+void *kickman(void *dummy)
-+{
-+ while(1) {
-+ UINT32 sleepTime = 0;
-+ IHXMediaPlatformKicker* pKicker = GetGlobal()->g_pIHXKicker;
-+ if( pKicker )
-+ {
-+ pKicker->Kick(GetGlobal()->g_uThreadIDForKicker, &sleepTime);
-+ }
-+ usleep(sleepTime);
-+ }
-+}
-+
-+PLAYER_API int init_main( )
-+{
-+#if defined(_WIN32) && !defined(WIN32_PLATFORM_PSPC)
-+ setvbuf(stdout, NULL, _IONBF, 0);
-+#endif /* defined(_WIN32) && !defined(WIN32_PLATFORM_PSPC) */
-+
-+ FPHXMEDIAPLATFORMOPEN fpHXMediaPlatformOpen = NULL;
-+ FPHXCREATEMEDIAPLATFORM fpHXCreateMediaPlatform = NULL;
-+ FPHXMEDIAPLATFORMCLOSE fpHXMediaPlatformClose = NULL;
-+
-+ FPRMCREATEENGINE fpCreateEngine = NULL;
-+ FPRMCLOSEENGINE fpCloseEngine = NULL;
-+ FPRMSETDLLACCESSPATH fpSetDll = NULL;
-+
-+ HX_RESULT theErr = HXR_OK;
-+ ExampleClientContext** ppExContexts = NULL;
-+#if defined(HELIX_FEATURE_AUTO_BANDWIDTH_DETECTION) && defined(_WIN32)
-+ ExampleABD* pABD = NULL;
-+#endif
-+ IHXPlayer** ppPlayers = NULL;
-+ IHXQuickSeek* ppQuickSeek = NULL;
-+ IHXErrorSink* pErrorSink = NULL;
-+ IHXErrorSinkControl* pErrorSinkControl = NULL;
-+ UINT32 ulABDResult = 0;
-+ UINT32 ulProbPktSize = 0;
-+ UINT32 ulProbPktNum = 0;
-+#if defined(HELIX_FEATURE_PLAYBACK_VELOCITY)
-+ INT32 lVelocity = 100;
-+ INT32 lKeyFrameMode = 0;
-+ INT32 lAutoSwitch = 0;
-+#endif /* #if defined(HELIX_FEATURE_PLAYBACK_VELOCITY) */
-+ CHXString* pABDServer = NULL;
-+ char* pszURL[MAX_NUM_URLS];
-+ char* pszURLOrig[MAX_NUM_URLS];
-+ UINT32 ulNumURLsFound = 0;
-+ int nNumPlayers = 1;
-+ int nNumPlayRepeats = 1;
-+ int nTimeDelta = DEFAULT_TIME_DELTA;
-+ int nStopTime = DEFAULT_STOP_TIME;
-+ bool bStopTime = true;
-+ int i = 0;
-+ char* pszGUIDList = NULL;
-+#ifdef _MACINTOSH
-+ char dllhome[MAX_PATH] = {'\0'}; /* Flawfinder: ignore */
-+#elif defined(_SYMBIAN)
-+ char dllhome[MAX_PATH] = "c:"; /* Flawfinder: ignore */
-+#else
-+ char dllhome[MAX_PATH] = {'.','\0'}; /* Flawfinder: ignore */
-+#endif
-+ DLLAccess* pDLLAccess = NULL;
-+ char staticLibPath[MAX_PATH] = {0}; /* Flawfinder: ignore */
-+#ifdef _WINDOWS
-+ HINSTANCE hDll = NULL;
-+#endif
-+ bool bStopping = false;
-+ int nPlay = 0;
-+
-+ // NULL out the URL arrays
-+ memset(pszURL, 0, MAX_NUM_URLS * sizeof(char*));
-+ memset(pszURLOrig, 0, MAX_NUM_URLS * sizeof(char*));
-+
-+
-+ //See if the user has set their HELIX_LIBS env var. This is overridden by the
-+ //-l option.
-+ const char* pszHelixLibs = getenv("HELIX_LIBS");
-+ if( pszHelixLibs )
-+ SafeStrCpy( dllhome, pszHelixLibs, MAX_PATH);
-+
-+
-+
-+ GetGlobal()->bEnableAdviceSink = TRUE;
-+ GetGlobal()->g_prefList.Add("UseOverlay", "0");
-+
-+ SafeSprintf(staticLibPath, MAX_PATH, "%s/%s", dllhome, "hxmedpltfm.so");
-+
-+ if (dllhome)
-+ {
-+ GetDLLAccessPath()->SetPath(DLLTYPE_COMMON, dllhome);
-+ GetDLLAccessPath()->SetPath(DLLTYPE_PLUGIN, dllhome);
-+ GetDLLAccessPath()->SetPath(DLLTYPE_CODEC, dllhome);
-+ }
-+
-+ // initialize the globals
-+ GetGlobal()->m_fpCreateEngine = NULL;
-+ GetGlobal()->m_fpCloseEngine = NULL;
-+ GetGlobal()->g_nPlayers = 0;
-+
-+ // prepare/load the HXCore module
-+ pDLLAccess = new DLLAccess();
-+
-+ STDOUT("Simpleplayer is looking for the client core at %s\n", staticLibPath );
-+
-+ if (DLLAccess::DLL_OK != pDLLAccess->open(staticLibPath))
-+ {
-+ const char* pErrorString = NULL;
-+ pErrorString = pDLLAccess->getErrorString();
-+ STDERR("splayer: %s\n\n", pErrorString);
-+#ifndef _STATICALLY_LINKED
-+#ifndef _MACINTOSH
-+ //Make sure the user has told us where to find the DLLs at. Either
-+ //with the -l option or with the HELIX_LIBS env var.
-+ STDERR("You must tell the player where to find the client core and\n");
-+ STDERR("all of its supporting DLLs and codecs. Please use the -l\n");
-+ STDERR("option or set your HELIX_LIBS env variable to point the player.\n");
-+ STDERR("to where you have all of the DLLs installed.\n\n" );
-+ //PrintUsage(argv[0]);
-+#endif
-+#endif
-+ goto cleanup;
-+ }
-+
-+ GetGlobal()->m_fpHXMediaPlatformOpen = (FPHXMEDIAPLATFORMOPEN) pDLLAccess->getSymbol("HXMediaPlatformOpen");
-+ GetGlobal()->m_fpHXCreateMediaPlatform = (FPHXCREATEMEDIAPLATFORM) pDLLAccess->getSymbol("HXCreateMediaPlatform");
-+ GetGlobal()->m_fpHXMediaPlatformClose = (FPHXMEDIAPLATFORMCLOSE) pDLLAccess->getSymbol("HXMediaPlatformClose");
-+
-+ GetGlobal()->m_fpCreateEngine = (FPRMCREATEENGINE) pDLLAccess->getSymbol("CreateEngine");
-+ GetGlobal()->m_fpCloseEngine = (FPRMCLOSEENGINE) pDLLAccess->getSymbol("CloseEngine");
-+ GetGlobal()->m_fpSetDLLAccessPath = (FPRMSETDLLACCESSPATH) pDLLAccess->getSymbol("SetDLLAccessPath");
-+
-+ if (GetGlobal()->m_fpHXMediaPlatformOpen == NULL ||
-+ GetGlobal()->m_fpHXCreateMediaPlatform == NULL ||
-+ GetGlobal()->m_fpHXMediaPlatformClose == NULL ||
-+ GetGlobal()->m_fpCreateEngine == NULL ||
-+ GetGlobal()->m_fpCloseEngine == NULL ||
-+ GetGlobal()->m_fpSetDLLAccessPath == NULL )
-+ {
-+ theErr = HXR_FAILED;
-+ goto cleanup;
-+ }
-+
-+#if defined(USE_XWINDOWS) && defined(HELIX_FEATURE_VIDEO)
-+ XInitThreads();
-+#endif
-+
-+ {
-+ fpHXMediaPlatformOpen = GetGlobal()->m_fpHXMediaPlatformOpen;
-+ fpHXCreateMediaPlatform = GetGlobal()->m_fpHXCreateMediaPlatform;
-+ fpHXMediaPlatformClose = GetGlobal()->m_fpHXMediaPlatformClose;
-+
-+ if (HXR_OK != fpHXMediaPlatformOpen())
-+ {
-+ theErr = HXR_FAILED;
-+ goto cleanup;
-+ }
-+
-+ if (HXR_OK != fpHXCreateMediaPlatform((IHXMediaPlatform**)&GetGlobal()->pMediaPlatform))
-+ {
-+ theErr = HXR_FAILED;
-+ goto cleanup;
-+ }
-+
-+ IHXMediaPlatform* pMediaPlatform = GetGlobal()->pMediaPlatform;
-+
-+
-+ if (HXR_OK != pMediaPlatform->AddPluginPath("HelixSimplePlayer", dllhome))
-+ {
-+ theErr = HXR_FAILED;
-+ goto cleanup;
-+ }
-+
-+ if (HXR_OK != pMediaPlatform->Init(NULL))
-+ {
-+ theErr = HXR_FAILED;
-+ goto cleanup;
-+ }
-+
-+ IHXCommonClassFactory* pCCF = NULL;
-+ if (HXR_OK != pMediaPlatform->QueryInterface(IID_IHXCommonClassFactory,
-+ (void**)&pCCF))
-+ {
-+ theErr = HXR_FAILED;
-+ goto cleanup;
-+ }
-+
-+ if (HXR_OK != pCCF->CreateInstance(CLSID_IHXClientEngine, (void**)&GetGlobal()->pEngine))
-+ {
-+ HX_RELEASE(pCCF);
-+ theErr = HXR_FAILED;
-+ goto cleanup;
-+ }
-+
-+ HX_RELEASE(pCCF);
-+
-+ IHXMediaPlatformKicker* pKicker = NULL;
-+ pMediaPlatform->QueryInterface(IID_IHXMediaPlatformKicker, (void**)&pKicker);
-+ HX_ASSERT(pKicker);
-+ GetGlobal()->g_pIHXKicker = pKicker;
-+ GetGlobal()->g_uThreadIDForKicker = HXGetCurrentThreadID();
-+
-+ pthread_t thread_id;
-+ pthread_create(&thread_id, NULL, kickman, NULL);
-+ GetGlobal()->g_pThreadKickmanId = thread_id;
-+ }
-+
-+
-+
-+ {
-+
-+
-+#if defined(_WIN32) && !defined(WIN32_PLATFORM_PSPC)
-+ SetConsoleCtrlHandler((PHANDLER_ROUTINE)HandlerRoutine,
-+ TRUE);
-+#endif
-+
-+ }
-+
-+ return HXR_OK;
-+
-+ cleanup:
-+ deinit_main();
-+ return HXR_FAIL;
-+}
-+
-+/* Get the least index to available entry in Getglobal()->gPlayers */
-+static int get_index()
-+{
-+ int i;
-+ /* an simple implementation */
-+ for (i = 0; i < MAX_NUM_PLAYERS; i++)
-+ {
-+ if (GetGlobal()->g_Players[i] == NULL)
-+ return i;
-+ }
-+
-+ return -1;
-+}
-+
-+PLAYER_API unsigned int get_curr_playtime(void *pPlayerHandle)
-+{
-+ unsigned int time = 0;
-+ IHXPlayer *pPlayer = (IHXPlayer *)pPlayerHandle;
-+ if (pPlayer)
-+ time = pPlayer->GetCurrentPlayTime();
-+ return time;
-+}
-+
-+PLAYER_API int get_player(void **ppPlayerHandle, on_buffering_cb_t on_buffering_cb, on_pos_length_cb_t on_pos_length_cb, on_state_change_cb_t on_state_change_cb, on_new_frame_cb_t on_new_frame_cb, void *context)
-+{
-+ int index = get_index();
-+ IHXPlayer **ppPlayer = (IHXPlayer **)ppPlayerHandle;
-+ ExampleClientContext* pExContext = NULL;
-+ pExContext = new ExampleClientContext(index);
-+ if (!pExContext)
-+ {
-+ return HXR_UNEXPECTED;
-+ }
-+ pExContext->AddRef();
-+
-+ ppPlayer[0] = NULL;
-+ IHXClientEngine* pEngine = GetGlobal()->pEngine;
-+ if (HXR_OK != pEngine->CreatePlayer(*ppPlayer))
-+ {
-+ HX_RELEASE(pExContext);
-+ return HXR_FAILED;
-+ }
-+#if 1
-+ char* pszGUIDList = NULL;
-+ //initialize the example context
-+ pszGUIDList = GetGlobal()->g_pszGUIDList;
-+ {
-+ char pszGUID[GUID_LEN + 1]; /* Flawfinder: ignore */ // add 1 for terminator
-+ char* token = NULL;
-+ IHXPreferences* pPreferences = NULL;
-+
-+ pszGUID[0] = '\0';
-+
-+ if (pszGUIDList)
-+ {
-+ // Get next GUID from the GUID list
-+ {
-+ token = strtok(pszGUIDList, "\n\0");
-+ }
-+ if (token)
-+ {
-+ strncpy(pszGUID, token, GUID_LEN); /* Flawfinder: ignore */
-+ pszGUID[GUID_LEN] = '\0';
-+ }
-+ }
-+
-+ ppPlayer[0]->QueryInterface(IID_IHXPreferences,
-+ (void**) &pPreferences);
-+
-+ pExContext->Init(ppPlayer[0], pPreferences, pszGUID, on_buffering_cb, on_pos_length_cb, on_state_change_cb, on_new_frame_cb, context);
-+
-+ ppPlayer[0]->SetClientContext(pExContext);
-+
-+ HX_RELEASE(pPreferences);
-+
-+ IHXErrorSinkControl* pErrorSinkControl = NULL;
-+ ppPlayer[0]->QueryInterface(IID_IHXErrorSinkControl,
-+ (void**) &pErrorSinkControl);
-+
-+ if (pErrorSinkControl)
-+ {
-+ IHXErrorSink* pErrorSink = NULL;
-+ pExContext->QueryInterface(IID_IHXErrorSink,
-+ (void**) &pErrorSink);
-+ if (pErrorSink)
-+ {
-+ pErrorSinkControl->AddErrorSink(pErrorSink, HXLOG_EMERG, HXLOG_INFO);
-+ }
-+ HX_RELEASE(pErrorSink);
-+ }
-+ HX_RELEASE(pErrorSinkControl);
-+ GetGlobal()->g_prefList.SetPreferences(ppPlayer[0]);
-+
-+ }
-+#endif
-+ HX_ASSERT(GetGlobal()->g_nPlayers < MAX_NUM_PLAYERS);
-+ GetGlobal()->g_Players[index] = ppPlayer[0];
-+ GetGlobal()->g_pClientContexts[index] = pExContext;
-+ GetGlobal()->g_nPlayers++;
-+
-+ return HXR_OK;
-+}
-+
-+static int get_index_by_player( IHXPlayer *pPlayer)
-+{
-+ int i;
-+ /* an simple implementation */
-+ for (i = 0; i < MAX_NUM_PLAYERS; i++)
-+ {
-+ if (GetGlobal()->g_Players[i] && GetGlobal()->g_Players[i] == pPlayer)
-+ return i;
-+ }
-+
-+ return -1;
-+}
-+
-+PLAYER_API int player_openurl( void *pPlayerHandle, char *pszRawURL)
-+{
-+ HX_RESULT ret;
-+ IHXPlayer *pPlayer = (IHXPlayer *)pPlayerHandle;
-+ int index = get_index_by_player(pPlayer);
-+ if (index < 0)
-+ return HXR_FAIL;
-+
-+ char *pszURLOrig = RemoveWrappingQuotes(pszRawURL);
-+
-+ //if no "://" was found lets add file:// by default so that you
-+ //can refer to local content as just ./splay ~/Content/startrek.rm,
-+ //for example, and not ./splay file:///home/gregory/Content/startrek.rm
-+ char* pszAddOn = NULL;
-+ if( strstr( pszURLOrig, "://") )
-+ pszAddOn = (char *)"";
-+ else
-+ pszAddOn = (char *)"file://";
-+
-+ char *pszURL = new char[strlen(pszURLOrig)+strlen(pszAddOn)+1];
-+ sprintf( pszURL, "%s%s", pszAddOn, pszURLOrig ); /* Flawfinder: ignore */
-+ // Increment the number of URLs we have found
-+ STDERR("opening %s on player\n", pszURL);
-+
-+ GetGlobal()->g_pszURLs[index] = pszURL;
-+ ret = pPlayer->OpenURL(pszURL);
-+
-+ UINT32 sleepTime = 0;
-+
-+ IHXMediaPlatformKicker* pKicker = GetGlobal()->g_pIHXKicker;
-+ if( pKicker )
-+ {
-+ pKicker->Kick(HXGetCurrentThreadID(), &sleepTime);
-+ }
-+
-+ return ret;
-+}
-+
-+PLAYER_API int put_player( void *pPlayerHandle)
-+{
-+ IHXPlayer *pPlayer = (IHXPlayer *)pPlayerHandle;
-+ int index;
-+ index = get_index_by_player(pPlayer);
-+ if (index < 0)
-+ return HXR_FAIL;
-+
-+ ExampleClientContext *pClientContext = GetGlobal()->g_pClientContexts[index];
-+ if (pClientContext) {
-+ pClientContext->Release();
-+ pClientContext = NULL;
-+ }
-+
-+ GetGlobal()->g_pClientContexts[index] = NULL;
-+ if (pPlayer) {
-+ if (GetGlobal()->pEngine) {
-+ GetGlobal()->pEngine->ClosePlayer(pPlayer);
-+ }
-+ pPlayer->Release();
-+ pPlayer = NULL;
-+ }
-+ GetGlobal()->g_Players[index] = NULL;
-+ GetGlobal()->g_nPlayers--;
-+ delete [] GetGlobal()->g_pszURLs[index];
-+ GetGlobal()->g_pszURLs[index] = NULL;
-+
-+ return HXR_OK;
-+}
-+
-+PLAYER_API int player_geturl( void *pPlayerHandle, char **pszURL)
-+{
-+ IHXPlayer *pPlayer = (IHXPlayer *)pPlayerHandle;
-+ int index = get_index_by_player(pPlayer);
-+ if (index >= 0) {
-+ *pszURL = GetGlobal()->g_pszURLs[index];
-+ return HXR_OK;
-+ }
-+
-+ return HXR_FAIL;
-+}
-+
-+PLAYER_API int player_begin( void *pPlayerHandle )
-+{
-+ IHXPlayer *pPlayer = (IHXPlayer *)pPlayerHandle;
-+ UINT32 sleepTime = 0;
-+ pPlayer->Begin();
-+
-+#if 0
-+ IHXMediaPlatformKicker* pKicker = GetGlobal()->g_pIHXKicker;
-+ if( pKicker )
-+ {
-+ pKicker->Kick(HXGetCurrentThreadID(), &sleepTime);
-+ }
-+#endif
-+ return HXR_OK;
-+}
-+
-+PLAYER_API int player_pause( void *pPlayerHandle )
-+{
-+ IHXPlayer *pPlayer = (IHXPlayer *)pPlayerHandle;
-+ UINT32 sleepTime = 0;
-+ pPlayer->Pause();
-+
-+#if 0
-+ IHXMediaPlatformKicker* pKicker = GetGlobal()->g_pIHXKicker;
-+ if( pKicker )
-+ {
-+ pKicker->Kick(HXGetCurrentThreadID(), &sleepTime);
-+ }
-+#endif
-+ return HXR_OK;
-+}
-+
-+PLAYER_API int player_stop( void *pPlayerHandle )
-+{
-+ IHXPlayer *pPlayer = (IHXPlayer *)pPlayerHandle;
-+ pPlayer->Stop();
-+ return HXR_OK;
-+}
-+
-+#if 0
-+int main(int argc, char *argv[])
-+{
-+ IHXPlayer *pPlayer;
-+ init_main();
-+ while(1) {
-+ get_player(&pPlayer);
-+ player_openurl(pPlayer, argv[1]);
-+ player_begin(pPlayer);
-+ // sleep(2);
-+ player_stop(pPlayer);
-+ put_player(pPlayer);
-+ }
-+ deinit_main();
-+ return 0;
-+}
-+#endif
-+
-+PLAYER_API int player_seek(void *pPlayerHandle, int pos)
-+{
-+ IHXPlayer *pPlayer = (IHXPlayer *)pPlayerHandle;
-+ if (pPlayer == NULL)
-+ return HXR_FAIL;
-+
-+ return pPlayer->Seek(pos);
-+}
-+PLAYER_API int player_getvolume(void *pPlayerHandle)
-+{
-+ IHXPlayer *pPlayer = (IHXPlayer *)pPlayerHandle;
-+ if (pPlayer == NULL)
-+ return HXR_FAIL;
-+
-+ int volume = 0;
-+
-+ IHXAudioPlayer* pAudioPlayer = NULL;
-+ pPlayer->QueryInterface(IID_IHXAudioPlayer, (void**) &pAudioPlayer);
-+ if (pAudioPlayer)
-+ {
-+ // Get the IHXVolume
-+ IHXVolume* pVolume = pAudioPlayer->GetAudioVolume();
-+ if (pVolume)
-+ {
-+ volume = pVolume->GetVolume();
-+ }
-+ HX_RELEASE(pVolume);
-+ }
-+ HX_RELEASE(pAudioPlayer);
-+
-+ return volume;
-+}
-+
-+
-+PLAYER_API int player_setvolume(void *pPlayerHandle, unsigned short volume)
-+{
-+ IHXPlayer *pPlayer = (IHXPlayer *)pPlayerHandle;
-+ if (pPlayer == NULL)
-+ return HXR_FAIL;
-+
-+ IHXAudioPlayer* pAudioPlayer = NULL;
-+ pPlayer->QueryInterface(IID_IHXAudioPlayer, (void**) &pAudioPlayer);
-+ if (pAudioPlayer)
-+ {
-+ // Get the IHXVolume
-+ IHXVolume* pVolume = pAudioPlayer->GetAudioVolume();
-+ if (pVolume)
-+ {
-+ pVolume->SetVolume(volume);
-+ }
-+ HX_RELEASE(pVolume);
-+ }
-+ HX_RELEASE(pAudioPlayer);
-+}
-+
-+PLAYER_API int deinit_main()
-+{
-+
-+ pthread_cancel(GetGlobal()->g_pThreadKickmanId);
-+ int ret ;
-+ ret = pthread_join(GetGlobal()->g_pThreadKickmanId, NULL);
-+ if (ret < 0) {
-+ perror("pthread_join error\n");
-+ }
-+#if defined(HELIX_FEATURE_PLAYBACK_VELOCITY)
-+ if (GetGlobal()->g_pVelocityCaps)
-+ {
-+ IHXPlaybackVelocityCaps* pCaps = GetGlobal()->g_pVelocityCaps;
-+ pCaps->Release();
-+ GetGlobal()->g_pVelocityCaps = NULL;
-+ }
-+#endif /* #if defined(HELIX_FEATURE_PLAYBACK_VELOCITY) */
-+
-+#ifdef __TCS__
-+ g_nPlayers = 0;
-+#endif
-+
-+
-+ {
-+ IHXClientEngine* pEngine = GetGlobal()->pEngine;
-+
-+ if (pEngine)
-+ {
-+ IHXClientEngine2* pEngine2 = NULL;
-+ if (HXR_OK == pEngine->QueryInterface(IID_IHXClientEngine2,
-+ (void**)&pEngine2))
-+ {
-+ pEngine2->Close();
-+ }
-+ HX_RELEASE(pEngine2);
-+ }
-+ HX_RELEASE(GetGlobal()->pEngine);
-+ HX_RELEASE(GetGlobal()->g_pIHXKicker);
-+
-+ if (GetGlobal()->pMediaPlatform)
-+ {
-+ // Reset() not only close the platform but also remove all
-+ // persistent information(i.e. preferences) maintained by the
-+ // platform
-+ // GetGlobal()->pMediaPlatform->Reset(NULL);
-+ GetGlobal()->pMediaPlatform->Close();
-+ HX_RELEASE(GetGlobal()->pMediaPlatform);
-+ }
-+
-+ if (GetGlobal()->m_fpHXMediaPlatformClose)
-+ {
-+ GetGlobal()->m_fpHXMediaPlatformClose();
-+ }
-+ }
-+
-+
-+ if (GetGlobal()->bEnableVerboseMode)
-+ {
-+ STDOUT("\nDone.\n");
-+ }
-+
-+ if (GetGlobal()->g_pszUsername)
-+ {
-+ delete [] GetGlobal()->g_pszUsername;
-+ GetGlobal()->g_pszUsername = NULL;
-+ }
-+ if (GetGlobal()->g_pszPassword)
-+ {
-+ delete [] GetGlobal()->g_pszPassword;
-+ GetGlobal()->g_pszPassword = NULL;
-+ }
-+ if (GetGlobal()->g_pszGUIDFile)
-+ {
-+ delete [] GetGlobal()->g_pszGUIDFile;
-+ GetGlobal()->g_pszGUIDFile = NULL;
-+ }
-+ if (GetGlobal()->g_pszGUIDList)
-+ {
-+ delete [] GetGlobal()->g_pszGUIDList;
-+ GetGlobal()->g_pszGUIDList = NULL;
-+ }
-+ // If an error occurred during playback, return that
-+
-+ if (GetGlobal()->g_Error != HXR_OK)
-+ {
-+ return GetGlobal()->g_Error;
-+ }
-+ // or HXR_OK (if there was more than one player)
-+ else
-+ {
-+ return HXR_OK;
-+ }
-+}
-+char* GetAppName(char* pszArgv0)
-+{
-+ char* pszAppName;
-+
-+ pszAppName = strrchr(pszArgv0, '\\');
-+
-+ if (NULL == pszAppName)
-+ {
-+ return pszArgv0;
-+ }
-+ else
-+ {
-+ return pszAppName + 1;
-+ }
-+}
-+
-+void PrintUsage(const char* pszAppName)
-+{
-+}
-+
-+
-+
-+HXBOOL ReadGUIDFile()
-+{
-+ HXBOOL bSuccess = FALSE;
-+ FILE* pFile = NULL;
-+ int nNumRead = 0;
-+ int readSize = 10000;
-+ char* pszBuffer = new char[readSize];
-+
-+ if (GetGlobal()->g_pszGUIDFile)
-+ {
-+ if((pFile = fopen(GetGlobal()->g_pszGUIDFile, "r")) != NULL)
-+ {
-+ // Read in the entire file
-+ nNumRead = fread(pszBuffer, sizeof(char), readSize, pFile);
-+ pszBuffer[nNumRead] = '\0';
-+
-+ // Store it for later parsing
-+ GetGlobal()->g_pszGUIDList = new char[nNumRead + 1];
-+ strcpy(GetGlobal()->g_pszGUIDList, pszBuffer); /* Flawfinder: ignore */
-+
-+ fclose(pFile);
-+ pFile = NULL;
-+
-+ if (nNumRead > 0)
-+ {
-+ bSuccess = TRUE;
-+ }
-+ }
-+ }
-+
-+ delete [] pszBuffer;
-+
-+ return bSuccess;
-+}
-+
-+static int are_all_src_seekable(IHXPlayer *pPlayer)
-+{
-+ UINT16 nSrcCnt;
-+ nSrcCnt = pPlayer->GetSourceCount();
-+ HXSource *pSource = NULL; /* This is brute-force */
-+ for (UINT16 i = 0; i < nSrcCnt; i++)
-+ {
-+ if (pPlayer->GetSource(i, (IUnknown *&)pSource) == HXR_OK)
-+ {
-+ if (!pSource->IsSeekable())
-+ return FALSE;
-+
-+
-+ }
-+ }
-+
-+}
-+
-+PLAYER_API int player_canseek(void *pPlayerHandle)
-+{
-+ if (!pPlayerHandle)
-+ return FALSE;
-+
-+ IHXPlayer *pPlayer = (IHXPlayer *)pPlayerHandle;
-+ ExampleClientContext* pExContext=NULL;
-+ if (pPlayer->GetClientContext((IUnknown*&)pExContext) != HXR_OK)
-+ return FALSE;
-+
-+ if (!pExContext)
-+ return FALSE;
-+
-+ EHXClientState State = pExContext->GetState();
-+
-+ int all_src_seekable = are_all_src_seekable(pPlayer);
-+
-+ HX_RELEASE(pExContext);
-+
-+ if (State < HX_CLIENT_STATE_CONNECTED)
-+ return TRUE;
-+
-+ if (all_src_seekable && (!pPlayer->IsLive() || State == HX_CLIENT_STATE_PAUSED))
-+ return TRUE;
-+
-+ return FALSE;
-+}
-+
-+
-Index: helix-libs/clientapps/clutter/player.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ helix-libs/clientapps/clutter/player.h 2008-10-13 06:54:45.000000000 -0700
-@@ -0,0 +1,60 @@
-+#ifndef _PLAYER_H_
-+#define _PLAYER_H_
-+
-+#ifdef __cplusplus
-+#define PLAYER_API extern "C"
-+#else
-+#define PLAYER_API
-+#endif
-+
-+/* Duplicate of EHXClientState */
-+typedef enum _EPlayerStateState
-+{
-+ PLAYER_STATE_READY = 0, // uninitialized
-+ PLAYER_STATE_CONNECTING, // attempting to connect to sources
-+ PLAYER_STATE_CONNECTED, // connected to sources (realized)
-+ PLAYER_STATE_OPENING, // opening sources
-+ PLAYER_STATE_OPENED, // opened sources
-+ PLAYER_STATE_PREFETCHING,// obtaining resources, buffering, etc.
-+ PLAYER_STATE_PREFETCHED, // ready for playback at time zero
-+ PLAYER_STATE_PLAYING, // currently playing
-+ PLAYER_STATE_PAUSED, // paused
-+ PLAYER_STATE_SEEKING // seeking
-+} EHXPlayerState;
-+
-+typedef struct {
-+ int left;
-+ int top;
-+ int right;
-+ int bottom;
-+} PlayerRect;
-+
-+typedef struct {
-+ PlayerRect Rect;
-+ unsigned int cx;
-+ unsigned int cy;
-+} PlayerImgInfo;
-+
-+typedef void (*on_pos_length_cb_t)(unsigned int, unsigned int, void *);
-+typedef void (*on_buffering_cb_t)(unsigned int, unsigned short, void *);
-+typedef void (*on_state_change_cb_t)(unsigned short, unsigned short, void *);
-+typedef void (*on_new_frame_cb_t)(unsigned char *p, unsigned int size, PlayerImgInfo *rect, void *context);
-+
-+PLAYER_API int init_main();
-+PLAYER_API int deinit_main();
-+PLAYER_API int get_player(void **ppPlayerHandle, on_buffering_cb_t on_buffering_cb, on_pos_length_cb_t on_pos_length_cb, on_state_change_cb_t on_state_change_cb, on_new_frame_cb_t on_new_frame_cb, void *context);
-+PLAYER_API int player_openurl( void *pPlayerHandle, char *pszRawURL);
-+PLAYER_API int put_player( void *pPlayerHandle);
-+PLAYER_API int player_geturl( void *pPlayerHandle, char **pszURL);
-+PLAYER_API int player_begin( void *pPlayerHandle );
-+PLAYER_API int player_stop( void *pPlayerHandle );
-+PLAYER_API int player_pause( void *pPlayerHandle );
-+PLAYER_API unsigned int get_curr_playtime(void *pPlayerHandle);
-+PLAYER_API int player_seek(void *pPlayerHandle, int pos);
-+PLAYER_API int player_getvolume(void *pPlayerHandle);
-+PLAYER_API int player_setvolume(void *pPlayerHandle, unsigned short volumn);
-+PLAYER_API int player_canseek(void *pPlayerHandle);
-+
-+
-+#endif
-+
-Index: helix-libs/clientapps/clutter/preflist.cpp
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ helix-libs/clientapps/clutter/preflist.cpp 2008-10-13 06:05:49.000000000 -0700
-@@ -0,0 +1,142 @@
-+/* ***** BEGIN LICENSE BLOCK *****
-+ * Source last modified: $Id: preflist.cpp,v 1.2 2007/07/06 20:32:36 jfinnecy Exp $
-+ *
-+ * Portions Copyright (c) 1995-2004 RealNetworks, Inc. All Rights Reserved.
-+ *
-+ * The contents of this file, and the files included with this file,
-+ * are subject to the current version of the RealNetworks Public
-+ * Source License (the "RPSL") available at
-+ * http://www.helixcommunity.org/content/rpsl unless you have licensed
-+ * the file under the current version of the RealNetworks Community
-+ * Source License (the "RCSL") available at
-+ * http://www.helixcommunity.org/content/rcsl, in which case the RCSL
-+ * will apply. You may also obtain the license terms directly from
-+ * RealNetworks. You may not use this file except in compliance with
-+ * the RPSL or, if you have a valid RCSL with RealNetworks applicable
-+ * to this file, the RCSL. Please see the applicable RPSL or RCSL for
-+ * the rights, obligations and limitations governing use of the
-+ * contents of the file.
-+ *
-+ * Alternatively, the contents of this file may be used under the
-+ * terms of the GNU General Public License Version 2 (the
-+ * "GPL") in which case the provisions of the GPL are applicable
-+ * instead of those above. If you wish to allow use of your version of
-+ * this file only under the terms of the GPL, and not to allow others
-+ * to use your version of this file under the terms of either the RPSL
-+ * or RCSL, indicate your decision by deleting the provisions above
-+ * and replace them with the notice and other provisions required by
-+ * the GPL. If you do not delete the provisions above, a recipient may
-+ * use your version of this file under the terms of any one of the
-+ * RPSL, the RCSL or the GPL.
-+ *
-+ * This file is part of the Helix DNA Technology. RealNetworks is the
-+ * developer of the Original Code and owns the copyrights in the
-+ * portions it created.
-+ *
-+ * This file, and the files included with this file, is distributed
-+ * and made available on an 'AS IS' basis, WITHOUT WARRANTY OF ANY
-+ * KIND, EITHER EXPRESS OR IMPLIED, AND REALNETWORKS HEREBY DISCLAIMS
-+ * ALL SUCH WARRANTIES, INCLUDING WITHOUT LIMITATION, ANY WARRANTIES
-+ * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, QUIET
-+ * ENJOYMENT OR NON-INFRINGEMENT.
-+ *
-+ * Technology Compatibility Kit Test Suite(s) Location:
-+ * http://www.helixcommunity.org/content/tck
-+ *
-+ * Contributor(s):
-+ *
-+ * ***** END LICENSE BLOCK ***** */
-+#include "preflist.h"
-+
-+#include "hxstring.h"
-+#include "hxccf.h"
-+#include "hxprefs.h"
-+#include "ihxpckts.h"
-+
-+class CHXPrefInfo
-+{
-+public:
-+ CHXPrefInfo(const char* pKey, const char* pValue);
-+ ~CHXPrefInfo();
-+
-+ const char* Key() const { return m_key;}
-+ const char* Value() const { return m_value;}
-+
-+private:
-+ CHXString m_key;
-+ CHXString m_value;
-+};
-+
-+CHXPrefInfo::CHXPrefInfo(const char* pKey, const char* pValue) :
-+ m_key(pKey),
-+ m_value(pValue)
-+{}
-+
-+CHXPrefInfo::~CHXPrefInfo()
-+{}
-+
-+CHXPrefList::CHXPrefList()
-+{}
-+
-+CHXPrefList::~CHXPrefList()
-+{
-+ Clear();
-+}
-+
-+void CHXPrefList::Add(const char* pKey, const char* pValue)
-+{
-+ CHXPrefInfo* pInfo = new CHXPrefInfo(pKey, pValue);
-+
-+ if (pInfo)
-+ {
-+ if (!m_prefInfo.AddTail(pInfo))
-+ {
-+ // We failed to insert the preference.
-+ HX_DELETE(pInfo);
-+ }
-+ }
-+}
-+
-+void CHXPrefList::Clear()
-+{
-+ while(!m_prefInfo.IsEmpty())
-+ {
-+ CHXPrefInfo* pInfo = (CHXPrefInfo*)m_prefInfo.RemoveHead();
-+ HX_DELETE(pInfo);
-+ }
-+}
-+
-+void CHXPrefList::SetPreferences(IUnknown* pContext)
-+{
-+ IHXPreferences* pPrefs = NULL;
-+ IHXCommonClassFactory* pCCF = NULL;
-+
-+ if (pContext &&
-+ (HXR_OK == pContext->QueryInterface(IID_IHXPreferences,
-+ (void**)&pPrefs)) &&
-+ (HXR_OK == pContext->QueryInterface(IID_IHXCommonClassFactory,
-+ (void**)&pCCF)))
-+ {
-+ CHXSimpleList::Iterator itr = m_prefInfo.Begin();
-+
-+ for(; itr != m_prefInfo.End(); ++itr)
-+ {
-+ CHXPrefInfo* pInfo = (CHXPrefInfo*)(*itr);
-+
-+ IHXBuffer* pBuf = NULL;
-+
-+ if ((HXR_OK == pCCF->CreateInstance(CLSID_IHXBuffer,
-+ (void**)&pBuf)) &&
-+ (HXR_OK == pBuf->Set((const unsigned char*)pInfo->Value(),
-+ strlen(pInfo->Value()))))
-+ {
-+ pPrefs->WritePref(pInfo->Key(), pBuf);
-+ }
-+
-+ HX_RELEASE(pBuf);
-+ }
-+ }
-+
-+ HX_RELEASE(pPrefs);
-+ HX_RELEASE(pCCF);
-+}
-Index: helix-libs/clientapps/clutter/preflist.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ helix-libs/clientapps/clutter/preflist.h 2008-10-13 06:05:49.000000000 -0700
-@@ -0,0 +1,69 @@
-+/* ***** BEGIN LICENSE BLOCK *****
-+ * Source last modified: $Id: preflist.h,v 1.2 2007/07/06 20:32:36 jfinnecy Exp $
-+ *
-+ * Portions Copyright (c) 1995-2004 RealNetworks, Inc. All Rights Reserved.
-+ *
-+ * The contents of this file, and the files included with this file,
-+ * are subject to the current version of the RealNetworks Public
-+ * Source License (the "RPSL") available at
-+ * http://www.helixcommunity.org/content/rpsl unless you have licensed
-+ * the file under the current version of the RealNetworks Community
-+ * Source License (the "RCSL") available at
-+ * http://www.helixcommunity.org/content/rcsl, in which case the RCSL
-+ * will apply. You may also obtain the license terms directly from
-+ * RealNetworks. You may not use this file except in compliance with
-+ * the RPSL or, if you have a valid RCSL with RealNetworks applicable
-+ * to this file, the RCSL. Please see the applicable RPSL or RCSL for
-+ * the rights, obligations and limitations governing use of the
-+ * contents of the file.
-+ *
-+ * Alternatively, the contents of this file may be used under the
-+ * terms of the GNU General Public License Version 2 (the
-+ * "GPL") in which case the provisions of the GPL are applicable
-+ * instead of those above. If you wish to allow use of your version of
-+ * this file only under the terms of the GPL, and not to allow others
-+ * to use your version of this file under the terms of either the RPSL
-+ * or RCSL, indicate your decision by deleting the provisions above
-+ * and replace them with the notice and other provisions required by
-+ * the GPL. If you do not delete the provisions above, a recipient may
-+ * use your version of this file under the terms of any one of the
-+ * RPSL, the RCSL or the GPL.
-+ *
-+ * This file is part of the Helix DNA Technology. RealNetworks is the
-+ * developer of the Original Code and owns the copyrights in the
-+ * portions it created.
-+ *
-+ * This file, and the files included with this file, is distributed
-+ * and made available on an 'AS IS' basis, WITHOUT WARRANTY OF ANY
-+ * KIND, EITHER EXPRESS OR IMPLIED, AND REALNETWORKS HEREBY DISCLAIMS
-+ * ALL SUCH WARRANTIES, INCLUDING WITHOUT LIMITATION, ANY WARRANTIES
-+ * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, QUIET
-+ * ENJOYMENT OR NON-INFRINGEMENT.
-+ *
-+ * Technology Compatibility Kit Test Suite(s) Location:
-+ * http://www.helixcommunity.org/content/tck
-+ *
-+ * Contributor(s):
-+ *
-+ * ***** END LICENSE BLOCK ***** */
-+#ifndef PREFLIST_H
-+#define PREFLIST_H
-+
-+#include "hxslist.h"
-+
-+class CHXPrefList
-+{
-+public:
-+ CHXPrefList();
-+ ~CHXPrefList();
-+
-+ void Add(const char* pKey, const char* pValue);
-+ void Clear();
-+
-+ void SetPreferences(IUnknown* pContext);
-+
-+private:
-+ CHXSimpleList m_prefInfo;
-+};
-+
-+#endif /* PREFLIST_H */
-Index: helix-libs/clientapps/clutter/print.cpp
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ helix-libs/clientapps/clutter/print.cpp 2008-10-13 06:05:49.000000000 -0700
-@@ -0,0 +1,80 @@
-+/* ***** BEGIN LICENSE BLOCK *****
-+ * Version: RCSL 1.0/RPSL 1.0
-+ *
-+ * Portions Copyright (c) 1995-2002 RealNetworks, Inc. All Rights Reserved.
-+ *
-+ * The contents of this file, and the files included with this file, are
-+ * subject to the current version of the RealNetworks Public Source License
-+ * Version 1.0 (the "RPSL") available at
-+ * http://www.helixcommunity.org/content/rpsl unless you have licensed
-+ * the file under the RealNetworks Community Source License Version 1.0
-+ * (the "RCSL") available at http://www.helixcommunity.org/content/rcsl,
-+ * in which case the RCSL will apply. You may also obtain the license terms
-+ * directly from RealNetworks. You may not use this file except in
-+ * compliance with the RPSL or, if you have a valid RCSL with RealNetworks
-+ * applicable to this file, the RCSL. Please see the applicable RPSL or
-+ * RCSL for the rights, obligations and limitations governing use of the
-+ * contents of the file.
-+ *
-+ * This file is part of the Helix DNA Technology. RealNetworks is the
-+ * developer of the Original Code and owns the copyrights in the portions
-+ * it created.
-+ *
-+ * This file, and the files included with this file, is distributed and made
-+ * available on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
-+ * EXPRESS OR IMPLIED, AND REALNETWORKS HEREBY DISCLAIMS ALL SUCH WARRANTIES,
-+ * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY, FITNESS
-+ * FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
-+ *
-+ * Technology Compatibility Kit Test Suite(s) Location:
-+ * http://www.helixcommunity.org/content/tck
-+ *
-+ * Contributor(s):
-+ *
-+ * ***** END LICENSE BLOCK ***** */
-+
-+#include <stdarg.h>
-+#include <stdio.h>
-+#include "print.h"
-+#ifdef WIN32_PLATFORM_PSPC
-+#include "hlxosstr.h"
-+#include <winbase.h>
-+#endif
-+
-+int print2stdout(const char* pFmt, ...)
-+{
-+ va_list args;
-+
-+ va_start(args, pFmt);
-+
-+#ifdef WIN32_PLATFORM_PSPC
-+ char szMessage[512];
-+ int ret = vsprintf(szMessage, pFmt, args);
-+ OutputDebugString(OS_STRING(szMessage));
-+#else
-+ int ret = vfprintf(stdout, pFmt, args);
-+#endif
-+
-+ va_end(args);
-+
-+ return ret;
-+}
-+
-+int print2stderr(const char* pFmt, ...)
-+{
-+ va_list args;
-+
-+ va_start(args, pFmt);
-+
-+#ifdef WIN32_PLATFORM_PSPC
-+ char szMessage[512];
-+ int ret = vsprintf(szMessage, pFmt, args);
-+ OutputDebugString(OS_STRING(szMessage));
-+#else
-+ int ret = vfprintf(stderr, pFmt, args);
-+#endif
-+
-+ va_end(args);
-+
-+ return ret;
-+}
-Index: helix-libs/clientapps/clutter/print.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ helix-libs/clientapps/clutter/print.h 2008-10-13 06:05:49.000000000 -0700
-@@ -0,0 +1,60 @@
-+/* ***** BEGIN LICENSE BLOCK *****
-+ * Version: RCSL 1.0/RPSL 1.0
-+ *
-+ * Portions Copyright (c) 1995-2002 RealNetworks, Inc. All Rights Reserved.
-+ *
-+ * The contents of this file, and the files included with this file, are
-+ * subject to the current version of the RealNetworks Public Source License
-+ * Version 1.0 (the "RPSL") available at
-+ * http://www.helixcommunity.org/content/rpsl unless you have licensed
-+ * the file under the RealNetworks Community Source License Version 1.0
-+ * (the "RCSL") available at http://www.helixcommunity.org/content/rcsl,
-+ * in which case the RCSL will apply. You may also obtain the license terms
-+ * directly from RealNetworks. You may not use this file except in
-+ * compliance with the RPSL or, if you have a valid RCSL with RealNetworks
-+ * applicable to this file, the RCSL. Please see the applicable RPSL or
-+ * RCSL for the rights, obligations and limitations governing use of the
-+ * contents of the file.
-+ *
-+ * This file is part of the Helix DNA Technology. RealNetworks is the
-+ * developer of the Original Code and owns the copyrights in the portions
-+ * it created.
-+ *
-+ * This file, and the files included with this file, is distributed and made
-+ * available on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
-+ * EXPRESS OR IMPLIED, AND REALNETWORKS HEREBY DISCLAIMS ALL SUCH WARRANTIES,
-+ * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY, FITNESS
-+ * FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
-+ *
-+ * Technology Compatibility Kit Test Suite(s) Location:
-+ * http://www.helixcommunity.org/content/tck
-+ *
-+ * Contributor(s):
-+ *
-+ * ***** END LICENSE BLOCK ***** */
-+
-+#ifndef PRINT_H
-+#define PRINT_H
-+
-+#ifdef __cplusplus
-+extern "C" {
-+#endif
-+
-+#ifdef _SYMBIAN
-+#include "platform/symbian/symbian_print.h"
-+
-+#define STDOUT symbianPrint
-+#define STDERR symbianPrint
-+#else
-+int print2stdout(const char* pFmt, ...);
-+int print2stderr(const char* pFmt, ...);
-+#define STDOUT print2stdout
-+#define STDERR print2stderr
-+#endif
-+
-+#ifdef __cplusplus
-+};
-+#endif
-+
-+
-+#endif /* PRINT_H */
-Index: helix-libs/clientapps/clutter/shmhelp.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ helix-libs/clientapps/clutter/shmhelp.h 2008-10-13 06:05:49.000000000 -0700
-@@ -0,0 +1,88 @@
-+/* ***** BEGIN LICENSE BLOCK *****
-+ * Source last modified: $Id: shmhelp.h,v 1.5 2007/07/06 20:54:01 jfinnecy Exp $
-+ *
-+ * Portions Copyright (c) 1995-2004 RealNetworks, Inc. All Rights Reserved.
-+ *
-+ * The contents of this file, and the files included with this file,
-+ * are subject to the current version of the RealNetworks Public
-+ * Source License (the "RPSL") available at
-+ * http://www.helixcommunity.org/content/rpsl unless you have licensed
-+ * the file under the current version of the RealNetworks Community
-+ * Source License (the "RCSL") available at
-+ * http://www.helixcommunity.org/content/rcsl, in which case the RCSL
-+ * will apply. You may also obtain the license terms directly from
-+ * RealNetworks. You may not use this file except in compliance with
-+ * the RPSL or, if you have a valid RCSL with RealNetworks applicable
-+ * to this file, the RCSL. Please see the applicable RPSL or RCSL for
-+ * the rights, obligations and limitations governing use of the
-+ * contents of the file.
-+ *
-+ * Alternatively, the contents of this file may be used under the
-+ * terms of the GNU General Public License Version 2 (the
-+ * "GPL") in which case the provisions of the GPL are applicable
-+ * instead of those above. If you wish to allow use of your version of
-+ * this file only under the terms of the GPL, and not to allow others
-+ * to use your version of this file under the terms of either the RPSL
-+ * or RCSL, indicate your decision by deleting the provisions above
-+ * and replace them with the notice and other provisions required by
-+ * the GPL. If you do not delete the provisions above, a recipient may
-+ * use your version of this file under the terms of any one of the
-+ * RPSL, the RCSL or the GPL.
-+ *
-+ * This file is part of the Helix DNA Technology. RealNetworks is the
-+ * developer of the Original Code and owns the copyrights in the
-+ * portions it created.
-+ *
-+ * This file, and the files included with this file, is distributed
-+ * and made available on an 'AS IS' basis, WITHOUT WARRANTY OF ANY
-+ * KIND, EITHER EXPRESS OR IMPLIED, AND REALNETWORKS HEREBY DISCLAIMS
-+ * ALL SUCH WARRANTIES, INCLUDING WITHOUT LIMITATION, ANY WARRANTIES
-+ * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, QUIET
-+ * ENJOYMENT OR NON-INFRINGEMENT.
-+ *
-+ * Technology Compatibility Kit Test Suite(s) Location:
-+ * http://www.helixcommunity.org/content/tck
-+ *
-+ * Contributor(s):
-+ *
-+ * ***** END LICENSE BLOCK ***** */
-+
-+#if defined(USE_XWINDOWS)
-+#include <X11/X.h>
-+#include <X11/Xlib.h>
-+#include <X11/extensions/XShm.h>
-+#endif
-+
-+#include "hxcom.h"
-+#include "hxtypes.h"
-+
-+
-+class ShmHelp
-+{
-+ public:
-+
-+ //Helpers
-+ static void Init(Display* pDisplay );
-+ static HXBOOL ShmAvailable();
-+ static HX_RESULT DetachSharedRegion(UCHAR**ppMem, XShmSegmentInfo* pInfo );
-+ static HX_RESULT CreateSharedRegion( INT32 nSize,
-+ UCHAR**ppMem,
-+ int* pnShmID,
-+ XShmSegmentInfo* pInfo );
-+
-+
-+ protected:
-+
-+ private:
-+ static HXBOOL zm_bUseShm;
-+
-+ //The X11 Segment ID....
-+ static int zm_nSegment;
-+ static Display* zm_pDisplay;
-+
-+ ShmHelp();
-+ ShmHelp(Display*);
-+ ~ShmHelp();
-+
-+};
-+
-Index: helix-libs/clientapps/clutter/unix.pcf
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ helix-libs/clientapps/clutter/unix.pcf 2008-10-13 06:05:49.000000000 -0700
-@@ -0,0 +1,65 @@
-+#
-+# ***** BEGIN LICENSE BLOCK *****
-+# Version: RCSL 1.0/RPSL 1.0
-+#
-+# Portions Copyright (c) 1995-2002 RealNetworks, Inc. All Rights Reserved.
-+#
-+# The contents of this file, and the files included with this file, are
-+# subject to the current version of the RealNetworks Public Source License
-+# Version 1.0 (the "RPSL") available at
-+# http://www.helixcommunity.org/content/rpsl unless you have licensed
-+# the file under the RealNetworks Community Source License Version 1.0
-+# (the "RCSL") available at http://www.helixcommunity.org/content/rcsl,
-+# in which case the RCSL will apply. You may also obtain the license terms
-+# directly from RealNetworks. You may not use this file except in
-+# compliance with the RPSL or, if you have a valid RCSL with RealNetworks
-+# applicable to this file, the RCSL. Please see the applicable RPSL or
-+# RCSL for the rights, obligations and limitations governing use of the
-+# contents of the file.
-+#
-+# This file is part of the Helix DNA Technology. RealNetworks is the
-+# developer of the Original Code and owns the copyrights in the portions
-+# it created.
-+#
-+# This file, and the files included with this file, is distributed and made
-+# available on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
-+# EXPRESS OR IMPLIED, AND REALNETWORKS HEREBY DISCLAIMS ALL SUCH WARRANTIES,
-+# INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY, FITNESS
-+# FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
-+#
-+# Technology Compatibility Kit Test Suite(s) Location:
-+# http://www.helixcommunity.org/content/tck
-+#
-+# Contributor(s):
-+#
-+# ***** END LICENSE BLOCK *****
-+#
-+
-+
-+if( ('HELIX_FEATURE_MINI_SITE' not in project.defines) and
-+ (platform.name in ('linux2', 'linux-i386')) and
-+ ('HELIX_FEATURE_VIDEO' in project.defines) and
-+ (project.BuildOption("nodll"))
-+ ):
-+ project.sys_libraries.append('Xv', 'Xext')
-+
-+
-+
-+
-+if project.BuildOption("nodll"):
-+ if project.IsDefined("HELIX_FEATURE_VIDEO_CODEC_RV20"):
-+ if platform.name in ('linux2', 'linux-i386', 'win32') and sysinfo.arch == 'i386':
-+ project.AddLibraries(GetSDKPath("rvg2dec_libs") + '[adecg2]')
-+ else:
-+ project.AddLibraries(GetSDKPath("rvg2dec_libs") + '[cdecg2]')
-+
-+ if project.IsDefined("HELIX_FEATURE_VIDEO_CODEC_RV30") or \
-+ project.IsDefined("HELIX_FEATURE_VIDEO_CODEC_RV40"):
-+ if project.IsDefined("HELIX_FEATURE_ANSIC_RV89COMBO"):
-+ project.AddLibraries(GetSDKPath("rv89combo_c_libs")+"[cdec]")
-+ else:
-+ if platform.name in ('linux2', 'linux-i386') and sysinfo.arch == 'i386':
-+ project.AddLibraries(GetSDKPath("rv89combo_libs")+"[adec40]")
-+ else:
-+ project.AddLibraries(GetSDKPath("rv89combo_libs")+"[cdec40]")
-+
-Index: helix-libs/clientapps/clutter/unixcmap.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ helix-libs/clientapps/clutter/unixcmap.h 2008-10-13 06:05:49.000000000 -0700
-@@ -0,0 +1,51 @@
-+/* ***** BEGIN LICENSE BLOCK *****
-+ * Source last modified: $Id: unixcmap.h,v 1.3 2007/07/06 20:54:01 jfinnecy Exp $
-+ *
-+ * Portions Copyright (c) 1995-2004 RealNetworks, Inc. All Rights Reserved.
-+ *
-+ * The contents of this file, and the files included with this file,
-+ * are subject to the current version of the RealNetworks Public
-+ * Source License (the "RPSL") available at
-+ * http://www.helixcommunity.org/content/rpsl unless you have licensed
-+ * the file under the current version of the RealNetworks Community
-+ * Source License (the "RCSL") available at
-+ * http://www.helixcommunity.org/content/rcsl, in which case the RCSL
-+ * will apply. You may also obtain the license terms directly from
-+ * RealNetworks. You may not use this file except in compliance with
-+ * the RPSL or, if you have a valid RCSL with RealNetworks applicable
-+ * to this file, the RCSL. Please see the applicable RPSL or RCSL for
-+ * the rights, obligations and limitations governing use of the
-+ * contents of the file.
-+ *
-+ * Alternatively, the contents of this file may be used under the
-+ * terms of the GNU General Public License Version 2 (the
-+ * "GPL") in which case the provisions of the GPL are applicable
-+ * instead of those above. If you wish to allow use of your version of
-+ * this file only under the terms of the GPL, and not to allow others
-+ * to use your version of this file under the terms of either the RPSL
-+ * or RCSL, indicate your decision by deleting the provisions above
-+ * and replace them with the notice and other provisions required by
-+ * the GPL. If you do not delete the provisions above, a recipient may
-+ * use your version of this file under the terms of any one of the
-+ * RPSL, the RCSL or the GPL.
-+ *
-+ * This file is part of the Helix DNA Technology. RealNetworks is the
-+ * developer of the Original Code and owns the copyrights in the
-+ * portions it created.
-+ *
-+ * This file, and the files included with this file, is distributed
-+ * and made available on an 'AS IS' basis, WITHOUT WARRANTY OF ANY
-+ * KIND, EITHER EXPRESS OR IMPLIED, AND REALNETWORKS HEREBY DISCLAIMS
-+ * ALL SUCH WARRANTIES, INCLUDING WITHOUT LIMITATION, ANY WARRANTIES
-+ * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, QUIET
-+ * ENJOYMENT OR NON-INFRINGEMENT.
-+ *
-+ * Technology Compatibility Kit Test Suite(s) Location:
-+ * http://www.helixcommunity.org/content/tck
-+ *
-+ * Contributor(s):
-+ *
-+ * ***** END LICENSE BLOCK ***** */
-+
-+EXTERN_C Colormap HXGetXColormap(Display* pDisplay, Window window);
-+EXTERN_C void HXFindBestXColor(Display* pDisplay, Colormap cmap, XColor* desired);
-Index: helix-libs/clientapps/clutter/visuals.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ helix-libs/clientapps/clutter/visuals.h 2008-10-13 06:05:49.000000000 -0700
-@@ -0,0 +1,74 @@
-+/* ***** BEGIN LICENSE BLOCK *****
-+ * Source last modified: $Id: visuals.h,v 1.4 2007/07/06 20:54:01 jfinnecy Exp $
-+ *
-+ * Portions Copyright (c) 1995-2004 RealNetworks, Inc. All Rights Reserved.
-+ *
-+ * The contents of this file, and the files included with this file,
-+ * are subject to the current version of the RealNetworks Public
-+ * Source License (the "RPSL") available at
-+ * http://www.helixcommunity.org/content/rpsl unless you have licensed
-+ * the file under the current version of the RealNetworks Community
-+ * Source License (the "RCSL") available at
-+ * http://www.helixcommunity.org/content/rcsl, in which case the RCSL
-+ * will apply. You may also obtain the license terms directly from
-+ * RealNetworks. You may not use this file except in compliance with
-+ * the RPSL or, if you have a valid RCSL with RealNetworks applicable
-+ * to this file, the RCSL. Please see the applicable RPSL or RCSL for
-+ * the rights, obligations and limitations governing use of the
-+ * contents of the file.
-+ *
-+ * Alternatively, the contents of this file may be used under the
-+ * terms of the GNU General Public License Version 2 (the
-+ * "GPL") in which case the provisions of the GPL are applicable
-+ * instead of those above. If you wish to allow use of your version of
-+ * this file only under the terms of the GPL, and not to allow others
-+ * to use your version of this file under the terms of either the RPSL
-+ * or RCSL, indicate your decision by deleting the provisions above
-+ * and replace them with the notice and other provisions required by
-+ * the GPL. If you do not delete the provisions above, a recipient may
-+ * use your version of this file under the terms of any one of the
-+ * RPSL, the RCSL or the GPL.
-+ *
-+ * This file is part of the Helix DNA Technology. RealNetworks is the
-+ * developer of the Original Code and owns the copyrights in the
-+ * portions it created.
-+ *
-+ * This file, and the files included with this file, is distributed
-+ * and made available on an 'AS IS' basis, WITHOUT WARRANTY OF ANY
-+ * KIND, EITHER EXPRESS OR IMPLIED, AND REALNETWORKS HEREBY DISCLAIMS
-+ * ALL SUCH WARRANTIES, INCLUDING WITHOUT LIMITATION, ANY WARRANTIES
-+ * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, QUIET
-+ * ENJOYMENT OR NON-INFRINGEMENT.
-+ *
-+ * Technology Compatibility Kit Test Suite(s) Location:
-+ * http://www.helixcommunity.org/content/tck
-+ *
-+ * Contributor(s):
-+ *
-+ * ***** END LICENSE BLOCK ***** */
-+
-+#ifndef _UNIX
-+#error This is the UNIX platform specific implementation.
-+#endif
-+
-+#ifndef _VISUALS_H_
-+#define _VISUALS_H_
-+
-+#if defined(USE_XWINDOWS)
-+#include <X11/Xlib.h>
-+#include <X11/Xutil.h>
-+#include <X11/Xos.h>
-+#endif
-+
-+//
-+// These functions are loaded with dlsym() so turn off name mangling
-+// with extern "C".
-+//
-+extern "C" {
-+
-+Visual* GetBestVisual(Display* display);
-+Visual* GetVisual(Display* display, long mask, XVisualInfo* templ);
-+
-+}
-+
-+#endif // _VISUALS_H_
diff --git a/meta-extras/packages/helix/helix-libs/helix-player.pc b/meta-extras/packages/helix/helix-libs/helix-player.pc
deleted file mode 100644
index 5d2994809..000000000
--- a/meta-extras/packages/helix/helix-libs/helix-player.pc
+++ /dev/null
@@ -1,11 +0,0 @@
-prefix=/usr
-exec_prefix=${prefix}
-libdir=${exec_prefix}/lib
-includedir=${prefix}/include
-
-Name: helix-player
-Description: Helix Player Interface
-Version: 4.1.0
-Libs: -L${libdir} -lhelix-player -lstdc++
-Cflags: -I/opt/helix/include -D_UNIX
-Requires:
diff --git a/meta-extras/packages/helix/helix-libs/hxclient.pc b/meta-extras/packages/helix/helix-libs/hxclient.pc
deleted file mode 100644
index 8f64d2567..000000000
--- a/meta-extras/packages/helix/helix-libs/hxclient.pc
+++ /dev/null
@@ -1,11 +0,0 @@
-prefix=/opt/helix
-exec_prefix=${prefix}
-libdir=${exec_prefix}/lib
-includedir=${prefix}/include
-
-Name: hxclient
-Description: Helix Client Libraries off the Atlas Branch
-Version: 4.1.0
-Libs: -L${libdir} -lhxclient -lstdc++
-Cflags: -I${includedir} -D_UNIX
-Requires:
diff --git a/meta-extras/packages/helix/ribosome.bb b/meta-extras/packages/helix/ribosome.bb
deleted file mode 100644
index 3cea6f675..000000000
--- a/meta-extras/packages/helix/ribosome.bb
+++ /dev/null
@@ -1,43 +0,0 @@
-DESCRIPTION = "Ribosome: HelixCommunity Build System"
-SECTION = "base"
-HOMEPAGE = "http://helixcommunity.org"
-LICENSE = "GPLv2"
-
-_SNAPSHOT = "22102008"
-_TARBALL_SERVER = "http://git.moblin.org/repos/users/rusty"
-
-PV="r0"
-PR = "r1"
-
-SRC_URI = "${_TARBALL_SERVER}/ribosome-${_SNAPSHOT}.tar.bz2 \
- ${_TARBALL_SERVER}/client-bif-${_SNAPSHOT}.tar.bz2 \
- ${_TARBALL_SERVER}/common-bif-${_SNAPSHOT}.tar.bz2 \
- file://ribosome/clutter.bif \
- file://ribosome/buildrc"
-
-S = "${WORKDIR}"
-
-COMPATIBLE_HOST = '(i.86.*-linux)'
-
-do_install() {
- # Install build system of doom
- install -d ${D}${libdir}
- cp -a ribosome-${_SNAPSHOT} ${D}${libdir}/ribosome
- install -m 0644 ribosome/buildrc ${D}${libdir}/ribosome/
-
- # Install client BIF's
- install -d ${D}${libdir}/ribosome/bif-cvs/helix/client/build/BIF
- install -m 0644 client-bif-${_SNAPSHOT}/*.bif \
- ${D}${libdir}/ribosome/bif-cvs/helix/client/build/BIF
-
- # Install common BIF's
- install -d ${D}${libdir}/ribosome/bif-cvs/helix/common/build/BIF
- install -m 0644 common-bif-${_SNAPSHOT}/*.bif \
- ${D}${libdir}/ribosome/bif-cvs/helix/common/build/BIF
-
- # Install our own custom BIF
- install -m 0644 ribosome/*.bif ${D}${libdir}/ribosome/bif-cvs/helix/client/build/BIF/
-
- # The [ and ] characters break packaging, remove for now
- rm -rf ${D}${libdir}/ribosome/test/data/utils/[client-restricted]
-}
diff --git a/meta-extras/packages/helix/ribosome/buildrc b/meta-extras/packages/helix/ribosome/buildrc
deleted file mode 100644
index 6dbc47a06..000000000
--- a/meta-extras/packages/helix/ribosome/buildrc
+++ /dev/null
@@ -1,4 +0,0 @@
-AddMultiCVS("helix",":ext:cvs.helixcommunity.org:/cvsroot/")
-AddBIFPath("common", "[helix]/common/build/BIF")
-AddBIFPath("client", "[helix]/client/build/BIF")
-SetSDKPath("oggvorbissdk", "/usr/")
diff --git a/meta-extras/packages/helix/ribosome/clutter.bif b/meta-extras/packages/helix/ribosome/clutter.bif
deleted file mode 100755
index a87fcb3fa..000000000
--- a/meta-extras/packages/helix/ribosome/clutter.bif
+++ /dev/null
@@ -1,68 +0,0 @@
-<?xml version="1.0" ?>
-<build id="clutter">
- <inherit id="hxclient_3_1_0_atlas"/>
- <cvs root="helix"/>
- <cvs tag="hxclient_3_1_0_atlas"/>
- <default target="clutter" profile="helix-client-all-defines" options=""/>
- <targets>
-
- <!-- clutter -->
- <module id="clutter" name="clientapps/clutter" group="core">
- <includeplatforms>
- unix
- </includeplatforms>
-
- <defines>
- HELIX_FEATURE_AUDIO_VORBIS
- HELIX_FEATURE_VIDEO_THEORA
- HELIX_FEATURE_NETSERVICES_SHIM
- HELIX_FEATURE_AVIFF
- HELIX_CONFIG_SLUGGISHAUTOUPGRADE
- HELIX_FEATURE_ALSA
- _FORTIFY_SOURCE=2
- </defines>
-
- <source_dependlist>
- client_include
- datatype_tools_dtdriver_dtdrplin
- </source_dependlist>
-
- <dependlist>
- helix_client_objs
- player_hxclientkit
- player_hxclientkit_src_hxrecordengine
- client_core
- client_resource
- client_xres
- protocol_sdp
- video_site
- datatype_smil
- datatype_text_realtext_fileformat
- datatype_text_realtext_renderer
- datatype_tools_dtdriver_dtdrplin
- datatype_ogg_fileformat
- datatype_vorbis_renderer
- datatype_theora_renderer
- datatype_h261_renderer
- datatype_h263
- datatype_group_audio
- datatype_group_image
- datatype_ram
- datatype_sdp
- datatype_avi_fileformat
- filesystem_local
- filesystem_http
- filesystem_memory
- common_auth_authmgr
- common_auth_rn5auth
- client_auth_basicauth
- common_log_logsystem
- common_log_logobserverfile
- </dependlist>
-
- </module>
-
- </targets>
-
-</build>
-
diff --git a/meta-extras/packages/images/poky-image-extras.bb b/meta-extras/packages/images/poky-image-extras.bb
deleted file mode 100644
index 7ad5fd517..000000000
--- a/meta-extras/packages/images/poky-image-extras.bb
+++ /dev/null
@@ -1,9 +0,0 @@
-#
-# Copyright (C) 2007 OpenedHand Ltd.
-#
-
-IMAGE_FEATURES += "apps-core apps-pda"
-
-inherit poky-image
-
-IMAGE_INSTALL += "task-poky-extraapps"
diff --git a/meta-extras/packages/libol/libol_0.3.18.bb b/meta-extras/packages/libol/libol_0.3.18.bb
deleted file mode 100644
index ba6d6ce63..000000000
--- a/meta-extras/packages/libol/libol_0.3.18.bb
+++ /dev/null
@@ -1,8 +0,0 @@
-PR = "r7"
-
-SRC_URI = "http://www.balabit.com/downloads/files/libol/0.3/${P}.tar.gz"
-
-S = "${WORKDIR}/${PN}-${PV}"
-
-inherit autotools binconfig
-
diff --git a/meta-extras/packages/librds/librds_0.0.1.bb b/meta-extras/packages/librds/librds_0.0.1.bb
deleted file mode 100644
index 3c99ec1ba..000000000
--- a/meta-extras/packages/librds/librds_0.0.1.bb
+++ /dev/null
@@ -1,11 +0,0 @@
-DESCRIPTION = "A software library for accessing RDS data"
-HOMEPAGE = "http://rdsd.berlios.de/"
-SECTION = "libs"
-PROVIDES = "librds"
-LICENSE = "GPLv2"
-
-PR = "r1"
-
-SRC_URI = "http://download.berlios.de/rdsd/librds-${PV}.tar.gz"
-
-inherit autotools pkgconfig
diff --git a/meta-extras/packages/libxosd/files/autofoo.patch b/meta-extras/packages/libxosd/files/autofoo.patch
deleted file mode 100644
index e26f15e9e..000000000
--- a/meta-extras/packages/libxosd/files/autofoo.patch
+++ /dev/null
@@ -1,116 +0,0 @@
-Index: current/configure.ac
-===================================================================
---- current.orig/configure.ac 2007-06-14 09:06:04.000000000 +0000
-+++ current/configure.ac 2007-06-14 09:14:37.000000000 +0000
-@@ -52,8 +52,6 @@
- CFLAGS="$CFLAGS $X_CFLAGS -Wall"
-
- dnl Checks for libraries.
--AM_PATH_GTK(1.2.2,,
-- AC_MSG_WARN([*** GTK+ >= 1.2.2 not found ***]))
- AC_CHECK_LIB(X11, XInitThreads,,
- AC_MSG_ERROR([*** X11 not threadsafe ***]))
- AC_CHECK_LIB(Xext, XShapeQueryExtension,,
-@@ -107,63 +105,6 @@
- AC_MSG_WARN("beep media player not found")
- fi
-
--dnl Check for xmms
--AM_PATH_XMMS(1.2.7,,
-- AC_MSG_WARN("xmms plugins can not be built"))
--dnl Override where to place libxmms_xosd.so
--AC_ARG_WITH([plugindir],
-- AC_HELP_STRING([--with-plugindir=DIR],
-- [Set the xmms plugin directory]),
-- [XMMS_PLUGIN_DIR="$withval"],
-- [XMMS_PLUGIN_DIR="$XMMS_GENERAL_PLUGIN_DIR"])
--
--dnl Check for gdk-pixbuf
--AM_PATH_GDK_PIXBUF(0.22.0,,
-- AC_MSG_WARN("new xmms plugin can not be built"))
--dnl Override where to place pixmaps for libxmms_xosd.so
--AC_ARG_WITH([pixmapdir],
-- AC_HELP_STRING([--with-pixmapdir=DIR],
-- [Set the directory for xmms plugin pixmaps]),
-- [XMMS_PIXMAPDIR="$withval"],
-- [XMMS_PIXMAPDIR="${datadir}/xosd"])
--AC_SUBST(XMMS_PIXMAPDIR)
--
--dnl NEW plugin
--AC_ARG_ENABLE([new-plugin],
-- AC_HELP_STRING([--disable-new-plugin],
-- [Disable new xmms plugin (enabled by default)]),
-- [enable_new_plugin="$enableval"],
-- [enable_new_plugin="yes"])
--AC_MSG_CHECKING([whether new xmms plugin was requested])
--AC_MSG_RESULT($enable_new_plugin)
--AM_CONDITIONAL([BUILD_NEW_PLUGIN],
-- [test x"$enable_new_plugin" = "xyes" -a x"$no_xmms" != "xyes" -a x"$no_gdk_pixbuf" != "xyes"])
--
--
--dnl Check for Beep Media player
--AC_ARG_ENABLE([beep_media_player_plugin],
-- AC_HELP_STRING([--enable-beep_media_player_plugin],
-- [Enable beep media plugin (enabled by default)]),
-- [beep_media_player_plugin="$enableval"],
-- [beep_media_player_plugin="yes"])
--AC_MSG_CHECKING([whether beep media plugin was requested])
--AC_MSG_RESULT($beep_media_player_plugin)
--
--AM_CONDITIONAL([BUILD_BEEP_MEDIA_PLUGIN],
-- [test x"$beep_media_player_plugin" = "xyes" -a x"$no_bmp" == "xyes"])
--
--dnl OLD plugin
--AC_ARG_ENABLE([old-plugin],
-- AC_HELP_STRING([--enable-old-plugin],
-- [Enable old xmms plugin (disabled by default)]),
-- [enable_old_plugin="$enableval"],
-- [enable_old_plugin="no"])
--AC_MSG_CHECKING([whether old xmms plugin was requested])
--AC_MSG_RESULT($enable_old_plugin)
--AM_CONDITIONAL([BUILD_OLD_PLUGIN],
-- [test x"$enable_old_plugin" = "xyes" -a x"$no_xmms" != "xyes"])
--
--
- dnl Define XOSD_VERSION
- AC_DEFINE_UNQUOTED(XOSD_VERSION, "${VERSION}")
-
-@@ -174,8 +115,6 @@
- Makefile
- src/Makefile
- src/libxosd/Makefile
--src/xmms_plugin/Makefile
--src/bmp_plugin/Makefile
- macros/Makefile
- man/Makefile
- pixmaps/Makefile
-Index: current/src/Makefile.am
-===================================================================
---- current.orig/src/Makefile.am 2007-06-14 09:06:04.000000000 +0000
-+++ current/src/Makefile.am 2007-06-14 09:14:37.000000000 +0000
-@@ -10,6 +10,4 @@
-
- include_HEADERS = xosd.h
-
--AM_CFLAGS = ${GTK_CFLAGS}
--
--SUBDIRS=libxosd xmms_plugin bmp_plugin
-+SUBDIRS=libxosd
-Index: current/Makefile.am
-===================================================================
---- current.orig/Makefile.am 2007-06-14 09:06:04.000000000 +0000
-+++ current/Makefile.am 2007-06-14 09:16:15.000000000 +0000
-@@ -1,11 +1,5 @@
--if BUILD_NEW_PLUGIN
-- NEW_SUB = pixmaps
--endif
--if BUILD_BEEP_MEDIA_PLUGIN
-- NEW_SUB = pixmaps
--endif
--SUBDIRS = macros man $(NEW_SUB) src script
--DIST_SUBDIRS = macros man pixmaps src script
-+SUBDIRS = macros man src script
-+DIST_SUBDIRS = macros man src script
-
- DISTCLEANFILES = libtool-disable-static
-
diff --git a/meta-extras/packages/libxosd/files/use-sane-default-font.patch b/meta-extras/packages/libxosd/files/use-sane-default-font.patch
deleted file mode 100644
index 0ede1351e..000000000
--- a/meta-extras/packages/libxosd/files/use-sane-default-font.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-Index: current/src/libxosd/xosd.c
-===================================================================
---- current.orig/src/libxosd/xosd.c 2007-06-16 19:37:48.000000000 +0000
-+++ current/src/libxosd/xosd.c 2007-06-17 05:00:47.000000000 +0000
-@@ -26,7 +26,7 @@
- #define XOFFSET 10
-
- const char * const osd_default_font =
-- "-misc-fixed-medium-r-semicondensed--*-*-*-*-c-*-*-*";
-+ "fixed";
- #if 0
- "-adobe-helvetica-bold-r-*-*-10-*";
- #endif
diff --git a/meta-extras/packages/libxosd/libxosd_svn.bb b/meta-extras/packages/libxosd/libxosd_svn.bb
deleted file mode 100644
index 456b7ac23..000000000
--- a/meta-extras/packages/libxosd/libxosd_svn.bb
+++ /dev/null
@@ -1,20 +0,0 @@
-DESCRIPTION = "A library for displaying a TV-like on-screen display in X."
-SECTION = "libs/x11"
-DEPENDS = "virtual/libx11 libxext"
-LICENSE = "LGPL"
-PV = "2.2.15+svnr${SRCREV}"
-PR = "r5"
-
-SRC_URI = "svn://libxosd.svn.sourceforge.net/svnroot/libxosd/source;module=current;proto=https \
- file://autofoo.patch;patch=1 \
- file://use-sane-default-font.patch;patch=1"
-
-S = "${WORKDIR}/current"
-
-inherit autotools binconfig
-
-PACKAGES =+ "${PN}-examples-dbg ${PN}-examples"
-FILES_${PN}-examples = "${bindir}/osd_cat"
-FILES_${PN}-examples-dbg += "${bindir}/.debug/"
-FILES_${PN}-dev += "${bindir}/xosd-config"
-FILES_${PN} = "${libdir}/libxosd.so.*"
diff --git a/meta-extras/packages/linux/linux-nokia800-2.6.18-osso40/fix_oprofile.patch b/meta-extras/packages/linux/linux-nokia800-2.6.18-osso40/fix_oprofile.patch
deleted file mode 100644
index c5849998d..000000000
--- a/meta-extras/packages/linux/linux-nokia800-2.6.18-osso40/fix_oprofile.patch
+++ /dev/null
@@ -1,30 +0,0 @@
----
- arch/arm/oprofile/op_model_v6.c | 8 +-------
- 1 file changed, 1 insertion(+), 7 deletions(-)
-
-Index: linux-g/arch/arm/oprofile/op_model_v6.c
-===================================================================
---- linux-g.orig/arch/arm/oprofile/op_model_v6.c 2006-11-08 12:18:41.000000000 +0000
-+++ linux-g/arch/arm/oprofile/op_model_v6.c 2007-05-23 14:11:19.000000000 +0100
-@@ -54,12 +54,6 @@
- #define EVT_DCACHE_MISS 0x0B
- #define EVT_DCACE_WRITE_BACK 0x0C
- #define EVT_PC_CHANGED 0x0D
--#define EVT_BCU_REQUEST 0x10
--#define EVT_BCU_FULL 0x11
--#define EVT_BCU_DRAIN 0x12
--#define EVT_BCU_ECC_NO_ELOG 0x14
--#define EVT_BCU_1_BIT_ERR 0x15
--#define EVT_RMW 0x16
- /* EVT_CCNT is not hardware defined */
- #define EVT_CCNT 0xFE
- #define EVT_UNUSED 0xFF
-@@ -88,7 +82,7 @@ struct pmu_type {
- static struct pmu_type pmu_parms[] = {
- {
- .id = PMU_ARM11,
-- .name = "arm/arm11",
-+ .name = "arm/armv6",
- .num_counters = 3,
- #ifdef CONFIG_ARCH_OMAP2
- .interrupt = 3,
diff --git a/meta-extras/packages/linux/linux-nokia800-2.6.18-osso40/nokia770/defconfig b/meta-extras/packages/linux/linux-nokia800-2.6.18-osso40/nokia770/defconfig
deleted file mode 100644
index 3cd143033..000000000
--- a/meta-extras/packages/linux/linux-nokia800-2.6.18-osso40/nokia770/defconfig
+++ /dev/null
@@ -1,1451 +0,0 @@
-#
-# Automatically generated make config: don't edit
-# Linux kernel version: 2.6.18-omap1
-# Mon Aug 13 17:32:01 2007
-#
-CONFIG_ARM=y
-CONFIG_MMU=y
-CONFIG_GENERIC_HARDIRQS=y
-CONFIG_HARDIRQS_SW_RESEND=y
-CONFIG_GENERIC_IRQ_PROBE=y
-CONFIG_RWSEM_GENERIC_SPINLOCK=y
-CONFIG_GENERIC_HWEIGHT=y
-CONFIG_GENERIC_CALIBRATE_DELAY=y
-CONFIG_VECTORS_BASE=0xffff0000
-CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
-
-#
-# Code maturity level options
-#
-CONFIG_EXPERIMENTAL=y
-CONFIG_BROKEN_ON_SMP=y
-CONFIG_INIT_ENV_ARG_LIMIT=32
-
-#
-# General setup
-#
-CONFIG_LOCALVERSION=""
-# CONFIG_LOCALVERSION_AUTO is not set
-CONFIG_SWAP=y
-CONFIG_SYSVIPC=y
-CONFIG_POSIX_MQUEUE=y
-# CONFIG_BSD_PROCESS_ACCT is not set
-# CONFIG_TASKSTATS is not set
-# CONFIG_AUDIT is not set
-# CONFIG_IKCONFIG is not set
-# CONFIG_RELAY is not set
-CONFIG_INITRAMFS_SOURCE=""
-CONFIG_CC_OPTIMIZE_FOR_SIZE=y
-# CONFIG_EMBEDDED is not set
-CONFIG_UID16=y
-CONFIG_SYSCTL=y
-CONFIG_KALLSYMS=y
-# CONFIG_KALLSYMS_ALL is not set
-# CONFIG_KALLSYMS_EXTRA_PASS is not set
-CONFIG_HOTPLUG=y
-CONFIG_PRINTK=y
-CONFIG_BUG=y
-CONFIG_ELF_CORE=y
-CONFIG_BASE_FULL=y
-CONFIG_FUTEX=y
-CONFIG_EPOLL=y
-CONFIG_SHMEM=y
-CONFIG_SLAB=y
-CONFIG_VM_EVENT_COUNTERS=y
-CONFIG_RT_MUTEXES=y
-# CONFIG_TINY_SHMEM is not set
-CONFIG_BASE_SMALL=0
-# CONFIG_SLOB is not set
-
-#
-# Loadable module support
-#
-CONFIG_MODULES=y
-CONFIG_MODULE_UNLOAD=y
-# CONFIG_MODULE_FORCE_UNLOAD is not set
-# CONFIG_MODVERSIONS is not set
-# CONFIG_MODULE_SRCVERSION_ALL is not set
-# CONFIG_KMOD is not set
-
-#
-# Block layer
-#
-# CONFIG_BLK_DEV_IO_TRACE is not set
-
-#
-# IO Schedulers
-#
-CONFIG_IOSCHED_NOOP=y
-# CONFIG_IOSCHED_AS is not set
-# CONFIG_IOSCHED_DEADLINE is not set
-CONFIG_IOSCHED_CFQ=y
-# CONFIG_DEFAULT_AS is not set
-# CONFIG_DEFAULT_DEADLINE is not set
-CONFIG_DEFAULT_CFQ=y
-# CONFIG_DEFAULT_NOOP is not set
-CONFIG_DEFAULT_IOSCHED="cfq"
-
-#
-# System Type
-#
-# CONFIG_ARCH_AAEC2000 is not set
-# CONFIG_ARCH_INTEGRATOR is not set
-# CONFIG_ARCH_REALVIEW is not set
-# CONFIG_ARCH_VERSATILE is not set
-# CONFIG_ARCH_AT91 is not set
-# CONFIG_ARCH_CLPS7500 is not set
-# CONFIG_ARCH_CLPS711X is not set
-# CONFIG_ARCH_CO285 is not set
-# CONFIG_ARCH_EBSA110 is not set
-# CONFIG_ARCH_EP93XX is not set
-# CONFIG_ARCH_FOOTBRIDGE is not set
-# CONFIG_ARCH_NETX is not set
-# CONFIG_ARCH_H720X is not set
-# CONFIG_ARCH_IMX is not set
-# CONFIG_ARCH_IOP3XX is not set
-# CONFIG_ARCH_IXP4XX is not set
-# CONFIG_ARCH_IXP2000 is not set
-# CONFIG_ARCH_IXP23XX is not set
-# CONFIG_ARCH_L7200 is not set
-# CONFIG_ARCH_PNX4008 is not set
-# CONFIG_ARCH_PXA is not set
-# CONFIG_ARCH_RPC is not set
-# CONFIG_ARCH_SA1100 is not set
-# CONFIG_ARCH_S3C2410 is not set
-# CONFIG_ARCH_SHARK is not set
-# CONFIG_ARCH_LH7A40X is not set
-CONFIG_ARCH_OMAP=y
-
-#
-# TI OMAP Implementations
-#
-CONFIG_ARCH_OMAP_OTG=y
-CONFIG_ARCH_OMAP1=y
-# CONFIG_ARCH_OMAP2 is not set
-
-#
-# OMAP Feature Selections
-#
-CONFIG_OMAP_RESET_CLOCKS=y
-CONFIG_OMAP_BOOT_TAG=y
-CONFIG_OMAP_BOOT_REASON=y
-CONFIG_OMAP_COMPONENT_VERSION=y
-CONFIG_OMAP_GPIO_SWITCH=y
-# CONFIG_OMAP_MUX is not set
-CONFIG_OMAP_STI=y
-CONFIG_OMAP_STI_CONSOLE=y
-CONFIG_OMAP_MCBSP=y
-# CONFIG_OMAP_MPU_TIMER is not set
-CONFIG_OMAP_32K_TIMER=y
-CONFIG_OMAP_32K_TIMER_HZ=128
-CONFIG_OMAP_DM_TIMER=y
-CONFIG_OMAP_LL_DEBUG_UART1=y
-# CONFIG_OMAP_LL_DEBUG_UART2 is not set
-# CONFIG_OMAP_LL_DEBUG_UART3 is not set
-CONFIG_OMAP_DSP=y
-# CONFIG_OMAP_DSP_MBCMD_VERBOSE is not set
-CONFIG_OMAP_DSP_TASK_MULTIOPEN=y
-CONFIG_OMAP_DSP_FBEXPORT=y
-
-#
-# OMAP Core Type
-#
-# CONFIG_ARCH_OMAP730 is not set
-# CONFIG_ARCH_OMAP15XX is not set
-CONFIG_ARCH_OMAP16XX=y
-
-#
-# OMAP Board Type
-#
-# CONFIG_MACH_OMAP_INNOVATOR is not set
-# CONFIG_MACH_OMAP_H2 is not set
-# CONFIG_MACH_OMAP_H3 is not set
-# CONFIG_MACH_OMAP_OSK is not set
-CONFIG_MACH_NOKIA770=y
-# CONFIG_MACH_OMAP_GENERIC is not set
-
-#
-# OMAP CPU Speed
-#
-CONFIG_OMAP_CLOCKS_SET_BY_BOOTLOADER=y
-CONFIG_OMAP_ARM_216MHZ=y
-# CONFIG_OMAP_ARM_192MHZ is not set
-# CONFIG_OMAP_ARM_168MHZ is not set
-# CONFIG_OMAP_ARM_120MHZ is not set
-# CONFIG_OMAP_ARM_60MHZ is not set
-# CONFIG_OMAP_ARM_30MHZ is not set
-
-#
-# Processor Type
-#
-CONFIG_CPU_32=y
-CONFIG_CPU_ARM926T=y
-CONFIG_CPU_32v5=y
-CONFIG_CPU_ABRT_EV5TJ=y
-CONFIG_CPU_CACHE_VIVT=y
-CONFIG_CPU_COPY_V4WB=y
-CONFIG_CPU_TLB_V4WBI=y
-
-#
-# Processor Features
-#
-CONFIG_ARM_THUMB=y
-# CONFIG_CPU_ICACHE_DISABLE is not set
-# CONFIG_CPU_DCACHE_DISABLE is not set
-# CONFIG_CPU_DCACHE_WRITETHROUGH is not set
-# CONFIG_CPU_CACHE_ROUND_ROBIN is not set
-
-#
-# Bus support
-#
-
-#
-# PCCARD (PCMCIA/CardBus) support
-#
-# CONFIG_PCCARD is not set
-
-#
-# Kernel Features
-#
-# CONFIG_PREEMPT is not set
-CONFIG_NO_IDLE_HZ=y
-CONFIG_HZ=128
-CONFIG_AEABI=y
-CONFIG_OABI_COMPAT=y
-# CONFIG_ARCH_DISCONTIGMEM_ENABLE is not set
-CONFIG_SELECT_MEMORY_MODEL=y
-CONFIG_FLATMEM_MANUAL=y
-# CONFIG_DISCONTIGMEM_MANUAL is not set
-# CONFIG_SPARSEMEM_MANUAL is not set
-CONFIG_FLATMEM=y
-CONFIG_FLAT_NODE_MEM_MAP=y
-# CONFIG_SPARSEMEM_STATIC is not set
-CONFIG_SPLIT_PTLOCK_CPUS=4096
-# CONFIG_RESOURCES_64BIT is not set
-# CONFIG_LEDS is not set
-CONFIG_ALIGNMENT_TRAP=y
-
-#
-# Boot options
-#
-CONFIG_ZBOOT_ROM_TEXT=0x0
-CONFIG_ZBOOT_ROM_BSS=0x0
-CONFIG_CMDLINE="root=1f03 rootfstype=jffs2 time"
-# CONFIG_XIP_KERNEL is not set
-
-#
-# CPU Frequency scaling
-#
-# CONFIG_CPU_FREQ is not set
-
-#
-# Floating point emulation
-#
-
-#
-# At least one emulation must be selected
-#
-CONFIG_FPE_NWFPE=y
-# CONFIG_FPE_NWFPE_XP is not set
-# CONFIG_FPE_FASTFPE is not set
-# CONFIG_VFP is not set
-
-#
-# Userspace binary formats
-#
-CONFIG_BINFMT_ELF=y
-# CONFIG_BINFMT_AOUT is not set
-# CONFIG_BINFMT_MISC is not set
-
-#
-# Power management options
-#
-CONFIG_PM=y
-# CONFIG_PM_LEGACY is not set
-# CONFIG_PM_DEBUG is not set
-# CONFIG_APM is not set
-
-#
-# Networking
-#
-CONFIG_NET=y
-
-#
-# Networking options
-#
-# CONFIG_NETDEBUG is not set
-CONFIG_PACKET=y
-# CONFIG_PACKET_MMAP is not set
-CONFIG_UNIX=y
-CONFIG_XFRM=y
-# CONFIG_XFRM_USER is not set
-# CONFIG_NET_KEY is not set
-CONFIG_INET=y
-CONFIG_IP_MULTICAST=y
-# CONFIG_IP_ADVANCED_ROUTER is not set
-CONFIG_IP_FIB_HASH=y
-CONFIG_IP_PNP=y
-CONFIG_IP_PNP_DHCP=y
-CONFIG_IP_PNP_BOOTP=y
-# CONFIG_IP_PNP_RARP is not set
-# CONFIG_NET_IPIP is not set
-# CONFIG_NET_IPGRE is not set
-# CONFIG_IP_MROUTE is not set
-# CONFIG_ARPD is not set
-# CONFIG_SYN_COOKIES is not set
-# CONFIG_INET_AH is not set
-# CONFIG_INET_ESP is not set
-# CONFIG_INET_IPCOMP is not set
-# CONFIG_INET_XFRM_TUNNEL is not set
-# CONFIG_INET_TUNNEL is not set
-CONFIG_INET_XFRM_MODE_TRANSPORT=y
-CONFIG_INET_XFRM_MODE_TUNNEL=y
-# CONFIG_INET_DIAG is not set
-# CONFIG_TCP_CONG_ADVANCED is not set
-CONFIG_TCP_CONG_BIC=y
-
-#
-# IP: Virtual Server Configuration
-#
-# CONFIG_IP_VS is not set
-CONFIG_IPV6=y
-# CONFIG_IPV6_PRIVACY is not set
-# CONFIG_IPV6_ROUTER_PREF is not set
-# CONFIG_INET6_AH is not set
-# CONFIG_INET6_ESP is not set
-# CONFIG_INET6_IPCOMP is not set
-# CONFIG_INET6_XFRM_TUNNEL is not set
-# CONFIG_INET6_TUNNEL is not set
-CONFIG_INET6_XFRM_MODE_TRANSPORT=y
-CONFIG_INET6_XFRM_MODE_TUNNEL=y
-# CONFIG_IPV6_TUNNEL is not set
-# CONFIG_NETWORK_SECMARK is not set
-CONFIG_NETFILTER=y
-# CONFIG_NETFILTER_DEBUG is not set
-
-#
-# Core Netfilter Configuration
-#
-CONFIG_NETFILTER_NETLINK=y
-# CONFIG_NETFILTER_NETLINK_QUEUE is not set
-# CONFIG_NETFILTER_NETLINK_LOG is not set
-# CONFIG_NF_CONNTRACK is not set
-# CONFIG_NETFILTER_XTABLES is not set
-
-#
-# IP: Netfilter Configuration
-#
-# CONFIG_IP_NF_CONNTRACK is not set
-# CONFIG_IP_NF_QUEUE is not set
-
-#
-# IPv6: Netfilter Configuration (EXPERIMENTAL)
-#
-# CONFIG_IP6_NF_QUEUE is not set
-
-#
-# DCCP Configuration (EXPERIMENTAL)
-#
-# CONFIG_IP_DCCP is not set
-
-#
-# SCTP Configuration (EXPERIMENTAL)
-#
-# CONFIG_IP_SCTP is not set
-
-#
-# TIPC Configuration (EXPERIMENTAL)
-#
-# CONFIG_TIPC is not set
-# CONFIG_ATM is not set
-# CONFIG_BRIDGE is not set
-# CONFIG_VLAN_8021Q is not set
-# CONFIG_DECNET is not set
-# CONFIG_LLC2 is not set
-# CONFIG_IPX is not set
-# CONFIG_ATALK is not set
-# CONFIG_X25 is not set
-# CONFIG_LAPB is not set
-# CONFIG_ECONET is not set
-# CONFIG_WAN_ROUTER is not set
-
-#
-# QoS and/or fair queueing
-#
-# CONFIG_NET_SCHED is not set
-
-#
-# Network testing
-#
-# CONFIG_NET_PKTGEN is not set
-# CONFIG_HAMRADIO is not set
-# CONFIG_IRDA is not set
-CONFIG_BT=y
-CONFIG_BT_L2CAP=y
-CONFIG_BT_SCO=y
-CONFIG_BT_RFCOMM=y
-CONFIG_BT_RFCOMM_TTY=y
-CONFIG_BT_BNEP=y
-# CONFIG_BT_BNEP_MC_FILTER is not set
-# CONFIG_BT_BNEP_PROTO_FILTER is not set
-CONFIG_BT_HIDP=y
-
-#
-# Bluetooth device drivers
-#
-# CONFIG_BT_HCIUSB is not set
-# CONFIG_BT_HCIUART is not set
-# CONFIG_BT_HCIBCM203X is not set
-# CONFIG_BT_HCIBPA10X is not set
-# CONFIG_BT_HCIBFUSB is not set
-CONFIG_BT_HCIBRF6150=y
-# CONFIG_BT_HCIH4P is not set
-# CONFIG_BT_HCIVHCI is not set
-# CONFIG_IEEE80211 is not set
-CONFIG_WIRELESS_EXT=y
-
-#
-# Device Drivers
-#
-
-#
-# Generic Driver Options
-#
-CONFIG_STANDALONE=y
-CONFIG_PREVENT_FIRMWARE_BUILD=y
-CONFIG_FW_LOADER=y
-# CONFIG_DEBUG_DRIVER is not set
-# CONFIG_SYS_HYPERVISOR is not set
-
-#
-# Connector - unified userspace <-> kernelspace linker
-#
-CONFIG_CONNECTOR=y
-# CONFIG_PROC_EVENTS is not set
-
-#
-# Memory Technology Devices (MTD)
-#
-CONFIG_MTD=y
-# CONFIG_MTD_DEBUG is not set
-# CONFIG_MTD_CONCAT is not set
-CONFIG_MTD_PARTITIONS=y
-# CONFIG_MTD_REDBOOT_PARTS is not set
-CONFIG_MTD_CMDLINE_PARTS=y
-# CONFIG_MTD_AFS_PARTS is not set
-
-#
-# User Modules And Translation Layers
-#
-CONFIG_MTD_CHAR=y
-CONFIG_MTD_BLOCK=y
-# CONFIG_FTL is not set
-# CONFIG_NFTL is not set
-# CONFIG_INFTL is not set
-# CONFIG_RFD_FTL is not set
-
-#
-# RAM/ROM/Flash chip drivers
-#
-# CONFIG_MTD_CFI is not set
-# CONFIG_MTD_JEDECPROBE is not set
-CONFIG_MTD_MAP_BANK_WIDTH_1=y
-CONFIG_MTD_MAP_BANK_WIDTH_2=y
-CONFIG_MTD_MAP_BANK_WIDTH_4=y
-# CONFIG_MTD_MAP_BANK_WIDTH_8 is not set
-# CONFIG_MTD_MAP_BANK_WIDTH_16 is not set
-# CONFIG_MTD_MAP_BANK_WIDTH_32 is not set
-CONFIG_MTD_CFI_I1=y
-CONFIG_MTD_CFI_I2=y
-# CONFIG_MTD_CFI_I4 is not set
-# CONFIG_MTD_CFI_I8 is not set
-# CONFIG_MTD_RAM is not set
-# CONFIG_MTD_ROM is not set
-# CONFIG_MTD_ABSENT is not set
-# CONFIG_MTD_OBSOLETE_CHIPS is not set
-
-#
-# Mapping drivers for chip access
-#
-# CONFIG_MTD_COMPLEX_MAPPINGS is not set
-# CONFIG_MTD_PLATRAM is not set
-
-#
-# Self-contained MTD device drivers
-#
-# CONFIG_MTD_DATAFLASH is not set
-# CONFIG_MTD_M25P80 is not set
-# CONFIG_MTD_SLRAM is not set
-# CONFIG_MTD_PHRAM is not set
-# CONFIG_MTD_MTDRAM is not set
-# CONFIG_MTD_BLOCK2MTD is not set
-
-#
-# Disk-On-Chip Device Drivers
-#
-# CONFIG_MTD_DOC2000 is not set
-# CONFIG_MTD_DOC2001 is not set
-# CONFIG_MTD_DOC2001PLUS is not set
-
-#
-# NAND Flash Device Drivers
-#
-CONFIG_MTD_NAND=y
-# CONFIG_MTD_NAND_VERIFY_WRITE is not set
-# CONFIG_MTD_NAND_ECC_SMC is not set
-CONFIG_MTD_NAND_OMAP_HW=y
-CONFIG_MTD_NAND_IDS=y
-# CONFIG_MTD_NAND_DISKONCHIP is not set
-# CONFIG_MTD_NAND_NANDSIM is not set
-
-#
-# OneNAND Flash Device Drivers
-#
-# CONFIG_MTD_ONENAND is not set
-
-#
-# Parallel port support
-#
-# CONFIG_PARPORT is not set
-
-#
-# Plug and Play support
-#
-
-#
-# Block devices
-#
-# CONFIG_BLK_DEV_COW_COMMON is not set
-CONFIG_BLK_DEV_LOOP=y
-# CONFIG_BLK_DEV_CRYPTOLOOP is not set
-# CONFIG_BLK_DEV_NBD is not set
-# CONFIG_BLK_DEV_UB is not set
-# CONFIG_BLK_DEV_RAM is not set
-# CONFIG_BLK_DEV_INITRD is not set
-# CONFIG_CDROM_PKTCDVD is not set
-# CONFIG_ATA_OVER_ETH is not set
-
-#
-# SCSI device support
-#
-# CONFIG_RAID_ATTRS is not set
-CONFIG_SCSI=y
-# CONFIG_SCSI_PROC_FS is not set
-
-#
-# SCSI support type (disk, tape, CD-ROM)
-#
-CONFIG_BLK_DEV_SD=y
-# CONFIG_CHR_DEV_ST is not set
-# CONFIG_CHR_DEV_OSST is not set
-# CONFIG_BLK_DEV_SR is not set
-# CONFIG_CHR_DEV_SG is not set
-# CONFIG_CHR_DEV_SCH is not set
-
-#
-# Some SCSI devices (e.g. CD jukebox) support multiple LUNs
-#
-# CONFIG_SCSI_MULTI_LUN is not set
-# CONFIG_SCSI_CONSTANTS is not set
-# CONFIG_SCSI_LOGGING is not set
-
-#
-# SCSI Transport Attributes
-#
-# CONFIG_SCSI_SPI_ATTRS is not set
-# CONFIG_SCSI_FC_ATTRS is not set
-# CONFIG_SCSI_ISCSI_ATTRS is not set
-# CONFIG_SCSI_SAS_ATTRS is not set
-
-#
-# SCSI low-level drivers
-#
-# CONFIG_ISCSI_TCP is not set
-# CONFIG_SCSI_SATA is not set
-# CONFIG_SCSI_DEBUG is not set
-
-#
-# Multi-device support (RAID and LVM)
-#
-# CONFIG_MD is not set
-
-#
-# Fusion MPT device support
-#
-# CONFIG_FUSION is not set
-
-#
-# IEEE 1394 (FireWire) support
-#
-
-#
-# I2O device support
-#
-
-#
-# Network device support
-#
-CONFIG_NETDEVICES=y
-# CONFIG_DUMMY is not set
-# CONFIG_BONDING is not set
-# CONFIG_EQUALIZER is not set
-CONFIG_TUN=y
-
-#
-# PHY device support
-#
-# CONFIG_PHYLIB is not set
-
-#
-# Ethernet (10 or 100Mbit)
-#
-CONFIG_NET_ETHERNET=y
-CONFIG_MII=y
-# CONFIG_SMC91X is not set
-# CONFIG_DM9000 is not set
-
-#
-# Ethernet (1000 Mbit)
-#
-
-#
-# Ethernet (10000 Mbit)
-#
-
-#
-# Token Ring devices
-#
-
-#
-# Wireless LAN (non-hamradio)
-#
-CONFIG_NET_RADIO=y
-# CONFIG_NET_WIRELESS_RTNETLINK is not set
-
-#
-# Obsolete Wireless cards support (pre-802.11)
-#
-# CONFIG_STRIP is not set
-# CONFIG_USB_ZD1201 is not set
-# CONFIG_HOSTAP is not set
-
-#
-# Wan interfaces
-#
-# CONFIG_WAN is not set
-CONFIG_PPP=y
-# CONFIG_PPP_MULTILINK is not set
-CONFIG_PPP_FILTER=y
-CONFIG_PPP_ASYNC=y
-# CONFIG_PPP_SYNC_TTY is not set
-CONFIG_PPP_DEFLATE=y
-CONFIG_PPP_BSDCOMP=y
-# CONFIG_PPP_MPPE is not set
-# CONFIG_PPPOE is not set
-# CONFIG_SLIP is not set
-# CONFIG_SHAPER is not set
-# CONFIG_NETCONSOLE is not set
-# CONFIG_NETPOLL is not set
-# CONFIG_NET_POLL_CONTROLLER is not set
-
-#
-# ISDN subsystem
-#
-# CONFIG_ISDN is not set
-
-#
-# Input device support
-#
-CONFIG_INPUT=y
-
-#
-# Userland interfaces
-#
-CONFIG_INPUT_MOUSEDEV=y
-# CONFIG_INPUT_MOUSEDEV_PSAUX is not set
-CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024
-CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768
-# CONFIG_INPUT_JOYDEV is not set
-# CONFIG_INPUT_TSDEV is not set
-CONFIG_INPUT_EVDEV=y
-# CONFIG_INPUT_EVBUG is not set
-
-#
-# Input Device Drivers
-#
-CONFIG_INPUT_KEYBOARD=y
-# CONFIG_KEYBOARD_ATKBD is not set
-# CONFIG_KEYBOARD_SUNKBD is not set
-# CONFIG_KEYBOARD_LKKBD is not set
-# CONFIG_KEYBOARD_XTKBD is not set
-# CONFIG_KEYBOARD_NEWTON is not set
-CONFIG_KEYBOARD_OMAP=y
-# CONFIG_INPUT_MOUSE is not set
-# CONFIG_INPUT_JOYSTICK is not set
-CONFIG_INPUT_TOUCHSCREEN=y
-CONFIG_TOUCHSCREEN_ADS7846=y
-# CONFIG_TOUCHSCREEN_GUNZE is not set
-# CONFIG_TOUCHSCREEN_ELO is not set
-# CONFIG_TOUCHSCREEN_MTOUCH is not set
-# CONFIG_TOUCHSCREEN_MK712 is not set
-# CONFIG_INPUT_MISC is not set
-
-#
-# Hardware I/O ports
-#
-CONFIG_SERIO=y
-CONFIG_SERIO_SERPORT=y
-# CONFIG_SERIO_RAW is not set
-# CONFIG_GAMEPORT is not set
-
-#
-# Character devices
-#
-CONFIG_VT=y
-CONFIG_VT_CONSOLE=y
-CONFIG_HW_CONSOLE=y
-# CONFIG_VT_HW_CONSOLE_BINDING is not set
-# CONFIG_SERIAL_NONSTANDARD is not set
-
-#
-# Serial drivers
-#
-CONFIG_SERIAL_8250=y
-CONFIG_SERIAL_8250_CONSOLE=y
-CONFIG_SERIAL_8250_NR_UARTS=4
-CONFIG_SERIAL_8250_RUNTIME_UARTS=4
-# CONFIG_SERIAL_8250_EXTENDED is not set
-
-#
-# Non-8250 serial port support
-#
-# CONFIG_SERIAL_OMAP is not set
-CONFIG_SERIAL_CORE=y
-CONFIG_SERIAL_CORE_CONSOLE=y
-CONFIG_UNIX98_PTYS=y
-# CONFIG_LEGACY_PTYS is not set
-
-#
-# IPMI
-#
-# CONFIG_IPMI_HANDLER is not set
-
-#
-# Watchdog Cards
-#
-CONFIG_WATCHDOG=y
-CONFIG_WATCHDOG_NOWAYOUT=y
-
-#
-# Watchdog Device Drivers
-#
-# CONFIG_SOFT_WATCHDOG is not set
-
-#
-# USB-based Watchdog Cards
-#
-# CONFIG_USBPCWATCHDOG is not set
-CONFIG_OMAP_WATCHDOG=y
-CONFIG_HW_RANDOM=y
-CONFIG_HW_RANDOM_OMAP=y
-CONFIG_OMAP_RNG=y
-# CONFIG_NVRAM is not set
-# CONFIG_OMAP_RTC is not set
-# CONFIG_DTLK is not set
-# CONFIG_R3964 is not set
-
-#
-# Ftape, the floppy tape device driver
-#
-# CONFIG_RAW_DRIVER is not set
-
-#
-# TPM devices
-#
-# CONFIG_TCG_TPM is not set
-# CONFIG_TELCLOCK is not set
-
-#
-# I2C support
-#
-CONFIG_I2C=y
-# CONFIG_I2C_CHARDEV is not set
-
-#
-# I2C Algorithms
-#
-# CONFIG_I2C_ALGOBIT is not set
-# CONFIG_I2C_ALGOPCF is not set
-# CONFIG_I2C_ALGOPCA is not set
-
-#
-# I2C Hardware Bus support
-#
-# CONFIG_I2C_OCORES is not set
-# CONFIG_I2C_PARPORT_LIGHT is not set
-# CONFIG_I2C_STUB is not set
-# CONFIG_I2C_PCA_ISA is not set
-CONFIG_I2C_OMAP=y
-
-#
-# Miscellaneous I2C Chip support
-#
-# CONFIG_SENSORS_DS1337 is not set
-# CONFIG_SENSORS_DS1374 is not set
-# CONFIG_SENSORS_EEPROM is not set
-# CONFIG_SENSORS_PCF8574 is not set
-# CONFIG_SENSORS_PCA9539 is not set
-# CONFIG_SENSORS_PCF8591 is not set
-# CONFIG_ISP1301_OMAP is not set
-# CONFIG_TPS65010 is not set
-CONFIG_SENSORS_TLV320AIC23=y
-# CONFIG_GPIOEXPANDER_OMAP is not set
-# CONFIG_SENSORS_MAX6875 is not set
-# CONFIG_I2C_DEBUG_CORE is not set
-# CONFIG_I2C_DEBUG_ALGO is not set
-# CONFIG_I2C_DEBUG_BUS is not set
-# CONFIG_I2C_DEBUG_CHIP is not set
-
-#
-# SPI support
-#
-CONFIG_SPI=y
-# CONFIG_SPI_DEBUG is not set
-CONFIG_SPI_MASTER=y
-
-#
-# SPI Master Controller Drivers
-#
-CONFIG_SPI_BITBANG=y
-CONFIG_SPI_OMAP_UWIRE=y
-
-#
-# SPI Protocol Masters
-#
-# CONFIG_SPI_TSC2301 is not set
-
-#
-# Dallas's 1-wire bus
-#
-# CONFIG_W1 is not set
-
-#
-# Hardware Monitoring support
-#
-CONFIG_HWMON=y
-# CONFIG_HWMON_VID is not set
-# CONFIG_SENSORS_ABITUGURU is not set
-# CONFIG_SENSORS_ADM1021 is not set
-# CONFIG_SENSORS_ADM1025 is not set
-# CONFIG_SENSORS_ADM1026 is not set
-# CONFIG_SENSORS_ADM1031 is not set
-# CONFIG_SENSORS_ADM9240 is not set
-# CONFIG_SENSORS_ASB100 is not set
-# CONFIG_SENSORS_ATXP1 is not set
-# CONFIG_SENSORS_DS1621 is not set
-# CONFIG_SENSORS_F71805F is not set
-# CONFIG_SENSORS_FSCHER is not set
-# CONFIG_SENSORS_FSCPOS is not set
-# CONFIG_SENSORS_GL518SM is not set
-# CONFIG_SENSORS_GL520SM is not set
-# CONFIG_SENSORS_IT87 is not set
-# CONFIG_SENSORS_LM63 is not set
-# CONFIG_SENSORS_LM70 is not set
-# CONFIG_SENSORS_LM75 is not set
-# CONFIG_SENSORS_LM77 is not set
-# CONFIG_SENSORS_LM78 is not set
-# CONFIG_SENSORS_LM80 is not set
-# CONFIG_SENSORS_LM83 is not set
-# CONFIG_SENSORS_LM85 is not set
-# CONFIG_SENSORS_LM87 is not set
-# CONFIG_SENSORS_LM90 is not set
-# CONFIG_SENSORS_LM92 is not set
-# CONFIG_SENSORS_MAX1619 is not set
-# CONFIG_SENSORS_PC87360 is not set
-# CONFIG_SENSORS_SMSC47M1 is not set
-# CONFIG_SENSORS_SMSC47M192 is not set
-# CONFIG_SENSORS_SMSC47B397 is not set
-# CONFIG_SENSORS_TMP105 is not set
-# CONFIG_SENSORS_W83781D is not set
-# CONFIG_SENSORS_W83791D is not set
-# CONFIG_SENSORS_W83792D is not set
-# CONFIG_SENSORS_W83L785TS is not set
-# CONFIG_SENSORS_W83627HF is not set
-# CONFIG_SENSORS_W83627EHF is not set
-# CONFIG_HWMON_DEBUG_CHIP is not set
-
-#
-# Misc devices
-#
-
-#
-# LED devices
-#
-# CONFIG_NEW_LEDS is not set
-
-#
-# LED drivers
-#
-
-#
-# LED Triggers
-#
-
-#
-# Multimedia devices
-#
-# CONFIG_VIDEO_DEV is not set
-CONFIG_VIDEO_V4L2=y
-
-#
-# Digital Video Broadcasting Devices
-#
-# CONFIG_DVB is not set
-# CONFIG_USB_DABUSB is not set
-
-#
-# Graphics support
-#
-CONFIG_FIRMWARE_EDID=y
-CONFIG_FB=y
-# CONFIG_FB_CFB_FILLRECT is not set
-# CONFIG_FB_CFB_COPYAREA is not set
-# CONFIG_FB_CFB_IMAGEBLIT is not set
-# CONFIG_FB_MACMODES is not set
-# CONFIG_FB_BACKLIGHT is not set
-# CONFIG_FB_MODE_HELPERS is not set
-# CONFIG_FB_TILEBLITTING is not set
-# CONFIG_FB_S1D13XXX is not set
-# CONFIG_FB_VIRTUAL is not set
-CONFIG_FB_OMAP=y
-CONFIG_FB_OMAP_LCDC_EXTERNAL=y
-CONFIG_FB_OMAP_LCDC_HWA742=y
-# CONFIG_FB_OMAP_LCDC_BLIZZARD is not set
-CONFIG_FB_OMAP_MANUAL_UPDATE=y
-CONFIG_FB_OMAP_LCD_MIPID=y
-# CONFIG_FB_OMAP_BOOTLOADER_INIT is not set
-CONFIG_FB_OMAP_CONSISTENT_DMA_SIZE=2
-# CONFIG_FB_OMAP_DMA_TUNE is not set
-
-#
-# Console display driver support
-#
-# CONFIG_VGA_CONSOLE is not set
-CONFIG_DUMMY_CONSOLE=y
-# CONFIG_FRAMEBUFFER_CONSOLE is not set
-
-#
-# Logo configuration
-#
-# CONFIG_LOGO is not set
-# CONFIG_BACKLIGHT_LCD_SUPPORT is not set
-
-#
-# Sound
-#
-CONFIG_SOUND=y
-
-#
-# Advanced Linux Sound Architecture
-#
-CONFIG_SND=y
-CONFIG_SND_TIMER=y
-CONFIG_SND_PCM=y
-CONFIG_SND_HWDEP=y
-CONFIG_SND_RAWMIDI=y
-# CONFIG_SND_SEQUENCER is not set
-# CONFIG_SND_MIXER_OSS is not set
-# CONFIG_SND_PCM_OSS is not set
-# CONFIG_SND_DYNAMIC_MINORS is not set
-# CONFIG_SND_SUPPORT_OLD_API is not set
-CONFIG_SND_VERBOSE_PROCFS=y
-# CONFIG_SND_VERBOSE_PRINTK is not set
-# CONFIG_SND_DEBUG is not set
-
-#
-# Generic devices
-#
-CONFIG_SND_DUMMY=y
-# CONFIG_SND_MTPAV is not set
-# CONFIG_SND_SERIAL_U16550 is not set
-# CONFIG_SND_MPU401 is not set
-
-#
-# ALSA ARM devices
-#
-CONFIG_SND_OMAP_AIC23=y
-# CONFIG_SND_OMAP_TSC2101 is not set
-# CONFIG_SND_OMAP24XX_EAC is not set
-
-#
-# USB devices
-#
-CONFIG_SND_USB_AUDIO=y
-
-#
-# Open Sound System
-#
-# CONFIG_SOUND_PRIME is not set
-
-#
-# USB support
-#
-CONFIG_USB_ARCH_HAS_HCD=y
-CONFIG_USB_ARCH_HAS_OHCI=y
-# CONFIG_USB_ARCH_HAS_EHCI is not set
-CONFIG_USB=y
-# CONFIG_USB_DEBUG is not set
-
-#
-# Miscellaneous USB options
-#
-CONFIG_USB_DEVICEFS=y
-CONFIG_USB_BANDWIDTH=y
-# CONFIG_USB_DYNAMIC_MINORS is not set
-CONFIG_USB_SUSPEND=y
-# CONFIG_USB_OTG is not set
-
-#
-# USB Host Controller Drivers
-#
-# CONFIG_USB_ISP116X_HCD is not set
-# CONFIG_USB_OHCI_HCD is not set
-# CONFIG_USB_SL811_HCD is not set
-# CONFIG_USB_MUSB_HDRC is not set
-# CONFIG_USB_GADGET_MUSB_HDRC is not set
-
-#
-# USB Device Class drivers
-#
-# CONFIG_USB_ACM is not set
-# CONFIG_USB_PRINTER is not set
-
-#
-# NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support'
-#
-
-#
-# may also be needed; see USB_STORAGE Help for more information
-#
-CONFIG_USB_STORAGE=y
-# CONFIG_USB_STORAGE_DEBUG is not set
-# CONFIG_USB_STORAGE_DATAFAB is not set
-# CONFIG_USB_STORAGE_FREECOM is not set
-# CONFIG_USB_STORAGE_DPCM is not set
-# CONFIG_USB_STORAGE_USBAT is not set
-# CONFIG_USB_STORAGE_SDDR09 is not set
-# CONFIG_USB_STORAGE_SDDR55 is not set
-# CONFIG_USB_STORAGE_JUMPSHOT is not set
-# CONFIG_USB_STORAGE_ALAUDA is not set
-# CONFIG_USB_LIBUSUAL is not set
-
-#
-# USB Input Devices
-#
-CONFIG_USB_HID=y
-CONFIG_USB_HIDINPUT=y
-# CONFIG_USB_HIDINPUT_POWERBOOK is not set
-# CONFIG_HID_FF is not set
-# CONFIG_USB_HIDDEV is not set
-# CONFIG_USB_AIPTEK is not set
-# CONFIG_USB_WACOM is not set
-# CONFIG_USB_ACECAD is not set
-# CONFIG_USB_KBTAB is not set
-# CONFIG_USB_POWERMATE is not set
-# CONFIG_USB_TOUCHSCREEN is not set
-# CONFIG_USB_YEALINK is not set
-# CONFIG_USB_XPAD is not set
-# CONFIG_USB_ATI_REMOTE is not set
-# CONFIG_USB_ATI_REMOTE2 is not set
-# CONFIG_USB_KEYSPAN_REMOTE is not set
-# CONFIG_USB_APPLETOUCH is not set
-
-#
-# USB Imaging devices
-#
-# CONFIG_USB_MDC800 is not set
-# CONFIG_USB_MICROTEK is not set
-
-#
-# USB Network Adapters
-#
-# CONFIG_USB_CATC is not set
-# CONFIG_USB_KAWETH is not set
-# CONFIG_USB_PEGASUS is not set
-# CONFIG_USB_RTL8150 is not set
-CONFIG_USB_USBNET=y
-# CONFIG_USB_NET_AX8817X is not set
-CONFIG_USB_NET_CDCETHER=y
-# CONFIG_USB_NET_GL620A is not set
-CONFIG_USB_NET_NET1080=y
-# CONFIG_USB_NET_PLUSB is not set
-# CONFIG_USB_NET_RNDIS_HOST is not set
-# CONFIG_USB_NET_CDC_SUBSET is not set
-CONFIG_USB_NET_ZAURUS=y
-# CONFIG_USB_MON is not set
-
-#
-# USB port drivers
-#
-
-#
-# USB Serial Converter support
-#
-CONFIG_USB_SERIAL=y
-CONFIG_USB_SERIAL_CONSOLE=y
-# CONFIG_USB_SERIAL_GENERIC is not set
-# CONFIG_USB_SERIAL_AIRPRIME is not set
-# CONFIG_USB_SERIAL_ARK3116 is not set
-# CONFIG_USB_SERIAL_BELKIN is not set
-# CONFIG_USB_SERIAL_WHITEHEAT is not set
-# CONFIG_USB_SERIAL_DIGI_ACCELEPORT is not set
-# CONFIG_USB_SERIAL_CP2101 is not set
-# CONFIG_USB_SERIAL_CYPRESS_M8 is not set
-# CONFIG_USB_SERIAL_EMPEG is not set
-# CONFIG_USB_SERIAL_FTDI_SIO is not set
-# CONFIG_USB_SERIAL_FUNSOFT is not set
-# CONFIG_USB_SERIAL_VISOR is not set
-# CONFIG_USB_SERIAL_IPAQ is not set
-# CONFIG_USB_SERIAL_IR is not set
-# CONFIG_USB_SERIAL_EDGEPORT is not set
-# CONFIG_USB_SERIAL_EDGEPORT_TI is not set
-# CONFIG_USB_SERIAL_GARMIN is not set
-# CONFIG_USB_SERIAL_IPW is not set
-# CONFIG_USB_SERIAL_KEYSPAN_PDA is not set
-# CONFIG_USB_SERIAL_KEYSPAN is not set
-# CONFIG_USB_SERIAL_KLSI is not set
-# CONFIG_USB_SERIAL_KOBIL_SCT is not set
-# CONFIG_USB_SERIAL_MCT_U232 is not set
-# CONFIG_USB_SERIAL_NAVMAN is not set
-CONFIG_USB_SERIAL_PL2303=y
-# CONFIG_USB_SERIAL_HP4X is not set
-# CONFIG_USB_SERIAL_SAFE is not set
-# CONFIG_USB_SERIAL_SIERRAWIRELESS is not set
-# CONFIG_USB_SERIAL_TI is not set
-# CONFIG_USB_SERIAL_CYBERJACK is not set
-# CONFIG_USB_SERIAL_XIRCOM is not set
-# CONFIG_USB_SERIAL_OPTION is not set
-# CONFIG_USB_SERIAL_OMNINET is not set
-
-#
-# USB Miscellaneous drivers
-#
-# CONFIG_USB_EMI62 is not set
-# CONFIG_USB_EMI26 is not set
-# CONFIG_USB_AUERSWALD is not set
-# CONFIG_USB_RIO500 is not set
-# CONFIG_USB_LEGOTOWER is not set
-# CONFIG_USB_LCD is not set
-# CONFIG_USB_LED is not set
-# CONFIG_USB_CYPRESS_CY7C63 is not set
-# CONFIG_USB_CYTHERM is not set
-# CONFIG_USB_PHIDGETKIT is not set
-# CONFIG_USB_PHIDGETSERVO is not set
-# CONFIG_USB_IDMOUSE is not set
-# CONFIG_USB_APPLEDISPLAY is not set
-# CONFIG_USB_LD is not set
-# CONFIG_USB_TEST is not set
-
-#
-# USB DSL modem support
-#
-
-#
-# USB Gadget Support
-#
-CONFIG_USB_GADGET=y
-# CONFIG_USB_GADGET_DEBUG_FILES is not set
-CONFIG_USB_GADGET_SELECTED=y
-# CONFIG_USB_GADGET_NET2280 is not set
-# CONFIG_USB_GADGET_PXA2XX is not set
-# CONFIG_USB_GADGET_GOKU is not set
-# CONFIG_USB_GADGET_LH7A40X is not set
-CONFIG_USB_GADGET_OMAP=y
-CONFIG_USB_OMAP=y
-# CONFIG_USB_GADGET_AT91 is not set
-# CONFIG_USB_GADGET_DUMMY_HCD is not set
-# CONFIG_USB_GADGET_DUALSPEED is not set
-# CONFIG_USB_ZERO is not set
-CONFIG_USB_ETH=m
-CONFIG_USB_ETH_RNDIS=y
-# CONFIG_USB_GADGETFS is not set
-CONFIG_USB_FILE_STORAGE=m
-CONFIG_USB_FILE_STORAGE_TEST=y
-# CONFIG_USB_G_SERIAL is not set
-
-#
-# MMC/SD Card support
-#
-CONFIG_MMC=y
-# CONFIG_MMC_DEBUG is not set
-CONFIG_MMC_BLOCK=y
-CONFIG_MMC_OMAP=y
-
-#
-# Real Time Clock
-#
-CONFIG_RTC_LIB=y
-# CONFIG_RTC_CLASS is not set
-
-#
-# Synchronous Serial Interfaces (SSI)
-#
-CONFIG_OMAP_UWIRE=y
-# CONFIG_OMAP_TSC2101 is not set
-
-#
-# CBUS support
-#
-CONFIG_CBUS=y
-CONFIG_CBUS_TAHVO=y
-CONFIG_CBUS_TAHVO_USER=y
-CONFIG_CBUS_TAHVO_USB=y
-CONFIG_CBUS_RETU=y
-CONFIG_CBUS_RETU_USER=y
-CONFIG_CBUS_RETU_POWERBUTTON=y
-CONFIG_CBUS_RETU_RTC=y
-CONFIG_CBUS_RETU_WDT=y
-# CONFIG_CBUS_RETU_HEADSET is not set
-
-#
-# File systems
-#
-CONFIG_EXT2_FS=y
-# CONFIG_EXT2_FS_XATTR is not set
-# CONFIG_EXT2_FS_XIP is not set
-CONFIG_EXT3_FS=y
-CONFIG_EXT3_FS_XATTR=y
-# CONFIG_EXT3_FS_POSIX_ACL is not set
-# CONFIG_EXT3_FS_SECURITY is not set
-CONFIG_JBD=y
-# CONFIG_JBD_DEBUG is not set
-CONFIG_FS_MBCACHE=y
-# CONFIG_REISERFS_FS is not set
-# CONFIG_JFS_FS is not set
-# CONFIG_FS_POSIX_ACL is not set
-# CONFIG_XFS_FS is not set
-# CONFIG_OCFS2_FS is not set
-# CONFIG_MINIX_FS is not set
-# CONFIG_ROMFS_FS is not set
-CONFIG_INOTIFY=y
-CONFIG_INOTIFY_USER=y
-# CONFIG_QUOTA is not set
-CONFIG_DNOTIFY=y
-# CONFIG_AUTOFS_FS is not set
-# CONFIG_AUTOFS4_FS is not set
-# CONFIG_FUSE_FS is not set
-
-#
-# CD-ROM/DVD Filesystems
-#
-# CONFIG_ISO9660_FS is not set
-# CONFIG_UDF_FS is not set
-
-#
-# DOS/FAT/NT Filesystems
-#
-CONFIG_FAT_FS=y
-CONFIG_MSDOS_FS=y
-CONFIG_VFAT_FS=y
-CONFIG_FAT_DEFAULT_CODEPAGE=437
-CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1"
-# CONFIG_NTFS_FS is not set
-
-#
-# Pseudo filesystems
-#
-CONFIG_PROC_FS=y
-CONFIG_SYSFS=y
-CONFIG_TMPFS=y
-# CONFIG_HUGETLB_PAGE is not set
-CONFIG_RAMFS=y
-# CONFIG_CONFIGFS_FS is not set
-
-#
-# Miscellaneous filesystems
-#
-# CONFIG_ADFS_FS is not set
-# CONFIG_AFFS_FS is not set
-# CONFIG_HFS_FS is not set
-# CONFIG_HFSPLUS_FS is not set
-# CONFIG_BEFS_FS is not set
-# CONFIG_BFS_FS is not set
-# CONFIG_EFS_FS is not set
-# CONFIG_JFFS_FS is not set
-CONFIG_JFFS2_FS=y
-CONFIG_JFFS2_FS_DEBUG=0
-CONFIG_JFFS2_FS_WRITEBUFFER=y
-CONFIG_JFFS2_SUMMARY=y
-# CONFIG_JFFS2_FS_XATTR is not set
-CONFIG_JFFS2_COMPRESSION_OPTIONS=y
-CONFIG_JFFS2_ZLIB=y
-CONFIG_JFFS2_LZO=y
-CONFIG_JFFS2_RTIME=y
-# CONFIG_JFFS2_RUBIN is not set
-# CONFIG_JFFS2_CMODE_NONE is not set
-CONFIG_JFFS2_CMODE_PRIORITY=y
-# CONFIG_JFFS2_CMODE_SIZE is not set
-# CONFIG_JFFS2_CMODE_FAVOURLZO is not set
-# CONFIG_CRAMFS is not set
-# CONFIG_VXFS_FS is not set
-# CONFIG_HPFS_FS is not set
-# CONFIG_QNX4FS_FS is not set
-# CONFIG_SYSV_FS is not set
-# CONFIG_UFS_FS is not set
-
-#
-# Network File Systems
-#
-CONFIG_NFS_FS=y
-CONFIG_NFS_V3=y
-# CONFIG_NFS_V3_ACL is not set
-# CONFIG_NFS_V4 is not set
-# CONFIG_NFS_DIRECTIO is not set
-# CONFIG_NFSD is not set
-# CONFIG_ROOT_NFS is not set
-CONFIG_LOCKD=y
-CONFIG_LOCKD_V4=y
-CONFIG_NFS_COMMON=y
-CONFIG_SUNRPC=y
-# CONFIG_RPCSEC_GSS_KRB5 is not set
-# CONFIG_RPCSEC_GSS_SPKM3 is not set
-# CONFIG_SMB_FS is not set
-# CONFIG_CIFS is not set
-# CONFIG_NCP_FS is not set
-# CONFIG_CODA_FS is not set
-# CONFIG_AFS_FS is not set
-# CONFIG_9P_FS is not set
-
-#
-# Partition Types
-#
-CONFIG_PARTITION_ADVANCED=y
-# CONFIG_ACORN_PARTITION is not set
-# CONFIG_OSF_PARTITION is not set
-# CONFIG_AMIGA_PARTITION is not set
-# CONFIG_ATARI_PARTITION is not set
-# CONFIG_MAC_PARTITION is not set
-CONFIG_MSDOS_PARTITION=y
-# CONFIG_BSD_DISKLABEL is not set
-# CONFIG_MINIX_SUBPARTITION is not set
-# CONFIG_SOLARIS_X86_PARTITION is not set
-# CONFIG_UNIXWARE_DISKLABEL is not set
-# CONFIG_LDM_PARTITION is not set
-# CONFIG_SGI_PARTITION is not set
-# CONFIG_ULTRIX_PARTITION is not set
-# CONFIG_SUN_PARTITION is not set
-# CONFIG_KARMA_PARTITION is not set
-# CONFIG_EFI_PARTITION is not set
-
-#
-# Native Language Support
-#
-CONFIG_NLS=y
-CONFIG_NLS_DEFAULT="iso8859-1"
-CONFIG_NLS_CODEPAGE_437=y
-# CONFIG_NLS_CODEPAGE_737 is not set
-# CONFIG_NLS_CODEPAGE_775 is not set
-# CONFIG_NLS_CODEPAGE_850 is not set
-CONFIG_NLS_CODEPAGE_852=y
-# CONFIG_NLS_CODEPAGE_855 is not set
-# CONFIG_NLS_CODEPAGE_857 is not set
-# CONFIG_NLS_CODEPAGE_860 is not set
-# CONFIG_NLS_CODEPAGE_861 is not set
-# CONFIG_NLS_CODEPAGE_862 is not set
-# CONFIG_NLS_CODEPAGE_863 is not set
-# CONFIG_NLS_CODEPAGE_864 is not set
-# CONFIG_NLS_CODEPAGE_865 is not set
-# CONFIG_NLS_CODEPAGE_866 is not set
-# CONFIG_NLS_CODEPAGE_869 is not set
-# CONFIG_NLS_CODEPAGE_936 is not set
-# CONFIG_NLS_CODEPAGE_950 is not set
-# CONFIG_NLS_CODEPAGE_932 is not set
-# CONFIG_NLS_CODEPAGE_949 is not set
-# CONFIG_NLS_CODEPAGE_874 is not set
-# CONFIG_NLS_ISO8859_8 is not set
-# CONFIG_NLS_CODEPAGE_1250 is not set
-# CONFIG_NLS_CODEPAGE_1251 is not set
-# CONFIG_NLS_ASCII is not set
-CONFIG_NLS_ISO8859_1=y
-# CONFIG_NLS_ISO8859_2 is not set
-# CONFIG_NLS_ISO8859_3 is not set
-# CONFIG_NLS_ISO8859_4 is not set
-# CONFIG_NLS_ISO8859_5 is not set
-# CONFIG_NLS_ISO8859_6 is not set
-# CONFIG_NLS_ISO8859_7 is not set
-# CONFIG_NLS_ISO8859_9 is not set
-# CONFIG_NLS_ISO8859_13 is not set
-# CONFIG_NLS_ISO8859_14 is not set
-CONFIG_NLS_ISO8859_15=y
-# CONFIG_NLS_KOI8_R is not set
-# CONFIG_NLS_KOI8_U is not set
-CONFIG_NLS_UTF8=y
-
-#
-# Profiling support
-#
-# CONFIG_PROFILING is not set
-
-#
-# Kernel hacking
-#
-# CONFIG_PRINTK_TIME is not set
-CONFIG_MAGIC_SYSRQ=y
-# CONFIG_UNUSED_SYMBOLS is not set
-CONFIG_DEBUG_KERNEL=y
-CONFIG_LOG_BUF_SHIFT=14
-CONFIG_DETECT_SOFTLOCKUP=y
-# CONFIG_SCHEDSTATS is not set
-# CONFIG_DEBUG_SLAB is not set
-# CONFIG_DEBUG_RT_MUTEXES is not set
-# CONFIG_RT_MUTEX_TESTER is not set
-# CONFIG_DEBUG_SPINLOCK is not set
-CONFIG_DEBUG_MUTEXES=y
-# CONFIG_DEBUG_RWSEMS is not set
-# CONFIG_DEBUG_SPINLOCK_SLEEP is not set
-# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set
-# CONFIG_DEBUG_KOBJECT is not set
-CONFIG_DEBUG_BUGVERBOSE=y
-# CONFIG_DEBUG_INFO is not set
-# CONFIG_DEBUG_FS is not set
-# CONFIG_DEBUG_VM is not set
-CONFIG_FRAME_POINTER=y
-# CONFIG_UNWIND_INFO is not set
-CONFIG_FORCED_INLINING=y
-# CONFIG_RCU_TORTURE_TEST is not set
-# CONFIG_DEBUG_USER is not set
-# CONFIG_DEBUG_WAITQ is not set
-CONFIG_DEBUG_ERRORS=y
-# CONFIG_DEBUG_LL is not set
-
-#
-# Security options
-#
-# CONFIG_KEYS is not set
-CONFIG_SECURITY=y
-# CONFIG_SECURITY_NETWORK is not set
-# CONFIG_SECURITY_CAPABILITIES is not set
-# CONFIG_SECURITY_ROOTPLUG is not set
-# CONFIG_SECURITY_SECLVL is not set
-# CONFIG_SECURITY_LOWMEM is not set
-
-#
-# Cryptographic options
-#
-# CONFIG_CRYPTO is not set
-
-#
-# Hardware crypto devices
-#
-
-#
-# Library routines
-#
-CONFIG_CRC_CCITT=y
-# CONFIG_CRC16 is not set
-CONFIG_CRC32=y
-# CONFIG_LIBCRC32C is not set
-CONFIG_LZO=y
-CONFIG_ZLIB_INFLATE=y
-CONFIG_ZLIB_DEFLATE=y
-CONFIG_PLIST=y
diff --git a/meta-extras/packages/linux/linux-nokia800-2.6.18-osso40/nokia770_nand_fix.patch b/meta-extras/packages/linux/linux-nokia800-2.6.18-osso40/nokia770_nand_fix.patch
deleted file mode 100644
index 79d53545e..000000000
--- a/meta-extras/packages/linux/linux-nokia800-2.6.18-osso40/nokia770_nand_fix.patch
+++ /dev/null
@@ -1,415 +0,0 @@
----
- arch/arm/mach-omap1/board-nokia770.c | 60 +++++++++++++++++++++++++++++++----
- arch/arm/mach-omap1/mmu.c | 1
- drivers/cbus/tahvo-usb.c | 4 +-
- drivers/i2c/chips/isp1301_omap.c | 1
- drivers/mtd/mtdchar.c | 6 +++
- drivers/mtd/mtdpart.c | 5 ++
- drivers/mtd/nand/omap-hw.c | 55 +++++++++++++++-----------------
- drivers/serial/8250.c | 2 +
- drivers/video/omap/omapfb_main.c | 4 +-
- include/asm-arm/arch-omap/keypad.h | 3 +
- include/asm-arm/arch-omap/serial.h | 16 +++++++++
- 11 files changed, 118 insertions(+), 39 deletions(-)
-
-Index: linux-g/arch/arm/mach-omap1/board-nokia770.c
-===================================================================
---- linux-g.orig/arch/arm/mach-omap1/board-nokia770.c 2006-11-08 13:18:39.000000000 +0100
-+++ linux-g/arch/arm/mach-omap1/board-nokia770.c 2007-08-13 16:23:15.000000000 +0200
-@@ -16,6 +16,8 @@
-
- #include <linux/spi/spi.h>
- #include <linux/spi/ads7846.h>
-+#include <linux/workqueue.h>
-+#include <linux/delay.h>
-
- #include <asm/hardware.h>
- #include <asm/mach-types.h>
-@@ -33,9 +35,12 @@
- #include <asm/arch/gpio.h>
- #include <asm/arch/omapfb.h>
- #include <asm/arch/hwa742.h>
-+#include <asm/arch/lcd_mipid.h>
-
- #include "../plat-omap/dsp/dsp_common.h"
-
-+#define ADS7846_PENDOWN_GPIO 15
-+
- static void __init omap_nokia770_init_irq(void)
- {
- /* On Nokia 770, the SleepX signal is masked with an
-@@ -75,9 +80,11 @@
- };
-
- static struct omap_kp_platform_data nokia770_kp_data = {
-- .rows = 8,
-- .cols = 8,
-- .keymap = nokia770_keymap
-+ .rows = 8,
-+ .cols = 8,
-+ .keymap = nokia770_keymap,
-+ .keymapsize = ARRAY_SIZE(nokia770_keymap),
-+ .delay = 4,
- };
-
- static struct platform_device nokia770_kp_device = {
-@@ -94,6 +101,41 @@
- &nokia770_kp_device,
- };
-
-+static void mipid_shutdown(struct mipid_platform_data *pdata)
-+{
-+ if (pdata->nreset_gpio != -1) {
-+ printk(KERN_INFO "shutdown LCD\n");
-+ omap_set_gpio_dataout(pdata->nreset_gpio, 0);
-+ msleep(120);
-+ }
-+}
-+
-+static struct mipid_platform_data nokia770_mipid_platform_data = {
-+ .shutdown = mipid_shutdown,
-+};
-+
-+static void mipid_dev_init(void)
-+{
-+ const struct omap_lcd_config *conf;
-+
-+ conf = omap_get_config(OMAP_TAG_LCD, struct omap_lcd_config);
-+ if (conf != NULL) {
-+ nokia770_mipid_platform_data.nreset_gpio = conf->nreset_gpio;
-+ nokia770_mipid_platform_data.data_lines = conf->data_lines;
-+ }
-+}
-+
-+static void ads7846_dev_init(void)
-+{
-+ if (omap_request_gpio(ADS7846_PENDOWN_GPIO) < 0)
-+ printk(KERN_ERR "can't get ads7846 pen down GPIO\n");
-+}
-+
-+static int ads7846_get_pendown_state(void)
-+{
-+ return !omap_get_gpio_datain(ADS7846_PENDOWN_GPIO);
-+}
-+
- static struct ads7846_platform_data nokia770_ads7846_platform_data __initdata = {
- .x_max = 0x0fff,
- .y_max = 0x0fff,
-@@ -101,14 +143,17 @@
- .pressure_max = 255,
- .debounce_max = 10,
- .debounce_tol = 3,
-+ .debounce_rep = 1,
-+ .get_pendown_state = ads7846_get_pendown_state,
- };
-
- static struct spi_board_info nokia770_spi_board_info[] __initdata = {
- [0] = {
-- .modalias = "lcd_lph8923",
-+ .modalias = "lcd_mipid",
- .bus_num = 2,
- .chip_select = 3,
- .max_speed_hz = 12000000,
-+ .platform_data = &nokia770_mipid_platform_data,
- },
- [1] = {
- .modalias = "ads7846",
-@@ -189,7 +234,7 @@
- },
- };
-
--static struct omap_board_config_kernel nokia770_config[] = {
-+static struct omap_board_config_kernel nokia770_config[] __initdata = {
- { OMAP_TAG_USB, NULL },
- { OMAP_TAG_MMC, &nokia770_mmc_config },
- };
-@@ -235,7 +280,7 @@
- printk("HP connected\n");
- }
-
--static void codec_delayed_power_down(void *arg)
-+static void codec_delayed_power_down(struct work_struct *work)
- {
- down(&audio_pwr_sem);
- if (audio_pwr_state == -1)
-@@ -326,9 +371,12 @@
- ARRAY_SIZE(nokia770_spi_board_info));
- omap_board_config = nokia770_config;
- omap_board_config_size = ARRAY_SIZE(nokia770_config);
-+ omap_gpio_init();
- omap_serial_init();
- omap_dsp_init();
- hwa742_dev_init();
-+ ads7846_dev_init();
-+ mipid_dev_init();
- }
-
- static void __init omap_nokia770_map_io(void)
-Index: linux-g/arch/arm/mach-omap1/mmu.c
-===================================================================
---- linux-g.orig/arch/arm/mach-omap1/mmu.c 2007-08-13 13:54:01.000000000 +0200
-+++ linux-g/arch/arm/mach-omap1/mmu.c 2007-08-13 16:23:15.000000000 +0200
-@@ -29,6 +29,7 @@
- #include <linux/kernel.h>
- #include <linux/mm.h>
- #include <linux/err.h>
-+#include <linux/delay.h>
- #include "mmu.h"
- #include <asm/tlbflush.h>
-
-Index: linux-g/drivers/cbus/tahvo-usb.c
-===================================================================
---- linux-g.orig/drivers/cbus/tahvo-usb.c 2006-11-08 13:18:51.000000000 +0100
-+++ linux-g/drivers/cbus/tahvo-usb.c 2007-08-13 16:23:15.000000000 +0200
-@@ -135,8 +135,8 @@
- if ((!(OTG_CTRL_REG & OTG_DRIVER_SEL)) &&
- tu->otg.host && tu->otg.state == OTG_STATE_A_HOST) {
- /* role is host */
-- usb_bus_start_enum(tu->otg.host,
-- tu->otg.host->otg_port);
-+ //usb_bus_start_enum(tu->otg.host,
-+ // tu->otg.host->otg_port);
- }
- OTG_IRQ_SRC_REG = DRIVER_SWITCH;
- } else
-Index: linux-g/drivers/i2c/chips/isp1301_omap.c
-===================================================================
---- linux-g.orig/drivers/i2c/chips/isp1301_omap.c 2006-11-08 13:18:51.000000000 +0100
-+++ linux-g/drivers/i2c/chips/isp1301_omap.c 2007-08-13 16:23:15.000000000 +0200
-@@ -32,6 +32,7 @@
- #include <linux/usb_gadget.h>
- #include <linux/usb.h>
- #include <linux/usb_otg.h>
-+#include <linux/usb/otg.h>
- #include <linux/i2c.h>
- #include <linux/workqueue.h>
-
-Index: linux-g/drivers/mtd/mtdchar.c
-===================================================================
---- linux-g.orig/drivers/mtd/mtdchar.c 2006-11-08 13:18:55.000000000 +0100
-+++ linux-g/drivers/mtd/mtdchar.c 2007-08-13 16:23:15.000000000 +0200
-@@ -622,6 +622,12 @@
- break;
- }
-
-+ case MEMSETOOBSEL:
-+ {
-+ break;
-+ }
-+
-+
- case MEMGETBADBLOCK:
- {
- loff_t offs;
-Index: linux-g/drivers/mtd/mtdpart.c
-===================================================================
---- linux-g.orig/drivers/mtd/mtdpart.c 2006-11-08 13:18:55.000000000 +0100
-+++ linux-g/drivers/mtd/mtdpart.c 2007-08-13 16:23:15.000000000 +0200
-@@ -200,6 +200,11 @@
- return -EINVAL;
- instr->addr += part->offset;
- ret = part->master->erase(part->master, instr);
-+ if (ret) {
-+ if (instr->fail_addr != 0xffffffff)
-+ instr->fail_addr -= part->offset;
-+ instr->addr -= part->offset;
-+ }
- return ret;
- }
-
-Index: linux-g/drivers/mtd/nand/omap-hw.c
-===================================================================
---- linux-g.orig/drivers/mtd/nand/omap-hw.c 2006-11-08 13:18:55.000000000 +0100
-+++ linux-g/drivers/mtd/nand/omap-hw.c 2007-08-13 16:23:15.000000000 +0200
-@@ -386,11 +386,6 @@
- return nand_read_reg8(NND_ACCESS);
- }
-
--static void omap_nand_write_byte(struct mtd_info *mtd, u_char byte)
--{
-- nand_write_reg8(NND_ACCESS, byte);
--}
--
- static int omap_nand_dev_ready(struct mtd_info *mtd)
- {
- u32 l;
-@@ -425,9 +420,9 @@
- if (command == NAND_CMD_SEQIN) {
- int readcmd;
-
-- if (column >= mtd->oobblock) {
-+ if (column >= mtd->writesize) {
- /* OOB area */
-- column -= mtd->oobblock;
-+ column -= mtd->writesize;
- readcmd = NAND_CMD_READOOB;
- } else if (column < 256) {
- /* First 256 bytes --> READ0 */
-@@ -458,7 +453,7 @@
- struct nand_chip *this = mtd->priv;
-
- if (command == NAND_CMD_READOOB) {
-- column += mtd->oobblock;
-+ column += mtd->writesize;
- command = NAND_CMD_READ0;
- }
- switch (command) {
-@@ -495,7 +490,8 @@
- int n;
- struct nand_chip *this = mtd->priv;
-
-- if (this->eccmode == NAND_ECC_HW12_2048)
-+ /* Ex NAND_ECC_HW12_2048 */
-+ if ((this->ecc.mode == NAND_ECC_HW) && (this->ecc.size == 2048))
- n = 4;
- else
- n = 1;
-@@ -642,7 +638,8 @@
- int block_count = 0, i, r;
-
- this = mtd->priv;
-- if (this->eccmode == NAND_ECC_HW12_2048)
-+ /* Ex NAND_ECC_HW12_2048 */
-+ if ((this->ecc.mode == NAND_ECC_HW) && (this->ecc.size == 2048))
- block_count = 4;
- else
- block_count = 1;
-@@ -672,12 +669,12 @@
- {
- static const char *part_parsers[] = { "cmdlinepart", NULL };
- struct mtd_partition *parts;
-- const struct omap_flash_part_config *cfg;
-+ const struct omap_flash_part_str_config *cfg;
- char *part_str = NULL;
- size_t part_str_len;
- int c;
-
-- cfg = omap_get_var_config(OMAP_TAG_FLASH_PART, &part_str_len);
-+ cfg = omap_get_var_config(OMAP_TAG_FLASH_PART_STR, &part_str_len);
- if (cfg != NULL) {
- part_str = kmalloc(part_str_len + 1, GFP_KERNEL);
- if (part_str == NULL)
-@@ -794,19 +791,20 @@
-
- /* Used from chip select and nand_command() */
- this->read_byte = omap_nand_read_byte;
-- this->write_byte = omap_nand_write_byte;
-
-- this->select_chip = omap_nand_select_chip;
-- this->dev_ready = omap_nand_dev_ready;
-- this->chip_delay = 0;
-- this->eccmode = NAND_ECC_HW3_512;
-- this->cmdfunc = omap_nand_command;
-- this->write_buf = omap_nand_write_buf;
-- this->read_buf = omap_nand_read_buf;
-- this->verify_buf = omap_nand_verify_buf;
-- this->calculate_ecc = omap_nand_calculate_ecc;
-- this->correct_data = omap_nand_correct_data;
-- this->enable_hwecc = omap_nand_enable_hwecc;
-+ this->select_chip = omap_nand_select_chip;
-+ this->dev_ready = omap_nand_dev_ready;
-+ this->chip_delay = 0;
-+ this->ecc.mode = NAND_ECC_HW;
-+ this->ecc.bytes = 3;
-+ this->ecc.size = 512;
-+ this->cmdfunc = omap_nand_command;
-+ this->write_buf = omap_nand_write_buf;
-+ this->read_buf = omap_nand_read_buf;
-+ this->verify_buf = omap_nand_verify_buf;
-+ this->ecc.calculate = omap_nand_calculate_ecc;
-+ this->ecc.correct = omap_nand_correct_data;
-+ this->ecc.hwctl = omap_nand_enable_hwecc;
-
- nand_write_reg(NND_SYSCFG, 0x1); /* Enable auto idle */
- nand_write_reg(NND_PSC_CLK, 10);
-@@ -822,11 +820,10 @@
- l = nand_read_reg(NND_CTRL);
- l |= 1 << 4; /* Set the A8 bit in CTRL reg */
- nand_write_reg(NND_CTRL, l);
-- this->eccmode = NAND_ECC_HW12_2048;
-- this->eccsteps = 1;
-- this->eccsize = 2048;
-- this->eccbytes = 12;
-- omap_mtd->eccsize = 2048;
-+ this->ecc.mode = NAND_ECC_HW;
-+ this->ecc.steps = 1;
-+ this->ecc.size = 2048;
-+ this->ecc.bytes = 12;
- nand_write_reg(NND_ECC_SELECT, 6);
- }
-
-Index: linux-g/drivers/serial/8250.c
-===================================================================
---- linux-g.orig/drivers/serial/8250.c 2006-11-08 13:18:59.000000000 +0100
-+++ linux-g/drivers/serial/8250.c 2007-08-13 16:23:15.000000000 +0200
-@@ -44,6 +44,8 @@
- #include <asm/io.h>
- #include <asm/irq.h>
-
-+#include <asm/arch/serial.h>
-+
- #include "8250.h"
-
- /*
-Index: linux-g/drivers/video/omap/omapfb_main.c
-===================================================================
---- linux-g.orig/drivers/video/omap/omapfb_main.c 2007-08-13 13:54:01.000000000 +0200
-+++ linux-g/drivers/video/omap/omapfb_main.c 2007-08-13 16:23:15.000000000 +0200
-@@ -110,7 +110,7 @@
-
- #ifdef CONFIG_FB_OMAP_LCDC_EXTERNAL
- #ifdef CONFIG_ARCH_OMAP1
--extern struct lcd_ctrl_extif omap1_ext_if;
-+extern struct lcd_ctrl_extif sossi_extif;
- #else
- extern struct lcd_ctrl_extif omap2_ext_if;
- #endif
-@@ -1658,7 +1658,7 @@
- #ifdef CONFIG_ARCH_OMAP1
- fbdev->int_ctrl = &omap1_int_ctrl;
- #ifdef CONFIG_FB_OMAP_LCDC_EXTERNAL
-- fbdev->ext_if = &omap1_ext_if;
-+ fbdev->ext_if = &sossi_extif;
- #endif
- #else /* OMAP2 */
- fbdev->int_ctrl = &omap2_int_ctrl;
-Index: linux-g/include/asm-arm/arch-omap/keypad.h
-===================================================================
---- linux-g.orig/include/asm-arm/arch-omap/keypad.h 2006-11-08 13:19:11.000000000 +0100
-+++ linux-g/include/asm-arm/arch-omap/keypad.h 2007-08-13 16:23:15.000000000 +0200
-@@ -14,7 +14,10 @@
- int rows;
- int cols;
- int *keymap;
-+ unsigned int keymapsize;
- unsigned int rep:1;
-+ unsigned long delay;
-+ unsigned int dbounce:1;
- /* specific to OMAP242x*/
- unsigned int *row_gpios;
- unsigned int *col_gpios;
-Index: linux-g/include/asm-arm/arch-omap/serial.h
-===================================================================
---- linux-g.orig/include/asm-arm/arch-omap/serial.h 2007-08-13 13:54:01.000000000 +0200
-+++ linux-g/include/asm-arm/arch-omap/serial.h 2007-08-13 16:23:15.000000000 +0200
-@@ -26,4 +26,20 @@
- #define OMAP1510_BASE_BAUD (12000000/16)
- #define OMAP16XX_BASE_BAUD (48000000/16)
-
-+#define is_omap_port(p) ({int __ret = 0; \
-+ if (p == IO_ADDRESS(OMAP_UART1_BASE) || \
-+ p == IO_ADDRESS(OMAP_UART2_BASE) || \
-+ p == IO_ADDRESS(OMAP_UART3_BASE)) \
-+ __ret = 1; \
-+ __ret; \
-+ })
-+
-+#define is_omap_port(p) ({int __ret = 0; \
-+ if (p == IO_ADDRESS(OMAP_UART1_BASE) || \
-+ p == IO_ADDRESS(OMAP_UART2_BASE) || \
-+ p == IO_ADDRESS(OMAP_UART3_BASE)) \
-+ __ret = 1; \
-+ __ret; \
-+ })
-+
- #endif
diff --git a/meta-extras/packages/linux/linux-nokia800-2.6.18-osso40/nokia800/defconfig b/meta-extras/packages/linux/linux-nokia800-2.6.18-osso40/nokia800/defconfig
deleted file mode 100644
index 55485e25b..000000000
--- a/meta-extras/packages/linux/linux-nokia800-2.6.18-osso40/nokia800/defconfig
+++ /dev/null
@@ -1,1312 +0,0 @@
-#
-# Automatically generated make config: don't edit
-# Linux kernel version: 2.6.18-omap1
-# Wed May 23 16:23:22 2007
-#
-CONFIG_ARM=y
-CONFIG_MMU=y
-CONFIG_GENERIC_HARDIRQS=y
-CONFIG_HARDIRQS_SW_RESEND=y
-CONFIG_GENERIC_IRQ_PROBE=y
-CONFIG_RWSEM_GENERIC_SPINLOCK=y
-CONFIG_GENERIC_HWEIGHT=y
-CONFIG_GENERIC_CALIBRATE_DELAY=y
-CONFIG_VECTORS_BASE=0xffff0000
-CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
-
-#
-# Code maturity level options
-#
-CONFIG_EXPERIMENTAL=y
-CONFIG_BROKEN_ON_SMP=y
-CONFIG_INIT_ENV_ARG_LIMIT=32
-
-#
-# General setup
-#
-CONFIG_LOCALVERSION=""
-# CONFIG_LOCALVERSION_AUTO is not set
-CONFIG_SWAP=y
-CONFIG_SYSVIPC=y
-CONFIG_POSIX_MQUEUE=y
-# CONFIG_BSD_PROCESS_ACCT is not set
-# CONFIG_TASKSTATS is not set
-# CONFIG_AUDIT is not set
-# CONFIG_IKCONFIG is not set
-# CONFIG_RELAY is not set
-CONFIG_INITRAMFS_SOURCE=""
-CONFIG_CC_OPTIMIZE_FOR_SIZE=y
-# CONFIG_EMBEDDED is not set
-CONFIG_UID16=y
-CONFIG_SYSCTL=y
-CONFIG_KALLSYMS=y
-# CONFIG_KALLSYMS_ALL is not set
-# CONFIG_KALLSYMS_EXTRA_PASS is not set
-CONFIG_HOTPLUG=y
-CONFIG_PRINTK=y
-CONFIG_BUG=y
-CONFIG_ELF_CORE=y
-CONFIG_BASE_FULL=y
-CONFIG_FUTEX=y
-CONFIG_EPOLL=y
-CONFIG_SHMEM=y
-CONFIG_SLAB=y
-CONFIG_VM_EVENT_COUNTERS=y
-CONFIG_RT_MUTEXES=y
-# CONFIG_TINY_SHMEM is not set
-CONFIG_BASE_SMALL=0
-# CONFIG_SLOB is not set
-
-#
-# Loadable module support
-#
-CONFIG_MODULES=y
-CONFIG_MODULE_UNLOAD=y
-# CONFIG_MODULE_FORCE_UNLOAD is not set
-# CONFIG_MODVERSIONS is not set
-# CONFIG_MODULE_SRCVERSION_ALL is not set
-# CONFIG_KMOD is not set
-
-#
-# Block layer
-#
-# CONFIG_BLK_DEV_IO_TRACE is not set
-
-#
-# IO Schedulers
-#
-CONFIG_IOSCHED_NOOP=y
-# CONFIG_IOSCHED_AS is not set
-# CONFIG_IOSCHED_DEADLINE is not set
-# CONFIG_IOSCHED_CFQ is not set
-# CONFIG_DEFAULT_AS is not set
-# CONFIG_DEFAULT_DEADLINE is not set
-# CONFIG_DEFAULT_CFQ is not set
-CONFIG_DEFAULT_NOOP=y
-CONFIG_DEFAULT_IOSCHED="noop"
-
-#
-# System Type
-#
-# CONFIG_ARCH_AAEC2000 is not set
-# CONFIG_ARCH_INTEGRATOR is not set
-# CONFIG_ARCH_REALVIEW is not set
-# CONFIG_ARCH_VERSATILE is not set
-# CONFIG_ARCH_AT91 is not set
-# CONFIG_ARCH_CLPS7500 is not set
-# CONFIG_ARCH_CLPS711X is not set
-# CONFIG_ARCH_CO285 is not set
-# CONFIG_ARCH_EBSA110 is not set
-# CONFIG_ARCH_EP93XX is not set
-# CONFIG_ARCH_FOOTBRIDGE is not set
-# CONFIG_ARCH_NETX is not set
-# CONFIG_ARCH_H720X is not set
-# CONFIG_ARCH_IMX is not set
-# CONFIG_ARCH_IOP3XX is not set
-# CONFIG_ARCH_IXP4XX is not set
-# CONFIG_ARCH_IXP2000 is not set
-# CONFIG_ARCH_IXP23XX is not set
-# CONFIG_ARCH_L7200 is not set
-# CONFIG_ARCH_PNX4008 is not set
-# CONFIG_ARCH_PXA is not set
-# CONFIG_ARCH_RPC is not set
-# CONFIG_ARCH_SA1100 is not set
-# CONFIG_ARCH_S3C2410 is not set
-# CONFIG_ARCH_SHARK is not set
-# CONFIG_ARCH_LH7A40X is not set
-CONFIG_ARCH_OMAP=y
-
-#
-# TI OMAP Implementations
-#
-# CONFIG_ARCH_OMAP1 is not set
-CONFIG_ARCH_OMAP2=y
-
-#
-# OMAP Feature Selections
-#
-CONFIG_OMAP_RESET_CLOCKS=y
-CONFIG_OMAP_BOOT_TAG=y
-CONFIG_OMAP_BOOT_REASON=y
-CONFIG_OMAP_COMPONENT_VERSION=y
-CONFIG_OMAP_GPIO_SWITCH=y
-# CONFIG_OMAP_MUX is not set
-CONFIG_OMAP_STI=y
-CONFIG_OMAP_STI_CONSOLE=y
-# CONFIG_OMAP_MCBSP is not set
-# CONFIG_OMAP_MPU_TIMER is not set
-CONFIG_OMAP_32K_TIMER=y
-CONFIG_OMAP_32K_TIMER_HZ=128
-CONFIG_OMAP_DM_TIMER=y
-# CONFIG_OMAP_LL_DEBUG_UART1 is not set
-# CONFIG_OMAP_LL_DEBUG_UART2 is not set
-CONFIG_OMAP_LL_DEBUG_UART3=y
-CONFIG_OMAP_DSP=y
-# CONFIG_OMAP_DSP_MBCMD_VERBOSE is not set
-CONFIG_OMAP_DSP_TASK_MULTIOPEN=y
-CONFIG_OMAP_DSP_FBEXPORT=y
-CONFIG_MACH_OMAP_GENERIC=y
-
-#
-# OMAP Core Type
-#
-CONFIG_ARCH_OMAP24XX=y
-CONFIG_ARCH_OMAP2420=y
-
-#
-# OMAP Board Type
-#
-CONFIG_MACH_NOKIA_N800=y
-CONFIG_MACH_OMAP2_TUSB6010=y
-# CONFIG_MACH_OMAP_H4 is not set
-# CONFIG_MACH_OMAP_APOLLON is not set
-
-#
-# Processor Type
-#
-CONFIG_CPU_32=y
-CONFIG_CPU_V6=y
-# CONFIG_CPU_32v6K is not set
-CONFIG_CPU_32v6=y
-CONFIG_CPU_ABRT_EV6=y
-CONFIG_CPU_CACHE_V6=y
-CONFIG_CPU_CACHE_VIPT=y
-CONFIG_CPU_COPY_V6=y
-CONFIG_CPU_TLB_V6=y
-
-#
-# Processor Features
-#
-CONFIG_ARM_THUMB=y
-# CONFIG_CPU_ICACHE_DISABLE is not set
-# CONFIG_CPU_DCACHE_DISABLE is not set
-# CONFIG_CPU_DCACHE_WRITETHROUGH is not set
-# CONFIG_CPU_BPREDICT_DISABLE is not set
-
-#
-# Bus support
-#
-
-#
-# PCCARD (PCMCIA/CardBus) support
-#
-# CONFIG_PCCARD is not set
-
-#
-# Kernel Features
-#
-# CONFIG_PREEMPT is not set
-CONFIG_NO_IDLE_HZ=y
-CONFIG_HZ=128
-CONFIG_AEABI=y
-CONFIG_OABI_COMPAT=y
-# CONFIG_ARCH_DISCONTIGMEM_ENABLE is not set
-CONFIG_SELECT_MEMORY_MODEL=y
-CONFIG_FLATMEM_MANUAL=y
-# CONFIG_DISCONTIGMEM_MANUAL is not set
-# CONFIG_SPARSEMEM_MANUAL is not set
-CONFIG_FLATMEM=y
-CONFIG_FLAT_NODE_MEM_MAP=y
-# CONFIG_SPARSEMEM_STATIC is not set
-CONFIG_SPLIT_PTLOCK_CPUS=4
-# CONFIG_RESOURCES_64BIT is not set
-CONFIG_LEDS=y
-# CONFIG_LEDS_TIMER is not set
-# CONFIG_LEDS_CPU is not set
-CONFIG_ALIGNMENT_TRAP=y
-
-#
-# Boot options
-#
-CONFIG_ZBOOT_ROM_TEXT=0x10C08000
-CONFIG_ZBOOT_ROM_BSS=0x10200000
-# CONFIG_ZBOOT_ROM is not set
-CONFIG_CMDLINE="root=1f03 rootfstype=jffs2"
-# CONFIG_XIP_KERNEL is not set
-
-#
-# CPU Frequency scaling
-#
-# CONFIG_CPU_FREQ is not set
-
-#
-# Floating point emulation
-#
-
-#
-# At least one emulation must be selected
-#
-CONFIG_FPE_NWFPE=y
-# CONFIG_FPE_NWFPE_XP is not set
-# CONFIG_FPE_FASTFPE is not set
-CONFIG_VFP=y
-
-#
-# Userspace binary formats
-#
-CONFIG_BINFMT_ELF=y
-# CONFIG_BINFMT_AOUT is not set
-# CONFIG_BINFMT_MISC is not set
-
-#
-# Power management options
-#
-CONFIG_PM=y
-# CONFIG_PM_LEGACY is not set
-# CONFIG_PM_DEBUG is not set
-# CONFIG_APM is not set
-
-#
-# Networking
-#
-CONFIG_NET=y
-
-#
-# Networking options
-#
-# CONFIG_NETDEBUG is not set
-CONFIG_PACKET=y
-# CONFIG_PACKET_MMAP is not set
-CONFIG_UNIX=y
-# CONFIG_NET_KEY is not set
-CONFIG_INET=y
-CONFIG_IP_MULTICAST=y
-# CONFIG_IP_ADVANCED_ROUTER is not set
-CONFIG_IP_FIB_HASH=y
-# CONFIG_IP_PNP is not set
-# CONFIG_NET_IPIP is not set
-# CONFIG_NET_IPGRE is not set
-# CONFIG_IP_MROUTE is not set
-# CONFIG_ARPD is not set
-# CONFIG_SYN_COOKIES is not set
-# CONFIG_INET_AH is not set
-# CONFIG_INET_ESP is not set
-# CONFIG_INET_IPCOMP is not set
-# CONFIG_INET_XFRM_TUNNEL is not set
-# CONFIG_INET_TUNNEL is not set
-# CONFIG_INET_XFRM_MODE_TRANSPORT is not set
-# CONFIG_INET_XFRM_MODE_TUNNEL is not set
-CONFIG_INET_DIAG=y
-CONFIG_INET_TCP_DIAG=y
-# CONFIG_TCP_CONG_ADVANCED is not set
-CONFIG_TCP_CONG_BIC=y
-
-#
-# IP: Virtual Server Configuration
-#
-# CONFIG_IP_VS is not set
-# CONFIG_IPV6 is not set
-# CONFIG_INET6_XFRM_TUNNEL is not set
-# CONFIG_INET6_TUNNEL is not set
-# CONFIG_NETWORK_SECMARK is not set
-CONFIG_NETFILTER=y
-# CONFIG_NETFILTER_DEBUG is not set
-
-#
-# Core Netfilter Configuration
-#
-CONFIG_NETFILTER_NETLINK=y
-# CONFIG_NETFILTER_NETLINK_QUEUE is not set
-# CONFIG_NETFILTER_NETLINK_LOG is not set
-# CONFIG_NF_CONNTRACK is not set
-CONFIG_NETFILTER_XTABLES=y
-# CONFIG_NETFILTER_XT_TARGET_CLASSIFY is not set
-# CONFIG_NETFILTER_XT_TARGET_MARK is not set
-# CONFIG_NETFILTER_XT_TARGET_NFQUEUE is not set
-# CONFIG_NETFILTER_XT_MATCH_COMMENT is not set
-# CONFIG_NETFILTER_XT_MATCH_DCCP is not set
-# CONFIG_NETFILTER_XT_MATCH_ESP is not set
-# CONFIG_NETFILTER_XT_MATCH_LENGTH is not set
-# CONFIG_NETFILTER_XT_MATCH_LIMIT is not set
-# CONFIG_NETFILTER_XT_MATCH_MAC is not set
-# CONFIG_NETFILTER_XT_MATCH_MARK is not set
-# CONFIG_NETFILTER_XT_MATCH_MULTIPORT is not set
-# CONFIG_NETFILTER_XT_MATCH_PKTTYPE is not set
-# CONFIG_NETFILTER_XT_MATCH_QUOTA is not set
-# CONFIG_NETFILTER_XT_MATCH_REALM is not set
-# CONFIG_NETFILTER_XT_MATCH_SCTP is not set
-# CONFIG_NETFILTER_XT_MATCH_STATISTIC is not set
-# CONFIG_NETFILTER_XT_MATCH_STRING is not set
-# CONFIG_NETFILTER_XT_MATCH_TCPMSS is not set
-
-#
-# IP: Netfilter Configuration
-#
-# CONFIG_IP_NF_CONNTRACK is not set
-# CONFIG_IP_NF_QUEUE is not set
-CONFIG_IP_NF_IPTABLES=y
-# CONFIG_IP_NF_MATCH_IPRANGE is not set
-# CONFIG_IP_NF_MATCH_TOS is not set
-# CONFIG_IP_NF_MATCH_RECENT is not set
-# CONFIG_IP_NF_MATCH_ECN is not set
-# CONFIG_IP_NF_MATCH_DSCP is not set
-# CONFIG_IP_NF_MATCH_AH is not set
-# CONFIG_IP_NF_MATCH_TTL is not set
-# CONFIG_IP_NF_MATCH_OWNER is not set
-# CONFIG_IP_NF_MATCH_ADDRTYPE is not set
-# CONFIG_IP_NF_MATCH_HASHLIMIT is not set
-CONFIG_IP_NF_FILTER=y
-# CONFIG_IP_NF_TARGET_REJECT is not set
-# CONFIG_IP_NF_TARGET_LOG is not set
-# CONFIG_IP_NF_TARGET_ULOG is not set
-# CONFIG_IP_NF_TARGET_TCPMSS is not set
-CONFIG_IP_NF_TARGET_IDLETIMER=y
-# CONFIG_IP_NF_MANGLE is not set
-# CONFIG_IP_NF_RAW is not set
-# CONFIG_IP_NF_ARPTABLES is not set
-
-#
-# DCCP Configuration (EXPERIMENTAL)
-#
-# CONFIG_IP_DCCP is not set
-
-#
-# SCTP Configuration (EXPERIMENTAL)
-#
-# CONFIG_IP_SCTP is not set
-
-#
-# TIPC Configuration (EXPERIMENTAL)
-#
-# CONFIG_TIPC is not set
-# CONFIG_ATM is not set
-# CONFIG_BRIDGE is not set
-# CONFIG_VLAN_8021Q is not set
-# CONFIG_DECNET is not set
-# CONFIG_LLC2 is not set
-# CONFIG_IPX is not set
-# CONFIG_ATALK is not set
-# CONFIG_X25 is not set
-# CONFIG_LAPB is not set
-# CONFIG_ECONET is not set
-# CONFIG_WAN_ROUTER is not set
-
-#
-# QoS and/or fair queueing
-#
-# CONFIG_NET_SCHED is not set
-
-#
-# Network testing
-#
-# CONFIG_NET_PKTGEN is not set
-# CONFIG_HAMRADIO is not set
-# CONFIG_IRDA is not set
-CONFIG_BT=y
-CONFIG_BT_L2CAP=y
-CONFIG_BT_SCO=y
-CONFIG_BT_RFCOMM=y
-CONFIG_BT_RFCOMM_TTY=y
-CONFIG_BT_BNEP=y
-# CONFIG_BT_BNEP_MC_FILTER is not set
-# CONFIG_BT_BNEP_PROTO_FILTER is not set
-CONFIG_BT_HIDP=y
-
-#
-# Bluetooth device drivers
-#
-# CONFIG_BT_HCIUART is not set
-# CONFIG_BT_HCIBRF6150 is not set
-CONFIG_BT_HCIH4P=y
-# CONFIG_BT_HCIVHCI is not set
-# CONFIG_IEEE80211 is not set
-CONFIG_WIRELESS_EXT=y
-
-#
-# Device Drivers
-#
-
-#
-# Generic Driver Options
-#
-CONFIG_STANDALONE=y
-CONFIG_PREVENT_FIRMWARE_BUILD=y
-CONFIG_FW_LOADER=y
-# CONFIG_DEBUG_DRIVER is not set
-# CONFIG_SYS_HYPERVISOR is not set
-
-#
-# Connector - unified userspace <-> kernelspace linker
-#
-# CONFIG_CONNECTOR is not set
-
-#
-# Memory Technology Devices (MTD)
-#
-CONFIG_MTD=y
-# CONFIG_MTD_DEBUG is not set
-# CONFIG_MTD_CONCAT is not set
-CONFIG_MTD_PARTITIONS=y
-# CONFIG_MTD_REDBOOT_PARTS is not set
-CONFIG_MTD_CMDLINE_PARTS=y
-# CONFIG_MTD_AFS_PARTS is not set
-
-#
-# User Modules And Translation Layers
-#
-CONFIG_MTD_CHAR=y
-CONFIG_MTD_BLOCK=y
-# CONFIG_FTL is not set
-# CONFIG_NFTL is not set
-# CONFIG_INFTL is not set
-# CONFIG_RFD_FTL is not set
-
-#
-# RAM/ROM/Flash chip drivers
-#
-# CONFIG_MTD_CFI is not set
-# CONFIG_MTD_JEDECPROBE is not set
-CONFIG_MTD_MAP_BANK_WIDTH_1=y
-CONFIG_MTD_MAP_BANK_WIDTH_2=y
-CONFIG_MTD_MAP_BANK_WIDTH_4=y
-# CONFIG_MTD_MAP_BANK_WIDTH_8 is not set
-# CONFIG_MTD_MAP_BANK_WIDTH_16 is not set
-# CONFIG_MTD_MAP_BANK_WIDTH_32 is not set
-CONFIG_MTD_CFI_I1=y
-CONFIG_MTD_CFI_I2=y
-# CONFIG_MTD_CFI_I4 is not set
-# CONFIG_MTD_CFI_I8 is not set
-# CONFIG_MTD_RAM is not set
-# CONFIG_MTD_ROM is not set
-# CONFIG_MTD_ABSENT is not set
-# CONFIG_MTD_OBSOLETE_CHIPS is not set
-
-#
-# Mapping drivers for chip access
-#
-# CONFIG_MTD_COMPLEX_MAPPINGS is not set
-# CONFIG_MTD_PLATRAM is not set
-
-#
-# Self-contained MTD device drivers
-#
-# CONFIG_MTD_DATAFLASH is not set
-# CONFIG_MTD_M25P80 is not set
-# CONFIG_MTD_SLRAM is not set
-# CONFIG_MTD_PHRAM is not set
-# CONFIG_MTD_MTDRAM is not set
-# CONFIG_MTD_BLOCK2MTD is not set
-
-#
-# Disk-On-Chip Device Drivers
-#
-# CONFIG_MTD_DOC2000 is not set
-# CONFIG_MTD_DOC2001 is not set
-# CONFIG_MTD_DOC2001PLUS is not set
-
-#
-# NAND Flash Device Drivers
-#
-# CONFIG_MTD_NAND is not set
-
-#
-# OneNAND Flash Device Drivers
-#
-CONFIG_MTD_ONENAND=y
-# CONFIG_MTD_ONENAND_VERIFY_WRITE is not set
-# CONFIG_MTD_ONENAND_GENERIC is not set
-CONFIG_MTD_ONENAND_OMAP2=y
-CONFIG_MTD_ONENAND_OTP=y
-
-#
-# Parallel port support
-#
-# CONFIG_PARPORT is not set
-
-#
-# Plug and Play support
-#
-
-#
-# Block devices
-#
-# CONFIG_BLK_DEV_COW_COMMON is not set
-CONFIG_BLK_DEV_LOOP=y
-# CONFIG_BLK_DEV_CRYPTOLOOP is not set
-# CONFIG_BLK_DEV_NBD is not set
-CONFIG_BLK_DEV_RAM=y
-CONFIG_BLK_DEV_RAM_COUNT=16
-CONFIG_BLK_DEV_RAM_SIZE=4096
-CONFIG_BLK_DEV_RAM_BLOCKSIZE=1024
-CONFIG_BLK_DEV_INITRD=y
-# CONFIG_CDROM_PKTCDVD is not set
-# CONFIG_ATA_OVER_ETH is not set
-
-#
-# SCSI device support
-#
-# CONFIG_RAID_ATTRS is not set
-CONFIG_SCSI=y
-# CONFIG_SCSI_PROC_FS is not set
-
-#
-# SCSI support type (disk, tape, CD-ROM)
-#
-CONFIG_BLK_DEV_SD=y
-# CONFIG_CHR_DEV_ST is not set
-# CONFIG_CHR_DEV_OSST is not set
-# CONFIG_BLK_DEV_SR is not set
-# CONFIG_CHR_DEV_SG is not set
-# CONFIG_CHR_DEV_SCH is not set
-
-#
-# Some SCSI devices (e.g. CD jukebox) support multiple LUNs
-#
-# CONFIG_SCSI_MULTI_LUN is not set
-# CONFIG_SCSI_CONSTANTS is not set
-# CONFIG_SCSI_LOGGING is not set
-
-#
-# SCSI Transport Attributes
-#
-# CONFIG_SCSI_SPI_ATTRS is not set
-# CONFIG_SCSI_FC_ATTRS is not set
-# CONFIG_SCSI_ISCSI_ATTRS is not set
-# CONFIG_SCSI_SAS_ATTRS is not set
-
-#
-# SCSI low-level drivers
-#
-# CONFIG_ISCSI_TCP is not set
-# CONFIG_SCSI_SATA is not set
-# CONFIG_SCSI_DEBUG is not set
-
-#
-# Multi-device support (RAID and LVM)
-#
-# CONFIG_MD is not set
-
-#
-# Fusion MPT device support
-#
-# CONFIG_FUSION is not set
-
-#
-# IEEE 1394 (FireWire) support
-#
-
-#
-# I2O device support
-#
-
-#
-# Network device support
-#
-CONFIG_NETDEVICES=y
-# CONFIG_DUMMY is not set
-# CONFIG_BONDING is not set
-# CONFIG_EQUALIZER is not set
-CONFIG_TUN=y
-
-#
-# PHY device support
-#
-
-#
-# Ethernet (10 or 100Mbit)
-#
-# CONFIG_NET_ETHERNET is not set
-
-#
-# Ethernet (1000 Mbit)
-#
-
-#
-# Ethernet (10000 Mbit)
-#
-
-#
-# Token Ring devices
-#
-
-#
-# Wireless LAN (non-hamradio)
-#
-CONFIG_NET_RADIO=y
-# CONFIG_NET_WIRELESS_RTNETLINK is not set
-
-#
-# Obsolete Wireless cards support (pre-802.11)
-#
-# CONFIG_STRIP is not set
-# CONFIG_HOSTAP is not set
-
-#
-# Wan interfaces
-#
-# CONFIG_WAN is not set
-CONFIG_PPP=y
-# CONFIG_PPP_MULTILINK is not set
-CONFIG_PPP_FILTER=y
-CONFIG_PPP_ASYNC=y
-CONFIG_PPP_SYNC_TTY=y
-CONFIG_PPP_DEFLATE=y
-CONFIG_PPP_BSDCOMP=y
-# CONFIG_PPP_MPPE is not set
-# CONFIG_PPPOE is not set
-# CONFIG_SLIP is not set
-# CONFIG_SHAPER is not set
-# CONFIG_NETCONSOLE is not set
-# CONFIG_NETPOLL is not set
-# CONFIG_NET_POLL_CONTROLLER is not set
-
-#
-# ISDN subsystem
-#
-# CONFIG_ISDN is not set
-
-#
-# Input device support
-#
-CONFIG_INPUT=y
-
-#
-# Userland interfaces
-#
-CONFIG_INPUT_MOUSEDEV=y
-# CONFIG_INPUT_MOUSEDEV_PSAUX is not set
-CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024
-CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768
-# CONFIG_INPUT_JOYDEV is not set
-# CONFIG_INPUT_TSDEV is not set
-CONFIG_INPUT_EVDEV=y
-# CONFIG_INPUT_EVBUG is not set
-
-#
-# Input Device Drivers
-#
-CONFIG_INPUT_KEYBOARD=y
-# CONFIG_KEYBOARD_ATKBD is not set
-# CONFIG_KEYBOARD_SUNKBD is not set
-# CONFIG_KEYBOARD_LKKBD is not set
-# CONFIG_KEYBOARD_XTKBD is not set
-# CONFIG_KEYBOARD_NEWTON is not set
-# CONFIG_KEYBOARD_OMAP is not set
-# CONFIG_INPUT_MOUSE is not set
-# CONFIG_INPUT_JOYSTICK is not set
-CONFIG_INPUT_TOUCHSCREEN=y
-# CONFIG_TOUCHSCREEN_ADS7846 is not set
-# CONFIG_TOUCHSCREEN_GUNZE is not set
-# CONFIG_TOUCHSCREEN_ELO is not set
-# CONFIG_TOUCHSCREEN_MTOUCH is not set
-# CONFIG_TOUCHSCREEN_MK712 is not set
-# CONFIG_INPUT_MISC is not set
-
-#
-# Hardware I/O ports
-#
-CONFIG_SERIO=y
-CONFIG_SERIO_SERPORT=y
-# CONFIG_SERIO_RAW is not set
-# CONFIG_GAMEPORT is not set
-
-#
-# Character devices
-#
-CONFIG_VT=y
-CONFIG_VT_CONSOLE=y
-CONFIG_HW_CONSOLE=y
-# CONFIG_VT_HW_CONSOLE_BINDING is not set
-# CONFIG_SERIAL_NONSTANDARD is not set
-
-#
-# Serial drivers
-#
-# CONFIG_SERIAL_8250 is not set
-
-#
-# Non-8250 serial port support
-#
-CONFIG_SERIAL_OMAP=y
-CONFIG_SERIAL_OMAP_CONSOLE=y
-CONFIG_SERIAL_CORE=y
-CONFIG_SERIAL_CORE_CONSOLE=y
-CONFIG_UNIX98_PTYS=y
-# CONFIG_LEGACY_PTYS is not set
-
-#
-# IPMI
-#
-# CONFIG_IPMI_HANDLER is not set
-
-#
-# Watchdog Cards
-#
-CONFIG_WATCHDOG=y
-CONFIG_WATCHDOG_NOWAYOUT=y
-
-#
-# Watchdog Device Drivers
-#
-# CONFIG_SOFT_WATCHDOG is not set
-CONFIG_OMAP_WATCHDOG=y
-# CONFIG_HW_RANDOM is not set
-CONFIG_OMAP_RNG=y
-# CONFIG_NVRAM is not set
-# CONFIG_DTLK is not set
-# CONFIG_R3964 is not set
-
-#
-# Ftape, the floppy tape device driver
-#
-# CONFIG_RAW_DRIVER is not set
-
-#
-# TPM devices
-#
-# CONFIG_TCG_TPM is not set
-# CONFIG_TELCLOCK is not set
-
-#
-# I2C support
-#
-CONFIG_I2C=y
-# CONFIG_I2C_CHARDEV is not set
-
-#
-# I2C Algorithms
-#
-# CONFIG_I2C_ALGOBIT is not set
-# CONFIG_I2C_ALGOPCF is not set
-# CONFIG_I2C_ALGOPCA is not set
-
-#
-# I2C Hardware Bus support
-#
-# CONFIG_I2C_OCORES is not set
-# CONFIG_I2C_PARPORT_LIGHT is not set
-# CONFIG_I2C_STUB is not set
-# CONFIG_I2C_PCA_ISA is not set
-CONFIG_I2C_OMAP=y
-
-#
-# Miscellaneous I2C Chip support
-#
-# CONFIG_SENSORS_DS1337 is not set
-# CONFIG_SENSORS_DS1374 is not set
-# CONFIG_SENSORS_EEPROM is not set
-# CONFIG_SENSORS_PCF8574 is not set
-# CONFIG_SENSORS_PCA9539 is not set
-# CONFIG_SENSORS_PCF8591 is not set
-# CONFIG_TPS65010 is not set
-# CONFIG_SENSORS_TLV320AIC23 is not set
-# CONFIG_GPIOEXPANDER_OMAP is not set
-CONFIG_MENELAUS=y
-# CONFIG_SENSORS_MAX6875 is not set
-# CONFIG_I2C_DEBUG_CORE is not set
-# CONFIG_I2C_DEBUG_ALGO is not set
-# CONFIG_I2C_DEBUG_BUS is not set
-# CONFIG_I2C_DEBUG_CHIP is not set
-
-#
-# SPI support
-#
-CONFIG_SPI=y
-# CONFIG_SPI_DEBUG is not set
-CONFIG_SPI_MASTER=y
-
-#
-# SPI Master Controller Drivers
-#
-# CONFIG_SPI_BITBANG is not set
-# CONFIG_SPI_OMAP_UWIRE is not set
-CONFIG_SPI_OMAP24XX=y
-
-#
-# SPI Protocol Masters
-#
-CONFIG_SPI_TSC2301=y
-CONFIG_SPI_TSC2301_KEYPAD=y
-CONFIG_SPI_TSC2301_TOUCHSCREEN=y
-CONFIG_SPI_TSC2301_AUDIO=y
-
-#
-# Dallas's 1-wire bus
-#
-
-#
-# Hardware Monitoring support
-#
-CONFIG_HWMON=y
-# CONFIG_HWMON_VID is not set
-# CONFIG_SENSORS_ABITUGURU is not set
-# CONFIG_SENSORS_ADM1021 is not set
-# CONFIG_SENSORS_ADM1025 is not set
-# CONFIG_SENSORS_ADM1026 is not set
-# CONFIG_SENSORS_ADM1031 is not set
-# CONFIG_SENSORS_ADM9240 is not set
-# CONFIG_SENSORS_ASB100 is not set
-# CONFIG_SENSORS_ATXP1 is not set
-# CONFIG_SENSORS_DS1621 is not set
-# CONFIG_SENSORS_F71805F is not set
-# CONFIG_SENSORS_FSCHER is not set
-# CONFIG_SENSORS_FSCPOS is not set
-# CONFIG_SENSORS_GL518SM is not set
-# CONFIG_SENSORS_GL520SM is not set
-# CONFIG_SENSORS_IT87 is not set
-# CONFIG_SENSORS_LM63 is not set
-# CONFIG_SENSORS_LM70 is not set
-# CONFIG_SENSORS_LM75 is not set
-# CONFIG_SENSORS_LM77 is not set
-# CONFIG_SENSORS_LM78 is not set
-# CONFIG_SENSORS_LM80 is not set
-# CONFIG_SENSORS_LM83 is not set
-# CONFIG_SENSORS_LM85 is not set
-# CONFIG_SENSORS_LM87 is not set
-# CONFIG_SENSORS_LM90 is not set
-# CONFIG_SENSORS_LM92 is not set
-# CONFIG_SENSORS_MAX1619 is not set
-# CONFIG_SENSORS_PC87360 is not set
-# CONFIG_SENSORS_SMSC47M1 is not set
-# CONFIG_SENSORS_SMSC47M192 is not set
-# CONFIG_SENSORS_SMSC47B397 is not set
-CONFIG_SENSORS_TMP105=y
-# CONFIG_SENSORS_W83781D is not set
-# CONFIG_SENSORS_W83791D is not set
-# CONFIG_SENSORS_W83792D is not set
-# CONFIG_SENSORS_W83L785TS is not set
-# CONFIG_SENSORS_W83627HF is not set
-# CONFIG_SENSORS_W83627EHF is not set
-# CONFIG_HWMON_DEBUG_CHIP is not set
-
-#
-# Misc devices
-#
-
-#
-# LED devices
-#
-CONFIG_NEW_LEDS=y
-CONFIG_LEDS_CLASS=y
-
-#
-# LED drivers
-#
-# CONFIG_LEDS_OMAP is not set
-CONFIG_LEDS_OMAP_PWM=y
-
-#
-# LED Triggers
-#
-CONFIG_LEDS_TRIGGERS=y
-CONFIG_LEDS_TRIGGER_TIMER=y
-CONFIG_LEDS_TRIGGER_HEARTBEAT=y
-
-#
-# Multimedia devices
-#
-CONFIG_VIDEO_DEV=y
-# CONFIG_VIDEO_V4L1 is not set
-# CONFIG_VIDEO_V4L1_COMPAT is not set
-CONFIG_VIDEO_V4L2=y
-
-#
-# Video Capture Adapters
-#
-
-#
-# Video Capture Adapters
-#
-# CONFIG_VIDEO_ADV_DEBUG is not set
-# CONFIG_VIDEO_VIVI is not set
-
-#
-# Encoders and Decoders
-#
-# CONFIG_VIDEO_MSP3400 is not set
-# CONFIG_VIDEO_CS53L32A is not set
-# CONFIG_VIDEO_TLV320AIC23B is not set
-# CONFIG_VIDEO_WM8775 is not set
-# CONFIG_VIDEO_WM8739 is not set
-# CONFIG_VIDEO_CX2341X is not set
-# CONFIG_VIDEO_CX25840 is not set
-# CONFIG_VIDEO_SAA711X is not set
-# CONFIG_VIDEO_SAA7127 is not set
-# CONFIG_VIDEO_UPD64031A is not set
-# CONFIG_VIDEO_UPD64083 is not set
-CONFIG_VIDEO_OMAP_CAMERA=y
-# CONFIG_VIDEO_CAMERA_SENSOR_OV9640 is not set
-CONFIG_VIDEO_CAMERA_SENSOR_TCM825X=y
-
-#
-# Radio Adapters
-#
-CONFIG_RADIO_TEA5761=y
-
-#
-# Digital Video Broadcasting Devices
-#
-# CONFIG_DVB is not set
-CONFIG_VIDEO_BUF=y
-
-#
-# Graphics support
-#
-# CONFIG_FIRMWARE_EDID is not set
-CONFIG_FB=y
-# CONFIG_FB_CFB_FILLRECT is not set
-# CONFIG_FB_CFB_COPYAREA is not set
-# CONFIG_FB_CFB_IMAGEBLIT is not set
-# CONFIG_FB_MACMODES is not set
-# CONFIG_FB_BACKLIGHT is not set
-# CONFIG_FB_MODE_HELPERS is not set
-# CONFIG_FB_TILEBLITTING is not set
-# CONFIG_FB_S1D13XXX is not set
-# CONFIG_FB_VIRTUAL is not set
-CONFIG_FB_OMAP=y
-CONFIG_FB_OMAP_LCDC_EXTERNAL=y
-# CONFIG_FB_OMAP_LCDC_HWA742 is not set
-CONFIG_FB_OMAP_LCDC_BLIZZARD=y
-# CONFIG_FB_OMAP_MANUAL_UPDATE is not set
-CONFIG_FB_OMAP_LCD_MIPID=y
-CONFIG_FB_OMAP_BOOTLOADER_INIT=y
-CONFIG_FB_OMAP_CONSISTENT_DMA_SIZE=4
-
-#
-# Console display driver support
-#
-# CONFIG_VGA_CONSOLE is not set
-CONFIG_DUMMY_CONSOLE=y
-CONFIG_FRAMEBUFFER_CONSOLE=y
-
-#
-# Logo configuration
-#
-# CONFIG_LOGO is not set
-# CONFIG_BACKLIGHT_LCD_SUPPORT is not set
-
-#
-# Sound
-#
-CONFIG_SOUND=y
-
-#
-# Advanced Linux Sound Architecture
-#
-CONFIG_SND=y
-# CONFIG_SND_SEQUENCER is not set
-CONFIG_SND_OSSEMUL=y
-CONFIG_SND_MIXER_OSS=y
-# CONFIG_SND_PCM_OSS is not set
-# CONFIG_SND_DYNAMIC_MINORS is not set
-CONFIG_SND_SUPPORT_OLD_API=y
-# CONFIG_SND_VERBOSE_PROCFS is not set
-# CONFIG_SND_VERBOSE_PRINTK is not set
-# CONFIG_SND_DEBUG is not set
-
-#
-# Generic devices
-#
-# CONFIG_SND_DUMMY is not set
-# CONFIG_SND_MTPAV is not set
-# CONFIG_SND_SERIAL_U16550 is not set
-# CONFIG_SND_MPU401 is not set
-
-#
-# ALSA ARM devices
-#
-# CONFIG_SND_OMAP_AIC23 is not set
-# CONFIG_SND_OMAP_TSC2101 is not set
-CONFIG_SND_OMAP24XX_EAC=y
-
-#
-# Open Sound System
-#
-# CONFIG_SOUND_PRIME is not set
-
-#
-# USB support
-#
-CONFIG_USB_ARCH_HAS_HCD=y
-CONFIG_USB_ARCH_HAS_OHCI=y
-# CONFIG_USB_ARCH_HAS_EHCI is not set
-# CONFIG_USB is not set
-CONFIG_USB_MUSB_HDRC=y
-CONFIG_USB_TUSB6010=y
-CONFIG_USB_TUSB6010_TEST=y
-# CONFIG_USB_MUSB_HOST is not set
-CONFIG_USB_MUSB_PERIPHERAL=y
-# CONFIG_USB_MUSB_OTG is not set
-CONFIG_USB_GADGET_MUSB_HDRC=y
-# CONFIG_USB_INVENTRA_FIFO is not set
-# CONFIG_USB_INVENTRA_DMA is not set
-# CONFIG_USB_TI_CPPI_DMA is not set
-CONFIG_USB_TUSB_OMAP_DMA=y
-CONFIG_USB_INVENTRA_HCD_LOGGING=1
-
-#
-# NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support'
-#
-
-#
-# USB Gadget Support
-#
-CONFIG_USB_GADGET=y
-CONFIG_USB_GADGET_DEBUG_FILES=y
-CONFIG_USB_GADGET_SELECTED=y
-# CONFIG_USB_GADGET_NET2280 is not set
-# CONFIG_USB_GADGET_PXA2XX is not set
-# CONFIG_USB_GADGET_GOKU is not set
-# CONFIG_USB_GADGET_LH7A40X is not set
-# CONFIG_USB_GADGET_OMAP is not set
-# CONFIG_USB_GADGET_AT91 is not set
-# CONFIG_USB_GADGET_DUMMY_HCD is not set
-CONFIG_USB_GADGET_DUALSPEED=y
-# CONFIG_USB_ZERO is not set
-CONFIG_USB_ETH=m
-CONFIG_USB_ETH_RNDIS=y
-# CONFIG_USB_GADGETFS is not set
-CONFIG_USB_FILE_STORAGE=m
-# CONFIG_USB_FILE_STORAGE_TEST is not set
-# CONFIG_USB_G_SERIAL is not set
-
-#
-# MMC/SD Card support
-#
-CONFIG_MMC=y
-# CONFIG_MMC_DEBUG is not set
-CONFIG_MMC_BLOCK=y
-CONFIG_MMC_OMAP=y
-
-#
-# Real Time Clock
-#
-CONFIG_RTC_LIB=y
-# CONFIG_RTC_CLASS is not set
-
-#
-# Synchronous Serial Interfaces (SSI)
-#
-# CONFIG_OMAP_TSC2101 is not set
-
-#
-# CBUS support
-#
-CONFIG_CBUS=y
-CONFIG_CBUS_TAHVO=y
-CONFIG_CBUS_TAHVO_USER=y
-CONFIG_CBUS_RETU=y
-CONFIG_CBUS_RETU_USER=y
-CONFIG_CBUS_RETU_POWERBUTTON=y
-CONFIG_CBUS_RETU_RTC=y
-CONFIG_CBUS_RETU_WDT=y
-CONFIG_CBUS_RETU_HEADSET=y
-
-#
-# File systems
-#
-CONFIG_EXT2_FS=m
-CONFIG_EXT2_FS_XATTR=y
-# CONFIG_EXT2_FS_POSIX_ACL is not set
-# CONFIG_EXT2_FS_SECURITY is not set
-# CONFIG_EXT2_FS_XIP is not set
-CONFIG_EXT3_FS=m
-CONFIG_EXT3_FS_XATTR=y
-# CONFIG_EXT3_FS_POSIX_ACL is not set
-# CONFIG_EXT3_FS_SECURITY is not set
-CONFIG_JBD=m
-# CONFIG_JBD_DEBUG is not set
-CONFIG_FS_MBCACHE=m
-# CONFIG_REISERFS_FS is not set
-# CONFIG_JFS_FS is not set
-# CONFIG_FS_POSIX_ACL is not set
-# CONFIG_XFS_FS is not set
-# CONFIG_OCFS2_FS is not set
-# CONFIG_MINIX_FS is not set
-# CONFIG_ROMFS_FS is not set
-CONFIG_INOTIFY=y
-CONFIG_INOTIFY_USER=y
-# CONFIG_QUOTA is not set
-CONFIG_DNOTIFY=y
-# CONFIG_AUTOFS_FS is not set
-# CONFIG_AUTOFS4_FS is not set
-# CONFIG_FUSE_FS is not set
-
-#
-# CD-ROM/DVD Filesystems
-#
-# CONFIG_ISO9660_FS is not set
-# CONFIG_UDF_FS is not set
-
-#
-# DOS/FAT/NT Filesystems
-#
-CONFIG_FAT_FS=y
-CONFIG_MSDOS_FS=y
-CONFIG_VFAT_FS=y
-CONFIG_FAT_DEFAULT_CODEPAGE=437
-CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1"
-# CONFIG_NTFS_FS is not set
-
-#
-# Pseudo filesystems
-#
-CONFIG_PROC_FS=y
-CONFIG_SYSFS=y
-CONFIG_TMPFS=y
-# CONFIG_HUGETLB_PAGE is not set
-CONFIG_RAMFS=y
-# CONFIG_CONFIGFS_FS is not set
-
-#
-# Miscellaneous filesystems
-#
-# CONFIG_ADFS_FS is not set
-# CONFIG_AFFS_FS is not set
-# CONFIG_HFS_FS is not set
-# CONFIG_HFSPLUS_FS is not set
-# CONFIG_BEFS_FS is not set
-# CONFIG_BFS_FS is not set
-# CONFIG_EFS_FS is not set
-# CONFIG_JFFS_FS is not set
-CONFIG_JFFS2_FS=y
-CONFIG_JFFS2_FS_DEBUG=0
-CONFIG_JFFS2_FS_WRITEBUFFER=y
-CONFIG_JFFS2_SUMMARY=y
-# CONFIG_JFFS2_FS_XATTR is not set
-CONFIG_JFFS2_COMPRESSION_OPTIONS=y
-CONFIG_JFFS2_ZLIB=y
-CONFIG_JFFS2_LZO=y
-CONFIG_JFFS2_RTIME=y
-# CONFIG_JFFS2_RUBIN is not set
-# CONFIG_JFFS2_CMODE_NONE is not set
-CONFIG_JFFS2_CMODE_PRIORITY=y
-# CONFIG_JFFS2_CMODE_SIZE is not set
-# CONFIG_JFFS2_CMODE_FAVOURLZO is not set
-# CONFIG_CRAMFS is not set
-# CONFIG_VXFS_FS is not set
-# CONFIG_HPFS_FS is not set
-# CONFIG_QNX4FS_FS is not set
-# CONFIG_SYSV_FS is not set
-# CONFIG_UFS_FS is not set
-
-#
-# Network File Systems
-#
-# CONFIG_NFS_FS is not set
-# CONFIG_NFSD is not set
-# CONFIG_SMB_FS is not set
-# CONFIG_CIFS is not set
-# CONFIG_NCP_FS is not set
-# CONFIG_CODA_FS is not set
-# CONFIG_AFS_FS is not set
-# CONFIG_9P_FS is not set
-
-#
-# Partition Types
-#
-# CONFIG_PARTITION_ADVANCED is not set
-CONFIG_MSDOS_PARTITION=y
-
-#
-# Native Language Support
-#
-CONFIG_NLS=y
-CONFIG_NLS_DEFAULT="iso8859-1"
-CONFIG_NLS_CODEPAGE_437=y
-# CONFIG_NLS_CODEPAGE_737 is not set
-# CONFIG_NLS_CODEPAGE_775 is not set
-# CONFIG_NLS_CODEPAGE_850 is not set
-# CONFIG_NLS_CODEPAGE_852 is not set
-# CONFIG_NLS_CODEPAGE_855 is not set
-# CONFIG_NLS_CODEPAGE_857 is not set
-# CONFIG_NLS_CODEPAGE_860 is not set
-# CONFIG_NLS_CODEPAGE_861 is not set
-# CONFIG_NLS_CODEPAGE_862 is not set
-# CONFIG_NLS_CODEPAGE_863 is not set
-# CONFIG_NLS_CODEPAGE_864 is not set
-# CONFIG_NLS_CODEPAGE_865 is not set
-# CONFIG_NLS_CODEPAGE_866 is not set
-# CONFIG_NLS_CODEPAGE_869 is not set
-# CONFIG_NLS_CODEPAGE_936 is not set
-# CONFIG_NLS_CODEPAGE_950 is not set
-# CONFIG_NLS_CODEPAGE_932 is not set
-# CONFIG_NLS_CODEPAGE_949 is not set
-# CONFIG_NLS_CODEPAGE_874 is not set
-# CONFIG_NLS_ISO8859_8 is not set
-# CONFIG_NLS_CODEPAGE_1250 is not set
-# CONFIG_NLS_CODEPAGE_1251 is not set
-# CONFIG_NLS_ASCII is not set
-CONFIG_NLS_ISO8859_1=y
-# CONFIG_NLS_ISO8859_2 is not set
-# CONFIG_NLS_ISO8859_3 is not set
-# CONFIG_NLS_ISO8859_4 is not set
-# CONFIG_NLS_ISO8859_5 is not set
-# CONFIG_NLS_ISO8859_6 is not set
-# CONFIG_NLS_ISO8859_7 is not set
-# CONFIG_NLS_ISO8859_9 is not set
-# CONFIG_NLS_ISO8859_13 is not set
-# CONFIG_NLS_ISO8859_14 is not set
-CONFIG_NLS_ISO8859_15=y
-# CONFIG_NLS_KOI8_R is not set
-# CONFIG_NLS_KOI8_U is not set
-CONFIG_NLS_UTF8=y
-
-#
-# Profiling support
-#
-CONFIG_PROFILING=y
-CONFIG_OPROFILE=y
-
-#
-# Kernel hacking
-#
-CONFIG_PRINTK_TIME=y
-CONFIG_MAGIC_SYSRQ=y
-# CONFIG_UNUSED_SYMBOLS is not set
-CONFIG_DEBUG_KERNEL=y
-CONFIG_LOG_BUF_SHIFT=14
-CONFIG_DETECT_SOFTLOCKUP=y
-# CONFIG_SCHEDSTATS is not set
-# CONFIG_DEBUG_SLAB is not set
-# CONFIG_DEBUG_RT_MUTEXES is not set
-# CONFIG_RT_MUTEX_TESTER is not set
-# CONFIG_DEBUG_SPINLOCK is not set
-# CONFIG_DEBUG_MUTEXES is not set
-# CONFIG_DEBUG_RWSEMS is not set
-# CONFIG_DEBUG_SPINLOCK_SLEEP is not set
-# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set
-# CONFIG_DEBUG_KOBJECT is not set
-CONFIG_DEBUG_BUGVERBOSE=y
-# CONFIG_DEBUG_INFO is not set
-# CONFIG_DEBUG_FS is not set
-# CONFIG_DEBUG_VM is not set
-CONFIG_FRAME_POINTER=y
-# CONFIG_UNWIND_INFO is not set
-CONFIG_FORCED_INLINING=y
-# CONFIG_RCU_TORTURE_TEST is not set
-CONFIG_DEBUG_USER=y
-# CONFIG_DEBUG_WAITQ is not set
-CONFIG_DEBUG_ERRORS=y
-# CONFIG_DEBUG_LL is not set
-
-#
-# Security options
-#
-# CONFIG_KEYS is not set
-CONFIG_SECURITY=y
-# CONFIG_SECURITY_NETWORK is not set
-# CONFIG_SECURITY_CAPABILITIES is not set
-# CONFIG_SECURITY_SECLVL is not set
-CONFIG_SECURITY_LOWMEM=y
-
-#
-# Cryptographic options
-#
-# CONFIG_CRYPTO is not set
-
-#
-# Hardware crypto devices
-#
-
-#
-# Library routines
-#
-CONFIG_CRC_CCITT=y
-# CONFIG_CRC16 is not set
-CONFIG_CRC32=y
-# CONFIG_LIBCRC32C is not set
-CONFIG_LZO=y
-CONFIG_ZLIB_INFLATE=y
-CONFIG_ZLIB_DEFLATE=y
-CONFIG_PLIST=y
diff --git a/meta-extras/packages/linux/linux-nokia800-2.6.21-200823maemo6/kernel-source_2.6.21-200823maemo6.diff.gz b/meta-extras/packages/linux/linux-nokia800-2.6.21-200823maemo6/kernel-source_2.6.21-200823maemo6.diff.gz
deleted file mode 100644
index 2ceb4a784..000000000
--- a/meta-extras/packages/linux/linux-nokia800-2.6.21-200823maemo6/kernel-source_2.6.21-200823maemo6.diff.gz
+++ /dev/null
Binary files differ
diff --git a/meta-extras/packages/linux/linux-nokia800-2.6.21-200823maemo6/nokia800/defconfig b/meta-extras/packages/linux/linux-nokia800-2.6.21-200823maemo6/nokia800/defconfig
deleted file mode 100644
index ea78481b9..000000000
--- a/meta-extras/packages/linux/linux-nokia800-2.6.21-200823maemo6/nokia800/defconfig
+++ /dev/null
@@ -1,1650 +0,0 @@
-#
-# Automatically generated make config: don't edit
-# Linux kernel version: 2.6.21-omap1
-# Thu Jun 26 11:32:23 2008
-#
-CONFIG_ARM=y
-CONFIG_SYS_SUPPORTS_APM_EMULATION=y
-CONFIG_GENERIC_GPIO=y
-CONFIG_GENERIC_TIME=y
-CONFIG_MMU=y
-# CONFIG_NO_IOPORT is not set
-CONFIG_GENERIC_HARDIRQS=y
-CONFIG_TRACE_IRQFLAGS_SUPPORT=y
-CONFIG_HARDIRQS_SW_RESEND=y
-CONFIG_GENERIC_IRQ_PROBE=y
-CONFIG_RWSEM_GENERIC_SPINLOCK=y
-# CONFIG_ARCH_HAS_ILOG2_U32 is not set
-# CONFIG_ARCH_HAS_ILOG2_U64 is not set
-CONFIG_GENERIC_HWEIGHT=y
-CONFIG_GENERIC_CALIBRATE_DELAY=y
-CONFIG_ZONE_DMA=y
-CONFIG_VECTORS_BASE=0xffff0000
-CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
-
-#
-# Code maturity level options
-#
-CONFIG_EXPERIMENTAL=y
-CONFIG_BROKEN_ON_SMP=y
-CONFIG_INIT_ENV_ARG_LIMIT=32
-
-#
-# General setup
-#
-CONFIG_LOCALVERSION=""
-# CONFIG_LOCALVERSION_AUTO is not set
-CONFIG_SWAP=y
-CONFIG_SYSVIPC=y
-# CONFIG_IPC_NS is not set
-CONFIG_SYSVIPC_SYSCTL=y
-CONFIG_POSIX_MQUEUE=y
-# CONFIG_BSD_PROCESS_ACCT is not set
-# CONFIG_TASKSTATS is not set
-# CONFIG_UTS_NS is not set
-# CONFIG_AUDIT is not set
-# CONFIG_IKCONFIG is not set
-CONFIG_SYSFS_DEPRECATED=y
-# CONFIG_RELAY is not set
-CONFIG_BLK_DEV_INITRD=y
-CONFIG_INITRAMFS_SOURCE=""
-CONFIG_CC_OPTIMIZE_FOR_SIZE=y
-CONFIG_SYSCTL=y
-# CONFIG_EMBEDDED is not set
-CONFIG_UID16=y
-CONFIG_SYSCTL_SYSCALL=y
-CONFIG_KALLSYMS=y
-# CONFIG_KALLSYMS_ALL is not set
-# CONFIG_KALLSYMS_EXTRA_PASS is not set
-CONFIG_HOTPLUG=y
-CONFIG_PRINTK=y
-CONFIG_BUG=y
-CONFIG_ELF_CORE=y
-CONFIG_BASE_FULL=y
-CONFIG_FUTEX=y
-CONFIG_EPOLL=y
-CONFIG_SHMEM=y
-CONFIG_SLAB=y
-CONFIG_VM_EVENT_COUNTERS=y
-CONFIG_RT_MUTEXES=y
-# CONFIG_TINY_SHMEM is not set
-CONFIG_BASE_SMALL=0
-# CONFIG_SLOB is not set
-
-#
-# Loadable module support
-#
-CONFIG_MODULES=y
-CONFIG_MODULE_UNLOAD=y
-# CONFIG_MODULE_FORCE_UNLOAD is not set
-# CONFIG_MODVERSIONS is not set
-# CONFIG_MODULE_SRCVERSION_ALL is not set
-# CONFIG_KMOD is not set
-
-#
-# Block layer
-#
-CONFIG_BLOCK=y
-# CONFIG_LBD is not set
-# CONFIG_BLK_DEV_IO_TRACE is not set
-# CONFIG_LSF is not set
-
-#
-# IO Schedulers
-#
-CONFIG_IOSCHED_NOOP=y
-# CONFIG_IOSCHED_AS is not set
-# CONFIG_IOSCHED_DEADLINE is not set
-# CONFIG_IOSCHED_CFQ is not set
-# CONFIG_DEFAULT_AS is not set
-# CONFIG_DEFAULT_DEADLINE is not set
-# CONFIG_DEFAULT_CFQ is not set
-CONFIG_DEFAULT_NOOP=y
-CONFIG_DEFAULT_IOSCHED="noop"
-
-#
-# System Type
-#
-# CONFIG_ARCH_AAEC2000 is not set
-# CONFIG_ARCH_INTEGRATOR is not set
-# CONFIG_ARCH_REALVIEW is not set
-# CONFIG_ARCH_VERSATILE is not set
-# CONFIG_ARCH_AT91 is not set
-# CONFIG_ARCH_CLPS7500 is not set
-# CONFIG_ARCH_CLPS711X is not set
-# CONFIG_ARCH_CO285 is not set
-# CONFIG_ARCH_EBSA110 is not set
-# CONFIG_ARCH_EP93XX is not set
-# CONFIG_ARCH_FOOTBRIDGE is not set
-# CONFIG_ARCH_NETX is not set
-# CONFIG_ARCH_H720X is not set
-# CONFIG_ARCH_IMX is not set
-# CONFIG_ARCH_IOP32X is not set
-# CONFIG_ARCH_IOP33X is not set
-# CONFIG_ARCH_IOP13XX is not set
-# CONFIG_ARCH_IXP4XX is not set
-# CONFIG_ARCH_IXP2000 is not set
-# CONFIG_ARCH_IXP23XX is not set
-# CONFIG_ARCH_L7200 is not set
-# CONFIG_ARCH_NS9XXX is not set
-# CONFIG_ARCH_PNX4008 is not set
-# CONFIG_ARCH_PXA is not set
-# CONFIG_ARCH_RPC is not set
-# CONFIG_ARCH_SA1100 is not set
-# CONFIG_ARCH_S3C2410 is not set
-# CONFIG_ARCH_SHARK is not set
-# CONFIG_ARCH_LH7A40X is not set
-CONFIG_ARCH_OMAP=y
-
-#
-# TI OMAP Implementations
-#
-CONFIG_ARCH_OMAP_OTG=y
-# CONFIG_ARCH_OMAP1 is not set
-CONFIG_ARCH_OMAP2=y
-
-#
-# OMAP Feature Selections
-#
-CONFIG_MACH_OMAP2420_DVFS=y
-CONFIG_ARCH_OMAP2420_DEBUG=y
-CONFIG_ARCH_OMAP2420_OBSERVABILITY=m
-CONFIG_ARCH_OMAP2420_PEEK_N_POKE=m
-CONFIG_ARCH_OMAP2420_SNAPSHOT=m
-CONFIG_ARCH_OMAP2420_DMA_DRAIN=y
-CONFIG_OMAP_RESET_CLOCKS=y
-CONFIG_OMAP_BOOT_TAG=y
-CONFIG_OMAP_BOOT_REASON=y
-CONFIG_OMAP_COMPONENT_VERSION=y
-CONFIG_OMAP_GPIO_SWITCH=y
-# CONFIG_OMAP_MUX is not set
-# CONFIG_OMAP_SEC is not set
-CONFIG_OMAP_STI=y
-CONFIG_OMAP_STI_CONSOLE=y
-# CONFIG_OMAP_MCBSP is not set
-CONFIG_OMAP_MMU_FWK=y
-CONFIG_OMAP_MBOX_FWK=y
-# CONFIG_OMAP_MPU_TIMER is not set
-CONFIG_OMAP_32K_TIMER=y
-CONFIG_OMAP_32K_TIMER_HZ=128
-CONFIG_OMAP_DM_TIMER=y
-# CONFIG_OMAP_LL_DEBUG_UART1 is not set
-# CONFIG_OMAP_LL_DEBUG_UART2 is not set
-CONFIG_OMAP_LL_DEBUG_UART3=y
-CONFIG_OMAP_DSP=y
-# CONFIG_OMAP_DSP_MBCMD_VERBOSE is not set
-CONFIG_OMAP_DSP_TASK_MULTIOPEN=y
-CONFIG_OMAP_DSP_FBEXPORT=y
-CONFIG_OMAP_DSP_PAUSING=y
-# CONFIG_MACH_OMAP_GENERIC is not set
-
-#
-# OMAP Core Type
-#
-CONFIG_ARCH_OMAP24XX=y
-CONFIG_ARCH_OMAP2420=y
-# CONFIG_ARCH_OMAP2430 is not set
-
-#
-# OMAP Board Type
-#
-CONFIG_MACH_NOKIA_N800=y
-CONFIG_MACH_NOKIA_RX44=y
-# CONFIG_MACH_NOKIA_RX48 is not set
-CONFIG_MACH_OMAP2_TUSB6010=y
-# CONFIG_MACH_OMAP_H4 is not set
-# CONFIG_MACH_OMAP_APOLLON is not set
-# CONFIG_MACH_OMAP_2430SDP is not set
-
-#
-# Processor Type
-#
-CONFIG_CPU_32=y
-CONFIG_CPU_V6=y
-# CONFIG_CPU_32v6K is not set
-CONFIG_CPU_32v6=y
-CONFIG_CPU_ABRT_EV6=y
-CONFIG_CPU_CACHE_V6=y
-CONFIG_CPU_CACHE_VIPT=y
-CONFIG_CPU_COPY_V6=y
-CONFIG_CPU_TLB_V6=y
-CONFIG_CPU_CP15=y
-CONFIG_CPU_CP15_MMU=y
-
-#
-# Processor Features
-#
-CONFIG_ARM_THUMB=y
-# CONFIG_CPU_ICACHE_DISABLE is not set
-# CONFIG_CPU_DCACHE_DISABLE is not set
-# CONFIG_CPU_DCACHE_WRITETHROUGH is not set
-# CONFIG_CPU_BPREDICT_DISABLE is not set
-# CONFIG_OUTER_CACHE is not set
-
-#
-# Bus support
-#
-
-#
-# PCCARD (PCMCIA/CardBus) support
-#
-# CONFIG_PCCARD is not set
-
-#
-# Kernel Features
-#
-# CONFIG_PREEMPT is not set
-CONFIG_NO_IDLE_HZ=y
-CONFIG_HZ=128
-CONFIG_AEABI=y
-CONFIG_OABI_COMPAT=y
-# CONFIG_ARCH_DISCONTIGMEM_ENABLE is not set
-CONFIG_SELECT_MEMORY_MODEL=y
-CONFIG_FLATMEM_MANUAL=y
-# CONFIG_DISCONTIGMEM_MANUAL is not set
-# CONFIG_SPARSEMEM_MANUAL is not set
-CONFIG_FLATMEM=y
-CONFIG_FLAT_NODE_MEM_MAP=y
-# CONFIG_SPARSEMEM_STATIC is not set
-CONFIG_SPLIT_PTLOCK_CPUS=4
-# CONFIG_RESOURCES_64BIT is not set
-CONFIG_ZONE_DMA_FLAG=1
-CONFIG_LEDS=y
-CONFIG_ALIGNMENT_TRAP=y
-
-#
-# Boot options
-#
-CONFIG_ZBOOT_ROM_TEXT=0x10C08000
-CONFIG_ZBOOT_ROM_BSS=0x10200000
-# CONFIG_ZBOOT_ROM is not set
-CONFIG_CMDLINE="root=1f03 rootfstype=jffs2 ro console=tty0"
-# CONFIG_XIP_KERNEL is not set
-# CONFIG_KEXEC is not set
-
-#
-# CPU Frequency scaling
-#
-CONFIG_CPU_FREQ=y
-CONFIG_CPU_FREQ_TABLE=y
-# CONFIG_CPU_FREQ_DEBUG is not set
-CONFIG_CPU_FREQ_STAT=y
-# CONFIG_CPU_FREQ_STAT_DETAILS is not set
-# CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE is not set
-# CONFIG_CPU_FREQ_DEFAULT_GOV_POWERSAVE is not set
-CONFIG_CPU_FREQ_DEFAULT_GOV_NULL=y
-# CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set
-CONFIG_CPU_FREQ_GOV_PERFORMANCE=y
-CONFIG_CPU_FREQ_GOV_POWERSAVE=y
-CONFIG_CPU_FREQ_GOV_NULL=y
-# CONFIG_CPU_FREQ_GOV_USERSPACE is not set
-CONFIG_CPU_FREQ_GOV_ONDEMAND=y
-CONFIG_CPU_FREQ_GOV_CONSERVATIVE=y
-
-#
-# Floating point emulation
-#
-
-#
-# At least one emulation must be selected
-#
-CONFIG_FPE_NWFPE=y
-# CONFIG_FPE_NWFPE_XP is not set
-# CONFIG_FPE_FASTFPE is not set
-CONFIG_VFP=y
-
-#
-# Userspace binary formats
-#
-CONFIG_BINFMT_ELF=y
-# CONFIG_BINFMT_AOUT is not set
-# CONFIG_BINFMT_MISC is not set
-
-#
-# Power management options
-#
-CONFIG_PM=y
-# CONFIG_PM_LEGACY is not set
-# CONFIG_PM_DEBUG is not set
-# CONFIG_PM_SYSFS_DEPRECATED is not set
-CONFIG_APM_EMULATION=y
-
-#
-# Networking
-#
-CONFIG_NET=y
-
-#
-# Networking options
-#
-# CONFIG_NETDEBUG is not set
-CONFIG_PACKET=y
-# CONFIG_PACKET_MMAP is not set
-CONFIG_UNIX=y
-CONFIG_XFRM=y
-# CONFIG_XFRM_USER is not set
-# CONFIG_XFRM_SUB_POLICY is not set
-# CONFIG_XFRM_MIGRATE is not set
-# CONFIG_NET_KEY is not set
-CONFIG_INET=y
-CONFIG_IP_MULTICAST=y
-# CONFIG_IP_ADVANCED_ROUTER is not set
-CONFIG_IP_FIB_HASH=y
-# CONFIG_IP_PNP is not set
-# CONFIG_NET_IPIP is not set
-# CONFIG_NET_IPGRE is not set
-# CONFIG_IP_MROUTE is not set
-# CONFIG_ARPD is not set
-# CONFIG_SYN_COOKIES is not set
-# CONFIG_INET_AH is not set
-# CONFIG_INET_ESP is not set
-# CONFIG_INET_IPCOMP is not set
-# CONFIG_INET_XFRM_TUNNEL is not set
-# CONFIG_INET_TUNNEL is not set
-# CONFIG_INET_XFRM_MODE_TRANSPORT is not set
-# CONFIG_INET_XFRM_MODE_TUNNEL is not set
-CONFIG_INET_XFRM_MODE_BEET=y
-CONFIG_INET_DIAG=y
-CONFIG_INET_TCP_DIAG=y
-# CONFIG_TCP_CONG_ADVANCED is not set
-CONFIG_TCP_CONG_CUBIC=y
-CONFIG_DEFAULT_TCP_CONG="cubic"
-# CONFIG_TCP_MD5SIG is not set
-
-#
-# IP: Virtual Server Configuration
-#
-# CONFIG_IP_VS is not set
-# CONFIG_IPV6 is not set
-# CONFIG_INET6_XFRM_TUNNEL is not set
-# CONFIG_INET6_TUNNEL is not set
-# CONFIG_NETLABEL is not set
-# CONFIG_NETWORK_SECMARK is not set
-CONFIG_NETFILTER=y
-# CONFIG_NETFILTER_DEBUG is not set
-
-#
-# Core Netfilter Configuration
-#
-CONFIG_NETFILTER_NETLINK=y
-# CONFIG_NETFILTER_NETLINK_QUEUE is not set
-# CONFIG_NETFILTER_NETLINK_LOG is not set
-# CONFIG_NF_CONNTRACK_ENABLED is not set
-CONFIG_NETFILTER_XTABLES=y
-# CONFIG_NETFILTER_XT_TARGET_CLASSIFY is not set
-# CONFIG_NETFILTER_XT_TARGET_MARK is not set
-# CONFIG_NETFILTER_XT_TARGET_NFQUEUE is not set
-# CONFIG_NETFILTER_XT_TARGET_NFLOG is not set
-# CONFIG_NETFILTER_XT_TARGET_TCPMSS is not set
-# CONFIG_NETFILTER_XT_MATCH_COMMENT is not set
-# CONFIG_NETFILTER_XT_MATCH_DCCP is not set
-# CONFIG_NETFILTER_XT_MATCH_DSCP is not set
-# CONFIG_NETFILTER_XT_MATCH_ESP is not set
-# CONFIG_NETFILTER_XT_MATCH_LENGTH is not set
-# CONFIG_NETFILTER_XT_MATCH_LIMIT is not set
-# CONFIG_NETFILTER_XT_MATCH_MAC is not set
-# CONFIG_NETFILTER_XT_MATCH_MARK is not set
-# CONFIG_NETFILTER_XT_MATCH_POLICY is not set
-# CONFIG_NETFILTER_XT_MATCH_MULTIPORT is not set
-# CONFIG_NETFILTER_XT_MATCH_PKTTYPE is not set
-# CONFIG_NETFILTER_XT_MATCH_QUOTA is not set
-# CONFIG_NETFILTER_XT_MATCH_REALM is not set
-# CONFIG_NETFILTER_XT_MATCH_SCTP is not set
-# CONFIG_NETFILTER_XT_MATCH_STATISTIC is not set
-# CONFIG_NETFILTER_XT_MATCH_STRING is not set
-# CONFIG_NETFILTER_XT_MATCH_TCPMSS is not set
-# CONFIG_NETFILTER_XT_MATCH_HASHLIMIT is not set
-
-#
-# IP: Netfilter Configuration
-#
-# CONFIG_IP_NF_QUEUE is not set
-CONFIG_IP_NF_IPTABLES=y
-# CONFIG_IP_NF_MATCH_IPRANGE is not set
-# CONFIG_IP_NF_MATCH_TOS is not set
-# CONFIG_IP_NF_MATCH_RECENT is not set
-# CONFIG_IP_NF_MATCH_ECN is not set
-# CONFIG_IP_NF_MATCH_AH is not set
-# CONFIG_IP_NF_MATCH_TTL is not set
-# CONFIG_IP_NF_MATCH_OWNER is not set
-# CONFIG_IP_NF_MATCH_ADDRTYPE is not set
-CONFIG_IP_NF_FILTER=y
-# CONFIG_IP_NF_TARGET_REJECT is not set
-# CONFIG_IP_NF_TARGET_LOG is not set
-# CONFIG_IP_NF_TARGET_ULOG is not set
-CONFIG_IP_NF_TARGET_IDLETIMER=y
-# CONFIG_IP_NF_MANGLE is not set
-# CONFIG_IP_NF_RAW is not set
-# CONFIG_IP_NF_ARPTABLES is not set
-
-#
-# DCCP Configuration (EXPERIMENTAL)
-#
-# CONFIG_IP_DCCP is not set
-
-#
-# SCTP Configuration (EXPERIMENTAL)
-#
-# CONFIG_IP_SCTP is not set
-
-#
-# TIPC Configuration (EXPERIMENTAL)
-#
-# CONFIG_TIPC is not set
-# CONFIG_ATM is not set
-# CONFIG_BRIDGE is not set
-# CONFIG_VLAN_8021Q is not set
-# CONFIG_DECNET is not set
-# CONFIG_LLC2 is not set
-# CONFIG_IPX is not set
-# CONFIG_ATALK is not set
-# CONFIG_X25 is not set
-# CONFIG_LAPB is not set
-# CONFIG_ECONET is not set
-# CONFIG_WAN_ROUTER is not set
-
-#
-# QoS and/or fair queueing
-#
-# CONFIG_NET_SCHED is not set
-
-#
-# Network testing
-#
-# CONFIG_NET_PKTGEN is not set
-# CONFIG_HAMRADIO is not set
-# CONFIG_IRDA is not set
-CONFIG_BT=y
-CONFIG_BT_L2CAP=y
-CONFIG_BT_SCO=y
-CONFIG_BT_RFCOMM=y
-CONFIG_BT_RFCOMM_TTY=y
-CONFIG_BT_BNEP=y
-# CONFIG_BT_BNEP_MC_FILTER is not set
-# CONFIG_BT_BNEP_PROTO_FILTER is not set
-CONFIG_BT_HIDP=y
-
-#
-# Bluetooth device drivers
-#
-# CONFIG_BT_HCIUSB is not set
-# CONFIG_BT_HCIUART is not set
-# CONFIG_BT_HCIBCM203X is not set
-# CONFIG_BT_HCIBPA10X is not set
-# CONFIG_BT_HCIBFUSB is not set
-# CONFIG_BT_HCIBRF6150 is not set
-CONFIG_BT_HCIH4P=y
-# CONFIG_BT_HCIVHCI is not set
-# CONFIG_IEEE80211 is not set
-CONFIG_WIRELESS_EXT=y
-
-#
-# Device Drivers
-#
-
-#
-# Generic Driver Options
-#
-CONFIG_STANDALONE=y
-CONFIG_PREVENT_FIRMWARE_BUILD=y
-CONFIG_FW_LOADER=y
-# CONFIG_DEBUG_DRIVER is not set
-# CONFIG_DEBUG_DEVRES is not set
-# CONFIG_SYS_HYPERVISOR is not set
-
-#
-# Connector - unified userspace <-> kernelspace linker
-#
-# CONFIG_CONNECTOR is not set
-
-#
-# Memory Technology Devices (MTD)
-#
-CONFIG_MTD=y
-# CONFIG_MTD_DEBUG is not set
-# CONFIG_MTD_CONCAT is not set
-CONFIG_MTD_PARTITIONS=y
-# CONFIG_MTD_REDBOOT_PARTS is not set
-CONFIG_MTD_CMDLINE_PARTS=y
-# CONFIG_MTD_AFS_PARTS is not set
-
-#
-# User Modules And Translation Layers
-#
-CONFIG_MTD_CHAR=y
-CONFIG_MTD_BLKDEVS=y
-CONFIG_MTD_BLOCK=y
-# CONFIG_FTL is not set
-# CONFIG_NFTL is not set
-# CONFIG_INFTL is not set
-# CONFIG_RFD_FTL is not set
-# CONFIG_SSFDC is not set
-# CONFIG_MTD_OOPS is not set
-
-#
-# RAM/ROM/Flash chip drivers
-#
-# CONFIG_MTD_CFI is not set
-# CONFIG_MTD_JEDECPROBE is not set
-CONFIG_MTD_MAP_BANK_WIDTH_1=y
-CONFIG_MTD_MAP_BANK_WIDTH_2=y
-CONFIG_MTD_MAP_BANK_WIDTH_4=y
-# CONFIG_MTD_MAP_BANK_WIDTH_8 is not set
-# CONFIG_MTD_MAP_BANK_WIDTH_16 is not set
-# CONFIG_MTD_MAP_BANK_WIDTH_32 is not set
-CONFIG_MTD_CFI_I1=y
-CONFIG_MTD_CFI_I2=y
-# CONFIG_MTD_CFI_I4 is not set
-# CONFIG_MTD_CFI_I8 is not set
-# CONFIG_MTD_RAM is not set
-# CONFIG_MTD_ROM is not set
-# CONFIG_MTD_ABSENT is not set
-# CONFIG_MTD_OBSOLETE_CHIPS is not set
-
-#
-# Mapping drivers for chip access
-#
-# CONFIG_MTD_COMPLEX_MAPPINGS is not set
-# CONFIG_MTD_PLATRAM is not set
-
-#
-# Self-contained MTD device drivers
-#
-# CONFIG_MTD_DATAFLASH is not set
-# CONFIG_MTD_M25P80 is not set
-# CONFIG_MTD_SLRAM is not set
-# CONFIG_MTD_PHRAM is not set
-# CONFIG_MTD_MTDRAM is not set
-# CONFIG_MTD_BLOCK2MTD is not set
-
-#
-# Disk-On-Chip Device Drivers
-#
-# CONFIG_MTD_DOC2000 is not set
-# CONFIG_MTD_DOC2001 is not set
-# CONFIG_MTD_DOC2001PLUS is not set
-
-#
-# NAND Flash Device Drivers
-#
-# CONFIG_MTD_NAND is not set
-
-#
-# OneNAND Flash Device Drivers
-#
-CONFIG_MTD_ONENAND=y
-# CONFIG_MTD_ONENAND_VERIFY_WRITE is not set
-# CONFIG_MTD_ONENAND_GENERIC is not set
-CONFIG_MTD_ONENAND_OMAP2=y
-CONFIG_MTD_ONENAND_OTP=y
-
-#
-# Parallel port support
-#
-# CONFIG_PARPORT is not set
-
-#
-# Plug and Play support
-#
-# CONFIG_PNPACPI is not set
-
-#
-# Block devices
-#
-# CONFIG_BLK_DEV_COW_COMMON is not set
-CONFIG_BLK_DEV_LOOP=y
-# CONFIG_BLK_DEV_CRYPTOLOOP is not set
-# CONFIG_BLK_DEV_NBD is not set
-# CONFIG_BLK_DEV_UB is not set
-CONFIG_BLK_DEV_RAM=y
-CONFIG_BLK_DEV_RAM_COUNT=16
-CONFIG_BLK_DEV_RAM_SIZE=4096
-CONFIG_BLK_DEV_RAM_BLOCKSIZE=1024
-# CONFIG_CDROM_PKTCDVD is not set
-# CONFIG_ATA_OVER_ETH is not set
-
-#
-# SCSI device support
-#
-# CONFIG_RAID_ATTRS is not set
-CONFIG_SCSI=y
-# CONFIG_SCSI_TGT is not set
-# CONFIG_SCSI_NETLINK is not set
-# CONFIG_SCSI_PROC_FS is not set
-
-#
-# SCSI support type (disk, tape, CD-ROM)
-#
-CONFIG_BLK_DEV_SD=y
-# CONFIG_CHR_DEV_ST is not set
-# CONFIG_CHR_DEV_OSST is not set
-# CONFIG_BLK_DEV_SR is not set
-# CONFIG_CHR_DEV_SG is not set
-# CONFIG_CHR_DEV_SCH is not set
-
-#
-# Some SCSI devices (e.g. CD jukebox) support multiple LUNs
-#
-CONFIG_SCSI_MULTI_LUN=y
-# CONFIG_SCSI_CONSTANTS is not set
-# CONFIG_SCSI_LOGGING is not set
-# CONFIG_SCSI_SCAN_ASYNC is not set
-
-#
-# SCSI Transports
-#
-# CONFIG_SCSI_SPI_ATTRS is not set
-# CONFIG_SCSI_FC_ATTRS is not set
-# CONFIG_SCSI_ISCSI_ATTRS is not set
-# CONFIG_SCSI_SAS_ATTRS is not set
-# CONFIG_SCSI_SAS_LIBSAS is not set
-
-#
-# SCSI low-level drivers
-#
-# CONFIG_ISCSI_TCP is not set
-# CONFIG_SCSI_DEBUG is not set
-
-#
-# Serial ATA (prod) and Parallel ATA (experimental) drivers
-#
-# CONFIG_ATA is not set
-
-#
-# Multi-device support (RAID and LVM)
-#
-# CONFIG_MD is not set
-
-#
-# Fusion MPT device support
-#
-# CONFIG_FUSION is not set
-
-#
-# IEEE 1394 (FireWire) support
-#
-
-#
-# I2O device support
-#
-
-#
-# Network device support
-#
-CONFIG_NETDEVICES=y
-# CONFIG_DUMMY is not set
-# CONFIG_BONDING is not set
-# CONFIG_EQUALIZER is not set
-CONFIG_TUN=y
-
-#
-# PHY device support
-#
-
-#
-# Ethernet (10 or 100Mbit)
-#
-# CONFIG_NET_ETHERNET is not set
-CONFIG_MII=y
-
-#
-# Ethernet (1000 Mbit)
-#
-
-#
-# Ethernet (10000 Mbit)
-#
-
-#
-# Token Ring devices
-#
-
-#
-# Wireless LAN (non-hamradio)
-#
-CONFIG_NET_RADIO=y
-# CONFIG_NET_WIRELESS_RTNETLINK is not set
-
-#
-# Obsolete Wireless cards support (pre-802.11)
-#
-# CONFIG_STRIP is not set
-# CONFIG_USB_ZD1201 is not set
-# CONFIG_HOSTAP is not set
-
-#
-# Wan interfaces
-#
-# CONFIG_WAN is not set
-CONFIG_PPP=y
-# CONFIG_PPP_MULTILINK is not set
-CONFIG_PPP_FILTER=y
-CONFIG_PPP_ASYNC=y
-CONFIG_PPP_SYNC_TTY=y
-CONFIG_PPP_DEFLATE=y
-CONFIG_PPP_BSDCOMP=y
-# CONFIG_PPP_MPPE is not set
-# CONFIG_PPPOE is not set
-# CONFIG_SLIP is not set
-CONFIG_SLHC=y
-# CONFIG_SHAPER is not set
-# CONFIG_NETCONSOLE is not set
-# CONFIG_NETPOLL is not set
-# CONFIG_NET_POLL_CONTROLLER is not set
-
-#
-# ISDN subsystem
-#
-# CONFIG_ISDN is not set
-
-#
-# Input device support
-#
-CONFIG_INPUT=y
-# CONFIG_INPUT_FF_MEMLESS is not set
-
-#
-# Userland interfaces
-#
-CONFIG_INPUT_MOUSEDEV=y
-# CONFIG_INPUT_MOUSEDEV_PSAUX is not set
-CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024
-CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768
-# CONFIG_INPUT_JOYDEV is not set
-# CONFIG_INPUT_TSDEV is not set
-CONFIG_INPUT_EVDEV=y
-# CONFIG_INPUT_EVBUG is not set
-CONFIG_INPUT_POWER=y
-
-#
-# Input Device Drivers
-#
-CONFIG_INPUT_KEYBOARD=y
-# CONFIG_KEYBOARD_ATKBD is not set
-# CONFIG_KEYBOARD_SUNKBD is not set
-# CONFIG_KEYBOARD_LKKBD is not set
-# CONFIG_KEYBOARD_XTKBD is not set
-# CONFIG_KEYBOARD_NEWTON is not set
-# CONFIG_KEYBOARD_STOWAWAY is not set
-# CONFIG_KEYBOARD_OMAP is not set
-# CONFIG_KEYBOARD_GPIO is not set
-CONFIG_KEYBOARD_TSC2301=y
-# CONFIG_INPUT_MOUSE is not set
-# CONFIG_INPUT_JOYSTICK is not set
-CONFIG_INPUT_TOUCHSCREEN=y
-# CONFIG_TOUCHSCREEN_ADS7846 is not set
-# CONFIG_TOUCHSCREEN_GUNZE is not set
-# CONFIG_TOUCHSCREEN_ELO is not set
-# CONFIG_TOUCHSCREEN_MTOUCH is not set
-# CONFIG_TOUCHSCREEN_MK712 is not set
-# CONFIG_TOUCHSCREEN_PENMOUNT is not set
-# CONFIG_TOUCHSCREEN_TOUCHRIGHT is not set
-# CONFIG_TOUCHSCREEN_TOUCHWIN is not set
-# CONFIG_TOUCHSCREEN_UCB1400 is not set
-CONFIG_TOUCHSCREEN_TSC2005=y
-CONFIG_TOUCHSCREEN_TSC2301=y
-# CONFIG_TOUCHSCREEN_TSC2046 is not set
-# CONFIG_INPUT_MISC is not set
-
-#
-# Hardware I/O ports
-#
-CONFIG_SERIO=y
-CONFIG_SERIO_SERPORT=y
-# CONFIG_SERIO_RAW is not set
-# CONFIG_GAMEPORT is not set
-
-#
-# Character devices
-#
-CONFIG_VT=y
-CONFIG_VT_CONSOLE=y
-CONFIG_HW_CONSOLE=y
-# CONFIG_VT_HW_CONSOLE_BINDING is not set
-# CONFIG_SERIAL_NONSTANDARD is not set
-
-#
-# Serial drivers
-#
-# CONFIG_SERIAL_8250 is not set
-
-#
-# Non-8250 serial port support
-#
-CONFIG_SERIAL_OMAP=y
-CONFIG_SERIAL_OMAP_CONSOLE=y
-CONFIG_SERIAL_CORE=y
-CONFIG_SERIAL_CORE_CONSOLE=y
-CONFIG_UNIX98_PTYS=y
-# CONFIG_LEGACY_PTYS is not set
-
-#
-# IPMI
-#
-# CONFIG_IPMI_HANDLER is not set
-
-#
-# Watchdog Cards
-#
-CONFIG_WATCHDOG=y
-CONFIG_WATCHDOG_NOWAYOUT=y
-
-#
-# Watchdog Device Drivers
-#
-# CONFIG_SOFT_WATCHDOG is not set
-CONFIG_OMAP_WATCHDOG=y
-
-#
-# USB-based Watchdog Cards
-#
-# CONFIG_USBPCWATCHDOG is not set
-# CONFIG_HW_RANDOM is not set
-# CONFIG_NVRAM is not set
-# CONFIG_DTLK is not set
-# CONFIG_R3964 is not set
-# CONFIG_RAW_DRIVER is not set
-
-#
-# TPM devices
-#
-# CONFIG_TCG_TPM is not set
-
-#
-# I2C support
-#
-CONFIG_I2C=y
-# CONFIG_I2C_CHARDEV is not set
-
-#
-# I2C Algorithms
-#
-# CONFIG_I2C_ALGOBIT is not set
-# CONFIG_I2C_ALGOPCF is not set
-# CONFIG_I2C_ALGOPCA is not set
-
-#
-# I2C Hardware Bus support
-#
-# CONFIG_I2C_OCORES is not set
-CONFIG_I2C_OMAP=y
-# CONFIG_I2C_PARPORT_LIGHT is not set
-# CONFIG_I2C_STUB is not set
-# CONFIG_I2C_PCA_ISA is not set
-
-#
-# Miscellaneous I2C Chip support
-#
-# CONFIG_SENSORS_DS1337 is not set
-# CONFIG_SENSORS_DS1374 is not set
-# CONFIG_SENSORS_EEPROM is not set
-# CONFIG_SENSORS_PCF8574 is not set
-# CONFIG_SENSORS_PCA9539 is not set
-# CONFIG_SENSORS_PCF8591 is not set
-# CONFIG_ISP1301_OMAP is not set
-# CONFIG_TPS65010 is not set
-# CONFIG_SENSORS_TLV320AIC23 is not set
-CONFIG_SENSORS_TSL2563=y
-# CONFIG_GPIOEXPANDER_OMAP is not set
-CONFIG_LM8323=y
-CONFIG_LP5521=y
-CONFIG_MENELAUS=y
-# CONFIG_TWL4030_CORE is not set
-# CONFIG_SENSORS_MAX6875 is not set
-# CONFIG_I2C_DEBUG_CORE is not set
-# CONFIG_I2C_DEBUG_ALGO is not set
-# CONFIG_I2C_DEBUG_BUS is not set
-# CONFIG_I2C_DEBUG_CHIP is not set
-
-#
-# SPI support
-#
-CONFIG_SPI=y
-# CONFIG_SPI_DEBUG is not set
-CONFIG_SPI_MASTER=y
-
-#
-# SPI Master Controller Drivers
-#
-# CONFIG_SPI_BITBANG is not set
-CONFIG_SPI_OMAP24XX=y
-CONFIG_SPI_OMAP_PAUSING=y
-
-#
-# SPI Protocol Masters
-#
-# CONFIG_SPI_AT25 is not set
-# CONFIG_SPI_TSC2005 is not set
-# CONFIG_SPI_TSC2101 is not set
-# CONFIG_SPI_TSC2102 is not set
-CONFIG_SPI_TSC2301=y
-CONFIG_SPI_TSC2301_AUDIO=y
-
-#
-# Dallas's 1-wire bus
-#
-# CONFIG_W1 is not set
-
-#
-# Hardware Monitoring support
-#
-CONFIG_HWMON=y
-# CONFIG_HWMON_VID is not set
-# CONFIG_SENSORS_ABITUGURU is not set
-# CONFIG_SENSORS_ADM1021 is not set
-# CONFIG_SENSORS_ADM1025 is not set
-# CONFIG_SENSORS_ADM1026 is not set
-# CONFIG_SENSORS_ADM1029 is not set
-# CONFIG_SENSORS_ADM1031 is not set
-# CONFIG_SENSORS_ADM9240 is not set
-# CONFIG_SENSORS_ASB100 is not set
-# CONFIG_SENSORS_ATXP1 is not set
-# CONFIG_SENSORS_DS1621 is not set
-# CONFIG_SENSORS_F71805F is not set
-# CONFIG_SENSORS_FSCHER is not set
-# CONFIG_SENSORS_FSCPOS is not set
-# CONFIG_SENSORS_GL518SM is not set
-# CONFIG_SENSORS_GL520SM is not set
-# CONFIG_SENSORS_IT87 is not set
-# CONFIG_SENSORS_LM63 is not set
-# CONFIG_SENSORS_LM70 is not set
-# CONFIG_SENSORS_LM75 is not set
-# CONFIG_SENSORS_LM77 is not set
-# CONFIG_SENSORS_LM78 is not set
-# CONFIG_SENSORS_LM80 is not set
-# CONFIG_SENSORS_LM83 is not set
-# CONFIG_SENSORS_LM85 is not set
-# CONFIG_SENSORS_LM87 is not set
-# CONFIG_SENSORS_LM90 is not set
-# CONFIG_SENSORS_LM92 is not set
-# CONFIG_SENSORS_MAX1619 is not set
-# CONFIG_SENSORS_PC87360 is not set
-# CONFIG_SENSORS_PC87427 is not set
-# CONFIG_SENSORS_SMSC47M1 is not set
-# CONFIG_SENSORS_SMSC47M192 is not set
-# CONFIG_SENSORS_SMSC47B397 is not set
-CONFIG_SENSORS_TMP105=y
-# CONFIG_SENSORS_VT1211 is not set
-# CONFIG_SENSORS_W83781D is not set
-# CONFIG_SENSORS_W83791D is not set
-# CONFIG_SENSORS_W83792D is not set
-# CONFIG_SENSORS_W83793 is not set
-# CONFIG_SENSORS_W83L785TS is not set
-# CONFIG_SENSORS_W83627HF is not set
-# CONFIG_SENSORS_W83627EHF is not set
-# CONFIG_HWMON_DEBUG_CHIP is not set
-
-#
-# Misc devices
-#
-
-#
-# Multifunction device drivers
-#
-# CONFIG_MFD_SM501 is not set
-
-#
-# LED devices
-#
-CONFIG_NEW_LEDS=y
-CONFIG_LEDS_CLASS=y
-
-#
-# LED drivers
-#
-# CONFIG_LEDS_OMAP_DEBUG is not set
-# CONFIG_LEDS_OMAP is not set
-CONFIG_LEDS_OMAP_PWM=y
-
-#
-# LED Triggers
-#
-CONFIG_LEDS_TRIGGERS=y
-CONFIG_LEDS_TRIGGER_TIMER=y
-CONFIG_LEDS_TRIGGER_HEARTBEAT=y
-
-#
-# Multimedia devices
-#
-CONFIG_VIDEO_DEV=y
-# CONFIG_VIDEO_V4L1 is not set
-# CONFIG_VIDEO_V4L1_COMPAT is not set
-CONFIG_VIDEO_V4L2=y
-
-#
-# Video Capture Adapters
-#
-
-#
-# Video Capture Adapters
-#
-# CONFIG_VIDEO_ADV_DEBUG is not set
-CONFIG_VIDEO_HELPER_CHIPS_AUTO=y
-# CONFIG_VIDEO_SAA5246A is not set
-# CONFIG_VIDEO_SAA5249 is not set
-
-#
-# V4L USB devices
-#
-# CONFIG_VIDEO_PVRUSB2 is not set
-# CONFIG_VIDEO_USBVISION is not set
-CONFIG_VIDEO_OMAP_CAMERA=y
-# CONFIG_VIDEO_CAMERA_SENSOR_OV9640 is not set
-CONFIG_VIDEO_CAMERA_SENSOR_TCM825X=y
-
-#
-# Radio Adapters
-#
-CONFIG_RADIO_TEA5761=y
-# CONFIG_USB_DSBR is not set
-
-#
-# Digital Video Broadcasting Devices
-#
-# CONFIG_DVB is not set
-CONFIG_VIDEO_BUF=y
-# CONFIG_USB_DABUSB is not set
-
-#
-# Graphics support
-#
-# CONFIG_BACKLIGHT_LCD_SUPPORT is not set
-CONFIG_FB=y
-# CONFIG_FIRMWARE_EDID is not set
-# CONFIG_FB_DDC is not set
-# CONFIG_FB_CFB_FILLRECT is not set
-# CONFIG_FB_CFB_COPYAREA is not set
-# CONFIG_FB_CFB_IMAGEBLIT is not set
-# CONFIG_FB_SVGALIB is not set
-# CONFIG_FB_MACMODES is not set
-# CONFIG_FB_BACKLIGHT is not set
-# CONFIG_FB_MODE_HELPERS is not set
-# CONFIG_FB_TILEBLITTING is not set
-
-#
-# Frame buffer hardware drivers
-#
-# CONFIG_FB_S1D13XXX is not set
-CONFIG_FB_OMAP=y
-CONFIG_FB_OMAP_LCDC_EXTERNAL=y
-# CONFIG_FB_OMAP_LCDC_HWA742 is not set
-CONFIG_FB_OMAP_LCDC_BLIZZARD=y
-# CONFIG_FB_OMAP_MANUAL_UPDATE is not set
-CONFIG_FB_OMAP_LCD_MIPID=y
-CONFIG_FB_OMAP_BOOTLOADER_INIT=y
-CONFIG_FB_OMAP_CONSISTENT_DMA_SIZE=4
-CONFIG_FB_OMAP_PAUSING=y
-# CONFIG_FB_VIRTUAL is not set
-
-#
-# Console display driver support
-#
-# CONFIG_VGA_CONSOLE is not set
-CONFIG_DUMMY_CONSOLE=y
-CONFIG_FRAMEBUFFER_CONSOLE=y
-# CONFIG_FRAMEBUFFER_CONSOLE_ROTATION is not set
-# CONFIG_FONTS is not set
-CONFIG_FONT_8x8=y
-CONFIG_FONT_8x16=y
-
-#
-# Logo configuration
-#
-# CONFIG_LOGO is not set
-
-#
-# Sound
-#
-CONFIG_SOUND=y
-
-#
-# Advanced Linux Sound Architecture
-#
-CONFIG_SND=y
-# CONFIG_SND_SEQUENCER is not set
-CONFIG_SND_OSSEMUL=y
-CONFIG_SND_MIXER_OSS=y
-# CONFIG_SND_PCM_OSS is not set
-# CONFIG_SND_DYNAMIC_MINORS is not set
-CONFIG_SND_SUPPORT_OLD_API=y
-# CONFIG_SND_VERBOSE_PROCFS is not set
-# CONFIG_SND_VERBOSE_PRINTK is not set
-# CONFIG_SND_DEBUG is not set
-
-#
-# Generic devices
-#
-# CONFIG_SND_DUMMY is not set
-# CONFIG_SND_MTPAV is not set
-# CONFIG_SND_SERIAL_U16550 is not set
-# CONFIG_SND_MPU401 is not set
-
-#
-# ALSA ARM devices
-#
-# CONFIG_SND_OMAP_AIC23 is not set
-CONFIG_SND_AIC33=y
-# CONFIG_SND_OMAP_TSC2101 is not set
-# CONFIG_SND_SX1 is not set
-# CONFIG_SND_OMAP_TSC2102 is not set
-CONFIG_SND_OMAP24XX_EAC=y
-
-#
-# USB devices
-#
-# CONFIG_SND_USB_AUDIO is not set
-
-#
-# SoC audio support
-#
-# CONFIG_SND_SOC is not set
-
-#
-# Open Sound System
-#
-# CONFIG_SOUND_PRIME is not set
-
-#
-# HID Devices
-#
-CONFIG_HID=y
-# CONFIG_HID_DEBUG is not set
-
-#
-# USB support
-#
-CONFIG_USB_ARCH_HAS_HCD=y
-CONFIG_USB_ARCH_HAS_OHCI=y
-# CONFIG_USB_ARCH_HAS_EHCI is not set
-CONFIG_USB=y
-CONFIG_USB_DEBUG=y
-
-#
-# Miscellaneous USB options
-#
-CONFIG_USB_DEVICEFS=y
-CONFIG_USB_DYNAMIC_MINORS=y
-CONFIG_USB_SUSPEND=y
-CONFIG_USB_OTG=y
-CONFIG_USB_OTG_WHITELIST=y
-# CONFIG_USB_OTG_BLACKLIST_HUB is not set
-
-#
-# USB Host Controller Drivers
-#
-# CONFIG_USB_ISP116X_HCD is not set
-# CONFIG_USB_OHCI_HCD is not set
-# CONFIG_USB_SL811_HCD is not set
-CONFIG_USB_MUSB_HDRC=y
-CONFIG_USB_TUSB6010=y
-CONFIG_USB_TUSB6010_TEST=y
-# CONFIG_USB_MUSB_HOST is not set
-# CONFIG_USB_MUSB_PERIPHERAL is not set
-CONFIG_USB_MUSB_OTG=y
-CONFIG_USB_GADGET_MUSB_HDRC=y
-CONFIG_USB_MUSB_HDRC_HCD=y
-CONFIG_USB_MUSB_HSET=y
-# CONFIG_MUSB_PIO_ONLY is not set
-# CONFIG_USB_INVENTRA_DMA is not set
-# CONFIG_USB_TI_CPPI_DMA is not set
-CONFIG_USB_TUSB_OMAP_DMA=y
-CONFIG_USB_MUSB_LOGLEVEL=1
-
-#
-# USB Device Class drivers
-#
-# CONFIG_USB_ACM is not set
-# CONFIG_USB_PRINTER is not set
-
-#
-# NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support'
-#
-
-#
-# may also be needed; see USB_STORAGE Help for more information
-#
-CONFIG_USB_STORAGE=y
-# CONFIG_USB_STORAGE_DEBUG is not set
-# CONFIG_USB_STORAGE_DATAFAB is not set
-# CONFIG_USB_STORAGE_FREECOM is not set
-# CONFIG_USB_STORAGE_DPCM is not set
-# CONFIG_USB_STORAGE_USBAT is not set
-# CONFIG_USB_STORAGE_SDDR09 is not set
-# CONFIG_USB_STORAGE_SDDR55 is not set
-# CONFIG_USB_STORAGE_JUMPSHOT is not set
-# CONFIG_USB_STORAGE_ALAUDA is not set
-# CONFIG_USB_STORAGE_KARMA is not set
-CONFIG_USB_LIBUSUAL=y
-
-#
-# USB Input Devices
-#
-CONFIG_USB_HID=y
-# CONFIG_USB_HIDINPUT_POWERBOOK is not set
-# CONFIG_HID_FF is not set
-# CONFIG_USB_HIDDEV is not set
-# CONFIG_USB_AIPTEK is not set
-# CONFIG_USB_WACOM is not set
-# CONFIG_USB_ACECAD is not set
-# CONFIG_USB_KBTAB is not set
-# CONFIG_USB_POWERMATE is not set
-# CONFIG_USB_TOUCHSCREEN is not set
-# CONFIG_USB_YEALINK is not set
-# CONFIG_USB_XPAD is not set
-# CONFIG_USB_ATI_REMOTE is not set
-# CONFIG_USB_ATI_REMOTE2 is not set
-# CONFIG_USB_KEYSPAN_REMOTE is not set
-# CONFIG_USB_APPLETOUCH is not set
-# CONFIG_USB_GTCO is not set
-
-#
-# USB Imaging devices
-#
-# CONFIG_USB_MDC800 is not set
-# CONFIG_USB_MICROTEK is not set
-
-#
-# USB Network Adapters
-#
-# CONFIG_USB_CATC is not set
-# CONFIG_USB_KAWETH is not set
-# CONFIG_USB_PEGASUS is not set
-CONFIG_USB_RTL8150=y
-# CONFIG_USB_USBNET_MII is not set
-CONFIG_USB_USBNET=y
-CONFIG_USB_NET_CDCETHER=y
-# CONFIG_USB_NET_DM9601 is not set
-# CONFIG_USB_NET_GL620A is not set
-CONFIG_USB_NET_NET1080=y
-CONFIG_USB_NET_PLUSB=y
-# CONFIG_USB_NET_MCS7830 is not set
-CONFIG_USB_NET_RNDIS_HOST=y
-CONFIG_USB_NET_CDC_SUBSET=y
-# CONFIG_USB_ALI_M5632 is not set
-# CONFIG_USB_AN2720 is not set
-CONFIG_USB_BELKIN=y
-CONFIG_USB_ARMLINUX=y
-# CONFIG_USB_EPSON2888 is not set
-# CONFIG_USB_KC2190 is not set
-CONFIG_USB_NET_ZAURUS=y
-CONFIG_USB_MON=y
-
-#
-# USB port drivers
-#
-
-#
-# USB Serial Converter support
-#
-# CONFIG_USB_SERIAL is not set
-
-#
-# USB Miscellaneous drivers
-#
-# CONFIG_USB_EMI62 is not set
-# CONFIG_USB_EMI26 is not set
-# CONFIG_USB_ADUTUX is not set
-# CONFIG_USB_AUERSWALD is not set
-# CONFIG_USB_RIO500 is not set
-# CONFIG_USB_LEGOTOWER is not set
-# CONFIG_USB_LCD is not set
-# CONFIG_USB_BERRY_CHARGE is not set
-# CONFIG_USB_LED is not set
-# CONFIG_USB_CYPRESS_CY7C63 is not set
-# CONFIG_USB_CYTHERM is not set
-# CONFIG_USB_PHIDGET is not set
-# CONFIG_USB_IDMOUSE is not set
-# CONFIG_USB_FTDI_ELAN is not set
-# CONFIG_USB_APPLEDISPLAY is not set
-# CONFIG_USB_SISUSBVGA is not set
-# CONFIG_USB_LD is not set
-# CONFIG_USB_TRANCEVIBRATOR is not set
-# CONFIG_USB_IOWARRIOR is not set
-CONFIG_USB_TEST=y
-
-#
-# USB DSL modem support
-#
-
-#
-# USB Gadget Support
-#
-CONFIG_USB_GADGET=m
-CONFIG_USB_GADGET_DEBUG_FILES=y
-CONFIG_USB_GADGET_SELECTED=y
-# CONFIG_USB_GADGET_NET2280 is not set
-# CONFIG_USB_GADGET_PXA2XX is not set
-# CONFIG_USB_GADGET_GOKU is not set
-# CONFIG_USB_GADGET_LH7A40X is not set
-# CONFIG_USB_GADGET_OMAP is not set
-# CONFIG_USB_GADGET_AT91 is not set
-# CONFIG_USB_GADGET_DUMMY_HCD is not set
-CONFIG_USB_GADGET_DUALSPEED=y
-# CONFIG_USB_ZERO is not set
-CONFIG_USB_ETH=m
-CONFIG_USB_ETH_RNDIS=y
-CONFIG_USB_GADGETFS=m
-CONFIG_USB_FILE_STORAGE=m
-CONFIG_USB_FILE_STORAGE_TEST=y
-# CONFIG_USB_G_SERIAL is not set
-# CONFIG_USB_MIDI_GADGET is not set
-
-#
-# MMC/SD Card support
-#
-CONFIG_MMC=y
-# CONFIG_MMC_DEBUG is not set
-CONFIG_MMC_BLOCK=y
-CONFIG_MMC_OMAP=y
-CONFIG_MMC_PAUSING=y
-
-#
-# Real Time Clock
-#
-CONFIG_RTC_LIB=y
-# CONFIG_RTC_CLASS is not set
-
-#
-# CBUS support
-#
-CONFIG_CBUS=y
-CONFIG_CBUS_TAHVO=y
-CONFIG_CBUS_TAHVO_USER=y
-# CONFIG_CBUS_TAHVO_USB is not set
-CONFIG_CBUS_RETU=y
-CONFIG_CBUS_RETU_USER=y
-CONFIG_CBUS_RETU_POWERBUTTON=y
-CONFIG_CBUS_RETU_RTC=y
-CONFIG_CBUS_RETU_WDT=y
-CONFIG_CBUS_RETU_HEADSET=y
-
-#
-# File systems
-#
-CONFIG_EXT2_FS=y
-CONFIG_EXT2_FS_XATTR=y
-# CONFIG_EXT2_FS_POSIX_ACL is not set
-# CONFIG_EXT2_FS_SECURITY is not set
-# CONFIG_EXT2_FS_XIP is not set
-CONFIG_EXT3_FS=y
-CONFIG_EXT3_FS_XATTR=y
-# CONFIG_EXT3_FS_POSIX_ACL is not set
-# CONFIG_EXT3_FS_SECURITY is not set
-# CONFIG_EXT4DEV_FS is not set
-CONFIG_JBD=y
-# CONFIG_JBD_DEBUG is not set
-CONFIG_FS_MBCACHE=y
-# CONFIG_REISERFS_FS is not set
-# CONFIG_JFS_FS is not set
-# CONFIG_FS_POSIX_ACL is not set
-# CONFIG_XFS_FS is not set
-# CONFIG_GFS2_FS is not set
-# CONFIG_OCFS2_FS is not set
-# CONFIG_MINIX_FS is not set
-# CONFIG_ROMFS_FS is not set
-CONFIG_INOTIFY=y
-CONFIG_INOTIFY_USER=y
-# CONFIG_QUOTA is not set
-CONFIG_DNOTIFY=y
-# CONFIG_AUTOFS_FS is not set
-# CONFIG_AUTOFS4_FS is not set
-CONFIG_FUSE_FS=y
-
-#
-# CD-ROM/DVD Filesystems
-#
-# CONFIG_ISO9660_FS is not set
-# CONFIG_UDF_FS is not set
-
-#
-# DOS/FAT/NT Filesystems
-#
-CONFIG_FAT_FS=y
-# CONFIG_MSDOS_FS is not set
-CONFIG_VFAT_FS=y
-CONFIG_FAT_DEFAULT_CODEPAGE=437
-CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1"
-# CONFIG_NTFS_FS is not set
-
-#
-# Pseudo filesystems
-#
-CONFIG_PROC_FS=y
-CONFIG_PROC_SYSCTL=y
-CONFIG_SYSFS=y
-CONFIG_TMPFS=y
-# CONFIG_TMPFS_POSIX_ACL is not set
-# CONFIG_HUGETLB_PAGE is not set
-CONFIG_RAMFS=y
-# CONFIG_CONFIGFS_FS is not set
-
-#
-# Miscellaneous filesystems
-#
-# CONFIG_ADFS_FS is not set
-# CONFIG_AFFS_FS is not set
-# CONFIG_HFS_FS is not set
-# CONFIG_HFSPLUS_FS is not set
-# CONFIG_BEFS_FS is not set
-# CONFIG_BFS_FS is not set
-# CONFIG_EFS_FS is not set
-CONFIG_JFFS2_FS=y
-CONFIG_JFFS2_FS_DEBUG=0
-CONFIG_JFFS2_FS_WRITEBUFFER=y
-CONFIG_JFFS2_SUMMARY=y
-# CONFIG_JFFS2_FS_XATTR is not set
-# CONFIG_JFFS2_SYSFS is not set
-CONFIG_JFFS2_COMPRESSION_OPTIONS=y
-CONFIG_JFFS2_ZLIB=y
-CONFIG_JFFS2_LZO=y
-CONFIG_JFFS2_RTIME=y
-# CONFIG_JFFS2_RUBIN is not set
-# CONFIG_JFFS2_CMODE_NONE is not set
-CONFIG_JFFS2_CMODE_PRIORITY=y
-# CONFIG_JFFS2_CMODE_SIZE is not set
-# CONFIG_JFFS2_CMODE_FAVOURLZO is not set
-# CONFIG_CRAMFS is not set
-# CONFIG_VXFS_FS is not set
-# CONFIG_HPFS_FS is not set
-# CONFIG_QNX4FS_FS is not set
-# CONFIG_SYSV_FS is not set
-# CONFIG_UFS_FS is not set
-
-#
-# Network File Systems
-#
-CONFIG_NFS_FS=y
-CONFIG_NFS_V3=y
-# CONFIG_NFS_V3_ACL is not set
-CONFIG_NFS_V4=y
-# CONFIG_NFS_DIRECTIO is not set
-# CONFIG_NFSD is not set
-CONFIG_LOCKD=y
-CONFIG_LOCKD_V4=y
-CONFIG_NFS_COMMON=y
-CONFIG_SUNRPC=y
-CONFIG_SUNRPC_GSS=y
-CONFIG_RPCSEC_GSS_KRB5=y
-# CONFIG_RPCSEC_GSS_SPKM3 is not set
-# CONFIG_SMB_FS is not set
-CONFIG_CIFS=y
-# CONFIG_CIFS_STATS is not set
-# CONFIG_CIFS_WEAK_PW_HASH is not set
-# CONFIG_CIFS_XATTR is not set
-# CONFIG_CIFS_DEBUG2 is not set
-# CONFIG_CIFS_EXPERIMENTAL is not set
-# CONFIG_NCP_FS is not set
-# CONFIG_CODA_FS is not set
-# CONFIG_AFS_FS is not set
-# CONFIG_9P_FS is not set
-
-#
-# Partition Types
-#
-# CONFIG_PARTITION_ADVANCED is not set
-CONFIG_MSDOS_PARTITION=y
-
-#
-# Native Language Support
-#
-CONFIG_NLS=y
-CONFIG_NLS_DEFAULT="iso8859-1"
-CONFIG_NLS_CODEPAGE_437=y
-# CONFIG_NLS_CODEPAGE_737 is not set
-# CONFIG_NLS_CODEPAGE_775 is not set
-# CONFIG_NLS_CODEPAGE_850 is not set
-# CONFIG_NLS_CODEPAGE_852 is not set
-# CONFIG_NLS_CODEPAGE_855 is not set
-# CONFIG_NLS_CODEPAGE_857 is not set
-# CONFIG_NLS_CODEPAGE_860 is not set
-# CONFIG_NLS_CODEPAGE_861 is not set
-# CONFIG_NLS_CODEPAGE_862 is not set
-# CONFIG_NLS_CODEPAGE_863 is not set
-# CONFIG_NLS_CODEPAGE_864 is not set
-# CONFIG_NLS_CODEPAGE_865 is not set
-# CONFIG_NLS_CODEPAGE_866 is not set
-# CONFIG_NLS_CODEPAGE_869 is not set
-# CONFIG_NLS_CODEPAGE_936 is not set
-# CONFIG_NLS_CODEPAGE_950 is not set
-# CONFIG_NLS_CODEPAGE_932 is not set
-# CONFIG_NLS_CODEPAGE_949 is not set
-# CONFIG_NLS_CODEPAGE_874 is not set
-# CONFIG_NLS_ISO8859_8 is not set
-# CONFIG_NLS_CODEPAGE_1250 is not set
-# CONFIG_NLS_CODEPAGE_1251 is not set
-# CONFIG_NLS_ASCII is not set
-CONFIG_NLS_ISO8859_1=y
-CONFIG_NLS_ISO8859_2=y
-# CONFIG_NLS_ISO8859_3 is not set
-# CONFIG_NLS_ISO8859_4 is not set
-# CONFIG_NLS_ISO8859_5 is not set
-# CONFIG_NLS_ISO8859_6 is not set
-# CONFIG_NLS_ISO8859_7 is not set
-# CONFIG_NLS_ISO8859_9 is not set
-# CONFIG_NLS_ISO8859_13 is not set
-# CONFIG_NLS_ISO8859_14 is not set
-CONFIG_NLS_ISO8859_15=y
-# CONFIG_NLS_KOI8_R is not set
-# CONFIG_NLS_KOI8_U is not set
-CONFIG_NLS_UTF8=y
-
-#
-# Distributed Lock Manager
-#
-# CONFIG_DLM is not set
-
-#
-# Profiling support
-#
-# CONFIG_PROFILING is not set
-
-#
-# Kernel hacking
-#
-CONFIG_PRINTK_TIME=y
-CONFIG_ENABLE_MUST_CHECK=y
-CONFIG_MAGIC_SYSRQ=y
-# CONFIG_UNUSED_SYMBOLS is not set
-CONFIG_DEBUG_FS=y
-# CONFIG_HEADERS_CHECK is not set
-CONFIG_DEBUG_KERNEL=y
-# CONFIG_DEBUG_SHIRQ is not set
-CONFIG_LOG_BUF_SHIFT=14
-CONFIG_DETECT_SOFTLOCKUP=y
-# CONFIG_SCHEDSTATS is not set
-# CONFIG_TIMER_STATS is not set
-# CONFIG_DEBUG_SLAB is not set
-# CONFIG_DEBUG_RT_MUTEXES is not set
-# CONFIG_RT_MUTEX_TESTER is not set
-# CONFIG_DEBUG_SPINLOCK is not set
-# CONFIG_DEBUG_MUTEXES is not set
-# CONFIG_DEBUG_SPINLOCK_SLEEP is not set
-# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set
-# CONFIG_DEBUG_KOBJECT is not set
-CONFIG_DEBUG_BUGVERBOSE=y
-# CONFIG_DEBUG_INFO is not set
-# CONFIG_DEBUG_VM is not set
-# CONFIG_DEBUG_LIST is not set
-CONFIG_FRAME_POINTER=y
-CONFIG_FORCED_INLINING=y
-# CONFIG_RCU_TORTURE_TEST is not set
-# CONFIG_FAULT_INJECTION is not set
-
-#
-# GCOV coverage profiling
-#
-# CONFIG_GCOV_PROFILE is not set
-CONFIG_DEBUG_USER=y
-CONFIG_DEBUG_ERRORS=y
-# CONFIG_DEBUG_LL is not set
-
-#
-# Security options
-#
-# CONFIG_KEYS is not set
-CONFIG_SECURITY=y
-# CONFIG_SECURITY_NETWORK is not set
-# CONFIG_SECURITY_CAPABILITIES is not set
-# CONFIG_SECURITY_ROOTPLUG is not set
-CONFIG_SECURITY_LOWMEM=y
-
-#
-# Cryptographic options
-#
-CONFIG_CRYPTO=y
-CONFIG_CRYPTO_ALGAPI=y
-CONFIG_CRYPTO_BLKCIPHER=y
-CONFIG_CRYPTO_MANAGER=y
-# CONFIG_CRYPTO_HMAC is not set
-# CONFIG_CRYPTO_XCBC is not set
-# CONFIG_CRYPTO_NULL is not set
-# CONFIG_CRYPTO_MD4 is not set
-CONFIG_CRYPTO_MD5=y
-# CONFIG_CRYPTO_SHA1 is not set
-# CONFIG_CRYPTO_SHA256 is not set
-# CONFIG_CRYPTO_SHA512 is not set
-# CONFIG_CRYPTO_WP512 is not set
-# CONFIG_CRYPTO_TGR192 is not set
-# CONFIG_CRYPTO_GF128MUL is not set
-CONFIG_CRYPTO_ECB=m
-CONFIG_CRYPTO_CBC=y
-CONFIG_CRYPTO_PCBC=m
-# CONFIG_CRYPTO_LRW is not set
-CONFIG_CRYPTO_DES=y
-# CONFIG_CRYPTO_FCRYPT is not set
-# CONFIG_CRYPTO_BLOWFISH is not set
-# CONFIG_CRYPTO_TWOFISH is not set
-# CONFIG_CRYPTO_SERPENT is not set
-# CONFIG_CRYPTO_AES is not set
-# CONFIG_CRYPTO_CAST5 is not set
-# CONFIG_CRYPTO_CAST6 is not set
-# CONFIG_CRYPTO_TEA is not set
-# CONFIG_CRYPTO_ARC4 is not set
-# CONFIG_CRYPTO_KHAZAD is not set
-# CONFIG_CRYPTO_ANUBIS is not set
-# CONFIG_CRYPTO_DEFLATE is not set
-# CONFIG_CRYPTO_LZO is not set
-# CONFIG_CRYPTO_MICHAEL_MIC is not set
-# CONFIG_CRYPTO_CRC32C is not set
-# CONFIG_CRYPTO_CAMELLIA is not set
-# CONFIG_CRYPTO_TEST is not set
-
-#
-# Hardware crypto devices
-#
-
-#
-# Library routines
-#
-CONFIG_BITREVERSE=y
-CONFIG_CRC_CCITT=y
-# CONFIG_CRC16 is not set
-CONFIG_CRC32=y
-# CONFIG_LIBCRC32C is not set
-CONFIG_LZO_COMPRESS=y
-CONFIG_LZO_DECOMPRESS=y
-CONFIG_ZLIB_INFLATE=y
-CONFIG_ZLIB_DEFLATE=y
-CONFIG_PLIST=y
-CONFIG_HAS_IOMEM=y
-CONFIG_HAS_IOPORT=y
diff --git a/meta-extras/packages/linux/linux-nokia800-2.6.21-200823maemo6/suspend-button.patch b/meta-extras/packages/linux/linux-nokia800-2.6.21-200823maemo6/suspend-button.patch
deleted file mode 100644
index 791a66e02..000000000
--- a/meta-extras/packages/linux/linux-nokia800-2.6.21-200823maemo6/suspend-button.patch
+++ /dev/null
@@ -1,60 +0,0 @@
-Index: linux-2.6.21/drivers/cbus/retu-pwrbutton.c
-===================================================================
---- linux-2.6.21.orig/drivers/cbus/retu-pwrbutton.c 2008-02-20 22:44:18.000000000 +0000
-+++ linux-2.6.21/drivers/cbus/retu-pwrbutton.c 2008-02-20 22:46:22.000000000 +0000
-@@ -53,7 +53,9 @@
- state = PWRBTN_PRESSED;
-
- if (pwrbtn_state != state) {
-- input_report_key(pwrbtn_dev, KEY_POWER, state);
-+ input_report_key(pwrbtn_dev, KEY_SUSPEND, state);
-+ if (state == PWRBTN_PRESSED)
-+ input_event(pwrbtn_dev, EV_PWR, KEY_SUSPEND, 1);
- pwrbtn_state = state;
- }
- }
-@@ -92,8 +94,8 @@
- if (!pwrbtn_dev)
- return -ENOMEM;
-
-- pwrbtn_dev->evbit[0] = BIT(EV_KEY);
-- pwrbtn_dev->keybit[LONG(KEY_POWER)] = BIT(KEY_POWER);
-+ pwrbtn_dev->evbit[0] = BIT(EV_KEY) | BIT(EV_PWR);
-+ pwrbtn_dev->keybit[LONG(KEY_SUSPEND)] = BIT(KEY_SUSPEND);
- pwrbtn_dev->name = "retu-pwrbutton";
-
- input_register_device(pwrbtn_dev);
-Index: linux-2.6.21/drivers/char/apm-emulation.c
-===================================================================
---- linux-2.6.21.orig/drivers/char/apm-emulation.c 2008-02-21 00:32:41.000000000 +0000
-+++ linux-2.6.21/drivers/char/apm-emulation.c 2008-02-21 00:33:43.000000000 +0000
-@@ -206,10 +206,18 @@
- return ret;
- }
-
-+static in_suspend;
-+
- static void apm_suspend(void)
- {
- struct apm_user *as;
-- int err = pm_suspend(PM_SUSPEND_MEM);
-+ int err;
-+
-+ in_suspend = 1;
-+
-+ err = pm_suspend(PM_SUSPEND_MEM);
-+
-+ in_suspend = 0;
-
- /*
- * Anyone on the APM queues will think we're still suspended.
-@@ -663,6 +671,9 @@
- {
- unsigned long flags;
-
-+ if (in_suspend)
-+ return;
-+
- spin_lock_irqsave(&kapmd_queue_lock, flags);
- queue_add_event(&kapmd_queue, event);
- spin_unlock_irqrestore(&kapmd_queue_lock, flags);
diff --git a/meta-extras/packages/linux/linux-nokia800-2.6.21-osso71/nokia800/defconfig b/meta-extras/packages/linux/linux-nokia800-2.6.21-osso71/nokia800/defconfig
deleted file mode 100644
index 52ee1b10c..000000000
--- a/meta-extras/packages/linux/linux-nokia800-2.6.21-osso71/nokia800/defconfig
+++ /dev/null
@@ -1,1642 +0,0 @@
-#
-# Automatically generated make config: don't edit
-# Linux kernel version: 2.6.21-omap1
-# Tue Mar 4 12:08:53 2008
-#
-CONFIG_ARM=y
-CONFIG_SYS_SUPPORTS_APM_EMULATION=y
-CONFIG_GENERIC_GPIO=y
-CONFIG_GENERIC_TIME=y
-CONFIG_MMU=y
-# CONFIG_NO_IOPORT is not set
-CONFIG_GENERIC_HARDIRQS=y
-CONFIG_TRACE_IRQFLAGS_SUPPORT=y
-CONFIG_HARDIRQS_SW_RESEND=y
-CONFIG_GENERIC_IRQ_PROBE=y
-CONFIG_RWSEM_GENERIC_SPINLOCK=y
-# CONFIG_ARCH_HAS_ILOG2_U32 is not set
-# CONFIG_ARCH_HAS_ILOG2_U64 is not set
-CONFIG_GENERIC_HWEIGHT=y
-CONFIG_GENERIC_CALIBRATE_DELAY=y
-CONFIG_ZONE_DMA=y
-CONFIG_VECTORS_BASE=0xffff0000
-CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
-
-#
-# Code maturity level options
-#
-CONFIG_EXPERIMENTAL=y
-CONFIG_BROKEN_ON_SMP=y
-CONFIG_INIT_ENV_ARG_LIMIT=32
-
-#
-# General setup
-#
-CONFIG_LOCALVERSION=""
-# CONFIG_LOCALVERSION_AUTO is not set
-CONFIG_SWAP=y
-CONFIG_SYSVIPC=y
-# CONFIG_IPC_NS is not set
-CONFIG_SYSVIPC_SYSCTL=y
-CONFIG_POSIX_MQUEUE=y
-# CONFIG_BSD_PROCESS_ACCT is not set
-# CONFIG_TASKSTATS is not set
-# CONFIG_UTS_NS is not set
-# CONFIG_AUDIT is not set
-# CONFIG_IKCONFIG is not set
-CONFIG_SYSFS_DEPRECATED=y
-# CONFIG_RELAY is not set
-CONFIG_BLK_DEV_INITRD=y
-CONFIG_INITRAMFS_SOURCE=""
-CONFIG_CC_OPTIMIZE_FOR_SIZE=y
-CONFIG_SYSCTL=y
-# CONFIG_EMBEDDED is not set
-CONFIG_UID16=y
-CONFIG_SYSCTL_SYSCALL=y
-CONFIG_KALLSYMS=y
-# CONFIG_KALLSYMS_ALL is not set
-# CONFIG_KALLSYMS_EXTRA_PASS is not set
-CONFIG_HOTPLUG=y
-CONFIG_PRINTK=y
-CONFIG_BUG=y
-CONFIG_ELF_CORE=y
-CONFIG_BASE_FULL=y
-CONFIG_FUTEX=y
-CONFIG_EPOLL=y
-CONFIG_SHMEM=y
-CONFIG_SLAB=y
-CONFIG_VM_EVENT_COUNTERS=y
-CONFIG_RT_MUTEXES=y
-# CONFIG_TINY_SHMEM is not set
-CONFIG_BASE_SMALL=0
-# CONFIG_SLOB is not set
-
-#
-# Loadable module support
-#
-CONFIG_MODULES=y
-CONFIG_MODULE_UNLOAD=y
-# CONFIG_MODULE_FORCE_UNLOAD is not set
-# CONFIG_MODVERSIONS is not set
-# CONFIG_MODULE_SRCVERSION_ALL is not set
-# CONFIG_KMOD is not set
-
-#
-# Block layer
-#
-CONFIG_BLOCK=y
-# CONFIG_LBD is not set
-# CONFIG_BLK_DEV_IO_TRACE is not set
-# CONFIG_LSF is not set
-
-#
-# IO Schedulers
-#
-CONFIG_IOSCHED_NOOP=y
-# CONFIG_IOSCHED_AS is not set
-# CONFIG_IOSCHED_DEADLINE is not set
-# CONFIG_IOSCHED_CFQ is not set
-# CONFIG_DEFAULT_AS is not set
-# CONFIG_DEFAULT_DEADLINE is not set
-# CONFIG_DEFAULT_CFQ is not set
-CONFIG_DEFAULT_NOOP=y
-CONFIG_DEFAULT_IOSCHED="noop"
-
-#
-# System Type
-#
-# CONFIG_ARCH_AAEC2000 is not set
-# CONFIG_ARCH_INTEGRATOR is not set
-# CONFIG_ARCH_REALVIEW is not set
-# CONFIG_ARCH_VERSATILE is not set
-# CONFIG_ARCH_AT91 is not set
-# CONFIG_ARCH_CLPS7500 is not set
-# CONFIG_ARCH_CLPS711X is not set
-# CONFIG_ARCH_CO285 is not set
-# CONFIG_ARCH_EBSA110 is not set
-# CONFIG_ARCH_EP93XX is not set
-# CONFIG_ARCH_FOOTBRIDGE is not set
-# CONFIG_ARCH_NETX is not set
-# CONFIG_ARCH_H720X is not set
-# CONFIG_ARCH_IMX is not set
-# CONFIG_ARCH_IOP32X is not set
-# CONFIG_ARCH_IOP33X is not set
-# CONFIG_ARCH_IOP13XX is not set
-# CONFIG_ARCH_IXP4XX is not set
-# CONFIG_ARCH_IXP2000 is not set
-# CONFIG_ARCH_IXP23XX is not set
-# CONFIG_ARCH_L7200 is not set
-# CONFIG_ARCH_NS9XXX is not set
-# CONFIG_ARCH_PNX4008 is not set
-# CONFIG_ARCH_PXA is not set
-# CONFIG_ARCH_RPC is not set
-# CONFIG_ARCH_SA1100 is not set
-# CONFIG_ARCH_S3C2410 is not set
-# CONFIG_ARCH_SHARK is not set
-# CONFIG_ARCH_LH7A40X is not set
-CONFIG_ARCH_OMAP=y
-
-#
-# TI OMAP Implementations
-#
-CONFIG_ARCH_OMAP_OTG=y
-# CONFIG_ARCH_OMAP1 is not set
-CONFIG_ARCH_OMAP2=y
-
-#
-# OMAP Feature Selections
-#
-CONFIG_MACH_OMAP2420_DVFS=y
-CONFIG_ARCH_OMAP2420_DEBUG=y
-CONFIG_ARCH_OMAP2420_OBSERVABILITY=m
-CONFIG_ARCH_OMAP2420_PEEK_N_POKE=m
-CONFIG_ARCH_OMAP2420_SNAPSHOT=m
-CONFIG_ARCH_OMAP2420_DMA_DRAIN=y
-CONFIG_OMAP_RESET_CLOCKS=y
-CONFIG_OMAP_BOOT_TAG=y
-CONFIG_OMAP_BOOT_REASON=y
-CONFIG_OMAP_COMPONENT_VERSION=y
-CONFIG_OMAP_GPIO_SWITCH=y
-# CONFIG_OMAP_MUX is not set
-CONFIG_OMAP_STI=y
-CONFIG_OMAP_STI_CONSOLE=y
-# CONFIG_OMAP_MCBSP is not set
-CONFIG_OMAP_MMU_FWK=y
-CONFIG_OMAP_MBOX_FWK=y
-# CONFIG_OMAP_MPU_TIMER is not set
-CONFIG_OMAP_32K_TIMER=y
-CONFIG_OMAP_32K_TIMER_HZ=128
-CONFIG_OMAP_DM_TIMER=y
-# CONFIG_OMAP_LL_DEBUG_UART1 is not set
-# CONFIG_OMAP_LL_DEBUG_UART2 is not set
-CONFIG_OMAP_LL_DEBUG_UART3=y
-CONFIG_OMAP_DSP=y
-# CONFIG_OMAP_DSP_MBCMD_VERBOSE is not set
-CONFIG_OMAP_DSP_TASK_MULTIOPEN=y
-CONFIG_OMAP_DSP_FBEXPORT=y
-CONFIG_OMAP_DSP_PAUSING=y
-# CONFIG_MACH_OMAP_GENERIC is not set
-
-#
-# OMAP Core Type
-#
-CONFIG_ARCH_OMAP24XX=y
-CONFIG_ARCH_OMAP2420=y
-# CONFIG_ARCH_OMAP2430 is not set
-
-#
-# OMAP Board Type
-#
-CONFIG_MACH_NOKIA_N800=y
-CONFIG_MACH_NOKIA_RX44=y
-CONFIG_MACH_OMAP2_TUSB6010=y
-# CONFIG_MACH_OMAP_H4 is not set
-# CONFIG_MACH_OMAP_APOLLON is not set
-# CONFIG_MACH_OMAP_2430SDP is not set
-
-#
-# Processor Type
-#
-CONFIG_CPU_32=y
-CONFIG_CPU_V6=y
-# CONFIG_CPU_32v6K is not set
-CONFIG_CPU_32v6=y
-CONFIG_CPU_ABRT_EV6=y
-CONFIG_CPU_CACHE_V6=y
-CONFIG_CPU_CACHE_VIPT=y
-CONFIG_CPU_COPY_V6=y
-CONFIG_CPU_TLB_V6=y
-CONFIG_CPU_CP15=y
-CONFIG_CPU_CP15_MMU=y
-
-#
-# Processor Features
-#
-CONFIG_ARM_THUMB=y
-# CONFIG_CPU_ICACHE_DISABLE is not set
-# CONFIG_CPU_DCACHE_DISABLE is not set
-# CONFIG_CPU_DCACHE_WRITETHROUGH is not set
-# CONFIG_CPU_BPREDICT_DISABLE is not set
-# CONFIG_OUTER_CACHE is not set
-
-#
-# Bus support
-#
-
-#
-# PCCARD (PCMCIA/CardBus) support
-#
-# CONFIG_PCCARD is not set
-
-#
-# Kernel Features
-#
-# CONFIG_PREEMPT is not set
-CONFIG_NO_IDLE_HZ=y
-CONFIG_HZ=128
-CONFIG_AEABI=y
-CONFIG_OABI_COMPAT=y
-# CONFIG_ARCH_DISCONTIGMEM_ENABLE is not set
-CONFIG_SELECT_MEMORY_MODEL=y
-CONFIG_FLATMEM_MANUAL=y
-# CONFIG_DISCONTIGMEM_MANUAL is not set
-# CONFIG_SPARSEMEM_MANUAL is not set
-CONFIG_FLATMEM=y
-CONFIG_FLAT_NODE_MEM_MAP=y
-# CONFIG_SPARSEMEM_STATIC is not set
-CONFIG_SPLIT_PTLOCK_CPUS=4
-# CONFIG_RESOURCES_64BIT is not set
-CONFIG_ZONE_DMA_FLAG=1
-CONFIG_LEDS=y
-CONFIG_ALIGNMENT_TRAP=y
-
-#
-# Boot options
-#
-CONFIG_ZBOOT_ROM_TEXT=0x10C08000
-CONFIG_ZBOOT_ROM_BSS=0x10200000
-# CONFIG_ZBOOT_ROM is not set
-CONFIG_CMDLINE="root=1f03 rootfstype=jffs2 ro console=tty0"
-# CONFIG_XIP_KERNEL is not set
-# CONFIG_KEXEC is not set
-
-#
-# CPU Frequency scaling
-#
-CONFIG_CPU_FREQ=y
-CONFIG_CPU_FREQ_TABLE=y
-# CONFIG_CPU_FREQ_DEBUG is not set
-CONFIG_CPU_FREQ_STAT=y
-# CONFIG_CPU_FREQ_STAT_DETAILS is not set
-# CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE is not set
-# CONFIG_CPU_FREQ_DEFAULT_GOV_POWERSAVE is not set
-CONFIG_CPU_FREQ_DEFAULT_GOV_NULL=y
-# CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set
-CONFIG_CPU_FREQ_GOV_PERFORMANCE=y
-CONFIG_CPU_FREQ_GOV_POWERSAVE=y
-CONFIG_CPU_FREQ_GOV_NULL=y
-# CONFIG_CPU_FREQ_GOV_USERSPACE is not set
-CONFIG_CPU_FREQ_GOV_ONDEMAND=y
-CONFIG_CPU_FREQ_GOV_CONSERVATIVE=y
-
-#
-# Floating point emulation
-#
-
-#
-# At least one emulation must be selected
-#
-CONFIG_FPE_NWFPE=y
-# CONFIG_FPE_NWFPE_XP is not set
-# CONFIG_FPE_FASTFPE is not set
-CONFIG_VFP=y
-
-#
-# Userspace binary formats
-#
-CONFIG_BINFMT_ELF=y
-# CONFIG_BINFMT_AOUT is not set
-# CONFIG_BINFMT_MISC is not set
-
-#
-# Power management options
-#
-CONFIG_PM=y
-# CONFIG_PM_LEGACY is not set
-# CONFIG_PM_DEBUG is not set
-# CONFIG_PM_SYSFS_DEPRECATED is not set
-CONFIG_APM_EMULATION=y
-
-#
-# Networking
-#
-CONFIG_NET=y
-
-#
-# Networking options
-#
-# CONFIG_NETDEBUG is not set
-CONFIG_PACKET=y
-# CONFIG_PACKET_MMAP is not set
-CONFIG_UNIX=y
-CONFIG_XFRM=y
-# CONFIG_XFRM_USER is not set
-# CONFIG_XFRM_SUB_POLICY is not set
-# CONFIG_XFRM_MIGRATE is not set
-# CONFIG_NET_KEY is not set
-CONFIG_INET=y
-CONFIG_IP_MULTICAST=y
-# CONFIG_IP_ADVANCED_ROUTER is not set
-CONFIG_IP_FIB_HASH=y
-# CONFIG_IP_PNP is not set
-# CONFIG_NET_IPIP is not set
-# CONFIG_NET_IPGRE is not set
-# CONFIG_IP_MROUTE is not set
-# CONFIG_ARPD is not set
-# CONFIG_SYN_COOKIES is not set
-# CONFIG_INET_AH is not set
-# CONFIG_INET_ESP is not set
-# CONFIG_INET_IPCOMP is not set
-# CONFIG_INET_XFRM_TUNNEL is not set
-# CONFIG_INET_TUNNEL is not set
-# CONFIG_INET_XFRM_MODE_TRANSPORT is not set
-# CONFIG_INET_XFRM_MODE_TUNNEL is not set
-CONFIG_INET_XFRM_MODE_BEET=y
-CONFIG_INET_DIAG=y
-CONFIG_INET_TCP_DIAG=y
-# CONFIG_TCP_CONG_ADVANCED is not set
-CONFIG_TCP_CONG_CUBIC=y
-CONFIG_DEFAULT_TCP_CONG="cubic"
-# CONFIG_TCP_MD5SIG is not set
-
-#
-# IP: Virtual Server Configuration
-#
-# CONFIG_IP_VS is not set
-# CONFIG_IPV6 is not set
-# CONFIG_INET6_XFRM_TUNNEL is not set
-# CONFIG_INET6_TUNNEL is not set
-# CONFIG_NETLABEL is not set
-# CONFIG_NETWORK_SECMARK is not set
-CONFIG_NETFILTER=y
-# CONFIG_NETFILTER_DEBUG is not set
-
-#
-# Core Netfilter Configuration
-#
-CONFIG_NETFILTER_NETLINK=y
-# CONFIG_NETFILTER_NETLINK_QUEUE is not set
-# CONFIG_NETFILTER_NETLINK_LOG is not set
-# CONFIG_NF_CONNTRACK_ENABLED is not set
-CONFIG_NETFILTER_XTABLES=y
-# CONFIG_NETFILTER_XT_TARGET_CLASSIFY is not set
-# CONFIG_NETFILTER_XT_TARGET_MARK is not set
-# CONFIG_NETFILTER_XT_TARGET_NFQUEUE is not set
-# CONFIG_NETFILTER_XT_TARGET_NFLOG is not set
-# CONFIG_NETFILTER_XT_TARGET_TCPMSS is not set
-# CONFIG_NETFILTER_XT_MATCH_COMMENT is not set
-# CONFIG_NETFILTER_XT_MATCH_DCCP is not set
-# CONFIG_NETFILTER_XT_MATCH_DSCP is not set
-# CONFIG_NETFILTER_XT_MATCH_ESP is not set
-# CONFIG_NETFILTER_XT_MATCH_LENGTH is not set
-# CONFIG_NETFILTER_XT_MATCH_LIMIT is not set
-# CONFIG_NETFILTER_XT_MATCH_MAC is not set
-# CONFIG_NETFILTER_XT_MATCH_MARK is not set
-# CONFIG_NETFILTER_XT_MATCH_POLICY is not set
-# CONFIG_NETFILTER_XT_MATCH_MULTIPORT is not set
-# CONFIG_NETFILTER_XT_MATCH_PKTTYPE is not set
-# CONFIG_NETFILTER_XT_MATCH_QUOTA is not set
-# CONFIG_NETFILTER_XT_MATCH_REALM is not set
-# CONFIG_NETFILTER_XT_MATCH_SCTP is not set
-# CONFIG_NETFILTER_XT_MATCH_STATISTIC is not set
-# CONFIG_NETFILTER_XT_MATCH_STRING is not set
-# CONFIG_NETFILTER_XT_MATCH_TCPMSS is not set
-# CONFIG_NETFILTER_XT_MATCH_HASHLIMIT is not set
-
-#
-# IP: Netfilter Configuration
-#
-# CONFIG_IP_NF_QUEUE is not set
-CONFIG_IP_NF_IPTABLES=y
-# CONFIG_IP_NF_MATCH_IPRANGE is not set
-# CONFIG_IP_NF_MATCH_TOS is not set
-# CONFIG_IP_NF_MATCH_RECENT is not set
-# CONFIG_IP_NF_MATCH_ECN is not set
-# CONFIG_IP_NF_MATCH_AH is not set
-# CONFIG_IP_NF_MATCH_TTL is not set
-# CONFIG_IP_NF_MATCH_OWNER is not set
-# CONFIG_IP_NF_MATCH_ADDRTYPE is not set
-CONFIG_IP_NF_FILTER=y
-# CONFIG_IP_NF_TARGET_REJECT is not set
-# CONFIG_IP_NF_TARGET_LOG is not set
-# CONFIG_IP_NF_TARGET_ULOG is not set
-CONFIG_IP_NF_TARGET_IDLETIMER=y
-# CONFIG_IP_NF_MANGLE is not set
-# CONFIG_IP_NF_RAW is not set
-# CONFIG_IP_NF_ARPTABLES is not set
-
-#
-# DCCP Configuration (EXPERIMENTAL)
-#
-# CONFIG_IP_DCCP is not set
-
-#
-# SCTP Configuration (EXPERIMENTAL)
-#
-# CONFIG_IP_SCTP is not set
-
-#
-# TIPC Configuration (EXPERIMENTAL)
-#
-# CONFIG_TIPC is not set
-# CONFIG_ATM is not set
-# CONFIG_BRIDGE is not set
-# CONFIG_VLAN_8021Q is not set
-# CONFIG_DECNET is not set
-# CONFIG_LLC2 is not set
-# CONFIG_IPX is not set
-# CONFIG_ATALK is not set
-# CONFIG_X25 is not set
-# CONFIG_LAPB is not set
-# CONFIG_ECONET is not set
-# CONFIG_WAN_ROUTER is not set
-
-#
-# QoS and/or fair queueing
-#
-# CONFIG_NET_SCHED is not set
-
-#
-# Network testing
-#
-# CONFIG_NET_PKTGEN is not set
-# CONFIG_HAMRADIO is not set
-# CONFIG_IRDA is not set
-CONFIG_BT=y
-CONFIG_BT_L2CAP=y
-CONFIG_BT_SCO=y
-CONFIG_BT_RFCOMM=y
-CONFIG_BT_RFCOMM_TTY=y
-CONFIG_BT_BNEP=y
-# CONFIG_BT_BNEP_MC_FILTER is not set
-# CONFIG_BT_BNEP_PROTO_FILTER is not set
-CONFIG_BT_HIDP=y
-
-#
-# Bluetooth device drivers
-#
-# CONFIG_BT_HCIUSB is not set
-# CONFIG_BT_HCIUART is not set
-# CONFIG_BT_HCIBCM203X is not set
-# CONFIG_BT_HCIBPA10X is not set
-# CONFIG_BT_HCIBFUSB is not set
-# CONFIG_BT_HCIBRF6150 is not set
-CONFIG_BT_HCIH4P=y
-# CONFIG_BT_HCIVHCI is not set
-# CONFIG_IEEE80211 is not set
-CONFIG_WIRELESS_EXT=y
-
-#
-# Device Drivers
-#
-
-#
-# Generic Driver Options
-#
-CONFIG_STANDALONE=y
-CONFIG_PREVENT_FIRMWARE_BUILD=y
-CONFIG_FW_LOADER=y
-# CONFIG_DEBUG_DRIVER is not set
-# CONFIG_DEBUG_DEVRES is not set
-# CONFIG_SYS_HYPERVISOR is not set
-
-#
-# Connector - unified userspace <-> kernelspace linker
-#
-# CONFIG_CONNECTOR is not set
-
-#
-# Memory Technology Devices (MTD)
-#
-CONFIG_MTD=y
-# CONFIG_MTD_DEBUG is not set
-# CONFIG_MTD_CONCAT is not set
-CONFIG_MTD_PARTITIONS=y
-# CONFIG_MTD_REDBOOT_PARTS is not set
-CONFIG_MTD_CMDLINE_PARTS=y
-# CONFIG_MTD_AFS_PARTS is not set
-
-#
-# User Modules And Translation Layers
-#
-CONFIG_MTD_CHAR=y
-CONFIG_MTD_BLKDEVS=y
-CONFIG_MTD_BLOCK=y
-# CONFIG_FTL is not set
-# CONFIG_NFTL is not set
-# CONFIG_INFTL is not set
-# CONFIG_RFD_FTL is not set
-# CONFIG_SSFDC is not set
-# CONFIG_MTD_OOPS is not set
-
-#
-# RAM/ROM/Flash chip drivers
-#
-# CONFIG_MTD_CFI is not set
-# CONFIG_MTD_JEDECPROBE is not set
-CONFIG_MTD_MAP_BANK_WIDTH_1=y
-CONFIG_MTD_MAP_BANK_WIDTH_2=y
-CONFIG_MTD_MAP_BANK_WIDTH_4=y
-# CONFIG_MTD_MAP_BANK_WIDTH_8 is not set
-# CONFIG_MTD_MAP_BANK_WIDTH_16 is not set
-# CONFIG_MTD_MAP_BANK_WIDTH_32 is not set
-CONFIG_MTD_CFI_I1=y
-CONFIG_MTD_CFI_I2=y
-# CONFIG_MTD_CFI_I4 is not set
-# CONFIG_MTD_CFI_I8 is not set
-# CONFIG_MTD_RAM is not set
-# CONFIG_MTD_ROM is not set
-# CONFIG_MTD_ABSENT is not set
-# CONFIG_MTD_OBSOLETE_CHIPS is not set
-
-#
-# Mapping drivers for chip access
-#
-# CONFIG_MTD_COMPLEX_MAPPINGS is not set
-# CONFIG_MTD_PLATRAM is not set
-
-#
-# Self-contained MTD device drivers
-#
-# CONFIG_MTD_DATAFLASH is not set
-# CONFIG_MTD_M25P80 is not set
-# CONFIG_MTD_SLRAM is not set
-# CONFIG_MTD_PHRAM is not set
-# CONFIG_MTD_MTDRAM is not set
-# CONFIG_MTD_BLOCK2MTD is not set
-
-#
-# Disk-On-Chip Device Drivers
-#
-# CONFIG_MTD_DOC2000 is not set
-# CONFIG_MTD_DOC2001 is not set
-# CONFIG_MTD_DOC2001PLUS is not set
-
-#
-# NAND Flash Device Drivers
-#
-# CONFIG_MTD_NAND is not set
-
-#
-# OneNAND Flash Device Drivers
-#
-CONFIG_MTD_ONENAND=y
-# CONFIG_MTD_ONENAND_VERIFY_WRITE is not set
-# CONFIG_MTD_ONENAND_GENERIC is not set
-CONFIG_MTD_ONENAND_OMAP2=y
-CONFIG_MTD_ONENAND_OTP=y
-
-#
-# Parallel port support
-#
-# CONFIG_PARPORT is not set
-
-#
-# Plug and Play support
-#
-# CONFIG_PNPACPI is not set
-
-#
-# Block devices
-#
-# CONFIG_BLK_DEV_COW_COMMON is not set
-CONFIG_BLK_DEV_LOOP=y
-# CONFIG_BLK_DEV_CRYPTOLOOP is not set
-# CONFIG_BLK_DEV_NBD is not set
-# CONFIG_BLK_DEV_UB is not set
-CONFIG_BLK_DEV_RAM=y
-CONFIG_BLK_DEV_RAM_COUNT=16
-CONFIG_BLK_DEV_RAM_SIZE=4096
-CONFIG_BLK_DEV_RAM_BLOCKSIZE=1024
-# CONFIG_CDROM_PKTCDVD is not set
-# CONFIG_ATA_OVER_ETH is not set
-
-#
-# SCSI device support
-#
-# CONFIG_RAID_ATTRS is not set
-CONFIG_SCSI=y
-# CONFIG_SCSI_TGT is not set
-# CONFIG_SCSI_NETLINK is not set
-# CONFIG_SCSI_PROC_FS is not set
-
-#
-# SCSI support type (disk, tape, CD-ROM)
-#
-CONFIG_BLK_DEV_SD=y
-# CONFIG_CHR_DEV_ST is not set
-# CONFIG_CHR_DEV_OSST is not set
-# CONFIG_BLK_DEV_SR is not set
-# CONFIG_CHR_DEV_SG is not set
-# CONFIG_CHR_DEV_SCH is not set
-
-#
-# Some SCSI devices (e.g. CD jukebox) support multiple LUNs
-#
-CONFIG_SCSI_MULTI_LUN=y
-# CONFIG_SCSI_CONSTANTS is not set
-# CONFIG_SCSI_LOGGING is not set
-# CONFIG_SCSI_SCAN_ASYNC is not set
-
-#
-# SCSI Transports
-#
-# CONFIG_SCSI_SPI_ATTRS is not set
-# CONFIG_SCSI_FC_ATTRS is not set
-# CONFIG_SCSI_ISCSI_ATTRS is not set
-# CONFIG_SCSI_SAS_ATTRS is not set
-# CONFIG_SCSI_SAS_LIBSAS is not set
-
-#
-# SCSI low-level drivers
-#
-# CONFIG_ISCSI_TCP is not set
-# CONFIG_SCSI_DEBUG is not set
-
-#
-# Serial ATA (prod) and Parallel ATA (experimental) drivers
-#
-# CONFIG_ATA is not set
-
-#
-# Multi-device support (RAID and LVM)
-#
-# CONFIG_MD is not set
-
-#
-# Fusion MPT device support
-#
-# CONFIG_FUSION is not set
-
-#
-# IEEE 1394 (FireWire) support
-#
-
-#
-# I2O device support
-#
-
-#
-# Network device support
-#
-CONFIG_NETDEVICES=y
-# CONFIG_DUMMY is not set
-# CONFIG_BONDING is not set
-# CONFIG_EQUALIZER is not set
-CONFIG_TUN=y
-
-#
-# PHY device support
-#
-
-#
-# Ethernet (10 or 100Mbit)
-#
-# CONFIG_NET_ETHERNET is not set
-CONFIG_MII=y
-
-#
-# Ethernet (1000 Mbit)
-#
-
-#
-# Ethernet (10000 Mbit)
-#
-
-#
-# Token Ring devices
-#
-
-#
-# Wireless LAN (non-hamradio)
-#
-CONFIG_NET_RADIO=y
-# CONFIG_NET_WIRELESS_RTNETLINK is not set
-
-#
-# Obsolete Wireless cards support (pre-802.11)
-#
-# CONFIG_STRIP is not set
-# CONFIG_USB_ZD1201 is not set
-# CONFIG_HOSTAP is not set
-
-#
-# Wan interfaces
-#
-# CONFIG_WAN is not set
-CONFIG_PPP=y
-# CONFIG_PPP_MULTILINK is not set
-CONFIG_PPP_FILTER=y
-CONFIG_PPP_ASYNC=y
-CONFIG_PPP_SYNC_TTY=y
-CONFIG_PPP_DEFLATE=y
-CONFIG_PPP_BSDCOMP=y
-# CONFIG_PPP_MPPE is not set
-# CONFIG_PPPOE is not set
-# CONFIG_SLIP is not set
-CONFIG_SLHC=y
-# CONFIG_SHAPER is not set
-# CONFIG_NETCONSOLE is not set
-# CONFIG_NETPOLL is not set
-# CONFIG_NET_POLL_CONTROLLER is not set
-
-#
-# ISDN subsystem
-#
-# CONFIG_ISDN is not set
-
-#
-# Input device support
-#
-CONFIG_INPUT=y
-# CONFIG_INPUT_FF_MEMLESS is not set
-
-#
-# Userland interfaces
-#
-CONFIG_INPUT_MOUSEDEV=y
-# CONFIG_INPUT_MOUSEDEV_PSAUX is not set
-CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024
-CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768
-# CONFIG_INPUT_JOYDEV is not set
-# CONFIG_INPUT_TSDEV is not set
-CONFIG_INPUT_EVDEV=y
-# CONFIG_INPUT_EVBUG is not set
-CONFIG_INPUT_POWER=y
-
-#
-# Input Device Drivers
-#
-CONFIG_INPUT_KEYBOARD=y
-# CONFIG_KEYBOARD_ATKBD is not set
-# CONFIG_KEYBOARD_SUNKBD is not set
-# CONFIG_KEYBOARD_LKKBD is not set
-# CONFIG_KEYBOARD_XTKBD is not set
-# CONFIG_KEYBOARD_NEWTON is not set
-# CONFIG_KEYBOARD_STOWAWAY is not set
-# CONFIG_KEYBOARD_OMAP is not set
-# CONFIG_KEYBOARD_GPIO is not set
-CONFIG_KEYBOARD_TSC2301=y
-# CONFIG_INPUT_MOUSE is not set
-# CONFIG_INPUT_JOYSTICK is not set
-CONFIG_INPUT_TOUCHSCREEN=y
-# CONFIG_TOUCHSCREEN_ADS7846 is not set
-# CONFIG_TOUCHSCREEN_GUNZE is not set
-# CONFIG_TOUCHSCREEN_ELO is not set
-# CONFIG_TOUCHSCREEN_MTOUCH is not set
-# CONFIG_TOUCHSCREEN_MK712 is not set
-# CONFIG_TOUCHSCREEN_PENMOUNT is not set
-# CONFIG_TOUCHSCREEN_TOUCHRIGHT is not set
-# CONFIG_TOUCHSCREEN_TOUCHWIN is not set
-# CONFIG_TOUCHSCREEN_UCB1400 is not set
-CONFIG_TOUCHSCREEN_TSC2005=y
-CONFIG_TOUCHSCREEN_TSC2301=y
-# CONFIG_TOUCHSCREEN_TSC2046 is not set
-# CONFIG_INPUT_MISC is not set
-
-#
-# Hardware I/O ports
-#
-CONFIG_SERIO=y
-CONFIG_SERIO_SERPORT=y
-# CONFIG_SERIO_RAW is not set
-# CONFIG_GAMEPORT is not set
-
-#
-# Character devices
-#
-CONFIG_VT=y
-CONFIG_VT_CONSOLE=y
-CONFIG_HW_CONSOLE=y
-# CONFIG_VT_HW_CONSOLE_BINDING is not set
-# CONFIG_SERIAL_NONSTANDARD is not set
-
-#
-# Serial drivers
-#
-# CONFIG_SERIAL_8250 is not set
-
-#
-# Non-8250 serial port support
-#
-CONFIG_SERIAL_OMAP=y
-CONFIG_SERIAL_OMAP_CONSOLE=y
-CONFIG_SERIAL_CORE=y
-CONFIG_SERIAL_CORE_CONSOLE=y
-CONFIG_UNIX98_PTYS=y
-# CONFIG_LEGACY_PTYS is not set
-
-#
-# IPMI
-#
-# CONFIG_IPMI_HANDLER is not set
-
-#
-# Watchdog Cards
-#
-CONFIG_WATCHDOG=y
-CONFIG_WATCHDOG_NOWAYOUT=y
-
-#
-# Watchdog Device Drivers
-#
-# CONFIG_SOFT_WATCHDOG is not set
-CONFIG_OMAP_WATCHDOG=y
-
-#
-# USB-based Watchdog Cards
-#
-# CONFIG_USBPCWATCHDOG is not set
-# CONFIG_HW_RANDOM is not set
-# CONFIG_NVRAM is not set
-# CONFIG_DTLK is not set
-# CONFIG_R3964 is not set
-# CONFIG_RAW_DRIVER is not set
-
-#
-# TPM devices
-#
-# CONFIG_TCG_TPM is not set
-
-#
-# I2C support
-#
-CONFIG_I2C=y
-# CONFIG_I2C_CHARDEV is not set
-
-#
-# I2C Algorithms
-#
-# CONFIG_I2C_ALGOBIT is not set
-# CONFIG_I2C_ALGOPCF is not set
-# CONFIG_I2C_ALGOPCA is not set
-
-#
-# I2C Hardware Bus support
-#
-# CONFIG_I2C_OCORES is not set
-CONFIG_I2C_OMAP=y
-# CONFIG_I2C_PARPORT_LIGHT is not set
-# CONFIG_I2C_STUB is not set
-# CONFIG_I2C_PCA_ISA is not set
-
-#
-# Miscellaneous I2C Chip support
-#
-# CONFIG_SENSORS_DS1337 is not set
-# CONFIG_SENSORS_DS1374 is not set
-# CONFIG_SENSORS_EEPROM is not set
-# CONFIG_SENSORS_PCF8574 is not set
-# CONFIG_SENSORS_PCA9539 is not set
-# CONFIG_SENSORS_PCF8591 is not set
-# CONFIG_ISP1301_OMAP is not set
-# CONFIG_TPS65010 is not set
-# CONFIG_SENSORS_TLV320AIC23 is not set
-CONFIG_SENSORS_TSL2563=y
-# CONFIG_GPIOEXPANDER_OMAP is not set
-CONFIG_LM8323=y
-CONFIG_LP5521=y
-CONFIG_MENELAUS=y
-# CONFIG_TWL4030_CORE is not set
-# CONFIG_SENSORS_MAX6875 is not set
-# CONFIG_I2C_DEBUG_CORE is not set
-# CONFIG_I2C_DEBUG_ALGO is not set
-# CONFIG_I2C_DEBUG_BUS is not set
-# CONFIG_I2C_DEBUG_CHIP is not set
-
-#
-# SPI support
-#
-CONFIG_SPI=y
-# CONFIG_SPI_DEBUG is not set
-CONFIG_SPI_MASTER=y
-
-#
-# SPI Master Controller Drivers
-#
-# CONFIG_SPI_BITBANG is not set
-CONFIG_SPI_OMAP24XX=y
-CONFIG_SPI_OMAP_PAUSING=y
-
-#
-# SPI Protocol Masters
-#
-# CONFIG_SPI_AT25 is not set
-# CONFIG_SPI_TSC2005 is not set
-# CONFIG_SPI_TSC2101 is not set
-# CONFIG_SPI_TSC2102 is not set
-CONFIG_SPI_TSC2301=y
-CONFIG_SPI_TSC2301_AUDIO=y
-
-#
-# Dallas's 1-wire bus
-#
-# CONFIG_W1 is not set
-
-#
-# Hardware Monitoring support
-#
-CONFIG_HWMON=y
-# CONFIG_HWMON_VID is not set
-# CONFIG_SENSORS_ABITUGURU is not set
-# CONFIG_SENSORS_ADM1021 is not set
-# CONFIG_SENSORS_ADM1025 is not set
-# CONFIG_SENSORS_ADM1026 is not set
-# CONFIG_SENSORS_ADM1029 is not set
-# CONFIG_SENSORS_ADM1031 is not set
-# CONFIG_SENSORS_ADM9240 is not set
-# CONFIG_SENSORS_ASB100 is not set
-# CONFIG_SENSORS_ATXP1 is not set
-# CONFIG_SENSORS_DS1621 is not set
-# CONFIG_SENSORS_F71805F is not set
-# CONFIG_SENSORS_FSCHER is not set
-# CONFIG_SENSORS_FSCPOS is not set
-# CONFIG_SENSORS_GL518SM is not set
-# CONFIG_SENSORS_GL520SM is not set
-# CONFIG_SENSORS_IT87 is not set
-# CONFIG_SENSORS_LM63 is not set
-# CONFIG_SENSORS_LM70 is not set
-# CONFIG_SENSORS_LM75 is not set
-# CONFIG_SENSORS_LM77 is not set
-# CONFIG_SENSORS_LM78 is not set
-# CONFIG_SENSORS_LM80 is not set
-# CONFIG_SENSORS_LM83 is not set
-# CONFIG_SENSORS_LM85 is not set
-# CONFIG_SENSORS_LM87 is not set
-# CONFIG_SENSORS_LM90 is not set
-# CONFIG_SENSORS_LM92 is not set
-# CONFIG_SENSORS_MAX1619 is not set
-# CONFIG_SENSORS_PC87360 is not set
-# CONFIG_SENSORS_PC87427 is not set
-# CONFIG_SENSORS_SMSC47M1 is not set
-# CONFIG_SENSORS_SMSC47M192 is not set
-# CONFIG_SENSORS_SMSC47B397 is not set
-CONFIG_SENSORS_TMP105=y
-# CONFIG_SENSORS_VT1211 is not set
-# CONFIG_SENSORS_W83781D is not set
-# CONFIG_SENSORS_W83791D is not set
-# CONFIG_SENSORS_W83792D is not set
-# CONFIG_SENSORS_W83793 is not set
-# CONFIG_SENSORS_W83L785TS is not set
-# CONFIG_SENSORS_W83627HF is not set
-# CONFIG_SENSORS_W83627EHF is not set
-# CONFIG_HWMON_DEBUG_CHIP is not set
-
-#
-# Misc devices
-#
-
-#
-# Multifunction device drivers
-#
-# CONFIG_MFD_SM501 is not set
-
-#
-# LED devices
-#
-CONFIG_NEW_LEDS=y
-CONFIG_LEDS_CLASS=y
-
-#
-# LED drivers
-#
-# CONFIG_LEDS_OMAP_DEBUG is not set
-# CONFIG_LEDS_OMAP is not set
-CONFIG_LEDS_OMAP_PWM=y
-
-#
-# LED Triggers
-#
-CONFIG_LEDS_TRIGGERS=y
-CONFIG_LEDS_TRIGGER_TIMER=y
-CONFIG_LEDS_TRIGGER_HEARTBEAT=y
-
-#
-# Multimedia devices
-#
-CONFIG_VIDEO_DEV=y
-# CONFIG_VIDEO_V4L1 is not set
-# CONFIG_VIDEO_V4L1_COMPAT is not set
-CONFIG_VIDEO_V4L2=y
-
-#
-# Video Capture Adapters
-#
-
-#
-# Video Capture Adapters
-#
-# CONFIG_VIDEO_ADV_DEBUG is not set
-CONFIG_VIDEO_HELPER_CHIPS_AUTO=y
-# CONFIG_VIDEO_SAA5246A is not set
-# CONFIG_VIDEO_SAA5249 is not set
-
-#
-# V4L USB devices
-#
-# CONFIG_VIDEO_PVRUSB2 is not set
-# CONFIG_VIDEO_USBVISION is not set
-CONFIG_VIDEO_OMAP_CAMERA=y
-# CONFIG_VIDEO_CAMERA_SENSOR_OV9640 is not set
-CONFIG_VIDEO_CAMERA_SENSOR_TCM825X=y
-
-#
-# Radio Adapters
-#
-CONFIG_RADIO_TEA5761=y
-# CONFIG_USB_DSBR is not set
-
-#
-# Digital Video Broadcasting Devices
-#
-# CONFIG_DVB is not set
-CONFIG_VIDEO_BUF=y
-# CONFIG_USB_DABUSB is not set
-
-#
-# Graphics support
-#
-# CONFIG_BACKLIGHT_LCD_SUPPORT is not set
-CONFIG_FB=y
-# CONFIG_FIRMWARE_EDID is not set
-# CONFIG_FB_DDC is not set
-# CONFIG_FB_CFB_FILLRECT is not set
-# CONFIG_FB_CFB_COPYAREA is not set
-# CONFIG_FB_CFB_IMAGEBLIT is not set
-# CONFIG_FB_SVGALIB is not set
-# CONFIG_FB_MACMODES is not set
-# CONFIG_FB_BACKLIGHT is not set
-# CONFIG_FB_MODE_HELPERS is not set
-# CONFIG_FB_TILEBLITTING is not set
-
-#
-# Frame buffer hardware drivers
-#
-# CONFIG_FB_S1D13XXX is not set
-CONFIG_FB_OMAP=y
-CONFIG_FB_OMAP_LCDC_EXTERNAL=y
-# CONFIG_FB_OMAP_LCDC_HWA742 is not set
-CONFIG_FB_OMAP_LCDC_BLIZZARD=y
-# CONFIG_FB_OMAP_MANUAL_UPDATE is not set
-CONFIG_FB_OMAP_LCD_MIPID=y
-CONFIG_FB_OMAP_BOOTLOADER_INIT=y
-CONFIG_FB_OMAP_CONSISTENT_DMA_SIZE=4
-CONFIG_FB_OMAP_PAUSING=y
-# CONFIG_FB_VIRTUAL is not set
-
-#
-# Console display driver support
-#
-# CONFIG_VGA_CONSOLE is not set
-CONFIG_DUMMY_CONSOLE=y
-CONFIG_FRAMEBUFFER_CONSOLE=y
-# CONFIG_FRAMEBUFFER_CONSOLE_ROTATION is not set
-# CONFIG_FONTS is not set
-CONFIG_FONT_8x8=y
-CONFIG_FONT_8x16=y
-
-#
-# Logo configuration
-#
-# CONFIG_LOGO is not set
-
-#
-# Sound
-#
-CONFIG_SOUND=y
-
-#
-# Advanced Linux Sound Architecture
-#
-CONFIG_SND=y
-# CONFIG_SND_SEQUENCER is not set
-CONFIG_SND_OSSEMUL=y
-CONFIG_SND_MIXER_OSS=y
-# CONFIG_SND_PCM_OSS is not set
-# CONFIG_SND_DYNAMIC_MINORS is not set
-CONFIG_SND_SUPPORT_OLD_API=y
-# CONFIG_SND_VERBOSE_PROCFS is not set
-# CONFIG_SND_VERBOSE_PRINTK is not set
-# CONFIG_SND_DEBUG is not set
-
-#
-# Generic devices
-#
-# CONFIG_SND_DUMMY is not set
-# CONFIG_SND_MTPAV is not set
-# CONFIG_SND_SERIAL_U16550 is not set
-# CONFIG_SND_MPU401 is not set
-
-#
-# ALSA ARM devices
-#
-# CONFIG_SND_OMAP_AIC23 is not set
-CONFIG_SND_AIC33=y
-# CONFIG_SND_OMAP_TSC2101 is not set
-# CONFIG_SND_SX1 is not set
-# CONFIG_SND_OMAP_TSC2102 is not set
-CONFIG_SND_OMAP24XX_EAC=y
-
-#
-# USB devices
-#
-# CONFIG_SND_USB_AUDIO is not set
-
-#
-# SoC audio support
-#
-# CONFIG_SND_SOC is not set
-
-#
-# Open Sound System
-#
-# CONFIG_SOUND_PRIME is not set
-
-#
-# HID Devices
-#
-CONFIG_HID=y
-# CONFIG_HID_DEBUG is not set
-
-#
-# USB support
-#
-CONFIG_USB_ARCH_HAS_HCD=y
-CONFIG_USB_ARCH_HAS_OHCI=y
-# CONFIG_USB_ARCH_HAS_EHCI is not set
-CONFIG_USB=y
-CONFIG_USB_DEBUG=y
-
-#
-# Miscellaneous USB options
-#
-CONFIG_USB_DEVICEFS=y
-CONFIG_USB_DYNAMIC_MINORS=y
-CONFIG_USB_SUSPEND=y
-CONFIG_USB_OTG=y
-CONFIG_USB_OTG_WHITELIST=y
-# CONFIG_USB_OTG_BLACKLIST_HUB is not set
-
-#
-# USB Host Controller Drivers
-#
-# CONFIG_USB_ISP116X_HCD is not set
-# CONFIG_USB_OHCI_HCD is not set
-# CONFIG_USB_SL811_HCD is not set
-CONFIG_USB_MUSB_HDRC=y
-CONFIG_USB_TUSB6010=y
-CONFIG_USB_TUSB6010_TEST=y
-# CONFIG_USB_MUSB_HOST is not set
-# CONFIG_USB_MUSB_PERIPHERAL is not set
-CONFIG_USB_MUSB_OTG=y
-CONFIG_USB_GADGET_MUSB_HDRC=y
-CONFIG_USB_MUSB_HDRC_HCD=y
-CONFIG_USB_MUSB_HSET=y
-# CONFIG_MUSB_PIO_ONLY is not set
-# CONFIG_USB_INVENTRA_DMA is not set
-# CONFIG_USB_TI_CPPI_DMA is not set
-CONFIG_USB_TUSB_OMAP_DMA=y
-CONFIG_USB_MUSB_LOGLEVEL=1
-
-#
-# USB Device Class drivers
-#
-# CONFIG_USB_ACM is not set
-# CONFIG_USB_PRINTER is not set
-
-#
-# NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support'
-#
-
-#
-# may also be needed; see USB_STORAGE Help for more information
-#
-CONFIG_USB_STORAGE=y
-# CONFIG_USB_STORAGE_DEBUG is not set
-# CONFIG_USB_STORAGE_DATAFAB is not set
-# CONFIG_USB_STORAGE_FREECOM is not set
-# CONFIG_USB_STORAGE_DPCM is not set
-# CONFIG_USB_STORAGE_USBAT is not set
-# CONFIG_USB_STORAGE_SDDR09 is not set
-# CONFIG_USB_STORAGE_SDDR55 is not set
-# CONFIG_USB_STORAGE_JUMPSHOT is not set
-# CONFIG_USB_STORAGE_ALAUDA is not set
-# CONFIG_USB_STORAGE_KARMA is not set
-CONFIG_USB_LIBUSUAL=y
-
-#
-# USB Input Devices
-#
-CONFIG_USB_HID=y
-# CONFIG_USB_HIDINPUT_POWERBOOK is not set
-# CONFIG_HID_FF is not set
-# CONFIG_USB_HIDDEV is not set
-# CONFIG_USB_AIPTEK is not set
-# CONFIG_USB_WACOM is not set
-# CONFIG_USB_ACECAD is not set
-# CONFIG_USB_KBTAB is not set
-# CONFIG_USB_POWERMATE is not set
-# CONFIG_USB_TOUCHSCREEN is not set
-# CONFIG_USB_YEALINK is not set
-# CONFIG_USB_XPAD is not set
-# CONFIG_USB_ATI_REMOTE is not set
-# CONFIG_USB_ATI_REMOTE2 is not set
-# CONFIG_USB_KEYSPAN_REMOTE is not set
-# CONFIG_USB_APPLETOUCH is not set
-# CONFIG_USB_GTCO is not set
-
-#
-# USB Imaging devices
-#
-# CONFIG_USB_MDC800 is not set
-# CONFIG_USB_MICROTEK is not set
-
-#
-# USB Network Adapters
-#
-# CONFIG_USB_CATC is not set
-# CONFIG_USB_KAWETH is not set
-# CONFIG_USB_PEGASUS is not set
-CONFIG_USB_RTL8150=y
-# CONFIG_USB_USBNET_MII is not set
-CONFIG_USB_USBNET=y
-CONFIG_USB_NET_CDCETHER=y
-# CONFIG_USB_NET_DM9601 is not set
-# CONFIG_USB_NET_GL620A is not set
-CONFIG_USB_NET_NET1080=y
-CONFIG_USB_NET_PLUSB=y
-# CONFIG_USB_NET_MCS7830 is not set
-CONFIG_USB_NET_RNDIS_HOST=y
-CONFIG_USB_NET_CDC_SUBSET=y
-# CONFIG_USB_ALI_M5632 is not set
-# CONFIG_USB_AN2720 is not set
-CONFIG_USB_BELKIN=y
-CONFIG_USB_ARMLINUX=y
-# CONFIG_USB_EPSON2888 is not set
-# CONFIG_USB_KC2190 is not set
-CONFIG_USB_NET_ZAURUS=y
-CONFIG_USB_MON=y
-
-#
-# USB port drivers
-#
-
-#
-# USB Serial Converter support
-#
-# CONFIG_USB_SERIAL is not set
-
-#
-# USB Miscellaneous drivers
-#
-# CONFIG_USB_EMI62 is not set
-# CONFIG_USB_EMI26 is not set
-# CONFIG_USB_ADUTUX is not set
-# CONFIG_USB_AUERSWALD is not set
-# CONFIG_USB_RIO500 is not set
-# CONFIG_USB_LEGOTOWER is not set
-# CONFIG_USB_LCD is not set
-# CONFIG_USB_BERRY_CHARGE is not set
-# CONFIG_USB_LED is not set
-# CONFIG_USB_CYPRESS_CY7C63 is not set
-# CONFIG_USB_CYTHERM is not set
-# CONFIG_USB_PHIDGET is not set
-# CONFIG_USB_IDMOUSE is not set
-# CONFIG_USB_FTDI_ELAN is not set
-# CONFIG_USB_APPLEDISPLAY is not set
-# CONFIG_USB_LD is not set
-# CONFIG_USB_TRANCEVIBRATOR is not set
-# CONFIG_USB_IOWARRIOR is not set
-CONFIG_USB_TEST=y
-
-#
-# USB DSL modem support
-#
-
-#
-# USB Gadget Support
-#
-CONFIG_USB_GADGET=m
-CONFIG_USB_GADGET_DEBUG_FILES=y
-CONFIG_USB_GADGET_SELECTED=y
-# CONFIG_USB_GADGET_NET2280 is not set
-# CONFIG_USB_GADGET_PXA2XX is not set
-# CONFIG_USB_GADGET_GOKU is not set
-# CONFIG_USB_GADGET_LH7A40X is not set
-# CONFIG_USB_GADGET_OMAP is not set
-# CONFIG_USB_GADGET_AT91 is not set
-# CONFIG_USB_GADGET_DUMMY_HCD is not set
-CONFIG_USB_GADGET_DUALSPEED=y
-# CONFIG_USB_ZERO is not set
-CONFIG_USB_ETH=m
-CONFIG_USB_ETH_RNDIS=y
-CONFIG_USB_GADGETFS=m
-CONFIG_USB_FILE_STORAGE=m
-CONFIG_USB_FILE_STORAGE_TEST=y
-# CONFIG_USB_G_SERIAL is not set
-# CONFIG_USB_MIDI_GADGET is not set
-
-#
-# MMC/SD Card support
-#
-CONFIG_MMC=y
-# CONFIG_MMC_DEBUG is not set
-CONFIG_MMC_BLOCK=y
-CONFIG_MMC_OMAP=y
-CONFIG_MMC_PAUSING=y
-
-#
-# Real Time Clock
-#
-CONFIG_RTC_LIB=y
-# CONFIG_RTC_CLASS is not set
-
-#
-# CBUS support
-#
-CONFIG_CBUS=y
-CONFIG_CBUS_TAHVO=y
-CONFIG_CBUS_TAHVO_USER=y
-# CONFIG_CBUS_TAHVO_USB is not set
-CONFIG_CBUS_RETU=y
-CONFIG_CBUS_RETU_USER=y
-CONFIG_CBUS_RETU_POWERBUTTON=y
-CONFIG_CBUS_RETU_RTC=y
-CONFIG_CBUS_RETU_WDT=y
-CONFIG_CBUS_RETU_HEADSET=y
-
-#
-# File systems
-#
-CONFIG_EXT2_FS=y
-CONFIG_EXT2_FS_XATTR=y
-# CONFIG_EXT2_FS_POSIX_ACL is not set
-# CONFIG_EXT2_FS_SECURITY is not set
-# CONFIG_EXT2_FS_XIP is not set
-CONFIG_EXT3_FS=y
-CONFIG_EXT3_FS_XATTR=y
-# CONFIG_EXT3_FS_POSIX_ACL is not set
-# CONFIG_EXT3_FS_SECURITY is not set
-# CONFIG_EXT4DEV_FS is not set
-CONFIG_JBD=y
-# CONFIG_JBD_DEBUG is not set
-CONFIG_FS_MBCACHE=y
-# CONFIG_REISERFS_FS is not set
-# CONFIG_JFS_FS is not set
-# CONFIG_FS_POSIX_ACL is not set
-# CONFIG_XFS_FS is not set
-# CONFIG_GFS2_FS is not set
-# CONFIG_OCFS2_FS is not set
-# CONFIG_MINIX_FS is not set
-# CONFIG_ROMFS_FS is not set
-CONFIG_INOTIFY=y
-CONFIG_INOTIFY_USER=y
-# CONFIG_QUOTA is not set
-CONFIG_DNOTIFY=y
-# CONFIG_AUTOFS_FS is not set
-# CONFIG_AUTOFS4_FS is not set
-CONFIG_FUSE_FS=y
-
-#
-# CD-ROM/DVD Filesystems
-#
-# CONFIG_ISO9660_FS is not set
-# CONFIG_UDF_FS is not set
-
-#
-# DOS/FAT/NT Filesystems
-#
-CONFIG_FAT_FS=y
-# CONFIG_MSDOS_FS is not set
-CONFIG_VFAT_FS=y
-CONFIG_FAT_DEFAULT_CODEPAGE=437
-CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1"
-# CONFIG_NTFS_FS is not set
-
-#
-# Pseudo filesystems
-#
-CONFIG_PROC_FS=y
-CONFIG_PROC_SYSCTL=y
-CONFIG_SYSFS=y
-CONFIG_TMPFS=y
-# CONFIG_TMPFS_POSIX_ACL is not set
-# CONFIG_HUGETLB_PAGE is not set
-CONFIG_RAMFS=y
-# CONFIG_CONFIGFS_FS is not set
-
-#
-# Miscellaneous filesystems
-#
-# CONFIG_ADFS_FS is not set
-# CONFIG_AFFS_FS is not set
-# CONFIG_HFS_FS is not set
-# CONFIG_HFSPLUS_FS is not set
-# CONFIG_BEFS_FS is not set
-# CONFIG_BFS_FS is not set
-# CONFIG_EFS_FS is not set
-CONFIG_JFFS2_FS=y
-CONFIG_JFFS2_FS_DEBUG=0
-CONFIG_JFFS2_FS_WRITEBUFFER=y
-CONFIG_JFFS2_SUMMARY=y
-# CONFIG_JFFS2_FS_XATTR is not set
-# CONFIG_JFFS2_SYSFS is not set
-CONFIG_JFFS2_COMPRESSION_OPTIONS=y
-CONFIG_JFFS2_ZLIB=y
-CONFIG_JFFS2_LZO=y
-CONFIG_JFFS2_RTIME=y
-# CONFIG_JFFS2_RUBIN is not set
-# CONFIG_JFFS2_CMODE_NONE is not set
-CONFIG_JFFS2_CMODE_PRIORITY=y
-# CONFIG_JFFS2_CMODE_SIZE is not set
-# CONFIG_JFFS2_CMODE_FAVOURLZO is not set
-# CONFIG_CRAMFS is not set
-# CONFIG_VXFS_FS is not set
-# CONFIG_HPFS_FS is not set
-# CONFIG_QNX4FS_FS is not set
-# CONFIG_SYSV_FS is not set
-# CONFIG_UFS_FS is not set
-
-#
-# Network File Systems
-#
-CONFIG_NFS_FS=y
-CONFIG_NFS_V3=y
-# CONFIG_NFS_V3_ACL is not set
-CONFIG_NFS_V4=y
-# CONFIG_NFS_DIRECTIO is not set
-# CONFIG_NFSD is not set
-CONFIG_LOCKD=y
-CONFIG_LOCKD_V4=y
-CONFIG_NFS_COMMON=y
-CONFIG_SUNRPC=y
-CONFIG_SUNRPC_GSS=y
-CONFIG_RPCSEC_GSS_KRB5=y
-# CONFIG_RPCSEC_GSS_SPKM3 is not set
-# CONFIG_SMB_FS is not set
-CONFIG_CIFS=y
-# CONFIG_CIFS_STATS is not set
-# CONFIG_CIFS_WEAK_PW_HASH is not set
-# CONFIG_CIFS_XATTR is not set
-# CONFIG_CIFS_DEBUG2 is not set
-# CONFIG_CIFS_EXPERIMENTAL is not set
-# CONFIG_NCP_FS is not set
-# CONFIG_CODA_FS is not set
-# CONFIG_AFS_FS is not set
-# CONFIG_9P_FS is not set
-
-#
-# Partition Types
-#
-# CONFIG_PARTITION_ADVANCED is not set
-CONFIG_MSDOS_PARTITION=y
-
-#
-# Native Language Support
-#
-CONFIG_NLS=y
-CONFIG_NLS_DEFAULT="iso8859-1"
-CONFIG_NLS_CODEPAGE_437=y
-# CONFIG_NLS_CODEPAGE_737 is not set
-# CONFIG_NLS_CODEPAGE_775 is not set
-# CONFIG_NLS_CODEPAGE_850 is not set
-# CONFIG_NLS_CODEPAGE_852 is not set
-# CONFIG_NLS_CODEPAGE_855 is not set
-# CONFIG_NLS_CODEPAGE_857 is not set
-# CONFIG_NLS_CODEPAGE_860 is not set
-# CONFIG_NLS_CODEPAGE_861 is not set
-# CONFIG_NLS_CODEPAGE_862 is not set
-# CONFIG_NLS_CODEPAGE_863 is not set
-# CONFIG_NLS_CODEPAGE_864 is not set
-# CONFIG_NLS_CODEPAGE_865 is not set
-# CONFIG_NLS_CODEPAGE_866 is not set
-# CONFIG_NLS_CODEPAGE_869 is not set
-# CONFIG_NLS_CODEPAGE_936 is not set
-# CONFIG_NLS_CODEPAGE_950 is not set
-# CONFIG_NLS_CODEPAGE_932 is not set
-# CONFIG_NLS_CODEPAGE_949 is not set
-# CONFIG_NLS_CODEPAGE_874 is not set
-# CONFIG_NLS_ISO8859_8 is not set
-# CONFIG_NLS_CODEPAGE_1250 is not set
-# CONFIG_NLS_CODEPAGE_1251 is not set
-# CONFIG_NLS_ASCII is not set
-CONFIG_NLS_ISO8859_1=y
-CONFIG_NLS_ISO8859_2=y
-# CONFIG_NLS_ISO8859_3 is not set
-# CONFIG_NLS_ISO8859_4 is not set
-# CONFIG_NLS_ISO8859_5 is not set
-# CONFIG_NLS_ISO8859_6 is not set
-# CONFIG_NLS_ISO8859_7 is not set
-# CONFIG_NLS_ISO8859_9 is not set
-# CONFIG_NLS_ISO8859_13 is not set
-# CONFIG_NLS_ISO8859_14 is not set
-CONFIG_NLS_ISO8859_15=y
-# CONFIG_NLS_KOI8_R is not set
-# CONFIG_NLS_KOI8_U is not set
-CONFIG_NLS_UTF8=y
-
-#
-# Distributed Lock Manager
-#
-# CONFIG_DLM is not set
-
-#
-# Profiling support
-#
-# CONFIG_PROFILING is not set
-
-#
-# Kernel hacking
-#
-CONFIG_PRINTK_TIME=y
-CONFIG_ENABLE_MUST_CHECK=y
-CONFIG_MAGIC_SYSRQ=y
-# CONFIG_UNUSED_SYMBOLS is not set
-CONFIG_DEBUG_FS=y
-# CONFIG_HEADERS_CHECK is not set
-CONFIG_DEBUG_KERNEL=y
-# CONFIG_DEBUG_SHIRQ is not set
-CONFIG_LOG_BUF_SHIFT=14
-CONFIG_DETECT_SOFTLOCKUP=y
-# CONFIG_SCHEDSTATS is not set
-# CONFIG_TIMER_STATS is not set
-# CONFIG_DEBUG_SLAB is not set
-# CONFIG_DEBUG_RT_MUTEXES is not set
-# CONFIG_RT_MUTEX_TESTER is not set
-# CONFIG_DEBUG_SPINLOCK is not set
-# CONFIG_DEBUG_MUTEXES is not set
-# CONFIG_DEBUG_SPINLOCK_SLEEP is not set
-# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set
-# CONFIG_DEBUG_KOBJECT is not set
-CONFIG_DEBUG_BUGVERBOSE=y
-# CONFIG_DEBUG_INFO is not set
-# CONFIG_DEBUG_VM is not set
-# CONFIG_DEBUG_LIST is not set
-CONFIG_FRAME_POINTER=y
-CONFIG_FORCED_INLINING=y
-# CONFIG_RCU_TORTURE_TEST is not set
-# CONFIG_FAULT_INJECTION is not set
-CONFIG_DEBUG_USER=y
-CONFIG_DEBUG_ERRORS=y
-# CONFIG_DEBUG_LL is not set
-
-#
-# Security options
-#
-# CONFIG_KEYS is not set
-CONFIG_SECURITY=y
-# CONFIG_SECURITY_NETWORK is not set
-# CONFIG_SECURITY_CAPABILITIES is not set
-# CONFIG_SECURITY_ROOTPLUG is not set
-CONFIG_SECURITY_LOWMEM=y
-
-#
-# Cryptographic options
-#
-CONFIG_CRYPTO=y
-CONFIG_CRYPTO_ALGAPI=y
-CONFIG_CRYPTO_BLKCIPHER=y
-CONFIG_CRYPTO_MANAGER=y
-# CONFIG_CRYPTO_HMAC is not set
-# CONFIG_CRYPTO_XCBC is not set
-# CONFIG_CRYPTO_NULL is not set
-# CONFIG_CRYPTO_MD4 is not set
-CONFIG_CRYPTO_MD5=y
-# CONFIG_CRYPTO_SHA1 is not set
-# CONFIG_CRYPTO_SHA256 is not set
-# CONFIG_CRYPTO_SHA512 is not set
-# CONFIG_CRYPTO_WP512 is not set
-# CONFIG_CRYPTO_TGR192 is not set
-# CONFIG_CRYPTO_GF128MUL is not set
-CONFIG_CRYPTO_ECB=m
-CONFIG_CRYPTO_CBC=y
-CONFIG_CRYPTO_PCBC=m
-# CONFIG_CRYPTO_LRW is not set
-CONFIG_CRYPTO_DES=y
-# CONFIG_CRYPTO_FCRYPT is not set
-# CONFIG_CRYPTO_BLOWFISH is not set
-# CONFIG_CRYPTO_TWOFISH is not set
-# CONFIG_CRYPTO_SERPENT is not set
-# CONFIG_CRYPTO_AES is not set
-# CONFIG_CRYPTO_CAST5 is not set
-# CONFIG_CRYPTO_CAST6 is not set
-# CONFIG_CRYPTO_TEA is not set
-# CONFIG_CRYPTO_ARC4 is not set
-# CONFIG_CRYPTO_KHAZAD is not set
-# CONFIG_CRYPTO_ANUBIS is not set
-# CONFIG_CRYPTO_DEFLATE is not set
-# CONFIG_CRYPTO_LZO is not set
-# CONFIG_CRYPTO_MICHAEL_MIC is not set
-# CONFIG_CRYPTO_CRC32C is not set
-# CONFIG_CRYPTO_CAMELLIA is not set
-# CONFIG_CRYPTO_TEST is not set
-
-#
-# Hardware crypto devices
-#
-
-#
-# Library routines
-#
-CONFIG_BITREVERSE=y
-CONFIG_CRC_CCITT=y
-# CONFIG_CRC16 is not set
-CONFIG_CRC32=y
-# CONFIG_LIBCRC32C is not set
-CONFIG_LZO_COMPRESS=y
-CONFIG_LZO_DECOMPRESS=y
-CONFIG_ZLIB_INFLATE=y
-CONFIG_ZLIB_DEFLATE=y
-CONFIG_PLIST=y
-CONFIG_HAS_IOMEM=y
-CONFIG_HAS_IOPORT=y
diff --git a/meta-extras/packages/linux/linux-nokia800-2.6.21-osso71/suspend-button.patch b/meta-extras/packages/linux/linux-nokia800-2.6.21-osso71/suspend-button.patch
deleted file mode 100644
index 791a66e02..000000000
--- a/meta-extras/packages/linux/linux-nokia800-2.6.21-osso71/suspend-button.patch
+++ /dev/null
@@ -1,60 +0,0 @@
-Index: linux-2.6.21/drivers/cbus/retu-pwrbutton.c
-===================================================================
---- linux-2.6.21.orig/drivers/cbus/retu-pwrbutton.c 2008-02-20 22:44:18.000000000 +0000
-+++ linux-2.6.21/drivers/cbus/retu-pwrbutton.c 2008-02-20 22:46:22.000000000 +0000
-@@ -53,7 +53,9 @@
- state = PWRBTN_PRESSED;
-
- if (pwrbtn_state != state) {
-- input_report_key(pwrbtn_dev, KEY_POWER, state);
-+ input_report_key(pwrbtn_dev, KEY_SUSPEND, state);
-+ if (state == PWRBTN_PRESSED)
-+ input_event(pwrbtn_dev, EV_PWR, KEY_SUSPEND, 1);
- pwrbtn_state = state;
- }
- }
-@@ -92,8 +94,8 @@
- if (!pwrbtn_dev)
- return -ENOMEM;
-
-- pwrbtn_dev->evbit[0] = BIT(EV_KEY);
-- pwrbtn_dev->keybit[LONG(KEY_POWER)] = BIT(KEY_POWER);
-+ pwrbtn_dev->evbit[0] = BIT(EV_KEY) | BIT(EV_PWR);
-+ pwrbtn_dev->keybit[LONG(KEY_SUSPEND)] = BIT(KEY_SUSPEND);
- pwrbtn_dev->name = "retu-pwrbutton";
-
- input_register_device(pwrbtn_dev);
-Index: linux-2.6.21/drivers/char/apm-emulation.c
-===================================================================
---- linux-2.6.21.orig/drivers/char/apm-emulation.c 2008-02-21 00:32:41.000000000 +0000
-+++ linux-2.6.21/drivers/char/apm-emulation.c 2008-02-21 00:33:43.000000000 +0000
-@@ -206,10 +206,18 @@
- return ret;
- }
-
-+static in_suspend;
-+
- static void apm_suspend(void)
- {
- struct apm_user *as;
-- int err = pm_suspend(PM_SUSPEND_MEM);
-+ int err;
-+
-+ in_suspend = 1;
-+
-+ err = pm_suspend(PM_SUSPEND_MEM);
-+
-+ in_suspend = 0;
-
- /*
- * Anyone on the APM queues will think we're still suspended.
-@@ -663,6 +671,9 @@
- {
- unsigned long flags;
-
-+ if (in_suspend)
-+ return;
-+
- spin_lock_irqsave(&kapmd_queue_lock, flags);
- queue_add_event(&kapmd_queue, event);
- spin_unlock_irqrestore(&kapmd_queue_lock, flags);
diff --git a/meta-extras/packages/linux/linux-nokia800.inc b/meta-extras/packages/linux/linux-nokia800.inc
deleted file mode 100644
index 540dfbb4c..000000000
--- a/meta-extras/packages/linux/linux-nokia800.inc
+++ /dev/null
@@ -1,43 +0,0 @@
-SECTION = "kernel"
-DESCRIPTION = "Linux kernel for Nokia 770/800"
-LICENSE = "GPL"
-
-KERNEL_OUTPUT = "arch/${ARCH}/boot/${KERNEL_IMAGETYPE}"
-KERNEL_CCSUFFIX = "-3.4.4+csl-arm-2005q3-2"
-
-inherit kernel deploy
-
-RPROVIDES_kernel-image = "hostap-modules"
-
-COMPATIBLE_MACHINE = "nokia770|nokia800"
-
-RPSRC = "http://www.rpsys.net/openzaurus/patches/archive"
-
-do_configure_prepend() {
-
- rm -f ${S}/.config || true
-
- if [ "${TARGET_OS}" = "linux-gnueabi" -o "${TARGET_OS}" = "linux-uclibcgnueabi" ]; then
- echo "CONFIG_AEABI=y" >> ${S}/.config
- echo "CONFIG_OABI_COMPAT=y" >> ${S}/.config
- else
- echo "# CONFIG_AEABI is not set" >> ${S}/.config
- echo "# CONFIG_OABI_COMPAT is not set" >> ${S}/.config
- fi
-
- sed -e '/CONFIG_AEABI/d' \
- -e '/CONFIG_OABI_COMPAT=/d' \
- '${WORKDIR}/defconfig' >>'${S}/.config'
-
- yes '' | oe_runmake oldconfig
-
-}
-
-do_deploy() {
- install -m 0644 arch/${ARCH}/boot/${KERNEL_IMAGETYPE} ${DEPLOYDIR}/${KERNEL_IMAGETYPE}-${PV}-${MACHINE}-${DATETIME}.bin
- cd ${DEPLOYDIR}
- ln -sf ${KERNEL_IMAGETYPE}-${PV}-${MACHINE}-${DATETIME}.bin ${KERNEL_IMAGETYPE}-${MACHINE}.bin
- tar -cvzf ${DEPLOYDIR}/modules-${KERNEL_RELEASE}-${MACHINE}.tgz -C ${D} lib
-}
-
-addtask deploy before do_populate_sysroot after do_install
diff --git a/meta-extras/packages/linux/linux-nokia800_2.6.18-osso40.bb b/meta-extras/packages/linux/linux-nokia800_2.6.18-osso40.bb
deleted file mode 100644
index f987ab321..000000000
--- a/meta-extras/packages/linux/linux-nokia800_2.6.18-osso40.bb
+++ /dev/null
@@ -1,18 +0,0 @@
-require linux-nokia800.inc
-
-PR = "r7"
-SRC_URI = "http://repository.maemo.org/pool/maemo3.1/free/source/kernel-source-rx-34_2.6.18.orig.tar.gz \
- http://repository.maemo.org/pool/maemo3.1/free/source/kernel-source-rx-34_2.6.18-osso40.diff.gz;patch=1 \
- ${RPSRC}/lzo_kernel-r0.patch;patch=1 \
- ${RPSRC}/lzo_jffs2-r0.patch;patch=1 \
- ${RPSRC}/lzo_crypto-r0b.patch;patch=1 \
- ${RPSRC}/lzo_jffs2_lzomode-r0.patch;patch=1 \
- ${RPSRC}/lzo_jffs2_sysfs-r0.patch;patch=1 \
- file://fix_oprofile.patch;patch=1 \
- file://sumversion-fix.patch;patch=1 \
- file://defconfig"
-
-SRC_URI_append_nokia770 = " file://nokia770_nand_fix.patch;patch=1"
-
-S = "${WORKDIR}/linux-g"
-
diff --git a/meta-extras/packages/linux/linux-nokia800_2.6.21-200823maemo6.bb b/meta-extras/packages/linux/linux-nokia800_2.6.21-200823maemo6.bb
deleted file mode 100644
index 9ea91c3a2..000000000
--- a/meta-extras/packages/linux/linux-nokia800_2.6.21-200823maemo6.bb
+++ /dev/null
@@ -1,18 +0,0 @@
-require linux-nokia800.inc
-PR = "r0"
-
-DEFAULT_PREFERENCE_nokia770 = "-1"
-
-SRC_URI = "${KERNELORG_MIRROR}/pub/linux/kernel/v2.6/linux-2.6.21.tar.bz2 \
- file://kernel-source_2.6.21-200823maemo6.diff.gz;patch=1 \
- http://www.rpsys.net/openzaurus/patches/archive/input_power-r7.patch;patch=1 \
- file://suspend-button.patch;patch=1 \
- file://defconfig"
-
-S = "${WORKDIR}/linux-2.6.21"
-
-do_install_append () {
- mkdir -p ${D}/kernel/include/drivers/media/video/omap/
- cp -f drivers/media/video/omap/tcm825x.h ${D}/kernel/include/drivers/media/video/omap/
-}
-
diff --git a/meta-extras/packages/linux/linux-nokia800_2.6.21-osso71.bb b/meta-extras/packages/linux/linux-nokia800_2.6.21-osso71.bb
deleted file mode 100644
index b64c697c9..000000000
--- a/meta-extras/packages/linux/linux-nokia800_2.6.21-osso71.bb
+++ /dev/null
@@ -1,18 +0,0 @@
-require linux-nokia800.inc
-PR = "r5"
-
-DEFAULT_PREFERENCE_nokia770 = "-1"
-
-SRC_URI = "${KERNELORG_MIRROR}/pub/linux/kernel/v2.6/linux-2.6.21.tar.bz2 \
- http://repository.maemo.org/pool/os2008/free/source/k/kernel-source-rx-34/kernel-source-rx-34_2.6.21.0-osso71.diff.gz;patch=1 \
- http://www.rpsys.net/openzaurus/patches/archive/input_power-r7.patch;patch=1 \
- file://suspend-button.patch;patch=1 \
- file://sumversion-fix.patch;patch=1 \
- file://defconfig"
-
-S = "${WORKDIR}/linux-2.6.21"
-
-do_install_append () {
- mkdir -p ${D}/kernel/include/drivers/media/video/omap/
- cp -f drivers/media/video/omap/tcm825x.h ${D}/kernel/include/drivers/media/video/omap/
-}
diff --git a/meta-extras/packages/linux/linux-openmoko.inc b/meta-extras/packages/linux/linux-openmoko.inc
deleted file mode 100644
index a0bf48e60..000000000
--- a/meta-extras/packages/linux/linux-openmoko.inc
+++ /dev/null
@@ -1,25 +0,0 @@
-RDEPENDS_kernel-image += "mtd-utils"
-
-pkg_postinst_kernel-image () {
-if test "x$D" != "x"; then
- exit 1
-else
- if [ -f ${sysconfdir}/default/flashkernel ] ; then
- echo "Upgrading Kernel in Flash"
- echo "DO NOT stop this process"
-
- MTD_KERNEL_PARTITION=`cat /proc/mtd | grep kernel | cut -d':' -f1`
- MTD_KERNEL_PARTITION=/dev/$MTD_KERNEL_PARTITION
-
- if [ "x$MTD_KERNEL_PARTITION" = "x" ] ; then
- exit 1
- fi
-
- ${bindir}/flash_eraseall $MTD_KERNEL_PARTITION
- ${bindir}/nandwrite -p $MTD_KERNEL_PARTITION /${KERNEL_IMAGEDEST}/${KERNEL_IMAGETYPE}-${KERNEL_VERSION}
- else
- touch ${sysconfdir}/default/flashkernel
- fi
-fi
-}
-
diff --git a/meta-extras/packages/linux/linux-openmoko/timespec_add_ns_avoid_udivdi3.patch b/meta-extras/packages/linux/linux-openmoko/timespec_add_ns_avoid_udivdi3.patch
deleted file mode 100644
index 4aba897b0..000000000
--- a/meta-extras/packages/linux/linux-openmoko/timespec_add_ns_avoid_udivdi3.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-Backport of this patch here
-
-http://www.mail-archive.com/linux-kernel@vger.kernel.org/msg270684.html
-
-Needed for 2.6.24 to compile with gcc 4.3
-Index: linux-2.6.24/include/linux/time.h
-===================================================================
---- linux-2.6.24.orig/include/linux/time.h 2008-05-28 15:39:46.000000000 -0700
-+++ linux-2.6.24/include/linux/time.h 2008-05-28 15:40:48.000000000 -0700
-@@ -173,6 +173,10 @@
- {
- ns += a->tv_nsec;
- while(unlikely(ns >= NSEC_PER_SEC)) {
-+ /* The following asm() prevents the compiler from
-+ * optimising this loop into a modulo operation. */
-+ asm("" : "+r"(ns));
-+
- ns -= NSEC_PER_SEC;
- a->tv_sec++;
- }
diff --git a/meta-extras/packages/linux/linux-openmoko_2.6.24+git.bb b/meta-extras/packages/linux/linux-openmoko_2.6.24+git.bb
deleted file mode 100644
index a1d573be1..000000000
--- a/meta-extras/packages/linux/linux-openmoko_2.6.24+git.bb
+++ /dev/null
@@ -1,53 +0,0 @@
-require linux.inc
-require linux-openmoko.inc
-
-DESCRIPTION = "Linux 2.6.x (development) kernel for FIC SmartPhones shipping w/ Openmoko"
-
-PE = "1"
-PV = "${KERNEL_RELEASE}+git${SRCREV}"
-PR = "r2"
-
-SRC_URI = "git://git.openmoko.org/git/kernel.git;protocol=git;branch=stable \
- file://timespec_add_ns_avoid_udivdi3.patch;patch=1"
-
-S = "${WORKDIR}/git"
-
-do_configure_prepend() {
- cp -f ${S}/defconfig-${CONFIG_NAME} ${WORKDIR}/defconfig
-}
-
-##############################################################
-# kernel image resides on a seperate flash partition (for now)
-#
-ALLOW_EMPTY = "1"
-
-CMDLINE = "unused -- bootloader passes ATAG list"
-
-COMPATIBLE_HOST = "arm.*-linux"
-COMPATIBLE_MACHINE = "om-gta01|om-gta02"
-DEFAULT_PREFERENCE = "1"
-
-KERNEL_IMAGETYPE = "uImage"
-KERNEL_RELEASE = "2.6.24"
-KERNEL_VERSION = "${KERNEL_RELEASE}"
-
-CONFIG_NAME_om-gta01 = "gta01"
-CONFIG_NAME_om-gta02 = "gta02"
-
-UBOOT_ENTRYPOINT = "30008000"
-
-###############################################################
-# module configs specific to this kernel
-#
-
-# usb
-module_autoload_ohci-hcd = "ohci-hcd"
-module_autoload_hci_usb = "hci_usb"
-module_autoload_g_ether = "g_ether"
-# audio
-module_autoload_snd-soc-neo1973-wm8753 = "snd-soc-neo1973-wm8753"
-module_autoload_snd-soc-neo1973-gta02-wm8753 = "snd-soc-neo1973-gta02-wm8753"
-module_autoload_snd-pcm-oss = "snd-pcm-oss"
-module_autoload_snd-mixer-oss = "snd-mixer-oss"
-# sd/mmc
-module_autoload_s3cmci = "s3cmci"
diff --git a/meta-extras/packages/lirc/files/lirc_sir-sa1100.patch b/meta-extras/packages/lirc/files/lirc_sir-sa1100.patch
deleted file mode 100644
index 245b28ac5..000000000
--- a/meta-extras/packages/lirc/files/lirc_sir-sa1100.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- lirc/drivers/lirc_sir/lirc_sir.c.orig 2004-11-18 17:30:17 +0100
-+++ lirc/drivers/lirc_sir/lirc_sir.c 2004-11-18 17:30:21 +0100
-@@ -628,6 +628,7 @@
- struct timeval curr_tv;
- static unsigned long deltv;
- #ifdef LIRC_ON_SA1100
-+ unsigned long deltintrtv;
- int status;
- static int n=0;
-
diff --git a/meta-extras/packages/lirc/files/lircd.conf_nslu2 b/meta-extras/packages/lirc/files/lircd.conf_nslu2
deleted file mode 100644
index 5fbaba469..000000000
--- a/meta-extras/packages/lirc/files/lircd.conf_nslu2
+++ /dev/null
@@ -1,1886 +0,0 @@
-# This file is modified for the NSLU2.
-# It's based on http://lirc.sourceforge.net/remotes/philips/RC-5
-# and should support all RC5 compatible remotes.
-# The timings are for a de-underclocked NSLU2.
-
-# To see which key generates which code, run "irw".
-# To check whether lirc works at all, run "mode2 -d /dev/lirc"
-# after stopping lircd with "/etc/init.d/lircd stop".
-# To learn a new remote, run "irrecord -d /dev/lirc /etc/lircd.conf.new" and after
-# success "mv /etc/lircd.conf.new /etc/lircd.conf".
-# You could also take the timing values from /etc/lircd.conf.new
-# and paste it in here.
-# See also /etc/lircrc.
-
-begin remote
-
- name RC5
- bits 13
- flags RC5|CONST_LENGTH
- eps 30
- aeps 100
-# if it doesn't work, you could change the following values:
- one 863 921
- zero 863 921
- plead 947
- gap 113626
- min_repeat 1
- repeat_bit 2
-
- begin codes
- amp1-0 0x0000000000001400
- amp1-1 0x0000000000001401
- amp1-2 0x0000000000001402
- amp1-3 0x0000000000001403
- amp1-4 0x0000000000001404
- amp1-5 0x0000000000001405
- amp1-6 0x0000000000001406
- amp1-7 0x0000000000001407
- amp1-8 0x0000000000001408
- amp1-9 0x0000000000001409
- amp1-graphic_equalizer_left 0x000000000000140A
- amp1-graphic_equalizer_right 0x000000000000140B
- amp1-standby 0x000000000000140C
- amp1-mute/demute 0x000000000000140D
- amp1-P.P. 0x000000000000140E
- amp1-display 0x000000000000140F
- amp1-volume+ 0x0000000000001410
- amp1-volume- 0x0000000000001411
- amp1-brightness+ 0x0000000000001412
- amp1-brightness- 0x0000000000001413
- amp1-colour_saturation+ 0x0000000000001414
- amp1-colour_saturation- 0x0000000000001415
- amp1-bass+ 0x0000000000001416
- amp1-bass- 0x0000000000001417
- amp1-treble+ 0x0000000000001418
- amp1-treble- 0x0000000000001419
- amp1-balance_right 0x000000000000141A
- amp1-balance_left 0x000000000000141B
- amp1-graph_equal_left&right 0x000000000000141C
- amp1-loudness 0x000000000000141D
- amp1-high_tone_filter 0x000000000000141E
- amp1-low_tone_filter 0x000000000000141F
- amp1-step+ 0x0000000000001420
- amp1-step- 0x0000000000001421
- amp1-signal_path_scroll 0x0000000000001422
- amp1-INVALID 0x0000000000001423
- amp1-INVALID 0x0000000000001424
- amp1-surround_mode 0x0000000000001425
- amp1-sleeptimer 0x0000000000001426
- amp1-balance_rear 0x0000000000001427
- amp1-balance_front 0x0000000000001428
- amp1-TPS 0x0000000000001429
- amp1-timer_set 0x000000000000142A
- amp1-timer_up 0x000000000000142B
- amp1-timer_down 0x000000000000142C
- amp1-timer_memo 0x000000000000142D
- amp1-acoustic_memory 0x000000000000142E
- amp1-acoustic_memory_select 0x000000000000142F
- amp1-pause 0x0000000000001430
- amp1-erase 0x0000000000001431
- amp1-rewind 0x0000000000001432
- amp1-go_to 0x0000000000001433
- amp1-wind 0x0000000000001434
- amp1-play 0x0000000000001435
- amp1-stop 0x0000000000001436
- amp1-recording 0x0000000000001437
- amp1-external1 0x0000000000001438
- amp1-external2 0x0000000000001439
- amp1-clear_all_memory 0x000000000000143A
- amp1-INVALID 0x000000000000143B
- amp1-dyn_range_expand/compr 0x000000000000143C
- amp1-system_standby 0x000000000000143D
- amp1-INVALID 0x000000000000143E
- amp1-system_select 0x000000000000143F
- amp1-surround_sound 0x0000000000000400
- amp1-balance_front 0x0000000000000401
- amp1-balance_rear 0x0000000000000402
- amp1-sound_effects1 0x0000000000000403
- amp1-sound_effects2 0x0000000000000404
- amp1-sound_effects3 0x0000000000000405
- amp1-sound_effects4 0x0000000000000406
- amp1-sound_effects5 0x0000000000000407
- amp1-sound_or_menu_func.1 0x0000000000000408
- amp1-sound_or_menu_func.2 0x0000000000000409
- amp1-sound_or_menu_func.3 0x000000000000040A
- amp1-linear_function_up 0x000000000000040D
- amp1-linear_function_down 0x000000000000040E
- amp1-catalogue 0x000000000000040F
- amp1-cursor_step_up 0x0000000000000410
- amp1-cursor_step_down 0x0000000000000411
- amp1-menu_on 0x0000000000000412
- amp1-menu_off 0x0000000000000413
- amp1-display_A/V_status 0x0000000000000414
- amp1-cursor_step_left 0x0000000000000415
- amp1-cursor_step_right 0x0000000000000416
- amp1-menu_function 0x0000000000000417
- amp1-PIP_on/off 0x0000000000000418
- amp1-PIP_shift 0x0000000000000419
- amp1-PIP_main_swap 0x000000000000041A
- amp1-strobe_on/off 0x000000000000041B
- amp1-multi_strobe 0x000000000000041C
- amp1-main_freezed 0x000000000000041D
- amp1-3/9_multi_scan 0x000000000000041E
- amp1-PIP_mode_select 0x000000000000041F
- amp1-mosaic 0x0000000000000420
- amp1-solarization 0x0000000000000421
- amp1-main_stored 0x0000000000000422
- amp1-PIP_strobe 0x0000000000000423
- amp1-recall_main 0x0000000000000424
- amp1-PIP_freeze 0x0000000000000425
- amp1-PIP_step_up 0x0000000000000426
- amp1-PIP_step_down 0x0000000000000427
- amp1-INVALID 0x000000000000042C
- amp1-INVALID 0x0000000000000430
- amp1-INVALID 0x0000000000000431
- amp1-INVALID 0x0000000000000436
- amp1-INVALID 0x0000000000000437
- amp1-connect 0x000000000000043B
- amp1-disconnect 0x000000000000043C
- amp2-0 0x00000000000014C0
- amp2-1 0x00000000000014C1
- amp2-2 0x00000000000014C2
- amp2-3 0x00000000000014C3
- amp2-4 0x00000000000014C4
- amp2-5 0x00000000000014C5
- amp2-6 0x00000000000014C6
- amp2-7 0x00000000000014C7
- amp2-8 0x00000000000014C8
- amp2-9 0x00000000000014C9
- amp2-graphic_equalizer_left 0x00000000000014CA
- amp2-graphic_equalizer_right 0x00000000000014CB
- amp2-standby 0x00000000000014CC
- amp2-mute/demute 0x00000000000014CD
- amp2-P.P. 0x00000000000014CE
- amp2-display 0x00000000000014CF
- amp2-volume+ 0x00000000000014D0
- amp2-volume- 0x00000000000014D1
- amp2-brightness+ 0x00000000000014D2
- amp2-brightness- 0x00000000000014D3
- amp2-colour_saturation+ 0x00000000000014D4
- amp2-colour_saturation- 0x00000000000014D5
- amp2-bass+ 0x00000000000014D6
- amp2-bass- 0x00000000000014D7
- amp2-treble+ 0x00000000000014D8
- amp2-treble- 0x00000000000014D9
- amp2-balance_right 0x00000000000014DA
- amp2-balance_left 0x00000000000014DB
- amp2-graph_equal_left&right 0x00000000000014DC
- amp2-loudness 0x00000000000014DD
- amp2-high_tone_filter 0x00000000000014DE
- amp2-low_tone_filter 0x00000000000014DF
- amp2-step+ 0x00000000000014E0
- amp2-step- 0x00000000000014E1
- amp2-signal_path_scroll 0x00000000000014E2
- amp2-INVALID 0x00000000000014E3
- amp2-INVALID 0x00000000000014E4
- amp2-surround_mode 0x00000000000014E5
- amp2-sleeptimer 0x00000000000014E6
- amp2-balance_rear 0x00000000000014E7
- amp2-balance_front 0x00000000000014E8
- amp2-TPS 0x00000000000014E9
- amp2-timer_set 0x00000000000014EA
- amp2-timer_up 0x00000000000014EB
- amp2-timer_down 0x00000000000014EC
- amp2-timer_memo 0x00000000000014ED
- amp2-acoustic_memory 0x00000000000014EE
- amp2-acoustic_memory_select 0x00000000000014EF
- amp2-pause 0x00000000000014F0
- amp2-erase 0x00000000000014F1
- amp2-rewind 0x00000000000014F2
- amp2-go_to 0x00000000000014F3
- amp2-wind 0x00000000000014F4
- amp2-play 0x00000000000014F5
- amp2-stop 0x00000000000014F6
- amp2-recording 0x00000000000014F7
- amp2-external1 0x00000000000014F8
- amp2-external2 0x00000000000014F9
- amp2-clear_all_memory 0x00000000000014FA
- amp2-INVALID 0x00000000000014FB
- amp2-dyn_range_expand/compr 0x00000000000014FC
- amp2-system_standby 0x00000000000014FD
- amp2-INVALID 0x00000000000014FE
- amp2-system_select 0x00000000000014FF
- amp2-surround_sound 0x00000000000004C0
- amp2-balance_front 0x00000000000004C1
- amp2-balance_rear 0x00000000000004C2
- amp2-sound_effects1 0x00000000000004C3
- amp2-sound_effects2 0x00000000000004C4
- amp2-sound_effects3 0x00000000000004C5
- amp2-sound_effects4 0x00000000000004C6
- amp2-sound_effects5 0x00000000000004C7
- amp2-sound_or_menu_func.1 0x00000000000004C8
- amp2-sound_or_menu_func.2 0x00000000000004C9
- amp2-sound_or_menu_func.3 0x00000000000004CA
- amp2-linear_function_up 0x00000000000004CD
- amp2-linear_function_down 0x00000000000004CE
- amp2-catalogue 0x00000000000004CF
- amp2-cursor_step_up 0x00000000000004D0
- amp2-cursor_step_down 0x00000000000004D1
- amp2-menu_on 0x00000000000004D2
- amp2-menu_off 0x00000000000004D3
- amp2-display_A/V_status 0x00000000000004D4
- amp2-cursor_step_left 0x00000000000004D5
- amp2-cursor_step_right 0x00000000000004D6
- amp2-menu_function 0x00000000000004D7
- amp2-PIP_on/off 0x00000000000004D8
- amp2-PIP_shift 0x00000000000004D9
- amp2-PIP_main_swap 0x00000000000004DA
- amp2-strobe_on/off 0x00000000000004DB
- amp2-multi_strobe 0x00000000000004DC
- amp2-main_freezed 0x00000000000004DD
- amp2-3/9_multi_scan 0x00000000000004DE
- amp2-PIP_mode_select 0x00000000000004DF
- amp2-mosaic 0x00000000000004E0
- amp2-solarization 0x00000000000004E1
- amp2-main_stored 0x00000000000004E2
- amp2-PIP_strobe 0x00000000000004E3
- amp2-recall_main 0x00000000000004E4
- amp2-PIP_freeze 0x00000000000004E5
- amp2-PIP_step_up 0x00000000000004E6
- amp2-PIP_step_down 0x00000000000004E7
- amp2-INVALID 0x00000000000004EC
- amp2-INVALID 0x00000000000004F0
- amp2-INVALID 0x00000000000004F1
- amp2-INVALID 0x00000000000004F6
- amp2-INVALID 0x00000000000004F7
- amp2-connect 0x00000000000004FB
- amp2-disconnect 0x00000000000004FC
- cd-0 0x0000000000001500
- cd-1 0x0000000000001501
- cd-2 0x0000000000001502
- cd-3 0x0000000000001503
- cd-4 0x0000000000001504
- cd-5 0x0000000000001505
- cd-6 0x0000000000001506
- cd-7 0x0000000000001507
- cd-8 0x0000000000001508
- cd-9 0x0000000000001509
- cd-cursor_scroll 0x000000000000150A
- cd-display_scroll 0x000000000000150B
- cd-standby 0x000000000000150C
- cd-mute/demute 0x000000000000150D
- cd-P.P._(personal_pref.) 0x000000000000150E
- cd-display 0x000000000000150F
- cd-volume+ 0x0000000000001510
- cd-volume- 0x0000000000001511
- cd-brightness+ 0x0000000000001512
- cd-brightness- 0x0000000000001513
- cd-colour_saturation+ 0x0000000000001514
- cd-colour_saturation- 0x0000000000001515
- cd-bass+ 0x0000000000001516
- cd-bass- 0x0000000000001517
- cd-treble+ 0x0000000000001518
- cd-treble- 0x0000000000001519
- cd-balance_right 0x000000000000151A
- cd-balance_left 0x000000000000151B
- cd-rept_once/TSPo/shuffle 0x000000000000151C
- cd-repeat_cont/TSPc 0x000000000000151D
- cd-select+ 0x000000000000151E
- cd-select- 0x000000000000151F
- cd-next 0x0000000000001520
- cd-previous 0x0000000000001521
- cd-index_next 0x0000000000001522
- cd-index_previous 0x0000000000001523
- cd-play/program 0x0000000000001524
- cd-speed_nominal 0x0000000000001525
- cd-speed+ 0x0000000000001526
- cd-speed- 0x0000000000001527
- cd-INVALID 0x0000000000001528
- cd-store_execute 0x0000000000001529
- cd-INVALID 0x000000000000152A
- cd-scan_forward 0x000000000000152B
- cd-INVALID 0x000000000000152C
- cd-open/close 0x000000000000152D
- cd-INVALID 0x000000000000152E
- cd-INVALID 0x000000000000152F
- cd-pause 0x0000000000001530
- cd-erase 0x0000000000001531
- cd-rewind 0x0000000000001532
- cd-go_to 0x0000000000001533
- cd-wind 0x0000000000001534
- cd-play 0x0000000000001535
- cd-stop 0x0000000000001536
- cd-recording 0x0000000000001537
- cd-external1 0x0000000000001538
- cd-external2 0x0000000000001539
- cd-clear_all_memory 0x000000000000153A
- cd-repeat_A/B_program 0x000000000000153B
- cd-dynamic_range_expand 0x000000000000153C
- cd-system_standby 0x000000000000153D
- cd-dynamic_range_compress 0x000000000000153E
- cd-system_select 0x000000000000153F
- cd-surround_sound 0x0000000000000500
- cd-balance_front 0x0000000000000501
- cd-balance_rear 0x0000000000000502
- cd-sound_effects1 0x0000000000000503
- cd-sound_effects2 0x0000000000000504
- cd-sound_effects3 0x0000000000000505
- cd-sound_effects4 0x0000000000000506
- cd-sound_effects5 0x0000000000000507
- cd-sound_or_menu_func.1 0x0000000000000508
- cd-sound_or_menu_func.2 0x0000000000000509
- cd-sound_or_menu_func.3 0x000000000000050A
- cd-linear_function_up 0x000000000000050D
- cd-linear_function_down 0x000000000000050E
- cd-sound_or_menu_func. 0x000000000000050F
- cd-cursor_step_up 0x0000000000000510
- cd-cursor_step_down 0x0000000000000511
- cd-menu_on 0x0000000000000512
- cd-menu_off 0x0000000000000513
- cd-display_A/V_status 0x0000000000000514
- cd-cursor_step_left 0x0000000000000515
- cd-cursor_step_right 0x0000000000000516
- cd-menu_function 0x0000000000000517
- cd-PIP_on/off 0x0000000000000518
- cd-PIP_shift 0x0000000000000519
- cd-PIP_main_swap 0x000000000000051A
- cd-strobe_on/off 0x000000000000051B
- cd-multi_strobe 0x000000000000051C
- cd-main_freezed 0x000000000000051D
- cd-3/9_multi_scan 0x000000000000051E
- cd-PIP_mode_select 0x000000000000051F
- cd-mosaic 0x0000000000000520
- cd-solarization 0x0000000000000521
- cd-main_stored 0x0000000000000522
- cd-PIP_strobe 0x0000000000000523
- cd-recall_main 0x0000000000000524
- cd-PIP_freeze 0x0000000000000525
- cd-PIP_step_up 0x0000000000000526
- cd-PIP_step_down 0x0000000000000527
- cd-INVALID 0x0000000000000528
- cd-INVALID 0x0000000000000529
- cd-INVALID 0x000000000000052A
- cd-INVALID 0x000000000000052B
- cd-FTS 0x000000000000052C
- cd-INVALID 0x000000000000052D
- cd-INVALID 0x0000000000000532
- cd-INVALID 0x0000000000000533
- cd-INVALID 0x0000000000000534
- cd-INVALID 0x0000000000000535
- cd-sub_mode1 0x0000000000000536
- cd-sub_mode2 0x0000000000000537
- cd-connect 0x000000000000053B
- cd-disconnect 0x000000000000053C
- lv1-0 0x0000000000001100
- lv1-1 0x0000000000001101
- lv1-2 0x0000000000001102
- lv1-3 0x0000000000001103
- lv1-4 0x0000000000001104
- lv1-5 0x0000000000001105
- lv1-6 0x0000000000001106
- lv1-7 0x0000000000001107
- lv1-8 0x0000000000001108
- lv1-9 0x0000000000001109
- lv1-picture_number/time 0x000000000000110A
- lv1-channel_number 0x000000000000110B
- lv1-standby 0x000000000000110C
- lv1-mute/demute 0x000000000000110D
- lv1-P.P._(personal_pref.) 0x000000000000110E
- lv1-display 0x000000000000110F
- lv1-volume+ 0x0000000000001110
- lv1-volume- 0x0000000000001111
- lv1-brightness+ 0x0000000000001112
- lv1-brightness- 0x0000000000001113
- lv1-colour_saturation+ 0x0000000000001114
- lv1-colour_saturation- 0x0000000000001115
- lv1-bass+ 0x0000000000001116
- lv1-bass- 0x0000000000001117
- lv1-treble+ 0x0000000000001118
- lv1-treble- 0x0000000000001119
- lv1-balance_right 0x000000000000111A
- lv1-balance_left 0x000000000000111B
- lv1-repeat_once/TSPo 0x000000000000111C
- lv1-repeat_cont/TSPc 0x000000000000111D
- lv1-next 0x000000000000111E
- lv1-fast_run_reverse 0x000000000000111F
- lv1-entry 0x0000000000001120
- lv1-auto_stop/memory 0x0000000000001121
- lv1-slow_run_reverse 0x0000000000001122
- lv1-audio1 0x0000000000001123
- lv1-audio2 0x0000000000001124
- lv1-still_picture 0x0000000000001125
- lv1-speed+ 0x0000000000001126
- lv1-speed- 0x0000000000001127
- lv1-slow_run_forward 0x0000000000001128
- lv1-still_forward 0x0000000000001129
- lv1-fast_run_forward 0x000000000000112A
- lv1-search_automatic 0x000000000000112B
- lv1-scan_reverse 0x000000000000112C
- lv1-open/close_(eject) 0x000000000000112D
- lv1-scan_forward 0x000000000000112E
- lv1-play_reverse 0x000000000000112F
- lv1-pause 0x0000000000001130
- lv1-erase 0x0000000000001131
- lv1-rewind 0x0000000000001132
- lv1-go_to 0x0000000000001133
- lv1-wind 0x0000000000001134
- lv1-play 0x0000000000001135
- lv1-stop 0x0000000000001136
- lv1-recording 0x0000000000001137
- lv1-external1 0x0000000000001138
- lv1-external2 0x0000000000001139
- lv1-clear_all_memory 0x000000000000113A
- lv1-freeze_segment 0x000000000000113B
- lv1-TXT_(pal)/ant.sw_(ntsc) 0x000000000000113C
- lv1-system_standby 0x000000000000113D
- lv1-CX_on/off 0x000000000000113E
- lv1-system_select 0x000000000000113F
- lv1-surround_sound 0x0000000000000100
- lv1-balance_front 0x0000000000000101
- lv1-balance_rear 0x0000000000000102
- lv1-sound_effects1 0x0000000000000103
- lv1-sound_effects2 0x0000000000000104
- lv1-sound_effects3 0x0000000000000105
- lv1-sound_effects4 0x0000000000000106
- lv1-sound_effects5 0x0000000000000107
- lv1-sound_or_menu_func.1 0x0000000000000108
- lv1-sound_or_menu_func.2 0x0000000000000109
- lv1-sound_or_menu_func.3 0x000000000000010A
- lv1-INVALID 0x000000000000010B
- lv1-INVALID 0x000000000000010C
- lv1-linear_function_up 0x000000000000010D
- lv1-linear_function_down 0x000000000000010E
- lv1-sound_or_menu_func. 0x000000000000010F
- lv1-cursor_step_up 0x0000000000000110
- lv1-cursor_step_down 0x0000000000000111
- lv1-menu_on 0x0000000000000112
- lv1-menu_off 0x0000000000000113
- lv1-display_A/V_status 0x0000000000000114
- lv1-cursor_step_left 0x0000000000000115
- lv1-cursor_step_right 0x0000000000000116
- lv1-menu_function 0x0000000000000117
- lv1-PIP_on/off 0x0000000000000118
- lv1-PIP_shift 0x0000000000000119
- lv1-PIP_main_swap 0x000000000000011A
- lv1-strobe_on/off 0x000000000000011B
- lv1-multi_strobe 0x000000000000011C
- lv1-main_freezed 0x000000000000011D
- lv1-3/9_multi_scan 0x000000000000011E
- lv1-PIP_mode_select 0x000000000000011F
- lv1-mosaic 0x0000000000000120
- lv1-solarization 0x0000000000000121
- lv1-main_stored 0x0000000000000122
- lv1-PIP_strobe 0x0000000000000123
- lv1-recall_main 0x0000000000000124
- lv1-PIP_freeze 0x0000000000000125
- lv1-PIP_step_up 0x0000000000000126
- lv1-PIP_step_down 0x0000000000000127
- lv1-INVALID 0x0000000000000128
- lv1-INVALID 0x0000000000000129
- lv1-INVALID 0x000000000000012A
- lv1-INVALID 0x000000000000012B
- lv1-INVALID 0x000000000000012C
- lv1-INVALID 0x000000000000012D
- lv1-INVALID 0x0000000000000130
- lv1-INVALID 0x0000000000000131
- lv1-INVALID 0x0000000000000132
- lv1-INVALID 0x0000000000000133
- lv1-INVALID 0x0000000000000134
- lv1-INVALID 0x0000000000000135
- lv1-sub_mode1 0x0000000000000136
- lv1-sub_mode2 0x0000000000000137
- lv1-INVALID 0x0000000000000138
- lv1-INVALID 0x0000000000000139
- lv1-INVALID 0x000000000000013A
- lv1-connect 0x000000000000013B
- lv1-disconnect 0x000000000000013C
- lv2-0 0x0000000000001300
- lv2-1 0x0000000000001301
- lv2-2 0x0000000000001302
- lv2-3 0x0000000000001303
- lv2-4 0x0000000000001304
- lv2-5 0x0000000000001305
- lv2-6 0x0000000000001306
- lv2-7 0x0000000000001307
- lv2-8 0x0000000000001308
- lv2-9 0x0000000000001309
- lv2-picture_number/time 0x000000000000130A
- lv2-chapter_number 0x000000000000130B
- lv2-standby 0x000000000000130C
- lv2-mute/demute 0x000000000000130D
- lv2-P.P._(personal_pref.) 0x000000000000130E
- lv2-display 0x000000000000130F
- lv2-volume+ 0x0000000000001310
- lv2-volume- 0x0000000000001311
- lv2-brightness+ 0x0000000000001312
- lv2-brightness- 0x0000000000001313
- lv2-colour_saturation+ 0x0000000000001314
- lv2-colour_saturation- 0x0000000000001315
- lv2-bass+ 0x0000000000001316
- lv2-bass- 0x0000000000001317
- lv2-treble+ 0x0000000000001318
- lv2-treble- 0x0000000000001319
- lv2-balance_right 0x000000000000131A
- lv2-balance_left 0x000000000000131B
- lv2-repeat_once/TSPo 0x000000000000131C
- lv2-repeat_cont/TSPc 0x000000000000131D
- lv2-next 0x000000000000131E
- lv2-programming 0x000000000000131F
- lv2-INVALID 0x0000000000001320
- lv2-auto_stop/memory 0x0000000000001321
- lv2-slow_run_reverse 0x0000000000001322
- lv2-stereo_left/right 0x0000000000001323
- lv2-previous 0x0000000000001324
- lv2-still_reverse 0x0000000000001325
- lv2-speed+ 0x0000000000001326
- lv2-speed- 0x0000000000001327
- lv2-slow_run_forward 0x0000000000001328
- lv2-still_forward 0x0000000000001329
- lv2-digital_multi_screen 0x000000000000132A
- lv2-strobe 0x000000000000132B
- lv2-scan_reverse 0x000000000000132C
- lv2-open/close_(eject) 0x000000000000132D
- lv2-scan_forward 0x000000000000132E
- lv2-INVALID 0x000000000000132F
- lv2-pause 0x0000000000001330
- lv2-erase 0x0000000000001331
- lv2-rewind 0x0000000000001332
- lv2-go_to 0x0000000000001333
- lv2-wind 0x0000000000001334
- lv2-play 0x0000000000001335
- lv2-stop 0x0000000000001336
- lv2-recording 0x0000000000001337
- lv2-external1 0x0000000000001338
- lv2-external2 0x0000000000001339
- lv2-clear_all_memory 0x000000000000133A
- lv2-repeat_A/B_program 0x000000000000133B
- lv2-TXT_(pal)/ant.sw_(ntsc) 0x000000000000133C
- lv2-system_standby 0x000000000000133D
- lv2-CX_on/off 0x000000000000133E
- lv2-system_select 0x000000000000133F
- lv2-surround_sound 0x0000000000000300
- lv2-balance_front 0x0000000000000301
- lv2-balance_rear 0x0000000000000302
- lv2-sound_effects1 0x0000000000000303
- lv2-sound_effects2 0x0000000000000304
- lv2-sound_effects3 0x0000000000000305
- lv2-sound_effects4 0x0000000000000306
- lv2-sound_effects5 0x0000000000000307
- lv2-sound_or_menu_func.1 0x0000000000000308
- lv2-sound_or_menu_func.2 0x0000000000000309
- lv2-sound_or_menu_func.3 0x000000000000030A
- lv2-linear_function_up 0x000000000000030D
- lv2-linear_function_down 0x000000000000030E
- lv2-sound_or_menu_func. 0x000000000000030F
- lv2-cursor_step_up 0x0000000000000310
- lv2-cursor_step_down 0x0000000000000311
- lv2-menu_on 0x0000000000000312
- lv2-menu_off 0x0000000000000313
- lv2-display_A/V_status 0x0000000000000314
- lv2-cursor_step_left 0x0000000000000315
- lv2-cursor_step_right 0x0000000000000316
- lv2-menu_function 0x0000000000000317
- lv2-PIP_on/off 0x0000000000000318
- lv2-PIP_shift 0x0000000000000319
- lv2-PIP_main_swap 0x000000000000031A
- lv2-strobe_on/off 0x000000000000031B
- lv2-multi_strobe 0x000000000000031C
- lv2-main_freezed 0x000000000000031D
- lv2-3/9_multi_scan 0x000000000000031E
- lv2-PIP_mode_select 0x000000000000031F
- lv2-mosaic 0x0000000000000320
- lv2-solarization 0x0000000000000321
- lv2-main_stored 0x0000000000000322
- lv2-PIP_strobe 0x0000000000000323
- lv2-recall_main 0x0000000000000324
- lv2-PIP_freeze 0x0000000000000325
- lv2-PIP_step_up 0x0000000000000326
- lv2-PIP_step_down 0x0000000000000327
- lv2-FTS 0x000000000000032C
- lv2-index_next 0x0000000000000330
- lv2-index_previous 0x0000000000000331
- lv2-sub_mode1 0x0000000000000336
- lv2-sub_mode2 0x0000000000000337
- lv2-connect 0x000000000000033B
- lv2-disconnect 0x000000000000033C
- phono-0 0x0000000000001540
- phono-1 0x0000000000001541
- phono-2 0x0000000000001542
- phono-3 0x0000000000001543
- phono-4 0x0000000000001544
- phono-5 0x0000000000001545
- phono-6 0x0000000000001546
- phono-7 0x0000000000001547
- phono-8 0x0000000000001548
- phono-9 0x0000000000001549
- phono-INVALID 0x000000000000154A
- phono-INVALID 0x000000000000154B
- phono-standby 0x000000000000154C
- phono-mute/demute 0x000000000000154D
- phono-P.P. 0x000000000000154E
- phono-display 0x000000000000154F
- phono-volume+ 0x0000000000001550
- phono-volume- 0x0000000000001551
- phono-brightness+ 0x0000000000001552
- phono-brightness- 0x0000000000001553
- phono-colour_saturation+ 0x0000000000001554
- phono-colour_saturation- 0x0000000000001555
- phono-bass+ 0x0000000000001556
- phono-bass- 0x0000000000001557
- phono-treble+ 0x0000000000001558
- phono-treble- 0x0000000000001559
- phono-balance_right 0x000000000000155A
- phono-balance_left 0x000000000000155B
- phono-repeat_once 0x000000000000155C
- phono-repeat_continuously 0x000000000000155D
- phono-select+ 0x000000000000155E
- phono-select- 0x000000000000155F
- phono-next 0x0000000000001560
- phono-previous 0x0000000000001561
- phono-index_next 0x0000000000001562
- phono-index_previous 0x0000000000001563
- phono-stereo/mono 0x0000000000001564
- phono-INVALID 0x0000000000001565
- phono-INVALID 0x0000000000001566
- phono-INVALID 0x0000000000001567
- phono-INVALID 0x0000000000001568
- phono-store_execute 0x0000000000001569
- phono-INVALID 0x000000000000156A
- phono-scan_forward 0x000000000000156B
- phono-INVALID 0x000000000000156C
- phono-open/close 0x000000000000156D
- phono-wave_scroll 0x000000000000156E
- phono-INVALID 0x000000000000156F
- phono-pause 0x0000000000001570
- phono-erase 0x0000000000001571
- phono-rewind 0x0000000000001572
- phono-go_to 0x0000000000001573
- phono-wind 0x0000000000001574
- phono-play 0x0000000000001575
- phono-stop 0x0000000000001576
- phono-recording 0x0000000000001577
- phono-external1 0x0000000000001578
- phono-external2 0x0000000000001579
- phono-clear_all_memory 0x000000000000157A
- phono-INVALID 0x000000000000157B
- phono-INVALID 0x000000000000157C
- phono-system_standby 0x000000000000157D
- phono-counter_memory 0x000000000000157E
- phono-system_select 0x000000000000157F
- phono-surround_sound 0x0000000000000540
- phono-balance_front 0x0000000000000541
- phono-balance_rear 0x0000000000000542
- phono-sound_effects1 0x0000000000000543
- phono-sound_effects2 0x0000000000000544
- phono-sound_effects3 0x0000000000000545
- phono-sound_effects4 0x0000000000000546
- phono-sound_effects5 0x0000000000000547
- phono-sound_or_menu_func.1 0x0000000000000548
- phono-sound_or_menu_func.2 0x0000000000000549
- phono-sound_or_menu_func.3 0x000000000000054A
- phono-linear_function_up 0x000000000000054D
- phono-linear_function_down 0x000000000000054E
- phono-sound_or_menu_func. 0x000000000000054F
- phono-cursor_step_up 0x0000000000000550
- phono-cursor_step_down 0x0000000000000551
- phono-menu_on 0x0000000000000552
- phono-menu_off 0x0000000000000553
- phono-display_A/V_status 0x0000000000000554
- phono-cursor_step_left 0x0000000000000555
- phono-cursor_step_right 0x0000000000000556
- phono-menu_function 0x0000000000000557
- phono-PIP_on/off 0x0000000000000558
- phono-PIP_shift 0x0000000000000559
- phono-PIP_main_swap 0x000000000000055A
- phono-strobe_on/off 0x000000000000055B
- phono-multi_strobe 0x000000000000055C
- phono-main_freezed 0x000000000000055D
- phono-3/9_multi_scan 0x000000000000055E
- phono-PIP_mode_select 0x000000000000055F
- phono-mosaic 0x0000000000000560
- phono-solarization 0x0000000000000561
- phono-main_stored 0x0000000000000562
- phono-PIP_strobe 0x0000000000000563
- phono-recall_main 0x0000000000000564
- phono-PIP_freeze 0x0000000000000565
- phono-PIP_step_up 0x0000000000000566
- phono-PIP_step_down 0x0000000000000567
- phono-INVALID 0x0000000000000568
- phono-INVALID 0x0000000000000569
- phono-INVALID 0x000000000000056A
- phono-INVALID 0x000000000000056B
- phono-INVALID 0x000000000000056C
- phono-INVALID 0x000000000000056D
- phono-INVALID 0x0000000000000572
- phono-INVALID 0x0000000000000573
- phono-INVALID 0x0000000000000574
- phono-INVALID 0x0000000000000575
- phono-sub_mode 0x0000000000000576
- phono-sub_mode 0x0000000000000577
- phono-connect 0x000000000000057B
- phono-disconnect 0x000000000000057C
- rec1-0 0x0000000000001480
- rec1-1 0x0000000000001481
- rec1-2 0x0000000000001482
- rec1-3 0x0000000000001483
- rec1-4 0x0000000000001484
- rec1-5 0x0000000000001485
- rec1-6 0x0000000000001486
- rec1-7 0x0000000000001487
- rec1-8 0x0000000000001488
- rec1-9 0x0000000000001489
- rec1-INVALID 0x000000000000148A
- rec1-INVALID 0x000000000000148B
- rec1-standby 0x000000000000148C
- rec1-mute/demute 0x000000000000148D
- rec1-P.P. 0x000000000000148E
- rec1-display 0x000000000000148F
- rec1-volume+ 0x0000000000001490
- rec1-volume- 0x0000000000001491
- rec1-brightness+ 0x0000000000001492
- rec1-brightness- 0x0000000000001493
- rec1-colour_saturation+ 0x0000000000001494
- rec1-colour_saturation- 0x0000000000001495
- rec1-bass+ 0x0000000000001496
- rec1-bass- 0x0000000000001497
- rec1-treble+ 0x0000000000001498
- rec1-treble- 0x0000000000001499
- rec1-balance_right 0x000000000000149A
- rec1-balance_left 0x000000000000149B
- rec1-repeat_once 0x000000000000149C
- rec1-repeat_continuously 0x000000000000149D
- rec1-select+ 0x000000000000149E
- rec1-select- 0x000000000000149F
- rec1-next 0x00000000000014A0
- rec1-previous 0x00000000000014A1
- rec1-INVALID 0x00000000000014A2
- rec1-last_record_cancel 0x00000000000014A3
- rec1-sequential 0x00000000000014A4
- rec1-blank_search 0x00000000000014A5
- rec1-INVALID 0x00000000000014A6
- rec1-INVALID 0x00000000000014A7
- rec1-recording_pause 0x00000000000014A8
- rec1-store_execute 0x00000000000014A9
- rec1-recording_blank 0x00000000000014AA
- rec1-scan_forward 0x00000000000014AB
- rec1-mechanism_A 0x00000000000014AC
- rec1-eject 0x00000000000014AD
- rec1-mechanism_B 0x00000000000014AE
- rec1-play_reverse 0x00000000000014AF
- rec1-pause 0x00000000000014B0
- rec1-erase 0x00000000000014B1
- rec1-rewind 0x00000000000014B2
- rec1-go_to 0x00000000000014B3
- rec1-wind 0x00000000000014B4
- rec1-play 0x00000000000014B5
- rec1-stop 0x00000000000014B6
- rec1-recording 0x00000000000014B7
- rec1-external1 0x00000000000014B8
- rec1-external2 0x00000000000014B9
- rec1-clear_all_memory 0x00000000000014BA
- rec1-INVALID 0x00000000000014BB
- rec1-INVALID 0x00000000000014BC
- rec1-system_standby 0x00000000000014BD
- rec1-INVALID 0x00000000000014BE
- rec1-system_select 0x00000000000014BF
- rec1-surround_sound 0x0000000000000480
- rec1-balance_front 0x0000000000000481
- rec1-balance_rear 0x0000000000000482
- rec1-sound_effects1 0x0000000000000483
- rec1-sound_effects2 0x0000000000000484
- rec1-sound_effects3 0x0000000000000485
- rec1-sound_effects4 0x0000000000000486
- rec1-sound_effects5 0x0000000000000487
- rec1-sound_or_menu_func.1 0x0000000000000488
- rec1-sound_or_menu_func.2 0x0000000000000489
- rec1-sound_or_menu_func.3 0x000000000000048A
- rec1-linear_function_up 0x000000000000048D
- rec1-linear_function_down 0x000000000000048E
- rec1-sound_or_menu_func. 0x000000000000048F
- rec1-cursor_step_up 0x0000000000000490
- rec1-cursor_step_down 0x0000000000000491
- rec1-menu_on 0x0000000000000492
- rec1-menu_off 0x0000000000000493
- rec1-display_A/V_status 0x0000000000000494
- rec1-cursor_step_left 0x0000000000000495
- rec1-cursor_step_right 0x0000000000000496
- rec1-menu_function 0x0000000000000497
- rec1-PIP_on/off 0x0000000000000498
- rec1-PIP_shift 0x0000000000000499
- rec1-PIP_main_swap 0x000000000000049A
- rec1-strobe_on/off 0x000000000000049B
- rec1-multi_strobe 0x000000000000049C
- rec1-main_freezed 0x000000000000049D
- rec1-3/9_multi_scan 0x000000000000049E
- rec1-PIP_mode_select 0x000000000000049F
- rec1-mosaic 0x00000000000004A0
- rec1-solarization 0x00000000000004A1
- rec1-main_stored 0x00000000000004A2
- rec1-PIP_strobe 0x00000000000004A3
- rec1-recall_main 0x00000000000004A4
- rec1-PIP_freeze 0x00000000000004A5
- rec1-PIP_step_up 0x00000000000004A6
- rec1-PIP_step_down 0x00000000000004A7
- rec1-automatic_start_ID 0x00000000000004A8
- rec1-write_skip_ID 0x00000000000004A9
- rec1-skip_on/off 0x00000000000004AA
- rec1-write_end_ID 0x00000000000004AB
- rec1-write_FTS 0x00000000000004AC
- rec1-write_TOC 0x00000000000004AD
- rec1-write_start_ID 0x00000000000004B2
- rec1-Ca/Er/SK_ID 0x00000000000004B3
- rec1-reformat 0x00000000000004B4
- rec1-blank_search 0x00000000000004B5
- rec1-sub_mode 0x00000000000004B6
- rec1-sub_mode 0x00000000000004B7
- rec1-connect 0x00000000000004BB
- rec1-disconnect 0x00000000000004BC
- rec2-0 0x00000000000015C0
- rec2-1 0x00000000000015C1
- rec2-2 0x00000000000015C2
- rec2-3 0x00000000000015C3
- rec2-4 0x00000000000015C4
- rec2-5 0x00000000000015C5
- rec2-6 0x00000000000015C6
- rec2-7 0x00000000000015C7
- rec2-8 0x00000000000015C8
- rec2-9 0x00000000000015C9
- rec2-INVALID 0x00000000000015CA
- rec2-INVALID 0x00000000000015CB
- rec2-standby 0x00000000000015CC
- rec2-mute/demute 0x00000000000015CD
- rec2-P.P. 0x00000000000015CE
- rec2-display 0x00000000000015CF
- rec2-volume+ 0x00000000000015D0
- rec2-volume- 0x00000000000015D1
- rec2-brightness+ 0x00000000000015D2
- rec2-brightness- 0x00000000000015D3
- rec2-colour_saturation+ 0x00000000000015D4
- rec2-colour_saturation- 0x00000000000015D5
- rec2-bass+ 0x00000000000015D6
- rec2-bass- 0x00000000000015D7
- rec2-treble+ 0x00000000000015D8
- rec2-treble- 0x00000000000015D9
- rec2-balance_right 0x00000000000015DA
- rec2-balance_left 0x00000000000015DB
- rec2-repeat_once 0x00000000000015DC
- rec2-repeat_continuously 0x00000000000015DD
- rec2-select+ 0x00000000000015DE
- rec2-select- 0x00000000000015DF
- rec2-next 0x00000000000015E0
- rec2-previous 0x00000000000015E1
- rec2-INVALID 0x00000000000015E2
- rec2-last_record_cancel 0x00000000000015E3
- rec2-sequential 0x00000000000015E4
- rec2-blank_search 0x00000000000015E5
- rec2-INVALID 0x00000000000015E6
- rec2-INVALID 0x00000000000015E7
- rec2-recording_pause 0x00000000000015E8
- rec2-store_execute 0x00000000000015E9
- rec2-recording_blank 0x00000000000015EA
- rec2-scan_forward 0x00000000000015EB
- rec2-mechanism_A 0x00000000000015EC
- rec2-eject 0x00000000000015ED
- rec2-mechanism_B 0x00000000000015EE
- rec2-play_reverse 0x00000000000015EF
- rec2-pause 0x00000000000015F0
- rec2-erase 0x00000000000015F1
- rec2-rewind 0x00000000000015F2
- rec2-go_to 0x00000000000015F3
- rec2-wind 0x00000000000015F4
- rec2-play 0x00000000000015F5
- rec2-stop 0x00000000000015F6
- rec2-recording 0x00000000000015F7
- rec2-external1 0x00000000000015F8
- rec2-external2 0x00000000000015F9
- rec2-clear_all_memory 0x00000000000015FA
- rec2-INVALID 0x00000000000015FB
- rec2-INVALID 0x00000000000015FC
- rec2-system_standby 0x00000000000015FD
- rec2-INVALID 0x00000000000015FE
- rec2-system_select 0x00000000000015FF
- rec2-surround_sound 0x00000000000005C0
- rec2-balance_front 0x00000000000005C1
- rec2-balance_rear 0x00000000000005C2
- rec2-sound_effects1 0x00000000000005C3
- rec2-sound_effects2 0x00000000000005C4
- rec2-sound_effects3 0x00000000000005C5
- rec2-sound_effects4 0x00000000000005C6
- rec2-sound_effects5 0x00000000000005C7
- rec2-sound_or_menu_func.1 0x00000000000005C8
- rec2-sound_or_menu_func.2 0x00000000000005C9
- rec2-sound_or_menu_func.3 0x00000000000005CA
- rec2-linear_function_up 0x00000000000005CD
- rec2-linear_function_down 0x00000000000005CE
- rec2-sound_or_menu_func. 0x00000000000005CF
- rec2-cursor_step_up 0x00000000000005D0
- rec2-cursor_step_down 0x00000000000005D1
- rec2-menu_on 0x00000000000005D2
- rec2-menu_off 0x00000000000005D3
- rec2-display_A/V_status 0x00000000000005D4
- rec2-cursor_step_left 0x00000000000005D5
- rec2-cursor_step_right 0x00000000000005D6
- rec2-menu_function 0x00000000000005D7
- rec2-PIP_on/off 0x00000000000005D8
- rec2-PIP_shift 0x00000000000005D9
- rec2-PIP_main_swap 0x00000000000005DA
- rec2-strobe_on/off 0x00000000000005DB
- rec2-multi_strobe 0x00000000000005DC
- rec2-main_freezed 0x00000000000005DD
- rec2-3/9_multi_scan 0x00000000000005DE
- rec2-PIP_mode_select 0x00000000000005DF
- rec2-mosaic 0x00000000000005E0
- rec2-solarization 0x00000000000005E1
- rec2-main_stored 0x00000000000005E2
- rec2-PIP_strobe 0x00000000000005E3
- rec2-recall_main 0x00000000000005E4
- rec2-PIP_freeze 0x00000000000005E5
- rec2-PIP_step_up 0x00000000000005E6
- rec2-PIP_step_down 0x00000000000005E7
- rec2-automatic_start_ID 0x00000000000005E8
- rec2-write_skip_ID 0x00000000000005E9
- rec2-skip_on/off 0x00000000000005EA
- rec2-write_end_ID 0x00000000000005EB
- rec2-write_FTS 0x00000000000005EC
- rec2-write_TOC 0x00000000000005ED
- rec2-write_start_ID 0x00000000000005F2
- rec2-Ca/Er/SK_ID 0x00000000000005F3
- rec2-reformat 0x00000000000005F4
- rec2-blank_search 0x00000000000005F5
- rec2-sub_mode 0x00000000000005F6
- rec2-sub_mode 0x00000000000005F7
- rec2-connect 0x00000000000005FB
- rec2-disconnect 0x00000000000005FC
- sat-0 0x0000000000001200
- sat-1 0x0000000000001201
- sat-2 0x0000000000001202
- sat-3 0x0000000000001203
- sat-4 0x0000000000001204
- sat-5 0x0000000000001205
- sat-6 0x0000000000001206
- sat-7 0x0000000000001207
- sat-8 0x0000000000001208
- sat-9 0x0000000000001209
- sat-1/2_digits 0x000000000000120A
- sat-channel/program_mode 0x000000000000120B
- sat-standby 0x000000000000120C
- sat-mute/demute 0x000000000000120D
- sat-P.P. 0x000000000000120E
- sat-display 0x000000000000120F
- sat-volume+ 0x0000000000001210
- sat-volume- 0x0000000000001211
- sat-brightness+ 0x0000000000001212
- sat-brightness- 0x0000000000001213
- sat-colour_saturation+ 0x0000000000001214
- sat-colour_saturation- 0x0000000000001215
- sat-bass+ 0x0000000000001216
- sat-bass- 0x0000000000001217
- sat-treble+ 0x0000000000001218
- sat-treble- 0x0000000000001219
- sat-balance_right 0x000000000000121A
- sat-balance_left 0x000000000000121B
- sat-INVALID 0x000000000000121C
- sat-INVALID 0x000000000000121D
- sat-INVALID 0x000000000000121E
- sat-INVALID 0x000000000000121F
- sat-channel/program+ 0x0000000000001220
- sat-channel/program- 0x0000000000001221
- sat-INVALID 0x0000000000001222
- sat-language_select/mode1 0x0000000000001223
- sat-special_stereo_on/off 0x0000000000001224
- sat-audio_mixed_/_mode2 0x0000000000001225
- sat-INVALID 0x0000000000001226
- sat-INVALID 0x0000000000001227
- sat-INVALID 0x0000000000001228
- sat-INVALID 0x0000000000001229
- sat-INVALID 0x000000000000122A
- sat-INVALID 0x000000000000122B
- sat-INVALID 0x000000000000122C
- sat-INVALID 0x000000000000122D
- sat-subtitle 0x000000000000122E
- sat-INVALID 0x000000000000122F
- sat-pause 0x0000000000001230
- sat-erase 0x0000000000001231
- sat-rewind 0x0000000000001232
- sat-go_to 0x0000000000001233
- sat-wind 0x0000000000001234
- sat-play 0x0000000000001235
- sat-stop 0x0000000000001236
- sat-recording 0x0000000000001237
- sat-external1 0x0000000000001238
- sat-external2 0x0000000000001239
- sat-INVALID 0x000000000000123A
- sat-INVALID 0x000000000000123B
- sat-TXT_submode 0x000000000000123C
- sat-system_standby 0x000000000000123D
- sat-INVALID 0x000000000000123E
- sat-system_select 0x000000000000123F
- sat-surround_sound 0x0000000000000200
- sat-balance_front 0x0000000000000201
- sat-balance_rear 0x0000000000000202
- sat-sound_effects1 0x0000000000000203
- sat-sound_effects2 0x0000000000000204
- sat-sound_effects3 0x0000000000000205
- sat-sound_effects4 0x0000000000000206
- sat-sound_effects5 0x0000000000000207
- sat-sound_or_menu_func.1 0x0000000000000208
- sat-sound_or_menu_func.2 0x0000000000000209
- sat-sound_or_menu_func.3 0x000000000000020A
- sat-INVALID 0x000000000000020B
- sat-INVALID 0x000000000000020C
- sat-linear_function_up 0x000000000000020D
- sat-linear_function_down 0x000000000000020E
- sat-sound_or_menu_func. 0x000000000000020F
- sat-cursor_step_up 0x0000000000000210
- sat-cursor_step_down 0x0000000000000211
- sat-menu_on 0x0000000000000212
- sat-menu_off 0x0000000000000213
- sat-display_A/V_status 0x0000000000000214
- sat-cursor_step_left 0x0000000000000215
- sat-cursor_step_right 0x0000000000000216
- sat-menu_function 0x0000000000000217
- sat-PIP_on/off 0x0000000000000218
- sat-PIP_shift 0x0000000000000219
- sat-PIP_main_swap 0x000000000000021A
- sat-strobe_on/off 0x000000000000021B
- sat-multi_strobe 0x000000000000021C
- sat-main_freezed 0x000000000000021D
- sat-3/9_multi_scan 0x000000000000021E
- sat-PIP_mode_select 0x000000000000021F
- sat-mosaic 0x0000000000000220
- sat-solarization 0x0000000000000221
- sat-main_stored 0x0000000000000222
- sat-PIP_strobe 0x0000000000000223
- sat-recall_main 0x0000000000000224
- sat-PIP_freeze 0x0000000000000225
- sat-PIP_step_up 0x0000000000000226
- sat-PIP_step_down 0x0000000000000227
- sat-INVALID 0x0000000000000228
- sat-INVALID 0x0000000000000229
- sat-INVALID 0x000000000000022A
- sat-INVALID 0x000000000000022B
- sat-INVALID 0x000000000000022C
- sat-INVALID 0x000000000000022D
- sat-INVALID 0x0000000000000230
- sat-INVALID 0x0000000000000231
- sat-INVALID 0x0000000000000232
- sat-INVALID 0x0000000000000233
- sat-INVALID 0x0000000000000234
- sat-INVALID 0x0000000000000235
- sat-sub_mode 0x0000000000000236
- sat-sub_mode 0x0000000000000237
- sat-INVALID 0x0000000000000238
- sat-INVALID 0x0000000000000239
- sat-INVALID 0x000000000000023A
- sat-connect 0x000000000000023B
- sat-INVALID 0x000000000000023C
- text-0 0x0000000000001080
- text-1 0x0000000000001081
- text-2 0x0000000000001082
- text-3 0x0000000000001083
- text-4 0x0000000000001084
- text-5 0x0000000000001085
- text-6 0x0000000000001086
- text-7 0x0000000000001087
- text-8 0x0000000000001088
- text-9 0x0000000000001089
- text-step_page+ 0x000000000000108A
- text-step_page- 0x000000000000108B
- text-standby 0x000000000000108C
- text-mute/demute 0x000000000000108D
- text-P.P. 0x000000000000108E
- text-display 0x000000000000108F
- text-volume+ 0x0000000000001090
- text-volume- 0x0000000000001091
- text-brightness+ 0x0000000000001092
- text-brightness- 0x0000000000001093
- text-colour_saturation+ 0x0000000000001094
- text-colour_saturation- 0x0000000000001095
- text-bass+ 0x0000000000001096
- text-bass- 0x0000000000001097
- text-treble+ 0x0000000000001098
- text-treble- 0x0000000000001099
- text-balance_right 0x000000000000109A
- text-balance_left 0x000000000000109B
- text-enter/validation_(Frnc) 0x000000000000109C
- text-memory_out 0x000000000000109D
- text-sequence_out 0x000000000000109E
- text-INVALID 0x000000000000109F
- text-exchange 0x00000000000010A0
- text-index/summary_(France) 0x00000000000010A1
- text-row_zero_(France) 0x00000000000010A2
- text-1st/2nd_language 0x00000000000010A3
- text-spacial_stereo_on/off 0x00000000000010A4
- text-INVALID 0x00000000000010A5
- text-hardcopy_printer 0x00000000000010A6
- text-antiope_TV_mixed_(Frnc) 0x00000000000010A7
- text-PIP_select 0x00000000000010A8
- text-page_hold_on/off 0x00000000000010A9
- text-clck_timed_page_(F:magazine) 0x00000000000010AA
- text-large_top/lrge_bot/norm 0x00000000000010AB
- text-reveal/conceal/canc_pic 0x00000000000010AC
- text-cancel_teletext_picture 0x00000000000010AD
- text-TV/Text_mixed/Subtitle 0x00000000000010AE
- text-PIP_shift 0x00000000000010AF
- text-pause 0x00000000000010B0
- text-erase 0x00000000000010B1
- text-rewind 0x00000000000010B2
- text-go_to 0x00000000000010B3
- text-wind 0x00000000000010B4
- text-play 0x00000000000010B5
- text-stop 0x00000000000010B6
- text-recording 0x00000000000010B7
- text-external1 0x00000000000010B8
- text-external2 0x00000000000010B9
- text-PIP_display_mode 0x00000000000010BA
- text-INVALID 0x00000000000010BB
- text-INVALID 0x00000000000010BC
- text-system_standby 0x00000000000010BD
- text-news_flash_(France) 0x00000000000010BE
- text-system_select 0x00000000000010BF
- text-surround_sound 0x0000000000000080
- text-balance_front 0x0000000000000081
- text-balance_rear 0x0000000000000082
- text-sound_effects1 0x0000000000000083
- text-sound_effects2 0x0000000000000084
- text-sound_effects3 0x0000000000000085
- text-sound_effects4 0x0000000000000086
- text-sound_effects5 0x0000000000000087
- text-sound_or_menu_func.1 0x0000000000000088
- text-sound_or_menu_func.2 0x0000000000000089
- text-sound_or_menu_func.3 0x000000000000008A
- text-linear_function_up 0x000000000000008D
- text-linear_function_down 0x000000000000008E
- text-sound_or_menu_func. 0x000000000000008F
- text-cursor_step_up 0x0000000000000090
- text-cursor_step_down 0x0000000000000091
- text-menu_on 0x0000000000000092
- text-menu_off 0x0000000000000093
- text-display_A/V_status 0x0000000000000094
- text-cursor_step_left 0x0000000000000095
- text-cursor_step_right 0x0000000000000096
- text-menu_function 0x0000000000000097
- text-PIP_on/off 0x0000000000000098
- text-PIP_shift 0x0000000000000099
- text-PIP_main_swap 0x000000000000009A
- text-strobe_on/off 0x000000000000009B
- text-multi_strobe 0x000000000000009C
- text-main_freezed 0x000000000000009D
- text-3/9_multi_scan 0x000000000000009E
- text-PIP_mode_select 0x000000000000009F
- text-mosaic 0x00000000000000A0
- text-solarization 0x00000000000000A1
- text-main_stored 0x00000000000000A2
- text-PIP_strobe 0x00000000000000A3
- text-recall_main 0x00000000000000A4
- text-PIP_freeze 0x00000000000000A5
- text-PIP_step_up 0x00000000000000A6
- text-PIP_step_down 0x00000000000000A7
- text-red 0x00000000000000AB
- text-green 0x00000000000000AC
- text-yellow 0x00000000000000AD
- text-cyan 0x00000000000000AE
- text-INVALID 0x00000000000000AF
- text-sub_mode 0x00000000000000B6
- text-sub_mode 0x00000000000000B7
- text-cleaning_up 0x00000000000000BA
- text-connect 0x00000000000000BB
- text-disconnect 0x00000000000000BC
- text-cleaning_up1 0x00000000000000BD
- text-cleaning_up2 0x00000000000000BE
- text-cleaning_up3 0x00000000000000BF
- tuner-0 0x0000000000001440
- tuner-1 0x0000000000001441
- tuner-2 0x0000000000001442
- tuner-3 0x0000000000001443
- tuner-4 0x0000000000001444
- tuner-5 0x0000000000001445
- tuner-6 0x0000000000001446
- tuner-7 0x0000000000001447
- tuner-8 0x0000000000001448
- tuner-9 0x0000000000001449
- tuner-1/2_digits 0x000000000000144A
- tuner-INVALID 0x000000000000144B
- tuner-standby 0x000000000000144C
- tuner-mute/demute 0x000000000000144D
- tuner-P.P. 0x000000000000144E
- tuner-display 0x000000000000144F
- tuner-volume+ 0x0000000000001450
- tuner-volume- 0x0000000000001451
- tuner-brightness+ 0x0000000000001452
- tuner-brightness- 0x0000000000001453
- tuner-colour_saturation+ 0x0000000000001454
- tuner-colour_saturation- 0x0000000000001455
- tuner-bass+ 0x0000000000001456
- tuner-bass- 0x0000000000001457
- tuner-treble+ 0x0000000000001458
- tuner-treble- 0x0000000000001459
- tuner-balance_right 0x000000000000145A
- tuner-balance_left 0x000000000000145B
- tuner-INVALID 0x000000000000145C
- tuner-INVALID 0x000000000000145D
- tuner-search+ 0x000000000000145E
- tuner-search- 0x000000000000145F
- tuner-preset+ 0x0000000000001460
- tuner-preset- 0x0000000000001461
- tuner-INVALID 0x0000000000001462
- tuner-INVALID 0x0000000000001463
- tuner-INVALID 0x0000000000001464
- tuner-mono/stereo 0x0000000000001465
- tuner-INVALID 0x0000000000001466
- tuner-INVALID 0x0000000000001467
- tuner-RF_switch 0x0000000000001468
- tuner-store_execute 0x0000000000001469
- tuner-INVALID 0x000000000000146A
- tuner-scan_forward 0x000000000000146B
- tuner-INVALID 0x000000000000146C
- tuner-FM 0x000000000000146D
- tuner-MW_(USA:_MW/FM) 0x000000000000146E
- tuner-LW 0x000000000000146F
- tuner-pause 0x0000000000001470
- tuner-erase 0x0000000000001471
- tuner-rewind 0x0000000000001472
- tuner-go_to 0x0000000000001473
- tuner-wind 0x0000000000001474
- tuner-play 0x0000000000001475
- tuner-stop 0x0000000000001476
- tuner-recording 0x0000000000001477
- tuner-external1 0x0000000000001478
- tuner-external2 0x0000000000001479
- tuner-clear_all_memory 0x000000000000147A
- tuner-INVALID 0x000000000000147B
- tuner-INVALID 0x000000000000147C
- tuner-system_standby 0x000000000000147D
- tuner-INVALID 0x000000000000147E
- tuner-system_select 0x000000000000147F
- tuner-surround_sound 0x0000000000000440
- tuner-balance_front 0x0000000000000441
- tuner-balance_rear 0x0000000000000442
- tuner-sound_effects1 0x0000000000000443
- tuner-sound_effects2 0x0000000000000444
- tuner-sound_effects3 0x0000000000000445
- tuner-sound_effects4 0x0000000000000446
- tuner-sound_effects5 0x0000000000000447
- tuner-sound_or_menu_func.1 0x0000000000000448
- tuner-sound_or_menu_func.2 0x0000000000000449
- tuner-sound_or_menu_func.3 0x000000000000044A
- tuner-linear_function_up 0x000000000000044D
- tuner-linear_function_down 0x000000000000044E
- tuner-sound_or_menu_func. 0x000000000000044F
- tuner-cursor_step_up 0x0000000000000450
- tuner-cursor_step_down 0x0000000000000451
- tuner-menu_on 0x0000000000000452
- tuner-menu_off 0x0000000000000453
- tuner-display_A/V_status 0x0000000000000454
- tuner-cursor_step_left 0x0000000000000455
- tuner-cursor_step_right 0x0000000000000456
- tuner-menu_function 0x0000000000000457
- tuner-PIP_on/off 0x0000000000000458
- tuner-PIP_shift 0x0000000000000459
- tuner-PIP_main_swap 0x000000000000045A
- tuner-strobe_on/off 0x000000000000045B
- tuner-multi_strobe 0x000000000000045C
- tuner-main_freezed 0x000000000000045D
- tuner-3/9_multi_scan 0x000000000000045E
- tuner-PIP_mode_select 0x000000000000045F
- tuner-mosaic 0x0000000000000460
- tuner-solarization 0x0000000000000461
- tuner-main_stored 0x0000000000000462
- tuner-PIP_strobe 0x0000000000000463
- tuner-recall_main 0x0000000000000464
- tuner-PIP_freeze 0x0000000000000465
- tuner-PIP_step_up 0x0000000000000466
- tuner-PIP_step_down 0x0000000000000467
- tuner-INVALID 0x000000000000046C
- tuner-INVALID 0x0000000000000470
- tuner-INVALID 0x0000000000000471
- tuner-INVALID 0x0000000000000476
- tuner-INVALID 0x0000000000000477
- tuner-connect 0x000000000000047B
- tuner-disconnect 0x000000000000047C
- tv1-0 0x0000000000001000
- tv1-1 0x0000000000001001
- tv1-2 0x0000000000001002
- tv1-3 0x0000000000001003
- tv1-4 0x0000000000001004
- tv1-5 0x0000000000001005
- tv1-6 0x0000000000001006
- tv1-7 0x0000000000001007
- tv1-8 0x0000000000001008
- tv1-9 0x0000000000001009
- tv1-1/2/3_digs_(japan:10) 0x000000000000100A
- tv1-channel/program(jap:11) 0x000000000000100B
- tv1-standby 0x000000000000100C
- tv1-mute/demute 0x000000000000100D
- tv1-P.P._(personal_pref.) 0x000000000000100E
- tv1-display 0x000000000000100F
- tv1-volume+ 0x0000000000001010
- tv1-volume- 0x0000000000001011
- tv1-brightness+ 0x0000000000001012
- tv1-brightness- 0x0000000000001013
- tv1-colour_saturation+ 0x0000000000001014
- tv1-colour_saturation- 0x0000000000001015
- tv1-bass+ 0x0000000000001016
- tv1-bass- 0x0000000000001017
- tv1-treble+ 0x0000000000001018
- tv1-treble- 0x0000000000001019
- tv1-balance_right 0x000000000000101A
- tv1-balance_left 0x000000000000101B
- tv1-contrast+ 0x000000000000101C
- tv1-contrast- 0x000000000000101D
- tv1-search+ 0x000000000000101E
- tv1-tint/hue+ 0x000000000000101F
- tv1-channel/program+ 0x0000000000001020
- tv1-channel/program- 0x0000000000001021
- tv1-alt/channel 0x0000000000001022
- tv1-1st/2nd_language 0x0000000000001023
- tv1-spacial_stereo_on/off 0x0000000000001024
- tv1-mono/stereo_(USA) 0x0000000000001025
- tv1-sleeptimer 0x0000000000001026
- tv1-tint/hue- 0x0000000000001027
- tv1-RF_switch/PIP_select 0x0000000000001028
- tv1-vote 0x0000000000001029
- tv1-timed_page/channel 0x000000000000102A
- tv1-increment_(USA) 0x000000000000102B
- tv1-decrement_(USA) 0x000000000000102C
- tv1-INVALID 0x000000000000102D
- tv1-2nd_controls_(USA:menu) 0x000000000000102E
- tv1-PIP_shift 0x000000000000102F
- tv1-pause 0x0000000000001030
- tv1-erase 0x0000000000001031
- tv1-rewind 0x0000000000001032
- tv1-go_to 0x0000000000001033
- tv1-wind 0x0000000000001034
- tv1-play 0x0000000000001035
- tv1-stop 0x0000000000001036
- tv1-recording 0x0000000000001037
- tv1-external1 0x0000000000001038
- tv1-external2 0x0000000000001039
- tv1-PIP_display_mode 0x000000000000103A
- tv1-view_data_mode/advance 0x000000000000103B
- tv1-teletext_submode_(J:12) 0x000000000000103C
- tv1-system_standby 0x000000000000103D
- tv1-crispener_on/off 0x000000000000103E
- tv1-system_select 0x000000000000103F
- tv1-surround_sound 0x0000000000000000
- tv1-balance_front 0x0000000000000001
- tv1-balance_rear 0x0000000000000002
- tv1-sound_effects1 0x0000000000000003
- tv1-sound_effects2 0x0000000000000004
- tv1-sound_effects3 0x0000000000000005
- tv1-sound_effects4 0x0000000000000006
- tv1-sound_effects5 0x0000000000000007
- tv1-sound_or_menu_func.1 0x0000000000000008
- tv1-sound_or_menu_func.2 0x0000000000000009
- tv1-sound_or_menu_func.3 0x000000000000000A
- tv1-linear_function_up 0x000000000000000D
- tv1-linear_function_down 0x000000000000000E
- tv1-sound_or_menu_func. 0x000000000000000F
- tv1-cursor_step_up 0x0000000000000010
- tv1-cursor_step_down 0x0000000000000011
- tv1-menu_on 0x0000000000000012
- tv1-menu_off 0x0000000000000013
- tv1-display_A/V_status 0x0000000000000014
- tv1-cursor_step_left 0x0000000000000015
- tv1-cursor_step_right 0x0000000000000016
- tv1-menu_function 0x0000000000000017
- tv1-PIP_on/off 0x0000000000000018
- tv1-PIP_shift 0x0000000000000019
- tv1-PIP_main_swap 0x000000000000001A
- tv1-strobe_on/off 0x000000000000001B
- tv1-multi_strobe 0x000000000000001C
- tv1-main_freezed 0x000000000000001D
- tv1-3/9_multi_scan 0x000000000000001E
- tv1-PIP_mode_select 0x000000000000001F
- tv1-mosaic 0x0000000000000020
- tv1-solarization 0x0000000000000021
- tv1-main_stored 0x0000000000000022
- tv1-PIP_strobe 0x0000000000000023
- tv1-recall_main 0x0000000000000024
- tv1-PIP_freeze 0x0000000000000025
- tv1-PIP_step_up 0x0000000000000026
- tv1-PIP_step_down 0x0000000000000027
- tv1-INVALID 0x000000000000002B
- tv1-INVALID 0x000000000000002C
- tv1-INVALID 0x000000000000002D
- tv1-INVALID 0x000000000000002E
- tv1-index 0x000000000000002F
- tv1-sub_mode 0x0000000000000036
- tv1-sub_mode 0x0000000000000037
- tv1-cleaning_up 0x000000000000003A
- tv1-connect 0x000000000000003B
- tv1-disconnect 0x000000000000003C
- tv1-cleaning_up1 0x000000000000003D
- tv1-cleaning_up2 0x000000000000003E
- tv1-cleaning_up3 0x000000000000003F
- tv2-0 0x0000000000001040
- tv2-1 0x0000000000001041
- tv2-2 0x0000000000001042
- tv2-3 0x0000000000001043
- tv2-4 0x0000000000001044
- tv2-5 0x0000000000001045
- tv2-6 0x0000000000001046
- tv2-7 0x0000000000001047
- tv2-8 0x0000000000001048
- tv2-9 0x0000000000001049
- tv2-1/2/3_digs_(japan:10) 0x000000000000104A
- tv2-channel/program(jap:11) 0x000000000000104B
- tv2-standby 0x000000000000104C
- tv2-mute/demute 0x000000000000104D
- tv2-P.P._(personal_pref.) 0x000000000000104E
- tv2-display 0x000000000000104F
- tv2-volume+ 0x0000000000001050
- tv2-volume- 0x0000000000001051
- tv2-brightness+ 0x0000000000001052
- tv2-brightness- 0x0000000000001053
- tv2-colour_saturation+ 0x0000000000001054
- tv2-colour_saturation- 0x0000000000001055
- tv2-bass+ 0x0000000000001056
- tv2-bass- 0x0000000000001057
- tv2-treble+ 0x0000000000001058
- tv2-treble- 0x0000000000001059
- tv2-balance_right 0x000000000000105A
- tv2-balance_left 0x000000000000105B
- tv2-contrast+ 0x000000000000105C
- tv2-contrast- 0x000000000000105D
- tv2-search+ 0x000000000000105E
- tv2-tint/hue+ 0x000000000000105F
- tv2-channel/program+ 0x0000000000001060
- tv2-channel/program- 0x0000000000001061
- tv2-alt/channel 0x0000000000001062
- tv2-1st/2nd_language 0x0000000000001063
- tv2-spacial_stereo_on/off 0x0000000000001064
- tv2-mono/stereo_(USA) 0x0000000000001065
- tv2-sleeptimer 0x0000000000001066
- tv2-tint/hue- 0x0000000000001067
- tv2-RF_switch/PIP_select 0x0000000000001068
- tv2-vote 0x0000000000001069
- tv2-timed_page/channel 0x000000000000106A
- tv2-increment_(USA) 0x000000000000106B
- tv2-decrement_(USA) 0x000000000000106C
- tv2-INVALID 0x000000000000106D
- tv2-2nd_controls_(USA:menu) 0x000000000000106E
- tv2-PIP_shift 0x000000000000106F
- tv2-pause 0x0000000000001070
- tv2-erase 0x0000000000001071
- tv2-rewind 0x0000000000001072
- tv2-go_to 0x0000000000001073
- tv2-wind 0x0000000000001074
- tv2-play 0x0000000000001075
- tv2-stop 0x0000000000001076
- tv2-recording 0x0000000000001077
- tv2-external1 0x0000000000001078
- tv2-external2 0x0000000000001079
- tv2-PIP_display_mode 0x000000000000107A
- tv2-view_data_mode/advance 0x000000000000107B
- tv2-teletext_submode_(J:12) 0x000000000000107C
- tv2-system_standby 0x000000000000107D
- tv2-crispener_on/off 0x000000000000107E
- tv2-system_select 0x000000000000107F
- tv2-surround_sound 0x0000000000000040
- tv2-balance_front 0x0000000000000041
- tv2-balance_rear 0x0000000000000042
- tv2-sound_effects1 0x0000000000000043
- tv2-sound_effects2 0x0000000000000044
- tv2-sound_effects3 0x0000000000000045
- tv2-sound_effects4 0x0000000000000046
- tv2-sound_effects5 0x0000000000000047
- tv2-sound_or_menu_func.1 0x0000000000000048
- tv2-sound_or_menu_func.2 0x0000000000000049
- tv2-sound_or_menu_func.3 0x000000000000004A
- tv2-linear_function_up 0x000000000000004D
- tv2-linear_function_down 0x000000000000004E
- tv2-sound_or_menu_func. 0x000000000000004F
- tv2-cursor_step_up 0x0000000000000050
- tv2-cursor_step_down 0x0000000000000051
- tv2-menu_on 0x0000000000000052
- tv2-menu_off 0x0000000000000053
- tv2-display_A/V_status 0x0000000000000054
- tv2-cursor_step_left 0x0000000000000055
- tv2-cursor_step_right 0x0000000000000056
- tv2-menu_function 0x0000000000000057
- tv2-PIP_on/off 0x0000000000000058
- tv2-PIP_shift 0x0000000000000059
- tv2-PIP_main_swap 0x000000000000005A
- tv2-strobe_on/off 0x000000000000005B
- tv2-multi_strobe 0x000000000000005C
- tv2-main_freezed 0x000000000000005D
- tv2-3/9_multi_scan 0x000000000000005E
- tv2-PIP_mode_select 0x000000000000005F
- tv2-mosaic 0x0000000000000060
- tv2-solarization 0x0000000000000061
- tv2-main_stored 0x0000000000000062
- tv2-PIP_strobe 0x0000000000000063
- tv2-recall_main 0x0000000000000064
- tv2-PIP_freeze 0x0000000000000065
- tv2-PIP_step_up 0x0000000000000066
- tv2-PIP_step_down 0x0000000000000067
- tv2-INVALID 0x000000000000006B
- tv2-INVALID 0x000000000000006C
- tv2-INVALID 0x000000000000006D
- tv2-INVALID 0x000000000000006E
- tv2-index 0x000000000000006F
- tv2-sub_mode 0x0000000000000076
- tv2-sub_mode 0x0000000000000077
- tv2-cleaning_up 0x000000000000007A
- tv2-connect 0x000000000000007B
- tv2-disconnect 0x000000000000007C
- tv2-cleaning_up1 0x000000000000007D
- tv2-cleaning_up2 0x000000000000007E
- tv2-cleaning_up3 0x000000000000007F
- vcr1-0 0x0000000000001140
- vcr1-1 0x0000000000001141
- vcr1-2 0x0000000000001142
- vcr1-3 0x0000000000001143
- vcr1-4 0x0000000000001144
- vcr1-5 0x0000000000001145
- vcr1-6 0x0000000000001146
- vcr1-7 0x0000000000001147
- vcr1-8 0x0000000000001148
- vcr1-9 0x0000000000001149
- vcr1-1/2_digits/AM/PM 0x000000000000114A
- vcr1-channel/program_mode 0x000000000000114B
- vcr1-standby 0x000000000000114C
- vcr1-mute/demute 0x000000000000114D
- vcr1-P.P. 0x000000000000114E
- vcr1-display 0x000000000000114F
- vcr1-volume+ 0x0000000000001150
- vcr1-volume- 0x0000000000001151
- vcr1-brightness+ 0x0000000000001152
- vcr1-brightness- 0x0000000000001153
- vcr1-colour_saturation+ 0x0000000000001154
- vcr1-colour_saturation- 0x0000000000001155
- vcr1-bass+ 0x0000000000001156
- vcr1-bass- 0x0000000000001157
- vcr1-treble+ 0x0000000000001158
- vcr1-treble- 0x0000000000001159
- vcr1-balance_right 0x000000000000115A
- vcr1-balance_left 0x000000000000115B
- vcr1-ITR_(OTR)_delay 0x000000000000115C
- vcr1-timer_programming 0x000000000000115D
- vcr1-record_select 0x000000000000115E
- vcr1-fast_run_reverse 0x000000000000115F
- vcr1-step+ 0x0000000000001160
- vcr1-step- 0x0000000000001161
- vcr1-slow_run_reverse 0x0000000000001162
- vcr1-audio_output_select 0x0000000000001163
- vcr1-clock/channel 0x0000000000001164
- vcr1-speed- 0x0000000000001165
- vcr1-speed+ 0x0000000000001166
- vcr1-Instant_Time_Recording 0x0000000000001167
- vcr1-slow_run_forward 0x0000000000001168
- vcr1-still_forward 0x0000000000001169
- vcr1-fast_run_forward 0x000000000000116A
- vcr1-index_scan 0x000000000000116B
- vcr1-scan_reverse 0x000000000000116C
- vcr1-eject 0x000000000000116D
- vcr1-scan_forward 0x000000000000116E
- vcr1-play_reverse 0x000000000000116F
- vcr1-pause 0x0000000000001170
- vcr1-erase 0x0000000000001171
- vcr1-rewind 0x0000000000001172
- vcr1-go_to 0x0000000000001173
- vcr1-wind 0x0000000000001174
- vcr1-play 0x0000000000001175
- vcr1-stop 0x0000000000001176
- vcr1-recording 0x0000000000001177
- vcr1-external1 0x0000000000001178
- vcr1-external2 0x0000000000001179
- vcr1-short/long_play 0x000000000000117A
- vcr1-counter_memory 0x000000000000117B
- vcr1-scroll_local_display 0x000000000000117C
- vcr1-system_standby 0x000000000000117D
- vcr1-RF_switch 0x000000000000117E
- vcr1-system_select 0x000000000000117F
- vcr1-surround_sound 0x0000000000000140
- vcr1-balance_front 0x0000000000000141
- vcr1-balance_rear 0x0000000000000142
- vcr1-sound_effects1 0x0000000000000143
- vcr1-sound_effects2 0x0000000000000144
- vcr1-sound_effects3 0x0000000000000145
- vcr1-sound_effects4 0x0000000000000146
- vcr1-sound_effects5 0x0000000000000147
- vcr1-sound_or_menu_func.1 0x0000000000000148
- vcr1-sound_or_menu_func.2 0x0000000000000149
- vcr1-sound_or_menu_func.3 0x000000000000014A
- vcr1-data_stream_start 0x000000000000014B
- vcr1-data_stream_end 0x000000000000014C
- vcr1-linear_function_up 0x000000000000014D
- vcr1-linear_function_down 0x000000000000014E
- vcr1-catalogue 0x000000000000014F
- vcr1-cursor_step_up 0x0000000000000150
- vcr1-cursor_step_down 0x0000000000000151
- vcr1-menu_on 0x0000000000000152
- vcr1-menu_off 0x0000000000000153
- vcr1-display_A/V_status 0x0000000000000154
- vcr1-cursor_step_left 0x0000000000000155
- vcr1-cursor_step_right 0x0000000000000156
- vcr1-acknowledge 0x0000000000000157
- vcr1-PIP_on/off 0x0000000000000158
- vcr1-PIP_shift 0x0000000000000159
- vcr1-PIP_main_swap 0x000000000000015A
- vcr1-strobe_on/off 0x000000000000015B
- vcr1-multi_strobe 0x000000000000015C
- vcr1-main_freezed 0x000000000000015D
- vcr1-3/9_multi_scan 0x000000000000015E
- vcr1-PIP_mode_select 0x000000000000015F
- vcr1-mosaic 0x0000000000000160
- vcr1-solarization 0x0000000000000161
- vcr1-main_stored 0x0000000000000162
- vcr1-PIP_strobe 0x0000000000000163
- vcr1-recall_main 0x0000000000000164
- vcr1-PIP_freeze 0x0000000000000165
- vcr1-PIP_step_up 0x0000000000000166
- vcr1-PIP_step_down 0x0000000000000167
- vcr1-automatic_start_ID 0x0000000000000168
- vcr1-write_skip_ID 0x0000000000000169
- vcr1-skip_on/off 0x000000000000016A
- vcr1-write_end_ID 0x000000000000016B
- vcr1-write_FTS 0x000000000000016C
- vcr1-write_TOC 0x000000000000016D
- vcr1-viss_index_next 0x0000000000000170
- vcr1-viss_index_previous 0x0000000000000171
- vcr1-mark 0x0000000000000172
- vcr1-erase 0x0000000000000173
- vcr1-renumber 0x0000000000000174
- vcr1-blank_search 0x0000000000000175
- vcr1-sub_mode 0x0000000000000176
- vcr1-sub_mode 0x0000000000000177
- vcr1-auto_repeat 0x0000000000000178
- vcr1-insert_temp 0x0000000000000179
- vcr1-scr_loc_disp 0x000000000000017A
- vcr1-connect 0x000000000000017B
- vcr1-INVALID 0x000000000000017C
- vcr2-0 0x0000000000001180
- vcr2-1 0x0000000000001181
- vcr2-2 0x0000000000001182
- vcr2-3 0x0000000000001183
- vcr2-4 0x0000000000001184
- vcr2-5 0x0000000000001185
- vcr2-6 0x0000000000001186
- vcr2-7 0x0000000000001187
- vcr2-8 0x0000000000001188
- vcr2-9 0x0000000000001189
- vcr2-1/2_digits/AM/PM 0x000000000000118A
- vcr2-channel/program_mode 0x000000000000118B
- vcr2-standby 0x000000000000118C
- vcr2-mute/demute 0x000000000000118D
- vcr2-P.P. 0x000000000000118E
- vcr2-display 0x000000000000118F
- vcr2-volume+ 0x0000000000001190
- vcr2-volume- 0x0000000000001191
- vcr2-brightness+ 0x0000000000001192
- vcr2-brightness- 0x0000000000001193
- vcr2-colour_saturation+ 0x0000000000001194
- vcr2-colour_saturation- 0x0000000000001195
- vcr2-bass+ 0x0000000000001196
- vcr2-bass- 0x0000000000001197
- vcr2-treble+ 0x0000000000001198
- vcr2-treble- 0x0000000000001199
- vcr2-balance_right 0x000000000000119A
- vcr2-balance_left 0x000000000000119B
- vcr2-ITR_(OTR)_delay 0x000000000000119C
- vcr2-timer_programming 0x000000000000119D
- vcr2-record_select 0x000000000000119E
- vcr2-fast_run_reverse 0x000000000000119F
- vcr2-step+ 0x00000000000011A0
- vcr2-step- 0x00000000000011A1
- vcr2-slow_run_reverse 0x00000000000011A2
- vcr2-audio_output_select 0x00000000000011A3
- vcr2-clock/channel 0x00000000000011A4
- vcr2-speed- 0x00000000000011A5
- vcr2-speed+ 0x00000000000011A6
- vcr2-Instant_Time_Recording 0x00000000000011A7
- vcr2-slow_run_forward 0x00000000000011A8
- vcr2-still_forward 0x00000000000011A9
- vcr2-fast_run_forward 0x00000000000011AA
- vcr2-index_scan 0x00000000000011AB
- vcr2-scan_reverse 0x00000000000011AC
- vcr2-eject 0x00000000000011AD
- vcr2-scan_forward 0x00000000000011AE
- vcr2-play_reverse 0x00000000000011AF
- vcr2-pause 0x00000000000011B0
- vcr2-erase 0x00000000000011B1
- vcr2-rewind 0x00000000000011B2
- vcr2-go_to 0x00000000000011B3
- vcr2-wind 0x00000000000011B4
- vcr2-play 0x00000000000011B5
- vcr2-stop 0x00000000000011B6
- vcr2-recording 0x00000000000011B7
- vcr2-external1 0x00000000000011B8
- vcr2-external2 0x00000000000011B9
- vcr2-short/long_play 0x00000000000011BA
- vcr2-counter_memory 0x00000000000011BB
- vcr2-scroll_local_display 0x00000000000011BC
- vcr2-system_standby 0x00000000000011BD
- vcr2-RF_switch 0x00000000000011BE
- vcr2-system_select 0x00000000000011BF
- vcr2-surround_sound 0x0000000000000180
- vcr2-balance_front 0x0000000000000181
- vcr2-balance_rear 0x0000000000000182
- vcr2-sound_effects1 0x0000000000000183
- vcr2-sound_effects2 0x0000000000000184
- vcr2-sound_effects3 0x0000000000000185
- vcr2-sound_effects4 0x0000000000000186
- vcr2-sound_effects5 0x0000000000000187
- vcr2-sound_or_menu_func.1 0x0000000000000188
- vcr2-sound_or_menu_func.2 0x0000000000000189
- vcr2-sound_or_menu_func.3 0x000000000000018A
- vcr2-data_stream_start 0x000000000000018B
- vcr2-data_stream_end 0x000000000000018C
- vcr2-linear_function_up 0x000000000000018D
- vcr2-linear_function_down 0x000000000000018E
- vcr2-catalogue 0x000000000000018F
- vcr2-cursor_step_up 0x0000000000000190
- vcr2-cursor_step_down 0x0000000000000191
- vcr2-menu_on 0x0000000000000192
- vcr2-menu_off 0x0000000000000193
- vcr2-display_A/V_status 0x0000000000000194
- vcr2-cursor_step_left 0x0000000000000195
- vcr2-cursor_step_right 0x0000000000000196
- vcr2-acknowledge 0x0000000000000197
- vcr2-PIP_on/off 0x0000000000000198
- vcr2-PIP_shift 0x0000000000000199
- vcr2-PIP_main_swap 0x000000000000019A
- vcr2-strobe_on/off 0x000000000000019B
- vcr2-multi_strobe 0x000000000000019C
- vcr2-main_freezed 0x000000000000019D
- vcr2-3/9_multi_scan 0x000000000000019E
- vcr2-PIP_mode_select 0x000000000000019F
- vcr2-mosaic 0x00000000000001A0
- vcr2-solarization 0x00000000000001A1
- vcr2-main_stored 0x00000000000001A2
- vcr2-PIP_strobe 0x00000000000001A3
- vcr2-recall_main 0x00000000000001A4
- vcr2-PIP_freeze 0x00000000000001A5
- vcr2-PIP_step_up 0x00000000000001A6
- vcr2-PIP_step_down 0x00000000000001A7
- vcr2-automatic_start_ID 0x00000000000001A8
- vcr2-write_skip_ID 0x00000000000001A9
- vcr2-skip_on/off 0x00000000000001AA
- vcr2-write_end_ID 0x00000000000001AB
- vcr2-write_FTS 0x00000000000001AC
- vcr2-write_TOC 0x00000000000001AD
- vcr2-viss_index_next 0x00000000000001B0
- vcr2-viss_index_previous 0x00000000000001B1
- vcr2-mark 0x00000000000001B2
- vcr2-erase 0x00000000000001B3
- vcr2-renumber 0x00000000000001B4
- vcr2-blank_search 0x00000000000001B5
- vcr2-sub_mode 0x00000000000001B6
- vcr2-sub_mode 0x00000000000001B7
- vcr2-auto_repeat 0x00000000000001B8
- vcr2-insert_temp 0x00000000000001B9
- vcr2-scr_loc_disp 0x00000000000001BA
- vcr2-connect 0x00000000000001BB
- vcr2-INVALID 0x00000000000001BC
- vd-0 0x00000000000010C0
- vd-1 0x00000000000010C1
- vd-2 0x00000000000010C2
- vd-3 0x00000000000010C3
- vd-4 0x00000000000010C4
- vd-5 0x00000000000010C5
- vd-6 0x00000000000010C6
- vd-7 0x00000000000010C7
- vd-8 0x00000000000010C8
- vd-9 0x00000000000010C9
- vd-=/=_=/= 0x00000000000010CA
- vd-* 0x00000000000010CB
- vd-standby 0x00000000000010CC
- vd-mute/demute 0x00000000000010CD
- vd-P.P. 0x00000000000010CE
- vd-display 0x00000000000010CF
- vd-volume+ 0x00000000000010D0
- vd-volume- 0x00000000000010D1
- vd-brightness+ 0x00000000000010D2
- vd-brightness- 0x00000000000010D3
- vd-colour_saturation+ 0x00000000000010D4
- vd-colour_saturation- 0x00000000000010D5
- vd-bass+ 0x00000000000010D6
- vd-bass- 0x00000000000010D7
- vd-treble+ 0x00000000000010D8
- vd-treble- 0x00000000000010D9
- vd-balance_right 0x00000000000010DA
- vd-balance_left 0x00000000000010DB
- vd-INVALID 0x00000000000010DC
- vd-INVALID 0x00000000000010DD
- vd-attribute_on/off 0x00000000000010DE
- vd-INVALID 0x00000000000010DF
- vd-INVALID 0x00000000000010E0
- vd-index 0x00000000000010E1
- vd-INVALID 0x00000000000010E2
- vd-1st/2nd_language 0x00000000000010E3
- vd-spacial_stereo_on/off 0x00000000000010E4
- vd-INVALID 0x00000000000010E5
- vd-hardcopy_printer 0x00000000000010E6
- vd-INVALID 0x00000000000010E7
- vd-terminal_initiation 0x00000000000010E8
- vd-INVALID 0x00000000000010E9
- vd-INVALID 0x00000000000010EA
- vd-large_top/lrge_bot/norm 0x00000000000010EB
- vd-INVALID 0x00000000000010EC
- vd-INVALID 0x00000000000010ED
- vd-TV/Text_mixed 0x00000000000010EE
- vd-view_data_line_off 0x00000000000010EF
- vd-pause 0x00000000000010F0
- vd-erase 0x00000000000010F1
- vd-rewind 0x00000000000010F2
- vd-go_to 0x00000000000010F3
- vd-wind 0x00000000000010F4
- vd-play 0x00000000000010F5
- vd-stop 0x00000000000010F6
- vd-recording 0x00000000000010F7
- vd-external1 0x00000000000010F8
- vd-external2 0x00000000000010F9
- vd-INVALID 0x00000000000010FA
- vd-view_data_line_on 0x00000000000010FB
- vd-INVALID 0x00000000000010FC
- vd-system_standby 0x00000000000010FD
- vd-INVALID 0x00000000000010FE
- vd-system_select 0x00000000000010FF
- vd-surround_sound 0x00000000000000C0
- vd-balance_front 0x00000000000000C1
- vd-balance_rear 0x00000000000000C2
- vd-sound_effects1 0x00000000000000C3
- vd-sound_effects2 0x00000000000000C4
- vd-sound_effects3 0x00000000000000C5
- vd-sound_effects4 0x00000000000000C6
- vd-sound_effects5 0x00000000000000C7
- vd-sound_or_menu_func.1 0x00000000000000C8
- vd-sound_or_menu_func.2 0x00000000000000C9
- vd-sound_or_menu_func.3 0x00000000000000CA
- vd-linear_function_up 0x00000000000000CD
- vd-linear_function_down 0x00000000000000CE
- vd-sound_or_menu_func. 0x00000000000000CF
- vd-cursor_step_up 0x00000000000000D0
- vd-cursor_step_down 0x00000000000000D1
- vd-menu_on 0x00000000000000D2
- vd-menu_off 0x00000000000000D3
- vd-display_A/V_status 0x00000000000000D4
- vd-cursor_step_left 0x00000000000000D5
- vd-cursor_step_right 0x00000000000000D6
- vd-menu_function 0x00000000000000D7
- vd-PIP_on/off 0x00000000000000D8
- vd-PIP_shift 0x00000000000000D9
- vd-PIP_main_swap 0x00000000000000DA
- vd-strobe_on/off 0x00000000000000DB
- vd-multi_strobe 0x00000000000000DC
- vd-main_freezed 0x00000000000000DD
- vd-3/9_multi_scan 0x00000000000000DE
- vd-PIP_mode_select 0x00000000000000DF
- vd-mosaic 0x00000000000000E0
- vd-solarization 0x00000000000000E1
- vd-main_stored 0x00000000000000E2
- vd-PIP_strobe 0x00000000000000E3
- vd-recall_main 0x00000000000000E4
- vd-PIP_freeze 0x00000000000000E5
- vd-PIP_step_up 0x00000000000000E6
- vd-PIP_step_down 0x00000000000000E7
- vd-INVALID 0x00000000000000EB
- vd-INVALID 0x00000000000000EC
- vd-INVALID 0x00000000000000ED
- vd-INVALID 0x00000000000000EE
- vd-INVALID 0x00000000000000EF
- vd-sub_mode 0x00000000000000F6
- vd-sub_mode 0x00000000000000F7
- vd-cleaning_up 0x00000000000000FA
- vd-connect 0x00000000000000FB
- vd-disconnect 0x00000000000000FC
- vd-cleaning_up1 0x00000000000000FD
- vd-cleaning_up2 0x00000000000000FE
- vd-cleaning_up3 0x00000000000000FF
- end codes
-
-end remote
-
diff --git a/meta-extras/packages/lirc/files/lircd.init b/meta-extras/packages/lirc/files/lircd.init
deleted file mode 100755
index 11ce62447..000000000
--- a/meta-extras/packages/lirc/files/lircd.init
+++ /dev/null
@@ -1,39 +0,0 @@
-#! /bin/sh
-#
-# This is an init script for Familiar
-# Copy it to /etc/init.d/lircd and type
-# > update-rc.d lircd defaults 20
-#
-
-
-test -f /usr/sbin/lircd || exit 0
-test -f /etc/lircd.conf || exit 0
-
-case "$1" in
- start)
- echo -n "Starting lirc daemon: lircd"
- start-stop-daemon --start --quiet --exec /usr/sbin/lircd -- --device=/dev/lirc
- echo "."
- ;;
- stop)
- echo -n "Stopping lirc daemon: lircd"
- start-stop-daemon --stop --quiet --exec /usr/sbin/lircd
- echo "."
- ;;
- reload|force-reload)
- start-stop-daemon --stop --quiet --signal 1 --exec /usr/sbin/lircd
- ;;
- restart)
- echo -n "Stopping lirc daemon: lircd"
- start-stop-daemon --stop --quiet --exec /usr/sbin/lircd
- sleep 1
- echo -n "Starting lirc daemon: lircd"
- start-stop-daemon --start --quiet --exec /usr/sbin/lircd -- --device=/dev/lirc
- echo "."
- ;;
- *)
- echo "Usage: /etc/init.d/lircd {start|stop|reload|restart|force-reload}"
- exit 1
-esac
-
-exit 0
diff --git a/meta-extras/packages/lirc/files/lircexec.init b/meta-extras/packages/lirc/files/lircexec.init
deleted file mode 100755
index 3a8c1a306..000000000
--- a/meta-extras/packages/lirc/files/lircexec.init
+++ /dev/null
@@ -1,37 +0,0 @@
-#! /bin/sh
-#
-# This is an init script for Familiar
-# Copy it to /etc/init.d/lircexecd and type
-# > update-rc.d lircexecd defaults 20
-# It must be started after lircd (and it does alphabetically :-)
-# irexec reads /etc/lircrc by default
-
-
-test -f /usr/bin/irexec || exit 0
-test -f /etc/lircrc || exit 0
-
-case "$1" in
- start)
- echo -n "Starting lircexec daemon: irexec"
- start-stop-daemon --start --quiet --exec /usr/bin/irexec -- --daemon
- echo "."
- ;;
- stop)
- echo -n "Stopping lircexec daemon: irexec"
- start-stop-daemon --stop --quiet --exec /usr/bin/irexec
- echo "."
- ;;
- restart|force-restart)
- echo -n "Stopping lircexec daemon: irexec"
- start-stop-daemon --stop --quiet --exec /usr/bin/irexec
- sleep 1
- echo -n "Starting lircexec daemon: irexec"
- start-stop-daemon --start --quiet --exec /usr/bin/irexec -- --daemon
- echo "."
- ;;
- *)
- echo "Usage: /etc/init.d/lircexec {start|stop|reload|restart|force-restart}"
- exit 1
-esac
-
-exit 0
diff --git a/meta-extras/packages/lirc/files/lircmd.init b/meta-extras/packages/lirc/files/lircmd.init
deleted file mode 100755
index 1a96207db..000000000
--- a/meta-extras/packages/lirc/files/lircmd.init
+++ /dev/null
@@ -1,38 +0,0 @@
-#! /bin/sh
-#
-# This is an init script for Familiar
-# Copy it to /etc/init.d/lirc and type
-# > update-rc.d lirc defaults 20
-#
-
-
-test -f /usr/sbin/lircmd || exit 0
-
-case "$1" in
- start)
- echo -n "Starting lirc daemon: lircmd"
- start-stop-daemon --start --quiet --exec /usr/sbin/lircmd
- echo "."
- ;;
- stop)
- echo -n "Stopping lirc daemon: lircmd"
- start-stop-daemon --stop --quiet --exec /usr/sbin/lircmd
- echo "."
- ;;
- reload|force-reload)
- start-stop-daemon --stop --quiet --signal 1 --exec /usr/sbin/lircmd
- ;;
- restart)
- echo -n "Stopping lirc daemon: lircmd"
- start-stop-daemon --stop --quiet --exec /usr/sbin/lircmd
- sleep 1
- echo -n "Starting lirc daemon: lircmd"
- start-stop-daemon --start --quiet --exec /usr/sbin/lircmd
- echo "."
- ;;
- *)
- echo "Usage: /etc/init.d/lircmd {start|stop|reload|restart|force-reload}"
- exit 1
-esac
-
-exit 0
diff --git a/meta-extras/packages/lirc/files/lircrc_nslu2 b/meta-extras/packages/lirc/files/lircrc_nslu2
deleted file mode 100644
index 0669d90b0..000000000
--- a/meta-extras/packages/lirc/files/lircrc_nslu2
+++ /dev/null
@@ -1,113 +0,0 @@
-# This is the default files read by all lirc clients
-# (see also /etc/lircd.conf)
-
-# I run /sbin/buzzer before every command to get an audible feedback
-
-## Here LIRC could shutdown your system
-#begin
-# prog = irexec
-# remote = RC5
-# repeat = 0
-# button = vcr2-standby
-# config = /sbin/buzzer; /sbin/halt
-#end
-
-
-## Here LIRC controls your mpd music deamon
-begin
- prog = irexec
- remote = RC5
- repeat = 0
- button = vcr2-pause
- config = /sbin/buzzer; mpc toggle
-end
-begin
- prog = irexec
- remote = RC5
- repeat = 0
- button = vcr2-step+
- config = /sbin/buzzer; mpc next
-end
-begin
- prog = irexec
- remote = RC5
- repeat = 0
- button = vcr2-step-
- config = /sbin/buzzer; mpc prev
-end
-begin
- prog = irexec
- remote = RC5
- repeat = 0
- button = vcr2-scan_forward
- config = /sbin/buzzer; mpc seek +00:00:30
-end
-begin
- prog = irexec
- remote = RC5
- repeat = 0
- button = vcr2-scan_reverse
- config = /sbin/buzzer; mpc seek -00:00:30
-end
-begin
- prog = irexec
- remote = RC5
- repeat = 0
- button = vcr2-brightness+
- config = /sbin/buzzer; mpc volume +20
-end
-begin
- prog = irexec
- remote = RC5
- repeat = 0
- button = vcr2-brightness-
- config = /sbin/buzzer; mpc volume -20
-end
-
-
-## Here LIRC acts as an repeater
-begin
- prog = irexec
- remote = RC5
- repeat = 0
- button = vcr2-volume+
- config = /sbin/buzzer; irsend SEND_ONCE RC5 amp1-volume+
-end
-begin
- prog = irexec
- remote = RC5
- repeat = 0
- button = vcr2-volume-
- config = /sbin/buzzer; irsend SEND_ONCE RC5 amp1-volume-
-end
-
-
-## Here LIRC is the input device for your LC display software
-begin
- prog = lcdd
- remote = RC5
- repeat = 0
- button = vcr2-1
- config = A
-end
-begin
- prog = lcdd
- remote = RC5
- repeat = 0
- button = vcr2-2
- config = B
-end
-begin
- prog = lcdd
- remote = RC5
- repeat = 0
- button = vcr2-3
- config = C
-end
-begin
- prog = lcdd
- remote = RC5
- repeat = 0
- button = vcr2-4
- config = D
-end
diff --git a/meta-extras/packages/lirc/files/split-hauppauge.patch b/meta-extras/packages/lirc/files/split-hauppauge.patch
deleted file mode 100644
index 170a233ff..000000000
--- a/meta-extras/packages/lirc/files/split-hauppauge.patch
+++ /dev/null
@@ -1,141 +0,0 @@
---- lirc/remotes/hauppauge/lircd.conf.hauppauge~ 2003-05-03 15:42:30.000000000 +0100
-+++ lirc/remotes/hauppauge/lircd.conf.hauppauge 2004-10-10 20:14:14.000000000 +0100
-@@ -51,71 +51,3 @@
- end codes
-
- end remote
--
--
--#
--# this config file was automatically generated
--# using lirc-0.6.6(animax) on Tue Apr 15 19:50:27 2003
--#
--# contributed by
--#
--# brand: Hauppauge
--# model no. of remote control:
--# devices being controlled by this remote: PVR 2/350
--#
--
--begin remote
--
-- name hauppauge_pvr
-- bits 13
-- flags RC5|CONST_LENGTH
-- eps 30
-- aeps 100
--
-- one 969 811
-- zero 969 811
-- plead 1097
-- gap 114605
-- toggle_bit 2
--
--
-- begin codes
-- Power 0x00000000000017FD
-- Go 0x00000000000017FB
-- 1 0x00000000000017C1
-- 2 0x00000000000017C2
-- 3 0x00000000000017C3
-- 4 0x00000000000017C4
-- 5 0x00000000000017C5
-- 6 0x00000000000017C6
-- 7 0x00000000000017C7
-- 8 0x00000000000017C8
-- 9 0x00000000000017C9
-- Back/Exit 0x00000000000017DF
-- 0 0x00000000000017C0
-- Menu 0x00000000000017CD
-- Red 0x00000000000017CB
-- Green 0x00000000000017EE
-- Yellow 0x00000000000017F8
-- Blue 0x00000000000017E9
-- Ch+ 0x00000000000017E0
-- Ch- 0x00000000000017E1
-- Vol- 0x00000000000017D1
-- Vol+ 0x00000000000017D0
-- Ok 0x00000000000017E5
-- Mute 0x00000000000017CF
-- Blank 0x00000000000017CC
-- Full 0x00000000000017FC
-- Rewind 0x00000000000017F2
-- Play 0x00000000000017F5
-- Forward 0x00000000000017F4
-- Record 0x00000000000017F7
-- Stop 0x00000000000017F6
-- Pause 0x00000000000017F0
-- Replay 0x00000000000017E4
-- Skip 0x00000000000017DE
-- end codes
--
--end remote
--
--
---- /dev/null 2004-06-13 02:32:19.000000000 +0100
-+++ lirc/remotes/hauppauge/lircd.conf.hauppauge-pvr 2004-10-10 20:14:05.000000000 +0100
-@@ -0,0 +1,64 @@
-+#
-+# this config file was automatically generated
-+# using lirc-0.6.6(animax) on Tue Apr 15 19:50:27 2003
-+#
-+# contributed by
-+#
-+# brand: Hauppauge
-+# model no. of remote control:
-+# devices being controlled by this remote: PVR 2/350
-+#
-+
-+begin remote
-+
-+ name hauppauge_pvr
-+ bits 13
-+ flags RC5|CONST_LENGTH
-+ eps 30
-+ aeps 100
-+
-+ one 969 811
-+ zero 969 811
-+ plead 1097
-+ gap 114605
-+ toggle_bit 2
-+
-+
-+ begin codes
-+ Power 0x00000000000017FD
-+ Go 0x00000000000017FB
-+ 1 0x00000000000017C1
-+ 2 0x00000000000017C2
-+ 3 0x00000000000017C3
-+ 4 0x00000000000017C4
-+ 5 0x00000000000017C5
-+ 6 0x00000000000017C6
-+ 7 0x00000000000017C7
-+ 8 0x00000000000017C8
-+ 9 0x00000000000017C9
-+ Back/Exit 0x00000000000017DF
-+ 0 0x00000000000017C0
-+ Menu 0x00000000000017CD
-+ Red 0x00000000000017CB
-+ Green 0x00000000000017EE
-+ Yellow 0x00000000000017F8
-+ Blue 0x00000000000017E9
-+ Ch+ 0x00000000000017E0
-+ Ch- 0x00000000000017E1
-+ Vol- 0x00000000000017D1
-+ Vol+ 0x00000000000017D0
-+ Ok 0x00000000000017E5
-+ Mute 0x00000000000017CF
-+ Blank 0x00000000000017CC
-+ Full 0x00000000000017FC
-+ Rewind 0x00000000000017F2
-+ Play 0x00000000000017F5
-+ Forward 0x00000000000017F4
-+ Record 0x00000000000017F7
-+ Stop 0x00000000000017F6
-+ Pause 0x00000000000017F0
-+ Replay 0x00000000000017E4
-+ Skip 0x00000000000017DE
-+ end codes
-+
-+end remote
diff --git a/meta-extras/packages/lirc/lirc-config.inc b/meta-extras/packages/lirc/lirc-config.inc
deleted file mode 100644
index 03bfc61e3..000000000
--- a/meta-extras/packages/lirc/lirc-config.inc
+++ /dev/null
@@ -1,13 +0,0 @@
-EXTRA_OECONF = "--with-kerneldir=${STAGING_KERNEL_DIR} --with-driver=${DRIVER}"
-
-DRIVER ?= "serial"
-# fails to build at the moment, re-enable later
-#DRIVER_collie = "sa1100"
-DRIVER_h3600 = "sa1100"
-DRIVER_simpad = "sa1100"
-DRIVER_nslu2 = "nslu2"
-# XXX Why is X disabled on all these platforms anyway?
-EXTRA_OECONF_append_collie = " --without-x"
-EXTRA_OECONF_append_h3600 = " --without-x"
-EXTRA_OECONF_append_simpad = " --without-x"
-EXTRA_OECONF_append_nslu2 = " --without-x --with-transmitter --with-soft-carrier"
diff --git a/meta-extras/packages/lirc/lirc-modules_0.8.3.bb b/meta-extras/packages/lirc/lirc-modules_0.8.3.bb
deleted file mode 100644
index ee1de7194..000000000
--- a/meta-extras/packages/lirc/lirc-modules_0.8.3.bb
+++ /dev/null
@@ -1,33 +0,0 @@
-DESCRIPTION = "LIRC is a package that allows you to decode and send infra-red signals of many commonly used remote controls."
-SECTION = "base"
-PRIORITY = "optional"
-LICENSE = "GPL"
-DEPENDS = "virtual/kernel virtual/fakeroot-native"
-PR = "r2"
-
-SRC_URI = "${SOURCEFORGE_MIRROR}/lirc/lirc-${PV}.tar.gz \
- file://lirc_sir-sa1100.patch;patch=1"
-S = "${WORKDIR}/lirc-${PV}"
-
-inherit autotools module-base
-
-include lirc-config.inc
-
-do_compile() {
- # ${KERNEL_LD} doesn't understand the LDFLAGS, so suppress them
- cd drivers && oe_runmake CC="${KERNEL_CC}" LD="${KERNEL_LD}" LDFLAGS=""
-}
-
-fakeroot do_install() {
- oe_runmake -C drivers DESTDIR="${D}" moduledir="/lib/modules/${KERNEL_VERSION}/lirc" install
- rm -rf ${D}/dev
-}
-
-pkg_postinst() {
-#!/bin/sh
-set -e
-if [ ! -c $D/dev/lirc ]; then mknod $D/dev/lirc c 61 0; fi
-exit 0
-}
-
-FILES_${PN} = "/lib/modules"
diff --git a/meta-extras/packages/lirc/lirc_0.8.3.bb b/meta-extras/packages/lirc/lirc_0.8.3.bb
deleted file mode 100644
index 9e4cacc3e..000000000
--- a/meta-extras/packages/lirc/lirc_0.8.3.bb
+++ /dev/null
@@ -1,31 +0,0 @@
-DESCRIPTION = "LIRC is a package that allows you to decode and send infra-red signals of many commonly used remote controls."
-SECTION = "console/network"
-PRIORITY = "optional"
-LICENSE = "GPL"
-DEPENDS = "virtual/kernel virtual/libx11 libxau libsm libice"
-PR = "r5"
-
-SRC_URI = "${SOURCEFORGE_MIRROR}/lirc/lirc-${PV}.tar.gz \
- file://lircd.init file://lircmd.init"
-S = "${WORKDIR}/lirc-${PV}"
-
-inherit autotools module-base update-rc.d
-
-INITSCRIPT_NAME = "lircd"
-INITSCRIPT_PARAMS = "defaults 20"
-
-include lirc-config.inc
-
-EXTRA_OEMAKE = 'SUBDIRS="daemons tools"'
-
-do_install_append() {
- install -d ${D}${sysconfdir}/init.d
- install ${WORKDIR}/lircd.init ${D}${sysconfdir}/init.d/lircd
-
- install -d ${D}${datadir}/lirc/
- cp -pPR ${S}/remotes ${D}${datadir}/lirc/
-}
-
-PACKAGES =+ "lirc-x"
-
-FILES_lirc-x = "${bindir}/irxevent ${bindir}/xmode2"
diff --git a/meta-extras/packages/llvm/llvm-native/fix_ldflags_export.patch b/meta-extras/packages/llvm/llvm-native/fix_ldflags_export.patch
deleted file mode 100644
index 77511d68f..000000000
--- a/meta-extras/packages/llvm/llvm-native/fix_ldflags_export.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-Index: trunk/tools/llvm-config/Makefile
-===================================================================
---- trunk.orig/tools/llvm-config/Makefile 2008-02-11 15:14:22.000000000 +0000
-+++ trunk/tools/llvm-config/Makefile 2008-04-11 16:58:06.000000000 +0100
-@@ -27,7 +27,7 @@
- # This is blank for now. We need to be careful about adding stuff here:
- # LDFLAGS tend not to be portable, and we don't currently require the
- # user to use libtool when linking against LLVM.
--SUB_LDFLAGS =
-+SUB_LDFLAGS = ${LD.Flags}
-
- FinalLibDeps = $(PROJ_OBJ_DIR)/FinalLibDeps.txt
- LibDeps = $(PROJ_OBJ_DIR)/LibDeps.txt
-@@ -57,10 +57,11 @@
- # Build our final script.
- $(ToolDir)/llvm-config: llvm-config.in $(FinalLibDeps)
- $(Echo) "Building llvm-config script."
-+ $(Echo) 's,@LLVM_LDFLAGS@,$(SUB_LDFLAGS),'
- $(Verb) $(ECHO) 's,@LLVM_CPPFLAGS@,$(SUB_CPPFLAGS),' > temp.sed
- $(Verb) $(ECHO) 's,@LLVM_CFLAGS@,$(SUB_CFLAGS),' >> temp.sed
- $(Verb) $(ECHO) 's,@LLVM_CXXFLAGS@,$(SUB_CXXFLAGS),' >> temp.sed
-- $(Verb) $(ECHO) 's,@LLVM_LDFLAGS@,$(SUB_LDFLAGS),' >> temp.sed
-+ $(Verb) $(ECHO) 's#@LLVM_LDFLAGS@#$(SUB_LDFLAGS)#' >> temp.sed
- $(Verb) $(ECHO) 's,@LLVM_BUILDMODE@,$(BuildMode),' >> temp.sed
- $(Verb) $(SED) -f temp.sed < $< > $@
- $(Verb) $(RM) temp.sed
diff --git a/meta-extras/packages/llvm/llvm-native_svn.bb b/meta-extras/packages/llvm/llvm-native_svn.bb
deleted file mode 100644
index 56cc0d97b..000000000
--- a/meta-extras/packages/llvm/llvm-native_svn.bb
+++ /dev/null
@@ -1,13 +0,0 @@
-DEPENDS = "flex-native"
-SRC_URI = "svn://llvm.org/svn/llvm-project/llvm;proto=http;module=trunk \
- file://fix_ldflags_export.patch;patch=1"
-
-PV = "0.0+${SRCREV}"
-PR = "r1"
-
-S = "${WORKDIR}/trunk"
-
-inherit autotools native
-
-EXTRA_OECONF = "--enable-optimized"
-EXTRA_OEMAKE = "ENABLE_OPTIMIZED=1" \ No newline at end of file
diff --git a/meta-extras/packages/madplay/madplay_0.15.2b.bb b/meta-extras/packages/madplay/madplay_0.15.2b.bb
deleted file mode 100644
index d942b965e..000000000
--- a/meta-extras/packages/madplay/madplay_0.15.2b.bb
+++ /dev/null
@@ -1,12 +0,0 @@
-DESCRIPTION = "Madplay is a command-line MPEG audio decoder and player"
-SECTION = "console/multimedia"
-DEPENDS = "libmad"
-LICENSE = "GPL"
-AUTHOR = "Robert Leslie <rob@mars.org>"
-HOMEPAGE = "http://www.mars.org/home/rob/proj/mpeg/"
-
-SRC_URI = "ftp://ftp.mars.org/pub/mpeg/${PN}-${PV}.tar.gz"
-
-inherit autotools
-
-FILES_${PN} = "${bindir}/madplay"
diff --git a/meta-extras/packages/maemo-mapper/files/fix_segfault.patch b/meta-extras/packages/maemo-mapper/files/fix_segfault.patch
deleted file mode 100644
index 23730e8c0..000000000
--- a/meta-extras/packages/maemo-mapper/files/fix_segfault.patch
+++ /dev/null
@@ -1,31 +0,0 @@
- src/maemo-mapper.c | 10 +++++-----
- 1 file changed, 5 insertions(+), 5 deletions(-)
-
-Index: trunk/src/maemo-mapper.c
-===================================================================
---- trunk.orig/src/maemo-mapper.c 2006-11-28 15:11:49.000000000 +0000
-+++ trunk/src/maemo-mapper.c 2006-11-28 22:40:19.000000000 +0000
-@@ -140,8 +140,8 @@
- #define HILDON_HARDKEY_RIGHT GDK_Right
- #define HILDON_HARDKEY_SELECT GDK_Return
- #define HILDON_HARDKEY_FULLSCREEN GDK_F10
--#define HILDON_HARDKEY_INCREASE GDK_F6
--#define HILDON_HARDKEY_DECREASE GDK_F5
-+#define HILDON_HARDKEY_INCREASE GDK_plus
-+#define HILDON_HARDKEY_DECREASE GDK_minus
- #define HILDON_HARDKEY_ESC GDK_Escape
- #define HILDON_COLOR_BUTTON GTK_COLOR_BUTTON
-
-@@ -3117,9 +3117,9 @@ set_conn_state(ConnState new_conn_state)
- gtk_widget_destroy(_fix_banner);
- _fix_banner = NULL;
- }
-- if(!_connect_banner)
-- _connect_banner = hildon_banner_show_animation(
-- _window, NULL, _("Searching for GPS receiver"));
-+// if(!_connect_banner)
-+// _connect_banner = hildon_banner_show_animation(
-+// _window, NULL, _("Searching for GPS receiver"));
- break;
- case RCVR_UP:
- if(_connect_banner)
diff --git a/meta-extras/packages/maemo-mapper/maemo-mapper-nohildon_svn.bb b/meta-extras/packages/maemo-mapper/maemo-mapper-nohildon_svn.bb
deleted file mode 100644
index ceda4ff81..000000000
--- a/meta-extras/packages/maemo-mapper/maemo-mapper-nohildon_svn.bb
+++ /dev/null
@@ -1,22 +0,0 @@
-DESCRIPTION = "GPS navigation/map display software"
-LICENSE = "GPL"
-DEPENDS = "sqlite3 gtk+ gnome-vfs dbus bluez-libs"
-RDEPENDS = "bluez-utils"
-PV = "1.2.4+svn${SRCDATE}"
-PR = "r1"
-
-# Only works with SRCDATE_maemo-mapper-nohildon = "20061114"
-SRC_URI = "svn://garage.maemo.org/svn/maemo-mapper;proto=https;module=trunk \
- http://home.tal.org/%7Emilang/n770/maemo-mapper-desktop-20061114-001.patch;patch=1;pnum=0 \
- file://fix_segfault.patch;patch=1"
-
-S = "${WORKDIR}/trunk"
-
-inherit autotools pkgconfig
-
-do_install_append () {
- install -d ${D}${datadir}/applications/
- mv ${D}/maemo-mapper.desktop ${D}${datadir}/applications/
-}
-
-#FILES_${PN} += "${datadir}/icons"
diff --git a/meta-extras/packages/maemo/nokia770-init/fixup-770.sh b/meta-extras/packages/maemo/nokia770-init/fixup-770.sh
deleted file mode 100644
index 0f1734d2a..000000000
--- a/meta-extras/packages/maemo/nokia770-init/fixup-770.sh
+++ /dev/null
@@ -1,26 +0,0 @@
-#! /bin/sh
-case "$1" in
- start)
- echo -n "Unmounting virtual fs from initrd"
- umount /mnt/initfs/sys
- umount /mnt/initfs/proc
- ln -s /dev/vc/0 /dev/tty0
- ln -s /dev/vc/1 /dev/tty1
- ln -s /dev/vc/2 /dev/tty2
- ln -s /dev/vc/3 /dev/tty3
- ln -s /dev/vc/4 /dev/tty4
- ln -s /dev/vc/5 /dev/tty5
- ln -s /dev/vc/6 /dev/tty6
- ln -s /dev/vc/7 /dev/tty7
- /sbin/ifconfig wlan0 up
- ;;
- stop)
- ;;
- *)
- echo "Usage: $SCRIPTNAME {start|stop}" >&2
- exit 1
- ;;
-esac
-
-exit 0
- \ No newline at end of file
diff --git a/meta-extras/packages/maemo/nokia770-init_1.0.bb b/meta-extras/packages/maemo/nokia770-init_1.0.bb
deleted file mode 100644
index 9075c016a..000000000
--- a/meta-extras/packages/maemo/nokia770-init_1.0.bb
+++ /dev/null
@@ -1,38 +0,0 @@
-LICENSE = "GPL"
-PR = "r7"
-
-DEPENDS = "base-passwd"
-
-SRC_URI = "file://fixup-770.sh"
-
-COMPATIBLE_MACHINE = "(nokia770|nokia800)"
-
-inherit update-rc.d
-
-INITSCRIPT_NAME = "fixup-770.sh"
-INITSCRIPT_PARAMS = "defaults 01"
-
-FILES_${PN} = "${sysconfdir} ${libdir}"
-
-do_install () {
- install -d ${D}${sysconfdir}/init.d
- install -m 755 ${WORKDIR}/fixup-770.sh ${D}/${sysconfdir}/init.d/fixup-770.sh
-
- install -d ${D}/lib/firmware
-}
-
-pkg_postinst () {
-#!/bin/sh
-
-# set up some links to firmware and modules in initrd
- mkdir -p $D/lib/firmware
- ln -sf /mnt/initfs/usr/lib/hotplug/firmware/3825.arm $D/lib/firmware/3825.arm
- ln -sf /mnt/initfs/usr/lib/hotplug/firmware/3826.arm $D/lib/firmware/3826.arm
- ln -sf /mnt/initfs/usr/lib/hotplug/firmware/bc4fw.bin $D/lib/firmware/bc4fw.bin
- ln -sf /mnt/initfs/usr/lib/hotplug/firmware/brf6150fw.bin $D/lib/firmware/brf6150fw.bin
- ln -sf /mnt/initfs/usr/lib/hotplug/firmware/mtlm3825.arm $D/lib/firmware/mtlm3825.arm
- ln -sf /mnt/initfs/usr/lib/hotplug/firmware/mtlm3826.arm $D/lib/firmware/mtlm3826.arm
-
-# rm -rf $D/lib/modules
-# ln -s /mnt/initfs/lib/modules $D/lib/modules
-}
diff --git a/meta-extras/packages/maemo/xpext/auxdir.patch b/meta-extras/packages/maemo/xpext/auxdir.patch
deleted file mode 100644
index da5841a13..000000000
--- a/meta-extras/packages/maemo/xpext/auxdir.patch
+++ /dev/null
@@ -1,13 +0,0 @@
---- configure.ac.old 2005-06-03 12:53:28.000000000 +0200
-+++ configure.ac 2005-06-03 12:54:29.000000000 +0200
-@@ -25,9 +25,9 @@
-
- AC_PREREQ([2.57])
- AC_INIT([spext], [1.0], [lauri.leukkunen@nokia.com], spext)
-+AC_CONFIG_AUX_DIR(.)
- AM_INIT_AUTOMAKE([dist-bzip2])
- AM_MAINTAINER_MODE
--AC_CONFIG_AUX_DIR(.)
-
- dnl PKG_CHECK_MODULES(FIXESEXT, fixesext)
-
diff --git a/meta-extras/packages/maemo/xpext_1.0-5.bb b/meta-extras/packages/maemo/xpext_1.0-5.bb
deleted file mode 100644
index 5be3d1c04..000000000
--- a/meta-extras/packages/maemo/xpext_1.0-5.bb
+++ /dev/null
@@ -1,22 +0,0 @@
-DESCRIPTION = "X Server Nokia 770 extensions library"
-LICENSE= "MIT"
-SECTION = "x11/libs"
-PRIORITY = "optional"
-DEPENDS = "virtual/libx11 libxext"
-PR = "r1"
-
-SRC_URI = "http://repository.maemo.org/pool/maemo/ossw/source/x/${PN}/${PN}_${PV}.tar.gz \
- file://auxdir.patch;patch=1;pnum=0"
-S = "${WORKDIR}/xpext-1.0"
-
-# ${PN} is empty so we need to tweak -dev and -dbg package dependencies
-RDEPENDS_${PN}-dev = ""
-RRECOMMENDS_${PN}-dbg = "${PN}-dev (= ${EXTENDPV})"
-
-inherit autotools pkgconfig
-
-do_configure_prepend () {
- cd ${S}
- chmod +x ./autogen.sh
- ./autogen.sh
-}
diff --git a/meta-extras/packages/maemo/xsp_1.0.0-8.bb b/meta-extras/packages/maemo/xsp_1.0.0-8.bb
deleted file mode 100644
index c722213c8..000000000
--- a/meta-extras/packages/maemo/xsp_1.0.0-8.bb
+++ /dev/null
@@ -1,12 +0,0 @@
-DESCRIPTION = "X Server Nokia 770 extensions library"
-SECTION = "x11/libs"
-PRIORITY = "optional"
-LICENSE= "MIT"
-DEPENDS = "virtual/libx11 libxext xpext"
-
-PR = "r1"
-
-SRC_URI = "http://repository.maemo.org/pool/maemo/ossw/source/x/xsp/${PN}_${PV}.tar.gz"
-S = "${WORKDIR}/Xsp"
-
-inherit autotools pkgconfig
diff --git a/meta-extras/packages/matchbox-applet-inputmanager/matchbox-applet-inputmanager_0.6.bb b/meta-extras/packages/matchbox-applet-inputmanager/matchbox-applet-inputmanager_0.6.bb
deleted file mode 100644
index d868f148c..000000000
--- a/meta-extras/packages/matchbox-applet-inputmanager/matchbox-applet-inputmanager_0.6.bb
+++ /dev/null
@@ -1,12 +0,0 @@
-DESCRIPTION = "Matchbox input manager"
-LICENSE = "GPL"
-DEPENDS = "matchbox-wm libmatchbox"
-SECTION = "x11/wm"
-
-SRC_URI = "http://projects.o-hand.com/matchbox/sources/mb-applet-input-manager/${PV}/mb-applet-input-manager-${PV}.tar.gz"
-S = "${WORKDIR}/mb-applet-input-manager-${PV}"
-
-inherit autotools pkgconfig
-
-FILES_${PN} = "${bindir}/* ${datadir}/applications ${datadir}/pixmaps"
-
diff --git a/meta-extras/packages/matchbox-applet-light/matchbox-applet-light_svn.bb b/meta-extras/packages/matchbox-applet-light/matchbox-applet-light_svn.bb
deleted file mode 100644
index 3f1c2d02c..000000000
--- a/meta-extras/packages/matchbox-applet-light/matchbox-applet-light_svn.bb
+++ /dev/null
@@ -1,10 +0,0 @@
-LICENSE = "GPLv2"
-PRIORITY = "optional"
-DEPENDS = "libmatchbox gtk+"
-PV = "0.0+svnr${SRCREV}"
-
-SRC_URI = "svn://svn.o-hand.com/repos/matchbox/trunk;module=mb-applet-light;proto=http"
-
-S = "${WORKDIR}/mb-applet-light"
-
-inherit autotools pkgconfig
diff --git a/meta-extras/packages/matchbox-applet-startup-monitor/matchbox-applet-startup-monitor_0.1.bb b/meta-extras/packages/matchbox-applet-startup-monitor/matchbox-applet-startup-monitor_0.1.bb
deleted file mode 100644
index 68b224714..000000000
--- a/meta-extras/packages/matchbox-applet-startup-monitor/matchbox-applet-startup-monitor_0.1.bb
+++ /dev/null
@@ -1,11 +0,0 @@
-DESCRIPTION = "Matchbox Startup monitor applet"
-LICENSE = "GPL"
-DEPENDS = "libmatchbox startup-notification"
-SECTION = "x11/wm"
-
-SRC_URI = "http://matchbox-project.org/sources/mb-applet-startup-monitor/${PV}/mb-applet-startup-monitor-${PV}.tar.gz"
-S = "${WORKDIR}/mb-applet-startup-monitor-${PV}"
-
-inherit autotools pkgconfig
-
-FILES_${PN} = "${bindir}/* ${datadir}/applications ${datadir}/pixmaps"
diff --git a/meta-extras/packages/matchbox-applet-volume/matchbox-applet-volume_0.1.bb b/meta-extras/packages/matchbox-applet-volume/matchbox-applet-volume_0.1.bb
deleted file mode 100644
index e4b843f6b..000000000
--- a/meta-extras/packages/matchbox-applet-volume/matchbox-applet-volume_0.1.bb
+++ /dev/null
@@ -1,12 +0,0 @@
-DESCRIPTION = "Matchbox Volume Applet"
-LICENSE = "GPL"
-DEPENDS = "matchbox-wm libmatchbox gtk+"
-SECTION = "x11/wm"
-
-SRC_URI = "http://projects.o-hand.com/matchbox/sources/mb-applet-volume/${PV}/mb-applet-volume-${PV}.tar.gz"
-S = "${WORKDIR}/mb-applet-volume-${PV}"
-
-inherit autotools pkgconfig
-
-FILES_${PN} = "${bindir} ${datadir}/applications ${datadir}/pixmaps"
-
diff --git a/meta-extras/packages/matchbox-common/matchbox-common_0.9.1.bb b/meta-extras/packages/matchbox-common/matchbox-common_0.9.1.bb
deleted file mode 100644
index 2927ccd08..000000000
--- a/meta-extras/packages/matchbox-common/matchbox-common_0.9.1.bb
+++ /dev/null
@@ -1,14 +0,0 @@
-SECTION = "x11/wm"
-DESCRIPTION = "Matchbox window manager common files"
-LICENSE = "GPL"
-DEPENDS = "libmatchbox"
-
-SRC_URI = "http://projects.o-hand.com/matchbox/sources/${PN}/0.9/${PN}-${PV}.tar.gz"
-
-inherit autotools pkgconfig
-
-EXTRA_OECONF = "--enable-pda-folders"
-
-FILES_${PN} = "${bindir} \
- ${datadir}/matchbox/vfolders \
- ${datadir}/pixmaps"
diff --git a/meta-extras/packages/matchbox-common/matchbox-common_svn.bb b/meta-extras/packages/matchbox-common/matchbox-common_svn.bb
deleted file mode 100644
index ec62ac05a..000000000
--- a/meta-extras/packages/matchbox-common/matchbox-common_svn.bb
+++ /dev/null
@@ -1,17 +0,0 @@
-SECTION = "x11/wm"
-DESCRIPTION = "Matchbox window manager common files"
-LICENSE = "GPL"
-DEPENDS = "libmatchbox"
-PV = "0.9.1+svnr${SRCREV}"
-S = "${WORKDIR}/matchbox-common"
-DEFAULT_PREFERENCE = "-1"
-
-SRC_URI = "svn://svn.o-hand.com/repos/matchbox/trunk;module=matchbox-common;proto=http"
-
-inherit autotools pkgconfig
-
-EXTRA_OECONF = " --enable-pda-folders "
-
-FILES_${PN} = "${bindir} \
- ${datadir}/matchbox/vfolders \
- ${datadir}/pixmaps"
diff --git a/meta-extras/packages/matchbox-panel-hacks/matchbox-panel-hacks-0.3-1/home-panelapp.desktop b/meta-extras/packages/matchbox-panel-hacks/matchbox-panel-hacks-0.3-1/home-panelapp.desktop
deleted file mode 100644
index 4e08dfd37..000000000
--- a/meta-extras/packages/matchbox-panel-hacks/matchbox-panel-hacks-0.3-1/home-panelapp.desktop
+++ /dev/null
@@ -1,7 +0,0 @@
-[Desktop Entry]
-Name=Home
-Comment=Home
-Exec=mb-applet-home
-Type=PanelApp
-Icon=xrandr.png
-Categories=Panel;Utility;MB
diff --git a/meta-extras/packages/matchbox-panel-hacks/matchbox-panel-hacks-0.3-1/mb-applet-home b/meta-extras/packages/matchbox-panel-hacks/matchbox-panel-hacks-0.3-1/mb-applet-home
deleted file mode 100755
index 132e72bdd..000000000
--- a/meta-extras/packages/matchbox-panel-hacks/matchbox-panel-hacks-0.3-1/mb-applet-home
+++ /dev/null
@@ -1,2 +0,0 @@
-#!/bin/sh
-exec mb-applet-launcher -na -o -1 -l --title "Home" mbdesktop.png matchbox-remote -d
diff --git a/meta-extras/packages/matchbox-panel-hacks/matchbox-panel-hacks-0.3-1/xrandr-panelapp.desktop b/meta-extras/packages/matchbox-panel-hacks/matchbox-panel-hacks-0.3-1/xrandr-panelapp.desktop
deleted file mode 100644
index 512e3771e..000000000
--- a/meta-extras/packages/matchbox-panel-hacks/matchbox-panel-hacks-0.3-1/xrandr-panelapp.desktop
+++ /dev/null
@@ -1,7 +0,0 @@
-[Desktop Entry]
-Name=Screen Rotator
-Comment=Panel based Rotation tool.
-Exec=mb-applet-launcher -na -l --title "Screen Rotator" /usr/share/pixmaps/xrandr.png xrandr-panelapp.sh
-Type=PanelApp
-Icon=xrandr.png
-Categories=Panel;Utility;MB
diff --git a/meta-extras/packages/matchbox-panel-hacks/matchbox-panel-hacks-0.3-1/xrandr-panelapp.sh b/meta-extras/packages/matchbox-panel-hacks/matchbox-panel-hacks-0.3-1/xrandr-panelapp.sh
deleted file mode 100755
index d17c805ff..000000000
--- a/meta-extras/packages/matchbox-panel-hacks/matchbox-panel-hacks-0.3-1/xrandr-panelapp.sh
+++ /dev/null
@@ -1,9 +0,0 @@
-#!/bin/sh
-if [ -n "$(xrandr | grep rotation | grep left)" ]
-then
-xrandr -o normal
-xmodmap /etc/X11/xmodmap-portrait
-else
-xrandr -o left
-xmodmap /etc/X11/xmodmap-left
-fi
diff --git a/meta-extras/packages/matchbox-panel-hacks/matchbox-panel-hacks-0.3-1/xrandr.png b/meta-extras/packages/matchbox-panel-hacks/matchbox-panel-hacks-0.3-1/xrandr.png
deleted file mode 100644
index 08cd476e8..000000000
--- a/meta-extras/packages/matchbox-panel-hacks/matchbox-panel-hacks-0.3-1/xrandr.png
+++ /dev/null
Binary files differ
diff --git a/meta-extras/packages/matchbox-panel-hacks/matchbox-panel-hacks_0.3-1.bb b/meta-extras/packages/matchbox-panel-hacks/matchbox-panel-hacks_0.3-1.bb
deleted file mode 100644
index 897585344..000000000
--- a/meta-extras/packages/matchbox-panel-hacks/matchbox-panel-hacks_0.3-1.bb
+++ /dev/null
@@ -1,23 +0,0 @@
-DESCRIPTION = "Simple dockapps created with monolaunch and shell script"
-DEPENDS = "matchbox-common xmodmap"
-SRC_URI = "file://xrandr-panelapp.sh \
- file://xrandr-panelapp.desktop \
- file://mb-applet-home \
- file://home-panelapp.desktop \
- file://xrandr.png"
-SECTION = "x11/wm"
-PRIORITY = "optional"
-PR = "r8"
-LICENSE = "MIT"
-
-do_install() {
- install -d ${D}${bindir}
- install -d ${D}${datadir}/applications
- install -d ${D}${datadir}/pixmaps
- install -m 0755 ${WORKDIR}/xrandr-panelapp.sh ${D}${bindir}/
- install -m 0644 ${WORKDIR}/xrandr-panelapp.desktop ${D}${datadir}/applications/
- install -m 0644 ${WORKDIR}/xrandr.png ${D}${datadir}/pixmaps/
- install -m 0755 ${WORKDIR}/mb-applet-home ${D}${bindir}/
- install -m 0644 ${WORKDIR}/home-panelapp.desktop ${D}${datadir}/applications/
-
-}
diff --git a/meta-extras/packages/matchbox-panel-manager/matchbox-panel-manager_0.1.bb b/meta-extras/packages/matchbox-panel-manager/matchbox-panel-manager_0.1.bb
deleted file mode 100644
index fea6953ec..000000000
--- a/meta-extras/packages/matchbox-panel-manager/matchbox-panel-manager_0.1.bb
+++ /dev/null
@@ -1,12 +0,0 @@
-DESCRIPTION = "Matchbox Panel Manager"
-LICENSE = "GPL"
-DEPENDS = "gtk+"
-SECTION = "x11/wm"
-
-SRC_URI = "http://projects.o-hand.com/matchbox/sources/${PN}/${PV}/${PN}-${PV}.tar.bz2"
-S = "${WORKDIR}/${PN}-${PV}"
-
-inherit autotools pkgconfig
-
-FILES_${PN} = "${bindir}/* ${datadir}/applications ${datadir}/pixmaps"
-
diff --git a/meta-extras/packages/matchbox-panel/matchbox-panel.inc b/meta-extras/packages/matchbox-panel/matchbox-panel.inc
deleted file mode 100644
index f7d6b9338..000000000
--- a/meta-extras/packages/matchbox-panel/matchbox-panel.inc
+++ /dev/null
@@ -1,27 +0,0 @@
-DESCRIPTION = "Matchbox Window Manager Panel"
-LICENSE = "GPL"
-DEPENDS = "libmatchbox virtual/libx11 libxext libxpm apmd startup-notification virtual/kernel wireless-tools"
-RDEPENDS = "matchbox-common"
-SECTION = "x11/wm"
-
-PR = "r2"
-
-inherit autotools pkgconfig gettext
-
-CFLAGS += "-D_GNU_SOURCE"
-
-EXTRA_OECONF = " --enable-startup-notification --enable-dnotify "
-EXTRA_OECONF_append_h3600 = " --enable-small-icons "
-EXTRA_OECONF_append_h3900 = " --enable-small-icons "
-EXTRA_OECONF_append_h2200 = " --enable-small-icons "
-EXTRA_OECONF_append_h4000 = " --enable-small-icons "
-EXTRA_OECONF_append_collie = " --enable-small-icons "
-EXTRA_OECONF_append_poodle = " --enable-small-icons "
-EXTRA_OECONF_append_mnci = " --enable-small-icons "
-EXTRA_OECONF_append_integral13 = " --enable-small-icons "
-PACKAGE_ARCH = "${MACHINE}"
-
-FILES_${PN} = "${bindir}/* \
- ${datadir}/applications \
- ${datadir}/pixmaps"
-
diff --git a/meta-extras/packages/matchbox-panel/matchbox-panel_0.9.2.bb b/meta-extras/packages/matchbox-panel/matchbox-panel_0.9.2.bb
deleted file mode 100644
index 2b5f4693a..000000000
--- a/meta-extras/packages/matchbox-panel/matchbox-panel_0.9.2.bb
+++ /dev/null
@@ -1,6 +0,0 @@
-require matchbox-panel.inc
-
-PR="r3"
-SRC_URI = "http://projects.o-hand.com/matchbox/sources/${PN}/0.9/${PN}-${PV}.tar.gz"
-
-
diff --git a/meta-extras/packages/matchbox-panel/matchbox-panel_svn.bb b/meta-extras/packages/matchbox-panel/matchbox-panel_svn.bb
deleted file mode 100644
index 50182dacc..000000000
--- a/meta-extras/packages/matchbox-panel/matchbox-panel_svn.bb
+++ /dev/null
@@ -1,9 +0,0 @@
-require matchbox-panel.inc
-PV = "0.9.2+svnr${SRCREV}"
-DEFAULT_PREFERENCE = "-1"
-
-SRC_URI = "svn://svn.o-hand.com/repos/matchbox/trunk;module=${PN};proto=http"
-
-EXTRA_OECONF = "--enable-startup-notification --enable-dnotify"
-
-S = "${WORKDIR}/${PN}"
diff --git a/meta-extras/packages/mozilla/files/eabi-fix.patch b/meta-extras/packages/mozilla/files/eabi-fix.patch
deleted file mode 100644
index fd3bb8868..000000000
--- a/meta-extras/packages/mozilla/files/eabi-fix.patch
+++ /dev/null
@@ -1,66 +0,0 @@
-http://lists.debian.org/debian-arm/2007/05/msg00039.html
-
-From: Lennert Buytenhek <buytenh@wantstofly.org>
-
-Hi,
-
-The reason that building nss (i.e., firefox) would segfault on ARM EABI
-systems is an assumption about the layout of the jmp_buf structure in
-the nspr library (which nss depends on) that does hold on old-ABI but
-no longer holds on EABI. The attached patch fixes this assumption,
-and fixes the shlibsign segfault during the building of nss (it also
-fixes a floating point byte order assumption.)
-
-Looks sane?
-
-It's of course a stupid idea to depend on a particular layout of the
-jmp_buf structure in application programs, but oh well. People write
-ugly buggy code, film at 11.
-
-
---- mozilla/nsprpub/pr/src/misc/prdtoa.c.orig 2007-05-06 02:39:00.000000000 +0200
-+++ mozilla/nsprpub/pr/src/misc/prdtoa.c 2007-05-06 02:39:22.000000000 +0200
-@@ -59,8 +59,8 @@
- /* FIXME: deal with freelist and p5s. */
- }
-
--#if defined(__arm) || defined(__arm__) || defined(__arm26__) \
-- || defined(__arm32__)
-+#if (defined(__arm) || defined(__arm__) || defined(__arm26__) \
-+ || defined(__arm32__)) && !defined(__ARM_EABI__) && !defined(__ARMEB__)
- #define IEEE_ARM
- #elif defined(IS_LITTLE_ENDIAN)
- #define IEEE_8087
---- mozilla/nsprpub/pr/include/md/_linux.h.orig 2007-05-06 02:39:45.000000000 +0200
-+++ mozilla/nsprpub/pr/include/md/_linux.h 2007-05-06 02:40:57.000000000 +0200
-@@ -346,7 +346,7 @@
- #error "Linux/MIPS pre-glibc2 not supported yet"
- #endif /* defined(__GLIBC__) && __GLIBC__ >= 2 */
-
--#elif defined(__arm__)
-+#elif defined(__arm__) && !defined(__ARM_EABI__)
- /* ARM/Linux */
- #if defined(__GLIBC__) && __GLIBC__ >= 2
- #define _MD_GET_SP(_t) (_t)->md.context[0].__jmpbuf[20]
-@@ -358,6 +358,18 @@
- #error "ARM/Linux pre-glibc2 not supported yet"
- #endif /* defined(__GLIBC__) && __GLIBC__ >= 2 */
-
-+#elif defined(__arm__) && defined(__ARM_EABI__)
-+/* ARM/Linux */
-+#if defined(__GLIBC__) && __GLIBC__ >= 2
-+#define _MD_GET_SP(_t) (_t)->md.context[0].__jmpbuf[8]
-+#define _MD_SET_FP(_t, val) ((_t)->md.context[0].__jmpbuf[7] = (val))
-+#define _MD_GET_SP_PTR(_t) &(_MD_GET_SP(_t))
-+#define _MD_GET_FP_PTR(_t) (&(_t)->md.context[0].__jmpbuf[7])
-+#define _MD_SP_TYPE __ptr_t
-+#else
-+#error "ARM/Linux pre-glibc2 not supported yet"
-+#endif /* defined(__GLIBC__) && __GLIBC__ >= 2 */
-+
- #else
-
- #error "Unknown CPU architecture"
-
-
-
diff --git a/meta-extras/packages/mozilla/files/eabi-fix2.patch b/meta-extras/packages/mozilla/files/eabi-fix2.patch
deleted file mode 100644
index 5f64e7f79..000000000
--- a/meta-extras/packages/mozilla/files/eabi-fix2.patch
+++ /dev/null
@@ -1,56 +0,0 @@
-https://bugzilla.mozilla.org/show_bug.cgi?id=369722
-
-Index: js/src/jsnum.h
-===================================================================
-RCS file: /cvsroot/mozilla/js/src/jsnum.h,v
-retrieving revision 3.27
-diff -p -u -8 -r3.27 jsnum.h
---- mozilla/js/src/jsnum.h 21 Dec 2006 01:00:32 -0000 3.27
-+++ mozilla/js/src/jsnum.h 8 Feb 2007 12:13:01 -0000
-@@ -52,23 +52,24 @@ JS_BEGIN_EXTERN_C
-
- /*
- * Stefan Hanske <sh990154@mail.uni-greifswald.de> reports:
- * ARM is a little endian architecture but 64 bit double words are stored
- * differently: the 32 bit words are in little endian byte order, the two words
- * are stored in big endian`s way.
- */
-
--#if defined(__arm) || defined(__arm32__) || defined(__arm26__) || defined(__arm__)
--#define CPU_IS_ARM
-+#if !defined(__ARM_EABI__) && \
-+ (defined(__arm) || defined(__arm32__) || defined(__arm26__) || defined(__arm__))
-+#define IEEE_ARM
- #endif
-
- typedef union jsdpun {
- struct {
--#if defined(IS_LITTLE_ENDIAN) && !defined(CPU_IS_ARM)
-+#if defined(IS_LITTLE_ENDIAN) && !defined(IEEE_ARM)
- uint32 lo, hi;
- #else
- uint32 hi, lo;
- #endif
- } s;
- jsdouble d;
- } jsdpun;
-
-@@ -87,17 +88,17 @@ typedef union jsdpun {
-
- #else /* not or old GNUC */
-
- /*
- * We don't know of any non-gcc compilers that perform alias optimization,
- * so this code should work.
- */
-
--#if defined(IS_LITTLE_ENDIAN) && !defined(CPU_IS_ARM)
-+#if defined(IS_LITTLE_ENDIAN) && !defined(IEEE_ARM)
- #define JSDOUBLE_HI32(x) (((uint32 *)&(x))[1])
- #define JSDOUBLE_LO32(x) (((uint32 *)&(x))[0])
- #else
- #define JSDOUBLE_HI32(x) (((uint32 *)&(x))[0])
- #define JSDOUBLE_LO32(x) (((uint32 *)&(x))[1])
- #endif
-
- #define JSDOUBLE_SET_HI32(x, y) (JSDOUBLE_HI32(x)=(y))
diff --git a/meta-extras/packages/mozilla/files/eabi-fix3.patch b/meta-extras/packages/mozilla/files/eabi-fix3.patch
deleted file mode 100644
index 8bf8c2f4d..000000000
--- a/meta-extras/packages/mozilla/files/eabi-fix3.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-From: Marcin Juszkiewicz <openembedded@hrw.one.pl>
-
-Index: mozilla/extensions/transformiix/source/base/Double.cpp
-===================================================================
---- mozilla.orig/extensions/transformiix/source/base/Double.cpp 2007-05-09 11:21:34.000000000 +0200
-+++ mozilla/extensions/transformiix/source/base/Double.cpp 2007-05-09 11:23:59.000000000 +0200
-@@ -71,7 +71,7 @@
- * are stored in big endian`s way.
- */
-
--#if defined(__arm) || defined(__arm32__) || defined(_arm26__) || defined(__arm__)
-+#if !defined(__ARM_EABI__) && defined(__arm) || defined(__arm32__) || defined(_arm26__) || defined(__arm__)
- #define CPU_IS_ARM
- #endif
-
diff --git a/meta-extras/packages/mozilla/files/minimo.desktop b/meta-extras/packages/mozilla/files/minimo.desktop
deleted file mode 100644
index 5ef0f2075..000000000
--- a/meta-extras/packages/mozilla/files/minimo.desktop
+++ /dev/null
@@ -1,9 +0,0 @@
-[Desktop Entry]
-Name=Minimo
-Comment=Minimo web browser
-Exec=minimo http://www.mozilla.org/projects/minimo/home.html
-Terminal=0
-Type=Application
-Icon=minimo.png
-Categories=Application;Network;
-StartupNotify=True
diff --git a/meta-extras/packages/mozilla/files/minimo.png b/meta-extras/packages/mozilla/files/minimo.png
deleted file mode 100644
index f8b2e2192..000000000
--- a/meta-extras/packages/mozilla/files/minimo.png
+++ /dev/null
Binary files differ
diff --git a/meta-extras/packages/mozilla/minimo/bug-322806.diff b/meta-extras/packages/mozilla/minimo/bug-322806.diff
deleted file mode 100644
index e001e3fc6..000000000
--- a/meta-extras/packages/mozilla/minimo/bug-322806.diff
+++ /dev/null
@@ -1,13 +0,0 @@
-See https://bugzilla.mozilla.org/show_bug.cgi?id=322806 and http://bugs.openembedded.org/show_bug.cgi?id=1600
-
---- /tmp/xptcinvoke_arm.cpp 2006-12-10 20:02:57.000000000 +0100
-+++ mozilla/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_arm.cpp 2006-12-10 20:03:54.592227000 +0100
-@@ -212,7 +212,7 @@
- "add sp, sp, r4 \n\t" /* restore stack pointer */
- "mov %0, r0 \n\t" /* the result... */
- : "=r" (result)
-- : "r" (&my_params)
-+ : "r" (&my_params), "m" (my_params)
- : "r0", "r1", "r2", "r3", "r4", "ip", "lr", "sp"
- );
-
diff --git a/meta-extras/packages/mozilla/minimo/minimo b/meta-extras/packages/mozilla/minimo/minimo
deleted file mode 100644
index d130173ad..000000000
--- a/meta-extras/packages/mozilla/minimo/minimo
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-export MOZILLA_FIVE_HOME=/usr/lib/mozilla-minimo
-export LD_LIBRARY_PATH=${MOZILLA_FIVE_HOME}
-exec ${MOZILLA_FIVE_HOME}/minimo "$@"
diff --git a/meta-extras/packages/mozilla/minimo/minimo.patch b/meta-extras/packages/mozilla/minimo/minimo.patch
deleted file mode 100644
index 8894ee7f4..000000000
--- a/meta-extras/packages/mozilla/minimo/minimo.patch
+++ /dev/null
@@ -1,356 +0,0 @@
-Index: mozilla/content/html/content/src/nsFormSubmission.cpp
-===================================================================
---- mozilla.orig/content/html/content/src/nsFormSubmission.cpp 2005-07-13 18:55:59.000000000 +0200
-+++ mozilla/content/html/content/src/nsFormSubmission.cpp 2007-05-10 12:11:20.000000000 +0200
-@@ -1315,11 +1315,6 @@
- nsresult rv = NS_OK;
-
- nsCAutoString charset(aCharset);
-- // canonical name is passed so that we just have to check against
-- // *our* canonical names listed in charsetaliases.properties
-- if (charset.EqualsLiteral("ISO-8859-1")) {
-- charset.AssignLiteral("windows-1252");
-- }
-
- // use UTF-8 for UTF-16* and UTF-32* (per WHATWG and existing practice of
- // MS IE/Opera).
-Index: mozilla/embedding/base/Makefile.in
-===================================================================
---- mozilla.orig/embedding/base/Makefile.in 2006-02-14 06:28:31.000000000 +0100
-+++ mozilla/embedding/base/Makefile.in 2007-05-10 12:11:20.000000000 +0200
-@@ -43,6 +43,7 @@
-
- MODULE = embed_base
- LIBRARY_NAME = embed_base_s
-+EXPORT_LIBRARY = 1
- XPIDL_MODULE = embed_base
-
- include $(DEPTH)/config/autoconf.mk
-Index: mozilla/js/src/Makefile.in
-===================================================================
---- mozilla.orig/js/src/Makefile.in 2006-07-28 00:56:20.000000000 +0200
-+++ mozilla/js/src/Makefile.in 2007-05-10 12:11:21.000000000 +0200
-@@ -46,6 +46,7 @@
-
- MODULE = js
- LIBRARY_NAME = mozjs
-+EXPORT_LIBRARY = 1
- LIB_IS_C_ONLY = 1
- GRE_MODULE = 1
-
-Index: mozilla/minimo/Makefile.in
-===================================================================
---- mozilla.orig/minimo/Makefile.in 2006-07-24 21:40:53.000000000 +0200
-+++ mozilla/minimo/Makefile.in 2007-05-10 12:13:46.000000000 +0200
-@@ -41,6 +41,6 @@
-
- include $(DEPTH)/config/autoconf.mk
-
--DIRS = config components chrome locales customization base extensions
-+DIRS = config chrome locales customization base extensions
-
- include $(topsrcdir)/config/rules.mk
-Index: mozilla/minimo/base/Makefile.in
-===================================================================
---- mozilla.orig/minimo/base/Makefile.in 2006-08-09 17:42:26.000000000 +0200
-+++ mozilla/minimo/base/Makefile.in 2007-05-10 12:11:21.000000000 +0200
-@@ -96,7 +96,6 @@
-
- # this should move into the toolkit!
- LOCAL_INCLUDES = -I$(srcdir) -I$(topsrcdir)/xpfe/browser/src/
--CPPSRCS += nsBrowserStatusFilter.cpp nsBrowserInstance.cpp
-
- ifdef WINCE
- RCINCLUDE = wince/SplashScreen.rc
-@@ -143,10 +142,6 @@
- endif
-
-
--FINAL_LINK_COMPS=$(topsrcdir)/minimo/base/$(FINAL_PLATFORM)/minimo-link-comps
--FINAL_LINK_COMP_NAMES=$(topsrcdir)/minimo/base/$(FINAL_PLATFORM)/minimo-link-names
--FINAL_LINK_LIBS=$(topsrcdir)/minimo/base/$(FINAL_PLATFORM)/minimo-link-libs
--
- include $(topsrcdir)/config/static-config.mk
-
- EXTRA_DEPS += $(STATIC_EXTRA_DEPS)
-@@ -180,14 +175,11 @@
- # (same as in mozilla/js/src/Makefile.in)
- ifdef WINCE
- LDFLAGS += -OPT:NOICF
-+else
-+# Hack to work around libxpcom_core.a / libunicharutil_s.a link order problem.
-+LDFLAGS += -u NS_StringGetData_P -u NS_StringGetMutableData_P
- endif
-
--export::
-- $(NSINSTALL) $(topsrcdir)/xpfe/browser/src/nsBrowserStatusFilter.cpp .
-- $(NSINSTALL) $(topsrcdir)/xpfe/browser/src/nsBrowserInstance.cpp .
--
--
--GARBAGE += nsBrowserStatusFilter.cpp nsBrowserInstance.cpp
-
- ifdef WINCE
- package::
-Index: mozilla/minimo/base/Minimo.cpp
-===================================================================
---- mozilla.orig/minimo/base/Minimo.cpp 2006-10-27 22:30:36.000000000 +0200
-+++ mozilla/minimo/base/Minimo.cpp 2007-05-10 12:13:21.000000000 +0200
-@@ -813,6 +813,8 @@
- #ifdef MOZ_WIDGET_GTK2
- gtk_set_locale();
- gtk_init(&argc, &argv);
-+ gtk_widget_set_default_visual(gdk_rgb_get_visual());
-+ gtk_widget_set_default_colormap(gdk_rgb_get_cmap());
- #endif
-
- #ifdef HACKY_PRE_LOAD_LIBRARY
-Index: mozilla/minimo/base/SplashScreen.cpp
-===================================================================
---- mozilla.orig/minimo/base/SplashScreen.cpp 2006-08-21 21:00:24.000000000 +0200
-+++ mozilla/minimo/base/SplashScreen.cpp 2007-05-10 12:11:22.000000000 +0200
-@@ -202,9 +202,24 @@
- void KillSplashScreen() {}
- void GetScreenSize(unsigned long* x, unsigned long* y)
- {
-+#ifdef MOZ_WIDGET_GTK2
-+ GdkDisplay* display = gdk_display_get_default();
-+ if (display != NULL)
-+ {
-+ GdkScreen *screen;
-+ screen = gdk_display_get_default_screen(display);
-+ *x = gdk_screen_get_width(screen);
-+ *y = gdk_screen_get_height(screen);
-+ }
-+ else
-+ {
-+#endif
- // we need to figure this out.
- *x = 240;
- *y = 320;
-+#ifdef MOZ_WIDGET_GTK2
-+ }
-+#endif
- }
-
-
-Index: mozilla/minimo/config/linux_package.sh
-===================================================================
---- mozilla.orig/minimo/config/linux_package.sh 2006-06-30 18:35:19.000000000 +0200
-+++ mozilla/minimo/config/linux_package.sh 2007-05-10 12:11:22.000000000 +0200
-@@ -29,9 +29,7 @@
- cp -pRL bin/libnssckbi.so minimo
- cp -pRL bin/libsmime3.so minimo
- cp -pRL bin/libsoftokn3.so minimo
--cp -pRL bin/libsoftokn3.chk minimo
- cp -pRL bin/libfreebl3.so minimo
--cp -pRL bin/libfreebl3.chk minimo
- cp -pRL bin/libssl3.so minimo
-
- mkdir -p minimo/chrome
-@@ -62,8 +60,6 @@
- cp -pRL bin/components/nsHelperAppDlg.js minimo/components
- cp -pRL bin/components/nsProgressDialog.js minimo/components
-
--cp -pRL bin/extensions/spatial-navigation@extensions.mozilla.org/components/* minimo/components
--
- mkdir -p minimo/greprefs
- cp -pRL bin/greprefs/* minimo/greprefs
-
-@@ -80,7 +76,7 @@
-
- echo Linking XPT files.
-
--bin/xpt_link minimo/components/all.xpt bin/components/*.xpt
-+host/bin/host_xpt_link minimo/components/all.xpt bin/components/*.xpt
-
- echo Chewing on chrome
-
-Index: mozilla/profile/dirserviceprovider/src/Makefile.in
-===================================================================
---- mozilla.orig/profile/dirserviceprovider/src/Makefile.in 2005-04-06 05:35:21.000000000 +0200
-+++ mozilla/profile/dirserviceprovider/src/Makefile.in 2007-05-10 12:11:23.000000000 +0200
-@@ -44,6 +44,7 @@
-
- MODULE = profdirserviceprovider
- LIBRARY_NAME = profdirserviceprovider_s
-+EXPORT_LIBRARY = 1
- MOZILLA_INTERNAL_API = 1
-
- REQUIRES = xpcom \
-Index: mozilla/security/coreconf/Linux.mk
-===================================================================
---- mozilla.orig/security/coreconf/Linux.mk 2006-02-03 23:26:36.000000000 +0100
-+++ mozilla/security/coreconf/Linux.mk 2007-05-10 12:11:23.000000000 +0200
-@@ -117,6 +117,10 @@
- OS_REL_CFLAGS = -DLINUX1_2 -D_XOPEN_SOURCE
- CPU_ARCH = mips
- else
-+ifeq ($(OS_TEST),arm)
-+ OS_REL_CFLAGS = -DLINUX1_2 -D_XOPEN_SOURCE
-+ CPU_ARCH = arm
-+else
- OS_REL_CFLAGS = -DLINUX1_2 -Di386 -D_XOPEN_SOURCE
- CPU_ARCH = x86
- endif
-@@ -133,6 +137,7 @@
- endif
- endif
- endif
-+endif
-
-
- LIBC_TAG = _glibc
-Index: mozilla/security/coreconf/arch.mk
-===================================================================
---- mozilla.orig/security/coreconf/arch.mk 2006-02-03 23:26:36.000000000 +0100
-+++ mozilla/security/coreconf/arch.mk 2007-05-10 12:11:24.000000000 +0200
-@@ -60,18 +60,14 @@
- 64BIT_TAG=
- endif
-
--OS_ARCH := $(subst /,_,$(shell uname -s))
-+OS_ARCH := Linux
-
- #
- # Attempt to differentiate between sparc and x86 Solaris
- #
-
--OS_TEST := $(shell uname -m)
--ifeq ($(OS_TEST),i86pc)
-- OS_RELEASE := $(shell uname -r)_$(OS_TEST)
--else
-- OS_RELEASE := $(shell uname -r)
--endif
-+OS_TEST := arm
-+OS_RELEASE := 2.6
-
- #
- # Force the IRIX64 machines to use IRIX.
-Index: mozilla/toolkit/components/build/Makefile.in
-===================================================================
---- mozilla.orig/toolkit/components/build/Makefile.in 2006-07-13 22:08:29.000000000 +0200
-+++ mozilla/toolkit/components/build/Makefile.in 2007-05-10 12:11:27.000000000 +0200
-@@ -112,7 +112,6 @@
- $(NULL)
-
- SHARED_LIBRARY_LIBS = \
-- ../startup/src/$(LIB_PREFIX)appstartup_s.$(LIB_SUFFIX) \
- $(NULL)
-
- ifdef MOZ_XPINSTALL
-Index: mozilla/toolkit/components/startup/src/Makefile.in
-===================================================================
---- mozilla.orig/toolkit/components/startup/src/Makefile.in 2005-07-27 22:42:44.000000000 +0200
-+++ mozilla/toolkit/components/startup/src/Makefile.in 2007-05-10 12:11:27.000000000 +0200
-@@ -43,6 +43,7 @@
-
- MODULE = toolkitcomps
- LIBRARY_NAME = appstartup_s
-+EXPORT_LIBRARY = 1
- FORCE_STATIC_LIB = 1
- LIBXUL_LIBRARY = 1
-
-Index: mozilla/toolkit/xre/Makefile.in
-===================================================================
---- mozilla.orig/toolkit/xre/Makefile.in 2007-02-06 08:13:20.000000000 +0100
-+++ mozilla/toolkit/xre/Makefile.in 2007-05-10 12:11:27.000000000 +0200
-@@ -45,7 +45,6 @@
-
- MODULE = xulapp
- LIBRARY_NAME = xulapp_s
--EXPORT_LIBRARY = 1
- LIBXUL_LIBRARY = 1
-
- REQUIRES = \
-@@ -180,14 +179,6 @@
-
- include $(topsrcdir)/config/rules.mk
-
--ifdef BUILD_STATIC_LIBS
--export::
-- @$(PERL) -I$(MOZILLA_DIR)/config $(MOZILLA_DIR)/config/build-list.pl $(FINAL_LINK_COMP_NAMES) Apprunner
--# embedding/browser/gtk/src/Makefile.in sucks! we need to add an empty line to
--# FINAL_LINK_COMPS to keep the two lists in sync :-(
-- @$(PERL) -I$(MOZILLA_DIR)/config $(MOZILLA_DIR)/config/build-list.pl $(FINAL_LINK_COMPS) ""
--endif
--
- LOCAL_INCLUDES += \
- -I$(srcdir) \
- -I$(topsrcdir)/xpfe/bootstrap \
-Index: mozilla/xpcom/build/Makefile.in
-===================================================================
---- mozilla.orig/xpcom/build/Makefile.in 2006-01-29 17:51:02.000000000 +0100
-+++ mozilla/xpcom/build/Makefile.in 2007-05-10 12:11:27.000000000 +0200
-@@ -61,7 +61,7 @@
- endif
-
- # Do not set EXPORT_LIBRARY as we do not want xpcom in the static libs list
--#EXPORT_LIBRARY = 1
-+EXPORT_LIBRARY = 1
- GRE_MODULE = 1
- MOZILLA_INTERNAL_API = 1
-
-Index: mozilla/xpcom/reflect/xptcall/src/md/unix/xptcstubs_arm.cpp
-===================================================================
---- mozilla.orig/xpcom/reflect/xptcall/src/md/unix/xptcstubs_arm.cpp 2004-04-18 16:18:18.000000000 +0200
-+++ mozilla/xpcom/reflect/xptcall/src/md/unix/xptcstubs_arm.cpp 2007-05-10 12:11:27.000000000 +0200
-@@ -45,9 +45,9 @@
- #endif
-
- /* Specify explicitly a symbol for this function, don't try to guess the c++ mangled symbol. */
--static nsresult PrepareAndDispatch(nsXPTCStubBase* self, uint32 methodIndex, PRUint32* args) asm("_PrepareAndDispatch");
-+nsresult PrepareAndDispatch(nsXPTCStubBase* self, uint32 methodIndex, PRUint32* args) asm("_PrepareAndDispatch");
-
--static nsresult
-+nsresult
- PrepareAndDispatch(nsXPTCStubBase* self, uint32 methodIndex, PRUint32* args)
- {
- #define PARAM_BUFFER_COUNT 16
-Index: mozilla/xpfe/browser/src/Makefile.in
-===================================================================
---- mozilla.orig/xpfe/browser/src/Makefile.in 2005-03-18 22:23:45.000000000 +0100
-+++ mozilla/xpfe/browser/src/Makefile.in 2007-05-10 12:11:27.000000000 +0200
-@@ -44,6 +44,7 @@
-
- MODULE = browser
- LIBRARY_NAME = mozbrwsr_s
-+EXPORT_LIBRARY = 1
- FORCE_STATIC_LIB = 1
- LIBXUL_LIBRARY = 1
- MODULE_NAME = nsBrowserModule
-Index: mozilla/xpfe/components/build/Makefile.in
-===================================================================
---- mozilla.orig/xpfe/components/build/Makefile.in 2005-09-27 02:15:25.000000000 +0200
-+++ mozilla/xpfe/components/build/Makefile.in 2007-05-10 12:11:27.000000000 +0200
-@@ -44,7 +44,6 @@
-
- MODULE = appcomps
- LIBRARY_NAME = appcomps
--EXPORT_LIBRARY = 1
- IS_COMPONENT = 1
- MODULE_NAME = application
- LIBXUL_LIBRARY = 1
-Index: mozilla/xpfe/components/filepicker/src/Makefile.in
-===================================================================
---- mozilla.orig/xpfe/components/filepicker/src/Makefile.in 2006-05-22 18:29:32.000000000 +0200
-+++ mozilla/xpfe/components/filepicker/src/Makefile.in 2007-05-10 12:11:27.000000000 +0200
-@@ -47,7 +47,6 @@
- MODULE = filepicker
- LIBRARY_NAME = fileview
- SHORT_LIBNAME = fileview
--EXPORT_LIBRARY = 1
- IS_COMPONENT = 1
- MODULE_NAME = nsFileViewModule
- MOZILLA_INTERNAL_API = 1
-Index: mozilla/xpfe/components/find/src/Makefile.in
-===================================================================
---- mozilla.orig/xpfe/components/find/src/Makefile.in 2005-03-18 22:23:46.000000000 +0100
-+++ mozilla/xpfe/components/find/src/Makefile.in 2007-05-10 12:11:27.000000000 +0200
-@@ -45,7 +45,6 @@
- MODULE = appcomps
- XPIDL_MODULE = mozfind
- LIBRARY_NAME = mozfind
--EXPORT_LIBRARY = 1
- IS_COMPONENT = 1
- MODULE_NAME = nsFindComponent
- LIBXUL_LIBRARY = 1
diff --git a/meta-extras/packages/mozilla/minimo/minimo.png b/meta-extras/packages/mozilla/minimo/minimo.png
deleted file mode 100644
index f8b2e2192..000000000
--- a/meta-extras/packages/mozilla/minimo/minimo.png
+++ /dev/null
Binary files differ
diff --git a/meta-extras/packages/mozilla/minimo/mozconfig b/meta-extras/packages/mozilla/minimo/mozconfig
deleted file mode 100644
index 393981e9f..000000000
--- a/meta-extras/packages/mozilla/minimo/mozconfig
+++ /dev/null
@@ -1,36 +0,0 @@
-# mozilla/configure: Features and packages:
-
-ac_add_options --enable-application=minimo
-ac_add_options --enable-default-toolkit=gtk2
-ac_add_options --disable-freetype2
-ac_add_options --enable-xft
-ac_add_options --disable-postscript
-ac_add_options --disable-xprint
-ac_add_options --disable-gnomevfs
-ac_add_options --disable-gnomeui
-ac_add_options --disable-jsd
-ac_add_options --disable-plugins
-ac_add_options --disable-view-source
-ac_add_options --disable-accessibility
-ac_add_options --disable-xpinstall
-ac_add_options --enable-single-profile
-ac_add_options --disable-jsloader
-ac_add_options --disable-printing
-ac_add_options --enable-native-uconv
-ac_add_options --enable-plaintext-editor-only
-ac_add_options --disable-xpcom-obsolete
-ac_add_options --disable-pref-extensions
-ac_add_options --disable-extensions
-ac_add_options --enable-image-decoders=png,gif,jpeg
-ac_add_options --disable-mathml
-ac_add_options --disable-installer
-ac_add_options --disable-updater
-ac_add_options --disable-tests
-ac_add_options --enable-optimize=-Os
-ac_add_options --disable-logging
-ac_add_options --enable-strip
-ac_add_options --enable-elf-dynstr-gc
-ac_add_options --disable-shared
-ac_add_options --enable-static
-ac_add_options --disable-profilesharing
-ac_add_options --disable-profilelocking
diff --git a/meta-extras/packages/mozilla/minimo_cvs.bb b/meta-extras/packages/mozilla/minimo_cvs.bb
deleted file mode 100644
index 5eec96d14..000000000
--- a/meta-extras/packages/mozilla/minimo_cvs.bb
+++ /dev/null
@@ -1,153 +0,0 @@
-DESCRIPTION = "A minimal version of the Mozilla web browser for mobile devices"
-SECTION = "x11/network"
-LICENSE = "MPL/GPL/LGPL"
-HOMEPAGE = "http://www.mozilla.org/projects/minimo/"
-PRIORITY = "optional"
-
-DEPENDS = "libxrender xt xft fontconfig freetype libidl dbus-glib pango atk gtk+ libidl-native"
-
-CVSSVR = "cvs-mirror.mozilla.org"
-BRTAG = "MOZILLA_1_8_BRANCH"
-MOZDATE = "20070510"
-
-PV = "0.02+cvs${MOZDATE}"
-PR = "r3"
-
-SRC_URI = "cvs://anonymous@${CVSSVR}/cvsroot;module=mozilla;tag=${BRTAG};date=${MOZDATE} \
- file://minimo.patch;patch=1 \
- file://bug-322806.diff;patch=1 \
- file://mozconfig \
- file://minimo \
- file://eabi-fix.patch;patch=1 \
- file://eabi-fix2.patch;patch=1 \
- file://eabi-fix3.patch;patch=1 \
- file://minimo.desktop \
- file://minimo.png"
-
-inherit autotools
-
-S = "${WORKDIR}/mozilla"
-
-export MOZCONFIG = "${WORKDIR}/mozconfig"
-
-export CROSS_COMPILE="1"
-export ac_cv_prog_HOST_CC="${BUILD_CC}"
-export ac_cv_prog_HOST_CFLAGS="${BUILD_CFLAGS}"
-export ac_cv_prog_HOST_CXX="${BUILD_CXX}"
-export ac_cv_prog_HOST_CXXFLAGS="${BUILD_CXXFLAGS}"
-export HOST_LIBIDL_CONFIG = "${STAGING_BINDIR_NATIVE}/libIDL-config-2"
-
-mozdir="${libdir}/mozilla-minimo"
-
-EXTRA_OECONF += "--build=${BUILD_SYS} --host=${BUILD_SYS} --target=${TARGET_SYS} "
-
-do_configure() {
- cd ${S}
- oe_runmake -f client.mk CONFIGURE_ARGS="${EXTRA_OECONF}" configure
- sed -i s:${TARGET_PREFIX}strip:echo:g config/autoconf.mk
-}
-
-do_compile() {
- cd ${S}
- oe_runmake -f client.mk build
-}
-
-do_install() {
- cd ${WORKDIR}
-
- install -d ${D}${bindir}
- install -m 0755 minimo ${D}${bindir}
-
- install -d ${D}${datadir}/applications
- install -m 0644 minimo.desktop ${D}${datadir}/applications
-
- install -d ${D}/${datadir}/pixmaps
- install -m 0644 minimo.png ${D}${datadir}/pixmaps
-
- cd ${S}
-
- ./minimo/config/linux_package.sh ${S} ${S}/minimo/config
-
- cd dist/minimo
-
- install -d ${D}${mozdir}
- install -m 0755 minimo ${D}${mozdir}
- install -m 0755 libfreebl3.so ${D}${mozdir}
- install -m 0755 libnspr4.so ${D}${mozdir}
- install -m 0755 libnss3.so ${D}${mozdir}
- install -m 0755 libnssckbi.so ${D}${mozdir}
- install -m 0755 libplc4.so ${D}${mozdir}
- install -m 0755 libplds4.so ${D}${mozdir}
- install -m 0755 libsmime3.so ${D}${mozdir}
- install -m 0755 libsoftokn3.so ${D}${mozdir}
- install -m 0755 libssl3.so ${D}${mozdir}
-
- install -d ${D}${mozdir}/chrome
- install -m 0644 chrome/classic.jar ${D}${mozdir}/chrome
- install -m 0644 chrome/classic.manifest ${D}${mozdir}/chrome
- install -m 0644 chrome/en-US.jar ${D}${mozdir}/chrome
- install -m 0644 chrome/en-US.manifest ${D}${mozdir}/chrome
- install -m 0644 chrome/minimo-skin-vga.jar ${D}${mozdir}/chrome
- install -m 0644 chrome/minimo-skin-vga.manifest ${D}${mozdir}/chrome
- install -m 0644 chrome/minimo-skin.jar ${D}${mozdir}/chrome
- install -m 0644 chrome/minimo-skin.manifest ${D}${mozdir}/chrome
- install -m 0644 chrome/minimo.jar ${D}${mozdir}/chrome
- install -m 0644 chrome/minimo.manifest ${D}${mozdir}/chrome
- install -m 0644 chrome/pippki.jar ${D}${mozdir}/chrome
- install -m 0644 chrome/pippki.manifest ${D}${mozdir}/chrome
- install -m 0644 chrome/toolkit.jar ${D}${mozdir}/chrome
- install -m 0644 chrome/toolkit.manifest ${D}${mozdir}/chrome
-
- install -d ${D}${mozdir}/components
- install -m 0644 components/all.xpt ${D}${mozdir}/components
- install -m 0644 components/nsHelperAppDlg.js ${D}${mozdir}/components
- install -m 0644 components/nsProgressDialog.js ${D}${mozdir}/components
-
- install -d ${D}${mozdir}/greprefs
- install -m 0644 greprefs/all.js ${D}${mozdir}/greprefs
- install -m 0644 greprefs/security-prefs.js ${D}${mozdir}/greprefs
-
- install -d ${D}${mozdir}/res
- install -m 0644 res/forms.css ${D}${mozdir}/res
- install -m 0644 res/html.css ${D}${mozdir}/res
- install -m 0644 res/quirk.css ${D}${mozdir}/res
- install -m 0644 res/ua.css ${D}${mozdir}/res
- install -m 0644 res/arrow.gif ${D}${mozdir}/res
- install -m 0644 res/arrowd.gif ${D}${mozdir}/res
- install -m 0644 res/broken-image.gif ${D}${mozdir}/res
- install -m 0644 res/loading-image.gif ${D}${mozdir}/res
- install -m 0644 res/charsetData.properties ${D}${mozdir}/res
- install -m 0644 res/charsetalias.properties ${D}${mozdir}/res
- install -m 0644 res/langGroups.properties ${D}${mozdir}/res
- install -m 0644 res/language.properties ${D}${mozdir}/res
- install -m 0644 res/unixcharset.properties ${D}${mozdir}/res
-
- install -d ${D}${mozdir}/res/dtd
- install -m 0644 res/dtd/xhtml11.dtd ${D}${mozdir}/res/dtd
-
- install -d ${D}${mozdir}/res/entityTables
- install -m 0644 res/entityTables/html40Latin1.properties ${D}${mozdir}/res/entityTables
- install -m 0644 res/entityTables/html40Special.properties ${D}${mozdir}/res/entityTables
- install -m 0644 res/entityTables/html40Symbols.properties ${D}${mozdir}/res/entityTables
- install -m 0644 res/entityTables/htmlEntityVersions.properties ${D}${mozdir}/res/entityTables
- install -m 0644 res/entityTables/transliterate.properties ${D}${mozdir}/res/entityTables
-
- install -d ${D}${mozdir}/res/fonts
- install -m 0644 res/fonts/fontEncoding.properties ${D}${mozdir}/res/fonts
- install -m 0644 res/fonts/pangoFontEncoding.properties ${D}${mozdir}/res/fonts
-
- install -d ${D}${mozdir}/res/html
- install -m 0644 res/html/gopher-audio.gif ${D}${mozdir}/res/html
- install -m 0644 res/html/gopher-binary.gif ${D}${mozdir}/res/html
- install -m 0644 res/html/gopher-find.gif ${D}${mozdir}/res/html
- install -m 0644 res/html/gopher-image.gif ${D}${mozdir}/res/html
- install -m 0644 res/html/gopher-menu.gif ${D}${mozdir}/res/html
- install -m 0644 res/html/gopher-movie.gif ${D}${mozdir}/res/html
- install -m 0644 res/html/gopher-sound.gif ${D}${mozdir}/res/html
- install -m 0644 res/html/gopher-telnet.gif ${D}${mozdir}/res/html
- install -m 0644 res/html/gopher-text.gif ${D}${mozdir}/res/html
- install -m 0644 res/html/gopher-unknown.gif ${D}${mozdir}/res/html
-}
-
-FILES_${PN}-dbg += "${libdir}/mozilla-minimo/.debug*"
-FILES_${PN} += "${mozdir}"
diff --git a/meta-extras/packages/networkmanager/files/70NetworkManagerApplet.shbg b/meta-extras/packages/networkmanager/files/70NetworkManagerApplet.shbg
deleted file mode 100644
index 8858b3e7c..000000000
--- a/meta-extras/packages/networkmanager/files/70NetworkManagerApplet.shbg
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-# Wait for the desktop to say its finished loading
-dbus-wait org.matchbox_project.desktop Loaded
-exec /usr/bin/nm-applet
diff --git a/meta-extras/packages/networkmanager/files/99_networkmanager b/meta-extras/packages/networkmanager/files/99_networkmanager
deleted file mode 100644
index 20cbcc1bc..000000000
--- a/meta-extras/packages/networkmanager/files/99_networkmanager
+++ /dev/null
@@ -1 +0,0 @@
-d root root 0700 /var/run/NetworkManager none
diff --git a/meta-extras/packages/networkmanager/files/NetworkManager b/meta-extras/packages/networkmanager/files/NetworkManager
deleted file mode 100644
index 4522e0107..000000000
--- a/meta-extras/packages/networkmanager/files/NetworkManager
+++ /dev/null
@@ -1,43 +0,0 @@
-#!/bin/sh
-#
-### BEGIN INIT INFO
-# Provides: NetworkManager
-# Required-Start: $remote_fs dbus hal
-# Required-Stop: $remote_fs dbus hal
-# Should-Start: $syslog
-# Should-Stop: $syslog
-# Default-Start: 2 3 4 5
-# Default-Stop: 0 1 6
-# Short-Description: network connection manager
-# Description: Daemon for automatically switching network
-# connections to the best available connection.
-### END INIT INFO
-
-. /etc/profile
-
-case $1 in
- 'start')
- echo -n "Starting NetworkManager daemon: NetworkManager"
- /usr/sbin/NetworkManager
- /usr/sbin/NetworkManagerDispatcher
- /usr/sbin/wpa_supplicant -u &
- echo "."
- ;;
-
- 'stop')
- echo -n "Stopping NetworkManager daemon: NetworkManager"
- kill `ps |grep /usr/sbin/NetworkManagerDispatcher | grep -v grep | cut "-d " -f2`
- kill `ps |grep /usr/sbin/NetworkManager | grep -v grep | cut "-d " -f2`
- kill `ps |grep /usr/sbin/wpa_supplicant | grep -v grep | cut "-d " -f2`
- echo "."
- ;;
-
- 'restart')
- $0 stop
- $0 start
- ;;
-
- *)
- echo "Usage: $0 { start | stop | restart }"
- ;;
-esac
diff --git a/meta-extras/packages/networkmanager/files/allow-disabling.patch b/meta-extras/packages/networkmanager/files/allow-disabling.patch
deleted file mode 100644
index 10730e9fe..000000000
--- a/meta-extras/packages/networkmanager/files/allow-disabling.patch
+++ /dev/null
@@ -1,45 +0,0 @@
-Allow interfaces to be ignored by networkmanager by creation of a
-/etc/network/nm-disabled-INTERFACENAME file.
-
-RP - 16/7/2008
-
-Index: trunk/src/backends/NetworkManagerDebian.c
-===================================================================
---- trunk.orig/src/backends/NetworkManagerDebian.c 2008-07-15 19:23:11.000000000 +0100
-+++ trunk/src/backends/NetworkManagerDebian.c 2008-07-15 19:37:05.000000000 +0100
-@@ -29,6 +29,7 @@
-
- #include <stdio.h>
- #include <sys/types.h>
-+#include <sys/stat.h>
- #include <signal.h>
- #include <arpa/inet.h>
- #include "NetworkManagerGeneric.h"
-@@ -374,12 +375,25 @@
- /*
- * nm_system_device_get_disabled
- *
-- * Return whether the distro-specific system config tells us to use
-- * dhcp for this device.
-+ * Return whether the distro-specific system config tells us to interact
-+ * with this device.
- *
- */
- gboolean nm_system_device_get_disabled (NMDevice *dev)
- {
-+ struct stat statbuf;
-+ gchar *filepath;
-+
-+ g_return_val_if_fail (dev != NULL, FALSE);
-+
-+ filepath = g_strdup_printf (SYSCONFDIR"/network/nm-disabled-%s", nm_device_get_iface (dev));
-+
-+ if (stat(filepath, &statbuf) == 0) {
-+ g_free(filepath);
-+ return TRUE;
-+ }
-+
-+ g_free(filepath);
- return FALSE;
- }
-
diff --git a/meta-extras/packages/networkmanager/files/applet-no-animation.patch b/meta-extras/packages/networkmanager/files/applet-no-animation.patch
deleted file mode 100644
index d437fd0fc..000000000
--- a/meta-extras/packages/networkmanager/files/applet-no-animation.patch
+++ /dev/null
@@ -1,234 +0,0 @@
-Index: trunk/src/applet.c
-===================================================================
---- trunk.orig/src/applet.c 2008-02-06 20:30:04.000000000 +0000
-+++ trunk/src/applet.c 2008-02-06 20:46:59.000000000 +0000
-@@ -111,8 +111,6 @@
-
- static void nma_init (NMApplet *applet)
- {
-- applet->animation_id = 0;
-- applet->animation_step = 0;
- applet->passphrase_dialog = NULL;
- applet->icon_theme = NULL;
- #ifdef ENABLE_NOTIFY
-@@ -1006,20 +1004,6 @@
- }
- }
-
--static gboolean
--vpn_animation_timeout (gpointer data)
--{
-- NMApplet *applet = NM_APPLET (data);
--
-- foo_set_icon (applet, applet->vpn_connecting_icons[applet->animation_step], ICON_LAYER_VPN);
--
-- applet->animation_step++;
-- if (applet->animation_step >= NUM_VPN_CONNECTING_FRAMES)
-- applet->animation_step = 0;
--
-- return TRUE;
--}
--
- static void
- vpn_connection_state_changed (NMVPNConnection *connection,
- NMVPNConnectionState state,
-@@ -1030,10 +1014,6 @@
-
- switch (state) {
- case NM_VPN_CONNECTION_STATE_ACTIVATED:
-- if (applet->animation_id) {
-- g_source_remove (applet->animation_id);
-- applet->animation_id = 0;
-- }
- foo_set_icon (applet, applet->vpn_lock_icon, ICON_LAYER_VPN);
- // vpn_connection_info_set_last_attempt_success (info, TRUE);
- break;
-@@ -1041,10 +1021,7 @@
- case NM_VPN_CONNECTION_STATE_NEED_AUTH:
- case NM_VPN_CONNECTION_STATE_CONNECT:
- case NM_VPN_CONNECTION_STATE_IP_CONFIG_GET:
-- if (applet->animation_id == 0) {
-- applet->animation_step = 0;
-- applet->animation_id = g_timeout_add (100, vpn_animation_timeout, applet);
-- }
-+ foo_set_icon (applet, applet->network_connecting_icon, ICON_LAYER_VPN);
- break;
- case NM_VPN_CONNECTION_STATE_FAILED:
- // vpn_connection_info_set_last_attempt_success (info, FALSE);
-@@ -1053,10 +1030,6 @@
- g_hash_table_remove (applet->vpn_connections, nm_vpn_connection_get_name (connection));
- /* Fall through */
- default:
-- if (applet->animation_id) {
-- g_source_remove (applet->animation_id);
-- applet->animation_id = 0;
-- }
- foo_set_icon (applet, NULL, ICON_LAYER_VPN);
- break;
- }
-@@ -2295,45 +2268,6 @@
- } FooAnimationTimeoutInfo;
-
- static void
--foo_animation_timeout_info_destroy (gpointer data)
--{
-- g_slice_free (FooAnimationTimeoutInfo, data);
--}
--
--static gboolean
--foo_animation_timeout (gpointer data)
--{
-- FooAnimationTimeoutInfo *info = (FooAnimationTimeoutInfo *) data;
-- NMApplet *applet = info->applet;
-- int stage = -1;
--
-- switch (info->state) {
-- case NM_DEVICE_STATE_PREPARE:
-- stage = 0;
-- break;
-- case NM_DEVICE_STATE_CONFIG:
-- stage = 1;
-- break;
-- case NM_DEVICE_STATE_IP_CONFIG:
-- stage = 2;
-- break;
-- default:
-- break;
-- }
--
-- if (stage >= 0)
-- foo_set_icon (applet,
-- applet->network_connecting_icons[stage][applet->animation_step],
-- ICON_LAYER_LINK);
--
-- applet->animation_step++;
-- if (applet->animation_step >= NUM_CONNECTING_FRAMES)
-- applet->animation_step = 0;
--
-- return TRUE;
--}
--
--static void
- foo_common_state_change (NMDevice *device, NMDeviceState state, NMApplet *applet)
- {
- FooAnimationTimeoutInfo *info;
-@@ -2345,11 +2279,7 @@
- info = g_slice_new (FooAnimationTimeoutInfo);
- info->applet = applet;
- info->state = state;
-- applet->animation_step = 0;
-- applet->animation_id = g_timeout_add_full (G_PRIORITY_DEFAULT_IDLE,
-- 100, foo_animation_timeout,
-- info,
-- foo_animation_timeout_info_destroy);
-+ foo_set_icon (applet, applet->network_connecting_icon, ICON_LAYER_LINK);
- break;
- case NM_DEVICE_STATE_ACTIVATED:
- break;
-@@ -2602,12 +2532,6 @@
- NMApplet *applet = NM_APPLET (user_data);
- gboolean handled = FALSE;
-
-- applet->animation_step = 0;
-- if (applet->animation_id) {
-- g_source_remove (applet->animation_id);
-- applet->animation_id = 0;
-- }
--
- clear_active_connections (applet);
- applet->active_connections = nm_client_get_active_connections (applet->nm_client);
-
-@@ -3166,17 +3090,8 @@
- if (applet->wireless_100_icon)
- g_object_unref (applet->wireless_100_icon);
-
-- for (i = 0; i < NUM_CONNECTING_STAGES; i++) {
-- int j;
--
-- for (j = 0; j < NUM_CONNECTING_FRAMES; j++)
-- if (applet->network_connecting_icons[i][j])
-- g_object_unref (applet->network_connecting_icons[i][j]);
-- }
--
-- for (i = 0; i < NUM_VPN_CONNECTING_FRAMES; i++)
-- if (applet->vpn_connecting_icons[i])
-- g_object_unref (applet->vpn_connecting_icons[i]);
-+ if (applet->network_connecting_icon)
-+ g_object_unref (applet->network_connecting_icon);
-
- nma_icons_zero (applet);
- }
-@@ -3196,16 +3111,7 @@
- applet->wireless_75_icon = NULL;
- applet->wireless_100_icon = NULL;
-
-- for (i = 0; i < NUM_CONNECTING_STAGES; i++)
-- {
-- int j;
--
-- for (j = 0; j < NUM_CONNECTING_FRAMES; j++)
-- applet->network_connecting_icons[i][j] = NULL;
-- }
--
-- for (i = 0; i < NUM_VPN_CONNECTING_FRAMES; i++)
-- applet->vpn_connecting_icons[i] = NULL;
-+ applet->network_connecting_icon = NULL;
-
- applet->icons_loaded = FALSE;
- }
-@@ -3257,28 +3163,7 @@
- ICON_LOAD(applet->wireless_75_icon, "nm-signal-75");
- ICON_LOAD(applet->wireless_100_icon, "nm-signal-100");
-
-- for (i = 0; i < NUM_CONNECTING_STAGES; i++)
-- {
-- int j;
--
-- for (j = 0; j < NUM_CONNECTING_FRAMES; j++)
-- {
-- char *name;
--
-- name = g_strdup_printf ("nm-stage%02d-connecting%02d", i+1, j+1);
-- ICON_LOAD(applet->network_connecting_icons[i][j], name);
-- g_free (name);
-- }
-- }
--
-- for (i = 0; i < NUM_VPN_CONNECTING_FRAMES; i++)
-- {
-- char *name;
--
-- name = g_strdup_printf ("nm-vpn-connecting%02d", i+1);
-- ICON_LOAD(applet->vpn_connecting_icons[i], name);
-- g_free (name);
-- }
-+ ICON_LOAD(applet->network_connecting_icon, "nm-connecting");
-
- success = TRUE;
-
-Index: trunk/src/applet.h
-===================================================================
---- trunk.orig/src/applet.h 2008-02-06 20:30:06.000000000 +0000
-+++ trunk/src/applet.h 2008-02-06 20:46:05.000000000 +0000
-@@ -111,20 +111,12 @@
- GdkPixbuf * wireless_50_icon;
- GdkPixbuf * wireless_75_icon;
- GdkPixbuf * wireless_100_icon;
--#define NUM_CONNECTING_STAGES 3
--#define NUM_CONNECTING_FRAMES 11
-- GdkPixbuf * network_connecting_icons[NUM_CONNECTING_STAGES][NUM_CONNECTING_FRAMES];
--#define NUM_VPN_CONNECTING_FRAMES 14
-- GdkPixbuf * vpn_connecting_icons[NUM_VPN_CONNECTING_FRAMES];
-+ GdkPixbuf * network_connecting_icon;
- GdkPixbuf * vpn_lock_icon;
-
- /* Active status icon pixbufs */
- GdkPixbuf * icon_layers[ICON_LAYER_MAX + 1];
-
-- /* Animation stuff */
-- int animation_step;
-- guint animation_id;
--
- /* Direct UI elements */
- #ifdef HAVE_STATUS_ICON
- GtkStatusIcon * status_icon;
diff --git a/meta-extras/packages/networkmanager/files/applet-no-gnome.diff b/meta-extras/packages/networkmanager/files/applet-no-gnome.diff
deleted file mode 100644
index e098e8c9e..000000000
--- a/meta-extras/packages/networkmanager/files/applet-no-gnome.diff
+++ /dev/null
@@ -1,59 +0,0 @@
----
- configure.ac | 3 +--
- src/main.c | 8 ++++++++
- 2 files changed, 9 insertions(+), 2 deletions(-)
-
-Index: src/main.c
-===================================================================
---- src/main.c.orig 2007-09-26 10:39:16.000000000 +0100
-+++ src/main.c 2007-09-26 10:39:37.000000000 +0100
-@@ -27,7 +27,9 @@
-
- #include <string.h>
- #include <gtk/gtk.h>
-+#if 0
- #include <libgnomeui/libgnomeui.h>
-+#endif
- #include <glib/gi18n-lib.h>
-
- #include "applet.h"
-@@ -36,11 +38,15 @@
- int main (int argc, char *argv[])
- {
- NMApplet * applet;
-+#if 0
- GnomeProgram * program;
-
- program = gnome_program_init ("nm-applet", VERSION, LIBGNOMEUI_MODULE,
- argc, argv,
- GNOME_PARAM_NONE, GNOME_PARAM_NONE);
-+#else
-+ gtk_init (&argc, &argv);
-+#endif
-
- bindtextdomain (GETTEXT_PACKAGE, GNOMELOCALEDIR);
- bind_textdomain_codeset (GETTEXT_PACKAGE, "UTF-8");
-@@ -53,7 +59,9 @@ int main (int argc, char *argv[])
- gtk_main ();
-
- g_object_unref (applet);
-+#if 0
- g_object_unref (program);
-+#endif
-
- exit (0);
- }
-Index: configure.ac
-===================================================================
---- configure.ac.orig 2007-09-26 10:39:30.000000000 +0100
-+++ configure.ac 2007-09-26 10:39:37.000000000 +0100
-@@ -65,8 +65,7 @@ PKG_CHECK_MODULES(NMA,
- gtk+-2.0 >= 2.6
- libglade-2.0
- gconf-2.0
-- gnome-keyring-1
-- libgnomeui-2.0])
-+ gnome-keyring-1])
-
- ##### Find out the version of DBUS we're using
- dbus_version=`pkg-config --modversion dbus-1`
diff --git a/meta-extras/packages/networkmanager/files/libnlfix.patch b/meta-extras/packages/networkmanager/files/libnlfix.patch
deleted file mode 100644
index 69f4922ea..000000000
--- a/meta-extras/packages/networkmanager/files/libnlfix.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-Index: trunk/src/nm-netlink.c
-===================================================================
---- trunk.orig/src/nm-netlink.c 2007-09-25 22:37:50.000000000 +0100
-+++ trunk/src/nm-netlink.c 2009-05-16 12:44:26.000000000 +0100
-@@ -52,16 +52,20 @@
- struct nl_handle *
- nm_netlink_get_default_handle (void)
- {
-+ struct nl_cb *cb;
-+
- if (def_nl_handle)
- return def_nl_handle;
-
-- def_nl_handle = nl_handle_alloc_nondefault (NL_CB_VERBOSE);
-- g_assert (def_nl_handle);
-+ cb = nl_cb_alloc(NL_CB_VERBOSE);
-+ def_nl_handle = nl_handle_alloc_cb (cb);
-+ if (!def_nl_handle) {
-+ nm_warning ("couldn't allocate netlink handle.");
-+ return NULL;
-+ }
-
-- nl_handle_set_pid (def_nl_handle, (pthread_self () << 16 | getpid ()));
- if (nl_connect (def_nl_handle, NETLINK_ROUTE) < 0) {
- nm_error ("couldn't connect to netlink: %s", nl_geterror ());
-- nl_handle_destroy (def_nl_handle);
- return NULL;
- }
-
diff --git a/meta-extras/packages/networkmanager/files/makefile-fix.patch b/meta-extras/packages/networkmanager/files/makefile-fix.patch
deleted file mode 100644
index 5fbbf3a74..000000000
--- a/meta-extras/packages/networkmanager/files/makefile-fix.patch
+++ /dev/null
@@ -1,17 +0,0 @@
-This line causes libtool to try and create a program which fails since there is no
-main(). This is hidden with libtool 1.5.10 but appears with 2.2.2.
-
-RP - 14/4/08
-
-Index: trunk/src/ppp-manager/Makefile.am
-===================================================================
---- trunk.orig/src/ppp-manager/Makefile.am 2008-04-14 23:00:54.000000000 +0100
-+++ trunk/src/ppp-manager/Makefile.am 2008-04-14 23:01:24.000000000 +0100
-@@ -25,7 +25,6 @@
- $(top_builddir)/src/marshallers/libmarshallers.la
-
- nm_pppd_plugindir = $(libdir)
--nm_pppd_plugin_PROGRAMS = nm-pppd-plugin.so
-
- nm_pppd_plugin_so_SOURCES = \
- nm-pppd-plugin.c \
diff --git a/meta-extras/packages/networkmanager/files/nmutil-fix.patch b/meta-extras/packages/networkmanager/files/nmutil-fix.patch
deleted file mode 100644
index d8495bac4..000000000
--- a/meta-extras/packages/networkmanager/files/nmutil-fix.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-Index: trunk/configure.ac
-===================================================================
---- trunk.orig/configure.ac 2009-01-08 10:49:26.000000000 -0600
-+++ trunk/configure.ac 2009-01-08 12:00:34.000000000 -0600
-@@ -62,6 +62,7 @@
- glib-2.0 >= 2.10
- NetworkManager >= 0.7.0
- libnm_glib
-+ libnm-util
- gtk+-2.0 >= 2.6
- libglade-2.0
- gconf-2.0
diff --git a/meta-extras/packages/networkmanager/files/no-restarts.diff b/meta-extras/packages/networkmanager/files/no-restarts.diff
deleted file mode 100644
index 20bdf82aa..000000000
--- a/meta-extras/packages/networkmanager/files/no-restarts.diff
+++ /dev/null
@@ -1,21 +0,0 @@
-Index: src/backends/NetworkManagerDebian.c
-===================================================================
---- src/backends/NetworkManagerDebian.c (revision 2881)
-+++ src/backends/NetworkManagerDebian.c (working copy)
-@@ -204,8 +204,6 @@
- */
- void nm_system_update_dns (void)
- {
-- nm_spawn_process ("/usr/sbin/invoke-rc.d nscd restart");
--
- }
-
-
-@@ -218,7 +216,6 @@
- */
- void nm_system_restart_mdns_responder (void)
- {
-- nm_spawn_process ("/usr/bin/killall -q -USR1 mDNSResponder");
- }
-
-
diff --git a/meta-extras/packages/networkmanager/files/no_vpn.patch b/meta-extras/packages/networkmanager/files/no_vpn.patch
deleted file mode 100644
index 49423e879..000000000
--- a/meta-extras/packages/networkmanager/files/no_vpn.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-Index: trunk/src/applet.c
-===================================================================
---- trunk.orig/src/applet.c 2008-02-29 17:47:39.000000000 +0000
-+++ trunk/src/applet.c 2008-02-29 17:48:38.000000000 +0000
-@@ -1783,7 +1783,7 @@
- }
-
- nma_menu_add_devices (menu, applet);
-- nma_menu_add_vpn_submenu (menu, applet);
-+ //nma_menu_add_vpn_submenu (menu, applet);
-
- gtk_widget_show_all (applet->menu);
-
diff --git a/meta-extras/packages/networkmanager/networkmanager-applet_svn.bb b/meta-extras/packages/networkmanager/networkmanager-applet_svn.bb
deleted file mode 100644
index 1f0987011..000000000
--- a/meta-extras/packages/networkmanager/networkmanager-applet_svn.bb
+++ /dev/null
@@ -1,33 +0,0 @@
-DESCRIPTION = "GTK+ applet for NetworkManager"
-HOMEPAGE = "http://projects.gnome.org/NetworkManager/"
-BUGTRACKER = "https://bugzilla.gnome.org/buglist.cgi?query_format=specific&order=relevance+desc&bug_status=__open__&product=NetworkManager&content="
-LICENSE = "GPLv2+ & LGPLv2.1+"
-DEPENDS = "networkmanager dbus-glib libglade gconf gnome-keyring"
-#TODO DEPENDS libnotify
-RDEPENDS = "networkmanager dbus-wait"
-PR = "r7"
-
-inherit gnome gtk-icon-cache
-
-SRC_URI = "svn://svn.gnome.org/svn/network-manager-applet/;module=trunk;proto=http \
- file://applet-no-gnome.diff;patch=1;pnum=0 \
- file://applet-no-animation.patch;patch=1 \
- file://no_vpn.patch;patch=1 \
- file://nmutil-fix.patch;patch=1 \
- file://70NetworkManagerApplet.shbg"
-
-PV = "0.0+svnr${SRCREV}"
-
-S = "${WORKDIR}/trunk"
-
-FILES_${PN} += "${datadir}/nm-applet/ \
- ${datadir}/gnome-vpn-properties/ \
- ${datadir}/gnome/autostart/"
-
-do_install_append () {
- install -d ${D}${sysconfdir}/X11/Xsession.d/
- install -m 755 ${WORKDIR}/70NetworkManagerApplet.shbg ${D}${sysconfdir}/X11/Xsession.d/
-}
-
-#TODO: remove if libnotify in DEPENDS
-EXTRA_OECONF += "--without-libnotify"
diff --git a/meta-extras/packages/networkmanager/networkmanager_svn.bb b/meta-extras/packages/networkmanager/networkmanager_svn.bb
deleted file mode 100644
index 40f04e497..000000000
--- a/meta-extras/packages/networkmanager/networkmanager_svn.bb
+++ /dev/null
@@ -1,51 +0,0 @@
-DESCRIPTION = "NetworkManager"
-HOMEPAGE = "http://projects.gnome.org/NetworkManager/"
-BUGTRACKER = "https://bugzilla.gnome.org/buglist.cgi?query_format=specific&order=relevance+desc&bug_status=__open__&product=NetworkManager&content="
-SECTION = "net/misc"
-LICENSE = "GPLv2+ & LGPLv2+"
-PRIORITY = "optional"
-DEPENDS = "libnl dbus dbus-glib hal gconf-dbus wireless-tools ppp gnome-common polkit"
-RDEPENDS = "hal wpa-supplicant iproute2 dhcp-client"
-
-PV = "0.7+svnr${SRCREV}"
-PR = "r10"
-
-SRC_URI="svn://svn.gnome.org/svn/NetworkManager/;module=trunk;proto=http \
- file://no-restarts.diff;patch=1;pnum=0 \
- file://libnlfix.patch;patch=1 \
- file://makefile-fix.patch;patch=1 \
- file://allow-disabling.patch;patch=1 \
- file://NetworkManager \
- file://99_networkmanager"
-
-EXTRA_OECONF = "--with-distro=debian \
- --with-ip=/sbin/ip"
-# TODO: will /bin/ip from busybox do?
-
-S = "${WORKDIR}/trunk"
-
-inherit autotools pkgconfig update-rc.d
-
-INITSCRIPT_NAME = "NetworkManager"
-INITSCRIPT_PARAMS = "defaults 22"
-
-do_install_append () {
- install -d ${D}/etc/default/volatiles
- install -m 0644 ${WORKDIR}/99_networkmanager ${D}/etc/default/volatiles
- # This overwrites the provided init script
- install -m 0755 ${WORKDIR}/NetworkManager ${D}/etc/init.d/
- rmdir ${D}/var/run/NetworkManager
- rmdir ${D}/var/run
-}
-
-PACKAGES =+ "libnmutil libnmglib"
-
-FILES_libnmutil += "${libdir}/libnm-util.so.*"
-
-FILES_libnmglib += "${libdir}/libnm_glib.so.*"
-
-FILES_${PN}-dev = "${includedir}/* \
- ${libdir}/*.so \
- ${libdir}/*.a \
- ${libdir}/pkgconfig/*.pc \
- ${datadir}/NetworkManager/gdb-cmd"
diff --git a/meta-extras/packages/notification-daemon/files/no-wnck-sexy.patch b/meta-extras/packages/notification-daemon/files/no-wnck-sexy.patch
deleted file mode 100644
index 3367292e1..000000000
--- a/meta-extras/packages/notification-daemon/files/no-wnck-sexy.patch
+++ /dev/null
@@ -1,98 +0,0 @@
-diff -ur notification-daemon-0.3.7.orig/configure.ac notification-daemon-0.3.7/configure.ac
---- notification-daemon-0.3.7.orig/configure.ac 2007-02-28 05:16:16.000000000 +0000
-+++ notification-daemon-0.3.7/configure.ac 2008-01-18 11:29:28.000000000 +0000
-@@ -82,9 +82,7 @@
- glib-2.0 >= $REQ_GLIB_VERSION, \
- dbus-1 >= $REQ_DBUS_VERSION, \
- dbus-glib-1 >= $REQ_DBUS_VERSION, \
-- libsexy >= $REQ_SEXY_VERSION, \
-- gconf-2.0, \
-- libwnck-1.0 \
-+ gconf-2.0 \
- "
- PKG_CHECK_MODULES(NOTIFICATION_DAEMON, $pkg_modules)
- AC_SUBST(NOTIFICATION_DAEMON_CFLAGS)
-Only in notification-daemon-0.3.7/: configure.ac~
-Only in notification-daemon-0.3.7.orig/: debian
-diff -ur notification-daemon-0.3.7.orig/src/daemon/daemon.c notification-daemon-0.3.7/src/daemon/daemon.c
---- notification-daemon-0.3.7.orig/src/daemon/daemon.c 2007-02-15 10:47:09.000000000 +0000
-+++ notification-daemon-0.3.7/src/daemon/daemon.c 2008-01-18 11:24:40.000000000 +0000
-@@ -39,9 +39,6 @@
- #include <X11/Xatom.h>
- #include <gdk/gdkx.h>
-
--#define WNCK_I_KNOW_THIS_IS_UNSTABLE
--#include <libwnck/libwnck.h>
--
- #include "daemon.h"
- #include "engines.h"
- #include "stack.h"
-@@ -771,37 +768,6 @@
- static gboolean
- fullscreen_window_exists(GtkWidget *nw)
- {
-- WnckScreen *wnck_screen;
-- GList *l;
--
-- wnck_screen = wnck_screen_get(GDK_SCREEN_XNUMBER(
-- gdk_drawable_get_screen(GDK_DRAWABLE(GTK_WIDGET(nw)->window))));
-- wnck_screen_force_update(wnck_screen);
--
-- for (l = wnck_screen_get_windows_stacked(wnck_screen);
-- l != NULL;
-- l = l->next)
-- {
-- WnckWindow *wnck_win = (WnckWindow *)l->data;
--
-- if (wnck_window_is_fullscreen(wnck_win))
-- {
-- /*
-- * Sanity check if the window is _really_ fullscreen to
-- * work around a bug in libwnck that doesn't get all
-- * unfullscreen events.
-- */
-- int sw = wnck_screen_get_width(wnck_screen);
-- int sh = wnck_screen_get_height(wnck_screen);
-- int x, y, w, h;
--
-- wnck_window_get_geometry(wnck_win, &x, &y, &w, &h);
--
-- if (sw == w && sh == h)
-- return TRUE;
-- }
-- }
--
- return FALSE;
- }
-
-Only in notification-daemon-0.3.7/src/daemon: daemon.c~
-diff -ur notification-daemon-0.3.7.orig/src/themes/standard/theme.c notification-daemon-0.3.7/src/themes/standard/theme.c
---- notification-daemon-0.3.7.orig/src/themes/standard/theme.c 2007-01-26 04:20:15.000000000 +0000
-+++ notification-daemon-0.3.7/src/themes/standard/theme.c 2008-01-18 11:34:58.000000000 +0000
-@@ -1,7 +1,6 @@
- #include "config.h"
-
- #include <gtk/gtk.h>
--#include <libsexy/sexy-url-label.h>
-
- typedef void (*ActionInvokedCb)(GtkWindow *nw, const char *key);
- typedef void (*UrlClickedCb)(GtkWindow *nw, const char *url);
-@@ -799,7 +798,7 @@
- gtk_widget_show(vbox);
- gtk_box_pack_start(GTK_BOX(windata->content_hbox), vbox, TRUE, TRUE, 0);
-
-- windata->body_label = sexy_url_label_new();
-+ windata->body_label = gtk_label_new(NULL);
- gtk_box_pack_start(GTK_BOX(vbox), windata->body_label, TRUE, TRUE, 0);
- gtk_misc_set_alignment(GTK_MISC(windata->body_label), 0, 0);
- gtk_label_set_line_wrap(GTK_LABEL(windata->body_label), TRUE);
-@@ -874,7 +873,7 @@
- gtk_label_set_markup(GTK_LABEL(windata->summary_label), str);
- g_free(str);
-
-- sexy_url_label_set_markup(SEXY_URL_LABEL(windata->body_label), body);
-+ gtk_label_set_markup(GTK_LABEL(windata->body_label), body);
-
- if (body == NULL || *body == '\0')
- gtk_widget_hide(windata->body_label);
-Only in notification-daemon-0.3.7/src/themes/standard: theme.c~
diff --git a/meta-extras/packages/notification-daemon/notification-daemon_0.3.7.bb b/meta-extras/packages/notification-daemon/notification-daemon_0.3.7.bb
deleted file mode 100644
index f443e307c..000000000
--- a/meta-extras/packages/notification-daemon/notification-daemon_0.3.7.bb
+++ /dev/null
@@ -1,21 +0,0 @@
-DESCRIPTION = "A dbus service that listens to desktop notification requests and displays them"
-HOMEPAGE = "http://www.galago-project.org/"
-SECTION = "x11"
-LICENSE = "GPL"
-DEPENDS = "dbus gtk+ gconf"
-
-SRC_URI = "http://www.galago-project.org/files/releases/source/${PN}/${P}.tar.gz \
- file://no-wnck-sexy.patch;patch=1"
-
-EXTRA_OECONF = "--disable-binreloc"
-
-inherit autotools pkgconfig
-
-FILES_${PN} = "\
- ${libexecdir}/notification-daemon \
- ${datadir}/dbus-1/services/ \
- ${libdir}/notification-daemon-1.0/engines/*.so \
- ${sysconfdir}/gconf/schemas/notification-daemon.schemas \
-"
-
-FILES_${PN}-dbg += "${libexecdir}/.debug ${libdir}/notification-daemon-1.0/engines/.debug"
diff --git a/meta-extras/packages/osc/osc-native_svn.bb b/meta-extras/packages/osc/osc-native_svn.bb
deleted file mode 100755
index ab0ee0ba3..000000000
--- a/meta-extras/packages/osc/osc-native_svn.bb
+++ /dev/null
@@ -1,28 +0,0 @@
-DESCRIPTION = "osc - OpenSUSE build service command-line tool."
-HOMEPAGE = "http://en.opensuse.org/Build_Service/CLI"
-SECTION = "console/utils"
-LICENSE = "GPL"
-PV = "0.0+svnr${SRCREV}"
-PR = "r1"
-DEPENDS = "python-native rpm-native"
-RDEPENDS = ""
-
-SRC_URI = "svn://forgesvn1.novell.com/svn/opensuse/trunk/buildservice/src/clientlib/python;module=osc;proto=https"
-S = "${WORKDIR}/osc"
-
-inherit native
-
-do_install() {
- BUILD_SYS=${BUILD_SYS} HOST_SYS=${HOST_SYS} \
- STAGING_LIBDIR=${STAGING_LIBDIR} STAGING_INCDIR=${STAGING_INCDIR} \
- ${STAGING_BINDIR_NATIVE}/python setup.py build ||
- oefatal "python setup.py build execution failed."
-
- BUILD_SYS=${BUILD_SYS} HOST_SYS=${HOST_SYS} \
- STAGING_LIBDIR=${STAGING_LIBDIR_NATIVE} STAGING_INCDIR=${STAGING_INCDIR_NATIVE} \
- ${STAGING_BINDIR_NATIVE}/python setup.py install --prefix=${D}${prefix} --install-data=${D}${datadir} || \
- oefatal "python setup.py install execution failed."
-
- ln -sf osc-wrapper.py ${D}${bindir}/osc
-}
-
diff --git a/meta-extras/packages/prism-firmware/prism-firmware.bb b/meta-extras/packages/prism-firmware/prism-firmware.bb
deleted file mode 100644
index 903c55e15..000000000
--- a/meta-extras/packages/prism-firmware/prism-firmware.bb
+++ /dev/null
@@ -1,32 +0,0 @@
-DESCRIPTION = "Firmware for the Prism 2.x/3 cards"
-SECTION = "base"
-LICENSE = "closed"
-RDEPENDS = "hostap-utils"
-RREPLACES = "prism3-firmware prism3-support"
-RCONFLICTS = "prism3-firmware prism3-support"
-PACKAGE_ARCH = "all"
-PR = "r3"
-
-SRC_URI = "http://www.red-bean.com/~proski/firmware/primary.tar.bz2 \
- http://www.red-bean.com/~proski/firmware/1.7.4.tar.bz2 \
- file://prism-fw.sh \
- file://hostap.rules"
-
-do_install() {
- install -d ${D}${base_libdir}/firmware/
- install -d ${D}${base_libdir}/udev/
- install -d ${D}${sysconfdir}/pcmcia/
- install -d ${D}${sysconfdir}/udev/rules.d/
-
- install -m 0644 ${WORKDIR}/primary/af010104.hex ${D}${base_libdir}/firmware/
- install -m 0644 ${WORKDIR}/primary/ak010104.hex ${D}${base_libdir}/firmware/
- install -m 0644 ${WORKDIR}/primary/pm010102.hex ${D}${base_libdir}/firmware/
-
- install -m 0644 ${WORKDIR}/1.7.4/rf010704.hex ${D}${base_libdir}/firmware/
-
- install -m 0755 ${WORKDIR}/prism-fw.sh ${D}${base_libdir}/udev/
- install -m 0644 ${WORKDIR}/hostap.rules ${D}${sysconfdir}/udev/rules.d/
-}
-
-PACKAGES = "${PN}"
-FILES_${PN} += "${base_libdir}"
diff --git a/meta-extras/packages/prism-firmware/prism-firmware/hostap.rules b/meta-extras/packages/prism-firmware/prism-firmware/hostap.rules
deleted file mode 100644
index dece98ae9..000000000
--- a/meta-extras/packages/prism-firmware/prism-firmware/hostap.rules
+++ /dev/null
@@ -1,4 +0,0 @@
-#
-# update firmware on Prism cards (load it to RAM, not to Flash)
-#
-SUBSYSTEM=="net", KERNEL=="wlan*" RUN="/lib/udev/prism-fw.sh"
diff --git a/meta-extras/packages/prism-firmware/prism-firmware/prism-fw.sh b/meta-extras/packages/prism-firmware/prism-firmware/prism-fw.sh
deleted file mode 100644
index 619f612be..000000000
--- a/meta-extras/packages/prism-firmware/prism-firmware/prism-fw.sh
+++ /dev/null
@@ -1,32 +0,0 @@
-#!/bin/sh
-
-CARD_ID=`/usr/sbin/hostap_diag $INTERFACE|grep NICID|awk '{print $2}'|sed -e 's/id=0x//'`
-
-# 801d cards lack even Primary firmware so we cannot use hostap_diag
-PRI=/lib/firmware/pm010102.hex
-STA=/lib/firmware/rf010704.hex
-
-if [ $CARD_ID = '800c' ] || [ $CARD_ID = '8013' ] || [ $CARD_ID = '8017' ] || \
- [ $CARD_ID = '801b' ] || [ $CARD_ID = '8022' ] || [ $CARD_ID = '8023' ] ; then
- PRI=/lib/firmware/ak010104.hex
-elif [ $CARD_ID = '800b' ] || [ $CARD_ID = '8012' ] || [ $CARD_ID = '8016' ] || \
- [ $CARD_ID = '801a' ] ; then
- PRI=/lib/firmware/af010104.hex
-elif [ $CARD_ID = '800e' ] || [ $CARD_ID = '8015' ] || [ $CARD_ID = '8019' ] || \
- [ $CARD_ID = '801d' ] ; then
- PRI=/lib/firmware/pm010102.hex
-fi
-
-DIR=/proc/net/hostap/wlan0
-
-if [ ! -d $DIR ]; then
- exit 1
-fi
-
-if grep -q no_pri=1 $DIR/debug; then
- /usr/sbin/prism2_srec -gs wlan0 $PRI
- /usr/sbin/prism2_srec -gp wlan0 $PRI
-fi
-
-/usr/sbin/prism2_srec -rp wlan0 $STA
-
diff --git a/meta-extras/packages/python/python-iniparse-native_0.3.2.bb b/meta-extras/packages/python/python-iniparse-native_0.3.2.bb
deleted file mode 100644
index 41aa13d97..000000000
--- a/meta-extras/packages/python/python-iniparse-native_0.3.2.bb
+++ /dev/null
@@ -1,6 +0,0 @@
-require python-iniparse_${PV}.bb
-inherit native
-DEPENDS = "python-native"
-RDEPENDS = ""
-PR = "r0"
-
diff --git a/meta-extras/packages/python/python-iniparse_0.3.2.bb b/meta-extras/packages/python/python-iniparse_0.3.2.bb
deleted file mode 100644
index 27a38f424..000000000
--- a/meta-extras/packages/python/python-iniparse_0.3.2.bb
+++ /dev/null
@@ -1,11 +0,0 @@
-DESCRIPTION = "iniparse is a INI parser for Python"
-HOMEPAGE = "http://code.google.com/p/iniparse/"
-SECTION = "devel/python"
-PRIORITY = "optional"
-LICENSE = "GPL"
-PR = "r0"
-
-SRC_URI = "http://iniparse.googlecode.com/files/iniparse-${PV}.tar.gz"
-S = "${WORKDIR}/iniparse-${PV}"
-
-inherit distutils
diff --git a/meta-extras/packages/python/python-urlgrabber-native_3.9.1.bb b/meta-extras/packages/python/python-urlgrabber-native_3.9.1.bb
deleted file mode 100644
index ff8f02ecd..000000000
--- a/meta-extras/packages/python/python-urlgrabber-native_3.9.1.bb
+++ /dev/null
@@ -1,4 +0,0 @@
-require python-urlgrabber_${PV}.bb
-inherit native
-DEPENDS = "python-native python-pycurl-native"
-RDEPENDS = ""
diff --git a/meta-extras/packages/python/python-urlgrabber/urlgrabber-3.0.0-cleanup.patch b/meta-extras/packages/python/python-urlgrabber/urlgrabber-3.0.0-cleanup.patch
deleted file mode 100644
index 7a1ee059d..000000000
--- a/meta-extras/packages/python/python-urlgrabber/urlgrabber-3.0.0-cleanup.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-diff -up urlgrabber-3.0.0/urlgrabber/grabber.py.cleanup urlgrabber-3.0.0/urlgrabber/grabber.py
---- urlgrabber-3.0.0/urlgrabber/grabber.py.cleanup 2007-11-29 10:25:13.000000000 +0000
-+++ urlgrabber-3.0.0/urlgrabber/grabber.py 2007-11-29 10:26:15.000000000 +0000
-@@ -1204,16 +1204,18 @@ class URLGrabberFileObject:
- bs = 1024*8
- size = 0
-
-- if amount is not None: bs = min(bs, amount - size)
-- block = self.read(bs)
-- size = size + len(block)
-- while block:
-- new_fo.write(block)
-+ try:
- if amount is not None: bs = min(bs, amount - size)
- block = self.read(bs)
- size = size + len(block)
-+ while block:
-+ new_fo.write(block)
-+ if amount is not None: bs = min(bs, amount - size)
-+ block = self.read(bs)
-+ size = size + len(block)
-+ finally:
-+ new_fo.close()
-
-- new_fo.close()
- try:
- modified_tuple = self.hdr.getdate_tz('last-modified')
- modified_stamp = rfc822.mktime_tz(modified_tuple)
diff --git a/meta-extras/packages/python/python-urlgrabber/urlgrabber-HEAD.patch b/meta-extras/packages/python/python-urlgrabber/urlgrabber-HEAD.patch
deleted file mode 100644
index 90180d29a..000000000
--- a/meta-extras/packages/python/python-urlgrabber/urlgrabber-HEAD.patch
+++ /dev/null
@@ -1,142 +0,0 @@
-diff --git a/urlgrabber/grabber.py b/urlgrabber/grabber.py
-index e090e90..a26880c 100644
---- a/urlgrabber/grabber.py
-+++ b/urlgrabber/grabber.py
-@@ -439,6 +439,12 @@ try:
- except:
- __version__ = '???'
-
-+try:
-+ # this part isn't going to do much - need to talk to gettext
-+ from i18n import _
-+except ImportError, msg:
-+ def _(st): return st
-+
- ########################################################################
- # functions for debugging output. These functions are here because they
- # are also part of the module initialization.
-@@ -1052,7 +1058,8 @@ class PyCurlFileObject():
- self._reget_length = 0
- self._prog_running = False
- self._error = (None, None)
-- self.size = None
-+ self.size = 0
-+ self._hdr_ended = False
- self._do_open()
-
-
-@@ -1085,9 +1092,14 @@ class PyCurlFileObject():
- return -1
-
- def _hdr_retrieve(self, buf):
-+ if self._hdr_ended:
-+ self._hdr_dump = ''
-+ self.size = 0
-+ self._hdr_ended = False
-+
- if self._over_max_size(cur=len(self._hdr_dump),
- max_size=self.opts.max_header_size):
-- return -1
-+ return -1
- try:
- self._hdr_dump += buf
- # we have to get the size before we do the progress obj start
-@@ -1104,7 +1116,17 @@ class PyCurlFileObject():
- s = parse150(buf)
- if s:
- self.size = int(s)
--
-+
-+ if buf.lower().find('location') != -1:
-+ location = ':'.join(buf.split(':')[1:])
-+ location = location.strip()
-+ self.scheme = urlparse.urlsplit(location)[0]
-+ self.url = location
-+
-+ if len(self._hdr_dump) != 0 and buf == '\r\n':
-+ self._hdr_ended = True
-+ if DEBUG: DEBUG.info('header ended:')
-+
- return len(buf)
- except KeyboardInterrupt:
- return pycurl.READFUNC_ABORT
-@@ -1136,6 +1158,7 @@ class PyCurlFileObject():
- self.curl_obj.setopt(pycurl.PROGRESSFUNCTION, self._progress_update)
- self.curl_obj.setopt(pycurl.FAILONERROR, True)
- self.curl_obj.setopt(pycurl.OPT_FILETIME, True)
-+ self.curl_obj.setopt(pycurl.FOLLOWLOCATION, True)
-
- if DEBUG:
- self.curl_obj.setopt(pycurl.VERBOSE, True)
-@@ -1291,7 +1314,12 @@ class PyCurlFileObject():
- raise err
-
- elif str(e.args[1]) == '' and self.http_code != 0: # fake it until you make it
-- msg = 'HTTP Error %s : %s ' % (self.http_code, self.url)
-+ if self.scheme in ['http', 'https']:
-+ msg = 'HTTP Error %s : %s ' % (self.http_code, self.url)
-+ elif self.scheme in ['ftp']:
-+ msg = 'FTP Error %s : %s ' % (self.http_code, self.url)
-+ else:
-+ msg = "Unknown Error: URL=%s , scheme=%s" % (self.url, self.scheme)
- else:
- msg = 'PYCURL ERROR %s - "%s"' % (errcode, str(e.args[1]))
- code = errcode
-@@ -1299,6 +1327,12 @@ class PyCurlFileObject():
- err.code = code
- err.exception = e
- raise err
-+ else:
-+ if self._error[1]:
-+ msg = self._error[1]
-+ err = URLGRabError(14, msg)
-+ err.url = self.url
-+ raise err
-
- def _do_open(self):
- self.curl_obj = _curl_cache
-@@ -1532,11 +1566,14 @@ class PyCurlFileObject():
- def _over_max_size(self, cur, max_size=None):
-
- if not max_size:
-- max_size = self.size
-- if self.opts.size: # if we set an opts size use that, no matter what
-- max_size = self.opts.size
-+ if not self.opts.size:
-+ max_size = self.size
-+ else:
-+ max_size = self.opts.size
-+
- if not max_size: return False # if we have None for all of the Max then this is dumb
-- if cur > max_size + max_size*.10:
-+
-+ if cur > int(float(max_size) * 1.10):
-
- msg = _("Downloaded more than max size for %s: %s > %s") \
- % (self.url, cur, max_size)
-@@ -1582,7 +1619,11 @@ class PyCurlFileObject():
- self.opts.progress_obj.end(self._amount_read)
- self.fo.close()
-
--
-+ def geturl(self):
-+ """ Provide the geturl() method, used to be got from
-+ urllib.addinfourl, via. urllib.URLopener.* """
-+ return self.url
-+
- _curl_cache = pycurl.Curl() # make one and reuse it over and over and over
-
-
-diff --git a/urlgrabber/progress.py b/urlgrabber/progress.py
-index dd07c6a..45eb248 100644
---- a/urlgrabber/progress.py
-+++ b/urlgrabber/progress.py
-@@ -658,6 +658,8 @@ def format_time(seconds, use_hours=0):
- if seconds is None or seconds < 0:
- if use_hours: return '--:--:--'
- else: return '--:--'
-+ elif seconds == float('inf'):
-+ return 'Infinite'
- else:
- seconds = int(seconds)
- minutes = seconds / 60
diff --git a/meta-extras/packages/python/python-urlgrabber/urlgrabber-reset.patch b/meta-extras/packages/python/python-urlgrabber/urlgrabber-reset.patch
deleted file mode 100644
index b63e7c33a..000000000
--- a/meta-extras/packages/python/python-urlgrabber/urlgrabber-reset.patch
+++ /dev/null
@@ -1,15 +0,0 @@
---- a/urlgrabber/grabber.py 2010-02-19 14:50:45.000000000 -0500
-+++ b/urlgrabber/grabber.py 2010-02-19 14:51:28.000000000 -0500
-@@ -1626,6 +1626,12 @@
-
- _curl_cache = pycurl.Curl() # make one and reuse it over and over and over
-
-+def reset_curl_obj():
-+ """To make sure curl has reread the network/dns info we force a reload"""
-+ global _curl_cache
-+ _curl_cache.close()
-+ _curl_cache = pycurl.Curl()
-+
-
- #####################################################################
- # DEPRECATED FUNCTIONS
diff --git a/meta-extras/packages/python/python-urlgrabber_3.9.1.bb b/meta-extras/packages/python/python-urlgrabber_3.9.1.bb
deleted file mode 100644
index 9f3a4cc6a..000000000
--- a/meta-extras/packages/python/python-urlgrabber_3.9.1.bb
+++ /dev/null
@@ -1,16 +0,0 @@
-DESCRIPTION = "urlgrabber is a pure python package that drastically simplifies the fetching of files."
-
-HOMEPAGE = "http://urlgrabber.baseurl.org/"
-SECTION = "devel/python"
-PRIORITY = "optional"
-LICENSE = "GPL"
-PR = "r1"
-
-SRC_URI = "http://urlgrabber.baseurl.org/download/urlgrabber-${PV}.tar.gz \
- file://urlgrabber-HEAD.patch;patch=1 \
- file://urlgrabber-reset.patch;patch=1"
-S = "${WORKDIR}/urlgrabber-${PV}"
-
-DEPENDS = "python-pycurl"
-
-inherit distutils \ No newline at end of file
diff --git a/meta-extras/packages/python/yum-metadata-parser-native_1.1.4.bb b/meta-extras/packages/python/yum-metadata-parser-native_1.1.4.bb
deleted file mode 100644
index 0a44b99e2..000000000
--- a/meta-extras/packages/python/yum-metadata-parser-native_1.1.4.bb
+++ /dev/null
@@ -1,7 +0,0 @@
-require yum-metadata-parser_${PV}.bb
-inherit native
-DEPENDS = "python-native sqlite3-native glib-2.0-native libxml2-native"
-RDEPENDS = ""
-PR = "r0"
-
-#BUILD_CFLAGS += "-I${STAGING_LIBDIR}/glib-2.0"
diff --git a/meta-extras/packages/python/yum-metadata-parser_1.1.4.bb b/meta-extras/packages/python/yum-metadata-parser_1.1.4.bb
deleted file mode 100644
index 2e404a2bb..000000000
--- a/meta-extras/packages/python/yum-metadata-parser_1.1.4.bb
+++ /dev/null
@@ -1,15 +0,0 @@
-DESCRIPTION = "C-based metadata parser to quickly parse xml metadata into sqlite databases."
-HOMEPAGE = "http://linux.duke.edu/projects/yum/download.ptml"
-SECTION = "devel/python"
-PRIORITY = "optional"
-DEPENDS = "python sqlite3 glib-2.0 libxml2"
-LICENSE = "GPL"
-
-PR = "r1"
-
-SRC_URI = "http://linux.duke.edu/projects/yum/download/yum-metadata-parser/yum-metadata-parser-${PV}.tar.gz"
-S = "${WORKDIR}/yum-metadata-parser-${PV}"
-
-TARGET_CFLAGS += "-I${STAGING_LIBDIR}/glib-2.0"
-
-inherit distutils
diff --git a/meta-extras/packages/qmake/qmake2-cross/0001-fix-mkspecs.patch b/meta-extras/packages/qmake/qmake2-cross/0001-fix-mkspecs.patch
deleted file mode 100644
index 4ebc3dea8..000000000
--- a/meta-extras/packages/qmake/qmake2-cross/0001-fix-mkspecs.patch
+++ /dev/null
@@ -1,120 +0,0 @@
-From 594157753a24d0575aaf948dc0e9500f6bdb2178 Mon Sep 17 00:00:00 2001
-From: Michael Krelin <hacker@klever.net>
-Date: Sat, 2 Jun 2007 16:39:58 +0200
-Subject: [PATCH] fix mkspecs
-
----
- mkspecs/common/g++.conf | 18 +++++++++---------
- mkspecs/common/linux.conf | 26 +++++++++++++-------------
- 2 files changed, 22 insertions(+), 22 deletions(-)
-
-Index: qt-embedded-linux-opensource-src-4.5.3/mkspecs/common/g++.conf
-===================================================================
---- qt-embedded-linux-opensource-src-4.5.3.orig/mkspecs/common/g++.conf
-+++ qt-embedded-linux-opensource-src-4.5.3/mkspecs/common/g++.conf
-@@ -2,12 +2,12 @@
- # qmake configuration for common gcc
- #
-
--QMAKE_CC = gcc
--QMAKE_CFLAGS += -pipe
-+QMAKE_CC = $(OE_QMAKE_CC)
-+QMAKE_CFLAGS += -pipe $(OE_QMAKE_CFLAGS)
- QMAKE_CFLAGS_DEPS += -M
- QMAKE_CFLAGS_WARN_ON += -Wall -W
- QMAKE_CFLAGS_WARN_OFF += -w
--QMAKE_CFLAGS_RELEASE += -O2
-+QMAKE_CFLAGS_RELEASE += -O2
- QMAKE_CFLAGS_DEBUG += -g
- QMAKE_CFLAGS_SHLIB += -fPIC
- QMAKE_CFLAGS_STATIC_LIB += -fPIC
-@@ -16,8 +16,8 @@ QMAKE_CFLAGS_HIDESYMS += -fvisibility=
- QMAKE_CFLAGS_PRECOMPILE += -x c-header -c ${QMAKE_PCH_INPUT} -o ${QMAKE_PCH_OUTPUT}
- QMAKE_CFLAGS_USE_PRECOMPILE += -include ${QMAKE_PCH_OUTPUT_BASE}
-
--QMAKE_CXX = g++
--QMAKE_CXXFLAGS += $$QMAKE_CFLAGS
-+QMAKE_CXX = $(OE_QMAKE_CXX)
-+QMAKE_CXXFLAGS += $$QMAKE_CFLAGS $(OE_QMAKE_CXXFLAGS)
- QMAKE_CXXFLAGS_DEPS += $$QMAKE_CFLAGS_DEPS
- QMAKE_CXXFLAGS_WARN_ON += $$QMAKE_CFLAGS_WARN_ON
- QMAKE_CXXFLAGS_WARN_OFF += $$QMAKE_CFLAGS_WARN_OFF
-@@ -30,11 +30,11 @@ QMAKE_CXXFLAGS_HIDESYMS += $$QMAKE_CFLAG
- QMAKE_CXXFLAGS_PRECOMPILE += -x c++-header -c ${QMAKE_PCH_INPUT} -o ${QMAKE_PCH_OUTPUT}
- QMAKE_CXXFLAGS_USE_PRECOMPILE = $$QMAKE_CFLAGS_USE_PRECOMPILE
-
--QMAKE_LINK = g++
--QMAKE_LINK_SHLIB = g++
--QMAKE_LINK_C = gcc
--QMAKE_LINK_C_SHLIB = gcc
--QMAKE_LFLAGS +=
-+QMAKE_LINK = $(OE_QMAKE_LINK)
-+QMAKE_LINK_SHLIB = $(OE_QMAKE_LINK)
-+QMAKE_LINK_C = $(OE_QMAKE_CC)
-+QMAKE_LINK_C_SHLIB = $(OE_QMAKE_CC)
-+QMAKE_LFLAGS += $(OE_QMAKE_LDFLAGS)
- QMAKE_LFLAGS_RELEASE += -Wl,-O1
- QMAKE_LFLAGS_DEBUG +=
- QMAKE_LFLAGS_APP +=
-@@ -43,7 +43,7 @@ QMAKE_LFLAGS_PLUGIN += $$QMAKE_LFLAGS_SH
- QMAKE_LFLAGS_SONAME += -Wl,-soname,
- QMAKE_LFLAGS_THREAD +=
- QMAKE_LFLAGS_NOUNDEF += -Wl,--no-undefined
--QMAKE_RPATH = -Wl,-rpath,
-+QMAKE_RPATH = -Wl,-rpath-link,
-
- QMAKE_PCH_OUTPUT_EXT = .gch
-
-Index: qt-embedded-linux-opensource-src-4.5.3/mkspecs/common/linux.conf
-===================================================================
---- qt-embedded-linux-opensource-src-4.5.3.orig/mkspecs/common/linux.conf
-+++ qt-embedded-linux-opensource-src-4.5.3/mkspecs/common/linux.conf
-@@ -7,27 +7,27 @@ QMAKE_CXXFLAGS_THREAD += $$QMAKE_CFLAGS_
-
- QMAKE_INCDIR =
- QMAKE_LIBDIR =
--QMAKE_INCDIR_X11 = /usr/X11R6/include
--QMAKE_LIBDIR_X11 = /usr/X11R6/lib
--QMAKE_INCDIR_QT = $$[QT_INSTALL_HEADERS]
--QMAKE_LIBDIR_QT = $$[QT_INSTALL_LIBS]
--QMAKE_INCDIR_OPENGL = /usr/X11R6/include
--QMAKE_LIBDIR_OPENGL = /usr/X11R6/lib
-+QMAKE_INCDIR_X11 =
-+QMAKE_LIBDIR_X11 =
-+QMAKE_INCDIR_QT = $(OE_QMAKE_INCDIR_QT)
-+QMAKE_LIBDIR_QT = $(OE_QMAKE_LIBDIR_QT)
-+QMAKE_INCDIR_OPENGL =
-+QMAKE_LIBDIR_OPENGL =
-
- QMAKE_LIBS =
- QMAKE_LIBS_DYNLOAD = -ldl
--QMAKE_LIBS_X11 = -lXext -lX11 -lm
--QMAKE_LIBS_X11SM = -lSM -lICE
-+QMAKE_LIBS_X11 = $(OE_QMAKE_LIBS_X11)
-+QMAKE_LIBS_X11SM = $(OE_QMAKE_LIBS_X11SM)
- QMAKE_LIBS_NIS = -lnsl
- QMAKE_LIBS_OPENGL = -lGLU -lGL
- QMAKE_LIBS_OPENGL_QT = -lGL
- QMAKE_LIBS_THREAD = -lpthread
-
--QMAKE_MOC = $$[QT_INSTALL_BINS]/moc
--QMAKE_UIC = $$[QT_INSTALL_BINS]/uic
-+QMAKE_MOC = $(OE_QMAKE_MOC)
-+QMAKE_UIC = $(OE_QMAKE_UIC)
-
--QMAKE_AR = ar cqs
--QMAKE_OBJCOPY = objcopy
-+QMAKE_AR = $(OE_QMAKE_AR) cqs
-+QMAKE_OBJCOPY = $(OE_QMAKE_OBJCOPY)
- QMAKE_RANLIB =
-
- QMAKE_TAR = tar -cf
-@@ -39,7 +39,7 @@ QMAKE_COPY_DIR = $(COPY) -r
- QMAKE_MOVE = mv -f
- QMAKE_DEL_FILE = rm -f
- QMAKE_DEL_DIR = rmdir
--QMAKE_STRIP = strip
-+QMAKE_STRIP = $(OE_QMAKE_STRIP)
- QMAKE_STRIPFLAGS_LIB += --strip-unneeded
- QMAKE_CHK_DIR_EXISTS = test -d
- QMAKE_MKDIR = mkdir -p
diff --git a/meta-extras/packages/qmake/qmake2-cross/linux-oe-qmake.conf b/meta-extras/packages/qmake/qmake2-cross/linux-oe-qmake.conf
deleted file mode 100644
index f58481a69..000000000
--- a/meta-extras/packages/qmake/qmake2-cross/linux-oe-qmake.conf
+++ /dev/null
@@ -1 +0,0 @@
-include(../linux-g++/qmake.conf)
diff --git a/meta-extras/packages/qmake/qmake2-cross/use-lflags-last.patch b/meta-extras/packages/qmake/qmake2-cross/use-lflags-last.patch
deleted file mode 100644
index 4197dbbf6..000000000
--- a/meta-extras/packages/qmake/qmake2-cross/use-lflags-last.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-Index: qtopia-core-opensource-src-4.3.1/qmake/generators/unix/unixmake2.cpp
-===================================================================
---- qtopia-core-opensource-src-4.3.1.orig/qmake/generators/unix/unixmake2.cpp 2007-10-07 13:45:26.000000000 +0200
-+++ qtopia-core-opensource-src-4.3.1/qmake/generators/unix/unixmake2.cpp 2007-10-07 13:57:09.000000000 +0200
-@@ -416,7 +416,7 @@
- t << "\n\t" << mkdir_p_asstring(destdir) << "\n\t";
- if(!project->isEmpty("QMAKE_PRE_LINK"))
- t << var("QMAKE_PRE_LINK") << "\n\t";
-- t << "$(LINK) $(LFLAGS) -o $(TARGET) " << incr_deps << " " << incr_objs << " $(OBJCOMP) $(LIBS)";
-+ t << "$(LINK) -o $(TARGET) " << incr_deps << " " << incr_objs << " $(OBJCOMP) $(LIBS) $(LFLAGS)";
- if(!project->isEmpty("QMAKE_POST_LINK"))
- t << "\n\t" << var("QMAKE_POST_LINK");
- t << endl << endl;
-@@ -430,7 +430,7 @@
- t << mkdir_p_asstring(destdir) << "\n\t";
- if(!project->isEmpty("QMAKE_PRE_LINK"))
- t << var("QMAKE_PRE_LINK") << "\n\t";
-- t << "$(LINK) $(LFLAGS) -o $(TARGET) $(OBJECTS) $(OBJCOMP) $(LIBS)";
-+ t << "$(LINK) -o $(TARGET) $(OBJECTS) $(OBJCOMP) $(LIBS) $(LFLAGS)";
- if(!project->isEmpty("QMAKE_POST_LINK"))
- t << "\n\t" << var("QMAKE_POST_LINK");
- t << endl << endl;
diff --git a/meta-extras/packages/qmake/qmake2-cross_2.10a.bb b/meta-extras/packages/qmake/qmake2-cross_2.10a.bb
deleted file mode 100644
index 60f738b9c..000000000
--- a/meta-extras/packages/qmake/qmake2-cross_2.10a.bb
+++ /dev/null
@@ -1,74 +0,0 @@
-DESCRIPTION = "TrollTech Makefile Generator"
-PRIORITY = "optional"
-HOMEPAGE = "http://www.trolltech.com"
-SECTION = "devel"
-LICENSE = "GPL"
-PR = "r2"
-
-QTVER = "qt-embedded-linux-opensource-src-4.5.3"
-
-SRC_URI = "ftp://ftp.trolltech.com/pub/qt/source/${QTVER}.tar.gz \
- file://0001-fix-mkspecs.patch;patch=1 \
- file://use-lflags-last.patch;patch=1 \
- file://linux-oe-qmake.conf"
-S = "${WORKDIR}/${QTVER}"
-
-# we need the real target system here
-CROSS_SYS := "${TARGET_SYS}"
-CROSS_BINDIR := "${STAGING_BINDIR_CROSS}"
-inherit autotools cross
-
-export QTDIR = "${S}"
-EXTRA_OEMAKE = "-e"
-EXTRA_OECONF = "-opensource"
-
-do_configure() {
- # Install the OE build templates
- for template in linux-oe-g++ linux-uclibc-oe-g++ linux-gnueabi-oe-g++
- do
- install -d ${S}/mkspecs/$template
- install -m 0644 ${WORKDIR}/linux-oe-qmake.conf ${S}/mkspecs/$template/qmake.conf
- ln -sf ../linux-g++/qplatformdefs.h ${S}/mkspecs/$template/qplatformdefs.h
- done
-
- QMAKESPEC=
- PLATFORM=${HOST_OS}-oe-g++
- export PLATFORM
- # yes, TARGET_SYS is correct, because this is a 'cross'-qmake-native :) :M:
- export OE_QMAKE_CC="${CC}"
- export OE_QMAKE_CFLAGS="${CFLAGS}"
- export OE_QMAKE_CXX="${CXX}"
- export OE_QMAKE_CXXFLAGS="-fno-exceptions -fno-rtti ${CXXFLAGS}"
- export OE_QMAKE_LDFLAGS="${LDFLAGS}"
- export OE_QMAKE_LINK="${CCLD}"
- export OE_QMAKE_AR="${AR}"
- export OE_QMAKE_OBJCOPY="${OBJCOPY}"
- export OE_QMAKE_STRIP="${STRIP}"
- export OE_QMAKE_UIC="${STAGING_BINDIR_NATIVE}/uic"
- export OE_QMAKE_MOC="${STAGING_BINDIR_NATIVE}/moc"
- export OE_QMAKE_RCC="non-existant"
- export OE_QMAKE_QMAKE="${STAGING_BINDIR_NATIVE}/qmake"
- export OE_QMAKE_RPATH="-Wl,-rpath-link,"
- echo yes | ./configure -prefix ${STAGING_DIR}/${CROSS_SYS}/qt4 ${EXTRA_OECONF} || die "Configuring qt failed"
-}
-
-do_compile() {
- :
-}
-
-do_install() {
- install -d ${D}${CROSS_BINDIR}/
- install -m 0755 bin/qmake ${D}${CROSS_BINDIR}/qmake2
- install -m 0755 bin/qmake ${D}${CROSS_BINDIR}/qmake-qt4
- install -d ${D}${STAGING_DIR}/${CROSS_SYS}/qt4/
- cp -PfR mkspecs ${D}${STAGING_DIR}/${CROSS_SYS}/qt4/
- install -d ${D}${STAGING_DIR}/${HOST_SYS}/qt4/
- cp -PfR mkspecs ${D}${STAGING_DIR}/${HOST_SYS}/qt4/
-}
-
-sysroot_stage_all_append() {
- sysroot_stage_dir ${D}/${STAGING_DIR_NATIVE}/qt4 ${SYSROOT_DESTDIR}/${STAGING_DIR_NATIVE}/qt4
- sysroot_stage_dir ${D}/${STAGING_DIR_TARGET}/qt4 ${SYSROOT_DESTDIR}/${STAGING_DIR_TARGET}/qt4
-}
-
-
diff --git a/meta-extras/packages/redland/files/crosscompile.patch b/meta-extras/packages/redland/files/crosscompile.patch
deleted file mode 100644
index 281007a79..000000000
--- a/meta-extras/packages/redland/files/crosscompile.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-Index: redland-1.0.8/raptor/configure.ac
-===================================================================
---- redland-1.0.8.orig/raptor/configure.ac 2008-12-16 17:26:58.000000000 +0000
-+++ redland-1.0.8/raptor/configure.ac 2008-12-16 17:27:41.000000000 +0000
-@@ -279,23 +279,7 @@
-
- if test $ac_cv_func_vsnprintf = yes; then
- AC_MSG_CHECKING(vsnprintf has C99 compatible return value)
-- AC_TRY_RUN([#include <stdarg.h>
--int is_c99(char *s, ...) {
-- char buffer[32];
-- va_list args;
-- int r;
-- va_start(args, s);
-- r = vsnprintf(buffer, 5, s, args);
-- va_end(args);
--
-- return (r == 7);
--}
--
--int main(int argc, char* argv) {
-- return is_c99("1234567");
--}], AC_MSG_RESULT(no),
-- AC_DEFINE(HAVE_C99_VSNPRINTF, 1, [vsnprint has C99 compatible return value])
-- AC_MSG_RESULT(yes))
-+ AC_DEFINE(HAVE_C99_VSNPRINTF, 1, [vsnprint has C99 compatible return value])
- fi
-
- need_libm=no
diff --git a/meta-extras/packages/redland/files/sane_pkgconfig.patch b/meta-extras/packages/redland/files/sane_pkgconfig.patch
deleted file mode 100644
index 32742e2b2..000000000
--- a/meta-extras/packages/redland/files/sane_pkgconfig.patch
+++ /dev/null
@@ -1,126 +0,0 @@
-Index: redland-1.0.8/configure.ac
-===================================================================
---- redland-1.0.8.orig/configure.ac 2008-07-04 07:56:25.000000000 +0100
-+++ redland-1.0.8/configure.ac 2008-12-17 23:04:25.000000000 +0000
-@@ -404,7 +404,7 @@
-
- if test "$have_libdb" = yes; then
- bdb_available="Version $bdb_version (library $bdb_dbname in $bdb_lib_dir)"
-- LIBRDF_LIBS="$LIBRDF_LIBS $nLDFLAGS -l$bdb_dbname"
-+ LIBRDF_LIBS="$LIBRDF_LIBS -l$bdb_dbname"
- LIBRDF_CPPFLAGS="$LIBRDF_CPPFLAGS $nCPPFLAGS"
- fi
-
-Index: redland-1.0.8/raptor/configure.ac
-===================================================================
---- redland-1.0.8.orig/raptor/configure.ac 2008-12-17 23:04:25.000000000 +0000
-+++ redland-1.0.8/raptor/configure.ac 2008-12-18 11:18:36.000000000 +0000
-@@ -304,9 +304,12 @@
- AC_DEFINE(HAVE_ROUND, 1, [have round() in libm]),
- AC_MSG_RESULT(no))
- LIBS="$oLIBS"
-+PRIV_PC_LIBS=""
-+PRIV_PC_REQS=""
-
- if test "X$need_libm" = Xyes; then
- LIBS="$LIBS -lm"
-+ PRIV_PC_LIBS="$PRIV_PC_LIBS -lm"
- fi
-
-
-@@ -369,6 +372,7 @@
- AC_MSG_CHECKING(for working expat in libxmlparse and libxmltok)
- if test $xmlp = 1 -a $xmlt = 1 -a $ac_cv_header_xmlparse_h = yes; then
- LIBS="$LIBS -lxmlparse -lxmltok"
-+ PRIV_PC_LIBS="$PRIV_PC_LIBS -lxmlparse -lxmltok"
- AC_TRY_RUN([#include <stdio.h>
- main() {XML_ParserCreate(NULL); return(0);}],
- worked=yes, worked=no, worked=no)
-@@ -391,6 +395,7 @@
- AC_MSG_CHECKING(for working expat in libexpat)
- if test $libexpat = 1 -a $ac_cv_header_expat_h = yes ; then
- LIBS="$LIBS -lexpat"
-+ PRIV_PC_LIBS="$PRIV_PC_LIBS -lexpat"
- AC_TRY_RUN([#include <stdio.h>
- main() {XML_ParserCreate(NULL); return(0);}],
- worked=yes, worked=no, worked=no)
-@@ -531,6 +536,7 @@
- oLIBS="$LIBS"
- if test "X$XML_CONFIG" != X; then
- LIBS="$LIBS `$XML_CONFIG --libs`"
-+ PRIV_PC_REQS="$PRIV_PC_REQS libxml-2.0"
- AC_CHECK_FUNC(xmlCreatePushParserCtxt, have_xmlCreatePushParserCtxt=yes, have_xmlCreatePushParserCtxt=no)
- AC_MSG_CHECKING(for system (GNOME) libxml library)
- if test $have_xmlCreatePushParserCtxt = yes; then
-@@ -637,6 +643,7 @@
- oLIBS="$LIBS"
- if test "X$XSLT_CONFIG" != X; then
- LIBS="$LIBS `$XSLT_CONFIG --libs`"
-+ PRIV_PC_REQS="$PRIV_PC_REQS libxslt"
- AC_CHECK_FUNC(xsltSaveResultToString, have_xsltSaveResultToString=yes, have_xsltSaveResultToString=no)
- AC_MSG_CHECKING(for system libxslt library)
- if test $have_xsltSaveResultToString = yes; then
-@@ -1034,6 +1041,7 @@
- if test $need_libcurl = 1; then
- CPPFLAGS="$CPPFLAGS `$CURL_CONFIG --cflags`"
- LIBS="$LIBS `$CURL_CONFIG --libs`"
-+ PRIV_PC_REQS="$PRIV_PC_REQS libcurl"
- AC_LIBOBJ(raptor_www_curl)
-
- fi
-@@ -1054,6 +1062,7 @@
- if test $ac_cv_header_libinn_h = yes; then
- CPPFLAGS="$CPPFLAGS -I/usr/include/inn"
- LIBS="$LIBS -L/usr/lib/news -linn"
-+ PRIV_PC_LIBS="$PRIV_PC_LIBS -linn"
- AC_CHECK_LIB(inn, HashMessageID, have_libinn=yes)
-
- AC_MSG_CHECKING(parsedate in libinn)
-@@ -1102,6 +1111,7 @@
-
- if test $need_libfetch = 1; then
- LIBS="$LIBS -lfetch"
-+ PRIV_PC_LIBS="$PRIV_PC_REQS -lfetch"
- AC_LIBOBJ(raptor_www_libfetch)
- fi
-
-@@ -1120,6 +1130,7 @@
- else
- LIBS="$LIBS `$XML_CONFIG --libs`"
- CPPFLAGS="`$XML_CONFIG --cflags` $CPPFLAGS"
-+ PRIV_PC_REQS="$PRIV_PC_REQS libxml-2.0"
- fi
- RAPTOR_XML_PARSER=libxml
- fi
-@@ -1147,6 +1158,7 @@
- if test $need_libxslt = 1; then
- LIBS="$LIBS `$XSLT_CONFIG --libs`"
- CPPFLAGS="`$XSLT_CONFIG --cflags` $CPPFLAGS"
-+ PRIV_PC_REQS="$PRIV_PC_REQS libxslt"
- fi
-
- RAPTOR_LIBTOOLLIBS=libraptor.la
-@@ -1214,6 +1226,9 @@
- AC_SUBST(MEM_LIBS)
- AC_SUBST(STANDARD_CFLAGS)
-
-+AC_SUBST(PRIV_PC_LIBS)
-+AC_SUBST(PRIV_PC_REQS)
-+
- ECHO_N="$ECHO_N"
- ECHO_C="$ECHO_C"
- AC_SUBST(ECHO_N)
-Index: redland-1.0.8/raptor/raptor.pc.in
-===================================================================
---- redland-1.0.8.orig/raptor/raptor.pc.in 2008-12-17 23:06:47.000000000 +0000
-+++ redland-1.0.8/raptor/raptor.pc.in 2008-12-17 23:07:20.000000000 +0000
-@@ -6,7 +6,8 @@
- Name: Raptor
- Description: RDF Parser Toolkit Library
- Version: @VERSION@
-+Requires.private: @PRIV_PC_REQS@
- Libs: -L${libdir} -lraptor
--Libs.private: @LIBS@
-+Libs.private: @PRIV_PC_LIBS@@
- Cflags: -I${includedir}
-
diff --git a/meta-extras/packages/redland/redland_1.0.8.bb b/meta-extras/packages/redland/redland_1.0.8.bb
deleted file mode 100644
index f1ff8f8e8..000000000
--- a/meta-extras/packages/redland/redland_1.0.8.bb
+++ /dev/null
@@ -1,9 +0,0 @@
-SRC_URI = "http://download.librdf.org/source/redland-1.0.8.tar.gz \
- file://crosscompile.patch;patch=1 \
- file://sane_pkgconfig.patch;patch=1"
-
-PR = "r3"
-
-EXTRA_OECONF = "--with-bdb-lib=${STAGING_LIBDIR} --with-bdb-include=${STAGING_INCDIR} --with-sqlite=no"
-
-inherit autotools
diff --git a/meta-extras/packages/smart/smart_1.1.bb b/meta-extras/packages/smart/smart_1.1.bb
deleted file mode 100644
index 8f89eb3e0..000000000
--- a/meta-extras/packages/smart/smart_1.1.bb
+++ /dev/null
@@ -1,29 +0,0 @@
-DESCRIPTION = "Next generation package handling tool."
-HOMEPAGE = "http://labix.org/smart/"
-LICENSE = "GPL v2+"
-DEPENDS = "zlib python desktop-file-utils-native python-pygtk rpm"
-
-SRC_URI = "http://labix.org/download/smart/smart-1.1.tar.bz2"
-
-S = "${WORKDIR}/smart-${PV}"
-
-inherit distutils
-
-FILES_${PN} += "/usr/share/lib/${PYTHON_DIR}/site-packages/smart/interfaces/images/*.png \
- /usr/share/lib/${PYTHON_DIR/site-packages/smart/backends/"
-
-FILES_${PN}-doc += "/usr/share/share/man/man8/smart.8"
-
-FILES_${PN}-locale += "/usr/share/share/locale/es_ES/LC_MESSAGES/smart.mo \
- /usr/share/share/locale/it/LC_MESSAGES/smart.mo \
- /usr/share/share/locale/de/LC_MESSAGES/smart.mo \
- /usr/share/share/locale/ru/LC_MESSAGES/smart.mo \
- /usr/share/share/locale/sv/LC_MESSAGES/smart.mo \
- /usr/share/share/locale/fr/LC_MESSAGES/smart.mo \
- /usr/share/share/locale/hu/LC_MESSAGES/smart.mo \
- /usr/share/share/locale/zh_TW/LC_MESSAGES/smart.mo \
- /usr/share/share/locale/pt_BR/LC_MESSAGES/smart.mo \
- /usr/share/share/locale/zh_CN/LC_MESSAGES/smart.mo"
-
-FILES_${PN}-dbg += "/usr/lib/${PYTHON_DIR}/site-packages/smart/backends/rpm/.debug \
- /usr/lib/${PYTHON_DIR}/site-packages/smart/backends/deb/.debug \" \ No newline at end of file
diff --git a/meta-extras/packages/spectrum-fw/spectrum-fw.bb b/meta-extras/packages/spectrum-fw/spectrum-fw.bb
deleted file mode 100644
index 45011d336..000000000
--- a/meta-extras/packages/spectrum-fw/spectrum-fw.bb
+++ /dev/null
@@ -1,22 +0,0 @@
-DESCRIPTION = "Firmware for Spectrum Wireless LAN cards"
-DEPENDS += " unzip-native "
-LICENSE = "closed"
-PR = "r2"
-
-SRC_URI = "http://ftp.osuosl.org/pub/nslu2/sources/MC&DriverOnlyInstallers.zip \
- file://get_symbol_fw \
- file://parse_symbol_fw"
-S = "${WORKDIR}"
-
-do_configure() {
- ./get_symbol_fw
-}
-
-do_install() {
- install -d ${D}${base_libdir}/firmware/
- install -m 0755 ${WORKDIR}/symbol_sp24t_prim_fw ${D}${base_libdir}/firmware/symbol_sp24t_prim_fw
- install -m 0755 ${WORKDIR}/symbol_sp24t_sec_fw ${D}${base_libdir}/firmware/symbol_sp24t_sec_fw
-}
-
-PACKAGE_ARCH = "all"
-FILES_${PN} += "${base_libdir}/firmware/symbol*"
diff --git a/meta-extras/packages/spectrum-fw/spectrum-fw/get_symbol_fw b/meta-extras/packages/spectrum-fw/spectrum-fw/get_symbol_fw
deleted file mode 100755
index 80420b01a..000000000
--- a/meta-extras/packages/spectrum-fw/spectrum-fw/get_symbol_fw
+++ /dev/null
@@ -1,29 +0,0 @@
-#!/bin/sh
-
-# Get firmware for Symbol Spectrum24 Trilogy.
-# Both the header file and the binary firmware files are produced.
-
-# Copyright (C) 2004 Pavel Roskin <proski@gnu.org>
-
-# This script is Free Software, and it can be copied, distributed and
-# modified as defined in the GNU General Public License. A copy of
-# its license can be downloaded from http://www.gnu.org/copyleft/gpl.html
-
-# Usage: get_symbol_fw
-# Output: spectrum_fw.h symbol_sp24t_prim_fw symbol_sp24t_sec_fw
-# Needed tools: curl (or wget), unzip, perl.
-
-set -e
-
-DL_INT1='S24DRVR392B67-01.exe'
-DL_INT2='Driver Only Installer/NetWLan5.sys'
-DRIVER1=symbol1.drv
-DRIVER2=symbol2.drv
-
-unzip -p $DL_INT1 "$DL_INT2" >$DRIVER2
-
-perl parse_symbol_fw $DRIVER2 spectrum_fw.h symbol_sp24t_prim_fw \
- symbol_sp24t_sec_fw
-
-rm -f $DRIVER1 $DRIVER2
-
diff --git a/meta-extras/packages/spectrum-fw/spectrum-fw/parse_symbol_fw b/meta-extras/packages/spectrum-fw/spectrum-fw/parse_symbol_fw
deleted file mode 100755
index 7fe0ea57c..000000000
--- a/meta-extras/packages/spectrum-fw/spectrum-fw/parse_symbol_fw
+++ /dev/null
@@ -1,129 +0,0 @@
-#!/usr/bin/perl -w
-
-# Extract Symbol firmware and convert is to a header file and two binary
-# files.
-
-# Copyright (C) 2004 Pavel Roskin <proski@gnu.org>
-
-# This script is Free Software, and it can be copied, distributed and
-# modified as defined in the GNU General Public License. A copy of
-# its license can be downloaded from http://www.gnu.org/copyleft/gpl.html
-
-# Usage:
-# parse_symbol_fw infile header binfile1 binfile2
-
-use strict;
-
-# Print message and exit (like "die", but without raising an exception).
-# Newline is added at the end.
-sub error
-{
- printf STDERR "ERROR: ";
- printf STDERR @_;
- printf STDERR "\n";
- exit 1;
-}
-
-sub readnum_ba ()
-{
- my $byte_a;
- read INFILE,$byte_a,1;
- my $byte_b;
- read INFILE,$byte_b,1;
- return (ord($byte_b) << 8) + ord($byte_a);
-}
-
-
-if ($#ARGV != 3) {
- error ("Usage: parse_symbol_fw infile header binfile1 binfile2");
-}
-
-unless (open (INFILE, "< $ARGV[0]")) {
- error ("couldn't open $ARGV[0] for reading: $!");
-}
-
-unless (open (OUTFILE, "> $ARGV[1]")) {
- error ("couldn't open $ARGV[1] for writing: $!");
-}
-
-# Process one array, either for primary or for secondary firmware
-sub process_one_array($$) {
- my $arrname = shift(@_);
- my $binfile = shift(@_);
- my $offset = -1;
- my $str_offset = 0;
-
- # Skip to the beginning of firmware
- $/ = "\x00";
- while (<INFILE>) {
- if (m{FILE: }g) {
- $offset = $str_offset + pos() - 6;
- last;
- }
- $str_offset = tell(INFILE);
- }
-
- if ($offset == -1) {
- error("Cannot find FILE: marker");
- }
-
- my @fwdata = split;
- print $fwdata[1] . "\n";
- seek(INFILE, $offset, 0);
-
- my $blknum = $fwdata[3];
- my $pdrlen = $fwdata[4];
- my $crclen = $fwdata[5];
- my $compatlen = $fwdata[6];
-
- while (!eof(INFILE)) {
- my $byte;
- read INFILE, $byte, 1;
- last if (ord($byte) == 0x1a);
- }
-
- # Walk all blocks
- my $block = $blknum;
- while ($block-- > 0) {
- seek(INFILE, 4, 1);
- my $len = readnum_ba();
- seek(INFILE, $len, 1);
- }
-
- my $img_len = tell(INFILE) - $offset + $pdrlen + $crclen + $compatlen + 2;
- seek(INFILE, $offset, 0);
-
- # Write binary file for the section
- unless (open (BINFILE, "> $binfile")) {
- error ("couldn't open $binfile for writing: $!");
- }
-
- # Output the array
- printf OUTFILE "/* %s %s */\n", $fwdata[1], $fwdata[2];
- printf OUTFILE "static u8 %s[] = {\n", $arrname;
-
- my $count = 0;
- while ($count++ < $img_len) {
- my $byte;
- read INFILE, $byte, 1;
- $byte = ord($byte);
- printf OUTFILE "0x%02x,", $byte;
- printf BINFILE "%c", $byte;
- if ($count % 16 == 0) {
- printf OUTFILE "\n";
- }
- }
-
- if ($img_len % 16) {
- printf OUTFILE "\n";
- }
-
- print OUTFILE "};\n";
- close(BINFILE);
-}
-
-process_one_array("primsym", $ARGV[2]);
-process_one_array("secsym", $ARGV[3]);
-
-close(INFILE);
-close(OUTFILE);
diff --git a/meta-extras/packages/syslog-ng/files/initscript b/meta-extras/packages/syslog-ng/files/initscript
deleted file mode 100644
index b95e8adc2..000000000
--- a/meta-extras/packages/syslog-ng/files/initscript
+++ /dev/null
@@ -1,45 +0,0 @@
-#! /bin/sh
-#
-# This is an init script for openembedded
-# Copy it to /etc/init.d/syslog-ng and type
-# > update-rc.d syslog-ng defaults 5
-#
-
-
-syslog_ng=/usr/sbin/syslog-ng
-test -x "$syslog_ng" || exit 0
-
-case "$1" in
- start)
- echo -n "Starting syslog-ng:"
- start-stop-daemon --start --quiet --exec $syslog_ng
- echo "."
- ;;
- stop)
- echo -n "Stopping syslog-ng:"
- start-stop-daemon --stop --quiet --pidfile /var/run/syslog-ng.pid
- echo "."
- ;;
- reload|force-reload)
- start-stop-daemon --stop --quiet --signal 1 --exec $syslog_ng
- ;;
- restart)
- echo "Stopping syslog-ng:"
- start-stop-daemon --stop --quiet --pidfile /var/run/syslog-ng.pid
- echo -n "Waiting for syslog-ng to die off"
- for i in 1 2 3 ;
- do
- sleep 1
- echo -n "."
- done
- echo ""
- echo -n "Starting syslog-ng:"
- start-stop-daemon --start --quiet --exec $syslog_ng
- echo "."
- ;;
- *)
- echo "Usage: /etc/init.d/syslog-ng {start|stop|reload|restart|force-reload}"
- exit 1
-esac
-
-exit 0
diff --git a/meta-extras/packages/syslog-ng/files/syslog-ng.conf b/meta-extras/packages/syslog-ng/files/syslog-ng.conf
deleted file mode 100644
index 4d1e9f8b2..000000000
--- a/meta-extras/packages/syslog-ng/files/syslog-ng.conf
+++ /dev/null
@@ -1,89 +0,0 @@
-#
-# Syslog-ng example configuration for for Debian GNU/Linux
-#
-# Copyright (c) 1999 anonymous
-# Copyright (c) 1999 Balazs Scheidler
-# $Id: syslog-ng.conf.sample,v 1.3 2003/05/20 08:57:27 asd Exp $
-#
-# Syslog-ng configuration file, compatible with default Debian syslogd
-# installation.
-#
-
-options { long_hostnames(off); sync(0); };
-
-source src { file("/proc/kmsg"); unix-stream("/dev/log"); internal(); };
-source net { udp(); };
-
-destination authlog { file("/var/log/auth.log"); };
-destination syslog { file("/var/log/syslog"); };
-destination cron { file("/var/log/cron.log"); };
-destination daemon { file("/var/log/daemon.log"); };
-destination kern { file("/var/log/kern.log"); };
-destination lpr { file("/var/log/lpr.log"); };
-destination user { file("/var/log/user.log"); };
-destination uucp { file("/var/log/uucp.log"); };
-destination ppp { file("/var/log/ppp.log"); };
-destination mail { file("/var/log/mail.log"); };
-
-destination mailinfo { file("/var/log/mail.info"); };
-destination mailwarn { file("/var/log/mail.warn"); };
-destination mailerr { file("/var/log/mail.err"); };
-
-destination newscrit { file("/var/log/news/news.crit"); };
-destination newserr { file("/var/log/news/news.err"); };
-destination newsnotice { file("/var/log/news/news.notice"); };
-
-destination debug { file("/var/log/debug"); };
-destination messages { file("/var/log/messages"); };
-destination console { usertty("root"); };
-destination console_all { file("/dev/tty12"); };
-#destination loghost { udp("loghost" port(999)); };
-
-
-destination xconsole { pipe("/dev/xconsole"); };
-
-filter f_auth { facility(auth); };
-filter f_authpriv { facility(auth, authpriv); };
-filter f_syslog { not facility(authpriv, mail); };
-filter f_cron { facility(cron); };
-filter f_daemon { facility(daemon); };
-filter f_kern { facility(kern); };
-filter f_lpr { facility(lpr); };
-filter f_mail { facility(mail); };
-filter f_user { facility(user); };
-filter f_uucp { facility(cron); };
-filter f_ppp { facility(local2); };
-filter f_news { facility(news); };
-filter f_debug { not facility(auth, authpriv, news, mail); };
-filter f_messages { level(info..warn)
- and not facility(auth, authpriv, mail, news); };
-filter f_emergency { level(emerg); };
-
-filter f_info { level(info); };
-filter f_notice { level(notice); };
-filter f_warn { level(warn); };
-filter f_crit { level(crit); };
-filter f_err { level(err); };
-
-log { source(src); filter(f_authpriv); destination(authlog); };
-log { source(src); filter(f_syslog); destination(syslog); };
-log { source(src); filter(f_cron); destination(cron); };
-log { source(src); filter(f_daemon); destination(daemon); };
-log { source(src); filter(f_kern); destination(kern); };
-log { source(src); filter(f_lpr); destination(lpr); };
-log { source(src); filter(f_mail); destination(mail); };
-log { source(src); filter(f_user); destination(user); };
-log { source(src); filter(f_uucp); destination(uucp); };
-log { source(src); filter(f_mail); filter(f_info); destination(mailinfo); };
-log { source(src); filter(f_mail); filter(f_warn); destination(mailwarn); };
-log { source(src); filter(f_mail); filter(f_err); destination(mailerr); };
-log { source(src); filter(f_news); filter(f_crit); destination(newscrit); };
-log { source(src); filter(f_news); filter(f_err); destination(newserr); };
-log { source(src); filter(f_news); filter(f_notice); destination(newsnotice); };
-log { source(src); filter(f_debug); destination(debug); };
-log { source(src); filter(f_messages); destination(messages); };
-log { source(src); filter(f_emergency); destination(console); };
-log { source(src); filter(f_ppp); destination(ppp); };
-log { source(src); destination(console_all); };
-
-
diff --git a/meta-extras/packages/syslog-ng/syslog-ng_2.0.5.bb b/meta-extras/packages/syslog-ng/syslog-ng_2.0.5.bb
deleted file mode 100644
index 0d13b922f..000000000
--- a/meta-extras/packages/syslog-ng/syslog-ng_2.0.5.bb
+++ /dev/null
@@ -1,34 +0,0 @@
-DESCRIPTION = "Alternative system logger daemon"
-DEPENDS = "libol flex eventlog glib-2.0"
-PR = "r1"
-
-SRC_URI = "http://www.balabit.com/downloads/files/syslog-ng/sources/stable/src/${P}.tar.gz \
- file://syslog-ng.conf \
- file://initscript"
-
-S = "${WORKDIR}/${PN}-${PV}"
-
-inherit autotools update-rc.d
-
-EXTRA_OECONF = "--with-libol=${STAGING_BINDIR_CROSS}/ --enable-dynamic-linking"
-
-do_install_append() {
- install -d ${D}/${sysconfdir}/${PN}
- install ${WORKDIR}/syslog-ng.conf ${D}${sysconfdir}/syslog-ng.conf
- install -d ${D}/${sysconfdir}/init.d
- install -m 755 ${WORKDIR}/initscript ${D}/${sysconfdir}/init.d/syslog-ng
-}
-
-pkg_postinst() {
- update-rc.d -f syslog remove
-}
-
-pkg_postrm() {
- update-rc.d syslog add 5
-}
-
-CONFFILES_${PN} = "${sysconfdir}/syslog-ng.conf"
-
-INITSCRIPT_NAME = "syslog-ng"
-#INITSCRIPT_PARAMS = "defaults 05"
-INITSCRIPT_PARAMS = "remove"
diff --git a/meta-extras/packages/tasks/task-poky-extras.bb b/meta-extras/packages/tasks/task-poky-extras.bb
deleted file mode 100644
index c983beda9..000000000
--- a/meta-extras/packages/tasks/task-poky-extras.bb
+++ /dev/null
@@ -1,9 +0,0 @@
-PACKAGES = "task-poky-extraapps"
-DESCRIPTION = "Extras Tasks for OpenedHand Poky"
-
-ALLOW_EMPTY = "1"
-
-RDEPENDS_task-poky-extraapps = "\
- madplay \
- maemo-mapper-nohildon \
- mc"
diff --git a/meta-extras/packages/tasks/task-poky-x11-netbook.bb b/meta-extras/packages/tasks/task-poky-x11-netbook.bb
deleted file mode 100644
index 9c5d9ce30..000000000
--- a/meta-extras/packages/tasks/task-poky-x11-netbook.bb
+++ /dev/null
@@ -1,28 +0,0 @@
-#
-# Copyright (C) 2008 Intel.
-#
-
-DESCRIPTION = "Netbook Tasks for Poky"
-PR = "r1"
-
-PACKAGES = "\
- task-poky-x11-netbook \
- task-poky-x11-netbook-dbg \
- task-poky-x11-netbook-dev \
- "
-
-PACKAGE_ARCH = "${MACHINE_ARCH}"
-
-ALLOW_EMPTY = "1"
-
-NETWORK_MANAGER ?= "connman-gnome"
-RDEPENDS_task-poky-x11-netbook = "\
- mutter \
- matchbox-desktop \
- matchbox-session-netbook \
- matchbox-config-gtk \
- xcursor-transparent-theme \
- sato-icon-theme \
- settings-daemon \
- gtk-sato-engine \
- ${NETWORK_MANAGER}"
diff --git a/meta-extras/packages/twisted/twisted-2.5.0/remove-zope-check.patch b/meta-extras/packages/twisted/twisted-2.5.0/remove-zope-check.patch
deleted file mode 100644
index 2bd1b191d..000000000
--- a/meta-extras/packages/twisted/twisted-2.5.0/remove-zope-check.patch
+++ /dev/null
@@ -1,18 +0,0 @@
-Index: Twisted-2.5.0/TwistedCore-2.5.0/twisted/__init__.py
-===================================================================
---- Twisted-2.5.0.orig/TwistedCore-2.5.0/twisted/__init__.py 2007-03-05 16:30:08.117422472 +0100
-+++ Twisted-2.5.0/TwistedCore-2.5.0/twisted/__init__.py 2007-03-05 16:30:13.810553949 +0100
-@@ -14,13 +14,6 @@
- raise RuntimeError("Twisted requires Python 2.3 or later.")
- del sys
-
--# Ensure zope.interface is installed
--try:
-- from zope.interface import Interface
-- del Interface
--except ImportError:
-- raise ImportError("you need zope.interface installed "
-- "(http://zope.org/Products/ZopeInterface/)")
-
- # Ensure compat gets imported
- from twisted.python import compat
diff --git a/meta-extras/packages/twisted/twisted_2.5.0.bb b/meta-extras/packages/twisted/twisted_2.5.0.bb
deleted file mode 100644
index e00b351b2..000000000
--- a/meta-extras/packages/twisted/twisted_2.5.0.bb
+++ /dev/null
@@ -1,175 +0,0 @@
-DESCRIPTION = "Twisted is an event-driven networking framework written in Python and licensed under the LGPL. \
-Twisted supports TCP, UDP, SSL/TLS, multicast, Unix sockets, a large number of protocols \
-(including HTTP, NNTP, IMAP, SSH, IRC, FTP, and others), and much more."
-HOMEPAGE = "http://www.twistedmatrix.com"
-SECTION = "console/network"
-PRIORITY = "optional"
-LICENSE = "LGPL"
-RDEPENDS = "python-core python-zopeinterface"
-RDEPENDS_python-twisted += "python-twisted-bin python-twisted-conch python-twisted-core \
- python-twisted-lore python-twisted-mail python-twisted-names \
- python-twisted-news python-twisted-runner python-twisted-web \
- python-twisted-words"
-PR = "r5"
-
-SRC_URI = "http://tmrc.mit.edu/mirror/twisted/Twisted/2.5/Twisted-${PV}.tar.bz2 \
- file://remove-zope-check.patch;patch=1"
-
-S = "${WORKDIR}/Twisted-${PV}"
-
-inherit distutils
-
-PACKAGES += "python-twisted-zsh python-twisted-test python-twisted-protocols \
- python-twisted-bin python-twisted-conch python-twisted-lore \
- python-twisted-mail python-twisted-names python-twisted-news python-twisted-runner \
- python-twisted-web python-twisted-words python-twisted python-twisted-core \
- "
-
-ALLOW_EMPTY = "1"
-FILES_${PN} = ""
-FILES_python-twisted = ""
-
-FILES_python-twisted-test = " \
-${libdir}/python2.4/site-packages/twisted/python/web/test \
-"
-
-FILES_python-twisted-protocols = " \
-${libdir}/python2.4/site-packages/twisted/python/protocols/ \
-"
-
-FILES_python-twisted-zsh = " \
-${libdir}/python2.4/site-packages/twisted/python/zsh \
-${libdir}/python2.4/site-packages/twisted/python/zshcomp.* \
-"
-
-FILES_python-twisted-bin = " \
-${libdir}/python2.4/site-packages/twisted/protocols/_c_urlarg.so \
-${libdir}/python2.4/site-packages/twisted/spread/cBanana.so"
-
-FILES_python-twisted-conch = " \
-${bindir}/ckeygen \
-${bindir}/tkconch \
-${bindir}/conch \
-${bindir}/conchftp \
-${libdir}/python2.4/site-packages/twisted/plugins/twisted_conch.py \
-${libdir}/python2.4/site-packages/twisted/conch \
-"
-
-FILES_python-twisted-core = " \
-${bindir}/manhole \
-${bindir}/mktap \
-${bindir}/twistd \
-${bindir}/tap2deb \
-${bindir}/tap2rpm \
-${bindir}/tapconvert \
-${bindir}/tkmktap \
-${bindir}/trial \
-${libdir}/python2.4/site-packages/twisted/*.py \
-${libdir}/python2.4/site-packages/twisted/plugins/__init__.py \
-${libdir}/python2.4/site-packages/twisted/plugins/notestplugin.py \
-${libdir}/python2.4/site-packages/twisted/plugins/testplugin.py \
-${libdir}/python2.4/site-packages/twisted/plugins/twisted_ftp.py \
-${libdir}/python2.4/site-packages/twisted/plugins/twisted_inet.py \
-${libdir}/python2.4/site-packages/twisted/plugins/twisted_manhole.py \
-${libdir}/python2.4/site-packages/twisted/plugins/twisted_portforward.py \
-${libdir}/python2.4/site-packages/twisted/plugins/twisted_socks.py \
-${libdir}/python2.4/site-packages/twisted/plugins/twisted_telnet.py \
-${libdir}/python2.4/site-packages/twisted/plugins/twisted_trial.py \
-${libdir}/python2.4/site-packages/twisted/plugins/dropin.cache \
-${libdir}/python2.4/site-packages/twisted/application \
-${libdir}/python2.4/site-packages/twisted/cred \
-${libdir}/python2.4/site-packages/twisted/enterprise \
-${libdir}/python2.4/site-packages/twisted/internet \
-${libdir}/python2.4/site-packages/twisted/manhole \
-${libdir}/python2.4/site-packages/twisted/manhole \
-${libdir}/python2.4/site-packages/twisted/persisted \
-${libdir}/python2.4/site-packages/twisted/protocols\
-${libdir}/python2.4/site-packages/twisted/python\
-${libdir}/python2.4/site-packages/twisted/python/timeoutqueue.py \
-${libdir}/python2.4/site-packages/twisted/python/filepath.py \
-${libdir}/python2.4/site-packages/twisted/python/dxprofile.py \
-${libdir}/python2.4/site-packages/twisted/python/plugin.py \
-${libdir}/python2.4/site-packages/twisted/python/htmlizer.py \
-${libdir}/python2.4/site-packages/twisted/python/__init__.py \
-${libdir}/python2.4/site-packages/twisted/python/dispatch.py \
-${libdir}/python2.4/site-packages/twisted/python/hook.py \
-${libdir}/python2.4/site-packages/twisted/python/threadpool.py \
-${libdir}/python2.4/site-packages/twisted/python/otp.py \
-${libdir}/python2.4/site-packages/twisted/python/usage.py \
-${libdir}/python2.4/site-packages/twisted/python/roots.py \
-${libdir}/python2.4/site-packages/twisted/python/versions.py \
-${libdir}/python2.4/site-packages/twisted/python/urlpath.py \
-${libdir}/python2.4/site-packages/twisted/python/util.py \
-${libdir}/python2.4/site-packages/twisted/python/components.py \
-${libdir}/python2.4/site-packages/twisted/python/logfile.py \
-${libdir}/python2.4/site-packages/twisted/python/runtime.py \
-${libdir}/python2.4/site-packages/twisted/python/reflect.py \
-${libdir}/python2.4/site-packages/twisted/python/context.py \
-${libdir}/python2.4/site-packages/twisted/python/threadable.py \
-${libdir}/python2.4/site-packages/twisted/python/rebuild.py \
-${libdir}/python2.4/site-packages/twisted/python/failure.py \
-${libdir}/python2.4/site-packages/twisted/python/lockfile.py \
-${libdir}/python2.4/site-packages/twisted/python/formmethod.py \
-${libdir}/python2.4/site-packages/twisted/python/finalize.py \
-${libdir}/python2.4/site-packages/twisted/python/win32.py \
-${libdir}/python2.4/site-packages/twisted/python/dist.py \
-${libdir}/python2.4/site-packages/twisted/python/shortcut.py \
-${libdir}/python2.4/site-packages/twisted/python/zipstream.py \
-${libdir}/python2.4/site-packages/twisted/python/release.py \
-${libdir}/python2.4/site-packages/twisted/python/syslog.py \
-${libdir}/python2.4/site-packages/twisted/python/log.py \
-${libdir}/python2.4/site-packages/twisted/python/compat.py \
-${libdir}/python2.4/site-packages/twisted/python/zshcomp.py \
-${libdir}/python2.4/site-packages/twisted/python/procutils.py \
-${libdir}/python2.4/site-packages/twisted/python/text.py \
-${libdir}/python2.4/site-packages/twisted/python/_twisted_zsh_stub \
-${libdir}/python2.4/site-packages/twisted/scripts/ \
-${libdir}/python2.4/site-packages/twisted/spread/ \
-${libdir}/python2.4/site-packages/twisted/tap/ \
-${libdir}/python2.4/site-packages/twisted/trial/ \
-${libdir}/python2.4/site-packages/twisted/__init__.py \
-${libdir}/python2.4/site-packages/twisted/_version.py \
-${libdir}/python2.4/site-packages/twisted/copyright.py \
-${libdir}/python2.4/site-packages/twisted/im.py \
-${libdir}/python2.4/site-packages/twisted/plugin.py \
-"
-
-FILES_python-twisted-lore = " \
-${bindir}/bookify \
-${bindir}/lore \
-${libdir}/python2.4/site-packages/twisted/plugins/twisted_lore.py \
-${libdir}/python2.4/site-packages/twisted/lore \
-"
-
-FILES_python-twisted-mail = " \
-${bindir}/mailmail \
-${libdir}/python2.4/site-packages/twisted/plugins/twisted_mail.py \
-${libdir}/python2.4/site-packages/twisted/mail \
-"
-
-FILES_python-twisted-names = " \
-${libdir}/python2.4/site-packages/twisted/plugins/twisted_names.py \
-${libdir}/python2.4/site-packages/twisted/names \
-"
-
-FILES_python-twisted-news = " \
-${libdir}/python2.4/site-packages/twisted/plugins/twisted_news.py \
-${libdir}/python2.4/site-packages/twisted/news \
-"
-
-FILES_python-twisted-runner = " \
-${libdir}python2.4/site-packages/twisted/runner/portmap.so \
-${libdir}/python2.4/site-packages/twisted/runner\
-"
-
-FILES_python-twisted-web = " \
-${bindir}/websetroot \
-${libdir}/python2.4/site-packages/twisted/plugins/twisted_web.py \
-${libdir}/python2.4/site-packages/twisted/web\
-"
-
-FILES_python-twisted-words = " \
-${bindir}/im \
-${libdir}/python2.4/site-packages/twisted/plugins/twisted_words.py \
-${libdir}/python2.4/site-packages/twisted/words\
-"
diff --git a/meta-extras/packages/uicmoc/uicmoc4-native.inc b/meta-extras/packages/uicmoc/uicmoc4-native.inc
deleted file mode 100644
index b6933628d..000000000
--- a/meta-extras/packages/uicmoc/uicmoc4-native.inc
+++ /dev/null
@@ -1,67 +0,0 @@
-DESCRIPTION = "User-Interface-, Meta-Object-, and Resource Compiler for Qt/[X11|Mac|Embedded] version 4.x"
-DEPENDS = "zlib-native"
-SECTION = "libs"
-HOMEPAGE = "http://www.trolltech.com"
-PRIORITY = "optional"
-LICENSE = "GPL"
-PR = "r1"
-
-SRC_URI = "ftp://ftp.trolltech.com/qt/source/qtopia-core-opensource-src-${PV}.tar.gz"
-S = "${WORKDIR}/qtopia-core-opensource-src-${PV}"
-
-inherit native
-
-EXTRA_OECONF = "-prefix ${STAGING_DIR_NATIVE}/qt4 \
- -qt-libjpeg -qt-gif -system-zlib \
- -no-nis -no-cups -no-exceptions \
- -no-accessibility -no-libjpeg \
- -no-nas-sound -no-sm \
- -no-xshape -no-xinerama \
- -no-xcursor -no-xrandr \
- -no-xrender -no-fontconfig \
- -no-tablet -no-xkb \
- -no-libpng \
- -verbose -release -fast -static \
- -L ${STAGING_LIBDIR_NATIVE} \
- -qt3support "
-# yank default -e
-EXTRA_OEMAKE = " "
-
-do_configure() {
- sed -i 's:^QT += xml qt3support$:QT += xml qt3support network:' "${S}"/src/tools/uic3/uic3.pro
- echo yes | ./configure ${EXTRA_OECONF} || die "Configuring qt failed. EXTRA_OECONF was ${EXTRA_OECONF}"
-}
-
-TOBUILD = "\
- src/tools/moc \
- src/corelib \
- src/sql \
- src/qt3support \
- src/xml \
- src/tools/uic \
- src/tools/rcc \
- src/network \
- src/gui \
- src/tools/uic3 \
-"
-
-do_compile() {
- unset CC CXX CFLAGS LFLAGS CXXFLAGS CPPFLAGS
- for i in ${TOBUILD}; do
- cd ${S}/$i && oe_runmake CC="${CC}" CXX="${CXX}"
- done
-}
-
-do_install() {
- install -d ${D}${bindir}/
- install -m 0755 bin/moc ${D}${bindir}//moc4
- install -m 0755 bin/uic ${D}${bindir}/uic4
- install -m 0755 bin/uic3 ${D}${bindir}/uic34
- install -m 0755 bin/rcc $${D}${bindir}/rcc4
- install -d ${D}/qt4/
- install -m 0644 tools/porting/src/q3porting.xml ${D}/qt4/
-}
-
-sysroot_stage_all_append() {
- sysroot_stage_dir ${D}/qt4 ${SYSROOT_DESTDIR}/${STAGING_DIR_TARGET}/qt4
-}
diff --git a/meta-extras/packages/uicmoc/uicmoc4-native_4.3.2.bb b/meta-extras/packages/uicmoc/uicmoc4-native_4.3.2.bb
deleted file mode 100644
index 1950f6306..000000000
--- a/meta-extras/packages/uicmoc/uicmoc4-native_4.3.2.bb
+++ /dev/null
@@ -1 +0,0 @@
-require uicmoc4-native.inc
diff --git a/meta-extras/packages/xorg-app/iceauth_1.0.2.bb b/meta-extras/packages/xorg-app/iceauth_1.0.2.bb
deleted file mode 100644
index 3dec6f466..000000000
--- a/meta-extras/packages/xorg-app/iceauth_1.0.2.bb
+++ /dev/null
@@ -1,6 +0,0 @@
-require xorg-app-common.inc
-PE = "1"
-
-DESCRIPTION = "a tool for manipulating ICE protocol authorization records"
-
-DEPENDS += " libice"
diff --git a/meta-extras/packages/xorg-app/luit_1.0.2.bb b/meta-extras/packages/xorg-app/luit_1.0.2.bb
deleted file mode 100644
index 00ae395c6..000000000
--- a/meta-extras/packages/xorg-app/luit_1.0.2.bb
+++ /dev/null
@@ -1,8 +0,0 @@
-require xorg-app-common.inc
-PE = "1"
-PR = "r1"
-
-DESCRIPTION = "a filter for locale and ISO 2022 support on Unicode terminals"
-
-DEPENDS += " zlib virtual/libx11 libfontenc libxdmcp"
-
diff --git a/meta-extras/packages/xorg-app/oclock_1.0.1.bb b/meta-extras/packages/xorg-app/oclock_1.0.1.bb
deleted file mode 100644
index b2abeadfb..000000000
--- a/meta-extras/packages/xorg-app/oclock_1.0.1.bb
+++ /dev/null
@@ -1,5 +0,0 @@
-require xorg-app-common.inc
-PE = "1"
-
-DEPENDS += " virtual/libx11 libxmu libxext libxt"
-
diff --git a/meta-extras/packages/xorg-app/rgb_1.0.1.bb b/meta-extras/packages/xorg-app/rgb_1.0.1.bb
deleted file mode 100644
index f3622410e..000000000
--- a/meta-extras/packages/xorg-app/rgb_1.0.1.bb
+++ /dev/null
@@ -1,6 +0,0 @@
-require xorg-app-common.inc
-PE = "1"
-
-DEPENDS += " xproto util-macros"
-
-FILES_${PN} += "${datadir}/X11"
diff --git a/meta-extras/packages/xorg-app/sessreg_1.0.4.bb b/meta-extras/packages/xorg-app/sessreg_1.0.4.bb
deleted file mode 100644
index 6dc94a369..000000000
--- a/meta-extras/packages/xorg-app/sessreg_1.0.4.bb
+++ /dev/null
@@ -1,6 +0,0 @@
-require xorg-app-common.inc
-PE = "1"
-
-DESCRIPTION = "a simple program for managing utmp/wtmp entries"
-
-DEPENDS += " virtual/libx11"
diff --git a/meta-extras/packages/xorg-app/twm_1.0.4.bb b/meta-extras/packages/xorg-app/twm_1.0.4.bb
deleted file mode 100644
index b8e75b2bb..000000000
--- a/meta-extras/packages/xorg-app/twm_1.0.4.bb
+++ /dev/null
@@ -1,11 +0,0 @@
-require xorg-app-common.inc
-PE = "1"
-
-DESCRIPTION = "tiny window manager"
-
-DEPENDS += " virtual/libx11 libxext libxt libxmu"
-
-ALTERNATIVE_PATH = "${bindir}/twm"
-ALTERNATIVE_NAME = "x-window-manager"
-ALTERNATIVE_LINK = "${bindir}/x-window-manager"
-ALTERNATIVE_PRIORITY = "1"
diff --git a/meta-extras/packages/xorg-app/xbiff_1.0.1.bb b/meta-extras/packages/xorg-app/xbiff_1.0.1.bb
deleted file mode 100644
index 5ccac5cf1..000000000
--- a/meta-extras/packages/xorg-app/xbiff_1.0.1.bb
+++ /dev/null
@@ -1,9 +0,0 @@
-require xorg-app-common.inc
-PE = "1"
-PR = "r1"
-
-DEPENDS += " libxaw xbitmaps libxext"
-
-do_configure_prepend () {
- sed -i -e 's/XAW_CHECK_XPRINT_SUPPORT(\(.*\))/PKG_CHECK_MODULES(\1, xaw7)/' ${S}/configure.ac
-}
diff --git a/meta-extras/packages/xorg-app/xclipboard_1.1.0.bb b/meta-extras/packages/xorg-app/xclipboard_1.1.0.bb
deleted file mode 100644
index 852b80375..000000000
--- a/meta-extras/packages/xorg-app/xclipboard_1.1.0.bb
+++ /dev/null
@@ -1,4 +0,0 @@
-require xorg-app-common.inc
-PE = "1"
-
-DEPENDS += " libxaw libxt"
diff --git a/meta-extras/packages/xorg-app/xclock_1.0.4.bb b/meta-extras/packages/xorg-app/xclock_1.0.4.bb
deleted file mode 100644
index bbd839a13..000000000
--- a/meta-extras/packages/xorg-app/xclock_1.0.4.bb
+++ /dev/null
@@ -1,5 +0,0 @@
-require xorg-app-common.inc
-DESCRIPTION = "analog / digital clock for X"
-DEPENDS += " virtual/libx11 libxaw libxrender libxft libxkbfile libxt"
-PE = "1"
-
diff --git a/meta-extras/packages/xorg-app/xcmsdb_1.0.1.bb b/meta-extras/packages/xorg-app/xcmsdb_1.0.1.bb
deleted file mode 100644
index 056d04bf1..000000000
--- a/meta-extras/packages/xorg-app/xcmsdb_1.0.1.bb
+++ /dev/null
@@ -1,4 +0,0 @@
-require xorg-app-common.inc
-PE = "1"
-
-DEPENDS += " virtual/libx11 libxdmcp"
diff --git a/meta-extras/packages/xorg-app/xconsole_1.0.3.bb b/meta-extras/packages/xorg-app/xconsole_1.0.3.bb
deleted file mode 100644
index 0e28d9897..000000000
--- a/meta-extras/packages/xorg-app/xconsole_1.0.3.bb
+++ /dev/null
@@ -1,9 +0,0 @@
-require xorg-app-common.inc
-DESCRIPTION = "monitor system console messages with X"
-DEPENDS += " libxt"
-PE = "1"
-PR = "r1"
-
-do_configure_prepend () {
- sed -i -e 's/XAW_CHECK_XPRINT_SUPPORT(\(.*\))/PKG_CHECK_MODULES(\1, xaw7)/' ${S}/configure.ac
-}
diff --git a/meta-extras/packages/xorg-app/xcursorgen_1.0.2.bb b/meta-extras/packages/xorg-app/xcursorgen_1.0.2.bb
deleted file mode 100644
index 98e619e99..000000000
--- a/meta-extras/packages/xorg-app/xcursorgen_1.0.2.bb
+++ /dev/null
@@ -1,4 +0,0 @@
-require xorg-app-common.inc
-DESCRIPTION = "create an X cursor file from a collection of PNG images"
-DEPENDS += " virtual/libx11 libxcursor libpng"
-PE = "1"
diff --git a/meta-extras/packages/xorg-app/xdriinfo_1.0.2.bb b/meta-extras/packages/xorg-app/xdriinfo_1.0.2.bb
deleted file mode 100644
index b995e9175..000000000
--- a/meta-extras/packages/xorg-app/xdriinfo_1.0.2.bb
+++ /dev/null
@@ -1,4 +0,0 @@
-require xorg-app-common.inc
-DESCRIPTION = "query configuration information of DRI drivers"
-DEPENDS += " virtual/libx11 glproto virtual/libgl"
-PE = "1"
diff --git a/meta-extras/packages/xorg-app/xfd_1.0.1.bb b/meta-extras/packages/xorg-app/xfd_1.0.1.bb
deleted file mode 100644
index f2b0c1283..000000000
--- a/meta-extras/packages/xorg-app/xfd_1.0.1.bb
+++ /dev/null
@@ -1,9 +0,0 @@
-require xorg-app-common.inc
-PE = "1"
-PR = "r1"
-
-DEPENDS += " libxaw freetype fontconfig libxft libxt"
-
-do_configure_prepend () {
- sed -i -e 's/XAW_CHECK_XPRINT_SUPPORT(\(.*\))/PKG_CHECK_MODULES(\1, xaw7)/' ${S}/configure.ac
-}
diff --git a/meta-extras/packages/xorg-app/xfontsel_1.0.2.bb b/meta-extras/packages/xorg-app/xfontsel_1.0.2.bb
deleted file mode 100644
index 294b029b7..000000000
--- a/meta-extras/packages/xorg-app/xfontsel_1.0.2.bb
+++ /dev/null
@@ -1,9 +0,0 @@
-require xorg-app-common.inc
-
-DESCRIPTION = "point and click selection of X11 font names"
-DEPENDS += " libxaw"
-PR = "r1"
-
-do_configure_prepend () {
- sed -i -e 's/XAW_CHECK_XPRINT_SUPPORT(\(.*\))/PKG_CHECK_MODULES(\1, xaw7)/' ${S}/configure.ac
-}
diff --git a/meta-extras/packages/xorg-app/xgamma_1.0.2.bb b/meta-extras/packages/xorg-app/xgamma_1.0.2.bb
deleted file mode 100644
index e5d479aa8..000000000
--- a/meta-extras/packages/xorg-app/xgamma_1.0.2.bb
+++ /dev/null
@@ -1,5 +0,0 @@
-require xorg-app-common.inc
-
-DESCRIPTION = "Alter a monitor's gamma correction through the X server"
-DEPENDS += " virtual/libx11 libxxf86vm"
-PE = "1"
diff --git a/meta-extras/packages/xorg-app/xkbevd_1.0.2.bb b/meta-extras/packages/xorg-app/xkbevd_1.0.2.bb
deleted file mode 100644
index 4223f9343..000000000
--- a/meta-extras/packages/xorg-app/xkbevd_1.0.2.bb
+++ /dev/null
@@ -1,4 +0,0 @@
-require xorg-app-common.inc
-PE = "1"
-
-DEPENDS += " libxkbfile virtual/libx11"
diff --git a/meta-extras/packages/xorg-app/xkbprint_1.0.2.bb b/meta-extras/packages/xorg-app/xkbprint_1.0.2.bb
deleted file mode 100644
index 4223f9343..000000000
--- a/meta-extras/packages/xorg-app/xkbprint_1.0.2.bb
+++ /dev/null
@@ -1,4 +0,0 @@
-require xorg-app-common.inc
-PE = "1"
-
-DEPENDS += " libxkbfile virtual/libx11"
diff --git a/meta-extras/packages/xorg-app/xkbutils_1.0.2.bb b/meta-extras/packages/xorg-app/xkbutils_1.0.2.bb
deleted file mode 100644
index 102a9ba2d..000000000
--- a/meta-extras/packages/xorg-app/xkbutils_1.0.2.bb
+++ /dev/null
@@ -1,5 +0,0 @@
-require xorg-app-common.inc
-
-#DESCRIPTION = ""
-
-DEPENDS += " libxaw libxkbfile virtual/libx11"
diff --git a/meta-extras/packages/xorg-app/xkill_1.0.1.bb b/meta-extras/packages/xorg-app/xkill_1.0.1.bb
deleted file mode 100644
index b6ede179c..000000000
--- a/meta-extras/packages/xorg-app/xkill_1.0.1.bb
+++ /dev/null
@@ -1,4 +0,0 @@
-require xorg-app-common.inc
-PE = "1"
-
-DEPENDS += " virtual/libx11 libxmu"
diff --git a/meta-extras/packages/xorg-app/xload_1.0.2.bb b/meta-extras/packages/xorg-app/xload_1.0.2.bb
deleted file mode 100644
index adc79bc7e..000000000
--- a/meta-extras/packages/xorg-app/xload_1.0.2.bb
+++ /dev/null
@@ -1,10 +0,0 @@
-require xorg-app-common.inc
-
-DESCRIPTION = "system load average display for X"
-DEPENDS += " libxaw libxt"
-PE = "1"
-PR = "r1"
-
-do_configure_prepend () {
- sed -i -e 's/XAW_CHECK_XPRINT_SUPPORT(\(.*\))/PKG_CHECK_MODULES(\1, xaw7)/' ${S}/configure.ac
-}
diff --git a/meta-extras/packages/xorg-app/xlogo_1.0.1.bb b/meta-extras/packages/xorg-app/xlogo_1.0.1.bb
deleted file mode 100644
index 393d99b33..000000000
--- a/meta-extras/packages/xorg-app/xlogo_1.0.1.bb
+++ /dev/null
@@ -1,4 +0,0 @@
-require xorg-app-common.inc
-PE = "1"
-
-DEPENDS += " libxaw libxprintutil libxp libxrender libxft libxext libxt"
diff --git a/meta-extras/packages/xorg-app/xlsatoms_1.0.1.bb b/meta-extras/packages/xorg-app/xlsatoms_1.0.1.bb
deleted file mode 100644
index b6ede179c..000000000
--- a/meta-extras/packages/xorg-app/xlsatoms_1.0.1.bb
+++ /dev/null
@@ -1,4 +0,0 @@
-require xorg-app-common.inc
-PE = "1"
-
-DEPENDS += " virtual/libx11 libxmu"
diff --git a/meta-extras/packages/xorg-app/xlsclients_1.0.1.bb b/meta-extras/packages/xorg-app/xlsclients_1.0.1.bb
deleted file mode 100644
index b6ede179c..000000000
--- a/meta-extras/packages/xorg-app/xlsclients_1.0.1.bb
+++ /dev/null
@@ -1,4 +0,0 @@
-require xorg-app-common.inc
-PE = "1"
-
-DEPENDS += " virtual/libx11 libxmu"
diff --git a/meta-extras/packages/xorg-app/xlsfonts_1.0.2.bb b/meta-extras/packages/xorg-app/xlsfonts_1.0.2.bb
deleted file mode 100644
index 31cd482b6..000000000
--- a/meta-extras/packages/xorg-app/xlsfonts_1.0.2.bb
+++ /dev/null
@@ -1,4 +0,0 @@
-require xorg-app-common.inc
-
-DESCRIPTION = "server font list displayer for X"
-DEPENDS += " virtual/libx11"
diff --git a/meta-extras/packages/xorg-app/xmag_1.0.2.bb b/meta-extras/packages/xorg-app/xmag_1.0.2.bb
deleted file mode 100644
index 1f0160346..000000000
--- a/meta-extras/packages/xorg-app/xmag_1.0.2.bb
+++ /dev/null
@@ -1,10 +0,0 @@
-require xorg-app-common.inc
-
-DESCRIPTION = "magnify parts of the screen"
-DEPENDS += " libxaw libxt"
-PE = "1"
-PR = "r1"
-
-do_configure_prepend () {
- sed -i -e 's/XAW_CHECK_XPRINT_SUPPORT(\(.*\))/PKG_CHECK_MODULES(\1, xaw7)/' ${S}/configure.ac
-}
diff --git a/meta-extras/packages/xorg-app/xmessage_1.0.2.bb b/meta-extras/packages/xorg-app/xmessage_1.0.2.bb
deleted file mode 100644
index 82b6a9a57..000000000
--- a/meta-extras/packages/xorg-app/xmessage_1.0.2.bb
+++ /dev/null
@@ -1,10 +0,0 @@
-require xorg-app-common.inc
-
-DESCRIPTION = "xmessage displays a message or query in a window."
-DEPENDS += " libxaw libxt"
-PE = "1"
-PR = "r1"
-
-do_configure_prepend () {
- sed -i -e 's/XAW_CHECK_XPRINT_SUPPORT(\(.*\))/PKG_CHECK_MODULES(\1, xaw7)/' ${S}/configure.ac
-}
diff --git a/meta-extras/packages/xorg-app/xorg-app-common.inc b/meta-extras/packages/xorg-app/xorg-app-common.inc
deleted file mode 100644
index 11f7fe3e0..000000000
--- a/meta-extras/packages/xorg-app/xorg-app-common.inc
+++ /dev/null
@@ -1,15 +0,0 @@
-DESCRIPTION = "X application"
-HOMEPAGE = "http://www.x.org/"
-SECTION = "x11/apps"
-LICENSE = "MIT-X"
-DEPENDS = "util-macros-native virtual/libx11"
-
-XORG_PN = "${PN}"
-
-SRC_URI = "${XORG_MIRROR}/individual/app/${XORG_PN}-${PV}.tar.bz2"
-
-S = "${WORKDIR}/${XORG_PN}-${PV}"
-
-inherit autotools pkgconfig
-
-FILES_${PN} += " /usr/lib/X11/${XORG_PN}"
diff --git a/meta-extras/packages/xorg-app/xpr_1.0.2.bb b/meta-extras/packages/xorg-app/xpr_1.0.2.bb
deleted file mode 100644
index 96b340c8c..000000000
--- a/meta-extras/packages/xorg-app/xpr_1.0.2.bb
+++ /dev/null
@@ -1,5 +0,0 @@
-require xorg-app-common.inc
-
-DESCRIPTION = "print an X window dump"
-DEPENDS += " libxmu virtual/libx11"
-PE = "1"
diff --git a/meta-extras/packages/xorg-app/xrefresh_1.0.2.bb b/meta-extras/packages/xorg-app/xrefresh_1.0.2.bb
deleted file mode 100644
index 8a569b065..000000000
--- a/meta-extras/packages/xorg-app/xrefresh_1.0.2.bb
+++ /dev/null
@@ -1,4 +0,0 @@
-require xorg-app-common.inc
-PE = "1"
-
-DEPENDS += " virtual/libx11"
diff --git a/meta-extras/packages/xorg-app/xsetroot_1.0.2.bb b/meta-extras/packages/xorg-app/xsetroot_1.0.2.bb
deleted file mode 100644
index 0f63feb79..000000000
--- a/meta-extras/packages/xorg-app/xsetroot_1.0.2.bb
+++ /dev/null
@@ -1,6 +0,0 @@
-require xorg-app-common.inc
-
-DESCRIPTION = "Sets the visual appearance of the X root window"
-LICENSE = "MIT"
-DEPENDS += "libxmu xbitmaps"
-PE = "1"
diff --git a/meta-extras/packages/xorg-app/xstdcmap_1.0.1.bb b/meta-extras/packages/xorg-app/xstdcmap_1.0.1.bb
deleted file mode 100644
index 6a2e50162..000000000
--- a/meta-extras/packages/xorg-app/xstdcmap_1.0.1.bb
+++ /dev/null
@@ -1,4 +0,0 @@
-require xorg-app-common.inc
-PE = "1"
-
-DEPENDS += " libxmu virtual/libx11"
diff --git a/meta-extras/packages/xorg-app/xterm_207.bb b/meta-extras/packages/xorg-app/xterm_207.bb
deleted file mode 100644
index aae600b54..000000000
--- a/meta-extras/packages/xorg-app/xterm_207.bb
+++ /dev/null
@@ -1,24 +0,0 @@
-DESCRIPTION = "xterm app"
-SECTION = "x11/applications"
-LICENSE = "MIT-X"
-
-DEPENDS = "libxaw xproto virtual/libx11 xextproto xext xau libxpm ncurses"
-
-SRC_URI = "${XORG_MIRROR}/development/X11R7.0-RC4/extras/${PN}-${PV}.tar.gz"
-
-inherit autotools pkgconfig
-
-FILES_${PN} += " /usr/lib/X11"
-
-#EXTRA_OERECONF = " -I${S}/xterm.m4"
-EXTRA_OECONF = " --x-includes=${STAGING_INCDIR} --x-libraries=${STAGING_LIBDIR} FREETYPE_CONFIG=${STAGING_BINDIR_CROSS}/freetype-config --disable-imake"
-
-#do_configure_prepend () {
-# mv ${S}/aclocal.m4 ${S}/xterm.m4
-#}
-do_configure() {
-
- sed -e "s%/usr/contrib/X11R6%${STAGING_LIBDIR}%g" -i configure
-
- oe_runconf
-}
diff --git a/meta-extras/packages/xorg-app/xtrap_1.0.2.bb b/meta-extras/packages/xorg-app/xtrap_1.0.2.bb
deleted file mode 100644
index cf87d235c..000000000
--- a/meta-extras/packages/xorg-app/xtrap_1.0.2.bb
+++ /dev/null
@@ -1,4 +0,0 @@
-require xorg-app-common.inc
-PE = "1"
-
-DEPENDS += " virtual/libx11 libxtrap"
diff --git a/meta-extras/packages/xorg-app/xvidtune_1.0.1.bb b/meta-extras/packages/xorg-app/xvidtune_1.0.1.bb
deleted file mode 100644
index 8a20fff4e..000000000
--- a/meta-extras/packages/xorg-app/xvidtune_1.0.1.bb
+++ /dev/null
@@ -1,9 +0,0 @@
-require xorg-app-common.inc
-PE = "1"
-PR = "r1"
-
-DEPENDS += " libxaw libxxf86vm libxt"
-
-do_configure_prepend () {
- sed -i -e 's/XAW_CHECK_XPRINT_SUPPORT(\(.*\))/PKG_CHECK_MODULES(\1, xaw7)/' ${S}/configure.ac
-}
diff --git a/meta-extras/packages/xorg-app/xvinfo_1.0.2.bb b/meta-extras/packages/xorg-app/xvinfo_1.0.2.bb
deleted file mode 100644
index ac27f13f3..000000000
--- a/meta-extras/packages/xorg-app/xvinfo_1.0.2.bb
+++ /dev/null
@@ -1,5 +0,0 @@
-require xorg-app-common.inc
-
-DESCRIPTION = "Print out X-Video extension adaptor information"
-DEPENDS += " libxv"
-PE = "1"
diff --git a/meta-extras/packages/xorg-app/xwd_1.0.1.bb b/meta-extras/packages/xorg-app/xwd_1.0.1.bb
deleted file mode 100644
index 6a2e50162..000000000
--- a/meta-extras/packages/xorg-app/xwd_1.0.1.bb
+++ /dev/null
@@ -1,4 +0,0 @@
-require xorg-app-common.inc
-PE = "1"
-
-DEPENDS += " libxmu virtual/libx11"
diff --git a/meta-extras/packages/xorg-app/xwud_1.0.1.bb b/meta-extras/packages/xorg-app/xwud_1.0.1.bb
deleted file mode 100644
index 8a569b065..000000000
--- a/meta-extras/packages/xorg-app/xwud_1.0.1.bb
+++ /dev/null
@@ -1,4 +0,0 @@
-require xorg-app-common.inc
-PE = "1"
-
-DEPENDS += " virtual/libx11"
diff --git a/meta-extras/packages/xorg-data/xbitmaps_1.0.1.bb b/meta-extras/packages/xorg-data/xbitmaps_1.0.1.bb
deleted file mode 100644
index f622d769d..000000000
--- a/meta-extras/packages/xorg-data/xbitmaps_1.0.1.bb
+++ /dev/null
@@ -1,5 +0,0 @@
-require xorg-data-common.inc
-
-DESCRIPTION = "Common X11 Bitmaps"
-LICENSE = "MIT"
-DEPENDS += "libxmu"
diff --git a/meta-extras/packages/xorg-data/xorg-data-common.inc b/meta-extras/packages/xorg-data/xorg-data-common.inc
deleted file mode 100644
index e12876339..000000000
--- a/meta-extras/packages/xorg-data/xorg-data-common.inc
+++ /dev/null
@@ -1,10 +0,0 @@
-HOMEPAGE = "http://www.x.org"
-SECTION = "x11/data"
-LICENSE = "MIT-X"
-
-XORG_PN = "${PN}"
-
-SRC_URI = "${XORG_MIRROR}/individual/data/${XORG_PN}-${PV}.tar.bz2"
-S = "${WORKDIR}/${XORG_PN}-${PV}"
-
-inherit autotools pkgconfig
diff --git a/meta-extras/packages/xorg-xserver/xserver-kdrive-glamo/fbdev-not-fix.patch b/meta-extras/packages/xorg-xserver/xserver-kdrive-glamo/fbdev-not-fix.patch
deleted file mode 100644
index f87e7cc2c..000000000
--- a/meta-extras/packages/xorg-xserver/xserver-kdrive-glamo/fbdev-not-fix.patch
+++ /dev/null
@@ -1,14 +0,0 @@
---- xserver/hw/kdrive/fbdev/fbdev.c~ 2004-09-15 00:08:10.000000000 +0100
-+++ xserver/hw/kdrive/fbdev/fbdev.c 2004-11-13 17:47:02.000000000 +0000
-@@ -198,6 +198,11 @@
- return FALSE;
- }
-
-+ /* Re-get the "fixed" parameters since they might have changed */
-+ k = ioctl (priv->fd, FBIOGET_FSCREENINFO, &priv->fix);
-+ if (k < 0)
-+ perror ("FBIOGET_FSCREENINFO");
-+
- /* Now get the new screeninfo */
- ioctl (priv->fd, FBIOGET_VSCREENINFO, &priv->var);
- depth = priv->var.bits_per_pixel;
diff --git a/meta-extras/packages/xorg-xserver/xserver-kdrive-glamo/fix-picturestr-include-order.patch b/meta-extras/packages/xorg-xserver/xserver-kdrive-glamo/fix-picturestr-include-order.patch
deleted file mode 100644
index 3da235e1e..000000000
--- a/meta-extras/packages/xorg-xserver/xserver-kdrive-glamo/fix-picturestr-include-order.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-# Reverse include order in render/picturestr.h to be able to compile against renderproto >= 0.9.3
-Index: xorg-server-1.2.0/render/picturestr.h
-===================================================================
---- xorg-server-1.2.0.orig/render/picturestr.h 2008-02-09 22:54:46.000000000 +0100
-+++ xorg-server-1.2.0/render/picturestr.h 2008-02-09 22:54:50.000000000 +0100
-@@ -26,8 +26,8 @@
- #ifndef _PICTURESTR_H_
- #define _PICTURESTR_H_
-
--#include "glyphstr.h"
- #include "scrnintstr.h"
-+#include "glyphstr.h"
- #include "resource.h"
-
- typedef struct _DirectFormat {
diff --git a/meta-extras/packages/xorg-xserver/xserver-kdrive-glamo/fix_default_mode.patch b/meta-extras/packages/xorg-xserver/xserver-kdrive-glamo/fix_default_mode.patch
deleted file mode 100644
index edc514630..000000000
--- a/meta-extras/packages/xorg-xserver/xserver-kdrive-glamo/fix_default_mode.patch
+++ /dev/null
@@ -1,26 +0,0 @@
----
- hw/kdrive/src/kmode.c | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-Index: xorg-server-1.3.0.0/hw/kdrive/src/kmode.c
-===================================================================
---- xorg-server-1.3.0.0.orig/hw/kdrive/src/kmode.c 2007-05-16 10:30:29.000000000 +0100
-+++ xorg-server-1.3.0.0/hw/kdrive/src/kmode.c 2007-05-16 10:31:08.000000000 +0100
-@@ -106,6 +106,8 @@ const KdMonitorTiming kdMonitorTimings[
- 16, 120, 176, KdSyncNegative, /* 37.861 */
- 1, 20, 24, KdSyncNegative, /* 72.809 */
- },
-+ /* DEFAULT */
-+#define MONITOR_TIMING_DEFAULT 13
- { 640, 480, 60, 25175, /* VESA */
- 16, 48, 160, KdSyncNegative, /* 31.469 */
- 10, 33, 45, KdSyncNegative, /* 59.940 */
-@@ -127,8 +129,6 @@ const KdMonitorTiming kdMonitorTimings[
- 16, 160, 256, KdSyncPositive, /* 46.875 */
- 1, 21, 25, KdSyncPositive, /* 75.000 */
- },
-- /* DEFAULT */
--#define MONITOR_TIMING_DEFAULT 9
- { 800, 600, 72, 50000, /* VESA */
- 56, 64, 240, KdSyncPositive, /* 48.077 */
- 37, 23, 66, KdSyncPositive, /* 72.188 */
diff --git a/meta-extras/packages/xorg-xserver/xserver-kdrive-glamo/gumstix-kmode.patch b/meta-extras/packages/xorg-xserver/xserver-kdrive-glamo/gumstix-kmode.patch
deleted file mode 100644
index 56817a700..000000000
--- a/meta-extras/packages/xorg-xserver/xserver-kdrive-glamo/gumstix-kmode.patch
+++ /dev/null
@@ -1,23 +0,0 @@
---- /tmp/kmode.c 2007-10-07 11:49:52.000000000 +0200
-+++ xorg-server-1.3.0.0/hw/kdrive/src/kmode.c 2007-10-07 11:51:57.962045000 +0200
-@@ -119,7 +119,19 @@
- 0, 0, 0, KdSyncNegative, /* 59.940 */
- },
-
--
-+
-+/* gumstix console-vx */
-+ { 480, 272, 60, 0, /* VESA */
-+ 0, 0, 0, KdSyncNegative, /* 31.469 */
-+ 0, 0, 0, KdSyncNegative, /* 59.940 */
-+ },
-+
-+ { 272, 480, 60, 0, /* VESA */
-+ 0, 0, 0, KdSyncNegative, /* 31.469 */
-+ 0, 0, 0, KdSyncNegative, /* 59.940 */
-+ },
-+
-+
- /* 800x600 modes */
- { 800, 600, 85, 56250, /* VESA */
- 32, 152, 248, KdSyncPositive, /* 53.674 */
diff --git a/meta-extras/packages/xorg-xserver/xserver-kdrive-glamo/kdrive-1.3-18bpp.patch b/meta-extras/packages/xorg-xserver/xserver-kdrive-glamo/kdrive-1.3-18bpp.patch
deleted file mode 100644
index 714536934..000000000
--- a/meta-extras/packages/xorg-xserver/xserver-kdrive-glamo/kdrive-1.3-18bpp.patch
+++ /dev/null
@@ -1,419 +0,0 @@
-diff -Nurd xorg-server-1.3.0.0/hw/kdrive/fbdev/fbdev.c xorg-server-1.3.0.0.patched/hw/kdrive/fbdev/fbdev.c
---- xorg-server-1.3.0.0/hw/kdrive/fbdev/fbdev.c 2006-11-16 19:01:23.000000000 +0100
-+++ xorg-server-1.3.0.0.patched/hw/kdrive/fbdev/fbdev.c 2007-09-15 16:53:20.152045000 +0200
-@@ -213,6 +213,24 @@
-
- /* Now get the new screeninfo */
- ioctl (priv->fd, FBIOGET_VSCREENINFO, &priv->var);
-+ /* Special treatment of 18bpp */
-+ if ((priv->var.red.length == 6) && (priv->var.green.length == 6) &&
-+ (priv->var.blue.length == 6))
-+ {
-+ priv->var.red.length = 8;
-+ if (priv->var.red.offset != 0)
-+ priv->var.red.offset = 16;
-+ priv->var.green.length = 8;
-+ priv->var.green.offset = 8;
-+ priv->var.blue.length = 8;
-+ if (priv->var.blue.offset != 0)
-+ priv->var.blue.offset = 16;
-+ priv->var.bits_per_pixel = 32;
-+ priv->Have18Bpp = TRUE;
-+ }
-+ else
-+ priv->Have18Bpp = FALSE;
-+
- depth = priv->var.bits_per_pixel;
- gray = priv->var.grayscale;
-
-@@ -334,7 +352,7 @@
- KdMouseMatrix m;
- FbdevPriv *priv = screen->card->driver;
-
-- if (scrpriv->randr != RR_Rotate_0)
-+ if (scrpriv->randr != RR_Rotate_0 || priv->Have18Bpp)
- scrpriv->shadow = TRUE;
- else
- scrpriv->shadow = FALSE;
-@@ -398,6 +416,354 @@
- return TRUE;
- }
-
-+void
-+shadowUpdatePacked18 (ScreenPtr pScreen,
-+ shadowBufPtr pBuf)
-+{
-+ RegionPtr damage = shadowDamage (pBuf);
-+ PixmapPtr pShadow = pBuf->pPixmap;
-+ int nbox = REGION_NUM_RECTS (damage);
-+ BoxPtr pbox = REGION_RECTS (damage);
-+ FbBits *shaBase, *shaLine, *sha;
-+ FbStride shaStride;
-+ int scrBase, scrLine, scr;
-+ int shaBpp;
-+ int shaXoff, shaYoff; /* XXX assumed to be zero */
-+ int x, y, w, h, width;
-+ int i;
-+ char *winBase = NULL, *win;
-+ CARD32 winSize;
-+
-+ fbGetDrawable (&pShadow->drawable, shaBase, shaStride, shaBpp, shaXoff, shaYoff);
-+ while (nbox--)
-+ {
-+ x = pbox->x1 * shaBpp;
-+ y = pbox->y1;
-+ w = (pbox->x2 - pbox->x1) * shaBpp;
-+ h = pbox->y2 - pbox->y1;
-+
-+ scrLine = (x >> FB_SHIFT);
-+ shaLine = shaBase + y * shaStride + (x >> FB_SHIFT);
-+
-+ x &= FB_MASK;
-+ w = (w + x + FB_MASK) >> FB_SHIFT;
-+
-+ while (h--)
-+ {
-+ winSize = 0;
-+ scrBase = 0;
-+ width = w;
-+ scr = scrLine;
-+ sha = shaLine;
-+ while (width) {
-+ /* how much remains in this window */
-+ i = scrBase + winSize - scr;
-+ if (i <= 0 || scr < scrBase)
-+ {
-+ winBase = (char *) (*pBuf->window) (pScreen,
-+ y,
-+ scr * 3,
-+ SHADOW_WINDOW_WRITE,
-+ &winSize,
-+ pBuf->closure);
-+ if(!winBase)
-+ return;
-+ scrBase = scr;
-+ winSize /= 3;
-+ i = winSize;
-+ }
-+ win = winBase + (scr - scrBase);
-+ if (i > width)
-+ i = width;
-+ width -= i;
-+ scr += i;
-+#define PickBit(a,i) (((a) >> (i)) & 1)
-+ while (i--)
-+ {
-+ FbBits bits = *sha++;
-+ *win++ = ((bits & 0xFC) >> 2) |
-+ ((bits & 0xC00) >> 4);
-+ *win++ = ((bits & 0xF000) >> 12) |
-+ ((bits & 0x3C0000) >> 14);
-+ *win++ = (bits & 0xC00000) >> 22;
-+ }
-+ }
-+ shaLine += shaStride;
-+ y++;
-+ }
-+ pbox++;
-+ }
-+}
-+
-+#define LEFT_TO_RIGHT 1
-+#define RIGHT_TO_LEFT -1
-+#define TOP_TO_BOTTOM 2
-+#define BOTTOM_TO_TOP -2
-+
-+void
-+shadowUpdateRotatePacked18 (ScreenPtr pScreen,
-+ shadowBufPtr pBuf)
-+{
-+ RegionPtr damage = shadowDamage (pBuf);
-+ PixmapPtr pShadow = pBuf->pPixmap;
-+ int nbox = REGION_NUM_RECTS (damage);
-+ BoxPtr pbox = REGION_RECTS (damage);
-+ FbBits *shaBits;
-+ FbStride shaStride;
-+ int shaBpp;
-+ int shaXoff, shaYoff;
-+ int box_x1, box_x2, box_y1, box_y2;
-+ int sha_x1 = 0, sha_y1 = 0;
-+ int scr_x1 = 0, scr_x2 = 0, scr_y1 = 0, scr_y2 = 0, scr_w, scr_h;
-+ int scr_x, scr_y;
-+ int w;
-+ int pixelsPerBits;
-+ int pixelsMask;
-+ FbStride shaStepOverY = 0, shaStepDownY = 0;
-+ FbStride shaStepOverX = 0, shaStepDownX = 0;
-+ FbBits *shaLine, *sha;
-+ int shaHeight = pShadow->drawable.height;
-+ int shaWidth = pShadow->drawable.width;
-+ FbBits shaMask;
-+ int shaFirstShift, shaShift;
-+ int o_x_dir;
-+ int o_y_dir;
-+ int x_dir;
-+ int y_dir;
-+
-+ fbGetDrawable (&pShadow->drawable, shaBits, shaStride, shaBpp, shaXoff, shaYoff);
-+ pixelsPerBits = (sizeof (FbBits) * 8) / shaBpp;
-+ pixelsMask = ~(pixelsPerBits - 1);
-+ shaMask = FbBitsMask (FB_UNIT-shaBpp, shaBpp);
-+ /*
-+ * Compute rotation related constants to walk the shadow
-+ */
-+ o_x_dir = LEFT_TO_RIGHT;
-+ o_y_dir = TOP_TO_BOTTOM;
-+ if (pBuf->randr & SHADOW_REFLECT_X)
-+ o_x_dir = -o_x_dir;
-+ if (pBuf->randr & SHADOW_REFLECT_Y)
-+ o_y_dir = -o_y_dir;
-+ switch (pBuf->randr & (SHADOW_ROTATE_ALL)) {
-+ case SHADOW_ROTATE_0: /* upper left shadow -> upper left screen */
-+ default:
-+ x_dir = o_x_dir;
-+ y_dir = o_y_dir;
-+ break;
-+ case SHADOW_ROTATE_90: /* upper right shadow -> upper left screen */
-+ x_dir = o_y_dir;
-+ y_dir = -o_x_dir;
-+ break;
-+ case SHADOW_ROTATE_180: /* lower right shadow -> upper left screen */
-+ x_dir = -o_x_dir;
-+ y_dir = -o_y_dir;
-+ break;
-+ case SHADOW_ROTATE_270: /* lower left shadow -> upper left screen */
-+ x_dir = -o_y_dir;
-+ y_dir = o_x_dir;
-+ break;
-+ }
-+ switch (x_dir) {
-+ case LEFT_TO_RIGHT:
-+ shaStepOverX = shaBpp;
-+ shaStepOverY = 0;
-+ break;
-+ case TOP_TO_BOTTOM:
-+ shaStepOverX = 0;
-+ shaStepOverY = shaStride;
-+ break;
-+ case RIGHT_TO_LEFT:
-+ shaStepOverX = -shaBpp;
-+ shaStepOverY = 0;
-+ break;
-+ case BOTTOM_TO_TOP:
-+ shaStepOverX = 0;
-+ shaStepOverY = -shaStride;
-+ break;
-+ }
-+ switch (y_dir) {
-+ case TOP_TO_BOTTOM:
-+ shaStepDownX = 0;
-+ shaStepDownY = shaStride;
-+ break;
-+ case RIGHT_TO_LEFT:
-+ shaStepDownX = -shaBpp;
-+ shaStepDownY = 0;
-+ break;
-+ case BOTTOM_TO_TOP:
-+ shaStepDownX = 0;
-+ shaStepDownY = -shaStride;
-+ break;
-+ case LEFT_TO_RIGHT:
-+ shaStepDownX = shaBpp;
-+ shaStepDownY = 0;
-+ break;
-+ }
-+
-+ while (nbox--)
-+ {
-+ box_x1 = pbox->x1;
-+ box_y1 = pbox->y1;
-+ box_x2 = pbox->x2;
-+ box_y2 = pbox->y2;
-+ pbox++;
-+
-+ /*
-+ * Compute screen and shadow locations for this box
-+ */
-+ switch (x_dir) {
-+ case LEFT_TO_RIGHT:
-+ scr_x1 = box_x1 & pixelsMask;
-+ scr_x2 = (box_x2 + pixelsPerBits - 1) & pixelsMask;
-+
-+ sha_x1 = scr_x1;
-+ break;
-+ case TOP_TO_BOTTOM:
-+ scr_x1 = box_y1 & pixelsMask;
-+ scr_x2 = (box_y2 + pixelsPerBits - 1) & pixelsMask;
-+
-+ sha_y1 = scr_x1;
-+ break;
-+ case RIGHT_TO_LEFT:
-+ scr_x1 = (shaWidth - box_x2) & pixelsMask;
-+ scr_x2 = (shaWidth - box_x1 + pixelsPerBits - 1) & pixelsMask;
-+
-+ sha_x1 = (shaWidth - scr_x1 - 1);
-+ break;
-+ case BOTTOM_TO_TOP:
-+ scr_x1 = (shaHeight - box_y2) & pixelsMask;
-+ scr_x2 = (shaHeight - box_y1 + pixelsPerBits - 1) & pixelsMask;
-+
-+ sha_y1 = (shaHeight - scr_x1 - 1);
-+ break;
-+ }
-+ switch (y_dir) {
-+ case TOP_TO_BOTTOM:
-+ scr_y1 = box_y1;
-+ scr_y2 = box_y2;
-+
-+ sha_y1 = scr_y1;
-+ break;
-+ case RIGHT_TO_LEFT:
-+ scr_y1 = (shaWidth - box_x2);
-+ scr_y2 = (shaWidth - box_x1);
-+
-+ sha_x1 = box_x2 - 1;
-+ break;
-+ case BOTTOM_TO_TOP:
-+ scr_y1 = shaHeight - box_y2;
-+ scr_y2 = shaHeight - box_y1;
-+
-+ sha_y1 = box_y2 - 1;
-+ break;
-+ case LEFT_TO_RIGHT:
-+ scr_y1 = box_x1;
-+ scr_y2 = box_x2;
-+
-+ sha_x1 = box_x1;
-+ break;
-+ }
-+ scr_w = ((scr_x2 - scr_x1) * shaBpp) >> FB_SHIFT;
-+ scr_h = scr_y2 - scr_y1;
-+ scr_y = scr_y1;
-+
-+ /* shift amount for first pixel on screen */
-+ shaFirstShift = FB_UNIT - ((sha_x1 * shaBpp) & FB_MASK) - shaBpp;
-+
-+ /* pointer to shadow data first placed on screen */
-+ shaLine = (shaBits +
-+ sha_y1 * shaStride +
-+ ((sha_x1 * shaBpp) >> FB_SHIFT));
-+
-+ /*
-+ * Copy the bits, always write across the physical frame buffer
-+ * to take advantage of write combining.
-+ */
-+ while (scr_h--)
-+ {
-+ int p;
-+ FbBits bits;
-+ char *win;
-+ int i;
-+ CARD32 winSize;
-+
-+ sha = shaLine;
-+ shaShift = shaFirstShift;
-+ w = scr_w;
-+ scr_x = scr_x1 * shaBpp >> FB_SHIFT;
-+
-+ while (w)
-+ {
-+ /*
-+ * Map some of this line
-+ */
-+ win = (char *) (*pBuf->window) (pScreen,
-+ scr_y,
-+ scr_x * 3,
-+ SHADOW_WINDOW_WRITE,
-+ &winSize,
-+ pBuf->closure);
-+ i = winSize / 3;
-+ if (i > w)
-+ i = w;
-+ w -= i;
-+ scr_x += i;
-+ /*
-+ * Copy the portion of the line mapped
-+ */
-+ while (i--)
-+ {
-+ bits = 0;
-+ p = pixelsPerBits;
-+ /*
-+ * Build one word of output from multiple inputs
-+ *
-+ * Note that for 90/270 rotations, this will walk
-+ * down the shadow hitting each scanline once.
-+ * This is probably not very efficient.
-+ */
-+ while (p--)
-+ {
-+ bits = FbScrLeft(bits, shaBpp);
-+ bits |= FbScrRight (*sha, shaShift) & shaMask;
-+
-+ shaShift -= shaStepOverX;
-+ if (shaShift >= FB_UNIT)
-+ {
-+ shaShift -= FB_UNIT;
-+ sha--;
-+ }
-+ else if (shaShift < 0)
-+ {
-+ shaShift += FB_UNIT;
-+ sha++;
-+ }
-+ sha += shaStepOverY;
-+ }
-+ *win++ = ((bits & 0xFC) >> 2) |
-+ ((bits & 0xC00) >> 4);
-+ *win++ = ((bits & 0xF000) >> 12) |
-+ ((bits & 0x3C0000) >> 14);
-+ *win++ = (bits & 0xC00000) >> 22;
-+ }
-+ }
-+ scr_y++;
-+ shaFirstShift -= shaStepDownX;
-+ if (shaFirstShift >= FB_UNIT)
-+ {
-+ shaFirstShift -= FB_UNIT;
-+ shaLine--;
-+ }
-+ else if (shaFirstShift < 0)
-+ {
-+ shaFirstShift += FB_UNIT;
-+ shaLine++;
-+ }
-+ shaLine += shaStepDownY;
-+ }
-+ }
-+}
-+
- Bool
- fbdevSetShadow (ScreenPtr pScreen)
- {
-@@ -418,7 +784,14 @@
-
- window = fbdevWindowLinear;
- update = 0;
-- if (scrpriv->randr)
-+ if (priv->Have18Bpp)
-+ {
-+ if (scrpriv->randr != RR_Rotate_0)
-+ update = shadowUpdateRotatePacked18;
-+ else
-+ update = shadowUpdatePacked18;
-+ }
-+ else if (scrpriv->randr)
- if (priv->var.bits_per_pixel == 16) {
- switch (scrpriv->randr) {
- case RR_Rotate_90:
-diff -Nurd xorg-server-1.3.0.0/hw/kdrive/fbdev/fbdev.h xorg-server-1.3.0.0.patched/hw/kdrive/fbdev/fbdev.h
---- xorg-server-1.3.0.0/hw/kdrive/fbdev/fbdev.h 2006-09-18 08:04:17.000000000 +0200
-+++ xorg-server-1.3.0.0.patched/hw/kdrive/fbdev/fbdev.h 2007-09-15 16:45:07.362045000 +0200
-@@ -44,6 +44,7 @@
- int fd;
- char *fb;
- char *fb_base;
-+ Bool Have18Bpp;
- } FbdevPriv;
-
- typedef struct _fbdevScrPriv {
diff --git a/meta-extras/packages/xorg-xserver/xserver-kdrive-glamo/kmode-palm.patch b/meta-extras/packages/xorg-xserver/xserver-kdrive-glamo/kmode-palm.patch
deleted file mode 100644
index 255e707b5..000000000
--- a/meta-extras/packages/xorg-xserver/xserver-kdrive-glamo/kmode-palm.patch
+++ /dev/null
@@ -1,34 +0,0 @@
---- kmode.c 2006-05-03 19:48:42.000000000 +0200
-+++ xserver/hw/kdrive/src/kmode.c 2006-05-03 19:50:43.000000000 +0200
-@@ -32,6 +32,31 @@
- /* H V Hz KHz */
- /* FP BP BLANK POLARITY */
-
-+ /* Treo 650 */
-+
-+ { 320, 320, 64, 16256,
-+ 17, 12, 32, KdSyncNegative,
-+ 1, 11, 14, KdSyncNegative,
-+ },
-+
-+ { 320, 320, 64, 0,
-+ 0, 0, 0, KdSyncNegative,
-+ 0, 0, 0, KdSyncNegative,
-+ },
-+
-+ /* LifeDrive/T3/TX modes */
-+
-+ { 320, 480, 64, 16256,
-+ 17, 12, 32, KdSyncNegative,
-+ 1, 11, 14, KdSyncNegative,
-+ },
-+
-+ { 480, 320, 64, 0,
-+ 0, 0, 0, KdSyncNegative,
-+ 0, 0, 0, KdSyncNegative,
-+ },
-+
-+
- /* IPAQ modeline:
- *
- * Modeline "320x240" 5.7222 320 337 340 352 240 241 244 254"
diff --git a/meta-extras/packages/xorg-xserver/xserver-kdrive-glamo/kmode.patch b/meta-extras/packages/xorg-xserver/xserver-kdrive-glamo/kmode.patch
deleted file mode 100644
index 5ad3e4e27..000000000
--- a/meta-extras/packages/xorg-xserver/xserver-kdrive-glamo/kmode.patch
+++ /dev/null
@@ -1,28 +0,0 @@
---- /tmp/kmode.c 2005-06-27 14:46:19.716843288 +0200
-+++ xserver/hw/kdrive/src/kmode.c 2005-06-27 14:46:30.070269328 +0200
-@@ -41,6 +41,11 @@
- 1, 11, 14, KdSyncNegative,
- },
-
-+ { 240, 320, 64, 0,
-+ 0, 0, 0, KdSyncNegative,
-+ 0, 0, 0, KdSyncNegative,
-+ },
-+
- /* Other VESA modes */
- { 640, 350, 85, 31500, /* VESA */
- 32, 96, 192, KdSyncPositive, /* 26.413 */
-@@ -80,6 +85,13 @@
- 16, 48, 160, KdSyncNegative, /* 31.469 */
- 10, 33, 45, KdSyncNegative, /* 59.940 */
- },
-+
-+
-+ { 480, 640, 60, 0, /* VESA */
-+ 0, 0, 0, KdSyncNegative, /* 31.469 */
-+ 0, 0, 0, KdSyncNegative, /* 59.940 */
-+ },
-+
-
- /* 800x600 modes */
- { 800, 600, 85, 56250, /* VESA */
diff --git a/meta-extras/packages/xorg-xserver/xserver-kdrive-glamo/w100-autofoo.patch b/meta-extras/packages/xorg-xserver/xserver-kdrive-glamo/w100-autofoo.patch
deleted file mode 100644
index b53e327da..000000000
--- a/meta-extras/packages/xorg-xserver/xserver-kdrive-glamo/w100-autofoo.patch
+++ /dev/null
@@ -1,54 +0,0 @@
-Index: git/hw/kdrive/Makefile.am
-===================================================================
---- git.orig/hw/kdrive/Makefile.am 2006-09-02 12:12:13.000000000 +0200
-+++ git/hw/kdrive/Makefile.am 2006-09-02 12:12:14.000000000 +0200
-@@ -7,6 +7,10 @@
- FBDEV_SUBDIRS = fbdev epson
- endif
-
-+if KDRIVEW100
-+W100_SUBDIRS = w100
-+endif
-+
- if XSDLSERVER
- XSDL_SUBDIRS = sdl
- endif
-@@ -20,6 +24,7 @@
- linux \
- $(XSDL_SUBDIRS) \
- $(FBDEV_SUBDIRS) \
-+ $(W100_SUBDIRS) \
- $(VESA_SUBDIRS) \
- $(XEPHYR_SUBDIRS) \
- fake
-Index: git/configure.ac
-===================================================================
---- git.orig/configure.ac 2006-09-02 12:12:14.000000000 +0200
-+++ git/configure.ac 2006-09-02 12:12:14.000000000 +0200
-@@ -442,6 +442,7 @@
- AC_ARG_ENABLE(kdrive, AS_HELP_STRING([--enable-kdrive], [Build kdrive servers (default: no)]), [KDRIVE=$enableval], [KDRIVE=no])
- AC_ARG_ENABLE(xephyr, AS_HELP_STRING([--enable-xephyr], [Build the kdrive Xephyr server (default: auto)]), [XEPHYR=$enableval], [XEPHYR=auto])
- AC_ARG_ENABLE(xsdl, AS_HELP_STRING([--enable-xsdl], [Build the kdrive Xsdl server (default: auto)]), [XSDL=$enableval], [XSDL=auto])
-+AC_ARG_ENABLE(w100, AS_HELP_STRING([--enable-w100], [Build the kdrive Xw100 server (default: no)]), [KDRIVEW100=$enableval], [KDRIVEW100=no])
- dnl xprint
- AC_ARG_ENABLE(freetype, AS_HELP_STRING([ --enable-freetype], [Build Xprint FreeType backend (default: yes)]), [XP_USE_FREETYPE=$enableval],[XP_USE_FREETYPE=no])
- AC_ARG_WITH(freetype-config, AS_HELP_STRING([ --with-freetype-config=PROG], [Use FreeType configuration program PROG (default: auto)]), freetype_config=$withval, freetype_config=auto)
-@@ -1519,6 +1520,10 @@
- AC_SUBST([XSDL_LIBS])
- AC_SUBST([XSDL_INCS])
-
-+AM_CONDITIONAL(KDRIVEW100, [test "x$KDRIVEW100" = xyes])
-+if test "x$KDRIVEW100" = xyes; then
-+ AC_DEFINE(KDRIVEW100, 1, [Build Xw100 server])
-+fi
-
- dnl these only go in xkb-config.h (which is shared by the Xorg and Xnest servers)
- AC_DEFINE(__XKBDEFRULES__, "xorg", [Default XKB rules])
-@@ -1753,6 +1758,7 @@
- hw/kdrive/epson/Makefile
- hw/kdrive/fake/Makefile
- hw/kdrive/fbdev/Makefile
-+hw/kdrive/w100/Makefile
- hw/kdrive/i810/Makefile
- hw/kdrive/linux/Makefile
- hw/kdrive/mach64/Makefile
diff --git a/meta-extras/packages/xorg-xserver/xserver-kdrive-glamo/w100-fix-offscreen-bmp.patch b/meta-extras/packages/xorg-xserver/xserver-kdrive-glamo/w100-fix-offscreen-bmp.patch
deleted file mode 100644
index 39bc22c6b..000000000
--- a/meta-extras/packages/xorg-xserver/xserver-kdrive-glamo/w100-fix-offscreen-bmp.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-Patch suggested by Manuel Teira to actually enable offscreen pixmap
-acceleration in Xw100. Value 16 is empirical, works well on hx4700,
-but in case of issues, consider double it (other accelerated drivers
-use bigger values than 16).
-
---- xorg-server-1.2.0/hw/kdrive/w100/ati_draw.c.org 2007-04-04 10:28:57.000000000 +0000
-+++ xorg-server-1.2.0/hw/kdrive/w100/ati_draw.c 2007-04-06 14:43:40.000000000 +0000
-@@ -433,6 +433,7 @@
- * or kaaPixmapUseScreen. But this is probably caused by some bug in this
- * driver... */
- atis->kaa.flags |= KAA_OFFSCREEN_PIXMAPS;
-+ atis->kaa.pitchAlign = 16;
- if (!kaaDrawInit(pScreen, &atis->kaa))
- return FALSE;
-
diff --git a/meta-extras/packages/xorg-xserver/xserver-kdrive-glamo/w100-new-input-world-order.patch b/meta-extras/packages/xorg-xserver/xserver-kdrive-glamo/w100-new-input-world-order.patch
deleted file mode 100644
index 239ae0bb6..000000000
--- a/meta-extras/packages/xorg-xserver/xserver-kdrive-glamo/w100-new-input-world-order.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-Index: xorg-server-1.4/hw/kdrive/w100/ati_stub.c
-===================================================================
---- xorg-server-1.4.orig/hw/kdrive/w100/ati_stub.c 2007-09-08 21:40:26.000000000 +0200
-+++ xorg-server-1.4/hw/kdrive/w100/ati_stub.c 2007-09-08 22:04:27.000000000 +0200
-@@ -74,10 +74,20 @@
- void
- InitInput(int argc, char **argv)
- {
-- KdInitInput(&LinuxMouseFuncs, &LinuxKeyboardFuncs);
--#ifdef TOUCHSCREEN
-- KdAddMouseDriver(&TsFuncs);
-+ KdKeyboardInfo *ki;
-+
-+ KdAddKeyboardDriver (&LinuxKeyboardDriver);
-+ KdAddPointerDriver (&LinuxMouseDriver);
-+ KdAddKeyboardDriver (&LinuxEvdevKeyboardDriver);
-+ KdAddPointerDriver (&LinuxEvdevMouseDriver);
-+#ifdef TSLIB
-+ KdAddPointerDriver (&TsDriver);
- #endif
-+
-+ ki = KdParseKeyboard ("keyboard");
-+ KdAddKeyboard(ki);
-+
-+ KdInitInput ();
- }
-
- void
diff --git a/meta-extras/packages/xorg-xserver/xserver-kdrive-glamo/w100.patch b/meta-extras/packages/xorg-xserver/xserver-kdrive-glamo/w100.patch
deleted file mode 100644
index 1bb6f357c..000000000
--- a/meta-extras/packages/xorg-xserver/xserver-kdrive-glamo/w100.patch
+++ /dev/null
@@ -1,6335 +0,0 @@
-Index: git/hw/kdrive/w100/ati.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ git/hw/kdrive/w100/ati.c 2006-09-02 12:12:14.000000000 +0200
-@@ -0,0 +1,434 @@
-+/*
-+ * Copyright © 2006 Alberto Mardegan <mardy@users.sourceforge.net>
-+ *
-+ * Permission to use, copy, modify, distribute, and sell this software and its
-+ * documentation for any purpose is hereby granted without fee, provided that
-+ * the above copyright notice appear in all copies and that both that
-+ * copyright notice and this permission notice appear in supporting
-+ * documentation, and that the name of Alberto Mardegan not be used in
-+ * advertising or publicity pertaining to distribution of the software without
-+ * specific, written prior permission. Alberto Mardegan makes no
-+ * representations about the suitability of this software for any purpose. It
-+ * is provided "as is" without express or implied warranty.
-+ *
-+ * ALBERTO MARDEGAN DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
-+ * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
-+ * EVENT SHALL ALBERTO MARDEGAN BE LIABLE FOR ANY SPECIAL, INDIRECT OR
-+ * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
-+ * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
-+ * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
-+ * PERFORMANCE OF THIS SOFTWARE.
-+ */
-+
-+#ifdef HAVE_CONFIG_H
-+#include <kdrive-config.h>
-+#endif
-+#include "ati.h"
-+#include "w100_regs.h"
-+
-+
-+struct pci_id_entry ati_pci_ids[] = {
-+ {0x1002, 0x5644, 0, "ATI Imageon 3200"},
-+ {0x1002, 0x5741, 0, "ATI Imageon 100"},
-+ {0x1002, 0x5744, 0, "ATI Imageon 3220"},
-+ {0, 0, 0, NULL}
-+};
-+
-+
-+static Bool
-+ATICardInit(KdCardInfo * card)
-+{
-+ ATICardInfo *atic;
-+ int i;
-+ Bool initialized = FALSE;
-+
-+ atic = xcalloc(sizeof(ATICardInfo), 1);
-+ if (atic == NULL)
-+ return FALSE;
-+
-+#ifdef KDRIVEFBDEV
-+ if (!initialized && fbdevInitialize(card, &atic->backend_priv.fbdev)) {
-+ atic->use_fbdev = TRUE;
-+ initialized = TRUE;
-+ atic->backend_funcs.cardfini = fbdevCardFini;
-+ atic->backend_funcs.scrfini = fbdevScreenFini;
-+ atic->backend_funcs.initScreen = fbdevInitScreen;
-+ atic->backend_funcs.finishInitScreen = fbdevFinishInitScreen;
-+ atic->backend_funcs.createRes = fbdevCreateResources;
-+ atic->backend_funcs.preserve = fbdevPreserve;
-+ atic->backend_funcs.restore = fbdevRestore;
-+ atic->backend_funcs.dpms = fbdevDPMS;
-+ atic->backend_funcs.enable = fbdevEnable;
-+ atic->backend_funcs.disable = fbdevDisable;
-+ atic->backend_funcs.getColors = fbdevGetColors;
-+ atic->backend_funcs.putColors = fbdevPutColors;
-+#ifdef RANDR
-+ atic->backend_funcs.randrSetConfig = fbdevRandRSetConfig;
-+#endif
-+ }
-+#endif
-+#ifdef KDRIVEVESA
-+ if (!initialized && vesaInitialize(card, &atic->backend_priv.vesa)) {
-+ atic->use_vesa = TRUE;
-+ initialized = TRUE;
-+ atic->backend_funcs.cardfini = vesaCardFini;
-+ atic->backend_funcs.scrfini = vesaScreenFini;
-+ atic->backend_funcs.initScreen = vesaInitScreen;
-+ atic->backend_funcs.finishInitScreen = vesaFinishInitScreen;
-+ atic->backend_funcs.createRes = vesaCreateResources;
-+ atic->backend_funcs.preserve = vesaPreserve;
-+ atic->backend_funcs.restore = vesaRestore;
-+ atic->backend_funcs.dpms = vesaDPMS;
-+ atic->backend_funcs.enable = vesaEnable;
-+ atic->backend_funcs.disable = vesaDisable;
-+ atic->backend_funcs.getColors = vesaGetColors;
-+ atic->backend_funcs.putColors = vesaPutColors;
-+#ifdef RANDR
-+ atic->backend_funcs.randrSetConfig = vesaRandRSetConfig;
-+#endif
-+ }
-+#endif
-+
-+ if (!initialized || !ATIMap(card, atic)) {
-+ xfree(atic);
-+ return FALSE;
-+ }
-+
-+ card->driver = atic;
-+
-+ for (i = 0; ati_pci_ids[i].name != NULL; i++) {
-+ if (ati_pci_ids[i].device == card->attr.deviceID) {
-+ atic->pci_id = &ati_pci_ids[i];
-+ break;
-+ }
-+ }
-+
-+ ErrorF("Using ATI card: %s\n", atic->pci_id->name);
-+
-+ return TRUE;
-+}
-+
-+static void
-+ATICardFini(KdCardInfo * card)
-+{
-+ ATICardInfo *atic = (ATICardInfo *) card->driver;
-+
-+ ATIUnmap(card, atic);
-+ atic->backend_funcs.cardfini(card);
-+}
-+
-+/*
-+ * Once screen->off_screen_base is set, this function
-+ * allocates the remaining memory appropriately
-+ */
-+
-+static void
-+ATISetOffscreen(KdScreenInfo * screen)
-+{
-+ ATICardInfo(screen);
-+ int screen_size;
-+ char *mmio = atic->reg_base;
-+
-+ /* check (and adjust) pitch */
-+ if (mmio) {
-+ int byteStride = screen->fb[0].byteStride;
-+ int bitStride;
-+ int pixelStride;
-+ int bpp = screen->fb[0].bitsPerPixel;
-+
-+ /*
-+ * Ensure frame buffer is correctly aligned
-+ */
-+ if (byteStride & 0x3f) {
-+ byteStride = (byteStride + 0x3f) & ~0x3f;
-+ bitStride = byteStride * 8;
-+ pixelStride = bitStride / bpp;
-+
-+ screen->fb[0].byteStride = byteStride;
-+ screen->fb[0].pixelStride = pixelStride;
-+ }
-+ }
-+
-+ screen_size = screen->fb[0].byteStride * screen->height;
-+
-+ screen->off_screen_base = screen_size;
-+
-+}
-+
-+static Bool
-+ATIScreenInit(KdScreenInfo * screen)
-+{
-+ ATIScreenInfo *atis;
-+ ATICardInfo(screen);
-+ Bool success = FALSE;
-+
-+ atis = xcalloc(sizeof(ATIScreenInfo), 1);
-+ if (atis == NULL)
-+ return FALSE;
-+
-+ atis->atic = atic;
-+ atis->screen = screen;
-+ screen->driver = atis;
-+
-+ if (screen->fb[0].depth == 0)
-+ screen->fb[0].depth = 16;
-+#ifdef KDRIVEFBDEV
-+ if (atic->use_fbdev) {
-+ success = fbdevScreenInitialize(screen, &atis->backend_priv.fbdev);
-+ }
-+#endif
-+#ifdef KDRIVEVESA
-+ if (atic->use_vesa) {
-+ success = vesaScreenInitialize(screen, &atis->backend_priv.vesa);
-+ }
-+#endif
-+
-+ if (!success) {
-+ screen->driver = NULL;
-+ xfree(atis);
-+ return FALSE;
-+ }
-+
-+ ErrorF
-+ ("Offscreen memory at offset %08x, memory base %08x, size %08x\n",
-+ screen->off_screen_base, screen->memory_base,
-+ screen->memory_size);
-+ ATISetOffscreen(screen);
-+
-+ return TRUE;
-+}
-+
-+#ifdef RANDR
-+static Bool
-+ATIRandRSetConfig(ScreenPtr pScreen,
-+ Rotation randr, int rate, RRScreenSizePtr pSize)
-+{
-+ KdScreenPriv(pScreen);
-+ KdScreenInfo *screen = pScreenPriv->screen;
-+ ATICardInfo *atic = screen->card->driver;
-+ Bool ret;
-+
-+ ATIDrawDisable(pScreen);
-+ ret = atic->backend_funcs.randrSetConfig(pScreen, randr, rate, pSize);
-+ ATISetOffscreen(screen);
-+ /*
-+ * Set frame buffer mapping
-+ */
-+ (*pScreen->ModifyPixmapHeader) (fbGetScreenPixmap(pScreen),
-+ pScreen->width,
-+ pScreen->height,
-+ screen->fb[0].depth,
-+ screen->fb[0].bitsPerPixel,
-+ screen->fb[0].byteStride,
-+ screen->fb[0].frameBuffer);
-+
-+ ATIDrawEnable(pScreen);
-+ return ret;
-+}
-+
-+static Bool
-+ATIRandRInit(ScreenPtr pScreen)
-+{
-+ rrScrPrivPtr pScrPriv;
-+
-+ pScrPriv = rrGetScrPriv(pScreen);
-+ pScrPriv->rrSetConfig = ATIRandRSetConfig;
-+ return TRUE;
-+}
-+#endif
-+
-+static void
-+ATIScreenFini(KdScreenInfo * screen)
-+{
-+ ATIScreenInfo *atis = (ATIScreenInfo *) screen->driver;
-+ ATICardInfo *atic = screen->card->driver;
-+
-+ atic->backend_funcs.scrfini(screen);
-+ xfree(atis);
-+ screen->driver = 0;
-+}
-+
-+Bool
-+ATIMap(KdCardInfo * card, ATICardInfo * atic)
-+{
-+ atic->mem_base = (CARD8 *) KdMapDevice(ATI_MEM_BASE(card),
-+ ATI_MEM_SIZE(card));
-+
-+ if (atic->mem_base == NULL)
-+ return FALSE;
-+ atic->reg_base = atic->mem_base + 0x10000; /* XXX */
-+
-+ KdSetMappedMode(ATI_MEM_BASE(card), ATI_MEM_SIZE(card),
-+ KD_MAPPED_MODE_REGISTERS);
-+
-+ return TRUE;
-+}
-+
-+void
-+ATIUnmap(KdCardInfo * card, ATICardInfo * atic)
-+{
-+ if (atic->reg_base) {
-+ KdResetMappedMode(ATI_REG_BASE(card), ATI_REG_SIZE(card),
-+ KD_MAPPED_MODE_REGISTERS);
-+ KdUnmapDevice((void *) atic->reg_base, ATI_REG_SIZE(card));
-+ atic->reg_base = 0;
-+ }
-+}
-+
-+static Bool
-+ATIInitScreen(ScreenPtr pScreen)
-+{
-+ KdScreenPriv(pScreen);
-+ ATICardInfo(pScreenPriv);
-+
-+ return atic->backend_funcs.initScreen(pScreen);
-+}
-+
-+static Bool
-+ATIFinishInitScreen(ScreenPtr pScreen)
-+{
-+ KdScreenPriv(pScreen);
-+ ATICardInfo(pScreenPriv);
-+
-+ if (!atic->backend_funcs.finishInitScreen(pScreen))
-+ return FALSE;
-+#ifdef RANDR
-+ if (!ATIRandRInit(pScreen))
-+ return FALSE;
-+#endif
-+ return TRUE;
-+}
-+
-+static Bool
-+ATICreateResources(ScreenPtr pScreen)
-+{
-+ KdScreenPriv(pScreen);
-+ ATICardInfo(pScreenPriv);
-+
-+ return atic->backend_funcs.createRes(pScreen);
-+}
-+
-+static void
-+ATIPreserve(KdCardInfo * card)
-+{
-+ ATICardInfo *atic = card->driver;
-+
-+ atic->backend_funcs.preserve(card);
-+}
-+
-+static void
-+ATIRestore(KdCardInfo * card)
-+{
-+ ATICardInfo *atic = card->driver;
-+
-+ ATIUnmap(card, atic);
-+
-+ atic->backend_funcs.restore(card);
-+}
-+
-+static Bool
-+ATIDPMS(ScreenPtr pScreen, int mode)
-+{
-+ KdScreenPriv(pScreen);
-+ ATICardInfo(pScreenPriv);
-+
-+ return atic->backend_funcs.dpms(pScreen, mode);
-+}
-+
-+static Bool
-+ATIEnable(ScreenPtr pScreen)
-+{
-+ KdScreenPriv(pScreen);
-+ ATICardInfo(pScreenPriv);
-+ mc_ext_mem_location_u eml;
-+ char *mmio;
-+
-+ if (!atic->backend_funcs.enable(pScreen))
-+ return FALSE;
-+
-+ if ((atic->reg_base == NULL)
-+ && !ATIMap(pScreenPriv->screen->card, atic))
-+ return FALSE;
-+
-+ mmio = atic->reg_base;
-+ eml.val = MMIO_IN32(mmio, mmMC_EXT_MEM_LOCATION);
-+ atic->ext_mem_location = eml.f.mc_ext_mem_start << 8;
-+ ATISetOffscreen(pScreenPriv->screen);
-+
-+ return TRUE;
-+}
-+
-+static void
-+ATIDisable(ScreenPtr pScreen)
-+{
-+ KdScreenPriv(pScreen);
-+ ATICardInfo(pScreenPriv);
-+
-+ ATIUnmap(pScreenPriv->card, atic);
-+
-+ atic->backend_funcs.disable(pScreen);
-+}
-+
-+static void
-+ATIGetColors(ScreenPtr pScreen, int fb, int n, xColorItem * pdefs)
-+{
-+ KdScreenPriv(pScreen);
-+ ATICardInfo(pScreenPriv);
-+
-+ atic->backend_funcs.getColors(pScreen, fb, n, pdefs);
-+}
-+
-+static void
-+ATIPutColors(ScreenPtr pScreen, int fb, int n, xColorItem * pdefs)
-+{
-+ KdScreenPriv(pScreen);
-+ ATICardInfo(pScreenPriv);
-+
-+ atic->backend_funcs.putColors(pScreen, fb, n, pdefs);
-+}
-+
-+/* Compute log base 2 of val. */
-+int
-+ATILog2(int val)
-+{
-+ int bits;
-+
-+ for (bits = 0; val != 0; val >>= 1, ++bits);
-+ return bits - 1;
-+}
-+
-+
-+
-+KdCardFuncs ATIFuncs = {
-+ ATICardInit, /* cardinit */
-+ ATIScreenInit, /* scrinit */
-+ ATIInitScreen, /* initScreen */
-+ ATIFinishInitScreen, /* finishInitScreen */
-+ ATICreateResources, /* createRes */
-+ ATIPreserve, /* preserve */
-+ ATIEnable, /* enable */
-+ ATIDPMS, /* dpms */
-+ ATIDisable, /* disable */
-+ ATIRestore, /* restore */
-+ ATIScreenFini, /* scrfini */
-+ ATICardFini, /* cardfini */
-+
-+#define ATICursorInit 0
-+#define ATICursorEnable 0
-+#define ATICursorDisable 0
-+#define ATICursorFini 0
-+#define ATIRecolorCursor 0
-+ ATICursorInit, /* initCursor */
-+ ATICursorEnable, /* enableCursor */
-+ ATICursorDisable, /* disableCursor */
-+ ATICursorFini, /* finiCursor */
-+ ATIRecolorCursor, /* recolorCursor */
-+
-+ ATIDrawInit, /* initAccel */
-+ ATIDrawEnable, /* enableAccel */
-+ ATIDrawDisable, /* disableAccel */
-+ ATIDrawFini, /* finiAccel */
-+
-+ ATIGetColors, /* getColors */
-+ ATIPutColors, /* putColors */
-+};
-Index: git/hw/kdrive/w100/ati_cursor.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ git/hw/kdrive/w100/ati_cursor.c 2006-09-02 12:12:14.000000000 +0200
-@@ -0,0 +1,93 @@
-+/*
-+ * Copyright © 2006 Alberto Mardegan <mardy@users.sourceforge.net>
-+ *
-+ * Permission to use, copy, modify, distribute, and sell this software and its
-+ * documentation for any purpose is hereby granted without fee, provided that
-+ * the above copyright notice appear in all copies and that both that
-+ * copyright notice and this permission notice appear in supporting
-+ * documentation, and that the name of Alberto Mardegan not be used in
-+ * advertising or publicity pertaining to distribution of the software without
-+ * specific, written prior permission. Alberto Mardegan makes no
-+ * representations about the suitability of this software for any purpose. It
-+ * is provided "as is" without express or implied warranty.
-+ *
-+ * ALBERTO MARDEGAN DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
-+ * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
-+ * EVENT SHALL ALBERTO MARDEGAN BE LIABLE FOR ANY SPECIAL, INDIRECT OR
-+ * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
-+ * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
-+ * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
-+ * PERFORMANCE OF THIS SOFTWARE.
-+ */
-+
-+#ifdef HAVE_CONFIG_H
-+#include <kdrive-config.h>
-+#endif
-+#include "ati.h"
-+#include "cursorstr.h"
-+#include "ati_draw.h"
-+
-+static void
-+ATIMoveCursor(ScreenPtr pScreen, int x, int y)
-+{
-+}
-+
-+
-+static Bool
-+ATIRealizeCursor(ScreenPtr pScreen, CursorPtr pCursor)
-+{
-+ return FALSE;
-+}
-+
-+
-+static Bool
-+ATIUnrealizeCursor(ScreenPtr pScreen, CursorPtr pCursor)
-+{
-+ return TRUE;
-+}
-+
-+
-+static void
-+ATISetCursor(ScreenPtr pScreen, CursorPtr pCursor, int x, int y)
-+{
-+}
-+
-+
-+miPointerSpriteFuncRec ATIPointerSpriteFuncs = {
-+ ATIRealizeCursor,
-+ ATIUnrealizeCursor,
-+ ATISetCursor,
-+ ATIMoveCursor,
-+};
-+
-+
-+void
-+ATICursorEnable(ScreenPtr pScreen)
-+{
-+}
-+
-+
-+void
-+ATICursorDisable(ScreenPtr pScreen)
-+{
-+}
-+
-+
-+Bool
-+ATICursorInit(ScreenPtr pScreen)
-+{
-+ return FALSE;
-+}
-+
-+
-+void
-+ATIRecolorCursor(ScreenPtr pScreen, int ndef, xColorItem * pdef)
-+{
-+ return;
-+}
-+
-+
-+void
-+ATICursorFini(ScreenPtr pScreen)
-+{
-+}
-Index: git/hw/kdrive/w100/ati_dma.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ git/hw/kdrive/w100/ati_dma.c 2006-09-02 12:12:14.000000000 +0200
-@@ -0,0 +1,333 @@
-+/*
-+ * Copyright © 2006 Alberto Mardegan <mardy@users.sourceforge.net>
-+ *
-+ * Permission to use, copy, modify, distribute, and sell this software and its
-+ * documentation for any purpose is hereby granted without fee, provided that
-+ * the above copyright notice appear in all copies and that both that
-+ * copyright notice and this permission notice appear in supporting
-+ * documentation, and that the name of Alberto Mardegan not be used in
-+ * advertising or publicity pertaining to distribution of the software without
-+ * specific, written prior permission. Alberto Mardegan makes no
-+ * representations about the suitability of this software for any purpose. It
-+ * is provided "as is" without express or implied warranty.
-+ *
-+ * ALBERTO MARDEGAN DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
-+ * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
-+ * EVENT SHALL ALBERTO MARDEGAN BE LIABLE FOR ANY SPECIAL, INDIRECT OR
-+ * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
-+ * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
-+ * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
-+ * PERFORMANCE OF THIS SOFTWARE.
-+ */
-+
-+#include <sys/time.h>
-+
-+#include "ati.h"
-+#include "w100_regs.h"
-+#include "w100_const.h"
-+#include "ati_dma.h"
-+#include "ati_draw.h"
-+
-+
-+#define DEBUG_FIFO 0
-+
-+extern CARD32 w100_microcode[][2];
-+
-+#if DEBUG_FIFO
-+static void
-+ATIDebugFifo(ATIScreenInfo * atis)
-+{
-+ ATICardInfo *atic = atis->atic;
-+ char *mmio = atic->reg_base;
-+
-+ ErrorF("mmCP_CSQ_CNTL: 0x%08x\n", MMIO_IN32(mmio, mmCP_CSQ_CNTL));
-+ ErrorF("mmCP_CSQ_STAT: 0x%08x\n", MMIO_IN32(mmio, mmCP_CSQ_STAT));
-+ ErrorF("mmRBBM_STATUS: 0x%08x\n", MMIO_IN32(mmio, mmRBBM_STATUS));
-+}
-+#endif
-+
-+static void
-+ATIUploadMicrocode(ATIScreenInfo * atis)
-+{
-+ ATICardInfo *atic = atis->atic;
-+ char *mmio = atic->reg_base;
-+ int i;
-+
-+ MMIO_OUT32(mmio, mmCP_ME_RAM_ADDR, 0);
-+ for (i = 0; i < 256; i++) {
-+ MMIO_OUT32(mmio, mmCP_ME_RAM_DATAH, w100_microcode[i][1]);
-+ MMIO_OUT32(mmio, mmCP_ME_RAM_DATAL, w100_microcode[i][0]);
-+ }
-+}
-+
-+/* Required when reading from video memory after acceleration to make sure all
-+ * data has been flushed to video memory from the pixel cache.
-+ */
-+static void
-+ATIFlushPixelCache(ATIScreenInfo * atis)
-+{
-+ ATICardInfo *atic = atis->atic;
-+ char *mmio = atic->reg_base;
-+ rbbm_status_u rs;
-+ TIMEOUT_LOCALS;
-+
-+ WHILE_NOT_TIMEOUT(.2) {
-+ rs.val = MMIO_IN32(mmio, mmRBBM_STATUS);
-+ if (!rs.f.gui_active)
-+ break;
-+ }
-+ if (TIMEDOUT())
-+ ErrorF("Timeout flushing pixel cache.\n");
-+}
-+
-+static void
-+ATIEngineReset(ATIScreenInfo * atis)
-+{
-+ ATICardInfo *atic = atis->atic;
-+ char *mmio = atic->reg_base;
-+ CARD32 sclk_cntl;
-+ sclk_cntl_u sc;
-+ rbbm_soft_reset_u rsr;
-+
-+#if DEBUG_FIFO
-+ ErrorF("Engine Reset!\n");
-+ ATIDebugFifo(atis);
-+#endif
-+
-+ ATIFlushPixelCache(atis);
-+
-+ sc.val = sclk_cntl = MMIO_IN32(mmio, mmSCLK_CNTL);
-+ sc.f.sclk_force_e2 = sc.f.sclk_force_e3 = sc.f.sclk_force_idct = 1;
-+ MMIO_OUT32(mmio, mmSCLK_CNTL, sc.val);
-+
-+ rsr.val = 0;
-+ rsr.f.soft_reset_e2 = 1;
-+ MMIO_OUT32(mmio, mmRBBM_SOFT_RESET, rsr.val);
-+ MMIO_OUT32(mmio, mmRBBM_SOFT_RESET, 0);
-+
-+ MMIO_OUT32(mmio, mmSCLK_CNTL, sclk_cntl);
-+}
-+
-+inline void
-+ATIWaitAvailMMIO(ATIScreenInfo * atis, int n)
-+{
-+ ATICardInfo *atic = atis->atic;
-+ char *mmio = atic->reg_base;
-+ rbbm_status_u rs;
-+ TIMEOUT_LOCALS;
-+
-+ if (atis->mmio_avail >= n) {
-+ atis->mmio_avail -= n;
-+ return;
-+ }
-+ WHILE_NOT_TIMEOUT(.2) {
-+ rs.val = MMIO_IN32(mmio, mmRBBM_STATUS);
-+ atis->mmio_avail = rs.f.cmdfifo_avail;
-+ if (atis->mmio_avail >= n)
-+ break;
-+ ErrorF("Available %d slots.\n", atis->mmio_avail);
-+ }
-+ if (TIMEDOUT()) {
-+ ErrorF("Timeout waiting for %d MMIO slots.\n", n);
-+ ATIEngineReset(atis);
-+ ATIDrawSetup(atis->screen->pScreen);
-+ }
-+ atis->mmio_avail -= n;
-+}
-+
-+
-+void
-+ATIWaitIdle(ATIScreenInfo * atis)
-+{
-+ ATICardInfo *atic = atis->atic;
-+ char *mmio = atic->reg_base;
-+ rbbm_status_u rs;
-+ TIMEOUT_LOCALS;
-+
-+ /* Empty the fifo */
-+ ATIWaitAvailMMIO(atis, 16);
-+
-+ WHILE_NOT_TIMEOUT(.2) {
-+ rs.val = MMIO_IN32(mmio, mmRBBM_STATUS);
-+ if (!rs.f.gui_active)
-+ break;
-+#if DEBUG_FIFO
-+ ATIDebugFifo(atis);
-+#endif
-+ /* don't know if this is needed, but it's in aticore */
-+ MMIO_IN32(mmio, mmCP_RB_RPTR);
-+ }
-+ if (TIMEDOUT()) {
-+ ErrorF("Timeout idling accelerator, resetting...\n");
-+ ATIEngineReset(atis);
-+ ATIDrawSetup(atis->screen->pScreen);
-+ }
-+
-+ ATIFlushPixelCache(atis);
-+
-+#if DEBUG_FIFO
-+ ErrorF("Idle?\n");
-+ ATIDebugFifo(atis);
-+#endif
-+}
-+
-+
-+static Bool
-+ATIDMAInit(ScreenPtr pScreen, Bool use_agp)
-+{
-+ KdScreenPriv(pScreen);
-+ ATIScreenInfo(pScreenPriv);
-+ ATICardInfo(pScreenPriv);
-+ char *mmio = atic->reg_base;
-+ int dma_offset, rbsize = 10;
-+ wrap_start_dir_u wsd;
-+ wrap_buf_a_u wba;
-+ cp_rb_cntl_u rc;
-+ cp_csq_cntl_u cc;
-+ CARD32 mem_offset;
-+
-+ /* with rbsize = 10, DMA buffer will be of 0x2000 (8192) bytes */
-+ atis->ring_count = 1 << (rbsize + 1);
-+ atis->ring_mask = atis->ring_count - 1;
-+ atis->ring_len = atis->ring_count * 4;
-+ atis->dma_space = KdOffscreenAlloc(pScreen, atis->ring_len,
-+ 16, TRUE, NULL, NULL);
-+ if (atis->dma_space == NULL)
-+ return FALSE;
-+
-+ wsd.val = MMIO_IN32(mmio, mmWRAP_START_DIR);
-+ atis->ring_addr =
-+ (CARD32 *) (atic->mem_base + (wsd.f.start_addr << 1));
-+ dma_offset = atis->dma_space->offset;
-+
-+ ATIUploadMicrocode(atis);
-+ ATIEngineReset(atis);
-+
-+ atis->ring_read = 0;
-+ atis->ring_write = 0;
-+ atis->ring_free = atis->ring_count;
-+
-+ mem_offset = atic->ext_mem_location + atis->dma_space->offset;
-+ MMIO_OUT32(mmio, mmCP_RB_BASE, mem_offset);
-+ MMIO_OUT32(mmio, mmCP_RB_WPTR, atis->ring_write);
-+ MMIO_OUT32(mmio, mmCP_RB_RPTR, atis->ring_read);
-+ MMIO_OUT32(mmio, mmCP_RB_RPTR_ADDR, 0);
-+
-+ wba.val = 0;
-+ wba.f.offset_addr_a = mem_offset;
-+ switch (rbsize) {
-+ case 9:
-+ wba.f.block_size_a = WB_BLOCK_SIZE_A_0;
-+ break;
-+ case 10:
-+ wba.f.block_size_a = WB_BLOCK_SIZE_A_1;
-+ break;
-+ case 11:
-+ wba.f.block_size_a = WB_BLOCK_SIZE_A_2;
-+ break;
-+ case 12:
-+ wba.f.block_size_a = WB_BLOCK_SIZE_A_3;
-+ break;
-+ case 13:
-+ wba.f.block_size_a = WB_BLOCK_SIZE_A_4;
-+ break;
-+ }
-+ MMIO_OUT32(mmio, mmWRAP_BUF_A, wba.val);
-+
-+ rc.val = 0;
-+ rc.f.rb_no_update = 1;
-+ rc.f.rb_bufsz = rbsize;
-+ MMIO_OUT32(mmio, mmCP_RB_CNTL, rc.val);
-+
-+ cc.val = 0;
-+ cc.f.csq_mode = CSQ_CNTL_MODE_FREERUN;
-+ MMIO_OUT32(mmio, mmCP_CSQ_CNTL, cc.val);
-+
-+ return TRUE;
-+}
-+
-+static Bool
-+ATIDMAFini(ScreenPtr pScreen)
-+{
-+ KdScreenPriv(pScreen);
-+ ATIScreenInfo(pScreenPriv);
-+ ATICardInfo(pScreenPriv);
-+ char *mmio = atic->reg_base;
-+
-+ MMIO_OUT32(mmio, mmCP_CSQ_CNTL, 0);
-+
-+ ATIEngineReset(atis);
-+
-+ //KdOffscreenFree(pScreen, atis->dma_space);
-+
-+ return TRUE;
-+}
-+
-+void
-+ATIDMASetup(ScreenPtr pScreen)
-+{
-+ KdScreenPriv(pScreen);
-+ ATIScreenInfo(pScreenPriv);
-+
-+ atis->using_dma = FALSE;
-+ atis->using_pio = FALSE;
-+ if (ATIDMAInit(pScreen, FALSE))
-+ atis->using_dma = TRUE;
-+
-+ if (atis->using_dma)
-+ ErrorF("Initialized DMA\n");
-+}
-+
-+void
-+ATIDMATeardown(ScreenPtr pScreen)
-+{
-+ KdScreenPriv(pScreen);
-+ ATIScreenInfo(pScreenPriv);
-+
-+ ATIWaitIdle(atis);
-+
-+ if (atis->using_dma)
-+ ATIDMAFini(pScreen);
-+
-+ atis->using_pio = FALSE;
-+ atis->using_dma = FALSE;
-+}
-+
-+
-+CARD32 *
-+ATIRequestEntries(ATIScreenInfo * atis, int n)
-+{
-+ char *mmio = atis->atic->reg_base;
-+ CARD32 *ptr;
-+ TIMEOUT_LOCALS;
-+
-+ WHILE_NOT_TIMEOUT(1) {
-+ if (atis->ring_free > n) {
-+ ptr = atis->ring_addr + atis->ring_write;
-+ return ptr;
-+ }
-+ atis->ring_read = MMIO_IN32(mmio, mmCP_RB_RPTR);
-+ atis->ring_write = MMIO_IN32(mmio, mmCP_RB_WPTR);
-+
-+ if (atis->ring_read == atis->ring_write) {
-+ atis->ring_free = atis->ring_count;
-+ } else {
-+ atis->ring_free =
-+ (atis->ring_count +
-+ atis->ring_read - atis->ring_write) & atis->ring_mask;
-+ }
-+ }
-+ if (TIMEDOUT())
-+ ErrorF("Timeout waiting for %d entries.\n", n);
-+ return NULL;
-+}
-+
-+void
-+ATISubmitEntries(ATIScreenInfo * atis, int n)
-+{
-+ char *mmio = atis->atic->reg_base;
-+ atis->ring_free -= n;
-+ atis->ring_write += n;
-+ atis->ring_write &= atis->ring_mask;
-+ MMIO_OUT32(mmio, mmCP_RB_WPTR, atis->ring_write);
-+}
-Index: git/hw/kdrive/w100/ati_dma.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ git/hw/kdrive/w100/ati_dma.h 2006-09-02 12:12:14.000000000 +0200
-@@ -0,0 +1,176 @@
-+/*
-+ * Copyright © 2004 Eric Anholt
-+ *
-+ * Permission to use, copy, modify, distribute, and sell this software and its
-+ * documentation for any purpose is hereby granted without fee, provided that
-+ * the above copyright notice appear in all copies and that both that
-+ * copyright notice and this permission notice appear in supporting
-+ * documentation, and that the name of Eric Anholt not be used in
-+ * advertising or publicity pertaining to distribution of the software without
-+ * specific, written prior permission. Eric Anholt makes no
-+ * representations about the suitability of this software for any purpose. It
-+ * is provided "as is" without express or implied warranty.
-+ *
-+ * ERIC ANHOLT DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
-+ * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
-+ * EVENT SHALL ERIC ANHOLT BE LIABLE FOR ANY SPECIAL, INDIRECT OR
-+ * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
-+ * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
-+ * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
-+ * PERFORMANCE OF THIS SOFTWARE.
-+ */
-+/* $Header: /cvs/xserver/xserver/hw/kdrive/ati/ati_dma.h,v 1.5 2005-01-27 05:25:57 anholt Exp $ */
-+
-+#ifndef _ATI_DMA_H_
-+#define _ATI_DMA_H_
-+
-+#define CCE_DEBUG 1
-+
-+/* CCE packet defines */
-+
-+#define ATI_CCE_PACKETTYPE_MASK 0xc0000000
-+#define ATI_CCE_PACKET0 0x00000000
-+#define ATI_CCE_PACKET0_COUNT_MASK 0x3fff0000
-+#define ATI_CCE_PACKET0_ONE_REG_WR 0x00008000
-+#define ATI_CCE_PACKET0_REG_MASK 0x000007ff
-+#define ATI_CCE_PACKET1 0x40000000
-+#define ATI_CCE_PACKET1_REG_1 0x000007ff
-+#define ATI_CCE_PACKET1_REG_2 0x003ff800
-+#define ATI_CCE_PACKET1_REG_2_SHIFT 10
-+#define ATI_CCE_PACKET2 0x80000000
-+#define ATI_CCE_PACKET3 0xc0000000
-+#define ATI_CCE_PACKET3_COUNT_MASK 0x3fff0000
-+#define ATI_CCE_PACKET3_IT_OPCODE_MASK 0x0000ff00
-+
-+
-+#if !CCE_DEBUG
-+#define DMA_PACKET0(reg, count) \
-+ (ATI_CCE_PACKET0 | (((count) - 1) << 16) | ((reg) >> 2))
-+#else
-+#define DMA_PACKET0(reg, count) \
-+ (__packet0count = (count), __reg = (reg), \
-+ ATI_CCE_PACKET0 | (((count) - 1) << 16) | ((reg) >> 2))
-+#endif
-+#define DMA_PACKET1(reg1, reg2) \
-+ (ATI_CCE_PACKET1 | \
-+ (((reg2) >> 2) << ATI_CCE_PACKET1_REG_2_SHIFT) | ((reg1) >> 2))
-+#define DMA_PACKET3(type, count) \
-+ ((type) | (((count) - 1) << 16))
-+
-+
-+
-+#ifdef USE_DMA
-+
-+#if !CCE_DEBUG
-+
-+#define RING_LOCALS \
-+ CARD32 *__head; int __count
-+#define BEGIN_DMA(n) \
-+do { \
-+ __head = ATIRequestEntries(atis, n); \
-+ __count = 0; \
-+} while (0)
-+#define END_DMA() do { \
-+ ATISubmitEntries(atis, __count); \
-+} while (0)
-+
-+#else /* CCE_DEBUG */
-+#define RING_LOCALS \
-+ CARD32 *__head; int __count, __total, __reg, __packet0count
-+#define BEGIN_DMA(n) \
-+do { \
-+ __head = ATIRequestEntries(atis, n); \
-+ __count = 0; \
-+ __total = n; \
-+ __reg = 0; \
-+ __packet0count = 0; \
-+} while (0)
-+#define END_DMA() do { \
-+ if (__count != __total) \
-+ FatalError("count != total (%d vs %d) at %s:%d\n", \
-+ __count, __total, __FILE__, __LINE__); \
-+ ATISubmitEntries(atis, __count); \
-+} while (0)
-+
-+#endif /* CCE_DEBUG */
-+
-+#define BEGIN_DMA_REG(n) BEGIN_DMA(n * 2)
-+#define END_DMA_REG() END_DMA()
-+
-+#define OUT_REG(reg, val) \
-+do { \
-+ OUT_RING(DMA_PACKET0(reg, 1)); \
-+ OUT_RING(val); \
-+} while (0)
-+
-+
-+#else /* USE_DMA */
-+
-+
-+#define RING_LOCALS char *__mmio = atis->atic->reg_base
-+#define BEGIN_DMA_REG(n) \
-+do { \
-+ ATIWaitAvailMMIO(atis, n); \
-+} while (0)
-+#define END_DMA_REG() do {} while (0)
-+#define OUT_REG(reg, val) MMIO_OUT32(__mmio, reg, val)
-+#endif /* USE_DMA */
-+
-+
-+#define OUT_RING(val) do { \
-+ __head[__count++] = (val); \
-+} while (0)
-+
-+#define OUT_RING_REG(reg, val) do { \
-+ if (__reg != reg) \
-+ FatalError("unexpected reg (0x%x vs 0x%x) at %s:%d\n", \
-+ reg, __reg, __FILE__, __LINE__); \
-+ if (__packet0count-- <= 0) \
-+ FatalError("overrun of packet0 at %s:%d\n", \
-+ __FILE__, __LINE__); \
-+ __head[__count++] = (val); \
-+ __reg += 4; \
-+} while (0)
-+
-+#define OUT_RING_F(x) OUT_RING(GET_FLOAT_BITS(x))
-+
-+#define TIMEOUT_LOCALS struct timeval _target, _curtime
-+
-+static inline Bool
-+tv_le(struct timeval *tv1, struct timeval *tv2)
-+{
-+ if (tv1->tv_sec < tv2->tv_sec ||
-+ (tv1->tv_sec == tv2->tv_sec && tv1->tv_usec < tv2->tv_usec))
-+ return TRUE;
-+ else
-+ return FALSE;
-+}
-+
-+#define WHILE_NOT_TIMEOUT(_timeout) \
-+ gettimeofday(&_target, NULL); \
-+ _target.tv_usec += ((_timeout) * 1000000); \
-+ _target.tv_sec += _target.tv_usec / 1000000; \
-+ _target.tv_usec = _target.tv_usec % 1000000; \
-+ while (gettimeofday(&_curtime, NULL), tv_le(&_curtime, &_target))
-+
-+#define TIMEDOUT() (!tv_le(&_curtime, &_target))
-+
-+
-+void
-+ATIFlushIndirect(ATIScreenInfo *atis, Bool discard);
-+
-+void
-+ATIDMASetup(ScreenPtr pScreen);
-+
-+void
-+ATIDMATeardown(ScreenPtr pScreen);
-+
-+CARD32 *
-+ATIRequestEntries(ATIScreenInfo *atis, int n);
-+
-+void
-+ATISubmitEntries(ATIScreenInfo *atis, int n);
-+
-+inline void
-+ATIWaitAvailMMIO(ATIScreenInfo *atis, int n);
-+#endif /* _ATI_DMA_H_ */
-Index: git/hw/kdrive/w100/ati_draw.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ git/hw/kdrive/w100/ati_draw.c 2006-09-02 12:12:14.000000000 +0200
-@@ -0,0 +1,477 @@
-+/*
-+ * Copyright © 2006 Alberto Mardegan <mardy@users.sourceforge.net>
-+ *
-+ * Permission to use, copy, modify, distribute, and sell this software and its
-+ * documentation for any purpose is hereby granted without fee, provided that
-+ * the above copyright notice appear in all copies and that both that
-+ * copyright notice and this permission notice appear in supporting
-+ * documentation, and that the name of Alberto Mardegan not be used in
-+ * advertising or publicity pertaining to distribution of the software without
-+ * specific, written prior permission. Alberto Mardegan makes no
-+ * representations about the suitability of this software for any purpose. It
-+ * is provided "as is" without express or implied warranty.
-+ *
-+ * ALBERTO MARDEGAN DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
-+ * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
-+ * EVENT SHALL ALBERTO MARDEGAN BE LIABLE FOR ANY SPECIAL, INDIRECT OR
-+ * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
-+ * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
-+ * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
-+ * PERFORMANCE OF THIS SOFTWARE.
-+ */
-+
-+#define USE_DMA
-+#define DRAW_USING_PACKET3
-+
-+#ifdef HAVE_CONFIG_H
-+#include <kdrive-config.h>
-+#endif
-+#include "ati.h"
-+#include "w100_regs.h"
-+#include "w100_const.h"
-+#include "ati_dma.h"
-+#include "ati_draw.h"
-+#include "kaa.h"
-+
-+
-+CARD8 ATISolidRop[16] = {
-+ /* GXclear */ 0x00,
-+ /* 0 */
-+ /* GXand */ 0xa0,
-+ /* src AND dst */
-+ /* GXandReverse */ 0x50,
-+ /* src AND NOT dst */
-+ /* GXcopy */ 0xf0,
-+ /* src */
-+ /* GXandInverted */ 0x0a,
-+ /* NOT src AND dst */
-+ /* GXnoop */ 0xaa,
-+ /* dst */
-+ /* GXxor */ 0x5a,
-+ /* src XOR dst */
-+ /* GXor */ 0xfa,
-+ /* src OR dst */
-+ /* GXnor */ 0x05,
-+ /* NOT src AND NOT dst */
-+ /* GXequiv */ 0xa5,
-+ /* NOT src XOR dst */
-+ /* GXinvert */ 0x55,
-+ /* NOT dst */
-+ /* GXorReverse */ 0xf5,
-+ /* src OR NOT dst */
-+ /* GXcopyInverted */ 0x0f,
-+ /* NOT src */
-+ /* GXorInverted */ 0xaf,
-+ /* NOT src OR dst */
-+ /* GXnand */ 0x5f,
-+ /* NOT src OR NOT dst */
-+ /* GXset */ 0xff,
-+ /* 1 */
-+};
-+
-+CARD8 ATIBltRop[16] = {
-+ /* GXclear */ 0x00,
-+ /* 0 */
-+ /* GXand */ 0x88,
-+ /* src AND dst */
-+ /* GXandReverse */ 0x44,
-+ /* src AND NOT dst */
-+ /* GXcopy */ 0xcc,
-+ /* src */
-+ /* GXandInverted */ 0x22,
-+ /* NOT src AND dst */
-+ /* GXnoop */ 0xaa,
-+ /* dst */
-+ /* GXxor */ 0x66,
-+ /* src XOR dst */
-+ /* GXor */ 0xee,
-+ /* src OR dst */
-+ /* GXnor */ 0x11,
-+ /* NOT src AND NOT dst */
-+ /* GXequiv */ 0x99,
-+ /* NOT src XOR dst */
-+ /* GXinvert */ 0x55,
-+ /* NOT dst */
-+ /* GXorReverse */ 0xdd,
-+ /* src OR NOT dst */
-+ /* GXcopyInverted */ 0x33,
-+ /* NOT src */
-+ /* GXorInverted */ 0xbb,
-+ /* NOT src OR dst */
-+ /* GXnand */ 0x77,
-+ /* NOT src OR NOT dst */
-+ /* GXset */ 0xff,
-+ /* 1 */
-+};
-+
-+static int copydx, copydy;
-+static ATIScreenInfo *accel_atis;
-+static char *accel_mmio;
-+
-+
-+void
-+ATIDrawSetup(ScreenPtr pScreen)
-+{
-+ KdScreenPriv(pScreen);
-+ ATIScreenInfo(pScreenPriv);
-+ default_sc_bottom_right_u dsbr;
-+ RING_LOCALS;
-+
-+ dsbr.val = 0;
-+ dsbr.f.default_sc_right = dsbr.f.default_sc_bottom = W100_MAXINT;
-+
-+ BEGIN_DMA_REG(2);
-+ OUT_REG(mmDEFAULT_SC_BOTTOM_RIGHT, dsbr.val);
-+ OUT_REG(mmSRC_SC_BOTTOM_RIGHT, dsbr.val);
-+ END_DMA_REG();
-+}
-+
-+static void
-+ATIWaitMarker(ScreenPtr pScreen, int marker)
-+{
-+ KdScreenPriv(pScreen);
-+ ATIScreenInfo(pScreenPriv);
-+
-+ ENTER_DRAW(0);
-+ ATIWaitIdle(atis);
-+ LEAVE_DRAW(0);
-+}
-+
-+
-+#if ATI_TRACE_DRAW
-+void
-+ATIEnterDraw(PixmapPtr pPix, const char *function)
-+{
-+ if (pPix != NULL) {
-+ KdScreenPriv(pPix->drawable.pScreen);
-+ CARD32 offset;
-+
-+ offset = ((CARD8 *) pPix->devPrivate.ptr -
-+ pScreenPriv->screen->memory_base);
-+
-+ ErrorF("Enter %s 0x%x (%dx%dx%d/%d)\n", function, offset,
-+ pPix->drawable.width, pPix->drawable.height,
-+ pPix->drawable.depth, pPix->drawable.bitsPerPixel);
-+ } else
-+ ErrorF("Enter %s\n", function);
-+}
-+
-+void
-+ATILeaveDraw(PixmapPtr pPix, const char *function)
-+{
-+ if (pPix != NULL) {
-+ KdScreenPriv(pPix->drawable.pScreen);
-+ CARD32 offset;
-+
-+ offset = ((CARD8 *) pPix->devPrivate.ptr -
-+ pScreenPriv->screen->memory_base);
-+
-+ ErrorF("Leave %s 0x%x\n", function, offset);
-+ } else
-+ ErrorF("Leave %s\n", function);
-+}
-+#endif
-+
-+/* Assumes that depth 15 and 16 can be used as depth 16, which is okay since we
-+ * require src and dest datatypes to be equal.
-+ */
-+static Bool
-+ATIGetDatatypeBpp(int bpp, CARD32 * type)
-+{
-+ switch (bpp) {
-+ case 8:
-+ *type = DATATYPE_8BPP;
-+ return TRUE;
-+ case 16:
-+ *type = DATATYPE_ARGB1555;
-+ return TRUE;
-+ default:
-+ ATI_FALLBACK(("Unsupported bpp: %d\n", bpp));
-+ return FALSE;
-+ }
-+}
-+
-+
-+Bool
-+ATIGetPixmapOffsetPitch(PixmapPtr pPix, CARD32 * pitch, CARD32 * offset)
-+{
-+ KdScreenPriv(pPix->drawable.pScreen);
-+ ATICardInfo(pScreenPriv);
-+
-+ /* XXX this only works for surfaces allocated in external memory */
-+ *offset = ((CARD8 *) pPix->devPrivate.ptr -
-+ pScreenPriv->screen->memory_base) + atic->ext_mem_location;
-+ *pitch = pPix->devKind >> 1;
-+
-+ return TRUE;
-+}
-+
-+
-+static Bool
-+ATIPrepareSolid(PixmapPtr pPix, int alu, Pixel pm, Pixel fg)
-+{
-+ KdScreenPriv(pPix->drawable.pScreen);
-+ ATIScreenInfo(pScreenPriv);
-+ ATICardInfo(pScreenPriv);
-+ CARD32 datatype, dst_pitch, dst_offset;
-+ dp_gui_master_cntl_u gmc;
-+ dp_cntl_u dp_cntl;
-+ RING_LOCALS;
-+
-+ accel_atis = atis;
-+ accel_mmio = atic->reg_base;
-+
-+ if (!ATIGetDatatypeBpp(pPix->drawable.bitsPerPixel, &datatype))
-+ return FALSE;
-+ if (!ATIGetPixmapOffsetPitch(pPix, &dst_pitch, &dst_offset))
-+ return FALSE;
-+
-+ ENTER_DRAW(pPix);
-+
-+ gmc.val = 0;
-+ gmc.f.gmc_dst_pitch_offset_cntl = 1;
-+ gmc.f.gmc_dst_clipping = 1;
-+ gmc.f.gmc_brush_datatype = BRUSH_SOLIDCOLOR;
-+ gmc.f.gmc_dst_datatype = datatype;
-+ gmc.f.gmc_src_datatype = datatype;
-+ gmc.f.gmc_byte_pix_order = 1;
-+ gmc.f.gmc_rop3 = ATISolidRop[alu];
-+ gmc.f.gmc_dp_src_source = SOURCE_MEM_RECTANGULAR;
-+ gmc.f.gmc_clr_cmp_fcn_dis = 1;
-+ gmc.f.gmc_dp_op = OP_ROP;
-+
-+ dp_cntl.val = 0;
-+ dp_cntl.f.dst_x_dir = 1;
-+ dp_cntl.f.dst_y_dir = 1;
-+
-+ BEGIN_DMA_REG(6);
-+ OUT_REG(mmDST_PITCH, dst_pitch);
-+ OUT_REG(mmDST_OFFSET, dst_offset);
-+ OUT_REG(mmDP_GUI_MASTER_CNTL, gmc.val);
-+ OUT_REG(mmDP_BRUSH_FRGD_CLR, fg);
-+ OUT_REG(mmDP_WRITE_MSK, pm);
-+ OUT_REG(mmDP_CNTL, dp_cntl.val);
-+ END_DMA_REG();
-+
-+ LEAVE_DRAW(pPix);
-+ return TRUE;
-+}
-+
-+static void
-+ATISolid(int x1, int y1, int x2, int y2)
-+{
-+ ENTER_DRAW(0);
-+ ATIScreenInfo *atis = accel_atis;
-+ RING_LOCALS;
-+
-+#ifdef DRAW_USING_PACKET3
-+ BEGIN_DMA(3);
-+ OUT_RING(DMA_PACKET3(W100_CCE_PACKET3_PAINT_MULTI, 2));
-+ OUT_RING((x1 << 16) | y1);
-+ OUT_RING(((x2 - x1) << 16) | (y2 - y1));
-+ END_DMA();
-+#elif defined DRAW_USING_PACKET0
-+ BEGIN_DMA(3);
-+ OUT_RING(DMA_PACKET0(mmDST_Y_X, 2));
-+ OUT_RING_REG(mmDST_Y_X, (y1 << 16) | x1);
-+ OUT_RING_REG(mmDST_HEIGHT_WIDTH, ((y2 - y1) << 16) | (x2 - x1));
-+ END_DMA();
-+#else
-+ BEGIN_DMA_REG(2);
-+ OUT_REG(mmDST_Y_X, (y1 << 16) | x1);
-+ OUT_REG(mmDST_HEIGHT_WIDTH, ((y2 - y1) << 16) | (x2 - x1));
-+ END_DMA_REG();
-+#endif
-+ LEAVE_DRAW(0);
-+}
-+
-+
-+static void
-+ATIDoneSolid(void)
-+{
-+ ENTER_DRAW(0);
-+ LEAVE_DRAW(0);
-+}
-+
-+
-+static Bool
-+ATIPrepareCopy(PixmapPtr pSrc, PixmapPtr pDst, int dx, int dy, int alu,
-+ Pixel pm)
-+{
-+ KdScreenPriv(pDst->drawable.pScreen);
-+ ATIScreenInfo(pScreenPriv);
-+ ATICardInfo(pScreenPriv);
-+ CARD32 datatype, src_pitch, src_offset, dst_pitch, dst_offset;
-+ dp_gui_master_cntl_u gmc;
-+ dp_cntl_u dp_cntl;
-+ dp_datatype_u dpdt;
-+ RING_LOCALS;
-+
-+ accel_mmio = atic->reg_base;
-+ copydx = dx;
-+ copydy = dy;
-+ accel_atis = atis;
-+
-+ if (!ATIGetDatatypeBpp(pDst->drawable.bitsPerPixel, &datatype))
-+ return FALSE;
-+ if (!ATIGetPixmapOffsetPitch(pSrc, &src_pitch, &src_offset))
-+ return FALSE;
-+ if (!ATIGetPixmapOffsetPitch(pDst, &dst_pitch, &dst_offset))
-+ return FALSE;
-+
-+ ENTER_DRAW(pDst);
-+
-+ gmc.val = 0;
-+ gmc.f.gmc_src_pitch_offset_cntl = 1;
-+ gmc.f.gmc_dst_pitch_offset_cntl = 1;
-+ gmc.f.gmc_src_clipping = 1;
-+ gmc.f.gmc_dst_clipping = 1;
-+ gmc.f.gmc_brush_datatype = BRUSH_NONE;
-+ gmc.f.gmc_dst_datatype = datatype;
-+ gmc.f.gmc_src_datatype = datatype;
-+ gmc.f.gmc_byte_pix_order = 1;
-+ gmc.f.gmc_rop3 = ATIBltRop[alu];
-+ gmc.f.gmc_dp_src_source = SOURCE_MEM_RECTANGULAR;
-+ gmc.f.gmc_clr_cmp_fcn_dis = 1;
-+ gmc.f.gmc_dp_op = OP_ROP;
-+
-+ dp_cntl.val = 0;
-+ if (dx >= 0)
-+ dp_cntl.f.dst_x_dir = 1;
-+ if (dy >= 0)
-+ dp_cntl.f.dst_y_dir = 1;
-+
-+ dpdt.val = 0;
-+ dpdt.f.dp_dst_datatype = datatype;
-+ dpdt.f.dp_src_datatype = datatype;
-+ dpdt.f.dp_byte_pix_order = 1;
-+
-+ BEGIN_DMA_REG(8);
-+ OUT_REG(mmSRC_PITCH, src_pitch);
-+ OUT_REG(mmSRC_OFFSET, src_offset);
-+ OUT_REG(mmDST_PITCH, dst_pitch);
-+ OUT_REG(mmDST_OFFSET, dst_offset);
-+ OUT_REG(mmDP_GUI_MASTER_CNTL, gmc.val);
-+ OUT_REG(mmDP_WRITE_MSK, pm);
-+ OUT_REG(mmDP_CNTL, dp_cntl.val);
-+ OUT_REG(mmDP_DATATYPE, dpdt.val);
-+ END_DMA_REG();
-+
-+ LEAVE_DRAW(pDst);
-+ return TRUE;
-+}
-+
-+static void
-+ATICopy(int srcX, int srcY, int dstX, int dstY, int w, int h)
-+{
-+ ATIScreenInfo *atis = accel_atis;
-+ RING_LOCALS;
-+
-+ ENTER_DRAW(0);
-+#ifndef DRAW_USING_PACKET3
-+ if (copydx < 0) {
-+ srcX += w - 1;
-+ dstX += w - 1;
-+ }
-+ if (copydy < 0) {
-+ srcY += h - 1;
-+ dstY += h - 1;
-+ }
-+#endif
-+
-+#ifdef DRAW_USING_PACKET3
-+ BEGIN_DMA(4);
-+ OUT_RING(DMA_PACKET3(W100_CCE_PACKET3_BITBLT_MULTI, 3));
-+ OUT_RING((srcX << 16) | srcY);
-+ OUT_RING((dstX << 16) | dstY);
-+ OUT_RING((w << 16) | h);
-+ END_DMA();
-+#elif defined DRAW_USING_PACKET0
-+ BEGIN_DMA(4);
-+ OUT_RING(DMA_PACKET0(mmSRC_Y_X, 3));
-+ OUT_RING_REG(mmSRC_Y_X, (srcY << 16) | srcX);
-+ OUT_RING_REG(mmDST_Y_X, (dstY << 16) | dstX);
-+ OUT_RING_REG(mmDST_HEIGHT_WIDTH, (h << 16) | w);
-+ END_DMA();
-+#else
-+ BEGIN_DMA_REG(3);
-+ OUT_REG(mmSRC_Y_X, (srcY << 16) | srcX);
-+ OUT_REG(mmDST_Y_X, (dstY << 16) | dstX);
-+ OUT_REG(mmDST_HEIGHT_WIDTH, (h << 16) | w);
-+ END_DMA_REG();
-+#endif
-+ LEAVE_DRAW(0);
-+}
-+
-+
-+static void
-+ATIDoneCopy(void)
-+{
-+ ENTER_DRAW(0);
-+ LEAVE_DRAW(0);
-+}
-+
-+
-+Bool
-+ATIDrawInit(ScreenPtr pScreen)
-+{
-+ KdScreenPriv(pScreen);
-+ ATIScreenInfo(pScreenPriv);
-+
-+ ErrorF("Screen: %d/%d depth/bpp\n", pScreenPriv->screen->fb[0].depth,
-+ pScreenPriv->screen->fb[0].bitsPerPixel);
-+
-+ memset(&atis->kaa, 0, sizeof(KaaScreenInfoRec));
-+ atis->kaa.waitMarker = ATIWaitMarker;
-+ atis->kaa.PrepareSolid = ATIPrepareSolid;
-+ atis->kaa.Solid = ATISolid;
-+ atis->kaa.DoneSolid = ATIDoneSolid;
-+ atis->kaa.PrepareCopy = ATIPrepareCopy;
-+ atis->kaa.Copy = ATICopy;
-+ atis->kaa.DoneCopy = ATIDoneCopy;
-+ /* XXX if this flag isn't specified, Kdrive crashes in kaaPixmapUseMemory
-+ * or kaaPixmapUseScreen. But this is probably caused by some bug in this
-+ * driver... */
-+ atis->kaa.flags |= KAA_OFFSCREEN_PIXMAPS;
-+ if (!kaaDrawInit(pScreen, &atis->kaa))
-+ return FALSE;
-+
-+ return TRUE;
-+}
-+
-+
-+void
-+ATIDrawEnable(ScreenPtr pScreen)
-+{
-+ KdScreenPriv(pScreen);
-+ ATIScreenInfo(pScreenPriv);
-+
-+ ATIDMASetup(pScreen);
-+ ATIDrawSetup(pScreen);
-+
-+ atis->scratch_area = NULL;
-+ atis->kaa.PrepareBlend = NULL;
-+ atis->kaa.Blend = NULL;
-+ atis->kaa.DoneBlend = NULL;
-+ atis->kaa.CheckComposite = NULL;
-+ atis->kaa.PrepareComposite = NULL;
-+ atis->kaa.Composite = NULL;
-+ atis->kaa.DoneComposite = NULL;
-+ atis->kaa.UploadToScreen = NULL;
-+ atis->kaa.UploadToScratch = NULL;
-+
-+
-+ kaaMarkSync(pScreen);
-+}
-+
-+void
-+ATIDrawDisable(ScreenPtr pScreen)
-+{
-+ ATIDMATeardown(pScreen);
-+}
-+
-+void
-+ATIDrawFini(ScreenPtr pScreen)
-+{
-+ kaaDrawFini(pScreen);
-+}
-Index: git/hw/kdrive/w100/ati_draw.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ git/hw/kdrive/w100/ati_draw.h 2006-09-02 12:12:14.000000000 +0200
-@@ -0,0 +1,107 @@
-+/*
-+ * Copyright © 2004 Eric Anholt
-+ *
-+ * Permission to use, copy, modify, distribute, and sell this software and its
-+ * documentation for any purpose is hereby granted without fee, provided that
-+ * the above copyright notice appear in all copies and that both that
-+ * copyright notice and this permission notice appear in supporting
-+ * documentation, and that the name of Eric Anholt not be used in
-+ * advertising or publicity pertaining to distribution of the software without
-+ * specific, written prior permission. Eric Anholt makes no
-+ * representations about the suitability of this software for any purpose. It
-+ * is provided "as is" without express or implied warranty.
-+ *
-+ * ERIC ANHOLT DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
-+ * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
-+ * EVENT SHALL ERIC ANHOLT BE LIABLE FOR ANY SPECIAL, INDIRECT OR
-+ * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
-+ * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
-+ * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
-+ * PERFORMANCE OF THIS SOFTWARE.
-+ */
-+/* $Header: /cvs/xserver/xserver/hw/kdrive/ati/ati_draw.h,v 1.9 2005-02-21 03:44:10 anholt Exp $ */
-+
-+#ifndef _ATI_DRAW_H_
-+#define _ATI_DRAW_H_
-+
-+Bool ATIGetOffsetPitch(ATIScreenInfo *atis, int bpp, CARD32 *pitch_offset,
-+ int offset, int pitch);
-+Bool ATIGetPixmapOffsetPitch(PixmapPtr pPix, CARD32 *pitch, CARD32 *offset);
-+
-+Bool R128CheckComposite(int op, PicturePtr pSrcPicture, PicturePtr pMaskPicture,
-+ PicturePtr pDstPicture);
-+Bool R128PrepareComposite(int op, PicturePtr pSrcPicture,
-+ PicturePtr pMaskPicture, PicturePtr pDstPicture, PixmapPtr pSrc,
-+ PixmapPtr pMask, PixmapPtr pDst);
-+void R128Composite(int srcX, int srcY, int maskX, int maskY, int dstX, int dstY,
-+ int w, int h);
-+void R128DoneComposite(void);
-+
-+Bool R128PrepareTrapezoids(PicturePtr pDstPicture, PixmapPtr pDst);
-+void R128Trapezoids(KaaTrapezoid *traps, int ntraps);
-+void R128DoneTrapezoids(void);
-+
-+Bool R100CheckComposite(int op, PicturePtr pSrcPicture, PicturePtr pMaskPicture,
-+ PicturePtr pDstPicture);
-+Bool R100PrepareComposite(int op, PicturePtr pSrcPicture,
-+ PicturePtr pMaskPicture, PicturePtr pDstPicture, PixmapPtr pSrc,
-+ PixmapPtr pMask, PixmapPtr pDst);
-+Bool R200CheckComposite(int op, PicturePtr pSrcPicture, PicturePtr pMaskPicture,
-+ PicturePtr pDstPicture);
-+Bool R200PrepareComposite(int op, PicturePtr pSrcPicture,
-+ PicturePtr pMaskPicture, PicturePtr pDstPicture, PixmapPtr pSrc,
-+ PixmapPtr pMask, PixmapPtr pDst);
-+void RadeonComposite(int srcX, int srcY, int maskX, int maskY, int dstX,
-+ int dstY, int w, int h);
-+void RadeonDoneComposite(void);
-+
-+Bool RadeonPrepareTrapezoids(PicturePtr pDstPicture, PixmapPtr pDst);
-+void RadeonTrapezoids(KaaTrapezoid *traps, int ntraps);
-+void RadeonDoneTrapezoids(void);
-+
-+void RadeonSwitchTo2D(ATIScreenInfo *atis);
-+void RadeonSwitchTo3D(ATIScreenInfo *atis);
-+void ATIWaitIdle(ATIScreenInfo *atis);
-+
-+#define ATI_TRACE_FALL 0
-+#define ATI_TRACE_DRAW 1
-+
-+#if ATI_TRACE_FALL
-+#define ATI_FALLBACK(x) \
-+do { \
-+ ErrorF("%s: ", __FUNCTION__); \
-+ ErrorF x; \
-+ return FALSE; \
-+} while (0)
-+#else
-+#define ATI_FALLBACK(x) return FALSE
-+#endif
-+
-+#if ATI_TRACE_DRAW
-+#define ENTER_DRAW(pix) ATIEnterDraw(pix, __FUNCTION__)
-+#define LEAVE_DRAW(pix) ATILeaveDraw(pix, __FUNCTION__)
-+
-+void
-+ATIEnterDraw (PixmapPtr pPixmap, const char *function);
-+
-+void
-+ATILeaveDraw (PixmapPtr pPixmap, const char *function);
-+#else /* ATI_TRACE */
-+#define ENTER_DRAW(pix)
-+#define LEAVE_DRAW(pix)
-+#endif /* !ATI_TRACE */
-+
-+#ifndef USE_DMA
-+/* if DMA is not going to be used, drawing using PACKET3 or PACKET0 won't
-+ * be possible */
-+#ifdef DRAW_USING_PACKET3
-+#undef DRAW_USING_PACKET3
-+#endif
-+
-+#ifdef DRAW_USING_PACKET0
-+#undef DRAW_USING_PACKET0
-+#endif
-+
-+#endif /* USE_DMA */
-+
-+#endif /* _ATI_DRAW_H_ */
-Index: git/hw/kdrive/w100/ati.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ git/hw/kdrive/w100/ati.h 2006-09-02 12:12:14.000000000 +0200
-@@ -0,0 +1,256 @@
-+/*
-+ * $Id: ati.h,v 1.18 2005-06-10 02:14:44 anholt Exp $
-+ *
-+ * Copyright © 2003 Eric Anholt
-+ *
-+ * Permission to use, copy, modify, distribute, and sell this software and its
-+ * documentation for any purpose is hereby granted without fee, provided that
-+ * the above copyright notice appear in all copies and that both that
-+ * copyright notice and this permission notice appear in supporting
-+ * documentation, and that the name of Eric Anholt not be used in
-+ * advertising or publicity pertaining to distribution of the software without
-+ * specific, written prior permission. Eric Anholt makes no
-+ * representations about the suitability of this software for any purpose. It
-+ * is provided "as is" without express or implied warranty.
-+ *
-+ * ERIC ANHOLT DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
-+ * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
-+ * EVENT SHALL ERIC ANHOLT BE LIABLE FOR ANY SPECIAL, INDIRECT OR
-+ * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
-+ * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
-+ * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
-+ * PERFORMANCE OF THIS SOFTWARE.
-+ */
-+/* $Header: /cvs/xserver/xserver/hw/kdrive/ati/ati.h,v 1.18 2005-06-10 02:14:44 anholt Exp $ */
-+
-+#ifndef _ATI_H_
-+#define _ATI_H_
-+
-+#ifdef HAVE_CONFIG_H
-+#include <kdrive-config.h>
-+#endif
-+
-+#ifdef KDRIVEFBDEV
-+#include <fbdev.h>
-+#endif
-+#ifdef KDRIVEVESA
-+#include <vesa.h>
-+#endif
-+
-+#include "kxv.h"
-+
-+
-+#define ATI_MEM_BASE(c) (0x08000000)
-+#define ATI_MEM_SIZE(c) (0x01000000)
-+#define ATI_REG_BASE(c) (ATI_MEM_BASE(c) + 0x10000) /* the 0x08000000 must be obtained from /proc/iomem, the 0x10000 from ReadCfgReg(cfgREG_BASE) << 16) & 0xff0000 */
-+#define ATI_REG_SIZE(c) (0x2000)
-+
-+#ifdef __powerpc__
-+
-+static __inline__ void
-+MMIO_OUT32(__volatile__ void *base, const unsigned long offset,
-+ const unsigned int val)
-+{
-+ __asm__ __volatile__(
-+ "stwbrx %1,%2,%3\n\t"
-+ "eieio"
-+ : "=m" (*((volatile unsigned char *)base+offset))
-+ : "r" (val), "b" (base), "r" (offset));
-+}
-+
-+static __inline__ CARD32
-+MMIO_IN32(__volatile__ void *base, const unsigned long offset)
-+{
-+ register unsigned int val;
-+ __asm__ __volatile__(
-+ "lwbrx %0,%1,%2\n\t"
-+ "eieio"
-+ : "=r" (val)
-+ : "b" (base), "r" (offset),
-+ "m" (*((volatile unsigned char *)base+offset)));
-+ return val;
-+}
-+
-+#else
-+
-+#define MMIO_OUT32(mmio, a, v) (*(VOL32 *)((mmio) + (a)) = (v))
-+#define MMIO_IN32(mmio, a) (*(VOL32 *)((mmio) + (a)))
-+
-+#endif
-+
-+#define MMIO_OUT8(mmio, a, v) (*(VOL8 *)((mmio) + (a)) = (v))
-+#define MMIO_IN8(mmio, a, v) (*(VOL8 *)((mmio) + (a)))
-+
-+
-+typedef volatile CARD8 VOL8;
-+typedef volatile CARD16 VOL16;
-+typedef volatile CARD32 VOL32;
-+
-+struct pci_id_entry {
-+ CARD16 vendor;
-+ CARD16 device;
-+ CARD8 caps;
-+ char *name;
-+};
-+
-+struct backend_funcs {
-+ void (*cardfini)(KdCardInfo *);
-+ void (*scrfini)(KdScreenInfo *);
-+ Bool (*initScreen)(ScreenPtr);
-+ Bool (*finishInitScreen)(ScreenPtr pScreen);
-+ Bool (*createRes)(ScreenPtr);
-+ void (*preserve)(KdCardInfo *);
-+ void (*restore)(KdCardInfo *);
-+ Bool (*dpms)(ScreenPtr, int);
-+ Bool (*enable)(ScreenPtr);
-+ void (*disable)(ScreenPtr);
-+ void (*getColors)(ScreenPtr, int, int, xColorItem *);
-+ void (*putColors)(ScreenPtr, int, int, xColorItem *);
-+#ifdef RANDR
-+ Bool (*randrSetConfig) (ScreenPtr, Rotation, int, RRScreenSizePtr);
-+#endif
-+};
-+
-+typedef struct _ATICardInfo {
-+ union {
-+#ifdef KDRIVEFBDEV
-+ FbdevPriv fbdev;
-+#endif
-+#ifdef KDRIVEVESA
-+ VesaCardPrivRec vesa;
-+#endif
-+ } backend_priv;
-+ struct backend_funcs backend_funcs;
-+
-+ struct pci_id_entry *pci_id;
-+ CARD8 *mem_base;
-+ CARD8 *reg_base;
-+ CARD32 fb_location;
-+ CARD32 ext_mem_location;
-+ Bool use_fbdev, use_vesa;
-+} ATICardInfo;
-+
-+#define getATICardInfo(kd) ((ATICardInfo *) ((kd)->card->driver))
-+#define ATICardInfo(kd) ATICardInfo *atic = getATICardInfo(kd)
-+
-+typedef struct _ATICursor {
-+ int width, height;
-+ int xhot, yhot;
-+
-+ Bool has_cursor;
-+ CursorPtr pCursor;
-+ Pixel source, mask;
-+ KdOffscreenArea *area;
-+} ATICursor;
-+
-+typedef struct _ATIPortPriv {
-+ int brightness;
-+ int saturation;
-+ RegionRec clip;
-+ CARD32 size;
-+ KdOffscreenArea *off_screen;
-+ DrawablePtr pDraw;
-+ PixmapPtr pPixmap;
-+
-+ CARD32 src_offset;
-+ CARD32 src_pitch;
-+ CARD8 *src_addr;
-+
-+ int id;
-+ int src_x1, src_y1, src_x2, src_y2;
-+ int dst_x1, dst_y1, dst_x2, dst_y2;
-+ int src_w, src_h, dst_w, dst_h;
-+} ATIPortPrivRec, *ATIPortPrivPtr;
-+
-+typedef struct _ATIScreenInfo {
-+ union {
-+#ifdef KDRIVEFBDEV
-+ FbdevScrPriv fbdev;
-+#endif
-+#ifdef KDRIVEVESA
-+ VesaScreenPrivRec vesa;
-+#endif
-+ } backend_priv;
-+ KaaScreenInfoRec kaa;
-+
-+ ATICardInfo *atic;
-+ KdScreenInfo *screen;
-+
-+ int scratch_offset;
-+ int scratch_next;
-+ KdOffscreenArea *scratch_area;
-+
-+ ATICursor cursor;
-+
-+ KdVideoAdaptorPtr pAdaptor;
-+ int num_texture_ports;
-+
-+ Bool using_pio; /* If we use decode DMA packets to MMIO. */
-+ Bool using_dma; /* If we use non-DRI DMA to submit packets. */
-+
-+ KdOffscreenArea *dma_space; /* For "DMA" from framebuffer. */
-+ CARD32 *ring_addr; /* Beginning of ring buffer. */
-+ int ring_write; /* Index of write ptr in ring. */
-+ int ring_read; /* Index of read ptr in ring. */
-+ int ring_len;
-+ int ring_mask;
-+ int ring_count;
-+ int ring_free;
-+
-+
-+ int mmio_avail;
-+} ATIScreenInfo;
-+
-+#define getATIScreenInfo(kd) ((ATIScreenInfo *) ((kd)->screen->driver))
-+#define ATIScreenInfo(kd) ATIScreenInfo *atis = getATIScreenInfo(kd)
-+
-+typedef union { float f; CARD32 i; } fi_type;
-+
-+
-+/* ati.c */
-+Bool
-+ATIMap(KdCardInfo *card, ATICardInfo *atic);
-+
-+void
-+ATIUnmap(KdCardInfo *card, ATICardInfo *atic);
-+
-+/* ati_draw.c */
-+void
-+ATIDrawSetup(ScreenPtr pScreen);
-+
-+Bool
-+ATIDrawInit(ScreenPtr pScreen);
-+
-+void
-+ATIDrawEnable(ScreenPtr pScreen);
-+
-+void
-+ATIDrawDisable(ScreenPtr pScreen);
-+
-+void
-+ATIDrawFini(ScreenPtr pScreen);
-+
-+
-+/* ati_cursor.c */
-+Bool
-+ATICursorInit(ScreenPtr pScreen);
-+
-+void
-+ATICursorEnable(ScreenPtr pScreen);
-+
-+void
-+ATICursorDisable(ScreenPtr pScreen);
-+
-+void
-+ATICursorFini(ScreenPtr pScreen);
-+
-+void
-+ATIRecolorCursor(ScreenPtr pScreen, int ndef, xColorItem *pdef);
-+
-+int
-+ATILog2(int val);
-+
-+
-+extern KdCardFuncs ATIFuncs;
-+
-+#endif /* _ATI_H_ */
-Index: git/hw/kdrive/w100/ati_microcode.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ git/hw/kdrive/w100/ati_microcode.c 2006-09-02 12:12:14.000000000 +0200
-@@ -0,0 +1,412 @@
-+/*
-+ * Copyright © 2006 Alberto Mardegan <mardy@users.sourceforge.net>
-+ *
-+ * Permission to use, copy, modify, distribute, and sell this software and its
-+ * documentation for any purpose is hereby granted without fee, provided that
-+ * the above copyright notice appear in all copies and that both that
-+ * copyright notice and this permission notice appear in supporting
-+ * documentation, and that the name of Alberto Mardegan not be used in
-+ * advertising or publicity pertaining to distribution of the software without
-+ * specific, written prior permission. Alberto Mardegan makes no
-+ * representations about the suitability of this software for any purpose. It
-+ * is provided "as is" without express or implied warranty.
-+ *
-+ * ALBERTO MARDEGAN DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
-+ * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
-+ * EVENT SHALL ALBERTO MARDEGAN BE LIABLE FOR ANY SPECIAL, INDIRECT OR
-+ * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
-+ * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
-+ * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
-+ * PERFORMANCE OF THIS SOFTWARE.
-+ */
-+
-+/* CCE microcode (from ATI) */
-+
-+#include "ati.h"
-+
-+
-+CARD32 w100_microcode[][2] = {
-+ {0x21007000, 0x00000000}
-+ ,
-+ {0x20007000, 0x00000000}
-+ ,
-+ {0x00000098, 0x00000004}
-+ ,
-+ {0x0000009c, 0x00000004}
-+ ,
-+ {0x66544a49, 0x00000000}
-+ ,
-+ {0x49494174, 0x00000000}
-+ ,
-+ {0x54517d83, 0x00000000}
-+ ,
-+ {0x498d8b64, 0x00000000}
-+ ,
-+ {0x49494949, 0x00000000}
-+ ,
-+ {0x49b6493c, 0x00000000}
-+ ,
-+ {0x49494949, 0x00000000}
-+ ,
-+ {0x49494949, 0x00000000}
-+ ,
-+ {0x49490d10, 0x00000000}
-+ ,
-+ {0x000f0000, 0x00000016}
-+ ,
-+ {0x30292027, 0x00000000}
-+ ,
-+ {0x00000012, 0x00000004}
-+ ,
-+ {0x000f0000, 0x00000016}
-+ ,
-+ {0x30292427, 0x00000000}
-+ ,
-+ {0x0000730f, 0x00000002}
-+ , /* mmIDCT_CONTROL */
-+ {0x00061000, 0x00000002}
-+ ,
-+ {0x0000001d, 0x0000001a}
-+ ,
-+ {0x00004000, 0x0000001e}
-+ ,
-+ {0x00061000, 0x00000002}
-+ ,
-+ {0x0000001d, 0x0000001a}
-+ ,
-+ {0x00004000, 0x0000001e}
-+ ,
-+ {0x00061000, 0x00000002}
-+ ,
-+ {0x0000001d, 0x0000001a}
-+ ,
-+ {0x00004000, 0x0000001e}
-+ ,
-+ {0x00000013, 0x00000004}
-+ ,
-+ {0x0003803a, 0x00000002}
-+ ,
-+ {0x04006300, 0x00000002}
-+ , /* mmIDCT_RUNS */
-+ {0x00000013, 0x00000004}
-+ ,
-+ {0x00007300, 0x00000002}
-+ , /* mmIDCT_RUNS */
-+ {0x00065000, 0x00000002}
-+ ,
-+ {0x00003301, 0x00000002}
-+ , /* mmIDCT_LEVELS */
-+ {0x04006301, 0x00000006}
-+ , /* mmIDCT_LEVELS */
-+ {0x00007300, 0x00000002}
-+ , /* mmIDCT_RUNS */
-+ {0x00007301, 0x00000002}
-+ , /* mmIDCT_LEVELS */
-+ {0x00007301, 0x00000006}
-+ , /* mmIDCT_LEVELS */
-+ {0x0003803a, 0x00000002}
-+ ,
-+ {0x04006300, 0x00000006}
-+ , /* mmIDCT_RUNS */
-+ {0x00a05000, 0x00000002}
-+ ,
-+ {0x00000039, 0x0000000c}
-+ ,
-+ {0x00000000, 0x00000002}
-+ ,
-+ {0x00007300, 0x00000002}
-+ , /* mmIDCT_RUNS */
-+ {0x00007301, 0x00000002}
-+ , /* mmIDCT_LEVELS */
-+ {0x00007301, 0x00000002}
-+ , /* mmIDCT_LEVELS */
-+ {0x0060002a, 0x00000004}
-+ ,
-+ {0x00007488, 0x00000002}
-+ , /* mmE2_ARITHMETIC_CNTL */
-+ {0x0003803b, 0x00000002}
-+ ,
-+ {0x00098000, 0x00000002}
-+ ,
-+ {0x00200000, 0x00000002}
-+ ,
-+ {0x00000039, 0x0000000c}
-+ ,
-+ {0x00007465, 0x00000002}
-+ , /* mmDST_X_Y */
-+ {0x00007464, 0x00000002}
-+ , /* mmSRC_X_Y */
-+ {0x00007478, 0x00000002}
-+ , /* mmMVC_CNTL_START */
-+ {0x00600034, 0x00000004}
-+ ,
-+ {0x00000000, 0x00000006}
-+ ,
-+ {0xffffffff, 0x00000000}
-+ ,
-+ {0x00000006, 0x00000000}
-+ ,
-+ {0x01605000, 0x00000002}
-+ ,
-+ {0x00065000, 0x00000002}
-+ ,
-+ {0x00098000, 0x00000002}
-+ ,
-+ {0x00061000, 0x00000002}
-+ ,
-+ {0x64c0603d, 0x00000004}
-+ ,
-+ {0x00080000, 0x00000016}
-+ ,
-+ {0x00000000, 0x00000000}
-+ ,
-+ {0x0400241d, 0x00000002}
-+ , /* mmBRUSH_Y_X */
-+ {0x00007424, 0x00000002}
-+ , /* mmDST_LINE_START */
-+ {0x00067425, 0x00000002}
-+ , /* mmDST_LINE_END */
-+ {0x04002424, 0x00000002}
-+ , /* mmDST_LINE_START */
-+ {0x00067425, 0x00000002}
-+ , /* mmDST_LINE_END */
-+ {0x00000046, 0x00000004}
-+ ,
-+ {0x00005000, 0x00000000}
-+ ,
-+ {0x00061000, 0x00000002}
-+ ,
-+ {0x0000740e, 0x00000002}
-+ , /* mmDST_Y_X */
-+ {0x00019000, 0x00000002}
-+ ,
-+ {0x00011050, 0x00000014}
-+ ,
-+ {0x00000050, 0x00000012}
-+ ,
-+ {0x0400240f, 0x00000002}
-+ , /* mmDST_HEIGHT_WIDTH */
-+ {0x0000504a, 0x00000004}
-+ ,
-+ {0x00007465, 0x00000002}
-+ , /* mmDST_X_Y */
-+ {0x00007466, 0x00000002}
-+ , /* mmDST_WIDTH_HEIGHT */
-+ {0x00000051, 0x00000004}
-+ ,
-+ {0x01e65473, 0x00000002}
-+ , /* mmDP_CNTL_DST_DIR */
-+ {0x4401b0b9, 0x00000002}
-+ ,
-+ {0x01c110b9, 0x00000002}
-+ ,
-+ {0x2666705d, 0x00000018}
-+ ,
-+ {0x040c2465, 0x00000002}
-+ , /* mmDST_X_Y */
-+ {0x0000005d, 0x00000018}
-+ ,
-+ {0x04002464, 0x00000002}
-+ , /* mmSRC_X_Y */
-+ {0x00007466, 0x00000002}
-+ , /* mmDST_WIDTH_HEIGHT */
-+ {0x00000054, 0x00000004}
-+ ,
-+ {0x00401060, 0x00000008}
-+ ,
-+ {0x00101000, 0x00000002}
-+ ,
-+ {0x000d80ff, 0x00000002}
-+ ,
-+ {0x00800063, 0x00000008}
-+ ,
-+ {0x000f9000, 0x00000002}
-+ ,
-+ {0x000e00ff, 0x00000002}
-+ ,
-+ {0x00000000, 0x00000006}
-+ ,
-+ {0x00000080, 0x00000018}
-+ ,
-+ {0x00000054, 0x00000004}
-+ ,
-+ {0x00007490, 0x00000002}
-+ , /* mmDP_SRC_FRGD_CLR */
-+ {0x00065000, 0x00000002}
-+ ,
-+ {0x00009000, 0x00000002}
-+ ,
-+ {0x00041000, 0x00000002}
-+ ,
-+ {0x0c00340e, 0x00000002}
-+ , /* mmDST_Y_X */
-+ {0x00049000, 0x00000002}
-+ ,
-+ {0x00051000, 0x00000002}
-+ ,
-+ {0x01e784f8, 0x00000002}
-+ ,
-+ {0x00200000, 0x00000002}
-+ ,
-+ {0x00600073, 0x0000000c}
-+ ,
-+ {0x00007463, 0x00000002}
-+ , /* mmDST_HEIGHT_WIDTH_8 */
-+ {0x006074f0, 0x00000021}
-+ , /* mmHOST_DATA0 */
-+ {0x20007068, 0x00000004}
-+ ,
-+ {0x00005068, 0x00000004}
-+ ,
-+ {0x00007490, 0x00000002}
-+ , /* mmDP_SRC_FRGD_CLR */
-+ {0x00007491, 0x00000002}
-+ , /* mmDP_SRC_BKGD_CLR */
-+ {0x0000740e, 0x00000002}
-+ , /* mmDST_Y_X */
-+ {0x0000740f, 0x00000002}
-+ , /* mmDST_HEIGHT_WIDTH */
-+ {0x00a05000, 0x00000002}
-+ ,
-+ {0x00600076, 0x0000000c}
-+ ,
-+ {0x006074f0, 0x00000021}
-+ , /* mmHOST_DATA0 */
-+ {0x000074f8, 0x00000002}
-+ , /* mmHOST_DATA_LAST */
-+ {0x00000076, 0x00000004}
-+ ,
-+ {0x000a740e, 0x00000002}
-+ , /* mmDST_Y_X */
-+ {0x0020740f, 0x00000002}
-+ , /* mmDST_HEIGHT_WIDTH */
-+ {0x00600079, 0x00000004}
-+ ,
-+ {0x0000748c, 0x00000002}
-+ , /* mmCLR_CMP_CNTL */
-+ {0x0000748d, 0x00000002}
-+ , /* mmCLR_CMP_CLR_SRC */
-+ {0x0000748e, 0x00000006}
-+ , /* mmCLR_CMP_CLR_DST */
-+ {0x00005000, 0x00000002}
-+ ,
-+ {0x00a05000, 0x00000002}
-+ ,
-+ {0x00007468, 0x00000002}
-+ , /* mmDST_HEIGHT_Y */
-+ {0x00061000, 0x00000002}
-+ ,
-+ {0x00000084, 0x0000000c}
-+ ,
-+ {0x00058000, 0x00000002}
-+ ,
-+ {0x0c607462, 0x00000002}
-+ , /* mmDST_WIDTH_X */
-+ {0x00000086, 0x00000004}
-+ ,
-+ {0x00600085, 0x00000004}
-+ ,
-+ {0x400070ba, 0x00000000}
-+ ,
-+ {0x000380ba, 0x00000002}
-+ ,
-+ {0x00000093, 0x0000001c}
-+ ,
-+ {0x00065095, 0x00000018}
-+ ,
-+ {0x0400246f, 0x00000002}
-+ , /* mmSC_TOP_LEFT */
-+ {0x00061096, 0x00000018}
-+ ,
-+ {0x04007470, 0x00000000}
-+ , /* mmSC_BOTTOM_RIGHT */
-+ {0x0000746f, 0x00000002}
-+ , /* mmSC_TOP_LEFT */
-+ {0x00007470, 0x00000000}
-+ , /* mmSC_BOTTOM_RIGHT */
-+ {0x00090000, 0x00000006}
-+ ,
-+ {0x00090000, 0x00000002}
-+ ,
-+ {0x000d8002, 0x00000006}
-+ ,
-+ {0x01200000, 0x00000002}
-+ ,
-+ {0x20077000, 0x00000002}
-+ ,
-+ {0x01200000, 0x00000002}
-+ ,
-+ {0x20007000, 0x00000002}
-+ ,
-+ {0x00061000, 0x00000002}
-+ ,
-+ {0x0120741b, 0x00000002}
-+ , /* mmDP_GUI_MASTER_CNTL */
-+ {0x8040740a, 0x00000002}
-+ , /* mmSRC_PITCH_OFFSET */
-+ {0x8040740b, 0x00000002}
-+ , /* mmDST_PITCH_OFFSET */
-+ {0x00110000, 0x00000002}
-+ ,
-+ {0x000380ba, 0x00000002}
-+ ,
-+ {0x000000aa, 0x0000001c}
-+ ,
-+ {0x00061096, 0x00000018}
-+ ,
-+ {0x84407471, 0x00000002}
-+ , /* mmSRC_SC_BOTTOM_RIGHT */
-+ {0x00061095, 0x00000018}
-+ ,
-+ {0x8400746f, 0x00000002}
-+ , /* mmSC_TOP_LEFT */
-+ {0x00061096, 0x00000018}
-+ ,
-+ {0x84407470, 0x00000002}
-+ , /* mmSC_BOTTOM_RIGHT */
-+ {0x000000ad, 0x00000004}
-+ ,
-+ {0x80407471, 0x00000002}
-+ , /* mmSRC_SC_BOTTOM_RIGHT */
-+ {0x8000746f, 0x00000002}
-+ , /* mmSC_TOP_LEFT */
-+ {0x80407470, 0x00000002}
-+ , /* mmSC_BOTTOM_RIGHT */
-+ {0x00108000, 0x00000002}
-+ ,
-+ {0x01400000, 0x00000002}
-+ ,
-+ {0x006000b1, 0x0000000c}
-+ ,
-+ {0x20c07000, 0x00000020}
-+ ,
-+ {0x000000b3, 0x00000012}
-+ ,
-+ {0x00800000, 0x00000006}
-+ ,
-+ {0x0080741d, 0x00000006}
-+ , /* mmBRUSH_Y_X */
-+ {0x00000000, 0x00000000}
-+ ,
-+ {0x00000001, 0x00000000}
-+ ,
-+ {0x000380b5, 0x00000002}
-+ ,
-+ {0x04002054, 0x00000002}
-+ , /* mmNQWAIT_UNTIL */
-+ {0x00005000, 0x00000000}
-+ ,
-+ {0x00000000, 0x00000000}
-+ ,
-+ {0x00000000, 0x00000000}
-+ ,
-+ {0x00000000, 0x00000000}
-+ ,
-+ {0x00000000, 0x00000000}
-+ ,
-+ {0x00000000, 0x00000000}
-+ ,
-+ {0x00000000, 0x00000000}
-+ ,
-+ {0x00000000, 0x00000000}
-+};
-Index: git/hw/kdrive/w100/ati_stub.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ git/hw/kdrive/w100/ati_stub.c 2006-09-02 12:12:14.000000000 +0200
-@@ -0,0 +1,103 @@
-+/*
-+ * Copyright © 2006 Alberto Mardegan <mardy@users.sourceforge.net>
-+ *
-+ * Permission to use, copy, modify, distribute, and sell this software and its
-+ * documentation for any purpose is hereby granted without fee, provided that
-+ * the above copyright notice appear in all copies and that both that
-+ * copyright notice and this permission notice appear in supporting
-+ * documentation, and that the name of Alberto Mardegan not be used in
-+ * advertising or publicity pertaining to distribution of the software without
-+ * specific, written prior permission. Alberto Mardegan makes no
-+ * representations about the suitability of this software for any purpose. It
-+ * is provided "as is" without express or implied warranty.
-+ *
-+ * ALBERTO MARDEGAN DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
-+ * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
-+ * EVENT SHALL ALBERTO MARDEGAN BE LIABLE FOR ANY SPECIAL, INDIRECT OR
-+ * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
-+ * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
-+ * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
-+ * PERFORMANCE OF THIS SOFTWARE.
-+ */
-+
-+#ifdef HAVE_CONFIG_H
-+#include <kdrive-config.h>
-+#endif
-+#include "ati.h"
-+#include "w100_regs.h"
-+#include "klinux.h"
-+
-+extern struct pci_id_entry ati_pci_ids[];
-+
-+static Bool
-+FindW100(CARD16 vendor, CARD16 device, CARD32 count, KdCardAttr * attr)
-+{
-+ char *mmio;
-+ CARD32 chip_id;
-+ Bool found = FALSE;
-+
-+ mmio = KdMapDevice(ATI_REG_BASE(0), ATI_REG_SIZE(0));
-+ KdSetMappedMode((CARD32) mmio, ATI_REG_SIZE(0),
-+ KD_MAPPED_MODE_REGISTERS);
-+
-+ chip_id = MMIO_IN32(mmio, mmCHIP_ID);
-+ if ((vendor | (device << 16)) == chip_id) {
-+ ErrorF("Found Chip ID: %08x\n\n", chip_id);
-+ attr->deviceID = device;
-+ attr->vendorID = vendor;
-+ found = TRUE;
-+ }
-+ KdUnmapDevice(mmio, ATI_REG_SIZE(0));
-+ return found;
-+}
-+
-+
-+void
-+InitCard(char *name)
-+{
-+ struct pci_id_entry *id;
-+ KdCardAttr attr;
-+
-+ for (id = ati_pci_ids; id->name != NULL; id++) {
-+ int j = 0;
-+ if (FindW100(id->vendor, id->device, j++, &attr))
-+ KdCardInfoAdd(&ATIFuncs, &attr, 0);
-+ }
-+}
-+
-+void
-+InitOutput(ScreenInfo * pScreenInfo, int argc, char **argv)
-+{
-+ KdInitOutput(pScreenInfo, argc, argv);
-+}
-+
-+void
-+InitInput(int argc, char **argv)
-+{
-+ KdInitInput(&LinuxMouseFuncs, &LinuxKeyboardFuncs);
-+#ifdef TOUCHSCREEN
-+ KdAddMouseDriver(&TsFuncs);
-+#endif
-+}
-+
-+void
-+ddxUseMsg(void)
-+{
-+ KdUseMsg();
-+#ifdef KDRIVEVESA
-+ vesaUseMsg();
-+#endif
-+}
-+
-+int
-+ddxProcessArgument(int argc, char **argv, int i)
-+{
-+ int ret;
-+
-+#ifdef KDRIVEVESA
-+ if (!(ret = vesaProcessArgument(argc, argv, i)))
-+#endif
-+ ret = KdProcessArgument(argc, argv, i);
-+
-+ return ret;
-+}
-Index: git/hw/kdrive/w100/Makefile.am
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ git/hw/kdrive/w100/Makefile.am 2006-09-02 12:42:38.000000000 +0200
-@@ -0,0 +1,56 @@
-+if KDRIVEFBDEV
-+FBDEV_INCLUDES =-I$(top_srcdir)/hw/kdrive/fbdev
-+FBDEV_LIBS = $(top_builddir)/hw/kdrive/fbdev/libfbdev.a
-+endif
-+
-+if KDRIVEVESA
-+VESA_INCLUDES = -I$(top_srcdir)/hw/kdrive/vesa
-+VESA_LIBS = $(top_builddir)/hw/kdrive/vesa/libvesa.a
-+endif
-+
-+INCLUDES = \
-+ @KDRIVE_INCS@ \
-+ $(FBDEV_INCLUDES) \
-+ $(VESA_INCLUDES) \
-+ @KDRIVE_CFLAGS@
-+
-+bin_PROGRAMS = Xw100
-+
-+if TSLIB
-+TSLIB_FLAG = -lts
-+endif
-+
-+noinst_LIBRARIES = libw100.a
-+
-+libw100_a_SOURCES = \
-+ ati_cursor.c \
-+ ati_dma.c \
-+ ati_dma.h \
-+ ati_draw.c \
-+ ati_draw.h \
-+ ati_microcode.c \
-+ ati.c \
-+ ati.h \
-+ w100_regs.h \
-+ w100_const.h
-+
-+Xw100_SOURCES = \
-+ ati_stub.c
-+
-+W100_LIBS = \
-+ libw100.a \
-+ $(FBDEV_LIBS) \
-+ $(VESA_LIBS) \
-+ $(DRI_LIBS) \
-+ @KDRIVE_LIBS@
-+
-+Xw100_LDADD = \
-+ $(W100_LIBS) \
-+ @XSERVER_LIBS@ \
-+ $(TSLIB_FLAG)
-+
-+
-+Xw100_DEPENDENCIES = \
-+ libw100.a \
-+ $(FBDEV_LIBS) \
-+ $(VESA_LIBS)
-Index: git/hw/kdrive/w100/w100_const.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ git/hw/kdrive/w100/w100_const.h 2006-09-02 12:12:14.000000000 +0200
-@@ -0,0 +1,25 @@
-+#define CSQ_CNTL_MODE_FREERUN 0x8
-+
-+#define WB_BLOCK_SIZE_A_0 0
-+#define WB_BLOCK_SIZE_A_1 1
-+#define WB_BLOCK_SIZE_A_2 2
-+#define WB_BLOCK_SIZE_A_3 3
-+#define WB_BLOCK_SIZE_A_4 4
-+
-+#define DATATYPE_8BPP 2
-+#define DATATYPE_ARGB1555 3
-+#define DATATYPE_ARGB4444 5
-+
-+#define BRUSH_SOLIDCOLOR 13
-+#define BRUSH_NONE 15
-+
-+#define OP_ROP 0
-+#define OP_ARITHMETIC 1
-+
-+#define SOURCE_MEM_RECTANGULAR 2
-+
-+#define W100_MAXINT 0x1fff
-+
-+#define W100_CCE_PACKET3_PAINT_MULTI 0xc0001a00
-+#define W100_CCE_PACKET3_BITBLT_MULTI 0xc0001b00
-+
-Index: git/hw/kdrive/w100/w100_regs.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ git/hw/kdrive/w100/w100_regs.h 2006-09-02 12:12:14.000000000 +0200
-@@ -0,0 +1,3802 @@
-+#ifndef _W100_REGS_H_
-+#define _W100_REGS_H_
-+
-+/* Block CIF Start: */
-+#define mmCHIP_ID 0x0000
-+#define mmREVISION_ID 0x0004
-+#define mmWRAP_BUF_A 0x0008
-+#define mmWRAP_BUF_B 0x000C
-+#define mmWRAP_TOP_DIR 0x0010
-+#define mmWRAP_START_DIR 0x0014
-+#define mmCIF_CNTL 0x0018
-+#define mmCFGREG_BASE 0x001C
-+#define mmCIF_IO 0x0020
-+#define mmCIF_READ_DBG 0x0024
-+#define mmCIF_WRITE_DBG 0x0028
-+#define cfgIND_ADDR_A_0 0x0000
-+#define cfgIND_ADDR_A_1 0x0001
-+#define cfgIND_ADDR_A_2 0x0002
-+#define cfgIND_DATA_A 0x0003
-+#define cfgREG_BASE 0x0004
-+#define cfgINTF_CNTL 0x0005
-+#define cfgSTATUS 0x0006
-+#define cfgCPU_DEFAULTS 0x0007
-+#define cfgIND_ADDR_B_0 0x0008
-+#define cfgIND_ADDR_B_1 0x0009
-+#define cfgIND_ADDR_B_2 0x000A
-+#define cfgIND_DATA_B 0x000B
-+#define cfgPM4_RPTR 0x000C
-+#define cfgSCRATCH 0x000D
-+#define cfgPM4_WRPTR_0 0x000E
-+#define cfgPM4_WRPTR_1 0x000F
-+/* Block CIF End: */
-+
-+/* Block CP Start: */
-+#define mmCP_RB_CNTL 0x0210
-+#define mmCP_RB_BASE 0x0214
-+#define mmCP_RB_RPTR_ADDR 0x0218
-+#define mmCP_RB_RPTR 0x021C
-+#define mmCP_RB_RPTR_WR 0x02F8
-+#define mmCP_RB_WPTR 0x0220
-+#define mmCP_IB_BASE 0x0228
-+#define mmCP_IB_BUFSZ 0x022C
-+#define mmCP_CSQ_CNTL 0x0230
-+#define mmCP_CSQ_APER_PRIMARY 0x0300
-+#define mmCP_CSQ_APER_INDIRECT 0x0340
-+#define mmCP_ME_CNTL 0x0240
-+#define mmCP_ME_RAM_ADDR 0x0244
-+#define mmCP_ME_RAM_RADDR 0x0248
-+#define mmCP_ME_RAM_DATAH 0x024C
-+#define mmCP_ME_RAM_DATAL 0x0250
-+#define mmCP_DEBUG 0x025C
-+#define mmSCRATCH_REG0 0x0260
-+#define mmSCRATCH_REG1 0x0264
-+#define mmSCRATCH_REG2 0x0268
-+#define mmSCRATCH_REG3 0x026C
-+#define mmSCRATCH_REG4 0x0270
-+#define mmSCRATCH_REG5 0x0274
-+#define mmSCRATCH_UMSK 0x0280
-+#define mmSCRATCH_ADDR 0x0284
-+#define mmCP_CSQ_ADDR 0x02E4
-+#define mmCP_CSQ_DATA 0x02E8
-+#define mmCP_CSQ_STAT 0x02EC
-+#define mmCP_STAT 0x02F0
-+#define mmGEN_INT_CNTL 0x0200
-+#define mmGEN_INT_STATUS 0x0204
-+/* Block CP End: */
-+
-+/* Block DISPLAY Start: */
-+#define mmLCD_FORMAT 0x0410
-+#define mmGRAPHIC_CTRL 0x0414
-+#define mmGRAPHIC_OFFSET 0x0418
-+#define mmGRAPHIC_PITCH 0x041C
-+#define mmCRTC_TOTAL 0x0420
-+#define mmACTIVE_H_DISP 0x0424
-+#define mmACTIVE_V_DISP 0x0428
-+#define mmGRAPHIC_H_DISP 0x042C
-+#define mmGRAPHIC_V_DISP 0x0430
-+#define mmVIDEO_CTRL 0x0434
-+#define mmGRAPHIC_KEY 0x0438
-+#define mmVIDEO_Y_OFFSET 0x043C
-+#define mmVIDEO_Y_PITCH 0x0440
-+#define mmVIDEO_U_OFFSET 0x0444
-+#define mmVIDEO_U_PITCH 0x0448
-+#define mmVIDEO_V_OFFSET 0x044C
-+#define mmVIDEO_V_PITCH 0x0450
-+#define mmVIDEO_H_POS 0x0454
-+#define mmVIDEO_V_POS 0x0458
-+#define mmBRIGHTNESS_CNTL 0x045C
-+#define mmCURSOR1_OFFSET 0x0460
-+#define mmCURSOR1_H_POS 0x0464
-+#define mmCURSOR1_V_POS 0x0468
-+#define mmCURSOR1_COLOR0 0x046C
-+#define mmCURSOR1_COLOR1 0x0470
-+#define mmCURSOR2_OFFSET 0x0474
-+#define mmCURSOR2_H_POS 0x0478
-+#define mmCURSOR2_V_POS 0x047C
-+#define mmCURSOR2_COLOR0 0x0480
-+#define mmCURSOR2_COLOR1 0x0484
-+#define mmDISP_INT_CNTL 0x0488
-+#define mmCRTC_SS 0x048C
-+#define mmCRTC_LS 0x0490
-+#define mmCRTC_REV 0x0494
-+#define mmCRTC_DCLK 0x049C
-+#define mmCRTC_GS 0x04A0
-+#define mmCRTC_VPOS_GS 0x04A4
-+#define mmCRTC_GCLK 0x04A8
-+#define mmCRTC_GOE 0x04AC
-+#define mmCRTC_FRAME 0x04B0
-+#define mmCRTC_FRAME_VPOS 0x04B4
-+#define mmGPIO_DATA 0x04B8
-+#define mmGPIO_CNTL1 0x04BC
-+#define mmGPIO_CNTL2 0x04C0
-+#define mmLCDD_CNTL1 0x04C4
-+#define mmLCDD_CNTL2 0x04C8
-+#define mmGENLCD_CNTL1 0x04CC
-+#define mmGENLCD_CNTL2 0x04D0
-+#define mmDISP_DEBUG 0x04D4
-+#define mmDISP_DB_BUF_CNTL 0x04D8
-+#define mmDISP_CRC_SIG 0x04DC
-+#define mmCRTC_DEFAULT_COUNT 0x04E0
-+#define mmLCD_BACKGROUND_COLOR 0x04E4
-+#define mmCRTC_PS2 0x04E8
-+#define mmCRTC_PS2_VPOS 0x04EC
-+#define mmCRTC_PS1_ACTIVE 0x04F0
-+#define mmCRTC_PS1_NACTIVE 0x04F4
-+#define mmCRTC_GCLK_EXT 0x04F8
-+#define mmCRTC_ALW 0x04FC
-+#define mmCRTC_ALW_VPOS 0x0500
-+#define mmCRTC_PSK 0x0504
-+#define mmCRTC_PSK_HPOS 0x0508
-+#define mmCRTC_CV4_START 0x050C
-+#define mmCRTC_CV4_END 0x0510
-+#define mmCRTC_CV4_HPOS 0x0514
-+#define mmCRTC_ECK 0x051C
-+#define mmREFRESH_CNTL 0x0520
-+#define mmGENLCD_CNTL3 0x0524
-+#define mmGPIO_DATA2 0x0528
-+#define mmGPIO_CNTL3 0x052C
-+#define mmGPIO_CNTL4 0x0530
-+#define mmCHIP_STRAP 0x0534
-+#define mmDISP_DEBUG2 0x0538
-+#define mmDEBUG_BUS_CNTL 0x053C
-+#define mmGAMMA_VALUE1 0x0540
-+#define mmGAMMA_VALUE2 0x0544
-+#define mmGAMMA_SLOPE 0x0548
-+#define mmGEN_STATUS 0x054C
-+#define mmHW_INT 0x0550
-+/* Block DISPLAY End: */
-+
-+/* Block GFX Start: */
-+#define mmDST_OFFSET 0x1004
-+#define mmDST_PITCH 0x1008
-+#define mmDST_PITCH_OFFSET 0x102C
-+#define mmDST_X 0x101C
-+#define mmDST_Y 0x1020
-+#define mmDST_X_Y 0x1194
-+#define mmDST_Y_X 0x1038
-+#define mmDST_WIDTH 0x100C
-+#define mmDST_HEIGHT 0x1010
-+#define mmDST_WIDTH_HEIGHT 0x1198
-+#define mmDST_HEIGHT_WIDTH 0x103C
-+#define mmDST_HEIGHT_WIDTH_8 0x118C
-+#define mmDST_HEIGHT_Y 0x11A0
-+#define mmDST_WIDTH_X 0x1188
-+#define mmDST_WIDTH_X_INCY 0x119C
-+#define mmDST_LINE_START 0x1090
-+#define mmDST_LINE_END 0x1094
-+#define mmBRUSH_OFFSET 0x108C
-+#define mmBRUSH_Y_X 0x1074
-+#define mmDP_BRUSH_FRGD_CLR 0x107C
-+#define mmDP_BRUSH_BKGD_CLR 0x1078
-+#define mmSRC2_OFFSET 0x1060
-+#define mmSRC2_PITCH 0x1064
-+#define mmSRC2_PITCH_OFFSET 0x1068
-+#define mmSRC2_X 0x1050
-+#define mmSRC2_Y 0x1054
-+#define mmSRC2_X_Y 0x1058
-+#define mmSRC2_WIDTH 0x1080
-+#define mmSRC2_HEIGHT 0x1084
-+#define mmSRC2_INC 0x1088
-+#define mmSRC_OFFSET 0x11AC
-+#define mmSRC_PITCH 0x11B0
-+#define mmSRC_PITCH_OFFSET 0x1028
-+#define mmSRC_X 0x1014
-+#define mmSRC_Y 0x1018
-+#define mmSRC_X_Y 0x1190
-+#define mmSRC_Y_X 0x1034
-+#define mmSRC_WIDTH 0x1040
-+#define mmSRC_HEIGHT 0x1044
-+#define mmSRC_INC 0x1048
-+#define mmHOST_DATA0 0x13C0
-+#define mmHOST_DATA1 0x13C4
-+#define mmHOST_DATA2 0x13C8
-+#define mmHOST_DATA3 0x13CC
-+#define mmHOST_DATA4 0x13D0
-+#define mmHOST_DATA5 0x13D4
-+#define mmHOST_DATA6 0x13D8
-+#define mmHOST_DATA7 0x13DC
-+#define mmHOST_DATA_LAST 0x13E0
-+#define mmDP_SRC_FRGD_CLR 0x1240
-+#define mmDP_SRC_BKGD_CLR 0x1244
-+#define mmSC_LEFT 0x1140
-+#define mmSC_RIGHT 0x1144
-+#define mmSC_TOP 0x1148
-+#define mmSC_BOTTOM 0x114C
-+#define mmSRC_SC_RIGHT 0x1154
-+#define mmSRC_SC_BOTTOM 0x115C
-+#define mmDP_CNTL 0x11C8
-+#define mmDP_CNTL_DST_DIR 0x11CC
-+#define mmDP_DATATYPE 0x12C4
-+#define mmDP_MIX 0x12C8
-+#define mmDP_WRITE_MSK 0x12CC
-+#define mmCLR_CMP_CLR_SRC 0x1234
-+#define mmCLR_CMP_CLR_DST 0x1238
-+#define mmCLR_CMP_CNTL 0x1230
-+#define mmCLR_CMP_MSK 0x123C
-+#define mmDEFAULT_PITCH_OFFSET 0x10A0
-+#define mmDEFAULT_SC_BOTTOM_RIGHT 0x10A8
-+#define mmDEFAULT2_SC_BOTTOM_RIGHT 0x10AC
-+#define mmREF1_PITCH_OFFSET 0x10B8
-+#define mmREF2_PITCH_OFFSET 0x10BC
-+#define mmREF3_PITCH_OFFSET 0x10C0
-+#define mmREF4_PITCH_OFFSET 0x10C4
-+#define mmREF5_PITCH_OFFSET 0x10C8
-+#define mmREF6_PITCH_OFFSET 0x10CC
-+#define mmDP_GUI_MASTER_CNTL 0x106C
-+#define mmSC_TOP_LEFT 0x11BC
-+#define mmSC_BOTTOM_RIGHT 0x11C0
-+#define mmSRC_SC_BOTTOM_RIGHT 0x11C4
-+#define mmGLOBAL_ALPHA 0x1210
-+#define mmFILTER_COEF 0x1214
-+#define mmMVC_CNTL_START 0x11E0
-+#define mmE2_ARITHMETIC_CNTL 0x1220
-+#define mmDEBUG0 0x1280
-+#define mmDEBUG1 0x1284
-+#define mmDEBUG2 0x1288
-+#define mmDEBUG3 0x128C
-+#define mmDEBUG4 0x1290
-+#define mmDEBUG5 0x1294
-+#define mmDEBUG6 0x1298
-+#define mmDEBUG7 0x129C
-+#define mmDEBUG8 0x12A0
-+#define mmDEBUG9 0x12A4
-+#define mmDEBUG10 0x12A8
-+#define mmDEBUG11 0x12AC
-+#define mmDEBUG12 0x12B0
-+#define mmDEBUG13 0x12B4
-+#define mmDEBUG14 0x12B8
-+#define mmDEBUG15 0x12BC
-+#define mmENG_CNTL 0x13E8
-+#define mmENG_PERF_CNT 0x13F0
-+/* Block GFX End: */
-+
-+/* Block IDCT Start: */
-+#define mmIDCT_RUNS 0x0C00
-+#define mmIDCT_LEVELS 0x0C04
-+#define mmIDCT_CONTROL 0x0C3C
-+#define mmIDCT_AUTH_CONTROL 0x0C08
-+#define mmIDCT_AUTH 0x0C0C
-+/* Block IDCT End: */
-+
-+/* Block MC Start: */
-+#define mmMEM_CNTL 0x0180
-+#define mmMEM_ARB 0x0184
-+#define mmMC_FB_LOCATION 0x0188
-+#define mmMEM_EXT_CNTL 0x018C
-+#define mmMC_EXT_MEM_LOCATION 0x0190
-+#define mmMEM_EXT_TIMING_CNTL 0x0194
-+#define mmMEM_SDRAM_MODE_REG 0x0198
-+#define mmMEM_IO_CNTL 0x019C
-+#define mmMC_DEBUG 0x01A0
-+#define mmMC_BIST_CTRL 0x01A4
-+#define mmMC_BIST_COLLAR_READ 0x01A8
-+#define mmTC_MISMATCH 0x01AC
-+#define mmMC_PERF_MON_CNTL 0x01B0
-+#define mmMC_PERF_COUNTERS 0x01B4
-+/* Block MC End: */
-+
-+/* Block RBBM Start: */
-+#define mmWAIT_UNTIL 0x1400
-+#define mmISYNC_CNTL 0x1404
-+#define mmRBBM_GUICNTL 0x1408
-+#define mmRBBM_STATUS 0x0140
-+#define mmRBBM_STATUS_alt_1 0x140C
-+#define mmRBBM_CNTL 0x0144
-+#define mmRBBM_SOFT_RESET 0x0148
-+#define mmNQWAIT_UNTIL 0x0150
-+#define mmRBBM_DEBUG 0x016C
-+#define mmRBBM_CMDFIFO_ADDR 0x0170
-+#define mmRBBM_CMDFIFO_DATAL 0x0174
-+#define mmRBBM_CMDFIFO_DATAH 0x0178
-+#define mmRBBM_CMDFIFO_STAT 0x017C
-+/* Block RBBM End: */
-+
-+/* Block CG Start: */
-+#define mmCLK_PIN_CNTL 0x0080
-+#define mmPLL_REF_FB_DIV 0x0084
-+#define mmPLL_CNTL 0x0088
-+#define mmSCLK_CNTL 0x008C
-+#define mmPCLK_CNTL 0x0090
-+#define mmCLK_TEST_CNTL 0x0094
-+#define mmPWRMGT_CNTL 0x0098
-+#define mmPWRMGT_STATUS 0x009C
-+/* Block CG End: */
-+
-+
-+/* data structure definitions */
-+
-+typedef struct _chip_id_t {
-+ unsigned long vendor_id : 16;
-+ unsigned long device_id : 16;
-+ } chip_id_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ chip_id_t f;
-+} chip_id_u;
-+
-+typedef struct _revision_id_t {
-+ unsigned long minor_rev_id : 4;
-+ unsigned long major_rev_id : 4;
-+ unsigned long : 24;
-+ } revision_id_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ revision_id_t f;
-+} revision_id_u;
-+
-+typedef struct _wrap_buf_a_t {
-+ unsigned long offset_addr_a : 24;
-+ unsigned long block_size_a : 3;
-+ unsigned long : 5;
-+ } wrap_buf_a_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ wrap_buf_a_t f;
-+} wrap_buf_a_u;
-+
-+typedef struct _wrap_buf_b_t {
-+ unsigned long offset_addr_b : 24;
-+ unsigned long block_size_b : 3;
-+ unsigned long : 5;
-+ } wrap_buf_b_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ wrap_buf_b_t f;
-+} wrap_buf_b_u;
-+
-+typedef struct _wrap_top_dir_t {
-+ unsigned long top_addr : 23;
-+ unsigned long : 9;
-+ } wrap_top_dir_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ wrap_top_dir_t f;
-+} wrap_top_dir_u;
-+
-+typedef struct _wrap_start_dir_t {
-+ unsigned long start_addr : 23;
-+ unsigned long : 9;
-+ } wrap_start_dir_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ wrap_start_dir_t f;
-+} wrap_start_dir_u;
-+
-+typedef struct _cif_cntl_t {
-+ unsigned long swap_reg : 2;
-+ unsigned long swap_fbuf_1 : 2;
-+ unsigned long swap_fbuf_2 : 2;
-+ unsigned long swap_fbuf_3 : 2;
-+ unsigned long pmi_int_disable : 1;
-+ unsigned long pmi_schmen_disable : 1;
-+ unsigned long intb_oe : 1;
-+ unsigned long en_wait_to_compensate_dq_prop_dly : 1;
-+ unsigned long compensate_wait_rd_size : 2;
-+ unsigned long wait_asserted_timeout_val : 2;
-+ unsigned long wait_masked_val : 2;
-+ unsigned long en_wait_timeout : 1;
-+ unsigned long en_one_clk_setup_before_wait : 1;
-+ unsigned long interrupt_active_high : 1;
-+ unsigned long en_overwrite_straps : 1;
-+ unsigned long strap_wait_active_hi : 1;
-+ unsigned long lat_busy_count : 2;
-+ unsigned long lat_rd_pm4_sclk_busy : 1;
-+ unsigned long dis_system_bits : 1;
-+ unsigned long dis_mr : 1;
-+ unsigned long cif_spare_1 : 4;
-+ } cif_cntl_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ cif_cntl_t f;
-+} cif_cntl_u;
-+
-+typedef struct _cfgreg_base_t {
-+ unsigned long cfgreg_base : 24;
-+ unsigned long : 8;
-+ } cfgreg_base_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ cfgreg_base_t f;
-+} cfgreg_base_u;
-+
-+typedef struct _cif_io_t {
-+ unsigned long dq_srp : 1;
-+ unsigned long dq_srn : 1;
-+ unsigned long dq_sp : 4;
-+ unsigned long dq_sn : 4;
-+ unsigned long waitb_srp : 1;
-+ unsigned long waitb_srn : 1;
-+ unsigned long waitb_sp : 4;
-+ unsigned long waitb_sn : 4;
-+ unsigned long intb_srp : 1;
-+ unsigned long intb_srn : 1;
-+ unsigned long intb_sp : 4;
-+ unsigned long intb_sn : 4;
-+ unsigned long : 2;
-+ } cif_io_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ cif_io_t f;
-+} cif_io_u;
-+
-+typedef struct _cif_read_dbg_t {
-+ unsigned long unpacker_pre_fetch_trig_gen : 2;
-+ unsigned long dly_second_rd_fetch_trig : 1;
-+ unsigned long rst_rd_burst_id : 1;
-+ unsigned long dis_rd_burst_id : 1;
-+ unsigned long en_block_rd_when_packer_is_not_emp : 1;
-+ unsigned long dis_pre_fetch_cntl_sm : 1;
-+ unsigned long rbbm_chrncy_dis : 1;
-+ unsigned long rbbm_rd_after_wr_lat : 2;
-+ unsigned long dis_be_during_rd : 1;
-+ unsigned long one_clk_invalidate_pulse : 1;
-+ unsigned long dis_chnl_priority : 1;
-+ unsigned long rst_read_path_a_pls : 1;
-+ unsigned long rst_read_path_b_pls : 1;
-+ unsigned long dis_reg_rd_fetch_trig : 1;
-+ unsigned long dis_rd_fetch_trig_from_ind_addr : 1;
-+ unsigned long dis_rd_same_byte_to_trig_fetch : 1;
-+ unsigned long dis_dir_wrap : 1;
-+ unsigned long dis_ring_buf_to_force_dec : 1;
-+ unsigned long dis_addr_comp_in_16bit : 1;
-+ unsigned long clr_w : 1;
-+ unsigned long err_rd_tag_is_3 : 1;
-+ unsigned long err_load_when_ful_a : 1;
-+ unsigned long err_load_when_ful_b : 1;
-+ unsigned long : 7;
-+ } cif_read_dbg_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ cif_read_dbg_t f;
-+} cif_read_dbg_u;
-+
-+typedef struct _cif_write_dbg_t {
-+ unsigned long packer_timeout_count : 2;
-+ unsigned long en_upper_load_cond : 1;
-+ unsigned long en_chnl_change_cond : 1;
-+ unsigned long dis_addr_comp_cond : 1;
-+ unsigned long dis_load_same_byte_addr_cond : 1;
-+ unsigned long dis_timeout_cond : 1;
-+ unsigned long dis_timeout_during_rbbm : 1;
-+ unsigned long dis_packer_ful_during_rbbm_timeout : 1;
-+ unsigned long en_dword_split_to_rbbm : 1;
-+ unsigned long en_dummy_val : 1;
-+ unsigned long dummy_val_sel : 1;
-+ unsigned long mask_pm4_wrptr_dec : 1;
-+ unsigned long dis_mc_clean_cond : 1;
-+ unsigned long err_two_reqi_during_ful : 1;
-+ unsigned long err_reqi_during_idle_clk : 1;
-+ unsigned long err_global : 1;
-+ unsigned long en_wr_buf_dbg_load : 1;
-+ unsigned long en_wr_buf_dbg_path : 1;
-+ unsigned long sel_wr_buf_byte : 3;
-+ unsigned long dis_rd_flush_wr : 1;
-+ unsigned long dis_packer_ful_cond : 1;
-+ unsigned long dis_invalidate_by_ops_chnl : 1;
-+ unsigned long en_halt_when_reqi_err : 1;
-+ unsigned long cif_spare_2 : 5;
-+ unsigned long : 1;
-+ } cif_write_dbg_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ cif_write_dbg_t f;
-+} cif_write_dbg_u;
-+
-+typedef struct _ind_addr_a_0_t {
-+ unsigned char ind_addr_a_0 : 8;
-+ } ind_addr_a_0_t;
-+
-+typedef union {
-+ unsigned char val : 8;
-+ ind_addr_a_0_t f;
-+} ind_addr_a_0_u;
-+
-+typedef struct _ind_addr_a_1_t {
-+ unsigned char ind_addr_a_1 : 8;
-+ } ind_addr_a_1_t;
-+
-+typedef union {
-+ unsigned char val : 8;
-+ ind_addr_a_1_t f;
-+} ind_addr_a_1_u;
-+
-+typedef struct _ind_addr_a_2_t {
-+ unsigned char ind_addr_a_2 : 8;
-+ } ind_addr_a_2_t;
-+
-+typedef union {
-+ unsigned char val : 8;
-+ ind_addr_a_2_t f;
-+} ind_addr_a_2_u;
-+
-+typedef struct _ind_data_a_t {
-+ unsigned char ind_data_a : 8;
-+ } ind_data_a_t;
-+
-+typedef union {
-+ unsigned char val : 8;
-+ ind_data_a_t f;
-+} ind_data_a_u;
-+
-+typedef struct _reg_base_t {
-+ unsigned char reg_base : 8;
-+ } reg_base_t;
-+
-+typedef union {
-+ unsigned char val : 8;
-+ reg_base_t f;
-+} reg_base_u;
-+
-+typedef struct _intf_cntl_t {
-+ unsigned char ad_inc_a : 1;
-+ unsigned char ring_buf_a : 1;
-+ unsigned char rd_fetch_trigger_a : 1;
-+ unsigned char rd_data_rdy_a : 1;
-+ unsigned char ad_inc_b : 1;
-+ unsigned char ring_buf_b : 1;
-+ unsigned char rd_fetch_trigger_b : 1;
-+ unsigned char rd_data_rdy_b : 1;
-+ } intf_cntl_t;
-+
-+typedef union {
-+ unsigned char val : 8;
-+ intf_cntl_t f;
-+} intf_cntl_u;
-+
-+typedef struct _status_t {
-+ unsigned char wr_fifo_available_space : 2;
-+ unsigned char fbuf_wr_pipe_emp : 1;
-+ unsigned char soft_reset : 1;
-+ unsigned char system_pwm_mode : 2;
-+ unsigned char mem_access_dis : 1;
-+ unsigned char en_pre_fetch : 1;
-+ } status_t;
-+
-+typedef union {
-+ unsigned char val : 8;
-+ status_t f;
-+} status_u;
-+
-+typedef struct _cpu_defaults_t {
-+ unsigned char unpack_rd_data : 1;
-+ unsigned char access_ind_addr_a : 1;
-+ unsigned char access_ind_addr_b : 1;
-+ unsigned char access_scratch_reg : 1;
-+ unsigned char pack_wr_data : 1;
-+ unsigned char transition_size : 1;
-+ unsigned char en_read_buf_mode : 1;
-+ unsigned char rd_fetch_scratch : 1;
-+ } cpu_defaults_t;
-+
-+typedef union {
-+ unsigned char val : 8;
-+ cpu_defaults_t f;
-+} cpu_defaults_u;
-+
-+typedef struct _ind_addr_b_0_t {
-+ unsigned char ind_addr_b_0 : 8;
-+ } ind_addr_b_0_t;
-+
-+typedef union {
-+ unsigned char val : 8;
-+ ind_addr_b_0_t f;
-+} ind_addr_b_0_u;
-+
-+typedef struct _ind_addr_b_1_t {
-+ unsigned char ind_addr_b_1 : 8;
-+ } ind_addr_b_1_t;
-+
-+typedef union {
-+ unsigned char val : 8;
-+ ind_addr_b_1_t f;
-+} ind_addr_b_1_u;
-+
-+typedef struct _ind_addr_b_2_t {
-+ unsigned char ind_addr_b_2 : 8;
-+ } ind_addr_b_2_t;
-+
-+typedef union {
-+ unsigned char val : 8;
-+ ind_addr_b_2_t f;
-+} ind_addr_b_2_u;
-+
-+typedef struct _ind_data_b_t {
-+ unsigned char ind_data_b : 8;
-+ } ind_data_b_t;
-+
-+typedef union {
-+ unsigned char val : 8;
-+ ind_data_b_t f;
-+} ind_data_b_u;
-+
-+typedef struct _pm4_rptr_t {
-+ unsigned char pm4_rptr : 8;
-+ } pm4_rptr_t;
-+
-+typedef union {
-+ unsigned char val : 8;
-+ pm4_rptr_t f;
-+} pm4_rptr_u;
-+
-+typedef struct _scratch_t {
-+ unsigned char scratch : 8;
-+ } scratch_t;
-+
-+typedef union {
-+ unsigned char val : 8;
-+ scratch_t f;
-+} scratch_u;
-+
-+typedef struct _pm4_wrptr_0_t {
-+ unsigned char pm4_wrptr_0 : 8;
-+ } pm4_wrptr_0_t;
-+
-+typedef union {
-+ unsigned char val : 8;
-+ pm4_wrptr_0_t f;
-+} pm4_wrptr_0_u;
-+
-+typedef struct _pm4_wrptr_1_t {
-+ unsigned char pm4_wrptr_1 : 6;
-+ unsigned char rd_fetch_pm4_rptr : 1;
-+ unsigned char wrptr_atomic_update_w : 1;
-+ } pm4_wrptr_1_t;
-+
-+typedef union {
-+ unsigned char val : 8;
-+ pm4_wrptr_1_t f;
-+} pm4_wrptr_1_u;
-+
-+typedef struct _cp_rb_cntl_t {
-+ unsigned long rb_bufsz : 6;
-+ unsigned long : 2;
-+ unsigned long rb_blksz : 6;
-+ unsigned long : 2;
-+ unsigned long buf_swap : 2;
-+ unsigned long max_fetch : 2;
-+ unsigned long : 7;
-+ unsigned long rb_no_update : 1;
-+ unsigned long : 3;
-+ unsigned long rb_rptr_wr_ena : 1;
-+ } cp_rb_cntl_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ cp_rb_cntl_t f;
-+} cp_rb_cntl_u;
-+
-+typedef struct _cp_rb_base_t {
-+ unsigned long : 2;
-+ unsigned long rb_base : 22;
-+ unsigned long : 8;
-+ } cp_rb_base_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ cp_rb_base_t f;
-+} cp_rb_base_u;
-+
-+typedef struct _cp_rb_rptr_addr_t {
-+ unsigned long rb_rptr_swap : 2;
-+ unsigned long rb_rptr_addr : 22;
-+ unsigned long : 8;
-+ } cp_rb_rptr_addr_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ cp_rb_rptr_addr_t f;
-+} cp_rb_rptr_addr_u;
-+
-+typedef struct _cp_rb_rptr_t {
-+ unsigned long rb_rptr : 23;
-+ unsigned long : 9;
-+ } cp_rb_rptr_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ cp_rb_rptr_t f;
-+} cp_rb_rptr_u;
-+
-+typedef struct _cp_rb_rptr_wr_t {
-+ unsigned long rb_rptr_wr : 23;
-+ unsigned long : 9;
-+ } cp_rb_rptr_wr_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ cp_rb_rptr_wr_t f;
-+} cp_rb_rptr_wr_u;
-+
-+typedef struct _cp_rb_wptr_t {
-+ unsigned long rb_wptr : 23;
-+ unsigned long : 9;
-+ } cp_rb_wptr_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ cp_rb_wptr_t f;
-+} cp_rb_wptr_u;
-+
-+typedef struct _cp_ib_base_t {
-+ unsigned long : 2;
-+ unsigned long ib_base : 22;
-+ unsigned long : 8;
-+ } cp_ib_base_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ cp_ib_base_t f;
-+} cp_ib_base_u;
-+
-+typedef struct _cp_ib_bufsz_t {
-+ unsigned long ib_bufsz : 23;
-+ unsigned long : 9;
-+ } cp_ib_bufsz_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ cp_ib_bufsz_t f;
-+} cp_ib_bufsz_u;
-+
-+typedef struct _cp_csq_cntl_t {
-+ unsigned long csq_cnt_primary : 8;
-+ unsigned long csq_cnt_indirect : 8;
-+ unsigned long : 12;
-+ unsigned long csq_mode : 4;
-+ } cp_csq_cntl_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ cp_csq_cntl_t f;
-+} cp_csq_cntl_u;
-+
-+typedef struct _cp_csq_aper_primary_t {
-+ unsigned long cp_csq_aper_primary : 32;
-+ } cp_csq_aper_primary_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ cp_csq_aper_primary_t f;
-+} cp_csq_aper_primary_u;
-+
-+typedef struct _cp_csq_aper_indirect_t {
-+ unsigned long cp_csq_aper_indirect : 32;
-+ } cp_csq_aper_indirect_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ cp_csq_aper_indirect_t f;
-+} cp_csq_aper_indirect_u;
-+
-+typedef struct _cp_me_cntl_t {
-+ unsigned long me_stat : 16;
-+ unsigned long me_statmux : 5;
-+ unsigned long : 8;
-+ unsigned long me_busy : 1;
-+ unsigned long me_mode : 1;
-+ unsigned long me_step : 1;
-+ } cp_me_cntl_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ cp_me_cntl_t f;
-+} cp_me_cntl_u;
-+
-+typedef struct _cp_me_ram_addr_t {
-+ unsigned long me_ram_addr : 8;
-+ unsigned long : 24;
-+ } cp_me_ram_addr_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ cp_me_ram_addr_t f;
-+} cp_me_ram_addr_u;
-+
-+typedef struct _cp_me_ram_raddr_t {
-+ unsigned long me_ram_raddr : 8;
-+ unsigned long : 24;
-+ } cp_me_ram_raddr_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ cp_me_ram_raddr_t f;
-+} cp_me_ram_raddr_u;
-+
-+typedef struct _cp_me_ram_datah_t {
-+ unsigned long me_ram_datah : 6;
-+ unsigned long : 26;
-+ } cp_me_ram_datah_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ cp_me_ram_datah_t f;
-+} cp_me_ram_datah_u;
-+
-+typedef struct _cp_me_ram_datal_t {
-+ unsigned long me_ram_datal : 32;
-+ } cp_me_ram_datal_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ cp_me_ram_datal_t f;
-+} cp_me_ram_datal_u;
-+
-+typedef struct _cp_debug_t {
-+ unsigned long cp_debug : 32;
-+ } cp_debug_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ cp_debug_t f;
-+} cp_debug_u;
-+
-+typedef struct _scratch_reg0_t {
-+ unsigned long scratch_reg0 : 32;
-+ } scratch_reg0_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ scratch_reg0_t f;
-+} scratch_reg0_u;
-+
-+typedef struct _scratch_reg1_t {
-+ unsigned long scratch_reg1 : 32;
-+ } scratch_reg1_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ scratch_reg1_t f;
-+} scratch_reg1_u;
-+
-+typedef struct _scratch_reg2_t {
-+ unsigned long scratch_reg2 : 32;
-+ } scratch_reg2_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ scratch_reg2_t f;
-+} scratch_reg2_u;
-+
-+typedef struct _scratch_reg3_t {
-+ unsigned long scratch_reg3 : 32;
-+ } scratch_reg3_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ scratch_reg3_t f;
-+} scratch_reg3_u;
-+
-+typedef struct _scratch_reg4_t {
-+ unsigned long scratch_reg4 : 32;
-+ } scratch_reg4_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ scratch_reg4_t f;
-+} scratch_reg4_u;
-+
-+typedef struct _scratch_reg5_t {
-+ unsigned long scratch_reg5 : 32;
-+ } scratch_reg5_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ scratch_reg5_t f;
-+} scratch_reg5_u;
-+
-+typedef struct _scratch_umsk_t {
-+ unsigned long scratch_umsk : 6;
-+ unsigned long : 10;
-+ unsigned long scratch_swap : 2;
-+ unsigned long : 14;
-+ } scratch_umsk_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ scratch_umsk_t f;
-+} scratch_umsk_u;
-+
-+typedef struct _scratch_addr_t {
-+ unsigned long : 5;
-+ unsigned long scratch_addr : 27;
-+ } scratch_addr_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ scratch_addr_t f;
-+} scratch_addr_u;
-+
-+typedef struct _cp_csq_addr_t {
-+ unsigned long : 2;
-+ unsigned long csq_addr : 8;
-+ unsigned long : 22;
-+ } cp_csq_addr_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ cp_csq_addr_t f;
-+} cp_csq_addr_u;
-+
-+typedef struct _cp_csq_data_t {
-+ unsigned long csq_data : 32;
-+ } cp_csq_data_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ cp_csq_data_t f;
-+} cp_csq_data_u;
-+
-+typedef struct _cp_csq_stat_t {
-+ unsigned long csq_rptr_primary : 8;
-+ unsigned long csq_wptr_primary : 8;
-+ unsigned long csq_rptr_indirect : 8;
-+ unsigned long csq_wptr_indirect : 8;
-+ } cp_csq_stat_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ cp_csq_stat_t f;
-+} cp_csq_stat_u;
-+
-+typedef struct _cp_stat_t {
-+ unsigned long mru_busy : 1;
-+ unsigned long mwu_busy : 1;
-+ unsigned long rsiu_busy : 1;
-+ unsigned long rciu_busy : 1;
-+ unsigned long : 5;
-+ unsigned long csf_primary_busy : 1;
-+ unsigned long csf_indirect_busy : 1;
-+ unsigned long csq_primary_busy : 1;
-+ unsigned long csq_indirect_busy : 1;
-+ unsigned long csi_busy : 1;
-+ unsigned long : 14;
-+ unsigned long guidma_busy : 1;
-+ unsigned long viddma_busy : 1;
-+ unsigned long cmdstrm_busy : 1;
-+ unsigned long cp_busy : 1;
-+ } cp_stat_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ cp_stat_t f;
-+} cp_stat_u;
-+
-+typedef struct _gen_int_cntl_t {
-+ unsigned long crtc_vblank_mask : 1;
-+ unsigned long crtc_vline_mask : 1;
-+ unsigned long crtc_hwint1_mask : 1;
-+ unsigned long crtc_hwint2_mask : 1;
-+ unsigned long : 15;
-+ unsigned long gui_idle_mask : 1;
-+ unsigned long : 8;
-+ unsigned long pm4_idle_int_mask : 1;
-+ unsigned long dvi_i2c_int_mask : 1;
-+ unsigned long : 2;
-+ } gen_int_cntl_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ gen_int_cntl_t f;
-+} gen_int_cntl_u;
-+
-+typedef struct _gen_int_status_rd_t {
-+ unsigned long crtc_vblank_stat : 1;
-+ unsigned long crtc_vline_stat : 1;
-+ unsigned long crtc_hwint1_stat : 1;
-+ unsigned long crtc_hwint2_stat : 1;
-+ unsigned long : 15;
-+ unsigned long gui_idle_stat : 1;
-+ unsigned long : 8;
-+ unsigned long pm4_idle_int_stat : 1;
-+ unsigned long dvi_i2c_int_stat : 1;
-+ unsigned long : 2;
-+ } gen_int_status_rd_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ gen_int_status_rd_t f;
-+} gen_int_status_rd_u;
-+
-+typedef struct _gen_int_status_wr_t {
-+ unsigned long crtc_vblank_stat_ak : 1;
-+ unsigned long crtc_vline_stat_ak : 1;
-+ unsigned long crtc_hwint1_stat_ak : 1;
-+ unsigned long crtc_hwint2_stat_ak : 1;
-+ unsigned long : 15;
-+ unsigned long gui_idle_stat_ak : 1;
-+ unsigned long : 8;
-+ unsigned long pm4_idle_int_ak : 1;
-+ unsigned long dvi_i2c_int_ak : 1;
-+ unsigned long : 2;
-+ } gen_int_status_wr_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ gen_int_status_wr_t f;
-+} gen_int_status_wr_u;
-+
-+typedef struct _lcd_format_t {
-+ unsigned long lcd_type : 4;
-+ unsigned long color_to_mono : 1;
-+ unsigned long data_inv : 1;
-+ unsigned long stn_fm : 2;
-+ unsigned long tft_fm : 2;
-+ unsigned long scan_lr_en : 1;
-+ unsigned long scan_ud_en : 1;
-+ unsigned long pol_inv : 1;
-+ unsigned long rst_fm : 1;
-+ unsigned long yuv_to_rgb : 1;
-+ unsigned long hr_tft : 1;
-+ unsigned long ulc_panel : 1;
-+ unsigned long : 15;
-+ } lcd_format_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ lcd_format_t f;
-+} lcd_format_u;
-+
-+typedef struct _graphic_ctrl_t {
-+ unsigned long color_depth : 3;
-+ unsigned long portrait_mode : 2;
-+ unsigned long low_power_on : 1;
-+ unsigned long req_freq : 4;
-+ unsigned long en_crtc : 1;
-+ unsigned long en_graphic_req : 1;
-+ unsigned long en_graphic_crtc : 1;
-+ unsigned long total_req_graphic : 9;
-+ unsigned long lcd_pclk_on : 1;
-+ unsigned long lcd_sclk_on : 1;
-+ unsigned long pclk_running : 1;
-+ unsigned long sclk_running : 1;
-+ unsigned long : 6;
-+ } graphic_ctrl_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ graphic_ctrl_t f;
-+} graphic_ctrl_u;
-+
-+typedef struct _graphic_offset_t {
-+ unsigned long graphic_offset : 24;
-+ unsigned long : 8;
-+ } graphic_offset_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ graphic_offset_t f;
-+} graphic_offset_u;
-+
-+typedef struct _graphic_pitch_t {
-+ unsigned long graphic_pitch : 11;
-+ unsigned long : 21;
-+ } graphic_pitch_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ graphic_pitch_t f;
-+} graphic_pitch_u;
-+
-+typedef struct _crtc_total_t {
-+ unsigned long crtc_h_total : 10;
-+ unsigned long : 6;
-+ unsigned long crtc_v_total : 10;
-+ unsigned long : 6;
-+ } crtc_total_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ crtc_total_t f;
-+} crtc_total_u;
-+
-+typedef struct _active_h_disp_t {
-+ unsigned long active_h_start : 10;
-+ unsigned long : 6;
-+ unsigned long active_h_end : 10;
-+ unsigned long : 6;
-+ } active_h_disp_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ active_h_disp_t f;
-+} active_h_disp_u;
-+
-+typedef struct _active_v_disp_t {
-+ unsigned long active_v_start : 10;
-+ unsigned long : 6;
-+ unsigned long active_v_end : 10;
-+ unsigned long : 6;
-+ } active_v_disp_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ active_v_disp_t f;
-+} active_v_disp_u;
-+
-+typedef struct _graphic_h_disp_t {
-+ unsigned long graphic_h_start : 10;
-+ unsigned long : 6;
-+ unsigned long graphic_h_end : 10;
-+ unsigned long : 6;
-+ } graphic_h_disp_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ graphic_h_disp_t f;
-+} graphic_h_disp_u;
-+
-+typedef struct _graphic_v_disp_t {
-+ unsigned long graphic_v_start : 10;
-+ unsigned long : 6;
-+ unsigned long graphic_v_end : 10;
-+ unsigned long : 6;
-+ } graphic_v_disp_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ graphic_v_disp_t f;
-+} graphic_v_disp_u;
-+
-+typedef struct _video_ctrl_t {
-+ unsigned long video_mode : 1;
-+ unsigned long keyer_en : 1;
-+ unsigned long en_video_req : 1;
-+ unsigned long en_graphic_req_video : 1;
-+ unsigned long en_video_crtc : 1;
-+ unsigned long video_hor_exp : 2;
-+ unsigned long video_ver_exp : 2;
-+ unsigned long uv_combine : 1;
-+ unsigned long total_req_video : 9;
-+ unsigned long video_ch_sel : 1;
-+ unsigned long video_portrait : 2;
-+ unsigned long yuv2rgb_en : 1;
-+ unsigned long yuv2rgb_option : 1;
-+ unsigned long video_inv_hor : 1;
-+ unsigned long video_inv_ver : 1;
-+ unsigned long gamma_sel : 2;
-+ unsigned long dis_limit : 1;
-+ unsigned long en_uv_hblend : 1;
-+ unsigned long rgb_gamma_sel : 2;
-+ } video_ctrl_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ video_ctrl_t f;
-+} video_ctrl_u;
-+
-+typedef struct _graphic_key_t {
-+ unsigned long keyer_color : 16;
-+ unsigned long keyer_mask : 16;
-+ } graphic_key_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ graphic_key_t f;
-+} graphic_key_u;
-+
-+typedef struct _video_y_offset_t {
-+ unsigned long y_offset : 24;
-+ unsigned long : 8;
-+ } video_y_offset_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ video_y_offset_t f;
-+} video_y_offset_u;
-+
-+typedef struct _video_y_pitch_t {
-+ unsigned long y_pitch : 11;
-+ unsigned long : 21;
-+ } video_y_pitch_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ video_y_pitch_t f;
-+} video_y_pitch_u;
-+
-+typedef struct _video_u_offset_t {
-+ unsigned long u_offset : 24;
-+ unsigned long : 8;
-+ } video_u_offset_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ video_u_offset_t f;
-+} video_u_offset_u;
-+
-+typedef struct _video_u_pitch_t {
-+ unsigned long u_pitch : 11;
-+ unsigned long : 21;
-+ } video_u_pitch_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ video_u_pitch_t f;
-+} video_u_pitch_u;
-+
-+typedef struct _video_v_offset_t {
-+ unsigned long v_offset : 24;
-+ unsigned long : 8;
-+ } video_v_offset_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ video_v_offset_t f;
-+} video_v_offset_u;
-+
-+typedef struct _video_v_pitch_t {
-+ unsigned long v_pitch : 11;
-+ unsigned long : 21;
-+ } video_v_pitch_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ video_v_pitch_t f;
-+} video_v_pitch_u;
-+
-+typedef struct _video_h_pos_t {
-+ unsigned long video_h_start : 10;
-+ unsigned long : 6;
-+ unsigned long video_h_end : 10;
-+ unsigned long : 6;
-+ } video_h_pos_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ video_h_pos_t f;
-+} video_h_pos_u;
-+
-+typedef struct _video_v_pos_t {
-+ unsigned long video_v_start : 10;
-+ unsigned long : 6;
-+ unsigned long video_v_end : 10;
-+ unsigned long : 6;
-+ } video_v_pos_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ video_v_pos_t f;
-+} video_v_pos_u;
-+
-+typedef struct _brightness_cntl_t {
-+ unsigned long brightness : 7;
-+ unsigned long : 25;
-+ } brightness_cntl_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ brightness_cntl_t f;
-+} brightness_cntl_u;
-+
-+typedef struct _cursor1_offset_t {
-+ unsigned long cur1_offset : 24;
-+ unsigned long cur1_x_offset : 4;
-+ unsigned long cur1_y_offset : 4;
-+ } cursor1_offset_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ cursor1_offset_t f;
-+} cursor1_offset_u;
-+
-+typedef struct _cursor1_h_pos_t {
-+ unsigned long cur1_h_start : 10;
-+ unsigned long : 6;
-+ unsigned long cur1_h_end : 10;
-+ unsigned long : 5;
-+ unsigned long cur1_en : 1;
-+ } cursor1_h_pos_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ cursor1_h_pos_t f;
-+} cursor1_h_pos_u;
-+
-+typedef struct _cursor1_v_pos_t {
-+ unsigned long cur1_v_start : 10;
-+ unsigned long : 6;
-+ unsigned long cur1_v_end : 10;
-+ unsigned long : 6;
-+ } cursor1_v_pos_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ cursor1_v_pos_t f;
-+} cursor1_v_pos_u;
-+
-+typedef struct _cursor1_color0_t {
-+ unsigned long cur1_color0_r : 8;
-+ unsigned long cur1_color0_g : 8;
-+ unsigned long cur1_color0_b : 8;
-+ unsigned long : 8;
-+ } cursor1_color0_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ cursor1_color0_t f;
-+} cursor1_color0_u;
-+
-+typedef struct _cursor1_color1_t {
-+ unsigned long cur1_color1_r : 8;
-+ unsigned long cur1_color1_g : 8;
-+ unsigned long cur1_color1_b : 8;
-+ unsigned long : 8;
-+ } cursor1_color1_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ cursor1_color1_t f;
-+} cursor1_color1_u;
-+
-+typedef struct _cursor2_offset_t {
-+ unsigned long cur2_offset : 24;
-+ unsigned long cur2_x_offset : 4;
-+ unsigned long cur2_y_offset : 4;
-+ } cursor2_offset_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ cursor2_offset_t f;
-+} cursor2_offset_u;
-+
-+typedef struct _cursor2_h_pos_t {
-+ unsigned long cur2_h_start : 10;
-+ unsigned long : 6;
-+ unsigned long cur2_h_end : 10;
-+ unsigned long : 5;
-+ unsigned long cur2_en : 1;
-+ } cursor2_h_pos_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ cursor2_h_pos_t f;
-+} cursor2_h_pos_u;
-+
-+typedef struct _cursor2_v_pos_t {
-+ unsigned long cur2_v_start : 10;
-+ unsigned long : 6;
-+ unsigned long cur2_v_end : 10;
-+ unsigned long : 6;
-+ } cursor2_v_pos_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ cursor2_v_pos_t f;
-+} cursor2_v_pos_u;
-+
-+typedef struct _cursor2_color0_t {
-+ unsigned long cur2_color0_r : 8;
-+ unsigned long cur2_color0_g : 8;
-+ unsigned long cur2_color0_b : 8;
-+ unsigned long : 8;
-+ } cursor2_color0_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ cursor2_color0_t f;
-+} cursor2_color0_u;
-+
-+typedef struct _cursor2_color1_t {
-+ unsigned long cur2_color1_r : 8;
-+ unsigned long cur2_color1_g : 8;
-+ unsigned long cur2_color1_b : 8;
-+ unsigned long : 8;
-+ } cursor2_color1_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ cursor2_color1_t f;
-+} cursor2_color1_u;
-+
-+typedef struct _disp_int_cntl_t {
-+ unsigned long vline_int_pos : 10;
-+ unsigned long : 6;
-+ unsigned long hpos_int_pos : 10;
-+ unsigned long : 4;
-+ unsigned long vblank_int_pol : 1;
-+ unsigned long frame_int_pol : 1;
-+ } disp_int_cntl_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ disp_int_cntl_t f;
-+} disp_int_cntl_u;
-+
-+typedef struct _crtc_ss_t {
-+ unsigned long ss_start : 10;
-+ unsigned long : 6;
-+ unsigned long ss_end : 10;
-+ unsigned long : 2;
-+ unsigned long ss_align : 1;
-+ unsigned long ss_pol : 1;
-+ unsigned long ss_run_mode : 1;
-+ unsigned long ss_en : 1;
-+ } crtc_ss_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ crtc_ss_t f;
-+} crtc_ss_u;
-+
-+typedef struct _crtc_ls_t {
-+ unsigned long ls_start : 10;
-+ unsigned long : 6;
-+ unsigned long ls_end : 10;
-+ unsigned long : 2;
-+ unsigned long ls_align : 1;
-+ unsigned long ls_pol : 1;
-+ unsigned long ls_run_mode : 1;
-+ unsigned long ls_en : 1;
-+ } crtc_ls_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ crtc_ls_t f;
-+} crtc_ls_u;
-+
-+typedef struct _crtc_rev_t {
-+ unsigned long rev_pos : 10;
-+ unsigned long : 6;
-+ unsigned long rev_align : 1;
-+ unsigned long rev_freq_nref : 5;
-+ unsigned long rev_en : 1;
-+ unsigned long : 9;
-+ } crtc_rev_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ crtc_rev_t f;
-+} crtc_rev_u;
-+
-+typedef struct _crtc_dclk_t {
-+ unsigned long dclk_start : 10;
-+ unsigned long : 6;
-+ unsigned long dclk_end : 10;
-+ unsigned long : 1;
-+ unsigned long dclk_run_mode : 2;
-+ unsigned long dclk_pol : 1;
-+ unsigned long dclk_align : 1;
-+ unsigned long dclk_en : 1;
-+ } crtc_dclk_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ crtc_dclk_t f;
-+} crtc_dclk_u;
-+
-+typedef struct _crtc_gs_t {
-+ unsigned long gs_start : 10;
-+ unsigned long : 6;
-+ unsigned long gs_end : 10;
-+ unsigned long : 3;
-+ unsigned long gs_align : 1;
-+ unsigned long gs_pol : 1;
-+ unsigned long gs_en : 1;
-+ } crtc_gs_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ crtc_gs_t f;
-+} crtc_gs_u;
-+
-+typedef struct _crtc_vpos_gs_t {
-+ unsigned long gs_vpos_start : 10;
-+ unsigned long : 6;
-+ unsigned long gs_vpos_end : 10;
-+ unsigned long : 6;
-+ } crtc_vpos_gs_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ crtc_vpos_gs_t f;
-+} crtc_vpos_gs_u;
-+
-+typedef struct _crtc_gclk_t {
-+ unsigned long gclk_start : 10;
-+ unsigned long : 6;
-+ unsigned long gclk_end : 10;
-+ unsigned long : 3;
-+ unsigned long gclk_align : 1;
-+ unsigned long gclk_pol : 1;
-+ unsigned long gclk_en : 1;
-+ } crtc_gclk_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ crtc_gclk_t f;
-+} crtc_gclk_u;
-+
-+typedef struct _crtc_goe_t {
-+ unsigned long goe_start : 10;
-+ unsigned long : 6;
-+ unsigned long goe_end : 10;
-+ unsigned long : 3;
-+ unsigned long goe_align : 1;
-+ unsigned long goe_pol : 1;
-+ unsigned long goe_en : 1;
-+ } crtc_goe_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ crtc_goe_t f;
-+} crtc_goe_u;
-+
-+typedef struct _crtc_frame_t {
-+ unsigned long crtc_fr_start : 10;
-+ unsigned long : 6;
-+ unsigned long crtc_fr_end : 10;
-+ unsigned long : 4;
-+ unsigned long crtc_frame_en : 1;
-+ unsigned long crtc_frame_align : 1;
-+ } crtc_frame_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ crtc_frame_t f;
-+} crtc_frame_u;
-+
-+typedef struct _crtc_frame_vpos_t {
-+ unsigned long crtc_fr_vpos : 10;
-+ unsigned long : 22;
-+ } crtc_frame_vpos_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ crtc_frame_vpos_t f;
-+} crtc_frame_vpos_u;
-+
-+typedef struct _gpio_data_t {
-+ unsigned long gio_out : 16;
-+ unsigned long gio_in : 16;
-+ } gpio_data_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ gpio_data_t f;
-+} gpio_data_u;
-+
-+typedef struct _gpio_cntl1_t {
-+ unsigned long gio_pd : 16;
-+ unsigned long gio_schmen : 16;
-+ } gpio_cntl1_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ gpio_cntl1_t f;
-+} gpio_cntl1_u;
-+
-+typedef struct _gpio_cntl2_t {
-+ unsigned long gio_oe : 16;
-+ unsigned long gio_srp : 1;
-+ unsigned long gio_srn : 1;
-+ unsigned long gio_sp : 4;
-+ unsigned long gio_sn : 4;
-+ unsigned long : 6;
-+ } gpio_cntl2_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ gpio_cntl2_t f;
-+} gpio_cntl2_u;
-+
-+typedef struct _lcdd_cntl1_t {
-+ unsigned long lcdd_pd : 18;
-+ unsigned long lcdd_srp : 1;
-+ unsigned long lcdd_srn : 1;
-+ unsigned long lcdd_sp : 4;
-+ unsigned long lcdd_sn : 4;
-+ unsigned long lcdd_align : 1;
-+ unsigned long : 3;
-+ } lcdd_cntl1_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ lcdd_cntl1_t f;
-+} lcdd_cntl1_u;
-+
-+typedef struct _lcdd_cntl2_t {
-+ unsigned long lcdd_oe : 18;
-+ unsigned long : 14;
-+ } lcdd_cntl2_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ lcdd_cntl2_t f;
-+} lcdd_cntl2_u;
-+
-+typedef struct _genlcd_cntl1_t {
-+ unsigned long dclk_oe : 1;
-+ unsigned long dclk_pd : 1;
-+ unsigned long dclk_srp : 1;
-+ unsigned long dclk_srn : 1;
-+ unsigned long dclk_sp : 4;
-+ unsigned long dclk_sn : 4;
-+ unsigned long ss_oe : 1;
-+ unsigned long ss_pd : 1;
-+ unsigned long ls_oe : 1;
-+ unsigned long ls_pd : 1;
-+ unsigned long gs_oe : 1;
-+ unsigned long gs_pd : 1;
-+ unsigned long goe_oe : 1;
-+ unsigned long goe_pd : 1;
-+ unsigned long rev_oe : 1;
-+ unsigned long rev_pd : 1;
-+ unsigned long frame_oe : 1;
-+ unsigned long frame_pd : 1;
-+ unsigned long : 8;
-+ } genlcd_cntl1_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ genlcd_cntl1_t f;
-+} genlcd_cntl1_u;
-+
-+typedef struct _genlcd_cntl2_t {
-+ unsigned long gclk_oe : 1;
-+ unsigned long gclk_pd : 1;
-+ unsigned long gclk_srp : 1;
-+ unsigned long gclk_srn : 1;
-+ unsigned long gclk_sp : 4;
-+ unsigned long gclk_sn : 4;
-+ unsigned long genlcd_srp : 1;
-+ unsigned long genlcd_srn : 1;
-+ unsigned long genlcd_sp : 4;
-+ unsigned long genlcd_sn : 4;
-+ unsigned long : 10;
-+ } genlcd_cntl2_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ genlcd_cntl2_t f;
-+} genlcd_cntl2_u;
-+
-+typedef struct _disp_debug_t {
-+ unsigned long disp_debug : 32;
-+ } disp_debug_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ disp_debug_t f;
-+} disp_debug_u;
-+
-+typedef struct _disp_db_buf_cntl_rd_t {
-+ unsigned long en_db_buf : 1;
-+ unsigned long update_db_buf_done : 1;
-+ unsigned long db_buf_cntl : 6;
-+ unsigned long : 24;
-+ } disp_db_buf_cntl_rd_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ disp_db_buf_cntl_rd_t f;
-+} disp_db_buf_cntl_rd_u;
-+
-+typedef struct _disp_db_buf_cntl_wr_t {
-+ unsigned long en_db_buf : 1;
-+ unsigned long update_db_buf : 1;
-+ unsigned long db_buf_cntl : 6;
-+ unsigned long : 24;
-+ } disp_db_buf_cntl_wr_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ disp_db_buf_cntl_wr_t f;
-+} disp_db_buf_cntl_wr_u;
-+
-+typedef struct _disp_crc_sig_t {
-+ unsigned long crc_sig_r : 6;
-+ unsigned long crc_sig_g : 6;
-+ unsigned long crc_sig_b : 6;
-+ unsigned long crc_cont_en : 1;
-+ unsigned long crc_en : 1;
-+ unsigned long crc_mask_en : 1;
-+ unsigned long crc_sig_cntl : 6;
-+ unsigned long : 5;
-+ } disp_crc_sig_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ disp_crc_sig_t f;
-+} disp_crc_sig_u;
-+
-+typedef struct _crtc_default_count_t {
-+ unsigned long crtc_hcount_def : 10;
-+ unsigned long : 6;
-+ unsigned long crtc_vcount_def : 10;
-+ unsigned long : 6;
-+ } crtc_default_count_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ crtc_default_count_t f;
-+} crtc_default_count_u;
-+
-+typedef struct _lcd_background_color_t {
-+ unsigned long lcd_bg_red : 8;
-+ unsigned long lcd_bg_green : 8;
-+ unsigned long lcd_bg_blue : 8;
-+ unsigned long : 8;
-+ } lcd_background_color_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ lcd_background_color_t f;
-+} lcd_background_color_u;
-+
-+typedef struct _crtc_ps2_t {
-+ unsigned long ps2_start : 10;
-+ unsigned long : 6;
-+ unsigned long ps2_end : 10;
-+ unsigned long : 4;
-+ unsigned long ps2_pol : 1;
-+ unsigned long ps2_en : 1;
-+ } crtc_ps2_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ crtc_ps2_t f;
-+} crtc_ps2_u;
-+
-+typedef struct _crtc_ps2_vpos_t {
-+ unsigned long ps2_vpos_start : 10;
-+ unsigned long : 6;
-+ unsigned long ps2_vpos_end : 10;
-+ unsigned long : 6;
-+ } crtc_ps2_vpos_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ crtc_ps2_vpos_t f;
-+} crtc_ps2_vpos_u;
-+
-+typedef struct _crtc_ps1_active_t {
-+ unsigned long ps1_h_start : 10;
-+ unsigned long : 6;
-+ unsigned long ps1_h_end : 10;
-+ unsigned long : 3;
-+ unsigned long ps1_pol : 1;
-+ unsigned long ps1_en : 1;
-+ unsigned long ps1_use_nactive : 1;
-+ } crtc_ps1_active_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ crtc_ps1_active_t f;
-+} crtc_ps1_active_u;
-+
-+typedef struct _crtc_ps1_nactive_t {
-+ unsigned long ps1_h_start_na : 10;
-+ unsigned long : 6;
-+ unsigned long ps1_h_end_na : 10;
-+ unsigned long : 5;
-+ unsigned long ps1_en_na : 1;
-+ } crtc_ps1_nactive_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ crtc_ps1_nactive_t f;
-+} crtc_ps1_nactive_u;
-+
-+typedef struct _crtc_gclk_ext_t {
-+ unsigned long gclk_alter_start : 10;
-+ unsigned long : 6;
-+ unsigned long gclk_alter_width : 2;
-+ unsigned long gclk_en_alter : 1;
-+ unsigned long gclk_db_width : 2;
-+ unsigned long : 11;
-+ } crtc_gclk_ext_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ crtc_gclk_ext_t f;
-+} crtc_gclk_ext_u;
-+
-+typedef struct _crtc_alw_t {
-+ unsigned long alw_hstart : 10;
-+ unsigned long : 6;
-+ unsigned long alw_hend : 10;
-+ unsigned long : 4;
-+ unsigned long alw_delay : 1;
-+ unsigned long alw_en : 1;
-+ } crtc_alw_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ crtc_alw_t f;
-+} crtc_alw_u;
-+
-+typedef struct _crtc_alw_vpos_t {
-+ unsigned long alw_vstart : 10;
-+ unsigned long : 6;
-+ unsigned long alw_vend : 10;
-+ unsigned long : 6;
-+ } crtc_alw_vpos_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ crtc_alw_vpos_t f;
-+} crtc_alw_vpos_u;
-+
-+typedef struct _crtc_psk_t {
-+ unsigned long psk_vstart : 10;
-+ unsigned long : 6;
-+ unsigned long psk_vend : 10;
-+ unsigned long : 4;
-+ unsigned long psk_pol : 1;
-+ unsigned long psk_en : 1;
-+ } crtc_psk_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ crtc_psk_t f;
-+} crtc_psk_u;
-+
-+typedef struct _crtc_psk_hpos_t {
-+ unsigned long psk_hstart : 10;
-+ unsigned long : 6;
-+ unsigned long psk_hend : 10;
-+ unsigned long : 6;
-+ } crtc_psk_hpos_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ crtc_psk_hpos_t f;
-+} crtc_psk_hpos_u;
-+
-+typedef struct _crtc_cv4_start_t {
-+ unsigned long cv4_vstart : 10;
-+ unsigned long : 20;
-+ unsigned long cv4_pol : 1;
-+ unsigned long cv4_en : 1;
-+ } crtc_cv4_start_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ crtc_cv4_start_t f;
-+} crtc_cv4_start_u;
-+
-+typedef struct _crtc_cv4_end_t {
-+ unsigned long cv4_vend1 : 10;
-+ unsigned long : 6;
-+ unsigned long cv4_vend2 : 10;
-+ unsigned long : 6;
-+ } crtc_cv4_end_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ crtc_cv4_end_t f;
-+} crtc_cv4_end_u;
-+
-+typedef struct _crtc_cv4_hpos_t {
-+ unsigned long cv4_hstart : 10;
-+ unsigned long : 6;
-+ unsigned long cv4_hend : 10;
-+ unsigned long : 6;
-+ } crtc_cv4_hpos_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ crtc_cv4_hpos_t f;
-+} crtc_cv4_hpos_u;
-+
-+typedef struct _crtc_eck_t {
-+ unsigned long eck_freq1 : 3;
-+ unsigned long eck_en : 1;
-+ unsigned long : 28;
-+ } crtc_eck_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ crtc_eck_t f;
-+} crtc_eck_u;
-+
-+typedef struct _refresh_cntl_t {
-+ unsigned long ref_frame : 3;
-+ unsigned long nref_frame : 5;
-+ unsigned long ref_cntl : 1;
-+ unsigned long stop_sm_nref : 1;
-+ unsigned long stop_req_nref : 1;
-+ unsigned long : 21;
-+ } refresh_cntl_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ refresh_cntl_t f;
-+} refresh_cntl_u;
-+
-+typedef struct _genlcd_cntl3_t {
-+ unsigned long ps1_oe : 1;
-+ unsigned long ps1_pd : 1;
-+ unsigned long ps2_oe : 1;
-+ unsigned long ps2_pd : 1;
-+ unsigned long rev2_oe : 1;
-+ unsigned long rev2_pd : 1;
-+ unsigned long awl_oe : 1;
-+ unsigned long awl_pd : 1;
-+ unsigned long dinv_oe : 1;
-+ unsigned long dinv_pd : 1;
-+ unsigned long psk_out : 1;
-+ unsigned long psd_out : 1;
-+ unsigned long eck_out : 1;
-+ unsigned long cv4_out : 1;
-+ unsigned long ps1_out : 1;
-+ unsigned long ps2_out : 1;
-+ unsigned long rev_out : 1;
-+ unsigned long rev2_out : 1;
-+ unsigned long : 14;
-+ } genlcd_cntl3_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ genlcd_cntl3_t f;
-+} genlcd_cntl3_u;
-+
-+typedef struct _gpio_data2_t {
-+ unsigned long gio2_out : 16;
-+ unsigned long gio2_in : 16;
-+ } gpio_data2_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ gpio_data2_t f;
-+} gpio_data2_u;
-+
-+typedef struct _gpio_cntl3_t {
-+ unsigned long gio2_pd : 16;
-+ unsigned long gio2_schmen : 16;
-+ } gpio_cntl3_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ gpio_cntl3_t f;
-+} gpio_cntl3_u;
-+
-+typedef struct _gpio_cntl4_t {
-+ unsigned long gio2_oe : 16;
-+ unsigned long : 16;
-+ } gpio_cntl4_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ gpio_cntl4_t f;
-+} gpio_cntl4_u;
-+
-+typedef struct _chip_strap_t {
-+ unsigned long config_strap : 8;
-+ unsigned long pkg_strap : 1;
-+ unsigned long : 23;
-+ } chip_strap_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ chip_strap_t f;
-+} chip_strap_u;
-+
-+typedef struct _disp_debug2_t {
-+ unsigned long disp_debug2 : 32;
-+ } disp_debug2_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ disp_debug2_t f;
-+} disp_debug2_u;
-+
-+typedef struct _debug_bus_cntl_t {
-+ unsigned long debug_testmux : 4;
-+ unsigned long debug_testsel : 4;
-+ unsigned long debug_gioa_sel : 2;
-+ unsigned long debug_giob_sel : 2;
-+ unsigned long debug_clk_sel : 1;
-+ unsigned long debug_clk_inv : 1;
-+ unsigned long : 2;
-+ unsigned long debug_bus : 16;
-+ } debug_bus_cntl_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ debug_bus_cntl_t f;
-+} debug_bus_cntl_u;
-+
-+typedef struct _gamma_value1_t {
-+ unsigned long gamma1 : 8;
-+ unsigned long gamma2 : 8;
-+ unsigned long gamma3 : 8;
-+ unsigned long gamma4 : 8;
-+ } gamma_value1_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ gamma_value1_t f;
-+} gamma_value1_u;
-+
-+typedef struct _gamma_value2_t {
-+ unsigned long gamma5 : 8;
-+ unsigned long gamma6 : 8;
-+ unsigned long gamma7 : 8;
-+ unsigned long gamma8 : 8;
-+ } gamma_value2_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ gamma_value2_t f;
-+} gamma_value2_u;
-+
-+typedef struct _gamma_slope_t {
-+ unsigned long slope1 : 3;
-+ unsigned long slope2 : 3;
-+ unsigned long slope3 : 3;
-+ unsigned long slope4 : 3;
-+ unsigned long slope5 : 3;
-+ unsigned long slope6 : 3;
-+ unsigned long slope7 : 3;
-+ unsigned long slope8 : 3;
-+ unsigned long : 8;
-+ } gamma_slope_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ gamma_slope_t f;
-+} gamma_slope_u;
-+
-+typedef struct _gen_status_t {
-+ unsigned long status : 16;
-+ unsigned long : 16;
-+ } gen_status_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ gen_status_t f;
-+} gen_status_u;
-+
-+typedef struct _hw_int_t {
-+ unsigned long hwint1_pos : 5;
-+ unsigned long hwint2_pos : 5;
-+ unsigned long hwint1_pol : 1;
-+ unsigned long hwint2_pol : 1;
-+ unsigned long hwint1_en_db : 1;
-+ unsigned long hwint2_en_db : 1;
-+ unsigned long : 18;
-+ } hw_int_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ hw_int_t f;
-+} hw_int_u;
-+
-+typedef struct _dst_offset_t {
-+ unsigned long dst_offset : 24;
-+ unsigned long : 8;
-+ } dst_offset_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ dst_offset_t f;
-+} dst_offset_u;
-+
-+typedef struct _dst_pitch_t {
-+ unsigned long dst_pitch : 14;
-+ unsigned long mc_dst_pitch_mul : 2;
-+ unsigned long : 16;
-+ } dst_pitch_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ dst_pitch_t f;
-+} dst_pitch_u;
-+
-+typedef struct _dst_pitch_offset_t {
-+ unsigned long dst_offset : 20;
-+ unsigned long dst_pitch : 10;
-+ unsigned long mc_dst_pitch_mul : 2;
-+ } dst_pitch_offset_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ dst_pitch_offset_t f;
-+} dst_pitch_offset_u;
-+
-+typedef struct _dst_x_t {
-+ unsigned long dst_x : 14;
-+ unsigned long : 18;
-+ } dst_x_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ dst_x_t f;
-+} dst_x_u;
-+
-+typedef struct _dst_y_t {
-+ unsigned long dst_y : 14;
-+ unsigned long : 18;
-+ } dst_y_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ dst_y_t f;
-+} dst_y_u;
-+
-+typedef struct _dst_x_y_t {
-+ unsigned long dst_y : 14;
-+ unsigned long : 2;
-+ unsigned long dst_x : 14;
-+ unsigned long : 2;
-+ } dst_x_y_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ dst_x_y_t f;
-+} dst_x_y_u;
-+
-+typedef struct _dst_y_x_t {
-+ unsigned long dst_x : 14;
-+ unsigned long : 2;
-+ unsigned long dst_y : 14;
-+ unsigned long : 2;
-+ } dst_y_x_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ dst_y_x_t f;
-+} dst_y_x_u;
-+
-+typedef struct _dst_width_t {
-+ unsigned long dst_width_b0 : 8;
-+ unsigned long dst_width_b1 : 6;
-+ unsigned long : 18;
-+ } dst_width_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ dst_width_t f;
-+} dst_width_u;
-+
-+typedef struct _dst_height_t {
-+ unsigned long dst_height : 14;
-+ unsigned long : 18;
-+ } dst_height_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ dst_height_t f;
-+} dst_height_u;
-+
-+typedef struct _dst_width_height_t {
-+ unsigned long dst_height : 14;
-+ unsigned long : 2;
-+ unsigned long dst_width_b0 : 8;
-+ unsigned long dst_width_b1 : 6;
-+ unsigned long : 2;
-+ } dst_width_height_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ dst_width_height_t f;
-+} dst_width_height_u;
-+
-+typedef struct _dst_height_width_t {
-+ unsigned long dst_width_b0 : 8;
-+ unsigned long dst_width_b1 : 6;
-+ unsigned long : 2;
-+ unsigned long dst_height : 14;
-+ unsigned long : 2;
-+ } dst_height_width_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ dst_height_width_t f;
-+} dst_height_width_u;
-+
-+typedef struct _dst_height_width_8_t {
-+ unsigned long : 16;
-+ unsigned long dst_width_b0 : 8;
-+ unsigned long dst_height : 8;
-+ } dst_height_width_8_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ dst_height_width_8_t f;
-+} dst_height_width_8_u;
-+
-+typedef struct _dst_height_y_t {
-+ unsigned long dst_y : 14;
-+ unsigned long : 2;
-+ unsigned long dst_height : 14;
-+ unsigned long : 2;
-+ } dst_height_y_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ dst_height_y_t f;
-+} dst_height_y_u;
-+
-+typedef struct _dst_width_x_t {
-+ unsigned long dst_x : 14;
-+ unsigned long : 2;
-+ unsigned long dst_width_b0 : 8;
-+ unsigned long dst_width_b1 : 6;
-+ unsigned long : 2;
-+ } dst_width_x_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ dst_width_x_t f;
-+} dst_width_x_u;
-+
-+typedef struct _dst_width_x_incy_t {
-+ unsigned long dst_x : 14;
-+ unsigned long : 2;
-+ unsigned long dst_width_b0 : 8;
-+ unsigned long dst_width_b1 : 6;
-+ unsigned long : 2;
-+ } dst_width_x_incy_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ dst_width_x_incy_t f;
-+} dst_width_x_incy_u;
-+
-+typedef struct _dst_line_start_t {
-+ unsigned long dst_start_x : 14;
-+ unsigned long : 2;
-+ unsigned long dst_start_y : 14;
-+ unsigned long : 2;
-+ } dst_line_start_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ dst_line_start_t f;
-+} dst_line_start_u;
-+
-+typedef struct _dst_line_end_t {
-+ unsigned long dst_end_x : 14;
-+ unsigned long : 2;
-+ unsigned long dst_end_y_b0 : 8;
-+ unsigned long dst_end_y_b1 : 6;
-+ unsigned long : 2;
-+ } dst_line_end_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ dst_line_end_t f;
-+} dst_line_end_u;
-+
-+typedef struct _brush_offset_t {
-+ unsigned long brush_offset : 24;
-+ unsigned long : 8;
-+ } brush_offset_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ brush_offset_t f;
-+} brush_offset_u;
-+
-+typedef struct _brush_y_x_t {
-+ unsigned long brush_x : 5;
-+ unsigned long : 3;
-+ unsigned long brush_y : 3;
-+ unsigned long : 21;
-+ } brush_y_x_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ brush_y_x_t f;
-+} brush_y_x_u;
-+
-+typedef struct _dp_brush_frgd_clr_t {
-+ unsigned long dp_brush_frgd_clr : 32;
-+ } dp_brush_frgd_clr_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ dp_brush_frgd_clr_t f;
-+} dp_brush_frgd_clr_u;
-+
-+typedef struct _dp_brush_bkgd_clr_t {
-+ unsigned long dp_brush_bkgd_clr : 32;
-+ } dp_brush_bkgd_clr_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ dp_brush_bkgd_clr_t f;
-+} dp_brush_bkgd_clr_u;
-+
-+typedef struct _src2_offset_t {
-+ unsigned long src2_offset : 24;
-+ unsigned long : 8;
-+ } src2_offset_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ src2_offset_t f;
-+} src2_offset_u;
-+
-+typedef struct _src2_pitch_t {
-+ unsigned long src2_pitch : 14;
-+ unsigned long src2_pitch_mul : 2;
-+ unsigned long : 16;
-+ } src2_pitch_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ src2_pitch_t f;
-+} src2_pitch_u;
-+
-+typedef struct _src2_pitch_offset_t {
-+ unsigned long src2_offset : 20;
-+ unsigned long : 2;
-+ unsigned long src2_pitch : 8;
-+ unsigned long src2_pitch_mul : 2;
-+ } src2_pitch_offset_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ src2_pitch_offset_t f;
-+} src2_pitch_offset_u;
-+
-+typedef struct _src2_x_t {
-+ unsigned long src_x : 14;
-+ unsigned long : 18;
-+ } src2_x_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ src2_x_t f;
-+} src2_x_u;
-+
-+typedef struct _src2_y_t {
-+ unsigned long src_y : 14;
-+ unsigned long : 18;
-+ } src2_y_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ src2_y_t f;
-+} src2_y_u;
-+
-+typedef struct _src2_x_y_t {
-+ unsigned long src_y : 14;
-+ unsigned long : 2;
-+ unsigned long src_x : 14;
-+ unsigned long : 2;
-+ } src2_x_y_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ src2_x_y_t f;
-+} src2_x_y_u;
-+
-+typedef struct _src2_width_t {
-+ unsigned long src2_width : 14;
-+ unsigned long : 18;
-+ } src2_width_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ src2_width_t f;
-+} src2_width_u;
-+
-+typedef struct _src2_height_t {
-+ unsigned long src2_height : 14;
-+ unsigned long : 18;
-+ } src2_height_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ src2_height_t f;
-+} src2_height_u;
-+
-+typedef struct _src2_inc_t {
-+ unsigned long src2_xinc : 6;
-+ unsigned long : 2;
-+ unsigned long src2_yinc : 6;
-+ unsigned long : 18;
-+ } src2_inc_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ src2_inc_t f;
-+} src2_inc_u;
-+
-+typedef struct _src_offset_t {
-+ unsigned long src_offset : 24;
-+ unsigned long : 8;
-+ } src_offset_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ src_offset_t f;
-+} src_offset_u;
-+
-+typedef struct _src_pitch_t {
-+ unsigned long src_pitch : 14;
-+ unsigned long src_pitch_mul : 2;
-+ unsigned long : 16;
-+ } src_pitch_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ src_pitch_t f;
-+} src_pitch_u;
-+
-+typedef struct _src_pitch_offset_t {
-+ unsigned long src_offset : 20;
-+ unsigned long src_pitch : 10;
-+ unsigned long src_pitch_mul : 2;
-+ } src_pitch_offset_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ src_pitch_offset_t f;
-+} src_pitch_offset_u;
-+
-+typedef struct _src_x_t {
-+ unsigned long src_x : 14;
-+ unsigned long : 18;
-+ } src_x_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ src_x_t f;
-+} src_x_u;
-+
-+typedef struct _src_y_t {
-+ unsigned long src_y : 14;
-+ unsigned long : 18;
-+ } src_y_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ src_y_t f;
-+} src_y_u;
-+
-+typedef struct _src_x_y_t {
-+ unsigned long src_y : 14;
-+ unsigned long : 2;
-+ unsigned long src_x : 14;
-+ unsigned long : 2;
-+ } src_x_y_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ src_x_y_t f;
-+} src_x_y_u;
-+
-+typedef struct _src_y_x_t {
-+ unsigned long src_x : 14;
-+ unsigned long : 2;
-+ unsigned long src_y : 14;
-+ unsigned long : 2;
-+ } src_y_x_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ src_y_x_t f;
-+} src_y_x_u;
-+
-+typedef struct _src_width_t {
-+ unsigned long src_width : 14;
-+ unsigned long : 18;
-+ } src_width_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ src_width_t f;
-+} src_width_u;
-+
-+typedef struct _src_height_t {
-+ unsigned long src_height : 14;
-+ unsigned long : 18;
-+ } src_height_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ src_height_t f;
-+} src_height_u;
-+
-+typedef struct _src_inc_t {
-+ unsigned long src_xinc : 6;
-+ unsigned long : 2;
-+ unsigned long src_yinc : 6;
-+ unsigned long : 18;
-+ } src_inc_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ src_inc_t f;
-+} src_inc_u;
-+
-+typedef struct _host_data0_t {
-+ unsigned long host_data : 32;
-+ } host_data0_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ host_data0_t f;
-+} host_data0_u;
-+
-+typedef struct _host_data1_t {
-+ unsigned long host_data : 32;
-+ } host_data1_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ host_data1_t f;
-+} host_data1_u;
-+
-+typedef struct _host_data2_t {
-+ unsigned long host_data : 32;
-+ } host_data2_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ host_data2_t f;
-+} host_data2_u;
-+
-+typedef struct _host_data3_t {
-+ unsigned long host_data : 32;
-+ } host_data3_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ host_data3_t f;
-+} host_data3_u;
-+
-+typedef struct _host_data4_t {
-+ unsigned long host_data : 32;
-+ } host_data4_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ host_data4_t f;
-+} host_data4_u;
-+
-+typedef struct _host_data5_t {
-+ unsigned long host_data : 32;
-+ } host_data5_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ host_data5_t f;
-+} host_data5_u;
-+
-+typedef struct _host_data6_t {
-+ unsigned long host_data : 32;
-+ } host_data6_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ host_data6_t f;
-+} host_data6_u;
-+
-+typedef struct _host_data7_t {
-+ unsigned long host_data : 32;
-+ } host_data7_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ host_data7_t f;
-+} host_data7_u;
-+
-+typedef struct _host_data_last_t {
-+ unsigned long host_data_last : 32;
-+ } host_data_last_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ host_data_last_t f;
-+} host_data_last_u;
-+
-+typedef struct _dp_src_frgd_clr_t {
-+ unsigned long dp_src_frgd_clr : 32;
-+ } dp_src_frgd_clr_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ dp_src_frgd_clr_t f;
-+} dp_src_frgd_clr_u;
-+
-+typedef struct _dp_src_bkgd_clr_t {
-+ unsigned long dp_src_bkgd_clr : 32;
-+ } dp_src_bkgd_clr_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ dp_src_bkgd_clr_t f;
-+} dp_src_bkgd_clr_u;
-+
-+typedef struct _sc_left_t {
-+ unsigned long sc_left : 14;
-+ unsigned long : 18;
-+ } sc_left_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ sc_left_t f;
-+} sc_left_u;
-+
-+typedef struct _sc_right_t {
-+ unsigned long sc_right : 14;
-+ unsigned long : 18;
-+ } sc_right_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ sc_right_t f;
-+} sc_right_u;
-+
-+typedef struct _sc_top_t {
-+ unsigned long sc_top : 14;
-+ unsigned long : 18;
-+ } sc_top_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ sc_top_t f;
-+} sc_top_u;
-+
-+typedef struct _sc_bottom_t {
-+ unsigned long sc_bottom : 14;
-+ unsigned long : 18;
-+ } sc_bottom_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ sc_bottom_t f;
-+} sc_bottom_u;
-+
-+typedef struct _src_sc_right_t {
-+ unsigned long sc_right : 14;
-+ unsigned long : 18;
-+ } src_sc_right_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ src_sc_right_t f;
-+} src_sc_right_u;
-+
-+typedef struct _src_sc_bottom_t {
-+ unsigned long sc_bottom : 14;
-+ unsigned long : 18;
-+ } src_sc_bottom_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ src_sc_bottom_t f;
-+} src_sc_bottom_u;
-+
-+typedef struct _dp_cntl_t {
-+ unsigned long dst_x_dir : 1;
-+ unsigned long dst_y_dir : 1;
-+ unsigned long src_x_dir : 1;
-+ unsigned long src_y_dir : 1;
-+ unsigned long dst_major_x : 1;
-+ unsigned long src_major_x : 1;
-+ unsigned long : 26;
-+ } dp_cntl_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ dp_cntl_t f;
-+} dp_cntl_u;
-+
-+typedef struct _dp_cntl_dst_dir_t {
-+ unsigned long : 15;
-+ unsigned long dst_y_dir : 1;
-+ unsigned long : 15;
-+ unsigned long dst_x_dir : 1;
-+ } dp_cntl_dst_dir_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ dp_cntl_dst_dir_t f;
-+} dp_cntl_dst_dir_u;
-+
-+typedef struct _dp_datatype_t {
-+ unsigned long dp_dst_datatype : 4;
-+ unsigned long : 4;
-+ unsigned long dp_brush_datatype : 4;
-+ unsigned long dp_src2_type : 1;
-+ unsigned long dp_src2_datatype : 3;
-+ unsigned long dp_src_datatype : 3;
-+ unsigned long : 11;
-+ unsigned long dp_byte_pix_order : 1;
-+ unsigned long : 1;
-+ } dp_datatype_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ dp_datatype_t f;
-+} dp_datatype_u;
-+
-+typedef struct _dp_mix_t {
-+ unsigned long : 8;
-+ unsigned long dp_src_source : 3;
-+ unsigned long dp_src2_source : 3;
-+ unsigned long : 2;
-+ unsigned long dp_rop3 : 8;
-+ unsigned long dp_op : 1;
-+ unsigned long : 7;
-+ } dp_mix_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ dp_mix_t f;
-+} dp_mix_u;
-+
-+typedef struct _dp_write_msk_t {
-+ unsigned long dp_write_msk : 32;
-+ } dp_write_msk_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ dp_write_msk_t f;
-+} dp_write_msk_u;
-+
-+typedef struct _clr_cmp_clr_src_t {
-+ unsigned long clr_cmp_clr_src : 32;
-+ } clr_cmp_clr_src_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ clr_cmp_clr_src_t f;
-+} clr_cmp_clr_src_u;
-+
-+typedef struct _clr_cmp_clr_dst_t {
-+ unsigned long clr_cmp_clr_dst : 32;
-+ } clr_cmp_clr_dst_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ clr_cmp_clr_dst_t f;
-+} clr_cmp_clr_dst_u;
-+
-+typedef struct _clr_cmp_cntl_t {
-+ unsigned long clr_cmp_fcn_src : 3;
-+ unsigned long : 5;
-+ unsigned long clr_cmp_fcn_dst : 3;
-+ unsigned long : 13;
-+ unsigned long clr_cmp_src : 2;
-+ unsigned long : 6;
-+ } clr_cmp_cntl_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ clr_cmp_cntl_t f;
-+} clr_cmp_cntl_u;
-+
-+typedef struct _clr_cmp_msk_t {
-+ unsigned long clr_cmp_msk : 32;
-+ } clr_cmp_msk_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ clr_cmp_msk_t f;
-+} clr_cmp_msk_u;
-+
-+typedef struct _default_pitch_offset_t {
-+ unsigned long default_offset : 20;
-+ unsigned long default_pitch : 10;
-+ unsigned long : 2;
-+ } default_pitch_offset_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ default_pitch_offset_t f;
-+} default_pitch_offset_u;
-+
-+typedef struct _default_sc_bottom_right_t {
-+ unsigned long default_sc_right : 14;
-+ unsigned long : 2;
-+ unsigned long default_sc_bottom : 14;
-+ unsigned long : 2;
-+ } default_sc_bottom_right_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ default_sc_bottom_right_t f;
-+} default_sc_bottom_right_u;
-+
-+typedef struct _default2_sc_bottom_right_t {
-+ unsigned long default_sc_right : 14;
-+ unsigned long : 2;
-+ unsigned long default_sc_bottom : 14;
-+ unsigned long : 2;
-+ } default2_sc_bottom_right_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ default2_sc_bottom_right_t f;
-+} default2_sc_bottom_right_u;
-+
-+typedef struct _ref1_pitch_offset_t {
-+ unsigned long offset : 20;
-+ unsigned long : 2;
-+ unsigned long pitch : 8;
-+ unsigned long : 2;
-+ } ref1_pitch_offset_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ ref1_pitch_offset_t f;
-+} ref1_pitch_offset_u;
-+
-+typedef struct _ref2_pitch_offset_t {
-+ unsigned long offset : 20;
-+ unsigned long : 2;
-+ unsigned long pitch : 8;
-+ unsigned long : 2;
-+ } ref2_pitch_offset_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ ref2_pitch_offset_t f;
-+} ref2_pitch_offset_u;
-+
-+typedef struct _ref3_pitch_offset_t {
-+ unsigned long offset : 20;
-+ unsigned long : 2;
-+ unsigned long pitch : 8;
-+ unsigned long : 2;
-+ } ref3_pitch_offset_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ ref3_pitch_offset_t f;
-+} ref3_pitch_offset_u;
-+
-+typedef struct _ref4_pitch_offset_t {
-+ unsigned long offset : 20;
-+ unsigned long : 2;
-+ unsigned long pitch : 8;
-+ unsigned long : 2;
-+ } ref4_pitch_offset_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ ref4_pitch_offset_t f;
-+} ref4_pitch_offset_u;
-+
-+typedef struct _ref5_pitch_offset_t {
-+ unsigned long offset : 20;
-+ unsigned long : 2;
-+ unsigned long pitch : 8;
-+ unsigned long : 2;
-+ } ref5_pitch_offset_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ ref5_pitch_offset_t f;
-+} ref5_pitch_offset_u;
-+
-+typedef struct _ref6_pitch_offset_t {
-+ unsigned long offset : 20;
-+ unsigned long : 2;
-+ unsigned long pitch : 8;
-+ unsigned long : 2;
-+ } ref6_pitch_offset_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ ref6_pitch_offset_t f;
-+} ref6_pitch_offset_u;
-+
-+typedef struct _dp_gui_master_cntl_t {
-+ unsigned long gmc_src_pitch_offset_cntl : 1;
-+ unsigned long gmc_dst_pitch_offset_cntl : 1;
-+ unsigned long gmc_src_clipping : 1;
-+ unsigned long gmc_dst_clipping : 1;
-+ unsigned long gmc_brush_datatype : 4;
-+ unsigned long gmc_dst_datatype : 4;
-+ unsigned long gmc_src_datatype : 3;
-+ unsigned long gmc_byte_pix_order : 1;
-+ unsigned long gmc_default_sel : 1;
-+ unsigned long gmc_rop3 : 8;
-+ unsigned long gmc_dp_src_source : 3;
-+ unsigned long gmc_clr_cmp_fcn_dis : 1;
-+ unsigned long : 1;
-+ unsigned long gmc_wr_msk_dis : 1;
-+ unsigned long gmc_dp_op : 1;
-+ } dp_gui_master_cntl_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ dp_gui_master_cntl_t f;
-+} dp_gui_master_cntl_u;
-+
-+typedef struct _sc_top_left_t {
-+ unsigned long sc_left : 14;
-+ unsigned long : 2;
-+ unsigned long sc_top : 14;
-+ unsigned long : 2;
-+ } sc_top_left_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ sc_top_left_t f;
-+} sc_top_left_u;
-+
-+typedef struct _sc_bottom_right_t {
-+ unsigned long sc_right : 14;
-+ unsigned long : 2;
-+ unsigned long sc_bottom : 14;
-+ unsigned long : 2;
-+ } sc_bottom_right_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ sc_bottom_right_t f;
-+} sc_bottom_right_u;
-+
-+typedef struct _src_sc_top_left_t {
-+ unsigned short sc_left;
-+ unsigned short sc_top;
-+} src_sc_top_left_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ src_sc_top_left_t f;
-+} src_sc_top_left_u;
-+
-+typedef struct _src_sc_bottom_right_t {
-+ unsigned long sc_right : 14;
-+ unsigned long : 2;
-+ unsigned long sc_bottom : 14;
-+ unsigned long : 2;
-+ } src_sc_bottom_right_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ src_sc_bottom_right_t f;
-+} src_sc_bottom_right_u;
-+
-+typedef struct _global_alpha_t {
-+ unsigned long alpha_r : 8;
-+ unsigned long alpha_g : 8;
-+ unsigned long alpha_b : 8;
-+ unsigned long alpha_a : 8;
-+} global_alpha_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ global_alpha_t f;
-+} global_alpha_u;
-+
-+typedef struct _filter_coef_t {
-+ unsigned long c_4 : 4;
-+ unsigned long c_3 : 4;
-+ unsigned long c_2 : 4;
-+ unsigned long c_1 : 4;
-+ unsigned long c1 : 4;
-+ unsigned long c2 : 4;
-+ unsigned long c3 : 4;
-+ unsigned long c4 : 4;
-+} filter_coef_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ filter_coef_t f;
-+} filter_coef_u;
-+
-+typedef struct _mvc_cntl_start_t {
-+ unsigned long mc_cntl_src_1_index : 4;
-+ unsigned long mc_cntl_dst_offset : 20;
-+ unsigned long mc_dst_pitch_mul : 2;
-+ unsigned long mc_cntl_src_2_index : 3;
-+ unsigned long mc_cntl_width_height_sel : 3;
-+} mvc_cntl_start_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ mvc_cntl_start_t f;
-+} mvc_cntl_start_u;
-+
-+typedef struct _e2_arithmetic_cntl_t {
-+ unsigned long opcode : 5;
-+ unsigned long shiftright : 4;
-+ unsigned long clamp : 1;
-+ unsigned long rounding : 2;
-+ unsigned long filter_n : 3;
-+ unsigned long : 1;
-+ unsigned long srcblend_inv : 1;
-+ unsigned long srcblend : 4;
-+ unsigned long : 3;
-+ unsigned long dstblend_inv : 1;
-+ unsigned long dstblend : 4;
-+ unsigned long dst_signed : 1;
-+ unsigned long autoinc : 1;
-+ unsigned long : 1;
-+} e2_arithmetic_cntl_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ e2_arithmetic_cntl_t f;
-+} e2_arithmetic_cntl_u;
-+
-+typedef struct _debug0_t {
-+ unsigned long debug0_r : 8;
-+ unsigned long : 8;
-+ unsigned long debug0_rw : 8;
-+ unsigned long : 8;
-+} debug0_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ debug0_t f;
-+} debug0_u;
-+
-+typedef struct _debug1_t {
-+ unsigned long debug1_r : 8;
-+ unsigned long : 8;
-+ unsigned long debug1_rw : 8;
-+ unsigned long : 8;
-+} debug1_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ debug1_t f;
-+} debug1_u;
-+
-+typedef struct _debug2_t {
-+ unsigned long debug2_r : 8;
-+ unsigned long : 8;
-+ unsigned long debug2_rw : 8;
-+ unsigned long : 8;
-+} debug2_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ debug2_t f;
-+} debug2_u;
-+
-+typedef struct _debug3_t {
-+ unsigned long : 32;
-+} debug3_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ debug3_t f;
-+} debug3_u;
-+
-+typedef struct _debug4_t {
-+ unsigned long : 32;
-+} debug4_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ debug4_t f;
-+} debug4_u;
-+
-+typedef struct _debug5_t {
-+ unsigned long : 32;
-+} debug5_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ debug5_t f;
-+} debug5_u;
-+
-+typedef struct _debug6_t {
-+ unsigned long : 32;
-+} debug6_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ debug6_t f;
-+} debug6_u;
-+
-+typedef struct _debug7_t {
-+ unsigned long : 32;
-+} debug7_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ debug7_t f;
-+} debug7_u;
-+
-+typedef struct _debug8_t {
-+ unsigned long : 32;
-+} debug8_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ debug8_t f;
-+} debug8_u;
-+
-+typedef struct _debug9_t {
-+ unsigned long : 32;
-+} debug9_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ debug9_t f;
-+} debug9_u;
-+
-+typedef struct _debug10_t {
-+ unsigned long : 32;
-+ } debug10_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ debug10_t f;
-+} debug10_u;
-+
-+typedef struct _debug11_t {
-+ unsigned long : 32;
-+ } debug11_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ debug11_t f;
-+} debug11_u;
-+
-+typedef struct _debug12_t {
-+ unsigned long : 32;
-+ } debug12_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ debug12_t f;
-+} debug12_u;
-+
-+typedef struct _debug13_t {
-+ unsigned long : 32;
-+ } debug13_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ debug13_t f;
-+} debug13_u;
-+
-+typedef struct _debug14_t {
-+ unsigned long : 32;
-+ } debug14_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ debug14_t f;
-+} debug14_u;
-+
-+typedef struct _debug15_t {
-+ unsigned long : 32;
-+ } debug15_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ debug15_t f;
-+} debug15_u;
-+
-+typedef struct _eng_cntl_t {
-+ unsigned long erc_reg_rd_ws : 1;
-+ unsigned long erc_reg_wr_ws : 1;
-+ unsigned long erc_idle_reg_wr : 1;
-+ unsigned long dis_engine_triggers : 1;
-+ unsigned long dis_rop_src_uses_dst_w_h : 1;
-+ unsigned long dis_src_uses_dst_dirmaj : 1;
-+ unsigned long : 6;
-+ unsigned long force_3dclk_when_2dclk : 1;
-+ unsigned long : 19;
-+ } eng_cntl_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ eng_cntl_t f;
-+} eng_cntl_u;
-+
-+typedef struct _eng_perf_cnt_t {
-+ unsigned long perf_cnt : 20;
-+ unsigned long perf_sel : 4;
-+ unsigned long perf_en : 1;
-+ unsigned long : 3;
-+ unsigned long perf_clr : 1;
-+ unsigned long : 3;
-+ } eng_perf_cnt_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ eng_perf_cnt_t f;
-+} eng_perf_cnt_u;
-+
-+typedef struct _idct_runs_t {
-+ unsigned long idct_runs_3 : 8;
-+ unsigned long idct_runs_2 : 8;
-+ unsigned long idct_runs_1 : 8;
-+ unsigned long idct_runs_0 : 8;
-+ } idct_runs_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ idct_runs_t f;
-+} idct_runs_u;
-+
-+typedef struct _idct_levels_t {
-+ unsigned long idct_level_hi : 16;
-+ unsigned long idct_level_lo : 16;
-+ } idct_levels_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ idct_levels_t f;
-+} idct_levels_u;
-+
-+typedef struct _idct_control_t {
-+ unsigned long idct_ctl_luma_rd_format : 2;
-+ unsigned long idct_ctl_chroma_rd_format : 2;
-+ unsigned long idct_ctl_scan_pattern : 1;
-+ unsigned long idct_ctl_intra : 1;
-+ unsigned long idct_ctl_flush : 1;
-+ unsigned long idct_ctl_passthru : 1;
-+ unsigned long idct_ctl_sw_reset : 1;
-+ unsigned long idct_ctl_constreq : 1;
-+ unsigned long idct_ctl_scramble : 1;
-+ unsigned long idct_ctl_alt_scan : 1;
-+ unsigned long : 20;
-+ } idct_control_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ idct_control_t f;
-+} idct_control_u;
-+
-+typedef struct _idct_auth_control_t {
-+ unsigned long control_bits : 32;
-+ } idct_auth_control_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ idct_auth_control_t f;
-+} idct_auth_control_u;
-+
-+typedef struct _idct_auth_t {
-+ unsigned long auth : 32;
-+ } idct_auth_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ idct_auth_t f;
-+} idct_auth_u;
-+
-+typedef struct _mem_cntl_t {
-+ unsigned long : 1;
-+ unsigned long en_mem_ch1 : 1;
-+ unsigned long en_mem_ch2 : 1;
-+ unsigned long int_mem_mapping : 1;
-+ unsigned long : 28;
-+ } mem_cntl_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ mem_cntl_t f;
-+} mem_cntl_u;
-+
-+typedef struct _mem_arb_t {
-+ unsigned long disp_time_slot : 4;
-+ unsigned long disp_timer : 4;
-+ unsigned long arb_option : 1;
-+ unsigned long : 23;
-+ } mem_arb_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ mem_arb_t f;
-+} mem_arb_u;
-+
-+typedef struct _mc_fb_location_t {
-+ unsigned long mc_fb_start : 16;
-+ unsigned long mc_fb_top : 16;
-+ } mc_fb_location_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ mc_fb_location_t f;
-+} mc_fb_location_u;
-+
-+typedef struct _mem_ext_cntl_t {
-+ unsigned long mem_ext_enable : 1;
-+ unsigned long mem_ap_enable : 1;
-+ unsigned long mem_addr_mapping : 2;
-+ unsigned long mem_wdoe_cntl : 2;
-+ unsigned long mem_wdoe_extend : 1;
-+ unsigned long : 1;
-+ unsigned long mem_page_timer : 8;
-+ unsigned long mem_dynamic_cke : 1;
-+ unsigned long mem_sdram_tri_en : 1;
-+ unsigned long mem_self_refresh_en : 1;
-+ unsigned long mem_power_down : 1;
-+ unsigned long mem_hw_power_down_en : 1;
-+ unsigned long mem_power_down_stat : 1;
-+ unsigned long : 3;
-+ unsigned long mem_pd_mck : 1;
-+ unsigned long mem_pd_ma : 1;
-+ unsigned long mem_pd_mdq : 1;
-+ unsigned long mem_tristate_mck : 1;
-+ unsigned long mem_tristate_ma : 1;
-+ unsigned long mem_tristate_mcke : 1;
-+ unsigned long mem_invert_mck : 1;
-+ } mem_ext_cntl_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ mem_ext_cntl_t f;
-+} mem_ext_cntl_u;
-+
-+typedef struct _mc_ext_mem_location_t {
-+ unsigned long mc_ext_mem_start : 16;
-+ unsigned long mc_ext_mem_top : 16;
-+ } mc_ext_mem_location_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ mc_ext_mem_location_t f;
-+} mc_ext_mem_location_u;
-+
-+typedef struct _mem_ext_timing_cntl_t {
-+ unsigned long mem_trp : 2;
-+ unsigned long mem_trcd : 2;
-+ unsigned long mem_tras : 3;
-+ unsigned long : 1;
-+ unsigned long mem_trrd : 2;
-+ unsigned long mem_tr2w : 2;
-+ unsigned long mem_twr : 2;
-+ unsigned long : 4;
-+ unsigned long mem_twr_mode : 1;
-+ unsigned long : 1;
-+ unsigned long mem_refresh_dis : 1;
-+ unsigned long : 3;
-+ unsigned long mem_refresh_rate : 8;
-+ } mem_ext_timing_cntl_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ mem_ext_timing_cntl_t f;
-+} mem_ext_timing_cntl_u;
-+
-+typedef struct _mem_sdram_mode_reg_t {
-+ unsigned long mem_mode_reg : 14;
-+ unsigned long : 2;
-+ unsigned long mem_read_latency : 2;
-+ unsigned long mem_schmen_latency : 2;
-+ unsigned long mem_cas_latency : 2;
-+ unsigned long mem_schmen_extend : 1;
-+ unsigned long : 8;
-+ unsigned long mem_sdram_reset : 1;
-+ } mem_sdram_mode_reg_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ mem_sdram_mode_reg_t f;
-+} mem_sdram_mode_reg_u;
-+
-+typedef struct _mem_io_cntl_t {
-+ unsigned long mem_sn_mck : 4;
-+ unsigned long mem_sn_ma : 4;
-+ unsigned long mem_sn_mdq : 4;
-+ unsigned long mem_srn_mck : 1;
-+ unsigned long mem_srn_ma : 1;
-+ unsigned long mem_srn_mdq : 1;
-+ unsigned long : 1;
-+ unsigned long mem_sp_mck : 4;
-+ unsigned long mem_sp_ma : 4;
-+ unsigned long mem_sp_mdq : 4;
-+ unsigned long mem_srp_mck : 1;
-+ unsigned long mem_srp_ma : 1;
-+ unsigned long mem_srp_mdq : 1;
-+ unsigned long : 1;
-+ } mem_io_cntl_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ mem_io_cntl_t f;
-+} mem_io_cntl_u;
-+
-+typedef struct _mc_debug_t {
-+ unsigned long mc_debug : 32;
-+ } mc_debug_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ mc_debug_t f;
-+} mc_debug_u;
-+
-+typedef struct _mc_bist_ctrl_t {
-+ unsigned long mc_bist_ctrl : 32;
-+ } mc_bist_ctrl_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ mc_bist_ctrl_t f;
-+} mc_bist_ctrl_u;
-+
-+typedef struct _mc_bist_collar_read_t {
-+ unsigned long mc_bist_collar_read : 32;
-+ } mc_bist_collar_read_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ mc_bist_collar_read_t f;
-+} mc_bist_collar_read_u;
-+
-+typedef struct _tc_mismatch_t {
-+ unsigned long tc_mismatch : 24;
-+ unsigned long : 8;
-+ } tc_mismatch_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ tc_mismatch_t f;
-+} tc_mismatch_u;
-+
-+typedef struct _mc_perf_mon_cntl_t {
-+ unsigned long clr_perf : 1;
-+ unsigned long en_perf : 1;
-+ unsigned long : 2;
-+ unsigned long perf_op_a : 2;
-+ unsigned long perf_op_b : 2;
-+ unsigned long : 8;
-+ unsigned long monitor_period : 8;
-+ unsigned long perf_count_a_overflow : 1;
-+ unsigned long perf_count_b_overflow : 1;
-+ unsigned long : 6;
-+ } mc_perf_mon_cntl_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ mc_perf_mon_cntl_t f;
-+} mc_perf_mon_cntl_u;
-+
-+typedef struct _mc_perf_counters_t {
-+ unsigned long mc_perf_counter_a : 16;
-+ unsigned long mc_perf_counter_b : 16;
-+ } mc_perf_counters_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ mc_perf_counters_t f;
-+} mc_perf_counters_u;
-+
-+typedef struct _wait_until_t {
-+ unsigned long wait_crtc_pflip : 1;
-+ unsigned long wait_re_crtc_vline : 1;
-+ unsigned long wait_fe_crtc_vline : 1;
-+ unsigned long wait_crtc_vline : 1;
-+ unsigned long wait_dma_viph0_idle : 1;
-+ unsigned long wait_dma_viph1_idle : 1;
-+ unsigned long wait_dma_viph2_idle : 1;
-+ unsigned long wait_dma_viph3_idle : 1;
-+ unsigned long wait_dma_vid_idle : 1;
-+ unsigned long wait_dma_gui_idle : 1;
-+ unsigned long wait_cmdfifo : 1;
-+ unsigned long wait_ov0_flip : 1;
-+ unsigned long wait_ov0_slicedone : 1;
-+ unsigned long : 1;
-+ unsigned long wait_2d_idle : 1;
-+ unsigned long wait_3d_idle : 1;
-+ unsigned long wait_2d_idleclean : 1;
-+ unsigned long wait_3d_idleclean : 1;
-+ unsigned long wait_host_idleclean : 1;
-+ unsigned long wait_extern_sig : 1;
-+ unsigned long cmdfifo_entries : 7;
-+ unsigned long : 3;
-+ unsigned long wait_both_crtc_pflip : 1;
-+ unsigned long eng_display_select : 1;
-+ } wait_until_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ wait_until_t f;
-+} wait_until_u;
-+
-+typedef struct _isync_cntl_t {
-+ unsigned long isync_any2d_idle3d : 1;
-+ unsigned long isync_any3d_idle2d : 1;
-+ unsigned long isync_trig2d_idle3d : 1;
-+ unsigned long isync_trig3d_idle2d : 1;
-+ unsigned long isync_wait_idlegui : 1;
-+ unsigned long isync_cpscratch_idlegui : 1;
-+ unsigned long : 26;
-+ } isync_cntl_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ isync_cntl_t f;
-+} isync_cntl_u;
-+
-+typedef struct _rbbm_guicntl_t {
-+ unsigned long host_data_swap : 2;
-+ unsigned long : 30;
-+ } rbbm_guicntl_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ rbbm_guicntl_t f;
-+} rbbm_guicntl_u;
-+
-+typedef struct _rbbm_status_t {
-+ unsigned long cmdfifo_avail : 7;
-+ unsigned long : 1;
-+ unsigned long hirq_on_rbb : 1;
-+ unsigned long cprq_on_rbb : 1;
-+ unsigned long cfrq_on_rbb : 1;
-+ unsigned long hirq_in_rtbuf : 1;
-+ unsigned long cprq_in_rtbuf : 1;
-+ unsigned long cfrq_in_rtbuf : 1;
-+ unsigned long cf_pipe_busy : 1;
-+ unsigned long eng_ev_busy : 1;
-+ unsigned long cp_cmdstrm_busy : 1;
-+ unsigned long e2_busy : 1;
-+ unsigned long rb2d_busy : 1;
-+ unsigned long rb3d_busy : 1;
-+ unsigned long se_busy : 1;
-+ unsigned long re_busy : 1;
-+ unsigned long tam_busy : 1;
-+ unsigned long tdm_busy : 1;
-+ unsigned long pb_busy : 1;
-+ unsigned long : 6;
-+ unsigned long gui_active : 1;
-+ } rbbm_status_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ rbbm_status_t f;
-+} rbbm_status_u;
-+
-+typedef struct _rbbm_cntl_t {
-+ unsigned long rb_settle : 4;
-+ unsigned long abortclks_hi : 3;
-+ unsigned long : 1;
-+ unsigned long abortclks_cp : 3;
-+ unsigned long : 1;
-+ unsigned long abortclks_cfifo : 3;
-+ unsigned long : 2;
-+ unsigned long cpq_data_swap : 1;
-+ unsigned long : 3;
-+ unsigned long no_abort_idct : 1;
-+ unsigned long no_abort_bios : 1;
-+ unsigned long no_abort_fb : 1;
-+ unsigned long no_abort_cp : 1;
-+ unsigned long no_abort_hi : 1;
-+ unsigned long no_abort_hdp : 1;
-+ unsigned long no_abort_mc : 1;
-+ unsigned long no_abort_aic : 1;
-+ unsigned long no_abort_vip : 1;
-+ unsigned long no_abort_disp : 1;
-+ unsigned long no_abort_cg : 1;
-+ } rbbm_cntl_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ rbbm_cntl_t f;
-+} rbbm_cntl_u;
-+
-+typedef struct _rbbm_soft_reset_t {
-+ unsigned long soft_reset_cp : 1;
-+ unsigned long soft_reset_hi : 1;
-+ unsigned long reserved3 : 3;
-+ unsigned long soft_reset_e2 : 1;
-+ unsigned long reserved2 : 2;
-+ unsigned long soft_reset_mc : 1;
-+ unsigned long reserved1 : 2;
-+ unsigned long soft_reset_disp : 1;
-+ unsigned long soft_reset_cg : 1;
-+ unsigned long : 19;
-+ } rbbm_soft_reset_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ rbbm_soft_reset_t f;
-+} rbbm_soft_reset_u;
-+
-+typedef struct _nqwait_until_t {
-+ unsigned long wait_gui_idle : 1;
-+ unsigned long : 31;
-+ } nqwait_until_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ nqwait_until_t f;
-+} nqwait_until_u;
-+
-+typedef struct _rbbm_debug_t {
-+ unsigned long rbbm_debug : 32;
-+ } rbbm_debug_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ rbbm_debug_t f;
-+} rbbm_debug_u;
-+
-+typedef struct _rbbm_cmdfifo_addr_t {
-+ unsigned long cmdfifo_addr : 6;
-+ unsigned long : 26;
-+ } rbbm_cmdfifo_addr_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ rbbm_cmdfifo_addr_t f;
-+} rbbm_cmdfifo_addr_u;
-+
-+typedef struct _rbbm_cmdfifo_datal_t {
-+ unsigned long cmdfifo_datal : 32;
-+ } rbbm_cmdfifo_datal_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ rbbm_cmdfifo_datal_t f;
-+} rbbm_cmdfifo_datal_u;
-+
-+typedef struct _rbbm_cmdfifo_datah_t {
-+ unsigned long cmdfifo_datah : 12;
-+ unsigned long : 20;
-+ } rbbm_cmdfifo_datah_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ rbbm_cmdfifo_datah_t f;
-+} rbbm_cmdfifo_datah_u;
-+
-+typedef struct _rbbm_cmdfifo_stat_t {
-+ unsigned long cmdfifo_rptr : 6;
-+ unsigned long : 2;
-+ unsigned long cmdfifo_wptr : 6;
-+ unsigned long : 18;
-+ } rbbm_cmdfifo_stat_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ rbbm_cmdfifo_stat_t f;
-+} rbbm_cmdfifo_stat_u;
-+
-+typedef struct _clk_pin_cntl_t {
-+ unsigned long osc_en : 1;
-+ unsigned long osc_gain : 5;
-+ unsigned long dont_use_xtalin : 1;
-+ unsigned long xtalin_pm_en : 1;
-+ unsigned long xtalin_dbl_en : 1;
-+ unsigned long : 7;
-+ unsigned long cg_debug : 16;
-+ } clk_pin_cntl_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ clk_pin_cntl_t f;
-+} clk_pin_cntl_u;
-+
-+typedef struct _pll_ref_fb_div_t {
-+ unsigned long pll_ref_div : 4;
-+ unsigned long : 4;
-+ unsigned long pll_fb_div_int : 6;
-+ unsigned long : 2;
-+ unsigned long pll_fb_div_frac : 3;
-+ unsigned long : 1;
-+ unsigned long pll_reset_time : 4;
-+ unsigned long pll_lock_time : 8;
-+ } pll_ref_fb_div_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ pll_ref_fb_div_t f;
-+} pll_ref_fb_div_u;
-+
-+typedef struct _pll_cntl_t {
-+ unsigned long pll_pwdn : 1;
-+ unsigned long pll_reset : 1;
-+ unsigned long pll_pm_en : 1;
-+ unsigned long pll_mode : 1;
-+ unsigned long pll_refclk_sel : 1;
-+ unsigned long pll_fbclk_sel : 1;
-+ unsigned long pll_tcpoff : 1;
-+ unsigned long pll_pcp : 3;
-+ unsigned long pll_pvg : 3;
-+ unsigned long pll_vcofr : 1;
-+ unsigned long pll_ioffset : 2;
-+ unsigned long pll_pecc_mode : 2;
-+ unsigned long pll_pecc_scon : 2;
-+ unsigned long pll_dactal : 4;
-+ unsigned long pll_cp_clip : 2;
-+ unsigned long pll_conf : 3;
-+ unsigned long pll_mbctrl : 2;
-+ unsigned long pll_ring_off : 1;
-+ } pll_cntl_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ pll_cntl_t f;
-+} pll_cntl_u;
-+
-+typedef struct _sclk_cntl_t {
-+ unsigned long sclk_src_sel : 2;
-+ unsigned long : 2;
-+ unsigned long sclk_post_div_fast : 4;
-+ unsigned long sclk_clkon_hys : 3;
-+ unsigned long sclk_post_div_slow : 4;
-+ unsigned long disp_cg_ok2switch_en : 1;
-+ unsigned long sclk_force_reg : 1;
-+ unsigned long sclk_force_disp : 1;
-+ unsigned long sclk_force_mc : 1;
-+ unsigned long sclk_force_extmc : 1;
-+ unsigned long sclk_force_cp : 1;
-+ unsigned long sclk_force_e2 : 1;
-+ unsigned long sclk_force_e3 : 1;
-+ unsigned long sclk_force_idct : 1;
-+ unsigned long sclk_force_bist : 1;
-+ unsigned long busy_extend_cp : 1;
-+ unsigned long busy_extend_e2 : 1;
-+ unsigned long busy_extend_e3 : 1;
-+ unsigned long busy_extend_idct : 1;
-+ unsigned long : 3;
-+ } sclk_cntl_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ sclk_cntl_t f;
-+} sclk_cntl_u;
-+
-+typedef struct _pclk_cntl_t {
-+ unsigned long pclk_src_sel : 2;
-+ unsigned long : 2;
-+ unsigned long pclk_post_div : 4;
-+ unsigned long : 8;
-+ unsigned long pclk_force_disp : 1;
-+ unsigned long : 15;
-+ } pclk_cntl_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ pclk_cntl_t f;
-+} pclk_cntl_u;
-+
-+typedef struct _clk_test_cntl_t {
-+ unsigned long testclk_sel : 4;
-+ unsigned long : 3;
-+ unsigned long start_check_freq : 1;
-+ unsigned long tstcount_rst : 1;
-+ unsigned long : 15;
-+ unsigned long test_count : 8;
-+ } clk_test_cntl_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ clk_test_cntl_t f;
-+} clk_test_cntl_u;
-+
-+typedef struct _pwrmgt_cntl_t {
-+ unsigned long pwm_enable : 1;
-+ unsigned long : 1;
-+ unsigned long pwm_mode_req : 2;
-+ unsigned long pwm_wakeup_cond : 2;
-+ unsigned long pwm_fast_noml_hw_en : 1;
-+ unsigned long pwm_noml_fast_hw_en : 1;
-+ unsigned long pwm_fast_noml_cond : 4;
-+ unsigned long pwm_noml_fast_cond : 4;
-+ unsigned long pwm_idle_timer : 8;
-+ unsigned long pwm_busy_timer : 8;
-+ } pwrmgt_cntl_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ pwrmgt_cntl_t f;
-+} pwrmgt_cntl_u;
-+
-+typedef struct _pwrmgt_status_t {
-+ unsigned long pwm_mode : 2;
-+ unsigned long : 30;
-+ } pwrmgt_status_t;
-+
-+typedef union {
-+ unsigned long val : 32;
-+ pwrmgt_status_t f;
-+} pwrmgt_status_u;
-+
-+
-+#endif //_W100_REGS_H_
-
diff --git a/meta-extras/packages/xorg-xserver/xserver-kdrive-glamo_1.3.0.0+git.bb b/meta-extras/packages/xorg-xserver/xserver-kdrive-glamo_1.3.0.0+git.bb
deleted file mode 100644
index cdfa305d5..000000000
--- a/meta-extras/packages/xorg-xserver/xserver-kdrive-glamo_1.3.0.0+git.bb
+++ /dev/null
@@ -1,64 +0,0 @@
-DESCRIPTION = "X server for glamo chip in GTA02"
-SECTION = "x11/base"
-LICENSE = "MIT"
-DEPENDS = "compositeproto damageproto fixesproto recordproto resourceproto \
- scrnsaverproto xineramaproto videoproto xextproto xproto \
- libxau libxext libxdmcp libxfont libxrandr tslib virtual/libx11 \
- xtrans libxkbfile libxcalibrate"
-DEPENDS += "libxkbfile libxcalibrate"
-RDEPENDS_${PN} = "xserver-kdrive"
-PROVIDES = "virtual/xserver"
-PE = "1"
-PR = "r8"
-PV = "1.3.0.0+git${SRCREV}"
-
-SRC_URI = "git://git.openmoko.org/git/xglamo.git;protocol=git \
- file://kmode.patch;patch=1 \
- file://disable-apm.patch;patch=1 \
- file://no-serial-probing.patch;patch=1 \
- file://fbdev-not-fix.patch;patch=1 \
- file://optional-xkb.patch;patch=1 \
- file://enable-tslib.patch;patch=1 \
- file://kmode-palm.patch;patch=1 \
- file://enable-epson.patch;patch=1 \
- file://enable-builtin-fonts.patch;patch=1 \
- file://kdrive-evdev.patch;patch=1 \
- file://kdrive-use-evdev.patch;patch=1 \
- file://disable-xf86-dga-xorgcfg.patch;patch=1 \
- file://fix_default_mode.patch;patch=1 \
- file://enable-xcalibrate.patch;patch=1 \
- file://hide-cursor-and-ppm-root.patch;patch=1 \
- file://xcalibrate_coords.patch;patch=1 \
- file://w100.patch;patch=1 \
- file://w100-autofoo.patch;patch=1 \
- file://w100-fix-offscreen-bmp.patch;patch=1 \
- file://kdrive-1.3-18bpp.patch;patch=1 \
- file://gumstix-kmode.patch;patch=1 \
- file://fix-picturestr-include-order.patch;patch=1 \
-"
-
-FILESPATH = "${FILE_DIRNAME}/xserver-kdrive-glamo:${FILE_DIRNAME}/xserver-kdrive-1.3.0.0:${FILE_DIRNAME}/xserver-kdrive:${FILE_DIRNAME}/files"
-
-S = "${WORKDIR}/git"
-
-inherit autotools pkgconfig
-
-EXTRA_OECONF = "--enable-composite --enable-kdrive \
- --disable-dga --disable-dri --disable-xinerama \
- --disable-xf86misc --disable-xf86vidmode \
- --disable-xorg --disable-xorgcfg \
- --disable-xkb --disable-xnest --disable-xvfb \
- --disable-xevie --disable-xprint --disable-xtrap \
- --disable-dmx \
- --with-default-font-path=built-ins \
- --enable-tslib --enable-xcalibrate \
- ac_cv_file__usr_share_sgml_X11_defs_ent=no"
-
-do_configure_prepend() {
- sed -i -e 's/tslib-0.0/tslib-1.0/' ${S}/configure.ac
-}
-
-FILES_${PN} = "${bindir}/Xglamo"
-FILES_${PN}-dbg = "${bindir}/.debug/Xglamo"
-
-ARM_INSTRUCTION_SET = "arm"
diff --git a/meta-extras/packages/xorg-xserver/xserver-kdrive-xomap/button_only.patch b/meta-extras/packages/xorg-xserver/xserver-kdrive-xomap/button_only.patch
deleted file mode 100644
index ee8c1ed68..000000000
--- a/meta-extras/packages/xorg-xserver/xserver-kdrive-xomap/button_only.patch
+++ /dev/null
@@ -1,20 +0,0 @@
----
- hw/kdrive/linux/tslib.c | 5 +----
- 1 file changed, 1 insertion(+), 4 deletions(-)
-
-Index: xorg-server-1.1.99.3/hw/kdrive/linux/tslib.c
-===================================================================
---- xorg-server-1.1.99.3.orig/hw/kdrive/linux/tslib.c 2007-05-17 10:28:12.000000000 +0100
-+++ xorg-server-1.1.99.3/hw/kdrive/linux/tslib.c 2007-05-17 10:28:42.000000000 +0100
-@@ -111,10 +111,7 @@ TsRead (int fd, void *closure)
- event.pressure);
- discard = 0;
- if (event.pressure) {
-- if (event.pressure > pi->dixdev->absolute->button_threshold)
-- flags = KD_BUTTON_8;
-- else
-- flags = KD_BUTTON_1;
-+ flags = KD_BUTTON_1;
-
- /*
- * Here we test for the touch screen driver actually being on the
diff --git a/meta-extras/packages/xorg-xserver/xserver-kdrive-xomap/calibrateext.patch b/meta-extras/packages/xorg-xserver/xserver-kdrive-xomap/calibrateext.patch
deleted file mode 100644
index c5997c2ff..000000000
--- a/meta-extras/packages/xorg-xserver/xserver-kdrive-xomap/calibrateext.patch
+++ /dev/null
@@ -1,124 +0,0 @@
----
- configure |38107 -----------------------------------------------------------
- configure.ac | 2 -
- hw/kdrive/linux/tslib.c | 68 ++++++++++++++++++++++++++----------------------
- 2 files changed, 39 insertions(+), 31 deletions(-)
-
-
-Index: xorg-server-1.1.99.3/hw/kdrive/linux/tslib.c
-===================================================================
---- xorg-server-1.1.99.3.orig/hw/kdrive/linux/tslib.c 2007-01-30 00:44:13.000000000 +0000
-+++ xorg-server-1.1.99.3/hw/kdrive/linux/tslib.c 2007-01-30 21:55:52.000000000 +0000
-@@ -47,6 +47,10 @@
-
- #define TSLIB_QUEUE_SIZE 3
-
-+/* For XCalibrate extension */
-+void (*tslib_raw_event_hook)(int x, int y, int pressure, void *closure);
-+void *tslib_raw_event_closure;
-+
- struct TslibPrivate {
- int fd;
- int lastx, lasty;
-@@ -76,6 +80,19 @@ TsRead (int fd, void *closure)
- unsigned long flags = 0;
- int discard = 0;
-
-+ if (tslib_raw_event_hook)
-+ {
-+ /* XCalibrate Ext */
-+ if (ts_read_raw(private->tsDev, &event, 1) == 1)
-+ {
-+ tslib_raw_event_hook (event.x,
-+ event.y,
-+ event.pressure,
-+ tslib_raw_event_closure);
-+ }
-+ return;
-+ }
-+
- if (!private->tsDev) {
- DebugF("[tslib] EXTREME BADNESS: TsRead called while tsDev is null!\n");
- return;
-@@ -322,14 +339,14 @@ TsRead (int fd, void *closure)
- }
- }
-
--/* must always be NULL-terminated. */
--char *valid_ts_names[] = {
-- "ADS784x Touchscreen",
-- "omap-ts",
-- "TSC2301 touchscreen",
-- NULL
-+static char *TsNames[] = {
-+ NULL, /* set via TSLIB_TSDEVICE */
-+ "/dev/ts",
-+ "/dev/touchscreen/0",
- };
-
-+#define NUM_TS_NAMES (sizeof (TsNames) / sizeof (TsNames[0]))
-+
- #define TS_NAME_SIZE 32
-
- static Status
-@@ -383,11 +400,10 @@ TslibDisable (KdPointerInfo *pi)
- private->tsDev = NULL;
- }
-
--
- static Status
- TslibInit (KdPointerInfo *pi)
- {
-- int fd = 0, i = 0;
-+ int fd = 0, i = 0, j = 0;
- char devpath[PATH_MAX], devname[TS_NAME_SIZE];
- DIR *inputdir = NULL;
- struct dirent *inputent = NULL;
-@@ -397,33 +413,25 @@ TslibInit (KdPointerInfo *pi)
- return !Success;
-
- if (!pi->path || strcmp(pi->path, "auto") == 0) {
-- if (!(inputdir = opendir("/dev/input"))) {
-- ErrorF("[tslib/TslibInit]: couldn't open /dev/input!\n");
-- return BadMatch;
-- }
-
-- while ((inputent = readdir(inputdir))) {
-- if (strncmp(inputent->d_name, "event", 5) != 0)
-- continue;
-+ if ((TsNames[0] = getenv("TSLIB_TSDEVICE")) == NULL)
-+ j++;
-+
-+ for (i = j; i < NUM_TS_NAMES; i++)
-+ {
-+ struct tsdev *tsDev;
-
-- snprintf(devpath, PATH_MAX, "/dev/input/%s", inputent->d_name);
-- fd = open(devpath, O_RDWR);
-+ if(!(tsDev = ts_open(TsNames[i], 0)))
-+ continue;
-
-- if (!ioctl(fd, EVIOCGNAME(sizeof(devname)), devname)) {
-- close(fd);
-+ if (ts_config(tsDev))
- continue;
-- }
-- close(fd);
-
-- for (i = 0; valid_ts_names[i]; i++) {
-- if (strcmp(devname, valid_ts_names[i]) == 0) {
-- pi->path = KdSaveString(devpath);
-- break;
-- }
-- }
-- }
--
-- closedir(inputdir);
-+ ts_close(tsDev);
-+
-+ pi->path = KdSaveString(TsNames[i]);
-+ break;
-+ }
- }
-
- if (!pi->path || strcmp(pi->path, "auto") == 0) {
diff --git a/meta-extras/packages/xorg-xserver/xserver-kdrive-xomap/configfix.patch b/meta-extras/packages/xorg-xserver/xserver-kdrive-xomap/configfix.patch
deleted file mode 100644
index ada8f3a78..000000000
--- a/meta-extras/packages/xorg-xserver/xserver-kdrive-xomap/configfix.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-Index: xorg-server-1.1.99.3/configure.ac
-===================================================================
---- xorg-server-1.1.99.3.orig/configure.ac 2010-06-09 12:52:26.000000000 +0100
-+++ xorg-server-1.1.99.3/configure.ac 2010-06-09 12:52:51.000000000 +0100
-@@ -1731,7 +1731,9 @@
- DIX_CFLAGS="-DHAVE_DIX_CONFIG_H"
- AC_SUBST([DIX_CFLAGS])
-
--AC_SUBST([libdir exec_prefix prefix])
-+AC_SUBST([libdir])
-+AC_SUBST([exec_prefix])
-+AC_SUBST([prefix])
-
- # Man page sections - used in config utils & generating man pages
- XORG_MANPAGE_SECTIONS
diff --git a/meta-extras/packages/xorg-xserver/xserver-kdrive-xomap/disable-apm.patch b/meta-extras/packages/xorg-xserver/xserver-kdrive-xomap/disable-apm.patch
deleted file mode 100644
index bd8842721..000000000
--- a/meta-extras/packages/xorg-xserver/xserver-kdrive-xomap/disable-apm.patch
+++ /dev/null
@@ -1,20 +0,0 @@
---- xserver/hw/kdrive/linux/linux.c.orig 2005-04-23 15:56:13.988849232 +0000
-+++ xserver/hw/kdrive/linux/linux.c 2005-04-23 15:57:05.001094192 +0000
-@@ -342,7 +342,7 @@
- /*
- * Open the APM driver
- */
-- LinuxApmFd = open ("/dev/apm_bios", 2);
-+ /*LinuxApmFd = open ("/dev/apm_bios", 2);
- if (LinuxApmFd < 0 && errno == ENOENT)
- LinuxApmFd = open ("/dev/misc/apm_bios", 2);
- if (LinuxApmFd >= 0)
-@@ -352,7 +352,7 @@
- RegisterBlockAndWakeupHandlers (LinuxApmBlock, LinuxApmWakeup, 0);
- AddEnabledDevice (LinuxApmFd);
- }
--
-+ */
- /*
- * now get the VT
- */
diff --git a/meta-extras/packages/xorg-xserver/xserver-kdrive-xomap/disable-xf86-dga-xorgcfg.patch b/meta-extras/packages/xorg-xserver/xserver-kdrive-xomap/disable-xf86-dga-xorgcfg.patch
deleted file mode 100644
index 9c43e52ea..000000000
--- a/meta-extras/packages/xorg-xserver/xserver-kdrive-xomap/disable-xf86-dga-xorgcfg.patch
+++ /dev/null
@@ -1,37 +0,0 @@
---- git/configure.ac.orig 2006-05-22 22:40:00.000000000 +0200
-+++ git/configure.ac 2006-06-10 15:10:14.000000000 +0200
-@@ -505,7 +505,11 @@
- XEXTXORG_LIB='$(top_builddir)/Xext/libXextbuiltin.la'
-
- dnl Core modules for most extensions, et al.
-+if test "$KDRIVE" = yes; then
-+REQUIRED_MODULES="randrproto renderproto [fixesproto >= 4.0] damageproto xcmiscproto xextproto xproto xtrans xf86bigfontproto [scrnsaverproto >= 1.1] bigreqsproto resourceproto fontsproto inputproto"
-+else
- REQUIRED_MODULES="randrproto renderproto [fixesproto >= 4.0] damageproto xcmiscproto xextproto xproto xtrans xf86miscproto xf86vidmodeproto xf86bigfontproto [scrnsaverproto >= 1.1] bigreqsproto resourceproto fontsproto inputproto xf86dgaproto"
-+fi
- REQUIRED_LIBS="xfont xau fontenc"
-
- AM_CONDITIONAL(XV, [test "x$XV" = xyes])
-@@ -1514,7 +1526,9 @@
- AC_SUBST(XKB_COMPILED_DIR)
-
- dnl and the rest of these are generic, so they're in config.h
-+if test ! x"$KDRIVE" = xyes; then
- AC_DEFINE(XFreeXDGA, 1, [Build XDGA support])
-+fi
- AC_DEFINE(XResExtension, 1, [Build XRes extension])
-
- dnl CYGWIN does not define fd_set if _POSIX_SOURCE is defined
-@@ -1534,10 +1548,12 @@
-
- AC_DEFINE_DIR(PROJECTROOT, prefix, [Overall prefix])
-
-+if test ! "x$KDRIVE" = xyes ; then
- dnl xorgconfig CLI configuration utility
- PKG_CHECK_MODULES([XORGCONFIG_DEP], [xkbfile x11])
- AC_SUBST(XORGCONFIG_DEP_CFLAGS)
- AC_SUBST(XORGCONFIG_DEP_LIBS)
-+fi
-
- dnl xorgcfg GUI configuration utility
- AC_ARG_ENABLE(xorgcfg, AS_HELP_STRING([--enable-xorgcfg],
diff --git a/meta-extras/packages/xorg-xserver/xserver-kdrive-xomap/disable-xkb.patch b/meta-extras/packages/xorg-xserver/xserver-kdrive-xomap/disable-xkb.patch
deleted file mode 100644
index 9c38156cd..000000000
--- a/meta-extras/packages/xorg-xserver/xserver-kdrive-xomap/disable-xkb.patch
+++ /dev/null
@@ -1,82 +0,0 @@
-Index: xorg-server-1.1.99.3/Makefile.am
-===================================================================
---- xorg-server-1.1.99.3.orig/Makefile.am 2008-02-20 22:22:56.000000000 +0000
-+++ xorg-server-1.1.99.3/Makefile.am 2008-02-20 22:23:22.000000000 +0000
-@@ -34,6 +34,11 @@
- XSP_DIR=xsp
- endif
-
-+if XKB
-+XKB_DIR=xkb
-+endif
-+
-+
- SUBDIRS = \
- doc \
- include \
-@@ -46,7 +51,7 @@
- randr \
- render \
- Xi \
-- xkb \
-+ $(XKB_DIR) \
- $(DBE_DIR) \
- $(MFB_DIR) \
- $(AFB_DIR) \
-Index: xorg-server-1.1.99.3/configure.ac
-===================================================================
---- xorg-server-1.1.99.3.orig/configure.ac 2008-02-20 22:04:15.000000000 +0000
-+++ xorg-server-1.1.99.3/configure.ac 2008-02-20 22:28:35.000000000 +0000
-@@ -434,6 +434,7 @@
- AC_ARG_ENABLE(dbus, AS_HELP_STRING([--disable-dbus], [Build D-BUS support (default: auto)]), [DBUS=$enableval], [DBUS=auto])
- AC_ARG_ENABLE(xsp, AS_HELP_STRING([--disable-xsp], [Build XSP support (default: auto)]), [XSP=$enableval], [XSP=auto])
- AC_ARG_ENABLE(tslib, AS_HELP_STRING([--disable-tslib], [Build embedded touchscreen support (default: auto)]), [TSLIB=$enableval], [TSLIB=auto])
-+AC_ARG_ENABLE(xkb, AS_HELP_STRING([--disable-xkb], [Build XKB (default: enabled)]), [XKB=$enableval], [XKB=yes])
-
- dnl DDXes.
- AC_ARG_ENABLE(xorg, AS_HELP_STRING([--enable-xorg], [Build Xorg server (default: auto)]), [XORG=$enableval], [XORG=auto])
-@@ -751,12 +752,15 @@
-
- AC_DEFINE(SHAPE, 1, [Support SHAPE extension])
-
--AC_DEFINE(XKB, 1, [Build XKB])
--AC_DEFINE(XKB_IN_SERVER, 1, [Build XKB server])
--AC_DEFINE(XKB_DFLT_DISABLED, 0, [Disable XKB per default])
--REQUIRED_MODULES="$REQUIRED_MODULES xkbfile"
--XKB_LIB='$(top_builddir)/xkb/libxkb.la'
--XKB_STUB_LIB='$(top_builddir)/xkb/libxkbstubs.la'
-+AM_CONDITIONAL(XKB, [test "x$XKB" = xyes])
-+if test "x$XKB" = xyes; then
-+ AC_DEFINE(XKB, 1, [Build XKB])
-+ AC_DEFINE(XKB_IN_SERVER, 1, [Build XKB server])
-+ AC_DEFINE(XKB_DFLT_DISABLED, 0, [Disable XKB per default])
-+ REQUIRED_MODULES="$REQUIRED_MODULES xkbfile"
-+ XKB_LIB='$(top_builddir)/xkb/libxkb.la'
-+ XKB_STUB_LIB='$(top_builddir)/xkb/libxkbstubs.la'
-+fi
-
- AC_CHECK_FUNC(strcasecmp, [], AC_DEFINE([NEED_STRCASECMP], 1,
- [Do not have `strcasecmp'.]))
-Index: xorg-server-1.1.99.3/hw/kdrive/src/Makefile.am
-===================================================================
---- xorg-server-1.1.99.3.orig/hw/kdrive/src/Makefile.am 2008-02-20 22:28:04.000000000 +0000
-+++ xorg-server-1.1.99.3/hw/kdrive/src/Makefile.am 2008-02-20 22:28:31.000000000 +0000
-@@ -39,4 +39,4 @@
- libkdrivestubs_a_SOURCES = \
- $(top_srcdir)/fb/fbcmap.c
-
--libkdrivexkb_a_SOURCES = kxkb.c
-+libkdrivexkb_a_SOURCES =
-Index: xorg-server-1.1.99.3/hw/kdrive/src/kinput.c
-===================================================================
---- xorg-server-1.1.99.3.orig/hw/kdrive/src/kinput.c 2008-02-20 22:25:58.000000000 +0000
-+++ xorg-server-1.1.99.3/hw/kdrive/src/kinput.c 2008-02-20 22:27:29.000000000 +0000
-@@ -777,7 +777,7 @@
- KdInitModMap(ki);
- KdInitAutoRepeats(ki);
-
--#ifndef XKB
-+#ifdef XKB
- if (!noXkbExtension) {
- memset(&names, 0, sizeof(XkbComponentNamesRec));
- if (XkbInitialMap)
diff --git a/meta-extras/packages/xorg-xserver/xserver-kdrive-xomap/enable-builtin-fonts.patch b/meta-extras/packages/xorg-xserver/xserver-kdrive-xomap/enable-builtin-fonts.patch
deleted file mode 100644
index 13a6c2c95..000000000
--- a/meta-extras/packages/xorg-xserver/xserver-kdrive-xomap/enable-builtin-fonts.patch
+++ /dev/null
@@ -1,12 +0,0 @@
---- xorg-server-X11R7.1-1.1.0/dix/dixfonts.c.orig 2006-06-08 14:49:12.158684250 +0200
-+++ xorg-server-X11R7.1-1.1.0/dix/dixfonts.c 2006-06-08 14:49:52.493205000 +0200
-@@ -52,8 +52,8 @@
- /* $Xorg: dixfonts.c,v 1.4 2000/08/17 19:48:18 cpqbld Exp $ */
-
- #define NEED_REPLIES
- #ifdef HAVE_DIX_CONFIG_H
--#include <dix-config.h>
-+#include <kdrive-config.h>
- #endif
-
- #include <X11/X.h>
diff --git a/meta-extras/packages/xorg-xserver/xserver-kdrive-xomap/enable-tslib.patch b/meta-extras/packages/xorg-xserver/xserver-kdrive-xomap/enable-tslib.patch
deleted file mode 100644
index e488657b7..000000000
--- a/meta-extras/packages/xorg-xserver/xserver-kdrive-xomap/enable-tslib.patch
+++ /dev/null
@@ -1,23 +0,0 @@
---- git/configure.ac.orig 2006-05-22 22:40:00.000000000 +0200
-+++ git/configure.ac 2006-06-10 15:10:14.000000000 +0200
-@@ -1438,6 +1446,10 @@
- fi
-
-- # tslib...
-+ AC_CHECK_HEADERS([tslib.h])
-+ if test "$ac_cv_header_tslib_h" = yes; then
-+ AC_DEFINE(TSLIB, 1, [Build kdrive with tslib support])
-+ AC_DEFINE(TOUCHSCREEN, 1, [Build kdrive with touchscreen support])
-+ fi
-
- # damage shadow extension glx (NOTYET) fb mi
- KDRIVE_INC='-I$(top_srcdir)/hw/kdrive/src'
-@@ -1467,7 +1479,7 @@
- AC_SUBST(KDRIVE_CFLAGS)
- AC_SUBST(KDRIVE_PURE_LIBS)
- AC_SUBST(KDRIVE_LIBS)
--AM_CONDITIONAL(TSLIB, false)
-+AM_CONDITIONAL(TSLIB, [test x"$ac_cv_header_tslib_h" = xyes])
- AM_CONDITIONAL(H3600_TS, false)
- AM_CONDITIONAL(KDRIVEVESA, [test x"$ac_cv_header_sys_vm86_h" = xyes])
- AM_CONDITIONAL(KDRIVEFBDEV, [test x"$ac_cv_header_linux_fb_h" = xyes])
diff --git a/meta-extras/packages/xorg-xserver/xserver-kdrive-xomap/fbdev-not-fix.patch b/meta-extras/packages/xorg-xserver/xserver-kdrive-xomap/fbdev-not-fix.patch
deleted file mode 100644
index f87e7cc2c..000000000
--- a/meta-extras/packages/xorg-xserver/xserver-kdrive-xomap/fbdev-not-fix.patch
+++ /dev/null
@@ -1,14 +0,0 @@
---- xserver/hw/kdrive/fbdev/fbdev.c~ 2004-09-15 00:08:10.000000000 +0100
-+++ xserver/hw/kdrive/fbdev/fbdev.c 2004-11-13 17:47:02.000000000 +0000
-@@ -198,6 +198,11 @@
- return FALSE;
- }
-
-+ /* Re-get the "fixed" parameters since they might have changed */
-+ k = ioctl (priv->fd, FBIOGET_FSCREENINFO, &priv->fix);
-+ if (k < 0)
-+ perror ("FBIOGET_FSCREENINFO");
-+
- /* Now get the new screeninfo */
- ioctl (priv->fd, FBIOGET_VSCREENINFO, &priv->var);
- depth = priv->var.bits_per_pixel;
diff --git a/meta-extras/packages/xorg-xserver/xserver-kdrive-xomap/fixups.patch b/meta-extras/packages/xorg-xserver/xserver-kdrive-xomap/fixups.patch
deleted file mode 100644
index 09c9e8909..000000000
--- a/meta-extras/packages/xorg-xserver/xserver-kdrive-xomap/fixups.patch
+++ /dev/null
@@ -1,446 +0,0 @@
----
- Xi/chgdctl.c | 55 +++++++++++++++++++------
- Xi/getdctl.c | 87 +++++++++++++++++++++++++++++++----------
- Xi/getdctl.h | 11 +++--
- Xi/stubs.c | 2
- configure.ac | 2
- dix/devices.c | 31 +++++++++-----
- hw/kdrive/linux/tslib.c | 8 +--
- hw/kdrive/src/kinput.c | 6 +-
- hw/xfree86/common/xf86Xinput.c | 3 -
- include/input.h | 2
- include/inputstr.h | 18 +++++++-
- 11 files changed, 162 insertions(+), 63 deletions(-)
-
-Index: xorg-server-1.1.99.3/Xi/chgdctl.c
-===================================================================
---- xorg-server-1.1.99.3.orig/Xi/chgdctl.c 2007-01-29 22:58:18.000000000 +0000
-+++ xorg-server-1.1.99.3/Xi/chgdctl.c 2007-01-29 22:59:27.000000000 +0000
-@@ -104,8 +104,10 @@ ProcXChangeDeviceControl(ClientPtr clien
- xChangeDeviceControlReply rep;
- AxisInfoPtr a;
- CARD32 *resolution;
-- xDeviceTSCtl *ts;
-+ xDeviceAbsCalibCtl *calib;
-+ xDeviceAbsAreaCtl *area;
- xDeviceCoreCtl *c;
-+ xDeviceEnableCtl *e;
-
- REQUEST(xChangeDeviceControlReq);
- REQUEST_AT_LEAST_SIZE(xChangeDeviceControlReq);
-@@ -170,25 +172,28 @@ ProcXChangeDeviceControl(ClientPtr clien
- return Success;
- }
- break;
-- case DEVICE_TOUCHSCREEN:
-- ts = (xDeviceTSCtl *)&stuff[1];
--
-- if (ts->button_threshold < 0 || ts->button_threshold > 255) {
-+ case DEVICE_ABS_CALIB:
-+ calib = (xDeviceAbsCalibCtl *)&stuff[1];
-+
-+ if (calib->button_threshold < 0 || calib->button_threshold > 255) {
- SendErrorToClient(client, IReqCode, X_ChangeDeviceControl, 0,
- BadValue);
- return Success;
- }
-
-- status = ChangeDeviceControl(client, dev, (xDeviceCtl *) ts);
-+ status = ChangeDeviceControl(client, dev, (xDeviceCtl *) calib);
-
- if (status == Success) {
-- dev->touchscreen->min_x = ts->min_x;
-- dev->touchscreen->max_x = ts->max_x;
-- dev->touchscreen->min_y = ts->min_y;
-- dev->touchscreen->max_y = ts->max_y;
-- dev->touchscreen->button_threshold = ts->button_threshold;
-- } else if (status == DeviceBusy) {
-- rep.status = DeviceBusy;
-+ dev->absolute->min_x = calib->min_x;
-+ dev->absolute->max_x = calib->max_x;
-+ dev->absolute->min_y = calib->min_y;
-+ dev->absolute->max_y = calib->max_y;
-+ dev->absolute->flip_x = calib->flip_x;
-+ dev->absolute->flip_y = calib->flip_y;
-+ dev->absolute->rotation = calib->rotation;
-+ dev->absolute->button_threshold = calib->button_threshold;
-+ } else if (status == DeviceBusy || status == BadValue) {
-+ rep.status = status;
- WriteReplyToClient(client, sizeof(xChangeDeviceControlReply),
- &rep);
- return Success;
-@@ -199,6 +204,30 @@ ProcXChangeDeviceControl(ClientPtr clien
- }
-
- break;
-+ case DEVICE_ABS_AREA:
-+ area = (xDeviceAbsAreaCtl *)&stuff[1];
-+
-+ status = ChangeDeviceControl(client, dev, (xDeviceCtl *) area);
-+
-+ if (status == Success) {
-+ dev->absolute->offset_x = area->offset_x;
-+ dev->absolute->offset_y = area->offset_y;
-+ dev->absolute->width = area->width;
-+ dev->absolute->height = area->height;
-+ dev->absolute->screen = area->screen;
-+ dev->absolute->following = area->following;
-+ } else if (status == DeviceBusy || status == BadValue) {
-+ rep.status = status;
-+ WriteReplyToClient(client, sizeof(xChangeDeviceControlReply),
-+ &rep);
-+ return Success;
-+ } else {
-+ SendErrorToClient(client, IReqCode, X_ChangeDeviceControl, 0,
-+ BadMatch);
-+ return Success;
-+ }
-+
-+ break;
- case DEVICE_CORE:
- c = (xDeviceCoreCtl *)&stuff[1];
-
-Index: xorg-server-1.1.99.3/Xi/getdctl.c
-===================================================================
---- xorg-server-1.1.99.3.orig/Xi/getdctl.c 2007-01-29 22:58:18.000000000 +0000
-+++ xorg-server-1.1.99.3/Xi/getdctl.c 2007-01-29 22:59:27.000000000 +0000
-@@ -124,14 +124,23 @@ ProcXGetDeviceControl(ClientPtr client)
- total_length = sizeof(xDeviceResolutionState) +
- (3 * sizeof(int) * dev->valuator->numAxes);
- break;
-- case DEVICE_TOUCHSCREEN:
-- if (!dev->touchscreen) {
-+ case DEVICE_ABS_CALIB:
-+ if (!dev->absolute) {
- SendErrorToClient(client, IReqCode, X_GetDeviceControl, 0,
- BadMatch);
- return Success;
- }
-
-- total_length = sizeof(xDeviceTSCtl);
-+ total_length = sizeof(xDeviceAbsCalibCtl);
-+ break;
-+ case DEVICE_ABS_AREA:
-+ if (!dev->absolute) {
-+ SendErrorToClient(client, IReqCode, X_GetDeviceControl, 0,
-+ BadMatch);
-+ return Success;
-+ }
-+
-+ total_length = sizeof(xDeviceAbsAreaCtl);
- break;
- case DEVICE_CORE:
- total_length = sizeof(xDeviceCoreCtl);
-@@ -152,8 +161,11 @@ ProcXGetDeviceControl(ClientPtr client)
- case DEVICE_RESOLUTION:
- CopySwapDeviceResolution(client, dev->valuator, buf, total_length);
- break;
-- case DEVICE_TOUCHSCREEN:
-- CopySwapDeviceTouchscreen(client, dev->touchscreen, buf);
-+ case DEVICE_ABS_CALIB:
-+ CopySwapDeviceAbsCalib(client, dev->absolute, buf);
-+ break;
-+ case DEVICE_ABS_AREA:
-+ CopySwapDeviceAbsArea(client, dev->absolute, buf);
- break;
- case DEVICE_CORE:
- CopySwapDeviceCore(client, dev, buf);
-@@ -206,28 +218,61 @@ CopySwapDeviceResolution(ClientPtr clien
- }
- }
-
--void CopySwapDeviceTouchscreen (ClientPtr client, TouchscreenClassPtr dts,
-+void CopySwapDeviceAbsCalib (ClientPtr client, AbsoluteClassPtr dts,
- char *buf)
- {
- register char n;
-- xDeviceTSState *ts = (xDeviceTSState *) buf;
-+ xDeviceAbsCalibState *calib = (xDeviceAbsCalibState *) buf;
-
-- ts->control = DEVICE_TOUCHSCREEN;
-- ts->length = sizeof(ts);
-- ts->min_x = dts->min_x;
-- ts->max_x = dts->max_x;
-- ts->min_y = dts->min_y;
-- ts->max_y = dts->max_y;
-- ts->button_threshold = dts->button_threshold;
-+ calib->control = DEVICE_ABS_CALIB;
-+ calib->length = sizeof(calib);
-+ calib->min_x = dts->min_x;
-+ calib->max_x = dts->max_x;
-+ calib->min_y = dts->min_y;
-+ calib->max_y = dts->max_y;
-+ calib->flip_x = dts->flip_x;
-+ calib->flip_y = dts->flip_y;
-+ calib->rotation = dts->rotation;
-+ calib->button_threshold = dts->button_threshold;
-
- if (client->swapped) {
-- swaps(&ts->control, n);
-- swaps(&ts->length, n);
-- swapl(&ts->min_x, n);
-- swapl(&ts->max_x, n);
-- swapl(&ts->min_y, n);
-- swapl(&ts->max_y, n);
-- swapl(&ts->button_threshold, n);
-+ swaps(&calib->control, n);
-+ swaps(&calib->length, n);
-+ swapl(&calib->min_x, n);
-+ swapl(&calib->max_x, n);
-+ swapl(&calib->min_y, n);
-+ swapl(&calib->max_y, n);
-+ swapl(&calib->flip_x, n);
-+ swapl(&calib->flip_y, n);
-+ swapl(&calib->rotation, n);
-+ swapl(&calib->button_threshold, n);
-+ }
-+}
-+
-+void CopySwapDeviceAbsArea (ClientPtr client, AbsoluteClassPtr dts,
-+ char *buf)
-+{
-+ register char n;
-+ xDeviceAbsAreaState *area = (xDeviceAbsAreaState *) buf;
-+
-+ area->control = DEVICE_ABS_AREA;
-+ area->length = sizeof(area);
-+ area->offset_x = dts->offset_x;
-+ area->offset_y = dts->offset_y;
-+ area->width = dts->width;
-+ area->height = dts->height;
-+ area->screen = dts->screen;
-+ area->following = dts->following;
-+
-+ if (client->swapped) {
-+ swaps(&area->control, n);
-+ swaps(&area->length, n);
-+ swapl(&area->offset_x, n);
-+ swapl(&area->offset_y, n);
-+ swapl(&area->width, n);
-+ swapl(&area->height, n);
-+ swapl(&area->screen, n);
-+ swapl(&area->following, n);
- }
- }
-
-Index: xorg-server-1.1.99.3/Xi/getdctl.h
-===================================================================
---- xorg-server-1.1.99.3.orig/Xi/getdctl.h 2007-01-29 22:58:18.000000000 +0000
-+++ xorg-server-1.1.99.3/Xi/getdctl.h 2007-01-29 22:59:27.000000000 +0000
-@@ -42,10 +42,13 @@ void CopySwapDeviceResolution(ClientPtr
- int /* length */
- );
-
--void CopySwapDeviceTouchscreen(ClientPtr /* client */ ,
-- TouchscreenClassPtr /* ts */ ,
-- char * /* buf */
-- );
-+void CopySwapDeviceAbsCalib (ClientPtr client,
-+ AbsoluteClassPtr dts,
-+ char *buf);
-+
-+void CopySwapDeviceAbsArea (ClientPtr client,
-+ AbsoluteClassPtr dts,
-+ char *buf);
-
- void CopySwapDeviceCore(ClientPtr /* client */ ,
- DeviceIntPtr /* dev */ ,
-Index: xorg-server-1.1.99.3/Xi/stubs.c
-===================================================================
---- xorg-server-1.1.99.3.orig/Xi/stubs.c 2007-01-29 22:58:18.000000000 +0000
-+++ xorg-server-1.1.99.3/Xi/stubs.c 2007-01-29 22:59:27.000000000 +0000
-@@ -287,7 +287,7 @@ ChangeDeviceControl(register ClientPtr c
- switch (control->control) {
- case DEVICE_RESOLUTION:
- return (BadMatch);
-- case DEVICE_TOUCHSCREEN:
-+ case DEVICE_ABS_CALIB:
- return (BadMatch);
- case DEVICE_CORE:
- return (BadMatch);
-Index: xorg-server-1.1.99.3/dix/devices.c
-===================================================================
---- xorg-server-1.1.99.3.orig/dix/devices.c 2007-01-29 22:58:18.000000000 +0000
-+++ xorg-server-1.1.99.3/dix/devices.c 2007-01-29 22:59:27.000000000 +0000
-@@ -117,7 +117,7 @@ AddInputDevice(DeviceProc deviceProc, Bo
- dev->button = (ButtonClassPtr)NULL;
- dev->focus = (FocusClassPtr)NULL;
- dev->proximity = (ProximityClassPtr)NULL;
-- dev->touchscreen = (TouchscreenClassPtr)NULL;
-+ dev->absolute = (AbsoluteClassPtr)NULL;
- dev->kbdfeed = (KbdFeedbackPtr)NULL;
- dev->ptrfeed = (PtrFeedbackPtr)NULL;
- dev->intfeed = (IntegerFeedbackPtr)NULL;
-@@ -821,22 +821,31 @@ InitValuatorClassDeviceStruct(DeviceIntP
- }
-
- _X_EXPORT Bool
--InitTouchscreenClassDeviceStruct(DeviceIntPtr dev)
-+InitAbsoluteClassDeviceStruct(DeviceIntPtr dev)
- {
-- register TouchscreenClassPtr tsc;
-+ register AbsoluteClassPtr abs;
-
-- tsc = (TouchscreenClassPtr)xalloc(sizeof(TouchscreenClassRec));
-- if (!tsc)
-+ abs = (AbsoluteClassPtr)xalloc(sizeof(AbsoluteClassRec));
-+ if (!abs)
- return FALSE;
-
- /* we don't do anything sensible with these, but should */
-- tsc->min_x = -1;
-- tsc->min_y = -1;
-- tsc->max_x = -1;
-- tsc->max_y = -1;
-+ abs->min_x = -1;
-+ abs->min_y = -1;
-+ abs->max_x = -1;
-+ abs->max_y = -1;
-+ abs->flip_x = 0;
-+ abs->flip_y = 0;
-+ abs->rotation = 0;
-+ abs->button_threshold = 0;
-
-- tsc->button_threshold = 0;
-- dev->touchscreen = tsc;
-+ abs->offset_x = 0;
-+ abs->offset_y = 0;
-+ abs->width = -1;
-+ abs->height = -1;
-+ abs->following = 0;
-+
-+ dev->absolute = abs;
-
- return TRUE;
- }
-Index: xorg-server-1.1.99.3/hw/xfree86/common/xf86Xinput.c
-===================================================================
---- xorg-server-1.1.99.3.orig/hw/xfree86/common/xf86Xinput.c 2007-01-29 22:58:18.000000000 +0000
-+++ xorg-server-1.1.99.3/hw/xfree86/common/xf86Xinput.c 2007-01-29 22:59:27.000000000 +0000
-@@ -538,7 +538,8 @@ ChangeDeviceControl (ClientPtr client, D
- switch (control->control) {
- case DEVICE_CORE:
- case DEVICE_RESOLUTION:
-- case DEVICE_TOUCHSCREEN:
-+ case DEVICE_ABS_CALIB:
-+ case DEVICE_ABS_AREA:
- return Success;
- default:
- return BadMatch;
-Index: xorg-server-1.1.99.3/include/input.h
-===================================================================
---- xorg-server-1.1.99.3.orig/include/input.h 2007-01-29 22:58:18.000000000 +0000
-+++ xorg-server-1.1.99.3/include/input.h 2007-01-29 22:59:27.000000000 +0000
-@@ -238,7 +238,7 @@ extern Bool InitValuatorClassDeviceStruc
- int /*numMotionEvents*/,
- int /*mode*/);
-
--extern Bool InitTouchscreenClassDeviceStruct(
-+extern Bool InitAbsoluteClassDeviceStruct(
- DeviceIntPtr /*device*/);
-
- extern Bool InitFocusClassDeviceStruct(
-Index: xorg-server-1.1.99.3/include/inputstr.h
-===================================================================
---- xorg-server-1.1.99.3.orig/include/inputstr.h 2007-01-29 22:58:18.000000000 +0000
-+++ xorg-server-1.1.99.3/include/inputstr.h 2007-01-29 22:59:27.000000000 +0000
-@@ -185,13 +185,25 @@ typedef struct _ProximityClassRec {
- char pad;
- } ProximityClassRec, *ProximityClassPtr;
-
--typedef struct _TouchscreenClassRec {
-+typedef struct _AbsoluteClassRec {
-+ /* Calibration. */
- int min_x;
- int max_x;
- int min_y;
- int max_y;
-+ int flip_x;
-+ int flip_y;
-+ int rotation;
- int button_threshold;
--} TouchscreenClassRec, *TouchscreenClassPtr;
-+
-+ /* Area. */
-+ int offset_x;
-+ int offset_y;
-+ int width;
-+ int height;
-+ int screen;
-+ XID following;
-+} AbsoluteClassRec, *AbsoluteClassPtr;
-
- typedef struct _KbdFeedbackClassRec *KbdFeedbackPtr;
- typedef struct _PtrFeedbackClassRec *PtrFeedbackPtr;
-@@ -293,7 +305,7 @@ typedef struct _DeviceIntRec {
- ButtonClassPtr button;
- FocusClassPtr focus;
- ProximityClassPtr proximity;
-- TouchscreenClassPtr touchscreen;
-+ AbsoluteClassPtr absolute;
- KbdFeedbackPtr kbdfeed;
- PtrFeedbackPtr ptrfeed;
- IntegerFeedbackPtr intfeed;
-Index: xorg-server-1.1.99.3/configure.ac
-===================================================================
---- xorg-server-1.1.99.3.orig/configure.ac 2007-01-29 22:58:18.000000000 +0000
-+++ xorg-server-1.1.99.3/configure.ac 2007-01-29 22:59:27.000000000 +0000
-@@ -1586,7 +1586,7 @@ if test "$KDRIVE" = yes; then
- #KDRIVE_PURE_LIBS="$DIX_LIB $OS_LIB $FB_LIB $XEXT_LIB $MIEXT_DAMAGE_LIB \
- # $MIEXT_SHADOW_LIB $XPSTUBS_LIB"
- KDRIVE_XKB_DDX_LIB='$(top_builddir)/hw/kdrive/src/libkdrivexkb.a'
-- KDRIVE_PURE_LIBS="$FB_LIB $MI_LIB $FIXES_LIB $XEXT_LIB $DBE_LIB $XTRAP_LIB $RECORD_LIB $GLX_LIBS $RENDER_LIB $RANDR_LIB $DAMAGE_LIB $MIEXT_DAMAGE_LIB $MIEXT_SHADOW_LIB $XI_LIB $KDRIVE_XKB_DDX_LIB $XKB_LIB $KDRIVE_XKB_DDX_LIB$COMPOSITE_LIB $XPSTUBS_LIB $OS_LIB $CONFIG_LIB"
-+ KDRIVE_PURE_LIBS="$FB_LIB $MI_LIB $FIXES_LIB $XEXT_LIB $DBE_LIB $XTRAP_LIB $RECORD_LIB $GLX_LIBS $RENDER_LIB $RANDR_LIB $DAMAGE_LIB $MIEXT_DAMAGE_LIB $MIEXT_SHADOW_LIB $XI_LIB $KDRIVE_XKB_DDX_LIB $XKB_LIB $KDRIVE_XKB_DDX_LIB $COMPOSITE_LIB $XPSTUBS_LIB $OS_LIB $CONFIG_LIB"
- KDRIVE_LIB='$(top_builddir)/hw/kdrive/src/libkdrive.a'
- KDRIVE_OS_LIB='$(top_builddir)/hw/kdrive/linux/liblinux.a'
- KDRIVE_STUB_LIB='$(top_builddir)/hw/kdrive/src/libkdrivestubs.a'
-Index: xorg-server-1.1.99.3/hw/kdrive/linux/tslib.c
-===================================================================
---- xorg-server-1.1.99.3.orig/hw/kdrive/linux/tslib.c 2007-01-29 22:58:18.000000000 +0000
-+++ xorg-server-1.1.99.3/hw/kdrive/linux/tslib.c 2007-01-29 22:59:27.000000000 +0000
-@@ -94,7 +94,7 @@ TsRead (int fd, void *closure)
- event.pressure);
- discard = 0;
- if (event.pressure) {
-- if (event.pressure > pi->dixdev->touchscreen->button_threshold)
-+ if (event.pressure > pi->dixdev->absolute->button_threshold)
- flags = KD_BUTTON_8;
- else
- flags = KD_BUTTON_1;
-@@ -356,9 +356,9 @@ TslibEnable (KdPointerInfo *pi)
- close(private->fd);
- return BadAlloc;
- }
-- if (pi->dixdev && pi->dixdev->touchscreen &&
-- pi->dixdev->touchscreen->button_threshold == 0)
-- pi->dixdev->touchscreen->button_threshold = 115;
-+ if (pi->dixdev && pi->dixdev->absolute &&
-+ pi->dixdev->absolute->button_threshold == 0)
-+ pi->dixdev->absolute->button_threshold = 115;
-
- DebugF("[tslib/TslibEnable] successfully enabled %s\n", pi->path);
- KdRegisterFd(private->fd, TsRead, pi);
-Index: xorg-server-1.1.99.3/hw/kdrive/src/kinput.c
-===================================================================
---- xorg-server-1.1.99.3.orig/hw/kdrive/src/kinput.c 2007-01-29 22:58:18.000000000 +0000
-+++ xorg-server-1.1.99.3/hw/kdrive/src/kinput.c 2007-01-29 22:59:27.000000000 +0000
-@@ -444,7 +444,7 @@ KdPointerProc(DeviceIntPtr pDevice, int
-
- #ifdef XINPUT
- if (pi->inputClass == KD_TOUCHSCREEN) {
-- InitTouchscreenClassDeviceStruct(pDevice);
-+ InitAbsoluteClassDeviceStruct(pDevice);
- xiclass = AtomFromName(XI_TOUCHSCREEN);
- }
- else {
-@@ -2323,8 +2323,8 @@ ChangeDeviceControl(register ClientPtr c
- /* FIXME do something more intelligent here */
- return BadMatch;
-
-- case DEVICE_TOUCHSCREEN:
-- if (!pDev->touchscreen)
-+ case DEVICE_ABS_CALIB:
-+ if (!pDev->absolute)
- return BadDevice;
- else
- return Success;
diff --git a/meta-extras/packages/xorg-xserver/xserver-kdrive-xomap/kdrive-evdev.patch b/meta-extras/packages/xorg-xserver/xserver-kdrive-xomap/kdrive-evdev.patch
deleted file mode 100644
index 06eab817b..000000000
--- a/meta-extras/packages/xorg-xserver/xserver-kdrive-xomap/kdrive-evdev.patch
+++ /dev/null
@@ -1,503 +0,0 @@
-# Kdrive evdev support patch, posted by Ander Conselvan de Oliveira at
-# http://lists.freedesktop.org/archives/xorg/2005-December/011635.html
----
-# hw/kdrive/linux/evdev.c | 385 ++++++++++++++++++++++++++++++++++++++++++++++--
-# hw/kdrive/src/kdrive.c | 9 +
-# hw/kdrive/src/kdrive.h | 4
-# 3 files changed, 386 insertions(+), 12 deletions(-)
-#
-Index: xorg-server-1.1.99.3/hw/kdrive/linux/evdev.c
-===================================================================
---- xorg-server-1.1.99.3.orig/hw/kdrive/linux/evdev.c 2006-11-03 14:49:05.000000000 +0000
-+++ xorg-server-1.1.99.3/hw/kdrive/linux/evdev.c 2007-01-25 22:05:48.000000000 +0000
-@@ -31,9 +31,11 @@
- #include <X11/X.h>
- #include <X11/Xproto.h>
- #include <X11/Xpoll.h>
-+#include <X11/keysym.h>
- #include "inputstr.h"
- #include "scrnintstr.h"
- #include "kdrive.h"
-+#include "kkeymap.h"
-
- #define NUM_EVENTS 128
- #define ABS_UNSET -65535
-@@ -107,9 +109,10 @@ EvdevRead (int evdevPort, void *closure)
- {
- KdPointerInfo *pi = closure;
- Kevdev *ke = pi->driverPrivate;
-- int i;
-+ int i, j;
- struct input_event events[NUM_EVENTS];
- int n;
-+ int flags;
-
- n = read (evdevPort, &events, NUM_EVENTS * sizeof (struct input_event));
- if (n <= 0)
-@@ -117,22 +120,64 @@ EvdevRead (int evdevPort, void *closure)
- n /= sizeof (struct input_event);
- for (i = 0; i < n; i++)
- {
-+ flags = KD_MOUSE_DELTA | kdPointerInfo->buttonState;
- switch (events[i].type) {
- case EV_SYN:
- break;
- case EV_KEY:
-- EvdevMotion (pi);
-- ASSIGNBIT(ke->key,events[i].code, events[i].value);
-- if (events[i].code < 0x100)
-- ErrorF ("key %d %d\n", events[i].code, events[i].value);
-- else
-- ErrorF ("key 0x%x %d\n", events[i].code, events[i].value);
-+ if (events[i].code >= BTN_MOUSE && events[i].code < BTN_JOYSTICK) {
-+ switch (events[i].code) {
-+ case BTN_LEFT:
-+ if (events[i].value == 1)
-+ flags |= KD_BUTTON_1;
-+ else
-+ flags &= ~KD_BUTTON_1;
-+ break;
-+ case BTN_MIDDLE:
-+ if (events[i].value == 1)
-+ flags |= KD_BUTTON_2;
-+ else
-+ flags &= ~KD_BUTTON_2;
-+ break;
-+ case BTN_RIGHT:
-+ if (events[i].value == 1)
-+ flags |= KD_BUTTON_3;
-+ else
-+ flags &= ~KD_BUTTON_3;
-+ break;
-+ default:
-+ /* Unknow button */
-+ break;
-+ }
-+ KdEnqueueMouseEvent (kdMouseInfo, flags, 0, 0);
-+ }
- break;
- case EV_REL:
-- ke->rel[events[i].code] += events[i].value;
-+ if (events[i].code == REL_X) {
-+ KdEnqueueMouseEvent (kdMouseInfo, flags, events[i].value, 0);
-+ }
-+ else if (events[i].code == REL_Y) {
-+ KdEnqueueMouseEvent (kdMouseInfo, flags, 0, events[i].value);
-+ }
-+ else if (events[i].code == REL_WHEEL) {
-+ for (j = 0; j < abs (events[i].value); j++) {
-+ if (events[i].value > 0)
-+ flags |= KD_BUTTON_4;
-+ else
-+ flags |= KD_BUTTON_5;
-+
-+ KdEnqueueMouseEvent (kdMouseInfo, flags, 0, 0);
-+
-+ if (events[i].value > 0)
-+ flags &= ~KD_BUTTON_4;
-+ else
-+ flags &= ~KD_BUTTON_5;
-+
-+ KdEnqueueMouseEvent (kdMouseInfo, flags, 0, 0);
-+ } /* events[i].code == REL_WHEEL */
-+ }
- break;
- case EV_ABS:
-- ke->abs[events[i].code] = events[i].value;
- break;
- }
- }
-@@ -162,6 +207,12 @@ EvdevInit (KdPointerInfo *pi)
- for (i = 0; i < NUM_DEFAULT_EVDEV; i++) {
- fd = open (kdefaultEvdev[i], 2);
- if (fd >= 0) {
-+ if (ioctl (fd, EVIOCGRAB, 1) < 0)
-+ {
-+ close (fd);
-+ continue;
-+ }
-+
- pi->path = KdSaveString (kdefaultEvdev[i]);
- break;
- }
-@@ -300,7 +351,319 @@ KdPointerDriver LinuxEvdevMouseDriver =
- NULL,
- };
-
--#if 0
-+/* Keyboard */
-+
-+int kbd_fd = -1;
-+int EvdevInputType = 0;
-+
-+KeySym evdevKeymap[(194 - 1 + 1) * 2] = {
-+/* These are directly mapped from DOS scanset 0 */
-+/* 1 8 */ XK_Escape, NoSymbol,
-+/* 2 9 */ XK_1, XK_exclam,
-+/* 3 10 */ XK_2, XK_at,
-+/* 4 11 */ XK_3, XK_numbersign,
-+/* 5 12 */ XK_4, XK_dollar,
-+/* 6 13 */ XK_5, XK_percent,
-+/* 7 14 */ XK_6, XK_asciicircum,
-+/* 8 15 */ XK_7, XK_ampersand,
-+/* 9 16 */ XK_8, XK_asterisk,
-+/* 10 17 */ XK_9, XK_parenleft,
-+/* 11 18 */ XK_0, XK_parenright,
-+/* 12 19 */ XK_minus, XK_underscore,
-+/* 13 20 */ XK_equal, XK_plus,
-+/* 14 21 */ XK_BackSpace, NoSymbol,
-+/* 15 22 */ XK_Tab, NoSymbol,
-+/* 16 23 */ XK_Q, NoSymbol,
-+/* 17 24 */ XK_W, NoSymbol,
-+/* 18 25 */ XK_E, NoSymbol,
-+/* 19 26 */ XK_R, NoSymbol,
-+/* 20 27 */ XK_T, NoSymbol,
-+/* 21 28 */ XK_Y, NoSymbol,
-+/* 22 29 */ XK_U, NoSymbol,
-+/* 23 30 */ XK_I, NoSymbol,
-+/* 24 31 */ XK_O, NoSymbol,
-+/* 25 32 */ XK_P, NoSymbol,
-+/* 26 33 */ XK_bracketleft, XK_braceleft,
-+/* 27 34 */ XK_bracketright, XK_braceright,
-+/* 28 35 */ XK_Return, NoSymbol,
-+/* 29 36 */ XK_Control_L, NoSymbol,
-+/* 30 37 */ XK_A, NoSymbol,
-+/* 31 38 */ XK_S, NoSymbol,
-+/* 32 39 */ XK_D, NoSymbol,
-+/* 33 40 */ XK_F, NoSymbol,
-+/* 34 41 */ XK_G, NoSymbol,
-+/* 35 42 */ XK_H, NoSymbol,
-+/* 36 43 */ XK_J, NoSymbol,
-+/* 37 44 */ XK_K, NoSymbol,
-+/* 38 45 */ XK_L, NoSymbol,
-+/* 39 46 */ XK_semicolon, XK_colon,
-+/* 40 47 */ XK_apostrophe, XK_quotedbl,
-+/* 41 48 */ XK_grave, XK_asciitilde,
-+/* 42 49 */ XK_Shift_L, NoSymbol,
-+/* 43 50 */ XK_backslash, XK_bar,
-+/* 44 51 */ XK_Z, NoSymbol,
-+/* 45 52 */ XK_X, NoSymbol,
-+/* 46 53 */ XK_C, NoSymbol,
-+/* 47 54 */ XK_V, NoSymbol,
-+/* 48 55 */ XK_B, NoSymbol,
-+/* 49 56 */ XK_N, NoSymbol,
-+/* 50 57 */ XK_M, NoSymbol,
-+/* 51 58 */ XK_comma, XK_less,
-+/* 52 59 */ XK_period, XK_greater,
-+/* 53 60 */ XK_slash, XK_question,
-+/* 54 61 */ XK_Shift_R, NoSymbol,
-+/* 55 62 */ XK_KP_Multiply, NoSymbol,
-+/* 56 63 */ XK_Alt_L, XK_Meta_L,
-+/* 57 64 */ XK_space, NoSymbol,
-+/* 58 65 */ XK_Caps_Lock, NoSymbol,
-+/* 59 66 */ XK_F1, NoSymbol,
-+/* 60 67 */ XK_F2, NoSymbol,
-+/* 61 68 */ XK_F3, NoSymbol,
-+/* 62 69 */ XK_F4, NoSymbol,
-+/* 63 70 */ XK_F5, NoSymbol,
-+/* 64 71 */ XK_F6, NoSymbol,
-+/* 65 72 */ XK_F7, NoSymbol,
-+/* 66 73 */ XK_F8, NoSymbol,
-+/* 67 74 */ XK_F9, NoSymbol,
-+/* 68 75 */ XK_F10, NoSymbol,
-+/* 69 76 */ XK_Break, XK_Pause,
-+/* 70 77 */ XK_Scroll_Lock, NoSymbol,
-+/* 71 78 */ XK_KP_Home, XK_KP_7,
-+/* 72 79 */ XK_KP_Up, XK_KP_8,
-+/* 73 80 */ XK_KP_Page_Up, XK_KP_9,
-+/* 74 81 */ XK_KP_Subtract, NoSymbol,
-+/* 75 82 */ XK_KP_Left, XK_KP_4,
-+/* 76 83 */ XK_KP_5, NoSymbol,
-+/* 77 84 */ XK_KP_Right, XK_KP_6,
-+/* 78 85 */ XK_KP_Add, NoSymbol,
-+/* 79 86 */ XK_KP_End, XK_KP_1,
-+/* 80 87 */ XK_KP_Down, XK_KP_2,
-+/* 81 88 */ XK_KP_Page_Down, XK_KP_3,
-+/* 82 89 */ XK_KP_Insert, XK_KP_0,
-+/* 83 90 */ XK_KP_Delete, XK_KP_Decimal,
-+/* 84 91 */ NoSymbol, NoSymbol,
-+/* 85 92 */ NoSymbol, NoSymbol,
-+/* 86 93 */ NoSymbol, NoSymbol,
-+/* 87 94 */ XK_F11, NoSymbol,
-+/* 88 95 */ XK_F12, NoSymbol,
-+
-+/* These are remapped from the extended set (using ExtendMap) */
-+
-+/* 89 96 */ XK_Control_R, NoSymbol,
-+/* 90 97 */ XK_KP_Enter, NoSymbol,
-+/* 91 98 */ XK_KP_Divide, NoSymbol,
-+/* 92 99 */ XK_Sys_Req, XK_Print,
-+/* 93 100 */ XK_Alt_R, XK_Meta_R,
-+/* 94 101 */ XK_Num_Lock, NoSymbol,
-+/* 95 102 */ XK_Home, NoSymbol,
-+/* 96 103 */ XK_Up, NoSymbol,
-+/* 97 104 */ XK_Page_Up, NoSymbol,
-+/* 98 105 */ XK_Left, NoSymbol,
-+/* 99 106 */ XK_Right, NoSymbol,
-+/* 100 107 */ XK_End, NoSymbol,
-+/* 101 108 */ XK_Down, NoSymbol,
-+/* 102 109 */ XK_Page_Down, NoSymbol,
-+/* 103 110 */ XK_Insert, NoSymbol,
-+/* 104 111 */ XK_Delete, NoSymbol,
-+/* 105 112 */ XK_Super_L, NoSymbol,
-+/* 106 113 */ XK_Super_R, NoSymbol,
-+/* 107 114 */ XK_Menu, NoSymbol,
-+/* 108 115 */ NoSymbol, NoSymbol,
-+/* 109 116 */ NoSymbol, NoSymbol,
-+/* 110 117 */ NoSymbol, NoSymbol,
-+/* 111 118 */ NoSymbol, NoSymbol,
-+/* 112 119 */ NoSymbol, NoSymbol,
-+
-+/* 113 120 */ NoSymbol, NoSymbol,
-+/* 114 121 */ NoSymbol, NoSymbol,
-+/* 115 122 */ NoSymbol, NoSymbol,
-+/* 116 123 */ NoSymbol, NoSymbol,
-+/* 117 124 */ NoSymbol, NoSymbol,
-+/* 118 125 */ NoSymbol, NoSymbol,
-+/* 119 126 */ NoSymbol, NoSymbol,
-+/* 120 127 */ NoSymbol, NoSymbol,
-+/* 121 128 */ NoSymbol, NoSymbol,
-+/* 122 129 */ NoSymbol, NoSymbol,
-+/* 123 130 */ NoSymbol, NoSymbol,
-+/* 124 131 */ NoSymbol, NoSymbol,
-+/* 125 132 */ NoSymbol, NoSymbol,
-+/* 126 133 */ NoSymbol, NoSymbol,
-+/* 127 134 */ NoSymbol, NoSymbol,
-+/* 128 135 */ NoSymbol, NoSymbol,
-+/* 129 136 */ NoSymbol, NoSymbol,
-+/* 130 137 */ NoSymbol, NoSymbol,
-+/* 131 138 */ NoSymbol, NoSymbol,
-+/* 132 139 */ NoSymbol, NoSymbol,
-+/* 133 140 */ NoSymbol, NoSymbol,
-+/* 134 141 */ NoSymbol, NoSymbol,
-+/* 135 142 */ NoSymbol, NoSymbol,
-+/* 136 143 */ NoSymbol, NoSymbol,
-+/* 137 144 */ NoSymbol, NoSymbol,
-+/* 138 145 */ NoSymbol, NoSymbol,
-+/* 139 146 */ NoSymbol, NoSymbol,
-+/* 140 147 */ NoSymbol, NoSymbol,
-+/* 141 148 */ NoSymbol, NoSymbol,
-+/* 142 149 */ NoSymbol, NoSymbol,
-+/* 143 150 */ NoSymbol, NoSymbol,
-+/* 144 151 */ NoSymbol, NoSymbol,
-+/* 145 152 */ NoSymbol, NoSymbol,
-+/* 146 153 */ NoSymbol, NoSymbol,
-+/* 147 154 */ NoSymbol, NoSymbol,
-+/* 148 155 */ NoSymbol, NoSymbol,
-+/* 149 156 */ NoSymbol, NoSymbol,
-+/* 150 157 */ NoSymbol, NoSymbol,
-+/* 151 158 */ NoSymbol, NoSymbol,
-+/* 152 159 */ NoSymbol, NoSymbol,
-+/* 153 160 */ NoSymbol, NoSymbol,
-+/* 154 161 */ NoSymbol, NoSymbol,
-+/* 155 162 */ NoSymbol, NoSymbol,
-+/* 156 163 */ NoSymbol, NoSymbol,
-+/* 157 164 */ NoSymbol, NoSymbol,
-+/* 158 165 */ NoSymbol, NoSymbol,
-+/* 159 166 */ NoSymbol, NoSymbol,
-+/* 160 167 */ NoSymbol, NoSymbol,
-+/* 161 168 */ NoSymbol, NoSymbol,
-+/* 162 169 */ NoSymbol, NoSymbol,
-+/* 163 170 */ NoSymbol, NoSymbol,
-+/* 164 171 */ NoSymbol, NoSymbol,
-+/* 165 172 */ NoSymbol, NoSymbol,
-+/* 166 173 */ NoSymbol, NoSymbol,
-+/* 167 174 */ NoSymbol, NoSymbol,
-+/* 168 175 */ NoSymbol, NoSymbol,
-+/* 169 176 */ NoSymbol, NoSymbol,
-+/* 170 177 */ NoSymbol, NoSymbol,
-+/* 171 178 */ NoSymbol, NoSymbol,
-+/* 172 179 */ NoSymbol, NoSymbol,
-+/* 173 180 */ NoSymbol, NoSymbol,
-+/* 174 181 */ NoSymbol, NoSymbol,
-+/* 175 182 */ NoSymbol, NoSymbol,
-+/* 176 183 */ NoSymbol, NoSymbol,
-+/* 177 184 */ NoSymbol, NoSymbol,
-+/* 178 185 */ NoSymbol, NoSymbol,
-+/* 179 186 */ NoSymbol, NoSymbol,
-+/* 180 187 */ NoSymbol, NoSymbol,
-+/* 181 188 */ NoSymbol, NoSymbol,
-+/* 182 189 */ NoSymbol, NoSymbol,
-+/* 183 190 */ NoSymbol, NoSymbol,
-+/* 184 191 */ NoSymbol, NoSymbol,
-+/* 185 192 */ NoSymbol, NoSymbol,
-+/* 186 193 */ NoSymbol, NoSymbol,
-+/* 187 194 */ NoSymbol, NoSymbol,
-+/* 188 195 */ NoSymbol, NoSymbol,
-+/* 189 196 */ NoSymbol, NoSymbol,
-+/* 190 197 */ NoSymbol, NoSymbol,
-+/* 191 198 */ NoSymbol, NoSymbol,
-+/* 192 199 */ NoSymbol, NoSymbol,
-+/* 193 200 */ NoSymbol, NoSymbol,
-+/* 194 201 */ NoSymbol, NoSymbol,
-+};
-+
-+static void
-+EvdevKbdRead (int fd, void *closure)
-+{
-+ int i, n;
-+ struct input_event events[NUM_EVENTS];
-+
-+ n = read (fd, &events, NUM_EVENTS * sizeof (struct input_event));
-+ if (n <= 0)
-+ return;
-+
-+ n /= sizeof (struct input_event);
-+
-+ for (i = 0; i < n; i++)
-+ {
-+ if (events[i].type == EV_KEY)
-+ KdEnqueueKeyboardEvent (events[i].code, !events[i].value);
-+ }
-+}
-+
-+static void
-+EvdevKbdLoad (void)
-+{
-+ kdMinScanCode = 0;
-+ kdMaxScanCode = 193;
-+ kdKeymapWidth = 2;
-+ memcpy (kdKeymap, evdevKeymap, sizeof (evdevKeymap));
-+}
-+
-+static int
-+EvdevKbdInit (void)
-+{
-+ int fd, i;
-+
-+ if (!EvdevInputType)
-+ EvdevInputType = KdAllocInputType ();
-+
-+ if (!kdKeyboard)
-+ {
-+ for (i = 0; i < NUM_DEFAULT_EVDEV; i++)
-+ {
-+ fd = open (kdefaultEvdev[i], 2);
-+ if (fd >= 0)
-+ {
-+ kdKeyboard = KdSaveString (kdefaultEvdev[i]);
-+ break;
-+ }
-+ }
-+ }
-+ else
-+ {
-+ fd = open (kdKeyboard, O_RDWR);
-+ if (fd < 0)
-+ return FALSE;
-+ }
-+
-+ if (ioctl (fd, EVIOCGRAB, 1) < 0)
-+ {
-+ close (fd);
-+ return FALSE;
-+ }
-+
-+ if (!KdRegisterFd (EvdevInputType, fd, EvdevKbdRead, NULL))
-+ return FALSE;
-+
-+ kbd_fd = fd;
-+ return TRUE;
-+}
-+
-+static void
-+EvdevKbdFini (void)
-+{
-+}
-+
-+static void
-+EvdevKbdLeds (int leds)
-+{
-+ struct input_event event;
-+
-+ memset(&event, 0, sizeof(event));
-+
-+ event.type = EV_LED;
-+ event.code = LED_CAPSL;
-+ event.value = leds & (1 << 0) ? 1 : 0;
-+ write(kbd_fd, (char *) &event, sizeof(event));
-+
-+ event.type = EV_LED;
-+ event.code = LED_NUML;
-+ event.value = leds & (1 << 1) ? 1 : 0;
-+ write(kbd_fd, (char *) &event, sizeof(event));
-+
-+ event.type = EV_LED;
-+ event.code = LED_SCROLLL;
-+ event.value = leds & (1 << 2) ? 1 : 0;
-+ write(kbd_fd, (char *) &event, sizeof(event));
-+
-+ event.type = EV_LED;
-+ event.code = LED_COMPOSE;
-+ event.value = leds & (1 << 3) ? 1 : 0;
-+ write(kbd_fd, (char *) &event, sizeof(event));
-+}
-+
-+static void
-+EvdevKbdBell (int volume, int frequency, int duration)
-+{
-+}
-+
- KdKeyboardFuncs LinuxEvdevKeyboardFuncs = {
- EvdevKbdLoad,
- EvdevKbdInit,
-@@ -309,4 +672,4 @@ KdKeyboardFuncs LinuxEvdevKeyboardFuncs
- EvdevKbdFini,
- 0,
- };
--#endif
-+
-Index: xorg-server-1.1.99.3/hw/kdrive/src/kdrive.c
-===================================================================
---- xorg-server-1.1.99.3.orig/hw/kdrive/src/kdrive.c 2006-11-03 14:49:05.000000000 +0000
-+++ xorg-server-1.1.99.3/hw/kdrive/src/kdrive.c 2007-01-25 21:56:32.000000000 +0000
-@@ -80,6 +80,7 @@ Bool kdDontZap;
- Bool kdEnabled;
- int kdSubpixelOrder;
- int kdVirtualTerminal = -1;
-+char *kdKeyboard = 0;
- Bool kdSwitchPending;
- char *kdSwitchCmd;
- DDXPointRec kdOrigin;
-@@ -707,6 +708,14 @@ KdProcessArgument (int argc, char **argv
- UseMsg ();
- return 2;
- }
-+ if (!strcmp (argv[i], "-keyboard"))
-+ {
-+ if ((i+1) < argc)
-+ kdKeyboard = argv[i+1];
-+ else
-+ UseMsg ();
-+ return 2;
-+ }
- if (!strcmp (argv[i], "-rgba"))
- {
- if ((i+1) < argc)
-Index: xorg-server-1.1.99.3/hw/kdrive/src/kdrive.h
-===================================================================
---- xorg-server-1.1.99.3.orig/hw/kdrive/src/kdrive.h 2006-11-03 14:49:05.000000000 +0000
-+++ xorg-server-1.1.99.3/hw/kdrive/src/kdrive.h 2007-01-25 21:58:26.000000000 +0000
-@@ -512,6 +512,7 @@ extern Bool kdEmulateMiddleButton;
- extern Bool kdDisableZaphod;
- extern Bool kdDontZap;
- extern int kdVirtualTerminal;
-+extern char *kdKeyboard;
- extern char *kdSwitchCmd;
- extern KdOsFuncs *kdOsFuncs;
-
-@@ -875,12 +876,13 @@ void
- ProcessInputEvents (void);
-
- extern KdPointerDriver LinuxMouseDriver;
--extern KdPointerDriver LinuxEvdevDriver;
-+extern KdPointerDriver LinuxEvdevMouseFuncs;
- extern KdPointerDriver Ps2MouseDriver;
- extern KdPointerDriver BusMouseDriver;
- extern KdPointerDriver MsMouseDriver;
- extern KdPointerDriver TsDriver;
- extern KdKeyboardDriver LinuxKeyboardDriver;
-+extern KdKeyboardFuncs LinuxEvdevKeyboardFuncs;
- extern KdOsFuncs LinuxFuncs;
-
- extern KdPointerDriver VxWorksMouseDriver;
diff --git a/meta-extras/packages/xorg-xserver/xserver-kdrive-xomap/kdrive-use-evdev.patch b/meta-extras/packages/xorg-xserver/xserver-kdrive-xomap/kdrive-use-evdev.patch
deleted file mode 100644
index d4f885ee2..000000000
--- a/meta-extras/packages/xorg-xserver/xserver-kdrive-xomap/kdrive-use-evdev.patch
+++ /dev/null
@@ -1,53 +0,0 @@
---- xserver/hw/kdrive/fbdev/fbinit.c~ 2006-01-31 17:09:33.000000000 +0100
-+++ xserver/hw/kdrive/fbdev/fbinit.c 2006-01-31 17:11:55.000000000 +0100
-@@ -28,6 +28,8 @@
- #endif
- #include <fbdev.h>
-
-+extern int use_evdev;
-+
- void
- InitCard (char *name)
- {
-@@ -45,7 +47,10 @@
- void
- InitInput (int argc, char **argv)
- {
-- KdInitInput (&LinuxMouseFuncs, &LinuxKeyboardFuncs);
-+ if (use_evdev)
-+ KdInitInput (&LinuxEvdevMouseFuncs, &LinuxEvdevKeyboardFuncs);
-+ else
-+ KdInitInput (&LinuxMouseFuncs, &LinuxKeyboardFuncs);
- #ifdef TOUCHSCREEN
- KdAddMouseDriver (&TsFuncs);
- #endif
---- xserver/hw/kdrive/src/kdrive.c.orig 2006-01-31 17:13:28.000000000 +0100
-+++ xserver/hw/kdrive/src/kdrive.c 2006-01-31 17:15:28.000000000 +0100
-@@ -44,6 +44,8 @@
- #include "dpmsproc.h"
- #endif
-
-+int use_evdev = 0;
-+
- typedef struct _kdDepths {
- CARD8 depth;
- CARD8 bpp;
-@@ -687,6 +689,7 @@
- ErrorF("-videoTest Start the server, pause momentarily and exit\n");
- ErrorF("-origin X,Y Locates the next screen in the the virtual screen (Xinerama)\n");
- ErrorF("-mouse path[,n] Filename of mouse device, n is number of buttons\n");
-+ ErrorF("-use-evdev Use Linux evdev input\n");
- ErrorF("-switchCmd Command to execute on vt switch\n");
- ErrorF("-nozap Don't terminate server on Ctrl+Alt+Backspace\n");
- ErrorF("vtxx Use virtual terminal xx instead of the next available\n");
-@@ -796,6 +799,10 @@
- UseMsg ();
- return 2;
- }
-+ if (!strcmp (argv[i], "-use-evdev"))
-+ {
-+ use_evdev = 1;
-+ }
- if (!strcmp (argv[i], "-keyboard"))
- {
- if ((i+1) < argc)
diff --git a/meta-extras/packages/xorg-xserver/xserver-kdrive-xomap/kmode.patch b/meta-extras/packages/xorg-xserver/xserver-kdrive-xomap/kmode.patch
deleted file mode 100644
index 23a0f7eae..000000000
--- a/meta-extras/packages/xorg-xserver/xserver-kdrive-xomap/kmode.patch
+++ /dev/null
@@ -1,43 +0,0 @@
----
- hw/kdrive/src/kmode.c | 21 +++++++++++++++++++++
- 1 file changed, 21 insertions(+)
-
-Index: xorg-server-1.1.99.3/hw/kdrive/src/kmode.c
-===================================================================
---- xorg-server-1.1.99.3.orig/hw/kdrive/src/kmode.c 2007-01-25 23:53:59.000000000 +0000
-+++ xorg-server-1.1.99.3/hw/kdrive/src/kmode.c 2007-01-27 17:17:09.000000000 +0000
-@@ -41,6 +41,11 @@ const KdMonitorTiming kdMonitorTimings[
- 1, 11, 14, KdSyncNegative,
- },
-
-+ { 240, 320, 64, 0,
-+ 0, 0, 0, KdSyncNegative,
-+ 0, 0, 0, KdSyncNegative,
-+ },
-+
- /* Other VESA modes */
- { 640, 350, 85, 31500, /* VESA */
- 32, 96, 192, KdSyncPositive, /* 26.413 */
-@@ -80,6 +85,22 @@ const KdMonitorTiming kdMonitorTimings[
- 16, 48, 160, KdSyncNegative, /* 31.469 */
- 10, 33, 45, KdSyncNegative, /* 59.940 */
- },
-+
-+
-+ { 480, 640, 60, 0,
-+ 0, 0, 0, KdSyncNegative,
-+ 0, 0, 0, KdSyncNegative,
-+ },
-+
-+ { 800, 480, 51, 0,
-+ 0, 0, 0, KdSyncNegative,
-+ 0, 0, 0, KdSyncNegative,
-+ },
-+
-+ { 480, 800, 51, 0,
-+ 0, 0, 0, KdSyncNegative,
-+ 0, 0, 0, KdSyncNegative,
-+ },
-
- /* 800x600 modes */
- { 800, 600, 85, 56250, /* VESA */
diff --git a/meta-extras/packages/xorg-xserver/xserver-kdrive-xomap/no-serial-probing.patch b/meta-extras/packages/xorg-xserver/xserver-kdrive-xomap/no-serial-probing.patch
deleted file mode 100644
index 35ccadaa8..000000000
--- a/meta-extras/packages/xorg-xserver/xserver-kdrive-xomap/no-serial-probing.patch
+++ /dev/null
@@ -1,13 +0,0 @@
---- xserver/hw/kdrive/linux/mouse.c.orig 2004-05-13 14:25:51.000000000 -0700
-+++ xserver/hw/kdrive/linux/mouse.c 2005-09-22 12:20:47.000000000 -0700
-@@ -927,8 +927,10 @@ char *kdefaultMouse[] = {
- "/dev/psaux",
- "/dev/input/mice",
- "/dev/adbmouse",
-+#ifdef BREAK_MY_SERIAL_CONSOLE
- "/dev/ttyS0",
- "/dev/ttyS1",
-+#endif
- };
-
- #define NUM_DEFAULT_MOUSE (sizeof (kdefaultMouse) / sizeof (kdefaultMouse[0]))
diff --git a/meta-extras/packages/xorg-xserver/xserver-kdrive-xomap/xcalibrate.patch b/meta-extras/packages/xorg-xserver/xserver-kdrive-xomap/xcalibrate.patch
deleted file mode 100644
index 2a10f13d4..000000000
--- a/meta-extras/packages/xorg-xserver/xserver-kdrive-xomap/xcalibrate.patch
+++ /dev/null
@@ -1,73 +0,0 @@
----
- Xext/Makefile.am | 5
- Xext/xcalibrate.c | 262 +++++++++++++++++++++++++++++++++++++++++++++
- configure.ac | 8 +
- include/kdrive-config.h.in | 3
- mi/miinitext.c | 6 +
- 5 files changed, 283 insertions(+), 1 deletion(-)
-
-Index: xorg-server-1.1.99.3/mi/miinitext.c
-===================================================================
---- xorg-server-1.1.99.3.orig/mi/miinitext.c 2006-11-03 14:49:06.000000000 +0000
-+++ xorg-server-1.1.99.3/mi/miinitext.c 2007-01-27 17:59:40.000000000 +0000
-@@ -368,6 +368,9 @@ extern void ResExtensionInit(INITARGS);
- #ifdef DMXEXT
- extern void DMXExtensionInit(INITARGS);
- #endif
-+#ifdef XCALIBRATE
-+extern void XCalibrateExtensionInit(INITARGS);
-+#endif
- #ifdef XEVIE
- extern void XevieExtensionInit(INITARGS);
- #endif
-@@ -662,6 +665,9 @@ InitExtensions(argc, argv)
- #ifdef XSP
- if (!noXspExtension) XSPExtensionInit();
- #endif
-+#ifdef XCALIBRATE
-+ XCalibrateExtensionInit ();
-+#endif
- }
-
- void
-Index: xorg-server-1.1.99.3/configure.ac
-===================================================================
---- xorg-server-1.1.99.3.orig/configure.ac 2006-11-03 14:49:05.000000000 +0000
-+++ xorg-server-1.1.99.3/configure.ac 2007-01-29 22:58:18.000000000 +0000
-@@ -1584,7 +1590,7 @@ if test "$KDRIVE" = yes; then
- KDRIVE_LIB='$(top_builddir)/hw/kdrive/src/libkdrive.a'
- KDRIVE_OS_LIB='$(top_builddir)/hw/kdrive/linux/liblinux.a'
- KDRIVE_STUB_LIB='$(top_builddir)/hw/kdrive/src/libkdrivestubs.a'
-- KDRIVE_LIBS="$XSERVERLIBS_LIBS $DIX_LIB $XSP_LIB $KDRIVE_LIB $TSLIB_LIBS $KDRIVE_OS_LIB $KDRIVE_PURE_LIBS $KDRIVE_STUB_LIB"
-+ KDRIVE_LIBS="$XSERVERLIBS_LIBS $DIX_LIB $XSP_LIB $KDRIVE_LIB $TSLIB_LIBS $KDRIVE_PURE_LIBS $KDRIVE_OS_LIB $KDRIVE_STUB_LIB"
-
- # check if we can build Xephyr
- PKG_CHECK_MODULES(XEPHYR, x11 xext xfont xau xdmcp, [xephyr="yes"], [xephyr="no"])
-Index: xorg-server-1.1.99.3/include/kdrive-config.h.in
-===================================================================
---- xorg-server-1.1.99.3.orig/include/kdrive-config.h.in 2006-11-03 14:49:06.000000000 +0000
-+++ xorg-server-1.1.99.3/include/kdrive-config.h.in 2007-01-27 17:59:40.000000000 +0000
-@@ -28,4 +28,7 @@
- /* Have the backtrace() functiln. */
- #undef HAVE_BACKTRACE
-
-+/* Enable XCalibrate extension */
-+#undef XCALIBRATE
-+
- #endif /* _KDRIVE_CONFIG_H_ */
-Index: xorg-server-1.1.99.3/Xext/Makefile.am
-===================================================================
---- xorg-server-1.1.99.3.orig/Xext/Makefile.am 2006-11-03 14:49:05.000000000 +0000
-+++ xorg-server-1.1.99.3/Xext/Makefile.am 2007-01-29 22:58:33.000000000 +0000
-@@ -81,6 +81,11 @@ BUILTIN_SRCS += $(XCALIBRATE_SRCS)
- # XCalibrare needs tslib
- endif
-
-+XCALIBRATE_SRCS = xcalibrate.c
-+if XCALIBRATE
-+BUILTIN_SRCS += $(XCALIBRATE_SRCS)
-+endif
-+
- # X EVent Interception Extension: allows accessibility helpers & composite
- # managers to intercept events from input devices and transform as needed
- # before the clients see them.
diff --git a/meta-extras/packages/xorg-xserver/xserver-kdrive-xomap/xcalibrate_coords.patch b/meta-extras/packages/xorg-xserver/xserver-kdrive-xomap/xcalibrate_coords.patch
deleted file mode 100644
index fbe89b16b..000000000
--- a/meta-extras/packages/xorg-xserver/xserver-kdrive-xomap/xcalibrate_coords.patch
+++ /dev/null
@@ -1,122 +0,0 @@
----
- Xext/xcalibrate.c | 47 ++++++++++++++++++++++++++++++++++++++++++++++-
- hw/kdrive/src/kdrive.h | 3 +++
- hw/kdrive/src/kinput.c | 12 ++++++++++++
- 3 files changed, 61 insertions(+), 1 deletion(-)
-
-Index: xorg-server-1.1.99.3/Xext/xcalibrate.c
-===================================================================
---- xorg-server-1.1.99.3.orig/Xext/xcalibrate.c 2007-06-30 16:27:13.000000000 +0100
-+++ xorg-server-1.1.99.3/Xext/xcalibrate.c 2007-06-30 16:27:15.000000000 +0100
-@@ -166,7 +166,6 @@ ProcXCalibrateSetRawMode (ClientPtr clie
- return (client->noClientException);
- }
-
--
- static int
- SProcXCalibrateSetRawMode (ClientPtr client)
- {
-@@ -180,6 +179,47 @@ SProcXCalibrateSetRawMode (ClientPtr cli
- return ProcXCalibrateSetRawMode(client);
- }
-
-+static int
-+ProcXCalibrateScreenToCoord (ClientPtr client)
-+{
-+ REQUEST(xXCalibrateScreenToCoordReq);
-+ xXCalibrateScreenToCoordReply rep;
-+
-+ REQUEST_SIZE_MATCH (xXCalibrateScreenToCoordReq);
-+
-+ memset (&rep, 0, sizeof (rep));
-+ rep.type = X_Reply;
-+ rep.sequenceNumber = client->sequence;
-+ rep.x = stuff->x;
-+ rep.y = stuff->y;
-+
-+ KdScreenToMouseCoords(&rep.x, &rep.y);
-+
-+ if (client->swapped)
-+ {
-+ int n;
-+
-+ swaps (&rep.x, n);
-+ swaps (&rep.y, n);
-+ }
-+ WriteToClient(client, sizeof (rep), (char *) &rep);
-+ return (client->noClientException);
-+}
-+
-+static int
-+SProcXCalibrateScreenToCoord (ClientPtr client)
-+{
-+ REQUEST(xXCalibrateScreenToCoordReq);
-+ int n;
-+
-+ REQUEST_SIZE_MATCH (xXCalibrateScreenToCoordReq);
-+
-+ swaps(&stuff->x, n);
-+ swaps(&stuff->y, n);
-+
-+ return ProcXCalibrateScreenToCoord(client);
-+}
-+
- static void
- XCalibrateResetProc (ExtensionEntry *extEntry)
- {
-@@ -194,6 +234,9 @@ ProcXCalibrateDispatch (ClientPtr client
- return ProcXCalibrateQueryVersion(client);
- case X_XCalibrateRawMode:
- return ProcXCalibrateSetRawMode(client);
-+ case X_XCalibrateScreenToCoord:
-+ return ProcXCalibrateScreenToCoord(client);
-+
- default: break;
- }
-
-@@ -213,6 +256,8 @@ SProcXCalibrateDispatch (ClientPtr clien
- return SProcXCalibrateQueryVersion(client);
- case X_XCalibrateRawMode:
- return SProcXCalibrateSetRawMode(client);
-+ case X_XCalibrateScreenToCoord:
-+ return SProcXCalibrateScreenToCoord(client);
-
- default: break;
- }
-Index: xorg-server-1.1.99.3/hw/kdrive/src/kdrive.h
-===================================================================
---- xorg-server-1.1.99.3.orig/hw/kdrive/src/kdrive.h 2007-06-30 16:27:13.000000000 +0100
-+++ xorg-server-1.1.99.3/hw/kdrive/src/kdrive.h 2007-06-30 16:30:40.000000000 +0100
-@@ -851,6 +851,9 @@ void
- KdSetPointerMatrix (KdPointerMatrix *pointer);
-
- void
-+KdScreenToMouseCoords (int *x, int *y);
-+
-+void
- KdComputePointerMatrix (KdPointerMatrix *pointer, Rotation randr, int width, int height);
-
- void
-Index: xorg-server-1.1.99.3/hw/kdrive/src/kinput.c
-===================================================================
---- xorg-server-1.1.99.3.orig/hw/kdrive/src/kinput.c 2007-06-30 16:27:14.000000000 +0100
-+++ xorg-server-1.1.99.3/hw/kdrive/src/kinput.c 2007-06-30 16:30:16.000000000 +0100
-@@ -570,6 +570,18 @@ KdSetPointerMatrix (KdPointerMatrix *mat
- }
-
- void
-+KdScreenToMouseCoords (int *x, int *y)
-+{
-+ int (*m)[3] = kdPointerMatrix.matrix;
-+ int div = m[0][1] * m[1][0] - m[1][1] * m[0][0];
-+ int sx = *x;
-+ int sy = *y;
-+
-+ *x = (m[0][1] * sy - m[0][1] * m[1][2] + m[1][1] * m[0][2] - m[1][1] * sx) / div;
-+ *y = (m[1][0] * sx + m[0][0] * m[1][2] - m[1][0] * m[0][2] - m[0][0] * sy) / div;
-+}
-+
-+void
- KdComputePointerMatrix (KdPointerMatrix *m, Rotation randr, int width,
- int height)
- {
diff --git a/meta-extras/packages/xorg-xserver/xserver-kdrive-xomap/xfbdev-fb-opt.patch b/meta-extras/packages/xorg-xserver/xserver-kdrive-xomap/xfbdev-fb-opt.patch
deleted file mode 100644
index a8f002ea2..000000000
--- a/meta-extras/packages/xorg-xserver/xserver-kdrive-xomap/xfbdev-fb-opt.patch
+++ /dev/null
@@ -1,82 +0,0 @@
----
- hw/kdrive/fbdev/fbdev.c | 17 ++++++++++++-----
- hw/kdrive/fbdev/fbdev.h | 1 +
- hw/kdrive/fbdev/fbinit.c | 20 ++++++++++++++++----
- 3 files changed, 29 insertions(+), 9 deletions(-)
-
---- xorg-server-X11R7.1-1.1.0.orig/hw/kdrive/fbdev/fbdev.c
-+++ xorg-server-X11R7.1-1.1.0/hw/kdrive/fbdev/fbdev.c
-@@ -33,16 +33,23 @@
-
- extern int KdTsPhyScreen;
-
-+char *fbdevDevicePath = NULL;
- Bool
- fbdevInitialize (KdCardInfo *card, FbdevPriv *priv)
- {
- int k;
- unsigned long off;
-- if ((priv->fd = open("/dev/fb0", O_RDWR)) < 0 && \
-- (priv->fd = open("/dev/fb/0", O_RDWR)) < 0) {
-- perror("Error opening /dev/fb0");
-- return FALSE;
-- }
-+
-+ if (fbdevDevicePath == NULL)
-+ fbdevDevicePath = "/dev/fb0";
-+
-+ if ((priv->fd = open(fbdevDevicePath, O_RDWR)) < 0)
-+ {
-+ ErrorF("Error opening framebuffer %s: %s\n",
-+ fbdevDevicePath, strerror(errno));
-+ return FALSE;
-+ }
-+
- /* quiet valgrind */
- memset (&priv->fix, '\0', sizeof (priv->fix));
- if ((k=ioctl(priv->fd, FBIOGET_FSCREENINFO, &priv->fix)) < 0) {
---- xorg-server-X11R7.1-1.1.0.orig/hw/kdrive/fbdev/fbdev.h
-+++ xorg-server-X11R7.1-1.1.0/hw/kdrive/fbdev/fbdev.h
-@@ -53,6 +53,7 @@ typedef struct _fbdevScrPriv {
- } FbdevScrPriv;
-
- extern KdCardFuncs fbdevFuncs;
-+extern char* fbdevDevicePath;
-
- Bool
- fbdevInitialize (KdCardInfo *card, FbdevPriv *priv);
---- xorg-server-X11R7.1-1.1.0.orig/hw/kdrive/fbdev/fbinit.c
-+++ xorg-server-X11R7.1-1.1.0/hw/kdrive/fbdev/fbinit.c
-@@ -59,16 +59,28 @@ InitInput (int argc, char **argv)
- void
- ddxUseMsg (void)
- {
-- KdUseMsg();
-+ KdUseMsg();
-+ ErrorF("\nXfbdev Device Usage:\n");
-+ ErrorF("-fb path Framebuffer device to use. Defaults to /dev/fb0\n");
-+ ErrorF("\n");
- }
-
- int
- ddxProcessArgument (int argc, char **argv, int i)
- {
-- return KdProcessArgument (argc, argv, i);
--}
--
-+ if (!strcmp (argv[i], "-fb"))
-+ {
-+ if (i+1 < argc)
-+ {
-+ fbdevDevicePath = argv[i+1];
-+ return 2;
-+ }
-+ UseMsg();
-+ exit(1);
-+ }
-
-+ return KdProcessArgument (argc, argv, i);
-+}
-
- KdCardFuncs fbdevFuncs = {
- fbdevCardInit, /* cardinit */
diff --git a/meta-extras/packages/xorg-xserver/xserver-kdrive-xomap_1.1.99.3.bb b/meta-extras/packages/xorg-xserver/xserver-kdrive-xomap_1.1.99.3.bb
deleted file mode 100644
index d1e955f9d..000000000
--- a/meta-extras/packages/xorg-xserver/xserver-kdrive-xomap_1.1.99.3.bb
+++ /dev/null
@@ -1,52 +0,0 @@
-LICENSE = "MIT"
-DEPENDS = "tslib xproto libxdmcp xextproto xtrans libxau virtual/libx11 libxext libxrandr fixesproto damageproto libxfont resourceproto compositeproto calibrateproto recordproto videoproto scrnsaverproto xpext xsp libxkbfile dbus"
-
-PROVIDES = "virtual/xserver"
-PACKAGES =+ "xserver-kdrive-xomap"
-SECTION = "x11/base"
-DESCRIPTION = "X server from freedesktop.org"
-DESCRIPTION_xserver-kdrive-xomap = "X server for the OMAP in the Nokia 800"
-
-PE = "1"
-
-COMPATIBLE_MACHINE = "nokia(800|770)"
-
-FILES_${PN} = "${libdir}/xserver /etc/dbus-1/* ${bindir}/Xomap"
-
-SRC_URI = "http://repository.maemo.org/pool/maemo3.1/free/source/xorg-server_1.1.99.3-0osso31.tar.gz \
- file://kmode.patch;patch=1 \
- file://disable-apm.patch;patch=1 \
- file://no-serial-probing.patch;patch=1 \
- file://fbdev-not-fix.patch;patch=1 \
- file://enable-builtin-fonts.patch;patch=1 \
- file://xcalibrate.patch;patch=1 \
- file://fixups.patch;patch=1 \
- file://button_only.patch;patch=1 \
- file://calibrateext.patch;patch=1 \
- file://disable-xkb.patch;patch=1 \
- file://configfix.patch;patch=1 \
- file://xcalibrate_coords.patch;patch=1"
-# file://kdrive-evdev.patch;patch=1 \
-# file://kdrive-use-evdev.patch;patch=1 \
-# file://disable-xf86-dga-xorgcfg.patch;patch=1 \
-# file://enable-tslib.patch;patch=1 \
-# file://xfbdev-fb-opt.patch;patch=1"
-
-S = "${WORKDIR}/xorg-server-1.1.99.3"
-
-inherit autotools pkgconfig
-
-EXTRA_OECONF = "--enable-composite --enable-kdrive --enable-builtin-fonts \
- --disable-dga --disable-dri --disable-xinerama \
- --disable-xf86misc --disable-xf86vidmode \
- --disable-xorg --disable-xorgcfg \
- --disable-dmx --enable-xcalibrate \
- --disable-xkb --disable-xnest --disable-xvfb \
- --disable-xevie --disable-xprint --disable-xtrap \
- --with-default-font-path=built-ins \
- ac_cv_file__usr_share_X11_sgml_defs_ent=no \
- --enable-xomap"
-
-do_configure_prepend() {
- sed -i -e 's/tslib-0.0/tslib-1.0/' ${S}/configure.ac
-}
diff --git a/meta-extras/packages/yum/createrepo-native/pathfix.patch b/meta-extras/packages/yum/createrepo-native/pathfix.patch
deleted file mode 100644
index a09a51ccc..000000000
--- a/meta-extras/packages/yum/createrepo-native/pathfix.patch
+++ /dev/null
@@ -1,81 +0,0 @@
-Index: createrepo-0.9/Makefile
-===================================================================
---- createrepo-0.9.orig/Makefile 2008-08-23 17:49:24.000000000 +0100
-+++ createrepo-0.9/Makefile 2008-08-23 17:52:01.000000000 +0100
-@@ -10,22 +10,6 @@
- SHELL = /bin/sh
- top_srcdir = .
- srcdir = .
--prefix = /usr
--exec_prefix = ${prefix}
--
--bindir = ${exec_prefix}/bin
--sbindir = ${exec_prefix}/sbin
--libexecdir = ${exec_prefix}/libexec
--datadir = ${prefix}/share
--sysconfdir = ${prefix}/etc
--sharedstatedir = ${prefix}/com
--localstatedir = ${prefix}/var
--libdir = ${exec_prefix}/lib
--infodir = ${prefix}/info
--docdir =
--includedir = ${prefix}/include
--oldincludedir = /usr/include
--mandir = ${prefix}/share/man
-
- pkgdatadir = $(datadir)/$(PKGNAME)
- pkglibdir = $(libdir)/$(PKGNAME)
-Index: createrepo-0.9/bin/Makefile
-===================================================================
---- createrepo-0.9.orig/bin/Makefile 2008-08-23 17:50:13.000000000 +0100
-+++ createrepo-0.9/bin/Makefile 2008-08-23 17:50:23.000000000 +0100
-@@ -1,22 +1,6 @@
- SHELL = /bin/sh
- top_srcdir = ..
- srcdir = ../bin
--prefix = /usr
--exec_prefix = ${prefix}
--
--bindir = ${exec_prefix}/bin
--sbindir = ${exec_prefix}/sbin
--libexecdir = ${exec_prefix}/libexec
--datadir = ${prefix}/share
--sysconfdir = ${prefix}/etc
--sharedstatedir = ${prefix}/com
--localstatedir = ${prefix}/var
--libdir = ${exec_prefix}/lib
--infodir = ${prefix}/info
--docdir =
--includedir = ${prefix}/include
--oldincludedir = /usr/include
--mandir = ${prefix}/man
-
- pkgdatadir = $(datadir)/$(PKGNAME)
- pkglibdir = $(libdir)/$(PKGNAME)
-Index: createrepo-0.9/docs/Makefile
-===================================================================
---- createrepo-0.9.orig/docs/Makefile 2008-08-23 17:52:42.000000000 +0100
-+++ createrepo-0.9/docs/Makefile 2008-08-23 17:52:50.000000000 +0100
-@@ -1,22 +1,6 @@
- SHELL = /bin/sh
- top_srcdir = ..
- srcdir = ../docs
--prefix = /usr
--exec_prefix = ${prefix}
--
--bindir = ${exec_prefix}/bin
--sbindir = ${exec_prefix}/sbin
--libexecdir = ${exec_prefix}/libexec
--datadir = ${prefix}/share
--sysconfdir = ${prefix}/etc
--sharedstatedir = ${prefix}/com
--localstatedir = ${prefix}/var
--libdir = ${exec_prefix}/lib
--infodir = ${prefix}/info
--docdir =
--includedir = ${prefix}/include
--oldincludedir = /usr/include
--mandir = ${datadir}/man
-
- pkgdatadir = $(datadir)/$(PKGNAME)
- pkglibdir = $(libdir)/$(PKGNAME)
diff --git a/meta-extras/packages/yum/createrepo-native_0.9.8.bb b/meta-extras/packages/yum/createrepo-native_0.9.8.bb
deleted file mode 100644
index 895f2e96f..000000000
--- a/meta-extras/packages/yum/createrepo-native_0.9.8.bb
+++ /dev/null
@@ -1,17 +0,0 @@
-DEPENDS = "python-native libxml2-native"
-RDEPENDS = "yum-native"
-
-SRC_URI = "http://createrepo.baseurl.org/download/createrepo-${PV}.tar.gz \
- file://pathfix.patch;patch=1 "
-PR = "r2"
-
-inherit autotools native
-
-S = "${WORKDIR}/createrepo-${PV}"
-
-do_compile_append () {
- sed -e 's#exec /usr/share#exec ${datadir}#' -i ${S}/bin/createrepo
- sed -e 's#exec /usr/share#exec ${datadir}#' -i ${S}/bin/modifyrepo
- sed -e 's#!/usr/bin/python#!${bindir}/python#' -i ${S}/genpkgmetadata.py
- sed -e 's#!/usr/bin/python#!${bindir}/python#' -i ${S}/modifyrepo.py
-}
diff --git a/meta-extras/packages/yum/files/98_yum b/meta-extras/packages/yum/files/98_yum
deleted file mode 100644
index cb4047ad2..000000000
--- a/meta-extras/packages/yum/files/98_yum
+++ /dev/null
@@ -1 +0,0 @@
-d root root 0755 /var/cache/yum none
diff --git a/meta-extras/packages/yum/files/extract-postinst.awk b/meta-extras/packages/yum/files/extract-postinst.awk
deleted file mode 100644
index 8f2836b32..000000000
--- a/meta-extras/packages/yum/files/extract-postinst.awk
+++ /dev/null
@@ -1,11 +0,0 @@
-/Name:.*/ {
- package = substr($0, 7)
- next
-}
-/postinstall.*scriptlet .*/ {
- next
-}
-{
- print $0 >> ENVIRON["D"] "/etc/rpm-postinsts/" package ".sh"
-}
-
diff --git a/meta-extras/packages/yum/files/fix b/meta-extras/packages/yum/files/fix
deleted file mode 100644
index bcb3301e1..000000000
--- a/meta-extras/packages/yum/files/fix
+++ /dev/null
@@ -1,18 +0,0 @@
----
- rpmUtils/Makefile | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
---- yum-3.2.18.orig/rpmUtils/Makefile
-+++ yum-3.2.18/rpmUtils/Makefile
-@@ -1,10 +1,10 @@
- PYTHON=python
- PACKAGE = $(shell basename `pwd`)
- PYFILES = $(wildcard *.py)
- PYVER := $(shell $(PYTHON) -c 'import sys; print "%.3s" %(sys.version)')
--PYSYSDIR := $(shell $(PYTHON) -c 'import sys; print sys.prefix')
-+PYSYSDIR := /usr
- PYLIBDIR = $(PYSYSDIR)/lib/python$(PYVER)
- PKGDIR = $(PYLIBDIR)/site-packages/$(PACKAGE)
-
- all:
- echo "Nothing to do"
diff --git a/meta-extras/packages/yum/files/hacks.patch b/meta-extras/packages/yum/files/hacks.patch
deleted file mode 100644
index 61f477172..000000000
--- a/meta-extras/packages/yum/files/hacks.patch
+++ /dev/null
@@ -1,81 +0,0 @@
----
- rpmUtils/arch.py | 3 +++
- rpmUtils/transaction.py | 1 +
- yum/constants.py | 2 +-
- yum/depsolve.py | 2 ++
- 4 files changed, 7 insertions(+), 1 deletion(-)
-
-Index: yum-3.2.18/rpmUtils/arch.py
-===================================================================
---- yum-3.2.18.orig/rpmUtils/arch.py 2008-06-17 14:05:42.000000000 +0100
-+++ yum-3.2.18/rpmUtils/arch.py 2008-10-02 22:09:19.000000000 +0100
-@@ -275,6 +275,12 @@
- return arch
-
- def getCanonArch(skipRpmPlatform = 0):
-+ import os
-+ if 'YUM_ARCH_FORCE' in os.environ:
-+ return os.environ['YUM_ARCH_FORCE']
-+
-+ sys.exit(1)
-+
- if not skipRpmPlatform and os.access("/etc/rpm/platform", os.R_OK):
- try:
- f = open("/etc/rpm/platform", "r")
-@@ -331,6 +338,12 @@
- base arch is the arch before noarch in the arches dict if myarch is not
- a key in the multilibArches."""
-
-+ import os
-+ if 'YUM_ARCH_FORCE' in os.environ:
-+ return os.environ['YUM_ARCH_FORCE']
-+
-+ sys.exit(1)
-+
- if not myarch:
- myarch = canonArch
-
-Index: yum-3.2.18/rpmUtils/transaction.py
-===================================================================
---- yum-3.2.18.orig/rpmUtils/transaction.py 2008-06-17 14:05:42.000000000 +0100
-+++ yum-3.2.18/rpmUtils/transaction.py 2008-10-02 17:09:57.000000000 +0100
-@@ -43,6 +43,7 @@
- 'clean']
- self.tsflags = []
- self.open = True
-+ self.ts.setProbFilter(rpm.RPMPROB_FILTER_IGNOREOS | rpm.RPMPROB_FILTER_IGNOREARCH)
-
- def __del__(self):
- # Automatically close the rpm transaction when the reference is lost
-Index: yum-3.2.18/yum/constants.py
-===================================================================
---- yum-3.2.18.orig/yum/constants.py 2008-07-21 16:56:54.000000000 +0100
-+++ yum-3.2.18/yum/constants.py 2008-10-02 17:09:57.000000000 +0100
-@@ -17,7 +17,7 @@
- """
-
- #Constants
--YUM_PID_FILE = '/var/run/yum.pid'
-+YUM_PID_FILE = '/var/run2/yum.pid'
-
- #transaction set states
- TS_UPDATE = 10
-Index: yum-3.2.18/yum/depsolve.py
-===================================================================
---- yum-3.2.18.orig/yum/depsolve.py 2008-08-06 17:05:16.000000000 +0100
-+++ yum-3.2.18/yum/depsolve.py 2008-10-02 17:09:57.000000000 +0100
-@@ -141,9 +141,14 @@
- else:
- self.logger.critical(_('Invalid tsflag in config file: %s'), flag)
-
-+ self._ts.addTsFlag(rpm.RPMTRANS_FLAG_NOPOST)
-+ self._ts.addTsFlag(rpm.RPMTRANS_FLAG_NOTRIGGERS)
-+
- probfilter = 0
- for flag in self.tsInfo.probFilterFlags:
- probfilter |= flag
-+ probfilter |= rpm.RPMPROB_FILTER_IGNOREOS
-+ probfilter |= rpm.RPMPROB_FILTER_IGNOREARCH
- self._ts.setProbFilter(probfilter)
-
- def whatProvides(self, name, flags, version):
diff --git a/meta-extras/packages/yum/files/paths.patch b/meta-extras/packages/yum/files/paths.patch
deleted file mode 100644
index 0175d05b3..000000000
--- a/meta-extras/packages/yum/files/paths.patch
+++ /dev/null
@@ -1,106 +0,0 @@
----
- Makefile | 18 +++++++++---------
- docs/Makefile | 12 ++++++------
- etc/Makefile | 20 ++++++++++----------
- 3 files changed, 25 insertions(+), 25 deletions(-)
-
-Index: yum-3.2.27/Makefile
-===================================================================
---- yum-3.2.27.orig/Makefile 2010-03-04 01:10:20.000000000 +0000
-+++ yum-3.2.27/Makefile 2010-03-23 13:49:50.663912930 +0000
-@@ -22,19 +22,19 @@
- for d in $(SUBDIRS); do make PYTHON=$(PYTHON) -C $$d; [ $$? = 0 ] || exit 1 ; done
-
- install:
-- mkdir -p $(DESTDIR)/usr/share/yum-cli
-+ mkdir -p $(DESTDIR)$(datadir)/yum-cli
- for p in $(PYFILES) ; do \
-- install -m 644 $$p $(DESTDIR)/usr/share/yum-cli/$$p; \
-+ install -m 644 $$p $(DESTDIR)$(datadir)/yum-cli/$$p; \
- done
-- mv $(DESTDIR)/usr/share/yum-cli/yum-updatesd.py $(DESTDIR)/usr/share/yum-cli/yumupd.py
-- $(PYTHON) -c "import compileall; compileall.compile_dir('$(DESTDIR)/usr/share/yum-cli', 1, '$(PYDIR)', 1)"
-+ mv $(DESTDIR)$(datadir)/yum-cli/yum-updatesd.py $(DESTDIR)$(datadir)/yum-cli/yumupd.py
-+ $(PYTHON) -c "import compileall; compileall.compile_dir('$(DESTDIR)$(datadir)/yum-cli', 1, '$(PYDIR)', 1)"
-
-- mkdir -p $(DESTDIR)/usr/bin $(DESTDIR)/usr/sbin
-- install -m 755 bin/yum.py $(DESTDIR)/usr/bin/yum
-- install -m 755 bin/yum-updatesd.py $(DESTDIR)/usr/sbin/yum-updatesd
-+ mkdir -p $(DESTDIR)$(bindir) $(DESTDIR)$(sbindir)
-+ install -m 755 bin/yum.py $(DESTDIR)$(bindir)/yum
-+ install -m 755 bin/yum-updatesd.py $(DESTDIR)$(sbindir)/yum-updatesd
-
-- mkdir -p $(DESTDIR)/var/cache/yum
-- mkdir -p $(DESTDIR)/var/lib/yum
-+ mkdir -p $(DESTDIR)$(localstatedir)/cache/yum
-+ mkdir -p $(DESTDIR)$(localstatedir)/lib/yum
-
- for d in $(SUBDIRS); do make PYTHON=$(PYTHON) DESTDIR=`cd $(DESTDIR); pwd` -C $$d install; [ $$? = 0 ] || exit 1; done
-
-Index: yum-3.2.27/docs/Makefile
-===================================================================
---- yum-3.2.27.orig/docs/Makefile 2009-04-07 14:57:06.000000000 +0100
-+++ yum-3.2.27/docs/Makefile 2010-03-23 13:52:30.086667913 +0000
-@@ -6,10 +6,10 @@
- rm -fr epydoc
-
- install:
-- mkdir -p $(DESTDIR)/usr/share/man/man5
-- mkdir -p $(DESTDIR)/usr/share/man/man8
-- install -m 644 yum.8 $(DESTDIR)/usr/share/man/man8/yum.8
-- install -m 644 yum-shell.8 $(DESTDIR)/usr/share/man/man8/yum-shell.8
-- install -m 644 yum.conf.5 $(DESTDIR)/usr/share/man/man5/yum.conf.5
-- install -m 644 yum-updatesd.8 $(DESTDIR)/usr/share/man/man8/yum-updatesd.8
-- install -m 644 yum-updatesd.conf.5 $(DESTDIR)/usr/share/man/man5/yum-updatesd.conf.5
-+ mkdir -p $(DESTDIR)$(mandir)/man5
-+ mkdir -p $(DESTDIR)$(mandir)/man8
-+ install -m 644 yum.8 $(DESTDIR)$(mandir)/man8/yum.8
-+ install -m 644 yum-shell.8 $(DESTDIR)$(mandir)/man8/yum-shell.8
-+ install -m 644 yum.conf.5 $(DESTDIR)$(mandir)/man5/yum.conf.5
-+ install -m 644 yum-updatesd.8 $(DESTDIR)$(mandir)/man8/yum-updatesd.8
-+ install -m 644 yum-updatesd.conf.5 $(DESTDIR)$(mandir)/man5/yum-updatesd.conf.5
-Index: yum-3.2.27/etc/Makefile
-===================================================================
---- yum-3.2.27.orig/etc/Makefile 2009-10-26 18:56:06.000000000 +0000
-+++ yum-3.2.27/etc/Makefile 2010-03-23 13:54:40.421912460 +0000
-@@ -1,4 +1,4 @@
--YUMETC=$(DESTDIR)/etc/yum
-+YUMETC=$(DESTDIR)$(sysconfdir)/yum
-
- all:
- echo "Nothing to do"
-@@ -7,23 +7,23 @@
- rm -f *.pyc *.pyo *~
-
- install:
-- mkdir -p $(DESTDIR)/etc/yum/
-- mkdir -p $(DESTDIR)/etc/yum/repos.d
-+ mkdir -p $(DESTDIR)$(sysconfdir)/yum/
-+ mkdir -p $(DESTDIR)$(sysconfdir)/yum/repos.d
-
- install -m 644 yum.conf $(YUMETC)/yum.conf
-
- install -m 644 version-groups.conf $(YUMETC)/version-groups.conf
-
-- mkdir -p $(DESTDIR)/etc/logrotate.d
-- install -m 644 yum.logrotate $(DESTDIR)/etc/logrotate.d/yum
-+ mkdir -p $(DESTDIR)$(sysconfdir)/logrotate.d
-+ install -m 644 yum.logrotate $(DESTDIR)$(sysconfdir)/logrotate.d/yum
-
-- mkdir -p $(DESTDIR)/etc/rc.d/init.d
-- install -m 755 yum-updatesd.init $(DESTDIR)/etc/rc.d/init.d/yum-updatesd
-+ mkdir -p $(DESTDIR)$(sysconfdir)/rc.d/init.d
-+ install -m 755 yum-updatesd.init $(DESTDIR)$(sysconfdir)/rc.d/init.d/yum-updatesd
-
-- mkdir -p $(DESTDIR)/etc/dbus-1/system.d/
-- install -m 755 yum-updatesd-dbus.conf $(DESTDIR)/etc/dbus-1/system.d/yum-updatesd.conf
-+ mkdir -p $(DESTDIR)$(sysconfdir)/dbus-1/system.d/
-+ install -m 755 yum-updatesd-dbus.conf $(DESTDIR)$(sysconfdir)/dbus-1/system.d/yum-updatesd.conf
-
-- install -m 755 yum-updatesd.conf $(DESTDIR)/etc/yum/yum-updatesd.conf
-+ install -m 755 yum-updatesd.conf $(DESTDIR)$(sysconfdir)/yum/yum-updatesd.conf
-
-- mkdir -p $(DESTDIR)/etc/bash_completion.d
-- install -m 644 yum.bash $(DESTDIR)/etc/bash_completion.d
-+ mkdir -p $(DESTDIR)$(sysconfdir)/bash_completion.d
-+ install -m 644 yum.bash $(DESTDIR)$(sysconfdir)/bash_completion.d
diff --git a/meta-extras/packages/yum/files/paths2.patch b/meta-extras/packages/yum/files/paths2.patch
deleted file mode 100644
index 8fe6d0c98..000000000
--- a/meta-extras/packages/yum/files/paths2.patch
+++ /dev/null
@@ -1,35 +0,0 @@
----
- rpmUtils/Makefile | 2 +-
- yum/Makefile | 2 +-
- 2 files changed, 2 insertions(+), 2 deletions(-)
-
-Index: yum-3.2.27/rpmUtils/Makefile
-===================================================================
---- yum-3.2.27.orig/rpmUtils/Makefile 2010-03-24 17:26:39.759798777 +0000
-+++ yum-3.2.27/rpmUtils/Makefile 2010-03-24 17:26:54.835863845 +0000
-@@ -2,8 +2,8 @@
- PACKAGE = $(shell basename `pwd`)
- PYFILES = $(wildcard *.py)
- PYVER := $(shell $(PYTHON) -c 'import sys; print "%.3s" %(sys.version)')
--PYSYSDIR := $(shell $(PYTHON) -c 'import sys; print sys.prefix')
--PYLIBDIR = $(PYSYSDIR)/lib/python$(PYVER)
-+PYSYSDIR = $(libdir)
-+PYLIBDIR = $(PYSYSDIR)/python$(PYVER)
- PKGDIR = $(PYLIBDIR)/site-packages/$(PACKAGE)
-
- all:
-Index: yum-3.2.27/yum/Makefile
-===================================================================
---- yum-3.2.27.orig/yum/Makefile 2010-03-24 17:26:39.759798777 +0000
-+++ yum-3.2.27/yum/Makefile 2010-03-24 17:26:43.726773783 +0000
-@@ -2,8 +2,8 @@
- PACKAGE = $(shell basename `pwd`)
- PYFILES = $(wildcard *.py)
- PYVER := $(shell $(PYTHON) -c 'import sys; print "%.3s" %(sys.version)')
--PYSYSDIR := $(shell $(PYTHON) -c 'import sys; print sys.prefix')
--PYLIBDIR = $(PYSYSDIR)/lib/python$(PYVER)
-+PYSYSDIR = $(libdir)
-+PYLIBDIR = $(PYSYSDIR)/python$(PYVER)
- PKGDIR = $(PYLIBDIR)/site-packages/$(PACKAGE)
-
- all:
diff --git a/meta-extras/packages/yum/files/yum-install-recommends.py b/meta-extras/packages/yum/files/yum-install-recommends.py
deleted file mode 100755
index 64716f2c3..000000000
--- a/meta-extras/packages/yum/files/yum-install-recommends.py
+++ /dev/null
@@ -1,39 +0,0 @@
-#!/usr/bin/env python
-import os, sys
-
-root = sys.argv[1]
-installcmd = sys.argv[2]
-
-#
-# Take an rpm image and look through for Recommends:. For each recommends
-# found, try and install any matching packages including any Recommends for
-# packages installed by us.
-#
-
-
-def get_recommends():
- deps = []
- output = os.popen("rpm --root %s -aq --recommends" % (root))
- lines = output.readlines()
- for line in lines:
- line = line.replace("(none)","")
- if line:
- deps.append(line.split()[0])
- return deps
-
-processed = []
-
-while True:
- toinstall = []
- recommends = set(get_recommends())
- for item in recommends:
- if item not in processed:
- toinstall.append(item)
- if len(toinstall) != 0:
- print "Installing %s" % " ".join(toinstall)
- os.system("%s %s" % (installcmd, " ".join(toinstall)))
- else:
- break
- processed.extend(toinstall)
-
-
diff --git a/meta-extras/packages/yum/yum_3.2.27.bb b/meta-extras/packages/yum/yum_3.2.27.bb
deleted file mode 100644
index acebc79dd..000000000
--- a/meta-extras/packages/yum/yum_3.2.27.bb
+++ /dev/null
@@ -1,46 +0,0 @@
-DESCRIPTION = "yum package manger is an automatic updater for rpm."
-HOMEPAGE = "http://yum.baseurl.org/"
-BUGTRACKER = "http://yum.baseurl.org/report"
-
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=18810669f13b87348459e611d31ab760 \
- file://yum/sqlutils.py;beginline=2;endline=14;md5=d704ae6a9d69ce90768ab9188236b992"
-
-RDEPENDS = "python-rpm python-core python-iniparse python-urlgrabber \
- python-shell python-re python-logging python-pickle \
- python-netserver python-compression \
- python-unixadmin python-xml python-sqlite3 \
- python-textutils python-fcntl python-email \
- yum-metadata-parser"
-
-PR = "r9"
-
-SRC_URI = "http://yum.baseurl.org/download/3.2/yum-${PV}.tar.gz \
- file://paths.patch;apply=yes \
- file://paths2.patch;apply=yes \
- file://yum-install-recommends.py \
- file://extract-postinst.awk \
- file://98_yum"
-
-S = "${WORKDIR}/yum-${PV}"
-
-inherit autotools
-
-do_compile_append () {
- sed -e 's#!/usr/bin/python#!${bindir}/python#' -e 's#/usr/share#${datadir}#' -i ${S}/bin/yum.py
- sed -e 's#!/usr/bin/python#!${bindir}/python#' -e 's#/usr/share#${datadir}#' -i ${S}/bin/yum-updatesd.py
-}
-
-do_install_append () {
- install -d ${D}${bindir}/
- install ${WORKDIR}/extract-postinst.awk ${D}${bindir}/
- install ${WORKDIR}/yum-install-recommends.py ${D}${bindir}/
- rmdir ${D}${localstatedir}/cache/yum
- rmdir ${D}${localstatedir}/cache
- install -d ${D}/etc/default/volatiles
- install -m 0644 ${WORKDIR}/98_yum ${D}/etc/default/volatiles
-}
-
-FILES_${PN} += "${libdir}/python* ${datadir}/yum-cli"
-
-BBCLASSEXTEND = "native"
diff --git a/meta-extras/packages/zope/zope_3.3.1.bb b/meta-extras/packages/zope/zope_3.3.1.bb
deleted file mode 100644
index 283cb18d0..000000000
--- a/meta-extras/packages/zope/zope_3.3.1.bb
+++ /dev/null
@@ -1,45 +0,0 @@
-DESCRIPTION = "A full fledged pluggable content management system with integrated web server and much more."
-SECTION = "console/network"
-PRIORITY = "optional"
-DEPENDS = "python"
-RDEPENDS = "python-core python-shell"
-LICENSE = "ZPL"
-PR = "r3"
-
-SRC_URI = "http://www.zope.org/Products/Zope3/${PV}/Zope-${PV}.tgz"
-
-S = "${WORKDIR}/Zope-${PV}"
-
-do_configure() {
- ./configure --with-python=${STAGING_BINDIR_NATIVE}/python --prefix=${prefix} --force
-}
-
-do_compile() {
- oe_runmake HOST_SYS=${HOST_SYS} BUILD_SYS=${BUILD_SYS} STAGING_INCDIR=${STAGING_INCDIR} STAGING_LIBDIR=${STAGING_LIBDIR}
-}
-
-PYTHON_MAJMIN = "2.5"
-
-do_install() {
- install -d ${D}${libdir}/python${PYTHON_MAJMIN}
- oe_runmake install prefix=${D}${prefix} HOST_SYS=${HOST_SYS} BUILD_SYS=${BUILD_SYS} STAGING_INCDIR=${STAGING_INCDIR} STAGING_LIBDIR=${STAGING_LIBDIR}
- mv ${D}${libdir}/python/* ${D}${libdir}/python${PYTHON_MAJMIN}
-}
-
-PACKAGES =+ "python-zopeinterface python-zopeinterface-dbg"
-
-FILES_${PN} = "${prefix}"
-FILES_${PN}_doc = "${prefix}/doc"
-FILES_${PN}-dbg += "\
-${libdir}/python${PYTHON_MAJMIN}/BTrees/.debug \
-${libdir}/python${PYTHON_MAJMIN}/persistent/.debug \
-${libdir}/python${PYTHON_MAJMIN}/zope/proxy/.debug \
-${libdir}/python${PYTHON_MAJMIN}/zope/thread/.debug \
-${libdir}/python${PYTHON_MAJMIN}/zope/security/.debug \
-${libdir}/python${PYTHON_MAJMIN}/zope/hookable/.debug \
-${libdir}/python${PYTHON_MAJMIN}/zope/app/container/.debug \
-${libdir}/python${PYTHON_MAJMIN}/zope/i18nmessageid/.debug \
-${libdir}/python${PYTHON_MAJMIN}/ZODB/.debug"
-FILES_python-zopeinterface-dbg += "${libdir}/python${PYTHON_MAJMIN}/zope/interface/.debug "
-
-FILES_python-zopeinterface = "${libdir}/python${PYTHON_MAJMIN}/zope/interface/*.* ${libdir}/python${PYTHON_MAJMIN}/zope/interface/common"