configs/lpcxpresso-lpc54628: Add a Twm4Nx configuration.

This commit is contained in:
Gregory Nutt 2019-05-04 12:34:47 -06:00
parent 8130038fb0
commit 32b99d810c
6 changed files with 136 additions and 4 deletions

View File

@ -508,3 +508,20 @@ Configurations
graphic (based on the rotating line of apps/examples/nslines).
2019-03-20: Everything works fine!
twm4nx:
This configuration exercises the port of TWM to NuttX. A description of
that port is available at apps/graphics/twm4nx/README.txt.
NOTES:
1. This version uses the on-board display with the touchscreen for
positional input (instead of a mouse). Keyboard input is currently
disabled only because (1) there is no Twm4Nx application that needs
it, and (2) I will first need to create a USB host driver to support
a USB keyboard.
STATUS:
2019-05-04: Initial display is clean but touchscren input is not yet
functional. Left-click main menu functionality is required to test
much more.

View File

@ -0,0 +1,99 @@
#
# This file is autogenerated: PLEASE DO NOT EDIT IT.
#
# You can use "make menuconfig" to make any modifications to the installed .config file.
# You can then do "make savedefconfig" to generate a new defconfig file that includes your
# modifications.
#
# CONFIG_ARCH_FPU is not set
# CONFIG_NXFONTS_DISABLE_16BPP is not set
# CONFIG_NXTK_DEFAULT_BORDERCOLORS is not set
# CONFIG_NX_DISABLE_16BPP is not set
CONFIG_ARCH="arm"
CONFIG_ARCH_BOARD="lpcxpresso-lpc54628"
CONFIG_ARCH_BOARD_LPCXPRESSO_LPC54628=y
CONFIG_ARCH_CHIP_LPC54628=y
CONFIG_ARCH_CHIP_LPC54XX=y
CONFIG_ARCH_INTERRUPTSTACK=2048
CONFIG_ARCH_STACKDUMP=y
CONFIG_ARCH_STDARG_H=y
CONFIG_BOARD_LOOPSPERMSEC=21082
CONFIG_EXPERIMENTAL=y
CONFIG_FS_PROCFS=y
CONFIG_FT5X06_POLLMODE=y
CONFIG_FT5X06_SINGLEPOINT=y
CONFIG_FT5X06_SWAPXY=y
CONFIG_GRAPHICS_TWM4NX=y
CONFIG_HAVE_CXX=y
CONFIG_HAVE_CXXINITIALIZE=y
CONFIG_INPUT=y
CONFIG_INPUT_FT5X06=y
CONFIG_LIB_HOSTNAME="LPCXpresso-LPC54628"
CONFIG_LPC54_EMC=y
CONFIG_LPC54_EMC_DYNAMIC_CS0=y
CONFIG_LPC54_EMC_DYNAMIC_CS0_OFFSET=0x00080000
CONFIG_LPC54_EMC_DYNAMIC_CS0_SIZE=0x00f80000
CONFIG_LPC54_GPIOIRQ=y
CONFIG_LPC54_I2C2_MASTER=y
CONFIG_LPC54_LCD=y
CONFIG_LPC54_LCD_BGR=y
CONFIG_LPC54_LCD_BPP16_565=y
CONFIG_LPC54_LCD_HBACKPORCH=43
CONFIG_LPC54_LCD_HFRONTPORCH=8
CONFIG_LPC54_LCD_VBACKPORCH=12
CONFIG_LPC54_LCD_VFRONTPORCH=4
CONFIG_LPC54_LCD_VPULSE=10
CONFIG_LPC54_LCD_VRAMBASE=0xa0000000
CONFIG_LPC54_USART0=y
CONFIG_MAX_TASKS=16
CONFIG_MAX_WDOGPARMS=2
CONFIG_MM_REGIONS=2
CONFIG_MQ_MAXMSGSIZE=64
CONFIG_NFILE_DESCRIPTORS=8
CONFIG_NFILE_STREAMS=8
CONFIG_NX=y
CONFIG_NXFONT_SANS22X29B=y
CONFIG_NXFONT_SANS23X27=y
CONFIG_NXTERM=y
CONFIG_NXTERM_CACHESIZE=32
CONFIG_NXTERM_CURSORCHAR=95
CONFIG_NXTERM_MXCHARS=325
CONFIG_NXTERM_NXKBDIN=y
CONFIG_NXTK_BORDERCOLOR1=0x5cb7
CONFIG_NXTK_BORDERCOLOR2=0x21c9
CONFIG_NXTK_BORDERCOLOR3=0xffdf
CONFIG_NXWIDGETS_BPP=16
CONFIG_NXWIDGETS_CUSTOM_EDGECOLORS=y
CONFIG_NXWIDGETS_CUSTOM_FILLCOLORS=y
CONFIG_NXWIDGETS_DEFAULT_BACKGROUNDCOLOR=0x9dfb
CONFIG_NXWIDGETS_DEFAULT_HIGHLIGHTCOLOR=0xc618
CONFIG_NXWIDGETS_DEFAULT_SELECTEDBACKGROUNDCOLOR=0xd73e
CONFIG_NXWIDGETS_DEFAULT_SHADOWEDGECOLOR=0x21e9
CONFIG_NXWIDGETS_DEFAULT_SHINEEDGECOLOR=0xffdf
CONFIG_NXWIDGETS_SIZEOFCHAR=1
CONFIG_NX_BLOCKING=y
CONFIG_NX_KBD=y
CONFIG_NX_SWCURSOR=y
CONFIG_NX_XYINPUT_TOUCHSCREEN=y
CONFIG_PREALLOC_MQ_MSGS=64
CONFIG_PREALLOC_TIMERS=4
CONFIG_PREALLOC_WDOGS=8
CONFIG_RAM_SIZE=163840
CONFIG_RAM_START=0x20000000
CONFIG_RAW_BINARY=y
CONFIG_RR_INTERVAL=200
CONFIG_SCHED_HPWORK=y
CONFIG_SCHED_ONEXIT=y
CONFIG_SCHED_WAITPID=y
CONFIG_SDCLONE_DISABLE=y
CONFIG_START_DAY=4
CONFIG_START_MONTH=5
CONFIG_START_YEAR=2019
CONFIG_SYMTAB_ORDEREDBYNAME=y
CONFIG_TASK_NAME_SIZE=0
CONFIG_TWM4NX_ARCHINIT=y
CONFIG_TWM4NX_NOKEYBOARD=y
CONFIG_TWM4NX_TOUCHSCREEN=y
CONFIG_USART0_SERIAL_CONSOLE=y
CONFIG_USER_ENTRYPOINT="twm4nx_main"
CONFIG_WDOG_INTRESERVE=0

View File

@ -1684,3 +1684,14 @@ Configuration sub-directories
STATUS:
2019-04-28: Configuration created. Not verified.
2019-05-04: Only partially functional. VNC is a difficult way to
debug Twm4Nx because it has its own level of complexities due to
networking, mysterious VNC client behavior, and fragile VNC
configurations. I am setting this on the shelf for the time
being. I will stabilize Twm4Nx on another platform first. Just
too many degrees of freedom.
2019-05-04: Testing on hardware reveals that VNC is the source of
most of the issues. Things look good on real, local hardware
(see configs/lpcxpresso-lpc54628/twm4nx). VNC is just not mature
enough for this kind of usage at this time.

View File

@ -672,6 +672,9 @@ nsh2
may not even be usable in all of those environments without some "tweaking"
See discussion below under the nx11 configuration).
For examples, it expects to be able to include X11/Xlib.h. That currently
fails on my Linux box.
nx
Configures to use apps/examples/nx.
@ -851,6 +854,11 @@ nxwm
However, I will leave the above text in place until I get then
oppotunity to verify that the new UART simulation fixes the problem.
2019-05-04: Something has changed. Today this configuration failed
to build because is requires CONFIG_NX_XYINPUT=y in the configuration.
That indicates mouse or touchscreen support. Apparently, the current
NxWM will not build without this support.
ostest
The "standard" NuttX apps/examples/ostest configuration.

View File

@ -155,4 +155,3 @@ distclean: clean
$(call DELFILE, .depend)
-include Make.dep

View File

@ -98,11 +98,9 @@ int nxterm_semwait(FAR struct nxterm_state_s *priv)
int nxterm_sempost(FAR struct nxterm_state_s *priv)
{
pid_t me = getpid();
/* Make sure that I really hold the semaphore */
DEBUGASSERT(priv->holder == me);
DEBUGASSERT(priv->holder == getpid());
/* Then let go of it */