Squashed commit of the following:

libnx/nxfonts:  Cosmetic; reduce amount of debug output.
    configs/open1788/pdcurses:  Add a configuration for testing pdcurses.
This commit is contained in:
Gregory Nutt 2017-11-19 13:31:04 -06:00
parent ce42b0e030
commit 34bae015df
3 changed files with 140 additions and 71 deletions

View File

@ -245,6 +245,44 @@ Loading Code with the ISP Board
CONFIGURATION
=============
Information Common to All Configurations
----------------------------------------
1. These configurations use the mconf-based configuration tool. To
change this configuration using that tool, you should:
a. Build and install the kconfig-mconf tool. See nuttx/README.txt
see additional README.txt files in the NuttX tools repository
README.txt.
b. Execute 'make menuconfig' in nuttx/ in order to start the
reconfiguration process.
2. Most (but not all) configurations use the "GNU Tools for ARM
Embedded Processors" that is maintained by ARM:
https://developer.arm.com/open-source/gnu-toolchain/gnu-rm
unless otherwise stated.
That toolchain selection can easily be reconfigured using
'make menuconfig'. Here are the relevant current settings:
Build Setup:
CONFIG_HOST_WINDOWS=y : Window environment
CONFIG_WINDOWS_CYGWIN=y : Cywin under Windows
System Type -> Toolchain:
CONFIG_ARMV7M_TOOLCHAIN_GNU_EABIW=y : GNU ARM EABI toolchain
3. By Default, UART0 is used as the serial console in all configurations.
This may be connected to your computer via an external RS-232 driver or
via the WaveShare USB ISP/VCOM module. See the section above entitled
"Serial Console" for other options.
Configuration Directories
-------------------------
fb
--
@ -256,32 +294,7 @@ CONFIGURATION
NOTES:
1. This configuration uses the mconf-based configuration tool. To
change this configuration using that tool, you should:
a. Build and install the kconfig-mconf tool. See nuttx/README.txt
see additional README.txt files in the NuttX tools repository
README.txt.
b. Execute 'make menuconfig' in nuttx/ in order to start the
reconfiguration process.
2. This configuration uses the "GNU Tools for ARM Embedded Processors"
that is maintained by ARM:
https://developer.arm.com/open-source/gnu-toolchain/gnu-rm
That toolchain selection can easily be reconfigured using
'make menuconfig'. Here are the relevant current settings:
Build Setup:
CONFIG_HOST_WINDOWS=y : Window environment
CONFIG_WINDOWS_CYGWIN=y : Cywin under Windows
System Type -> Toolchain:
CONFIG_ARMV7M_TOOLCHAIN_GNU_EABIW=y : GNU ARM EABI toolchain
3. In this configuration, the SDRAM is not added to heap but is
1. In this configuration, the SDRAM is not added to heap but is
dedicated to supporting an LCD frame buffer at address 0xa0010000.
knsh
@ -299,24 +312,13 @@ CONFIGURATION
Make the user-space binaries first (pass1), then make the kernel-space
binaries (pass2)
NOTES:
1. This configuration uses the mconf-based configuration tool. To
change this configuration using that tool, you should:
a. Build and install the kconfig-mconf tool. See nuttx/README.txt
see additional README.txt files in the NuttX tools repository.
b. Execute 'make menuconfig' in nuttx/ in order to start the
reconfiguration process.
2. Uses the older, OABI, buildroot toolchain. But that is easily
1. Uses the older, OABI, buildroot toolchain. But that is easily
reconfigured:
CONFIG_ARMV7M_TOOLCHAIN_BUILDROOT=y : Buildroot toolchain
CONFIG_ARMV7M_OABI_TOOLCHAIN=y : Older, OABI toolchain
3. This configuration has DMA-based SD card support enabled by
2. This configuration has DMA-based SD card support enabled by
default. That support can be disabled as follow:
CONFIG_LPC17_GPDMA=n : No DMA
@ -326,7 +328,7 @@ CONFIGURATION
CONFIG_MMCSD=n : No MMC/SD driver support
CONFIG_FS_FAT=n : No FAT file system support
4. At the end of the build, there will be several files in the top-level
3. At the end of the build, there will be several files in the top-level
NuttX build directory:
PASS1:
@ -348,7 +350,7 @@ CONFIGURATION
load objects twice to account for write failures. I have not yet
found a simple foolproof way to reliably get the code into FLASH.
5. Combining .hex files. If you plan to use the .hex files with your
4. Combining .hex files. If you plan to use the .hex files with your
debugger or FLASH utility, then you may need to combine the two hex
files into a single .hex file. Here is how you can do that.
@ -399,25 +401,16 @@ CONFIGURATION
NOTES:
1. This configuration uses the mconf-based configuration tool. To
change this configuration using that tool, you should:
a. Build and install the kconfig-mconf tool. See nuttx/README.txt
see additional README.txt files in the NuttX tools repository./README.txt.
b. Execute 'make menuconfig' in nuttx/ in order to start the
reconfiguration process.
2. Uses the older, OABI, buildroot toolchain. But that is easily
1. Uses the older, OABI, buildroot toolchain. But that is easily
reconfigured:
CONFIG_ARMV7M_TOOLCHAIN_BUILDROOT=y : Buildroot toolchain
CONFIG_ARMV7M_OABI_TOOLCHAIN=y : Older, OABI toolchain
3. This NSH has support for built-in applications enabled, however,
2. This NSH has support for built-in applications enabled, however,
no built-in configurations are built in the defulat configuration.
4. This configuration has DMA-based SD card support enabled by
3. This configuration has DMA-based SD card support enabled by
default. That support can be disabled as follow:
CONFIG_LPC17_GPDMA=n : No DMA
@ -427,12 +420,12 @@ CONFIGURATION
CONFIG_MMCSD=n : No MMC/SD driver support
CONFIG_FS_FAT=n : No FAT file system support
5. This configuration has been used for verifying SDRAM by modifying
4. This configuration has been used for verifying SDRAM by modifying
the configuration in the following ways:
CONFIG_LPC17_EMC=y : Enable the EMC
CONFIG_LPC17_EXTDRAM=y : Configure external DRAM
CONFIG_LPC17_EXTDRAMSIZE=67108864 : DRAM size 2x256/8 = 64MB
CONFIG_LPC17_EXTDRAM=y : Configure external DRAM
CONFIG_LPC17_EXTDRAMSIZE=67108864 : DRAM size 2x256/8 = 64MB
CONFIG_SYSTEM_RAMTEST=y : Enable the RAM test built-in
In this configuration, the SDRAM is not added to heap and so is
@ -460,7 +453,7 @@ CONFIGURATION
CONFIG_SPI_EXCHANGE=n : exchange() method is not supported
System Type:
CONFIG_LPC17_GPIOIRQ=y : GPIO interrupt support
CONFIG_LPC17_GPIOIRQ=y : GPIO interrupt support
CONFIG_LPC17_SSP1=y : Enable support for SSP1
RTOS Features:
@ -514,22 +507,26 @@ CONFIGURATION
NOTES:
1. This configuration uses the mconf-based configuration tool. To
change this configuration using that tool, you should:
a. Build and install the kconfig-mconf tool. See nuttx/README.txt
see additional README.txt files in the NuttX tools repository
README.txt.
b. Execute 'make menuconfig' in nuttx/ in order to start the
reconfiguration process.
2. Uses the older, OABI, buildroot toolchain. But that is easily
1. Uses the older, OABI, buildroot toolchain. But that is easily
reconfigured:
CONFIG_ARMV7M_TOOLCHAIN_BUILDROOT=y : Buildroot toolchain
CONFIG_ARMV7M_OABI_TOOLCHAIN=y : Older, OABI toolchain
3. In this configuration, the SDRAM is not added to heap but is
2. In this configuration, the SDRAM is not added to heap but is
dedicated to supporting an LCD frame buffer at address 0xa0010000.
pdcurses
-------
A simple NSH configuration used for some basic (non-graphic) debug of
the framebuffer character drivers using both apps/examples/pdcurses and
apps/examples/fb as NSH built-in applications. This configuration
enables SDRAM to hold the LCD framebuffer and enables the LPC178x LCD
driver in order to support the WaveShare 4.3 inch TFT panel.
NOTES:
1. In this configuration, the SDRAM is not added to heap but is
dedicated to supporting an LCD frame buffer at address 0xa0010000.

View File

@ -0,0 +1,64 @@
# CONFIG_NSH_DISABLE_IFCONFIG is not set
# CONFIG_NSH_DISABLE_PS is not set
CONFIG_ARCH_BOARD_OPEN1788=y
CONFIG_ARCH_BOARD="open1788"
CONFIG_ARCH_CHIP_LPC1788=y
CONFIG_ARCH_CHIP_LPC17XX=y
CONFIG_ARCH_STACKDUMP=y
CONFIG_ARCH="arm"
CONFIG_ARMV7M_TOOLCHAIN_GNU_EABIW=y
CONFIG_BCH=y
CONFIG_BOARD_LOOPSPERMSEC=11934
CONFIG_BUILTIN=y
CONFIG_DEV_LOOP=y
CONFIG_DRIVERS_VIDEO=y
CONFIG_EXAMPLES_FB=y
CONFIG_EXAMPLES_NSH=y
CONFIG_EXAMPLES_PDCURSES=y
CONFIG_FAT_LCNAMES=y
CONFIG_FAT_LFN=y
CONFIG_FS_FAT=y
CONFIG_FS_ROMFS=y
CONFIG_GRAPHICS_PDCURSES=y
CONFIG_HOST_WINDOWS=y
CONFIG_INTELHEX_BINARY=y
CONFIG_LPC17_EXTDRAM=y
CONFIG_LPC17_EXTDRAMSIZE=67108864
CONFIG_LPC17_GPDMA=y
CONFIG_LPC17_LCD=y
CONFIG_LPC17_SDCARD=y
CONFIG_LPC17_UART0=y
CONFIG_MAX_TASKS=16
CONFIG_MAX_WDOGPARMS=2
CONFIG_MM_REGIONS=2
CONFIG_MMCSD_SDIO=y
CONFIG_MMCSD=y
CONFIG_NFILE_DESCRIPTORS=8
CONFIG_NFILE_STREAMS=8
CONFIG_NSH_ARCHINIT=y
CONFIG_NSH_BUILTIN_APPS=y
CONFIG_NSH_FILEIOSIZE=512
CONFIG_NSH_READLINE=y
CONFIG_NXFONTS_DISABLE_24BPP=y
CONFIG_NXFONTS_DISABLE_2BPP=y
CONFIG_NXFONTS_DISABLE_32BPP=y
CONFIG_NXFONTS_DISABLE_4BPP=y
CONFIG_NXFONTS_DISABLE_8BPP=y
CONFIG_PIPES=y
CONFIG_PREALLOC_MQ_MSGS=4
CONFIG_PREALLOC_TIMERS=4
CONFIG_PREALLOC_WDOGS=4
CONFIG_RAM_SIZE=65536
CONFIG_RAM_START=0x10000000
CONFIG_RR_INTERVAL=200
CONFIG_SCHED_HPWORK=y
CONFIG_SCHED_HPWORKPRIORITY=192
CONFIG_SCHED_WAITPID=y
CONFIG_START_DAY=19
CONFIG_START_MONTH=11
CONFIG_SYMTAB_ORDEREDBYNAME=y
CONFIG_TASK_NAME_SIZE=0
CONFIG_UART0_SERIAL_CONSOLE=y
CONFIG_USER_ENTRYPOINT="nsh_main"
CONFIG_VIDEO_FB=y
CONFIG_WDOG_INTRESERVE=0

View File

@ -480,7 +480,7 @@ static inline FAR const struct nx_fontset_s *
{
/* Someday, perhaps 16-bit fonts will go here */
gerr("ERROR: 16-bit font not currently supported\n");
gwarn("WARNING: 16-bit font not currently supported\n");
return NULL;
}
@ -491,7 +491,15 @@ static inline FAR const struct nx_fontset_s *
return fontset;
}
gerr("ERROR: No bitmap for code %02x\n", ch);
/* Too much debug output for the case of space which never resides in the
* font.
*/
if (ch != ' ')
{
gwarn("WARNING: No bitmap for code %02x\n", ch);
}
return NULL;
}