Commit Graph

10448 Commits

Author SHA1 Message Date
Gregory Nutt
29309e63aa Eliminate some warnings from building testing. 2017-11-02 17:27:48 -06:00
Gregory Nutt
2dbe7af7f3 fs/userfs: There are some deadlock issues that make the UserFS un-usable at the current time. Added to the TODO list; also feature is now marked EXPERIMENTAL. 2017-11-02 08:46:18 -06:00
Gregory Nutt
21041af8a7 This commit modifies the Unix domain local socket design. Local sockets are built on top of pipes. The Local socket implementation maintained file descriptors to interrupt with the pipes. File descriptors have the bad property that they are valid only while running on the thread within the task that created the local socket.
As a policy, all internal OS implementations must use "detached" files which are valid in any context and do not depend on the validity of a file descriptor at any point in time.  This commit converts the usage of file descriptors to detached files throughout the local socket implementation.

Squashed commit of the following:

    net/local: Finish change to eliminate use of file descriptors.
    net/local:  A little more of the conversion.
    net/local: Beginning of chnages to eliminate use of file descriptors in the local socket implementeation. poll() will be a problem.
2017-11-02 08:23:38 -06:00
Anthony Merlino
14fb37c995 Merged in antmerlino/nuttx/sixlowpan-mac802154 (pull request #526)
ieee802154: Simplifies notify() and rxframe() calls to a single notify() call. dataind's and all other "notifs" are now "primitives" which aligns with standard terminology

* mac802154: Adds missing breaks from case statement

* sixlowpan: Fixes bad logic where ACK is not requested if address is not a broadcast

* ieee802154: Simplification of "notifs" and "datainds" to generic primitives passed via a single notify call to the layer above the MAC

* Directories.mk should reference CONFIG_WIRELESS instead of CONFIG_DRIVERS_WIRELESS

* xbee_netdev: Network must be locked when calling sixlowpan_input

* sixlowpan: Reassembly buffer can't be freed if provided by radio driver

* sixlowpan: Don't free IOB if there is an error processing it as the MAC will try to pass it along to another receiver

* ieee802154: Adds basic logging to ieee802154_primitive.c

* Minor fixes after rebase

* xbee: Adds AT query timeout to retry if XBee doesn't respond to request

* same70-xplained: Adds Xbee support. Makes mikroBus slot Kconfig 'choice'

* mac802154: Removes unused function declaration

* drivers/mrf24j40: Fixes compilation error using . operator rather than -> operator

* mac802154_device: Changes a few mac802154_primtive_free's to ieee802154_primitive_free() and changes notif to primitive in a couple places.

* mac802154: Adds promiscous mode logic to bypass parsing of incoming frames. MAC char device also checks for promiscous mode and passes whole frames including header and FCS to the application if promiscous mode is enabled.

* sixlowpan: Fixes logic to correctly check if packet is large enough to include header.  This would cause packets to be considered too small when they are sufficiently sized.

* sixlowpan: Fixes forwarding logic to use forwarding device rather than received device to look up destination link layer address

* net/ipforward: Fixes typo that caused build error when IP forwarding was enabled with CONFIG_NET_ICMPv6_NEIGHBOR enabled as well.

* configs/same70-xplained: Simple spelling fix

Approved-by: Gregory Nutt <gnutt@nuttx.org>
2017-11-01 20:15:21 +00:00
Gregory Nutt
e348ea70ff sim/userfs: Add a configuration for testing the UserFS using apps/examples/userfs. 2017-10-31 15:26:58 -06:00
Gregory Nutt
48690284fb configs/mx1ads: This commit removes board support for the mx1ads board. That board support was never completed and I no longer even have the hardware. The unfinished board support is still available in the Obsoleted repository if anyone would ever like to resurrect it. 2017-10-28 10:41:15 -06:00
Mateusz Szafoni
e3bb78a881 Merged in raiden00/nuttx (pull request #520)
Master

* stm32: add ADC DMA support to STM32F33 configuration

* stm32f33xxx_adc.c: fix compilation if no DMA

* nucleo-f334r8: eliminate warning

* nucleo-f334r8: add highpri example configuration

Approved-by: Gregory Nutt <gnutt@nuttx.org>
2017-10-28 14:29:07 +00:00
Jussi Kivilinna
bcf4a5d056 Merged in jussi_kivilinna/nuttx/stm32l4_i2c_rewrite (pull request #519)
Port STM32F7 I2C driver to STM32L4

* arch/stm32l4: port STM32F7 I2C driver to STM32L4

    STM32L4 I2C driver is in work-in-progress state (plentiful of
    TODOs and #warnings) and lags many features found in more
    up-to-date STM32 I2C drivers. The peripheral on STM32F7 and
    STM32L4 are identical except for L4's 'wakeup from stop mode'
    flag and STM32F7's I2C driver is in more 'ready to use' state.

    Patch ports the STM32F7 I2C driver to STM32L4. The I2C clock
    configuration is kept the same as before (I2CCLK = PCLK1 80 Mhz)
    instead of switching to STM32F7 arch default that is I2CCLK=HSI.
    Further work would be to add configuration option for choosing
    I2C clock source instead of current hard-coded default.

* arch/arm/stm32f7: i2c: restore bus frequency after I2C reset

    Copy frequency restoration fix from STM32L4 I2C driver to STM32F7 I2C driver.

* arch/arm/stm32f7: i2c: remove unused Kconfig option

* configs/nucleo-l496zg/nsh: enable I2C4 bus with i2ctool

Approved-by: Gregory Nutt <gnutt@nuttx.org>
2017-10-26 13:59:20 +00:00
Jan Pobříslo
7a530c404d Merged in ccxcz/nuttx/olimex-stm32-h407-v2 (pull request #518)
Olimex stm32-h407 serial support for the on-board UEXT connector (fixed style & defconfig)

* olimex-stm32-h407: Add USART6 for UEXT connector.

* olimex-stm32-h407: nsh_uext configuration and README update.

Approved-by: Gregory Nutt <gnutt@nuttx.org>
2017-10-26 13:04:05 +00:00
Gregory Nutt
d92c5a0fdb lm3s8962: NX configuration needs CONFIG_NXSTART_EXTERNINIT=y. Also update TODO list. 2017-10-24 15:36:19 -06:00
Gregory Nutt
70c59a9d91 This commit adds support for semi-standard IPPROTO_ICMP6 sockets. This is a replacement for the non-standard ICMPv6 ping support that violated the portable POSIX OS interface.
Squashed commit of the following:

    net/icmpv6: IPPROT_ICMP6 socket logic now builds without error.
    net/icmpv6:  Add support for read-ahead and poll(). Initial commit is just cloned from ICMP with the appropriate name changes.
    configs/:  All defconfig filess that include CONFIG_NET_ICMPv6_SOCKET=y need to select CONFIG_SYSTEM_PING6=y and deselect CONFIG_DISABLE_POLL.
    Update NSH documention to show that ping6 is now a built in command.
    net/icmpv6:  Add icmpv6_sendto.c and icmpv6_recvfrom.c.  Initial versions are just clones from icmp/ with appropriate name changes.
    net/icmpv6:  Clone some ICMP socket logic as the beginning of support for ICMPv6 socket support.
    Rename CONFIG_NET_ICMPv6_PING to CONFIG_NET_ICMPv6_SOCKET.  Move prototype for icmpv6_ping from include/nuttx/net/icmpv6 to net/icmpv6/icmpv6.h
2017-10-24 11:23:08 -06:00
Gregory Nutt
2c8708c332 stm32f103-minimum: Add missing semi-colon from the last patch. 2017-10-23 12:20:07 -06:00
Gregory Nutt
cccc86da09 This change adds support for semi-standard IPPROTO_ICMP AF_INET datagram sockets. This replaces the old ad hoc, nonstandard way of implementing ping with a more standard, socket interface.
Squashed commit of the following:

    net/icmp:  Finishes off icmp_recvfrom().
    net/icmp:  Add readahead support for IPPROTO_ICMP sockets.
    net/icmp:  Add poll() support for IPPROTO_ICMP sockets.
    net/icmp:  Add a connection structure for IPPROTO_ICMP sockets.
    net/icmp:  Implements sendto for the IPPROTO_ICMP socket.
    net/icmp:  Move icmp_sendto() and icmp_recvfrom() to separate files.  They are likely to be complex (when they are implemented).
    net/icmp:  Hook IPPROTO_ICMP sockets into network.  Fix some naming collisions.  Still missing basic ICMP send/receive logic.
    configs: apps/system/ping current need poll() enabled.
    configs: All defconfig files that use to enable low-level support must now enabled CONFIG_SYSTEM_PING.
    net/icmp:  Adds basic build framework to support IPPROTO_ICMP sockets.
2017-10-23 08:45:12 -06:00
Alan Carvalho de Assis
c28b938600 stm32f103-minimum: Fix a compilation warning.
stm32f103-minimum:  Add an ADPS-9960 example configuration
2017-10-23 07:00:20 -06:00
Mateusz Szafoni
9105ac3e98 Merged in raiden00/nuttx (pull request #516)
Master

* stm32_hrtim: fix warnings related with RCC

* stm32f33xxx_adc: add some publicly visable interfaces and some code to support injected channels

* stm32f33xxx_dma: add public interface to handle with DMA interrupts

* stm32_hrtim: change some names and add some coments

* chip/stm32f33xxx_adc.h: cosmetics

* nucleo-f334r8: add logic for zero latency high priority interrupts example

* stm32: update some ADC-related configuration in Kconfig

Approved-by: Gregory Nutt <gnutt@nuttx.org>
2017-10-22 15:46:13 +00:00
Gregory Nutt
9b31a81b00 Squashed commit of the following:
fs/fat:  Remove mkfatfs from the OS.  This is a user-space application and belongs in apps, not in the OS.
2017-10-20 12:36:25 -06:00
Alan Carvalho de Assis
3268a6ac5f drivers/sensor: Add driver for the APDS-9960 gesture sensor 2017-10-20 06:37:38 -06:00
Gregory Nutt
5a416be95b net/tcp: Same change to tcp_send_buffered.c probably also applies to tcp_send_unbuffered.c. 2017-10-19 16:14:38 -06:00
Mateusz Szafoni
09f3e9ce5c Merged in raiden00/nuttx (pull request #513)
Master

* stm32f33xxx_adc.c: fix some warnings and compilation error when extsel not in use

* nucleo-f334r8/adc: change serial console to USART2 (STLINK COM)

Approved-by: Gregory Nutt <gnutt@nuttx.org>
2017-10-19 20:07:04 +00:00
Mattias Edlund
ee1330ed5e The timer frequencies (BOARD_TIMx_FREQUENCY) are incorrectly defined in configs/stm3240g-eval/include/board.h. Since the APB prescalers are set to divide by 4 and 2 respectively, the frequencies should be "2xAPBx" as said in the comment.  The correct frequencies are already defined but as STM32_APBx_TIMx_CLKIN. 2017-10-19 07:00:55 -06:00
Anthony Merlino
433b997bc6 Merged in antmerlino/nuttx/photon-spi (pull request #512)
photon: Support SPI1 and SPI3

Approved-by: Gregory Nutt <gnutt@nuttx.org>
2017-10-18 18:22:29 +00:00
Gregory Nutt
d160ae8a32 BCM2708: Add some build configuration and support logic for low-level serial otput (unfinished) 2017-10-17 16:26:52 -06:00
Gregory Nutt
ea23268f34 BCM2708: Add system timer register definitions and a partial implementation of the tickless mode timer. 2017-10-17 13:54:54 -06:00
Gregory Nutt
5d6ecfa3ca Update a document, a README, and some comments. 2017-10-17 06:25:46 -06:00
Gregory Nutt
5b385f4d4d kthread_create(): Rename kernel_thread() to kthread_create() for better naming consistency with task_create() and kthread_delete(). 2017-10-16 11:38:00 -06:00
Gregory Nutt
c8eb0a4880 configs/sim: Convert the traveler configuration so that it uses the framebuffer driver. 2017-10-16 07:39:16 -06:00
Gregory Nutt
413cfdfa75 Update some README files. 2017-10-15 16:15:05 -06:00
Gregory Nutt
c8dad11bf0 Update some configurations 2017-10-15 13:55:36 -06:00
Gregory Nutt
a98f188f04 configs: Fix some configuration proglems found in build testing. 2017-10-15 13:49:19 -06:00
Gregory Nutt
692d4b3dc6 configs/sim: Update touchscreen driver initialization to use only multiple-user NX server logic. 2017-10-15 12:40:01 -06:00
Gregory Nutt
b75952c479 This removes the last traces of single-user mode. 2017-10-15 09:34:08 -06:00
Gregory Nutt
4b56c0cc0c boardctl(): Remove the BOARDIOC_GRAPHICS_SETUP command. 2017-10-15 07:56:04 -06:00
Gregory Nutt
9d21ecbd2d All configurations that use NXLINES must select NX_MULTIUSER 2017-10-14 16:52:59 -06:00
Gregory Nutt
18167a2953 configs: All configurations that use the NX server need to have larger POSIX messages. 2017-10-14 16:03:07 -06:00
Alan Carvalho de Assis
a49a7d4a0f configs/stm32f103-minimum: Add support for LM75 in the stm32f103-minimum board 2017-10-14 15:27:40 -06:00
Gregory Nutt
a1d91a6924 Squashed commit of the following:
All configurations that use NXIMAGE must select NX_MULTIUSER
    All configurations that use NXHELLO must select NX_MULTIUSER
2017-10-14 15:07:55 -06:00
Gregory Nutt
81e630a971 All configuratinos that use examples/nxterm must enable CONFIG_LIB_BOARDCTL. 2017-10-14 12:12:39 -06:00
Gregory Nutt
1eb4263dc6 The lcdrw example has been removed because it violates the portable OS interface. 2017-10-14 11:28:42 -06:00
Gregory Nutt
540afbc495 The nxtext example no longer supports single user mode. 2017-10-14 11:16:01 -06:00
Gregory Nutt
5907d3c6b6 The nx example no longer supports single user mode. 2017-10-14 10:54:38 -06:00
Alan Carvalho de Assis
62e9c930bb configs/stm32f4discovery: Add a USB MSC configuration 2017-10-13 10:02:22 -06:00
Gregory Nutt
181875f3ba fs/vfs: Add new internal OS interface nx_read(). nx_read() is functionally equivalent to read() except that it does not modify the errno variable and it is not a cancellation point. Changed all references to read() in the OS to nx_read(). 2017-10-11 12:13:41 -06:00
Gregory Nutt
41f3a2adfe restore TABs to Kconfig 2017-10-11 06:39:56 -06:00
Anthony Merlino
dfb7ac4ed5 Merged in antmerlino/nuttx/clicker2 (pull request #507)
clicker2-stm32: Adds SD card, automount, and syslog file support and fixes a few minor issues

* configs/clicker2-stm32: Moves defines for xbee from clicker2-stm32.h to stm32_xbee.h

* configs/clicker2-stm32: Adds support for uSD click boards and automount support

* configs/clicker2-stm32: Fixes minor guard clause

* clicker2-stm32: Bring-up automounter before MMCSD

* clicker2-stm32: MRF24J40 interrupt should only fire on falling edge.

* clicker2-stm32: Adds file syslog support for logging to file on SD card

Approved-by: Gregory Nutt <gnutt@nuttx.org>
2017-10-11 08:15:57 +00:00
Gregory Nutt
c5a5a5a1b6 Trivial update to README 2017-10-10 08:44:12 -06:00
Gregory Nutt
02d3e50b48 Update a README file 2017-10-09 13:40:54 -06:00
Gregory Nutt
270aa2848a Squashed commit of the following:
BCM2708:  Add enough infrastructrue (more stubs) to get a clean compilation of the Pi Zero configuration (with many undefined things at link time).

    BCM2708:  Add basic interrupt handling logic

    BCM2708: Add interrupt register definitions.

    BCM2708:  Add irq.h header file

    BCM2708/Pi zero:  bcm_boot.c and bcm_memorymap.h now compile.  Added pizero linker script.

    BCM2708/Pi Zero:  Add Make.defs needed to build.

    arch/arm/include/bcm2708, arch/arm/src/bcm2708, configs/pizero:  Add some basic build and configuration logic.

    configs/pizero:  Add some basic structure of the Rasperry Pi Zero port.

    Created directory configs/pizero.  Nothing there now but a README.txt file.

    Add initial boot.c and memorymap.c files
    Author: Alan Carvalho de Assis <acassis@gmail.com>

    Add AUX/UART/SPI registers definition
    Author: Alan Carvalho de Assis <acassis@gmail.com>

    Pizero GPIO registers
    * Initial commit to add GPIO definitions
    * Add remaining GPIO registers definition
    Alan Carvalho de Assis <acassis@gmail.com>

    BCM2708 memory map:  Add VBASE defintions; fix VCSDRAM address per Alan; move all virtual address to the bottom of the file to avoid confusion -- top is all physical address; bottom is all veritural address.

    Add initial memory map to BCM2708/BCM2835
    Alan Carvalho de Assis <acassis@gmail.com>
2017-10-09 13:11:17 -06:00
Gregory Nutt
d0eb182c00 Minor changes from review of last PR 2017-10-09 12:15:05 -06:00
Mateusz Szafoni
6c25f3d142 Merged in raiden00/nuttx (pull request #505)
Master

* power: Add powerled to Kconfig

* stm32_powerled.c: cosmetics

* stm32_hrtim.c: cosmetics

* stm32/Kconfig: add HRTIM configuration and add DAC external trigger configuration

* stm32f334-disco: Add powerled example configuration

Approved-by: Gregory Nutt <gnutt@nuttx.org>
2017-10-09 18:07:09 +00:00
Gregory Nutt
e7c52bac60 Squashed commit of the following:
sched/mqueue:  Rename all private static functions for use the nxmq_ vs. mq_ naming.

    sched/mqueue:  Rename all OS internal functions declared in sched/mqueue/mqueue.h to begin with nxmq_ vs. mq_.  The mq_ prefix is reserved for standard application interfaces.
2017-10-09 09:06:46 -06:00