[PATCH v7 08/13] dt-bindings: PCI: Add CIX Sky1 PCIe Root Complex bindings

hans.zhang@cixtech.com posted 13 patches 1 month, 3 weeks ago
There is a newer version of this series
[PATCH v7 08/13] dt-bindings: PCI: Add CIX Sky1 PCIe Root Complex bindings
Posted by hans.zhang@cixtech.com 1 month, 3 weeks ago
From: Hans Zhang <hans.zhang@cixtech.com>

Document the bindings for CIX Sky1 PCIe Controller configured in
root complex mode with five root port.

Supports 4 INTx, MSI and MSI-x interrupts from the ARM GICv3 controller.

Signed-off-by: Hans Zhang <hans.zhang@cixtech.com>
---
 .../bindings/pci/cix,sky1-pcie-host.yaml      | 79 +++++++++++++++++++
 1 file changed, 79 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/pci/cix,sky1-pcie-host.yaml

diff --git a/Documentation/devicetree/bindings/pci/cix,sky1-pcie-host.yaml b/Documentation/devicetree/bindings/pci/cix,sky1-pcie-host.yaml
new file mode 100644
index 000000000000..2bd66603ac24
--- /dev/null
+++ b/Documentation/devicetree/bindings/pci/cix,sky1-pcie-host.yaml
@@ -0,0 +1,79 @@
+# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/pci/cix,sky1-pcie-host.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: CIX Sky1 PCIe Root Complex
+
+maintainers:
+  - Hans Zhang <hans.zhang@cixtech.com>
+
+description:
+  PCIe root complex controller based on the Cadence PCIe core.
+
+allOf:
+  - $ref: /schemas/pci/pci-host-bridge.yaml#
+
+properties:
+  compatible:
+    const: cix,sky1-pcie-host
+
+  reg:
+    items:
+      - description: PCIe controller registers.
+      - description: ECAM registers.
+      - description: Remote CIX System Unit registers.
+      - description: Region for sending messages registers.
+
+  reg-names:
+    items:
+      - const: reg
+      - const: cfg
+      - const: rcsu
+      - const: msg
+
+  ranges:
+    maxItems: 3
+
+required:
+  - compatible
+  - ranges
+  - bus-range
+  - device_type
+  - interrupt-map
+  - interrupt-map-mask
+  - msi-map
+
+unevaluatedProperties: false
+
+examples:
+  - |
+    #include <dt-bindings/interrupt-controller/arm-gic.h>
+    / {
+      #address-cells = <2>;
+      #size-cells = <2>;
+
+      pcie@a010000 {
+          compatible = "cix,sky1-pcie-host";
+          reg = <0x00 0x0a010000 0x00 0x10000>,
+                <0x00 0x2c000000 0x00 0x4000000>,
+                <0x00 0x0a000000 0x00 0x10000>,
+                <0x00 0x60000000 0x00 0x00100000>;
+          reg-names = "reg", "cfg", "rcsu", "msg";
+          ranges = <0x01000000 0x00 0x60100000 0x00 0x60100000 0x00 0x00100000>,
+                  <0x02000000 0x00 0x60200000 0x00 0x60200000 0x00 0x1fe00000>,
+                  <0x43000000 0x18 0x00000000 0x18 0x00000000 0x04 0x00000000>;
+          #address-cells = <3>;
+          #size-cells = <2>;
+          bus-range = <0xc0 0xff>;
+          device_type = "pci";
+          #interrupt-cells = <1>;
+          interrupt-map-mask = <0 0 0 0x7>;
+          interrupt-map = <0 0 0 1 &gic 0 0 GIC_SPI 407 IRQ_TYPE_LEVEL_HIGH 0>,
+                          <0 0 0 2 &gic 0 0 GIC_SPI 408 IRQ_TYPE_LEVEL_HIGH 0>,
+                          <0 0 0 3 &gic 0 0 GIC_SPI 409 IRQ_TYPE_LEVEL_HIGH 0>,
+                          <0 0 0 4 &gic 0 0 GIC_SPI 410 IRQ_TYPE_LEVEL_HIGH 0>;
+          msi-map = <0xc000 &gic_its 0xc000 0x4000>;
+      };
+    };
-- 
2.49.0
Re: [PATCH v7 08/13] dt-bindings: PCI: Add CIX Sky1 PCIe Root Complex bindings
Posted by Rob Herring 1 month, 3 weeks ago
On Wed, Aug 13, 2025 at 12:23:26PM +0800, hans.zhang@cixtech.com wrote:
> From: Hans Zhang <hans.zhang@cixtech.com>
> 
> Document the bindings for CIX Sky1 PCIe Controller configured in
> root complex mode with five root port.
> 
> Supports 4 INTx, MSI and MSI-x interrupts from the ARM GICv3 controller.
> 
> Signed-off-by: Hans Zhang <hans.zhang@cixtech.com>
> ---
>  .../bindings/pci/cix,sky1-pcie-host.yaml      | 79 +++++++++++++++++++
>  1 file changed, 79 insertions(+)
>  create mode 100644 Documentation/devicetree/bindings/pci/cix,sky1-pcie-host.yaml
> 
> diff --git a/Documentation/devicetree/bindings/pci/cix,sky1-pcie-host.yaml b/Documentation/devicetree/bindings/pci/cix,sky1-pcie-host.yaml
> new file mode 100644
> index 000000000000..2bd66603ac24
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/pci/cix,sky1-pcie-host.yaml
> @@ -0,0 +1,79 @@
> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/pci/cix,sky1-pcie-host.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: CIX Sky1 PCIe Root Complex
> +
> +maintainers:
> +  - Hans Zhang <hans.zhang@cixtech.com>
> +
> +description:
> +  PCIe root complex controller based on the Cadence PCIe core.
> +
> +allOf:
> +  - $ref: /schemas/pci/pci-host-bridge.yaml#
> +
> +properties:
> +  compatible:
> +    const: cix,sky1-pcie-host
> +
> +  reg:
> +    items:
> +      - description: PCIe controller registers.
> +      - description: ECAM registers.
> +      - description: Remote CIX System Unit registers.
> +      - description: Region for sending messages registers.
> +
> +  reg-names:
> +    items:
> +      - const: reg
> +      - const: cfg
> +      - const: rcsu
> +      - const: msg
> +
> +  ranges:
> +    maxItems: 3
> +
> +required:
> +  - compatible
> +  - ranges
> +  - bus-range
> +  - device_type
> +  - interrupt-map
> +  - interrupt-map-mask
> +  - msi-map
> +
> +unevaluatedProperties: false
> +
> +examples:
> +  - |
> +    #include <dt-bindings/interrupt-controller/arm-gic.h>
> +    / {

bus {

> +      #address-cells = <2>;
> +      #size-cells = <2>;
> +
> +      pcie@a010000 {
> +          compatible = "cix,sky1-pcie-host";
> +          reg = <0x00 0x0a010000 0x00 0x10000>,
> +                <0x00 0x2c000000 0x00 0x4000000>,
> +                <0x00 0x0a000000 0x00 0x10000>,
> +                <0x00 0x60000000 0x00 0x00100000>;
> +          reg-names = "reg", "cfg", "rcsu", "msg";
> +          ranges = <0x01000000 0x00 0x60100000 0x00 0x60100000 0x00 0x00100000>,
> +                  <0x02000000 0x00 0x60200000 0x00 0x60200000 0x00 0x1fe00000>,
> +                  <0x43000000 0x18 0x00000000 0x18 0x00000000 0x04 0x00000000>;
> +          #address-cells = <3>;
> +          #size-cells = <2>;
> +          bus-range = <0xc0 0xff>;
> +          device_type = "pci";
> +          #interrupt-cells = <1>;
> +          interrupt-map-mask = <0 0 0 0x7>;
> +          interrupt-map = <0 0 0 1 &gic 0 0 GIC_SPI 407 IRQ_TYPE_LEVEL_HIGH 0>,
> +                          <0 0 0 2 &gic 0 0 GIC_SPI 408 IRQ_TYPE_LEVEL_HIGH 0>,
> +                          <0 0 0 3 &gic 0 0 GIC_SPI 409 IRQ_TYPE_LEVEL_HIGH 0>,
> +                          <0 0 0 4 &gic 0 0 GIC_SPI 410 IRQ_TYPE_LEVEL_HIGH 0>;
> +          msi-map = <0xc000 &gic_its 0xc000 0x4000>;
> +      };
> +    };
> -- 
> 2.49.0
>
Re: [PATCH v7 08/13] dt-bindings: PCI: Add CIX Sky1 PCIe Root Complex bindings
Posted by Hans Zhang 1 month, 3 weeks ago

On 2025/8/13 23:44, Rob Herring wrote:
> EXTERNAL EMAIL
> 
> On Wed, Aug 13, 2025 at 12:23:26PM +0800, hans.zhang@cixtech.com wrote:
>> From: Hans Zhang <hans.zhang@cixtech.com>
>>
>> Document the bindings for CIX Sky1 PCIe Controller configured in
>> root complex mode with five root port.
>>
>> Supports 4 INTx, MSI and MSI-x interrupts from the ARM GICv3 controller.
>>
>> Signed-off-by: Hans Zhang <hans.zhang@cixtech.com>
>> ---
>>   .../bindings/pci/cix,sky1-pcie-host.yaml      | 79 +++++++++++++++++++
>>   1 file changed, 79 insertions(+)
>>   create mode 100644 Documentation/devicetree/bindings/pci/cix,sky1-pcie-host.yaml
>>
>> diff --git a/Documentation/devicetree/bindings/pci/cix,sky1-pcie-host.yaml b/Documentation/devicetree/bindings/pci/cix,sky1-pcie-host.yaml
>> new file mode 100644
>> index 000000000000..2bd66603ac24
>> --- /dev/null
>> +++ b/Documentation/devicetree/bindings/pci/cix,sky1-pcie-host.yaml
>> @@ -0,0 +1,79 @@
>> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
>> +%YAML 1.2
>> +---
>> +$id: http://devicetree.org/schemas/pci/cix,sky1-pcie-host.yaml#
>> +$schema: http://devicetree.org/meta-schemas/core.yaml#
>> +
>> +title: CIX Sky1 PCIe Root Complex
>> +
>> +maintainers:
>> +  - Hans Zhang <hans.zhang@cixtech.com>
>> +
>> +description:
>> +  PCIe root complex controller based on the Cadence PCIe core.
>> +
>> +allOf:
>> +  - $ref: /schemas/pci/pci-host-bridge.yaml#
>> +
>> +properties:
>> +  compatible:
>> +    const: cix,sky1-pcie-host
>> +
>> +  reg:
>> +    items:
>> +      - description: PCIe controller registers.
>> +      - description: ECAM registers.
>> +      - description: Remote CIX System Unit registers.
>> +      - description: Region for sending messages registers.
>> +
>> +  reg-names:
>> +    items:
>> +      - const: reg
>> +      - const: cfg
>> +      - const: rcsu
>> +      - const: msg
>> +
>> +  ranges:
>> +    maxItems: 3
>> +
>> +required:
>> +  - compatible
>> +  - ranges
>> +  - bus-range
>> +  - device_type
>> +  - interrupt-map
>> +  - interrupt-map-mask
>> +  - msi-map
>> +
>> +unevaluatedProperties: false
>> +
>> +examples:
>> +  - |
>> +    #include <dt-bindings/interrupt-controller/arm-gic.h>
>> +    / {
> 
> bus {

Dear Rob,

Thank you very much for your reply. I'll refer to other recent submissions.

Best regards,
Hans

> 
>> +      #address-cells = <2>;
>> +      #size-cells = <2>;
>> +
>> +      pcie@a010000 {
>> +          compatible = "cix,sky1-pcie-host";
>> +          reg = <0x00 0x0a010000 0x00 0x10000>,
>> +                <0x00 0x2c000000 0x00 0x4000000>,
>> +                <0x00 0x0a000000 0x00 0x10000>,
>> +                <0x00 0x60000000 0x00 0x00100000>;
>> +          reg-names = "reg", "cfg", "rcsu", "msg";
>> +          ranges = <0x01000000 0x00 0x60100000 0x00 0x60100000 0x00 0x00100000>,
>> +                  <0x02000000 0x00 0x60200000 0x00 0x60200000 0x00 0x1fe00000>,
>> +                  <0x43000000 0x18 0x00000000 0x18 0x00000000 0x04 0x00000000>;
>> +          #address-cells = <3>;
>> +          #size-cells = <2>;
>> +          bus-range = <0xc0 0xff>;
>> +          device_type = "pci";
>> +          #interrupt-cells = <1>;
>> +          interrupt-map-mask = <0 0 0 0x7>;
>> +          interrupt-map = <0 0 0 1 &gic 0 0 GIC_SPI 407 IRQ_TYPE_LEVEL_HIGH 0>,
>> +                          <0 0 0 2 &gic 0 0 GIC_SPI 408 IRQ_TYPE_LEVEL_HIGH 0>,
>> +                          <0 0 0 3 &gic 0 0 GIC_SPI 409 IRQ_TYPE_LEVEL_HIGH 0>,
>> +                          <0 0 0 4 &gic 0 0 GIC_SPI 410 IRQ_TYPE_LEVEL_HIGH 0>;
>> +          msi-map = <0xc000 &gic_its 0xc000 0x4000>;
>> +      };
>> +    };
>> --
>> 2.49.0
>>
Re: [PATCH v7 08/13] dt-bindings: PCI: Add CIX Sky1 PCIe Root Complex bindings
Posted by Rob Herring (Arm) 1 month, 3 weeks ago
On Wed, 13 Aug 2025 12:23:26 +0800, hans.zhang@cixtech.com wrote:
> From: Hans Zhang <hans.zhang@cixtech.com>
> 
> Document the bindings for CIX Sky1 PCIe Controller configured in
> root complex mode with five root port.
> 
> Supports 4 INTx, MSI and MSI-x interrupts from the ARM GICv3 controller.
> 
> Signed-off-by: Hans Zhang <hans.zhang@cixtech.com>
> ---
>  .../bindings/pci/cix,sky1-pcie-host.yaml      | 79 +++++++++++++++++++
>  1 file changed, 79 insertions(+)
>  create mode 100644 Documentation/devicetree/bindings/pci/cix,sky1-pcie-host.yaml
> 

My bot found errors running 'make dt_binding_check' on your patch:

yamllint warnings/errors:

dtschema/dtc warnings/errors:
/builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/pci/cix,sky1-pcie-host.example.dtb: /: 'compatible' is a required property
	from schema $id: http://devicetree.org/schemas/root-node.yaml#
/builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/pci/cix,sky1-pcie-host.example.dtb: /: 'model' is a required property
	from schema $id: http://devicetree.org/schemas/root-node.yaml#

doc reference errors (make refcheckdocs):

See https://patchwork.ozlabs.org/project/devicetree-bindings/patch/20250813042331.1258272-9-hans.zhang@cixtech.com

The base for the series is generally the latest rc1. A different dependency
should be noted in *this* patch.

If you already ran 'make dt_binding_check' and didn't see the above
error(s), then make sure 'yamllint' is installed and dt-schema is up to
date:

pip3 install dtschema --upgrade

Please check and re-submit after running the above command yourself. Note
that DT_SCHEMA_FILES can be set to your schema file to speed up checking
your schema. However, it must be unset to test all examples with your schema.
Re: [PATCH v7 08/13] dt-bindings: PCI: Add CIX Sky1 PCIe Root Complex bindings
Posted by Hans Zhang 1 month, 3 weeks ago

On 2025/8/13 16:31, Rob Herring (Arm) wrote:
> EXTERNAL EMAIL
> 
> On Wed, 13 Aug 2025 12:23:26 +0800, hans.zhang@cixtech.com wrote:
>> From: Hans Zhang <hans.zhang@cixtech.com>
>>
>> Document the bindings for CIX Sky1 PCIe Controller configured in
>> root complex mode with five root port.
>>
>> Supports 4 INTx, MSI and MSI-x interrupts from the ARM GICv3 controller.
>>
>> Signed-off-by: Hans Zhang <hans.zhang@cixtech.com>
>> ---
>>   .../bindings/pci/cix,sky1-pcie-host.yaml      | 79 +++++++++++++++++++
>>   1 file changed, 79 insertions(+)
>>   create mode 100644 Documentation/devicetree/bindings/pci/cix,sky1-pcie-host.yaml
>>
> 
> My bot found errors running 'make dt_binding_check' on your patch:
> 
> yamllint warnings/errors:
> 
> dtschema/dtc warnings/errors:
> /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/pci/cix,sky1-pcie-host.example.dtb: /: 'compatible' is a required property
>          from schema $id: http://devicetree.org/schemas/root-node.yaml#
> /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/pci/cix,sky1-pcie-host.example.dtb: /: 'model' is a required property
>          from schema $id: http://devicetree.org/schemas/root-node.yaml#
> 
> doc reference errors (make refcheckdocs):
> 
> See https://patchwork.ozlabs.org/project/devicetree-bindings/patch/20250813042331.1258272-9-hans.zhang@cixtech.com
> 
> The base for the series is generally the latest rc1. A different dependency
> should be noted in *this* patch.
> 
> If you already ran 'make dt_binding_check' and didn't see the above
> error(s), then make sure 'yamllint' is installed and dt-schema is up to
> date:
> 
> pip3 install dtschema --upgrade
> 
> Please check and re-submit after running the above command yourself. Note
> that DT_SCHEMA_FILES can be set to your schema file to speed up checking
> your schema. However, it must be unset to test all examples with your schema.
> 

Dear Rob,

I'm very sorry. No errors were detected on my PC. I'll check my local 
environment and fix this issue in the next version.

If I have done anything wrong, please remind me.



hans@hans:~/code/kernel_org/linux$ export 
CROSS_COMPILE=/home/hans/cix/bringup_master/tools/gcc/arm-gnu-toolchain-12.3.rel1-x86_64-aarch64-none-linux-gnu/arm-gnu-toolchain-12.3.rel1-x86_64-aarch64-none-linux-gnu/bin/aarch64-none-linux-gnu-
hans@hans:~/code/kernel_org/linux$ export ARCH=arm64
hans@hans:~/code/kernel_org/linux$ make dt_binding_check 
DT_SCHEMA_FILES=Documentation/devicetree/bindings/pci/cix,sky1-pcie-host.yaml
   SCHEMA  Documentation/devicetree/bindings/processed-schema.json
   CHKDT   ./Documentation/devicetree/bindings
   LINT    ./Documentation/devicetree/bindings
   DTEX 
Documentation/devicetree/bindings/pci/cix,sky1-pcie-host.example.dts
   DTC [C] 
Documentation/devicetree/bindings/pci/cix,sky1-pcie-host.example.dtb
hans@hans:~/code/kernel_org/linux$ make W=1 dt_binding_check 
DT_SCHEMA_FILES=Documentation/devicetree/bindings/pci/cix,sky1-pcie-host.yaml
hans@hans:~/code/kernel_org/linux$ pip3 install dtschema --upgrade
Defaulting to user installation because normal site-packages is not 
writeable
Requirement already satisfied: dtschema in 
/home/hans/.local/lib/python3.10/site-packages (2025.6.1)
Collecting dtschema
   Downloading dtschema-2025.8-py3-none-any.whl.metadata (7.9 kB)
Requirement already satisfied: ruamel.yaml>0.15.69 in 
/home/hans/.local/lib/python3.10/site-packages (from dtschema) (0.18.14)
Requirement already satisfied: jsonschema<4.18,>=4.1.2 in 
/home/hans/.local/lib/python3.10/site-packages (from dtschema) (4.17.3)
Requirement already satisfied: rfc3987 in 
/home/hans/.local/lib/python3.10/site-packages (from dtschema) (1.3.8)
Requirement already satisfied: pylibfdt in 
/home/hans/.local/lib/python3.10/site-packages (from dtschema) (1.7.2.post1)
Requirement already satisfied: attrs>=17.4.0 in 
/home/hans/.local/lib/python3.10/site-packages (from 
jsonschema<4.18,>=4.1.2->dtschema) (25.3.0)
Requirement already satisfied: 
pyrsistent!=0.17.0,!=0.17.1,!=0.17.2,>=0.14.0 in 
/home/hans/.local/lib/python3.10/site-packages (from 
jsonschema<4.18,>=4.1.2->dtschema) (0.20.0)
Requirement already satisfied: ruamel.yaml.clib>=0.2.7 in 
/home/hans/.local/lib/python3.10/site-packages (from 
ruamel.yaml>0.15.69->dtschema) (0.2.12)
Downloading dtschema-2025.8-py3-none-any.whl (120 kB)
Installing collected packages: dtschema
   Attempting uninstall: dtschema
     Found existing installation: dtschema 2025.6.1
     Uninstalling dtschema-2025.6.1:
       Successfully uninstalled dtschema-2025.6.1
Successfully installed dtschema-2025.8

[notice] A new release of pip is available: 25.1.1 -> 25.2
[notice] To update, run: python3 -m pip install --upgrade pip
hans@hans:~/code/kernel_org/linux$ make dt_binding_check 
DT_SCHEMA_FILES=Documentation/devicetree/bindings/pci/cix,sky1-pcie-host.yaml
hans@hans:~/code/kernel_org/linux$ make refcheckdocs
Documentation/userspace-api/netlink/netlink-raw.rst: 
:doc:`rt-link<../../networking/netlink_spec/rt-link>`
Documentation/userspace-api/netlink/netlink-raw.rst: 
:doc:`tc<../../networking/netlink_spec/tc>`
Documentation/userspace-api/netlink/netlink-raw.rst: 
:doc:`tc<../../networking/netlink_spec/tc>`
Documentation/devicetree/bindings/regulator/siliconmitus,sm5703-regulator.yaml: 
Documentation/devicetree/bindings/mfd/siliconmitus,sm5703.yaml
Documentation/devicetree/bindings/remoteproc/ti,keystone-rproc.txt: 
Documentation/devicetree/bindings/gpio/gpio-dsp-keystone.txt
Documentation/hwmon/g762.rst: 
Documentation/devicetree/bindings/hwmon/g762.txt
Documentation/trace/rv/da_monitor_instrumentation.rst: 
Documentation/trace/rv/da_monitor_synthesis.rst
Documentation/translations/ja_JP/SubmittingPatches: 
linux-2.6.12-vanilla/Documentation/dontdiff
Documentation/translations/ja_JP/process/submit-checklist.rst: 
Documentation/translations/ja_JP/SubmitChecklist
Documentation/translations/zh_CN/admin-guide/README.rst: 
Documentation/dev-tools/kgdb.rst
Documentation/translations/zh_CN/dev-tools/gdb-kernel-debugging.rst: 
Documentation/dev-tools/gdb-kernel-debugging.rst
Documentation/translations/zh_CN/how-to.rst: Documentation/xxx/xxx.rst
Documentation/translations/zh_TW/admin-guide/README.rst: 
Documentation/dev-tools/kgdb.rst
Documentation/translations/zh_TW/dev-tools/gdb-kernel-debugging.rst: 
Documentation/dev-tools/gdb-kernel-debugging.rst
Documentation/userspace-api/netlink/index.rst: 
Documentation/networking/netlink_spec/index.rst
Documentation/userspace-api/netlink/specs.rst: 
Documentation/networking/netlink_spec/index.rst
arch/riscv/kernel/kexec_image.c: Documentation/riscv/boot-image-header.rst
drivers/clocksource/timer-armada-370-xp.c: 
Documentation/devicetree/bindings/timer/marvell,armada-370-xp-timer.txt
include/rv/da_monitor.h: Documentation/trace/rv/da_monitor_synthesis.rst


Best regards,
Hans
Re: [PATCH v7 08/13] dt-bindings: PCI: Add CIX Sky1 PCIe Root Complex bindings
Posted by Krzysztof Kozlowski 1 month, 3 weeks ago
On 13/08/2025 11:12, Hans Zhang wrote:
> 
> 
> On 2025/8/13 16:31, Rob Herring (Arm) wrote:
>> EXTERNAL EMAIL
>>
>> On Wed, 13 Aug 2025 12:23:26 +0800, hans.zhang@cixtech.com wrote:
>>> From: Hans Zhang <hans.zhang@cixtech.com>
>>>
>>> Document the bindings for CIX Sky1 PCIe Controller configured in
>>> root complex mode with five root port.
>>>
>>> Supports 4 INTx, MSI and MSI-x interrupts from the ARM GICv3 controller.
>>>
>>> Signed-off-by: Hans Zhang <hans.zhang@cixtech.com>
>>> ---
>>>   .../bindings/pci/cix,sky1-pcie-host.yaml      | 79 +++++++++++++++++++
>>>   1 file changed, 79 insertions(+)
>>>   create mode 100644 Documentation/devicetree/bindings/pci/cix,sky1-pcie-host.yaml
>>>
>>
>> My bot found errors running 'make dt_binding_check' on your patch:
>>
>> yamllint warnings/errors:
>>
>> dtschema/dtc warnings/errors:
>> /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/pci/cix,sky1-pcie-host.example.dtb: /: 'compatible' is a required property
>>          from schema $id: http://devicetree.org/schemas/root-node.yaml#
>> /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/pci/cix,sky1-pcie-host.example.dtb: /: 'model' is a required property
>>          from schema $id: http://devicetree.org/schemas/root-node.yaml#
>>
>> doc reference errors (make refcheckdocs):
>>
>> See https://patchwork.ozlabs.org/project/devicetree-bindings/patch/20250813042331.1258272-9-hans.zhang@cixtech.com
>>
>> The base for the series is generally the latest rc1. A different dependency
>> should be noted in *this* patch.
>>
>> If you already ran 'make dt_binding_check' and didn't see the above
>> error(s), then make sure 'yamllint' is installed and dt-schema is up to
>> date:
>>
>> pip3 install dtschema --upgrade
>>
>> Please check and re-submit after running the above command yourself. Note
>> that DT_SCHEMA_FILES can be set to your schema file to speed up checking
>> your schema. However, it must be unset to test all examples with your schema.
>>
> 
> Dear Rob,
> 
> I'm very sorry. No errors were detected on my PC. I'll check my local 
> environment and fix this issue in the next version.
> 
> If I have done anything wrong, please remind me.

Your code is not correct. You are not supposed to have there root node.
Please open ANY (most recent preferably) other binding and look how it
is done there.

Best regards,
Krzysztof
Re: [PATCH v7 08/13] dt-bindings: PCI: Add CIX Sky1 PCIe Root Complex bindings
Posted by Hans Zhang 1 month, 3 weeks ago

On 2025/8/14 03:08, Krzysztof Kozlowski wrote:
> EXTERNAL EMAIL
> 
> On 13/08/2025 11:12, Hans Zhang wrote:
>>
>>
>> On 2025/8/13 16:31, Rob Herring (Arm) wrote:
>>> EXTERNAL EMAIL
>>>
>>> On Wed, 13 Aug 2025 12:23:26 +0800, hans.zhang@cixtech.com wrote:
>>>> From: Hans Zhang <hans.zhang@cixtech.com>
>>>>
>>>> Document the bindings for CIX Sky1 PCIe Controller configured in
>>>> root complex mode with five root port.
>>>>
>>>> Supports 4 INTx, MSI and MSI-x interrupts from the ARM GICv3 controller.
>>>>
>>>> Signed-off-by: Hans Zhang <hans.zhang@cixtech.com>
>>>> ---
>>>>    .../bindings/pci/cix,sky1-pcie-host.yaml      | 79 +++++++++++++++++++
>>>>    1 file changed, 79 insertions(+)
>>>>    create mode 100644 Documentation/devicetree/bindings/pci/cix,sky1-pcie-host.yaml
>>>>
>>>
>>> My bot found errors running 'make dt_binding_check' on your patch:
>>>
>>> yamllint warnings/errors:
>>>
>>> dtschema/dtc warnings/errors:
>>> /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/pci/cix,sky1-pcie-host.example.dtb: /: 'compatible' is a required property
>>>           from schema $id: http://devicetree.org/schemas/root-node.yaml#
>>> /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/pci/cix,sky1-pcie-host.example.dtb: /: 'model' is a required property
>>>           from schema $id: http://devicetree.org/schemas/root-node.yaml#
>>>
>>> doc reference errors (make refcheckdocs):
>>>
>>> See https://patchwork.ozlabs.org/project/devicetree-bindings/patch/20250813042331.1258272-9-hans.zhang@cixtech.com
>>>
>>> The base for the series is generally the latest rc1. A different dependency
>>> should be noted in *this* patch.
>>>
>>> If you already ran 'make dt_binding_check' and didn't see the above
>>> error(s), then make sure 'yamllint' is installed and dt-schema is up to
>>> date:
>>>
>>> pip3 install dtschema --upgrade
>>>
>>> Please check and re-submit after running the above command yourself. Note
>>> that DT_SCHEMA_FILES can be set to your schema file to speed up checking
>>> your schema. However, it must be unset to test all examples with your schema.
>>>
>>
>> Dear Rob,
>>
>> I'm very sorry. No errors were detected on my PC. I'll check my local
>> environment and fix this issue in the next version.
>>
>> If I have done anything wrong, please remind me.
> 
> Your code is not correct. You are not supposed to have there root node.
> Please open ANY (most recent preferably) other binding and look how it
> is done there.
> 

Dear Krzysztof,

Thank you very much for your reply.

I found a recent reference example, which will be fixed in the next version.

Documentation/devicetree/bindings/pci/sophgo,sg2044-pcie.yaml

Best regards,
Hans
Re: [PATCH v7 08/13] dt-bindings: PCI: Add CIX Sky1 PCIe Root Complex bindings
Posted by Rob Herring 1 month, 3 weeks ago
On Wed, Aug 13, 2025 at 05:12:57PM +0800, Hans Zhang wrote:
> 
> 
> On 2025/8/13 16:31, Rob Herring (Arm) wrote:
> > EXTERNAL EMAIL
> > 
> > On Wed, 13 Aug 2025 12:23:26 +0800, hans.zhang@cixtech.com wrote:
> > > From: Hans Zhang <hans.zhang@cixtech.com>
> > > 
> > > Document the bindings for CIX Sky1 PCIe Controller configured in
> > > root complex mode with five root port.
> > > 
> > > Supports 4 INTx, MSI and MSI-x interrupts from the ARM GICv3 controller.
> > > 
> > > Signed-off-by: Hans Zhang <hans.zhang@cixtech.com>
> > > ---
> > >   .../bindings/pci/cix,sky1-pcie-host.yaml      | 79 +++++++++++++++++++
> > >   1 file changed, 79 insertions(+)
> > >   create mode 100644 Documentation/devicetree/bindings/pci/cix,sky1-pcie-host.yaml
> > > 
> > 
> > My bot found errors running 'make dt_binding_check' on your patch:
> > 
> > yamllint warnings/errors:
> > 
> > dtschema/dtc warnings/errors:
> > /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/pci/cix,sky1-pcie-host.example.dtb: /: 'compatible' is a required property
> >          from schema $id: http://devicetree.org/schemas/root-node.yaml#
> > /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/pci/cix,sky1-pcie-host.example.dtb: /: 'model' is a required property
> >          from schema $id: http://devicetree.org/schemas/root-node.yaml#
> > 
> > doc reference errors (make refcheckdocs):
> > 
> > See https://patchwork.ozlabs.org/project/devicetree-bindings/patch/20250813042331.1258272-9-hans.zhang@cixtech.com
> > 
> > The base for the series is generally the latest rc1. A different dependency
> > should be noted in *this* patch.
> > 
> > If you already ran 'make dt_binding_check' and didn't see the above
> > error(s), then make sure 'yamllint' is installed and dt-schema is up to
> > date:
> > 
> > pip3 install dtschema --upgrade
> > 
> > Please check and re-submit after running the above command yourself. Note
> > that DT_SCHEMA_FILES can be set to your schema file to speed up checking
> > your schema. However, it must be unset to test all examples with your schema.
> > 
> 
> Dear Rob,
> 
> I'm very sorry. No errors were detected on my PC. I'll check my local
> environment and fix this issue in the next version.
> 
> If I have done anything wrong, please remind me.
> 
> 
> 
> hans@hans:~/code/kernel_org/linux$ export CROSS_COMPILE=/home/hans/cix/bringup_master/tools/gcc/arm-gnu-toolchain-12.3.rel1-x86_64-aarch64-none-linux-gnu/arm-gnu-toolchain-12.3.rel1-x86_64-aarch64-none-linux-gnu/bin/aarch64-none-linux-gnu-
> hans@hans:~/code/kernel_org/linux$ export ARCH=arm64
> hans@hans:~/code/kernel_org/linux$ make dt_binding_check
> DT_SCHEMA_FILES=Documentation/devicetree/bindings/pci/cix,sky1-pcie-host.yaml
>   SCHEMA  Documentation/devicetree/bindings/processed-schema.json
>   CHKDT   ./Documentation/devicetree/bindings
>   LINT    ./Documentation/devicetree/bindings
>   DTEX Documentation/devicetree/bindings/pci/cix,sky1-pcie-host.example.dts
>   DTC [C]
> Documentation/devicetree/bindings/pci/cix,sky1-pcie-host.example.dtb
> hans@hans:~/code/kernel_org/linux$ make W=1 dt_binding_check
> DT_SCHEMA_FILES=Documentation/devicetree/bindings/pci/cix,sky1-pcie-host.yaml

DT_SCHEMA_FILES limits testing to only the matching pattern. 
Ultimately, you have to test without it.

Rob
Re: [PATCH v7 08/13] dt-bindings: PCI: Add CIX Sky1 PCIe Root Complex bindings
Posted by Hans Zhang 1 month, 3 weeks ago

On 2025/8/13 23:43, Rob Herring wrote:
> EXTERNAL EMAIL
> 
> On Wed, Aug 13, 2025 at 05:12:57PM +0800, Hans Zhang wrote:
>>
>>
>> On 2025/8/13 16:31, Rob Herring (Arm) wrote:
>>> EXTERNAL EMAIL
>>>
>>> On Wed, 13 Aug 2025 12:23:26 +0800, hans.zhang@cixtech.com wrote:
>>>> From: Hans Zhang <hans.zhang@cixtech.com>
>>>>
>>>> Document the bindings for CIX Sky1 PCIe Controller configured in
>>>> root complex mode with five root port.
>>>>
>>>> Supports 4 INTx, MSI and MSI-x interrupts from the ARM GICv3 controller.
>>>>
>>>> Signed-off-by: Hans Zhang <hans.zhang@cixtech.com>
>>>> ---
>>>>    .../bindings/pci/cix,sky1-pcie-host.yaml      | 79 +++++++++++++++++++
>>>>    1 file changed, 79 insertions(+)
>>>>    create mode 100644 Documentation/devicetree/bindings/pci/cix,sky1-pcie-host.yaml
>>>>
>>>
>>> My bot found errors running 'make dt_binding_check' on your patch:
>>>
>>> yamllint warnings/errors:
>>>
>>> dtschema/dtc warnings/errors:
>>> /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/pci/cix,sky1-pcie-host.example.dtb: /: 'compatible' is a required property
>>>           from schema $id: http://devicetree.org/schemas/root-node.yaml#
>>> /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/pci/cix,sky1-pcie-host.example.dtb: /: 'model' is a required property
>>>           from schema $id: http://devicetree.org/schemas/root-node.yaml#
>>>
>>> doc reference errors (make refcheckdocs):
>>>
>>> See https://patchwork.ozlabs.org/project/devicetree-bindings/patch/20250813042331.1258272-9-hans.zhang@cixtech.com
>>>
>>> The base for the series is generally the latest rc1. A different dependency
>>> should be noted in *this* patch.
>>>
>>> If you already ran 'make dt_binding_check' and didn't see the above
>>> error(s), then make sure 'yamllint' is installed and dt-schema is up to
>>> date:
>>>
>>> pip3 install dtschema --upgrade
>>>
>>> Please check and re-submit after running the above command yourself. Note
>>> that DT_SCHEMA_FILES can be set to your schema file to speed up checking
>>> your schema. However, it must be unset to test all examples with your schema.
>>>
>>
>> Dear Rob,
>>
>> I'm very sorry. No errors were detected on my PC. I'll check my local
>> environment and fix this issue in the next version.
>>
>> If I have done anything wrong, please remind me.
>>
>>
>>
>> hans@hans:~/code/kernel_org/linux$ export CROSS_COMPILE=/home/hans/cix/bringup_master/tools/gcc/arm-gnu-toolchain-12.3.rel1-x86_64-aarch64-none-linux-gnu/arm-gnu-toolchain-12.3.rel1-x86_64-aarch64-none-linux-gnu/bin/aarch64-none-linux-gnu-
>> hans@hans:~/code/kernel_org/linux$ export ARCH=arm64
>> hans@hans:~/code/kernel_org/linux$ make dt_binding_check
>> DT_SCHEMA_FILES=Documentation/devicetree/bindings/pci/cix,sky1-pcie-host.yaml
>>    SCHEMA  Documentation/devicetree/bindings/processed-schema.json
>>    CHKDT   ./Documentation/devicetree/bindings
>>    LINT    ./Documentation/devicetree/bindings
>>    DTEX Documentation/devicetree/bindings/pci/cix,sky1-pcie-host.example.dts
>>    DTC [C]
>> Documentation/devicetree/bindings/pci/cix,sky1-pcie-host.example.dtb
>> hans@hans:~/code/kernel_org/linux$ make W=1 dt_binding_check
>> DT_SCHEMA_FILES=Documentation/devicetree/bindings/pci/cix,sky1-pcie-host.yaml
> 
> DT_SCHEMA_FILES limits testing to only the matching pattern.
> Ultimately, you have to test without it.
> 

Dear Rob,

Thank you very much for your reply and reminder. I will check it 
carefully again.

Best regards,
Hans