无法设置嵌入式linux的看门狗定时器超时

时间:2014-07-08 05:24:36

标签: arm linux-device-driver embedded-linux busybox watchdog

我正在使用UBUNTU 12.04和Qt4.8开发基于ARM9的微处理器的应用程序。

我有看门狗定时器的实现。

我已经实现了看门狗定时器如下。

int timeout = 30;    /* time in seconds */
int rc = -1;    /* return value */
int fd = -1; /* WDT Timer File Descriptor*/

fd = open(WDT_DEVICE, O_WRONLY));
if(-1 == fd)
{
    qDebug() << Q_FUNC_INFO << "Failed to Open Device : " << WDT_DEVICE;
    return -1;
}


if(ioctl(fd,WDIOC_SETTIMEOUT, &timeout) != 0)
{
    qDebug() << Q_FUNC_INFO << "Failed to set the timeout interval of : " << timeout;
    return -1;
}


if(ioctl(fd,WDIOC_GETTIMEOUT, &timeout) != 0);
{
    qDebug() << Q_FUNC_INFO << "Failed to Get the timeout interval of : " << timeout;
    return -1;
}

这里我无法设置超时间隔。因此,应用默认系统监视程序计时器超时10秒。

  

ioctl(fd,WDIOC_SETTIMEOUT,&amp; timeout)

返回-1并失败。

我想使用30秒超时。我怎么能这样做?

0 个答案:

没有答案