Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1756589Ab1BPASQ (ORCPT ); Tue, 15 Feb 2011 19:18:16 -0500 Received: from kroah.org ([198.145.64.141]:38606 "EHLO coco.kroah.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1756574Ab1BPASL (ORCPT ); Tue, 15 Feb 2011 19:18:11 -0500 X-Mailbox-Line: From gregkh@clark.kroah.org Tue Feb 15 16:14:26 2011 Message-Id: <20110216001426.256367339@clark.kroah.org> User-Agent: quilt/0.48-11.2 Date: Tue, 15 Feb 2011 16:11:09 -0800 From: Greg KH To: linux-kernel@vger.kernel.org, stable@kernel.org Cc: stable-review@kernel.org, torvalds@linux-foundation.org, akpm@linux-foundation.org, alan@lxorguk.ukuu.org.uk, Henrik Rydberg , Guenter Roeck Subject: [012/272] hwmon: (applesmc) Relax the severity of device init failure In-Reply-To: <20110216001559.GA31413@kroah.com> Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 3044 Lines: 108 2.6.37-stable review patch. If anyone has any objections, please let us know. ------------------ From: Henrik Rydberg commit 2344cd0c2e9ea8f3037be11fb997ddbeda0237ca upstream. The device init is used to reset the accelerometer. Failure to reset is not severe enough to stop loading the module or to resume from hibernation. This patch relaxes failure to a warning and drops output in case of success. Signed-off-by: Henrik Rydberg Signed-off-by: Guenter Roeck Signed-off-by: Greg Kroah-Hartman --- drivers/hwmon/applesmc.c | 38 +++++++------------------------------- 1 file changed, 7 insertions(+), 31 deletions(-) --- a/drivers/hwmon/applesmc.c +++ b/drivers/hwmon/applesmc.c @@ -448,38 +448,22 @@ static int applesmc_read_motion_sensor(i } /* - * applesmc_device_init - initialize the accelerometer. Returns zero on success - * and negative error code on failure. Can sleep. + * applesmc_device_init - initialize the accelerometer. Can sleep. */ -static int applesmc_device_init(void) +static void applesmc_device_init(void) { - int total, ret = -ENXIO; + int total; u8 buffer[2]; if (!applesmc_accelerometer) - return 0; + return; mutex_lock(&applesmc_lock); for (total = INIT_TIMEOUT_MSECS; total > 0; total -= INIT_WAIT_MSECS) { - if (debug) - printk(KERN_DEBUG "applesmc try %d\n", total); if (!applesmc_read_key(MOTION_SENSOR_KEY, buffer, 2) && - (buffer[0] != 0x00 || buffer[1] != 0x00)) { - if (total == INIT_TIMEOUT_MSECS) { - printk(KERN_DEBUG "applesmc: device has" - " already been initialized" - " (0x%02x, 0x%02x).\n", - buffer[0], buffer[1]); - } else { - printk(KERN_DEBUG "applesmc: device" - " successfully initialized" - " (0x%02x, 0x%02x).\n", - buffer[0], buffer[1]); - } - ret = 0; + (buffer[0] != 0x00 || buffer[1] != 0x00)) goto out; - } buffer[0] = 0xe0; buffer[1] = 0x00; applesmc_write_key(MOTION_SENSOR_KEY, buffer, 2); @@ -490,7 +474,6 @@ static int applesmc_device_init(void) out: mutex_unlock(&applesmc_lock); - return ret; } /* @@ -516,13 +499,8 @@ static int applesmc_get_fan_count(void) /* Device model stuff */ static int applesmc_probe(struct platform_device *dev) { - int ret; - - ret = applesmc_device_init(); - if (ret) - return ret; + applesmc_device_init(); - printk(KERN_INFO "applesmc: device successfully initialized.\n"); return 0; } @@ -539,9 +517,7 @@ static int applesmc_pm_resume(struct dev /* Reinitialize device on resume from hibernation */ static int applesmc_pm_restore(struct device *dev) { - int ret = applesmc_device_init(); - if (ret) - return ret; + applesmc_device_init(); return applesmc_pm_resume(dev); } -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/