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

121 Commits

Author SHA1 Message Date
Marian Buschsieweke
826095d56e
drivers/sx127x: reduce use of floats 2023-06-12 13:54:06 +02:00
Benjamin Valentin
838a5e4bd3 netdev_drivers: make sure to signal LINK_UP at least once 2022-09-16 22:57:28 +02:00
Marian Buschsieweke
276ad5716a
sys/net/gnrc/netif: allow checking if a netdev is legacy or new API
A if `netdev_driver_t::confirm_send()` is provided, it provides the
new netdev API. However, detecting the API at runtime and handling
both API styles comes at a cost. This can be optimized in case only
new or only old style netdevs are in use.

To do so, this adds the pseudo modules `netdev_legacy_api` and
`netdev_new_api`. As right now no netdev actually implements the new
API, all netdevs pull in `netdev_legacy_api`. If `netdev_legacy_api` is
in used but `netdev_new_api` is not, we can safely assume at compile
time that only legacy netdevs are in use. Similar, if only
`netdev_new_api` is used, only support for the new API is needed. Only
when both are in use, run time checks are needed.

This provides two helper function to check for a netif if the
corresponding netdev implements the old or the new API. (With one
being the inverse of the other.) They are suitable for constant folding
when only new or only legacy devices are in use. Consequently, dead
branches should be eliminated by the optimizer.
2022-08-17 12:56:07 +02:00
MrKevinWeiss
442f072059
drivers/sx127x: Update kconfig model 2022-03-04 14:15:58 +01:00
Benjamin Valentin
a471f3583e drivers/sx127x: add support for WLR089/SAM R34
The device ID returned on WLR089 is 0x13 instead of 0x12, but it appears to
work just like sx1276.

Also check for the other device ID to make the driver work on this module.
2022-01-27 13:36:26 +01:00
5e599a82dd
Merge pull request #17531 from fjmolinas/pr_spi_gpio_init_reference
drivers/periph_spi: spi_init_with_gpio_mode mode by reference
2022-01-18 18:44:54 +01:00
Francisco Molina
579ca6d941 drivers/periph_spi: spi_init_with_gpio_mode mode by reference 2022-01-18 16:22:18 +01:00
75f5048b68
Merge pull request #17497 from jia200x/pr/lora/fix_rssi_val
[treewide] lora: use int16_t for RSSI value
2022-01-17 18:57:37 +01:00
Jose Alamos
9955a35c63
[treewide] lora: use int16_t for RSSI value
The RSSI values reported by LoRa transceiver can be less than -127.
Therefore, `int8_t` is not enough. This commit defines the RSSI of
`netdev_lora_rx_info` as `int16_t` and adapt the drivers accordingly
(sx126x, sx127x).
2022-01-17 17:54:18 +01:00
e809952ca4
drivers/sx12{6,7}x: use inverse CONFIG_LORA_PAYLOAD_CRC_OFF_DEFAULT 2022-01-14 10:31:55 +01:00
Leandro Lanzieri
e44ff31560
drivers/sx127x/kconfig: rework modelling 2021-11-26 11:06:50 +01:00
fc5338641e
drivers/sx127x: declare pseudomodules at driver level 2021-10-05 11:48:51 +02:00
José Alamos
1ee57f80a0
Merge pull request #15030 from jia200x/pr/lora/remove_xtimer
drivers/sx127x: remove ZTIMER_USEC dependency
2021-09-27 11:41:22 +02:00
Jose Alamos
e312155f30 drivers/sx127x: remove ZTIMER_USEC dependency 2021-09-27 10:22:06 +02:00
Jan Romann
4384795cb9
treewide: Remove excessive newlines 2021-08-13 19:50:38 +02:00
Jose Alamos
c6da77a454
Revert "drivers/sx127x: fix size of rx symbol timeout"
This reverts commit 26ead7b5be.
2021-07-13 21:14:28 +02:00
José Alamos
9eb05b0ce6
Merge pull request #16631 from jia200x/pr/fix_gnrc_netif_cmd_lora_dep
shell_commands/gnrc_netif: fix gnrc_netif_cmd_lora dependency
2021-07-10 18:00:22 +02:00
Jose Alamos
c8f9d85002
shell_commands/gnrc_netif: fix gnrc_netif_cmd_lora dependency
This commit fixes the dependency resolution of `gnrc_netif_cmd_lora`.
As it was, this module was pulled by the driver if `gnrc` was used.
Besides pulling an extra dependency in applications that don't use
`shell_commands` or `gnrc_lorawan`, this hardcodes the module
resolution in the drivers.

This commit pulls `gnrc_netif_cmd_lora` if `shell_commands` and
`gnrc_lorawan` are present.
2021-07-09 13:29:07 +02:00
Jose Alamos
bfbbec3de3
sx127x: avoid explicit cast to netdev 2021-07-09 10:38:36 +02:00
Jose Alamos
26ead7b5be
drivers/sx127x: fix size of rx symbol timeout 2021-07-01 11:58:34 +02:00
Francisco Molina
3e4e664071
ztimer: remove duplicate dependencies 2021-06-16 11:18:25 +02:00
39094d0833
drivers/sx127x: uncrustify code 2021-05-18 11:00:44 +02:00
0ea3b0bac1
drivers/sx127x: expose RSSI value via netdev 2021-03-12 10:29:45 +01:00
Leandro Lanzieri
88f69e1f17
drivers/sx127x: add modules to Kconfig 2021-01-21 11:22:51 +01:00
Fabian Hüßler
c526a34770 sx127x: make use of netdev_register()
Call netdev_register() in sx127x_setup()
and pass the index in auto_init_sx127x()
and semtech_loramac_init()
2020-12-01 16:34:11 +01:00
Leandro Lanzieri
0e52e2747e
drivers: remove netif as dependency for network device drivers 2020-11-13 09:25:59 +01:00
Bas Stottelaar
62994dfb16 drivers/*: replace #if ENABLE_DEBUG with IS_ACTIVE 2020-11-02 21:34:12 +01:00
Bas Stottelaar
92b1dfc703 drivers/*: realign ENABLE_DEBUG 2020-10-23 01:26:09 +02:00
Bas Stottelaar
4bdfe9a254 drivers/*: add missing include of assert.h 2020-10-22 11:13:08 +02:00
Akshai M
1ef362edea drivers/sx127x : Improve debugging 2020-10-14 00:16:47 +05:30
Akshai M
399273dba5 net/lora : Move 'LORA_PAYLOAD_LENGTH_DEFAULT' to 'CONFIG_' 2020-09-30 20:00:03 +05:30
Akshai M
889828ae87 net/lora : Model as bool 'LORA_FIXED_HEADER_LEN_MODE_DEFAULT'
Move 'LORA_FIXED_HEADER_LEN_MODE_DEFAULT' to 'CONFIG_'
2020-09-30 20:00:03 +05:30
Akshai M
e329588be4 net/lora : Move 'LORA_FREQUENCY_HOPPING_PERIOD_DEFAULT' to 'CONFIG_' 2020-09-30 20:00:03 +05:30
Akshai M
acd601ebb9 net/lora : Model as bool 'LORA_FREQUENCY_HOPPING_DEFAULT'
Move 'LORA_FREQUENCY_HOPPING_DEFAULT' to 'CONFIG_'
2020-09-30 20:00:03 +05:30
Akshai M
00cc04f596 net/lora : Model as bool 'LORA_IQ_INVERTED_DEFAULT'
Move 'LORA_IQ_INVERTED_DEFAULT' to 'CONFIG_'
2020-09-30 20:00:03 +05:30
Akshai M
a161476041 net/lora : Move 'LORA_CR_DEFAULT' to 'CONFIG_'
Added choices and moved 'LORA_CR_DEFAULT' to 'CONFIG_' namespace
2020-09-30 20:00:03 +05:30
Akshai M
aaeed98277 net/lora : Move 'LORA_SF_DEFAULT' to 'CONFIG_' 2020-09-30 20:00:03 +05:30
Akshai M
349d20349d net/lora : Move 'LORA_BW_DEFAULT' to 'CONFIG_'
Added choices and moved 'LORA_BW_DEFAULT" to 'CONFIG_' namespace
2020-09-30 20:00:03 +05:30
Akshai M
979700cd45 net/lora : Move 'LORA_SYMBOL_TIMEOUT_DEFAULT' to 'CONFIG_' 2020-09-30 20:00:03 +05:30
Akshai M
de1ad1e8cf net/lora : Move 'LORA_PREAMBLE_LENGTH_DEFAULT' to 'CONFIG_' 2020-09-30 20:00:03 +05:30
Gunar Schorcht
6d61381d2a drivers: use inline functions for GPIO comparisons
The expandable GPIO API requires the comparison of structured GPIO types. This means that inline functions must be used instead of direct comparisons. For the migration process, drivers must first be changed so that they use the inline comparison functions.
2020-08-31 13:10:28 +02:00
6199ada6b5
drivers/sx127x: migrate to ztimer 2020-08-20 13:41:32 +02:00
Leandro Lanzieri
224e2c977d
Merge pull request #14509 from jia200x/pr/lora_implicit_mode
sx127x: add support for implicit header mode
2020-07-29 12:52:00 +02:00
Jose Alamos
84eb2dc30c sx127x: implement NETOPT_PDU_SIZE 2020-07-29 11:57:52 +02:00
304bce3724
drivers: configure per driver dependency resolution 2020-07-20 14:32:16 +02:00
490126cfa0
drivers: move USEMODULE_INCLUDES in each driver directories 2020-07-15 20:36:27 +02:00
benpicco
1776e54d80
Merge pull request #13604 from gschorcht/drivers/sx127x/dio_handling
drivers/sx127x: changes in DIO handling
2020-05-16 19:12:26 +02:00
Gunar Schorcht
87021a0b18 drivers/sy127x: clear interrupts for DIO3
If ValidHeader interrupt is set, it triggers DIO3 interrupt. However, if DIO3 line is not connected, ValidHeader interrupt is still set in RegIrqFlags register when RxDone interrupt is triggered on DIO0. It sets the mode back to idle. Therefore, the _on_dio3_irq does not clear the ValidHeader interrupt flag.
2020-03-10 10:47:36 +01:00
Gunar Schorcht
56040e3369 driver/sx127x: allow the use of DIO0 for CAD_DONE 2020-03-10 10:08:30 +01:00
Gunar Schorcht
e3a82cd6fc driver/sx127x: set DIO1 mapping
Since the RxTimeout interrupt is enabled, DIO1 mapping should be set also to RxTimeout in case the driver is extended in future and DIO1 mapping is changed for any reason.
2020-03-10 10:08:24 +01:00