* [PATCH] arm64: dts: ls1046a: Add QSPI node for ls1046afrwy
2019-09-10 12:20 [PATCH] arm64: dts: ls1028a: Add FlexSPI support for NXP LS1028 Ashish Kumar
@ 2019-09-10 12:20 ` Ashish Kumar
2019-09-10 12:20 ` [PATCH] arm64: dts: ls1046a: Append missing properties of QSPI node on ls1046ardb Ashish Kumar
` (3 subsequent siblings)
4 siblings, 0 replies; 7+ messages in thread
From: Ashish Kumar @ 2019-09-10 12:20 UTC (permalink / raw)
To: devicetree, robh, mark.rutland, shawnguo
Cc: linux-arm-kernel, linux-kernel, Ashish Kumar
This board has a single 64MB mt25qu512a flash.
QUAD I/O read and single I/O write is tested.
Signed-off-by: Ashish Kumar <Ashish.Kumar@nxp.com>
---
arch/arm64/boot/dts/freescale/fsl-ls1046a-frwy.dts | 15 +++++++++++++++
1 file changed, 15 insertions(+)
diff --git a/arch/arm64/boot/dts/freescale/fsl-ls1046a-frwy.dts b/arch/arm64/boot/dts/freescale/fsl-ls1046a-frwy.dts
index 3595be0..c95d1ca 100644
--- a/arch/arm64/boot/dts/freescale/fsl-ls1046a-frwy.dts
+++ b/arch/arm64/boot/dts/freescale/fsl-ls1046a-frwy.dts
@@ -112,6 +112,21 @@
};
+&qspi {
+ status = "okay";
+
+ qflash0: mt25qu512a@0 {
+ compatible = "micron,mt25qu512a", "jedec,spi-nor";
+ #address-cells = <1>;
+ #size-cells = <1>;
+ m25p,fast-read;
+ spi-max-frequency = <50000000>;
+ spi-rx-bus-width = <4>;
+ spi-tx-bus-width = <4>;
+ reg = <0>;
+ };
+};
+
#include "fsl-ls1046-post.dtsi"
&fman0 {
--
2.7.4
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [PATCH] arm64: dts: ls1046a: Append missing properties of QSPI node on ls1046ardb
2019-09-10 12:20 [PATCH] arm64: dts: ls1028a: Add FlexSPI support for NXP LS1028 Ashish Kumar
2019-09-10 12:20 ` [PATCH] arm64: dts: ls1046a: Add QSPI node for ls1046afrwy Ashish Kumar
@ 2019-09-10 12:20 ` Ashish Kumar
2019-09-10 12:20 ` [PATCH] arm64: dts: ls1088a: Add QSPI support for NXP LS1088 Ashish Kumar
` (2 subsequent siblings)
4 siblings, 0 replies; 7+ messages in thread
From: Ashish Kumar @ 2019-09-10 12:20 UTC (permalink / raw)
To: devicetree, robh, mark.rutland, shawnguo
Cc: linux-arm-kernel, linux-kernel, Ashish Kumar
Update the max-freqquncy to 50MHz, also adding "fast,read,m25p80" property.
Align the QSPI node with other similar boards like(ls1088ardb,
ls1046afrwy) as per bindings.
Also, correct compatible node to fix this warning:
m25p80 spi0.0: found s25fl512s, expected m25p80
m25p80 spi0.1: found s25fl512s, expected m25p80
Signed-off-by: Ashish Kumar <Ashish.Kumar@nxp.com>
---
arch/arm64/boot/dts/freescale/fsl-ls1046a-rdb.dts | 14 ++++++++------
1 file changed, 8 insertions(+), 6 deletions(-)
diff --git a/arch/arm64/boot/dts/freescale/fsl-ls1046a-rdb.dts b/arch/arm64/boot/dts/freescale/fsl-ls1046a-rdb.dts
index 6a6514d..9c4113a 100644
--- a/arch/arm64/boot/dts/freescale/fsl-ls1046a-rdb.dts
+++ b/arch/arm64/boot/dts/freescale/fsl-ls1046a-rdb.dts
@@ -101,21 +101,23 @@
&qspi {
status = "okay";
- qflash0: flash@0 {
- compatible = "spansion,m25p80";
+ qflash0: s25fs512a@0 {
+ compatible = "spansion,s25fs512a", "jedec,spi-nor";
#address-cells = <1>;
#size-cells = <1>;
- spi-max-frequency = <20000000>;
+ m25p,fast-read;
+ spi-max-frequency = <50000000>;
spi-rx-bus-width = <4>;
spi-tx-bus-width = <4>;
reg = <0>;
};
- qflash1: flash@1 {
- compatible = "spansion,m25p80";
+ qflash1: s25fs152a@1 {
+ compatible = "spansion,s25fs512a", "jedec,spi-nor";
#address-cells = <1>;
#size-cells = <1>;
- spi-max-frequency = <20000000>;
+ m25p,fast-read;
+ spi-max-frequency = <50000000>;
spi-rx-bus-width = <4>;
spi-tx-bus-width = <4>;
reg = <1>;
--
2.7.4
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [PATCH] arm64: dts: ls1088a: Add QSPI support for NXP LS1088
2019-09-10 12:20 [PATCH] arm64: dts: ls1028a: Add FlexSPI support for NXP LS1028 Ashish Kumar
2019-09-10 12:20 ` [PATCH] arm64: dts: ls1046a: Add QSPI node for ls1046afrwy Ashish Kumar
2019-09-10 12:20 ` [PATCH] arm64: dts: ls1046a: Append missing properties of QSPI node on ls1046ardb Ashish Kumar
@ 2019-09-10 12:20 ` Ashish Kumar
2019-09-10 12:20 ` [PATCH] arm64: dts: ls208x: Remove non-compatible driver device from qspi node Ashish Kumar
2019-10-06 3:20 ` [PATCH] arm64: dts: ls1028a: Add FlexSPI support for NXP LS1028 Shawn Guo
4 siblings, 0 replies; 7+ messages in thread
From: Ashish Kumar @ 2019-09-10 12:20 UTC (permalink / raw)
To: devicetree, robh, mark.rutland, shawnguo
Cc: linux-arm-kernel, linux-kernel, Ashish Kumar, Kuldeep Singh
Add QSPI node in dtsi(ls1088si), and dts(ls1088ardb, ls1088aqds) boards.
Both ls1088ardb and ls1088aqds has two 64MB flash from SPANSION(s25fs512s).
QUAD I/O is tested in case of read and single I/O is tested in case of
write.
Signed-off-by: Kuldeep Singh <kuldeep.singh@nxp.com>
Signed-off-by: Ashish Kumar <Ashish.Kumar@nxp.com>
---
arch/arm64/boot/dts/freescale/fsl-ls1088a-qds.dts | 26 +++++++++++++++++++++++
arch/arm64/boot/dts/freescale/fsl-ls1088a-rdb.dts | 26 +++++++++++++++++++++++
arch/arm64/boot/dts/freescale/fsl-ls1088a.dtsi | 13 ++++++++++++
3 files changed, 65 insertions(+)
diff --git a/arch/arm64/boot/dts/freescale/fsl-ls1088a-qds.dts b/arch/arm64/boot/dts/freescale/fsl-ls1088a-qds.dts
index 120e62d..3347e6a 100644
--- a/arch/arm64/boot/dts/freescale/fsl-ls1088a-qds.dts
+++ b/arch/arm64/boot/dts/freescale/fsl-ls1088a-qds.dts
@@ -143,6 +143,32 @@
status = "okay";
};
+&qspi {
+ status = "okay";
+
+ qflash0: s25fs512s@0 {
+ compatible = "spansion,s25fs512a", "jedec,spi-nor";
+ #address-cells = <1>;
+ #size-cells = <1>;
+ m25p,fast-read;
+ spi-max-frequency = <50000000>;
+ spi-rx-bus-width = <4>;
+ spi-tx-bus-width = <4>;
+ reg = <0>;
+ };
+
+ qflash1: s25fs512s@1 {
+ compatible = "spansion,s25fs512a", "jedec,spi-nor";
+ #address-cells = <1>;
+ #size-cells = <1>;
+ m25p,fast-read;
+ spi-max-frequency = <50000000>;
+ spi-rx-bus-width = <4>;
+ spi-tx-bus-width = <4>;
+ reg = <1>;
+ };
+};
+
&sata {
status = "okay";
};
diff --git a/arch/arm64/boot/dts/freescale/fsl-ls1088a-rdb.dts b/arch/arm64/boot/dts/freescale/fsl-ls1088a-rdb.dts
index 8e925df..09d3203 100644
--- a/arch/arm64/boot/dts/freescale/fsl-ls1088a-rdb.dts
+++ b/arch/arm64/boot/dts/freescale/fsl-ls1088a-rdb.dts
@@ -86,6 +86,32 @@
status = "okay";
};
+&qspi {
+ status = "okay";
+
+ qflash0: s25fs512s@0 {
+ compatible = "spansion,s25fs512a", "jedec,spi-nor";
+ #address-cells = <1>;
+ #size-cells = <1>;
+ m25p,fast-read;
+ spi-max-frequency = <50000000>;
+ spi-rx-bus-width = <4>;
+ spi-tx-bus-width = <4>;
+ reg = <0>;
+ };
+
+ qflash1: s25fs512s@1 {
+ compatible = "spansion,s25fs512a", "jedec,spi-nor";
+ #address-cells = <1>;
+ #size-cells = <1>;
+ m25p,fast-read;
+ spi-max-frequency = <50000000>;
+ spi-rx-bus-width = <4>;
+ spi-tx-bus-width = <4>;
+ reg = <1>;
+ };
+};
+
&sata {
status = "okay";
};
diff --git a/arch/arm64/boot/dts/freescale/fsl-ls1088a.dtsi b/arch/arm64/boot/dts/freescale/fsl-ls1088a.dtsi
index d1469b0..5a81a7e 100644
--- a/arch/arm64/boot/dts/freescale/fsl-ls1088a.dtsi
+++ b/arch/arm64/boot/dts/freescale/fsl-ls1088a.dtsi
@@ -408,6 +408,19 @@
status = "disabled";
};
+ qspi: spi@20c0000 {
+ compatible = "fsl,ls2080a-qspi", "fsl,ls1088a-qspi";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ reg = <0x0 0x20c0000 0x0 0x10000>,
+ <0x0 0x20000000 0x0 0x10000000>;
+ reg-names = "QuadSPI", "QuadSPI-memory";
+ interrupts = <GIC_SPI 25 IRQ_TYPE_LEVEL_HIGH>;
+ clock-names = "qspi_en", "qspi";
+ clocks = <&clockgen 4 3>, <&clockgen 4 3>;
+ status = "disabled";
+ };
+
sata: sata@3200000 {
compatible = "fsl,ls1088a-ahci";
reg = <0x0 0x3200000 0x0 0x10000>,
--
2.7.4
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [PATCH] arm64: dts: ls208x: Remove non-compatible driver device from qspi node
2019-09-10 12:20 [PATCH] arm64: dts: ls1028a: Add FlexSPI support for NXP LS1028 Ashish Kumar
` (2 preceding siblings ...)
2019-09-10 12:20 ` [PATCH] arm64: dts: ls1088a: Add QSPI support for NXP LS1088 Ashish Kumar
@ 2019-09-10 12:20 ` Ashish Kumar
2019-10-06 3:20 ` [PATCH] arm64: dts: ls1028a: Add FlexSPI support for NXP LS1028 Shawn Guo
4 siblings, 0 replies; 7+ messages in thread
From: Ashish Kumar @ 2019-09-10 12:20 UTC (permalink / raw)
To: devicetree, robh, mark.rutland, shawnguo
Cc: linux-arm-kernel, linux-kernel, Ashish Kumar, Kuldeep Singh
Since device properties are different, so remove fsl, ls1021a-qspi.
ls1021a-qspi is to be used only for Big-endian verion of QSPI controller
Signed-off-by: Kuldeep Singh <kuldeep.singh@nxp.com>
Signed-off-by: Ashish Kumar <Ashish.Kumar@nxp.com>
---
arch/arm64/boot/dts/freescale/fsl-ls208xa.dtsi | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/arm64/boot/dts/freescale/fsl-ls208xa.dtsi b/arch/arm64/boot/dts/freescale/fsl-ls208xa.dtsi
index 64101c9..8e42ac9 100644
--- a/arch/arm64/boot/dts/freescale/fsl-ls208xa.dtsi
+++ b/arch/arm64/boot/dts/freescale/fsl-ls208xa.dtsi
@@ -619,7 +619,7 @@
qspi: spi@20c0000 {
status = "disabled";
- compatible = "fsl,ls2080a-qspi", "fsl,ls1021a-qspi";
+ compatible = "fsl,ls2080a-qspi";
#address-cells = <1>;
#size-cells = <0>;
reg = <0x0 0x20c0000 0x0 0x10000>,
--
2.7.4
^ permalink raw reply related [flat|nested] 7+ messages in thread
* Re: [PATCH] arm64: dts: ls1028a: Add FlexSPI support for NXP LS1028
2019-09-10 12:20 [PATCH] arm64: dts: ls1028a: Add FlexSPI support for NXP LS1028 Ashish Kumar
` (3 preceding siblings ...)
2019-09-10 12:20 ` [PATCH] arm64: dts: ls208x: Remove non-compatible driver device from qspi node Ashish Kumar
@ 2019-10-06 3:20 ` Shawn Guo
2019-10-08 8:03 ` Xiaowei Bao
4 siblings, 1 reply; 7+ messages in thread
From: Shawn Guo @ 2019-10-06 3:20 UTC (permalink / raw)
To: Ashish Kumar
Cc: devicetree, robh, mark.rutland, linux-arm-kernel, linux-kernel,
Xiaowei Bao
On Tue, Sep 10, 2019 at 05:50:51PM +0530, Ashish Kumar wrote:
> Add fspi node property for LS1028A SoC for FlexSPI driver.
> Property added for FlexSPI controller and for the connected
> slave device for the LS1028ARDB and LS1028AQDS target.
> RDB and QDS is having one SPI-NOR flash device, mt35xu02g
> connected at CS0.
> This flash device "mt35xu02g" is tested for octal read
>
> Signed-off-by: Xiaowei Bao <xiaowei.bao@nxp.com>
> Signed-off-by: Ashish Kumar <Ashish.Kumar@nxp.com>
When you send a patch series, the patches should be numbered properly
and preferably with a cover-letter.
> ---
> arch/arm64/boot/dts/freescale/fsl-ls1028a-qds.dts | 15 +++++++++++++++
> arch/arm64/boot/dts/freescale/fsl-ls1028a-rdb.dts | 15 +++++++++++++++
> arch/arm64/boot/dts/freescale/fsl-ls1028a.dtsi | 13 +++++++++++++
> 3 files changed, 43 insertions(+)
>
> diff --git a/arch/arm64/boot/dts/freescale/fsl-ls1028a-qds.dts b/arch/arm64/boot/dts/freescale/fsl-ls1028a-qds.dts
> index 5e14e5a..5d46993 100644
> --- a/arch/arm64/boot/dts/freescale/fsl-ls1028a-qds.dts
> +++ b/arch/arm64/boot/dts/freescale/fsl-ls1028a-qds.dts
> @@ -103,6 +103,21 @@
> status = "okay";
> };
>
> +&fspi {
> + status = "okay";
Have a newline between properties and child node..
> + flash0: mt35xu02g@0 {
Use a generic node name and specific label name.
> + compatible = "micron,mt35xu02g", "jedec,spi-nor";
"micron,mt35xu02g" is undocumented.
Shawn
> + #address-cells = <1>;
> + #size-cells = <1>;
> + m25p,fast-read;
> + spi-max-frequency = <50000000>;
> + reg = <0>;
> + /* The following setting enables 1-1-8 (CMD-ADDR-DATA) mode */
> + spi-rx-bus-width = <8>; /* 8 SPI Rx lines */
> + spi-tx-bus-width = <1>; /* 1 SPI Tx line */
> + };
> +};
> +
> &i2c0 {
> status = "okay";
>
> diff --git a/arch/arm64/boot/dts/freescale/fsl-ls1028a-rdb.dts b/arch/arm64/boot/dts/freescale/fsl-ls1028a-rdb.dts
> index 1a69221..f33cb2e 100644
> --- a/arch/arm64/boot/dts/freescale/fsl-ls1028a-rdb.dts
> +++ b/arch/arm64/boot/dts/freescale/fsl-ls1028a-rdb.dts
> @@ -96,6 +96,21 @@
> status = "okay";
> };
>
> +&fspi {
> + status = "okay";
> + flash0: mt35xu02g@0 {
> + compatible = "micron,mt35xu02g", "jedec,spi-nor";
> + #address-cells = <1>;
> + #size-cells = <1>;
> + m25p,fast-read;
> + spi-max-frequency = <50000000>;
> + reg = <0>;
> + /* The following setting enables 1-1-8 (CMD-ADDR-DATA) mode */
> + spi-rx-bus-width = <8>; /* 8 SPI Rx lines */
> + spi-tx-bus-width = <1>; /* 1 SPI Tx line */
> + };
> +};
> +
> &i2c0 {
> status = "okay";
>
> diff --git a/arch/arm64/boot/dts/freescale/fsl-ls1028a.dtsi b/arch/arm64/boot/dts/freescale/fsl-ls1028a.dtsi
> index b139b29..4aa1825 100644
> --- a/arch/arm64/boot/dts/freescale/fsl-ls1028a.dtsi
> +++ b/arch/arm64/boot/dts/freescale/fsl-ls1028a.dtsi
> @@ -174,6 +174,19 @@
> clocks = <&sysclk>;
> };
>
> + fspi: spi@20c0000 {
> + compatible = "nxp,lx2160a-fspi";
> + #address-cells = <1>;
> + #size-cells = <0>;
> + reg = <0x0 0x20c0000 0x0 0x10000>,
> + <0x0 0x20000000 0x0 0x10000000>;
> + reg-names = "fspi_base", "fspi_mmap";
> + interrupts = <GIC_SPI 25 IRQ_TYPE_LEVEL_HIGH>;
> + clocks = <&clockgen 4 3>, <&clockgen 4 3>;
> + clock-names = "fspi_en", "fspi";
> + status = "disabled";
> + };
> +
> i2c0: i2c@2000000 {
> compatible = "fsl,vf610-i2c";
> #address-cells = <1>;
> --
> 2.7.4
>
^ permalink raw reply [flat|nested] 7+ messages in thread
* RE: [PATCH] arm64: dts: ls1028a: Add FlexSPI support for NXP LS1028
2019-10-06 3:20 ` [PATCH] arm64: dts: ls1028a: Add FlexSPI support for NXP LS1028 Shawn Guo
@ 2019-10-08 8:03 ` Xiaowei Bao
0 siblings, 0 replies; 7+ messages in thread
From: Xiaowei Bao @ 2019-10-08 8:03 UTC (permalink / raw)
To: Shawn Guo, Ashish Kumar
Cc: devicetree, robh, mark.rutland, linux-arm-kernel, linux-kernel
> -----Original Message-----
> From: Shawn Guo <shawnguo@kernel.org>
> Sent: 2019年10月6日 11:20
> To: Ashish Kumar <ashish.kumar@nxp.com>
> Cc: devicetree@vger.kernel.org; robh@kernel.org; mark.rutland@arm.com;
> linux-arm-kernel@lists.infradead.org; linux-kernel@vger.kernel.org; Xiaowei
> Bao <xiaowei.bao@nxp.com>
> Subject: Re: [PATCH] arm64: dts: ls1028a: Add FlexSPI support for NXP LS1028
>
> On Tue, Sep 10, 2019 at 05:50:51PM +0530, Ashish Kumar wrote:
> > Add fspi node property for LS1028A SoC for FlexSPI driver.
> > Property added for FlexSPI controller and for the connected slave
> > device for the LS1028ARDB and LS1028AQDS target.
> > RDB and QDS is having one SPI-NOR flash device, mt35xu02g connected at
> > CS0.
> > This flash device "mt35xu02g" is tested for octal read
> >
> > Signed-off-by: Xiaowei Bao <xiaowei.bao@nxp.com>
> > Signed-off-by: Ashish Kumar <Ashish.Kumar@nxp.com>
>
> When you send a patch series, the patches should be numbered properly and
> preferably with a cover-letter.
Got it, thanks.
Thanks
Xiaowei
>
> > ---
> > arch/arm64/boot/dts/freescale/fsl-ls1028a-qds.dts | 15
> > +++++++++++++++ arch/arm64/boot/dts/freescale/fsl-ls1028a-rdb.dts |
> 15 +++++++++++++++
> > arch/arm64/boot/dts/freescale/fsl-ls1028a.dtsi | 13 +++++++++++++
> > 3 files changed, 43 insertions(+)
> >
> > diff --git a/arch/arm64/boot/dts/freescale/fsl-ls1028a-qds.dts
> > b/arch/arm64/boot/dts/freescale/fsl-ls1028a-qds.dts
> > index 5e14e5a..5d46993 100644
> > --- a/arch/arm64/boot/dts/freescale/fsl-ls1028a-qds.dts
> > +++ b/arch/arm64/boot/dts/freescale/fsl-ls1028a-qds.dts
> > @@ -103,6 +103,21 @@
> > status = "okay";
> > };
> >
> > +&fspi {
> > + status = "okay";
>
> Have a newline between properties and child node..
>
> > + flash0: mt35xu02g@0 {
>
> Use a generic node name and specific label name.
>
> > + compatible = "micron,mt35xu02g", "jedec,spi-nor";
>
> "micron,mt35xu02g" is undocumented.
>
> Shawn
>
> > + #address-cells = <1>;
> > + #size-cells = <1>;
> > + m25p,fast-read;
> > + spi-max-frequency = <50000000>;
> > + reg = <0>;
> > + /* The following setting enables 1-1-8 (CMD-ADDR-DATA) mode */
> > + spi-rx-bus-width = <8>; /* 8 SPI Rx lines */
> > + spi-tx-bus-width = <1>; /* 1 SPI Tx line */
> > + };
> > +};
> > +
> > &i2c0 {
> > status = "okay";
> >
> > diff --git a/arch/arm64/boot/dts/freescale/fsl-ls1028a-rdb.dts
> > b/arch/arm64/boot/dts/freescale/fsl-ls1028a-rdb.dts
> > index 1a69221..f33cb2e 100644
> > --- a/arch/arm64/boot/dts/freescale/fsl-ls1028a-rdb.dts
> > +++ b/arch/arm64/boot/dts/freescale/fsl-ls1028a-rdb.dts
> > @@ -96,6 +96,21 @@
> > status = "okay";
> > };
> >
> > +&fspi {
> > + status = "okay";
> > + flash0: mt35xu02g@0 {
> > + compatible = "micron,mt35xu02g", "jedec,spi-nor";
> > + #address-cells = <1>;
> > + #size-cells = <1>;
> > + m25p,fast-read;
> > + spi-max-frequency = <50000000>;
> > + reg = <0>;
> > + /* The following setting enables 1-1-8 (CMD-ADDR-DATA) mode */
> > + spi-rx-bus-width = <8>; /* 8 SPI Rx lines */
> > + spi-tx-bus-width = <1>; /* 1 SPI Tx line */
> > + };
> > +};
> > +
> > &i2c0 {
> > status = "okay";
> >
> > diff --git a/arch/arm64/boot/dts/freescale/fsl-ls1028a.dtsi
> > b/arch/arm64/boot/dts/freescale/fsl-ls1028a.dtsi
> > index b139b29..4aa1825 100644
> > --- a/arch/arm64/boot/dts/freescale/fsl-ls1028a.dtsi
> > +++ b/arch/arm64/boot/dts/freescale/fsl-ls1028a.dtsi
> > @@ -174,6 +174,19 @@
> > clocks = <&sysclk>;
> > };
> >
> > + fspi: spi@20c0000 {
> > + compatible = "nxp,lx2160a-fspi";
> > + #address-cells = <1>;
> > + #size-cells = <0>;
> > + reg = <0x0 0x20c0000 0x0 0x10000>,
> > + <0x0 0x20000000 0x0 0x10000000>;
> > + reg-names = "fspi_base", "fspi_mmap";
> > + interrupts = <GIC_SPI 25 IRQ_TYPE_LEVEL_HIGH>;
> > + clocks = <&clockgen 4 3>, <&clockgen 4 3>;
> > + clock-names = "fspi_en", "fspi";
> > + status = "disabled";
> > + };
> > +
> > i2c0: i2c@2000000 {
> > compatible = "fsl,vf610-i2c";
> > #address-cells = <1>;
> > --
> > 2.7.4
> >
^ permalink raw reply [flat|nested] 7+ messages in thread