From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932601Ab1KBOtk (ORCPT ); Wed, 2 Nov 2011 10:49:40 -0400 Received: from mail-bw0-f46.google.com ([209.85.214.46]:64630 "EHLO mail-bw0-f46.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1755120Ab1KBOte (ORCPT ); Wed, 2 Nov 2011 10:49:34 -0400 From: Ricardo Ribalda Delgado To: grant.likely@secretlab.ca, rob.herring@calxeda.com, rdunlap@xenotime.net, dmitry.torokhov@gmail.com, jic23@cam.ac.uk, aghayal@codeaurora.org, sameo@linux.intel.com, peter.ujfalusi@ti.com, saaguirre@ti.com, hemanthv@ti.com, devicetree-discuss@lists.ozlabs.org, linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org, linux-input@vger.kernel.org Cc: Ricardo Ribalda Delgado Subject: [PATCHv5 3/5] input/cma3000_d0x: Keep configuration on poweroff Date: Wed, 2 Nov 2011 15:49:11 +0100 Message-Id: <1320245353-32125-4-git-send-email-ricardo.ribalda@gmail.com> X-Mailer: git-send-email 1.7.7.1 In-Reply-To: <1320245353-32125-1-git-send-email-ricardo.ribalda@gmail.com> References: <1320245353-32125-1-git-send-email-ricardo.ribalda@gmail.com> Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org When the device goes to poweroff keep the spi/i2c configuration. Otherwhise the device could not wake up if it was in spi mode. v2: Fixes suggested by Jonathan Cameron -Code Style Signed-off-by: Ricardo Ribalda Delgado --- drivers/input/misc/cma3000_d0x.c | 6 +++++- 1 files changed, 5 insertions(+), 1 deletions(-) diff --git a/drivers/input/misc/cma3000_d0x.c b/drivers/input/misc/cma3000_d0x.c index 97e36fa..35d2577 100644 --- a/drivers/input/misc/cma3000_d0x.c +++ b/drivers/input/misc/cma3000_d0x.c @@ -45,6 +45,7 @@ #define CMA3000_RANGE2G (1 << 7) #define CMA3000_RANGE8G (0 << 7) #define CMA3000_BUSI2C (0 << 4) +#define CMA3000_BUSSPI (1 << 4) #define CMA3000_MODEMASK (7 << 1) #define CMA3000_GRANGEMASK (1 << 7) @@ -231,8 +232,11 @@ static int cma3000_poweron(struct cma3000_accl_data *data) static int cma3000_poweroff(struct cma3000_accl_data *data) { int ret; + u8 ctrl = CMAMODE_POFF; - ret = CMA3000_SET(data, CMA3000_CTRL, CMAMODE_POFF, "Mode setting"); + ctrl |= data->bus_ops->ctrl_mod; + + ret = CMA3000_SET(data, CMA3000_CTRL, ctrl, "Mode setting"); msleep(CMA3000_SETDELAY); return ret; -- 1.7.7.1