From: Andrea della Porta <andrea.porta@suse.com>
To: Krzysztof Kozlowski <krzk@kernel.org>
Cc: "Andrea della Porta" <andrea.porta@suse.com>,
"Michael Turquette" <mturquette@baylibre.com>,
"Stephen Boyd" <sboyd@kernel.org>,
"Rob Herring" <robh@kernel.org>,
"Krzysztof Kozlowski" <krzk+dt@kernel.org>,
"Conor Dooley" <conor+dt@kernel.org>,
"Florian Fainelli" <florian.fainelli@broadcom.com>,
"Broadcom internal kernel review list"
<bcm-kernel-feedback-list@broadcom.com>,
"Lorenzo Pieralisi" <lpieralisi@kernel.org>,
"Krzysztof Wilczyński" <kw@linux.com>,
"Manivannan Sadhasivam" <manivannan.sadhasivam@linaro.org>,
"Bjorn Helgaas" <bhelgaas@google.com>,
"Linus Walleij" <linus.walleij@linaro.org>,
"Catalin Marinas" <catalin.marinas@arm.com>,
"Will Deacon" <will@kernel.org>,
"Bartosz Golaszewski" <brgl@bgdev.pl>,
"Derek Kiernan" <derek.kiernan@amd.com>,
"Dragan Cvetic" <dragan.cvetic@amd.com>,
"Arnd Bergmann" <arnd@arndb.de>,
"Greg Kroah-Hartman" <gregkh@linuxfoundation.org>,
"Saravana Kannan" <saravanak@google.com>,
linux-clk@vger.kernel.org, devicetree@vger.kernel.org,
linux-rpi-kernel@lists.infradead.org,
linux-arm-kernel@lists.infradead.org,
linux-kernel@vger.kernel.org, linux-pci@vger.kernel.org,
linux-gpio@vger.kernel.org,
"Masahiro Yamada" <masahiroy@kernel.org>,
"Stefan Wahren" <wahrenst@gmx.net>,
"Herve Codina" <herve.codina@bootlin.com>,
"Luca Ceresoli" <luca.ceresoli@bootlin.com>,
"Thomas Petazzoni" <thomas.petazzoni@bootlin.com>,
"Andrew Lunn" <andrew@lunn.ch>
Subject: Re: [PATCH v2 04/14] dt-bindings: misc: Add device specific bindings for RaspberryPi RP1
Date: Tue, 22 Oct 2024 12:00:12 +0200 [thread overview]
Message-ID: <Zxd3rAspFDglujkM@apocalypse> (raw)
In-Reply-To: <zequ4ps7h6ynr2y5yrcqm3tpvvmmrgc6auupfy435rpysiyypf@7cd2zbwhk3ya>
Hi Krzysztof,
On 08:26 Tue 08 Oct , Krzysztof Kozlowski wrote:
> On Mon, Oct 07, 2024 at 02:39:47PM +0200, Andrea della Porta wrote:
> > The RP1 is a MFD that exposes its peripherals through PCI BARs. This
> > schema is intended as minimal support for the clock generator and
> > gpio controller peripherals which are accessible through BAR1.
> >
> > Signed-off-by: Andrea della Porta <andrea.porta@suse.com>
> > ---
> > .../devicetree/bindings/misc/pci1de4,1.yaml | 110 ++++++++++++++++++
> > MAINTAINERS | 1 +
> > 2 files changed, 111 insertions(+)
> > create mode 100644 Documentation/devicetree/bindings/misc/pci1de4,1.yaml
> >
> > diff --git a/Documentation/devicetree/bindings/misc/pci1de4,1.yaml b/Documentation/devicetree/bindings/misc/pci1de4,1.yaml
> > new file mode 100644
> > index 000000000000..3f099b16e672
> > --- /dev/null
> > +++ b/Documentation/devicetree/bindings/misc/pci1de4,1.yaml
> > @@ -0,0 +1,110 @@
> > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> > +%YAML 1.2
> > +---
> > +$id: http://devicetree.org/schemas/misc/pci1de4,1.yaml#
> > +$schema: http://devicetree.org/meta-schemas/core.yaml#
> > +
> > +title: RaspberryPi RP1 MFD PCI device
> > +
> > +maintainers:
> > + - Andrea della Porta <andrea.porta@suse.com>
> > +
> > +description:
> > + The RaspberryPi RP1 is a PCI multi function device containing
> > + peripherals ranging from Ethernet to USB controller, I2C, SPI
> > + and others.
> > + The peripherals are accessed by addressing the PCI BAR1 region.
> > +
> > +allOf:
> > + - $ref: /schemas/pci/pci-ep-bus.yaml
> > +
> > +properties:
> > + compatible:
> > + additionalItems: true
>
> Why is this true? This is final schema, not a "common" part.
The 'compatible' property I've specified in rp1.dtso is not strictly
necessary since it will be added automatically during the dynamic device
node creation by the OF subsystem, and will be something like this:
"pci1de4,1", "pciclass,0200000", "pciclass,0200"
I've redefined simply as "pci1de4,1" in the dtso so it can be validated
against the relative binding schema, and I opted for a shorter name since
the RP1 is not really a simple ethernet controller as advertised by the
config space (pciclass=2). The schema definition allows for the "relaxed"
extended version, shoudl someone want to use it for resemblance with the
dynamically create compatibel string.
>
> > + maxItems: 3
> > + items:
> > + - const: pci1de4,1
> > +
> > +patternProperties:
> > + "^pci-ep-bus@[0-2]$":
> > + $ref: '#/$defs/bar-bus'
> > + description:
> > + The bus on which the peripherals are attached, which is addressable
> > + through the BAR.
> > +
> > +unevaluatedProperties: false
> > +
> > +$defs:
> > + bar-bus:
> > + $ref: /schemas/pci/pci-ep-bus.yaml#/$defs/pci-ep-bus
> > + unevaluatedProperties: false
> > +
> > + properties:
> > + "#interrupt-cells":
> > + const: 2
> > + description:
> > + Specifies respectively the interrupt number and flags as defined
> > + in include/dt-bindings/interrupt-controller/irq.h.
> > +
> > + interrupt-controller: true
> > +
> > + interrupt-parent:
> > + description:
> > + Must be the phandle of this 'pci-ep-bus' node. It will trigger
> > + PCI interrupts on behalf of peripheral generated interrupts.
> > +
> > + patternProperties:
> > + "^clocks(@[0-9a-f]+)?$":
>
> Why @ is optional? Your device is fixed, not flexible.
Right.
Many thanks,
Andrea
>
> Best regards,
> Krzysztof
>
next prev parent reply other threads:[~2024-10-22 9:59 UTC|newest]
Thread overview: 50+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-10-07 12:39 [PATCH v2 00/14] Add support for RaspberryPi RP1 PCI device using a DT overlay Andrea della Porta
2024-10-07 12:39 ` [PATCH v2 01/14] dt-bindings: clock: Add RaspberryPi RP1 clock bindings Andrea della Porta
2024-10-08 6:31 ` Krzysztof Kozlowski
2024-10-21 17:07 ` Andrea della Porta
2024-10-07 12:39 ` [PATCH v2 02/14] dt-bindings: pinctrl: Add RaspberryPi RP1 gpio/pinctrl/pinmux bindings Andrea della Porta
2024-10-08 6:29 ` Krzysztof Kozlowski
2024-10-21 17:41 ` Andrea della Porta
2024-10-07 12:39 ` [PATCH v2 03/14] dt-bindings: pci: Add common schema for devices accessible through PCI BARs Andrea della Porta
2024-10-07 14:16 ` Rob Herring (Arm)
2024-10-08 6:24 ` Krzysztof Kozlowski
2024-10-22 9:16 ` Andrea della Porta
2024-10-10 2:47 ` Rob Herring
2024-10-22 9:16 ` Andrea della Porta
2024-10-07 12:39 ` [PATCH v2 04/14] dt-bindings: misc: Add device specific bindings for RaspberryPi RP1 Andrea della Porta
2024-10-08 6:26 ` Krzysztof Kozlowski
2024-10-22 10:00 ` Andrea della Porta [this message]
2024-10-10 2:52 ` Rob Herring
2024-10-22 9:30 ` Andrea della Porta
2024-10-07 12:39 ` [PATCH v2 05/14] PCI: of_property: Sanitize 32 bit PCI address parsed from DT Andrea della Porta
2024-10-07 12:39 ` [PATCH v2 06/14] of: address: Preserve the flags portion on 1:1 dma-ranges mapping Andrea della Porta
2024-10-07 12:39 ` [PATCH v2 07/14] gpiolib: Export symbol gpiochip_set_names() Andrea della Porta
2024-10-07 12:51 ` Bartosz Golaszewski
2024-10-07 12:39 ` [PATCH v2 08/14] clk: rp1: Add support for clocks provided by RP1 Andrea della Porta
2024-10-09 22:08 ` Stephen Boyd
2024-10-23 15:36 ` Andrea della Porta
2024-10-23 16:32 ` Herve Codina
2024-10-27 11:15 ` Andrea della Porta
2024-10-23 21:52 ` Stephen Boyd
2024-10-27 11:28 ` Andrea della Porta
2024-11-14 15:41 ` Andrea della Porta
2024-10-07 12:39 ` [PATCH v2 09/14] pinctrl: rp1: Implement RaspberryPi RP1 gpio support Andrea della Porta
2024-10-11 9:03 ` Linus Walleij
2024-10-11 10:08 ` Stefan Wahren
2024-10-27 11:32 ` Andrea della Porta
2024-10-27 11:32 ` Andrea della Porta
2024-10-07 12:39 ` [PATCH v2 10/14] arm64: dts: rp1: Add support for RaspberryPi's RP1 device Andrea della Porta
2024-10-07 14:57 ` Herve Codina
2024-10-27 13:26 ` Andrea della Porta
2024-10-07 12:39 ` [PATCH v2 11/14] misc: rp1: RaspberryPi RP1 misc driver Andrea della Porta
2024-10-07 15:41 ` Herve Codina
2024-10-28 9:57 ` Andrea della Porta
2024-10-10 19:03 ` kernel test robot
2024-10-11 5:15 ` kernel test robot
2024-10-24 15:21 ` Dave Stevenson
2024-10-25 8:29 ` Andrea della Porta
2024-10-07 12:39 ` [PATCH v2 12/14] arm64: dts: bcm2712: Add external clock for RP1 chipset on Rpi5 Andrea della Porta
2024-10-07 12:39 ` [PATCH v2 13/14] arm64: dts: Add DTS overlay for RP1 gpio line names Andrea della Porta
2024-10-07 12:39 ` [PATCH v2 14/14] arm64: defconfig: Enable RP1 misc/clock/gpio drivers Andrea della Porta
2024-10-08 6:32 ` Krzysztof Kozlowski
2024-10-28 10:36 ` Andrea della Porta
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=Zxd3rAspFDglujkM@apocalypse \
--to=andrea.porta@suse.com \
--cc=andrew@lunn.ch \
--cc=arnd@arndb.de \
--cc=bcm-kernel-feedback-list@broadcom.com \
--cc=bhelgaas@google.com \
--cc=brgl@bgdev.pl \
--cc=catalin.marinas@arm.com \
--cc=conor+dt@kernel.org \
--cc=derek.kiernan@amd.com \
--cc=devicetree@vger.kernel.org \
--cc=dragan.cvetic@amd.com \
--cc=florian.fainelli@broadcom.com \
--cc=gregkh@linuxfoundation.org \
--cc=herve.codina@bootlin.com \
--cc=krzk+dt@kernel.org \
--cc=krzk@kernel.org \
--cc=kw@linux.com \
--cc=linus.walleij@linaro.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-clk@vger.kernel.org \
--cc=linux-gpio@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pci@vger.kernel.org \
--cc=linux-rpi-kernel@lists.infradead.org \
--cc=lpieralisi@kernel.org \
--cc=luca.ceresoli@bootlin.com \
--cc=manivannan.sadhasivam@linaro.org \
--cc=masahiroy@kernel.org \
--cc=mturquette@baylibre.com \
--cc=robh@kernel.org \
--cc=saravanak@google.com \
--cc=sboyd@kernel.org \
--cc=thomas.petazzoni@bootlin.com \
--cc=wahrenst@gmx.net \
--cc=will@kernel.org \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).