Skip to content
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

build(deps): Bump arm-gic from 0.1.2 to 0.2.1 #1617

Open
wants to merge 3 commits into
base: main
Choose a base branch
from

Conversation

dependabot[bot]
Copy link
Contributor

@dependabot dependabot bot commented on behalf of github Feb 24, 2025

Bumps arm-gic from 0.1.2 to 0.2.1.

Release notes

Sourced from arm-gic's releases.

0.2.1

Bugfixes

  • Fixed docs.rs build.

0.2.0

Breaking changes

  • IntId and Trigger moved to top-level module, as they are shared with GICv2 driver.
  • Added support for multiple cores. GicV3::new now takes the CPU count and redistributor stride, and various other method take a cpu index.

Bugfixes

  • Fixed GicV3::setup not to write to GICD IGROUPR[0].
  • Fixed GicV3::enable_interrupt not to write to GICD for private interrupt IDs.
  • Return None from get_and_acknowledge_interrupt for SPECIAL_NONE.

Improvements

  • Added more interrupt types to IntId, and public constants for number of each type.
  • Added constants to IntId for special interrupt IDs.
  • Added methods to read type register and its fields.
  • Added set_group, redistributor_mark_core_awake and other methods to GicV3.
  • Added support for GICv2 in a separate GicV2 driver.
  • Added support for aarch32.
Changelog

Sourced from arm-gic's changelog.

0.2.1

Bugfixes

  • Fixed docs.rs build.

0.2.0

Breaking changes

  • IntId and Trigger moved to top-level module, as they are shared with GICv2 driver.
  • Added support for multiple cores. GicV3::new now takes the CPU count and redistributor stride, and various other method take a cpu index.

Bugfixes

  • Fixed GicV3::setup not to write to GICD IGROUPR[0].
  • Fixed GicV3::enable_interrupt not to write to GICD for private interrupt IDs.
  • Return None from get_and_acknowledge_interrupt for SPECIAL_NONE.

Improvements

  • Added more interrupt types to IntId, and public constants for number of each type.
  • Added constants to IntId for special interrupt IDs.
  • Added methods to read type register and its fields.
  • Added set_group, redistributor_mark_core_awake and other methods to GicV3.
  • Added support for GICv2 in a separate GicV2 driver.
  • Added support for aarch32.
Commits
  • 4a0cc95 Prepare for 0.2.1 release.
  • 8a566c0 Fix docs.rs build.
  • d2a582c Remove a keyword from Cargo.toml.
  • dcc7e79 Prepare for 0.2.0 release.
  • 0d1c193 Merge pull request #37 from google/typer
  • 01b1316 Add Typer wrapper type for GICv2 too.
  • 2868e46 Fix clippy lint warnings.
  • db52249 Merge pull request #36 from google/multicore
  • b46d2b3 Add to changelog.
  • d23f49d Pass base address and stride for redistributors.
  • Additional commits viewable in compare view

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

@dependabot dependabot bot added dependencies Pull requests that update a dependency file rust Pull requests that update Rust code labels Feb 24, 2025
@dependabot dependabot bot force-pushed the dependabot/cargo/arm-gic-0.2.1 branch 3 times, most recently from 1b8b024 to cc7e830 Compare February 25, 2025 09:52
@stlankes stlankes force-pushed the dependabot/cargo/arm-gic-0.2.1 branch from 56ff516 to 6380f69 Compare February 25, 2025 19:33
@stlankes stlankes requested a review from fstracke February 25, 2025 19:34
Copy link
Contributor

@fstracke fstracke left a comment

Choose a reason for hiding this comment

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

You were a little faster than I was. I also fixed the issues, using the cpuid in all calls to the gic interface. This should work for the moment, however. I can rebase my changes in another pr.

gicd_address.as_mut_ptr(),
gicc_address.as_mut_ptr(),
1,
0x20000,
Copy link
Contributor

Choose a reason for hiding this comment

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

I think it is better to set the stride as 0 in the default case, as it represents the offset to the next redistributor interface. It shouldn't change the behaviour, however.

Copy link
Contributor

Choose a reason for hiding this comment

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

Yes, I agree

@@ -320,22 +328,22 @@ pub(crate) fn init() {
} else {
panic!("Invalid interrupt type");
};
gic.set_interrupt_priority(timer_irqid, 0x00);
gic.set_interrupt_priority(timer_irqid, Some(0), 0x00);
Copy link
Contributor

Choose a reason for hiding this comment

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

This hard-defaults core 0 as the interrupt handling core. Will probably work, but disables all other cores from recieving PPIs in an smp environment.

Copy link
Contributor

@stlankes stlankes Feb 26, 2025

Choose a reason for hiding this comment

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

Yes, I thought that also the current solution use core 0 and in the future we have to find a better solution

dependabot bot and others added 3 commits February 26, 2025 10:33
Bumps [arm-gic](https://github.com/google/arm-gic) from 0.1.2 to 0.2.1.
- [Release notes](https://github.com/google/arm-gic/releases)
- [Changelog](https://github.com/google/arm-gic/blob/main/CHANGELOG.md)
- [Commits](google/arm-gic@0.1.2...0.2.1)

---
updated-dependencies:
- dependency-name: arm-gic
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
- Initialize gic to support 1 processor
@stlankes stlankes force-pushed the dependabot/cargo/arm-gic-0.2.1 branch from 66ac0de to ebd9f6f Compare February 26, 2025 09:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dependencies Pull requests that update a dependency file rust Pull requests that update Rust code
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants