lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Date:   Thu, 1 Jun 2023 11:39:24 +0800
From:   Hal Feng <hal.feng@...rfivetech.com>
To:     Shengyu Qu <wiagn233@...look.com>, <linux-clk@...r.kernel.org>,
        <devicetree@...r.kernel.org>, <linux-riscv@...ts.infradead.org>
CC:     Stephen Boyd <sboyd@...nel.org>,
        Michael Turquette <mturquette@...libre.com>,
        Philipp Zabel <p.zabel@...gutronix.de>,
        "Rob Herring" <robh+dt@...nel.org>,
        Krzysztof Kozlowski <krzysztof.kozlowski+dt@...aro.org>,
        Conor Dooley <conor@...nel.org>,
        "Palmer Dabbelt" <palmer@...belt.com>,
        Paul Walmsley <paul.walmsley@...ive.com>,
        Albert Ou <aou@...s.berkeley.edu>,
        Ben Dooks <ben.dooks@...ive.com>,
        "Daniel Lezcano" <daniel.lezcano@...aro.org>,
        Thomas Gleixner <tglx@...utronix.de>,
        Marc Zyngier <maz@...nel.org>,
        Emil Renner Berthing <emil.renner.berthing@...onical.com>,
        <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH v7 19/22] riscv: dts: starfive: Add initial StarFive
 JH7110 device tree

On Sun, 7 May 2023 18:03:19 +0800, Shengyu Qu wrote:
> Hi Hal,
>> From: Emil Renner Berthing <kernel@...il.dk>
>> diff --git a/arch/riscv/boot/dts/starfive/jh7110.dtsi b/arch/riscv/boot/dts/starfive/jh7110.dtsi
>> new file mode 100644
>> index 000000000000..d484ecdf93f7
>> --- /dev/null
>> +++ b/arch/riscv/boot/dts/starfive/jh7110.dtsi
>> @@ -0,0 +1,509 @@
>> +// SPDX-License-Identifier: GPL-2.0 OR MIT
>> +/*
>> + * Copyright (C) 2022 StarFive Technology Co., Ltd.
>> + * Copyright (C) 2022 Emil Renner Berthing <kernel@...il.dk>
>> + */
>> +
>> +/dts-v1/;
>> +#include <dt-bindings/clock/starfive,jh7110-crg.h>
>> +#include <dt-bindings/reset/starfive,jh7110-crg.h>
>> +
>> +/ {
[...]
>> +
>> +    soc {
>> +        compatible = "simple-bus";
>> +        interrupt-parent = <&plic>;
> 
> Do we really need this interrupt-parent? Seems it is causing a dependency cycle:
> 
> platform soc: Fixed dependency cycle(s) with /soc/interrupt-controller@...0000
> 
> And seems fu740 dts doesn't have this.

Sorry to reply too late. If we drop this line, we need to add 'interrupt-parent'
to every node which uses interrupt. And I found some other platform did the same
such as 

arch/riscv/boot/dts/allwinner/sun20i-d1s.dtsi
arch/riscv/boot/dts/canaan/k210.dtsi
arch/riscv/boot/dts/renesas/r9a07g043f.dtsi

Best regards,
Hal

> 
>> +        #address-cells = <2>;
>> +        #size-cells = <2>;
>> +        ranges;
>> +
>> +        clint: timer@...0000 {
>> +            compatible = "starfive,jh7110-clint", "sifive,clint0";
>> +            reg = <0x0 0x2000000 0x0 0x10000>;
>> +            interrupts-extended = <&cpu0_intc 3>, <&cpu0_intc 7>,
>> +                          <&cpu1_intc 3>, <&cpu1_intc 7>,
>> +                          <&cpu2_intc 3>, <&cpu2_intc 7>,
>> +                          <&cpu3_intc 3>, <&cpu3_intc 7>,
>> +                          <&cpu4_intc 3>, <&cpu4_intc 7>;
>> +        };
>> +
>> +        ccache: cache-controller@...0000 {
>> +            compatible = "starfive,jh7110-ccache", "sifive,ccache0", "cache";
>> +            reg = <0x0 0x2010000 0x0 0x4000>;
>> +            interrupts = <1>, <3>, <4>, <2>;
>> +            cache-block-size = <64>;
>> +            cache-level = <2>;
>> +            cache-sets = <2048>;
>> +            cache-size = <2097152>;
>> +            cache-unified;
>> +        };
>> +
>> +        plic: interrupt-controller@...0000 {
>> +            compatible = "starfive,jh7110-plic", "sifive,plic-1.0.0";
>> +            reg = <0x0 0xc000000 0x0 0x4000000>;
>> +            interrupts-extended = <&cpu0_intc 11>,
>> +                          <&cpu1_intc 11>, <&cpu1_intc 9>,
>> +                          <&cpu2_intc 11>, <&cpu2_intc 9>,
>> +                          <&cpu3_intc 11>, <&cpu3_intc 9>,
>> +                          <&cpu4_intc 11>, <&cpu4_intc 9>;
>> +            interrupt-controller;
>> +            #interrupt-cells = <1>;
>> +            #address-cells = <0>;
>> +            riscv,ndev = <136>;
>> +        };
>> +
>> +        uart0: serial@...00000 {
>> +            compatible = "snps,dw-apb-uart";
>> +            reg = <0x0 0x10000000 0x0 0x10000>;
>> +            clocks = <&syscrg JH7110_SYSCLK_UART0_CORE>,
>> +                 <&syscrg JH7110_SYSCLK_UART0_APB>;
>> +            clock-names = "baudclk", "apb_pclk";
>> +            resets = <&syscrg JH7110_SYSRST_UART0_APB>;
>> +            interrupts = <32>;
>> +            reg-io-width = <4>;
>> +            reg-shift = <2>;
>> +            status = "disabled";
>> +        };
>> +
[...]

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ