All of lore.kernel.org
 help / color / mirror / Atom feed
diff for duplicates of <87sjo1itjw.fsf@ti.com>

diff --git a/a/1.txt b/N1/1.txt
index bbb8bc6..6243541 100644
--- a/a/1.txt
+++ b/N1/1.txt
@@ -13,8 +13,8 @@ Govindraj <govindraj.ti@gmail.com> writes:
 >>>>> 3.) autosuspend for port specific activities and put for reg access.
 >>>>
 >>>> Re: autosuspend, it looks like the driver now has 2 mechanisms for
->>>> tracking activity.  The runtime PM 'mark last busy' and the existing
->>>> 'up->port_activity = jiffies' stuff.  Do you think those could be
+>>>> tracking activity. ?The runtime PM 'mark last busy' and the existing
+>>>> 'up->port_activity = jiffies' stuff. ?Do you think those could be
 >>>> unified?
 >>>>
 >>>
@@ -22,7 +22,7 @@ Govindraj <govindraj.ti@gmail.com> writes:
 >>> using runtime API? I don't find that available.
 >>>
 >>
->> Not currently.  The question is more along the lines of: what is the
+>> Not currently. ?The question is more along the lines of: what is the
 >> port_activity jiffies used for, and can it be replaced by using
 >> _mark_last_busy().
 >>
@@ -32,22 +32,22 @@ Govindraj <govindraj.ti@gmail.com> writes:
 >
 >>
 >>>> At first glance, it looks like most places with a _mark_last_busy() also
->>>> have a up->port_activity update.  I'm not familiar enough with the
+>>>> have a up->port_activity update. ?I'm not familiar enough with the
 >>>> driver to make the call, but they look awfully similar.
 >>>>
 >>>
 >>> Ok, I will check whether I can get rid if it.
 >>>
 >>>>> 4.) for earlyprintk usage the debug macro will write to console uart
->>>>>     so keep uart clocks active from boot, idle using hwmod API's re-enable back
->>>>>     using runtime API's.
+>>>>> ? ? so keep uart clocks active from boot, idle using hwmod API's re-enable back
+>>>>> ? ? using runtime API's.
 >>>>
 >>>> /me doesn't understand
 >>>
 >>> I have added this reason in early mail reply to 04/11 patch review
 >>> [needed for earlyprintk option from low level debug ]
 >>
->> OK, but AFAIK, DEBUG_LL + earlyprintk do not use this driver.  Instead
+>> OK, but AFAIK, DEBUG_LL + earlyprintk do not use this driver. ?Instead
 >> they use the debug macros, so any hacks to deal with that do not belong
 >> in the driver.
 >>
@@ -68,18 +68,18 @@ Yes please.
 
 >>>>
 >>>>> 5.) Moving context restore to runtime suspend and using reg values from port
->>>>>     structure to restore the uart port context based on context_loss_count.
->>>>>     Maintain internal state machine for avoiding repeated enable/disable of
->>>>>     uart port wakeup mechanism.
+>>>>> ? ? structure to restore the uart port context based on context_loss_count.
+>>>>> ? ? Maintain internal state machine for avoiding repeated enable/disable of
+>>>>> ? ? uart port wakeup mechanism.
 >>>>> 6.) Add API to enable wakeup and check wakeup status.
 >>>>>
 >>>>> Acked-by: Alan Cox <alan@linux.intel.com>
 >>>>> Signed-off-by: Govindraj.R <govindraj.raja@ti.com>
 >>>>> ---
->>>>>  arch/arm/mach-omap2/serial.c                  |   49 ++++++
->>>>>  arch/arm/plat-omap/include/plat/omap-serial.h |   10 ++
->>>>>  drivers/tty/serial/omap-serial.c              |  211 ++++++++++++++++++++++---
->>>>>  3 files changed, 250 insertions(+), 20 deletions(-)
+>>>>> ?arch/arm/mach-omap2/serial.c ? ? ? ? ? ? ? ? ?| ? 49 ++++++
+>>>>> ?arch/arm/plat-omap/include/plat/omap-serial.h | ? 10 ++
+>>>>> ?drivers/tty/serial/omap-serial.c ? ? ? ? ? ? ?| ?211 ++++++++++++++++++++++---
+>>>>> ?3 files changed, 250 insertions(+), 20 deletions(-)
 >>>>>
 >>>
 >>> [..]
@@ -87,24 +87,24 @@ Yes please.
 >>>>> +
 >>>>> +static void omap_uart_wakeup_enable(struct platform_device *pdev, bool enable)
 >>>>> +{
->>>>> +     struct omap_device *od;
->>>>> +     struct omap_uart_port_info *up = pdev->dev.platform_data;
+>>>>> + ? ? struct omap_device *od;
+>>>>> + ? ? struct omap_uart_port_info *up = pdev->dev.platform_data;
 >>>>> +
->>>>> +     /* Set or clear wake-enable bit */
->>>>> +     if (up->wk_en && up->wk_mask) {
->>>>> +             u32 v = __raw_readl(up->wk_en);
->>>>> +             if (enable)
->>>>> +                     v |= up->wk_mask;
->>>>> +             else
->>>>> +                     v &= ~up->wk_mask;
->>>>> +             __raw_writel(v, up->wk_en);
->>>>> +     }
+>>>>> + ? ? /* Set or clear wake-enable bit */
+>>>>> + ? ? if (up->wk_en && up->wk_mask) {
+>>>>> + ? ? ? ? ? ? u32 v = __raw_readl(up->wk_en);
+>>>>> + ? ? ? ? ? ? if (enable)
+>>>>> + ? ? ? ? ? ? ? ? ? ? v |= up->wk_mask;
+>>>>> + ? ? ? ? ? ? else
+>>>>> + ? ? ? ? ? ? ? ? ? ? v &= ~up->wk_mask;
+>>>>> + ? ? ? ? ? ? __raw_writel(v, up->wk_en);
+>>>>> + ? ? }
 >>>>> +
->>>>> +     od = to_omap_device(pdev);
->>>>> +     if (enable)
->>>>> +             omap_hwmod_enable_wakeup(od->hwmods[0]);
->>>>> +     else
->>>>> +             omap_hwmod_disable_wakeup(od->hwmods[0]);
+>>>>> + ? ? od = to_omap_device(pdev);
+>>>>> + ? ? if (enable)
+>>>>> + ? ? ? ? ? ? omap_hwmod_enable_wakeup(od->hwmods[0]);
+>>>>> + ? ? else
+>>>>> + ? ? ? ? ? ? omap_hwmod_disable_wakeup(od->hwmods[0]);
 >>>>> +}
 >>>>> +
 >>>>
@@ -173,27 +173,27 @@ descriptive changelogs are invaluable to an efficient review process.
 >
 >> [...]
 >>
->>>>>  }
+>>>>> ?}
 >>>>>
->>>>>  static int __init
+>>>>> ?static int __init
 >>>>> @@ -1065,22 +1123,33 @@ static struct uart_driver serial_omap_reg = {
->>>>>       .cons           = OMAP_CONSOLE,
->>>>>  };
+>>>>> ? ? ? .cons ? ? ? ? ? = OMAP_CONSOLE,
+>>>>> ?};
 >>>>>
 >>>>> -static int
 >>>>> -serial_omap_suspend(struct platform_device *pdev, pm_message_t state)
 >>>>> +static int serial_omap_suspend(struct device *dev)
->>>>>  {
->>>>> -     struct uart_omap_port *up = platform_get_drvdata(pdev);
->>>>> +     struct uart_omap_port *up = dev_get_drvdata(dev);
+>>>>> ?{
+>>>>> - ? ? struct uart_omap_port *up = platform_get_drvdata(pdev);
+>>>>> + ? ? struct uart_omap_port *up = dev_get_drvdata(dev);
 >>>>>
->>>>> -     if (up)
->>>>> +     if (up) {
->>>>>               uart_suspend_port(&serial_omap_reg, &up->port);
->>>>> +             if (up->port.line == up->port.cons->index &&
->>>>> +                             !is_console_locked())
->>>>> +                     up->console_locked = console_trylock();
->>>>> +     }
+>>>>> - ? ? if (up)
+>>>>> + ? ? if (up) {
+>>>>> ? ? ? ? ? ? ? uart_suspend_port(&serial_omap_reg, &up->port);
+>>>>> + ? ? ? ? ? ? if (up->port.line == up->port.cons->index &&
+>>>>> + ? ? ? ? ? ? ? ? ? ? ? ? ? ? !is_console_locked())
+>>>>> + ? ? ? ? ? ? ? ? ? ? up->console_locked = console_trylock();
+>>>>> + ? ? }
 >>>>> +
 >>>>
 >>>> Motiviation for console locking in this version of the series is not
@@ -242,7 +242,3 @@ yes please.
 These are the kinds of things that belong in a descriptive changelog.
 
 Kevin
---
-To unsubscribe from this list: send the line "unsubscribe linux-omap" in
-the body of a message to majordomo@vger.kernel.org
-More majordomo info at  http://vger.kernel.org/majordomo-info.html
diff --git a/a/content_digest b/N1/content_digest
index 1c76ab7..24a8a8a 100644
--- a/a/content_digest
+++ b/N1/content_digest
@@ -4,18 +4,10 @@
  "ref\0CAAL8m4wpCVrhY7++ROwu0Whh4w_cF_dUr0t5622+WmJZah_FRA@mail.gmail.com\0"
  "ref\08739g5y45m.fsf@ti.com\0"
  "ref\0CAAL8m4zR06U115V52+fT84dc6g7PYkLb1jJaMKGyi2VJhFtYxg@mail.gmail.com\0"
- "From\0Kevin Hilman <khilman@ti.com>\0"
- "Subject\0Re: [PATCH v4 07/11] Serial: OMAP: Add runtime pm support for omap-serial driver\0"
+ "From\0khilman@ti.com (Kevin Hilman)\0"
+ "Subject\0[PATCH v4 07/11] Serial: OMAP: Add runtime pm support for omap-serial driver\0"
  "Date\0Mon, 12 Sep 2011 10:01:23 -0700\0"
- "To\0Govindraj <govindraj.ti@gmail.com>\0"
- "Cc\0Govindraj.R <govindraj.raja@ti.com>"
-  linux-omap@vger.kernel.org
-  Paul Walmsley <paul@pwsan.com>
-  Tony Lindgren <tony@atomide.com>
-  Partha Basak <p-basak2@ti.com>
-  linux-serial@vger.kernel.org
-  Vishwanath Sripathy <vishwanath.bs@ti.com>
- " linux-arm-kernel@lists.infradead.org\0"
+ "To\0linux-arm-kernel@lists.infradead.org\0"
  "\00:1\0"
  "b\0"
  "Govindraj <govindraj.ti@gmail.com> writes:\n"
@@ -33,8 +25,8 @@
  ">>>>> 3.) autosuspend for port specific activities and put for reg access.\n"
  ">>>>\n"
  ">>>> Re: autosuspend, it looks like the driver now has 2 mechanisms for\n"
- ">>>> tracking activity. \302\240The runtime PM 'mark last busy' and the existing\n"
- ">>>> 'up->port_activity = jiffies' stuff. \302\240Do you think those could be\n"
+ ">>>> tracking activity. ?The runtime PM 'mark last busy' and the existing\n"
+ ">>>> 'up->port_activity = jiffies' stuff. ?Do you think those could be\n"
  ">>>> unified?\n"
  ">>>>\n"
  ">>>\n"
@@ -42,7 +34,7 @@
  ">>> using runtime API? I don't find that available.\n"
  ">>>\n"
  ">>\n"
- ">> Not currently. \302\240The question is more along the lines of: what is the\n"
+ ">> Not currently. ?The question is more along the lines of: what is the\n"
  ">> port_activity jiffies used for, and can it be replaced by using\n"
  ">> _mark_last_busy().\n"
  ">>\n"
@@ -52,22 +44,22 @@
  ">\n"
  ">>\n"
  ">>>> At first glance, it looks like most places with a _mark_last_busy() also\n"
- ">>>> have a up->port_activity update. \302\240I'm not familiar enough with the\n"
+ ">>>> have a up->port_activity update. ?I'm not familiar enough with the\n"
  ">>>> driver to make the call, but they look awfully similar.\n"
  ">>>>\n"
  ">>>\n"
  ">>> Ok, I will check whether I can get rid if it.\n"
  ">>>\n"
  ">>>>> 4.) for earlyprintk usage the debug macro will write to console uart\n"
- ">>>>> \302\240 \302\240 so keep uart clocks active from boot, idle using hwmod API's re-enable back\n"
- ">>>>> \302\240 \302\240 using runtime API's.\n"
+ ">>>>> ? ? so keep uart clocks active from boot, idle using hwmod API's re-enable back\n"
+ ">>>>> ? ? using runtime API's.\n"
  ">>>>\n"
  ">>>> /me doesn't understand\n"
  ">>>\n"
  ">>> I have added this reason in early mail reply to 04/11 patch review\n"
  ">>> [needed for earlyprintk option from low level debug ]\n"
  ">>\n"
- ">> OK, but AFAIK, DEBUG_LL + earlyprintk do not use this driver. \302\240Instead\n"
+ ">> OK, but AFAIK, DEBUG_LL + earlyprintk do not use this driver. ?Instead\n"
  ">> they use the debug macros, so any hacks to deal with that do not belong\n"
  ">> in the driver.\n"
  ">>\n"
@@ -88,18 +80,18 @@
  "\n"
  ">>>>\n"
  ">>>>> 5.) Moving context restore to runtime suspend and using reg values from port\n"
- ">>>>> \302\240 \302\240 structure to restore the uart port context based on context_loss_count.\n"
- ">>>>> \302\240 \302\240 Maintain internal state machine for avoiding repeated enable/disable of\n"
- ">>>>> \302\240 \302\240 uart port wakeup mechanism.\n"
+ ">>>>> ? ? structure to restore the uart port context based on context_loss_count.\n"
+ ">>>>> ? ? Maintain internal state machine for avoiding repeated enable/disable of\n"
+ ">>>>> ? ? uart port wakeup mechanism.\n"
  ">>>>> 6.) Add API to enable wakeup and check wakeup status.\n"
  ">>>>>\n"
  ">>>>> Acked-by: Alan Cox <alan@linux.intel.com>\n"
  ">>>>> Signed-off-by: Govindraj.R <govindraj.raja@ti.com>\n"
  ">>>>> ---\n"
- ">>>>> \302\240arch/arm/mach-omap2/serial.c \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240| \302\240 49 ++++++\n"
- ">>>>> \302\240arch/arm/plat-omap/include/plat/omap-serial.h | \302\240 10 ++\n"
- ">>>>> \302\240drivers/tty/serial/omap-serial.c \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240| \302\240211 ++++++++++++++++++++++---\n"
- ">>>>> \302\2403 files changed, 250 insertions(+), 20 deletions(-)\n"
+ ">>>>> ?arch/arm/mach-omap2/serial.c ? ? ? ? ? ? ? ? ?| ? 49 ++++++\n"
+ ">>>>> ?arch/arm/plat-omap/include/plat/omap-serial.h | ? 10 ++\n"
+ ">>>>> ?drivers/tty/serial/omap-serial.c ? ? ? ? ? ? ?| ?211 ++++++++++++++++++++++---\n"
+ ">>>>> ?3 files changed, 250 insertions(+), 20 deletions(-)\n"
  ">>>>>\n"
  ">>>\n"
  ">>> [..]\n"
@@ -107,24 +99,24 @@
  ">>>>> +\n"
  ">>>>> +static void omap_uart_wakeup_enable(struct platform_device *pdev, bool enable)\n"
  ">>>>> +{\n"
- ">>>>> + \302\240 \302\240 struct omap_device *od;\n"
- ">>>>> + \302\240 \302\240 struct omap_uart_port_info *up = pdev->dev.platform_data;\n"
+ ">>>>> + ? ? struct omap_device *od;\n"
+ ">>>>> + ? ? struct omap_uart_port_info *up = pdev->dev.platform_data;\n"
  ">>>>> +\n"
- ">>>>> + \302\240 \302\240 /* Set or clear wake-enable bit */\n"
- ">>>>> + \302\240 \302\240 if (up->wk_en && up->wk_mask) {\n"
- ">>>>> + \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 u32 v = __raw_readl(up->wk_en);\n"
- ">>>>> + \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 if (enable)\n"
- ">>>>> + \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 v |= up->wk_mask;\n"
- ">>>>> + \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 else\n"
- ">>>>> + \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 v &= ~up->wk_mask;\n"
- ">>>>> + \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 __raw_writel(v, up->wk_en);\n"
- ">>>>> + \302\240 \302\240 }\n"
+ ">>>>> + ? ? /* Set or clear wake-enable bit */\n"
+ ">>>>> + ? ? if (up->wk_en && up->wk_mask) {\n"
+ ">>>>> + ? ? ? ? ? ? u32 v = __raw_readl(up->wk_en);\n"
+ ">>>>> + ? ? ? ? ? ? if (enable)\n"
+ ">>>>> + ? ? ? ? ? ? ? ? ? ? v |= up->wk_mask;\n"
+ ">>>>> + ? ? ? ? ? ? else\n"
+ ">>>>> + ? ? ? ? ? ? ? ? ? ? v &= ~up->wk_mask;\n"
+ ">>>>> + ? ? ? ? ? ? __raw_writel(v, up->wk_en);\n"
+ ">>>>> + ? ? }\n"
  ">>>>> +\n"
- ">>>>> + \302\240 \302\240 od = to_omap_device(pdev);\n"
- ">>>>> + \302\240 \302\240 if (enable)\n"
- ">>>>> + \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 omap_hwmod_enable_wakeup(od->hwmods[0]);\n"
- ">>>>> + \302\240 \302\240 else\n"
- ">>>>> + \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 omap_hwmod_disable_wakeup(od->hwmods[0]);\n"
+ ">>>>> + ? ? od = to_omap_device(pdev);\n"
+ ">>>>> + ? ? if (enable)\n"
+ ">>>>> + ? ? ? ? ? ? omap_hwmod_enable_wakeup(od->hwmods[0]);\n"
+ ">>>>> + ? ? else\n"
+ ">>>>> + ? ? ? ? ? ? omap_hwmod_disable_wakeup(od->hwmods[0]);\n"
  ">>>>> +}\n"
  ">>>>> +\n"
  ">>>>\n"
@@ -193,27 +185,27 @@
  ">\n"
  ">> [...]\n"
  ">>\n"
- ">>>>> \302\240}\n"
+ ">>>>> ?}\n"
  ">>>>>\n"
- ">>>>> \302\240static int __init\n"
+ ">>>>> ?static int __init\n"
  ">>>>> @@ -1065,22 +1123,33 @@ static struct uart_driver serial_omap_reg = {\n"
- ">>>>> \302\240 \302\240 \302\240 .cons \302\240 \302\240 \302\240 \302\240 \302\240 = OMAP_CONSOLE,\n"
- ">>>>> \302\240};\n"
+ ">>>>> ? ? ? .cons ? ? ? ? ? = OMAP_CONSOLE,\n"
+ ">>>>> ?};\n"
  ">>>>>\n"
  ">>>>> -static int\n"
  ">>>>> -serial_omap_suspend(struct platform_device *pdev, pm_message_t state)\n"
  ">>>>> +static int serial_omap_suspend(struct device *dev)\n"
- ">>>>> \302\240{\n"
- ">>>>> - \302\240 \302\240 struct uart_omap_port *up = platform_get_drvdata(pdev);\n"
- ">>>>> + \302\240 \302\240 struct uart_omap_port *up = dev_get_drvdata(dev);\n"
+ ">>>>> ?{\n"
+ ">>>>> - ? ? struct uart_omap_port *up = platform_get_drvdata(pdev);\n"
+ ">>>>> + ? ? struct uart_omap_port *up = dev_get_drvdata(dev);\n"
  ">>>>>\n"
- ">>>>> - \302\240 \302\240 if (up)\n"
- ">>>>> + \302\240 \302\240 if (up) {\n"
- ">>>>> \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 uart_suspend_port(&serial_omap_reg, &up->port);\n"
- ">>>>> + \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 if (up->port.line == up->port.cons->index &&\n"
- ">>>>> + \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 !is_console_locked())\n"
- ">>>>> + \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 up->console_locked = console_trylock();\n"
- ">>>>> + \302\240 \302\240 }\n"
+ ">>>>> - ? ? if (up)\n"
+ ">>>>> + ? ? if (up) {\n"
+ ">>>>> ? ? ? ? ? ? ? uart_suspend_port(&serial_omap_reg, &up->port);\n"
+ ">>>>> + ? ? ? ? ? ? if (up->port.line == up->port.cons->index &&\n"
+ ">>>>> + ? ? ? ? ? ? ? ? ? ? ? ? ? ? !is_console_locked())\n"
+ ">>>>> + ? ? ? ? ? ? ? ? ? ? up->console_locked = console_trylock();\n"
+ ">>>>> + ? ? }\n"
  ">>>>> +\n"
  ">>>>\n"
  ">>>> Motiviation for console locking in this version of the series is not\n"
@@ -261,10 +253,6 @@
  "\n"
  "These are the kinds of things that belong in a descriptive changelog.\n"
  "\n"
- "Kevin\n"
- "--\n"
- "To unsubscribe from this list: send the line \"unsubscribe linux-omap\" in\n"
- "the body of a message to majordomo@vger.kernel.org\n"
- More majordomo info at  http://vger.kernel.org/majordomo-info.html
+ Kevin
 
-fcdbe871f59550cdce4c6498392d2b5b0ba838a013505ec7101fac28debac1a8
+31e0602436df705b6c6a6b42eb38c263fc7a1f5aa44d03a913fe0dcbf3312f23

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.