mirror of
https://github.com/apache/nuttx.git
synced 2026-10-02 19:58:01 +00:00
board/arm/am67/t3-gem-o1: Move EPWM initialization to its own file
Moves EPWM initialization from am67_bringup.c to am67_pwm.c. Initialization now requires only a function call in bringup.c. Nxstyle checked, builds same. Signed-off-by: Ulaş Sertan Kemeç <sertan.usk@gmail.com>
This commit is contained in:
parent
7930953874
commit
35b68203ad
3 changed files with 68 additions and 51 deletions
|
|
@ -102,4 +102,15 @@ int am67_epwm_init(void);
|
|||
|
||||
struct pwm_lowerhalf_s *am67_epwminitialize(int pwm);
|
||||
|
||||
/****************************************************************************
|
||||
* Name: am67_pwmdev_initialize
|
||||
*
|
||||
* Description:
|
||||
* Initialize the EPWM lower-half driver and register the PWM device.
|
||||
* This function is called from board bringup.
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
void am67_pwmdev_initialize(void);
|
||||
|
||||
#endif /* __ARCH_ARM_SRC_AM67_AM67_PWM_H */
|
||||
|
|
|
|||
|
|
@ -76,59 +76,9 @@ int am67_bringup(void)
|
|||
#endif
|
||||
|
||||
#if defined(CONFIG_AM67_EPWM0) || defined(CONFIG_AM67_EPWM1)
|
||||
ret = am67_epwm_init();
|
||||
if (ret < 0)
|
||||
{
|
||||
syslog(LOG_ERR, "ERROR: Failed to initialize EPWM: %d\n", ret);
|
||||
}
|
||||
else
|
||||
{
|
||||
struct pwm_lowerhalf_s *lower;
|
||||
|
||||
syslog(LOG_INFO, "EPWM: CTRL_MMR unlocked\n");
|
||||
|
||||
#ifdef CONFIG_AM67_EPWM0
|
||||
lower = am67_epwminitialize(0);
|
||||
if (lower == NULL)
|
||||
{
|
||||
syslog(LOG_ERR, "ERROR: Failed to get EPWM0 lower half\n");
|
||||
}
|
||||
else
|
||||
{
|
||||
ret = pwm_register("/dev/pwm0", lower);
|
||||
if (ret < 0)
|
||||
{
|
||||
syslog(LOG_ERR, "ERROR: pwm_register failed: %d\n", ret);
|
||||
}
|
||||
else
|
||||
{
|
||||
syslog(LOG_INFO, "EPWM0: registered /dev/pwm0\n");
|
||||
}
|
||||
}
|
||||
am67_pwmdev_initialize();
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_AM67_EPWM1
|
||||
lower = am67_epwminitialize(1);
|
||||
if (lower == NULL)
|
||||
{
|
||||
syslog(LOG_ERR, "ERROR: Failed to get EPWM1 lower half\n");
|
||||
}
|
||||
else
|
||||
{
|
||||
ret = pwm_register("/dev/pwm1", lower);
|
||||
if (ret < 0)
|
||||
{
|
||||
syslog(LOG_ERR, "ERROR: pwm_register failed: %d\n", ret);
|
||||
}
|
||||
else
|
||||
{
|
||||
syslog(LOG_INFO, "EPWM1: registered /dev/pwm1\n");
|
||||
}
|
||||
}
|
||||
#endif
|
||||
}
|
||||
#endif /* CONFIG_AM67_EPWM0 || CONFIG_AM67_EPWM1 */
|
||||
|
||||
#ifdef CONFIG_FS_PROCFS
|
||||
/* Mount the procfs file system */
|
||||
|
||||
|
|
|
|||
|
|
@ -40,3 +40,59 @@
|
|||
* Public Functions
|
||||
****************************************************************************/
|
||||
|
||||
void am67_pwmdev_initialize(void)
|
||||
{
|
||||
int ret = am67_epwm_init();
|
||||
|
||||
if (ret < 0)
|
||||
{
|
||||
syslog(LOG_ERR, "ERROR: Failed to initialize EPWM: %d\n", ret);
|
||||
}
|
||||
else
|
||||
{
|
||||
struct pwm_lowerhalf_s *lower;
|
||||
|
||||
syslog(LOG_INFO, "EPWM: CTRL_MMR unlocked\n");
|
||||
|
||||
#ifdef CONFIG_AM67_EPWM0
|
||||
lower = am67_epwminitialize(0);
|
||||
if (lower == NULL)
|
||||
{
|
||||
syslog(LOG_ERR, "ERROR: Failed to get EPWM0 lower half\n");
|
||||
}
|
||||
else
|
||||
{
|
||||
ret = pwm_register("/dev/pwm0", lower);
|
||||
if (ret < 0)
|
||||
{
|
||||
syslog(LOG_ERR, "ERROR: pwm_register failed: %d\n", ret);
|
||||
}
|
||||
else
|
||||
{
|
||||
syslog(LOG_INFO, "EPWM0: registered /dev/pwm0\n");
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_AM67_EPWM1
|
||||
lower = am67_epwminitialize(1);
|
||||
if (lower == NULL)
|
||||
{
|
||||
syslog(LOG_ERR, "ERROR: Failed to get EPWM1 lower half\n");
|
||||
}
|
||||
else
|
||||
{
|
||||
ret = pwm_register("/dev/pwm1", lower);
|
||||
if (ret < 0)
|
||||
{
|
||||
syslog(LOG_ERR, "ERROR: pwm_register failed: %d\n", ret);
|
||||
}
|
||||
else
|
||||
{
|
||||
syslog(LOG_INFO, "EPWM1: registered /dev/pwm1\n");
|
||||
}
|
||||
}
|
||||
#endif
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue