From patchwork Thu Sep 30 02:40:45 2010 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Dmitry Torokhov X-Patchwork-Id: 218452 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by demeter1.kernel.org (8.14.4/8.14.3) with ESMTP id o8U2eu2Z000341 for ; Thu, 30 Sep 2010 02:40:56 GMT Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752511Ab0I3Cky (ORCPT ); Wed, 29 Sep 2010 22:40:54 -0400 Received: from mail-yw0-f46.google.com ([209.85.213.46]:58461 "EHLO mail-yw0-f46.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752452Ab0I3Cky (ORCPT ); Wed, 29 Sep 2010 22:40:54 -0400 Received: by ywh1 with SMTP id 1so474653ywh.19 for ; Wed, 29 Sep 2010 19:40:53 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:date:from:to:cc:subject :message-id:references:mime-version:content-type:content-disposition :in-reply-to:user-agent; bh=kzrj50lqk6a7/crJ6TLnjhbhJtFIVS8KpGWOGnQ3r28=; b=ES+TXxriP9W+pIzLcgBAKOqO0Suw8NmTyovFr1yZGzGmE2Y/25dpsih7v5TbGy7Lj+ 188BOWHypAi+ODh9Fa9tkpzUvJRwS82v74eOG8KfrFFqlAzB4R+zJuDUok0juzJ46Hiy G7X3dOvJYPWMqeACSKtqviacQNQwbdnIcFAfk= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=date:from:to:cc:subject:message-id:references:mime-version :content-type:content-disposition:in-reply-to:user-agent; b=yHLHps4K7Z3q1c7PIQ+S1Dj7nuAN4/0W1xdKBg5q895EAoy6umLsfVDa+WzQd2/Cvo jWtdsAUyv6CPzKV8hNirauzX72CHUV8GXSsKIDnhmwgVNSZmhrInGyzDl9GVqVUOwBD2 kpGmlVzMHtftDLWr93djQJ0rLL26uHzwCPNcs= Received: by 10.224.88.69 with SMTP id z5mr1797103qal.359.1285814453154; Wed, 29 Sep 2010 19:40:53 -0700 (PDT) Received: from mailhub.coreip.homeip.net (c-24-6-153-206.hsd1.ca.comcast.net [24.6.153.206]) by mx.google.com with ESMTPS id q8sm10278667qcs.36.2010.09.29.19.40.49 (version=TLSv1/SSLv3 cipher=RC4-MD5); Wed, 29 Sep 2010 19:40:50 -0700 (PDT) Date: Wed, 29 Sep 2010 19:40:45 -0700 From: Dmitry Torokhov To: Sundar Iyer Cc: linux-input@vger.kernel.org, Linus Walleij Subject: Re: [Patch v7 1/2] input: add support for Nomadik SKE keypad controller Message-ID: <20100930024045.GD5260@core.coreip.homeip.net> References: <1285666324-14578-1-git-send-email-sundar.iyer@stericsson.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <1285666324-14578-1-git-send-email-sundar.iyer@stericsson.com> User-Agent: Mutt/1.5.21 (2010-09-15) Sender: linux-input-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-input@vger.kernel.org X-Greylist: IP, sender and recipient auto-whitelisted, not delayed by milter-greylist-4.2.3 (demeter1.kernel.org [140.211.167.41]); Thu, 30 Sep 2010 02:40:56 +0000 (UTC) diff --git a/arch/arm/mach-ux500/board-mop500.c b/arch/arm/mach-ux500/board-mop500.c index 3450b74..5265fb9 100644 --- a/arch/arm/mach-ux500/board-mop500.c +++ b/arch/arm/mach-ux500/board-mop500.c @@ -177,7 +177,7 @@ static const unsigned int ux500_keymap[] = { KEY(3, 2, KEY_7), }; -static struct matrix_keymap_data ux500_keymap_data = { +static const struct matrix_keymap_data ux500_keymap_data = { .keymap = ux500_keymap, .keymap_size = ARRAY_SIZE(ux500_keymap), }; diff --git a/arch/arm/plat-nomadik/include/plat/ske.h b/arch/arm/plat-nomadik/include/plat/ske.h index 148b2bc..31382fb 100644 --- a/arch/arm/plat-nomadik/include/plat/ske.h +++ b/arch/arm/plat-nomadik/include/plat/ske.h @@ -40,7 +40,7 @@ struct ske_keypad_platform_data { int (*init)(void); int (*exit)(void); - struct matrix_keymap_data *keymap_data; + const struct matrix_keymap_data *keymap_data; u8 krow; u8 kcol; u8 debounce_ms; diff --git a/drivers/input/keyboard/nomadik-ske-keypad.c b/drivers/input/keyboard/nomadik-ske-keypad.c index 8c6ce8a..6e0f230 100644 --- a/drivers/input/keyboard/nomadik-ske-keypad.c +++ b/drivers/input/keyboard/nomadik-ske-keypad.c @@ -83,7 +83,7 @@ static void ske_keypad_set_bits(struct ske_keypad *keypad, u16 addr, } /* - * ske_keypad_chip_init : init keypad controller configuration + * ske_keypad_chip_init: init keypad controller configuration * * Enable Multi key press detection, auto scan mode */ @@ -144,7 +144,7 @@ static void ske_keypad_read_data(struct ske_keypad *keypad) * Read the auto scan registers * * Each SKE_ASRx (x=0 to x=3) contains two row values. - * lower byte contains row value for coloumn 2*x, + * lower byte contains row value for column 2*x, * upper byte contains row value for column 2*x + 1 */ for (i = 0; i < SKE_NUM_ASRX_REGISTERS; i++) { @@ -152,7 +152,7 @@ static void ske_keypad_read_data(struct ske_keypad *keypad) if (!ske_asr) continue; - /* now that ASRx is zero, find out the coloumn x and row y*/ + /* now that ASRx is zero, find out the column x and row y*/ if (ske_asr & 0xff) { col = i * 2; status = ske_asr & 0xff; @@ -251,7 +251,7 @@ static int __devinit ske_keypad_probe(struct platform_device *pdev) keypad->clk = clk_get(&pdev->dev, NULL); if (IS_ERR(keypad->clk)) { - dev_err(&pdev->dev, "failed to clk_get\n"); + dev_err(&pdev->dev, "failed to get clk\n"); error = PTR_ERR(keypad->clk); goto err_iounmap; } @@ -285,8 +285,8 @@ static int __devinit ske_keypad_probe(struct platform_device *pdev) goto err_clk_disable; } - error = request_irq(keypad->irq, ske_keypad_irq, 0, - "ske-keypad", keypad); + error = request_threaded_irq(keypad->irq, NULL, ske_keypad_irq, + IRQF_ONESHOT, "ske-keypad", keypad); if (error) { dev_err(&pdev->dev, "allocate irq %d failed\n", keypad->irq); goto err_clk_disable;