diff options
28 files changed, 632 insertions, 38 deletions
diff --git a/conf/distro/include/moko-autorev.inc b/conf/distro/include/moko-autorev.inc index 3292631c43..5206d26cdd 100644 --- a/conf/distro/include/moko-autorev.inc +++ b/conf/distro/include/moko-autorev.inc @@ -1,3 +1,8 @@ +SRCREV_pn-libgsmd ?= "${AUTOREV}" +SRCREV_pn-libmokogsmd2 ?= "${AUTOREV}" +SRCREV_pn-libmokojournal2 ?= "${AUTOREV}" +SRCREV_pn-libmokopanelui2 ?= "${AUTOREV}" +SRCREV_pn-libmokoui2 ?= "${AUTOREV}" SRCREV_pn-openmoko-appmanager ?= "${AUTOREV}" SRCREV_pn-openmoko-calculator ?= "${AUTOREV}" SRCREV_pn-openmoko-calculator2 ?= "${AUTOREV}" diff --git a/conf/distro/include/sane-srcrevs.inc b/conf/distro/include/sane-srcrevs.inc index 387a4e068e..24cdfae0cd 100644 --- a/conf/distro/include/sane-srcrevs.inc +++ b/conf/distro/include/sane-srcrevs.inc @@ -15,9 +15,10 @@ SRCREV_pn-ezxd ?= "2052" SRCREV_pn-elf2flt="1786" SRCREV_pn-fbgrab-viewer-native ?= "1943" SRCREV_pn-fstests ?= "204" +SRCREV_pn-gconf-dbus ?= "606" SRCREV_pn-gnuradio ?= "6377" SRCREV_pn-hildon-1 ?= "13708" -SRCREV_pn-libgsmd ?= "2806" +SRCREV_pn-libgsmd ?= "2957" SRCREV_pn-libmokogsmd2 ?= "2950" SRCREV_pn-libmokojournal2 ?= "2780" SRCREV_pn-libmokopanelui2 ?= "2958" @@ -49,7 +50,7 @@ SRCREV_pn-openmoko-finger-demo ?= "1671" SRCREV_pn-openmoko-firststart2 ?= "2873" SRCREV_pn-openmoko-footer ?= "2354" SRCREV_pn-openmoko-icon-theme-standard ?= "2232" -SRCREV_pn-openmoko-icon-theme-standard2 ?= "2840" +SRCREV_pn-openmoko-icon-theme-standard2 ?= "2967" SRCREV_pn-openmoko-keyboard ?= "1631" SRCREV_pn-openmoko-libs ?= "2367" SRCREV_pn-openmoko-mediaplayer2 ?= "2952" diff --git a/conf/distro/openmoko.conf b/conf/distro/openmoko.conf index 26bcc2472c..8657b1140a 100644 --- a/conf/distro/openmoko.conf +++ b/conf/distro/openmoko.conf @@ -35,5 +35,7 @@ PREFERRED_VERSION_binutils ?= "2.17.50.0.12" PREFERRED_VERSION_binutils-cross ?= "2.17.50.0.12" require conf/distro/include/preferred-openmoko-versions.inc -require conf/distro/include/moko-autorev.inc + +# Bleeding-edge developers should add the following line to their local.conf: +# require conf/distro/include/moko-autorev.inc diff --git a/conf/machine/alix.conf b/conf/machine/alix.conf index 77312791dc..29af29a3b8 100644 --- a/conf/machine/alix.conf +++ b/conf/machine/alix.conf @@ -5,9 +5,9 @@ # http://pcengines.ch/alix1c.htm # i386 doesn't work with NTPL, see http://ecos.sourceware.org/ml/libc-ports/2006-03/msg00030.html -TARGET_ARCH = "i686" +TARGET_ARCH = "i586" -PACKAGE_EXTRA_ARCHS = "x86 i386 i486 i586" +PACKAGE_EXTRA_ARCHS = "x86 i386 i486 geode" PREFERRED_PROVIDER_virtual/kernel = "linux" PREFERRED_PROVIDER_virtual/xserver = "xserver-xorg" @@ -17,6 +17,8 @@ GLIBC_EXTRA_OECONF = "--with-tls" MACHINE_FEATURES = "kernel26 usbhost ext2 pci screen alsa acpi" +require conf/machine/include/tune-geodelx.conf + IMAGE_FSTYPES += "tar.gz" MACHINE_EXTRA_RRECOMMENDS = "\ diff --git a/conf/machine/include/tune-geodelx.conf b/conf/machine/include/tune-geodelx.conf new file mode 100644 index 0000000000..335fadec6e --- /dev/null +++ b/conf/machine/include/tune-geodelx.conf @@ -0,0 +1,6 @@ +# Geode CPU has it's own target in GCC 4.3 +# in older versions k6-2 is closest +# +TARGET_CC_ARCH = "-march=k6-2" +PACKAGE_ARCH = "geode" + diff --git a/packages/free42/.mtn2git_empty b/packages/free42/.mtn2git_empty new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/packages/free42/.mtn2git_empty diff --git a/packages/free42/files/.mtn2git_empty b/packages/free42/files/.mtn2git_empty new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/packages/free42/files/.mtn2git_empty diff --git a/packages/free42/files/free42-bcd-gtk-only.patch b/packages/free42/files/free42-bcd-gtk-only.patch new file mode 100644 index 0000000000..571785f36f --- /dev/null +++ b/packages/free42/files/free42-bcd-gtk-only.patch @@ -0,0 +1,100 @@ +--- free42-orig/gtk/Makefile 2007-01-06 09:37:55.000000000 -0800 ++++ free42gtk/gtk/Makefile 2007-09-02 23:54:34.000000000 -0700 +@@ -35,20 +35,14 @@ + core_math2.o core_phloat.o core_sto_rcl.o core_tables.o \ + core_variables.o + +-ifdef BCD_MATH + CXXFLAGS += -DBCD_MATH + SRCS += bcdfloat.cc bcd.cc bcdmath.cc + OBJS += bcdfloat.o bcd.o bcdmath.o + EXE = free42dec +-else +-EXE = free42bin +-endif + + $(EXE): $(OBJS) + $(CXX) -o $(EXE) $(LDFLAGS) $(OBJS) $(LIBS) + +-$(SRCS): symlinks +- + .cc.o: + $(CXX) $(CXXFLAGS) -c -o $@ $< + +@@ -64,74 +58,18 @@ + keymap.cc: keymap2cc keymap.txt + ./keymap2cc + +-symlinks: +- ln -s ../common/free42.h +- ln -s ../common/core_commands1.cc +- ln -s ../common/core_commands1.h +- ln -s ../common/core_commands2.cc +- ln -s ../common/core_commands2.h +- ln -s ../common/core_commands3.cc +- ln -s ../common/core_commands3.h +- ln -s ../common/core_commands4.cc +- ln -s ../common/core_commands4.h +- ln -s ../common/core_commands5.cc +- ln -s ../common/core_commands5.h +- ln -s ../common/core_commands6.cc +- ln -s ../common/core_commands6.h +- ln -s ../common/core_display.cc +- ln -s ../common/core_display.h +- ln -s ../common/core_globals.cc +- ln -s ../common/core_globals.h +- ln -s ../common/core_helpers.cc +- ln -s ../common/core_helpers.h +- ln -s ../common/core_keydown.cc +- ln -s ../common/core_keydown.h +- ln -s ../common/core_linalg1.cc +- ln -s ../common/core_linalg1.h +- ln -s ../common/core_linalg2.cc +- ln -s ../common/core_linalg2.h +- ln -s ../common/core_math1.cc +- ln -s ../common/core_math1.h +- ln -s ../common/core_math2.cc +- ln -s ../common/core_math2.h +- ln -s ../common/core_main.cc +- ln -s ../common/core_main.h +- ln -s ../common/core_phloat.cc +- ln -s ../common/core_phloat.h +- ln -s ../common/core_sto_rcl.cc +- ln -s ../common/core_sto_rcl.h +- ln -s ../common/core_tables.cc +- ln -s ../common/core_tables.h +- ln -s ../common/core_variables.cc +- ln -s ../common/core_variables.h +- ln -s ../common/shell.h +- ln -s ../common/shell_loadimage.cc +- ln -s ../common/shell_loadimage.h +- ln -s ../common/shell_spool.cc +- ln -s ../common/shell_spool.h +- ln -s ../common/skin2cc.cc +- ln -s ../common/skin2cc.conf +- ln -s ../common/keymap2cc.cc +- ln -s ../common/bcd.cc +- ln -s ../common/bcd.h +- ln -s ../common/bcdfloat.cc +- ln -s ../common/bcdfloat.h +- ln -s ../common/bcdmath.cc +- ln -s ../common/bcdmath.h +- touch symlinks +- + clean: FORCE + rm -f `find . -type l` \ + skin2cc skin2cc.exe skins.cc \ + keymap2cc keymap2cc.exe keymap.cc \ +- *.o *.d *.i *.ii *.s symlinks core.* ++ *.o *.d *.i *.ii *.s core.* + + cleaner: FORCE + rm -f `find . -type l` \ + free42bin free42bin.exe free42dec free42dec.exe \ + skin2cc skin2cc.exe skins.cc \ + keymap2cc keymap2cc.exe keymap.cc \ +- *.o *.d *.i *.ii *.s symlinks core.* ++ *.o *.d *.i *.ii *.s core.* + + FORCE: + diff --git a/packages/free42/files/free42-dont-declare-sincos.patch b/packages/free42/files/free42-dont-declare-sincos.patch new file mode 100644 index 0000000000..8ba10face4 --- /dev/null +++ b/packages/free42/files/free42-dont-declare-sincos.patch @@ -0,0 +1,11 @@ +--- free42-orig/common/free42.h 2007-01-06 09:37:50.000000000 -0800 ++++ free42gtk/common/free42.h 2007-09-03 22:39:14.000000000 -0700 +@@ -150,7 +150,7 @@ + * provided by MathLib. + */ + #ifndef PALMOS +-extern "C" void sincos(double x, double *sinx, double *cosx) HELPERS_SECT; ++ + #endif + //#define NO_SINCOS 1 + diff --git a/packages/free42/files/free42-vga-skin.patch b/packages/free42/files/free42-vga-skin.patch new file mode 100644 index 0000000000..628a233514 --- /dev/null +++ b/packages/free42/files/free42-vga-skin.patch @@ -0,0 +1,12 @@ +--- free42-orig/common/skin2cc.conf 2006-03-22 11:33:35.000000000 -0800 ++++ free42gtk/common/skin2cc.conf 2007-09-02 23:52:27.000000000 -0700 +@@ -1,4 +1,4 @@ +-skins/Standard +-Standard +-skins/Ehrling42sl +-Realistic ++skins/Ehrling42ssv ++Portrait ++skins/42ct ++Landscape + diff --git a/packages/free42/files/free42dec.desktop b/packages/free42/files/free42dec.desktop new file mode 100644 index 0000000000..4d08c453ab --- /dev/null +++ b/packages/free42/files/free42dec.desktop @@ -0,0 +1,12 @@ +[Desktop Entry] +Version=1.0 +Encoding=UTF-8 +Name=Free42 +Comment=RPN Calculator +Exec=free42dec +Icon=free42.xpm +StartupNotify=true +SingleInstance=true +Terminal=false +Type=Application +Categories=Application diff --git a/packages/free42/free42-vga_1.4.36.bb b/packages/free42/free42-vga_1.4.36.bb new file mode 100644 index 0000000000..3f64f99c6a --- /dev/null +++ b/packages/free42/free42-vga_1.4.36.bb @@ -0,0 +1,44 @@ +DESCRIPTION = "Free42 RPN Calculator" +SECTION = "openmoko/applications" +DEPENDS = "gtk+" +PV = "1.4.36" +PR = "r1" + +SRC_URI = "http://home.planet.nl/~demun000/thomas_projects/free42/free42.tgz \ + http://sense.net/zc/free42/42c_skins.tgz \ + file://free42-bcd-gtk-only.patch;patch=1 \ + file://free42-vga-skin.patch;patch=1 \ + file://free42-dont-declare-sincos.patch;patch=1 \ + file://free42dec.desktop" + +S = "${WORKDIR}/free42" + +TARGET_CXXFLAGS_append = " -fsigned-char" +TARGET_CXXFLAGS_append += "-DVERSION=\\"${PV}\\" -DBCD_MATH" +TARGET_CXXFLAGS_append += "-I${STAGING_INCDIR}/gtk-2.0" +TARGET_CXXFLAGS_append += "-I${STAGING_LIBDIR}/gtk-2.0/include" +TARGET_CXXFLAGS_append += "-I${STAGING_INCDIR}/cairo" +TARGET_CXXFLAGS_append += "-I${STAGING_INCDIR}/glib-2.0" +TARGET_CXXFLAGS_append += "-I${STAGING_INCDIR}/pango-1.0" +TARGET_CXXFLAGS_append += "-I${STAGING_INCDIR}/atk-1.0" + +do_compile() { + cp -fv ${S}/common/* ${S}/gtk + cp -fv ${S}/ppcskins/Ehrling42ssv.* ${S}/skins/ + cp ${WORKDIR}/42ct.* ${S}/skins/ + cd ${S}/gtk/ + ${BUILD_CXX} -o skin2cc skin2cc.cc ${BUILD_CXXFLAGS} + ${BUILD_CXX} -o keymap2cc keymap2cc.cc ${BUILD_CXXFLAGS} + oe_runmake +} + +do_install() { + install -d ${D}${bindir} + install -m 0755 ${S}/gtk/free42dec ${D}${bindir}/free42dec + install -d ${D}${datadir}/applications + install -m 0644 ${WORKDIR}/free42dec.desktop ${D}${datadir}/applications/ + install -d ${D}${datadir}/pixmaps + install -m 0644 ${S}/gtk/icon.xpm ${D}${datadir}/pixmaps/free42.xpm +} + + diff --git a/packages/gnome/gconf-dbus_svn.bb b/packages/gnome/gconf-dbus_svn.bb index 3647059de1..5a5e78a207 100644 --- a/packages/gnome/gconf-dbus_svn.bb +++ b/packages/gnome/gconf-dbus_svn.bb @@ -1,44 +1,40 @@ SECTION = "x11/utils" -DEPENDS = "gtk+ glib-2.0 dbus dbus-glib libxml2 popt intltool-native" +DEPENDS = "intltool-native glib-2.0 dbus dbus-glib libxml2 popt gtk-doc-native" DESCRIPTION = "Settings daemon using DBUS for communication." LICENSE = "GPL" PROVIDES = "gconf" RPROVIDES_${PN} = "gconf" RPROVIDES_${PN}-dev = "gconf-dev" -PV = "2.16.0+svn${SRCDATE}" -PR = "r0" +PV = "2.16.0+svnr${SRCREV}" +PR = "r3" SRC_URI = "svn://developer.imendio.com/svn/gconf-dbus;module=trunk;proto=http \ file://69gconfd-dbus" -inherit pkgconfig autotools +inherit pkgconfig autotools S = "${WORKDIR}/trunk" PARALLEL_MAKE = "" -FILES_${PN} += " ${libdir}/gconf-dbus/2/*.so \ - ${libdir}/GConf-dbus/2/*.so \ - ${libdir}/dbus-1.0 \ - ${sysconfdir} \ - ${datadir}/dbus*" -FILES_${PN}-dbg += "${libdir}/gconf-dbus/2/.debug \ - ${libdir}/GConf-dbus/2/.debug "" +FILES_${PN} = "${libdir}/GConf-dbus/2/*.so ${libdir}/dbus-1.0 ${sysconfdir} ${datadir}/dbus* ${libdir}/*.so.* ${bindir}/* ${libexecdir}/*" +FILES_${PN}-dbg += " ${libdir}/GConf-dbus/2/.debug" + +EXTRA_OECONF = " --with-ipc=dbus --disable-gtk-doc --disable-gtk --enable-shared --disable-static" -EXTRA_OECONF = " --with-ipc=dbus --disable-gtk-doc --enable-gtk --host=${HOST_SYS} --enable-shared --disable-static" do_configure_prepend() { - touch ${S}/gtk-doc.make + touch gtk-doc.make } do_stage() { - autotools_stage_all + autotools_stage_all + install -m 0644 gconf-2.m4 ${STAGING_DATADIR}/aclocal/gconf-2.m4 } do_install_append () { install -d ${D}/${sysconfdir}/X11/Xsession.d install -m 755 ${WORKDIR}/69gconfd-dbus ${D}/${sysconfdir}/X11/Xsession.d/ - install -d ${D}/${datadir}/dbus-1.0/services/ - install -m 644 gconf/gconf.service ${D}${datadir}/dbus-1.0/services/ + install -d ${D}/${datadir}/dbus-1.0/services/ + install -m 644 gconf/gconf.service ${D}${datadir}/dbus-1.0/services/ } - diff --git a/packages/gsm/files/fic-gta01/.mtn2git_empty b/packages/gsm/files/fic-gta01/.mtn2git_empty new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/packages/gsm/files/fic-gta01/.mtn2git_empty diff --git a/packages/gsm/files/fic-gta01/gsmd b/packages/gsm/files/fic-gta01/gsmd new file mode 100644 index 0000000000..3c3f63a4df --- /dev/null +++ b/packages/gsm/files/fic-gta01/gsmd @@ -0,0 +1,51 @@ +##!/bin/sh +# +# gsmd This shell script starts and stops gsmd. +# +# chkconfig: 345 90 40 +# description: Gsmd manages access to a serial- or USB-connected GSM +# processname: gsmd + +PATH=/bin:/usr/bin:/sbin:/usr/sbin + +[ -f /etc/default/rcS ] && . /etc/default/rcS +[ -f /etc/default/gsmd ] && . /etc/default/gsmd + +case "$1" in + start) + stty -F "$GSM_DEV" -crtscts + [ -n "$GSM_POW" ] && ( echo "0" >$GSM_POW; sleep 1 ) + [ -n "$GSM_POW" ] && ( echo "1" >$GSM_POW; sleep 1 ) + [ -n "$GSM_RES" ] && ( echo "1" >$GSM_RES; sleep 1 ) + [ -n "$GSM_RES" ] && ( echo "0" >$GSM_RES; sleep 2 ) + + echo -n "Starting GSM daemon: " + start-stop-daemon -S -x /usr/sbin/gsmd -- gsmd -p $GSM_DEV $GSMD_OPTS >/tmp/gsm.log 2>&1 & + + if [ $? = 0 ]; then + echo "gsmd." + else + echo "(failed.)" + fi + ;; + stop) + [ -n "$GSM_POW" ] && echo "0" >$GSM_POW + + echo -n "Stopping GSM daemon: " + start-stop-daemon -K -x /usr/sbin/gsmd + stty -F "$GSM_DEV" -crtscts + echo "gsmd." + ;; + restart|force-reload) + $0 stop + $0 start + exit + ;; + *) + echo "Usage: /etc/init.d/apmd {start|stop|restart|force-reload}" + exit 1 + ;; +esac + +exit 0 + diff --git a/packages/gsm/libgsmd_svn.bb b/packages/gsm/libgsmd_svn.bb index b312015172..50debc0e11 100644 --- a/packages/gsm/libgsmd_svn.bb +++ b/packages/gsm/libgsmd_svn.bb @@ -4,7 +4,7 @@ LICENSE = "GPL LGPL" SECTION = "libs/gsm" PROVIDES += "gsmd" PV = "0.1+svnr${SRCREV}" -PR = "r25" +PR = "r26" SRC_URI = "svn://svn.openmoko.org/trunk/src/target;module=gsm;proto=http \ file://gsmd \ diff --git a/packages/gtk+/gdk-pixbuf-csource-native_2.10.14.bb b/packages/gtk+/gdk-pixbuf-csource-native_2.10.14.bb index f3b7b0e6c8..51fb846ce9 100644 --- a/packages/gtk+/gdk-pixbuf-csource-native_2.10.14.bb +++ b/packages/gtk+/gdk-pixbuf-csource-native_2.10.14.bb @@ -5,6 +5,11 @@ S = "${WORKDIR}/gtk+-${PV}" FILESPATH = "${FILE_DIRNAME}/gdk-pixbuf-csource:${FILE_DIRNAME}/gtk+-${PV}:${FILE_DIRNAME}/files" SRC_URI += "file://reduce-dependencies.patch;patch=1" +#clear recommends for uclibc builds +RRECOMMENDS = " " +RRECOMMENDS_${PN}_linux = " " +RRECOMMENDS_${PN}_linux-gnueabi = " " + EXTRA_OECONF = "\ --without-x \ --with-gdktarget=linux-fb \ diff --git a/packages/linux/linux-ezx-2.6.21/patches/e6-eoc.patch b/packages/linux/linux-ezx-2.6.21/patches/e6-eoc.patch new file mode 100644 index 0000000000..79c60c8ca2 --- /dev/null +++ b/packages/linux/linux-ezx-2.6.21/patches/e6-eoc.patch @@ -0,0 +1,82 @@ +Index: linux-2.6.21/arch/arm/mach-pxa/ezx-e6.c +=================================================================== +--- linux-2.6.21.orig/arch/arm/mach-pxa/ezx-e6.c 2007-09-07 22:15:52.000000000 -0300 ++++ linux-2.6.21/arch/arm/mach-pxa/ezx-e6.c 2007-09-09 13:29:56.000000000 -0300 +@@ -25,6 +25,7 @@ + #include <asm/arch/mmc.h> + + #include "generic.h" ++#include "ezx-eoc.h" + + extern void ezx_lcd_power(int, struct fb_var_screeninfo *); + extern void ezx_backlight_power(int); +@@ -227,11 +228,69 @@ + .resource = pcap_ts_resources, + }; + ++ ++/* EOC */ ++static const unsigned int tab_init_eoc_reg[][2] = ++{ ++ {POWER_IC_REG_EOC_INT_MASK, 0x00000FEF}, ++ {POWER_IC_REG_EOC_POWER_CONTROL_0, 0x00000C00}, ++ {POWER_IC_REG_EOC_POWER_CONTROL_1, 0x0000000C}, ++ {POWER_IC_REG_EOC_CONN_CONTROL, 0x00021044}, ++}; ++ ++static void dump_eoc_registers(void) ++{ ++ int i, val = 0; ++ ++ printk("========DUMP EOC=========\n"); ++ for (i = 0; i < POWER_IC_REG_EOC_NUM; i++) { ++ eoc_reg_read(i, &val); ++ printk("eoc_registers[%d] = 0x%08X\n", i, val); ++ } ++ printk("========END DUMP=========\n"); ++} ++ ++/* ++ * FIXME: The same about the PCAP driver applies here. ++ * This is the initial state only. ++ * Which bits does the change to USB/UART/AUDIO mode? ++ * I think that this is causing the crash on pxa27x-udc ++ * you are setting the 'port connected' bit, and thats why ++ * you are getting interrupts early. ++ * --WM ++ */ ++ ++static int __init e6_eoc_init(void) ++{ ++ int i; ++ ++ for (i = 0; i < sizeof(tab_init_eoc_reg)/sizeof(unsigned int)/2; i++) ++ { ++ eoc_reg_write(tab_init_eoc_reg[i][0], tab_init_eoc_reg[i][1]); ++ } ++ dump_eoc_registers(); ++ return 0; ++} ++ ++static struct ezx_eoc_platform_data e6_eoc_platform_data = { ++ .init = e6_eoc_init, ++}; ++ ++struct platform_device e6_eoc_device = { ++ .name = "ezx-eoc", ++ .id = -1, ++ .dev = { ++ .platform_data = &e6_eoc_platform_data, ++ }, ++}; ++ + static struct platform_device *devices[] __initdata = { + &e6_pcap_device, + &pcap_ts_device, ++ &e6_eoc_device, + }; + ++ + static void __init e6_init(void) + { + set_pxa_fb_info(&e6_fb_info); diff --git a/packages/linux/linux-ezx-2.6.21/patches/e6-mci.patch b/packages/linux/linux-ezx-2.6.21/patches/e6-mci.patch new file mode 100644 index 0000000000..08a6f97820 --- /dev/null +++ b/packages/linux/linux-ezx-2.6.21/patches/e6-mci.patch @@ -0,0 +1,124 @@ +Index: linux-2.6.21/arch/arm/mach-pxa/ezx-e6.c +=================================================================== +--- linux-2.6.21.orig/arch/arm/mach-pxa/ezx-e6.c 2007-09-07 11:51:55.000000000 -0300 ++++ linux-2.6.21/arch/arm/mach-pxa/ezx-e6.c 2007-09-07 11:54:52.000000000 -0300 +@@ -13,6 +13,8 @@ + #include <linux/init.h> + #include <linux/platform_device.h> + #include <linux/fb.h> ++#include <linux/mmc/host.h> ++#include <linux/irq.h> + + #include <asm/mach-types.h> + #include <asm/mach/arch.h> +@@ -20,12 +22,102 @@ + #include <asm/arch/pxafb.h> + #include <asm/arch/ezx.h> + #include <asm/arch/ezx-pcap.h> ++#include <asm/arch/mmc.h> + + #include "generic.h" + + extern void ezx_lcd_power(int, struct fb_var_screeninfo *); + extern void ezx_backlight_power(int); + ++#ifdef CONFIG_EZX_PCAP ++extern int ezx_pcap_mmcsd_power(int); ++extern void ezx_pcap_mmcsd_voltage(u_int32_t); ++#else ++#define ezx_pcap_mmcsd_voltage(x) {} ++#define ezx_pcap_mmcsd_power(x) {} ++#endif ++ ++static struct pxamci_platform_data e6_mci_platform_data; ++ ++static u_int8_t mmc_voltage[] = { ++ [MMC_VDD_160] = 5, ++ [MMC_VDD_170] = 5, ++ [MMC_VDD_180] = 6, ++ [MMC_VDD_190] = 6, ++ [MMC_VDD_200] = 7, ++ [MMC_VDD_210] = 7, ++ [MMC_VDD_220] = 8, ++ [MMC_VDD_230] = 8, ++ [MMC_VDD_240] = 9, ++ [MMC_VDD_250] = 9, ++ [MMC_VDD_260] = 10, ++ [MMC_VDD_270] = 10, ++ [MMC_VDD_280] = 11, ++ [MMC_VDD_290] = 11, ++ [MMC_VDD_300] = 12, ++ [MMC_VDD_310] = 12, ++ [MMC_VDD_320] = 13, ++ [MMC_VDD_330] = 13, ++ [MMC_VDD_340] = 14, ++ [MMC_VDD_350] = 14, ++ [MMC_VDD_360] = 15, ++}; ++ ++static int e6_mci_init(struct device *dev, ++ irqreturn_t (*ezx_detect_int)(int, void *), ++ void *data) ++{ ++ int err; ++ ++ /* Setup GPIO for PXA27x MMC/SD controller */ ++ pxa_gpio_mode(GPIO32_MMCCLK_MD); ++ pxa_gpio_mode(GPIO112_MMCCMD_MD); ++ pxa_gpio_mode(GPIO92_MMCDAT0_MD); ++ pxa_gpio_mode(GPIO109_MMCDAT1_MD); ++ pxa_gpio_mode(GPIO110_MMCDAT2_MD); ++ pxa_gpio_mode(GPIO111_MMCDAT3_MD); ++ ++ ezx_pcap_mmcsd_power(1); ++ ++ e6_mci_platform_data.detect_delay = msecs_to_jiffies(250); ++ ++ err = request_irq(0x49, ezx_detect_int, SA_INTERRUPT, ++ "MMC card detect", data); ++ if (err) { ++ printk(KERN_ERR "ezx_mci_detect: MMC/SD: can't request " ++ "MMC card detect IRQ\n"); ++ return -1; ++ } ++ ++ set_irq_type(0x0b, IRQT_BOTHEDGE); ++ ++ return 0; ++} ++ ++static void e6_mci_setpower(struct device *dev, unsigned int vdd) ++{ ++ if (vdd <= MMC_VDD_360) ++ ezx_pcap_mmcsd_voltage(mmc_voltage[vdd]); ++ ++ ezx_pcap_mmcsd_power(1); ++} ++ ++static void e6_mci_exit(struct device *dev, void *data) ++{ ++ ezx_pcap_mmcsd_power(0); ++ free_irq(0x49, data); ++} ++ ++static struct pxamci_platform_data e6_mci_platform_data = { ++ .ocr_mask = MMC_VDD_160_165|MMC_VDD_18_19|MMC_VDD_20_21 ++ |MMC_VDD_22_23|MMC_VDD_24_25|MMC_VDD_26_27 ++ |MMC_VDD_28_29|MMC_VDD_30_31|MMC_VDD_32_33 ++ |MMC_VDD_34_35|MMC_VDD_35_36, ++ .init = e6_mci_init, ++ .setpower = e6_mci_setpower, ++ .exit = e6_mci_exit, ++}; ++ + static struct pxafb_mode_info mode_e6 = { + .pixclock = 192308, + .xres = 240, +@@ -118,6 +210,7 @@ + static void __init e6_init(void) + { + set_pxa_fb_info(&e6_fb_info); ++ pxa_set_mci_info(&e6_mci_platform_data); + + platform_add_devices(devices, ARRAY_SIZE(devices)); + } diff --git a/packages/linux/linux-ezx-2.6.21/patches/e6-pcap.patch b/packages/linux/linux-ezx-2.6.21/patches/e6-pcap.patch new file mode 100644 index 0000000000..a11adbc02e --- /dev/null +++ b/packages/linux/linux-ezx-2.6.21/patches/e6-pcap.patch @@ -0,0 +1,83 @@ +Index: linux-2.6.21/arch/arm/mach-pxa/ezx-e6.c +=================================================================== +--- linux-2.6.21.orig/arch/arm/mach-pxa/ezx-e6.c 2007-09-07 11:32:32.000000000 -0300 ++++ linux-2.6.21/arch/arm/mach-pxa/ezx-e6.c 2007-09-07 11:51:55.000000000 -0300 +@@ -19,6 +19,7 @@ + #include <asm/arch/pxa-regs.h> + #include <asm/arch/pxafb.h> + #include <asm/arch/ezx.h> ++#include <asm/arch/ezx-pcap.h> + + #include "generic.h" + +@@ -48,7 +49,70 @@ + .pxafb_lcd_power = &ezx_lcd_power, + }; + ++/* PCAP */ ++static int __init e6_pcap_init(void) ++{ ++ /* ++ * FIXME: this is the PCAP INITIAL STATE. ++ * most of these writes should NOT be done here ++ * * voltage regulators, voltage enablers should be set by the ++ * driver which uses the connected hardware. Otherwise you ++ * drain power unnecessarily. ++ * * interrupt related registers should be set by the irq functions ++ * only. I think that the INT_SEL register selects on which irq ++ * pin the (ap/bp) the irq goes. This should go on ezx-pcap.c, but ++ * only if it actually makes any difference. ++ * * Only power state automatic changes should be done here. ++ * (*LOWPWR, *STBY, LOWPWR*) ++ * * I removed some writes which i consider extremelly wrong. And ++ * which i think will not break anything (they were overwritten ++ * later anyway). ++ * ++ * --WM ++ */ ++ ezx_pcap_write(PCAP_REG_INT_SEL, 0x0); /* wrong */ ++ ezx_pcap_write(PCAP_REG_SWCTRL, 0x2ee6); /* partially wrong */ ++ ezx_pcap_write(PCAP_REG_VREG1, 0x15778e3); /* wrong */ ++ ezx_pcap_write(PCAP_REG_VREG2, 0x810234); /* partially wrong */ ++ ezx_pcap_write(PCAP_REG_AUXVREG, 0x1024bec); /* wrong */ ++ ezx_pcap_write(PCAP_REG_PWR, 0x94108); /* partially wrong */ ++ ezx_pcap_write(PCAP_REG_AUXVREG_MASK, 0x214d48); /* wrong */ ++ ezx_pcap_write(PCAP_REG_BUSCTRL, 0x2a0); /* wrong */ ++ ezx_pcap_write(PCAP_REG_LOWPWR, 0x1d9610c); ++ ezx_pcap_write(PCAP_REG_PERIPH, 0x0); /* wrong */ ++ ezx_pcap_write(PCAP_REG_GP, 0x107); /* probably unnecessary */ ++ ++ return 0; ++} ++ ++static struct pcap_platform_data e6_pcap_platform_data = { ++ .port = 1, ++ .cs = GPIO_SPI_CE, ++ .flags = PCAP_CS_AH | PCAP_MCI_SD, ++ .clk = 1, ++ .init = e6_pcap_init, ++}; ++ ++static struct resource e6_pcap_resources[] = { ++ [0] = { ++ .start = IRQ_GPIO1, ++ .end = IRQ_GPIO1, ++ .flags = IORESOURCE_IRQ, ++ }, ++}; ++ ++struct platform_device e6_pcap_device = { ++ .name = "ezx-pcap", ++ .id = -1, ++ .num_resources = ARRAY_SIZE(e6_pcap_resources), ++ .resource = e6_pcap_resources, ++ .dev = { ++ .platform_data = &e6_pcap_platform_data, ++ }, ++}; ++ + static struct platform_device *devices[] __initdata = { ++ &e6_pcap_device, + }; + + static void __init e6_init(void) diff --git a/packages/linux/linux-ezx-2.6.21/patches/e6-ts.patch b/packages/linux/linux-ezx-2.6.21/patches/e6-ts.patch new file mode 100644 index 0000000000..6472f77886 --- /dev/null +++ b/packages/linux/linux-ezx-2.6.21/patches/e6-ts.patch @@ -0,0 +1,38 @@ +Index: linux-2.6.21/arch/arm/mach-pxa/ezx-e6.c +=================================================================== +--- linux-2.6.21.orig/arch/arm/mach-pxa/ezx-e6.c 2007-09-07 11:54:52.000000000 -0300 ++++ linux-2.6.21/arch/arm/mach-pxa/ezx-e6.c 2007-09-07 11:55:10.000000000 -0300 +@@ -203,8 +203,33 @@ + }, + }; + ++/* PCAP_TS */ ++struct resource pcap_ts_resources[] = { ++ [0] = { ++ .start = EZX_IRQ_ADCDONE, ++ .end = EZX_IRQ_ADCDONE, ++ .flags = IORESOURCE_IRQ, ++ }, ++ [1] = { ++ .start = EZX_IRQ_TS, ++ .end = EZX_IRQ_TS, ++ .flags = IORESOURCE_IRQ, ++ } ++}; ++ ++struct platform_device pcap_ts_device = { ++ .name = "pcap-ts", ++ .id = -1, ++ .dev = { ++ .parent = &e6_pcap_device.dev, ++ }, ++ .num_resources = ARRAY_SIZE(pcap_ts_resources), ++ .resource = pcap_ts_resources, ++}; ++ + static struct platform_device *devices[] __initdata = { + &e6_pcap_device, ++ &pcap_ts_device, + }; + + static void __init e6_init(void) diff --git a/packages/linux/linux-ezx-2.6.21/patches/ezx-eoc.patch b/packages/linux/linux-ezx-2.6.21/patches/ezx-eoc.patch index f21894e904..77c79fd107 100644 --- a/packages/linux/linux-ezx-2.6.21/patches/ezx-eoc.patch +++ b/packages/linux/linux-ezx-2.6.21/patches/ezx-eoc.patch @@ -1,8 +1,8 @@ Index: linux-2.6.21/arch/arm/mach-pxa/ezx-eoc.c =================================================================== --- /dev/null 1970-01-01 00:00:00.000000000 +0000 -+++ linux-2.6.21/arch/arm/mach-pxa/ezx-eoc.c 2007-09-09 13:33:19.000000000 -0300 -@@ -0,0 +1,270 @@ ++++ linux-2.6.21/arch/arm/mach-pxa/ezx-eoc.c 2007-09-11 20:14:33.000000000 -0300 +@@ -0,0 +1,267 @@ +/* + * EZX EOC Driver for Motorola EZX phones + * @@ -182,11 +182,8 @@ Index: linux-2.6.21/arch/arm/mach-pxa/ezx-eoc.c + + eoc_i2c_client = new_client; + -+ if (pdata && pdata->init) { ++ if (pdata && pdata->init) + pdata->init(); -+ } -+ else -+ return -EINVAL; + + eoc_switch_to_default(); + @@ -276,7 +273,7 @@ Index: linux-2.6.21/arch/arm/mach-pxa/ezx-eoc.c Index: linux-2.6.21/arch/arm/mach-pxa/ezx-eoc.h =================================================================== --- /dev/null 1970-01-01 00:00:00.000000000 +0000 -+++ linux-2.6.21/arch/arm/mach-pxa/ezx-eoc.h 2007-09-07 22:15:52.000000000 -0300 ++++ linux-2.6.21/arch/arm/mach-pxa/ezx-eoc.h 2007-09-09 21:46:27.000000000 -0300 @@ -0,0 +1,33 @@ +/* + * linux/arch/arm/mach-pxa/ezx-eoc.h @@ -313,15 +310,15 @@ Index: linux-2.6.21/arch/arm/mach-pxa/ezx-eoc.h +#endif /* __EZX_EOC_H__ */ Index: linux-2.6.21/arch/arm/mach-pxa/Kconfig =================================================================== ---- linux-2.6.21.orig/arch/arm/mach-pxa/Kconfig 2007-09-07 22:15:52.000000000 -0300 -+++ linux-2.6.21/arch/arm/mach-pxa/Kconfig 2007-09-07 22:15:52.000000000 -0300 +--- linux-2.6.21.orig/arch/arm/mach-pxa/Kconfig 2007-09-09 21:46:27.000000000 -0300 ++++ linux-2.6.21/arch/arm/mach-pxa/Kconfig 2007-09-09 21:46:27.000000000 -0300 @@ -108,6 +108,12 @@ config EZX_PCAP bool "PCAP Support" +config EZX_EOC + tristate "EOC i2c driver of Motorola EZX phones" -+ depends on I2C && EXPERIMENTAL && PXA_EZX_A1200 ++ depends on I2C && EXPERIMENTAL + help + EOC i2c driver of Motorola EZX phones + @@ -330,8 +327,8 @@ Index: linux-2.6.21/arch/arm/mach-pxa/Kconfig depends on EZX_PCAP Index: linux-2.6.21/arch/arm/mach-pxa/Makefile =================================================================== ---- linux-2.6.21.orig/arch/arm/mach-pxa/Makefile 2007-09-07 22:15:52.000000000 -0300 -+++ linux-2.6.21/arch/arm/mach-pxa/Makefile 2007-09-07 22:15:52.000000000 -0300 +--- linux-2.6.21.orig/arch/arm/mach-pxa/Makefile 2007-09-09 21:46:27.000000000 -0300 ++++ linux-2.6.21/arch/arm/mach-pxa/Makefile 2007-09-09 21:46:27.000000000 -0300 @@ -27,6 +27,7 @@ obj-$(CONFIG_EZX_BP) += ezx-bp.o obj-$(CONFIG_EZX_PCAP) += ezx-pcap.o diff --git a/packages/linux/linux-ezx-2.6.21/rokre6/defconfig b/packages/linux/linux-ezx-2.6.21/rokre6/defconfig index 8a1f55c252..95a5a25297 100755 --- a/packages/linux/linux-ezx-2.6.21/rokre6/defconfig +++ b/packages/linux/linux-ezx-2.6.21/rokre6/defconfig @@ -152,6 +152,7 @@ CONFIG_PXA_EZX=y CONFIG_PXA_EZX_E6=y CONFIG_EZX_BP=y CONFIG_EZX_PCAP=y +CONFIG_EZX_EOC=y CONFIG_EZX_EMU=y CONFIG_EZX_EMU_USB=y # CONFIG_EZX_EMU_UART is not set diff --git a/packages/linux/linux-ezx_2.6.21.bb b/packages/linux/linux-ezx_2.6.21.bb index 892d4f2249..366c71fccd 100644 --- a/packages/linux/linux-ezx_2.6.21.bb +++ b/packages/linux/linux-ezx_2.6.21.bb @@ -4,7 +4,7 @@ AUTHOR = "Harald Welte and the OpenEZX Team <openezx-devel@lists.openezx.org>" HOMEPAGE = "http://www.openezx.org" LICENSE = "GPL" EZX = "ezxdev" -PR = "${EZX}-r11" +PR = "${EZX}-r12" inherit kernel @@ -22,9 +22,11 @@ SRC_URI = " \ file://patches/a780-pcap.patch;patch=1 \ file://patches/e680-pcap.patch;patch=1 \ file://patches/a1200-pcap.patch;patch=1 \ + file://patches/e6-pcap.patch;patch=1 \ file://patches/a780-mci.patch;patch=1 \ file://patches/e680-mci.patch;patch=1 \ file://patches/a1200-mci.patch;patch=1 \ + file://patches/e6-mci.patch;patch=1 \ file://patches/pxa27x-udc-support.2.patch;patch=1 \ file://patches/ezx-emu.patch;patch=1 \ file://patches/a780-emu.patch;patch=1 \ @@ -38,8 +40,10 @@ SRC_URI = " \ file://patches/a780-ts.patch;patch=1 \ file://patches/e680-ts.patch;patch=1 \ file://patches/a1200-ts.patch;patch=1 \ + file://patches/e6-ts.patch;patch=1 \ file://patches/ezx-eoc.patch;patch=1 \ file://patches/a1200-eoc.patch;patch=1 \ + file://patches/e6-eoc.patch;patch=1 \ file://patches/ezx-backlight.patch;patch=1 \ file://patches/a780-flip.patch;patch=1 \ file://patches/e680-locksw.patch;patch=1 \ diff --git a/packages/tasks/task-openmoko-feed.bb b/packages/tasks/task-openmoko-feed.bb index 41c63f7dff..bc4a4ff967 100644 --- a/packages/tasks/task-openmoko-feed.bb +++ b/packages/tasks/task-openmoko-feed.bb @@ -1,7 +1,7 @@ DESCRIPTION = "OpenMoko: Misc. Feed Items" SECTION = "openmoko/base" LICENSE = "MIT" -PR = "r12" +PR = "r13" inherit task @@ -10,6 +10,7 @@ RDEPENDS_task-openmoko-feed = "\ bluez-hcidump \ eet evas ecore embryo epsilon edje efreet emotion epdf \ exhibit edje-viewer \ + free42-vga \ gpe-filemanager gpe-gallery gpe-timesheet gpe-todo \ ipkg-link ipkg-utils \ joe \ diff --git a/packages/termcap/.mtn2git_empty b/packages/termcap/.mtn2git_empty new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/packages/termcap/.mtn2git_empty diff --git a/packages/termcap/termcap_11.0.1.bb b/packages/termcap/termcap_11.0.1.bb new file mode 100644 index 0000000000..81953021e0 --- /dev/null +++ b/packages/termcap/termcap_11.0.1.bb @@ -0,0 +1,16 @@ +DESCRIPTION = "Terminal Capabilities File" +SECTION = "base" +HOMEPAGE = "http://www.catb.org/~esr/terminfo/" +LICENSE = "PD" + +SRC_URI = "http://www.catb.org/~esr/terminfo/termtypes.tc.gz" +S = "${WORKDIR}" + +do_install() { + install -d ${D}${sysconfdir} + install -m 0644 termtypes.tc ${D}${sysconfdir}/termcap +} + +PACKAGES = "termcap" +FILES_termcap = "${sysconfdir}" + diff --git a/packages/vte/vte_0.16.8.bb b/packages/vte/vte_0.16.8.bb index 71ca0a04bd..213bd0afbe 100644 --- a/packages/vte/vte_0.16.8.bb +++ b/packages/vte/vte_0.16.8.bb @@ -1,6 +1,7 @@ DESCRIPTION = "vte is a virtual terminal emulator" LICENSE = "LGPL" -PR = "r2" +RDEPENDS = "termcap" +PR = "r3" inherit gnome |