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

CPPC Service group improvements #64

Merged
merged 3 commits into from
Oct 3, 2024

Conversation

pathakraul
Copy link
Collaborator

Remove the Hard ID parameter from Fastchannel region request
Convert functions names to monospace in rpmi mpxy chapter
Add Perf Feedback Fastchannel in CPPC ServiceGroup

The CPPC_GET_FAST_CHANNEL_REGION service request data does
not need Hart ID parameter since this service returns
complete region meant for all the harts fast channel
entries

Signed-off-by: Rahul Pathak <[email protected]>

If the fast-channels are implemented, the application processor will either write
===== Performance Request fast-channel.
Copy link
Collaborator

Choose a reason for hiding this comment

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

"Fast-channel", and remove full stop for text header.

@@ -122,33 +135,58 @@ Otherwise the application processor can call the service `CPPC_WRITE_REG` for th
! 0x4
! Maximum performance level
!===
|===

===== Performance Feedback fast-channel.
Copy link
Collaborator

Choose a reason for hiding this comment

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

"Fast-channel", and remove full stop for text header.

`MinimumPerformanceRegister` and `MaximumPerformanceRegister`.

The layout of this fast-channel which depends on the CPPC mode, either normal or
autonomous mode is discoverable through a defined service.
Copy link
Collaborator

Choose a reason for hiding this comment

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

Maybe can change "defined service" to a service name is better.


[#table_cppc_fastchan]
.CPPC Fast-channel Layout
The size of this fast-channel type is of 8-byte.
Copy link
Collaborator

Choose a reason for hiding this comment

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

The size of this fast-channel type is 8 bytes.


The size of this fast-channel type is of 8-byte.
Copy link
Collaborator

Choose a reason for hiding this comment

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

The size of this fast-channel type is 8 bytes.

of `4-byte` each. A fast-channel must be naturally aligned to the size of the
fast-channel.
| 0x0
| Current frequency Low 32-bit (Hz)
Copy link
Collaborator

Choose a reason for hiding this comment

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

low

The offset can be added into the `base-address` of the shared memory region to
form the address of a application processor fast-channel.
| 0x4
| Current frequency High 32-bit (Hz)
Copy link
Collaborator

Choose a reason for hiding this comment

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

high

to 8-byte. The offset of both fast-channel types in the shared memory region can
be discovered through service `CPPC_GET_FAST_CHANNEL_OFFSET`. The offsets
discovered can be added into the `base-address` of the shared memory region to
form the address of Performance Request fast-channel and Performance Feedback
Copy link
Collaborator

Choose a reason for hiding this comment

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

"Performance Request Fast-channel"

be discovered through service `CPPC_GET_FAST_CHANNEL_OFFSET`. The offsets
discovered can be added into the `base-address` of the shared memory region to
form the address of Performance Request fast-channel and Performance Feedback
fast-channel for an application processor.
Copy link
Collaborator

Choose a reason for hiding this comment

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

"Performance Feedback Fast-channel"

between all the application processors. If a doorbell is available then it must
be supported through a read-modify-write sequence to a memory-mapped register.
The doorbell details and attributes can be discovered by the application
processor through the defined service in this service group.
Copy link
Collaborator

Choose a reason for hiding this comment

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

can change "defined service" to the service name

| uint32
| Lower 32-bit of a fast-channel offset.
| Lower 32-bit of a Performance Request fast-channel offset.
Copy link
Collaborator

Choose a reason for hiding this comment

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

Should change "fast-channel" to "Fast-channel"?
Assume this is a term.

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

In headings its ok, else where it looks odd with capital Fast-channel. So i have used "fast-channel" in the text and "Fast-channel" in headings

The Performance Feedback fast channel for
each application processor will be used by the
application processor to fetch frequency whenever
its changes. This is required for the estimation
of the delivered performance in cases when platform
does not provide any hardware counter for the same

Signed-off-by: Rahul Pathak <[email protected]>
@lftan lftan merged commit e109c97 into riscv-non-isa:main Oct 3, 2024
1 check passed
@pathakraul pathakraul deleted the cppc_fastchan_freq branch November 9, 2024 14:46
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