@@ -149,19 +149,18 @@ pub enum Error {
149
149
Crc ,
150
150
}
151
151
152
- // FIXME these should be "closed" traits
153
- /// SCK pin -- DO NOT IMPLEMENT THIS TRAIT
154
- pub unsafe trait SckPin < SPI > { }
152
+ /// SCK pin
153
+ pub trait SckPin < SPI > : crate :: private:: Sealed { }
155
154
156
- /// MISO pin -- DO NOT IMPLEMENT THIS TRAIT
157
- pub unsafe trait MisoPin < SPI > { }
155
+ /// MISO pin
156
+ pub trait MisoPin < SPI > : crate :: private :: Sealed { }
158
157
159
- /// MOSI pin -- DO NOT IMPLEMENT THIS TRAIT
160
- pub unsafe trait MosiPin < SPI > { }
158
+ /// MOSI pin
159
+ pub trait MosiPin < SPI > : crate :: private :: Sealed { }
161
160
162
- unsafe impl SckPin < SPI1 > for PA5 < AF5 < PushPull > > { }
161
+ impl SckPin < SPI1 > for PA5 < AF5 < PushPull > > { }
163
162
#[ cfg( any( feature = "stm32f373" , feature = "stm32f378" ) ) ]
164
- unsafe impl SckPin < SPI1 > for PA12 < AF6 < PushPull > > { }
163
+ impl SckPin < SPI1 > for PA12 < AF6 < PushPull > > { }
165
164
#[ cfg( any(
166
165
feature = "stm32f302xb" ,
167
166
feature = "stm32f302xc" ,
@@ -175,16 +174,16 @@ unsafe impl SckPin<SPI1> for PA12<AF6<PushPull>> {}
175
174
feature = "stm32f378" ,
176
175
feature = "stm32f398" ,
177
176
) ) ]
178
- unsafe impl SckPin < SPI1 > for PB3 < AF5 < PushPull > > { }
177
+ impl SckPin < SPI1 > for PB3 < AF5 < PushPull > > { }
179
178
#[ cfg( any( feature = "stm32f373" , feature = "stm32f378" ) ) ]
180
- unsafe impl SckPin < SPI1 > for PC7 < AF5 < PushPull > > { }
179
+ impl SckPin < SPI1 > for PC7 < AF5 < PushPull > > { }
181
180
182
181
#[ cfg( any( feature = "stm32f373" , feature = "stm32f378" ) ) ]
183
- unsafe impl SckPin < SPI2 > for PA8 < AF5 < PushPull > > { }
182
+ impl SckPin < SPI2 > for PA8 < AF5 < PushPull > > { }
184
183
#[ cfg( any( feature = "stm32f373" , feature = "stm32f378" ) ) ]
185
- unsafe impl SckPin < SPI2 > for PB8 < AF5 < PushPull > > { }
184
+ impl SckPin < SPI2 > for PB8 < AF5 < PushPull > > { }
186
185
#[ cfg( any( feature = "stm32f373" , feature = "stm32f378" ) ) ]
187
- unsafe impl SckPin < SPI2 > for PB10 < AF5 < PushPull > > { }
186
+ impl SckPin < SPI2 > for PB10 < AF5 < PushPull > > { }
188
187
#[ cfg( any(
189
188
feature = "stm32f301" ,
190
189
feature = "stm32f302" ,
@@ -194,11 +193,11 @@ unsafe impl SckPin<SPI2> for PB10<AF5<PushPull>> {}
194
193
feature = "stm32f358" ,
195
194
feature = "stm32f398"
196
195
) ) ]
197
- unsafe impl SckPin < SPI2 > for PB13 < AF5 < PushPull > > { }
196
+ impl SckPin < SPI2 > for PB13 < AF5 < PushPull > > { }
198
197
#[ cfg( any( feature = "stm32f373" , feature = "stm32f378" ) ) ]
199
- unsafe impl SckPin < SPI2 > for PD7 < AF5 < PushPull > > { }
198
+ impl SckPin < SPI2 > for PD7 < AF5 < PushPull > > { }
200
199
#[ cfg( any( feature = "stm32f373" , feature = "stm32f378" ) ) ]
201
- unsafe impl SckPin < SPI2 > for PD8 < AF5 < PushPull > > { }
200
+ impl SckPin < SPI2 > for PD8 < AF5 < PushPull > > { }
202
201
#[ cfg( any(
203
202
feature = "stm32f302x6" ,
204
203
feature = "stm32f302x8" ,
@@ -209,7 +208,7 @@ unsafe impl SckPin<SPI2> for PD8<AF5<PushPull>> {}
209
208
feature = "stm32f318" ,
210
209
feature = "stm32f398" ,
211
210
) ) ]
212
- unsafe impl SckPin < SPI2 > for PF1 < AF5 < PushPull > > { }
211
+ impl SckPin < SPI2 > for PF1 < AF5 < PushPull > > { }
213
212
#[ cfg( any(
214
213
feature = "stm32f302xb" ,
215
214
feature = "stm32f302xc" ,
@@ -222,7 +221,7 @@ unsafe impl SckPin<SPI2> for PF1<AF5<PushPull>> {}
222
221
feature = "stm32f358" ,
223
222
feature = "stm32f398" ,
224
223
) ) ]
225
- unsafe impl SckPin < SPI2 > for PF9 < AF5 < PushPull > > { }
224
+ impl SckPin < SPI2 > for PF9 < AF5 < PushPull > > { }
226
225
#[ cfg( any(
227
226
feature = "stm32f302xb" ,
228
227
feature = "stm32f302xc" ,
@@ -235,10 +234,10 @@ unsafe impl SckPin<SPI2> for PF9<AF5<PushPull>> {}
235
234
feature = "stm32f358" ,
236
235
feature = "stm32f398" ,
237
236
) ) ]
238
- unsafe impl SckPin < SPI2 > for PF10 < AF5 < PushPull > > { }
237
+ impl SckPin < SPI2 > for PF10 < AF5 < PushPull > > { }
239
238
240
239
#[ cfg( any( feature = "stm32f373" , feature = "stm32f378" ) ) ]
241
- unsafe impl SckPin < SPI3 > for PA1 < AF6 < PushPull > > { }
240
+ impl SckPin < SPI3 > for PA1 < AF6 < PushPull > > { }
242
241
#[ cfg( any(
243
242
feature = "stm32f302" ,
244
243
feature = "stm32f303xd" ,
@@ -248,8 +247,8 @@ unsafe impl SckPin<SPI3> for PA1<AF6<PushPull>> {}
248
247
feature = "stm32f378" ,
249
248
feature = "stm32f398" ,
250
249
) ) ]
251
- unsafe impl SckPin < SPI3 > for PB3 < AF6 < PushPull > > { }
252
- unsafe impl SckPin < SPI3 > for PC10 < AF6 < PushPull > > { }
250
+ impl SckPin < SPI3 > for PB3 < AF6 < PushPull > > { }
251
+ impl SckPin < SPI3 > for PC10 < AF6 < PushPull > > { }
253
252
254
253
#[ cfg( any(
255
254
feature = "stm32f302xd" ,
@@ -258,19 +257,19 @@ unsafe impl SckPin<SPI3> for PC10<AF6<PushPull>> {}
258
257
feature = "stm32f303xe" ,
259
258
feature = "stm32f398" ,
260
259
) ) ]
261
- unsafe impl SckPin < SPI4 > for PE2 < AF5 < PushPull > > { }
260
+ impl SckPin < SPI4 > for PE2 < AF5 < PushPull > > { }
262
261
#[ cfg( any(
263
262
feature = "stm32f302xd" ,
264
263
feature = "stm32f302xe" ,
265
264
feature = "stm32f303xd" ,
266
265
feature = "stm32f303xe" ,
267
266
feature = "stm32f398" ,
268
267
) ) ]
269
- unsafe impl SckPin < SPI4 > for PE12 < AF5 < PushPull > > { }
268
+ impl SckPin < SPI4 > for PE12 < AF5 < PushPull > > { }
270
269
271
- unsafe impl MisoPin < SPI1 > for PA6 < AF5 < PushPull > > { }
270
+ impl MisoPin < SPI1 > for PA6 < AF5 < PushPull > > { }
272
271
#[ cfg( any( feature = "stm32f373" , feature = "stm32f378" ) ) ]
273
- unsafe impl MisoPin < SPI1 > for PA13 < AF6 < PushPull > > { }
272
+ impl MisoPin < SPI1 > for PA13 < AF6 < PushPull > > { }
274
273
#[ cfg( any(
275
274
feature = "stm32f302xb" ,
276
275
feature = "stm32f302xc" ,
@@ -284,12 +283,12 @@ unsafe impl MisoPin<SPI1> for PA13<AF6<PushPull>> {}
284
283
feature = "stm32f378" ,
285
284
feature = "stm32f398" ,
286
285
) ) ]
287
- unsafe impl MisoPin < SPI1 > for PB4 < AF5 < PushPull > > { }
286
+ impl MisoPin < SPI1 > for PB4 < AF5 < PushPull > > { }
288
287
#[ cfg( any( feature = "stm32f373" , feature = "stm32f378" ) ) ]
289
- unsafe impl MisoPin < SPI1 > for PC8 < AF5 < PushPull > > { }
288
+ impl MisoPin < SPI1 > for PC8 < AF5 < PushPull > > { }
290
289
291
290
#[ cfg( any( feature = "stm32f373" , feature = "stm32f378" ) ) ]
292
- unsafe impl MisoPin < SPI2 > for PA9 < AF5 < PushPull > > { }
291
+ impl MisoPin < SPI2 > for PA9 < AF5 < PushPull > > { }
293
292
#[ cfg( any(
294
293
feature = "stm32f302x6" ,
295
294
feature = "stm32f302x8" ,
@@ -300,15 +299,15 @@ unsafe impl MisoPin<SPI2> for PA9<AF5<PushPull>> {}
300
299
feature = "stm32f318" ,
301
300
feature = "stm32f398" ,
302
301
) ) ]
303
- unsafe impl MisoPin < SPI2 > for PA10 < AF5 < PushPull > > { }
304
- unsafe impl MisoPin < SPI2 > for PB14 < AF5 < PushPull > > { }
302
+ impl MisoPin < SPI2 > for PA10 < AF5 < PushPull > > { }
303
+ impl MisoPin < SPI2 > for PB14 < AF5 < PushPull > > { }
305
304
#[ cfg( any( feature = "stm32f373" , feature = "stm32f378" ) ) ]
306
- unsafe impl MisoPin < SPI2 > for PC2 < AF5 < PushPull > > { }
305
+ impl MisoPin < SPI2 > for PC2 < AF5 < PushPull > > { }
307
306
#[ cfg( any( feature = "stm32f373" , feature = "stm32f378" ) ) ]
308
- unsafe impl MisoPin < SPI2 > for PD3 < AF5 < PushPull > > { }
307
+ impl MisoPin < SPI2 > for PD3 < AF5 < PushPull > > { }
309
308
310
309
#[ cfg( any( feature = "stm32f373" , feature = "stm32f378" ) ) ]
311
- unsafe impl MisoPin < SPI3 > for PA2 < AF6 < PushPull > > { }
310
+ impl MisoPin < SPI3 > for PA2 < AF6 < PushPull > > { }
312
311
#[ cfg( any(
313
312
feature = "stm32f302" ,
314
313
feature = "stm32f303xd" ,
@@ -318,8 +317,8 @@ unsafe impl MisoPin<SPI3> for PA2<AF6<PushPull>> {}
318
317
feature = "stm32f378" ,
319
318
feature = "stm32f398" ,
320
319
) ) ]
321
- unsafe impl MisoPin < SPI3 > for PB4 < AF6 < PushPull > > { }
322
- unsafe impl MisoPin < SPI3 > for PC11 < AF6 < PushPull > > { }
320
+ impl MisoPin < SPI3 > for PB4 < AF6 < PushPull > > { }
321
+ impl MisoPin < SPI3 > for PC11 < AF6 < PushPull > > { }
323
322
324
323
#[ cfg( any(
325
324
feature = "stm32f302xd" ,
@@ -328,27 +327,27 @@ unsafe impl MisoPin<SPI3> for PC11<AF6<PushPull>> {}
328
327
feature = "stm32f303xe" ,
329
328
feature = "stm32f398" ,
330
329
) ) ]
331
- unsafe impl MisoPin < SPI4 > for PE5 < AF5 < PushPull > > { }
330
+ impl MisoPin < SPI4 > for PE5 < AF5 < PushPull > > { }
332
331
#[ cfg( any(
333
332
feature = "stm32f302xd" ,
334
333
feature = "stm32f302xe" ,
335
334
feature = "stm32f303xd" ,
336
335
feature = "stm32f303xe" ,
337
336
feature = "stm32f398" ,
338
337
) ) ]
339
- unsafe impl MisoPin < SPI4 > for PE13 < AF5 < PushPull > > { }
338
+ impl MisoPin < SPI4 > for PE13 < AF5 < PushPull > > { }
340
339
341
- unsafe impl MosiPin < SPI1 > for PA7 < AF5 < PushPull > > { }
340
+ impl MosiPin < SPI1 > for PA7 < AF5 < PushPull > > { }
342
341
#[ cfg( any( feature = "stm32f373" , feature = "stm32f378" ) ) ]
343
- unsafe impl MosiPin < SPI1 > for PB0 < AF5 < PushPull > > { }
344
- unsafe impl MosiPin < SPI1 > for PB5 < AF5 < PushPull > > { }
342
+ impl MosiPin < SPI1 > for PB0 < AF5 < PushPull > > { }
343
+ impl MosiPin < SPI1 > for PB5 < AF5 < PushPull > > { }
345
344
#[ cfg( any( feature = "stm32f373" , feature = "stm32f378" ) ) ]
346
- unsafe impl MosiPin < SPI1 > for PC9 < AF5 < PushPull > > { }
345
+ impl MosiPin < SPI1 > for PC9 < AF5 < PushPull > > { }
347
346
#[ cfg( any( feature = "stm32f373" , feature = "stm32f378" ) ) ]
348
- unsafe impl MosiPin < SPI1 > for PF6 < AF5 < PushPull > > { }
347
+ impl MosiPin < SPI1 > for PF6 < AF5 < PushPull > > { }
349
348
350
349
#[ cfg( any( feature = "stm32f373" , feature = "stm32f378" ) ) ]
351
- unsafe impl MosiPin < SPI2 > for PA10 < AF5 < PushPull > > { }
350
+ impl MosiPin < SPI2 > for PA10 < AF5 < PushPull > > { }
352
351
#[ cfg( any(
353
352
feature = "stm32f302x6" ,
354
353
feature = "stm32f302x8" ,
@@ -359,17 +358,17 @@ unsafe impl MosiPin<SPI2> for PA10<AF5<PushPull>> {}
359
358
feature = "stm32f318" ,
360
359
feature = "stm32f398" ,
361
360
) ) ]
362
- unsafe impl MosiPin < SPI2 > for PA11 < AF5 < PushPull > > { }
363
- unsafe impl MosiPin < SPI2 > for PB15 < AF5 < PushPull > > { }
361
+ impl MosiPin < SPI2 > for PA11 < AF5 < PushPull > > { }
362
+ impl MosiPin < SPI2 > for PB15 < AF5 < PushPull > > { }
364
363
#[ cfg( any( feature = "stm32f373" , feature = "stm32f378" ) ) ]
365
- unsafe impl MisoPin < SPI2 > for PC3 < AF5 < PushPull > > { }
364
+ impl MisoPin < SPI2 > for PC3 < AF5 < PushPull > > { }
366
365
#[ cfg( any( feature = "stm32f373" , feature = "stm32f378" ) ) ]
367
- unsafe impl MisoPin < SPI2 > for PD4 < AF5 < PushPull > > { }
366
+ impl MisoPin < SPI2 > for PD4 < AF5 < PushPull > > { }
368
367
369
368
#[ cfg( any( feature = "stm32f373" , feature = "stm32f378" ) ) ]
370
- unsafe impl MisoPin < SPI3 > for PA3 < AF6 < PushPull > > { }
371
- unsafe impl MosiPin < SPI3 > for PB5 < AF6 < PushPull > > { }
372
- unsafe impl MosiPin < SPI3 > for PC12 < AF6 < PushPull > > { }
369
+ impl MisoPin < SPI3 > for PA3 < AF6 < PushPull > > { }
370
+ impl MosiPin < SPI3 > for PB5 < AF6 < PushPull > > { }
371
+ impl MosiPin < SPI3 > for PC12 < AF6 < PushPull > > { }
373
372
374
373
#[ cfg( any(
375
374
feature = "stm32f302xd" ,
@@ -378,15 +377,15 @@ unsafe impl MosiPin<SPI3> for PC12<AF6<PushPull>> {}
378
377
feature = "stm32f303xe" ,
379
378
feature = "stm32f398" ,
380
379
) ) ]
381
- unsafe impl MosiPin < SPI4 > for PE6 < AF5 < PushPull > > { }
380
+ impl MosiPin < SPI4 > for PE6 < AF5 < PushPull > > { }
382
381
#[ cfg( any(
383
382
feature = "stm32f302xd" ,
384
383
feature = "stm32f302xe" ,
385
384
feature = "stm32f303xd" ,
386
385
feature = "stm32f303xe" ,
387
386
feature = "stm32f398" ,
388
387
) ) ]
389
- unsafe impl MosiPin < SPI4 > for PE14 < AF5 < PushPull > > { }
388
+ impl MosiPin < SPI4 > for PE14 < AF5 < PushPull > > { }
390
389
391
390
/// Configuration trait for the Word Size
392
391
/// used by the SPI peripheral
0 commit comments