[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAMuHMdUQRJHkbwj++jJBMG7QqLd5_bmzUrMzyxEd92bgZbvDYw@mail.gmail.com>
Date: Mon, 15 Nov 2021 17:17:52 +0100
From: Geert Uytterhoeven <geert@...ux-m68k.org>
To: Conor Dooley <Conor.Dooley@...rochip.com>
Cc: Linus Walleij <linus.walleij@...aro.org>,
Bartosz Golaszewski <bgolaszewski@...libre.com>,
Rob Herring <robh+dt@...nel.org>,
Jassi Brar <jassisinghbrar@...il.com>,
Paul Walmsley <paul.walmsley@...ive.com>,
Palmer Dabbelt <palmer@...belt.com>,
Albert Ou <aou@...s.berkeley.edu>,
Alessandro Zummo <a.zummo@...ertech.it>,
Alexandre Belloni <alexandre.belloni@...tlin.com>,
Mark Brown <broonie@...nel.org>,
Greg KH <gregkh@...uxfoundation.org>,
Lewis Hanly <Lewis.Hanly@...rochip.com>,
Daire.McNamara@...rochip.com, Atish Patra <atish.patra@....com>,
Ivan.Griffin@...rochip.com,
"open list:GPIO SUBSYSTEM" <linux-gpio@...r.kernel.org>,
"open list:OPEN FIRMWARE AND FLATTENED DEVICE TREE BINDINGS"
<devicetree@...r.kernel.org>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
Linux I2C <linux-i2c@...r.kernel.org>,
linux-riscv <linux-riscv@...ts.infradead.org>,
Linux Crypto Mailing List <linux-crypto@...r.kernel.org>,
linux-rtc@...r.kernel.org, linux-spi <linux-spi@...r.kernel.org>,
USB list <linux-usb@...r.kernel.org>,
Krzysztof Kozlowski <krzysztof.kozlowski@...onical.com>,
Bin Meng <bin.meng@...driver.com>
Subject: Re: [PATCH 12/13] riscv: icicle-kit: update microchip icicle kit
device tree
Hi Conor,
On Mon, Nov 15, 2021 at 4:39 PM <Conor.Dooley@...rochip.com> wrote:
> On 10/11/2021 14:58, Geert Uytterhoeven wrote:
> > On Wed, Nov 10, 2021 at 3:20 PM <Conor.Dooley@...rochip.com> wrote:
> >> On 09/11/2021 09:04, Geert Uytterhoeven wrote:
> >>> On Mon, Nov 8, 2021 at 4:07 PM <conor.dooley@...rochip.com> wrote:
> >>>> From: Conor Dooley <conor.dooley@...rochip.com>
> >>>>
> >>>> +&gpio2 {
> >>>> + interrupts = <PLIC_INT_GPIO2_NON_DIRECT
> >>>> + PLIC_INT_GPIO2_NON_DIRECT
> >>>> + PLIC_INT_GPIO2_NON_DIRECT
> >>>> + PLIC_INT_GPIO2_NON_DIRECT
> >>>> + PLIC_INT_GPIO2_NON_DIRECT
> >>>> + PLIC_INT_GPIO2_NON_DIRECT
> >>>> + PLIC_INT_GPIO2_NON_DIRECT
> >>>> + PLIC_INT_GPIO2_NON_DIRECT
> >>>> + PLIC_INT_GPIO2_NON_DIRECT
> >>>> + PLIC_INT_GPIO2_NON_DIRECT
> >>>> + PLIC_INT_GPIO2_NON_DIRECT
> >>>> + PLIC_INT_GPIO2_NON_DIRECT
> >>>> + PLIC_INT_GPIO2_NON_DIRECT
> >>>> + PLIC_INT_GPIO2_NON_DIRECT
> >>>> + PLIC_INT_GPIO2_NON_DIRECT
> >>>> + PLIC_INT_GPIO2_NON_DIRECT
> >>>> + PLIC_INT_GPIO2_NON_DIRECT
> >>>> + PLIC_INT_GPIO2_NON_DIRECT
> >>>> + PLIC_INT_GPIO2_NON_DIRECT
> >>>> + PLIC_INT_GPIO2_NON_DIRECT
> >>>> + PLIC_INT_GPIO2_NON_DIRECT
> >>>> + PLIC_INT_GPIO2_NON_DIRECT
> >>>> + PLIC_INT_GPIO2_NON_DIRECT
> >>>> + PLIC_INT_GPIO2_NON_DIRECT
> >>>> + PLIC_INT_GPIO2_NON_DIRECT
> >>>> + PLIC_INT_GPIO2_NON_DIRECT
> >>>> + PLIC_INT_GPIO2_NON_DIRECT
> >>>> + PLIC_INT_GPIO2_NON_DIRECT
> >>>> + PLIC_INT_GPIO2_NON_DIRECT
> >>>> + PLIC_INT_GPIO2_NON_DIRECT
> >>>> + PLIC_INT_GPIO2_NON_DIRECT
> >>>> + PLIC_INT_GPIO2_NON_DIRECT>;
> >>>
> >>> Why override interrupts in the board .dts file?
> >>> Doesn't this belong in the SoC .dtsi file?
> >> The interrupt setup for the gpio isnt fixed, there is an option to
> >> either connect the individual gpio interrupts to the plic *or* they can
> >> be connected to a per gpio controller common interrupt, and it is up to
> >> the driver to read a register to determine which interrupt triggered the
> >> common/NON_DIRECT interrupt. This decision is made by a write to a
> >> system register in application code, which to us didn't seem like it
> >> belonged in the soc .dtsi.
> >
> > So it is software policy? Then it doesn't belong in the board DTS either.
>
> The write (if was to be done) would be done by the bootloader, based on
> the bitstream written to the FPGA, before even u-boot is started. By
> application I meant the bootloader (or some other bare metal
> application), not a program running in userspace in case that's what you
> interpreted. Am I incorrect in thinking that if it is set up by the
> bootloader that Linux can take it for granted?
If it is to be provided by the boot loader, the boot loader should fill
in the interrupts property, just like it already does (or should do, if it
doesn't) for /memory and chosen/bootargs.
Gr{oetje,eeting}s,
Geert
--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@...ux-m68k.org
In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds
Powered by blists - more mailing lists