* [PATCH 0/2] arm64: dts: socfpga: agilex: add Agilex7F SoCDK multi-QSPI board @ 2026-09-14 2:50 genevieve.chan 2026-09-14 2:50 ` [PATCH 1/2] dt-bindings: arm: altera: add Agilex7F SoCDK multi-QSPI compatible genevieve.chan 2026-09-14 2:50 ` [PATCH 2/2] arm64: dts: socfpga: agilex: add Agilex7F SoCDK multi-QSPI board genevieve.chan 0 siblings, 2 replies; 6+ messages in thread From: genevieve.chan @ 2026-09-14 2:50 UTC (permalink / raw) To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Dinh Nguyen, Lothar Rubusch, Ng Tze Yee, Nazim Amirul, Adrian Ng Ho Yin, devicetree, linux-kernel From: Genevieve Chan <genevieve.chan@altera.com> Add device tree support for the Agilex7F SoCDK board variant with multi-QSPI flash. Patch 1 adds the board compatible to the Altera DT bindings. Patch 2 adds the board DTS, based on socfpga_agilex.dtsi, describing four Micron MT25QU02G flashes on chip selects 0-3. Genevieve Chan (2): dt-bindings: arm: altera: add Agilex7F SoCDK multi-QSPI compatible arm64: dts: socfpga: agilex: add Agilex7F SoCDK multi-QSPI board .../devicetree/bindings/arm/altera.yaml | 1 + arch/arm64/boot/dts/intel/Makefile | 1 + .../socfpga_agilex7f_socdk_multiqspi.dts | 214 ++++++++++++++++++ 3 files changed, 216 insertions(+) create mode 100644 arch/arm64/boot/dts/intel/socfpga_agilex7f_socdk_multiqspi.dts -- 2.43.7 ^ permalink raw reply [flat|nested] 6+ messages in thread
* [PATCH 1/2] dt-bindings: arm: altera: add Agilex7F SoCDK multi-QSPI compatible 2026-09-14 2:50 [PATCH 0/2] arm64: dts: socfpga: agilex: add Agilex7F SoCDK multi-QSPI board genevieve.chan @ 2026-09-14 2:50 ` genevieve.chan 2026-09-15 10:49 ` Krzysztof Kozlowski 2026-09-14 2:50 ` [PATCH 2/2] arm64: dts: socfpga: agilex: add Agilex7F SoCDK multi-QSPI board genevieve.chan 1 sibling, 1 reply; 6+ messages in thread From: genevieve.chan @ 2026-09-14 2:50 UTC (permalink / raw) To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Dinh Nguyen, Lothar Rubusch, Ng Tze Yee, Nazim Amirul, Adrian Ng Ho Yin, devicetree, linux-kernel From: Genevieve Chan <genevieve.chan@altera.com> Add "intel,socfpga-agilex7f-socdk-multiqspi" for the Agilex7F SoCDK board variant with multi-QSPI flash support. Signed-off-by: Genevieve Chan <genevieve.chan@altera.com> --- Documentation/devicetree/bindings/arm/altera.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/Documentation/devicetree/bindings/arm/altera.yaml b/Documentation/devicetree/bindings/arm/altera.yaml index 3030cf46fe74..2e7fa5e12530 100644 --- a/Documentation/devicetree/bindings/arm/altera.yaml +++ b/Documentation/devicetree/bindings/arm/altera.yaml @@ -97,6 +97,7 @@ properties: - intel,socfpga-agilex-n6000 - intel,socfpga-agilex-socdk - intel,socfpga-agilex-socdk-emmc + - intel,socfpga-agilex7f-socdk-multiqspi - const: intel,socfpga-agilex - description: Agilex3 boards -- 2.43.7 ^ permalink raw reply related [flat|nested] 6+ messages in thread
* Re: [PATCH 1/2] dt-bindings: arm: altera: add Agilex7F SoCDK multi-QSPI compatible 2026-09-14 2:50 ` [PATCH 1/2] dt-bindings: arm: altera: add Agilex7F SoCDK multi-QSPI compatible genevieve.chan @ 2026-09-15 10:49 ` Krzysztof Kozlowski 2026-09-29 13:42 ` Chan, Genevieve 0 siblings, 1 reply; 6+ messages in thread From: Krzysztof Kozlowski @ 2026-09-15 10:49 UTC (permalink / raw) To: genevieve.chan Cc: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Dinh Nguyen, Lothar Rubusch, Ng Tze Yee, Nazim Amirul, Adrian Ng Ho Yin, devicetree, linux-kernel On Mon, Sep 14, 2026 at 10:50:51AM +0800, genevieve.chan@altera.com wrote: > From: Genevieve Chan <genevieve.chan@altera.com> > > Add "intel,socfpga-agilex7f-socdk-multiqspi" for the Agilex7F SoCDK > board variant with multi-QSPI flash support. Why is agilex7f the same as agilex? Your commit msg is pretty redundant, just copies diff instead of explaining odd things like why do you have exception from rules in writing bindings. Best regards, Krzysztof ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH 1/2] dt-bindings: arm: altera: add Agilex7F SoCDK multi-QSPI compatible 2026-09-15 10:49 ` Krzysztof Kozlowski @ 2026-09-29 13:42 ` Chan, Genevieve 0 siblings, 0 replies; 6+ messages in thread From: Chan, Genevieve @ 2026-09-29 13:42 UTC (permalink / raw) To: Krzysztof Kozlowski Cc: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Dinh Nguyen, Lothar Rubusch, Ng Tze Yee, Nazim Amirul, Adrian Ng Ho Yin, devicetree, linux-kernel On 15/9/2026 6:49 pm, Krzysztof Kozlowski wrote: > On Mon, Sep 14, 2026 at 10:50:51AM +0800, Genevieve Chan wrote: >> From: Genevieve Chan <genevieve.chan@altera.com> >> >> Add "intel,socfpga-agilex7f-socdk-multiqspi" for the Agilex7F SoCDK >> board variant with multi-QSPI flash support. > > Why is agilex7f the same as agilex? Hi Krzysztof, It is the same SoC. The original Agilex family was renamed to "Agilex 7" when the Agilex 5 and Agilex 3 families were introduced, so "Agilex 7 F-Series" is the current product name of the Agilex F-Series device. The silicon and the HPS are unchanged, which is why the board uses socfpga_agilex.dtsi and falls back to "intel,socfpga-agilex", like the existing Agilex SoCDK boards. Using "agilex7f" in the board compatible creates a confusion, as it suggests a different SoC. In v2 I will rename it to "intel,socfpga-agilex-socdk-multiqspi" to follow the existing "intel,socfpga-agilex-socdk" and "intel,socfpga-agilex-socdk-emmc" entries. > Your commit msg is pretty redundant, just copies diff instead of > explaining odd things like why do you have exception from rules in > writing bindings. Understood. With the fixes mentioned earlier, there will no longer be an exception to the naming rules. In v2 the commit message will explain how this board differs from the standard Agilex SoCDK (the multi-QSPI flash population) and why it needs its own compatible, instead of repeating the diff. Thanks, Genevieve ^ permalink raw reply [flat|nested] 6+ messages in thread
* [PATCH 2/2] arm64: dts: socfpga: agilex: add Agilex7F SoCDK multi-QSPI board 2026-09-14 2:50 [PATCH 0/2] arm64: dts: socfpga: agilex: add Agilex7F SoCDK multi-QSPI board genevieve.chan 2026-09-14 2:50 ` [PATCH 1/2] dt-bindings: arm: altera: add Agilex7F SoCDK multi-QSPI compatible genevieve.chan @ 2026-09-14 2:50 ` genevieve.chan 2026-09-14 2:58 ` sashiko-bot 1 sibling, 1 reply; 6+ messages in thread From: genevieve.chan @ 2026-09-14 2:50 UTC (permalink / raw) To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Dinh Nguyen, Lothar Rubusch, Ng Tze Yee, Nazim Amirul, Adrian Ng Ho Yin, devicetree, linux-kernel From: Genevieve Chan <genevieve.chan@altera.com> Add a board device tree for the Agilex7F SoCDK with multi-QSPI support. Describe four Micron MT25QU02G flashes on chip selects 0-3, based on socfpga_agilex.dtsi like other Agilex board variants. Signed-off-by: Genevieve Chan <genevieve.chan@altera.com> --- arch/arm64/boot/dts/intel/Makefile | 1 + .../socfpga_agilex7f_socdk_multiqspi.dts | 214 ++++++++++++++++++ 2 files changed, 215 insertions(+) create mode 100644 arch/arm64/boot/dts/intel/socfpga_agilex7f_socdk_multiqspi.dts diff --git a/arch/arm64/boot/dts/intel/Makefile b/arch/arm64/boot/dts/intel/Makefile index 270c70fdf084..9298ab8b9314 100644 --- a/arch/arm64/boot/dts/intel/Makefile +++ b/arch/arm64/boot/dts/intel/Makefile @@ -10,5 +10,6 @@ dtb-$(CONFIG_ARCH_INTEL_SOCFPGA) += socfpga_agilex_n6000.dtb \ socfpga_agilex5_socdk_nand.dtb \ socfpga_agilex72_socdk.dtb \ socfpga_agilex7m_socdk.dtb \ + socfpga_agilex7f_socdk_multiqspi.dtb \ socfpga_n5x_socdk.dtb dtb-$(CONFIG_ARCH_KEEMBAY) += keembay-evm.dtb diff --git a/arch/arm64/boot/dts/intel/socfpga_agilex7f_socdk_multiqspi.dts b/arch/arm64/boot/dts/intel/socfpga_agilex7f_socdk_multiqspi.dts new file mode 100644 index 000000000000..7d444a84fd67 --- /dev/null +++ b/arch/arm64/boot/dts/intel/socfpga_agilex7f_socdk_multiqspi.dts @@ -0,0 +1,214 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * Copyright (C) 2026, Intel Corporation + */ +#include "socfpga_agilex.dtsi" + +/ { + model = "SoCFPGA Agilex7F SoCDK multi-QSPI"; + compatible = "intel,socfpga-agilex7f-socdk-multiqspi", + "intel,socfpga-agilex"; + + aliases { + serial0 = &uart0; + ethernet0 = &gmac0; + ethernet1 = &gmac1; + ethernet2 = &gmac2; + }; + + chosen { + stdout-path = "serial0:115200n8"; + }; + + leds { + compatible = "gpio-leds"; + led0 { + label = "hps_led0"; + gpios = <&portb 20 GPIO_ACTIVE_HIGH>; + }; + + led1 { + label = "hps_led1"; + gpios = <&portb 19 GPIO_ACTIVE_HIGH>; + }; + + led2 { + label = "hps_led2"; + gpios = <&portb 21 GPIO_ACTIVE_HIGH>; + }; + }; + + memory@80000000 { + device_type = "memory"; + /* We expect the bootloader to fill in the reg */ + reg = <0 0x80000000 0 0>; + }; +}; + +&gpio1 { + status = "okay"; +}; + +&gmac0 { + status = "okay"; + /* PHY delays are configured via skew properties */ + phy-mode = "rgmii"; + phy-handle = <&phy0>; + + max-frame-size = <9000>; + + mdio0 { + #address-cells = <1>; + #size-cells = <0>; + compatible = "snps,dwmac-mdio"; + phy0: ethernet-phy@4 { + reg = <4>; + + txd0-skew-ps = <0>; /* -420ps */ + txd1-skew-ps = <0>; /* -420ps */ + txd2-skew-ps = <0>; /* -420ps */ + txd3-skew-ps = <0>; /* -420ps */ + rxd0-skew-ps = <420>; /* 0ps */ + rxd1-skew-ps = <420>; /* 0ps */ + rxd2-skew-ps = <420>; /* 0ps */ + rxd3-skew-ps = <420>; /* 0ps */ + txen-skew-ps = <0>; /* -420ps */ + txc-skew-ps = <900>; /* 0ps */ + rxdv-skew-ps = <420>; /* 0ps */ + rxc-skew-ps = <1680>; /* 780ps */ + }; + }; +}; + +&mmc { + status = "okay"; + cap-sd-highspeed; + broken-cd; + bus-width = <4>; + clk-phase-sd-hs = <0>, <135>; +}; + +&osc1 { + clock-frequency = <25000000>; +}; + +&uart0 { + status = "okay"; +}; + +&usb0 { + status = "okay"; + disable-over-current; +}; + +&watchdog0 { + status = "okay"; +}; + +&qspi { + status = "okay"; + + flash@0 { + compatible = "micron,mt25qu02g", "jedec,spi-nor"; + reg = <0>; + spi-max-frequency = <25000000>; + + m25p,fast-read; + cdns,read-delay = <2>; + cdns,tshsl-ns = <50>; + cdns,tsd2d-ns = <50>; + cdns,tchsh-ns = <4>; + cdns,tslch-ns = <4>; + spi-tx-bus-width = <4>; + spi-rx-bus-width = <4>; + + partitions { + compatible = "fixed-partitions"; + #address-cells = <1>; + #size-cells = <1>; + + qspi_boot0: partition@0 { + label = "Boot and fpga data"; + reg = <0x0 0x10000000>; + }; + }; + }; + + flash@1 { + compatible = "micron,mt25qu02g", "jedec,spi-nor"; + reg = <1>; + spi-max-frequency = <25000000>; + + m25p,fast-read; + cdns,read-delay = <2>; + cdns,tshsl-ns = <50>; + cdns,tsd2d-ns = <50>; + cdns,tchsh-ns = <4>; + cdns,tslch-ns = <4>; + spi-tx-bus-width = <4>; + spi-rx-bus-width = <4>; + + partitions { + compatible = "fixed-partitions"; + #address-cells = <1>; + #size-cells = <1>; + + qspi_boot1: partition@0 { + label = "Boot and fpga data"; + reg = <0x0 0x10000000>; + }; + }; + }; + + flash@2 { + compatible = "micron,mt25qu02g", "jedec,spi-nor"; + reg = <2>; + spi-max-frequency = <25000000>; + + m25p,fast-read; + cdns,read-delay = <2>; + cdns,tshsl-ns = <50>; + cdns,tsd2d-ns = <50>; + cdns,tchsh-ns = <4>; + cdns,tslch-ns = <4>; + spi-tx-bus-width = <4>; + spi-rx-bus-width = <4>; + + partitions { + compatible = "fixed-partitions"; + #address-cells = <1>; + #size-cells = <1>; + + qspi_boot2: partition@0 { + label = "Boot and fpga data"; + reg = <0x0 0x10000000>; + }; + }; + }; + + flash@3 { + compatible = "micron,mt25qu02g", "jedec,spi-nor"; + reg = <3>; + spi-max-frequency = <25000000>; + + m25p,fast-read; + cdns,read-delay = <2>; + cdns,tshsl-ns = <50>; + cdns,tsd2d-ns = <50>; + cdns,tchsh-ns = <4>; + cdns,tslch-ns = <4>; + spi-tx-bus-width = <4>; + spi-rx-bus-width = <4>; + + partitions { + compatible = "fixed-partitions"; + #address-cells = <1>; + #size-cells = <1>; + + qspi_boot3: partition@0 { + label = "Boot and fpga data"; + reg = <0x0 0x10000000>; + }; + }; + }; +}; -- 2.43.7 ^ permalink raw reply related [flat|nested] 6+ messages in thread
* Re: [PATCH 2/2] arm64: dts: socfpga: agilex: add Agilex7F SoCDK multi-QSPI board 2026-09-14 2:50 ` [PATCH 2/2] arm64: dts: socfpga: agilex: add Agilex7F SoCDK multi-QSPI board genevieve.chan @ 2026-09-14 2:58 ` sashiko-bot 0 siblings, 0 replies; 6+ messages in thread From: sashiko-bot @ 2026-09-14 2:58 UTC (permalink / raw) To: genevieve.chan; +Cc: conor+dt, devicetree, robh Thank you for your contribution! Sashiko AI review found 2 potential issue(s) to consider: - [Medium] Duplicate MTD partition labels across multiple QSPI flashes will cause naming collisions. - [Low] Incorrect alphabetical sorting in the Makefile. -- commit 43a050c9384cc9ad44970b1e567a46311025cd69 Author: Genevieve Chan <genevieve.chan@altera.com> arm64: dts: socfpga: agilex: add Agilex7F SoCDK multi-QSPI board This patch adds a board device tree for the Agilex7F SoCDK with multi-QSPI support. It describes four Micron MT25QU02G flashes on chip selects 0-3 based on the socfpga_agilex.dtsi include. > diff --git a/arch/arm64/boot/dts/intel/Makefile b/arch/arm64/boot/dts/intel/Makefile > index 270c70fdf084b..9298ab8b93142 100644 > --- a/arch/arm64/boot/dts/intel/Makefile > +++ b/arch/arm64/boot/dts/intel/Makefile > @@ -10,5 +10,6 @@ dtb-$(CONFIG_ARCH_INTEL_SOCFPGA) += socfpga_agilex_n6000.dtb \ > socfpga_agilex5_socdk_nand.dtb \ > socfpga_agilex72_socdk.dtb \ > socfpga_agilex7m_socdk.dtb \ > + socfpga_agilex7f_socdk_multiqspi.dtb \ [Severity: Low] Does this Makefile addition break alphabetical sorting? The new entry socfpga_agilex7f_socdk_multiqspi.dtb under dtb-$(CONFIG_ARCH_INTEL_SOCFPGA) is inserted after socfpga_agilex7m_socdk.dtb, rather than before it. > socfpga_n5x_socdk.dtb > dtb-$(CONFIG_ARCH_KEEMBAY) += keembay-evm.dtb > diff --git a/arch/arm64/boot/dts/intel/socfpga_agilex7f_socdk_multiqspi.dts b/arch/arm64/boot/dts/intel/socfpga_agilex7f_socdk_multiqspi.dts > new file mode 100644 > index 0000000000000..7d444a84fd67a > --- /dev/null > +++ b/arch/arm64/boot/dts/intel/socfpga_agilex7f_socdk_multiqspi.dts [ ... ] > + flash@0 { > + compatible = "micron,mt25qu02g", "jedec,spi-nor"; > + reg = <0>; [ ... ] > + partitions { > + compatible = "fixed-partitions"; > + #address-cells = <1>; > + #size-cells = <1>; > + > + qspi_boot0: partition@0 { > + label = "Boot and fpga data"; > + reg = <0x0 0x10000000>; > + }; > + }; > + }; > + > + flash@1 { > + compatible = "micron,mt25qu02g", "jedec,spi-nor"; > + reg = <1>; [ ... ] > + partitions { > + compatible = "fixed-partitions"; > + #address-cells = <1>; > + #size-cells = <1>; > + > + qspi_boot1: partition@0 { > + label = "Boot and fpga data"; [Severity: Medium] Will these duplicate partition labels cause naming collisions in the MTD subsystem? Since the device tree parses these four partitions (qspi_boot0 through qspi_boot3) and registers them with the exact same label ("Boot and fpga data") for flash@0 through flash@3, they will create duplicate MTD partition names in the kernel (e.g., in /proc/mtd). Userspace tools like mtd-utils that rely on finding MTD partitions by name might be unable to distinguish between the physical chips. Could this lead to data corruption if the wrong flash is updated? > + reg = <0x0 0x10000000>; > + }; > + }; > + }; [ ... ] -- Sashiko AI review · https://sashiko.dev/#/patchset/20260914025052.14354-1-genevieve.chan@altera.com?part=2 ^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2026-09-29 13:42 UTC | newest] Thread overview: 6+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2026-09-14 2:50 [PATCH 0/2] arm64: dts: socfpga: agilex: add Agilex7F SoCDK multi-QSPI board genevieve.chan 2026-09-14 2:50 ` [PATCH 1/2] dt-bindings: arm: altera: add Agilex7F SoCDK multi-QSPI compatible genevieve.chan 2026-09-15 10:49 ` Krzysztof Kozlowski 2026-09-29 13:42 ` Chan, Genevieve 2026-09-14 2:50 ` [PATCH 2/2] arm64: dts: socfpga: agilex: add Agilex7F SoCDK multi-QSPI board genevieve.chan 2026-09-14 2:58 ` sashiko-bot
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox