* [PATCH v3 0/2] Enable FPGA Manager support for Agilex5
@ 2025-11-14 6:27 Khairul Anuar Romli
2025-11-14 6:27 ` [PATCH v3 1/2] dt-bindings: fpga: stratix10: add " Khairul Anuar Romli
2025-11-14 6:27 ` [PATCH v3 2/2] arm64: dts: agilex5: add fpga-region and fpga-mgr nodes Khairul Anuar Romli
0 siblings, 2 replies; 9+ messages in thread
From: Khairul Anuar Romli @ 2025-11-14 6:27 UTC (permalink / raw)
To: Moritz Fischer, Xu Yilun, Tom Rix, Dinh Nguyen, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Mahesh Rao, Ho Yin,
Niravkumar L Rabara, linux-fpga, linux-kernel, devicetree,
Khairul Anuar Romli
This patch series adds device tree bindings, driver and DTS updates to
enable FPGA Manager functionality for Intel Agilex5 SoC.
These changes are intended to enable FPGA programming and FPGA management
capabilities on Agilex5-based platforms.
---
Notes:
Patch #2 depends on "arm64: dts: intel: Add Agilex5 SVC node with memory
region" from
https://lore.kernel.org/all/3381ef56c1ff34a0b54cf76010889b5523ead825.1762387665.git.khairul.anuar.romli@altera.com/
This patch series is applied on socfpga maintainer's tree
https://git.kernel.org/pub/scm/linux/kernel/git/dinguyen/linux.git/log/?h=socfpga_dts_for_v6.19
Changes in v3:
- Add fallback in altera's soc fpga manager compatible properties.
- Validate with make CHECK_DBTS=y on:
- intel/socfpga_agilex5_socdk.dtb (fallback)
- intel/socfpga_agilex_socdk.dtb (non-fallback)
- altera/socfpga_stratix10_socdk.dtb (non-fallback)
Changes in v2:
- Drop "fpga: stratix10-soc: Add support for Agilex5"
- Add fallback compatible in DT
---
Khairul Anuar Romli (2):
dt-bindings: fpga: stratix10: add support for Agilex5
arm64: dts: agilex5: add fpga-region and fpga-mgr nodes
.../fpga/intel,stratix10-soc-fpga-mgr.yaml | 14 +++++++++++---
arch/arm64/boot/dts/intel/socfpga_agilex5.dtsi | 12 ++++++++++++
2 files changed, 23 insertions(+), 3 deletions(-)
--
2.43.7
^ permalink raw reply [flat|nested] 9+ messages in thread
* [PATCH v3 1/2] dt-bindings: fpga: stratix10: add support for Agilex5
2025-11-14 6:27 [PATCH v3 0/2] Enable FPGA Manager support for Agilex5 Khairul Anuar Romli
@ 2025-11-14 6:27 ` Khairul Anuar Romli
2025-11-14 17:59 ` Conor Dooley
2025-11-14 6:27 ` [PATCH v3 2/2] arm64: dts: agilex5: add fpga-region and fpga-mgr nodes Khairul Anuar Romli
1 sibling, 1 reply; 9+ messages in thread
From: Khairul Anuar Romli @ 2025-11-14 6:27 UTC (permalink / raw)
To: Moritz Fischer, Xu Yilun, Tom Rix, Dinh Nguyen, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Mahesh Rao, Ho Yin,
Niravkumar L Rabara, linux-fpga, linux-kernel, devicetree,
Khairul Anuar Romli
Agilex5 introduces changes in how reserved memory is mapped and accessed
compared to previous SoC generations. Agilex5 compatible allows stratix10-
FPGA manager driver to handle these changes.
Fallback is added for driver probe and init that rely on matching of table
and DT node.
Reviewed-by: Xu Yilun <yilun.xu@intel.com>
Signed-off-by: Khairul Anuar Romli <khairul.anuar.romli@altera.com>
---
Changes in v3:
- Add description for Agilex5 Device
- Add and define fallback to "intel,agilex-soc-fpga-mgr"
- Validate against Agilex and Stratix10 (non-fallback) and Agilex5
(fallback)
Changes in v2:
- No changes in this patch
---
.../fpga/intel,stratix10-soc-fpga-mgr.yaml | 14 +++++++++++---
1 file changed, 11 insertions(+), 3 deletions(-)
diff --git a/Documentation/devicetree/bindings/fpga/intel,stratix10-soc-fpga-mgr.yaml b/Documentation/devicetree/bindings/fpga/intel,stratix10-soc-fpga-mgr.yaml
index 6e536d6b28a9..8eb414163d08 100644
--- a/Documentation/devicetree/bindings/fpga/intel,stratix10-soc-fpga-mgr.yaml
+++ b/Documentation/devicetree/bindings/fpga/intel,stratix10-soc-fpga-mgr.yaml
@@ -20,9 +20,17 @@ description:
properties:
compatible:
- enum:
- - intel,stratix10-soc-fpga-mgr
- - intel,agilex-soc-fpga-mgr
+ oneOf:
+ - items:
+ - enum:
+ - intel,stratix10-soc-fpga-mgr
+ - intel,agilex-soc-fpga-mgr
+
+ - description: Agilex5 Device
+ items:
+ - enum:
+ - intel,agilex5-soc-fpga-mgr
+ - const: intel,agilex-soc-fpga-mgr
required:
- compatible
--
2.43.7
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [PATCH v3 2/2] arm64: dts: agilex5: add fpga-region and fpga-mgr nodes
2025-11-14 6:27 [PATCH v3 0/2] Enable FPGA Manager support for Agilex5 Khairul Anuar Romli
2025-11-14 6:27 ` [PATCH v3 1/2] dt-bindings: fpga: stratix10: add " Khairul Anuar Romli
@ 2025-11-14 6:27 ` Khairul Anuar Romli
1 sibling, 0 replies; 9+ messages in thread
From: Khairul Anuar Romli @ 2025-11-14 6:27 UTC (permalink / raw)
To: Moritz Fischer, Xu Yilun, Tom Rix, Dinh Nguyen, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Mahesh Rao, Ho Yin,
Niravkumar L Rabara, linux-fpga, linux-kernel, devicetree,
Khairul Anuar Romli
The Intel Agilex 5 SoC contains a programmable FPGA region that requires
proper device tree description to enable FPGA manager support in the Linux
kernel.
The fpga-region node is introduced to support FPGA partial reconfiguration
through the FPGA Manager framework. This node defines a region in the
device tree that can be dynamically programmed at runtime.
Reviewed-by: Xu Yilun <yilun.xu@intel.com>
Signed-off-by: Khairul Anuar Romli <khairul.anuar.romli@altera.com>
---
Changes in v3:
- tested with intel,stratix10-soc-fpga-mgr.yaml
- Rephrase commit message to make it more concise.
Changes in v2:
- All fallback compatible string to ensure driver is still able to
initialize without new compatible string added in the driver.
---
arch/arm64/boot/dts/intel/socfpga_agilex5.dtsi | 12 ++++++++++++
1 file changed, 12 insertions(+)
diff --git a/arch/arm64/boot/dts/intel/socfpga_agilex5.dtsi b/arch/arm64/boot/dts/intel/socfpga_agilex5.dtsi
index bf7128adddde..06be0b8671c0 100644
--- a/arch/arm64/boot/dts/intel/socfpga_agilex5.dtsi
+++ b/arch/arm64/boot/dts/intel/socfpga_agilex5.dtsi
@@ -85,9 +85,21 @@ svc {
method = "smc";
memory-region = <&service_reserved>;
iommus = <&smmu 10>;
+
+ fpga_mgr: fpga-mgr {
+ compatible = "intel,agilex5-soc-fpga-mgr",
+ "intel,agilex-soc-fpga-mgr";
+ };
};
};
+ fpga-region {
+ compatible = "fpga-region";
+ #address-cells = <0x2>;
+ #size-cells = <0x2>;
+ fpga-mgr = <&fpga_mgr>;
+ };
+
psci {
compatible = "arm,psci-0.2";
method = "smc";
--
2.43.7
^ permalink raw reply related [flat|nested] 9+ messages in thread
* Re: [PATCH v3 1/2] dt-bindings: fpga: stratix10: add support for Agilex5
2025-11-14 6:27 ` [PATCH v3 1/2] dt-bindings: fpga: stratix10: add " Khairul Anuar Romli
@ 2025-11-14 17:59 ` Conor Dooley
2025-11-17 3:02 ` Romli, Khairul Anuar
0 siblings, 1 reply; 9+ messages in thread
From: Conor Dooley @ 2025-11-14 17:59 UTC (permalink / raw)
To: Khairul Anuar Romli
Cc: Moritz Fischer, Xu Yilun, Tom Rix, Dinh Nguyen, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Mahesh Rao, Ho Yin,
Niravkumar L Rabara, linux-fpga, linux-kernel, devicetree
[-- Attachment #1: Type: text/plain, Size: 1937 bytes --]
On Fri, Nov 14, 2025 at 02:27:41PM +0800, Khairul Anuar Romli wrote:
> Agilex5 introduces changes in how reserved memory is mapped and accessed
> compared to previous SoC generations. Agilex5 compatible allows stratix10-
> FPGA manager driver to handle these changes.
>
> Fallback is added for driver probe and init that rely on matching of table
> and DT node.
>
> Reviewed-by: Xu Yilun <yilun.xu@intel.com>
> Signed-off-by: Khairul Anuar Romli <khairul.anuar.romli@altera.com>
> ---
> Changes in v3:
> - Add description for Agilex5 Device
> - Add and define fallback to "intel,agilex-soc-fpga-mgr"
> - Validate against Agilex and Stratix10 (non-fallback) and Agilex5
> (fallback)
> Changes in v2:
> - No changes in this patch
> ---
> .../fpga/intel,stratix10-soc-fpga-mgr.yaml | 14 +++++++++++---
> 1 file changed, 11 insertions(+), 3 deletions(-)
>
> diff --git a/Documentation/devicetree/bindings/fpga/intel,stratix10-soc-fpga-mgr.yaml b/Documentation/devicetree/bindings/fpga/intel,stratix10-soc-fpga-mgr.yaml
> index 6e536d6b28a9..8eb414163d08 100644
> --- a/Documentation/devicetree/bindings/fpga/intel,stratix10-soc-fpga-mgr.yaml
> +++ b/Documentation/devicetree/bindings/fpga/intel,stratix10-soc-fpga-mgr.yaml
> @@ -20,9 +20,17 @@ description:
>
> properties:
> compatible:
> - enum:
> - - intel,stratix10-soc-fpga-mgr
> - - intel,agilex-soc-fpga-mgr
> + oneOf:
> + - items:
> + - enum:
This construct is redundant, "items: - enum" is the same as just having
"enum".
pw-bot: changes-requested
> + - intel,stratix10-soc-fpga-mgr
> + - intel,agilex-soc-fpga-mgr
> +
> + - description: Agilex5 Device
> + items:
> + - enum:
> + - intel,agilex5-soc-fpga-mgr
> + - const: intel,agilex-soc-fpga-mgr
>
> required:
> - compatible
> --
> 2.43.7
>
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 228 bytes --]
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH v3 1/2] dt-bindings: fpga: stratix10: add support for Agilex5
2025-11-14 17:59 ` Conor Dooley
@ 2025-11-17 3:02 ` Romli, Khairul Anuar
2025-11-17 14:32 ` Conor Dooley
0 siblings, 1 reply; 9+ messages in thread
From: Romli, Khairul Anuar @ 2025-11-17 3:02 UTC (permalink / raw)
To: Conor Dooley
Cc: Moritz Fischer, Xu Yilun, Tom Rix, Dinh Nguyen, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Rao, Mahesh, Ng, Adrian Ho Yin,
Rabara, Niravkumar Laxmidas, linux-fpga@vger.kernel.org,
linux-kernel@vger.kernel.org, devicetree@vger.kernel.org
On 15/11/2025 1:59 am, Conor Dooley wrote:
> On Fri, Nov 14, 2025 at 02:27:41PM +0800, Khairul Anuar Romli wrote:
>> Agilex5 introduces changes in how reserved memory is mapped and accessed
>> compared to previous SoC generations. Agilex5 compatible allows stratix10-
>> FPGA manager driver to handle these changes.
>>
>> Fallback is added for driver probe and init that rely on matching of table
>> and DT node.
>>
>> Reviewed-by: Xu Yilun <yilun.xu@intel.com>
>> Signed-off-by: Khairul Anuar Romli <khairul.anuar.romli@altera.com>
>> ---
>> Changes in v3:
>> - Add description for Agilex5 Device
>> - Add and define fallback to "intel,agilex-soc-fpga-mgr"
>> - Validate against Agilex and Stratix10 (non-fallback) and Agilex5
>> (fallback)
>> Changes in v2:
>> - No changes in this patch
>> ---
>> .../fpga/intel,stratix10-soc-fpga-mgr.yaml | 14 +++++++++++---
>> 1 file changed, 11 insertions(+), 3 deletions(-)
>>
>> diff --git a/Documentation/devicetree/bindings/fpga/intel,stratix10-soc-fpga-mgr.yaml b/Documentation/devicetree/bindings/fpga/intel,stratix10-soc-fpga-mgr.yaml
>> index 6e536d6b28a9..8eb414163d08 100644
>> --- a/Documentation/devicetree/bindings/fpga/intel,stratix10-soc-fpga-mgr.yaml
>> +++ b/Documentation/devicetree/bindings/fpga/intel,stratix10-soc-fpga-mgr.yaml
>> @@ -20,9 +20,17 @@ description:
>>
>> properties:
>> compatible:
>> - enum:
>> - - intel,stratix10-soc-fpga-mgr
>> - - intel,agilex-soc-fpga-mgr
>> + oneOf:
>> + - items:
>> + - enum:
>
> This construct is redundant, "items: - enum" is the same as just having
> "enum".
> pw-bot: changes-requested
>
I've tried to look for some of the already merged bindings i.e
arm/qcom.yaml (although all the properties has enum - constant
combination), it is using items with enum. I tried to keep the enum without
items but I keep getting error while validating the changes.
Another option that I've validated is using the following changes.
- enum:
- - intel,stratix10-soc-fpga-mgr
- - intel,agilex-soc-fpga-mgr
+ oneOf:
+ - description: Intel Stratix10 Devices
+ items:
+ - const: intel,stratix10-soc-fpga-mgr
+ - description: Intel Agilex Devices
+ items:
+ - const: intel,agilex-soc-fpga-mgr
+ - description: Intel Agilex5 Devices
+ items:
+ - const: intel,agilex5-soc-fpga-mgr
+ - const: intel,agilex-soc-fpga-mgr
The drawback of this is we will need to implement enum instead of
constant for first element if we need to add new devices under "Intel
Agilex5 Devices" in the future.
Thanks.
Best Regards,
Khairul
>> + - intel,stratix10-soc-fpga-mgr
>> + - intel,agilex-soc-fpga-mgr
>> +
>> + - description: Agilex5 Device
>> + items:
>> + - enum:
>> + - intel,agilex5-soc-fpga-mgr
>> + - const: intel,agilex-soc-fpga-mgr
>>
>> required:
>> - compatible
>> --
>> 2.43.7
>>
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH v3 1/2] dt-bindings: fpga: stratix10: add support for Agilex5
2025-11-17 3:02 ` Romli, Khairul Anuar
@ 2025-11-17 14:32 ` Conor Dooley
2025-11-17 14:34 ` Conor Dooley
0 siblings, 1 reply; 9+ messages in thread
From: Conor Dooley @ 2025-11-17 14:32 UTC (permalink / raw)
To: Romli, Khairul Anuar
Cc: Moritz Fischer, Xu Yilun, Tom Rix, Dinh Nguyen, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Rao, Mahesh, Ng, Adrian Ho Yin,
Rabara, Niravkumar Laxmidas, linux-fpga@vger.kernel.org,
linux-kernel@vger.kernel.org, devicetree@vger.kernel.org
[-- Attachment #1: Type: text/plain, Size: 3791 bytes --]
On Mon, Nov 17, 2025 at 03:02:11AM +0000, Romli, Khairul Anuar wrote:
> On 15/11/2025 1:59 am, Conor Dooley wrote:
> > On Fri, Nov 14, 2025 at 02:27:41PM +0800, Khairul Anuar Romli wrote:
> >> Agilex5 introduces changes in how reserved memory is mapped and accessed
> >> compared to previous SoC generations. Agilex5 compatible allows stratix10-
> >> FPGA manager driver to handle these changes.
> >>
> >> Fallback is added for driver probe and init that rely on matching of table
> >> and DT node.
> >>
> >> Reviewed-by: Xu Yilun <yilun.xu@intel.com>
> >> Signed-off-by: Khairul Anuar Romli <khairul.anuar.romli@altera.com>
> >> ---
> >> Changes in v3:
> >> - Add description for Agilex5 Device
> >> - Add and define fallback to "intel,agilex-soc-fpga-mgr"
> >> - Validate against Agilex and Stratix10 (non-fallback) and Agilex5
> >> (fallback)
> >> Changes in v2:
> >> - No changes in this patch
> >> ---
> >> .../fpga/intel,stratix10-soc-fpga-mgr.yaml | 14 +++++++++++---
> >> 1 file changed, 11 insertions(+), 3 deletions(-)
> >>
> >> diff --git a/Documentation/devicetree/bindings/fpga/intel,stratix10-soc-fpga-mgr.yaml b/Documentation/devicetree/bindings/fpga/intel,stratix10-soc-fpga-mgr.yaml
> >> index 6e536d6b28a9..8eb414163d08 100644
> >> --- a/Documentation/devicetree/bindings/fpga/intel,stratix10-soc-fpga-mgr.yaml
> >> +++ b/Documentation/devicetree/bindings/fpga/intel,stratix10-soc-fpga-mgr.yaml
> >> @@ -20,9 +20,17 @@ description:
> >>
> >> properties:
> >> compatible:
> >> - enum:
> >> - - intel,stratix10-soc-fpga-mgr
> >> - - intel,agilex-soc-fpga-mgr
> >> + oneOf:
> >> + - items:
> >> + - enum:
> >
> > This construct is redundant, "items: - enum" is the same as just having
> > "enum".
> > pw-bot: changes-requested
> >
> I've tried to look for some of the already merged bindings i.e
> arm/qcom.yaml (although all the properties has enum - constant
> combination), it is using items with enum. I tried to keep the enum without
> items but I keep getting error while validating the changes.
I literally told you what to change, so I don't know why you didn't just
do that. Replacing "items: - enum" with "enum" is what you need to do.
You didn't even include the error you got, so I cannot help you with
that at all, nor even if you did what I told you to do.
> Another option that I've validated is using the following changes.
>
> - enum:
> - - intel,stratix10-soc-fpga-mgr
> - - intel,agilex-soc-fpga-mgr
> + oneOf:
> + - description: Intel Stratix10 Devices
> + items:
> + - const: intel,stratix10-soc-fpga-mgr
These just have the same problem as your original patch.
"items: - const" is just the same as "const".
Since item "items" properties do not do anything other than bloat the
schema.
> + - description: Intel Agilex Devices
> + items:
> + - const: intel,agilex-soc-fpga-mgr
> + - description: Intel Agilex5 Devices
> + items:
> + - const: intel,agilex5-soc-fpga-mgr
> + - const: intel,agilex-soc-fpga-mgr
>
> The drawback of this is we will need to implement enum instead of
> constant for first element if we need to add new devices under "Intel
> Agilex5 Devices" in the future.
>
> Thanks.
>
> Best Regards,
> Khairul
>
> >> + - intel,stratix10-soc-fpga-mgr
> >> + - intel,agilex-soc-fpga-mgr
> >> +
> >> + - description: Agilex5 Device
> >> + items:
> >> + - enum:
> >> + - intel,agilex5-soc-fpga-mgr
> >> + - const: intel,agilex-soc-fpga-mgr
> >>
> >> required:
> >> - compatible
> >> --
> >> 2.43.7
> >>
>
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 228 bytes --]
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH v3 1/2] dt-bindings: fpga: stratix10: add support for Agilex5
2025-11-17 14:32 ` Conor Dooley
@ 2025-11-17 14:34 ` Conor Dooley
2025-11-18 0:07 ` Romli, Khairul Anuar
0 siblings, 1 reply; 9+ messages in thread
From: Conor Dooley @ 2025-11-17 14:34 UTC (permalink / raw)
To: Romli, Khairul Anuar
Cc: Moritz Fischer, Xu Yilun, Tom Rix, Dinh Nguyen, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Rao, Mahesh, Ng, Adrian Ho Yin,
Rabara, Niravkumar Laxmidas, linux-fpga@vger.kernel.org,
linux-kernel@vger.kernel.org, devicetree@vger.kernel.org
[-- Attachment #1: Type: text/plain, Size: 4089 bytes --]
On Mon, Nov 17, 2025 at 02:32:16PM +0000, Conor Dooley wrote:
> On Mon, Nov 17, 2025 at 03:02:11AM +0000, Romli, Khairul Anuar wrote:
> > On 15/11/2025 1:59 am, Conor Dooley wrote:
> > > On Fri, Nov 14, 2025 at 02:27:41PM +0800, Khairul Anuar Romli wrote:
> > >> Agilex5 introduces changes in how reserved memory is mapped and accessed
> > >> compared to previous SoC generations. Agilex5 compatible allows stratix10-
> > >> FPGA manager driver to handle these changes.
> > >>
> > >> Fallback is added for driver probe and init that rely on matching of table
> > >> and DT node.
> > >>
> > >> Reviewed-by: Xu Yilun <yilun.xu@intel.com>
> > >> Signed-off-by: Khairul Anuar Romli <khairul.anuar.romli@altera.com>
> > >> ---
> > >> Changes in v3:
> > >> - Add description for Agilex5 Device
> > >> - Add and define fallback to "intel,agilex-soc-fpga-mgr"
> > >> - Validate against Agilex and Stratix10 (non-fallback) and Agilex5
> > >> (fallback)
> > >> Changes in v2:
> > >> - No changes in this patch
> > >> ---
> > >> .../fpga/intel,stratix10-soc-fpga-mgr.yaml | 14 +++++++++++---
> > >> 1 file changed, 11 insertions(+), 3 deletions(-)
> > >>
> > >> diff --git a/Documentation/devicetree/bindings/fpga/intel,stratix10-soc-fpga-mgr.yaml b/Documentation/devicetree/bindings/fpga/intel,stratix10-soc-fpga-mgr.yaml
> > >> index 6e536d6b28a9..8eb414163d08 100644
> > >> --- a/Documentation/devicetree/bindings/fpga/intel,stratix10-soc-fpga-mgr.yaml
> > >> +++ b/Documentation/devicetree/bindings/fpga/intel,stratix10-soc-fpga-mgr.yaml
> > >> @@ -20,9 +20,17 @@ description:
> > >>
> > >> properties:
> > >> compatible:
> > >> - enum:
> > >> - - intel,stratix10-soc-fpga-mgr
> > >> - - intel,agilex-soc-fpga-mgr
> > >> + oneOf:
> > >> + - items:
> > >> + - enum:
> > >
> > > This construct is redundant, "items: - enum" is the same as just having
> > > "enum".
> > > pw-bot: changes-requested
> > >
> > I've tried to look for some of the already merged bindings i.e
> > arm/qcom.yaml (although all the properties has enum - constant
> > combination), it is using items with enum. I tried to keep the enum without
> > items but I keep getting error while validating the changes.
>
> I literally told you what to change, so I don't know why you didn't just
> do that. Replacing "items: - enum" with "enum" is what you need to do.
> You didn't even include the error you got, so I cannot help you with
> that at all, nor even if you did what I told you to do.
nor even know if you did*
>
> > Another option that I've validated is using the following changes.
> >
> > - enum:
> > - - intel,stratix10-soc-fpga-mgr
> > - - intel,agilex-soc-fpga-mgr
> > + oneOf:
> > + - description: Intel Stratix10 Devices
> > + items:
> > + - const: intel,stratix10-soc-fpga-mgr
>
> These just have the same problem as your original patch.
> "items: - const" is just the same as "const".
> Since item "items" properties do not do anything other than bloat the
> schema.
>
> > + - description: Intel Agilex Devices
> > + items:
> > + - const: intel,agilex-soc-fpga-mgr
> > + - description: Intel Agilex5 Devices
> > + items:
> > + - const: intel,agilex5-soc-fpga-mgr
> > + - const: intel,agilex-soc-fpga-mgr
> >
> > The drawback of this is we will need to implement enum instead of
> > constant for first element if we need to add new devices under "Intel
> > Agilex5 Devices" in the future.
> >
> > Thanks.
> >
> > Best Regards,
> > Khairul
> >
> > >> + - intel,stratix10-soc-fpga-mgr
> > >> + - intel,agilex-soc-fpga-mgr
> > >> +
> > >> + - description: Agilex5 Device
> > >> + items:
> > >> + - enum:
> > >> + - intel,agilex5-soc-fpga-mgr
> > >> + - const: intel,agilex-soc-fpga-mgr
> > >>
> > >> required:
> > >> - compatible
> > >> --
> > >> 2.43.7
> > >>
> >
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 228 bytes --]
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH v3 1/2] dt-bindings: fpga: stratix10: add support for Agilex5
2025-11-17 14:34 ` Conor Dooley
@ 2025-11-18 0:07 ` Romli, Khairul Anuar
2025-11-18 0:51 ` Romli, Khairul Anuar
0 siblings, 1 reply; 9+ messages in thread
From: Romli, Khairul Anuar @ 2025-11-18 0:07 UTC (permalink / raw)
To: Conor Dooley
Cc: Moritz Fischer, Xu Yilun, Tom Rix, Dinh Nguyen, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Rao, Mahesh, Ng, Adrian Ho Yin,
Rabara, Niravkumar Laxmidas, linux-fpga@vger.kernel.org,
linux-kernel@vger.kernel.org, devicetree@vger.kernel.org
On 17/11/2025 10:34 pm, Conor Dooley wrote:
> On Mon, Nov 17, 2025 at 02:32:16PM +0000, Conor Dooley wrote:
>> On Mon, Nov 17, 2025 at 03:02:11AM +0000, Romli, Khairul Anuar wrote:
>>> On 15/11/2025 1:59 am, Conor Dooley wrote:
>>>> On Fri, Nov 14, 2025 at 02:27:41PM +0800, Khairul Anuar Romli wrote:
>>>>> Agilex5 introduces changes in how reserved memory is mapped and accessed
>>>>> compared to previous SoC generations. Agilex5 compatible allows stratix10-
>>>>> FPGA manager driver to handle these changes.
>>>>>
>>>>> Fallback is added for driver probe and init that rely on matching of table
>>>>> and DT node.
>>>>>
>>>>> Reviewed-by: Xu Yilun <yilun.xu@intel.com>
>>>>> Signed-off-by: Khairul Anuar Romli <khairul.anuar.romli@altera.com>
>>>>> ---
>>>>> Changes in v3:
>>>>> - Add description for Agilex5 Device
>>>>> - Add and define fallback to "intel,agilex-soc-fpga-mgr"
>>>>> - Validate against Agilex and Stratix10 (non-fallback) and Agilex5
>>>>> (fallback)
>>>>> Changes in v2:
>>>>> - No changes in this patch
>>>>> ---
>>>>> .../fpga/intel,stratix10-soc-fpga-mgr.yaml | 14 +++++++++++---
>>>>> 1 file changed, 11 insertions(+), 3 deletions(-)
>>>>>
>>>>> diff --git a/Documentation/devicetree/bindings/fpga/intel,stratix10-soc-fpga-mgr.yaml b/Documentation/devicetree/bindings/fpga/intel,stratix10-soc-fpga-mgr.yaml
>>>>> index 6e536d6b28a9..8eb414163d08 100644
>>>>> --- a/Documentation/devicetree/bindings/fpga/intel,stratix10-soc-fpga-mgr.yaml
>>>>> +++ b/Documentation/devicetree/bindings/fpga/intel,stratix10-soc-fpga-mgr.yaml
>>>>> @@ -20,9 +20,17 @@ description:
>>>>>
>>>>> properties:
>>>>> compatible:
>>>>> - enum:
>>>>> - - intel,stratix10-soc-fpga-mgr
>>>>> - - intel,agilex-soc-fpga-mgr
>>>>> + oneOf:
>>>>> + - items:
>>>>> + - enum:
>>>>
>>>> This construct is redundant, "items: - enum" is the same as just having
>>>> "enum".
>>>> pw-bot: changes-requested
>>>>
>>> I've tried to look for some of the already merged bindings i.e
>>> arm/qcom.yaml (although all the properties has enum - constant
>>> combination), it is using items with enum. I tried to keep the enum without
>>> items but I keep getting error while validating the changes.
>>
>> I literally told you what to change, so I don't know why you didn't just
>> do that. Replacing "items: - enum" with "enum" is what you need to do.
>> You didn't even include the error you got, so I cannot help you with
>> that at all, nor even if you did what I told you to do.
>
> nor even know if you did*
>
properties:
compatible:
- enum:
- - intel,stratix10-soc-fpga-mgr
- - intel,agilex-soc-fpga-mgr
+ oneOf:
+ - enum:
+ - intel,stratix10-soc-fpga-mgr
+ - intel,agilex-soc-fpga-mgr
+ - enum:
+ - intel,agilex5-soc-fpga-mgr
+ const: intel,agilex-soc-fpga-mgr
$ make -j24 CHECK_DTBS=y intel/socfpga_agilex5_socdk.dtb
/linux-socfpga/arch/arm64/boot/dts/intel/socfpga_agilex5_socdk.dtb:
fpga-mgr (intel,agilex5-soc-fpga-mgr): compatible: 'oneOf' conditional
failed, one must be fixed:
['intel,agilex5-soc-fpga-mgr', 'intel,agilex-soc-fpga-mgr'] is too long
'intel,agilex5-soc-fpga-mgr' is not one of
['intel,stratix10-soc-fpga-mgr', 'intel,agilex-soc-fpga-mgr']
'intel,agilex-soc-fpga-mgr' was expected
from schema $id:
http://devicetree.org/schemas/fpga/intel,stratix10-soc-fpga-mgr.yaml#
$ make -j24 CHECK_DTBS=y
DT_SCHEMA_FILES=intel,stratix10-soc-fpga-mgr.yaml
intel/socfpga_agilex5_socdk.dtb
DTC [C] arch/arm64/boot/dts/intel/socfpga_agilex5_socdk.dtb
/linux-socfpga/arch/arm64/boot/dts/intel/socfpga_agilex5_socdk.dtb:
fpga-mgr (intel,agilex5-soc-fpga-mgr): compatible: 'oneOf' conditional
failed, one must be fixed:
['intel,agilex5-soc-fpga-mgr', 'intel,agilex-soc-fpga-mgr'] is too long
'intel,agilex5-soc-fpga-mgr' is not one of
['intel,stratix10-soc-fpga-mgr', 'intel,agilex-soc-fpga-mgr']
'intel,agilex-soc-fpga-mgr' was expected
from schema $id:
http://devicetree.org/schemas/fpga/intel,stratix10-soc-fpga-mgr.yaml#
This error is not seen if we use the "redundant" items - enum.
Documentation/devicetree/bindings/example-schema.yaml still shows
the use of items - enum though.
Thanks.
Best Regards,
Khairul
>>
>>> Another option that I've validated is using the following changes.
>>>
>>> - enum:
>>> - - intel,stratix10-soc-fpga-mgr
>>> - - intel,agilex-soc-fpga-mgr
>>> + oneOf:
>>> + - description: Intel Stratix10 Devices
>>> + items:
>>> + - const: intel,stratix10-soc-fpga-mgr
>>
>> These just have the same problem as your original patch.
>> "items: - const" is just the same as "const".
>> Since item "items" properties do not do anything other than bloat the
>> schema.
>>
>>> + - description: Intel Agilex Devices
>>> + items:
>>> + - const: intel,agilex-soc-fpga-mgr
>>> + - description: Intel Agilex5 Devices
>>> + items:
>>> + - const: intel,agilex5-soc-fpga-mgr
>>> + - const: intel,agilex-soc-fpga-mgr
>>>
>>> The drawback of this is we will need to implement enum instead of
>>> constant for first element if we need to add new devices under "Intel
>>> Agilex5 Devices" in the future.
>>>
>>> Thanks.
>>>
>>> Best Regards,
>>> Khairul
>>>
>>>>> + - intel,stratix10-soc-fpga-mgr
>>>>> + - intel,agilex-soc-fpga-mgr
>>>>> +
>>>>> + - description: Agilex5 Device
>>>>> + items:
>>>>> + - enum:
>>>>> + - intel,agilex5-soc-fpga-mgr
>>>>> + - const: intel,agilex-soc-fpga-mgr
>>>>>
>>>>> required:
>>>>> - compatible
>>>>> --
>>>>> 2.43.7
>>>>>
>>>
>
>
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH v3 1/2] dt-bindings: fpga: stratix10: add support for Agilex5
2025-11-18 0:07 ` Romli, Khairul Anuar
@ 2025-11-18 0:51 ` Romli, Khairul Anuar
0 siblings, 0 replies; 9+ messages in thread
From: Romli, Khairul Anuar @ 2025-11-18 0:51 UTC (permalink / raw)
To: Conor Dooley
Cc: Moritz Fischer, Xu Yilun, Tom Rix, Dinh Nguyen, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Rao, Mahesh, Ng, Adrian Ho Yin,
Rabara, Niravkumar Laxmidas, linux-fpga@vger.kernel.org,
linux-kernel@vger.kernel.org, devicetree@vger.kernel.org
On 18/11/2025 8:07 am, Conor Dooley wrote:
> On 17/11/2025 10:34 pm, Conor Dooley wrote:
>> On Mon, Nov 17, 2025 at 02:32:16PM +0000, Conor Dooley wrote:
>>> On Mon, Nov 17, 2025 at 03:02:11AM +0000, Romli, Khairul Anuar wrote:
>>>> On 15/11/2025 1:59 am, Conor Dooley wrote:
>>>>> On Fri, Nov 14, 2025 at 02:27:41PM +0800, Khairul Anuar Romli wrote:
>>>>>> Agilex5 introduces changes in how reserved memory is mapped and
>>>>>> accessed
>>>>>> compared to previous SoC generations. Agilex5 compatible allows
>>>>>> stratix10-
>>>>>> FPGA manager driver to handle these changes.
>>>>>>
>>>>>> Fallback is added for driver probe and init that rely on matching
>>>>>> of table
>>>>>> and DT node.
>>>>>>
>>>>>> Reviewed-by: Xu Yilun <yilun.xu@intel.com>
>>>>>> Signed-off-by: Khairul Anuar Romli <khairul.anuar.romli@altera.com>
>>>>>> ---
>>>>>> Changes in v3:
>>>>>> - Add description for Agilex5 Device
>>>>>> - Add and define fallback to "intel,agilex-soc-fpga-mgr"
>>>>>> - Validate against Agilex and Stratix10 (non-fallback) and
>>>>>> Agilex5
>>>>>> (fallback)
>>>>>> Changes in v2:
>>>>>> - No changes in this patch
>>>>>> ---
>>>>>> .../fpga/intel,stratix10-soc-fpga-mgr.yaml | 14 +++++++
>>>>>> ++++---
>>>>>> 1 file changed, 11 insertions(+), 3 deletions(-)
>>>>>>
>>>>>> diff --git a/Documentation/devicetree/bindings/fpga/
>>>>>> intel,stratix10-soc-fpga-mgr.yaml b/Documentation/devicetree/
>>>>>> bindings/fpga/intel,stratix10-soc-fpga-mgr.yaml
>>>>>> index 6e536d6b28a9..8eb414163d08 100644
>>>>>> --- a/Documentation/devicetree/bindings/fpga/intel,stratix10-soc-
>>>>>> fpga-mgr.yaml
>>>>>> +++ b/Documentation/devicetree/bindings/fpga/intel,stratix10-soc-
>>>>>> fpga-mgr.yaml
>>>>>> @@ -20,9 +20,17 @@ description:
>>>>>> properties:
>>>>>> compatible:
>>>>>> - enum:
>>>>>> - - intel,stratix10-soc-fpga-mgr
>>>>>> - - intel,agilex-soc-fpga-mgr
>>>>>> + oneOf:
>>>>>> + - items:
>>>>>> + - enum:
>>>>>
>>>>> This construct is redundant, "items: - enum" is the same as just
>>>>> having
>>>>> "enum".
>>>>> pw-bot: changes-requested
>>>>>
>>>> I've tried to look for some of the already merged bindings i.e
>>>> arm/qcom.yaml (although all the properties has enum - constant
>>>> combination), it is using items with enum. I tried to keep the enum
>>>> without
>>>> items but I keep getting error while validating the changes.
>>>
>>> I literally told you what to change, so I don't know why you didn't just
>>> do that. Replacing "items: - enum" with "enum" is what you need to do.
>>> You didn't even include the error you got, so I cannot help you with
>>> that at all, nor even if you did what I told you to do.
>>
>> nor even know if you did*
>>
>
> properties:
> compatible:
> - enum:
> - - intel,stratix10-soc-fpga-mgr
> - - intel,agilex-soc-fpga-mgr
> + oneOf:
> + - enum:
> + - intel,stratix10-soc-fpga-mgr
> + - intel,agilex-soc-fpga-mgr
> + - enum:
> + - intel,agilex5-soc-fpga-mgr
> + const: intel,agilex-soc-fpga-mgr
>
> $ make -j24 CHECK_DTBS=y intel/socfpga_agilex5_socdk.dtb
>
> /linux-socfpga/arch/arm64/boot/dts/intel/socfpga_agilex5_socdk.dtb:
> fpga-mgr (intel,agilex5-soc-fpga-mgr): compatible: 'oneOf' conditional
> failed, one must be fixed:
> ['intel,agilex5-soc-fpga-mgr', 'intel,agilex-soc-fpga-mgr'] is too
> long
> 'intel,agilex5-soc-fpga-mgr' is not one of ['intel,stratix10-soc-
> fpga-mgr', 'intel,agilex-soc-fpga-mgr']
> 'intel,agilex-soc-fpga-mgr' was expected
> from schema $id: http://devicetree.org/schemas/fpga/
> intel,stratix10-soc-fpga-mgr.yaml#
>
> $ make -j24 CHECK_DTBS=y DT_SCHEMA_FILES=intel,stratix10-soc-fpga-
> mgr.yaml intel/socfpga_agilex5_socdk.dtb
>
> DTC [C] arch/arm64/boot/dts/intel/socfpga_agilex5_socdk.dtb
> /linux-socfpga/arch/arm64/boot/dts/intel/socfpga_agilex5_socdk.dtb:
> fpga-mgr (intel,agilex5-soc-fpga-mgr): compatible: 'oneOf' conditional
> failed, one must be fixed:
> ['intel,agilex5-soc-fpga-mgr', 'intel,agilex-soc-fpga-mgr'] is too
> long
> 'intel,agilex5-soc-fpga-mgr' is not one of ['intel,stratix10-soc-
> fpga-mgr', 'intel,agilex-soc-fpga-mgr']
> 'intel,agilex-soc-fpga-mgr' was expected
> from schema $id: http://devicetree.org/schemas/fpga/
> intel,stratix10-soc-fpga-mgr.yaml#
>
> This error is not seen if we use the "redundant" items - enum.
>
> Documentation/devicetree/bindings/example-schema.yaml still shows
> the use of items - enum though.
>
> Thanks.
>
> Best Regards,
> Khairul
>
Upon doing some more reading through other examples, I am able to get to
make changes as you suggested and get it validated without any error on
the fallback and non-fallback DT.
I will sent that in the next version.
Thank you so much for the feedback.
Best Regards,
Khairul
>>>
>>>> Another option that I've validated is using the following changes.
>>>>
>>>> - enum:
>>>> - - intel,stratix10-soc-fpga-mgr
>>>> - - intel,agilex-soc-fpga-mgr
>>>> + oneOf:
>>>> + - description: Intel Stratix10 Devices
>>>> + items:
>>>> + - const: intel,stratix10-soc-fpga-mgr
>>>
>>> These just have the same problem as your original patch.
>>> "items: - const" is just the same as "const".
>>> Since item "items" properties do not do anything other than bloat the
>>> schema.
>>>
>>>> + - description: Intel Agilex Devices
>>>> + items:
>>>> + - const: intel,agilex-soc-fpga-mgr
>>>> + - description: Intel Agilex5 Devices
>>>> + items:
>>>> + - const: intel,agilex5-soc-fpga-mgr
>>>> + - const: intel,agilex-soc-fpga-mgr
>>>>
>>>> The drawback of this is we will need to implement enum instead of
>>>> constant for first element if we need to add new devices under "Intel
>>>> Agilex5 Devices" in the future.
>>>>
>>>> Thanks.
>>>>
>>>> Best Regards,
>>>> Khairul
>>>>
>>>>>> + - intel,stratix10-soc-fpga-mgr
>>>>>> + - intel,agilex-soc-fpga-mgr
>>>>>> +
>>>>>> + - description: Agilex5 Device
>>>>>> + items:
>>>>>> + - enum:
>>>>>> + - intel,agilex5-soc-fpga-mgr
>>>>>> + - const: intel,agilex-soc-fpga-mgr
>>>>>> required:
>>>>>> - compatible
>>>>>> --
>>>>>> 2.43.7
>>>>>>
>>>>
>>
>>
>
^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2025-11-18 0:51 UTC | newest]
Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-11-14 6:27 [PATCH v3 0/2] Enable FPGA Manager support for Agilex5 Khairul Anuar Romli
2025-11-14 6:27 ` [PATCH v3 1/2] dt-bindings: fpga: stratix10: add " Khairul Anuar Romli
2025-11-14 17:59 ` Conor Dooley
2025-11-17 3:02 ` Romli, Khairul Anuar
2025-11-17 14:32 ` Conor Dooley
2025-11-17 14:34 ` Conor Dooley
2025-11-18 0:07 ` Romli, Khairul Anuar
2025-11-18 0:51 ` Romli, Khairul Anuar
2025-11-14 6:27 ` [PATCH v3 2/2] arm64: dts: agilex5: add fpga-region and fpga-mgr nodes Khairul Anuar Romli
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).