aboutsummaryrefslogtreecommitdiff
path: root/nuttx
diff options
context:
space:
mode:
authorpatacongo <patacongo@7fd9a85b-ad96-42d3-883c-3090e2eb8679>2012-03-28 16:06:56 +0000
committerpatacongo <patacongo@7fd9a85b-ad96-42d3-883c-3090e2eb8679>2012-03-28 16:06:56 +0000
commit07e5222a418853f4a9c4eede819afd1da4fa386f (patch)
treed57d866e590029f590543adf137fffaeb234ab84 /nuttx
parent52bf8b3bf1f8d89cc551d520e909bc8355c2fae4 (diff)
downloadpx4-firmware-07e5222a418853f4a9c4eede819afd1da4fa386f.tar.gz
px4-firmware-07e5222a418853f4a9c4eede819afd1da4fa386f.tar.bz2
px4-firmware-07e5222a418853f4a9c4eede819afd1da4fa386f.zip
NX console updates
git-svn-id: https://nuttx.svn.sourceforge.net/svnroot/nuttx/trunk@4534 7fd9a85b-ad96-42d3-883c-3090e2eb8679
Diffstat (limited to 'nuttx')
-rw-r--r--nuttx/Documentation/NXGraphicsSubsystem.html2
-rw-r--r--nuttx/configs/sim/README.txt10
-rw-r--r--nuttx/configs/sim/nsh2/appconfig5
-rw-r--r--nuttx/configs/sim/nx/defconfig3
-rw-r--r--nuttx/configs/sim/nx11/defconfig3
-rw-r--r--nuttx/configs/stm3210e-eval/nsh2/appconfig5
-rw-r--r--nuttx/configs/stm3210e-eval/nsh2/defconfig3
-rw-r--r--nuttx/configs/stm3210e-eval/nx/defconfig3
-rw-r--r--nuttx/configs/stm3210e-eval/nxlines/defconfig3
-rw-r--r--nuttx/configs/stm3210e-eval/nxtext/defconfig3
-rwxr-xr-xnuttx/configs/vsn/nsh/appconfig8
-rw-r--r--nuttx/graphics/Makefile2
-rw-r--r--nuttx/graphics/README.txt2
-rwxr-xr-xnuttx/graphics/nxconsole/nxcon_driver.c5
-rw-r--r--nuttx/include/nuttx/nx/nxconsole.h34
-rw-r--r--nuttx/lib/stdio/lib_libfflush.c2
16 files changed, 79 insertions, 14 deletions
diff --git a/nuttx/Documentation/NXGraphicsSubsystem.html b/nuttx/Documentation/NXGraphicsSubsystem.html
index 81ead3ed2..9a4080668 100644
--- a/nuttx/Documentation/NXGraphicsSubsystem.html
+++ b/nuttx/Documentation/NXGraphicsSubsystem.html
@@ -3353,6 +3353,8 @@ int nxf_convert_32bpp(FAR uint32_t *dest, uint16_t height,
<ul>
<dl>
+ <dt><code>CONFIG_NXCONSOLE</code>:
+ <dd>Enables building of the NxConsole driver.
<dt><code>CONFIG_NXCONSOLE_BPP</code>:
<dd>Currently, NxConsole supports only a single pixel depth.
This configuration setting must be provided to support that single pixel depth.
diff --git a/nuttx/configs/sim/README.txt b/nuttx/configs/sim/README.txt
index 71542a1b4..2a65300d9 100644
--- a/nuttx/configs/sim/README.txt
+++ b/nuttx/configs/sim/README.txt
@@ -367,8 +367,14 @@ nx11
examples/nxconsole
------------------
This configuration is also set up to use the examples/nxconsole
- test instead of examples/nx. Simply comment out the following
- in the appconfig file:
+ test instead of examples/nx. To enable this configuration,
+ First, select Multi-User mode as described above. Then add the
+ following definitions to the defconfig file:
+
+ -CONFIG_NXCONSOLE=n
+ +CONFIG_NXCONSOLE=y
+
+ Comment out the following in the appconfig file:
-CONFIGURED_APPS += examples/nx
+#CONFIGURED_APPS += examples/nx
diff --git a/nuttx/configs/sim/nsh2/appconfig b/nuttx/configs/sim/nsh2/appconfig
index c967980a5..3a12d6f79 100644
--- a/nuttx/configs/sim/nsh2/appconfig
+++ b/nuttx/configs/sim/nsh2/appconfig
@@ -48,3 +48,8 @@ CONFIGURED_APPS += examples/nx
CONFIGURED_APPS += examples/nxhello
CONFIGURED_APPS += examples/nxlines
CONFIGURED_APPS += examples/touchscreen
+
+ifeq ($(CONFIG_NXCONSOLE),y)
+CONFIGURED_APPS += examples/nxconsole
+endif
+
diff --git a/nuttx/configs/sim/nx/defconfig b/nuttx/configs/sim/nx/defconfig
index fcac93e09..05cfbf5ac 100644
--- a/nuttx/configs/sim/nx/defconfig
+++ b/nuttx/configs/sim/nx/defconfig
@@ -424,6 +424,8 @@ CONFIG_NX_MXCLIENTMSGS=16
#
# NxConsole Configuration Settings:
#
+# CONFIG_NXCONSOLE
+# Enables building of the NxConsole driver.
# CONFIG_NXCONSOLE_BPP
# Currently, NxConsole supports only a single pixel depth. This
# configuration setting must be provided to support that single pixel depth.
@@ -452,6 +454,7 @@ CONFIG_NX_MXCLIENTMSGS=16
# of the window. This setting can be defining to change this behavior so
# that the text is simply truncated until a new line is encountered.
#
+CONFIG_NXCONSOLE=n
CONFIG_NXCONSOLE_BPP=8
# CONFIG_NXCONSOLE_NOGETRUN
# CONFIG_NXCONSOLE_MXCHARS
diff --git a/nuttx/configs/sim/nx11/defconfig b/nuttx/configs/sim/nx11/defconfig
index 890e08592..d3962c49b 100644
--- a/nuttx/configs/sim/nx11/defconfig
+++ b/nuttx/configs/sim/nx11/defconfig
@@ -425,6 +425,8 @@ CONFIG_NX_MXCLIENTMSGS=16
#
# NxConsole Configuration Settings:
#
+# CONFIG_NXCONSOLE
+# Enables building of the NxConsole driver.
# CONFIG_NXCONSOLE_BPP
# Currently, NxConsole supports only a single pixel depth. This
# configuration setting must be provided to support that single pixel depth.
@@ -453,6 +455,7 @@ CONFIG_NX_MXCLIENTMSGS=16
# of the window. This setting can be defining to change this behavior so
# that the text is simply truncated until a new line is encountered.
#
+CONFIG_NXCONSOLE=n
CONFIG_NXCONSOLE_BPP=32
# CONFIG_NXCONSOLE_NOGETRUN
# CONFIG_NXCONSOLE_MXCHARS
diff --git a/nuttx/configs/stm3210e-eval/nsh2/appconfig b/nuttx/configs/stm3210e-eval/nsh2/appconfig
index de15b0ddf..dadecb4fc 100644
--- a/nuttx/configs/stm3210e-eval/nsh2/appconfig
+++ b/nuttx/configs/stm3210e-eval/nsh2/appconfig
@@ -50,9 +50,12 @@ CONFIGURED_APPS += examples/nx
CONFIGURED_APPS += examples/nxhello
#CONFIGURED_APPS += examples/nxlines
#CONFIGURED_APPS += examples/nxtext
-#CONFIGURED_APPS += examples/nxconsole
CONFIGURED_APPS += examples/usbstorage
+ifeq ($(CONFIG_NXCONSOLE),y)
+CONFIGURED_APPS += examples/nxconsole
+endif
+
ifeq ($(CONFIG_I2C),y)
CONFIGURED_APPS += system/i2c
endif
diff --git a/nuttx/configs/stm3210e-eval/nsh2/defconfig b/nuttx/configs/stm3210e-eval/nsh2/defconfig
index 09a701b8d..1891c7e21 100644
--- a/nuttx/configs/stm3210e-eval/nsh2/defconfig
+++ b/nuttx/configs/stm3210e-eval/nsh2/defconfig
@@ -1043,6 +1043,8 @@ CONFIG_NX_MXCLIENTMSGS=16
#
# NxConsole Configuration Settings:
#
+# CONFIG_NXCONSOLE
+# Enables building of the NxConsole driver.
# CONFIG_NXCONSOLE_BPP
# Currently, NxConsole supports only a single pixel depth. This
# configuration setting must be provided to support that single pixel depth.
@@ -1071,6 +1073,7 @@ CONFIG_NX_MXCLIENTMSGS=16
# of the window. This setting can be defining to change this behavior so
# that the text is simply truncated until a new line is encountered.
#
+CONFIG_NXCONSOLE=n
CONFIG_NXCONSOLE_BPP=16
# CONFIG_NXCONSOLE_NOGETRUN
# CONFIG_NXCONSOLE_MXCHARS
diff --git a/nuttx/configs/stm3210e-eval/nx/defconfig b/nuttx/configs/stm3210e-eval/nx/defconfig
index 7532dab55..f1a5d46d3 100644
--- a/nuttx/configs/stm3210e-eval/nx/defconfig
+++ b/nuttx/configs/stm3210e-eval/nx/defconfig
@@ -893,6 +893,8 @@ CONFIG_NX_MXCLIENTMSGS=16
#
# NxConsole Configuration Settings:
#
+# CONFIG_NXCONSOLE
+# Enables building of the NxConsole driver.
# CONFIG_NXCONSOLE_BPP
# Currently, NxConsole supports only a single pixel depth. This
# configuration setting must be provided to support that single pixel depth.
@@ -921,6 +923,7 @@ CONFIG_NX_MXCLIENTMSGS=16
# of the window. This setting can be defining to change this behavior so
# that the text is simply truncated until a new line is encountered.
#
+CONFIG_NXCONSOLE=n
CONFIG_NXCONSOLE_BPP=16
# CONFIG_NXCONSOLE_NOGETRUN
# CONFIG_NXCONSOLE_MXCHARS
diff --git a/nuttx/configs/stm3210e-eval/nxlines/defconfig b/nuttx/configs/stm3210e-eval/nxlines/defconfig
index 7f912995f..0175dc9b5 100644
--- a/nuttx/configs/stm3210e-eval/nxlines/defconfig
+++ b/nuttx/configs/stm3210e-eval/nxlines/defconfig
@@ -892,6 +892,8 @@ CONFIG_NX_MXCLIENTMSGS=16
#
# NxConsole Configuration Settings:
#
+# CONFIG_NXCONSOLE
+# Enables building of the NxConsole driver.
# CONFIG_NXCONSOLE_BPP
# Currently, NxConsole supports only a single pixel depth. This
# configuration setting must be provided to support that single pixel depth.
@@ -920,6 +922,7 @@ CONFIG_NX_MXCLIENTMSGS=16
# of the window. This setting can be defining to change this behavior so
# that the text is simply truncated until a new line is encountered.
#
+CONFIG_NXCONSOLE=n
CONFIG_NXCONSOLE_BPP=16
# CONFIG_NXCONSOLE_NOGETRUN
# CONFIG_NXCONSOLE_MXCHARS
diff --git a/nuttx/configs/stm3210e-eval/nxtext/defconfig b/nuttx/configs/stm3210e-eval/nxtext/defconfig
index 07a97e2c8..0b92dac45 100644
--- a/nuttx/configs/stm3210e-eval/nxtext/defconfig
+++ b/nuttx/configs/stm3210e-eval/nxtext/defconfig
@@ -892,6 +892,8 @@ CONFIG_NX_MXCLIENTMSGS=16
#
# NxConsole Configuration Settings:
#
+# CONFIG_NXCONSOLE
+# Enables building of the NxConsole driver.
# CONFIG_NXCONSOLE_BPP
# Currently, NxConsole supports only a single pixel depth. This
# configuration setting must be provided to support that single pixel depth.
@@ -920,6 +922,7 @@ CONFIG_NX_MXCLIENTMSGS=16
# of the window. This setting can be defining to change this behavior so
# that the text is simply truncated until a new line is encountered.
#
+CONFIG_NXCONSOLE=n
CONFIG_NXCONSOLE_BPP=16
# CONFIG_NXCONSOLE_NOGETRUN
# CONFIG_NXCONSOLE_MXCHARS
diff --git a/nuttx/configs/vsn/nsh/appconfig b/nuttx/configs/vsn/nsh/appconfig
index ab296219f..a07059079 100755
--- a/nuttx/configs/vsn/nsh/appconfig
+++ b/nuttx/configs/vsn/nsh/appconfig
@@ -46,18 +46,12 @@
# Path to example in apps/examples containing the user_start entry point
CONFIGURED_APPS += examples/nsh
-# Invoke the following application after NuttX starts
-#CONFIG_BUILTIN_APP_START="hello"
-
# Application Libraries
CONFIGURED_APPS += system/readline
CONFIGURED_APPS += nshlib
# Individual selection of built-in applications:
-# Hello world provide a simple skeleton/demo application
-CONFIGURED_APPS += vsn/hello
-
# Provide poweroff command to switch off the board
CONFIGURED_APPS += vsn/poweroff
@@ -79,5 +73,3 @@ CONFIGURED_APPS += system/free
# Provide FLASH program installation support
CONFIGURED_APPS += system/install
-
-
diff --git a/nuttx/graphics/Makefile b/nuttx/graphics/Makefile
index 590e41ffa..4ba9b7d4f 100644
--- a/nuttx/graphics/Makefile
+++ b/nuttx/graphics/Makefile
@@ -68,9 +68,11 @@ include nxfonts/Make.defs
DEPPATH += --dep-path nxfonts
CFLAGS += ${shell $(TOPDIR)/tools/incdir.sh $(INCDIROPT) "$(CC)" $(TOPDIR)/graphics/nxfonts}
+ifeq ($(CONFIG_NXCONSOLE),y)
include nxconsole/Make.defs
DEPPATH += --dep-path nxconsole
CFLAGS += ${shell $(TOPDIR)/tools/incdir.sh $(INCDIROPT) "$(CC)" $(TOPDIR)/graphics/nxconsole}
+endif
ASRCS = $(NXGLIB_ASRCS) $(NXBE_ASRCS) $(NX_ASRCS) $(NXTK_ASRCS) $(NXFONTS_ASRCS) $(NXCON_ASRCS)
AOBJS = $(ASRCS:.S=$(OBJEXT))
diff --git a/nuttx/graphics/README.txt b/nuttx/graphics/README.txt
index d5027c1f0..3e7f61bcf 100644
--- a/nuttx/graphics/README.txt
+++ b/nuttx/graphics/README.txt
@@ -319,6 +319,8 @@ CONFIG_NXFONT_SERIF38X49B
NxConsole Configuration Settings:
+CONFIG_NXCONSOLE
+ Enables building of the NxConsole driver.
CONFIG_NXCONSOLE_BPP
Currently, NxConsole supports only a single pixel depth. This
configuration setting must be provided to support that single pixel depth.
diff --git a/nuttx/graphics/nxconsole/nxcon_driver.c b/nuttx/graphics/nxconsole/nxcon_driver.c
index dc7d5f353..d4ab71464 100755
--- a/nuttx/graphics/nxconsole/nxcon_driver.c
+++ b/nuttx/graphics/nxconsole/nxcon_driver.c
@@ -124,6 +124,7 @@ static ssize_t nxcon_write(FAR struct file *filep, FAR const char *buffer,
size_t buflen)
{
FAR struct nxcon_state_s *priv;
+ ssize_t remaining;
char ch;
int lineheight;
int ret;
@@ -145,7 +146,7 @@ static ssize_t nxcon_write(FAR struct file *filep, FAR const char *buffer,
lineheight = (priv->fheight + CONFIG_NXCONSOLE_LINESEPARATION);
- while (buflen-- > 0)
+ for (remaining = (ssize_t)buflen; remaining > 0; remaining--)
{
/* Ignore carriage returns */
@@ -195,7 +196,7 @@ static ssize_t nxcon_write(FAR struct file *filep, FAR const char *buffer,
}
sem_post(&priv->exclsem);
- return buflen;
+ return (ssize_t)buflen;
}
/****************************************************************************
diff --git a/nuttx/include/nuttx/nx/nxconsole.h b/nuttx/include/nuttx/nx/nxconsole.h
index 3980d3a1e..bf2c32160 100644
--- a/nuttx/include/nuttx/nx/nxconsole.h
+++ b/nuttx/include/nuttx/nx/nxconsole.h
@@ -45,9 +45,42 @@
#include <nuttx/nx/nx.h>
#include <nuttx/nx/nxtk.h>
+#ifdef CONFIG_NXCONSOLE
+
/****************************************************************************
* Pre-processor definitions
****************************************************************************/
+/* Configuration ************************************************************/
+/* CONFIG_NXCONSOLE
+ * Enables building of the NxConsole driver.
+ * CONFIG_NXCONSOLE_BPP
+ * Currently, NxConsole supports only a single pixel depth. This
+ * configuration setting must be provided to support that single pixel depth.
+ * Default: The smallest enabled pixel depth. (see CONFIG_NX_DISABLE_*BPP)
+ * CONFIG_NXCONSOLE_NOGETRUN
+ * NxConsole needs to know if it can read from the LCD or not. If reading
+ * from the LCD is supported, then NxConsole can do more efficient
+ * scrolling. Default: Supported
+ * CONFIG_NXCONSOLE_MXCHARS
+ * NxConsole needs to remember every character written to the console so
+ * that it can redraw the window. This setting determines the size of some
+ * internal memory allocations used to hold the character data. Default: 128.
+ * CONFIG_NXCONSOLE_FONTCACHE
+ * If this setting is defined, then caching of fonts will be supported by
+ * NxConsole. Each font must be rendered from the tiny font storage format
+ * to the full display size and pixel depth. If this setting is defined, then
+ * the more recently used font glyphs will be retained in a cache of size
+ * CONFIG_NXCONSOLE_CACHESIZE. Default: No font caching.
+ * CONFIG_NXCONSOLE_CACHESIZE
+ * If CONFIG_NXCONSOLE_FONTCACHE, then this setting will control the size
+ * of the font cache (in number of glyphs). Default: 16.
+ * CONFIG_NXCONSOLE_LINESEPARATION
+ * This the space (in rows) between each row of test. Default: 2
+ * CONFIG_NXCONSOLE_NOWRAP
+ * By default, lines will wrap when the test reaches the right hand side
+ * of the window. This setting can be defining to change this behavior so
+ * that the text is simply truncated until a new line is encountered.
+ */
/****************************************************************************
* Public Types
@@ -198,4 +231,5 @@ EXTERN void nxcon_redraw(NXCONSOLE handle, FAR const struct nxgl_rect_s *rect,
}
#endif
+#endif /* CONFIG_NXCONSOLE */
#endif /* __INCLUDE_NUTTX_NX_NXCONSOLE_H */
diff --git a/nuttx/lib/stdio/lib_libfflush.c b/nuttx/lib/stdio/lib_libfflush.c
index ec1591e7a..fb5a8768e 100644
--- a/nuttx/lib/stdio/lib_libfflush.c
+++ b/nuttx/lib/stdio/lib_libfflush.c
@@ -122,7 +122,7 @@ ssize_t lib_fflush(FAR FILE *stream, bool bforce)
lib_take_semaphore(stream);
- /* Make sure tht the buffer holds valid data */
+ /* Make sure that the buffer holds valid data */
if (stream->fs_bufpos != stream->fs_bufstart)
{