Received: by 2002:a05:6902:102b:0:0:0:0 with SMTP id x11csp931387ybt; Wed, 17 Jun 2020 18:14:09 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzSyBEzdT2hahREIwCptx/AVtR3egB4Ox3yBNLWraxWQkWVInkzYR8OZA6q2JZ/EetCuKfK X-Received: by 2002:a05:6402:128f:: with SMTP id w15mr1841939edv.240.1592442849727; Wed, 17 Jun 2020 18:14:09 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1592442849; cv=none; d=google.com; s=arc-20160816; b=QWsmvt4N1JU0zP0CELAOHuwqVRRT9ojOeX6kwD7Ed60DPJTyvRDaRWJF8+LRBsKOrl 2JIUxyXi6cHhlr6tgZeZOe2cVzQ/ZlTj6pPkWYWBTPt7wupieNXZuOUr5g2xaGQxQfqe QyEpOOjP0M9L++WzVk87YkNTizn9CVIekUVyiAm0CoQyeUGAwljCy5Fqkau0FdkinMMX bKE9ifROuPDMgi55D1BH+MGJjLTAVyConQYKb2BfJL1Pwbdax3aDFWCIqHh6F6lx+n7m VR4sVuYr+ploSJT0dKSQ22Nwh94RxbNAhEjBB+7/2p63wtenKFZM3V4EScE5iF48zSxV NZLw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=LNuwDwyEUlQhdNT5+3l3Mc2VymbLY/yKQjdqr9aX70I=; b=Y6BfsZWsN9dKgQs7Jr/0NSFcWildxpN30Ys49h6VR8tmR+hVqIzAL1A3HfwBTJ+wwU 8CZBUm4UUYQMZi3G7acKSkNr5YfmK+aLGGrTN+yYHJlpOLYVHZXoWwI9qSMPuzrnfXsU j5LYk2wHG4NARGFDvz8lqQ1qggemRIV+PPODlq9Pl03UalWr0xeMoGrRkd9SUz767YqV cfymejwCArRjAvnVzF0DHX0rBfRTuZQUvbYh+e1CIb7n1rdpDH+yeeQR8cS++04r+i8y wPvG769f/5Risi7soZj6N5XkYtQwKUZLchfehzS6tqze07/tdhjwauabuXcWNWXz+S1f 77OA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=ksQ0AyCP; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id p16si951512ejj.708.2020.06.17.18.13.47; Wed, 17 Jun 2020 18:14:09 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=ksQ0AyCP; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728138AbgFRBJX (ORCPT + 99 others); Wed, 17 Jun 2020 21:09:23 -0400 Received: from mail.kernel.org ([198.145.29.99]:35498 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728102AbgFRBJR (ORCPT ); Wed, 17 Jun 2020 21:09:17 -0400 Received: from sasha-vm.mshome.net (c-73-47-72-35.hsd1.nh.comcast.net [73.47.72.35]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id ADE122193E; Thu, 18 Jun 2020 01:09:15 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1592442556; bh=6gruKfqidV8dlcCkOj9tUa6RXFVX8x50lVwibQBN1mw=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=ksQ0AyCPqlmHiHObWLQsZZXtpdSuGhFQxYf8f/R0naOk4Mbm4mviGUv4K425KoFYE njGtxg8A+bWByqHhU5VlVd76iWpXRBxF2TKABek2wBoVxBF96cwHWdtMymzxsyto9q 5WY2MsGxqWP0N1X45rrKxxz0H24ZR2XkNL+8tN7U= From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Lars Povlsen , Alexandre Belloni , Linus Walleij , Sasha Levin , linux-gpio@vger.kernel.org Subject: [PATCH AUTOSEL 5.7 053/388] pinctrl: ocelot: Fix GPIO interrupt decoding on Jaguar2 Date: Wed, 17 Jun 2020 21:02:30 -0400 Message-Id: <20200618010805.600873-53-sashal@kernel.org> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20200618010805.600873-1-sashal@kernel.org> References: <20200618010805.600873-1-sashal@kernel.org> MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Lars Povlsen [ Upstream commit 0b47afc65453a70bc521e251138418056f65793f ] This fixes a problem with using the GPIO as an interrupt on Jaguar2 (and similar), as the register layout of the platforms with 64 GPIO's are pairwise, such that the original offset must be multiplied with the platform stride. Fixes: da801ab56ad8 pinctrl: ocelot: add MSCC Jaguar2 support. Reviewed-by: Alexandre Belloni Signed-off-by: Lars Povlsen Link: https://lore.kernel.org/r/20200513125532.24585-4-lars.povlsen@microchip.com Signed-off-by: Linus Walleij Signed-off-by: Sasha Levin --- drivers/pinctrl/pinctrl-ocelot.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/pinctrl/pinctrl-ocelot.c b/drivers/pinctrl/pinctrl-ocelot.c index ed8eac6c1494..4b99922d6c7e 100644 --- a/drivers/pinctrl/pinctrl-ocelot.c +++ b/drivers/pinctrl/pinctrl-ocelot.c @@ -714,11 +714,12 @@ static void ocelot_irq_handler(struct irq_desc *desc) struct irq_chip *parent_chip = irq_desc_get_chip(desc); struct gpio_chip *chip = irq_desc_get_handler_data(desc); struct ocelot_pinctrl *info = gpiochip_get_data(chip); + unsigned int id_reg = OCELOT_GPIO_INTR_IDENT * info->stride; unsigned int reg = 0, irq, i; unsigned long irqs; for (i = 0; i < info->stride; i++) { - regmap_read(info->map, OCELOT_GPIO_INTR_IDENT + 4 * i, ®); + regmap_read(info->map, id_reg + 4 * i, ®); if (!reg) continue; -- 2.25.1