Mark Schulte
b3222bbc8a
irq_dispatch: Add argument pointer to irq_dispatch
...
Provide a user defined callback context for irq's, such that when
registering a callback users can provide a pointer that will get
passed back when the isr is called.
2017-02-27 06:27:56 -06:00
Gregory Nutt
08c001196b
drivers/: Remove all explicit use of 'hidden' macro _info. Code must never use this directly. Code must always use a debug macro such as info which is basic on _info but can be appropriately filtered.
2017-01-15 13:00:50 -06:00
Gregory Nutt
4fcbe8e410
drivers: Disable priority inheritance on all semaphores used for signaling
2016-11-03 11:00:47 -06:00
Gregory Nutt
47b043df1e
drivers/serial.c: Make sure that priority inheritance is not enabled for the signaling semaphores used in the serial driver.
2016-11-03 08:16:59 -06:00
Gregory Nutt
79c8bb7ddf
Updae more comments
2016-07-27 08:03:09 -06:00
Gregory Nutt
59e0c4411f
Correct some comments
2016-07-26 13:39:20 -06:00
Gregory Nutt
0c7f5d62e4
More comments
2016-07-26 12:13:30 -06:00
Gregory Nutt
084d200a66
PTY: Cosmetic, update some comments
2016-07-26 10:09:35 -06:00
Gregory Nutt
eaaa69da0a
serial.c: Fix an error in FIONWRITE calculation
2016-07-26 06:47:53 -06:00
Gregory Nutt
e0b4a10dfa
drivers/serial/pty.c, serial.c, usbdev/cdcacm.c, include/nuttx/fs/ioctl.h: Fix FIONWRITE and add FIONSPACE. All implementations of FIONWRITE were wrong. FIONWRITE should return the number of bytes waiting in the outgoing send queue, not the free space. Rather, FIONSPACE should return the free space in the send queue.
2016-07-25 14:06:32 -06:00
Gregory Nutt
9a8c3572db
serial.c: Fix a race condition noted by Stefan Kolb. Between the test if the TX buffer is full and entering a critical section, bytes may be removed from the TX buffer making the wait unnecessary. The unnecessary wait is an inefficiency, but not really a problem. But with USB CDC/ACM it can be a problem because the entire TX buffer may be emptied when we lose the race. If that happens that uart_putxmitchar() can hang waiting for data to be removed from an empty TX buffer.
2016-07-22 07:47:59 -06:00
Gregory Nutt
10fff9011a
Move include/nuttx/configdata.h to include/nuttx/mtd/configdata.h
2016-07-21 13:34:54 -06:00
Gregory Nutt
4b4dbc79a2
Move driver related prototypes out of include/nuttx/fs/fs.h and into new include/drivers/drivers.h
2016-07-20 13:15:37 -06:00
Gregory Nutt
2cacc6204a
Kconfig: If Pseudo-terminals are enabled, then pipes must be selected as well
2016-07-19 14:26:40 -06:00
Gregory Nutt
318f34fb7d
Psuedo-terminal pipe size is now configurable
2016-07-19 14:26:41 -06:00
Gregory Nutt
56582e2263
Update some comments
2016-07-19 10:40:23 -06:00
Gregory Nutt
8bf4684de8
Update some comments
2016-07-19 09:53:52 -06:00
Gregory Nutt
a4458c5016
PTY: Fix a race condition in test-fifo-empty-before-read logic
2016-07-19 06:45:02 -06:00
Gregory Nutt
d9fbf4c90f
Eliminate some warnings
2016-07-18 11:27:06 -06:00
Gregory Nutt
1660329d06
Rename up_rnginitialize to devrandom_register
2016-07-18 10:55:37 -06:00
Gregory Nutt
6194467c13
PTY: Fix termios read input processing.. what was I thinking? Also, if some data was read, pty_read() should not block on the empty FIFO.
2016-07-18 08:00:56 -06:00
Gregory Nutt
ded91e451b
PTY: Add TERMIOS support.
2016-07-16 10:43:44 -06:00
Alan Carvalho de Assis
8fa14b8fed
Fix poll-related compile issues introduced with recent PTY changes
2016-07-16 07:03:38 -06:00
Gregory Nutt
6a75f2df89
PTY: Add some encode to reduce the likely of misinterpreting the return value of the file open() method
2016-07-15 17:13:21 -06:00
Gregory Nutt
4b1553d3ad
PTY: Fix some tricky issues. Now seems to be working. A lot more testing is needed
2016-07-15 14:29:32 -06:00
Gregory Nutt
4b5149b244
PTY: Fix a few errors from early testing
2016-07-15 14:09:02 -06:00
Gregory Nutt
9ecd558002
Add the correct implementation of the file_poll() function
2016-07-15 11:34:08 -06:00
Gregory Nutt
f7f7036db8
Update some comments
2016-07-15 11:15:33 -06:00
Gregory Nutt
4d1b811117
PTY: Add support for the poll() method.
2016-07-15 10:07:33 -06:00
Gregory Nutt
95555a0199
PTY: Add ioctls to support locking and unlocking of the slave. LIBC: Add implementation of unlockpt()
2016-07-15 09:39:33 -06:00
Gregory Nutt
6139860c0b
PTY: Added PTY IOCTL command definitions. Add support for TIOCGPTN. LIB: Implement ptsname() and ptsname_r()
2016-07-15 08:33:47 -06:00
Gregory Nutt
bcbe9806d2
In SUSv1 model, need to tried the PTY driver pair as unlinked if the master closes its reference
2016-07-15 07:33:48 -06:00
Gregory Nutt
14c216107a
PTY: Need to free PTMX minor number is slave is unlinked
2016-07-15 07:22:36 -06:00
Gregory Nutt
e50646336b
Add PTY header files
2016-07-15 07:19:42 -06:00
Gregory Nutt
7fa5093fff
PTYs prototypes hooked into build and configuration system (as EXPERIMENTAL)
2016-07-15 06:48:10 -06:00
Gregory Nutt
ccf4bfafcb
Prototype versions of ptmx/pty suppoprt. Still under developement; not yet hooked into build or configuration system.
2016-07-14 20:20:48 -06:00
Heath Petersen
dc72e16625
handle when CONFIG_SERIAL_UART_ARCH_IOCTL is not enabled
2016-07-12 06:50:58 +00:00
Gregory Nutt
29a99bef0f
serial/Kconfig: Oops put SERIAL_CONSOLE definition within if-endif condition. Better outside
2016-06-20 17:49:16 -06:00
Gregory Nutt
9434d3e945
There is now one-and-only-one copy of syslog_putc. It is in the SYSLOG channel logic and can redirect syslog output as needed. All former syslog_putc versions were renamed and the corresponding SYSLOG device initializaiton now calls syslog_channel()
2016-06-19 13:03:20 -06:00
Gregory Nutt
0c8c7fecf0
Add _ to the beginning of all debug macros to avoid name collisions
2016-06-16 12:33:32 -06:00
Gregory Nutt
efb02f2ef1
drivers/: Change some nerr() ERRORS to nwarn() WARNINGS. Anomolous network evernts are not errors.
2016-06-12 08:31:22 -06:00
Gregory Nutt
a1469a3e95
Add CONFIG_DEBUG_ERROR. Change names of *dbg() * *err()
2016-06-11 15:50:49 -06:00
Gregory Nutt
1cdc746726
Rename CONFIG_DEBUG to CONFIG_DEBUG_FEATURES
2016-06-11 14:14:08 -06:00
Gregory Nutt
fc3540cffe
Replace all occurrences of vdbg with vinfo
2016-06-11 11:59:51 -06:00
Paul A. Patience
f8f7b7582c
Silence some warnings
2016-05-26 14:06:13 -04:00
Gregory Nutt
9ec104834a
Remove CONFIG_USARTn_ISUART
2016-05-25 11:21:48 -06:00
Gregory Nutt
c089a2f241
Rename CONFIG_ARCH_HAVE_OTHER_UART to CONFIG_OTHER_UART_SERIALDRIVER
2016-05-25 10:48:33 -06:00
Gregory Nutt
e2e6ce3f1b
Rename CONFIG_ARCH_HAVE_SCIn to CONFIG_SCIn_SERIALDRIVER
2016-05-25 10:46:55 -06:00
Gregory Nutt
2a87741e72
Rename CONFIG_ARCH_HAVE_UARTn to CONFIG_UARTn_SERIALDRIVER
2016-05-25 10:45:01 -06:00
Gregory Nutt
249a2e48e5
Rename CONFIG_ARCH_HAVE_USARTn to CONFIG_USARTn_SERIALDRIVER
2016-05-25 10:39:23 -06:00
Gregory Nutt
050f544782
Fix typo in variable name in serial BREAK logic. Review other serial implementations for similar naming problems.
2016-05-05 11:30:47 -06:00
Gregory Nutt
0fb035f76b
Standardize some naming in code section comments
2016-02-21 18:09:04 -06:00
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