Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Spi drivers #19820

Draft
wants to merge 29 commits into
base: master
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
29 commits
Select commit Hold shift + click to select a range
b6f94e0
tests/drivers/adt7310: adapted to the new SPI API
hugueslarrive Jul 3, 2023
e392ec0
drivers/at25xxx: adapted to the new SPI API
hugueslarrive Jul 4, 2023
8810097
drivers/at86rf215: adapted to the new SPI API
hugueslarrive Jul 4, 2023
2d5fd1a
drivers/at86rf2xx: adapted to the new SPI API
hugueslarrive Jul 4, 2023
4da0811
drivers/ata8520e: adapted to the new SPI API
hugueslarrive Jul 4, 2023
d18ff5d
drivers/atwinc15x0: adapted to the new SPI API
hugueslarrive Jul 4, 2023
25d68ab
drivers/bmx280: adapted to the new SPI API
hugueslarrive Jul 9, 2023
f7d38ee
drivers/candev_mcp2515: adapted to the new SPI API
hugueslarrive Jul 9, 2023
23b514b
drivers/cc110x: adapted to the new SPI API
hugueslarrive Jul 2, 2023
9845ea6
drivers/cc2420: adapted to the new SPI API
hugueslarrive Jul 9, 2023
6cd4368
drivers/ds3234: adapted to the new SPI API
hugueslarrive Jul 2, 2023
43b50a5
drivers/enc28j60: adapted to the new SPI API
hugueslarrive Jul 9, 2023
2f557ce
drivers/encx24j600: adapted to the new SPI API
hugueslarrive Jul 9, 2023
42126ee
drivers/epd_bw_spi: adapted to the new SPI API
hugueslarrive Jul 9, 2023
fe743ba
drivers/ili9341: adapted to the new SPI API
hugueslarrive Jul 9, 2023
4e3a99c
drivers/lcd: adapted to the new SPI API
hugueslarrive Jul 9, 2023
31b6c2f
drivers/st7735: adapted to the new SPI API
hugueslarrive Jul 9, 2023
8a0c375
drivers/kw2xrf: adapted to the new SPI API
hugueslarrive Jul 9, 2023
485dc2c
drivers/l3gxxxx: adapted to the new SPI API
hugueslarrive Jul 9, 2023
e03bf87
drivers/lis2dh12: adapted to the new SPI API
hugueslarrive Jul 2, 2023
682c906
drivers/lis3dh: adapted to the new SPI API
hugueslarrive Jul 9, 2023
7bc430b
drivers/mfrc522: adapted to the new SPI API
hugueslarrive Jul 9, 2023
7d281f0
drivers/nrf24l01p_ng: adapted to the new SPI API
hugueslarrive Jul 2, 2023
e716f8f
drivers/sx1280: adapted to the new SPI API
hugueslarrive Jul 3, 2023
74c1c01
pkg/driver_bme680: adapted to the new SPI API
hugueslarrive Jul 12, 2023
52ff99e
pkg/driver_sx126x:: adapted to the new SPI API
hugueslarrive Jul 12, 2023
d88e7df
pkg/mynewt-core: adapted to the new SPI API
hugueslarrive Jul 12, 2023
496a922
pkg/uwb-dw1000: adapted to the new SPI API
hugueslarrive Jul 12, 2023
4bb71b8
periph/spi: printing and testing SPI clock rates
hugueslarrive Aug 12, 2021
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
drivers/ata8520e: adapted to the new SPI API
  • Loading branch information
hugueslarrive committed Jul 11, 2023
commit 4da0811579ee9013c6b9a39301af785918335775
3 changes: 3 additions & 0 deletions drivers/ata8520e/ata8520e.c
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
/*
* Copyright (C) 2017 Inria
* 2023 Hugues Larrive
*
* This file is subject to the terms and conditions of the GNU Lesser General
* Public License v2.1. See the file LICENSE in the top level directory for more
Expand All @@ -14,6 +15,7 @@
* @brief Device driver for Microchip ATA8520E transceiver
*
* @author Alexandre Abadie <alexandre.abadie@inria.fr>
* @author Hugues Larrive <hugues.larrive@pm.me>
*
* @}
*/
Expand Down Expand Up @@ -242,6 +244,7 @@ int ata8520e_init(ata8520e_t *dev, const ata8520e_params_t *params)
{
/* write config params to device descriptor */
dev->params = *params;
dev->params.spi_clk = spi_get_clk(dev->params.spi, dev->params.spi_freq);

/* Initialize pins*/
if (gpio_init_int(INTPIN, GPIO_IN_PD,
Expand Down
7 changes: 5 additions & 2 deletions drivers/ata8520e/include/ata8520e_params.h
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
/*
* Copyright (C) 2017 Inria
* 2023 Hugues Larrive
*
* This file is subject to the terms and conditions of the GNU Lesser
* General Public License v2.1. See the file LICENSE in the top level
Expand All @@ -14,13 +15,15 @@
* @brief Default initialization parameters for the ATA8520E device
*
* @author Alexandre Abadie <alexandre.abadie@inria.fr>
* @author Hugues Larrive <hugues.larrive@pm.me>
*/

#ifndef ATA8520E_PARAMS_H
#define ATA8520E_PARAMS_H

#include "board.h"
#include "ata8520e.h"
#include "macros/units.h"

#ifdef __cplusplus
extern "C" {
Expand All @@ -34,7 +37,7 @@ extern "C" {
#define ATA8520E_PARAM_SPI SPI_DEV(0)
#endif
#ifndef ATA8520E_PARAM_SPI_CLK
#define ATA8520E_PARAM_SPI_CLK (SPI_CLK_100KHZ)
#define ATA8520E_PARAM_SPI_CLK KHZ(125)
#endif
#ifndef ATA8520E_PARAM_CS_PIN
#define ATA8520E_PARAM_CS_PIN GPIO_PIN(0, 0)
Expand All @@ -51,7 +54,7 @@ extern "C" {

#ifndef ATA8520E_PARAMS
#define ATA8520E_PARAMS { .spi = ATA8520E_PARAM_SPI, \
.spi_clk = ATA8520E_PARAM_SPI_CLK, \
.spi_freq = ATA8520E_PARAM_SPI_CLK, \
.cs_pin = ATA8520E_PARAM_CS_PIN, \
.int_pin = ATA8520E_PARAM_INT_PIN, \
.power_pin = ATA8520E_PARAM_POWER_PIN, \
Expand Down
6 changes: 5 additions & 1 deletion drivers/include/ata8520e.h
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
/*
* Copyright (C) 2017 Inria
* 2023 Hugues Larrive
*
* This file is subject to the terms and conditions of the GNU Lesser General
* Public License v2.1. See the file LICENSE in the top level directory for more
Expand All @@ -20,6 +21,7 @@
* @brief Device driver for Microchip ATA8520E transceiver (Sigfox)
*
* @author Alexandre Abadie <alexandre.abadie@inria.fr>
* @author Hugues Larrive <hugues.larrive@pm.me>
*/

#ifndef ATA8520E_H
Expand Down Expand Up @@ -121,7 +123,9 @@ typedef enum {
*/
typedef struct {
spi_t spi; /**< SPI device */
spi_clk_t spi_clk; /**< SPI clock speed */
spi_clk_t spi_clk; /**< SPI clock configuration
* computed during init */
uint32_t spi_freq; /**< SPI clock speed to use */
gpio_t cs_pin; /**< Chip select pin */
gpio_t int_pin; /**< IRQ pin */
gpio_t power_pin; /**< Power pin */
Expand Down