Skip to content
New issue

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

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

Already on GitHub? # to your account

hw: Add SMP support to boot ROM #58

Merged
merged 7 commits into from
Aug 3, 2023
Merged

hw: Add SMP support to boot ROM #58

merged 7 commits into from
Aug 3, 2023

Conversation

niwis
Copy link
Contributor

@niwis niwis commented Aug 2, 2023

Add SMP support in the bootrom. In particular,

  • pause all harts except 0 at the beginning of the bootrom,
  • let all harts jump to next boot stage after hart 0 finished bootrom,
  • park all harts except 0 at the beginning of crt0 for now (to be extended).

To facilitate this,

  • increase the number of scratch registers from 4 to 16 (e.g. for boot address synchronisation),
  • add a register containing the number of harts.

niwis added 3 commits August 2, 2023 18:14
- Pause all harts except 0 at the beginning of the bootrom
- Let all harts jump to next boot stage after hart 0 finished bootrom
- Park all harts except 0 at the beginning of crt0 for now (to be extended)
- Increase number of scratch registers from 4 to 16 (e.g. for boot
address synchronisation)

Signed-off-by: Nils Wistoff <nwistoff@iis.ee.ethz.ch>
Signed-off-by: Nils Wistoff <nwistoff@iis.ee.ethz.ch>
Signed-off-by: Nils Wistoff <nwistoff@iis.ee.ethz.ch>
@niwis niwis requested review from paulsc96 and alex96295 August 2, 2023 16:19
paulsc96
paulsc96 previously approved these changes Aug 2, 2023
alex96295
alex96295 previously approved these changes Aug 3, 2023
Signed-off-by: Nils Wistoff <nwistoff@iis.ee.ethz.ch>
niwis added 3 commits August 3, 2023 17:02
Signed-off-by: Nils Wistoff <nwistoff@iis.ee.ethz.ch>
Fixes the MISP register layout

Signed-off-by: Nils Wistoff <nwistoff@iis.ee.ethz.ch>
Signed-off-by: Nils Wistoff <nwistoff@iis.ee.ethz.ch>
@paulsc96 paulsc96 changed the title bootrom: Support SMP hw: Add SMP support to boot ROM Aug 3, 2023
@paulsc96 paulsc96 merged commit 83f36ad into main Aug 3, 2023
@paulsc96 paulsc96 deleted the nwistoff/smp branch August 3, 2023 20:36
MaistoV pushed a commit to MaistoV/cheshire_fork that referenced this pull request Aug 23, 2023
* bootrom: Support SMP

- Pause all harts except 0 at the beginning of the bootrom
- Let all harts jump to next boot stage after hart 0 finished bootrom
- Park all harts except 0 at the beginning of crt0 for now (to be extended)
- Increase number of scratch registers from 4 to 16 (e.g. for boot
address synchronisation)

Signed-off-by: Nils Wistoff <nwistoff@iis.ee.ethz.ch>

* bootrom: Parametrise number of harts via cheshire_regs

Signed-off-by: Nils Wistoff <nwistoff@iis.ee.ethz.ch>

* bootrom: Load word unsigned

Signed-off-by: Nils Wistoff <nwistoff@iis.ee.ethz.ch>

* bootrom: Fix smp_resume jump target

Signed-off-by: Nils Wistoff <nwistoff@iis.ee.ethz.ch>

* ci: Bump cheshire-nonfree

Signed-off-by: Nils Wistoff <nwistoff@iis.ee.ethz.ch>

* clint: Bump v0.2.0

Fixes the MISP register layout

Signed-off-by: Nils Wistoff <nwistoff@iis.ee.ethz.ch>

* clint.h: Update

Signed-off-by: Nils Wistoff <nwistoff@iis.ee.ethz.ch>

---------

Signed-off-by: Nils Wistoff <nwistoff@iis.ee.ethz.ch>
mattsini1 pushed a commit that referenced this pull request Aug 30, 2023
* bootrom: Support SMP

- Pause all harts except 0 at the beginning of the bootrom
- Let all harts jump to next boot stage after hart 0 finished bootrom
- Park all harts except 0 at the beginning of crt0 for now (to be extended)
- Increase number of scratch registers from 4 to 16 (e.g. for boot
address synchronisation)

Signed-off-by: Nils Wistoff <nwistoff@iis.ee.ethz.ch>

* bootrom: Parametrise number of harts via cheshire_regs

Signed-off-by: Nils Wistoff <nwistoff@iis.ee.ethz.ch>

* bootrom: Load word unsigned

Signed-off-by: Nils Wistoff <nwistoff@iis.ee.ethz.ch>

* bootrom: Fix smp_resume jump target

Signed-off-by: Nils Wistoff <nwistoff@iis.ee.ethz.ch>

* ci: Bump cheshire-nonfree

Signed-off-by: Nils Wistoff <nwistoff@iis.ee.ethz.ch>

* clint: Bump v0.2.0

Fixes the MISP register layout

Signed-off-by: Nils Wistoff <nwistoff@iis.ee.ethz.ch>

* clint.h: Update

Signed-off-by: Nils Wistoff <nwistoff@iis.ee.ethz.ch>

---------

Signed-off-by: Nils Wistoff <nwistoff@iis.ee.ethz.ch>
Aquaticfuller pushed a commit that referenced this pull request Jul 16, 2024
Decouple HW, SW and simulation build targets
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants