Skip to content

arm/arm64: dts: adi: sc59x: fix I2C and CRC nodes#3209

Open
jiez wants to merge 4 commits intoadsp-6.12.0-yfrom
3198-i2c-and-crc-nodes-missing-in-adsp-sc59x-devicetrees
Open

arm/arm64: dts: adi: sc59x: fix I2C and CRC nodes#3209
jiez wants to merge 4 commits intoadsp-6.12.0-yfrom
3198-i2c-and-crc-nodes-missing-in-adsp-sc59x-devicetrees

Conversation

@jiez
Copy link
Copy Markdown

@jiez jiez commented Mar 25, 2026

This patch does the following:

  • sc594-som.dtsi and sc598-som.dtsi: remove useless code

  • sc59x.dtsi: add i2c3/4/5 nodes; fix register block length in i2c controller nodes; fix register block base address, register block length, interrupt number in crc0 and crc1 nodes; add crc2 and crc3.

  • sc59x-64.dtsi: fix register block length for crc0 and crc1; add crc2 and crc3; add crc2_dma and crc3_dma in crc_cluster.

PR Description

  • Please replace this comment with a summary of your changes, and add any context
    necessary to understand them. List any dependencies required for this change.
  • To check the checkboxes below, insert a 'x' between square brackets (without
    any space), or simply check them after publishing the PR.
  • If you changes include a breaking change, please specify dependent PRs in the
    description and try to push all related PRs simultaneously.

PR Type

  • Bug fix (a change that fixes an issue)
  • New feature (a change that adds new functionality)
  • Breaking change (a change that affects other repos or cause CIs to fail)

PR Checklist

  • I have conducted a self-review of my own code changes
  • I have compiled my changes, including the documentation
  • I have tested the changes on the relevant hardware
  • I have updated the documentation outside this repo accordingly
  • I have provided links for the relevant upstream lore

@jiez jiez requested review from a team, ozan956 and pamolloy March 25, 2026 21:36
@jiez jiez force-pushed the 3198-i2c-and-crc-nodes-missing-in-adsp-sc59x-devicetrees branch from 661c0b1 to 951725d Compare March 25, 2026 21:39
@pamolloy pamolloy added this to ADSP Mar 26, 2026
can0 = &can0;
can1 = &can1;
rtc0 = &rtc0;
*/
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you also look for other commented blocks like this and clean them up? 🙏

crypto_crc_poly = <0x5c5c5c5c>;
status = "disabled";
};

Copy link
Copy Markdown
Collaborator

@pamolloy pamolloy Mar 26, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please split the CRC changes into a separate commit. How did you come across the fact that the addresses were wrong and that there are two missing nodes? Is this the same in U-Boot? And where did you get the new interrupt numbers?

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Because 0x31001200 is the base address of i2c5. So crc0 cannot have the same base address. When looking for the correct address in the manuals, I noticed that sc59x has 4 CRC devices while sc57x and sc58x have only 2. U-Boot does not have CRC devices in sc5xx devicetree files. All information are from the latest processor hardware reference manuals.

Copy link
Copy Markdown
Collaborator

@nunojsa nunojsa left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

On top of Philip's comments, we should have one patch for ARM and another for arm64.

@jiez
Copy link
Copy Markdown
Author

jiez commented Mar 26, 2026

On top of Philip's comments, we should have one patch for ARM and another for arm64.

Why?

@nunojsa
Copy link
Copy Markdown
Collaborator

nunojsa commented Mar 26, 2026

Basically because in linux we want self contained commits when possible. Like per arch, subystem, file... It likely does not apply/matter here but imagine you wanted to backport, apply this commit somewhere else only on ARM. You would need to take care about the arm64 changes.

@jiez
Copy link
Copy Markdown
Author

jiez commented Mar 26, 2026

Basically because in linux we want self contained commits when possible. Like per arch, subystem, file... It likely does not apply/matter here but imagine you wanted to backport, apply this commit somewhere else only on ARM. You would need to take care about the arm64 changes.

I don't see the possibility of this scenario. In what situation we will want to backport this change only on ARM but not ARM64?

@nunojsa
Copy link
Copy Markdown
Collaborator

nunojsa commented Mar 26, 2026

I don't see the possibility of this scenario. In what situation we will want to backport this change only on ARM but not ARM64?

As I said, "...It likely does not apply/matter here...". But this is about processes and best practices. Up to you and Philip anyways 🤷‍♂️

jiez added 4 commits March 26, 2026 14:59
This patch does the following:

  - sc594-som.dtsi: remove useless code

  - sc59x.dtsi: fix register block base address, register block length,
    interrupt number in crc0 and crc1 nodes; add crc2 and crc3.

Signed-off-by: Jie Zhang <jie.zhang@analog.com>
Fix register block length for crc0 and crc1. Add crc2 and crc3.
Add crc2_dma and crc3_dma in crc_cluster.

Signed-off-by: Jie Zhang <jie.zhang@analog.com>
This patch does the following:

  - sc594-som.dtsi: remove useless code

  - sc59x.dtsi: add i2c3/4/5 nodes; fix register block length in i2c
    controller nodes.

Signed-off-by: Jie Zhang <jie.zhang@analog.com>
Remove useless code from sc598-som.dtsi.

Signed-off-by: Jie Zhang <jie.zhang@analog.com>
@jiez jiez force-pushed the 3198-i2c-and-crc-nodes-missing-in-adsp-sc59x-devicetrees branch from 951725d to f1c2c1d Compare March 26, 2026 21:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: No status

Development

Successfully merging this pull request may close these issues.

3 participants