From patchwork Tue Dec 22 14:36:12 2015 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Linus Walleij X-Patchwork-Id: 58906 Delivered-To: patch@linaro.org Received: by 10.112.89.199 with SMTP id bq7csp3273557lbb; Tue, 22 Dec 2015 06:36:19 -0800 (PST) X-Received: by 10.66.101.36 with SMTP id fd4mr36640879pab.76.1450794979254; Tue, 22 Dec 2015 06:36:19 -0800 (PST) Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id w2si11984531pfa.78.2015.12.22.06.36.19; Tue, 22 Dec 2015 06:36:19 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-gpio-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-gpio-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-gpio-owner@vger.kernel.org; dkim=neutral (body hash did not verify) header.i=@linaro.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932214AbbLVOgS (ORCPT + 4 others); Tue, 22 Dec 2015 09:36:18 -0500 Received: from mail-lb0-f175.google.com ([209.85.217.175]:33753 "EHLO mail-lb0-f175.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753683AbbLVOgS (ORCPT ); Tue, 22 Dec 2015 09:36:18 -0500 Received: by mail-lb0-f175.google.com with SMTP id sv6so25322926lbb.0 for ; Tue, 22 Dec 2015 06:36:17 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id; bh=XoRQMnOqusCVHcG3cjAOiRnrk2e2GH/SkazpGDGaoLE=; b=dVCe5eDdxENV4A5NTEkKulGGPFgV9Po9f2PUbt7lyKRTmdjdVw3ZVUUMaV0+DPXUst 7NXpkYN6WgaHjauBatW0b3Cd7UVKW1F8uXcXrTor5KXAHFky1K5Ndcws/cV+G4erpcLs 4vjcfuZ7+4zDlAd8U+Qd3ttB+Zhb+CfbRJIr8= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:to:cc:subject:date:message-id; bh=XoRQMnOqusCVHcG3cjAOiRnrk2e2GH/SkazpGDGaoLE=; b=H15NSrJsZn6Nm5QMYbPT9MpCNyoSHH4EONO9l9t3kR3NZw9DcaZINR0+2/wvjUmoNQ J3uhqcqkEvGXCp0ZTYMNTbuUoLSZjyHj1vXjopoLK0YG6NQZy+lFr+mg4iJz8vuH2xKm J+4Pkm2mmkiJr3dik3lcVMwrqMT1QAawoRtg5IFmLJvq57LtMd9ccvr0U8ckc3TYXUnm yL068fZcBokfbrAt1XJae31W2oKOk4kaKS0A16Yd58EOQISTmZr+ZxBOV4x7jaNwn4vc xP4ZGZt4j9r0gDrh/PG1Ye+1jCTy0cPJzXqiPL/oE1y1k4aoqvswJqtoYXjk30/+QBG6 d4vA== X-Gm-Message-State: ALoCoQmmQfNatQjrUsduP9iW5T+d56856NYGYP6CyMGE7gxW6xDBDYQoNRut2ArZJDKryU9tQdlil53t9Ntxck0Iyc1fNIKDvQ== X-Received: by 10.112.157.101 with SMTP id wl5mr8623440lbb.88.1450794976605; Tue, 22 Dec 2015 06:36:16 -0800 (PST) Received: from localhost.localdomain ([85.235.10.227]) by smtp.gmail.com with ESMTPSA id bm8sm5766986lbb.35.2015.12.22.06.36.15 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 22 Dec 2015 06:36:15 -0800 (PST) From: Linus Walleij To: linux-gpio@vger.kernel.org, arm@kernel.org Cc: Linus Walleij Subject: [PATCH 33/54] ARM: sa1100/simpad: Be sure to clamp return value Date: Tue, 22 Dec 2015 15:36:12 +0100 Message-Id: <1450794972-27141-1-git-send-email-linus.walleij@linaro.org> X-Mailer: git-send-email 2.4.3 Sender: linux-gpio-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-gpio@vger.kernel.org As we want gpio_chip .get() calls to be able to return negative error codes and propagate to drivers, we need to go over all drivers and make sure their return values are clamped to [0,1]. We do this by using the ret = !!(val) design pattern. Cc: arm@kernel.org Signed-off-by: Linus Walleij --- ARM SoC folks: as mentioned in 00/54: either apply this directly or ACK it and I will take it into the GPIO tree. --- arch/arm/mach-sa1100/simpad.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) -- 2.4.3 -- To unsubscribe from this list: send the line "unsubscribe linux-gpio" 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/arch/arm/mach-sa1100/simpad.c b/arch/arm/mach-sa1100/simpad.c index 41e476e571d7..d8965c682d2f 100644 --- a/arch/arm/mach-sa1100/simpad.c +++ b/arch/arm/mach-sa1100/simpad.c @@ -98,8 +98,8 @@ static void cs3_gpio_set(struct gpio_chip *chip, unsigned offset, int value) static int cs3_gpio_get(struct gpio_chip *chip, unsigned offset) { if (offset > 15) - return simpad_get_cs3_ro() & (1 << (offset - 16)); - return simpad_get_cs3_shadow() & (1 << offset); + return !!(simpad_get_cs3_ro() & (1 << (offset - 16))); + return !!(simpad_get_cs3_shadow() & (1 << offset)); }; static int cs3_gpio_direction_input(struct gpio_chip *chip, unsigned offset)