Skip to content

Commit b107148

Browse files
authored
Merge pull request #12951 from MarceloSalazar/S2LP_cleanup
Clean-up S2LP driver configuration
2 parents 37ee008 + 307cc61 commit b107148

File tree

9 files changed

+152
-1180
lines changed

9 files changed

+152
-1180
lines changed
Lines changed: 64 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,73 @@
11
{
22
"name": "s2lp",
33
"config": {
4+
"SPI_SDI": {
5+
"help": "SPI_SDI pin for SPI connection. D11 assumed, needs to be set/overwritten otherwise",
6+
"value": null
7+
},
8+
"SPI_SDO": {
9+
"help": "SPI_SDO pin for SPI connection. D12 assumed, needs to be set/overwritten otherwise",
10+
"value": null
11+
},
12+
"SPI_SCLK": {
13+
"help": "SPI_SCLK pin for SPI connection, D13 assumed, needs to be set/overwritten otherwise",
14+
"value": null
15+
},
16+
"SPI_CS": {
17+
"help": "SPI_CS pin for SPI connection, A1 assumed, needs to be set/overwritten otherwise",
18+
"value": null
19+
},
20+
"SPI_SDN": {
21+
"help": "SPI_SDN pin for SPI connection, D7 assumed, needs to be set/overwritten otherwise",
22+
"value": null
23+
},
24+
"TEST_PIN_TX": {
25+
"help": "TEST_PIN_TX pin for serial connection, D6 assumed, needs to be set/overwritten otherwise",
26+
"value": null
27+
},
28+
"TEST_PIN_RX": {
29+
"help": "TEST_PIN_RX pin for serial connection, D5 assumed, needs to be set/overwritten otherwise",
30+
"value": null
31+
},
32+
"TEST_PIN_CSMA": {
33+
"help": "TEST_PIN_CSMA pin for CSMA, D4 assumed, needs to be set/overwritten otherwise",
34+
"value": null
35+
},
36+
"TEST_PIN_SPARE_1": {
37+
"help": "TEST_PIN_SPARE_1 pin for testing, D2 assumed, needs to be set/overwritten otherwise",
38+
"value": null
39+
},
40+
"TEST_PIN_SPARE_2": {
41+
"help": "TEST_PIN_SPARE_2 pin for testing, D8 assumed, needs to be set/overwritten otherwise",
42+
"value": null
43+
},
44+
"SPI_GPIO0": {
45+
"help": "SPI_GPIO0 pin for GPIO testing, A0 assumed, needs to be set/overwritten otherwise",
46+
"value": null
47+
},
48+
"SPI_GPIO1": {
49+
"help": "SPI_GPIO1 pin for GPIO testing, A2 assumed, needs to be set/overwritten otherwise",
50+
"value": null
51+
},
52+
"SPI_GPIO2": {
53+
"help": "SPI_GPIO2 pin for GPIO testing, A3 assumed, needs to be set/overwritten otherwise",
54+
"value": null
55+
},
56+
"SPI_GPIO3": {
57+
"help": "SPI_GPIO3 pin for GPIO testing, A5 assumed, needs to be set/overwritten otherwise",
58+
"value": null
59+
},
60+
"I2C_SDA": {
61+
"help": "I2C_SDA pin for I2C SDA, null assumed, needs to be set/overwritten otherwise",
62+
"value": null
63+
},
64+
"I2C_SCL": {
65+
"help": "I2C_SCL pin for I2C SCL, null assumed, needs to be set/overwritten otherwise",
66+
"value": null
67+
},
468
"provide-default": {
569
"help": "Provide default NanostackRfpy. [true/false]",
670
"value": false
7-
},
8-
"target_overrides": {
9-
"MTB_STM_S2LP": {
10-
"s2lp.provide-default": true
11-
},
12-
"MTB_STM_S2LP_CT": {
13-
"s2lp.provide-default": true
14-
}
1571
}
1672
}
1773
}

components/802.15.4_RF/stm-s2lp-rf-driver/source/NanostackRfPhys2lp.cpp

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1303,18 +1303,18 @@ void NanostackRfPhys2lp::rf_unregister()
13031303
}
13041304

13051305
NanostackRfPhys2lp::NanostackRfPhys2lp(PinName spi_sdi, PinName spi_sdo, PinName spi_sclk, PinName spi_cs, PinName spi_sdn
1306-
,PinName spi_gpio0, PinName spi_gpio1, PinName spi_gpio2, PinName spi_gpio3
1306+
, PinName spi_gpio0, PinName spi_gpio1, PinName spi_gpio2, PinName spi_gpio3
13071307
#ifdef AT24MAC
1308-
,PinName i2c_sda, PinName i2c_scl
1308+
, PinName i2c_sda, PinName i2c_scl
13091309
#endif //AT24MAC
1310-
)
1310+
)
13111311
:
13121312
#ifdef AT24MAC
1313-
_mac(i2c_sda, i2c_scl),
1313+
_mac(i2c_sda, i2c_scl),
13141314
#endif //AT24MAC
1315-
_mac_addr(), _rf(NULL), _mac_set(false),
1316-
_spi_sdi(spi_sdi), _spi_sdo(spi_sdo), _spi_sclk(spi_sclk), _spi_cs(spi_cs), _spi_sdn(spi_sdn),
1317-
_spi_gpio0(spi_gpio0), _spi_gpio1(spi_gpio1), _spi_gpio2(spi_gpio2), _spi_gpio3(spi_gpio3)
1315+
_mac_addr(), _rf(NULL), _mac_set(false),
1316+
_spi_sdi(spi_sdi), _spi_sdo(spi_sdo), _spi_sclk(spi_sclk), _spi_cs(spi_cs), _spi_sdn(spi_sdn),
1317+
_spi_gpio0(spi_gpio0), _spi_gpio1(spi_gpio1), _spi_gpio2(spi_gpio2), _spi_gpio3(spi_gpio3)
13181318
{
13191319
_rf = new RFPins(_spi_sdi, _spi_sdo, _spi_sclk, _spi_cs, _spi_sdn, _spi_gpio0, _spi_gpio1, _spi_gpio2, _spi_gpio3);
13201320
#ifdef TEST_GPIOS_ENABLED
@@ -1424,11 +1424,11 @@ static bool rf_rx_filter(uint8_t *mac_header, uint8_t *mac_64bit_addr, uint8_t *
14241424
NanostackRfPhy &NanostackRfPhy::get_default_instance()
14251425
{
14261426
static NanostackRfPhys2lp rf_phy(S2LP_SPI_SDI, S2LP_SPI_SDO, S2LP_SPI_SCLK, S2LP_SPI_CS, S2LP_SPI_SDN
1427-
,S2LP_SPI_GPIO0, S2LP_SPI_GPIO1, S2LP_SPI_GPIO2, S2LP_SPI_GPIO3
1427+
, S2LP_SPI_GPIO0, S2LP_SPI_GPIO1, S2LP_SPI_GPIO2, S2LP_SPI_GPIO3
14281428
#ifdef AT24MAC
1429-
,S2LP_I2C_SDA, S2LP_I2C_SCL
1429+
, S2LP_I2C_SDA, S2LP_I2C_SCL
14301430
#endif //AT24MAC
1431-
);
1431+
);
14321432
return rf_phy;
14331433
}
14341434
#endif // MBED_CONF_S2LP_PROVIDE_DEFAULT

components/802.15.4_RF/stm-s2lp-rf-driver/stm-s2lp-rf-driver/NanostackRfPhys2lp.h

Lines changed: 78 additions & 65 deletions
Original file line numberDiff line numberDiff line change
@@ -25,87 +25,100 @@
2525
#include "InterruptIn.h"
2626
#include "SPI.h"
2727

28-
// Uncomment to use testing gpios attached to TX/RX processes
29-
// #define TEST_GPIOS_ENABLED
30-
31-
#if defined(TARGET_MTB_STM_S2LP) || defined(TARGET_MTB_STM_S2LP_CT)
32-
#if !defined(S2LP_SPI_SDI)
33-
#define S2LP_SPI_SDI PA_7
34-
#endif
35-
#if !defined(S2LP_SPI_SDO)
36-
#define S2LP_SPI_SDO PA_6
37-
#endif
38-
#if !defined(S2LP_SPI_SCLK)
39-
#define S2LP_SPI_SCLK PA_5
40-
#endif
41-
#if !defined(S2LP_SPI_CS)
42-
#define S2LP_SPI_CS PC_0
43-
#endif
44-
#if !defined(S2LP_SPI_SDN)
45-
#define S2LP_SPI_SDN PF_13
46-
#endif
47-
#if !defined(S2LP_SPI_GPIO0)
48-
#define S2LP_SPI_GPIO0 PA_3
49-
#endif
50-
#if !defined(S2LP_SPI_GPIO1)
51-
#define S2LP_SPI_GPIO1 PC_3
52-
#endif
53-
#if !defined(S2LP_SPI_GPIO2)
54-
#define S2LP_SPI_GPIO2 PF_3
55-
#endif
56-
#if !defined(S2LP_SPI_GPIO3)
57-
#define S2LP_SPI_GPIO3 PF_10
58-
#endif
59-
#if !defined(S2LP_I2C_SDA)
60-
#define S2LP_I2C_SDA PB_7
61-
#endif
62-
#if !defined(S2LP_I2C_SCL)
63-
#define S2LP_I2C_SCL PB_6
28+
#if defined(MBED_CONF_S2LP_SPI_SDI)
29+
#define S2LP_SPI_SDI MBED_CONF_S2LP_SPI_SDI
30+
#else
31+
#define S2LP_SPI_SDI D11
6432
#endif
65-
#define AT24MAC
33+
34+
#if defined(MBED_CONF_S2LP_SPI_SDO)
35+
#define S2LP_SPI_SDO MBED_CONF_S2LP_SPI_SDO
6636
#else
67-
#if !defined(S2LP_SPI_SDI)
68-
#define S2LP_SPI_SDI D11
37+
#define S2LP_SPI_SDO D12
6938
#endif
70-
#if !defined(S2LP_SPI_SDO)
71-
#define S2LP_SPI_SDO D12
39+
40+
#if defined(MBED_CONF_S2LP_SPI_SCLK)
41+
#define S2LP_SPI_SCLK MBED_CONF_S2LP_SPI_SCLK
42+
#else
43+
#define S2LP_SPI_SCLK D13
7244
#endif
73-
#if !defined(S2LP_SPI_SCLK)
74-
#define S2LP_SPI_SCLK D13
45+
46+
#if defined(MBED_CONF_S2LP_SPI_CS)
47+
#define S2LP_SPI_CS MBED_CONF_S2LP_SPI_CS
48+
#else
49+
#define S2LP_SPI_CS A1
7550
#endif
76-
#if !defined(S2LP_SPI_CS)
77-
#define S2LP_SPI_CS A1
51+
52+
#if defined(MBED_CONF_S2LP_SPI_SDN)
53+
#define S2LP_SPI_SDN MBED_CONF_S2LP_SPI_SDN
54+
#else
55+
#define S2LP_SPI_SDN D7
7856
#endif
79-
#if !defined(S2LP_SPI_SDN)
80-
#define S2LP_SPI_SDN D7
57+
58+
#if defined(MBED_CONF_S2LP_TEST_PIN_TX)
59+
#define S2LP_TEST_PIN_TX MBED_CONF_S2LP_TEST_PIN_TX
60+
#else
61+
#define S2LP_TEST_PIN_TX D6
8162
#endif
82-
#if !defined(TEST_PIN_TX)
83-
#define TEST_PIN_TX D6
63+
64+
#if defined(MBED_CONF_S2LP_TEST_PIN_RX)
65+
#define S2LP_TEST_PIN_RX MBED_CONF_S2LP_TEST_PIN_RX
66+
#else
67+
#define S2LP_TEST_PIN_RX D5
8468
#endif
85-
#if !defined(TEST_PIN_RX)
86-
#define TEST_PIN_RX D5
69+
70+
#if defined(TMBED_CONF_S2LP_TEST_PIN_CSMA)
71+
#define S2LP_TEST_PIN_CSMA TMBED_CONF_S2LP_TEST_PIN_CSMA
72+
#else
73+
#define S2LP_TEST_PIN_CSMA D4
8774
#endif
88-
#if !defined(TEST_PIN_CSMA)
89-
#define TEST_PIN_CSMA D4
75+
76+
#if defined(MBED_CONF_S2LP_TEST_PIN_SPARE_1)
77+
#define S2LP_TEST_PIN_SPARE_1 MBED_CONF_S2LP_TEST_PIN_SPARE_1
78+
#else
79+
#define S2LP_TEST_PIN_SPARE_1 D2
9080
#endif
91-
#if !defined(TEST_PIN_SPARE_1)
92-
#define TEST_PIN_SPARE_1 D2
81+
82+
#if defined(MBED_CONF_S2LP_TEST_PIN_SPARE_2)
83+
#define S2LP_TEST_PIN_SPARE_2 DMBED_CONF_S2LP_TEST_PIN_SPARE_2
84+
#else
85+
#define S2LP_TEST_PIN_SPARE_2 D8
9386
#endif
94-
#if !defined(TEST_PIN_SPARE_2)
95-
#define TEST_PIN_SPARE_2 D8
87+
88+
#if defined(MBED_CONF_S2LP_SPI_GPIO0)
89+
#define S2LP_SPI_GPIO0 MBED_CONF_S2LP_SPI_GPIO0
90+
#else
91+
#define S2LP_SPI_GPIO0 A0
9692
#endif
97-
#if !defined(S2LP_SPI_GPIO0)
98-
#define S2LP_SPI_GPIO0 A0
93+
94+
#if defined(MBED_CONF_S2LP_SPI_GPIO1)
95+
#define S2LP_SPI_GPIO1 MBED_CONF_S2LP_SPI_GPIO1
96+
#else
97+
#define S2LP_SPI_GPIO1 A2
9998
#endif
100-
#if !defined(S2LP_SPI_GPIO1)
101-
#define S2LP_SPI_GPIO1 A2
99+
100+
#if defined(MBED_CONF_S2LP_SPI_GPIO2)
101+
#define S2LP_SPI_GPIO2 MBED_CONF_S2LP_SPI_GPIO2
102+
#else
103+
#define S2LP_SPI_GPIO2 A3
102104
#endif
103-
#if !defined(S2LP_SPI_GPIO2)
104-
#define S2LP_SPI_GPIO2 A3
105+
106+
#if defined(MBED_CONF_S2LP_SPI_GPIO3)
107+
#define S2LP_SPI_GPIO3 MBED_CONF_S2LP_SPI_GPIO3
108+
#else
109+
#define S2LP_SPI_GPIO3 A5
105110
#endif
106-
#if !defined(S2LP_SPI_GPIO3)
107-
#define S2LP_SPI_GPIO3 A5
111+
112+
#if defined(MBED_CONF_S2LP_I2C_SDA)
113+
#define S2LP_I2C_SDA MBED_CONF_S2LP_I2C_SDA
114+
#else
115+
#define S2LP_I2C_SDA null
108116
#endif
117+
118+
#if defined(MBED_CONF_S2LP_I2C_SCL)
119+
#define S2LP_I2C_SCL MBED_CONF_S2LP_I2C_SCL
120+
#else
121+
#define S2LP_I2C_SCL null
109122
#endif
110123

111124
#include "at24mac_s2lp.h"

targets/TARGET_STM/TARGET_STM32F4/TARGET_STM32F429xI/TARGET_MTB_STM_S2LP/PeripheralNames.h

Lines changed: 0 additions & 102 deletions
This file was deleted.

0 commit comments

Comments
 (0)