* [PATCH 0/2] Add eMMC support for Stratix 10 SoCDK @ 2026-01-20 13:54 tzeyee.ng 2026-01-20 13:54 ` [PATCH 1/2] dt-bindings: altera: document Stratix 10 eMMC compatible tzeyee.ng 2026-01-20 13:54 ` [PATCH 2/2] arm64: dts: socfpga: stratix10: Add emmc support tzeyee.ng 0 siblings, 2 replies; 7+ messages in thread From: tzeyee.ng @ 2026-01-20 13:54 UTC (permalink / raw) To: Dinh Nguyen, Rob Herring, Krzysztof Kozlowski, Conor Dooley, devicetree, linux-kernel From: Ng Tze Yee <tzeyee.ng@altera.com> The first patch adds the device tree binding documentation for the new board compatible string. The second patch introduces the device tree file for the eMMC configuration along with necessary build system changes. Ng Tze Yee (2): dt-bindings: altera: document Stratix 10 eMMC compatible arm64: dts: socfpga: stratix10: Add emmc support .../devicetree/bindings/arm/altera.yaml | 1 + arch/arm64/boot/dts/altera/Makefile | 1 + .../altera/socfpga_stratix10_socdk_emmc.dts | 155 ++++++++++++++++++ 3 files changed, 157 insertions(+) create mode 100644 arch/arm64/boot/dts/altera/socfpga_stratix10_socdk_emmc.dts -- 2.25.1 ^ permalink raw reply [flat|nested] 7+ messages in thread
* [PATCH 1/2] dt-bindings: altera: document Stratix 10 eMMC compatible 2026-01-20 13:54 [PATCH 0/2] Add eMMC support for Stratix 10 SoCDK tzeyee.ng @ 2026-01-20 13:54 ` tzeyee.ng 2026-01-20 19:46 ` Conor Dooley 2026-01-20 13:54 ` [PATCH 2/2] arm64: dts: socfpga: stratix10: Add emmc support tzeyee.ng 1 sibling, 1 reply; 7+ messages in thread From: tzeyee.ng @ 2026-01-20 13:54 UTC (permalink / raw) To: Dinh Nguyen, Rob Herring, Krzysztof Kozlowski, Conor Dooley, devicetree, linux-kernel From: Ng Tze Yee <tzeyee.ng@altera.com> Stratix 10 devkit support a separate eMMC daughter card. Document Stratix 10 eMMC daughter board compatible. Signed-off-by: Ng Tze Yee <tzeyee.ng@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 db61537b7115..2a8bc85e9be9 100644 --- a/Documentation/devicetree/bindings/arm/altera.yaml +++ b/Documentation/devicetree/bindings/arm/altera.yaml @@ -78,6 +78,7 @@ properties: items: - enum: - altr,socfpga-stratix10-socdk + - altr,socfpga-stratix10-socdk-emmc - altr,socfpga-stratix10-swvp - const: altr,socfpga-stratix10 -- 2.25.1 ^ permalink raw reply related [flat|nested] 7+ messages in thread
* Re: [PATCH 1/2] dt-bindings: altera: document Stratix 10 eMMC compatible 2026-01-20 13:54 ` [PATCH 1/2] dt-bindings: altera: document Stratix 10 eMMC compatible tzeyee.ng @ 2026-01-20 19:46 ` Conor Dooley 2026-01-21 8:39 ` Ng, Tze Yee 0 siblings, 1 reply; 7+ messages in thread From: Conor Dooley @ 2026-01-20 19:46 UTC (permalink / raw) To: tzeyee.ng Cc: Dinh Nguyen, Rob Herring, Krzysztof Kozlowski, Conor Dooley, devicetree, linux-kernel [-- Attachment #1: Type: text/plain, Size: 1122 bytes --] On Tue, Jan 20, 2026 at 05:54:45AM -0800, tzeyee.ng@altera.com wrote: > From: Ng Tze Yee <tzeyee.ng@altera.com> > > Stratix 10 devkit support a separate eMMC daughter card. Document > Stratix 10 eMMC daughter board compatible. This makes it seem like stratix10-socdk should be a fallback for this emmc device, if the new compatible only describes the combination device. > > Signed-off-by: Ng Tze Yee <tzeyee.ng@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 db61537b7115..2a8bc85e9be9 100644 > --- a/Documentation/devicetree/bindings/arm/altera.yaml > +++ b/Documentation/devicetree/bindings/arm/altera.yaml > @@ -78,6 +78,7 @@ properties: > items: > - enum: > - altr,socfpga-stratix10-socdk > + - altr,socfpga-stratix10-socdk-emmc > - altr,socfpga-stratix10-swvp > - const: altr,socfpga-stratix10 > > -- > 2.25.1 > [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 228 bytes --] ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH 1/2] dt-bindings: altera: document Stratix 10 eMMC compatible 2026-01-20 19:46 ` Conor Dooley @ 2026-01-21 8:39 ` Ng, Tze Yee 2026-01-21 18:29 ` Conor Dooley 0 siblings, 1 reply; 7+ messages in thread From: Ng, Tze Yee @ 2026-01-21 8:39 UTC (permalink / raw) To: Conor Dooley, Ng, Tze Yee Cc: Dinh Nguyen, Rob Herring, Krzysztof Kozlowski, Conor Dooley, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org On 21/1/2026 3:46 am, Conor Dooley wrote: > [You don't often get email from conor@kernel.org. Learn why this is important at https://aka.ms/LearnAboutSenderIdentification ] > > [CAUTION: This email is from outside your organization. Unless you trust the sender, do not click on links or open attachments as it may be a fraudulent email attempting to steal your information and/or compromise your computer.] Hi Conor, Just to confirm I understand correctly, would you like me to update both: 1. The binding schema (altera.yaml) to split the Stratix 10 boards into two patterns, with the eMMC variant having a fallback chain? - description: Stratix 10 boards items: - enum: - altr,socfpga-stratix10-socdk - altr,socfpga-stratix10-swvp - const: altr,socfpga-stratix10 - description: Stratix 10 SoCDK eMMC variant items: - const: altr,socfpga-stratix10-socdk-emmc - const: altr,socfpga-stratix10-socdk - const: altr,socfpga-stratix10 2. The device tree (socfpga_stratix10_socdk_emmc.dts) to update the compatible property from: compatible = "altr,socfpga-stratix10-socdk-emmc", "altr,socfpga-stratix10"; to: compatible = "altr,socfpga-stratix10-socdk-emmc", "altr,socfpga-stratix10-socdk", "altr,socfpga-stratix10"; Please let me know if this is the expected approach, or if you had something different in mind. ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH 1/2] dt-bindings: altera: document Stratix 10 eMMC compatible 2026-01-21 8:39 ` Ng, Tze Yee @ 2026-01-21 18:29 ` Conor Dooley 0 siblings, 0 replies; 7+ messages in thread From: Conor Dooley @ 2026-01-21 18:29 UTC (permalink / raw) To: Ng, Tze Yee Cc: Dinh Nguyen, Rob Herring, Krzysztof Kozlowski, Conor Dooley, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org [-- Attachment #1: Type: text/plain, Size: 1657 bytes --] On Wed, Jan 21, 2026 at 08:39:47AM +0000, Ng, Tze Yee wrote: > On 21/1/2026 3:46 am, Conor Dooley wrote: > > [You don't often get email from conor@kernel.org. Learn why this is important at https://aka.ms/LearnAboutSenderIdentification ] > > > > [CAUTION: This email is from outside your organization. Unless you trust the sender, do not click on links or open attachments as it may be a fraudulent email attempting to steal your information and/or compromise your computer.] > Hi Conor, > > Just to confirm I understand correctly, would you like me to update both: > > 1. The binding schema (altera.yaml) to split the Stratix 10 boards into > two patterns, with the eMMC variant having a fallback chain? > > - description: Stratix 10 boards > items: > - enum: > - altr,socfpga-stratix10-socdk > - altr,socfpga-stratix10-swvp > - const: altr,socfpga-stratix10 > > - description: Stratix 10 SoCDK eMMC variant > items: > - const: altr,socfpga-stratix10-socdk-emmc > - const: altr,socfpga-stratix10-socdk > - const: altr,socfpga-stratix10 > > 2. The device tree (socfpga_stratix10_socdk_emmc.dts) to update the > compatible property > > from: > compatible = "altr,socfpga-stratix10-socdk-emmc", "altr,socfpga-stratix10"; > > to: > compatible = "altr,socfpga-stratix10-socdk-emmc", > "altr,socfpga-stratix10-socdk", > "altr,socfpga-stratix10"; > > Please let me know if this is the expected approach, or if you had > something different in mind. Yes, that's effectively what I had in mind. [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 228 bytes --] ^ permalink raw reply [flat|nested] 7+ messages in thread
* [PATCH 2/2] arm64: dts: socfpga: stratix10: Add emmc support 2026-01-20 13:54 [PATCH 0/2] Add eMMC support for Stratix 10 SoCDK tzeyee.ng 2026-01-20 13:54 ` [PATCH 1/2] dt-bindings: altera: document Stratix 10 eMMC compatible tzeyee.ng @ 2026-01-20 13:54 ` tzeyee.ng 2026-01-20 19:49 ` Conor Dooley 1 sibling, 1 reply; 7+ messages in thread From: tzeyee.ng @ 2026-01-20 13:54 UTC (permalink / raw) To: Dinh Nguyen, Rob Herring, Krzysztof Kozlowski, Conor Dooley, devicetree, linux-kernel From: Ng Tze Yee <tzeyee.ng@altera.com> The Stratix10 devkit supports a separate eMMC daughter card. The eMMC daughter card replaces the SDMMC slot that is on the default daughter card and thus requires a separate board dts file. Signed-off-by: Ng Tze Yee <tzeyee.ng@altera.com> --- arch/arm64/boot/dts/altera/Makefile | 1 + .../altera/socfpga_stratix10_socdk_emmc.dts | 155 ++++++++++++++++++ 2 files changed, 156 insertions(+) create mode 100644 arch/arm64/boot/dts/altera/socfpga_stratix10_socdk_emmc.dts diff --git a/arch/arm64/boot/dts/altera/Makefile b/arch/arm64/boot/dts/altera/Makefile index 1bf0c472f6b4..540bb5ae746b 100644 --- a/arch/arm64/boot/dts/altera/Makefile +++ b/arch/arm64/boot/dts/altera/Makefile @@ -1,4 +1,5 @@ # SPDX-License-Identifier: GPL-2.0-only dtb-$(CONFIG_ARCH_INTEL_SOCFPGA) += socfpga_stratix10_socdk.dtb \ + socfpga_stratix10_socdk_emmc.dtb \ socfpga_stratix10_socdk_nand.dtb \ socfpga_stratix10_swvp.dtb diff --git a/arch/arm64/boot/dts/altera/socfpga_stratix10_socdk_emmc.dts b/arch/arm64/boot/dts/altera/socfpga_stratix10_socdk_emmc.dts new file mode 100644 index 000000000000..01694920afaf --- /dev/null +++ b/arch/arm64/boot/dts/altera/socfpga_stratix10_socdk_emmc.dts @@ -0,0 +1,155 @@ +// SPDX-License-Identifier: GPL-2.0-only +/* + * Copyright Altera Corporation (C) 2026. All rights reserved. + */ + +#include "socfpga_stratix10.dtsi" + +/ { + model = "SoCFPGA Stratix 10 SoCDK eMMC daughter board"; + compatible = "altr,socfpga-stratix10-socdk-emmc", "altr,socfpga-stratix10"; + + aliases { + serial0 = &uart0; + ethernet0 = &gmac0; + ethernet1 = &gmac1; + ethernet2 = &gmac2; + }; + + chosen { + stdout-path = "serial0:115200n8"; + }; + + leds { + compatible = "gpio-leds"; + led-hps0 { + label = "hps_led0"; + gpios = <&portb 20 GPIO_ACTIVE_HIGH>; + }; + + led-hps1 { + label = "hps_led1"; + gpios = <&portb 19 GPIO_ACTIVE_HIGH>; + }; + + led-hps2 { + 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>; + }; + + ref_033v: regulator-0v33-ref { + compatible = "regulator-fixed"; + regulator-name = "0.33V"; + regulator-min-microvolt = <330000>; + regulator-max-microvolt = <330000>; + }; + + soc@0 { + eccmgr { + sdmmca-ecc@ff8c8c00 { + compatible = "altr,socfpga-s10-sdmmc-ecc", + "altr,socfpga-sdmmc-ecc"; + reg = <0xff8c8c00 0x100>; + altr,ecc-parent = <&mmc>; + interrupts = <14 4>, + <15 4>; + }; + }; + }; +}; + +&gpio1 { + status = "okay"; +}; + +&gmac2 { + status = "okay"; + /* PHY delays is 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-mmc-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"; +}; + +&i2c2 { + status = "okay"; + clock-frequency = <100000>; + i2c-sda-falling-time-ns = <890>; /* hcnt */ + i2c-scl-falling-time-ns = <890>; /* lcnt */ + + adc@14 { + compatible = "lltc,ltc2497"; + reg = <0x14>; + vref-supply = <&ref_033v>; + }; + + temp@4c { + compatible = "maxim,max1619"; + reg = <0x4c>; + }; + + eeprom@51 { + compatible = "atmel,24c32"; + reg = <0x51>; + pagesize = <32>; + }; + + rtc@68 { + compatible = "dallas,ds1339"; + reg = <0x68>; + }; +}; -- 2.25.1 ^ permalink raw reply related [flat|nested] 7+ messages in thread
* Re: [PATCH 2/2] arm64: dts: socfpga: stratix10: Add emmc support 2026-01-20 13:54 ` [PATCH 2/2] arm64: dts: socfpga: stratix10: Add emmc support tzeyee.ng @ 2026-01-20 19:49 ` Conor Dooley 0 siblings, 0 replies; 7+ messages in thread From: Conor Dooley @ 2026-01-20 19:49 UTC (permalink / raw) To: tzeyee.ng Cc: Dinh Nguyen, Rob Herring, Krzysztof Kozlowski, Conor Dooley, devicetree, linux-kernel [-- Attachment #1: Type: text/plain, Size: 5002 bytes --] On Tue, Jan 20, 2026 at 05:54:46AM -0800, tzeyee.ng@altera.com wrote: > From: Ng Tze Yee <tzeyee.ng@altera.com> > > The Stratix10 devkit supports a separate eMMC daughter card. The eMMC > daughter card replaces the SDMMC slot that is on the default daughter card > and thus requires a separate board dts file. > > Signed-off-by: Ng Tze Yee <tzeyee.ng@altera.com> > --- > arch/arm64/boot/dts/altera/Makefile | 1 + > .../altera/socfpga_stratix10_socdk_emmc.dts | 155 ++++++++++++++++++ > 2 files changed, 156 insertions(+) > create mode 100644 arch/arm64/boot/dts/altera/socfpga_stratix10_socdk_emmc.dts > > diff --git a/arch/arm64/boot/dts/altera/Makefile b/arch/arm64/boot/dts/altera/Makefile > index 1bf0c472f6b4..540bb5ae746b 100644 > --- a/arch/arm64/boot/dts/altera/Makefile > +++ b/arch/arm64/boot/dts/altera/Makefile > @@ -1,4 +1,5 @@ > # SPDX-License-Identifier: GPL-2.0-only > dtb-$(CONFIG_ARCH_INTEL_SOCFPGA) += socfpga_stratix10_socdk.dtb \ > + socfpga_stratix10_socdk_emmc.dtb \ > socfpga_stratix10_socdk_nand.dtb \ > socfpga_stratix10_swvp.dtb > diff --git a/arch/arm64/boot/dts/altera/socfpga_stratix10_socdk_emmc.dts b/arch/arm64/boot/dts/altera/socfpga_stratix10_socdk_emmc.dts > new file mode 100644 > index 000000000000..01694920afaf > --- /dev/null > +++ b/arch/arm64/boot/dts/altera/socfpga_stratix10_socdk_emmc.dts 90% of this new file appears to duplicate the base device, I think that should be extracted to a common file. > @@ -0,0 +1,155 @@ > +// SPDX-License-Identifier: GPL-2.0-only > +/* > + * Copyright Altera Corporation (C) 2026. All rights reserved. > + */ > + > +#include "socfpga_stratix10.dtsi" > + > +/ { > + model = "SoCFPGA Stratix 10 SoCDK eMMC daughter board"; > + compatible = "altr,socfpga-stratix10-socdk-emmc", "altr,socfpga-stratix10"; > + > + aliases { > + serial0 = &uart0; > + ethernet0 = &gmac0; > + ethernet1 = &gmac1; > + ethernet2 = &gmac2; > + }; > + > + chosen { > + stdout-path = "serial0:115200n8"; > + }; > + > + leds { > + compatible = "gpio-leds"; > + led-hps0 { > + label = "hps_led0"; > + gpios = <&portb 20 GPIO_ACTIVE_HIGH>; > + }; > + > + led-hps1 { > + label = "hps_led1"; > + gpios = <&portb 19 GPIO_ACTIVE_HIGH>; > + }; > + > + led-hps2 { > + 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>; > + }; > + > + ref_033v: regulator-0v33-ref { > + compatible = "regulator-fixed"; > + regulator-name = "0.33V"; > + regulator-min-microvolt = <330000>; > + regulator-max-microvolt = <330000>; > + }; > + > + soc@0 { > + eccmgr { This eccmgr node already exists, you should access it by label. > + sdmmca-ecc@ff8c8c00 { > + compatible = "altr,socfpga-s10-sdmmc-ecc", > + "altr,socfpga-sdmmc-ecc"; > + reg = <0xff8c8c00 0x100>; > + altr,ecc-parent = <&mmc>; > + interrupts = <14 4>, > + <15 4>; > + }; > + }; > + }; > +}; > + > +&gpio1 { > + status = "okay"; > +}; > + > +&gmac2 { > + status = "okay"; > + /* PHY delays is 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-mmc-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"; > +}; > + > +&i2c2 { > + status = "okay"; > + clock-frequency = <100000>; > + i2c-sda-falling-time-ns = <890>; /* hcnt */ > + i2c-scl-falling-time-ns = <890>; /* lcnt */ > + > + adc@14 { > + compatible = "lltc,ltc2497"; > + reg = <0x14>; > + vref-supply = <&ref_033v>; > + }; > + > + temp@4c { > + compatible = "maxim,max1619"; > + reg = <0x4c>; > + }; > + > + eeprom@51 { > + compatible = "atmel,24c32"; > + reg = <0x51>; > + pagesize = <32>; > + }; > + > + rtc@68 { > + compatible = "dallas,ds1339"; > + reg = <0x68>; > + }; > +}; > -- > 2.25.1 > [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 228 bytes --] ^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2026-01-21 18:29 UTC | newest] Thread overview: 7+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2026-01-20 13:54 [PATCH 0/2] Add eMMC support for Stratix 10 SoCDK tzeyee.ng 2026-01-20 13:54 ` [PATCH 1/2] dt-bindings: altera: document Stratix 10 eMMC compatible tzeyee.ng 2026-01-20 19:46 ` Conor Dooley 2026-01-21 8:39 ` Ng, Tze Yee 2026-01-21 18:29 ` Conor Dooley 2026-01-20 13:54 ` [PATCH 2/2] arm64: dts: socfpga: stratix10: Add emmc support tzeyee.ng 2026-01-20 19:49 ` Conor Dooley
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox