Commit cbcb93e8 authored by Alistair Francis's avatar Alistair Francis Committed by Peter Maydell
Browse files

STM32F2xx: Display PWM duty cycle from timer



If correctly configured allow the STM32F2xx timer to print
out the PWM duty cycle information.

Signed-off-by: default avatarAlistair Francis <alistair@alistair23.me>
Reviewed-by: default avatarPeter Crosthwaite <peter.crosthwaite@xilinx.com>
Message-id: cdb59039a25e061615713a94b40797baa12ea9f9.1474742262.git.alistair@alistair23.me
Signed-off-by: default avatarPeter Maydell <peter.maydell@linaro.org>
parent 81fed1d0
Loading
Loading
Loading
Loading
+9 −0
Original line number Diff line number Diff line
@@ -51,6 +51,15 @@ static void stm32f2xx_timer_interrupt(void *opaque)
        qemu_irq_pulse(s->irq);
        stm32f2xx_timer_set_alarm(s, s->hit_time);
    }

    if (s->tim_ccmr1 & (TIM_CCMR1_OC2M2 | TIM_CCMR1_OC2M1) &&
        !(s->tim_ccmr1 & TIM_CCMR1_OC2M0) &&
        s->tim_ccmr1 & TIM_CCMR1_OC2PE &&
        s->tim_ccer & TIM_CCER_CC2E) {
        /* PWM 2 - Mode 1 */
        DB_PRINT("PWM2 Duty Cycle: %d%%\n",
                s->tim_ccr2 / (100 * (s->tim_psc + 1)));
    }
}

static inline int64_t stm32f2xx_ns_to_ticks(STM32F2XXTimerState *s, int64_t t)