Received: by 2002:a05:6a10:f3d0:0:0:0:0 with SMTP id a16csp2945045pxv; Sun, 4 Jul 2021 03:07:00 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwfwX1DmEwcuT5bu+G50Fpgm7wQm/JJ+8Y59NmaWiLRRkEvfHdQKh0frFYMWlz6hfAgNAyo X-Received: by 2002:a17:907:7287:: with SMTP id dt7mr8181754ejc.127.1625393220238; Sun, 04 Jul 2021 03:07:00 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1625393220; cv=none; d=google.com; s=arc-20160816; b=xsUIyJ1T5Lt0OMxyNK0BmwE2KT2cOAH9Azz56T8Fd5HM/1sMvtLFM4Sk+A34x0PAIc wcZhfb0tIfw4rGKvVTmUoyeC+dVqzqDiQWZwLmvPnpRMjGkqSIp9802dXaXhLbwTUK6N GA6XSuXrZmCKhETsiNj0ez2PlBWazY44UnTC63dnsTBp3jqajJdO2WtN+/raA08Zsone 5eIILJujgBMO+NxssRJ2+BhNUxw+tjExbxCgESBMXSGpKklpiJgWS060ZnVoV2kmQCzf DSL1j4cCn0CIk/ahYyPqpFo84zQQ0i2LFVSjpr+FjdXsbHm6Fn0nrpXMarXUWJWXoGxs d3zA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:subject:message-id:date:from:in-reply-to :references:mime-version:dkim-signature; bh=qM2np/6KCkaiJ22WZ5dLe/9dokvloKC/+FFFPrrORdA=; b=PHuGYinim/jJItpisHr6gYMiPVpFk73EKHPRAOgzmPcf+g72zeMzK3HxUCtGFHjkT1 YEceuPYCSWgZZVEsEsOpHmAj+oZJPwIDq3mwnR+Qsj7mLLkHRAwvBKzol7rspNwo131X Kd75LG+7pqN60Ifx/H2ZyBfGN8WzSTpeZ0aJIXn/zTBF7BOnYi4rWEgNp6DodEiXCcVm uvfgZDhv7aNoBGYZjxgDBQaZq9h4OXazdnLgl8gf7yuQpok+jukxHipqs77vpELP0zab hEKeRQYlV9CUVajSEuZwChjH49dYQK+9zABFr14dtPM5AbA92niuN5XoRsWaWhJ3dMKB cIYw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b="ELca/3gS"; 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=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id e9si7361635edv.146.2021.07.04.03.06.29; Sun, 04 Jul 2021 03:07:00 -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=@gmail.com header.s=20161025 header.b="ELca/3gS"; 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=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229532AbhGDKIJ (ORCPT + 99 others); Sun, 4 Jul 2021 06:08:09 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:45120 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229476AbhGDKII (ORCPT ); Sun, 4 Jul 2021 06:08:08 -0400 Received: from mail-pg1-x532.google.com (mail-pg1-x532.google.com [IPv6:2607:f8b0:4864:20::532]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id D9981C061762; Sun, 4 Jul 2021 03:05:32 -0700 (PDT) Received: by mail-pg1-x532.google.com with SMTP id f5so5790550pgv.3; Sun, 04 Jul 2021 03:05:32 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=qM2np/6KCkaiJ22WZ5dLe/9dokvloKC/+FFFPrrORdA=; b=ELca/3gSkLjYpeooQ7rgWgv3IU4RdrXAawU66jvPd6XZjt1bn0qS8tXy8RvCppK+uN LvLA7Zd1xrE0m56YA/uH5J+ukvx8VCfXcH2Vv3Dst2Pm3vKs3aQhkTV6RnBN2jeNPufW G0zBLuoRBZAWUtOFgTFHGhpMtKDTttSEgosmaKuAQjSyiwk+zVyLau2isZIzjRiBg9kI EcXdz2Ngc7XY/HEBddLzCu6Exb2uibNmVuTxbJZ9cTCSt8ib7gAjaiKjfF+VlDbELDF5 zzwA3c6C5LDO8xB3HBlDDSbSnWeymgzdgG5QK80CZ/IUVnEvQg28c2aL+8JjSQPZudpY wYQA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=qM2np/6KCkaiJ22WZ5dLe/9dokvloKC/+FFFPrrORdA=; b=TZEWGmqwV+dq0PRbaiSiiw/xOhdd5dQJDb/0CWkYsvBOiZ9R5KRiZJxOXV/mRJ46PK ++cVRz6WhwTTbOsOtMbyqIv3wHUZGMy75l+Ahg+FSkdopmSP8XIeNPOVSbvmSLgfbM1n HI8DIcjUFN7QPFSLN89z9RoyvkzyPt5KOjYzsRJYfNTNii+B0RbD/rC+Wnv/BCoiMhde fuHR3qHUFV5sXzm2x9RWti9Vl0h+n0sQeGhOyqlC2MbL/MGRK82eG4iMsdzlQRAuWeOs sd5ndzOQ+WcsoWr6EDtK5/BpE7TM1PkizfQAD52KMlq/kGR3NXEmzjb4UllOMnPn78nR dEXQ== X-Gm-Message-State: AOAM531xjOgOpBsddRz9zLkNBSfA9NvLpZyTwOsLc8dnMlfJooiJ2o9U +xOjhBpJMOOU9xHwdULoZY96GxzoYqFscJu0y+o= X-Received: by 2002:a63:d014:: with SMTP id z20mr9715981pgf.203.1625393132320; Sun, 04 Jul 2021 03:05:32 -0700 (PDT) MIME-Version: 1.0 References: <20210626161819.30508-1-sergio.paracuellos@gmail.com> In-Reply-To: From: Andy Shevchenko Date: Sun, 4 Jul 2021 13:04:56 +0300 Message-ID: Subject: Re: [PATCH v2] gpio: mt7621: support gpio-line-names property To: Sergio Paracuellos Cc: Linus Walleij , "open list:GPIO SUBSYSTEM" , Bartosz Golaszewski , Matthias Brugger , John Thomson , Linux Kernel Mailing List , NeilBrown , =?UTF-8?Q?Ren=C3=A9_van_Dorst?= , Nicholas Mc Guire Content-Type: text/plain; charset="UTF-8" Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Sun, Jul 4, 2021 at 11:06 AM Sergio Paracuellos wrote: > On Sun, Jul 4, 2021 at 7:57 AM Sergio Paracuellos > wrote: > > On Sat, Jul 3, 2021 at 9:36 PM Andy Shevchenko > > wrote: > > > On Sat, Jul 3, 2021 at 3:51 PM Sergio Paracuellos > > > wrote: > > > > On Sat, Jul 3, 2021 at 2:05 PM Sergio Paracuellos > > > > wrote: ... > > > The below is closer to what I meant, yes. I have not much time to look > > > into the details, but I don't have objections about what you suggested > > > below. Additional comments there as well. > > > > Thanks for your time and review, Andy. Let's wait to see if Linus and > > Bartosz are also ok with this approach. > > > > > > How about something like this? > > > > > > > > diff --git a/drivers/gpio/gpio-mt7621.c b/drivers/gpio/gpio-mt7621.c > > > > index 82fb20dca53a..5854a9343491 100644 > > > > --- a/drivers/gpio/gpio-mt7621.c > > > > +++ b/drivers/gpio/gpio-mt7621.c > > > > @@ -241,6 +241,7 @@ mediatek_gpio_bank_probe(struct device *dev, > > > > if (!rg->chip.label) > > > > return -ENOMEM; > > > > > > > > + rg->chip.offset = bank * MTK_BANK_WIDTH; > > > > rg->irq_chip.name = dev_name(dev); > > > > rg->irq_chip.parent_device = dev; > > > > rg->irq_chip.irq_unmask = mediatek_gpio_irq_unmask; > > > > > > Obviously it should be a separate patch :-) > > > > Of course :). I will include one separate patch per driver using the > > custom set names stuff: gpio-mt7621 and gpio-brcmstb. I don't know if > > any other one is also following that wrong pattern. > > What if each gpiochip inside the same driver has a different width? In > such a case (looking into the code seems to be the case for > 'gpio-brcmstb', since driver's calculations per base are aligned with > this code changes but when it is assigned every line name is taking > into account gpio bank's width variable... If the only "client" of > this code would be gpio-mt7621 (or those where base and width of the > banks is the same) I don't know if changing core code makes sense... As far as I understood the problem, the driver (either broadcom one or mediatek) uses one GPIO description from which it internally splits to a few GPIO chips. GPIO chips are kinda independent in that sense, correct? So, if you put the index / offset field per GPIO chip before creation, the problem is solved. What did I miss? -- With Best Regards, Andy Shevchenko