> -----Original Message-----
> From: Brian Cain <brian.c...@oss.qualcomm.com>
> Sent: Friday, February 28, 2025 11:26 PM
> To: qemu-devel@nongnu.org
> Cc: brian.c...@oss.qualcomm.com; richard.hender...@linaro.org;
> phi...@linaro.org; quic_mathb...@quicinc.com; a...@rev.ng; a...@rev.ng;
> quic_mlie...@quicinc.com; ltaylorsimp...@gmail.com;
> alex.ben...@linaro.org; quic_mbur...@quicinc.com;
> sidn...@quicinc.com; Brian Cain <bc...@quicinc.com>; Michael Lambert
> <mlamb...@quicinc.com>
> Subject: [PATCH 38/38] target/hexagon: Add hex_interrupts support
> 
> From: Brian Cain <bc...@quicinc.com>
> 
> Co-authored-by: Taylor Simpson <ltaylorsimp...@gmail.com>
> Co-authored-by: Sid Manning <sidn...@quicinc.com>
> Co-authored-by: Michael Lambert <mlamb...@quicinc.com>
> Signed-off-by: Brian Cain <brian.c...@oss.qualcomm.com>


> diff --git a/target/hexagon/hex_interrupts.c
> b/target/hexagon/hex_interrupts.c new file mode 100644 index
> 0000000000..fd00bcfb9a


> +bool hex_check_interrupts(CPUHexagonState *env) {
> +    CPUState *cs = env_cpu(env);
> +    bool int_handled = false;
> +    bool ssr_ex = get_ssr_ex(env);
> +    int max_ints = 32;
> +    bool schedcfgen;
> +
> +    /* Early exit if nothing pending */
> +    if (get_ipend(env) == 0) {
> +        restore_state(env, false);
> +        return false;
> +    }
> +
> +    BQL_LOCK_GUARD();
> +    /* Only check priorities when schedcfgen is set */
> +    schedcfgen = get_schedcfgen(env);
> +    for (int i = 0; i < max_ints; i++) {
> +        if (!get_iad_bit(env, i) && get_ipend_bit(env, i)) {
> +            qemu_log_mask(CPU_LOG_INT,
> +                          "%s: thread[%d] pc = 0x%x found int %d\n", 
> __func__,
> +                          env->threadId, env->gpr[HEX_REG_PC], i);

Don't use %d - use PRI* instead.  Several instances ...




Reply via email to