270ec8cdb3
Zephyr has a PWM-LED driver which makes calls to a PWM driver to control the pin. The previous MCHP PWM-BBLED driver do not report its actual PWM cycles, instead it reported the clock source it used: 32KHz or 48MHz. This bug caused the LED-PWM driver set brightness to compute incorrect parameters passed to the PWM-BBLED driver. The BBLED hardware has a built-in divider of 256 therefore its maximum cycles are 128 and 48M/256 respectively. This change also simplified the calculations. A DT overlay for the MEC172x EVB was added to the PWM-LED sample to demonstrate driver operation. We found specifying >= 50 ms for the PWM period in the device tree nodes provided a good operating range for the LED-PWM driver parameter calculations. Note: BBLED hardware implements an 8-bit PWM with a fixed divider of 256 and a 12-bit frequency pre-scaler. Duty cycle is represented by an 8-bit value. Signed-off-by: Manimaran A <manimaran.a@microchip.com> |
||
---|---|---|
.. | ||
CMakeLists.txt | ||
Kconfig | ||
Kconfig.b91 | ||
Kconfig.cc13xx_cc26xx_timer | ||
Kconfig.esp32 | ||
Kconfig.gd32 | ||
Kconfig.gecko | ||
Kconfig.imx | ||
Kconfig.intel_blinky | ||
Kconfig.it8xxx2 | ||
Kconfig.litex | ||
Kconfig.max31790 | ||
Kconfig.mcux | ||
Kconfig.mcux_ctimer | ||
Kconfig.mcux_ftm | ||
Kconfig.mcux_pwt | ||
Kconfig.mcux_sctimer | ||
Kconfig.mcux_tpm | ||
Kconfig.npcx | ||
Kconfig.nrf_sw | ||
Kconfig.nrfx | ||
Kconfig.numaker | ||
Kconfig.nxp_s32_emios | ||
Kconfig.pca9685 | ||
Kconfig.rcar | ||
Kconfig.rpi_pico | ||
Kconfig.rv32m1_tpm | ||
Kconfig.sam | ||
Kconfig.sam0 | ||
Kconfig.sifive | ||
Kconfig.stm32 | ||
Kconfig.test | ||
Kconfig.xec | ||
Kconfig.xlnx | ||
Kconfig.xmc4xxx_ccu4 | ||
Kconfig.xmc4xxx_ccu8 | ||
pwm_b91.c | ||
pwm_capture.c | ||
pwm_cc13xx_cc26xx_timer.c | ||
pwm_gd32.c | ||
pwm_gecko.c | ||
pwm_handlers.c | ||
pwm_imx.c | ||
pwm_intel_blinky.c | ||
pwm_ite_it8xxx2.c | ||
pwm_led_esp32.c | ||
pwm_litex.c | ||
pwm_max31790.c | ||
pwm_mc_esp32.c | ||
pwm_mchp_xec.c | ||
pwm_mchp_xec_bbled.c | ||
pwm_mcux.c | ||
pwm_mcux_ctimer.c | ||
pwm_mcux_ftm.c | ||
pwm_mcux_pwt.c | ||
pwm_mcux_sctimer.c | ||
pwm_mcux_tpm.c | ||
pwm_npcx.c | ||
pwm_nrf_sw.c | ||
pwm_nrfx.c | ||
pwm_numaker.c | ||
pwm_nxp_s32_emios.c | ||
pwm_pca9685.c | ||
pwm_rcar.c | ||
pwm_rpi_pico.c | ||
pwm_rv32m1_tpm.c | ||
pwm_sam.c | ||
pwm_sam0_tcc.c | ||
pwm_shell.c | ||
pwm_sifive.c | ||
pwm_stm32.c | ||
pwm_test.c | ||
pwm_xlnx_axi_timer.c | ||
pwm_xmc4xxx_ccu4.c | ||
pwm_xmc4xxx_ccu8.c |