Commit Graph

2254 Commits

Author SHA1 Message Date
Gregory Nutt
d11af85ddf Merge remote-tracking branch 'origin/master' into usbhub 2015-04-23 14:06:18 -06:00
Gregory Nutt
0092f79696 Two r's and only two r's in the word interrupt 2015-04-23 14:04:43 -06:00
Gregory Nutt
9752e12b11 USB HUB: Fix bugs, stray ampersand. Need to perfrom class destruction on the worker thread 2015-04-23 13:56:38 -06:00
Gregory Nutt
be2ed7eba7 Merge in from Master 2015-04-23 06:34:49 -06:00
Gregory Nutt
9c61847203 USB Hub: Initial implementation asynchronous pipe I/O in the LPC17 HCD needed for hub support 2015-04-22 15:03:25 -06:00
Gregory Nutt
f7ec9b0831 USB hub: Change to connection interface so that applications can deal with external hubs 2015-04-22 12:28:19 -06:00
Gregory Nutt
df4e24ddeb include/assert.h: Wrap definitions of assertion macros in do while. Suggested by orbitalfox 2015-04-22 07:35:35 -06:00
Gregory Nutt
8e9fd9b838 USB HCDs: Add hooks for the async method 2015-04-21 15:43:12 -06:00
Gregory Nutt
5c16454cdf Add USB hub initialization logic to a couple of board configurations 2015-04-21 13:44:14 -06:00
Gregory Nutt
fde0bf650e USB host: Integrate logic to assign device function address 2015-04-21 12:17:49 -06:00
Gregory Nutt
d6b963a62e USB host: Update skeleton driver file 2015-04-21 09:54:11 -06:00
Gregory Nutt
6b27c48068 Merge in from master 2015-04-21 09:32:19 -06:00
Gregory Nutt
4608544f65 time.h: Add localtime prototypes; NSH: Correct test for gmtime_r return value 2015-04-21 09:26:18 -06:00
Gregory Nutt
db3b235fe6 SAMA5 OHCI and EHCI: Now conform to new interfaces to support hubs 2015-04-21 08:59:30 -06:00
Gregory Nutt
d62aa8c158 USB host: Remove getdevinfo() method. Rename hub structure to hubport structure. Get port and function address from hub port structure vs. parameters and other structures. 2015-04-21 07:26:28 -06:00
Gregory Nutt
2ea7a83bf5 USB hub: Move port index out of hub structure and into class structure 2015-04-20 16:50:32 -06:00
Gregory Nutt
4aeb5e549c Get USB host HID mouse driver to build. Error connect method prototypes. 2015-04-20 16:21:13 -06:00
Gregory Nutt
f7f3a7f74d USB hub: Decouple class and hub structures 2015-04-20 12:06:47 -06:00
Gregory Nutt
814ce6fd02 Merge from master 2015-04-20 09:56:00 -06:00
Gregory Nutt
356292b60e Some trivial USB-related changes 2015-04-20 09:51:58 -06:00
Gregory Nutt
fa778aec07 USB hub: Add EP0 to all control transfers. There can be multiple EP0's with a hub 2015-04-20 09:35:43 -06:00
Gregory Nutt
9e0b239c37 Clean compile errors from last commit 2015-04-20 08:53:21 -06:00
Gregory Nutt
8e23ad72b5 USB hub: Add asych HCD interface 2015-04-20 08:41:33 -06:00
Gregory Nutt
a6d9f0622c USB hub: First steps to make interfaces backward compatible 2015-04-20 07:45:11 -06:00
Gregory Nutt
8c1c365ae7 Reorder structure members for better packing 2015-04-19 15:58:09 -06:00
Gregory Nutt
8a23c52650 USB Hub: Change an the usbhost_ctrlxfer interface; move some functions around 2015-04-19 14:26:17 -06:00
Gregory Nutt
820bc08c34 USB Hub: Fix a few compilation errors 2015-04-19 12:01:47 -06:00
Gregory Nutt
a0713bfd1a Merge branch 'master' of ssh://git.code.sf.net/p/nuttx/git into usbhub 2015-04-19 11:45:22 -06:00
Gregory Nutt
80934d147c Oops forgot to add the hub.h file in a preceding commit 2015-04-19 11:44:58 -06:00
Gregory Nutt
1971ea3d4e Clean up some debug output 2015-04-19 11:24:06 -06:00
Gregory Nutt
de182f2a3a Merge remote-tracking branch 'origin/master' into usbhub
Conflicts:
	nuttx/include/nuttx/usb/usbhost.h
2015-04-19 10:55:20 -06:00
Gregory Nutt
cc134049a9 Fix a few typos 2015-04-19 09:15:07 -06:00
Gregory Nutt
f9fc49aecc Fix some typos, clean up some naming 2015-04-19 09:14:00 -06:00
Gregory Nutt
7fcfca40b5 Bring in more logic from https://github.com/kaushalparikh/nuttx 2015-04-19 08:55:48 -06:00
Gregory Nutt
98de2f5712 USB Hub: Add USB hub header file from Kaushal Parikh 2015-04-18 11:39:26 -06:00
Gregory Nutt
34d1d2907d MAX_RAND should be RAND_MAX 2015-04-16 09:35:29 -06:00
Gregory Nutt
f087e35676 A little localtime clean-up 2015-04-14 10:46:05 -06:00
Gregory Nutt
7a745c3fa4 Use common macro(s) for calculating link layer header length. From Brennan Ashton. 2015-04-13 13:53:13 -06:00
Gregory Nutt
fc45d5a2b7 SIG_HOLD is not yet implemented 2015-04-09 11:25:15 -06:00
Gregory Nutt
81703e6fad Add sigset() 2015-04-09 10:16:35 -06:00
Gregory Nutt
4c60fe666c Add sighold(), sigrelse(), sigignore(), and sigpause(). 2015-04-09 08:07:09 -06:00
Gregory Nutt
855e40ee7d Make some file section headers more consistent with standard 2015-04-08 07:25:06 -06:00
Gregory Nutt
190c9adef0 Implements CONFIG_TIME_EXTENDED as we discussed relative to providing the last 3 members of the tm struct and support for filling them in and even using the wday in the STM32 RTC. From David Sidrane. 2015-04-08 06:56:43 -06:00
Gregory Nutt
2a82dc66f9 drawline/drawLine should not take a boolean to select non lines caps or capping at both ends. drawline/drawLine also needs to be able to put a line cap on one one end of a line 2015-04-05 16:53:51 -06:00
Gregory Nutt
ae03d56700 Add a 'capped' boolean parameter to all drawline/drawLine functions/methods. The idea is that this will produce better joining between lines 2015-04-05 08:50:01 -06:00
Gregory Nutt
02beb0d449 More renaming: up_lcdinitialize->board_lcd_initialize, up_lcdgetdev->board_lcd_getdev, up_lcduninitialize->board_lcd_uninitialize 2015-04-04 11:49:15 -06:00
Gregory Nutt
b72cf3366c SAMV7: Add SMC register definition header file; SAMV71-Xult: Add an LCD driver. The initial commit is simply the SAVM4E-EK ILI9375 driver will bogus name changes to ILI9488. 2015-04-03 10:28:32 -06:00
Gregory Nutt
da57730440 Remove carriage returns from file 2015-04-03 07:20:28 -06:00
Gregory Nutt
e9e386ac6e Add ILI9488 header file 2015-04-03 07:12:11 -06:00
Gregory Nutt
e78e762dd6 Add a very basic driver for the CS2100-CP Fractional-N Multipler chip. 2015-04-02 13:00:10 -06:00
Gregory Nutt
06866bb2c5 Fix some missing inclusions in include/nuttx/board.h 2015-04-01 18:35:46 -06:00
Gregory Nutt
6667517c24 Header file for the CS2100-CP 2015-04-01 16:56:27 -06:00
Gregory Nutt
0ec67181c9 Move include/nuttx/timer.h, rtc.h and watchdog.h to include/nuttx/timers/. 2015-04-01 12:37:44 -06:00
Gregory Nutt
97acb5d9ee Update Documentation 2015-04-01 09:05:43 -06:00
Gregory Nutt
f6e6dacb17 Rename pwm_devinit() to board_pwm_setup(). Add CONFIG_BOARDCTL_PWMTEST that will enable calling board_pwm_setup() from boardctl(). Replace calls to pwm_devinit() in apps/examples/pwm with calls to boardctl(). In all configurations that enable the apps/examples/pwm test, make sure that boardctl() suppoprt is properly enabled. 2015-03-31 16:59:22 -06:00
Gregory Nutt
ded2001121 Rename up_nxdrvinit() to board_graphics_setup(). Add CONFIG_BOARDCTL_GRAPHICS that will enabled calls to board_graphics_setup() from boardctrl(). In apps/ and NxWidgts/, replace all calls to up_nxdrvinit with calls to boardctl(). 2015-03-31 16:20:21 -06:00
Gregory Nutt
4212b9b385 Rename adc_devinit() to board_adc_setup(). Add support to the boardctl() interface so that it can call board_adc_setup() on behalf of an application. Change apps/examples/adc to that is now calls boardctl() instead of adc_devinit() in order to initalize the ADC device. 2015-03-31 15:00:23 -06:00
Gregory Nutt
cf95d1a995 rch_tcinitialize() and arch_tcunitinitialize() renamed to board_tsc_setup() and board_tsc_teardown(). These are not long called directly by applications but only indirectly throught the crappy boardctl() OS interface. 2015-03-31 13:21:25 -06:00
Gregory Nutt
d5eec39096 Fix some problems with a preceding commit 2015-03-31 11:59:16 -06:00
Gregory Nutt
b4b40d338a boardctl(): Add a new non-standard OS interface. This is similar to a driver IOCTL call. But this is an IOCTL call directly on the board logic. This function will eventually replace all of the ad hoc OS interfaces that are current used to perform application specific intialiation and application driver test confifuration. It essentially formalizes and institutionalizes these rogue interface in to at least a single crazy call. 2015-03-31 11:25:52 -06:00
Gregory Nutt
9c0441e2da Rename arch_nshinitialize() to board_app_initialize() 2015-03-31 10:21:31 -06:00
Gregory Nutt
312ae5713e PIC32MZ Ethernet: Add support for LAN8740A PHY 2015-03-29 07:05:30 -06:00
Gregory Nutt
469827640b Add support for LAN8740 2015-03-23 15:34:10 -06:00
Gregory Nutt
4945e23772 Trivial update to comments 2015-03-20 18:07:32 -06:00
Gregory Nutt
56e24b561f Add Olimexino-STM32 board support from David Sidrane 2015-03-20 18:00:10 -06:00
Gregory Nutt
6156d5f2fe SAMV71-XULT: Add support for a ConfigData device on the 256 AT24 EEPROM 2015-03-19 14:53:05 -06:00
Gregory Nutt
495f420978 Extend the AT24 EEPROM driver so that it supports: (1) the byte-oriented read() method, (2) parts with extended memory regions, and (3) parts with 8-bit addressing. 2015-03-17 14:27:27 -06:00
Gregory Nutt
8055ba4d03 Pass the umount2() flags to every unbind() implementation. That is where the the decision to umount or not will be made. 2015-03-14 17:22:02 -06:00
Gregory Nutt
f932b26db1 Add umount2(). umount() is now a macro that just calls umount2() with flags = 0. 2015-03-14 16:48:45 -06:00
Gregory Nutt
21d6e41032 Add TUN device. From Max Neklyudov 2015-03-11 06:52:56 -06:00
Gregory Nutt
76007d28f5 Add support for dumping board-specific information on assertion. From David Sidrane 2015-03-04 07:00:29 -06:00
Gregory Nutt
cb5cb96bc9 Fix issues when AES support was added for the STM32L1. From Juha Niskanen 2015-03-04 06:38:03 -06:00
Gregory Nutt
ca35d73586 I2C interface: Add a parmeter to I2C slave callback 2015-03-03 14:48:52 -06:00
Gregory Nutt
81e8524588 SPI: Add a board-specific SPI device value 2015-03-02 10:17:12 -06:00
Gregory Nutt
696e99b69a Update comment and documentation for board interfaces 2015-02-28 06:46:19 -06:00
Gregory Nutt
e7a500003f Remove some prototypes from arch.h that do not belong there 2015-02-27 20:06:11 -06:00
Gregory Nutt
12d61531aa Move board_ prototypes from arch.h to board.h 2015-02-27 20:02:03 -06:00
Gregory Nutt
07a8148538 included/nuttx/board.h: Move all board common prototypes to this header file 2015-02-27 17:17:42 -06:00
Gregory Nutt
bcae42b653 Costmetic updates comments and style; Add NFS dependency on IPv4 2015-02-26 06:04:23 -06:00
Gregory Nutt
5afa3ec59d Add BSD and SYSV types to sys/types to simplify porting. From Max Neklyudov 2015-02-25 14:01:14 -06:00
Gregory Nutt
04d122c31f Adjust microMIPS compile options to enable interlinking with 32-bit code 2015-02-25 09:54:48 -06:00
Gregory Nutt
82fcd4ea0e Add some definitions expected by NFS. Noted by Orbital Fox 2015-02-25 08:59:16 -06:00
Gregory Nutt
dbb281319a netinet/in.h: Add some IPv6 macros 2015-02-25 08:26:40 -06:00
Gregory Nutt
10852dcc25 Extend the fd_set type definition so that it can handle more than 32 descriptors (if so configured). From Max Neklyudov 2015-02-25 08:05:42 -06:00
Gregory Nutt
35a6ef7c40 Fix PTHREAD_COND_INITIALIZER 2015-02-24 20:26:42 -06:00
Gregory Nutt
abbaa2f565 Some typos noted by David Sidrane 2015-02-23 11:49:02 -06:00
Gregory Nutt
63f88fc55f Add some comments 2015-02-19 11:47:34 -06:00
Gregory Nutt
b478c11b85 Back out definition of mbstate_t. That is a mistake 2015-02-19 09:56:53 -06:00
Gregory Nutt
8bd9203d49 Add mbstate_t to wchar.h and cwchar 2015-02-19 09:21:35 -06:00
Gregory Nutt
5b1514cc9b Add an empty cwchar file 2015-02-19 06:32:10 -06:00
Gregory Nutt
2732da28a3 C++: Remove 'using ::timeval' from ctime. struct timeval was recently move to sys/time.h where it belongs. Now there are problems when it is referenced in ctime. Fixed by just removing it from ctime. Is that correct? or should ctime include sys/time.h? Noted by David Sidrane 2015-02-18 20:51:11 -06:00
Gregory Nutt
63ab39b274 VFS: The inode unlink method should not be support if operations on the root pseudo-filesystem are disabled. 2015-02-18 09:34:58 -06:00
Gregory Nutt
e2336a07bb The RTC ioctl() method is now a configuration option 2015-02-18 08:23:10 -06:00
Gregory Nutt
f94e601981 Add an IOCTL method to the RTC interface 2015-02-18 08:05:31 -06:00
Gregory Nutt
60bdc27d25 Fix a couple of typos in recent commit. Found by David Sidrane 2015-02-17 19:21:07 -06:00
Gregory Nutt
2f55a071d3 Ooops... accidentally backed out a good change. Must have had the wrong version in the editor 2015-02-17 12:47:48 -06:00
Gregory Nutt
ee517f428d Fix a typo: include vs incldue 2015-02-17 12:44:51 -06:00
Gregory Nutt
17c381c799 include, not incldue 2015-02-17 09:56:43 -06:00
Gregory Nutt
4e0885f5bc Add a mostly-commented-out version of the standard netdb.h header file 2015-02-17 08:27:12 -06:00
Gregory Nutt
2176ed38ec Add support for the restrict keyword 2015-02-17 08:24:20 -06:00
Gregory Nutt
db741dd695 Move some useful internal logic from recvfrom.c and udp_callback.c and put them in ip.h where they can be used more generally 2015-02-17 07:37:44 -06:00
Gregory Nutt
686dcbb79c Move some useful internal macros from udp_send.c and put them in ip.h where they can be used more generally 2015-02-17 07:08:11 -06:00
Gregory Nutt
eb8f5e548f Purely cosmetic changes resulting from last review IPv6 UDP change 2015-02-16 15:23:02 -06:00
Gregory Nutt
19eea866e6 Standardize some header files 2015-02-16 14:29:43 -06:00
Gregory Nutt
f357897b6c Some files that now include sys/time.h should no longer include timer.h 2015-02-15 16:38:18 -06:00
Gregory Nutt
d6704a1cd7 Suffer the consequences of moving struct timeval to its correct location 2015-02-15 15:18:35 -06:00
Gregory Nutt
fd8d374bfe Move struct timveval from include/time.h to include/sys/time.h where it belongs. 2015-02-15 13:00:44 -06:00
Gregory Nutt
f477c9b275 Add support for RTC driver to the STM32F4-Discovery board 2015-02-15 10:11:01 -06:00
Gregory Nutt
5cb233f712 RTC: A little more clean-up of the RTC driver 2015-02-15 08:19:23 -06:00
Gregory Nutt
8840102554 Networking: Divide net_intiialize() into net_setup() and net_initialize() to solve a chicken-and-egg problem. net_setup() must be caleld before up_initialize() is called so that networking data structures are ready to register new network devices.
net_initialize() now does only timer related operations and is called AFTER up_initialize() where the timers are configured.  This is really.
2015-02-14 06:36:53 -06:00
Gregory Nutt
9e80f7d8d2 STM32 RTC driver lower half: Implement the settime method of the RTC interface 2015-02-13 13:36:15 -06:00
Gregory Nutt
faa16d06ac Break out a new internal interface, stm32_rtc_setdatetime(). This eliminates some un-necessary time conversions. From Freddie Chopin.
Add a skeleton implementation of the RTC lower half interface at arch/arm/src/stm32/stm32_rtc_lowerhalf.c.  This is just the framework for the RTC lower half.  None of the interface methods have yet been implemetned.
2015-02-13 12:56:58 -06:00
Gregory Nutt
fcadc2d8e4 Add an RTC upper half driver. This is the driver that is documented in include/nutt/rtc.h 2015-02-13 11:49:04 -06:00
Gregory Nutt
2ba67e7841 Removed all of the old, malformed RTC interface definitions from include/nuttx/rtc.h. The necessary prototypes have been removed, renamed, scattered to the wind, hidden under rocks, -- whatever it takes to make it clear that there is no RTC interface callable from application code. 2015-02-13 10:07:23 -06:00
Gregory Nutt
3724a5e98e RTC: Remove all backdoor interfaces from rtc.h 2015-02-13 08:41:34 -06:00
Gregory Nutt
63ac1ec423 Cosmetic updates to comments 2015-02-12 13:44:22 -06:00
Gregory Nutt
3e1173225e Renamed SPIDEV_GSENSOR to SPIDEV_ACCELEROMETER just because it looks better beside SPIDEV_BAROMETER 2015-02-12 12:26:19 -06:00
Gregory Nutt
38aa31dea2 Update ChangeLog 2015-02-12 12:21:05 -06:00
Gregory Nutt
fd6d299788 Add driver for the Feescale MPL115A baramoter. From Alan Carvalho de Assis 2015-02-12 12:18:43 -06:00
Gregory Nutt
147042218b gettimeofday() and settimeofday(): Move gittimeofdady() from sched/clock to libc/time. All remove gettimeofday() from NuttX system calls. It is only a wrapper around clock_settime() and does not need a trap. gettimeofday() is no longer tried as a core OS interface.
gettimeofday has been decremented in POSIX 2008.  settimeofday() was never part of POSIX, but I decided to add it to libc as well just for symmetry.
2015-02-12 11:10:46 -06:00
Gregory Nutt
62aee62c3a Some extensions to netinet/in.h adding some Linux compatible defintions. From Macs N. 2015-02-11 06:35:34 -06:00
Gregory Nutt
410fcaa0a1 Added a forward reference to struct inode to avoid warning about mismatching types in assignemnt 2015-02-10 13:41:49 -06:00
Gregory Nutt
559f1ef825 Networking: Clean up and consolidate some clunky stuff by adding new net_timedwait() function 2015-02-09 07:50:10 -06:00
Gregory Nutt
2ae737f906 Update ChangeLog 2015-02-08 06:58:23 -06:00
Gregory Nutt
3465cb6138 SYSLOG: Add an option to use the syslog'ing device as the system consolution. This option enables a low-level, write-only console device at /dev/console (similar to the low-level UART console device). From Pierre-noel Bouteville. 2015-02-08 06:53:24 -06:00
Gregory Nutt
252802d1cd Remove inclusion of some un-necessary header files. 2015-02-06 08:50:53 -06:00
Gregory Nutt
3e6705b526 IPv6: Separate function that converts prefix lengths to a netmask 2015-02-06 08:11:09 -06:00
Gregory Nutt
10cf7e9634 Make some conditional compilation consistent 2015-02-05 14:26:11 -06:00
Gregory Nutt
c7f71c99a5 Networking: Changes need to build ICMPv6 'router' configuration on STM32 with network debug enabled 2015-02-05 11:47:56 -06:00
Gregory Nutt
6f3f43d930 IPv6: Add a netmaks for the local link address 2015-02-05 05:43:57 -06:00
Gregory Nutt
24d800398e Networking: Break out Ethernet definitions into a separate file; add IPv6 multicast addresses as common globals, Ethernet drivers need to filter link-local, all nodes Ethernet address 2015-02-04 14:51:20 -06:00
Gregory Nutt
1c05245963 STM32: Add driver for STM32L162XX AES peripheral. Signed-off-by: Juha Niskanen <juha.niskanen@haltian.com> 2015-02-04 06:49:05 -06:00
Gregory Nutt
66f0198e3f Networking: Add support for sending ICMPv6 Router Solicitation and receiving Router advertisement. This is a part of the ICMPv6 auto-configuration logic is still still not complete 2015-02-03 13:25:28 -06:00
Gregory Nutt
0e23712db4 Add an ioctal() that can be used to perform ICMPv6 auto-configuration 2015-02-03 08:54:42 -06:00
Gregory Nutt
1d534ff896 Convert the 64-bit usec limit to a 32-bit tick limit 2015-02-03 07:18:17 -06:00
Gregory Nutt
a448e0f69f On my platform I have just 16-bit timer clocked at 32kHz. As result oneshot timer max delay is 2s. The patch adds limit of maximum ticks in sched_timer_start (nuttx/sched/sched/sched_timerexpiration.c). From Macs N. 2015-02-03 06:25:19 -06:00
Gregory Nutt
2407008b6e drivers/ramdisk.c and include/nuttx/fs/ramdisk.h: Add logic to dispose of the drvier and RAM buffer when the RAM disk has been unlinked and all open references to the RAM disk have been closed. Add new parameters to romdisk() to specify what should be done with the RAM/ROM buffer -- Should it be freed or not? Changed all calls to ramdisk() to use these new parameters. 2015-02-01 07:24:16 -06:00
Gregory Nutt
a6f1dfa5b0 Remove execute privileges from some header files 2015-02-01 06:24:18 -06:00
Gregory Nutt
eb1aca3e46 Add an unlink method to block driver interface. Same motivataion as for the same modification to the character driver interface 2015-01-31 13:19:23 -06:00
Gregory Nutt
62e588a0a4 VFS: Add an unlink method to the character driver interface. This is important because if the character driver inode is unlinked and there are no open references to the driver, then the driver resources will be stranded. On the unlink call, the driver has the opportunity (1) check if there an any open references, and (2) if not free the driver resources 2015-01-31 11:31:34 -06:00
Gregory Nutt
e86d00913e Unix domain/FIFOs: Fix a race condition between FIFO buffer operations and the opening and closing of FIFOs which necessary when the FIFOs are used to support Unix domain, datagram sockets. The default policy is the deallocate FIFO buffering when the last client closes the pipe. When when used for datagram communicatinos, packets left in the FIFO will be lost. Some like UDP read-ahead is needed: The buffered data in the FIFO needs to be retained until the reader gets a chance to re-open the FIFO. Added an ioctl (PIPEIOC_POLICY) to control the buffer policy. Default (0) is the legacy behavior; Unix domain datagram logic sets the alternative policy so that the packet data persists after the FIFO is closed. 2015-01-30 11:14:24 -06:00
Gregory Nutt
5f9837dcc8 Merge remote-tracking branch 'origin/master' into afunix
Conflicts:
	nuttx/ChangeLog
2015-01-27 21:47:12 -06:00
Gregory Nutt
c4bd6f52b5 Networking: The are issues with the TCP write-ahead buffering if CONFIG_NET_NOINTS is enabled: There is a possibility of deadlocks in certain timing conditions. I have not seen this with the Tiva driver that I have been users but other people claim to see the issue on other platforms. Certainly it is a logic error: The network should never wait for TCP read-ahead buffering space to be available. It should drop the packets immediately.
This was fixed by duplicating most of the IOB interfaces:  The versions that waited are still present (like iob_alloc()), but now there are non-waiting verisons of the same interfaces (like iob_tryalloc()).  The TCP read-ahead logic now uses only these non-waiting interfaces.
2015-01-27 21:23:42 -06:00
Gregory Nutt
cbf0608513 Various fixes to get Unix domain sockets to build on the simulator without Ethernet 2015-01-27 14:11:46 -06:00
Gregory Nutt
6418f08459 Add math library defines for nan functions. From Brennan Ashton. 2015-01-26 19:03:38 -06:00
Gregory Nutt
b12cf6d2f5 Add math library support for trunc functions. From Brennan Ashton. 2015-01-26 19:00:35 -06:00
Gregory Nutt
06337a4f7a Add math library support for copysign. From Brennan Ashton 2015-01-26 18:52:28 -06:00
Gregory Nutt
7e177e1c12 Add error function to math library. From Brennan Ashton. 2015-01-26 13:58:47 -06:00
Gregory Nutt
36d5c00ec6 Add math library definition for isfinite. From Brennan Ashton. 2015-01-26 13:55:49 -06:00
Gregory Nutt
e153959eea Add support for inverse hyperbolic functions. From Brennan Ashton 2015-01-26 13:52:53 -06:00
Gregory Nutt
d7189558a6 Add ioctls for Unix domain sockets 2015-01-24 11:57:06 -06:00
Gregory Nutt
bf61008448 Add sys/un.h header file 2015-01-24 11:44:06 -06:00
Gregory Nutt
d84abfafc4 Fix another error in conditional compilation; plus some additional cosmetic changes 2015-01-24 09:04:28 -06:00
Gregory Nutt
f4bb7f14e1 Networking: Clean up network status collection and presentation for IPv6 2015-01-24 08:26:12 -06:00
Gregory Nutt
96a53254dd Some minor clean-up of IPv4/6 flags 2015-01-24 07:29:43 -06:00
Gregory Nutt
7e46e94546 Remove CONFIG_DEBUG_STACK. Adding CONFIG_STACK_COLORATION makes this configuration option pointless 2015-01-24 06:49:51 -06:00
Gregory Nutt
05c5c8c337 Add CONFIG_STACK_COLORATION that does the same thing as CONFIG_DEBUG_STACK but without enabling debug. From David Sidrane 2015-01-24 06:03:39 -06:00
Gregory Nutt
dc759d31d9 Math library: Adds support for the expm1 functions: http://pubs.opengroup.org/onlinepubs/009695399/functions/expm1.html. From Brennan Ashton 2015-01-23 17:15:42 -06:00
Gregory Nutt
30f0a942e1 Networking: First cut at ICMPv6 ping logic 2015-01-23 14:06:08 -06:00
Gregory Nutt
9f40a13cfa Correct the MSS calculation 2015-01-22 12:30:07 -06:00
Gregory Nutt
6175e9eec5 Networking: Correct the value returned by accept() in the case where net_lockingwait() is called. It was returning -1 and losing the errno value. Noted by Rony Xln 2015-01-22 06:51:31 -06:00
Gregory Nutt
38e0dcf097 Networking: Fix another error in an IPv6 macro. Again ampersand where there should not be one 2015-01-21 14:11:20 -06:00
Gregory Nutt
8132afb3de Fix some errors in memcpy arguments. No ampersands on array arguments. 2015-01-21 12:42:22 -06:00
Gregory Nutt
5d31687e75 Correct name of fields in struct sockaddr_in6: sin6_port and sin6_family, not sin_port and sin_family 2015-01-20 18:14:09 -06:00
Gregory Nutt
67a655ecf0 Networking: Add logic to search the Neighbor Table and update the destination address in the output Ethernet header OR to send an ICMPv6 Neighbor Solicitation if there is no entry in the Neighbor table for the IPv6 address 2015-01-20 14:37:02 -06:00
Gregory Nutt
d68cd0d8de Networking: Update ICMPv6 logic to RFCs 2015-01-20 11:06:51 -06:00
Gregory Nutt
2fd334432c Networking: Fix to ICMPv6 logic: Needs to set source and destination address in the Ethernet header 2015-01-19 14:57:55 -06:00
Gregory Nutt
13149536f2 Networking: Update ICMPv6 message numbers 2015-01-19 14:04:16 -06:00
Gregory Nutt
59c0757183 Fix a few more dangling IPv6 issues found by code inspection 2015-01-18 10:33:27 -06:00
Gregory Nutt
f7663ef0ab Networking: Final detangle off IPv4 and IPv6 TCP/UDP send logic. The Networking subsystem now compiles with IPv6 enabled 2015-01-18 08:56:05 -06:00
Gregory Nutt
86f617cc88 Networking: Straighten up use if IPv6/IPv4 in TCP connection logic 2015-01-17 17:07:54 -06:00
Gregory Nutt
94f9312150 Networking: Save the IP domain in the connection structure 2015-01-17 13:07:48 -06:00
Gregory Nutt
2c251d845c include/net/if.h: Add a bit to the device flags to indicate if the device packet buffer holds an IPv4 or an IPv6 domain packet. Set/clear the flag along with the correct offset to the application payload data as each packet is received.
net/socket, net/tcp, net/udp:  Add logic to select the domain of the outputgoing packet before sending any UDP or TCP packet.  This sets the bit to indicate the IPv4 or IPv6 domain and the correct offset to the output going payload data.
2015-01-17 07:42:09 -06:00
Gregory Nutt
88a0e82934 Networking: Remove field d_sndata from the device structure. It is the same as d_appdata and unnecessary 2015-01-17 05:59:13 -06:00
Gregory Nutt
8f8259a0d6 Networking: UDP and TCP MSS depends on the IP header size (as well as the link layer header size) and cannot be represented with a single value. 2015-01-16 15:03:10 -06:00
Gregory Nutt
2663538b0a Networking: Replace all references to the macros net_ipaddr_copy, net_ipaddr_hdrcopy, net_ipaddr_cmp, net_ipaddr_hdrcmp, and net_ipaddr_maskcmp with the appropriate IPv4 or IPv6 version of the macro (such as net_ipv4addr_copy). The goal is to support both IPv4 and IPv6 simultaneously. This requires that the macros be distinct and not conditionally defined to one on or the other. 2015-01-16 13:01:08 -06:00
Gregory Nutt
5e938941a6 Networking: Replace all references to net_ipaddr_t with either in_addr_t on net_ipv6addr_t. The goal is to support both IPv4 and IPv6 simultaneously. This requires that the two types be distinct and not conditionally typedef'ed to net_ipaddr_t. 2015-01-16 12:30:18 -06:00
Gregory Nutt
bee89be4f4 Networking: Drivers can have both IPv4 and IPv6 addesses, but a socket can only only one or the other; The socket connnection structures need to include a union of IPv4 and IPv6 addresses for the local address binding and for the remote address connections 2015-01-16 10:01:54 -06:00
Gregory Nutt
fe8b3c5220 Networking: More detangling of IPv6 logic. Next steps will be more invasive and will get moved to a branch 2015-01-16 08:51:18 -06:00
Gregory Nutt
5b45605991 Clean a few more IPv6 compilation issues; Add implementation of net_ipv6_maskcmp() 2015-01-15 15:55:52 -06:00
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