Gregory Nutt
82b86cdcf3
oneshot interface: max_delay method should return time in a standard struct timespec form.
2016-08-12 11:33:10 -06:00
Gregory Nutt
89135c55e4
drivers/timer: Add an upper-half, oneshot timer character driver.
2016-08-12 10:40:07 -06:00
Gregory Nutt
caea59b340
SPI bit order: Add configuration setting to indicate if an architecture-specif SPI implementation does or does not support LSB bit order.
2016-08-08 12:21:20 -06:00
Gregory Nutt
6df28bc74e
Make bit-order SPI H/W feature configurable for better error detection
2016-08-08 11:54:13 -06:00
Gregory Nutt
21859af6d9
Add check of return value in drivers affected by last change: Report the error on a failure to set the bit order.
2016-08-08 08:40:37 -06:00
Gregory Nutt
7d4cb73bd6
STM32 and EFM32 SPI drivers adopted an incompatible conventions somewhere along the line. The set the number of bits to negative when calling SPI_SETBITS which had the magical side-effect of setting LSB first order of bit transmission. This is not only a hokey way to pass control information but is supported by no other SPI drivers.
...
This change three things: (1) It adds HWFEAT_LSBFIRST as a new H/W feature. (2) It changes the implementations of SPI_SETBITS in the STM32 and EFM32 derivers so that negated bit numbers are simply errors and it adds the SPI_HWFEATURES method that can set the LSB bit order, and (3) It changes all calls with negative number of bits from all drivers: The number of bits is now always positive and SPI_HWFEATUREs is called with HWFEAT_LSBFIRST to set the bit order.
2016-08-08 08:28:13 -06:00
Gregory Nutt
9965cbe428
drivers/: Review and correct some stylistic inconsistencies
2016-08-07 09:43:48 -06:00
Alan Carvalho de Assis
10a7698112
drivers/wireless/mfrc522.c: Fix memory free command
2016-08-07 07:34:01 -06:00
Alan Carvalho de Assis
bfac90f720
Add MFRC522 RFID ISO14443 and Mifare transceiver driver
2016-08-06 08:45:52 -06:00
Gregory Nutt
83c7b4d5d6
SPI driver: Correct return value in case of a certain error condition
2016-08-06 08:07:30 -06:00
Gregory Nutt
50e9a5fa33
Add more options to spi_transfer
2016-08-05 13:22:18 -06:00
Gregory Nutt
5407a673fc
Tiva TM4C-1294 Launchpad: tiva_appinit.c is a better home for board_pwm_setup() vs. tiva_bringup.c
2016-08-05 13:05:41 -06:00
Gregory Nutt
7048d08123
drivers/spi: Add an SPI character driver that will permit access to the SPI bus for testing purposes. This driver is a simple wrapper around spi_transfer().
2016-08-05 11:07:35 -06:00
Gregory Nutt
7da67bc80a
drivers/spi: Add a helper function that encapsulates and manages a sequency of SPI transfers.
2016-08-05 10:23:04 -06:00
Gregory Nutt
3d5df2e5af
Extend I/O Expander interrupt controls; Add test of level sensitve interrupt to Simulated I/O expander
2016-08-04 16:19:52 -06:00
Gregory Nutt
1f9799b68d
I/O Expanders: Interrupt detection logic should not ignore the no-change case. Still need to handle level interrupts even with no change.
2016-08-03 13:10:20 -06:00
Gregory Nutt
803b540e8a
Fix various issues with I/O expander and GPIO lower half drivers from testing with simulated I/O expander
2016-08-03 12:46:54 -06:00
Gregory Nutt
778a8131bf
SIM: Add a simulated I/O Expander driver
2016-08-03 09:44:48 -06:00
Gregory Nutt
7ba445868c
KXJT9: In read(), return multiple samples if the user-provided buffer will hold multiple samples.
2016-08-02 17:32:47 -06:00
Gregory Nutt
30229c217b
Cosmetic changes
2016-08-02 10:46:19 -06:00
Gregory Nutt
c32d40fd7d
KXJT9 Accelerometer driver from the Motorola Moto Z MDK
2016-08-02 10:38:14 -06:00
Gregory Nutt
62bc64bc55
Back out last Makefile.unix change. After puzzling about this for a while, I moved the definitions to apps/Make.defs. Also includes some cosmetic changes to GPIO lower half driver comments.
2016-08-02 08:37:30 -06:00
Gregory Nutt
9685fd8c99
GPIO driver: Add an IOCTL to unregister a signal handler
2016-08-01 13:52:27 -06:00
Gregory Nutt
0f9fb09a53
GPIO driver: Add an IOCTL command to get the pin type
2016-08-01 12:09:00 -06:00
Gregory Nutt
d0f6a23a32
Ooops.. forgot to add files before last commit
2016-08-01 11:15:29 -06:00
Gregory Nutt
d47aa75669
Add PCF8574 I/O Expander driver. Some cleanup also of other expander drivers.
2016-08-01 11:10:11 -06:00
Gregory Nutt
e0f3df5d97
Remove another lingering kruft
2016-08-01 10:01:28 -06:00
Gregory Nutt
583dad647c
TCA64xx: Remove some unused kruft
2016-08-01 09:59:36 -06:00
Gregory Nutt
9d9ff44736
GPIO lower half: Add conditional logic to handle the case where the I/O expander does not support interrupts.
2016-08-01 09:06:58 -06:00
Gregory Nutt
bf60f11801
Remove some unnecessary header file inclusions
2016-08-01 08:55:13 -06:00
Gregory Nutt
3e79ffc6dd
Some updates to the last commit
2016-08-01 08:49:15 -06:00
Gregory Nutt
6090f69bfd
Add a GPIO lower-half driver that can be used to register a GPIO character driver for accessing pins on an I/O expander.
2016-08-01 08:43:10 -06:00
Gregory Nutt
91b1006d42
I/O Expander Interface: Add argument to interrupt callback. Add a method to detach the interrupt.
2016-08-01 07:26:04 -06:00
Gregory Nutt
fb84e51d5b
Minor improvements/fixes to the TCA64xx driver.
2016-08-01 06:48:05 -06:00
Gregory Nutt
c0b83cb4b4
First (untested) cut at a TCA64XX I/O Expander driver leverages from Project Ara
2016-07-31 19:52:44 -06:00
Gregory Nutt
8fab9fb00f
Rethink last commit -- probably going down the wrong path
2016-07-31 18:33:04 -06:00
Gregory Nutt
8a67509b34
I/O Expander: Encode and extend I/O expander options to include interrupt configuration.
2016-07-31 18:19:59 -06:00
Gregory Nutt
9f00d87c07
Another update to the I/O Expander skeleton.c file
2016-07-31 17:03:25 -06:00
Gregory Nutt
bbe7a97685
Remove a duplicated line
2016-07-31 16:41:12 -06:00
Gregory Nutt
b98a966135
Another update to the I/O Expander skeleton.c file
2016-07-31 16:39:44 -06:00
Gregory Nutt
c6d65b0943
Update I/O Expander skeleton.c file
2016-07-31 15:43:36 -06:00
Gregory Nutt
99843fe5fe
I/O Expander: Update skelton file
2016-07-31 14:42:30 -06:00
Gregory Nutt
becf7e70c4
Add an I/O Expander skelton driver
2016-07-31 11:52:59 -06:00
Gregory Nutt
5f9ee79298
I/O Expander: Remove hard-coded PCA9555 fields from ioexpander.h definitons. Add support for an attach() method that may be used when any subset of pin interrupts occur.
...
PCA9555 Driver: Replace the signalling logic with a simple callback using the new definitons of ioexpander.h. This repartitioning of functionality is necessary because (1) the I/O expander driver is the lower-lower part of any driver that uses GPIOs (include the GPIO driver itself) and should not be interacting directly with the much higher level application layer. And (2) in order to be compatible with the GPIO driver (and any arbitrary upper half driver), the PCA9555 should not directly signal, but should call back into the upper half. The upper half driver that interacts directly with the application is the appropriate place to be generating signal.
2016-07-31 11:09:47 -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