Message ID | 20201217075542.12472-4-kostap@marvell.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | DTS updates for Marvell Armada CN913x platforms | expand |
> diff --git a/arch/arm64/boot/dts/marvell/Makefile b/arch/arm64/boot/dts/marvell/Makefile > index 3e5f2e7a040c..d9b924a63d89 100644 > --- a/arch/arm64/boot/dts/marvell/Makefile > +++ b/arch/arm64/boot/dts/marvell/Makefile > @@ -13,6 +13,9 @@ dtb-$(CONFIG_ARCH_MVEBU) += armada-8040-db.dtb > dtb-$(CONFIG_ARCH_MVEBU) += armada-8040-mcbin.dtb > dtb-$(CONFIG_ARCH_MVEBU) += armada-8040-mcbin-singleshot.dtb > dtb-$(CONFIG_ARCH_MVEBU) += armada-8080-db.dtb > -dtb-$(CONFIG_ARCH_MVEBU) += cn9130-db.dtb > -dtb-$(CONFIG_ARCH_MVEBU) += cn9131-db.dtb > -dtb-$(CONFIG_ARCH_MVEBU) += cn9132-db.dtb > +dtb-$(CONFIG_ARCH_MVEBU) += cn9130-db-A.dtb > +dtb-$(CONFIG_ARCH_MVEBU) += cn9130-db-B.dtb > +dtb-$(CONFIG_ARCH_MVEBU) += cn9131-db-A.dtb > +dtb-$(CONFIG_ARCH_MVEBU) += cn9131-db-B.dtb > +dtb-$(CONFIG_ARCH_MVEBU) += cn9132-db-A.dtb > +dtb-$(CONFIG_ARCH_MVEBU) += cn9132-db-B.dtb Are the filenames consider ABI? I wonder if cn9130-db A should continue to be called cn9130-db.dtb? Are bootloaders and image installers going to break because the filename changed? The rest of the changes look fine. Andrew
Hello, Andrew, Thank you for review! > -----Original Message----- > From: Andrew Lunn <andrew@lunn.ch> > Sent: Thursday, December 17, 2020 17:41 > To: Kostya Porotchkin <kostap@marvell.com> > Cc: linux-arm-kernel@lists.infradead.org; tmn505@gmail.com; > jaz@semihalf.com; gregory.clement@bootlin.com; Nadav Haklai > <nadavh@marvell.com>; robh+dt@kernel.org; Stefan Chulski > <stefanc@marvell.com>; mw@semihalf.com; Ben Peled > <bpeled@marvell.com>; sebastian.hesselbarth@gmail.com > Subject: [EXT] Re: [PATCH v2 3/4] arm64: dts: cn913x: add device trees for > topology B boards > > External Email > > ---------------------------------------------------------------------- > > diff --git a/arch/arm64/boot/dts/marvell/Makefile > > b/arch/arm64/boot/dts/marvell/Makefile > > index 3e5f2e7a040c..d9b924a63d89 100644 > > --- a/arch/arm64/boot/dts/marvell/Makefile > > +++ b/arch/arm64/boot/dts/marvell/Makefile > > @@ -13,6 +13,9 @@ dtb-$(CONFIG_ARCH_MVEBU) += armada-8040- > db.dtb > > dtb-$(CONFIG_ARCH_MVEBU) += armada-8040-mcbin.dtb > > dtb-$(CONFIG_ARCH_MVEBU) += armada-8040-mcbin-singleshot.dtb > > dtb-$(CONFIG_ARCH_MVEBU) += armada-8080-db.dtb > > -dtb-$(CONFIG_ARCH_MVEBU) += cn9130-db.dtb > > -dtb-$(CONFIG_ARCH_MVEBU) += cn9131-db.dtb > > -dtb-$(CONFIG_ARCH_MVEBU) += cn9132-db.dtb > > +dtb-$(CONFIG_ARCH_MVEBU) += cn9130-db-A.dtb > > +dtb-$(CONFIG_ARCH_MVEBU) += cn9130-db-B.dtb > > +dtb-$(CONFIG_ARCH_MVEBU) += cn9131-db-A.dtb > > +dtb-$(CONFIG_ARCH_MVEBU) += cn9131-db-B.dtb > > +dtb-$(CONFIG_ARCH_MVEBU) += cn9132-db-A.dtb > > +dtb-$(CONFIG_ARCH_MVEBU) += cn9132-db-B.dtb > > Are the filenames consider ABI? I wonder if cn9130-db A should continue to > be called cn9130-db.dtb? Are bootloaders and image installers going to break > because the filename changed? [KP] I wanted to 1) make the DTS naming match the current SDK code 2) avoid similarity between DTS and DTSI names I do not expect wide usage of DB platforms at this time, I expect the CRB to be more popular due to its size and price. Do you think it may cause a problem? Kosta > > The rest of the changes look fine. > > Andrew
> 1) make the DTS naming match the current SDK code
Where do i found the SDK?
Andrew
> -----Original Message----- > From: Andrew Lunn <andrew@lunn.ch> > Sent: Sunday, December 20, 2020 18:35 > To: Kostya Porotchkin <kostap@marvell.com> > Cc: linux-arm-kernel@lists.infradead.org; tmn505@gmail.com; > jaz@semihalf.com; gregory.clement@bootlin.com; Nadav Haklai > <nadavh@marvell.com>; robh+dt@kernel.org; Stefan Chulski > <stefanc@marvell.com>; mw@semihalf.com; Ben Peled > <bpeled@marvell.com>; sebastian.hesselbarth@gmail.com > Subject: Re: [EXT] Re: [PATCH v2 3/4] arm64: dts: cn913x: add device trees for > topology B boards > > > 1) make the DTS naming match the current SDK code > > Where do i found the SDK? [KP] Unfortunately the last Github published release is 2 years old. The new SDK is available only after registration (and accepting the NDA terms) on marvell.com site. Kosta > > Andrew
On Mon, Dec 21, 2020 at 06:57:46AM +0000, Kostya Porotchkin wrote: > > > > -----Original Message----- > > From: Andrew Lunn <andrew@lunn.ch> > > Sent: Sunday, December 20, 2020 18:35 > > To: Kostya Porotchkin <kostap@marvell.com> > > Cc: linux-arm-kernel@lists.infradead.org; tmn505@gmail.com; > > jaz@semihalf.com; gregory.clement@bootlin.com; Nadav Haklai > > <nadavh@marvell.com>; robh+dt@kernel.org; Stefan Chulski > > <stefanc@marvell.com>; mw@semihalf.com; Ben Peled > > <bpeled@marvell.com>; sebastian.hesselbarth@gmail.com > > Subject: Re: [EXT] Re: [PATCH v2 3/4] arm64: dts: cn913x: add device trees for > > topology B boards > > > > > 1) make the DTS naming match the current SDK code > > > > Where do i found the SDK? > [KP] Unfortunately the last Github published release is 2 years old. > The new SDK is available only after registration (and accepting the NDA terms) on marvell.com site. Which leads to the question, why should the mainline kernel be changed to be compatible with a closed source SDK? What mainline should not do is break compatibility with mainline. Which is why i think the existing DTB file needs to keep its name, and B gets a new file name. Andrew
> -----Original Message----- > From: linux-arm-kernel <linux-arm-kernel-bounces@lists.infradead.org> On > Behalf Of Andrew Lunn > Sent: Monday, December 21, 2020 15:58 > To: Kostya Porotchkin <kostap@marvell.com> > Cc: tmn505@gmail.com; jaz@semihalf.com; gregory.clement@bootlin.com; > Nadav Haklai <nadavh@marvell.com>; robh+dt@kernel.org; Stefan Chulski > <stefanc@marvell.com>; mw@semihalf.com; Ben Peled > <bpeled@marvell.com>; linux-arm-kernel@lists.infradead.org; > sebastian.hesselbarth@gmail.com > Subject: Re: [EXT] Re: [PATCH v2 3/4] arm64: dts: cn913x: add device trees for > topology B boards > > On Mon, Dec 21, 2020 at 06:57:46AM +0000, Kostya Porotchkin wrote: > > > > > > > -----Original Message----- > > > From: Andrew Lunn <andrew@lunn.ch> > > > Sent: Sunday, December 20, 2020 18:35 > > > To: Kostya Porotchkin <kostap@marvell.com> > > > Cc: linux-arm-kernel@lists.infradead.org; tmn505@gmail.com; > > > jaz@semihalf.com; gregory.clement@bootlin.com; Nadav Haklai > > > <nadavh@marvell.com>; robh+dt@kernel.org; Stefan Chulski > > > <stefanc@marvell.com>; mw@semihalf.com; Ben Peled > > > <bpeled@marvell.com>; sebastian.hesselbarth@gmail.com > > > Subject: Re: [EXT] Re: [PATCH v2 3/4] arm64: dts: cn913x: add device > > > trees for topology B boards > > > > > > > 1) make the DTS naming match the current SDK code > > > > > > Where do i found the SDK? > > [KP] Unfortunately the last Github published release is 2 years old. > > The new SDK is available only after registration (and accepting the NDA > terms) on marvell.com site. > > Which leads to the question, why should the mainline kernel be changed to > be compatible with a closed source SDK? > > What mainline should not do is break compatibility with mainline. Which is > why i think the existing DTB file needs to keep its name, and B gets a new file > name. [KP] OK, I am issuing v3 with the required fix Kosta > > Andrew > > _______________________________________________ > linux-arm-kernel mailing list > linux-arm-kernel@lists.infradead.org > https://urldefense.proofpoint.com/v2/url?u=http- > 3A__lists.infradead.org_mailman_listinfo_linux-2Darm- > 2Dkernel&d=DwICAg&c=nKjWec2b6R0mOyPaz7xtfQ&r=- > N9sN4p5NSr0JGQoQ_2UCOgAqajG99W1EbSOww0WU8o&m=BL9A0Gh- > Ms3OYS-W9ZPlfwCDLSqls8VBMlXnWVVyt_A&s=f0fzA_9FLRapsAeWB5- > afYMajDMq_tDuXtvXSVWgr-U&e=
diff --git a/arch/arm64/boot/dts/marvell/Makefile b/arch/arm64/boot/dts/marvell/Makefile index 3e5f2e7a040c..d9b924a63d89 100644 --- a/arch/arm64/boot/dts/marvell/Makefile +++ b/arch/arm64/boot/dts/marvell/Makefile @@ -13,6 +13,9 @@ dtb-$(CONFIG_ARCH_MVEBU) += armada-8040-db.dtb dtb-$(CONFIG_ARCH_MVEBU) += armada-8040-mcbin.dtb dtb-$(CONFIG_ARCH_MVEBU) += armada-8040-mcbin-singleshot.dtb dtb-$(CONFIG_ARCH_MVEBU) += armada-8080-db.dtb -dtb-$(CONFIG_ARCH_MVEBU) += cn9130-db.dtb -dtb-$(CONFIG_ARCH_MVEBU) += cn9131-db.dtb -dtb-$(CONFIG_ARCH_MVEBU) += cn9132-db.dtb +dtb-$(CONFIG_ARCH_MVEBU) += cn9130-db-A.dtb +dtb-$(CONFIG_ARCH_MVEBU) += cn9130-db-B.dtb +dtb-$(CONFIG_ARCH_MVEBU) += cn9131-db-A.dtb +dtb-$(CONFIG_ARCH_MVEBU) += cn9131-db-B.dtb +dtb-$(CONFIG_ARCH_MVEBU) += cn9132-db-A.dtb +dtb-$(CONFIG_ARCH_MVEBU) += cn9132-db-B.dtb diff --git a/arch/arm64/boot/dts/marvell/cn9130-db-A.dts b/arch/arm64/boot/dts/marvell/cn9130-db-A.dts new file mode 100644 index 000000000000..adb3a67a20b1 --- /dev/null +++ b/arch/arm64/boot/dts/marvell/cn9130-db-A.dts @@ -0,0 +1,22 @@ +// SPDX-License-Identifier: (GPL-2.0+ OR MIT) +/* + * Copyright (C) 2019 Marvell International Ltd. + * + * Device tree for the CN9130-DB board. + */ + +#include "cn9131-db.dtsi" + +/ { + model = "Marvell Armada CN9130-DB setup A"; +}; + +/* Setup A has SPI1 flash as a boot device, while setup B uses NAND flash. + * Since CP0 SPI1 and CP0 NAND are sharing some pins, they cannot be activated + * simultaneously. When SPI controller is enabled, NAND should be disabled. + */ + +&cp0_spi1 { + status = "okay"; +}; + diff --git a/arch/arm64/boot/dts/marvell/cn9130-db-B.dts b/arch/arm64/boot/dts/marvell/cn9130-db-B.dts new file mode 100644 index 000000000000..57e41cacd483 --- /dev/null +++ b/arch/arm64/boot/dts/marvell/cn9130-db-B.dts @@ -0,0 +1,22 @@ +// SPDX-License-Identifier: (GPL-2.0+ OR MIT) +/* + * Copyright (C) 2020 Marvell International Ltd. + * + * Device tree for the CN9130-DB board (setup "B"). + */ + +#include "cn9130-db.dtsi" + +/ { + model = "Marvell Armada CN9130-DB setup B"; +}; + +/* Setup B has NAND flash as a boot device, while regular setup uses SPI flash. + * Since CP0 SPI1 and CP0 NAND are sharing some pins, they cannot be activated + * simultaneously. When NAND controller is enabled, SPI1 should be disabled. + */ + +&cp0_nand_controller { + status = "okay"; +}; + diff --git a/arch/arm64/boot/dts/marvell/cn9130-db.dts b/arch/arm64/boot/dts/marvell/cn9130-db.dtsi similarity index 99% rename from arch/arm64/boot/dts/marvell/cn9130-db.dts rename to arch/arm64/boot/dts/marvell/cn9130-db.dtsi index d24294888400..8de3a552b806 100644 --- a/arch/arm64/boot/dts/marvell/cn9130-db.dts +++ b/arch/arm64/boot/dts/marvell/cn9130-db.dtsi @@ -10,8 +10,6 @@ #include <dt-bindings/gpio/gpio.h> / { - model = "Marvell Armada CN9130-DB"; - chosen { stdout-path = "serial0:115200n8"; }; @@ -235,6 +233,7 @@ /* U54 */ &cp0_nand_controller { + status = "disabled"; pinctrl-names = "default"; pinctrl-0 = <&nand_pins &nand_rb>; @@ -306,7 +305,7 @@ /* U55 */ &cp0_spi1 { - status = "okay"; + status = "disabled"; pinctrl-names = "default"; pinctrl-0 = <&cp0_spi0_pins>; reg = <0x700680 0x50>; diff --git a/arch/arm64/boot/dts/marvell/cn9131-db-A.dts b/arch/arm64/boot/dts/marvell/cn9131-db-A.dts new file mode 100644 index 000000000000..a60fdee79bf8 --- /dev/null +++ b/arch/arm64/boot/dts/marvell/cn9131-db-A.dts @@ -0,0 +1,22 @@ +// SPDX-License-Identifier: (GPL-2.0+ OR MIT) +/* + * Copyright (C) 2019 Marvell International Ltd. + * + * Device tree for the CN9131-DB board. + */ + +#include "cn9131-db.dtsi" + +/ { + model = "Marvell Armada CN9131-DB setup A"; +}; + +/* Setup A has SPI1 flash as a boot device, while setup B uses NAND flash. + * Since CP0 SPI1 and CP0 NAND are sharing some pins, they cannot be activated + * simultaneously. When SPI controller is enabled, NAND should be disabled. + */ + +&cp0_spi1 { + status = "okay"; +}; + diff --git a/arch/arm64/boot/dts/marvell/cn9131-db-B.dts b/arch/arm64/boot/dts/marvell/cn9131-db-B.dts new file mode 100644 index 000000000000..94e01192aed1 --- /dev/null +++ b/arch/arm64/boot/dts/marvell/cn9131-db-B.dts @@ -0,0 +1,22 @@ +// SPDX-License-Identifier: (GPL-2.0+ OR MIT) +/* + * Copyright (C) 2020 Marvell International Ltd. + * + * Device tree for the CN9131-DB board (setup "B"). + */ + +#include "cn9131-db-A.dts" + +/ { + model = "Marvell Armada CN9131-DB setup B"; +}; + +/* Setup B has NAND flash as a boot device, while regular setup uses SPI flash. + * Since CP0 SPI1 and CP0 NAND are sharing some pins, they cannot be activated + * simultaneously. When NAND controller is enabled, SPI1 should be disabled. + */ + +&cp0_nand_controller { + status = "okay"; +}; + diff --git a/arch/arm64/boot/dts/marvell/cn9131-db.dts b/arch/arm64/boot/dts/marvell/cn9131-db.dtsi similarity index 97% rename from arch/arm64/boot/dts/marvell/cn9131-db.dts rename to arch/arm64/boot/dts/marvell/cn9131-db.dtsi index 3c975f98b2a3..82471a83ad6d 100644 --- a/arch/arm64/boot/dts/marvell/cn9131-db.dts +++ b/arch/arm64/boot/dts/marvell/cn9131-db.dtsi @@ -1,14 +1,13 @@ // SPDX-License-Identifier: (GPL-2.0+ OR MIT) /* - * Copyright (C) 2019 Marvell International Ltd. + * Copyright (C) 2020 Marvell International Ltd. * * Device tree for the CN9131-DB board. */ -#include "cn9130-db.dts" +#include "cn9130-db.dtsi" / { - model = "Marvell Armada CN9131-DB"; compatible = "marvell,cn9131", "marvell,cn9130", "marvell,armada-ap807-quad", "marvell,armada-ap807"; diff --git a/arch/arm64/boot/dts/marvell/cn9132-db-A.dts b/arch/arm64/boot/dts/marvell/cn9132-db-A.dts new file mode 100644 index 000000000000..1f2e6377afc3 --- /dev/null +++ b/arch/arm64/boot/dts/marvell/cn9132-db-A.dts @@ -0,0 +1,22 @@ +// SPDX-License-Identifier: (GPL-2.0+ OR MIT) +/* + * Copyright (C) 2019 Marvell International Ltd. + * + * Device tree for the CN9132-DB board. + */ + +#include "cn9132-db.dtsi" + +/ { + model = "Marvell Armada CN9132-DB setup A"; +}; + +/* Setup A has SPI1 flash as a boot device, while setup B uses NAND flash. + * Since CP0 SPI1 and CP0 NAND are sharing some pins, they cannot be activated + * simultaneously. When SPI controller is enabled, NAND should be disabled. + */ + +&cp0_spi1 { + status = "okay"; +}; + diff --git a/arch/arm64/boot/dts/marvell/cn9132-db-B.dts b/arch/arm64/boot/dts/marvell/cn9132-db-B.dts new file mode 100644 index 000000000000..7137a6f22d0f --- /dev/null +++ b/arch/arm64/boot/dts/marvell/cn9132-db-B.dts @@ -0,0 +1,22 @@ +// SPDX-License-Identifier: (GPL-2.0+ OR MIT) +/* + * Copyright (C) 2019 Marvell International Ltd. + * + * Device tree for the CN9132-DB board. + */ + +#include "cn9132-db.dtsi" + +/ { + model = "Marvell Armada CN9132-DB setup B"; +}; + +/* Setup B has NAND flash as a boot device, while regular setup uses SPI flash. + * Since CP0 SPI1 and CP0 NAND are sharing some pins, they cannot be activated + * simultaneously. When NAND controller is enabled, SPI1 should be disabled. + */ + +&cp0_nand_controller { + status = "okay"; +}; + diff --git a/arch/arm64/boot/dts/marvell/cn9132-db.dts b/arch/arm64/boot/dts/marvell/cn9132-db.dtsi similarity index 97% rename from arch/arm64/boot/dts/marvell/cn9132-db.dts rename to arch/arm64/boot/dts/marvell/cn9132-db.dtsi index 4ef0df3097ca..0c2d9f57318b 100644 --- a/arch/arm64/boot/dts/marvell/cn9132-db.dts +++ b/arch/arm64/boot/dts/marvell/cn9132-db.dtsi @@ -1,14 +1,13 @@ // SPDX-License-Identifier: (GPL-2.0+ OR MIT) /* - * Copyright (C) 2019 Marvell International Ltd. + * Copyright (C) 2020 Marvell International Ltd. * * Device tree for the CN9132-DB board. */ -#include "cn9131-db.dts" +#include "cn9131-db.dtsi" / { - model = "Marvell Armada CN9132-DB"; compatible = "marvell,cn9132", "marvell,cn9131", "marvell,cn9130", "marvell,armada-ap807-quad", "marvell,armada-ap807";