From: Vadym Kochan <vadym.kochan@plvision.eu>
To: Chris Packham <Chris.Packham@alliedtelesis.co.nz>
Cc: Rob Herring <robh+dt@kernel.org>,
Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>,
Catalin Marinas <catalin.marinas@arm.com>,
Will Deacon <will@kernel.org>,
Gregory CLEMENT <gregory.clement@bootlin.com>,
Konstantin Porotchkin <kostap@marvell.com>,
Robert Marko <robert.marko@sartura.hr>,
"devicetree@vger.kernel.org" <devicetree@vger.kernel.org>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
"linux-arm-kernel@lists.infradead.org"
<linux-arm-kernel@lists.infradead.org>
Subject: Re: [PATCH v9 2/3] arm64: dts: marvell: Add Armada 98DX2530 SoC and RD-AC5X board
Date: Tue, 14 Jun 2022 11:16:33 +0300 [thread overview]
Message-ID: <20220614081633.GA14160@plvision.eu> (raw)
In-Reply-To: <37d7b4f1-fd39-dc05-374a-764070c56cc6@alliedtelesis.co.nz>
Hi Chris,
On Tue, Jun 14, 2022 at 05:26:39AM +0000, Chris Packham wrote:
>
> On 14/06/22 17:11, Chris Packham wrote:
> >
> > On 14/06/22 10:53, Vadym Kochan wrote:
> >> From: Chris Packham <chris.packham@alliedtelesis.co.nz>
> >>
> >> The 98DX2530 SoC is the Control and Management CPU integrated into
> >> the Marvell 98DX25xx and 98DX35xx series of switch chip (internally
> >> referred to as AlleyCat5 and AlleyCat5X).
> >>
> >> These files have been taken from the Marvell SDK and lightly cleaned
> >> up with the License and copyright retained.
> >>
> >> Signed-off-by: Chris Packham <chris.packham@alliedtelesis.co.nz>
> >> Signed-off-by: Vadym Kochan <vadym.kochan@plvision.eu>
> >> ---
> >>
> >> Notes:
> >> The Marvell SDK has a number of new compatible strings. I've
> >> brought
> >> through some of the drivers or where possible used an in-tree
> >> alternative (e.g. there is SDK code for a ac5-gpio but two
> >> instances of
> >> the existing marvell,orion-gpio seems to cover what is needed if
> >> you use
> >> an appropriate binding). I expect that there will a new series of
> >> patches when I get some different hardware (or additions to this
> >> series
> >> depending on if/when it lands).
> >> Changes in v9 (proposed by Marvell):
> >> It was discussed with Chris that Marvell will add some changes:
> >>
> >> 1) Rename "armada-" prefix in dts(i) file names to ac5,
> >> because
> >> Armada has not much common with AC5 SoC.
> >>
> >> 2) Add clock fixes:
> >> - rename core_clock to cnm_clock
> >> - remove axi_clock
> >> - change cnm_clock to 325MHZ
> >> - use cnm_clock for the UART
> >>
> >> Changes in v8:
> >> - Remove unnecessary clock-frequency property on armv8-timer
> >> - Remove unnecessary redistributor-stride property on gic
> >> - Add GIC_SPI interrupts for gpios
> >> Changes in v7:
> >> - Add missing compatible on usb1
> >> - Add "rd-ac5x" compatible for board
> >> - Move aliases to board dts
> >> - Move board specific usb info to board dts
> >> - Consolidate usb1 board settings and remove unnecessary compatible
> >> - Add Allied Telesis copyright
> >> - Rename files after mailng-list discussion
> >> Changes in v6:
> >> - Move CPU nodes above the SoC (Krzysztof)
> >> - Minor formatting clean ups (Krzysztof)
> >> - Run through `make dtbs_check`
> >> - Move gic nodes inside SoC
> >> - Group clocks under a clock node
> >> Changes in v5:
> >> - add #{address,size}-cells property to i2c nodes
> >> - make i2c nodes disabled in the SoC and enable them in the board
> >> - add interrupt controller attributes to gpio nodes
> >> - Move fixed-clock nodes up a level and remove unnecessary @0
> >> Changes in v4:
> >> - use 'phy-handle' instead of 'phy'
> >> - move status="okay" on usb nodes to board dts
> >> - Add review from Andrew
> >> Changes in v3:
> >> - Move memory node to board
> >> - Use single digit reg value for phy address
> >> - Remove MMC node (driver needs work)
> >> - Remove syscon & simple-mfd for pinctrl
> >> Changes in v2:
> >> - Make pinctrl a child node of a syscon node
> >> - Use marvell,armada-8k-gpio instead of orion-gpio
> >> - Remove nand peripheral. The Marvell SDK does have some changes
> >> for the
> >> ac5-nand-controller but I currently lack hardware with NAND
> >> fitted so
> >> I can't test it right now. I've therefore chosen to omit the
> >> node and
> >> not attempted to bring in the driver or binding.
> >> - Remove pcie peripheral. Again there are changes in the SDK and
> >> I have
> >> no way of testing them.
> >> - Remove prestera node.
> >> - Remove "marvell,ac5-ehci" compatible from USB node as
> >> "marvell,orion-ehci" is sufficient
> >> - Remove watchdog node. There is a buggy driver for the ac5
> >> watchdog in
> >> the SDK but it needs some work so I've dropped the node for now.
> >>
> >> arch/arm64/boot/dts/marvell/Makefile | 1 +
> >> arch/arm64/boot/dts/marvell/ac5-98dx25xx.dtsi | 291 ++++++++++++++++++
> >> .../boot/dts/marvell/ac5-98dx35xx-rd.dts | 101 ++++++
> >> arch/arm64/boot/dts/marvell/ac5-98dx35xx.dtsi | 13 +
> >> 4 files changed, 406 insertions(+)
> >> create mode 100644 arch/arm64/boot/dts/marvell/ac5-98dx25xx.dtsi
> >> create mode 100644 arch/arm64/boot/dts/marvell/ac5-98dx35xx-rd.dts
> >> create mode 100644 arch/arm64/boot/dts/marvell/ac5-98dx35xx.dtsi
> >>
[snip]
> >> +
> >> + uart0: serial@12000 {
> >> + compatible = "snps,dw-apb-uart";
> >> + reg = <0x12000 0x100>;
> >> + reg-shift = <2>;
> >> + interrupts = <GIC_SPI 83 IRQ_TYPE_LEVEL_HIGH>;
> >> + reg-io-width = <1>;
> >> + clocks = <&cnm_clock>;
> >
> > With this change I see some garbled output when the "Serial: AMBA
> > PL011 UART" driver starts.
> >
> > It could be that my bootloader has the same wrong clock value as the
> > earlier iteration of this device tree.
> Fixing u-boot doesn't help but there are also references to 328000000 in
> mv-ddr and ATF so I'll look to see if updating them fixes the issue
> tomorrow.
> >
Interesting, because Marvell suggested to use cnm_clock with 328MHz for AC5, and 325MHz
for AC5X.
[snip]
> >> +
> >> + clocks {
> >> + cnm_clock: core-clock {
> >> + compatible = "fixed-clock";
> >> + #clock-cells = <0>;
> >> + clock-frequency = <325000000>;
> >> + };
> >> +
> >> + spi_clock: spi-clock {
> >> + compatible = "fixed-clock";
> >> + #clock-cells = <0>;
> >> + clock-frequency = <200000000>;
> >> + };
> >> + };
> >> +};
[snip]
Regards,
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
WARNING: multiple messages have this Message-ID (diff)
From: Vadym Kochan <vadym.kochan@plvision.eu>
To: Chris Packham <Chris.Packham@alliedtelesis.co.nz>
Cc: Rob Herring <robh+dt@kernel.org>,
Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>,
Catalin Marinas <catalin.marinas@arm.com>,
Will Deacon <will@kernel.org>,
Gregory CLEMENT <gregory.clement@bootlin.com>,
Konstantin Porotchkin <kostap@marvell.com>,
Robert Marko <robert.marko@sartura.hr>,
"devicetree@vger.kernel.org" <devicetree@vger.kernel.org>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
"linux-arm-kernel@lists.infradead.org"
<linux-arm-kernel@lists.infradead.org>
Subject: Re: [PATCH v9 2/3] arm64: dts: marvell: Add Armada 98DX2530 SoC and RD-AC5X board
Date: Tue, 14 Jun 2022 11:16:33 +0300 [thread overview]
Message-ID: <20220614081633.GA14160@plvision.eu> (raw)
In-Reply-To: <37d7b4f1-fd39-dc05-374a-764070c56cc6@alliedtelesis.co.nz>
Hi Chris,
On Tue, Jun 14, 2022 at 05:26:39AM +0000, Chris Packham wrote:
>
> On 14/06/22 17:11, Chris Packham wrote:
> >
> > On 14/06/22 10:53, Vadym Kochan wrote:
> >> From: Chris Packham <chris.packham@alliedtelesis.co.nz>
> >>
> >> The 98DX2530 SoC is the Control and Management CPU integrated into
> >> the Marvell 98DX25xx and 98DX35xx series of switch chip (internally
> >> referred to as AlleyCat5 and AlleyCat5X).
> >>
> >> These files have been taken from the Marvell SDK and lightly cleaned
> >> up with the License and copyright retained.
> >>
> >> Signed-off-by: Chris Packham <chris.packham@alliedtelesis.co.nz>
> >> Signed-off-by: Vadym Kochan <vadym.kochan@plvision.eu>
> >> ---
> >>
> >> Notes:
> >> The Marvell SDK has a number of new compatible strings. I've
> >> brought
> >> through some of the drivers or where possible used an in-tree
> >> alternative (e.g. there is SDK code for a ac5-gpio but two
> >> instances of
> >> the existing marvell,orion-gpio seems to cover what is needed if
> >> you use
> >> an appropriate binding). I expect that there will a new series of
> >> patches when I get some different hardware (or additions to this
> >> series
> >> depending on if/when it lands).
> >> Changes in v9 (proposed by Marvell):
> >> It was discussed with Chris that Marvell will add some changes:
> >>
> >> 1) Rename "armada-" prefix in dts(i) file names to ac5,
> >> because
> >> Armada has not much common with AC5 SoC.
> >>
> >> 2) Add clock fixes:
> >> - rename core_clock to cnm_clock
> >> - remove axi_clock
> >> - change cnm_clock to 325MHZ
> >> - use cnm_clock for the UART
> >>
> >> Changes in v8:
> >> - Remove unnecessary clock-frequency property on armv8-timer
> >> - Remove unnecessary redistributor-stride property on gic
> >> - Add GIC_SPI interrupts for gpios
> >> Changes in v7:
> >> - Add missing compatible on usb1
> >> - Add "rd-ac5x" compatible for board
> >> - Move aliases to board dts
> >> - Move board specific usb info to board dts
> >> - Consolidate usb1 board settings and remove unnecessary compatible
> >> - Add Allied Telesis copyright
> >> - Rename files after mailng-list discussion
> >> Changes in v6:
> >> - Move CPU nodes above the SoC (Krzysztof)
> >> - Minor formatting clean ups (Krzysztof)
> >> - Run through `make dtbs_check`
> >> - Move gic nodes inside SoC
> >> - Group clocks under a clock node
> >> Changes in v5:
> >> - add #{address,size}-cells property to i2c nodes
> >> - make i2c nodes disabled in the SoC and enable them in the board
> >> - add interrupt controller attributes to gpio nodes
> >> - Move fixed-clock nodes up a level and remove unnecessary @0
> >> Changes in v4:
> >> - use 'phy-handle' instead of 'phy'
> >> - move status="okay" on usb nodes to board dts
> >> - Add review from Andrew
> >> Changes in v3:
> >> - Move memory node to board
> >> - Use single digit reg value for phy address
> >> - Remove MMC node (driver needs work)
> >> - Remove syscon & simple-mfd for pinctrl
> >> Changes in v2:
> >> - Make pinctrl a child node of a syscon node
> >> - Use marvell,armada-8k-gpio instead of orion-gpio
> >> - Remove nand peripheral. The Marvell SDK does have some changes
> >> for the
> >> ac5-nand-controller but I currently lack hardware with NAND
> >> fitted so
> >> I can't test it right now. I've therefore chosen to omit the
> >> node and
> >> not attempted to bring in the driver or binding.
> >> - Remove pcie peripheral. Again there are changes in the SDK and
> >> I have
> >> no way of testing them.
> >> - Remove prestera node.
> >> - Remove "marvell,ac5-ehci" compatible from USB node as
> >> "marvell,orion-ehci" is sufficient
> >> - Remove watchdog node. There is a buggy driver for the ac5
> >> watchdog in
> >> the SDK but it needs some work so I've dropped the node for now.
> >>
> >> arch/arm64/boot/dts/marvell/Makefile | 1 +
> >> arch/arm64/boot/dts/marvell/ac5-98dx25xx.dtsi | 291 ++++++++++++++++++
> >> .../boot/dts/marvell/ac5-98dx35xx-rd.dts | 101 ++++++
> >> arch/arm64/boot/dts/marvell/ac5-98dx35xx.dtsi | 13 +
> >> 4 files changed, 406 insertions(+)
> >> create mode 100644 arch/arm64/boot/dts/marvell/ac5-98dx25xx.dtsi
> >> create mode 100644 arch/arm64/boot/dts/marvell/ac5-98dx35xx-rd.dts
> >> create mode 100644 arch/arm64/boot/dts/marvell/ac5-98dx35xx.dtsi
> >>
[snip]
> >> +
> >> + uart0: serial@12000 {
> >> + compatible = "snps,dw-apb-uart";
> >> + reg = <0x12000 0x100>;
> >> + reg-shift = <2>;
> >> + interrupts = <GIC_SPI 83 IRQ_TYPE_LEVEL_HIGH>;
> >> + reg-io-width = <1>;
> >> + clocks = <&cnm_clock>;
> >
> > With this change I see some garbled output when the "Serial: AMBA
> > PL011 UART" driver starts.
> >
> > It could be that my bootloader has the same wrong clock value as the
> > earlier iteration of this device tree.
> Fixing u-boot doesn't help but there are also references to 328000000 in
> mv-ddr and ATF so I'll look to see if updating them fixes the issue
> tomorrow.
> >
Interesting, because Marvell suggested to use cnm_clock with 328MHz for AC5, and 325MHz
for AC5X.
[snip]
> >> +
> >> + clocks {
> >> + cnm_clock: core-clock {
> >> + compatible = "fixed-clock";
> >> + #clock-cells = <0>;
> >> + clock-frequency = <325000000>;
> >> + };
> >> +
> >> + spi_clock: spi-clock {
> >> + compatible = "fixed-clock";
> >> + #clock-cells = <0>;
> >> + clock-frequency = <200000000>;
> >> + };
> >> + };
> >> +};
[snip]
Regards,
next prev parent reply other threads:[~2022-06-14 8:33 UTC|newest]
Thread overview: 26+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-06-13 22:53 [PATCH v9 0/3] arm64: mvebu: Support for Marvell 98DX2530 (and variants) Vadym Kochan
2022-06-13 22:53 ` Vadym Kochan
2022-06-13 22:53 ` [PATCH v9 1/3] dt-bindings: marvell: Document the AC5/AC5X compatibles Vadym Kochan
2022-06-13 22:53 ` Vadym Kochan
2022-06-14 4:03 ` Chris Packham
2022-06-14 4:03 ` Chris Packham
2022-06-14 20:50 ` Rob Herring
2022-06-14 20:50 ` Rob Herring
2022-06-14 20:58 ` Krzysztof Kozlowski
2022-06-14 20:58 ` Krzysztof Kozlowski
2022-06-13 22:53 ` [PATCH v9 2/3] arm64: dts: marvell: Add Armada 98DX2530 SoC and RD-AC5X board Vadym Kochan
2022-06-13 22:53 ` Vadym Kochan
2022-06-14 5:11 ` Chris Packham
2022-06-14 5:11 ` Chris Packham
2022-06-14 5:26 ` Chris Packham
2022-06-14 5:26 ` Chris Packham
2022-06-14 8:16 ` Vadym Kochan [this message]
2022-06-14 8:16 ` Vadym Kochan
2022-06-14 21:25 ` Chris Packham
2022-06-14 21:25 ` Chris Packham
2022-06-15 0:03 ` Chris Packham
2022-06-15 0:03 ` Chris Packham
2022-07-05 4:59 ` Chris Packham
2022-07-05 4:59 ` Chris Packham
2022-06-13 22:53 ` [PATCH v9 3/3] arm64: marvell: enable the 98DX2530 pinctrl driver Vadym Kochan
2022-06-13 22:53 ` Vadym Kochan
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=20220614081633.GA14160@plvision.eu \
--to=vadym.kochan@plvision.eu \
--cc=Chris.Packham@alliedtelesis.co.nz \
--cc=catalin.marinas@arm.com \
--cc=devicetree@vger.kernel.org \
--cc=gregory.clement@bootlin.com \
--cc=kostap@marvell.com \
--cc=krzysztof.kozlowski+dt@linaro.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=robert.marko@sartura.hr \
--cc=robh+dt@kernel.org \
--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 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.