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

[RACL] Instantiate RACL for Darjeeling #25986

Open
wants to merge 4 commits into
base: master
Choose a base branch
from

Conversation

Razer6
Copy link
Member

@Razer6 Razer6 commented Jan 23, 2025

This PR initially instantiates RACL for Darjeeling by:

  1. Providing an initial RACL configuration
  2. Routing the policy to the top-level (for the support of externally subscribed RACL IPs)

Note 1: This PR is based on #25749 and needs to be rebased after that one is merged.

Note 2: This PR currently has one issue, the RACL error and error log would need to be rendered as an array and not as a single element.

@Razer6 Razer6 requested review from a team, msfschaffner and cfrantz as code owners January 23, 2025 09:00
@Razer6 Razer6 requested review from eshapira and jadephilipoom and removed request for a team January 23, 2025 09:00
Copy link
Contributor

@vogelpi vogelpi left a comment

Choose a reason for hiding this comment

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

I've just reviewed the last two commits (the other ones are part of another PR already). This looks mostly good but I have some questions.

Comment on lines +5 to +11
role_bit_lsb: 5
role_bit_msb: 8
roles: {
"ROT" : { role_id: 0 }
"Role1": { role_id: 1 }
"SOC": { role_id: 2 }
}
Copy link
Contributor

Choose a reason for hiding this comment

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

I guess you will add more roles later such that the 4 role bits we have are really utilized, right?

Copy link
Member Author

Choose a reason for hiding this comment

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

Yes, for the upstream we need to agree on a default set. It's not necessary to define all. The integrator defines its own custom roles and policies though.

@@ -80,12 +80,19 @@
reset: "rst_mbx_ni",
pipeline: false,
},
{ name: "racl_ctrl",
Copy link
Contributor

Choose a reason for hiding this comment

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

Question: do we add RACL to the mailbox xbar because this is the only one accessible from the outside?

Copy link
Member Author

Choose a reason for hiding this comment

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

We add racl_ctrl to the CTN facing port for the following reason:

  • In a multi-chiplet design, it allows the primary ROT access and configure the secondary's ROT policy registers.

The same is true for the AC Ranges. After both instanciations are merged, I will rename the mbx crossbar to CTN crossbar.

hw/top_darjeeling/ip/soc_proxy/rtl/rivos_bat.sv Outdated Show resolved Hide resolved
@Razer6 Razer6 force-pushed the instantiate-racl branch 4 times, most recently from 2f75f04 to 70e56b3 Compare January 24, 2025 14:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants