Commit Graph

297 Commits

Author SHA1 Message Date
Gregory Nutt
2244ed46bc nuttx/drivers: Replace irqsave() with enter_critical_section(); replace irqrestore() with leave_critical_section() 2016-02-14 07:32:58 -06:00
Gregory Nutt
ce2a0b6b51 Eliminate a warning 2016-01-06 10:05:39 -06:00
Gregory Nutt
ab9d124528 serial: Remove confusing inline functions. Correct attribution for serial DMA logic 2015-11-15 08:39:01 -06:00
Gregory Nutt
7f1ac36194 Serial driver: Move serial DMA logic to a separate file 2015-11-15 07:58:08 -06:00
Max Neklyudov
d54a39832a Implement high level DMA infrastructure for serial devices 2015-11-12 14:16:19 -06:00
Gregory Nutt
cf14f8d1b5 drivers/: Fixes to spacing and alignement 2015-10-10 10:41:00 -06:00
Gregory Nutt
0b12dbf95d Fix some spacing problems 2015-10-04 15:04:00 -06:00
Paul A. Patience
3b89eabd50 Correct #if to #ifdef when the macro can be undefined. Fix bug in AT24XX driver: it should compare AT24XX_ADDRSIZE to 2. 2015-09-01 13:52:29 -04:00
Anton D. Kachalov
1bb74504a8 Add support for custom platform IOCTL on UART
Signed-off-by: Anton D. Kachalov <mouse@yandex-team.ru>
2015-08-03 15:32:51 +03:00
Anton D. Kachalov
a07ed262b4 Revert "Two more places there THRE is used with inverted sense"
Signed-off-by: Anton D. Kachalov <mouse@yandex-team.ru>
2015-08-03 13:21:01 +03:00
Anton D. Kachalov
2fa6237b49 Revert THRNE-patch. The problem was in u16550_putc
Regarding to:
https://github.com/tanzilli/ariag25-linux-2.6.39/blob/ariag25/drivers/tty/serial/8250.c#L1584
https://github.com/tanzilli/ariag25-linux-2.6.39/blob/ariag25/drivers/tty/serial/8250.c#L1913

When UART_LSR_THRE bit is set, then we ready to transmit more.

Current u16550_putc loops while UART_LSR_THRE bit is set. This logic have to be inverted.

Signed-off-by: Anton D. Kachalov <mouse@yandex-team.ru>
2015-08-03 13:19:55 +03:00
Anton D. Kachalov
274b7986be [drivers/serial/uart_16550] Typo fix in data bits setup
Signed-off-by: Anton D. Kachalov <mouse@yandex-team.ru>
2015-07-31 20:19:54 +03:00
Gregory Nutt
fb82061bf7 Two more places there THRE is used with inverted sense 2015-07-29 20:42:49 -06:00
Gregory Nutt
8935ff34d5 16550 UART Driver: Add a configuration option to indicate the the THR empty bit is inverted. This is the the case for the moxART SoC. Based comments from Anton D. Kachalov 2015-07-29 16:31:21 -06:00
Gregory Nutt
342f5fe33d Fix references to the no-longer-existent misc/ directory in comments, README files, and documentation 2015-06-28 08:08:57 -06:00
Gregory Nutt
e4d2822af8 Make some file section headers more consistent with standard 2015-04-08 07:15:32 -06:00
Gregory Nutt
b83cea4f99 Back out 70cb75adaf3243478276cebf367c5f47c4725715 2015-03-13 10:40:09 -06:00
Gregory Nutt
3473bb1635 drivers/serial: Report correct number of bytes free in serial buffer with FIONWRITE. From Jussi Kivilinna. 2015-03-13 07:22:43 -06:00
Gregory Nutt
6f335dc6c6 STM32 SPI: The source clock for SPI 4,5, and 6 should be PCLK2, not PCLK1 (for F411, F427, and F429). Per David Sidrane. 2015-02-07 13:59:45 -06:00
Gregory Nutt
52aeabb4b2 Cosmetic changes 2015-01-02 13:59:47 -06:00
Gregory Nutt
5ee81c0d50 Serial: Allow serial console selection even if /dev/console is disabled: There can still be a serial console with no file system at all 2014-12-28 15:23:05 -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
33f7151cd9 Remove STM32-specific RX flow control logic from the upper level serial driver to the lower level STM32 serial driver 2014-12-27 09:45:45 -06:00
Gregory Nutt
32fd858dc6 Serial RX Flow Control: Fix a bunch of compile problems introduced into unbuilt, conditioned out logic 2014-12-27 08:15:41 -06:00
Gregory Nutt
2fadd0da4b Eliminate an unnecessary calculation in the serial RX flow control logic 2014-12-27 08:00:48 -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
623757d77c Update TODO list and add REVISIT comment 2014-12-13 08:44:28 -06:00
Gregory Nutt
d09bb13833 In case a thread is doing a blocking operation (e.g. read()) on a serial
device, while it is being terminated by pthread_cancel(), then
uart_close() gets called, but the semaphore (dev->recv.sem in the above
example) is still blocked.

This means that once the serial device is opened next time, data will
arrive on the serial port (and driver interrupts handled as normal), but
the received characters never arrive in the reader thread.

This patch addresses the problem by re-initializing the semaphores on the
last uart_close() on the device.
2014-12-13 08:07:21 -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
5d231b25f0 SAMA5D3 Xplained: Add an apps/examples/bridge configuration 2014-11-20 16:24:30 -06:00
Gregory Nutt
5120d745fd Fix some typos 2014-10-29 10:48:50 -06:00
Gregory Nutt
6c9f325e1e Move selection for CONFIG_SERIAL_TERMIOS out of MCU Kconfigs to common drivers/serial/Kconfig. Add CONFIG_ARCH_HAVE_SERIAL_TERMIOS to indicate if an MCU supports TERMIOS 2014-10-27 11:31:16 -06:00
Gregory Nutt
37e08c3b49 The olimex-efm32g880f128-stk now defaults to use LEUART1 as the serial console. Also fixes lots of compile bugs from the original LEUART checkin 2014-10-21 11:38:51 -06:00
Gregory Nutt
d13c9a08b9 EFM32: Add configuration support for LEUARTs 2014-10-21 09:37:02 -06:00
Gregory Nutt
47d55c28dc Mostly cosmetic changes 2014-09-04 10:28:38 -06:00
Gregory Nutt
320707fdfa SAMA5: Fix bugs in timer/counter interrupts and one-shot timer 2014-08-10 10:47:38 -06:00
Gregory Nutt
b5efb9dd77 Add serial method so that lower half driver can provide RX flow control information. From Jussi Kivilinna 2014-05-08 09:01:14 -06:00
Gregory Nutt
7594d8b8cf Add serial method so that lower half driver can provide RX flow control information. From Jussi Kivilinna 2014-05-08 09:00:33 -06:00
Gregory Nutt
7ad2ace833 Costmetic changes to some comments 2014-04-14 16:36:07 -06:00
Gregory Nutt
3a1324741a More trailing whilespace removal 2014-04-13 14:32:20 -06:00
Gregory Nutt
cbdc9155ab SAMA5: Add support for DBGU. Xplained board now uses DBGU for the serial console 2014-04-01 11:24:15 -06:00
Gregory Nutt
113d5a2a81 Correct an error introduced in this file in very recent commits 2014-03-06 15:33:02 -06:00
Gregory Nutt
17a96f6e1e configs/us7032evb1/ostest: Configuration converted to use the kconfig-frontends tools 2014-03-06 09:17:11 -06:00
Gregory Nutt
ba6fe788ea SAMA5 serial: Restore logic to minimize TX interrupts. Oddly, seems to improve ADC stability 2013-10-26 16:02:07 -06:00
Gregory Nutt
0ab6d8382f SAMA5 TC: Debug instrumentation 2013-10-26 14:03:30 -06:00
Gregory Nutt
bc46b447dc Fix all occurrences of "the the" in documentation and comments 2013-08-27 09:40:19 -06:00
Gregory Nutt
dd3c682443 SAMA5: Some improvements to the HSCMI card removal/insertion logic 2013-08-11 11:13:11 -06:00
Gregory Nutt
82b528e0c8 Serial FIONREAD, FIONWRITE, and TERMIOS I/O processing from Mike Smith, Andrew Tridgell, and and Lorenz Meier 2013-08-10 19:14:05 -06:00
Gregory Nutt
968b2553cd Rearrange configuration settings so that ARCH_HAVE_SDIO is moved to higher, sharable level 2013-08-10 09:06:53 -06:00
Gregory Nutt
77e1c27005 Update SAMA5D3x-EK board configuration to support on-board UART connections, LEDs, and push buttons 2013-07-24 12:27:12 -06:00
Gregory Nutt
9cf942bcb2 SAM3/4: Loop counter for PLL delay must be volatile or it may get optimized away 2013-06-13 16:18:25 -06:00
Gregory Nutt
3edec35c51 Add flow control support to the STM32 serial driver; Fix some issues with UART2 and 5. From Lorenz Meier and Mike Smith 2013-06-06 14:49:14 -06:00
Gregory Nutt
420ca1b256 configs/freedom-kl25z: Change references to NuTiny to Freedom KL25Z 2013-04-25 20:09:15 -06:00
Gregory Nutt
b630e6a153 Useless TIOCSERGSTRUCT logic in most serial drivers is not compiled unless CONFIG_DEBUG and CONFIG_SERIAL_TIOCSERGSTRUCT are defined 2013-04-25 15:52:48 -06:00
patacongo
0bfa1b75e2 Add support for STM32 F427/437 chips. From Mike Smith
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5807 42af7a65-404d-4744-a932-0658087f49c3
2013-04-01 13:43:31 +00:00
patacongo
ebf9960deb convert Kwikstik K40 configurations to use kconfig-frontends tools
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5784 42af7a65-404d-4744-a932-0658087f49c3
2013-03-25 17:33:41 +00:00
patacongo
730dc3e202 Add missing implementation of O_NONBLOCK for serial writes
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5755 42af7a65-404d-4744-a932-0658087f49c3
2013-03-18 16:04:29 +00:00
patacongo
d621681866 Some NuTiny-SDK-NUC120 size reduction; All serial driver vtables should be static const
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5683 42af7a65-404d-4744-a932-0658087f49c3
2013-02-27 22:24:49 +00:00
patacongo
ad447766ff Fix a readline bug. If a NUL is received, it would return end-of-file
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5633 42af7a65-404d-4744-a932-0658087f49c3
2013-02-10 00:46:27 +00:00
patacongo
cf411bec51 A spurious checkin... I just want to improve some code structure
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5597 42af7a65-404d-4744-a932-0658087f49c3
2013-02-02 01:50:34 +00:00
patacongo
11aa231cf0 drivers/serial.c: Fix some race conditions. Some bad things code happen if we lost a USB connection at certain times.
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5596 42af7a65-404d-4744-a932-0658087f49c3
2013-02-02 00:29:55 +00:00
patacongo
9a05ccdbbc Last minute 6.25 change
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5595 42af7a65-404d-4744-a932-0658087f49c3
2013-02-01 22:51:34 +00:00
patacongo
1b94639432 Misc clean; mark assertions as non-returning; allow toolchain prefix to be overriden from make command line
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5591 42af7a65-404d-4744-a932-0658087f49c3
2013-01-31 23:29:34 +00:00
patacongo
cdbbfaa464 Fix readline return value; Add support for removable serial devices
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5589 42af7a65-404d-4744-a932-0658087f49c3
2013-01-31 16:52:20 +00:00
patacongo
df9a72994f configs/xtrs/nsh and pashello now use kconfig-frontends and build Windows native
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5422 42af7a65-404d-4744-a932-0658087f49c3
2012-12-09 17:34:53 +00:00
patacongo
620d1c9a33 configs/xtrs/ostest converted to kconfig-frontend and Windows native
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5421 42af7a65-404d-4744-a932-0658087f49c3
2012-12-08 23:21:34 +00:00
patacongo
a93d7eb69e Shenzhou board is first to use ONLY Kconfig for configuration
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5114 42af7a65-404d-4744-a932-0658087f49c3
2012-09-08 13:56:21 +00:00
patacongo
08ef9d0367 Add Kconfig settings for the LPC17xx
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5094 42af7a65-404d-4744-a932-0658087f49c3
2012-09-05 17:20:19 +00:00
patacongo
e3f1d80ed6 Refactor serial configuratin; AVR teensy Kconfig now builds
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5092 42af7a65-404d-4744-a932-0658087f49c3
2012-09-05 12:45:35 +00:00
patacongo
59588247bf Kconfig changes + back out part of last check-in: The 2STOP setting must be integer 0/1, not boolean
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5086 42af7a65-404d-4744-a932-0658087f49c3
2012-09-04 15:28:56 +00:00
patacongo
70b1c3f2f6 Make the lib/ subdirectory build more like other directories
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5025 42af7a65-404d-4744-a932-0658087f49c3
2012-08-13 22:27:06 +00:00
patacongo
b7a1b00c08 drivers/serial/serial.c open, read, write, and poll methods will not return a short transfer or an EINTR error if a signal is received while waiting (only)
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5022 42af7a65-404d-4744-a932-0658087f49c3
2012-08-12 17:37:04 +00:00
patacongo
5b7341f5db drivers/, drivers/pipes, and drivers/serial file clean-up
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4944 42af7a65-404d-4744-a932-0658087f49c3
2012-07-15 14:56:25 +00:00
patacongo
be3ebf6201 More Kconfig files
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4632 42af7a65-404d-4744-a932-0658087f49c3
2012-04-18 19:17:30 +00:00
patacongo
e91f97ada2 drivers/serial: Don't disable Rx interrrupts on each character
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4631 42af7a65-404d-4744-a932-0658087f49c3
2012-04-18 17:08:27 +00:00
patacongo
e828b09381 Kconfig updates
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4606 42af7a65-404d-4744-a932-0658087f49c3
2012-04-14 13:31:14 +00:00
patacongo
0830ef18dd Minor kconfig fixes
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4600 42af7a65-404d-4744-a932-0658087f49c3
2012-04-13 15:04:05 +00:00
patacongo
1dc41e329b Kconfig update
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4599 42af7a65-404d-4744-a932-0658087f49c3
2012-04-13 14:27:44 +00:00
patacongo
330b89ca0e Add kconfig documentation
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4567 42af7a65-404d-4744-a932-0658087f49c3
2012-04-06 16:45:52 +00:00
patacongo
4b8c0c41c8 Adding skeleton Kconfig files (part 1 of 2)
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4564 42af7a65-404d-4744-a932-0658087f49c3
2012-04-06 15:49:35 +00:00
patacongo
1c1dee962d A couple of fixes to common and STM32 serial handling to fix some data overrun conditions
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4550 42af7a65-404d-4744-a932-0658087f49c3
2012-04-02 01:02:41 +00:00
patacongo
34b7ebdf68 Move serial header files to include/nuttx/serial
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4500 42af7a65-404d-4744-a932-0658087f49c3
2012-03-21 19:47:23 +00:00
patacongo
2fe4ad52f8 Move file-system header files to include/nuttx/fs
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4499 42af7a65-404d-4744-a932-0658087f49c3
2012-03-21 18:01:07 +00:00
patacongo
e69cbad010 Add logic so that a RAM log can be used in place of a console device
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4380 42af7a65-404d-4744-a932-0658087f49c3
2012-02-11 03:50:52 +00:00
patacongo
8d01473fff Move lib/stdio/lib_fgets.c to apps/system/readline; simplify fgets(); use readline instead of fgets in NSH
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4356 42af7a65-404d-4744-a932-0658087f49c3
2012-02-01 19:07:57 +00:00
patacongo
ee04a259db ADS7843E driver is code complete
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4018 42af7a65-404d-4744-a932-0658087f49c3
2011-10-04 17:08:59 +00:00
patacongo
95e415d274 Re-architect FAT data structures to support long file names
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@3780 42af7a65-404d-4744-a932-0658087f49c3
2011-07-13 13:30:38 +00:00
patacongo
62d94bb3d6 Add wchar_t type; Add LPC17xx CAN driver from Lzyy; Fix serial bug reported by Lzyy
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@3775 42af7a65-404d-4744-a932-0658087f49c3
2011-07-12 16:36:45 +00:00
patacongo
2ad95a1d10 Correct error handling in the case of an overrun error in the serial driver
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@3774 42af7a65-404d-4744-a932-0658087f49c3
2011-07-12 14:29:08 +00:00
patacongo
fe7a627a50 Update documents and comments
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@3723 42af7a65-404d-4744-a932-0658087f49c3
2011-06-18 15:49:59 +00:00
patacongo
1ba2240762 Add initial CC1101 wireless logic from Uros
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@3617 42af7a65-404d-4744-a932-0658087f49c3
2011-05-16 15:09:39 +00:00
patacongo
fff9db3c57 First set of changes to incorporate the RGMP port
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@3595 42af7a65-404d-4744-a932-0658087f49c3
2011-05-12 17:42:01 +00:00
patacongo
a3c96a8df6 Add QEMU NSH configuration
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@3358 42af7a65-404d-4744-a932-0658087f49c3
2011-03-10 04:13:44 +00:00
patacongo
046aa70b2a Fix basic QEMU port
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@3357 42af7a65-404d-4744-a932-0658087f49c3
2011-03-10 00:58:10 +00:00
patacongo
9634f25391 Changing NuttX fixed size type names to C99 standard names -- things will be broken for awhile
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@2343 42af7a65-404d-4744-a932-0658087f49c3
2009-12-15 14:25:14 +00:00
patacongo
9535a28d7a Eliminate some hcs12 compile errors/warnings
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@2329 42af7a65-404d-4744-a932-0658087f49c3
2009-12-13 15:13:37 +00:00
patacongo
9b04ee217e Move some drivers to separate subdirectories
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@2156 42af7a65-404d-4744-a932-0658087f49c3
2009-10-18 13:52:21 +00:00