summaryrefslogtreecommitdiff
path: root/nuttx
diff options
context:
space:
mode:
authorpatacongo <patacongo@42af7a65-404d-4744-a932-0658087f49c3>2013-03-27 00:03:25 +0000
committerpatacongo <patacongo@42af7a65-404d-4744-a932-0658087f49c3>2013-03-27 00:03:25 +0000
commit5ee86601a172384191c3ea92d72785711c7cc201 (patch)
tree6e33b0a28fa60847df651760f7fa97afe6c15e48 /nuttx
parent68cd11bf2a8f0f37e733572ce2bad747c3ee81b3 (diff)
downloadpx4-nuttx-5ee86601a172384191c3ea92d72785711c7cc201.tar.gz
px4-nuttx-5ee86601a172384191c3ea92d72785711c7cc201.tar.bz2
px4-nuttx-5ee86601a172384191c3ea92d72785711c7cc201.zip
Add apps/system/ramtest. I will use this for the LPC1788 SDRAM bringup
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5791 42af7a65-404d-4744-a932-0658087f49c3
Diffstat (limited to 'nuttx')
-rw-r--r--nuttx/ChangeLog2
-rw-r--r--nuttx/arch/arm/src/lpc17xx/Kconfig11
-rw-r--r--nuttx/arch/arm/src/lpc17xx/lpc17_lcd.c24
-rw-r--r--nuttx/fs/fs_select.c6
4 files changed, 40 insertions, 3 deletions
diff --git a/nuttx/ChangeLog b/nuttx/ChangeLog
index bcb8a099e..2367f0fb0 100644
--- a/nuttx/ChangeLog
+++ b/nuttx/ChangeLog
@@ -4457,4 +4457,6 @@
konfig-frontends tool (2013-03-25).
* configs/twr-k60n512: Converted configurations to use the
konfig-frontends tool (2013-03-25).
+ * arch/arm/src/lpc17xx/lpc17_lcd.c: Add an LCD framebuffer drier
+ for the LPC177x/8x family.
diff --git a/nuttx/arch/arm/src/lpc17xx/Kconfig b/nuttx/arch/arm/src/lpc17xx/Kconfig
index 82b830a14..923964dad 100644
--- a/nuttx/arch/arm/src/lpc17xx/Kconfig
+++ b/nuttx/arch/arm/src/lpc17xx/Kconfig
@@ -654,6 +654,14 @@ config LPC17_LCD_TFTPANEL
display panels require the digital color value of each pixel to be
applied to the display data inputs.
+config LPC17_LCD_MONOCHROME
+ bool "Monochrome LCD"
+ default n
+ depends on !LPC17_LCD_TFTPANEL
+ ---help---
+ STN LCD monochrome/color selection. Selects monochrome LCD. This
+ selection has no meaning for a TFT panel.
+
choice
prompt "Bits per pixel"
default LPC17_LCD_BPP24 if LPC17_LCD_TFTPANEL
@@ -673,6 +681,7 @@ config LPC17_LCD_BPP8
config LPC17_LCD_BPP16
bool "16 bit per pixel"
+ depends on !LPC17_LCD_MONOCHROME
config LPC17_LCD_BPP24
bool "24 bit per pixel"
@@ -680,9 +689,11 @@ config LPC17_LCD_BPP24
config LPC17_LCD_BPP16_565
bool "16 bpp, 5:6:5 mode"
+ depends on !LPC17_LCD_MONOCHROME
config LPC17_LCD_BPP12_444
bool "12 bpp, 4:4:4 mode"
+ depends on !LPC17_LCD_MONOCHROME
endchoice
diff --git a/nuttx/arch/arm/src/lpc17xx/lpc17_lcd.c b/nuttx/arch/arm/src/lpc17xx/lpc17_lcd.c
index c10d8ade7..dccc10404 100644
--- a/nuttx/arch/arm/src/lpc17xx/lpc17_lcd.c
+++ b/nuttx/arch/arm/src/lpc17xx/lpc17_lcd.c
@@ -563,6 +563,30 @@ int up_fbinitialize(void)
regval &= ~LCD_CTRL_BGR;
putreg32(regval, LPC17_LCD_CTRL);
+ /* Select monochrome or color LCD */
+
+#ifdef CONFIG_LPC17_LCD_MONOCHROME
+ /* Select monochrome LCD */
+
+ regval &= ~LCD_CTRL_BGR;
+ putreg32(regval, LPC17_LCD_CTRL);
+
+ /* Select 4- or 8-bit monochrome interface */
+
+#if LPC17_BPP > 4
+ regval |= LCD_CTRL_LCDMONO8;
+#else
+ regval &= ~LCD_CTRL_LCDMONO8;
+#endif
+ putreg32(regval, LPC17_LCD_CTRL);
+
+#else
+ /* Select color LCD */
+
+ regval &= ~(LCD_CTRL_LCDBW | LCD_CTRL_LCDMONO8);
+ putreg32(regval, LPC17_LCD_CTRL);
+#endif
+
/* Little endian byte order */
regval &= ~LCD_CTRL_BEBO;
diff --git a/nuttx/fs/fs_select.c b/nuttx/fs/fs_select.c
index 206e73be0..2b4fdf543 100644
--- a/nuttx/fs/fs_select.c
+++ b/nuttx/fs/fs_select.c
@@ -117,9 +117,9 @@ int select(int nfds, FAR fd_set *readfds, FAR fd_set *writefds,
{
/* Check if any monitor operation is requested on this fd */
- if (readfds && FD_ISSET(fd, readfds) ||
- writefds && FD_ISSET(fd, writefds) ||
- exceptfds && FD_ISSET(fd, exceptfds))
+ if ((readfds && FD_ISSET(fd, readfds)) ||
+ (writefds && FD_ISSET(fd, writefds)) ||
+ (exceptfds && FD_ISSET(fd, exceptfds)))
{
/* Yes.. increment the count of pollfds structures needed */