feature: driver: add interface for lcd dev driver

add get and set framerate interface for lcd dev driver.

Signed-off-by: liushuai25 <liushuai25@xiaomi.com>
This commit is contained in:
liushuai25 2021-09-04 14:37:31 +08:00 committed by Gustavo Henrique Nihei
parent 3183251de0
commit fdcd1228b2
4 changed files with 27 additions and 6 deletions

View File

@ -280,6 +280,16 @@ static int lcddev_ioctl(FAR struct file *filep, int cmd, unsigned long arg)
}
break;
#endif
case LCDDEVIO_SETFRAMERATE:
{
ret = priv->lcd_ptr->setframerate(priv->lcd_ptr, (int)arg);
}
break;
case LCDDEVIO_GETFRAMERATE:
{
*((FAR int *)arg) = priv->lcd_ptr->getframerate(priv->lcd_ptr);
}
break;
default:
ret = -EINVAL;
break;

View File

@ -204,6 +204,14 @@ struct lcd_dev_s
/* Set LCD panel contrast (0-CONFIG_LCD_MAXCONTRAST) */
int (*setcontrast)(struct lcd_dev_s *dev, unsigned int contrast);
/* Set LCD panel frame rate (0: disable refresh) */
int (*setframerate)(struct lcd_dev_s *dev, int rate);
/* Get LCD panel frame rate (0: disable refresh) */
int (*getframerate)(struct lcd_dev_s *dev);
};
/****************************************************************************

View File

@ -59,6 +59,9 @@
#define LCDDEVIO_SETCURSOR _LCDIOC(12) /* Arg: struct fb_setcursor_s* */
#endif
#define LCDDEVIO_SETFRAMERATE _LCDIOC(13) /* Arg: int */
#define LCDDEVIO_GETFRAMERATE _LCDIOC(14) /* Arg: int* */
/****************************************************************************
* Public Data
****************************************************************************/