| NuttX-7.26 |
| ---------- |
| |
| The 126th release of NuttX, Version 7.26, was made on September 8, 2018, |
| and is available for download from the Bitbucket.org website. Note |
| that release consists of two tarballs: nuttx-7.26.tar.gz and |
| apps-7.26.tar.gz. These are available from: |
| |
| https://bitbucket.org/nuttx/nuttx/downloads |
| https://bitbucket.org/nuttx/apps/downloads |
| |
| Both may be needed (see the top-level nuttx/README.txt file for build |
| information). |
| |
| Additional new features and extended functionality: |
| |
| * Core OS: |
| |
| - General: Eliminate use of the non-standard type systime_t and |
| replace it the equivalent, standard type clock_t From Gregory Nutt. |
| - General: Replace non critical PANIC with DEBUGPANIC to save the |
| code space From Xiang Xiao. |
| - General: Replace all ASSERT with DEBUGASSERT to save the code |
| space From Xiang Xiao. |
| - Initialization: Add option to mount block device for |
| INIT_FILEPATH case. From anchao. |
| - clock(): clock_systimer() is no longer a system interface. It has |
| been replaced with the equivalent, standard interface clock(). |
| Moved the implementation of clock() from the C library into the OS |
| core. This is necessary because it calls the (now) internal OS |
| function clock_systimer(). clock() is now accessed only via a |
| system call in certain configurations. From Gregory Nutt. |
| - clock Utilities: Move clock_timespec_[add|subtract] to |
| include/nuttx/clock.h From Xiang Xiao. |
| - Binary Loader: Add binfmt_initialize(). All binary formats are |
| now registered centrally vs. in board-specific logic. This |
| simplifies the usage of the binfmt subsystem. From Xiang Xiao. |
| - Binary Loader: Reference default symtab name to binfmt From anchao. |
| - mm: Add mm_heapmember function and reimplement kmm_heapmember base |
| on mm_heapmember since this function is very useful if multiple |
| heaps exist. From Xiang Xiao. |
| - mm: Add {kumm/kmm}_calloc API. Add calloc API for manage user |
| memory and kernel memory in Flat Build/Kernel Build without kernel |
| heap. From zhuyanlin. |
| - pthreads: Add support static pthread stack. Add standard |
| pthread_attr_setstack() and pthread_attr_getstack(). In all cases |
| where the stack is released, add check to see which allocator must |
| be used to free the stack: The user or the kernel allocator. From |
| xuanlin. |
| - Semaphores: Apply the semaphore wait function |
| nxsem_wait_uninterruptible(). This function is a wrapped version |
| of nxsem_wait() that is uninterruptible and convenient for use. |
| From liuhaiyang. |
| - Signals: Add default signal action to SIGKILL. From ligd. |
| - Signals: Update the signal default action logic to support |
| sigaction(). signaction() must be able to handle and input action |
| of SIG_DFL to setup the default signal action; it mast also return |
| SIG_DFL it is replacing the default action. From Gregory Nutt. |
| - Signals: Default Signal Actions. Change some types to |
| superficially simplify. Add configuration options to enabled |
| default signal behaviors on a per-signal basis. I don't think |
| users are prepared for SIGALRM to terminate the task (which is the |
| correct default behavior if you don't change it). Extend the |
| implementation of default signals so that it is totally table |
| driven and extensible by simply mondifying the content of const |
| tables. From Gregory Nutt. |
| - Signals: Add support for SIGINT in addition to SIGKILL. |
| - Signals: Add logic and an interface to determine if a signal can |
| be caught or ignored. sigaction now correctly returns EINVAL on |
| any attempt to catch or ignore such signals (only SIGKILL for now |
| and only if CONFIG_SIG_DEFAULT=y). From Gregory Nutt. |
| - Signals: Add support for default signal actions for SIGSTOP, |
| SIGSTP, and SIGCONT. Add procfs support to show stopped tasks. |
| From Gregory Nutt. |
| - Signals: Add nxsig_action() to solve a chicken and egg problem: |
| We needed to use sigaction to set default actions, but sigaction() |
| would refuse to set actions if the default actions could not be |
| caught or ignored. From Gregory Nutt. |
| - Signals: Add configuration option to selectively enabled/disable |
| default signal actions for SIGSTOP/SIGSTP/SIGCONT and SIGKILL/SIGINT. |
| - Signals: If a task/thread was already blocked when |
| SIGSTOP/SIGSTP was received, it will restart in the running state. |
| It will appear that to the task/thread that the blocked condition |
| was interrupt by a signal and returns the EINTR error. From |
| Gregory Nutt. |
| - Signals: Update signal default STOP action. If waitpid was |
| called with the WUNTRACED then wake up waitpid(). From Gregory |
| Nutt. |
| - IRQs: Monitor the IRQ execution time. This is very useful for |
| measuring the interrupt latency. From Xiang Xiao. |
| - IRQ Dispatch: Add support interrupt chains in NuttX. IRQ chain is |
| very useful in these cases: (1) Multiple hardware connect to the |
| same request line(e.g. PCI), (2) Need multiple driver to support |
| one hardware block (like Linux MFD) From zhuguangqing. |
| - Work Queue: Modify high priority work queue to support multiple |
| threads. From ligd. |
| - System Calls: Add support for getpeername() and get_sockname() |
| system calls. From Gregory Nutt. |
| - System Calls: svcall/sycall logic needs to get the ucontext |
| argument from R4 instead of stack since all syscall parameters pass |
| from registers in syscall.h From Xiang Xiao. |
| - CPU Load Measurement: Support the CPU load measurement using |
| timer_lowerhalf_s interface From Xiang Xiao. |
| - Assertions: Change CONFIG_BOARD_RESET_ON_CRASH to |
| CONFIG_BOARD_RESET_ON_ASSERT, arch/: Implement call to |
| board_reset() if in all implementations of up_assert() when |
| CONFIG_BOARD_RESET_ON_ASSERT=y. From Xiang Xiao. |
| - boardctl(): Add support for board_app_finalinitialize() From ligd. |
| - Architecture Interface: Add prototype for an architecture-specific |
| up_trigger_irq function. From dongjianli. |
| - Architecture Interface: Add the garbage collection hook so each |
| architecture can do custom memory cleanup if necessary. From Xiang |
| Xiao. |
| - Architecture Interface: Add architecture-specific prototypes for |
| conversions between physical and virtual address. From ligd. |
| |
| * File Systems/Block and MTD Drivers |
| |
| - ProcFS: Add support for a procfs entry that will permit examining |
| the environment of any task. From Gregory Nutt. |
| - ProcFS: Add support for proc/self/, a convenient way for getting |
| information about the currently running task. From Gregory Nutt. |
| - HostFS: Add support for open() append mode From anchao. |
| - HostFS: Add ftruncate support. From Xiang Xiao. |
| - HostFS: Remove ARCH_SIM dependence since other architectures |
| (e.g., arm semihosting) could support hostfs too From Xiang Xiao. |
| - HostFS: Support remote directory names without a trailing '/' |
| From ligd. |
| - HostFS: Add re-try when hostfs mount() fails From ligd. |
| - NFS: Update NFS client mount to VER3 From zhangyuan7. |
| - Partitions: Add PTABLE parser fs/partion: Add a partition parser |
| framework fs/driver/fs_blockpartition.c: Add |
| register_blockpartition for block partition From Xiang Xiao. |
| - MTD: Add gd25 driver From wangyanjiong. |
| - MTD: In MTD partitions, copy the partition name to internal |
| buffer so that the caller can free the name argument From Xiang |
| Xiao. |
| - MTD: Support initialization of an FTL block device with a custom |
| name From Xiang Xiao. |
| - MTD: FTL: Reduce size of stack buffer from 64 to a maximum size |
| as determined from NAME_MAX. From Gregory Nutt. |
| - VFS poll(): Send poll() notification when the Tx buffer is flushed |
| From ligd. |
| - VFS fstat(): Add file_fstat() function for internal OS use. From |
| ligd. |
| - VFS fcntl(): Add file_fcntl, psock_fcntl, and psock_dupsd for use |
| within the kernel. From Xiang Xiao. |
| - VFS dup2(): Addpsock_dupsd for use within the kernel. From Xiang |
| Xiao. |
| - VFS poll(): Add poll use in kernel space. From dongjianli. |
| - VFS select(): Make select be more consistent with Linux man page: |
| 'The timeout ... Some code calls select() with all three sets |
| empty, nfds zero, and a non-NULL timeout as a fairly portable way |
| to sleep with subsecond precision.' From anchao. |
| |
| * Networking/Network Drivers: |
| |
| - Sockets: Add getpeername() support From ligd. |
| - sockopt(): Move psock check from [get|set]sockopt to |
| psock_[get|set]sockopt From Xiang Xiao. |
| - getsockname(): Add psock_getsockname function From Xiang Xiao. |
| - Netlink Sockets: This brings in a fragmentary, experimental |
| implementation of NETLINK sockets. There is not too much to that |
| socket support on this initial commit, just the netlink socket |
| framework. However, I decided to bring it into master because |
| there is a enough that I would not want to lose what is in place. |
| And since it is dependent on CONFIG_EXPERIMENTAL, its presence on |
| master should be innocuous. From Gregory Nutt. |
| - Interface Indexes: Add driver interface index support. Add |
| implementation of if_nametoindex() and if indextoname(). Raw |
| AF_PACKET sockets now depend on CONFIG_NETDEV_IFINDEX. Add syscall |
| support for if_nametoindex() and if_indextoname(). Includes an |
| algorithm to prevent an interface index from being reused until all |
| network interfaces have by assigned once. The prevents removable |
| devices from being removed, unregistered and re-installed, |
| re-registered and keeping the same interface index. From Gregory |
| Nutt. |
| - Driver Interface: Add devif_loopback() to check the loopback |
| case where a packet is being sent to itself. Modify the net driver |
| to call this function in this case. This function will simply |
| re-inject the packet back into the network and the network driver |
| will not put anything on the wire. From Xiang Xiao. |
| - Network Devices: Remove all references to CONFIG_NET_USER_DEVFMT. |
| That feature is now unconditionally enabled. This was done because |
| (1) the feature does not require very much additional memory, and |
| (2) it causes confusion in the configuration due to the additional |
| complexity. Any network drivers that fail to zero the device |
| structure interface name field (d_ifname) because calling |
| netdev_register() will, however, get a nasty surprise. From |
| Gregory Nutt. |
| - Network Devices: Add support for Microchip LAN91C111 driver From |
| Xiang Xiao. |
| - Network Devices: netdev_findby_ipv[4|6]addr return |
| netdev_default() as last resort but don't return loopback device |
| if another network device is in the UP state. From Xiang Xiao. |
| - Network Device IOCTLs: Add si_ioctl callback and net_ioctl_arglen |
| so usrsock could forward the ioctl to the remote end/ From |
| dongjianli. |
| - IPv6: Rename g_ipv6_allzeroaddress with the more meaning |
| g_ipv6_unspecaddr since the all-zero address is the IPv6 |
| unspecified address (sometime IN6_ADDR_ANY). Replace more inline |
| tests for IPv6 multicast with common net_is_addr_mcast() macro. |
| From Gregory Nutt. |
| - ARP: arp_find() now checks if the target IP belongs to one of the |
| local network devices. From Xiang Xiao. |
| - ARP: Make the function arp_find() thread-safe. It now returns a |
| copy of the MAC address from the ARP table entry, rather than a |
| potentially unstable reference to the ARP table entry. From |
| Gregory Nutt. |
| - TCP: Re-work of TCP receive window size algorithm. The new logic |
| is based only on the ability to buffer TCP read-ahead data. From |
| Gregory Nutt. |
| - UDP: Add support for the UDP_BINDTODEVICE protocol socket option |
| From Sebastien Lorquet. |
| - Slip: Uncomment the prompt of NET_SLIP_PKTSIZE in Kconfig file. |
| From Xiang Xiao. |
| - USRSOCK: Combine some the duplicated logic. From Xiang Xiao. |
| - USRSOCK: Optimize option dependence From Xiang Xiao. |
| - USRSOCK: Add the listen/accept/getpeername/ioctl support From |
| dongjianli. |
| |
| * Other Common Device Drivers: |
| |
| - Analog DAC: Add driver for digital to analog converter DAC7571. |
| Nucleo-L422KC: Add support for a connect DAC7571 converter. From |
| Daniel Pereira Carvalho. |
| - Audio Interface: Change member samp of apb to pointer so driver |
| can customize sample buffer allocation From ZhongAn. |
| - Audio Interface: Add ioctl cmd 'AUDIOIOC_SETBUFFERINFO' so user |
| space could config the buffer From ZhongAn. |
| - Audio Interface: Add hardware format support From anchao. |
| - I2S Interface: Add i2s_rxchannels and i2s_txchannels methods to |
| the I2S lower half interface. From ZhongAn. |
| - Audio: Move the I2S character driver to a dedicated folder. From |
| Xiang Xiao. |
| - Audio: Add audio_i2s device driver. From ZhongAn. |
| - Audio: Add the composite audio driver From Xiang Xiao. |
| - Crypto: Move dev_urandom.c into new crypto folder. From Xiang |
| Xiao. |
| - GPIO driver: Add gpio_pin_unregister function to GPIO driver |
| driver/ioexpander: Add pinset struct to GPIO driver for interrupt |
| pins larger than 64. Initialize pintype/inttype when registering |
| ioexpander device. Add SETPINTYPE ioctl command to the GPIO |
| driver. From zhuyanlin. |
| - I2C Interface: Add a definition to distinguish a new START of |
| messages from a repeated start. No lower-half I2C drivers actually |
| implement this new flag bit, however. In I2C write/read logic use |
| new repeated START definition where appropriate. Rename |
| I2C_M_NORESTART to I2C_M_NOSTART since it may be used in other |
| contexts than a repeated start. Add comments to clarify setup for |
| repeated start. From Gregory Nutt. |
| - I2C: Add the standard speed macros. From dongjiuzhu. |
| - Leds: Add support to MAX7219 to control 7-segment displays. From |
| Alan Carvalho de Assis. |
| - Power: PM: Add pm_stay and pm_relax function so special apps(e.g. |
| mediaplayer) could disable suspend during playback much like linux |
| kernel counterpart From Xiang Xiao. |
| - Power: PM: Add pm_querystate function From zhuguangqing. |
| - Power: PM: Don't update the power state in work thread: (1) |
| Simplify the code logic and remove the work queue dependence, (2) |
| Power calculation is too simple to delay into the work queue From |
| Xiang Xiao. |
| - Power: PM: Decrease the power state in the reverse order. Since |
| the child driver need power off before parent driver. From |
| zhuguangqing. |
| - Power: PM: Make power manager service available as soon as |
| possible: (1) Initialize g_pmglobals at the definition, (2) skip |
| hold the lock if OS isn't ready From Xiang Xiao. |
| - Power: PM: Add PM_RESTORE to notify driver that device exit WFI |
| so the driver could restore state. For example, WDT may stop |
| counting before enter low power state and restore the counting |
| again in PM_RESTORE notification From zhuguangqing. |
| - Power: PM: Add timer to decrease PM level automatically. From |
| ligd. |
| - PTYs: Add support so that a PTY can poll for both IN/OUT event |
| simultaneously. From ligd. |
| - PWM: Move pwm.c into pwm folder From Xiang Xiao. |
| - RTC Interface: Extend struct rtc_time by adding. From Xiang |
| Xiao. tm_nsec if RTC supports hiresolution time. From Xiang Xiao. |
| - Sensors: Add support for Telair T6713 carbon dioxide sensor. From |
| Juha Niskanen. |
| - Sensors: Add support for LSM303AGR and LSM6DSL sensors From |
| DisruptiveNL. |
| - Sensors: Add driver for DHTxx sensor. From Ouss4. |
| - syslog: Enable a partial, crippled version of syslog_flush(); |
| Call syslog_flush() from assertion handling logic of all |
| architectures. From Gregory Nutt. |
| - syslog: Channel configuration. Decouple SYSLOG_SERIAL_CONSOLE and |
| ARCH_LOWPUTC. Since some hardware can output log to the special |
| debug channel not serial. From anchao. |
| - syslog: Support pre-pending a prefix string to log output if |
| enabled. This very useful to identify which CPU send out the log |
| in AMP SoC. From anchao. |
| - Serial: Add Ctrl-C/Ctrl-X support. From ligd. |
| - Serial: Support UART direct write for non console device From |
| xuanlin. |
| - Serial: It is no longer necessary to restrict Ctrl-C handling to |
| the FLAT build sched/signal: Add a new configuration option to |
| select signal default actions, separate handling of signal default |
| actions from both task startup logic and from the serial TTY |
| Ctrl-C logic. Add a signal set in the group structure to keep |
| track of what signals have been set to the default action. In |
| dispatching signals in PROTECTED or KERNEL mode, use this signal |
| set to determine if the default signal handler is attached and |
| dispatch the signal in kernel mode for the default actions. From |
| Gregory Nutt. |
| - Serial: Integrate new Ctrl-C logic with the ISIG flag in the |
| termios c_lflag. From Gregory Nutt. |
| - Serial: Use SIGINT instead of SIGKILL when control-C is pressed. |
| From Gregory Nutt. |
| - Serial: Add support for Ctrl-Z. This works just like the |
| recently added Ctrl-C support except that SIGSTP is sent when the |
| Ctrl-Z characters is encountered vs. SIGINT. From Gregory Nutt. |
| - 16550 UART: Add a configuration, analogous to the STM32 |
| configuration option, to suppress the NuttX standard re-ordering |
| for /dev/ttySN for special case of the 16550 UART. |
| - 16550 UART: Add CONFIG_SERIAL_UART_ARCH_MMIO option so the a |
| memory mapped device doesn't need to provide uart_getreg() and |
| uart_putreg() implementations. |
| - 16550 UART: Add stub implementations of DMA-related methods in the |
| 16550 UART v-table. From ligd. |
| - 16550 UART: Add serial termios handling From anchao. |
| - 16550 UART: Support 16550 auto hardware flow control |
| drivers/serial/uart_16550.c: Add configuration option |
| CONFIG_16550_SUPRESS_INITIAL_CONFIG. This is identical to the |
| standard configuration in arch/Kconfig |
| CONFIG_SUPPRESS_UART_CONFIG, but with scope of only the 16550 |
| driver. From Xiang Xiao. |
| - syslog: Make timestamp output same as linux kernel. It's very |
| useful if NuttX syslog retarget to Linux syslog. From Xiang Xiao. |
| - Timers: Add maxtimeout method to the struct timer_ops_s interface |
| From Xiang Xiao. |
| - Timers: Add a new method to the struct oneshot_operations_s |
| interface to get the current time from a oneshot timer driver (if |
| it is available from the lower half) From Xiang Xiao. |
| - Timers: Implement timer arch API on top of timer driver. From |
| Xiang Xiao. |
| - Timers: Implement alarm arch API on top of oneshot driver |
| interface. From Xiang Xiao. |
| - Timers: Implement RTC arch API on top of RTC driver interface. |
| From Xiang Xiao. |
| - CDC/ECM: Adds USB device support for CDC/ECM From Michael Jung. |
| - USB Host: Add support for the Maxim M3421E USB host driver. Not |
| yet fully tested. From Gregory Nutt. |
| |
| * General Architecture-Specific: |
| |
| - All architectures: Make sure the up_irq_enable() is available on |
| all architectures. From Gregory Nutt. |
| |
| * Simulation |
| |
| - Simulator Configurations: Add dsptest configuration. From Mateusz |
| Szafoni. |
| - Simulator: In network driver (1) Remove up_comparemac() check for |
| matching MAC address. Let's trust that the tap device just return |
| the packet which belong to us like other real network device |
| hardware. (2) Add network device statistics support. From Xiang Xiao. |
| |
| * ARM: |
| |
| - ARM (all): Add CONFIG_DEBUG_MEMFAULT to Kconfig. From Masayuki |
| Ishikawa. |
| - ARM: (1) Add semihost support for syslog, (2) Add semihost support |
| for HostFS From Gregory Nutt. |
| |
| * ARMv6-M: |
| |
| - ARMv6-M: Introduce CONFIG_DEBUG_HARDFAULT_INFO to up_hardfault.c |
| From Masayuki Ishikawa. |
| |
| * ARMv7-M: |
| |
| - ARMv7-M: Removes support for the dedicated vector handling from the |
| many older architectures. Only common vectors are now supported. |
| From Gregory Nutt. |
| - ARMv7-M: Introduce CONFIG_DEBUG_HARDFAULT_INFO to up_hardfault.c |
| From Masayuki Ishikawa. |
| - ARMv7-M: Implement SYSTICK timer driver From Xiang Xiao. |
| - Simulator: Add loadable demo for arch sim. From anchao. |
| - ARMv7-M: Add logic to trigger ARMv7-M interrupts and exceptions. |
| From Gregory Nutt (from sample logic by Xiang Xiao). |
| - ARMv7-M: Add NVIC definitions needed by up_trigger_irq(). From |
| Gregory Nutt. |
| |
| * ARMv7-R: |
| |
| - ARMv7-R: Add general interrupt controller. This is based on |
| ARMv7-A gic controller code. From EunBong Song. |
| - ARMv7-R: Add invalidate dcache in arm_head.S. From EunBong Song. |
| |
| * Infineon XMC4xxx Drivers: |
| |
| - XMC4 GPIO: Add a specific bit encoding to GPIO driver for |
| opendrain GPIO pin. From Alan Carvalho de Assis. |
| |
| * Infineon XMC4xxx Boards: |
| |
| - XMC4500-Relax: Add support to MAX6675 on XMC4500-Relax board. |
| From Alan Carvalho de Assis. |
| |
| * Microchip PIC32MX Boards; |
| |
| - PIC32MX: Update some PIC32MX configurations so that either the |
| MPLAB or Penguino toolchains may be used. From Gregory Nutt. |
| |
| * Microchip/Atmel SAMD2x/L2x: |
| |
| - SAMD2x/L2x: Rename all usage of samdl/SAMDL to samd2l2/SAMD2L2 to |
| make room in the name space for samd5e5/SAMD5E5 From Gregory Nutt. |
| |
| * Microchip/Atmel SAMD5x/E5x: |
| |
| - SAMD5x/E5: Add a port to the SAMD5x/E5x MCU family. From Gregory |
| Nutt. |
| |
| * Microchip/Atmel SAMD5x/E5x Drivers: |
| |
| - SAMD5x/E5x SPI/I2C: Bring in untested SPI and I2C drivers from |
| SAMD2L2. From Gregory Nutt. |
| - SAMD5x/E5x DMA: Leverage the SAMD2L2 DMA controller. From Gregory |
| Nutt. |
| - SAMD5x/E5x USB: Bring the SAMDL2 USB driver into the SAMD5E5 |
| port. From Gregory Nutt. |
| |
| * Microchip/Atmel SAMD5x/E5x Boards: |
| |
| - Metro M4: Add support for the Adafruit Metro M4 board. From |
| Gregory Nutt. |
| - Metro M4: Add an option to build the Metro M4 image to run out of |
| SRAM. This ought to be a safer and quicker way to do the initial |
| bring-up (having bricked the first Metro M4 due to a bad FLASH |
| image). From Gregory Nutt. |
| - Metro M4: Add a configuration option to use OSCULP32K instead of |
| XOSC32K. From Gregory Nutt. |
| - Metro M4: After some final fixes related to the SERCOM console, |
| the basic NSH configuration appears fully functional. From |
| Gregory Nutt. |
| - Metro M4: Verify the CMCC and enable it by default in the NSH |
| configuration. From Gregory Nutt. |
| |
| * Microchip/Atmel SAMv7 Drivers: |
| |
| - SAMv7 CAN: Add ability for CAN BUS_OFF autorecovery according |
| ISO11898-1:2015. With this change we added an ioctl for triggering |
| the autorecovery sequence for BUS_OFF to the CAN-driver and the |
| SAMV7 low-level driver. According the datasheet: If the device |
| goes Bus_Off, it will set MCAN_CCCR.INIT of its own accord, |
| stopping all bus activities. Once MCAN_CCCR.INIT has been cleared |
| by the processor (application), the device will then wait for 129 |
| occurrences of Bus Idle (129 * 11 consecutive recessive bits) |
| before resuming normal operation. At the end of the Bus_Off |
| recovery sequence, the Error Management Counters will be reset. |
| During the waiting time after the resetting of MCAN_CCCR.INIT, each |
| time a sequence of 11 recessive bits has been monitored, a Bit0 |
| Error code is written to MCAN_PSR.LEC, enabling the processor to |
| readily check up whether the CAN bus is stuck at dominant or |
| continuously disturbed and to monitor the Bus_Off recovery |
| sequence. MCAN_ECR.REC is used to count these sequences. From |
| Frank Benkert. |
| |
| * NXP Freescale i.MX RT Drivers: |
| |
| - i.MXRT RTC: Add support for the i.MXRT RTC. This is code complete |
| (with limited features and options) but untested. The HPRTC is |
| functional. However, if the LPSRTC is enabled, then there is a |
| hang during LPSRTC initialization. It appears that there is some |
| problem in providing clocking and initializing the LPSRTC domain. |
| From Gregory Nutt. |
| - i.MXRT SNVS: Add trivial SNVS from Rev 1. of the Reference Manual. |
| From Gregory Nutt. |
| - i.MXRT LSPI: IMXRT1050 LPSPI register and bit definitions added. |
| From Ivan Ucherdzhiev. |
| - i.MXRT Serial: IMXRT1050 LPUART TERMIOS support added. From Ivan |
| Ucherdzhiev. |
| |
| * NXP Freescale i.MX RT Boards: |
| |
| - IMXRT1050-EVK: Add knsh configuration. PROTECTED mode NSH build. |
| From Gregory Nutt. |
| |
| * NXP Freescale Kinetis: |
| |
| - Kinetis: Add DMA support. From David Sidrane. |
| |
| * NXP Freescale Kinetis Drivers: |
| |
| - Kinetis: Use circular DMA as an option to augment the RX FIFOs in |
| the Serial driver. From David Sidrane. |
| |
| * NXP LPC54xx: |
| |
| - LPC54xx: The LPC54608 can only run at a maximum frequency of |
| 180Mhz. This configuration requires uses the clk_in, external |
| crystal clock, to drive the PLL. When that input was selected, the |
| board bootup failed waiting for the PLL to lock. After referring |
| the driver from NXP, we should turn on power sources for the ext |
| clock if system pll input select clk_in. NOTE that the LPC54628 |
| did not require this step... perhaps because the system oscillator |
| power was already enabled. From kxjiang. |
| - LC823450: Add support for mpu and userspace LC823450-XGEVK: Add |
| kostest PROTECTED build LC823450-XGEVK: Add knsh PROTECTED build |
| From Masayuki Ishikawa. |
| |
| * NXP LPC54xx Boards: |
| |
| - Lpcxpresso-LPC54628: Update lvgl board config to use the new |
| version From Alan Carvalho de Assis. |
| |
| * On Semi LPC23450 Drivers: |
| |
| - LC823450 Bluetooth: Add lc823450 Bluetooth support. From Masayuki |
| Ishikawa. |
| - LC823450 I2S: Add tx start threshold to lc823450_i2s.c In |
| addition, lc823450_i2s_send() now accepts byte-aligned stream. |
| From Masayuki Ishikawa. |
| - LC823450 SPI: Add SPI flash driver for lc823450. NOTE: Only bus |
| accelerator mode is supported. From Masayuki Ishikawa. |
| - LC823450: Change C-Buffer under-level control. The under-level |
| setting was changed from 1KB to 55KB. In previous implementation, |
| the setting can be changed by the tx threshold but it is fixed at |
| startup. Also, check write size and adjust alignment if needed. |
| From Masayuki Ishikawa. |
| |
| * On Semi LPC23450 Boards: |
| |
| - LC823450-XGEVK: Add loopback test for digital MIC on lc823450 via |
| i2schar driver. From Masayuki Ishikawa. |
| - LC823450-XGEVK: Add lc832450 elf test. From Masayuki Ishikawa. |
| - LC823450-XGEVK: Add posix_spawn configuration From Masayuki |
| Ishikawa. |
| |
| * STMicro STM32: |
| |
| - STM32 L4: Add initial support to STM32L4+ chips From Juha Niskanen. |
| - STM32 H7: A partial port to the STMicro STM32H7 by Simon Laube was |
| brought in from the PX4 repositories. Numerous changes were |
| make(by Mateusz Szafone). The basic STM32 H7 NSH configuration is |
| now functional, thanks to Mateusz Szafoni. |
| |
| * STMicro STM32 Drivers: |
| |
| - STM32 F0, F1-F4, F7, L4, H7: Added Single Wire Kconfig variable. |
| From David Sidrane. |
| - STM32 DAC: Set OUTEN bit for DAC1CH2 and DAC2CH1 power/motor. |
| Direction parameter is now int8 + add overload fault. From Mateusz |
| Szafoni. |
| - STM32 F1-F4 ADC: Allow multiple channels without DMA on |
| STM32L15XX. From Juha Niskanen. |
| - STM32 F1: Add FLASH register definitions for F1 parts that have |
| dual banked FLASH. From Dmitriy Linikov. |
| - STM32 F2: Added progmem interface support for STM32 F2 From |
| Dmitriy Linikov. |
| - STM32 F4: Ports STM32 LTDC and STM32 DMA2D to use the |
| framebuffer interface From Marco Krahl. |
| - STM32 F7: This change ports Marco Krahl's STM32F4 framebuffer |
| overlays for the LTDC and DMA2D into the STM32F7. That driver was |
| same as the STM32 F4 driver. From Gregory Nutt. |
| - STM32 F7: Port input capture from stm32. From Juha Niskanen. |
| - STM32 F7 FLASH: Ported the STM32 F2/F4 driver to the STM32 F7 |
| platform. From Evgeniy Bobkov. |
| - STM32 F7 SDMMC: Add SDIO card support to SDMMC driver. From |
| Ramtin Amin. |
| - STM32 F7 Serial: Previous logic would invalidate the data cache as |
| each byte was read from the DMA buffer. This change adds logic to |
| invalidate the data cache less frequently by monitoring the state |
| of the Rx DMA buffer cache coherency and invalidating only regions |
| as necessary. From Evgeniy Bobkov. |
| - STM32 F7: Add up_stackcheck.c From Daniel Agar. |
| - STM32 F7: Port the low-level PM functions to STM32 F7. From Juha |
| Niskanen. |
| - STM32 L4: STM32L4 has fetchadd and testset From Juha Niskanen. |
| - STM32 L4: Added custom pin mapping for STM32L4X2XX processors. |
| From Daniel P. Carvalho. |
| - STM32 L4 FLASH: stm32l4xrxx: allow board to override flash wait |
| states From Juha Niskanen. |
| - STM32 L4: Some updates to analog peripherals ADC, COMP and DFSDM |
| for STM32L4XR From Juha Niskanen. |
| - STM32 L4: Add getstatus and getperiod() method to the timer |
| driver (includes coding standard changes made prior to commit) |
| From Goden Freemans. |
| - STM32 H7: Remove old references to RXDMA. Add configuration |
| - STM32 H7: Remove old references to RXDMA. Add configuration |
| option to select the Rx FIFO threshold level. From Gregory Nutt. |
| |
| * STMicro STM32 Boards: |
| |
| - STM32F103 Minimum: Add blackpill LED support From Russ Webber. |
| - Viewtool-STM32F107: Add a TCP performance test using |
| apps/examples/tcpblaster. From Gregory Nutt. |
| - Viewtool-STM32F107: Add support for the MAX3421E to the |
| Viewtool-STM32F107 board support From Gregory Nutt. |
| - STM32F334-DISCO: Use a PID controller from libdsp in the BuckBoost |
| driver. From Mateusz Szafoni. |
| - STM32F4-Discovery: Remove STM32F4BB dependence from RNDIS; add |
| RAMDISK support. From Alan Carvalho de Assis. |
| - STM32F4-Discovery Add board support for MAX7219 as numeric display |
| controller. From Alan Carvalho de Assis. |
| - Olimex-STM32-P407: Add kernel ELF (kelf) configuration. From |
| Gregory Nutt. |
| - Olimex-STM32-P407: Add a kmodule configuration that can be used |
| for testing installation of kernel modules in the protected build. |
| From Gregory Nutt. |
| - Olimex-STM32-P407: Add logic to support initialization of the |
| kernel module symbol table installed in the pass1/ directory during |
| the application phase of the build. The kmodule configuration |
| appears to be fully functional. From Gregory Nutt. |
| - Olimex-STM32-P407: Add board support for the DHTxx sensor. From |
| Ouss4. |
| - STM32F476G-DISCO: Add support for STM32F746G-disco board LCD. |
| From Marcin Wyrwas. |
| - STM32F476G-DISCO: Add a configuration to build working nxdemo |
| application From Fanda. |
| - STM32F476G-DISCO: Add support for STM32F746G-disco board SDRAM |
| Changed fb config to use SDRAM. From Marcin Wyrwas. |
| - STM32F476G-DISCO: Add touchscreen support and a LittlevGL demo for |
| STM32F746G-DISCO From Marcin Wyrwas. |
| - Nucleo-L476RG: Add support for an external SPI-driven SD card on |
| the Nucleo-L476RG. From Gregory Nutt. |
| - Nucleo-L476RG: Add support for LSM303AGR and LSM6DSL sensors From |
| DisruptiveNL. |
| - Nucleo-H743ZI: Use Nucleo Virtual console as default console in |
| the NSH configuration From Mateusz Szafoni. |
| - STM32L4R9-DISCO: Add stm32l4r9ai-disco support. From Juha Niskanen. |
| - B-L475E-IOT01A: Add timer driver support. From Goden Freemans. |
| |
| * Libraries/Header Files: |
| |
| - libc endian: Add support for endian.h. From Gregory Nutt. |
| - libc net: Add inet_aton() From Juha Niskanen. |
| - libc netdb: Add getaddrinfo() and friends. From Juha Niskanen. |
| - libc termios: Add lib_cfmakeraw.c From Masayuki Ishikawa. |
| - libc stdlib: Add implementation of random() and srandom(). From |
| Gregory Nutt. |
| - libc unistd: Add a crippled version of daemon(). From Gregory Nutt. |
| - libdsp: All floats with f-sufix libdsp: (1) add precision option |
| for library, (2) add debug option for library and assertions in |
| functions, (3) add current samples correction for SVM3, (4) add |
| some motor control specific functions, (5) add basic speed |
| observer, (6) fix phase shift in SMO observe, (7) add more logic to |
| FOC. From Mateusz Szafoni. |
| - include/nuttx/compiler.h, include/poll.h: Add logic to determine |
| if the compiler supports anonymous structures and unions. From |
| Gregory Nutt. |
| - include/nuttx/mutex.h: Add inline wrapper functions to more |
| clearly support semaphores when used as mutexs. From QianWenfa. |
| - include/nuttx/nuttx.h: Added nuttx.h header file which is |
| analogous to the linux.h header file. Currently, it contains on |
| the definition of the container_of() macro. From zhuyanlin. |
| - include/queue.h: Add dq_tail marco From zhuguangqing. |
| - include/stdio.h: Add prototypes for popen() and pclose(). Actual |
| implementation is in apps/system/popen() From Gregory Nutt. |
| - include/sys/param.h: Add a dummy sys/param.h header file. This is |
| not a standard file but is used by other systems and having the |
| dummy file may minimize some porting efforts. From Gregory Nutt. |
| |
| * Tools: |
| |
| - nuttx/tools/kconfig2html.c: Due to new usage, tool needs to be |
| able to handle configuration files with names other than Kconfig. |
| From Gregory Nutt. |
| - nuttx/tools/kconfig2html.c: Update tool to handle tristate types. |
| From Gregory Nutt. |
| - nuttx/tools/Config.mk: Add function CATFILE definition. Currently |
| only used in apps/builtin/Makefile. From Gregory Nutt. |
| - nuttx/tools/Config.mk: Add the recursive wildcard function, |
| RWILDCARD, to Config.mk. From Gregory Nutt. |
| - nuttx/tools/testbuild.sh: Add an option to specify the location of |
| nuttx directory. From Gregory Nutt. |
| - nuttx/tools/refresh.sh: Add a --prompt option that will let you |
| use --silent but will prompt before overwriting the original |
| defconfig. From Gregory Nutt. |
| - nuttx/tools/link.sh. Update link.sh per suggestions by Mark so |
| that it can be used with MSYS vs copydir.sh. From Gregory Nutt. |
| - nuttx/tools/mkexport.sh: Save the System.map file and User.map |
| file (if it exists) in the export package so that it can be used to |
| extract addresses. From Gregory Nutt. |
| - nuttx/tools/mkexport.sh: Save the name of the STRIP tool too. From |
| Gregory Nutt. |
| - nuttx/tools/nxstyle.c: Add capability to detect multiple blank |
| lines. Single spacing required by the coding standard. Also coding |
| standard fixes to server .c files for problems found during testing |
| nxstyle. From Gregory Nutt. |
| - apps/tools: Add +x to mksymtab.sh. From Masayuki Ishikawa. |
| - apps/tools/define.sh and define.bat: Move a copy of define.bat |
| and sh from nuttx/tools to apps/tools so that they will be |
| available for the import build. From Gregory Nutt. |
| |
| * Build System: |
| |
| - Apps/ Build System. The apps/ build system has undergone a major |
| renovation to better support building applications as ELF modules. |
| Module selections have changed from 'bool' to 'tristate' types. |
| This means that building an ELF now is as simple setting the value |
| to 'm'. This effort required many changes, too many to summarize |
| here. The solution was contributed by Masayuki Ishikawa, Anchao |
| An, and Xiang Xiao (and myself to a lesser extent). |
| - NuttX/ Build System: This change extends support for the two-pass |
| build. Its primary purpose is to incorporate source logic |
| generated by applications into the kernel phase of the build. |
| In the two pass build, the application logic is built during the |
| first phase, pass 1. In that phase, the application may generate |
| and install source files in the pass1/directory. The operating |
| system is built during phase 2 of the build. At that time, those |
| source files in the pass1/ directory will be built and incorporated |
| into the kernel address space. |
| The primary purpose of the pass1/ directory is to such |
| application-generated kernel symbol tables. For an example of the |
| use of this feature, look at |
| apps/examples/module/drivers/Makefile. Kernel symbol tables are |
| needed to support kernel modules. Of course, addition |
| board-specific logic in, say, configs/<board>/src would have to be |
| included to make use of the application-installed symbol tables. |
| From Gregory Nutt. |
| - Remove CONFIG_ARCH_CALIBRATION. It is awkward to use and no longer |
| necessary now that we have apps/examples/calib_udelay. From |
| Gregory Nutt. |
| - Build System: With recent changes to apps/ all configurations that |
| build applications as modules must now also select |
| CONFIG_APPS_LOADABLE. From anchao. |
| - Build System: Add dynamic application loadable support. From |
| anchao. |
| - Build System: Add configuration CONFIG_ARCH_GNU_NO_WEAKFUNCTIONS |
| to suppress use of weak functions. Some gnu derived toolchains do |
| not support weak symbols. From Xiang Xiao. |
| - Kconfig: Move 'option modules' from NSH_FILE_APPS to |
| BUILD_LOADABLE From anchao. |
| - apps/ Build System: Introduce a build system for loadable apps |
| for nsh. Add 'option modules' to NSH_FILE_APPS so that a user can |
| change an application configuration to tristate (y/n/m) |
| - apps/import: Add Makefile.symtab which can be used to compile the |
| dynamically created symbol table C file. Also adds |
| tools/mksymtab.sh. From Gregory Nutt. |
| |
| * NSH: apps/nshlib: |
| |
| - apps/nshlib: Add parsing support for back-slash quoted |
| characters. Currently only implemented properly if |
| CONFIG_NSH_ARGCAT is also selected. This commit is in response to |
| Bitbucket Issue 11 opened by Maciej Wójcik From Gregory Nutt. |
| - apps/nshlib: Add inverted logic support in the form of 'if ! |
| <cmd>' From Beat Küng. |
| - apps/nshlib: Expand reboot and poweroff commands to include a |
| second, optional mode argument From ligd. |
| - apps/nshlib: Add a force flag (-f) to mksmartfs command. SmartFS |
| will be formatted only if (1) the FLASH does not already hold a |
| SmartFS, or (2) the force flag is set. From Xiang Xiao. |
| - apps/nshlib: NSH prompt string is now configurable. nsh> is |
| still the default. From Xiang Xiao. |
| - apps/nshlib: Add control-C support for terminating built-in and |
| exec'ed file tasks. From ligd. |
| - apps/nshlib: Call BOARDIOC_FINALINIT after start-up script (or |
| immediately after BOARIOC_INIT is there is no start-up script). |
| From ligd. |
| - apps/nshlib: When using waitpid() to wait for a built-in |
| application or a file application to exit. Add the WUNTRACED |
| options to so the the waitpid() call will also be awakened if the |
| waited-for task is stopped as well. From Gregory Nutt. |
| |
| * NSH Builtins: apps/builtin: |
| |
| - apps/builtin/Makefile. This commit changes apps/builtin to search |
| the registry recursively. By supporting directories, external |
| projects can install the hooks into the registry and easily clean |
| them up and reinstall if something needs to be updated. Based on |
| an idea from Anthony Merlino. From Gregory Nutt. |
| |
| * Examples/Tests: apps/examples: |
| |
| - apps/examples/calib_udelay: Add tool for calibrating |
| CONFIG_BOARD_LOOPSPERMSEC From Juha Niskanen. |
| - apps/examples/dhtxx: Example for the DHTxx sensor. From Ouss4. |
| - apps/examples/dsptest: Add unit test for NuttX DSP library From |
| Mateusz Szafoni. |
| - apps/examples/elf: CROMFS and ROMFS configuration currently only |
| usable in FLAT build. Add configuration to use ELF objects on |
| external media like SD card or USB drive instead. From Gregory |
| Nutt. |
| - apps/examples/elf: If the test ELF files are on media in |
| removable media such as SD or USB FLASH, the wait until the media |
| has been installed and initialized before starting the test. From |
| Gregory Nutt. |
| - apps/examples/fb: Adds example to test framebuffer overlay From |
| Marco Krahl. |
| - apps/examples/gps: Add GPS example using MINMEA lib From Alan |
| Carvalho de Assis. |
| - apps/examples/i2sloop: Add i2sloop application. This application |
| can be used to test I2S loopback like: ' nsh> i2sloop &'. From |
| Masayuki Ishikawa. |
| - apps/examples/lvgldemo: Update LVGL to version 5.1.1 From Alan |
| Carvalho de Assis. |
| - apps/examples/module: Add support for CROMFS and for stripping |
| symbols from ELF module binaries. From Gregory Nutt. |
| - apps/examples/module: Add support for automounting removable media. |
| This involves a wait for the block driver to become available |
| before performing the mount. From Gregory Nutt. |
| - apps/examples/module: When built in the PROTECTED or KERNEL |
| modes, the symbol table is not built by the application. That is |
| because the build will fail since the kernel module depends on |
| internal OS symbols thar are not available to the application |
| build. With this change the examples does not attempt to build |
| the kernel symbol table in these modes. Instead it just copies |
| the kernel module symbol table into the nuttx/pass1 directory |
| where it can be build directly into the OS during pass2 of the |
| build. From Gregory Nutt. |
| - apps/examples/ostest: Add a small test for SIGSTOP, SIGCONT, and |
| SIGKILL actions. From Gregory Nutt. |
| - apps/examples/popen: Add a test of popen/pclose. From Gregory |
| Nutt. |
| - apps/examples/powerled: Add arch initialization. From Mateusz |
| Szafoni. |
| - apps/examples/tcpblaster: Add TCP performance measurement test. |
| From Gregory Nutt. |
| |
| * System Utilities: apps/system |
| |
| - apps/system/cle: Usage improvements including command line |
| history (taken from readline) and support for addition control |
| characters. From mst. |
| - apps/system/i2c: Adapt to rename I2C_M_RESTART->i2C_M_START. |
| I2C_M_NOSTOP should be in flags of first message in every |
| write-read and write-write message sequence. From Gregory Nutt. |
| - apps/system/i2c: Allow registers besides 0x00 in the dev command. |
| From Jakob Haufe. |
| - apps/system/nsh: Add logic to automatically register an |
| application symbol table as part of NSH initialization. From |
| Masayuki Ishikawa. |
| - apps/system/nsh: The symbol table name and size variable names |
| can now be configured. From Gregory Nutt. |
| - apps/system/nsh: Move apps/examples/nsh to apps/system/nsh. It |
| has become so entrenched that it is hardly an example these days. |
| May as well formalized it as a system task. From Gregory Nutt. |
| - apps/system/nxplayer: Refactor nxplayer.c. Apply |
| netlib_parsehttpurl() and |
| remove unnecessary usleep(). From Masayuki Ishikawa. |
| - apps/system/nxplayer: Release buffer before session and release |
| semaphore in nxplayer_setvolume system/nxplayer/nxplayer.c: |
| Remove & for apb->samp reference. It is already a pointer. From Xiang Xiao. |
| - system/nxplayer/nxplayer.c: Add playraw command From ZhongAn. |
| - apps/system/nxrecorder: Add nxrecorder application From ZhongAn. |
| - apps/system/popen: Add an implementation of the standard popen() |
| and pclose() OS interfaces. These are implemented as applications |
| vs. part of the OS because they depend on NSH. Untested on |
| initial commit. From Gregory Nutt. |
| - apps/system/system and popen: Adapt so that these can be used in |
| the KERNEL build mode. In this case, simply replace task_spawn() |
| with posix_spawn(). This depends on the existence of some |
| environment where /bin/sh exists and can be used to execute one |
| NSH command. For the case of system(), this change was more |
| complete because it previously used task_create(). Now it uses |
| either task_spawn() or posix_spawn(), depending upon the |
| configuration. From Gregory Nutt. |
| - apps/system/taskset: Add taskset command for SMP systems. This |
| command can be used to retrieve or set a process's CPU affinity. |
| For example, |
| |
| nsh> taskset -p 4 |
| pid 4's current affinity mask: 2 |
| |
| nsh> taskset -p 3 4 |
| pid 4's current affinity mask: 3 |
| |
| nsh> taskset -p 1 busyloop & |
| |
| From Masayuki Ishikawa. |
| - apps/system/zmodem: Support -p <path> for rz to change the folder |
| for the received file. Switch debug output from printf to |
| syslog. Send the next packet for ZME_ACK in ZMS_SENDING to avoid |
| rz on the host side stuck make send work reliable even without |
| hardware flow control. From Xiang Xiao. |
| |
| * Network Utilities: apps/netutils: |
| |
| - apps/netutils/dhcpc: Activates BINDTODEVICE if available. From |
| Sebastien Lorquet. |
| |
| * Wireless Utilities: apps/wireless: |
| |
| - apps/wireless/i8sak: i8sak daemon now gets shutdown if not in use. |
| Previously, once the i8sak daemon was started, by running any |
| command, it would stay running. This means that if you want to use |
| i8sak to setup your network, but then want exclusive access to the |
| char device, or network device, you have to manually shutdown the |
| i8sak daemon. Now the daemon stays active as long as required to |
| finish any commands, or stays open if a new command keeps it on, |
| but when all work is finished, it shuts down. From Anthony Merlino. |
| |
| * Filesystem Utilities: apps/fsutils: |
| |
| - mkfatfs: Clean up some name BS_ and MBR_ refer to the same record |
| and should use the same naming (MBR_). From Gregory Nutt. |
| - mkfatfs: Add definitions for the FAT boot record (FBR). From |
| Gregory Nutt. |
| - mksmartfs: Add a check to see if the SmartFS is already |
| formatted. From Xiang Xiao. |
| |
| * Graphic Utilities: apps/graphics: |
| |
| - graphics/littlevg/: Update LVGL to version 5.1.1 From Alan |
| Carvalho de Assis. |
| |
| * Test Utilities: apps/testing: |
| |
| - testing/unity: Add Unity - unit testing library from |
| ThrowTheSwitch.org. From Mateusz Szafoni. |
| |
| Bugfixes. Only the most critical bugfixes are listed here (see the |
| ChangeLog for the complete list of bugfixes and for additional, more |
| detailed bugfix information): |
| |
| * Core OS: |
| |
| - Signals: Signal handlers maybe run with interrupts enabled or |
| disabled, depending on how the task the received the signal was |
| blocked. (i.e.: If sem_wait() is called, then we disable |
| interrupts, then block the currently running task). This could be |
| dangerous, because user code would be running with interrupts |
| disabled. |
| This change forces interrupts to be enabled in up_sigdeliver() |
| before executing the signal handler calling up_irq_enable() |
| explicitly. This is safe because, when we return to normal |
| execution, interrupts will be restored to their previous state when |
| the signal handler returns. From Gregory Nutt (Based on a |
| recommendation by Mark Shulte). |
| - Signals: Lock the scheduler while while killing the children so |
| that we do not lose priority and let the task group continue to |
| run in an indeterminate state. From Gregory Nutt. |
| - Groups: Fix a deadlock when loading an ELF From Masayuki Ishikawa. |
| - Groups: In some circumstances, group_killchildren() could have |
| called pthread_cancel() to kill a task. Also, the behavior would |
| not be as expected if a pthread had cancellation disabled. From Gregory Nutt. |
| - Posix Message Queues: mq_notify() fix - only part of struct copied |
| to internal structure. As source address the address of the struct |
| member sigev_value was used, and it is not located the start of the |
| struct. This leads to invalid data being copied to internal |
| structure. Both source and destination should be of type struct |
| sigevent* . From Simon Liedl. |
| - vfork(): vfork operation needs to allocate and copy the task |
| argument too. Also correction of the address correction cannot |
| depend on the stack pointer since it is not available in all |
| architectures. Rather calculate the offset from the stack |
| allocation pointer From Xiang Xiao. |
| - IRQ Dispatch: Ensure vector never points to NULL since interrupt |
| may happen before irq_initialize() From Xiang Xiao. |
| - Work Queue: workqueues don't need set global data to zero since |
| .bss is cleared automatically. Removing this unnecessary |
| initialization also avoids the loss the work items queued before |
| initialization. From ligd. |
| - Work Queue: Remove work queue polling delay to simplify the code |
| logic and save the power. From xuanlin. |
| - syslog: Fix syslog crash on 64bit simulation. From anchao. |
| - Pipes: Write to a pipe when there are no readers from the pipe |
| should return -EPIPE. From ligd. |
| - System Calls: Fix 6th parameter type of posix_spawnp in |
| syscall.csv From Masayuki Ishikawa. |
| - System Calls: Remove unused SYS_nnetsocket from syscall.h. Because |
| SYS_nnetsocket is not implemented so far, it should be removed so |
| that SYS_prctl can work correctly. From Masayuki Ishikawa. |
| - Binary Loader: Refactor binfmt_exec.c. This change also fixes an |
| argv issue for CONFIG_SCHED_ONEXIT=n or CONFIG_SCHED_HAVE_PARENT=n |
| From Masayuki Ishikawa. |
| - Binary Loader: Re-architect the way that loadable ELF or NXFLAT |
| modules are unloaded. Memory resources must be recovered when the |
| task loaded into memory exits. The original implementation used |
| the death-of-child SIGCHLD signal to perform the unload. There are |
| several problems with this: It is overly complex, it requires that |
| the parent task stay resident while the loaded task runs, and it |
| has fatal logic flaws in the protected and kernel model builds |
| because the user signal handler attempts to run in the kernel |
| address space. This corrects the issue using a mindlessly simply |
| BINFMT callback when the task exits. From Gregory Nutt. |
| - ELF Binary Loader: Set priority level to default if parent has no |
| priority. From anchao. |
| |
| * File System/Block and MTD Drivers: |
| |
| - Auto-mounter: Ignore return values from work_cancel(). From |
| Gregory Nutt. |
| - SmartFS: Fixed filesystem corruption when writing to small file |
| after open(... O_APPEND). From Dmitriy Linikov. |
| - SmartFS stat(): A previous change added support for checking if a |
| descriptor is a socket in fstat().' but it changed sys/stat.h in |
| way that breaks smartfs file-type stat flags. CROMFS is similarly |
| broken, as tools/gencromfs.c was not updated to match the |
| sys/stat.h changes. This commit fixes both issues. It probably is |
| not a good idea to use NuttX sys/stat.h bit-field values directly |
| in stored structure of filesystem. From Jussi Kivilinna. |
| - HostFS: Update duplicated definitions in HOSTFS that must match |
| NuttX values. From ligd. |
| - HostFS: Ensure f_type is equal to HOSTFS_MAGIC. From Xiang Xiao. |
| - ROMFS: Make romfs_devread32 more portable From anchao. |
| - TmpFS: Correct logic in tmpfs_ioctl() that extracts the priv state |
| structure from the file system structures. It was not getting the |
| right value and causing mmap() to fail. Noted by Jesse. From |
| Gregory Nutt. |
| - ProcFS network statistics: Was not handling the output correct for |
| the case of an IEEE 802.11 device. From Gregory Nutt. |
| - ProcFS IRQs: Fix occasional computation error when fracpart >= |
| 1000 From Xiang Xiao. |
| |
| * Networking/Network Drivers: |
| |
| - TAP/TUN: Fixed custom tun devname formatting. From Dmitriy Linikov. |
| - Network Drivers: This change attempts remove some long standard |
| confusion in naming and some actual problems that result from the |
| naming confusion. The basic problem is the standard MTU does not |
| include the size of the Ethernet header. For clarity, I changed |
| the naming of most things called MTU to PKTSIZE. For example, |
| CONFIG_NET_ETH_MTU is now CONFIG_NET_ETH_PKTSIZE. This makes the |
| user interface a little hostile. People think of an MTU of 1500 |
| bytes, but the corresponding packet is really 1514 bytes (including |
| the 14 byte Ethernet header). A more friendly solution would |
| configure the MTU (as before), but then derive the packet buffer |
| size by adding the MAC header length. Instead, we define the |
| packet buffer size then derive the MTU. |
| The MTU is not common currency in networking. On the wire, the |
| only real issue is the MSS which is derived from MTU by subtracting |
| the IP header and TCP header sizes (for the case of TCP). Now it |
| is derived for the PKTSIZE by subtracting the IP header, the TCP |
| header, and the MAC header sizes. So we should be all good and |
| without the recurring 14 byte error in MTU's and MSS's. From |
| Gregory Nutt. |
| - netdev: Fix.. Too many calls to net_unlock() From Gregory Nutt. |
| - IPv6: There are many different checks for IPv6 multicast |
| addresses. Most of the checks are different. RFC 3513 clearly |
| specifies how to detect an IPv6 multicast address: they should |
| begin with 0xffxx. I did not change some of the checks in |
| ipv6_input.c, however. In that file, the comments indicate that |
| the code should only pick of certain multicast address that begin |
| with 0xff02. From Gregory Nutt. |
| - ARP: Fix some backward logic in an if condition. From Gregory |
| Nutt. |
| - TCP Re-assembly: Rename CONFIG_TCP_REASSEMBLY to |
| CONFIG_IPv4_REASSEMBLY. Add some fixes to get a clean compile with |
| CONFIG_IPv4_REASSEMBLY enabled. There are several problems with |
| the current implementation: It is untested (and depends on |
| CONFIG_EXPERMIMENTAL). It uses some Ethernet specific definitions |
| (and depends on CONFIG_NET_ETHERNET). There is only a single |
| reassembly buffer. The last two issues prevent use of this feature |
| in any context where IPv4 packets may be reassembled for multiple |
| network devices concurrently). From Gregory Nutt. |
| - TCP: Set the default TCP MSS to the value required by RFC 879 and |
| never change it under any circumstance unless the remote host |
| requests a larger MSS via an option the TCP header. From Gregory |
| Nutt. |
| - TCP: Fix a deadlock condition that can occur when (1) all network |
| logic runs on a single work queue, (1) TCP write buffering is |
| enabled, and (2) we run out of IOBs. In this case, the TCP write |
| buffering logic was blocking on iob_alloc() with the network |
| locked. Since the network was locked, the device driver polls that |
| would provide take the write buffer data and release the IOBs could |
| not execute. This fixes the problem by unlocking the network lock |
| while waiting for the IOBs. From Gregory Nutt. |
| - TCP: Remove g_netstats.tcp.syndrop++ from tcp_data_event() From |
| Masayuki Ishikawa. |
| - TCP Monitor: Fix net unlock issue when tcp close. This bug could |
| leave the net locked. From zhangyuan7. |
| - UDP: When sending a broadcast (or multicast) packet do not attempt |
| to look up the device by the destination IP address. Rather, use |
| the locally bound address for these cases to select the correct |
| network device. From Gregory Nutt. |
| - UDP: Restore some legacy behavior that was lost with the |
| implementation of CONFIG_NET_UDP_BINDTODEVICE: If no device has a |
| local address when the broadcast packet is sent and the UDP socket |
| is not bound to a device, there select some arbitrary device. This |
| is certainly lunacy in the case where there are multiple network |
| devices registered because the wrong device will probably be |
| returned. It works find, however, for the legacy case where only a |
| single network device is registered. From Gregory Nutt. |
| - UDP: Fix for network byte-order issue when checking if an address |
| is a multicast address. From Jake Choy. |
| - USRSOCK: Correct of semaphore usage issues. From Gregory Nutt. |
| - USRSOCK: Fix re-definitions of struct iovec. From ligd. |
| - ICMP/ICMPv6 Connection: Change the type of id in |
| icmpv[6]_findconn to uint16_t From Xiang Xiao. |
| - ICMP/ICMPv6: Fix failure to poll ICMP socket issue. From |
| dongjianli. |
| |
| * Wireless/Wireless Drivers: |
| |
| - XBee: Fixes issue with timeouts. Timeouts were in ticks but |
| should have been in ms. This caused false triggers of timeout |
| causing redundant packets, etc. From Anthony Merlino. |
| - BCM43xx: Add missing logic to the BCM43xx IEEE 802.11 driver to |
| poll for more Tx data after the last transfer completes. From |
| Gregory Nutt. |
| - BCM43xx: Bring in some fixes from the 'Haywire' branch. From |
| Ramtin Amin. |
| |
| * Common Drivers: |
| |
| - Audio: Fix compile error in i2schar.c (CONFIG_DEBUG_ASSERTIONS=y) |
| From Masayuki Ishikawa. |
| - Audio I2S: Fix bad NULL pointer check From Juha Niskanen. |
| - Input: Fixed FT5x06 driver to correctly close (previously it |
| unregistered interrupt handler during close). From Marcin Wyrwas. |
| - MMC/SD: Fix an error that was causing SDIO multiple block |
| transfers from achieving full performance. From Bob Feretich. |
| - Sensors: Increases SPI frequency in MAX6675 from 400Khz to 4MHz. |
| From Alan Carvalho de Assis. |
| - Sensors: Remove comment references to touchscreens from ADXL345 |
| driver. From Russ Webber. |
| - Serial: Don't overwrite nwritten unconditionally on UART write |
| failure. From Xiang Xiao. |
| - Serial DMA: Move head/tail pointer reset to uart_recvchars_dma |
| since dma may be still transferring in the background. From Xiang |
| Xiao. |
| - Serial DMA: In DMA mode, the use of uart_disablexinit() is |
| insufficient to protect a critical section. |
| enter/leave_critical_section() must be used in those cases if |
| CONFIG_SERIAL_DMA=y From Xiang Xiao. |
| - Serial DMA: Fix typo error in uart_recvchars_dma() From Xiang Xiao. |
| - 16550 UART: u16550_txempty() should check UART_LSR_TEMT to avoid |
| some data left in the transmit FIFO From Xiang Xiao. |
| |
| * ARMv7-A: |
| |
| - ARMv7-A (and i.MX6): Add support for per-CPU IRQ and FIQ interrupt |
| stacks (bugfix). Add support so that up_assert will print the |
| correct interrupt stack on an assertion (FIQ stack is still not |
| printed). From Gregory Nutt. |
| |
| * ARMv7-R: |
| |
| - ARMv7-R: Fix some wrong configuration of program status |
| register. PSR_E_BIT bit should be set for big endian system. |
| PSR_A_BIT bis is set automatically as arm cortex-r4 reference |
| manual 3.7.4. So we don't need to set this bit. From EunBong Song. |
| - ARMv7-R: Fix some wrong MPU register definition. Change |
| MPU_RBAR_ADDR_MASK and MPU_RACR_TEX_SHIFT mask as arm cortex-r4 |
| reference manual. Region Base Address Register 0-4 bits are |
| reserved. MPU Region Access control register type 3-5 bits. From |
| EunBong Song. |
| |
| * ARMv7-M: |
| |
| - ARMv7-M, Cortex F7: Add a configuration to enable workaround for |
| r0p1 Errata 837070: Increasing priority using write to BASEPRI does |
| not take effect immediately. This update is required to be |
| serialized to the instruction stream meaning that after this update |
| completes, it takes effect immediately and no exceptions of lower |
| priority than the new boosted priority can preempt execution. |
| Because of this erratum, the priority boosting does not take place |
| immediately, allowing the instruction after the MSR to be |
| interrupted by an exception of lower priority than the new boosted |
| priority. This effect is only limited to the next instruction. |
| Subsequent instructions are guaranteed to see the new boosted |
| priority. This was raised in Bitbucket issue 113 from Vadzim |
| Dambrouski. From Gregory Nutt. |
| - ARMv7-M: MPU: mpu_log2regionceil needs take into account the |
| offset too From Xiang Xiao. |
| - ARMv7-M MPU: The prototype of mpu_log2regionfloor() changed; an |
| additional parameter was added. However, none of the calls to |
| mpu_log2regionfloor() were updated to pass the new, additional |
| parameter. From Gregory Nutt. |
| |
| * Infineon XMC4xxx Drivers: |
| |
| - XMC4 SPI: XMC4 SPI was working only for the first transfer From |
| Alan Carvalho de Assis. |
| |
| * Microchip/Atmel SAMv7 Drivers: |
| |
| - SAMv7 MCAN: Correct an error in the BUS_OFF reporting. In case of |
| BUS_OFF the old implementation was leading to a package storm. Now |
| it reports the error condition BUS_OFF only once. From Frank |
| Benkert. |
| |
| * NXP/Freescale LPC43xx Drivers: |
| |
| - LPC43xx CAN: Fix lpc43 CAN configuration. Configuration settings |
| were used and documented in README.txt files, but never in any |
| Kconfig file. From Gregory Nutt. |
| - LPC43xx: Make WWDT usable again. LPC43xx WWDT driver was not |
| updated when irq_dispatch grew an argument parameter. Also fixes |
| two typos and a naming inconsistency (WWDT vs. WWDG). From Jakob |
| Haufe. |
| |
| * NXP/Freescale Kinetis Drivers: |
| |
| - kinetis: USB0 fix interrupt storm on error. The ERROR bit of |
| USBx_ISTAT needed to be cleared once an error occurs. From David |
| Sidrane. |
| - Kinetis: SDHC fix SDIO driver so that DMA works. There were 2 |
| problems. The first was that the interrupt did test DINT and raise |
| a completion events. But since DINT is just an indication of DMA |
| completion, TC is a valid way to determine that the transfer is |
| complete. The second problem is that Software Reset For DAT Line |
| SDHC_SYSCTL[RSTD] clears the bits 24-0 in SDHC_PROTO this looses |
| the wide bus setting DTW From David Sidrane. |
| - Kinetis: (1) PIT add Lifetime and Chaining, (2) flexcan fix |
| duplicate line and ordering, (3) kinetis_lowput.c LPUART data |
| format with parity fix. The 9-bit data mode is typically used with |
| parity to allow eight bits of data plus the parity, (4) lowputc |
| LPUART_BAUD_INIT has to be defined. Build fails with test case |
| enable LPUART0 and make UART1 console. If HAVE_LPUART_DEVICE is |
| defined then LPUART_BAUD_INIT has to be defined even if the LPUART |
| is not the console From David Sidrane. |
| - Kinetis: I2C ensure timeout on bus error. The code had a dead |
| wait on I2C_S_BUSY. Noise on the bus would cause the driver to |
| hang. Add timeout on invalid states of I2C_S_BUSY to allow the |
| upper layers do deal with restart or abort. From David Sidrane. |
| |
| * NXP i.MXRT Drivers: |
| |
| - i.MXRT Ethernet: I finally got the Ethernet CRC32 to work properly |
| after the FAE pointed me in the right direction: (1) Added CRC32 |
| functions for multicast address filtering, (2) Do not reset PHY |
| settings when doing an ifup, (2) Use chip's unique id as the device |
| MAC, and (4) Enable discard enet frames with errors at PHY layer. |
| From Jake Choy. |
| |
| * On Semi LC823450 Boards: |
| |
| - LC823450-XGEVK: Fix parallel build on lc823450-xgevk. This change |
| fixes an archive file (*.a) corruption by locking $(TOPDIR). |
| Please note that locking the current directory is insufficient |
| because some archive files such as libapps.a are specified with |
| absolute path. From Masayuki Ishikawa. |
| - LC823450-XGEVK: Change IOB related params for rndis. Since TCP |
| flow control scheme was changed, HTTP audio streaming has not been |
| working. These IOB params are not optimized but HTTP audio |
| streaming now works. From Masayuki Ishikawa. |
| |
| * STMicro STM32: |
| |
| - STM32 F7: Fix compile error caused by intentional use of fall |
| through From Daniel Agar. |
| |
| * STMicro STM32 Drivers: |
| |
| - STM32 F1-F4: Port Bob Feritich's change to STM32 F2 and F4 which |
| appear to have identical SD support and I/O compensation |
| requirements. |
| - STM32 F1-F4, STM32 F7, and STM32 L4: The STM32 RTC driver was |
| being selected by the global CONFIG_RTC option. That is in |
| correct. For example, if you want to disabled the STM32 RTC and |
| use an external RTC you cannot because the external RTC also |
| depends on the global CONFIG_RTC. The solution is to add a new |
| CONFIG_STM32xx_RTC configuration option the permits to you select |
| or deselect the STM32 RTC but still be able to select the external |
| RTC. From Gregory Nutt. |
| - STM32 F3 I2C: Fix compile error with I2C reset. From Juha |
| Niskanen. |
| - STM32 F7 Serial: Fix ioctl TIOCSSINGLEWIRE The TRM notes that UE |
| must be disabled in order to write HDSEL in USART_CR3. This was not |
| being done, so calls to TIOCSSINGLEWIRE were silently failing. |
| This change checks the state of UE in USART_CR1, clears the UE bit |
| before writing HDSEL, then re-enables it if necessary. From Kurt |
| Kiefer. |
| - STM32 F7 DMA: DMA macros did not account for the increase from 8 |
| to 16 DMA channels. From Gregory Nutt. |
| - STM32 F7 I2C: I2C reset Configure I2C pins as GPIO output. Pins |
| were reset to inputs in the deinit(). This resets them to outputs. |
| From David Sidrane. |
| - STM32 F7: All of the SDMMC pins were set to 50 MHz, but not the |
| clock. This sets the clock to 50 MHz also. This combined with |
| turning on I/O compensation makes intermittent failures go away. |
| From Bob Feritich. |
| - STM32 F7: Port Bob Feritich's change to SDMMC2 and to all other |
| STM32 F7 architectures. Also add a configuration option to |
| automatically enable I/O compensation. From Gregory Nutt. |
| - STM32 F7 SDMMC: Fix data timeout errors with multi-block |
| transfers. From Bob Feretich. |
| - STM32 L4: Corrects some mistakes in pin definitions for the |
| STM32 L4 family. According to datasheet of STM32L496xx, STM32L475xx |
| and STM32L443XX the AF2 of PE14 is TIM1_BKIN2 not TIM2_BKIN. From |
| Daniel Pereira Carvalho. |
| - STM32 L4: Avoid using redundant CONFIG_STM32L4_STM32L4X2. This is |
| almost always same as CONFIG_STM32L4_STM32L4X3. Avoid duplication |
| to reduce macro clutter. This patch limits |
| CONFIG_STM32L4_STM32L4X2 usage to dependency tracking and pinmap. |
| Also enable ADC for CONFIG_STM32L4_STM32L4X5 (untested, but same |
| RM). From Juha Niskanen. |
| - STM32 H7 Serial: don't include stm32_dma.h From raiden00pl. |
| |
| * STMicro STM32 Boards: |
| |
| - STM32F4-Discovery: Fix pca9635pw LED driver compilation on |
| STM32F4-Discovery. From Alan Carvalho de Assis. |
| - STM32F4-Discovery: Krassimir Cheshmedzhiev claims that sys/types.h |
| needs to be included in the RGB LED file to avoid undeclared 'OK' |
| From Gregory Nutt. |
| - STM32F4-Discovery: Missing EXTERN(_vectors) in linker script. |
| From Gregory Nutt. |
| - Nucleo-L422KC: Fix RAM size; STM31L4x2xx has only 64Kb of RAM. |
| Remove references to I2C and SDIO: There is no I2C2 or SDIO on the |
| STM32F4x2xx. From Daniel P. Carvalho. |
| - Nucleo-L422KC: Fix stm32_userleds. After change LD2 to LD3 in |
| board.h stm32_userleds.c was broken. From Daniel P. Carvalho. |
| - Nucleo-L422KC: Fix TIMx clock configuration. Also removes |
| definitions related to timers not available in the STM32L432KC. |
| From Daniel Pereira Carvalho. |
| - Nucleo-L452RE: Fix TIMx clock configuration. This is cloned from |
| similar change to the Nucleo-L422KC. Also fixes DAC build |
| failure. From Juha Niskanen. |
| - B-L475E-IOT01A: Fix copy paste errors in names: |
| stm32_bringup->stm32l4_bringup. Noted by Freemans Goden. From |
| Gregory Nutt. |
| - STM32VL-Discovery: Changed the status LED to be the green one as |
| mentioned in the README file. Removed the global array for buttons |
| and replace it with the only button. Improve defconfig for the nsh |
| configuration. From Ouss4. |
| |
| * C Library/Header Files: |
| |
| - libc audio: Call nxsem_destroy in apb_free. From Xiang Xiao. |
| - libc netdb: The 'port' argument to the static alloc_ai() function |
| is always in network byte order. However, that static function was |
| still calling HTONS() on the port, incorrectly converting it back |
| to host byte order. From Gregory Nutt. |
| - libc netdb: Fix a link error in lib_gethostbynamer.c with protected |
| build. NOTE: g_lo_ipv4addr also exists in |
| net/loopback/lo_globals.c which can be linked with kernel build |
| only. From Masayuki Ishikawa. |
| - libc unistd : Fix backward conditional logic in Kconfig. From |
| Gregory Nutt. |
| - include/nuttx/compiler.h: Fix warning: __cplusplus is not defined. |
| Some gcc derived compiler do not define __cplusplus From Xiang |
| Xiao. |
| - include/nuttx/fs/binfs.h: Fix warning: Type defaults to 'int' in |
| declaration of 'mountpt_operations' From Xiang Xiao. |
| - include/nuttx/net/ethernet.h: Remove CONFIG_NET_ETHERNET guard |
| From Xiang Xiao. |
| - include/nuttx/semaphore.h: don't include nuttx/fs/fs.h. (1) Avoid |
| nested loops if CONFIG_SIG_EVTHREAD enabled, (2) semaphore.h |
| doesn't depends on fs.h. From Gregory Nutt. |
| - include/crc64.h: Fix warning: integer constant is too large for |
| its type From Xiang Xiao. |
| - include/limits.h and include/sys/types.h: Fix warning about |
| 'SIZE_MAX' redefined. include/nuttx/usb/audio.h: Fix warnings due |
| to '-' used whete '_' intended. From Xiang Xiao. |
| - include/spawn.h: Fix posix_spawnattr_destroy warning: 'the |
| address of attr will always evaluate as true' From Xiang Xiao. |
| - include/sys/types: Move wint_t and wctype_t from wchar.h to |
| types.h. This change is compatible as before since wchar.h |
| include types.h indirectly. This fixes a compilation error with |
| newlib's math.h: 'unknown type name wint_t' From Xiang Xiao. |
| - apps/include/netutils/netlib.h: Eliminate a warning about |
| AF_UNSPEC and AF_INET not defined. From Gregory Nutt. |
| |
| * Build System: |
| |
| - Build System: Fix parallel build in making context. This change |
| avoids running $(MKSYSCALL) and .context in parallel and ensures |
| that tools/mksyscall is built before it is actually used. From |
| Masayuki Ishikawa. |
| - Kconfig files: Fix several errors noted by Alex Denisov in |
| Bitbucket issue 115. From Gregory Nutt. |
| - apps Build System: Fix an error when building apps/ without |
| nuttx/, using only the NuttX export package and assuming that the |
| nuttx/ directory in not even present. In this case, the problem |
| fixed where the apps/Make.defs file was selecting tools from the |
| /tools directory which does not exist because TOPDIR=apps/import. |
| Instead, for this build case, I have not thought of any option but |
| to duplicate scripts as necessary in the apps/tools directory. |
| Also added a top-level target to compile the symbol table. Misc |
| fixes: quoting in scripts, some errors in script syntax. From |
| Gregory Nutt. |
| - apps/Application.mk: If a loadable module is generated the we |
| need to add logic to remove the loadable module in the 'make |
| clean' logic. From Gregory Nutt. |
| |
| * Tools: |
| |
| - nuttx/tools/Makefile.unix: Was not cleaning up export directory |
| if it was left from a failed export. From Gregory Nutt. |
| - apps/tools: Fix an error in mksymtab.sh From Masayuki Ishikawa. |
| |
| * NSH Library: apps/nshlib: |
| |
| - apps/nshlib: Fix 'while' and 'until' loop condition The loop |
| condition logic was inverted: 'while true; do echo "test"; done' |
| would exit immediately, while using 'until' would stay in the |
| loop. This is the opposite of how it is supposed to work. The |
| reason is that 'state' was set wrong because 'whilematch' is a |
| bool. From Beat Küng. |
| - apps/nshlib: I was able to cause an assertion with some typos in |
| testing the 'fi' command. Not an important thing, but this will |
| protect against the assertion. From Gregory Nutt. |
| - apps/nshlib: Increase the default configuration for the maximum |
| number of command line arguments to 7 (CONFIG_NSH_MAXARGUMENTS). |
| This is needed for 'mount' with the -o option. From Xiang Xiao. |
| - apps/nshlib: Do not dereference NULL 'pstate' in nsh_console.c. |
| From Juha Niskanen. |
| |
| * Examples/Tests: apps/examples: |
| |
| - apps/examples: Remove illegal calls into OS to initialize BINFMT |
| support. This must be moved to the board initialization logic |
| within the OS. From anchao. |
| - apps/examples/nettest: Fix typo: NET_LOOPBACK -> |
| CONFIG_NET_LOOPBACK nettest: Fix compilation error. Should enable |
| NET_SETSOCKOPT for preventing compilation error. From EunBong Song. |
| - apps/examples/ostest: Signal handling tests should use the same |
| configurable stack size as used in other tests, not |
| PTHREAD_STACK_DEFAULT. From Gregory Nutt. |
| - apps/examples/ostest: Attempt to make the nested signal test |
| compatible with the suspend/resume test. Some signals cannot be |
| caught when the suspend/resume configuration is in place. From |
| Gregory Nutt. |
| - apps/examples/smps: Fixes in some printf and in Kconfig. From |
| Mateusz Szafoni. |
| |
| * System Utilities: apps/system: |
| |
| - apps/system/cu: (1) Protect from possible re-definition of signal |
| values, (2) Fix CU ctrl-C hand when remote core hang. From ligd. |
| - apps/system/i2c: Fix a backward comparison in i2c_main.c. Noted |
| by Jakob Haufe. From Gregory Nutt. |
| - apps/system/nsh: Fix compile errors with |
| CONFIG_EXAMPLES_NSH_SYMTAB=y. From Masayuki Ishikawa. |
| - apps/system/ping and ping6: Send ID and seqno in network byte |
| order. From Xiang Xiao. |
| - apps/system/ping and ping6: Change dependency in ping and ping6 |
| Kconfig. These may be implemented in users sockets and, hence, |
| may need to be available even if ICMP and ICMPv6 sockets are not |
| support. From Xiang Xiao. |
| - apps/system/system: Add 'const' to make function prototype |
| compatible with OpenGroup.org requirement From Xiang Xiao. |
| - apps/system/zmodem: Fix error "sz_main.o: No such file or |
| directory" From Xiang Xiao. |
| |
| * Network Utilities: apps/netutils: |
| |
| - apps/netutils/ftpc: Fix handling of url-encoded strings From |
| Dmitriy Linikov. |
| - apps/netutils/ping: Remove unsupported ping. netutils/ping is not |
| supported anymore. It's better to remove this folder for |
| preventing confusing. ping is supported by system/ping. From |
| EunBong Song. |
| |
| * Wireless Utilities: apps/wireless: |
| |
| - apps/wireless/wapi: Remove dependency on CONFIG_EXPERIMENTAL from |
| Kconfig From Gregory Nutt. |
| |
| * GPS Utilities: apps/gpsutils: |
| |
| - apps/gpsutils/minmea: Include wchar.h in minmea.c file to fix |
| wint_t error From Alan Carvalho de Assis. |
| |
| * Interpreters: apps/interpreters: |
| |
| - Remove apps/interpreters/micropthon. There are several reasons |
| for this. (1) the current version 1.3.8 is very old and no one is |
| supporting it. (2) the port only includes the core micropython |
| logic and none of the Python libraries. As such it is useless in |
| any real application. (3) There have recently been compile |
| failures reported. It looks like this is due to changes in newlib |
| based toolchains that now bring in incompatible newlib header |
| files. See issue 104 at |
| https://bitbucket.org/nuttx/nuttx/issues/104/build-micropython-138-error. |
| With no one dedicated to the support of micropython, it can no |
| longer be carried in the NuttX apps/ repository. From Gregory Nutt. |