1
0
mirror of https://github.com/RIOT-OS/RIOT.git synced 2024-12-29 04:50:03 +01:00
Commit Graph

2130 Commits

Author SHA1 Message Date
fabian18
2c001f5a6c drivers/include/periph/eeprom: Changed uint8_t* to void* in API 2019-08-09 17:27:32 +02:00
Benjamin Valentin
9d6d93ef2f drivers: make use of ARRAY_SIZE macro 2019-08-06 19:43:54 +02:00
cf2228e23e
drivers/periph_wdt: cleanup normal mode inline example
Remove a useless blankline
2019-08-05 21:48:10 +02:00
bd1eb6e285
drivers/periph_wdt: fix inline callback example
Function was renamed to wdt_setup_reboot_with_callback
2019-08-05 21:47:25 +02:00
340c8e8236
drivers/sx127x: let sx127x driver manage spi pins GPIO modes 2019-08-05 16:46:41 +02:00
e42307188c
drivers/spi: extend API with updatable gpio mode on pins 2019-08-05 16:46:41 +02:00
Benjamin Valentin
870f5a5a0b drivers/include/periph/spi: fix documentation
spi_transfer_reg() will *always* send out a byte, even if the byte is '0'.

fixes #11763
2019-07-31 13:27:47 +02:00
Leandro Lanzieri
92a5f7cee3
Merge pull request #11658 from aabadie/pr/drivers/rn2xx3_fix_cmd_append
drivers/rn2xx3: fix incorrectly terminated hex strings when writing an array of bytes
2019-07-30 21:03:31 +02:00
Martine Lenders
007de266d3
Merge pull request #11926 from miri64/gnrc_cc110x/enh/use-netif-setter
gnrc_cc110x: use gnrc_netif_hdr_set_netif()
2019-07-30 19:57:30 +02:00
Marian Buschsieweke
8cbf636781
drivers/dht: Fixed magic numbers & missing doc
- Replaced magic number by preprocessor macros and documented them
- Added comment to explain why DHT21 is not part of the switch() expression
2019-07-29 10:39:50 +02:00
Marian Buschsieweke
579a67be03
drivers/dht: Move hold logic from SAUL to driver
The DHT11/DHT21/DHT22 cannot be sampled more than once a second. Previously,
a global cache was added to the SAUL adaption of the dht driver to answer with
stored values for one second after the last read. This however had two
disadvantages:

- The global cache was shared for all DHTXX devices connected. As a result
  incorrect values were delivered when reading out multiple sensors over SAUL
  with less than 1 second delay in between
- A user of the low level API will had to implement the same caching strategy,
  resulting in code duplication

By moving the hold logic to the driver, both limitations can be overcome.
2019-07-29 10:39:50 +02:00
Martine S. Lenders
d129382484 gnrc_cc110x: use gnrc_netif_hdr_set_netif() 2019-07-26 15:34:08 +02:00
Marian Buschsieweke
d2d83c3bd0
drivers/dht: Fixed assert on uninitialized data
Instead of asserting that parameters are valid, dht_init() contained an assert
on uninitialized data. This commit fixes that assert
2019-07-19 16:14:29 +02:00
Marian Buschsieweke
c75bacceba
drivers/dht: Added error handling
Previously the DHT11/DHT21/DHT22 driver ended up in an infinite loop locking up
RIOT when a communication error occurred. This commit adds a simple timeout to
the communication in order to prevent these lock ups.
2019-07-19 15:57:49 +02:00
f8128844b7
Merge pull request #11527 from fjmolinas/pr_wdg_hdr
drivers/include: add header definition for wdt
2019-07-16 14:25:40 +02:00
fjmolinas
541f9ddd20 drivers/include: add header definition for wdt 2019-07-16 13:53:28 +02:00
Leandro Lanzieri
cb57c6ff1a
Merge pull request #11798 from jia200x/pr/remove_sx127x_multi
sx127x: remove MULTIDIO and fix missing interrupt handling
2019-07-05 11:33:42 +02:00
Jose Alamos
2e7683b5e2 sx127x_netdev: remove switch-case from ISR handler
Some LoRa modules don't provide all ISR lines. Thus, there are
cases where different interrupts appear simultaneously in the ISR flags.
It's required to use an AND/OR pattern to check which interrupts were triggered.
2019-07-05 10:52:43 +02:00
9e6d558596
stm32_eth: Code cleanup and some fixes
cpu/stm32_common: cleanup periph eth
boards/nucleo-f767zi: cleanup dependencies
boards/nucleo-f767zi: fix dma configuration attribute for eth
examples/default: add nucleo-767zi in boards with netif
drivers/stm_32_eth: Add header guard for eth_config

Co-authored-By: Robin <robin@chilio.net>
2019-07-04 15:27:50 +02:00
Robin
4729bea46e
stm32_eth: Multiple Improvements of the original codebase
stm32eth: Move to stm32_common periph
cpu/stm32_periph_eth: Rebase to current master branch

- Update DMA to use new vendor headers
- Update send to use iolist. It looks like the packet headers are now transfered as seperate iolist entries which results in the eth periph sending each header as own packet. To fix this a rather ugly workaround is used where the whole iolist content is first copied to a static buffer. This will be fixed soon in another commit
- If MAC is set to zero use luid to generate one
- Small code style fixes

cpu/stm312f7: Add periph config for on-board ethernet
boards/nucleo-f767zi: Add config for on board ethernet
tests/stm32_eth_lwip: Remove board restriction
boards/common/nucleo: Add luid module if stm32 ethernet is used
tests/stm32_eth_gnrc: Add Testcase for gnrc using the stm32 eth periph
stm32_eth: Rework netdev driver layour
tests/stm32_eth_*: Use netdev driver header file for prototypes
stm32_eth: Add auto init for stm32 eth netdev driver
boards/stm32: Enable ethernet conf for nucleo boards
stm32_eth_auto_init: Add dont be pendantic flag
stm32_eth: Remove dma specific stuff from periph_cpu.h

Looks like this was implemented in PR #9171 and 021697ae94 with the same interface.

stm32_eth: Remove eth feature from stm32f4discovery boards
stm32_eth: Migrate to stm32 DMA API
stm32_eth: Add iolist to module deps
stm32_eth: Rework send function to use iolist
stm32_eth: Fix ci build warnings
stm32_eth: Fix bug introduced with iolist usage
stm32_eth: Remove redundant static buffer
stm32_eth: Fix feature dependencies
stm32_eth: Fix wrong header guard name
stm32_eth: Implement correct l2 netstats interface
stm32_eth: Rename public functions to stm32_eth_*
stm32_eth: Fix doccheck
stm32_eth: Move register DEFINE to appropriate header file
stm32_eth: remove untested configuration for f446ze boards
stm32_eth: Move periph configuration struct to stm32_common
stm32_eth: Fix naming of eth_phy_read and eth_phy_write
stm32_eth: Remove obsolete test applications
2019-07-04 15:27:26 +02:00
Victor Arino
e206087d65
stm32_eth: Initial implementation by Victor Arino
drivers/eth-phy: add generic Ethernet PHY iface
cpu/stm32f4: implement eth driver peripheral

This implements the ethernet (MAC) peripheral of the stm32f4 as a
netdev driver.
boards/stm32f4discovery: add eth configuration
boards/stm32f4discovery: add feature stm32_eth
tests/stm32_eth_lwip: add test application
2019-07-04 15:04:01 +02:00
Jose Alamos
d94d587e5e sx127x: remove DIOMULTI 2019-07-04 14:23:48 +02:00
Sebastian Meiling
f6207871a9
Merge pull request #11678 from MichelRottleuthner/pr_fix_sx127x_reset
drivers/sx127x: fix device reset
2019-07-03 17:07:50 +02:00
Michel Rottleuthner
6e4214843a drivers/sx127x: fix reset for sx1272 devices.
- The previous implementation wrongly assumes that sx1272 and 1276
  use the same logic level for triggering a reset.
- The timeout values were to short to guarantee proper reset when
  coming from POR.
2019-07-03 11:26:23 +02:00
Jose Alamos
ca8c78116f drivers/sx127x: add NETOPT_RX_SYMBOL_TIMEOUT setter 2019-06-27 15:43:50 +02:00
Jose Alamos
268e6df950 drivers/sx127x: add NETOPT_RANDOM option handling 2019-06-27 15:43:50 +02:00
Jose Alamos
77162b8c6f drivers/sx127x: add NETOPT_SYNCWORD option handling 2019-06-27 15:43:50 +02:00
f52d5ebde7
drivers: sys: replace USE_ETHOS_FOR_STDIO macro by MODULE_STDIO_ETHOS 2019-06-23 22:16:03 +02:00
Martine Lenders
abf4d60286
Merge pull request #11718 from jia200x/pr/netdev_ieee802154_pib
netdev_ieee802154: add txpower and page
2019-06-19 18:24:13 +02:00
Jose Alamos
302fa1467f netdev_ieee802154: add txpower to descriptor 2019-06-18 13:51:31 +02:00
Jose Alamos
c33d5f744b netdev_ieee802154: add channel page to descriptor 2019-06-18 13:51:31 +02:00
Michel Rottleuthner
f337f42738 drivers/sx127x: add define for logic level of POR indication by the reset pin 2019-06-11 19:24:07 +02:00
44f9c3fa28
enc28j60: use ethernet address helper functions 2019-06-10 21:07:02 +02:00
1f6895d0f7
drivers/rn2xx3: fix incorrectly terminated hex strings
When writing an array of bytes, each byte is converted on the fly to 2 hex characters and sent to the rn2xx3 module. This change ensures each string is correctly terminated, with null character, when written to the module
2019-06-07 10:39:31 +02:00
Martine Lenders
82278e808e
Merge pull request #11637 from miri64/isrpipe/fix/change-api-types
isrpipe: change API to be in line with `tsrb`
2019-06-06 12:49:24 +02:00
Martine Lenders
f3ab285362 slipdev: make rxmem buffer uint8_t
`tsrb` changed to that type, so there is no reason for us, to keep the
internally used buffer as a `char` (especially since the rest of the
driver already uses `uint8_t`)
2019-06-05 21:24:38 +02:00
Martine Lenders
8cf4bc178c at: adapt for isrpipe API type change 2019-06-05 18:16:32 +02:00
9b47dcb542
Merge pull request #11634 from miri64/tsrb/fix/change-api-types
tsrb: change input type to `uint8_t`
2019-06-05 17:50:16 +02:00
Martine Lenders
5dafce71be slipdev: adapt for tsrb API type change 2019-06-05 17:10:27 +02:00
Martine Lenders
31c49c58f1 ethos: adapt for tsrb API type change 2019-06-05 17:10:27 +02:00
20b94e9c56
usbdev: fix usbopt argument for getter/setter wrappers 2019-06-05 12:06:10 +02:00
Kevin "Bear Puncher" Weiss
4922321f1f
Merge pull request #11585 from fedepell/i2c_reg_endianess_2
periph/i2c: handle i2c register write/read helper function correctly in big endian
2019-05-29 11:54:24 +02:00
Kevin "Bear Puncher" Weiss
772dcd189b
Merge pull request #11532 from leandrolanzieri/pr/drivers/at_rcv-functions
drivers/at: Add 'at_recv_bytes_until_string' function
2019-05-29 09:55:33 +02:00
Federico Pellegrin
1779abafb5 periph/i2c: make sure i2c registers is big-endian on all archs 2019-05-29 05:15:23 +02:00
Peter Kietzmann
a66693d111
Merge pull request #11501 from leandrolanzieri/pr/drivers/adcxxc1_config_group
drivers/adcxxc1: Expose compile configuration via config group
2019-05-28 22:17:54 +02:00
Carton
886a29311e drivers/mrf24j40 : support of NETOPT_LAST_ED_LEVEL 2019-05-23 15:45:03 +02:00
Benjamin Valentin
477938e46e drivers/mrf24j40: add external PA/LNA control on MC/MD/ME devices
The MRF24J40MC/MD/ME modules contain an external power amplifier &
low noise amplifier that has to be enabled manually by setting three bits
in the TESTMODE register.
On MRF24J40MC the power amplifier is powered by a separate voltage regualtor
that has to be enabled by setting GPIO3 to HIGH.

During Sleep and CCA the PA should be disabled.

Co-authored-by: Carton <joel.carron@eeproperty.ch>
Co-authored-by: Benjamin Valentin <benjamin.valentin@ml-pa.com>
2019-05-23 11:07:04 +02:00
a7f8182249
drivers: sys: add SAUL support for ds75lx sensor 2019-05-22 16:54:20 +02:00
35a3c4ddfe
drivers/ds75lx: add basic driver 2019-05-22 16:54:19 +02:00
Guillaume Gonnet
1783b3da55 drivers/ds18: fix ds18_read with negative temperatures
When DS18 returns 0xFE6F (corresponding to -25.0625 °C), `ds18_read` returns
13877 whereas it should return -2506. This commit fixes this issue.
2019-05-16 20:12:22 +02:00
Leandro Lanzieri
b5171f4d48 tests/driver_at: Add receive until string test 2019-05-16 14:45:53 +02:00
Leandro Lanzieri
5b04fb1713 drivers/at: Add function to receive until string 2019-05-16 14:45:53 +02:00
Leandro Lanzieri
ef6207da06 drivers/adcxxc1: expose configuration via config group 2019-05-08 15:22:41 +02:00
MichelRottleuthner
c754f3c4c7
Merge pull request #11451 from fhessel/pcd8544
drivers/pcd8544: Use uint8_t instead of char for byte represenatation
2019-04-30 21:47:50 +02:00
Frank Hessel
70ac451a2b
drivers/sdcard_spi: Use uint8_t for byte values 2019-04-29 19:25:34 +02:00
Frank Hessel
827868a7a0
drivers/pcd8544: replace char by uint8_t for bytes 2019-04-25 23:42:30 +02:00
Frank Hessel
4fa954c1e3
drivers/adt7310: Replace binary representation 2019-04-25 21:18:36 +02:00
ac60154157
Merge pull request #9771 from Citrullin/advanced_io
drivers/periph/gpio_util: add gpio_util_shiftin()
2019-04-24 11:15:20 +02:00
Philipp Blum
9f2ef5e367 drivers/periph_common/gpio_util: introduce gpio_util_shiftin() 2019-04-18 07:09:32 +02:00
Gilles DOFFE
3a83648f2a drivers: add licence to motor_driver source files
Related to PR #10290, add missing licence to some source files.

Signed-off-by: Gilles DOFFE <g.doffe@gmail.com>
2019-04-13 00:29:58 +02:00
c1547efb3a
Merge pull request #11316 from fjmolinas/pr_sx127x_switch
drivers/sx127x: add support for rx and tx switch pin
2019-04-10 18:40:37 +02:00
francisco
c62d9feff7 drivers/sx127x: add support for rx and tx switch pin 2019-04-10 08:18:01 +02:00
MrKevinWeiss
3ed9060527 drivers: adcxx1c, ads101x, ad7746: Change I2C macro to DEV
Due to a name clash the helper macro I2C should be change.
Helper macros in other drivers are called DEV.
Changing to DEV fixes the naming conflict.
2019-04-08 14:08:07 +02:00
Sebastian Meiling
4dd09eaa06
Merge pull request #6178 from OTAkeys/pr/can_stm32
can stm32: add a driver for STM32 bxCAN peripheral
2019-04-08 08:50:08 +02:00
Dylan Laduranty
a81dbf0037
Merge pull request #11152 from ibr-cm/petersen/l3g4200d-fix-pr
l3g4200d: Fixes conversion bug
2019-04-05 15:49:13 +02:00
Vincent Dupont
74ddf56171 tests/conn_can: build stm32 CAN drivers
Build can_stm32 module on boards which have a stm32 CAN controller.
2019-04-03 11:12:46 +02:00
Martine Lenders
a1e2dc0810
Merge pull request #11332 from kYc0o/pr/xbee/prevent_0_len_uart
drivers/xbee: prevent 0 length packet sent to UART
2019-04-02 17:33:29 +02:00
kYc0o
f673d5af1e drivers/xbee: prevent 0 length packet sent to UART
Since the API doc doesn't specify what to do with 0
len writings into UART, we cannot assume that is
safe to do it, so this commit prevents it by checking
the length prior to the `uart_write()` operation.
2019-04-02 16:47:13 +02:00
Martine Lenders
4e464bdbc6
Merge pull request #11331 from kYc0o/pr/cc2420/fix_0_len_pkt
drivers/cc2420: don't append to FIFO if iol->iol_len == 0
2019-04-02 16:29:24 +02:00
kYc0o
c6b424f4ff drivers/cc2420: don't append to FIFO if iol->iol_len == 0
This prevents SPI transfers with len == 0, which triggers
an assert failure.
2019-04-02 16:00:03 +02:00
200ce49638
Merge pull request #11325 from maribu/encx24j600
drivers/encx24j600: Allow empty iolist elements
2019-04-01 17:10:16 +02:00
MichelRottleuthner
d77b8e1f52
Merge pull request #11321 from bergzand/pr/mrf24j40/fix_empty_element
drivers/mrf24j40: don't load data if iol->iol_len == 0
2019-04-01 17:09:15 +02:00
Marian Buschsieweke
99db8e8717
drivers/encx24j600: Allow empty iolist elements
This commits allows using netdev_driver_t::send() to be called with one or more
empty iolist elements. This fixes issue
https://github.com/RIOT-OS/RIOT/issues/11163
2019-04-01 16:51:39 +02:00
1804730c0e
mrf24j40: don't load data if iol->iol_len == 0 2019-04-01 11:46:42 +02:00
Martine Lenders
299a1903e6
Merge pull request #11215 from jia200x/pr/sx127x_fix
sx127x: ignore empty iolist element
2019-04-01 11:37:37 +02:00
Martine Lenders
85276fb7a0
Merge pull request #11214 from maribu/enc28j60
drivers/enc28j60: Allow sending with empty chunks
2019-03-30 18:08:01 +01:00
Torben Petersen
506e208ffd drivers/l3g4200d: fixes driver conversion 2019-03-30 10:32:43 +01:00
Vincent Dupont
ae95137f95 can stm32: add a driver for STM32 bxCAN peripheral
This driver is compliant with the candev interface. It has been tested
with STM32F0 and STM32F2 and STM32F413 ONLY at this time but should be
compliant with other STM32Fx devices
2019-03-29 12:03:43 +01:00
14f47bf220
Merge pull request #10695 from aabadie/pr/drivers/lpsxxx
drivers/lpsxxx: refactor lps331ap and add support for lps25hb + lps22hb
2019-03-29 10:54:08 +01:00
Dylan Laduranty
ccf12c57a8
Merge pull request #10884 from fedepell/sam_rwee_support
sam0 flashpage RWWEE flash support
2019-03-28 11:00:25 +01:00
Hauke Petersen
f2df22ed99
Merge pull request #10589 from miri64/l2util/feat/initial
l2util: initial import of a general IPv6 over X helper module
2019-03-27 11:46:12 +01:00
Martine Lenders
db8954fe60
Merge pull request #11267 from cladmi/pr/isrpipe/separate_read_timeout
isrpipe: split isrpipe_read_timeout to isolate xtimer dependency
2019-03-26 22:27:15 +01:00
Martine Lenders
664763bb29 netdev: add doc group for network device types 2019-03-26 21:37:20 +01:00
Gaëtan Harter
29fc58bc79
drivers/at: remove the direct dependency to xtimer
`at` is not using the `xtimer` module directly but only through
'isrpipe_read_timeout'.
2019-03-26 21:36:24 +01:00
Gaëtan Harter
b07eecd619
isrpipe: split isrpipe_read_timeout to isolate xtimer dependency
This defines a new 'isrpipe_read_timeout' module that should be used when using
the timeout based function of isrpipe.

This fix the implicit dependency to 'xtimer' that is only needed for the
'_timeout' functions.

It prevents 'stdio_uart' that uses 'isrpipe' to need to depend on xtimer.
This was silently solved at link time for most platforms but not for the
'esp32' for example.

'drivers/at' needed to be updated at the same time to follow the api change.
2019-03-26 21:36:24 +01:00
Kevin "Bear Puncher" Weiss
268d3e926c
Merge pull request #10826 from ranbe1/at_driver_uart_initialize_status
drivers/at: make at_dev_init() return uart initialize status
2019-03-26 14:07:05 +01:00
c697a3bfd8
usbdev: extend events with suspend/resume 2019-03-25 21:03:21 +01:00
Dylan Laduranty
784af0a9c8
Merge pull request #11213 from bergzand/pr/usb/periph_init
usbdev: Add low level initialization to `periph_init()`
2019-03-25 20:49:25 +01:00
Federico Pellegrin
5faafac092 sam0 flashpage RWWEE flash support 2019-03-21 04:27:41 +01:00
7c285eb186
drivers/lpsxxx: add support for lps22hb 2019-03-20 14:43:37 +01:00
1f4dee90a1
drivers/lpsxxx: unify lps331ap and lps25h drivers 2019-03-20 14:43:36 +01:00
Marian Buschsieweke
f5cd25bdab
drivers/enc28j60: Allow sending with empty chunks
This commit allows `netdev_driver_t::send()` of `enc28j60` to be passed an
`iolist_t` containing one or more empty elements.
2019-03-20 09:57:45 +01:00
cf093c5a25
periph: add low level usbdev initialization 2019-03-20 09:12:24 +01:00
4d352fc93f
usbdev: Extend with low level initialization functions 2019-03-20 09:12:24 +01:00
Jose Alamos
4778776790 sx127x: ignore empty iolist element 2019-03-19 17:30:55 +01:00
Torben Petersen
04d346667b drivers/bmp180: fix conversion 2019-03-18 09:43:39 +01:00
Martine Lenders
6611be5140 at86rf2xx: don't call tx_load when iol->iol_len == 0 2019-03-15 15:34:38 +01:00
Martine Lenders
51626a48d4 netdev: document valid values for iolist in send() 2019-03-15 11:34:19 +01:00
71204d1d70
Merge pull request #9830 from bergzand/pr/usb/usbdev
usbdev: Introducing a generic USB device driver API
2019-03-14 22:48:47 +01:00
9af6c69a93
usbdev: Introduce a common API for USB peripherals
This commit adds usbdev, a common API to interface USB peripheral
devices. The API is split into two parts, one for the USB device itself
and one for the USB endpoint.
2019-03-14 21:44:56 +01:00