Send commitlog mailing list submissions to
        [email protected]

To subscribe or unsubscribe via the World Wide Web, visit
        http://lists.openmoko.org/mailman/listinfo/commitlog
or, via email, send a message with subject or body 'help' to
        [EMAIL PROTECTED]

You can reach the person managing the list at
        [EMAIL PROTECTED]

When replying, please edit your Subject line so it is more specific
than "Re: Contents of commitlog digest..."
Today's Topics:

   1. r3903 - in
      trunk/src/target/OM-2007.2/panel-plugins/openmoko-panel-memory: .
      src ([EMAIL PROTECTED])
   2. r3904 - branches/src/target/kernel/2.6.24.x/patches
      ([EMAIL PROTECTED])
   3. r3905 - branches/src/target/kernel/2.6.24.x/patches
      ([EMAIL PROTECTED])
   4. r3906 - branches/src/target/kernel/2.6.24.x/patches
      ([EMAIL PROTECTED])
   5. r3907 - branches/src/target/kernel/2.6.24.x/patches
      ([EMAIL PROTECTED])
   6. r3908 - branches/src/target/kernel/2.6.24.x/patches
      ([EMAIL PROTECTED])
   7. r3909 - branches/src/target/kernel/2.6.24.x/patches
      ([EMAIL PROTECTED])
--- Begin Message ---
Author: chris
Date: 2008-01-21 17:10:20 +0100 (Mon, 21 Jan 2008)
New Revision: 3903

Modified:
   trunk/src/target/OM-2007.2/panel-plugins/openmoko-panel-memory/ChangeLog
   
trunk/src/target/OM-2007.2/panel-plugins/openmoko-panel-memory/src/openmoko-panel-memory.c
Log:
        * src/openmoko-panel-memory.c: (update), (sim_full_cb),
        (phone_full_cb), (mb_panel_applet_create):
        Update to match new dbus API


Modified: 
trunk/src/target/OM-2007.2/panel-plugins/openmoko-panel-memory/ChangeLog
===================================================================
--- trunk/src/target/OM-2007.2/panel-plugins/openmoko-panel-memory/ChangeLog    
2008-01-21 16:05:58 UTC (rev 3902)
+++ trunk/src/target/OM-2007.2/panel-plugins/openmoko-panel-memory/ChangeLog    
2008-01-21 16:10:20 UTC (rev 3903)
@@ -1,5 +1,11 @@
 2008-01-21  Chris Lord  <[EMAIL PROTECTED]>
 
+       * src/openmoko-panel-memory.c: (update), (sim_full_cb),
+       (phone_full_cb), (mb_panel_applet_create):
+       Update to match new dbus API
+
+2008-01-21  Chris Lord  <[EMAIL PROTECTED]>
+
        * src/openmoko-panel-memory.c: (memory_full_cb):
        Don't add multiple idles/try to remove non-existant ones
 

Modified: 
trunk/src/target/OM-2007.2/panel-plugins/openmoko-panel-memory/src/openmoko-panel-memory.c
===================================================================
--- 
trunk/src/target/OM-2007.2/panel-plugins/openmoko-panel-memory/src/openmoko-panel-memory.c
  2008-01-21 16:05:58 UTC (rev 3902)
+++ 
trunk/src/target/OM-2007.2/panel-plugins/openmoko-panel-memory/src/openmoko-panel-memory.c
  2008-01-21 16:10:20 UTC (rev 3903)
@@ -28,6 +28,9 @@
        NotifyNotification *notification;
        
        guint blink_idle;
+       
+       gboolean sim_full;
+       gboolean phone_full;
 } MemoryAppletData;
 
 static gboolean
@@ -40,10 +43,9 @@
 }
 
 static void
-memory_full_cb (DBusGProxy *proxy, gboolean sim_full, gboolean phone_full,
-               MemoryAppletData *data)
+update (MemoryAppletData *data)
 {
-       if (sim_full || phone_full) {
+       if (data->sim_full || data->phone_full) {
                const gchar *message;
                
                if (!data->blink_idle) {
@@ -52,9 +54,9 @@
                                (GSourceFunc)blink_idle, data);
                }
                
-               if (sim_full && phone_full) {
+               if (data->sim_full && data->phone_full) {
                        message = "Phone and SIM memory full";
-               } else if (sim_full) {
+               } else if (data->sim_full) {
                        message = "SIM memory full";
                } else {
                        message = "Phone memory full";
@@ -73,6 +75,20 @@
        }
 }
 
+static void
+sim_full_cb (DBusGProxy *proxy, gboolean full, MemoryAppletData *data)
+{
+       data->sim_full = full;
+       update (data);
+}
+
+static void
+phone_full_cb (DBusGProxy *proxy, gboolean full, MemoryAppletData *data)
+{
+       data->phone_full = full;
+       update (data);
+}
+
 G_MODULE_EXPORT GtkWidget *
 mb_panel_applet_create (const char* id, GtkOrientation orientation)
 {
@@ -93,10 +109,14 @@
                "org.openmoko.PhoneKit", "/org/openmoko/PhoneKit/Sms",
                "org.openmoko.PhoneKit.Sms");
        
-       dbus_g_proxy_add_signal (data->sms_proxy, "MemoryFull",
-               G_TYPE_BOOLEAN, G_TYPE_BOOLEAN, G_TYPE_INVALID);
-       dbus_g_proxy_connect_signal (data->sms_proxy, "MemoryFull",
-               G_CALLBACK (memory_full_cb), data, NULL);
+       dbus_g_proxy_add_signal (data->sms_proxy, "SimMemoryState",
+               G_TYPE_BOOLEAN, G_TYPE_INVALID);
+       dbus_g_proxy_add_signal (data->sms_proxy, "PhoneMemoryState",
+               G_TYPE_BOOLEAN, G_TYPE_INVALID);
+       dbus_g_proxy_connect_signal (data->sms_proxy, "SimMemoryState",
+               G_CALLBACK (sim_full_cb), data, NULL);
+       dbus_g_proxy_connect_signal (data->sms_proxy, "PhoneMemoryState",
+               G_CALLBACK (phone_full_cb), data, NULL);
        
        notify_init ("openmoko-panel-memory");
        data->notification = notify_notification_new ("Memory full", "",
@@ -109,6 +129,15 @@
        gtk_widget_show (data->image);
        moko_panel_applet_set_widget (data->applet, data->image);
        
+       if (!dbus_g_proxy_call (data->sms_proxy, "GetMemoryStatus", &error,
+            G_TYPE_INVALID, G_TYPE_BOOLEAN, &data->sim_full,
+            G_TYPE_BOOLEAN, &data->phone_full, G_TYPE_INVALID)) {
+               g_warning ("Error calling GetMemoryStatus: %s", error->message);
+               g_error_free (error);
+       } else {
+               update (data);
+       }
+       
        return GTK_WIDGET (data->applet);
 }
 




--- End Message ---
--- Begin Message ---
Author: werner
Date: 2008-01-21 21:50:56 +0100 (Mon, 21 Jan 2008)
New Revision: 3904

Added:
   branches/src/target/kernel/2.6.24.x/patches/fix-EVIOCGRAB-semantics.patch
Modified:
   branches/src/target/kernel/2.6.24.x/patches/series
Log:
This is the first of a series of "lost" patches, which were added to the
OpenMoko OpenEmbedded tree, but never actually made it into the kernel.

Note: this patch is a mere band aid, nothing clean or reliable. In fact,
I adapted the 2.6.22.5 more by instinct than by anything else ...

- Werner

<mickeyl> the EVIOCGRAB semantics is a patch that the input subsystem
+maintainer seems to ignore
<mickeyl> perhaps he doesn't see the problem
<mickeyl> the GRAB mode _was_ to prevent /dev/mice grabbing events from
+touchscreen it doesn't understand. (which in turns, confuses the X server).
+however, in the current implementation it also prevents anyone else from
+reading /dev/input, which is obviously a problem.



Added: branches/src/target/kernel/2.6.24.x/patches/fix-EVIOCGRAB-semantics.patch
===================================================================
--- branches/src/target/kernel/2.6.24.x/patches/fix-EVIOCGRAB-semantics.patch   
2008-01-21 16:10:20 UTC (rev 3903)
+++ branches/src/target/kernel/2.6.24.x/patches/fix-EVIOCGRAB-semantics.patch   
2008-01-21 20:50:56 UTC (rev 3904)
@@ -0,0 +1,83 @@
+Index: linux-2.6.24-rc7/drivers/input/evdev.c
+===================================================================
+--- linux-2.6.24-rc7.orig/drivers/input/evdev.c
++++ linux-2.6.24-rc7/drivers/input/evdev.c
+@@ -28,7 +28,7 @@
+       char name[16];
+       struct input_handle handle;
+       wait_queue_head_t wait;
+-      struct evdev_client *grab;
++      int *grab;
+       struct list_head client_list;
+       spinlock_t client_lock; /* protects client_list */
+       struct mutex mutex;
+@@ -39,6 +39,7 @@
+       struct input_event buffer[EVDEV_BUFFER_SIZE];
+       int head;
+       int tail;
++      int grab;
+       spinlock_t buffer_lock; /* protects access to buffer, head and tail */
+       struct fasync_struct *fasync;
+       struct evdev *evdev;
+@@ -79,12 +80,8 @@
+ 
+       rcu_read_lock();
+ 
+-      client = rcu_dereference(evdev->grab);
+-      if (client)
++      list_for_each_entry_rcu(client, &evdev->client_list, node)
+               evdev_pass_event(client, &event);
+-      else
+-              list_for_each_entry_rcu(client, &evdev->client_list, node)
+-                      evdev_pass_event(client, &event);
+ 
+       rcu_read_unlock();
+ 
+@@ -135,14 +132,15 @@
+ {
+       int error;
+ 
+-      if (evdev->grab)
++      if (client->grab)
+               return -EBUSY;
+ 
+-      error = input_grab_device(&evdev->handle);
+-      if (error)
+-              return error;
+-
+-      rcu_assign_pointer(evdev->grab, client);
++      if (!evdev->grab++) {
++          error = input_grab_device(&evdev->handle);
++          if (error)
++                  return error;
++      }
++      client->grab = 1;
+       synchronize_rcu();
+ 
+       return 0;
+@@ -150,12 +148,12 @@
+ 
+ static int evdev_ungrab(struct evdev *evdev, struct evdev_client *client)
+ {
+-      if (evdev->grab != client)
++      if (!client->grab)
+               return  -EINVAL;
+ 
+-      rcu_assign_pointer(evdev->grab, NULL);
+-      synchronize_rcu();
+-      input_release_device(&evdev->handle);
++      if (!--evdev->grab && evdev->exist)
++              input_release_device(&evdev->handle);
++      client->grab = 0;
+ 
+       return 0;
+ }
+@@ -230,7 +228,7 @@
+       struct evdev *evdev = client->evdev;
+ 
+       mutex_lock(&evdev->mutex);
+-      if (evdev->grab == client)
++      if (client->grab)
+               evdev_ungrab(evdev, client);
+       mutex_unlock(&evdev->mutex);
+ 

Modified: branches/src/target/kernel/2.6.24.x/patches/series
===================================================================
--- branches/src/target/kernel/2.6.24.x/patches/series  2008-01-21 16:10:20 UTC 
(rev 3903)
+++ branches/src/target/kernel/2.6.24.x/patches/series  2008-01-21 20:50:56 UTC 
(rev 3904)
@@ -70,6 +70,9 @@
 # local hack
 fail-unless-uimage.patch
 
+# OE patches
+fix-EVIOCGRAB-semantics.patch
+
 # Atheros WLAN driver
 pnp_fixes.patch
 atheros_2_0_function.patch




--- End Message ---
--- Begin Message ---
Author: werner
Date: 2008-01-21 22:13:30 +0100 (Mon, 21 Jan 2008)
New Revision: 3905

Modified:
   branches/src/target/kernel/2.6.24.x/patches/gta01-vibrator.patch
Log:
"Lost OE" patch gta-vibro-pwm-suspend.patch (by Graeme Gregory)

gta01-vibrator.patch:
- drivers/leds/leds-neo1973-vibrator.c (gta01vib_suspend, gta01vib_resume):
  moved below gta01vib_init_hw, so that we can call it cleanly
- drivers/leds/leds-neo1973-vibrator.c (gta01vib_resume): call gta01vib_init_hw
  if we have a PWM



Modified: branches/src/target/kernel/2.6.24.x/patches/gta01-vibrator.patch
===================================================================
--- branches/src/target/kernel/2.6.24.x/patches/gta01-vibrator.patch    
2008-01-21 20:50:56 UTC (rev 3904)
+++ branches/src/target/kernel/2.6.24.x/patches/gta01-vibrator.patch    
2008-01-21 21:13:30 UTC (rev 3905)
@@ -4,10 +4,10 @@
 
 Signed-off-by: Harald Welte <[EMAIL PROTECTED]>
 
-Index: linux-2.6/drivers/leds/Kconfig
+Index: linux-2.6.24-rc7/drivers/leds/Kconfig
 ===================================================================
---- linux-2.6.orig/drivers/leds/Kconfig
-+++ linux-2.6/drivers/leds/Kconfig
+--- linux-2.6.24-rc7.orig/drivers/leds/Kconfig
++++ linux-2.6.24-rc7/drivers/leds/Kconfig
 @@ -57,7 +57,7 @@
  
  config LEDS_S3C24XX
@@ -30,10 +30,10 @@
  comment "LED Triggers"
  
  config LEDS_TRIGGERS
-Index: linux-2.6/drivers/leds/Makefile
+Index: linux-2.6.24-rc7/drivers/leds/Makefile
 ===================================================================
---- linux-2.6.orig/drivers/leds/Makefile
-+++ linux-2.6/drivers/leds/Makefile
+--- linux-2.6.24-rc7.orig/drivers/leds/Makefile
++++ linux-2.6.24-rc7/drivers/leds/Makefile
 @@ -19,6 +19,7 @@
  obj-$(CONFIG_LEDS_COBALT_RAQ)         += leds-cobalt-raq.o
  obj-$(CONFIG_LEDS_GPIO)                       += leds-gpio.o
@@ -42,11 +42,11 @@
  
  # LED Triggers
  obj-$(CONFIG_LEDS_TRIGGER_TIMER)      += ledtrig-timer.o
-Index: linux-2.6/drivers/leds/leds-neo1973-vibrator.c
+Index: linux-2.6.24-rc7/drivers/leds/leds-neo1973-vibrator.c
 ===================================================================
 --- /dev/null
-+++ linux-2.6/drivers/leds/leds-neo1973-vibrator.c
-@@ -0,0 +1,174 @@
++++ linux-2.6.24-rc7/drivers/leds/leds-neo1973-vibrator.c
+@@ -0,0 +1,180 @@
 +/*
 + * LED driver for the vibrator of the FIC Neo1973 GSM Phone
 + *
@@ -113,20 +113,6 @@
 +      },
 +};
 +
-+#ifdef CONFIG_PM
-+static int gta01vib_suspend(struct platform_device *dev, pm_message_t state)
-+{
-+      led_classdev_suspend(&gta01_vib_led.cdev);
-+      return 0;
-+}
-+
-+static int gta01vib_resume(struct platform_device *dev)
-+{
-+      led_classdev_resume(&gta01_vib_led.cdev);
-+      return 0;
-+}
-+#endif
-+
 +static int gta01vib_init_hw(struct gta01_vib_priv *vp)
 +{
 +      int rc;
@@ -151,6 +137,26 @@
 +      return 0;
 +}
 +
++#ifdef CONFIG_PM
++static int gta01vib_suspend(struct platform_device *dev, pm_message_t state)
++{
++      led_classdev_suspend(&gta01_vib_led.cdev);
++      return 0;
++}
++
++static int gta01vib_resume(struct platform_device *dev)
++{
++      struct gta01_vib_priv *vp = platform_get_drvdata(dev);
++
++      led_classdev_resume(&gta01_vib_led.cdev);
++
++      if (vp->has_pwm)
++              gta01vib_init_hw(vp);
++
++      return 0;
++}
++#endif /* CONFIG_PM */
++
 +static int __init gta01vib_probe(struct platform_device *pdev)
 +{
 +      struct resource *r;




--- End Message ---
--- Begin Message ---
Author: werner
Date: 2008-01-21 22:28:47 +0100 (Mon, 21 Jan 2008)
New Revision: 3906

Added:
   branches/src/target/kernel/2.6.24.x/patches/iis-suspend.patch
Modified:
   branches/src/target/kernel/2.6.24.x/patches/series
Log:
"Lost OE" patch iis-suspend.patch (by Graeme Gregory)

This one adds power management support to the S3C24xx I2S driver.

series: added iis-suspend.patch

iis-suspend.patch:
- sound/soc/s3c24xx/s3c24xx-i2s.c (s3c24xx_i2s_suspend, s3c24xx_i2s_resume):
  added power management support



Added: branches/src/target/kernel/2.6.24.x/patches/iis-suspend.patch
===================================================================
--- branches/src/target/kernel/2.6.24.x/patches/iis-suspend.patch       
2008-01-21 21:13:30 UTC (rev 3905)
+++ branches/src/target/kernel/2.6.24.x/patches/iis-suspend.patch       
2008-01-21 21:28:47 UTC (rev 3906)
@@ -0,0 +1,63 @@
+Index: linux-2.6.24-rc7/sound/soc/s3c24xx/s3c24xx-i2s.c
+===================================================================
+--- linux-2.6.24-rc7.orig/sound/soc/s3c24xx/s3c24xx-i2s.c
++++ linux-2.6.24-rc7/sound/soc/s3c24xx/s3c24xx-i2s.c
+@@ -76,6 +76,10 @@
+ struct s3c24xx_i2s_info {
+       void __iomem    *regs;
+       struct clk      *iis_clk;
++      u32             iiscon;
++      u32             iismod;
++      u32             iisfcon;
++      u32             iispsr;
+ };
+ static struct s3c24xx_i2s_info s3c24xx_i2s;
+ 
+@@ -406,6 +410,38 @@
+       return 0;
+ }
+ 
++#ifdef CONFIG_PM
++int s3c24xx_i2s_suspend(struct platform_device *pdev,
++                struct snd_soc_cpu_dai *cpu_dai)
++{
++      s3c24xx_i2s.iiscon = readl(s3c24xx_i2s.regs + S3C2410_IISCON);
++      s3c24xx_i2s.iismod = readl(s3c24xx_i2s.regs + S3C2410_IISMOD);
++      s3c24xx_i2s.iisfcon = readl(s3c24xx_i2s.regs + S3C2410_IISFCON);
++      s3c24xx_i2s.iispsr = readl(s3c24xx_i2s.regs + S3C2410_IISPSR);
++
++      clk_disable(s3c24xx_i2s.iis_clk);
++
++      return 0;
++}
++
++int s3c24xx_i2s_resume(struct platform_device *pdev,
++                struct snd_soc_cpu_dai *cpu_dai)
++{
++      clk_enable(s3c24xx_i2s.iis_clk);
++
++        writel(s3c24xx_i2s.iiscon, s3c24xx_i2s.regs + S3C2410_IISCON);
++        writel(s3c24xx_i2s.iismod, s3c24xx_i2s.regs + S3C2410_IISMOD);
++        writel(s3c24xx_i2s.iisfcon, s3c24xx_i2s.regs + S3C2410_IISFCON);
++        writel(s3c24xx_i2s.iispsr, s3c24xx_i2s.regs + S3C2410_IISPSR);
++
++      return 0;
++}
++#else
++#define s3c24xx_i2s_suspend NULL
++#define s3c24xx_i2s_resume NULL
++#endif
++
++
+ #define S3C24XX_I2S_RATES \
+       (SNDRV_PCM_RATE_8000 | SNDRV_PCM_RATE_11025 | SNDRV_PCM_RATE_16000 | \
+       SNDRV_PCM_RATE_22050 | SNDRV_PCM_RATE_32000 | SNDRV_PCM_RATE_44100 | \
+@@ -416,6 +452,8 @@
+       .id = 0,
+       .type = SND_SOC_DAI_I2S,
+       .probe = s3c24xx_i2s_probe,
++      .suspend = s3c24xx_i2s_suspend,
++      .resume = s3c24xx_i2s_resume,
+       .playback = {
+               .channels_min = 2,
+               .channels_max = 2,

Modified: branches/src/target/kernel/2.6.24.x/patches/series
===================================================================
--- branches/src/target/kernel/2.6.24.x/patches/series  2008-01-21 21:13:30 UTC 
(rev 3905)
+++ branches/src/target/kernel/2.6.24.x/patches/series  2008-01-21 21:28:47 UTC 
(rev 3906)
@@ -72,6 +72,7 @@
 
 # OE patches
 fix-EVIOCGRAB-semantics.patch
+iis-suspend.patch
 
 # Atheros WLAN driver
 pnp_fixes.patch




--- End Message ---
--- Begin Message ---
Author: werner
Date: 2008-01-21 22:37:46 +0100 (Mon, 21 Jan 2008)
New Revision: 3907

Modified:
   branches/src/target/kernel/2.6.24.x/patches/gta02-sound.patch
Log:
"Lost OE" patch gta02-sound.patch (by Graeme Gregory)

This one got applied to mainline, but OpenEmbedded had a small fix that 
was still missing.

gta02-sound.patch:
- sound/soc/s3c24xx/neo1973_gta02_wm8753.c (neo1973_gta02_suspend, 
  neo1973_gta02_resume): replace with NULL pointers if CONFIG_PM is not enabled



Modified: branches/src/target/kernel/2.6.24.x/patches/gta02-sound.patch
===================================================================
--- branches/src/target/kernel/2.6.24.x/patches/gta02-sound.patch       
2008-01-21 21:28:47 UTC (rev 3906)
+++ branches/src/target/kernel/2.6.24.x/patches/gta02-sound.patch       
2008-01-21 21:37:46 UTC (rev 3907)
@@ -1,8 +1,8 @@
-Index: linux-2.6/sound/soc/s3c24xx/neo1973_gta02_wm8753.c
+Index: linux-2.6.24-rc7/sound/soc/s3c24xx/neo1973_gta02_wm8753.c
 ===================================================================
 --- /dev/null
-+++ linux-2.6/sound/soc/s3c24xx/neo1973_gta02_wm8753.c
-@@ -0,0 +1,662 @@
++++ linux-2.6.24-rc7/sound/soc/s3c24xx/neo1973_gta02_wm8753.c
+@@ -0,0 +1,667 @@
 +/*
 + * neo1973_gta02_wm8753.c  --  SoC audio for Neo1973
 + *
@@ -581,6 +581,7 @@
 +},
 +};
 +
++#ifdef CONFIG_PM
 +int neo1973_gta02_suspend(struct platform_device *pdev, pm_message_t state)
 +{
 +      s3c2410_gpio_setpin(GTA02_GPIO_AMP_SHUT, 1);
@@ -595,6 +596,10 @@
 +
 +      return 0;
 +}
++#else
++#define neo1973_gta02_suspend NULL
++#define neo1973_gta02_resume NULL
++#endif
 +
 +static struct snd_soc_machine neo1973_gta02 = {
 +      .name = "neo1973-gta02",
@@ -665,10 +670,10 @@
 +MODULE_DESCRIPTION("ALSA SoC WM8753 Neo1973 GTA02");
 +MODULE_LICENSE("GPL");
 +
-Index: linux-2.6/sound/soc/s3c24xx/Kconfig
+Index: linux-2.6.24-rc7/sound/soc/s3c24xx/Kconfig
 ===================================================================
---- linux-2.6.orig/sound/soc/s3c24xx/Kconfig
-+++ linux-2.6/sound/soc/s3c24xx/Kconfig
+--- linux-2.6.24-rc7.orig/sound/soc/s3c24xx/Kconfig
++++ linux-2.6.24-rc7/sound/soc/s3c24xx/Kconfig
 @@ -25,6 +25,15 @@
          Say Y if you want to add support for SoC audio on smdk2440
          with the WM8753.
@@ -685,10 +690,10 @@
  config SND_S3C24XX_SOC_SMDK2443_WM9710
        tristate "SoC AC97 Audio support for SMDK2443 - WM9710"
        depends on SND_S3C24XX_SOC && MACH_SMDK2443
-Index: linux-2.6/sound/soc/s3c24xx/Makefile
+Index: linux-2.6.24-rc7/sound/soc/s3c24xx/Makefile
 ===================================================================
---- linux-2.6.orig/sound/soc/s3c24xx/Makefile
-+++ linux-2.6/sound/soc/s3c24xx/Makefile
+--- linux-2.6.24-rc7.orig/sound/soc/s3c24xx/Makefile
++++ linux-2.6.24-rc7/sound/soc/s3c24xx/Makefile
 @@ -10,6 +10,9 @@
  # S3C24XX Machine Support
  snd-soc-neo1973-wm8753-objs := neo1973_wm8753.o
@@ -699,10 +704,10 @@
  obj-$(CONFIG_SND_S3C24XX_SOC_SMDK2443_WM9710) += snd-soc-smdk2443-wm9710.o
 +obj-$(CONFIG_SND_S3C24XX_SOC_NEO1973_GTA02_WM8753) += 
snd-soc-neo1973-gta02-wm8753.o
 +
-Index: linux-2.6/include/sound/soc-dapm.h
+Index: linux-2.6.24-rc7/include/sound/soc-dapm.h
 ===================================================================
---- linux-2.6.orig/include/sound/soc-dapm.h
-+++ linux-2.6/include/sound/soc-dapm.h
+--- linux-2.6.24-rc7.orig/include/sound/soc-dapm.h
++++ linux-2.6.24-rc7/include/sound/soc-dapm.h
 @@ -206,6 +206,8 @@
  /* dapm audio endpoint control */
  int snd_soc_dapm_set_endpoint(struct snd_soc_codec *codec,
@@ -712,10 +717,10 @@
  int snd_soc_dapm_sync_endpoints(struct snd_soc_codec *codec);
  
  /* dapm widget types */
-Index: linux-2.6/sound/soc/soc-dapm.c
+Index: linux-2.6.24-rc7/sound/soc/soc-dapm.c
 ===================================================================
---- linux-2.6.orig/sound/soc/soc-dapm.c
-+++ linux-2.6/sound/soc/soc-dapm.c
+--- linux-2.6.24-rc7.orig/sound/soc/soc-dapm.c
++++ linux-2.6.24-rc7/sound/soc/soc-dapm.c
 @@ -1305,6 +1305,30 @@
  EXPORT_SYMBOL_GPL(snd_soc_dapm_set_endpoint);
  




--- End Message ---
--- Begin Message ---
Author: werner
Date: 2008-01-21 22:49:04 +0100 (Mon, 21 Jan 2008)
New Revision: 3908

Added:
   branches/src/target/kernel/2.6.24.x/patches/s3c24xx-pcm-suspend.patch
Modified:
   branches/src/target/kernel/2.6.24.x/patches/series
Log:
"Lost OE" patch s3c24xx-pcm-suspend.patch (by Graeme Gregory)

This one changes the DMA initialization in s3c24xx-pcm.c kernel.org driver.

s3c24xx-pcm-suspend.patch:
- sound/soc/s3c24xx/s3c24xx-pcm.c (s3c24xx_pcm_hardware): added
  SNDRV_PCM_INFO_PAUSE and SNDRV_PCM_INFO_RESUME
- sound/soc/s3c24xx/s3c24xx-pcm.c (s3c24xx_pcm_hw_params): move DMA setup to
  s3c24xx_pcm_prepare



Added: branches/src/target/kernel/2.6.24.x/patches/s3c24xx-pcm-suspend.patch
===================================================================
--- branches/src/target/kernel/2.6.24.x/patches/s3c24xx-pcm-suspend.patch       
2008-01-21 21:37:46 UTC (rev 3907)
+++ branches/src/target/kernel/2.6.24.x/patches/s3c24xx-pcm-suspend.patch       
2008-01-21 21:49:04 UTC (rev 3908)
@@ -0,0 +1,73 @@
+Index: linux-2.6.24-rc7/sound/soc/s3c24xx/s3c24xx-pcm.c
+===================================================================
+--- linux-2.6.24-rc7.orig/sound/soc/s3c24xx/s3c24xx-pcm.c
++++ linux-2.6.24-rc7/sound/soc/s3c24xx/s3c24xx-pcm.c
+@@ -49,7 +49,9 @@
+       .info                   = SNDRV_PCM_INFO_INTERLEAVED |
+                                   SNDRV_PCM_INFO_BLOCK_TRANSFER |
+                                   SNDRV_PCM_INFO_MMAP |
+-                                  SNDRV_PCM_INFO_MMAP_VALID,
++                                  SNDRV_PCM_INFO_MMAP_VALID |
++                                  SNDRV_PCM_INFO_PAUSE |
++                                  SNDRV_PCM_INFO_RESUME,
+       .formats                = SNDRV_PCM_FMTBIT_S16_LE |
+                                   SNDRV_PCM_FMTBIT_U16_LE |
+                                   SNDRV_PCM_FMTBIT_U8 |
+@@ -176,28 +178,6 @@
+               }
+       }
+ 
+-      /* channel needs configuring for mem=>device, increment memory addr,
+-       * sync to pclk, half-word transfers to the IIS-FIFO. */
+-      if (substream->stream == SNDRV_PCM_STREAM_PLAYBACK) {
+-              s3c2410_dma_devconfig(prtd->params->channel,
+-                              S3C2410_DMASRC_MEM, S3C2410_DISRCC_INC |
+-                              S3C2410_DISRCC_APB, prtd->params->dma_addr);
+-
+-              s3c2410_dma_config(prtd->params->channel,
+-                              prtd->params->dma_size,
+-                              S3C2410_DCON_SYNC_PCLK | 
+-                              S3C2410_DCON_HANDSHAKE);
+-      } else {
+-              s3c2410_dma_config(prtd->params->channel,
+-                              prtd->params->dma_size,
+-                              S3C2410_DCON_HANDSHAKE | 
+-                              S3C2410_DCON_SYNC_PCLK);
+-
+-              s3c2410_dma_devconfig(prtd->params->channel,
+-                                      S3C2410_DMASRC_HW, 0x3,
+-                                      prtd->params->dma_addr);
+-      }
+-
+       s3c2410_dma_set_buffdone_fn(prtd->params->channel,
+                                   s3c24xx_audio_buffdone);
+ 
+@@ -246,6 +226,28 @@
+       if (!prtd->params)
+               return 0;
+ 
++      /* channel needs configuring for mem=>device, increment memory addr,
++       * sync to pclk, half-word transfers to the IIS-FIFO. */
++      if (substream->stream == SNDRV_PCM_STREAM_PLAYBACK) {
++              s3c2410_dma_devconfig(prtd->params->channel,
++                              S3C2410_DMASRC_MEM, S3C2410_DISRCC_INC |
++                              S3C2410_DISRCC_APB, prtd->params->dma_addr);
++
++              s3c2410_dma_config(prtd->params->channel,
++                              prtd->params->dma_size,
++                              S3C2410_DCON_SYNC_PCLK |
++                              S3C2410_DCON_HANDSHAKE);
++      } else {
++              s3c2410_dma_config(prtd->params->channel,
++                              prtd->params->dma_size,
++                              S3C2410_DCON_HANDSHAKE |
++                              S3C2410_DCON_SYNC_PCLK);
++
++              s3c2410_dma_devconfig(prtd->params->channel,
++                                      S3C2410_DMASRC_HW, 0x3,
++                                      prtd->params->dma_addr);
++      }
++
+       /* flush the DMA channel */
+       s3c2410_dma_ctrl(prtd->params->channel, S3C2410_DMAOP_FLUSH);
+       prtd->dma_loaded = 0;

Modified: branches/src/target/kernel/2.6.24.x/patches/series
===================================================================
--- branches/src/target/kernel/2.6.24.x/patches/series  2008-01-21 21:37:46 UTC 
(rev 3907)
+++ branches/src/target/kernel/2.6.24.x/patches/series  2008-01-21 21:49:04 UTC 
(rev 3908)
@@ -73,6 +73,7 @@
 # OE patches
 fix-EVIOCGRAB-semantics.patch
 iis-suspend.patch
+s3c24xx-pcm-suspend.patch
 
 # Atheros WLAN driver
 pnp_fixes.patch




--- End Message ---
--- Begin Message ---
Author: werner
Date: 2008-01-21 23:16:35 +0100 (Mon, 21 Jan 2008)
New Revision: 3909

Added:
   branches/src/target/kernel/2.6.24.x/patches/s3c2410-usb-switch.patch
Modified:
   branches/src/target/kernel/2.6.24.x/patches/series
Log:
"Lost OE" patch s3c2410-usb-switch.patch (by Harald Welte ?)

This patch is dicussed here:
http://bugzilla.openmoko.org/cgi-bin/bugzilla/show_bug.cgi?id=876

Note: I've added the GPE5 -> GPB9 change (untested) and I've removed the
apparently unused file arch/arm/mach-s3c2410/usb-modeswitch.c

s3c2410-usb-switch.patch:
- arch/arm/mach-s3c2410/usb-modeswitch.c (s3c2410_usb_enable_host): implement
  host/device switch
- drivers/usb/host/ohci-s3c2410.c (show_usb_mode, set_usb_mode): implement
  host/device switch
- drivers/usb/host/ohci-s3c2410.c (usb_hcd_s3c2410_remove, 
  usb_hcd_s3c2410_probe): add/remove "usb_mode" sysfs file



Added: branches/src/target/kernel/2.6.24.x/patches/s3c2410-usb-switch.patch
===================================================================
--- branches/src/target/kernel/2.6.24.x/patches/s3c2410-usb-switch.patch        
2008-01-21 21:49:04 UTC (rev 3908)
+++ branches/src/target/kernel/2.6.24.x/patches/s3c2410-usb-switch.patch        
2008-01-21 22:16:35 UTC (rev 3909)
@@ -0,0 +1,77 @@
+Index: linux-2.6.24-rc7/drivers/usb/host/ohci-s3c2410.c
+===================================================================
+--- linux-2.6.24-rc7.orig/drivers/usb/host/ohci-s3c2410.c
++++ linux-2.6.24-rc7/drivers/usb/host/ohci-s3c2410.c
+@@ -24,6 +24,7 @@
+ 
+ #include <asm/hardware.h>
+ #include <asm/arch/usb-control.h>
++#include <asm/arch/regs-gpio.h>
+ 
+ #define valid_port(idx) ((idx) == 1 || (idx) == 2)
+ 
+@@ -308,6 +309,40 @@
+       local_irq_restore(flags);
+ }
+ 
++/* switching of USB pads */
++static ssize_t show_usb_mode(struct device *dev, struct device_attribute 
*attr,
++                           char *buf)
++{
++      if (__raw_readl(S3C24XX_MISCCR) & S3C2410_MISCCR_USBHOST)
++              return sprintf(buf, "host\n");
++
++      return sprintf(buf, "device\n");
++}
++
++static ssize_t set_usb_mode(struct device *dev, struct device_attribute *attr,
++                          const char *buf, size_t count)
++{
++      if (!strncmp(buf, "host", 4)) {
++              printk("s3c2410: changing usb to host\n");
++              s3c2410_modify_misccr(S3C2410_MISCCR_USBHOST,
++                                    S3C2410_MISCCR_USBHOST);
++              /* FIXME:
++               * - call machine-specific disable-pullup function i
++               * - enable +Vbus (if hardware supports it)
++               */
++              s3c2410_gpio_setpin(S3C2410_GPB9, 0);
++      } else if (!strncmp(buf, "device", 6)) {
++              printk("s3c2410: changing usb to device\n");
++              s3c2410_modify_misccr(S3C2410_MISCCR_USBHOST, 0);
++              s3c2410_gpio_setpin(S3C2410_GPB9, 1);
++      } else
++              printk("s3c2410: unknown mode\n");
++              return -EINVAL;
++      return count;
++}
++
++static DEVICE_ATTR(usb_mode, S_IRUGO | S_IWUSR, show_usb_mode, set_usb_mode);
++
+ /* may be called without controller electrically present */
+ /* may be called with controller, bus, and devices active */
+ 
+@@ -325,6 +360,7 @@
+ static void
+ usb_hcd_s3c2410_remove (struct usb_hcd *hcd, struct platform_device *dev)
+ {
++      device_remove_file(&dev->dev, &dev_attr_usb_mode);
+       usb_remove_hcd(hcd);
+       s3c2410_stop_hc(dev);
+       iounmap(hcd->regs);
+@@ -392,8 +428,15 @@
+       if (retval != 0)
+               goto err_ioremap;
+ 
++      retval = device_create_file(&dev->dev, &dev_attr_usb_mode);
++      if (retval != 0)
++              goto err_hcd;
++
+       return 0;
+ 
++ err_hcd:
++      usb_remove_hcd(hcd);
++
+  err_ioremap:
+       s3c2410_stop_hc(dev);
+       iounmap(hcd->regs);

Modified: branches/src/target/kernel/2.6.24.x/patches/series
===================================================================
--- branches/src/target/kernel/2.6.24.x/patches/series  2008-01-21 21:49:04 UTC 
(rev 3908)
+++ branches/src/target/kernel/2.6.24.x/patches/series  2008-01-21 22:16:35 UTC 
(rev 3909)
@@ -74,6 +74,7 @@
 fix-EVIOCGRAB-semantics.patch
 iis-suspend.patch
 s3c24xx-pcm-suspend.patch
+s3c2410-usb-switch.patch
 
 # Atheros WLAN driver
 pnp_fixes.patch




--- End Message ---
_______________________________________________
commitlog mailing list
[email protected]
http://lists.openmoko.org/mailman/listinfo/commitlog

Reply via email to