lkml.org 
[lkml]   [2011]   [Jan]   [18]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
From
SubjectRe: [PATCH v5] input: tegra-kbc - Add tegra keyboard driver
On Mon, Jan 17, 2011 at 09:12:16PM -0800, Dmitry Torokhov wrote:
> On Thu, Jan 13, 2011 at 10:27:28AM -0800, riyer@nvidia.com wrote:
> > From: Rakesh Iyer <riyer@nvidia.com>
> >
> > This patch adds support for the internal matrix keyboard controller for
> > Nvidia Tegra platforms.
> >
> > Signed-off-by: Rakesh Iyer <riyer@nvidia.com>
> > ---
> > Changes Done -
> > Wrap the users field check within the mutex.
> > Remove the KBC_MAX_KEYS define and use existing KBC_MAX_KEY.
> > Patch v4 was named incorrectly as PATCH 1/1, so skipping ahead to PATCH v5.
> >
>
> As I said, we should tty to reused definitions from matrix_keypad for
> matrix keypads. Does the following still work for you?
>

And if it does then could you please try this one as well?

Thanks.

--
Dmitry

Input: tegra-kbc - convert to dev_pm_ops

From: Dmitry Torokhov <dmitry.torokhov@gmail.com>

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
---

drivers/input/keyboard/tegra-kbc.c | 17 +++++++++--------
1 files changed, 9 insertions(+), 8 deletions(-)


diff --git a/drivers/input/keyboard/tegra-kbc.c b/drivers/input/keyboard/tegra-kbc.c
index a6ec3fc..c3c0c65 100644
--- a/drivers/input/keyboard/tegra-kbc.c
+++ b/drivers/input/keyboard/tegra-kbc.c
@@ -658,9 +658,10 @@ static int __devexit tegra_kbc_remove(struct platform_device *pdev)
return 0;
}

-#ifdef CONFIG_PM
-static int tegra_kbc_suspend(struct platform_device *pdev, pm_message_t state)
+#ifdef CONFIG_PM_SLEEP
+static int tegra_kbc_suspend(struct device *dev)
{
+ struct platform_device *pdev = to_platform_device(dev);
struct tegra_kbc *kbc = platform_get_drvdata(pdev);

if (device_may_wakeup(&pdev->dev)) {
@@ -679,8 +680,9 @@ static int tegra_kbc_suspend(struct platform_device *pdev, pm_message_t state)
return 0;
}

-static int tegra_kbc_resume(struct platform_device *pdev)
+static int tegra_kbc_resume(struct device *dev)
{
+ struct platform_device *pdev = to_platform_device(dev);
struct tegra_kbc *kbc = platform_get_drvdata(pdev);
int err = 0;

@@ -698,17 +700,16 @@ static int tegra_kbc_resume(struct platform_device *pdev)
}
#endif

+static SIMPLE_DEV_PM_OPS(tegra_kbc_pm_ops, tegra_kbc_suspend, tegra_kbc_resume);
+
static struct platform_driver tegra_kbc_driver = {
.probe = tegra_kbc_probe,
.remove = __devexit_p(tegra_kbc_remove),
-#ifdef CONFIG_PM
- .suspend = tegra_kbc_suspend,
- .resume = tegra_kbc_resume,
-#endif
.driver = {
.name = "tegra-kbc",
.owner = THIS_MODULE,
- }
+ .pm = &tegra_kbc_pm_ops,
+ },
};

static void __exit tegra_kbc_exit(void)

\
 
 \ /
  Last update: 2011-01-18 06:15    [W:0.063 / U:0.620 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site