Skip to content

Commit 2ed1dc2

Browse files
committed
Add HAL API for qspi pinmap
Add the functions qspi_master_sclk_pinmap, qspi_master_ssel_pinmap and qspi_master_data0_pinmap-qspi_master_data3_pinmap to all targets with qspi support.
1 parent be492fe commit 2ed1dc2

File tree

6 files changed

+205
-0
lines changed

6 files changed

+205
-0
lines changed

hal/qspi_api.h

Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@
2121
#define MBED_QSPI_API_H
2222

2323
#include "device.h"
24+
#include "pinmap.h"
2425
#include <stdbool.h>
2526

2627
#if DEVICE_QSPI
@@ -182,6 +183,60 @@ qspi_status_t qspi_command_transfer(qspi_t *obj, const qspi_command_t *command,
182183
*/
183184
qspi_status_t qspi_read(qspi_t *obj, const qspi_command_t *command, void *data, size_t *length);
184185

186+
/** Get the pins that support QSPI SCLK
187+
*
188+
* Return a PinMap array of pins that support QSPI SCLK in
189+
* master mode. The array is terminated with {NC, NC, 0}.
190+
*
191+
* @return PinMap array
192+
*/
193+
const PinMap *qspi_master_sclk_pinmap(void);
194+
195+
/** Get the pins that support QSPI SSEL
196+
*
197+
* Return a PinMap array of pins that support QSPI SSEL in
198+
* master mode. The array is terminated with {NC, NC, 0}.
199+
*
200+
* @return PinMap array
201+
*/
202+
const PinMap *qspi_master_ssel_pinmap(void);
203+
204+
/** Get the pins that support QSPI DATA0
205+
*
206+
* Return a PinMap array of pins that support QSPI DATA0 in
207+
* master mode. The array is terminated with {NC, NC, 0}.
208+
*
209+
* @return PinMap array
210+
*/
211+
const PinMap *qspi_master_data0_pinmap(void);
212+
213+
/** Get the pins that support QSPI DATA1
214+
*
215+
* Return a PinMap array of pins that support QSPI DATA1 in
216+
* master mode. The array is terminated with {NC, NC, 0}.
217+
*
218+
* @return PinMap array
219+
*/
220+
const PinMap *qspi_master_data1_pinmap(void);
221+
222+
/** Get the pins that support QSPI DATA2
223+
*
224+
* Return a PinMap array of pins that support QSPI DATA2 in
225+
* master mode. The array is terminated with {NC, NC, 0}.
226+
*
227+
* @return PinMap array
228+
*/
229+
const PinMap *qspi_master_data2_pinmap(void);
230+
231+
/** Get the pins that support QSPI DATA3
232+
*
233+
* Return a PinMap array of pins that support QSPI DATA3 in
234+
* master mode. The array is terminated with {NC, NC, 0}.
235+
*
236+
* @return PinMap array
237+
*/
238+
const PinMap *qspi_master_data3_pinmap(void);
239+
185240
/**@}*/
186241

187242
#ifdef __cplusplus

targets/TARGET_Freescale/TARGET_MCUXpresso_MCUS/api/qspi_api.c

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -399,5 +399,35 @@ qspi_status_t qspi_command_transfer(qspi_t *obj, const qspi_command_t *command,
399399
return QSPI_STATUS_OK;
400400
}
401401

402+
const PinMap *qspi_master_sclk_pinmap()
403+
{
404+
return PinMap_QSPI_SCLK;
405+
}
406+
407+
const PinMap *qspi_master_ssel_pinmap()
408+
{
409+
return PinMap_QSPI_SSEL;
410+
}
411+
412+
const PinMap *qspi_master_data0_pinmap()
413+
{
414+
return PinMap_QSPI_DATA0;
415+
}
416+
417+
const PinMap *qspi_master_data1_pinmap()
418+
{
419+
return PinMap_QSPI_DATA1;
420+
}
421+
422+
const PinMap *qspi_master_data2_pinmap()
423+
{
424+
return PinMap_QSPI_DATA2;
425+
}
426+
427+
const PinMap *qspi_master_data3_pinmap()
428+
{
429+
return PinMap_QSPI_DATA3;
430+
}
431+
402432
#endif
403433

targets/TARGET_NORDIC/TARGET_NRF5x/qspi_api.c

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -522,6 +522,36 @@ qspi_status_t sfdp_read(qspi_t *obj, const qspi_command_t *command, void *data,
522522
}
523523
}
524524

525+
const PinMap *qspi_master_sclk_pinmap()
526+
{
527+
return PinMap_QSPI_SCLK;
528+
}
529+
530+
const PinMap *qspi_master_ssel_pinmap()
531+
{
532+
return PinMap_QSPI_SSEL;
533+
}
534+
535+
const PinMap *qspi_master_data0_pinmap()
536+
{
537+
return PinMap_QSPI_DATA0;
538+
}
539+
540+
const PinMap *qspi_master_data1_pinmap()
541+
{
542+
return PinMap_QSPI_DATA1;
543+
}
544+
545+
const PinMap *qspi_master_data2_pinmap()
546+
{
547+
return PinMap_QSPI_DATA2;
548+
}
549+
550+
const PinMap *qspi_master_data3_pinmap()
551+
{
552+
return PinMap_QSPI_DATA3;
553+
}
554+
525555

526556
#endif
527557

targets/TARGET_NXP/TARGET_MCUXpresso_MCUS/TARGET_LPC/qspi_api.c

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -338,5 +338,35 @@ qspi_status_t qspi_command_transfer(qspi_t *obj, const qspi_command_t *command,
338338
return QSPI_STATUS_OK;
339339
}
340340

341+
const PinMap *qspi_master_sclk_pinmap()
342+
{
343+
return PinMap_QSPI_SCLK;
344+
}
345+
346+
const PinMap *qspi_master_ssel_pinmap()
347+
{
348+
return PinMap_QSPI_SSEL;
349+
}
350+
351+
const PinMap *qspi_master_data0_pinmap()
352+
{
353+
return PinMap_QSPI_DATA0;
354+
}
355+
356+
const PinMap *qspi_master_data1_pinmap()
357+
{
358+
return PinMap_QSPI_DATA1;
359+
}
360+
361+
const PinMap *qspi_master_data2_pinmap()
362+
{
363+
return PinMap_QSPI_DATA2;
364+
}
365+
366+
const PinMap *qspi_master_data3_pinmap()
367+
{
368+
return PinMap_QSPI_DATA3;
369+
}
370+
341371
#endif
342372

targets/TARGET_STM/qspi_api.c

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -320,6 +320,36 @@ qspi_status_t qspi_command_transfer(qspi_t *obj, const qspi_command_t *command,
320320
return status;
321321
}
322322

323+
const PinMap *qspi_master_sclk_pinmap()
324+
{
325+
return PinMap_QSPI_SCLK;
326+
}
327+
328+
const PinMap *qspi_master_ssel_pinmap()
329+
{
330+
return PinMap_QSPI_SSEL;
331+
}
332+
333+
const PinMap *qspi_master_data0_pinmap()
334+
{
335+
return PinMap_QSPI_DATA0;
336+
}
337+
338+
const PinMap *qspi_master_data1_pinmap()
339+
{
340+
return PinMap_QSPI_DATA1;
341+
}
342+
343+
const PinMap *qspi_master_data2_pinmap()
344+
{
345+
return PinMap_QSPI_DATA2;
346+
}
347+
348+
const PinMap *qspi_master_data3_pinmap()
349+
{
350+
return PinMap_QSPI_DATA3;
351+
}
352+
323353
#endif
324354

325355
/** @}*/

targets/TARGET_Silicon_Labs/TARGET_EFM32/qspi_api.c

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -363,4 +363,34 @@ qspi_status_t qspi_read(qspi_t *obj, const qspi_command_t *command, void *data,
363363
return QSPI_STATUS_OK;
364364
}
365365

366+
const PinMap *qspi_master_sclk_pinmap()
367+
{
368+
return PinMap_QSPI_SCLK;
369+
}
370+
371+
const PinMap *qspi_master_ssel_pinmap()
372+
{
373+
return PinMap_QSPI_CS0;
374+
}
375+
376+
const PinMap *qspi_master_data0_pinmap()
377+
{
378+
return PinMap_QSPI_DQ0;
379+
}
380+
381+
const PinMap *qspi_master_data1_pinmap()
382+
{
383+
return PinMap_QSPI_DQ1;
384+
}
385+
386+
const PinMap *qspi_master_data2_pinmap()
387+
{
388+
return PinMap_QSPI_DQ2;
389+
}
390+
391+
const PinMap *qspi_master_data3_pinmap()
392+
{
393+
return PinMap_QSPI_DQ3;
394+
}
395+
366396
#endif /* DEVICE_QSPI && QSPI_PRESENT */

0 commit comments

Comments
 (0)