[oe-commits] org.oe.dev merge of '6e9b78a5c703daeb1a1bbbe92e36290093562200'

rwhitby commit openembedded-commits at lists.openembedded.org
Mon Sep 10 14:05:51 UTC 2007


merge of '6e9b78a5c703daeb1a1bbbe92e36290093562200'
     and '92292c95570e7e9726cb59c43fba57b359eba5c2'

Author: rwhitby at nslu2-linux.org
Branch: org.openembedded.dev
Revision: 9dd609dbf8af7e3ffe51f8a36ea61c5cd0f5a35a
ViewMTN: http://monotone.openembedded.org/revision/info/9dd609dbf8af7e3ffe51f8a36ea61c5cd0f5a35a
Files:
1
packages/linux/linux-ezx-2.6.21/patches/a1200-eoc.patch
packages/linux/linux-ezx-2.6.21/patches/asoc-fix-loopback.patch
packages/linux/linux-ezx-2.6.21/patches/ezx-eoc.patch
packages/linux/linux-ezx-2.6.21/patches/i2c-core-fix-a1200.patch
packages/linux/linux-ezx-2.6.21/patches/mtdfix.patch
packages/linux/linux-ezx-2.6.21/patches/pxa27x-udc-fix-a1200.patch
packages/ezx/ezxd_svn.bb
packages/gsm/files/default
packages/gsm/libgsmd_svn.bb
packages/linux/linux-ezx-2.6.21/a1200/defconfig
packages/linux/linux-ezx-2.6.21/patches/a1200-mci.patch
packages/linux/linux-ezx-2.6.21/patches/a1200-pcap.patch
packages/linux/linux-ezx-2.6.21/patches/a1200-ts.patch
packages/linux/linux-ezx-2.6.21/patches/a780-emu.patch
packages/linux/linux-ezx-2.6.21/patches/a780-flip.patch
packages/linux/linux-ezx-2.6.21/patches/a780-kbd.patch
packages/linux/linux-ezx-2.6.21/patches/a780-leds.patch
packages/linux/linux-ezx-2.6.21/patches/a780-mci.patch
packages/linux/linux-ezx-2.6.21/patches/a780-pcap.patch
packages/linux/linux-ezx-2.6.21/patches/a780-ts.patch
packages/linux/linux-ezx-2.6.21/patches/a780-vibrator.patch
packages/linux/linux-ezx-2.6.21/patches/asoc-pxa-ssp.patch
packages/linux/linux-ezx-2.6.21/patches/e680-emu.patch
packages/linux/linux-ezx-2.6.21/patches/e680-kbd.patch
packages/linux/linux-ezx-2.6.21/patches/e680-leds.patch
packages/linux/linux-ezx-2.6.21/patches/e680-locksw.patch
packages/linux/linux-ezx-2.6.21/patches/e680-mci.patch
packages/linux/linux-ezx-2.6.21/patches/e680-pcap.patch
packages/linux/linux-ezx-2.6.21/patches/e680-ts.patch
packages/linux/linux-ezx-2.6.21/patches/ezx-asoc.patch
packages/linux/linux-ezx-2.6.21/patches/ezx-bp.patch
packages/linux/linux-ezx-2.6.21/patches/ezx-emu.patch
packages/linux/linux-ezx-2.6.21/patches/ezx-mtd-map.patch
packages/linux/linux-ezx-2.6.21/patches/ezx-pcap.patch
packages/linux/linux-ezx-2.6.21/patches/pcap-ts.patch
packages/linux/linux-ezx_2.6.21.bb
packages/tasks/task-openmoko-feed.bb
Diffs:

#
# mt diff -r6e9b78a5c703daeb1a1bbbe92e36290093562200 -r9dd609dbf8af7e3ffe51f8a36ea61c5cd0f5a35a
#
# 
# 
# add_file "packages/linux/linux-ezx-2.6.21/patches/a1200-eoc.patch"
#  content [f77d63718749f790e05d457841ea6d193c0797cd]
# 
# add_file "packages/linux/linux-ezx-2.6.21/patches/asoc-fix-loopback.patch"
#  content [cf0f0538d6fd2e3642e23be9aaab5902a9578cd0]
# 
# add_file "packages/linux/linux-ezx-2.6.21/patches/ezx-eoc.patch"
#  content [7ae0fbd7af5f0ed2b8633335ff8bca92accc11a0]
# 
# add_file "packages/linux/linux-ezx-2.6.21/patches/i2c-core-fix-a1200.patch"
#  content [7ec7be6ca9d7a6867be069bc460b05b7b0f852ad]
# 
# add_file "packages/linux/linux-ezx-2.6.21/patches/mtdfix.patch"
#  content [4999f0af3186f5d8ef8c3d3abd2273375fae298e]
# 
# add_file "packages/linux/linux-ezx-2.6.21/patches/pxa27x-udc-fix-a1200.patch"
#  content [ddc0a46af51fb941a7c75ad20385ff9471c649d2]
# 
# patch "packages/ezx/ezxd_svn.bb"
#  from [a08a258ddc81759474347263c79a743e0fff813d]
#    to [b56176292b0c3556aa88055dc138488378e86453]
# 
# patch "packages/gsm/files/default"
#  from [d11d3c89b215d54d2e182754e1343c9a2fb716d2]
#    to [17a638c1cc8871a48e1059c2c096b6c8a9d148fe]
# 
# patch "packages/gsm/libgsmd_svn.bb"
#  from [367a54f8a664bfa37b00160037aa16f940344d46]
#    to [f586a1fade3bbd50750ea77934c2b6ecff0ebad5]
# 
# patch "packages/linux/linux-ezx-2.6.21/a1200/defconfig"
#  from [4ef64f707a04f118eafe068813611ffd75857ab7]
#    to [9e8c88b007bf864832fb39e66adebdb694fdefdf]
# 
# patch "packages/linux/linux-ezx-2.6.21/patches/a1200-mci.patch"
#  from [13a39e72f023eb78f0bac083c2620b4a5478c3d7]
#    to [d985114c21b26cf97653aa96cdd3b435f8c5a02a]
# 
# patch "packages/linux/linux-ezx-2.6.21/patches/a1200-pcap.patch"
#  from [0f90a1491db64b28b6ce108c9f9cee0b7e41bfbc]
#    to [5e22bad433ed0b80267cd99383a1d0871cf5bc1e]
# 
# patch "packages/linux/linux-ezx-2.6.21/patches/a1200-ts.patch"
#  from [5201373a1d7ad5ee6136bc4cb3e73812be57cc07]
#    to [f9f2a5e0463bcd8fc66b335e3d5b662e155cb5cc]
# 
# patch "packages/linux/linux-ezx-2.6.21/patches/a780-emu.patch"
#  from [602876405e12900a39f64a98f3d5d0dba635fded]
#    to [766602839f3713c5f0d1c4f65b8216ae599cc01e]
# 
# patch "packages/linux/linux-ezx-2.6.21/patches/a780-flip.patch"
#  from [afbeec5b33c72c4b26287a2bd6a8225f05f1541a]
#    to [29a766c5a2ce245e4554dcfcf18c3f2f74b5bf9d]
# 
# patch "packages/linux/linux-ezx-2.6.21/patches/a780-kbd.patch"
#  from [dd29021aadd74127d9ff587efd2969a0ebfa9efc]
#    to [73a4b0dc8f087c7c5ac7bf250d1daba758d6dcf0]
# 
# patch "packages/linux/linux-ezx-2.6.21/patches/a780-leds.patch"
#  from [84ae3313be349468651a6400df771099808ad2e2]
#    to [9c32a8f65838003aabb3489d974d63dcd2ee58ff]
# 
# patch "packages/linux/linux-ezx-2.6.21/patches/a780-mci.patch"
#  from [42af411c050dcb390441653044e6ace32293ef1d]
#    to [07c29e9a71ecbbf0acc2f7c5f454916539981248]
# 
# patch "packages/linux/linux-ezx-2.6.21/patches/a780-pcap.patch"
#  from [0054a06370574888fba742e1dbd258f902880e59]
#    to [1fec906b0befd6c0a5c3422d857dedb2c97b35aa]
# 
# patch "packages/linux/linux-ezx-2.6.21/patches/a780-ts.patch"
#  from [dc8a4d515fdf17ea106e0617a01f1b1bc49fe563]
#    to [7b39c2bd7c332b889f31d46f8334d67f91475d66]
# 
# patch "packages/linux/linux-ezx-2.6.21/patches/a780-vibrator.patch"
#  from [712d0391f4a5f3dafc0feaca39b7c340d0695218]
#    to [5a2aa285b70a55da7f88699beb91007db0e03d13]
# 
# patch "packages/linux/linux-ezx-2.6.21/patches/asoc-pxa-ssp.patch"
#  from [9db4415e11942ffb94911eea3de1ca4fc4ae35aa]
#    to [418cda71378e8ea4557f480c3354e0dca0cbf2a8]
# 
# patch "packages/linux/linux-ezx-2.6.21/patches/e680-emu.patch"
#  from [dc16d82460218bbf8e0653913ab8e7504c348920]
#    to [d89e08cb147551514d191320969bfeddd3238149]
# 
# patch "packages/linux/linux-ezx-2.6.21/patches/e680-kbd.patch"
#  from [58e64fd44cb11e55e73fa11e1a3390b0146b6b4d]
#    to [12cd98a450ccd08e439ca97b9bdbb422aa8664a5]
# 
# patch "packages/linux/linux-ezx-2.6.21/patches/e680-leds.patch"
#  from [5b72f0d0db4b6593deb052f28e5eb976bfd9e38a]
#    to [af6c8041e4e6bf4a2d427232204c9aba44d781a0]
# 
# patch "packages/linux/linux-ezx-2.6.21/patches/e680-locksw.patch"
#  from [bc12298c37c1469c69c6a83808b64b3fa7789469]
#    to [1cf6aa50242f3d2a0c85f679cde0c794da8e002b]
# 
# patch "packages/linux/linux-ezx-2.6.21/patches/e680-mci.patch"
#  from [45d9a695b9a4e437a2dff9e6cafdc32a830251a9]
#    to [3023cd5f891d849e2696b62619e312e27a205bbe]
# 
# patch "packages/linux/linux-ezx-2.6.21/patches/e680-pcap.patch"
#  from [9d1d899a5c8081eab292a354118938026e691577]
#    to [4a93daf531ea5efcb13b76e22e817434f915f871]
# 
# patch "packages/linux/linux-ezx-2.6.21/patches/e680-ts.patch"
#  from [cd605df8c010fcd3047b4d198dc45b78ed10a9d3]
#    to [8051df6da0e38e21e0695a60eb7433ab166c3ba7]
# 
# patch "packages/linux/linux-ezx-2.6.21/patches/ezx-asoc.patch"
#  from [f6a1977a1ba4523b5c615222a4400044320bcefb]
#    to [0e9b29e1290395508a508a3d187576b407f289d4]
# 
# patch "packages/linux/linux-ezx-2.6.21/patches/ezx-bp.patch"
#  from [bb9396f5b9a6da4233d597edc460d6a2b8d120f1]
#    to [9ec6eff8d0c3541b4687c183a1134ea93fc7a632]
# 
# patch "packages/linux/linux-ezx-2.6.21/patches/ezx-emu.patch"
#  from [817e09bc6527cbc50e80a463f1b3840c8dc92fc2]
#    to [c54f3c12fa1ea2cac347ff0b0096910cfe15e281]
# 
# patch "packages/linux/linux-ezx-2.6.21/patches/ezx-mtd-map.patch"
#  from [2d161bf4075e1a6cac84b70f438c493a11297ed1]
#    to [c3b4abf6bb849db45ecc44daeb17386e5ff48303]
# 
# patch "packages/linux/linux-ezx-2.6.21/patches/ezx-pcap.patch"
#  from [60cd6cf7d9fca46f08e481a418a3947bcf0463c0]
#    to [e18b7e6b405e79f05f31ea9d6666f81b4e5ceecd]
# 
# patch "packages/linux/linux-ezx-2.6.21/patches/pcap-ts.patch"
#  from [5172548070cfe66605c7cca29e646ccd8caa6c41]
#    to [2244fd3c4bcf7060be8cef2c3749a8cfc0f45eb4]
# 
# patch "packages/linux/linux-ezx_2.6.21.bb"
#  from [41eb0c964071eaa3a39a267466f9ca7188c0820e]
#    to [5d1ec4b9844eed9888871827926c283e7ba4f98c]
# 
============================================================
--- packages/linux/linux-ezx-2.6.21/patches/a1200-eoc.patch	f77d63718749f790e05d457841ea6d193c0797cd
+++ packages/linux/linux-ezx-2.6.21/patches/a1200-eoc.patch	f77d63718749f790e05d457841ea6d193c0797cd
@@ -0,0 +1,82 @@
+Index: linux-2.6.21/arch/arm/mach-pxa/ezx-a1200.c
+===================================================================
+--- linux-2.6.21.orig/arch/arm/mach-pxa/ezx-a1200.c	2007-09-07 22:15:52.000000000 -0300
++++ linux-2.6.21/arch/arm/mach-pxa/ezx-a1200.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 a1200_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 a1200_eoc_platform_data = {
++	.init		= a1200_eoc_init,
++};
++
++struct platform_device a1200_eoc_device = {
++	.name		= "ezx-eoc",
++	.id		= -1,
++	.dev		= {
++		.platform_data = &a1200_eoc_platform_data,
++	},
++};
++
+ static struct platform_device *devices[] __initdata = {
+ 	&a1200_pcap_device,
+ 	&pcap_ts_device,
++	&a1200_eoc_device,
+ };
+ 
++
+ static void __init a1200_init(void)
+ {
+ 	set_pxa_fb_info(&a1200_fb_info);
============================================================
--- packages/linux/linux-ezx-2.6.21/patches/asoc-fix-loopback.patch	cf0f0538d6fd2e3642e23be9aaab5902a9578cd0
+++ packages/linux/linux-ezx-2.6.21/patches/asoc-fix-loopback.patch	cf0f0538d6fd2e3642e23be9aaab5902a9578cd0
@@ -0,0 +1,14 @@
+Index: linux-2.6.21/sound/soc/pxa/pxa2xx-pcm.c
+===================================================================
+--- linux-2.6.21.orig/sound/soc/pxa/pxa2xx-pcm.c	2007-09-02 22:30:56.000000000 -0300
++++ linux-2.6.21/sound/soc/pxa/pxa2xx-pcm.c	2007-09-02 22:36:26.000000000 -0300
+@@ -153,7 +153,8 @@
+ static int pxa2xx_pcm_prepare(struct snd_pcm_substream *substream)
+ {
+ 	struct pxa2xx_runtime_data *prtd = substream->runtime->private_data;
+-
++	/* no dma if on loopback */
++	if (!prtd->params) return 0;
+ 	DCSR(prtd->dma_ch) &= ~DCSR_RUN;
+ 	DCSR(prtd->dma_ch) = 0;
+ 	DCMD(prtd->dma_ch) = 0;
============================================================
--- packages/linux/linux-ezx-2.6.21/patches/ezx-eoc.patch	7ae0fbd7af5f0ed2b8633335ff8bca92accc11a0
+++ packages/linux/linux-ezx-2.6.21/patches/ezx-eoc.patch	7ae0fbd7af5f0ed2b8633335ff8bca92accc11a0
@@ -0,0 +1,342 @@
+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 @@
++/*
++ *  EZX EOC Driver for Motorola EZX phones
++ *
++ *  Copyright (C) 2007 Alex Zhang <celeber2 at gmail.com>
++ *
++ *  This program is free software; you can redistribute it and/or modify
++ *  it under the terms of the GNU General Public License version 2 as
++ *  published by the Free Software Foundation.
++ */
++
++#include <linux/kernel.h>
++#include <linux/init.h>
++#include <linux/i2c.h>
++#include <linux/platform_device.h>
++
++#include <asm/arch/hardware.h>
++#include <asm/arch/pxa-regs.h>
++#include <asm/arch/ezx.h>
++
++#include "ezx-eoc.h"
++
++#if 1
++#define EOC_DBG printk
++#else
++#define EOC_DBG(x, args...)
++#endif
++
++#define EOC_REG_ADDR_SIZE  1
++#define EOC_REG_DATA_SIZE  3
++
++struct ezx_eoc_platform_data *pdata;
++static int eoc_func = EOC_FUNC_USB_NET;
++static const char eoc_i2c_driver_name[] = "ezx-eoc";
++
++/* Addresses to scan */
++static unsigned short normal_i2c[] = {
++    0x17,        /* Address for version 2.0 and above  */
++   // 0x7C,      /* Address for versions prior too 2.0 */
++	I2C_CLIENT_END
++};
++
++/* I2C Magic */
++I2C_CLIENT_INSMOD;
++
++static int ezx_eoc_attach_adapter(struct i2c_adapter *adapter);
++static int ezx_eoc_detect(struct i2c_adapter *adapter, int address, int kind);
++static int ezx_eoc_detach_client(struct i2c_client *client);
++
++static struct i2c_client *eoc_i2c_client = NULL;
++
++static struct i2c_driver eoc_i2c_driver = {
++	.driver = {
++		.name	= (char *)eoc_i2c_driver_name,
++	},
++	.id		= I2C_DRIVERID_EEPROM,
++	.attach_adapter	= ezx_eoc_attach_adapter,
++	.detach_client	= ezx_eoc_detach_client,
++};
++
++int eoc_reg_read(int reg, unsigned int *reg_value)
++{
++    unsigned char reg_num = reg;
++    unsigned char value[EOC_REG_DATA_SIZE];
++    int retval;
++
++    struct i2c_msg msgs[2] =
++    {
++        { 0, 0, EOC_REG_ADDR_SIZE, &reg_num },
++        { 0, I2C_M_RD, EOC_REG_DATA_SIZE, value }
++    };
++
++    /* check if we have initialized */ /*not necessary --WM
++    if (eoc_i2c_client == NULL)
++    {
++        EOC_DBG("eoc_reg_read: not initialized\n");
++        return -EINVAL;
++    }
++*/
++	msgs[0].addr = msgs[1].addr = eoc_i2c_client->addr;
++
++    /* transfer message to client */
++    retval = i2c_transfer(eoc_i2c_client->adapter, msgs, 2);
++    if (retval >= 0)
++    {
++		*reg_value  = (value[2] <<  0);
++        *reg_value |= (value[1] <<  8);
++        *reg_value |= (value[0] << 16);
++    }
++    return retval;
++}
++EXPORT_SYMBOL_GPL(eoc_reg_read);
++
++int eoc_reg_write(int reg, unsigned int reg_value)
++{
++    unsigned char value[EOC_REG_ADDR_SIZE + EOC_REG_DATA_SIZE];
++    int retval;
++
++    /* check if we have initialized */ /*not necessary --WM
++    if (eoc_i2c_client == NULL)
++    {
++        EOC_DBG("eoc_reg_write: not initialized\n");
++        return -EINVAL;
++    }
++*/
++    /* Copy the data into a buffer into the correct format */
++    value[0] = reg;
++    value[1] = (reg_value >> 16) & 0xFF;
++    value[2] = (reg_value >>  8) & 0xFF;
++    value[3] = (reg_value >>  0) & 0xFF;
++
++    /* Write the data to the EOC */
++    retval = i2c_master_send (eoc_i2c_client, value, EOC_REG_ADDR_SIZE + EOC_REG_DATA_SIZE);
++
++    return retval;
++}
++EXPORT_SYMBOL_GPL(eoc_reg_write);
++
++static void eoc_switch_to_usb(void)
++{
++	pxa_gpio_mode(GPIO34_USB_P2_2_MD);
++	pxa_gpio_mode(GPIO35_USB_P2_1_MD);
++	pxa_gpio_mode(GPIO36_USB_P2_4_MD);
++	pxa_gpio_mode(GPIO39_USB_P2_6_MD);
++	pxa_gpio_mode(GPIO40_USB_P2_5_MD);
++	pxa_gpio_mode(GPIO53_USB_P2_3_MD);
++	EOC_DBG("ALEX;*********************************************emu_switch_to_usb;\n");
++}
++
++static void eoc_switch_to_nothing(void)
++{
++	pxa_gpio_mode(GPIO34_TXENB | GPIO_OUT);
++	set_GPIO(GPIO34_TXENB);
++	pxa_gpio_mode(GPIO35_XRXD  | GPIO_IN);
++	pxa_gpio_mode(GPIO36_VMOUT | GPIO_IN);
++	pxa_gpio_mode(GPIO39_VPOUT | GPIO_IN);
++	pxa_gpio_mode(GPIO40_VPIN  | GPIO_IN);
++	pxa_gpio_mode(GPIO53_VMIN  | GPIO_IN);
++}
++
++static void eoc_switch_to_default(void)
++{
++	switch (eoc_func) {
++	case EOC_FUNC_USB_NET:
++		eoc_switch_to_usb();
++		break;
++	case EOC_FUNC_NOTHING:
++		eoc_switch_to_nothing();
++		break;
++	}
++}
++
++
++static int ezx_eoc_attach_adapter(struct i2c_adapter *adapter)
++{
++	return i2c_probe(adapter, &addr_data, ezx_eoc_detect);
++}
++
++/* This function is called by i2c_probe */
++static int ezx_eoc_detect(struct i2c_adapter *adapter, int address, int kind)
++{
++	struct i2c_client *new_client;
++	int err = 0;
++
++	if (!(new_client = kmalloc(sizeof(struct i2c_client), GFP_KERNEL)))
++		return -ENOMEM;
++
++	new_client->addr = address;
++	new_client->adapter = adapter;
++	new_client->driver = &eoc_i2c_driver;
++	new_client->flags = 0;
++	strlcpy(new_client->name, eoc_i2c_driver_name, I2C_NAME_SIZE);
++
++	if ((err = i2c_attach_client(new_client))) {
++		kfree(new_client);
++		return err;
++	}
++
++	eoc_i2c_client = new_client;
++
++	if (pdata && pdata->init) {
++		pdata->init();
++		}
++	else
++		return -EINVAL;
++
++	eoc_switch_to_default();
++
++	return 0;
++}
++
++static int ezx_eoc_detach_client(struct i2c_client *client)
++{
++	int err;
++
++	err = i2c_detach_client(client);
++	if (err)
++		return err;
++
++	return 0;
++}
++
++static int __init ezx_eoc_probe(struct platform_device *dev)
++{
++	int ret;
++
++	 pdata = dev->dev.platform_data;
++
++	ret = i2c_add_driver(&eoc_i2c_driver);
++	if (ret != 0)
++		return -EINVAL;
++	
++	/* 
++	 * I think we should save platform_data and call init and eoc_switch
++	 * from ezx_eoc_detect, after client is setup.
++	 * And there is no need for all the "check if initialised" checks if 
++	 * you assure that you only call read/write after the client is set.
++	 * Probably, this was causing the crash on i2c-core too.
++	 * --WM
++	 */
++
++	/* FIXME: should set udc_info here -WM */
++	return 0;
++}
++
++static int ezx_eoc_remove(struct platform_device *dev)
++{
++	return i2c_del_driver(&eoc_i2c_driver);
++}
++
++static int ezx_eoc_suspend(struct platform_device *dev, pm_message_t state)
++{
++	eoc_switch_to_nothing();
++	return 0;
++}
++
++static int ezx_eoc_resume(struct platform_device *dev)
++{
++	eoc_switch_to_default();
++	return 0;
++}
++
++static struct platform_driver ezx_eoc_driver = {
++	.probe		= ezx_eoc_probe,
++	.remove		= ezx_eoc_remove,
++	.suspend	= ezx_eoc_suspend,
++	.resume		= ezx_eoc_resume,
++	.driver		= {
++		.name	= "ezx-eoc",
++		.owner	= THIS_MODULE,
++	},
++};
++
++int __init ezx_eoc_init(void)
++{
++	return platform_driver_register(&ezx_eoc_driver);
++}
++
++void ezx_eoc_exit(void)
++{
++	return platform_driver_unregister(&ezx_eoc_driver);
++}
++
++MODULE_AUTHOR("Alex Zha%s
>>> DIFF TRUNCATED @ 16K


#
# mt diff -r92292c95570e7e9726cb59c43fba57b359eba5c2 -r9dd609dbf8af7e3ffe51f8a36ea61c5cd0f5a35a
#
# 
# 
# patch "packages/tasks/task-openmoko-feed.bb"
#  from [27ffe6af061cfc31ec380e41895185af7ca6d743]
#    to [44daf5badff88f9c9cd129df8d27998b67606cb4]
# 
============================================================
--- packages/tasks/task-openmoko-feed.bb	27ffe6af061cfc31ec380e41895185af7ca6d743
+++ packages/tasks/task-openmoko-feed.bb	44daf5badff88f9c9cd129df8d27998b67606cb4
@@ -1,7 +1,7 @@ LICENSE = "MIT"
 DESCRIPTION = "OpenMoko: Misc. Feed Items"
 SECTION = "openmoko/base"
 LICENSE = "MIT"
-PR = "r11"
+PR = "r12"
 
 inherit task
 
@@ -24,7 +24,7 @@ RDEPENDS_task-openmoko-feed = "\
   python python-pygtk python-pyserial \
   ruby \
   synergy \
-  timezones \
+  tzdata \
   tor \
   vnc \
 "






More information about the Openembedded-commits mailing list