From: Hanks Chen <hanks.chen@mediatek.com>
To: Linus Walleij <linus.walleij@linaro.org>
Cc: Rob Herring <robh@kernel.org>, CC Hwang <cc.hwang@mediatek.com>,
<wsd_upstream@mediatek.com>,
"open list:OPEN FIRMWARE AND FLATTENED DEVICE TREE BINDINGS"
<devicetree@vger.kernel.org>, Stephen Boyd <sboyd@kernel.org>,
Sean Wang <sean.wang@kernel.org>,
Loda Chou <loda.chou@mediatek.com>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
Marc Zyngier <marc.zyngier@arm.com>,
"Mars Cheng" <mars.cheng@mediatek.com>,
mtk01761 <wendell.lin@mediatek.com>,
Matthias Brugger <matthias.bgg@gmail.com>,
"moderated list:ARM/Mediatek SoC support"
<linux-mediatek@lists.infradead.org>,
linux-clk <linux-clk@vger.kernel.org>
Subject: Re: [PATCH v2 05/11] pinctrl: mediatek: avoid virtual gpio trying to set reg
Date: Wed, 8 Jan 2020 19:27:30 +0800 [thread overview]
Message-ID: <1578482850.7554.18.camel@mtkswgap22> (raw)
In-Reply-To: <CACRpkdZUxpQ1tS9mKG9tc_U==M2BL9HwXt3DS1t413GGSEaVTA@mail.gmail.com>
On Tue, 2020-01-07 at 11:20 +0100, Linus Walleij wrote:
> On Mon, Dec 23, 2019 at 4:11 AM Hanks Chen <hanks.chen@mediatek.com> wrote:
> > On Fri, 2019-08-23 at 10:57 +0200, Linus Walleij wrote:
> > > On Mon, Aug 19, 2019 at 11:22 AM Mars Cheng <mars.cheng@mediatek.com> wrote:
>
> > > This does not explain what a "virtual GPIO" is in this
> > > context, so please elaborate. What is this? Why does
> > > it exist? What is it used for?
> > >
> > > GPIO is "general purpose input/output" and it is a
> > > pretty rubbery category already as it is, so we need
> > > to define our terms pretty strictly.
> > >
> > Virtual GPIO only used inside SOC and not being exported to outside SOC
> > in MTK platform. Some modules use virtual GPIO as eint (e.g. pmic or
> > usb).
>
> I would call that internal GPIOs, those are very real rails inside
> the chip made with polysilicone so there is nothing "virtual"
> about them. If the documentation for the chip calls them virtual
> then explain in the driver that these are SoC-internal
> lines so that everyone will get it.
>
Got it, I will add the info into the driver in v3
> Is the PMIC inside the SoC? I thought that was usually outside of it
> in its own chip.
>
> But I suppose there could be some interface to it in the SoC and
> then that interface has this EINT?
>
That's right. I use incorrect word.
e.g. pmic interface inside the SOC (PMIF), not pmic...
> > In MTK platform, external interrupt (EINT) and GPIO is 1-1 mapping and
> > we can set GPIO as eint.
> > But some modules use specific eint which doesn't have real GPIO pin.
> > So we use virtual GPIO to map it.
>
> OK I get it I think... just put these comments into the code as well
> so we understand when reading the code what is going on.
Got it, will add the comments in v3. Thanks for reviewing.
>
> > > > + if (mtk_is_virt_gpio(hw, gpio))
> > > > + return 1;
> > >
> > > Why are "virtual GPIOs" always inputs?
> >
> > We set virtual GPIO as eint.
> > It mean virtual GPIO only used inside SOC and not being exported to
> > outside SOC.
>
> Are you saying that:
> - "Virtual" GPIOs are always and only used for interrupts
> - Since they are only used for interrupts, they are always inputs
>
> Then write that in a comment to the above change so we know
> this context.
>
Yes, virtual GPIOs are always and only used for interrupts in mtk
platform. I'll add the comments in v3. Thanks for reviewing
> Yours,
> Linus Walleij
>
> _______________________________________________
> Linux-mediatek mailing list
> Linux-mediatek@lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/linux-mediatek
WARNING: multiple messages have this Message-ID (diff)
From: Hanks Chen <hanks.chen@mediatek.com>
To: Linus Walleij <linus.walleij@linaro.org>
Cc: Rob Herring <robh@kernel.org>, CC Hwang <cc.hwang@mediatek.com>,
wsd_upstream@mediatek.com,
"open list:OPEN FIRMWARE AND FLATTENED DEVICE TREE BINDINGS"
<devicetree@vger.kernel.org>, Stephen Boyd <sboyd@kernel.org>,
Sean Wang <sean.wang@kernel.org>,
Loda Chou <loda.chou@mediatek.com>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
Marc Zyngier <marc.zyngier@arm.com>,
"moderated list:ARM/Mediatek SoC support"
<linux-mediatek@lists.infradead.org>,
Mars Cheng <mars.cheng@mediatek.com>,
Matthias Brugger <matthias.bgg@gmail.com>,
mtk01761 <wendell.lin@mediatek.com>,
linux-clk <linux-clk@vger.kernel.org>
Subject: Re: [PATCH v2 05/11] pinctrl: mediatek: avoid virtual gpio trying to set reg
Date: Wed, 8 Jan 2020 19:27:30 +0800 [thread overview]
Message-ID: <1578482850.7554.18.camel@mtkswgap22> (raw)
In-Reply-To: <CACRpkdZUxpQ1tS9mKG9tc_U==M2BL9HwXt3DS1t413GGSEaVTA@mail.gmail.com>
On Tue, 2020-01-07 at 11:20 +0100, Linus Walleij wrote:
> On Mon, Dec 23, 2019 at 4:11 AM Hanks Chen <hanks.chen@mediatek.com> wrote:
> > On Fri, 2019-08-23 at 10:57 +0200, Linus Walleij wrote:
> > > On Mon, Aug 19, 2019 at 11:22 AM Mars Cheng <mars.cheng@mediatek.com> wrote:
>
> > > This does not explain what a "virtual GPIO" is in this
> > > context, so please elaborate. What is this? Why does
> > > it exist? What is it used for?
> > >
> > > GPIO is "general purpose input/output" and it is a
> > > pretty rubbery category already as it is, so we need
> > > to define our terms pretty strictly.
> > >
> > Virtual GPIO only used inside SOC and not being exported to outside SOC
> > in MTK platform. Some modules use virtual GPIO as eint (e.g. pmic or
> > usb).
>
> I would call that internal GPIOs, those are very real rails inside
> the chip made with polysilicone so there is nothing "virtual"
> about them. If the documentation for the chip calls them virtual
> then explain in the driver that these are SoC-internal
> lines so that everyone will get it.
>
Got it, I will add the info into the driver in v3
> Is the PMIC inside the SoC? I thought that was usually outside of it
> in its own chip.
>
> But I suppose there could be some interface to it in the SoC and
> then that interface has this EINT?
>
That's right. I use incorrect word.
e.g. pmic interface inside the SOC (PMIF), not pmic...
> > In MTK platform, external interrupt (EINT) and GPIO is 1-1 mapping and
> > we can set GPIO as eint.
> > But some modules use specific eint which doesn't have real GPIO pin.
> > So we use virtual GPIO to map it.
>
> OK I get it I think... just put these comments into the code as well
> so we understand when reading the code what is going on.
Got it, will add the comments in v3. Thanks for reviewing.
>
> > > > + if (mtk_is_virt_gpio(hw, gpio))
> > > > + return 1;
> > >
> > > Why are "virtual GPIOs" always inputs?
> >
> > We set virtual GPIO as eint.
> > It mean virtual GPIO only used inside SOC and not being exported to
> > outside SOC.
>
> Are you saying that:
> - "Virtual" GPIOs are always and only used for interrupts
> - Since they are only used for interrupts, they are always inputs
>
> Then write that in a comment to the above change so we know
> this context.
>
Yes, virtual GPIOs are always and only used for interrupts in mtk
platform. I'll add the comments in v3. Thanks for reviewing
> Yours,
> Linus Walleij
>
> _______________________________________________
> Linux-mediatek mailing list
> Linux-mediatek@lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/linux-mediatek
_______________________________________________
Linux-mediatek mailing list
Linux-mediatek@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-mediatek
next prev parent reply other threads:[~2020-01-08 11:27 UTC|newest]
Thread overview: 56+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-08-19 9:21 [PATCHv2 00/11] Add basic SoC Support for Mediatek MT6779 SoC Mars Cheng
2019-08-19 9:21 ` Mars Cheng
2019-08-19 9:21 ` [PATCH v2 01/11] dt-bindings: mediatek: add support for mt6779 reference board Mars Cheng
2019-08-19 9:21 ` Mars Cheng
2019-08-23 15:50 ` Matthias Brugger
2019-08-19 9:21 ` [PATCH v2 02/11] dt-bindings: mtk-uart: add mt6779 uart bindings Mars Cheng
2019-08-19 9:21 ` Mars Cheng
2019-08-23 15:47 ` Matthias Brugger
2019-08-19 9:21 ` [PATCH v2 03/11] dt-bindings: irq: mtk,sysirq: add support for mt6779 Mars Cheng
2019-08-19 9:21 ` Mars Cheng
2019-08-23 8:51 ` Linus Walleij
2019-08-23 15:51 ` Matthias Brugger
2019-08-23 15:44 ` Matthias Brugger
2019-08-27 16:50 ` Rob Herring
2019-08-27 16:50 ` Rob Herring
2019-08-19 9:21 ` [PATCH v2 04/11] pinctrl: mediatek: update pinmux definitions " Mars Cheng
2019-08-19 9:21 ` Mars Cheng
2019-08-23 15:53 ` Matthias Brugger
2020-01-02 4:04 ` Hanks Chen
2020-01-02 4:04 ` Hanks Chen
2019-08-19 9:21 ` [PATCH v2 05/11] pinctrl: mediatek: avoid virtual gpio trying to set reg Mars Cheng
2019-08-19 9:21 ` Mars Cheng
2019-08-23 8:57 ` Linus Walleij
2019-12-22 13:52 ` Hanks Chen
2019-12-22 13:52 ` Hanks Chen
2020-01-07 10:20 ` Linus Walleij
2020-01-07 10:20 ` Linus Walleij
2020-01-08 11:27 ` Hanks Chen [this message]
2020-01-08 11:27 ` Hanks Chen
2019-08-19 9:21 ` [PATCH v2 06/11] pinctrl: mediatek: add pinctrl support for MT6779 SoC Mars Cheng
2019-08-19 9:21 ` Mars Cheng
2019-08-22 18:12 ` Sean Wang
2019-08-23 8:59 ` Linus Walleij
2019-08-19 9:21 ` [PATCH v2 07/11] pinctrl: mediatek: add mt6779 eint support Mars Cheng
2019-08-19 9:21 ` Mars Cheng
2019-08-22 18:13 ` Sean Wang
2019-08-19 9:21 ` [PATCH v2 08/11] dt-bindings: mediatek: bindings for MT6779 clk Mars Cheng
2019-08-19 9:21 ` Mars Cheng
2019-08-27 16:52 ` Rob Herring
2019-09-10 14:53 ` Stephen Boyd
2019-08-19 9:21 ` [PATCH v2 09/11] clk: mediatek: Add dt-bindings for MT6779 clocks Mars Cheng
2019-08-19 9:21 ` Mars Cheng
2019-08-27 16:53 ` Rob Herring
2019-09-10 14:53 ` Stephen Boyd
2019-08-19 9:21 ` [PATCH v2 10/11] clk: mediatek: Add MT6779 clock support Mars Cheng
2019-08-19 9:21 ` Mars Cheng
2019-09-10 14:53 ` Stephen Boyd
2019-08-19 9:21 ` [PATCH v2 11/11] arm64: dts: add dts nodes for MT6779 Mars Cheng
2019-08-19 9:21 ` Mars Cheng
2019-08-19 9:40 ` Marc Zyngier
2019-08-19 11:42 ` Mars Cheng
2019-08-19 11:42 ` Mars Cheng
2019-08-19 12:07 ` Marc Zyngier
2019-08-22 0:46 ` Mars Cheng
2019-08-22 0:46 ` Mars Cheng
2019-08-23 16:13 ` Matthias Brugger
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1578482850.7554.18.camel@mtkswgap22 \
--to=hanks.chen@mediatek.com \
--cc=cc.hwang@mediatek.com \
--cc=devicetree@vger.kernel.org \
--cc=linus.walleij@linaro.org \
--cc=linux-clk@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mediatek@lists.infradead.org \
--cc=loda.chou@mediatek.com \
--cc=marc.zyngier@arm.com \
--cc=mars.cheng@mediatek.com \
--cc=matthias.bgg@gmail.com \
--cc=robh@kernel.org \
--cc=sboyd@kernel.org \
--cc=sean.wang@kernel.org \
--cc=wendell.lin@mediatek.com \
--cc=wsd_upstream@mediatek.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.