Commit Graph

1924 Commits

Author SHA1 Message Date
Gregory Nutt
630366272a Networking: Seperate tcp_input() and udp_input() into seprate functions tcp_ipv4_input(), tcp_ipv6_input(), udp_ipv4_input(), and upd_ipv6_input() than can deal will the data offsets caused by the differing sizes of the IP header. 2015-01-15 15:06:46 -06:00
Gregory Nutt
60e50ff3b5 Networking: More IPv6 detanglement 2015-01-15 13:08:28 -06:00
Gregory Nutt
5a441ce03b Networking: Misck IPv6 detanglement 2015-01-15 12:19:44 -06:00
Gregory Nutt
89538ac4a2 - Rename devif_input() ipv4_input()
- Copy net/devif/devif_input.c to ipv6_input.c.  Remove all IPv4-specific logic.
- Rename net/devif/devif_input.c to ipv4_input.c.  Remove all IPv6-specific logic
- Split IPv4 header structure out as net_ipv4hdr_s from net_iphdr_s
2015-01-15 08:03:56 -06:00
Gregory Nutt
a49f0231d2 Networking: A few more IPv6-related fixes 2015-01-14 18:34:28 -06:00
Gregory Nutt
a7ce1279f9 Networking: (1) Copied all ICMP sources files to net/icmpv6 with proper renaming and removal of IPv4 logic, (2) remove IPv6 logic from files in net/icmp, (3) copied include/nuttx/icmp.h to icmpv6.h and removed IPv4 specific logic, (4) removed all IPv6 logic from icmp.h, (5) IP_HDRLEN became IPv4_HDRLEN and IPv6_HDRLEN, (6) ip_chksum() became ipv4_chksum() and ipv6_chksum(), and (7) added partial support for ICMPv6 statistics. 2015-01-14 16:10:38 -06:00
Gregory Nutt
7d68c22d7f Networking: Add support for IPv6 ioctls 2015-01-14 13:03:12 -06:00
Gregory Nutt
31a94816b2 USB host drivers: Change all parmeters named class to usbclass to avoid C++ conflicts 2015-01-11 08:05:09 -06:00
Gregory Nutt
089e001874 STM32 SDIO: CONFIG_MMCSD_SDIOWAIT_WRCOMPLETE should not be available unless CONFIG_MMCSD_SDIO=y 2015-01-08 18:12:06 -06:00
Gregory Nutt
1842525cc2 MMCSD SDIO: Add support for a new SDWAIT_WRCOMPLETE condition. The previous logic used a busy-wait loop to pool the card R1 start to determine when the card was ready for the next transfer. That busy-wait can be quite long -- hundreds of milliseconds. And alternative is to look the the SD D0 pin which will change state when the card is no longer busy.
This logic implements a change the avoids the busy-wait poll by reconfiguring the SD D0 pin as a GPIO interrupt, then waiting for the card to becom ready without taking up CPU cycles.

This change is conditioned on CONFIG_MMCSD_SDIOWATI_WRCOMPLETE and is currenlty only implemented for the STM32 SDIO driver.

From David Sidrane
2015-01-08 06:23:42 -06:00
Gregory Nutt
2b522bab9e Update ChangeLog 2015-01-06 10:52:05 -06:00
Gregory Nutt
e9cec9057b There were some changes which broke my NuttX-Build. With these two patches it builds again. From Manuel Stühn 2015-01-01 15:56:25 -06:00
Gregory Nutt
cf651e0ce3 Fix warning caused by missing comment closing */. From David Sidrane. 2014-12-30 06:22:18 -06:00
Gregory Nutt
b4f235c33f Added forward reference to eliminate warnings. From David Sidrane. 2014-12-30 06:20:40 -06:00
Gregory Nutt
1bfec1a702 Fixes warning about block_operations not being defined. From David Sidrane. 2014-12-30 06:19:30 -06:00
Gregory Nutt
089578319a STM32 Serial: PX4 HW workarround for flaky STM32 RTS. From David Sidrane 2014-12-27 18:58:18 -06:00
Gregory Nutt
aefde565d3 Serial Upper Half: Add watermarks to RX flow control logic 2014-12-27 07:43:06 -06:00
Gregory Nutt
6daa9468f6 More RAMTRON related fixes from David Sidrane 2014-12-26 08:15:59 -06:00
Gregory Nutt
996d6c9d55 Most superstitous updates to the RAMTROM driver make it more compatibile with the version used by PX4. From David Sidrane 2014-12-26 07:59:09 -06:00
Gregory Nutt
fa5dffbc18 STM32 LTDC: Move ltdc.h from include/nuttx/video to arch/arm/include/stm32; Trivial updates after general review 2014-12-19 14:52:17 -06:00
Gregory Nutt
7a874e5d4c ili9341: update interface control definitions
Signed-off-by: Marco Krahl <ocram.lhark@gmail.com>
2014-12-19 13:52:40 -06:00
Gregory Nutt
3ce3b168f8 stm32: Add interface description for ltdc controller. This defines the interface to perform hardware accelerated layer operation by the ltdc controller.
The following methods must be supported by the implementation:

- gevideoinfo
- getplaneinfo
- getlid
- setclut
- getclut
- setcolor
- getcolor
- setcolorkey
- getcolorkey
- setalpha
- getalpha
- setblendmode
- getblendmode
- setarea
- getarea
- update

And if DMA2D is supported:

- blit
- blend

The method up_ltdcgetlayer provides access to a reference of a specific ltdc
layer.

Signed-off-by: Marco Krahl <ocram.lhark@gmail.com>
2014-12-19 13:45:18 -06:00
Gregory Nutt
a1a2e53c3e Freedom KL25Z: Update the CC3000 support to use the current CC300 interfaces. From Alan Carvalho de Assis 2014-12-18 13:52:01 -06:00
Gregory Nutt
937f9f23f1 strncpy will not copy the terminating \0 into the destination if the source is larger than the size of the destination. Ensure that the last byte is always zero and let strncpy only copy CONFIG_TASK_NAME_SIZE bytes. The issue of unterminated names can be observed in ps when creating a pthread while CONFIG_TASK_NAME_SIZE is set to 8. 2014-12-17 12:24:02 -06:00
Gregory Nutt
d818ab5e35 Update the ADXL345 interface following the current interface scheme 2014-12-16 11:45:28 -06:00
Gregory Nutt
c9ca51fc8a Minor clean-up associated with the ADX345 driver 2014-12-16 10:18:44 -06:00
Gregory Nutt
ae18f9dacd Unify sensor debug. ADX driver was using input debug; LM75 and QENCODE that their own custom debug. Now all use CONFIG_DEBUG_SENSOR, sndbg() 2014-12-16 09:54:32 -06:00
Gregory Nutt
10863af628 Add ADXL345 accelerometer driver. From Alan Carvalho de Assis 2014-12-16 08:16:53 -06:00
Gregory Nutt
16f5ea451b Fix cosmetic typo in header file idempotence. Note by Lazlo 2014-12-10 18:27:29 -06:00
Gregory Nutt
cb76fc05fc Lots of fonts that derive from X11-misc-fixed-* fonts. Converted for use by NuttX by Pierre-Noel Bouteville 2014-12-10 17:11:23 -06:00
Gregory Nutt
cdc8fc52d1 SmartFS: Implements wear-leveling in the SmartFS. From Ken Pettit 2014-12-09 14:11:15 -06:00
Gregory Nutt
69cb752813 Add CRC8 support. From Ken Pettit 2014-12-09 13:27:22 -06:00
Gregory Nutt
7f59a64f42 stdint.h: Don't use hex values to specify minimum values of fixed width, signed values. Hex values are inherently unsigned and not usable for this purpose in all contexts 2014-12-08 11:44:52 -06:00
Gregory Nutt
1b5e296489 Add sys/custom_file.h. Used when CUSTOM_FILE_IO is define and avoids re-definition errors about the FILE define. From Thomas Gruber via the PX4 repository 2014-12-06 12:10:08 -06:00
Gregory Nutt
ad05793c0f msg type should be char * not void * in mq_send, mq_timedsend, mq_receive, and mq_timedreceive. Noted by Pierre-Noel Bouteville 2014-12-05 19:16:14 -06:00
Gregory Nutt
c0c108d5e2 Add support for ST Micro EEPROM device geometries. From Sebastien Lorquet 2014-12-05 09:13:34 -06:00
Gregory Nutt
76906110b0 Correct spelling: MOUNTPOINT not MOUNTPOUNT. Numerous places. Some are problems. From Woohan Lee 2014-12-01 06:41:30 -06:00
Gregory Nutt
7ad7163bd3 Updated comments 2014-11-29 17:39:40 -06:00
Gregory Nutt
1fa790cf8e Update comments 2014-11-29 15:28:28 -06:00
Gregory Nutt
ba58b37e46 Re-arrange the AJOYSTICK data structure so that it matches the mouse structure 2014-11-29 13:26:26 -06:00
Gregory Nutt
4657f5c870 Update some Documentation and comments associated with the last ioctl change 2014-11-29 13:25:29 -06:00
Gregory Nutt
e31d5125ae Add support for a variadic ioctl() function. The ioctl() interface is a non-standard, Unix interface. NuttX has always used the older, three-parameter version. Most contemporary systems now, however, use a variadic form of the ioctl() function. Added an option to insert a shim layer to adapt the three-parameter ioctl() to use the variadic interface form. Internally, the ioctl handling is the same three-parameter logic. The only real complexity to the shim is in how the system calls must be handled. 2014-11-29 10:53:22 -06:00
Gregory Nutt
19d31412f7 Update/correct some comments 2014-11-29 07:08:30 -06:00
Gregory Nutt
2b8fe6709b Add an analog joystick driver. Initial checkin is only a little more of a clone of the discrete joystick driver and is as-of-yet untested 2014-11-28 19:59:27 -06:00
Gregory Nutt
36ac0d2cf4 Add an interface definition header file for an analog joystick device 2014-11-28 19:27:42 -06:00
Gregory Nutt
544322edb9 DJoystick: Add a new ioctl to get the support joystick discrete signals 2014-11-28 15:39:57 -06:00
Gregory Nutt
421c81b315 STM3210E-EVAL: Add a DJoystick driver 2014-11-28 13:31:09 -06:00
Gregory Nutt
bd93ba55c5 Cosmetic change to comment 2014-11-28 09:06:05 -06:00
Gregory Nutt
5ddfdb2d8d cctype: Undefined macros defined ctype.h so that builtin C++ implementations will be used 2014-11-28 09:02:52 -06:00
Gregory Nutt
e42f7b552f This commit is a set of patches 02/11 through 03/11 correcting issues with the CC3000 networking (01/11 was committed separated). Among these 10 patches:
03/11: CC3000 driver was getting stuck at recv() when remote host closed connection and application tried to read data from remotely shutdown socket. This patch adds proper handling for remotely closed socket event.

07/11: Socket state initialization was done in 'register', while it should be initialized in 'open' and deinitialized in 'close'. Old way caused problems when device is closed, power-cycled and then reopened as old socket state was left enabled.

08/11: Select thread was getting stuck after 'close, power-cycle, reopen', since selectsem was not properly setup and cleaned up.

09/11 'maxFD' was not properly reset in select worker and not checked for before calling cc3000_select().

10/11: After wlan_stop()/cc3000_close(), irqsem was left with count '-1'. Therefore on next wlan_start()/cc3000_open(), initial value for irqsem was wrong. Additional repeated wlan_start()/wlan_stop() decreased irqsem value further. Obviously this causes driver not to function correctly and freeze.

Patch moves initialization and destruction of waitsem, irqsem and readysem to cc3000_open/cc3000_close.

All are: Signed-off-by: Jussi Kivilinna <jussi.kivilinna@haltian.com>
2014-11-28 08:52:52 -06:00
Gregory Nutt
2d9bd07525 Some additional, minor improvements to djoystick interrupt controls 2014-11-27 20:20:10 -06:00
Gregory Nutt
0ec5043a4e Add an interface definition and upper half driver for a discrete joystick device 2014-11-27 17:42:16 -06:00
Gregory Nutt
a7b6369825 Two new fonts from Pierre-noel Bouteville 2014-11-26 14:15:34 -06:00
Gregory Nutt
40b27115cc Add support for generic EEPROM access via a character driver. Add also the EEPROM driver itself. From Sebastien Lorquet 2014-11-26 13:55:34 -06:00
Gregory Nutt
e0fc5a86c8 Fixes for more complaints from cppcheck 2014-11-25 08:09:57 -06:00
Gregory Nutt
e611859aed Fix typo in confiditional compilation. From Alan Carvalho de Assis 2014-11-23 16:51:02 -06:00
Gregory Nutt
c64cb19861 Move IP header flags from tcp.h to ip.h and rename IP_FLAGS vs TCPFLAGS. The problem fixed here is that there IP flags were not available when TCP was disabled. The IP flags are used in ICMP and IGFMP 2014-11-17 17:16:46 -06:00
Gregory Nutt
38754a3466 Completes basic changes to support per-device/per-link TCP receive window size 2014-11-16 11:15:21 -06:00
Gregory Nutt
2340d46d20 Rename NET_LL_MTU to NET_DEV_MTU; rename d_llmtu to d_mtu 2014-11-16 10:42:19 -06:00
Gregory Nutt
c00a37a3db Fixes for Ethernet, SLIP, and Ethernet+SLIP builds 2014-11-16 09:55:58 -06:00
Gregory Nutt
859748a94e Completes conversion of CONFIG_NET_BUFIZE to CONFIG_NET_ETH/SLIP_MTU 2014-11-16 09:22:38 -06:00
Gregory Nutt
ca7486d7f3 Add link MTU size to network device structure. 2014-11-16 08:49:14 -06:00
Gregory Nutt
51adb90e9a Network: Update SLIP configuration; Fix compile issues when building SLIP only 2014-11-15 14:36:49 -06:00
Gregory Nutt
2e55db369d Network: All logic will now handle varialbe length link layer protocol headers within incoming packets. This permits use of multiple network interfaces with differing data links. For example, ETHERNET + SLIP 2014-11-15 13:13:23 -06:00
Gregory Nutt
a831ab21bc Merge remote-tracking branch 'origin/master' into llhdrlen 2014-11-15 10:04:49 -06:00
Gregory Nutt
ebb6fd1e9c Resove merge conflicts 2014-11-15 10:04:33 -06:00
Gregory Nutt
25a9005ce7 Remove use of NET_LL_HDRLEN from Ethernet drivers. Use ETH_HDRLEN instead 2014-11-15 09:05:34 -06:00
Gregory Nutt
2b758537ea Network: Misc fixes for clean complete with both Ethernet and SLIP enabled 2014-11-15 08:55:50 -06:00
Gregory Nutt
388ef8db1a Netwoek: Ada a parameter to netdev_register() to indicate the link protocol supported by the driver. Use this value to replace some logic commited yesterday 2014-11-15 08:22:51 -06:00
Gregory Nutt
64d18bfe12 NET: Fix some some more ARP/Ethernet releated configuration 2014-11-14 21:22:45 -06:00
Gregory Nutt
3576e249b5 Add driver for ST7565 that works with NHD‐C12864KGZ display. From Pierre-noel Bouteville. 2014-11-13 16:03:52 -06:00
Gregory Nutt
bb65701ccd Oops.. part of the last change will still in the editor 2014-11-12 18:33:07 -06:00
Gregory Nutt
a61802640f Defines inline functions as not instrumented - this is relevant for anyone using instrumentation. From Lorenz Meier. 2014-11-12 07:32:36 -06:00
Gregory Nutt
c23b7ec93d From Lorenz Meier: The implementation of access() as vararg macro has the issue that any function call with the same name (even in a C++ class) will match with it and result in a compile error. I have replaced it with a small function, and tried to have decent documentation as well. This resolves the compile issue, and shouldn’t have negative side effects for users of the function. 2014-11-11 11:52:24 -06:00
Gregory Nutt
6e387ee135 Add ANSI/VT100 color codes 2014-11-10 15:10:57 -06:00
Gregory Nutt
fecad1027c Update csdtio too 2014-11-06 07:11:23 -06:00
Gregory Nutt
ee22104762 Can't use formal parameter name 'template' in stdlib.h. Causes C++ compilation errors. Noted by Lorenz Meier 2014-11-06 07:00:23 -06:00
Gregory Nutt
787cd466d2 Add tmpnam() and tempnam() 2014-11-05 10:43:17 -06:00
Gregory Nutt
d13731711f Add mktemp() and mkstemp() 2014-11-05 09:39:18 -06:00
Gregory Nutt
ef82c280fd MM: Minimum memory allocation must to up to 32 if sizeof pointer is 8-bytes 2014-11-02 12:11:20 -06:00
Gregory Nutt
6bbfb2b7ca Add isatty() function. From Alan Carvalho de Assis 2014-10-27 12:29:15 -06:00
Gregory Nutt
04471aa5cb Add include/wchar.h 2014-10-27 08:28:38 -06:00
Gregory Nutt
03663a7ac4 Cosmetic changes 2014-10-27 07:57:12 -06:00
Gregory Nutt
a7a5c8cff3 Fixes to tickless operation code. From Brandon Warhurst 2014-10-23 06:41:31 -06:00
Gregory Nutt
bfc12bf3a7 ARMv7: Add support to use ITM for SYSLOG debug output 2014-10-22 09:03:00 -06:00
Gregory Nutt
f8c4c75c17 include: adds interface description for ili9341
This adds the description of the generic interface to communicate with
the ili9341 lcd single chip driver used by any displays.

The interface have to be implemented by the platform specific subdriver.
The following functions must be exported:

-select
 Select the spi device before starting an operations.

-deselect
 Deselect the spi device after operations finished and if the device was
 selected before.

-sendcmd
 Send any command to the ili9341 display driver.

-sendparam
 Send any parameter corresponding to the ili9341 display driver.

-recvparam
 Receive any parameter from the ili9341 display driver. This is only possible
 for the read commands supported by the ili9341.

-sendgram
 Send pixel data to the gram of the display. This i similar to the function
 sendparam, but pixel data operations needs another handling of how to send the
 data to the display.

-recvgram
 Receive pixel data to the gram of the display. This i similar to the function
 recvparam, but pixel data operations needs another handling of how to receive
 the data from the display.

-backlight
 Change the backlight level of the display.

Signed-off-by: Marco Krahl <ocram.lhark@gmail.com>
2014-10-20 15:15:22 -06:00
Gregory Nutt
179fabb019 Add description of work queues to the porting guide. Update comments 2014-10-14 10:21:18 -06:00
Gregory Nutt
f6d11bc2fd Back out an incorrect change 2014-10-12 11:01:57 -06:00
Gregory Nutt
872e9fce26 Cosmetic update to comments 2014-10-12 10:53:29 -06:00
Gregory Nutt
c9d7472d68 Change naming of HP work queue configuration varaibles to be symmetric with LP work queue naming 2014-10-11 17:03:44 -06:00
Gregory Nutt
b78fe7c270 Rename CONFIG_SCHED_USRWORK to CONFIG_LIB_USRWORK 2014-10-11 15:59:40 -06:00
Gregory Nutt
9292e3d9de Decouple the user-space work queue from the kernel space work queues 2014-10-11 15:50:22 -06:00
Gregory Nutt
bb1d91bd83 Make building of low-priority work queue independent of also building the high-priority work queue 2014-10-11 14:43:24 -06:00
Gregory Nutt
0566eb45f7 Fix a couple of C++ related problems in include/cxx 2014-10-11 08:40:19 -06:00
Gregory Nutt
ae3cc327c7 AIO now also supports socket transfers 2014-10-11 08:15:23 -06:00
Gregory Nutt
4a4b3ac537 Add support for multiple low-priority worker threads 2014-10-10 16:24:50 -06:00
Gregory Nutt
cf59a195ba User-mode work queue logic should not disable interrupts 2014-10-10 14:52:04 -06:00
Gregory Nutt
16a3e83258 Add support for delays of different durations in work queue processing 2014-10-10 13:21:37 -06:00
Gregory Nutt
b2cebaa9d4 Modularize starting of worker threads to better isolate individual initialization characteristics 2014-10-10 09:38:28 -06:00
Gregory Nutt
1afc9773ac Decoupling work queue data structures. This is part of the preparation to support multiple low-priority worker threads 2014-10-10 08:35:58 -06:00