Kconfigs: Add CONFIG_LCD_UPDATE that works like CONFIG_NX_UPDATE but can be enabled without enabling the graphics subsystem.

This commit is contained in:
Gregory Nutt
2017-11-04 14:08:21 -06:00
parent 71d4bad819
commit 205fe8053f
8 changed files with 28 additions and 21 deletions
+1 -1
View File
@@ -1977,7 +1977,7 @@ o File system / Generic drivers (fs/, drivers/)
This can be seen with the NSH mount command which locks the
inode tree while traversing all of the mountpoints and also
with a simple directory listing with the 'ls' command which
locks the inode tree while the directory entries are enumerate.
locks the inode tree while the directory entries are enumerated.
The simplest solution would be change the IPC so that it does
not interact with the inode tree. The simplest IPC change
-5
View File
@@ -63,11 +63,6 @@
* Verbose debug must also be enabled
*/
#ifndef CONFIG_DEBUG_FEATURES
# undef CONFIG_DEBUG_INFO
# undef CONFIG_DEBUG_GRAPHICS
#endif
#ifndef CONFIG_DEBUG_INFO
# undef CONFIG_LCD_RITDEBUG
#endif
+1 -2
View File
@@ -10,11 +10,11 @@ CONFIG_DISABLE_ENVIRON=y
CONFIG_DISABLE_MOUNTPOINT=y
CONFIG_DISABLE_POLL=y
CONFIG_DISABLE_POSIX_TIMERS=y
CONFIG_DRIVERS_VIDEO=y
CONFIG_EXAMPLES_FB=y
CONFIG_IDLETHREAD_STACKSIZE=4096
CONFIG_MAX_TASKS=16
CONFIG_NX_KBD=y
CONFIG_NX_UPDATE=y
CONFIG_NX_XYINPUT_MOUSE=y
CONFIG_NX=y
CONFIG_NXFONT_SANS23X27=y
@@ -26,5 +26,4 @@ CONFIG_START_MONTH=11
CONFIG_START_YEAR=2008
CONFIG_USER_ENTRYPOINT="fb_main"
CONFIG_USERMAIN_STACKSIZE=4096
CONFIG_DRIVERS_VIDEO=y
CONFIG_VIDEO_FB=y
+6 -1
View File
@@ -19,12 +19,17 @@ menuconfig LCD
if LCD
config LCD_UPDATE
bool
default n
select NX_UPDATE if NX
comment "Common Graphic LCD Settings"
config LCD_FRAMEBUFFER
bool "LCD framebuffer front end"
default n
select NX_UPDATE if NX
select LCD_UPDATE
---help---
Enable a "front end" that converts an sequential LCD driver into a
standard, NuttX frame buffer driver.
+10 -6
View File
@@ -666,7 +666,7 @@ void up_fbuninitialize(int display)
* Name: nx_notify_rectangle
*
* Description:
* When CONFIG_NX_UPDATE=y, then the graphics system will callout to
* When CONFIG_LCD_UPDATE=y, then the graphics system will callout to
* inform some external module that the display has been updated. This
* would be useful in a couple for cases.
*
@@ -677,13 +677,17 @@ void up_fbuninitialize(int display)
* - When VNC is enabled. This is case, this callout is necessary to
* update the remote frame buffer to match the local framebuffer.
*
* When this feature is enabled, some external logic must provide this
* interface. This is the function that will handle the notification. It
* receives the rectangular region that was updated on the provided plane.
* When this feature is enabled, some external logic must provide this
* interface. This is the function that will handle the notification. It
* receives the rectangular region that was updated on the provided plane.
*
* NOTE: This function is also required for use with the LCD framebuffer
* driver front end when CONFIG_LCD_UPDATE=y, although that use does not
* depend on CONFIG_NX (and this function seems misnamed in that case).
*
****************************************************************************/
#ifdef CONFIG_NX_UPDATE
#if defined(CONFIG_LCD_UPDATE) || defined(CONFIG_NX_UPDATE)
void nx_notify_rectangle(FAR NX_PLANEINFOTYPE *pinfo,
FAR const struct nxgl_rect_s *rect)
{
@@ -706,4 +710,4 @@ void nx_notify_rectangle(FAR NX_PLANEINFOTYPE *pinfo,
}
#endif
#endif /* CONFIG_LCD_FRAMEBUFFER */
#endif /* CONFIG_LCD_FRAMEBUFFER */
+1 -1
View File
@@ -404,7 +404,7 @@ static int fb_ioctl(FAR struct file *filep, int cmd, unsigned long arg)
break;
#endif
#ifdef CONFIG_NX_UPDATE
#ifdef CONFIG_LCD_UPDATE
case FBIO_UPDATE: /* Get video plane info */
{
FAR struct nxgl_rect_s *rect =
+8 -4
View File
@@ -843,13 +843,17 @@ int nx_bitmap(NXWINDOW hwnd, FAR const struct nxgl_rect_s *dest,
* - When VNC is enabled. This is case, this callout is necessary to
* update the remote frame buffer to match the local framebuffer.
*
* When this feature is enabled, some external logic must provide this
* interface. This is the function that will handle the notification. It
* receives the rectangular region that was updated on the provided plane.
* When this feature is enabled, some external logic must provide this
* interface. This is the function that will handle the notification. It
* receives the rectangular region that was updated on the provided plane.
*
* NOTE: This function is also required for use with the LCD framebuffer
* driver front end when CONFIG_LCD_UPDATE=y, although that use does not
* depend on CONFIG_NX (and this function seems misnamed in that case).
*
****************************************************************************/
#ifdef CONFIG_NX_UPDATE
#if defined(CONFIG_NX_UPDATE) || defined(CONFIG_LCD_UPDATE)
void nx_notify_rectangle(FAR NX_PLANEINFOTYPE *pinfo,
FAR const struct nxgl_rect_s *rect);
#endif
+1 -1
View File
@@ -211,7 +211,7 @@
# define FBIOPUT_CURSOR _FBIOC(0x0006) /* Set cursor attributes */
/* Argument: read-only struct fb_setcursor_s */
#endif
#ifdef CONFIG_NX_UPDATE
#ifdef CONFIG_LCD_UPDATE
# define FBIO_UPDATE _FBIOC(0x0007) /* Update a rectangular region in the framebuffer */
/* Argument: read-only struct nxgl_rect_s */
#endif