Commit Graph

31208 Commits

Author SHA1 Message Date
Gregory Nutt
cfc5f8fbaf drivers/net: Remove the old, unfinished Crystal LAN driver. I don't even have the hardware that it goes with anymore. 2017-10-28 10:27:00 -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
Gregory Nutt
382979b7cb Update comments in a Kconfig file. 2017-10-27 18:30:18 -06:00
Alan Carvalho de Assis
b5f6d6c4f7 drivers/can/mcp2515.c: Fix BRP for SET_BITTIMING ioctl as well 2017-10-27 06:15:54 -06:00
Jussi Kivilinna
0ea4d2a11d sensors/lis2dh: fix use of obsolete dbg macro 2017-10-27 06:13:14 -06:00
Alan Carvalho de Assis
b0ce7753aa drivers/can/mcp2515.c: Fix the MCP2515 Bit Rate Prescale calculation. 2017-10-27 06:11:37 -06:00
Gregory Nutt
07f441eecb Missing some conditional logic for cases where mountpoint procfd entries excluded. 2017-10-27 06:06:20 -06:00
Gregory Nutt
ea13e24392 Correct a problem that was causing an apparent directory to be reported as a file instead of a directory by opendir.
This happened after adding these three new procfs entries:

  fs/block
  fs/mount
  fs/usage

Of course, there is no directory fs in this case, only three files that have fs/ in their relative pathnames.  The logic was detecting that fs was the name of the enty to report, but it was then declaring that fs was a file (because fs/block is of type file).

This was fixed by adding a check for matching lenghts.  i.e., if strlen(fs) != strlen(fs/block), then report fs as a directory instead of a file.
2017-10-26 16:30:59 -06:00
Gregory Nutt
1ed816de4b Squashed commit of the following:
fs/mount:  Implements procfs /proc/fs/blocks and /proc/fs/usage files, replacing the NSH df command.
    fs/mount:  Implements procfs /proc/fs/mount file, replacing the NSH mount command when there are not arguments.
    fs/: Move prototype of foreach_mountpoint out of include/nuttx/fs/fs.h to fs/mount/mount.h.  Add framework for the mount procfs (initial commit is just a close of the net/route table procfs.
2017-10-26 13:33:08 -06:00
Gregory Nutt
4d344b36a3 Merge branch 'master' of bitbucket.org:nuttx/nuttx 2017-10-26 09:25:46 -06:00
Jussi Kivilinna
e557c3e8d5 drivers/sensors/lis2dh: fixes for self-test 2017-10-26 09:25:20 -06: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
5692e340ab Move comments describing a problem out of the code and into the TODO list where it belongs. 2017-10-25 12:37:02 -06:00
Gregory Nutt
c3ce23ba35 Cosmetic update to a document and some comments. 2017-10-25 11:17:38 -06:00
Juha Niskanen
c0bf0b4d9d net/usrsock: fix compiler warnings, mostly about nxsem_post 2017-10-25 07:31:14 -06:00
Juha Niskanen
31f3f990c3 net/local: fix typo in config macro name 2017-10-25 07:23:48 -06:00
Jussi Kivilinna
8eaa587c98 sched: move POSIX thread specific data from pthread TCB to common TCB structure. This change allows using pthread_getspecific/pthread_setspecific from main thread. Patch also enables using pthread data with config option CONFIG_DISABLE_PTHREAD=y. 2017-10-25 07:06:42 -06:00
Gregory Nutt
6163033439 net/icmpv6: Remove prototype for obsolete, removed function. 2017-10-24 16:57:24 -06:00
Gregory Nutt
51c2fe321b net/icmp: Eliminate a warning. 2017-10-24 15:46:32 -06: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
ff22b976db Update document 2017-10-24 15:36:03 -06:00
Jussi Kivilinna
75b53d563b mm/mm-heap: memalign: fix heap corruption caused by using unaligned chuck size. Unaligned nodes generated by memalign later cause heap corruptions when nodes are shrink further (for example, 24 bytes -> 8 bytes, when alignment is 16 bytes). 2017-10-24 15:35:52 -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
bad3379bc4 net/icmp: Correct some comments, typings, spacing problems from last big ICMP socket change. 2017-10-23 14:27:31 -06:00
Gregory Nutt
2c8708c332 stm32f103-minimum: Add missing semi-colon from the last patch. 2017-10-23 12:20:07 -06:00
Jussi Kivilinna
45fdad5055 arch/arm/common/up_checkstack: fix assert panic when both TLS and interrupt stack are enable 2017-10-23 12:02:20 -06:00
Gregory Nutt
fb3655e9f0 net/inet: Add check for protocol before handing out TCP and UDP sockets. 2017-10-23 09:58:11 -06:00
Gregory Nutt
261045e689 Update NSH documentation. 2017-10-23 09:23:11 -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
Gregory Nutt
fc0a5e19d0 drivers/bch: The character driver to block device access now supports an IOCTL to get the geomtry of the underlying block device. 2017-10-20 11:36:44 -06:00
Mateusz Szafoni
704ad2faeb Merged in raiden00/nuttx (pull request #515)
stm32_adc.c: clear pending interrupts

Approved-by: Gregory Nutt <gnutt@nuttx.org>
2017-10-20 17:15:48 +00:00
Juha Niskanen
9653255cff Merged in juniskane/nuttx_stm32l4/stm32l1_stm32l4_rtc_update_pr (pull request #514)
STM32L1, STM32L4 RTC: add periodic interrupts, update L1 RTC implementation

* STM32L4 RTC: add support experimental CONFIG_RTC_PERIODIC

* STM32 RTC: separate STM32L1 RTC into a separate file

    STM32L1 RTC is very close to F4 or L4 versions, with two alarms
    and periodic wakeup support so backported L4 peripheral to L1.

* RTC: add periodic alarms to upper and lower halves

Approved-by: Gregory Nutt <gnutt@nuttx.org>
2017-10-20 17:15:17 +00:00
Alan Carvalho de Assis
0be36a6ac1 drivers/sensors/apds9960.c: Use work_queue to read/process data when receive an IRQ 2017-10-20 08:54:44 -06:00
Jussi Kivilinna
b87739d174 arch/arm/src/stm32f7/i2c: fix I2C_M_NORESTART handling 2017-10-20 08:41:42 -06:00
Jussi Kivilinna
fe9be72bec drivers/sensors/hts221: power-on sensor for loading calibration data 2017-10-20 08:33:44 -06:00
Jussi Kivilinna
09cee19cee include/nuttx/sensors/ioctl: deduplicate SNIOC_CFGR 2017-10-20 08:32:09 -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
9e73216bf2 net/tcp: Same change to tcp_send_buffered.c probably also applies to sixlowpan_tcpsend.c and inet_recvfrom.c 2017-10-19 16:45:00 -06:00
Gregory Nutt
8d023cb97f tcp_lost_connection() is called from two places in tcp_sendfile.c 2017-10-19 16:36:57 -06:00
Gregory Nutt
8c11a73d33 net/tcp: Same change to tcp_send_buffered.c probably also applies to tcp_sendfile.c. 2017-10-19 16:31:28 -06:00
Gregory Nutt
7d62a74915 Fix an error introduced in last commit. 2017-10-19 16:26:09 -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
Gregory Nutt
cf5cba953d There was a possible recursion that could eventually overflow the stack. The error occurred when closing the socket with inet_close() while a socket callback was still queued. When the socket callback was executed by devif_conn_event(), this resulted in a call to psock_send_eventhandler() with TCP_CLOSE flag set which then called tcp_lost_connection(). tcp_shutdown_monitor() then called tcp_callback() again, which again called psock_send_eventhandler(), and so on.... Noted by Pascal Speck. Solution is also similar to a solution proposed by Pascal Speck. 2017-10-19 11:55:51 -06:00
Gregory Nutt
bc40403516 There was a reference counting problem in the TPC logic of net_clone(). net_clone() which is the common logic underlying dup() and dup2() for sockets. When net_clone() calls net_start_monitor() and net_start_monitor() returns a failure (because the underlying TCP connection) then net_clone() must back out the reference count on the structure. Problem noted by Pascal Speck and this implementation of the solution is based on his suggestion. 2017-10-19 11:09:23 -06:00
Jussi Kivilinna
5ef548677a drivrs/mtd/filemtd.c: add block device MTD interface. Block MTD interface allows using block device directly as MTD instead of having to use file-system in between. NOTE that this provides the opposite capability of FTL which will let you use an MTD interface directly as a block device. 2017-10-19 09:53:41 -06:00