Skip to content

soc: ambiq: adjust init process #90909

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

swift-tk
Copy link
Collaborator

split soc init into two parts as it is too large to be up front at early stages.

return 0;
}

SYS_INIT(apollo5x_init, PRE_KERNEL_1, 0);
Copy link
Collaborator

Choose a reason for hiding this comment

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

use soc hooks

Copy link
Collaborator Author

@swift-tk swift-tk Jun 4, 2025

Choose a reason for hiding this comment

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

This is another attempt to try fix #90777 as we have too much stuff be putting into early init hook. There seems to be no other way as modifying thread.c or simply making the dummy bigger is not the way to go…

Copy link
Collaborator

Choose a reason for hiding this comment

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

Too much stuff how? This goes against the idea of what soc hooks were introduced for @nashif

Copy link
Collaborator Author

@swift-tk swift-tk Jun 4, 2025

Choose a reason for hiding this comment

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

Too much stuff how? This goes against the idea of what soc hooks were introduced for @nashif

Our low power init function and its calling functions occupy too much ROM space, it gets to the point that the literals used by the ldr instruction in thread.c gets pushed too far away from its caller. Then the offset out of range error is emitted.

I think it is also inappropriate to run large amount of code in the early init hook. @nashif Is this correct?

Copy link
Member

Choose a reason for hiding this comment

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

no, you can do pretty much whatever you want in the hooks as long you have the right dependencies in place.

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

no, you can do pretty much whatever you want in the hooks as long you have the right dependencies in place.

okay, then can we split it for now, in order to get around the build failure… We don’t have a lot of choice here.. and it is blocking all our PR for apollo5 platform.

split soc init into two parts as it is too large to be up front at early
stages.

Signed-off-by: Swift Tian <[email protected]>
@swift-tk swift-tk marked this pull request as ready for review June 6, 2025 04:51
@github-actions github-actions bot added the platform: Ambiq Ambiq label Jun 6, 2025
@swift-tk
Copy link
Collaborator Author

swift-tk commented Jun 6, 2025

Can we get this in? The CI fail #90777 becomes a blocker for all our PRs.

Copy link

sonarqubecloud bot commented Jun 6, 2025

Copy link
Member

@stephanosio stephanosio left a comment

Choose a reason for hiding this comment

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

This should be unnecessary after #92569

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants