summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorpatacongo <patacongo@42af7a65-404d-4744-a932-0658087f49c3>2010-04-17 01:53:49 +0000
committerpatacongo <patacongo@42af7a65-404d-4744-a932-0658087f49c3>2010-04-17 01:53:49 +0000
commit16ae1294c4dfb7465564eb5fa97fdeda1f3fcb21 (patch)
treed16abc48c2f517e34f77152f63bed6da79678fba
parent3696bf9a4590f113b47e69335f00a83df8e2b8d4 (diff)
downloadnuttx-16ae1294c4dfb7465564eb5fa97fdeda1f3fcb21.tar.gz
nuttx-16ae1294c4dfb7465564eb5fa97fdeda1f3fcb21.tar.bz2
nuttx-16ae1294c4dfb7465564eb5fa97fdeda1f3fcb21.zip
Add configuration to select LCD driver for NX
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@2596 42af7a65-404d-4744-a932-0658087f49c3
-rw-r--r--nuttx/ChangeLog3
-rw-r--r--nuttx/Documentation/NXGraphicsSubsystem.html6
-rw-r--r--nuttx/Documentation/NuttX.html25
-rw-r--r--nuttx/Documentation/NuttxPortingGuide.html7
-rw-r--r--nuttx/arch/sim/src/up_framebuffer.c2
-rw-r--r--nuttx/configs/README.txt4
-rw-r--r--nuttx/drivers/mmcsd/mmcsd_sdio.c6
-rw-r--r--nuttx/examples/nx/nx_kbdin.c2
-rwxr-xr-xnuttx/include/nuttx/lcd.h22
-rw-r--r--nuttx/include/nuttx/nxtk.h2
10 files changed, 45 insertions, 34 deletions
diff --git a/nuttx/ChangeLog b/nuttx/ChangeLog
index bcc923a2c..f6d88ef3d 100644
--- a/nuttx/ChangeLog
+++ b/nuttx/ChangeLog
@@ -1090,3 +1090,6 @@
no one has been using this port.
5.4 2010-xx-xx Gregory Nutt <spudmonkey@racsa.co.cr>
+
+ * include/nuttx/lcd.h - Defines an LCD interface.
+
diff --git a/nuttx/Documentation/NXGraphicsSubsystem.html b/nuttx/Documentation/NXGraphicsSubsystem.html
index 22aa5f962..a712bfa6e 100644
--- a/nuttx/Documentation/NXGraphicsSubsystem.html
+++ b/nuttx/Documentation/NXGraphicsSubsystem.html
@@ -12,7 +12,7 @@
<h1><big><font color="#3c34ec">
<i>NX Graphics Subsystem</i>
</font></big></h1>
- <p>Last Updated: December 16, 2008</p>
+ <p>Last Updated: April 16, 2010</p>
</td>
</tr>
</table>
@@ -2606,6 +2606,10 @@ int nxf_convert_32bpp(FAR uint32_t *dest, uint16_t height,
<dt><code>CONFIG_NX_PACKEDMSFIRST</code>:
<dd>If a pixel depth of less than 8-bits is used, then NX needs
to know if the pixels pack from the MS to LS or from LS to MS
+ <dt><code>CONFIG_NX_LCDDRIVER</code>:
+ <dd>By default, NX builds to use a framebuffer driver (see <code>include/nuttx/fb.h</code>).
+ If this option is defined, NX will build to use an LCD driver (see <code>include/nuttx/lcd.h</code>).
+ </li>
</dl>
</ul>
diff --git a/nuttx/Documentation/NuttX.html b/nuttx/Documentation/NuttX.html
index 8dd0eaa49..53171e5b3 100644
--- a/nuttx/Documentation/NuttX.html
+++ b/nuttx/Documentation/NuttX.html
@@ -8,7 +8,7 @@
<tr align="center" bgcolor="#e4e4e4">
<td>
<h1><big><font color="#3c34ec"><i>NuttX RTOS</i></font></big></h1>
- <p>Last Updated: April 11, 2010</p>
+ <p>Last Updated: April 14, 2010</p>
</td>
</tr>
</table>
@@ -1689,28 +1689,9 @@ buildroot-1.8 2009-12-21 &lt;spudmonkey@racsa.co.cr&gt;
</table>
<ul><pre>
-nuttx-5.3 2010-04-11 Gregory Nutt &lt;spudmonkey@racsa.co.cr&gt;
-
- * arch/arm/src/lpc313x/lpc313x_usbdev.c - USB driver for the LPC313x
- contributed by David Hewson.
- * configs/ea3131/src/up_ubstrgc.c, configs/ea3131/usbserial,
- configs/ea3131/usbstorage - USB storage and USB serial example support
- contributed by David Hewson.
- * Several important compilation error fixes in lpc313x and (dualspeed) USB
- code also contributed by David Hewson.
- * arch/arm/src/sam3u/sam3u_dmac.c - DMA support for the AT90SAM3U.
- * arch/arm/src/sam3u/sam3u_hsmci.c - SD memory card support for AT90SAM3U
- (Neither the DMA nor the HSMCI driver are functional on the initial checkin).
- * drivers/usbdev - Several important fixes to the USB mass storage driver
- submitted by David Hewson.
- * configs/olimex-lpc2378, arch/arm/include/lpc2378, and arch/arm/src/lpc2378 -
- Basic port of the NXP 2378 on the Olimex board contributed by
- Rommel Marcelo.
- * arch/arm/src/sam3u/sam3u_internal.h - Fixed a critical bug in the AT91SAM3U
- PIO decoding. No PIOs greater than 15 could be used on any port! Obviously,
- no one has been using this port.
+nuttx-5.4 2010-xx-xx Gregory Nutt &lt;spudmonkey@racsa.co.cr&gt;
-nuttx-5.3 2010-xx-xx Gregory Nutt &lt;spudmonkey@racsa.co.cr&gt;
+ * include/nuttx/lcd.h - Defines an LCD interface.
pascal-2.1 2010-xx-xx Gregory Nutt &lt;spudmonkey@racsa.co.cr&gt;
diff --git a/nuttx/Documentation/NuttxPortingGuide.html b/nuttx/Documentation/NuttxPortingGuide.html
index 0d00497b9..b2359dd9e 100644
--- a/nuttx/Documentation/NuttxPortingGuide.html
+++ b/nuttx/Documentation/NuttxPortingGuide.html
@@ -12,7 +12,7 @@
<h1><big><font color="#3c34ec">
<i>NuttX RTOS Porting Guide</i>
</font></big></h1>
- <p>Last Updated: December 16, 2009</p>
+ <p>Last Updated: April 16, 2010</p>
</td>
</tr>
</table>
@@ -2851,6 +2851,11 @@ extern void up_ledoff(int led);
to know if the pixels pack from the MS to LS or from LS to MS
</li>
<li>
+ <code>CONFIG_NX_LCDDRIVER</code>:
+ By default, NX builds to use a framebuffer driver (see <code>include/nuttx/fb.h</code>).
+ If this option is defined, NX will build to use an LCD driver (see <code>include/nuttx/lcd.h</code>).
+ </li>
+ <li>
<code>CONFIG_NX_MOUSE</code>:
Build in support for mouse input.
</li>
diff --git a/nuttx/arch/sim/src/up_framebuffer.c b/nuttx/arch/sim/src/up_framebuffer.c
index d71a5e9e9..298eb9f8a 100644
--- a/nuttx/arch/sim/src/up_framebuffer.c
+++ b/nuttx/arch/sim/src/up_framebuffer.c
@@ -1,7 +1,7 @@
/****************************************************************************
* arch/sim/src/up_framebuffer.c
*
- * Copyright (C) 2008-2009 Gregory Nutt. All rights reserved.
+ * Copyright (C) 2008-2010 Gregory Nutt. All rights reserved.
* Author: Gregory Nutt <spudmonkey@racsa.co.cr>
*
* Redistribution and use in source and binary forms, with or without
diff --git a/nuttx/configs/README.txt b/nuttx/configs/README.txt
index 863cdf52d..51b739721 100644
--- a/nuttx/configs/README.txt
+++ b/nuttx/configs/README.txt
@@ -518,6 +518,10 @@ defconfig -- This is a configuration file similar to the Linux
CONFIG_NX_PACKEDMSFIRST
If a pixel depth of less than 8-bits is used, then NX needs
to know if the pixels pack from the MS to LS or from LS to MS
+ CONFIG_NX_LCDDRIVER
+ By default, NX builds to use a framebuffer driver (see
+ include/nuttx/fb.h). If this option is defined, NX will
+ build to use an LCD driver (see include/nuttx/lcd.h).
CONFIG_NX_MOUSE
Build in support for mouse input.
CONFIG_NX_KBD
diff --git a/nuttx/drivers/mmcsd/mmcsd_sdio.c b/nuttx/drivers/mmcsd/mmcsd_sdio.c
index ef3721066..e5d438bc3 100644
--- a/nuttx/drivers/mmcsd/mmcsd_sdio.c
+++ b/nuttx/drivers/mmcsd/mmcsd_sdio.c
@@ -2355,6 +2355,12 @@ static int mmcsd_sdinitialize(FAR struct mmcsd_state_s *priv)
{
fdbg("WARN: Failed to set wide bus operation: %d\n", ret);
}
+
+ /* TODO: If widebus selected, then send CMD6 to see if the card supports
+ * high speed mode. A new SDIO method will be needed to set high speed
+ * mode.
+ */
+
return OK;
}
diff --git a/nuttx/examples/nx/nx_kbdin.c b/nuttx/examples/nx/nx_kbdin.c
index adfd686f7..e1cc9cd2e 100644
--- a/nuttx/examples/nx/nx_kbdin.c
+++ b/nuttx/examples/nx/nx_kbdin.c
@@ -1,7 +1,7 @@
/****************************************************************************
* examples/nx/nx_kbdin.c
*
- * Copyright (C) 2008 Gregory Nutt. All rights reserved.
+ * Copyright (C) 2008, 2010 Gregory Nutt. All rights reserved.
* Author: Gregory Nutt <spudmonkey@racsa.co.cr>
*
* Redistribution and use in source and binary forms, with or without
diff --git a/nuttx/include/nuttx/lcd.h b/nuttx/include/nuttx/lcd.h
index d1a1ce621..aee8d1dd2 100755
--- a/nuttx/include/nuttx/lcd.h
+++ b/nuttx/include/nuttx/lcd.h
@@ -52,11 +52,25 @@
****************************************************************************/
/* This structure describes one color plane. Some YUV formats may support
- * up to 4 planes
+ * up to 4 planes (although they probably wouldn't be used on LCD hardware).
+ * The framebuffer driver provides the video memory address in its
+ * corresponding fb_planeinfo_s structure. The LCD driver, instead, provides
+ * methods to transfer data to/from the LCD color plane.
*/
struct lcd_planeinfo_s
{
+ /* LCD Data Transfer ******************************************************/
+
+ int (*putrun)(struct lcd_dev_s *dev, unsigned int planeno,
+ fb_coord_t row, fb_coord_t col, FAR const uint8_t *buffer,
+ size_t npixels);
+ int (*getrun)(struct lcd_dev_s *dev, unsigned int planeno,
+ fb_coord_t row, fb_coord_t col, FAR uint8_t *buffer,
+ size_t npixels);
+
+ /* Plane color characteristics ********************************************/
+
uint8_t bpp; /* Bits per pixel */
};
@@ -117,12 +131,6 @@ struct lcd_dev_s
/* Set LCD panel contrast (0-CONFIG_LCD_MAXCONTRAST) */
int (*setcontrast)(struct lcd_dev_s *dev, unsigned int contrast);
-
- /* LCD Data Transfer ******************************************************/
-
- int (*run)(struct lcd_dev_s *dev, unsigned int planeno,
- fb_coord_t row, fb_coord_t col, FAR const uint8_t *buffer,
- size_t npixels);
};
/****************************************************************************
diff --git a/nuttx/include/nuttx/nxtk.h b/nuttx/include/nuttx/nxtk.h
index 2eb07bb7c..43f29ca22 100644
--- a/nuttx/include/nuttx/nxtk.h
+++ b/nuttx/include/nuttx/nxtk.h
@@ -1,7 +1,7 @@
/****************************************************************************
* include/nuttx/nxtk.h
*
- * Copyright (C) 2008, 2009 Gregory Nutt. All rights reserved.
+ * Copyright (C) 2008-2010 Gregory Nutt. All rights reserved.
* Author: Gregory Nutt <spudmonkey@racsa.co.cr>
*
* Redistribution and use in source and binary forms, with or without