Hi all,
I'd like to use timer4 on BeagleBone to synthesize sound signal under Linux.
I already tested TIMER4 P8.7 pin in GPIO mode. It works, but very slowly.
How I can use this pin in timer/PWM mode ?
Best regards,
Oleg Strelkov.
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
Hi all,
I'd like to use timer4 on BeagleBone to synthesize sound signal under Linux.
I already tested TIMER4 P8.7 pin in GPIO mode. It works, but very slowly.
How I can use this pin in timer/PWM mode ?
Best regards,
Oleg Strelkov.
Hi Oleg,
The AM335X EZSDK includes a PWM driver: http://processors.wiki.ti.com/index.php/AM335x_PWM_Driver%27s_Guide Default output is on ECAP2_IN_PWM2_OUT (processor pin C12), which comes out on P9.28.
Hi, Biser,
Thanks for your responce.
I has read recommended document.
Unfortunately, sysfs subdirectory /sys/class/pwm/ is empty.
I use BeagleBone white.
I tested under TI SDK ti-sdk-am335x-evm-05.05.00.00-Linux-x86
(kernel: Linux am335x-evm 3.2.0 #1 Thu Jul 26 17:16:27 CDT 2012 armv7l unknown)
and TI SDK ti-sdk-am335x-evm-07.00.00.00-Linux-x86
(kernel: Linux am335x-evm 3.12.10-ti2013.12.01 #1 Mon Mar 24 09:25:56 CDT 2014 armv7l GNU/Linux)
I inspected 3.2.0 kernel config:
root@am335x-evm:~# zcat /proc/config.gz | grep PWM
CONFIG_HAVE_PWM=y
# CONFIG_ATMEL_PWM is not set
# CONFIG_INPUT_PWM_BEEPER is not set
CONFIG_GENERIC_PWM=y
CONFIG_DAVINCI_EHRPWM=y
CONFIG_ECAP_PWM=y
# CONFIG_TWL6030_PWM is not set
CONFIG_BACKLIGHT_PWM=y
# CONFIG_LEDS_PWM is not set
root@am335x-evm:~#
and 3.12.10 kernel config:
root@am335x-evm:~# zcat /proc/config.gz | grep PWM
# CONFIG_ATMEL_PWM is not set
# CONFIG_INPUT_PWM_BEEPER is not set
CONFIG_BACKLIGHT_PWM=y
# CONFIG_LEDS_PWM is not set
CONFIG_PWM=y
CONFIG_PWM_SYSFS=y
# CONFIG_PWM_PCA9685 is not set
CONFIG_PWM_TIECAP=y
CONFIG_PWM_TIEHRPWM=y
CONFIG_PWM_TIPWMSS=y
# CONFIG_PWM_TWL is not set
# CONFIG_PWM_TWL_LED is not set
root@am335x-evm:~#
Why is empty directory /sys/class/pwm/ in both cases?
Best regards,
Oleg.
I think it's in the Starter Kit board configuration. At least on the HW side that's where its used.
Hi, Biser,
I saw PWM output signal under Angstrom distribution on my BeagleBone white.
I had used Angstrom v2012.05 (Kernel 3.2.18).
I compared PWM kernel settings for TI SDK kernel 3.2.0 and Angstrom kernel 3.2.18. They are the same.
May be different resources of board in kernel source codes?
Best regards,
Oleg
Have you checked pinmux settings? The 3.2 SDK doesn't have built-in support for the Beaglebone boards.
It's strange. I began work with Beagle Bone from "linux-3.2.0-psp04.06.00.08.sdk".
In http://processors.wiki.ti.com/index.php/AM335x-PSP_04.06.00.07_Release_Notes is written:
"This release supports BeagleBoard Bone and AM335x Evaluation Module version 1.1A and above."
Best regards,
Oleg.
Ok, no problem.
Thus, TI SDK kernel 3.2.0 contains empty directory /sys/class/pwm/. But Angstrom kernel 3.2.18 contains correct this directory. And both kernels have the same PWM configuration.
May be different resources of board in kernel source codes?
Or another reason?
Best regards,
Oleg.
Hi Biser,
Unfortunately, your recommended document http://processors.wiki.ti.com/index.php/AM335x_PWM_Driver%27s_Guide
contains PWM driver explanation from user side.
Can you recommend similar document for PWM driver from kernel side?
Best regards,
Oleg.