On Wed, Jun 26, 2024 at 11:23 PM Alvin Chang via <qemu-devel@nongnu.org> wrote:
>
> According to RISC-V Debug specification ratified version 0.13 [1]
> (also applied to version 1.0 [2] but it has not been ratified yet), the
> enabled privilege levels of the trigger is common match conditions for
> all the types of the trigger.
>
> This series modularize the code for checking the privilege levels of
> type 2/3/6 triggers by implementing functions trigger_common_match()
> and trigger_priv_match().
>
> Additional match conditions, such as CSR tcontrol and textra, can be
> further implemented into trigger_common_match() in the future.
>
> [1]: https://github.com/riscv/riscv-debug-spec/releases/tag/task_group_vote
> [2]: https://github.com/riscv/riscv-debug-spec/releases/tag/1.0.0-rc1-asciidoc
>
> Changes from v5:
> - Merge first two commits to avoid build error
>
> Changes from v4:
> - Rebasing on riscv-to-apply.next
>
> Changes from v3:
> - Change this series to target Debug Spec. version 0.13
>
> Changes from v2:
> - Explicitly mention the targeting version of RISC-V Debug Spec.
>
> Changes from v1:
> - Fix typo
> - Add commit description for changing behavior of looping the triggers
> when we check type 2 triggers.
>
> Alvin Chang (3):
> target/riscv: Add functions for common matching conditions of trigger
> target/riscv: Apply modularized matching conditions for watchpoint
> target/riscv: Apply modularized matching conditions for icount trigger
Thanks!
Applied to riscv-to-apply.next
Alistair
>
> target/riscv/debug.c | 129 ++++++++++++++++++++++++++++---------------
> 1 file changed, 85 insertions(+), 44 deletions(-)
>
> --
> 2.34.1
>
>