aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--demos/ARM7-AT91SAM7S-FATFS-GCC/main.c6
-rw-r--r--demos/ARM7-AT91SAM7S-FATFS-GCC/mcuconf.h4
-rw-r--r--demos/ARM7-AT91SAM7X-FATFS-GCC/mcuconf.h4
-rw-r--r--os/hal/platforms/AT91SAM7/spi_lld.h4
4 files changed, 15 insertions, 3 deletions
diff --git a/demos/ARM7-AT91SAM7S-FATFS-GCC/main.c b/demos/ARM7-AT91SAM7S-FATFS-GCC/main.c
index 478d2a606..5ebd0b9ff 100644
--- a/demos/ARM7-AT91SAM7S-FATFS-GCC/main.c
+++ b/demos/ARM7-AT91SAM7S-FATFS-GCC/main.c
@@ -45,17 +45,17 @@ static bool_t fs_ready = FALSE;
/* Maximum speed SPI configuration (__MHz, NCPHA=1, CPOL=0).*/
static SPIConfig hs_spicfg = {
+ NULL,
IOPORT1,
PIOA_MMC_NPCS0,
- AT91C_SPI_MSTR | AT91C_SPI_MODFDIS,
(MAX_SPI_BITRATE << 8) | AT91C_SPI_NCPHA | AT91C_SPI_BITS_8
};
/* Low speed SPI configuration (192KHz, NCPHA=1, CPOL=0).*/
static SPIConfig ls_spicfg = {
+ NULL,
IOPORT1,
PIOA_MMC_NPCS0,
- AT91C_SPI_MSTR | AT91C_SPI_MODFDIS,
(MIN_SPI_BITRATE << 8) | AT91C_SPI_NCPHA | AT91C_SPI_BITS_8
};
@@ -320,7 +320,7 @@ int main(int argc, char **argv) {
*/
palSetPadMode(IOPORT1, PIOA_MMC_NPCS0, PAL_MODE_OUTPUT_PUSHPULL);
palSetPad(IOPORT1, PIOA_MMC_NPCS0);
- mmcObjectInit(&MMCD1, &SPID,
+ mmcObjectInit(&MMCD1, &SPID1,
&ls_spicfg, &hs_spicfg,
mmc_is_protected, mmc_is_inserted);
mmcStart(&MMCD1, &mmc_cfg);
diff --git a/demos/ARM7-AT91SAM7S-FATFS-GCC/mcuconf.h b/demos/ARM7-AT91SAM7S-FATFS-GCC/mcuconf.h
index a8c41b07b..27117bfc7 100644
--- a/demos/ARM7-AT91SAM7S-FATFS-GCC/mcuconf.h
+++ b/demos/ARM7-AT91SAM7S-FATFS-GCC/mcuconf.h
@@ -57,3 +57,7 @@
* SPI driver system settings.
*/
#define USE_AT91SAM7_SPI TRUE
+#define AT91SAM7_SPI_USE_SPI0 TRUE
+#define AT91SAM7_SPI_USE_SPI1 FALSE
+#define AT91SAM7_SPI0_PRIORITY (AT91C_AIC_PRIOR_HIGHEST - 1)
+#define AT91SAM7_SPI1_PRIORITY (AT91C_AIC_PRIOR_HIGHEST - 1)
diff --git a/demos/ARM7-AT91SAM7X-FATFS-GCC/mcuconf.h b/demos/ARM7-AT91SAM7X-FATFS-GCC/mcuconf.h
index a8c41b07b..7229a7e8a 100644
--- a/demos/ARM7-AT91SAM7X-FATFS-GCC/mcuconf.h
+++ b/demos/ARM7-AT91SAM7X-FATFS-GCC/mcuconf.h
@@ -57,3 +57,7 @@
* SPI driver system settings.
*/
#define USE_AT91SAM7_SPI TRUE
+#define AT91SAM7_SPI_USE_SPI0 TRUE
+#define AT91SAM7_SPI_USE_SPI1 TRUE
+#define AT91SAM7_SPI0_PRIORITY (AT91C_AIC_PRIOR_HIGHEST - 1)
+#define AT91SAM7_SPI1_PRIORITY (AT91C_AIC_PRIOR_HIGHEST - 1)
diff --git a/os/hal/platforms/AT91SAM7/spi_lld.h b/os/hal/platforms/AT91SAM7/spi_lld.h
index db896fe18..d887ad04b 100644
--- a/os/hal/platforms/AT91SAM7/spi_lld.h
+++ b/os/hal/platforms/AT91SAM7/spi_lld.h
@@ -95,6 +95,10 @@
/* Derived constants and error checks. */
/*===========================================================================*/
+#if defined (AT91C_BASE_SPI) && AT91SAM7_SPI_USE_SPI1
+#error "SPI1 not present"
+#endif
+
#if !AT91SAM7_SPI_USE_SPI0 && !AT91SAM7_SPI_USE_SPI1
#error "SPI driver activated but no SPI peripheral assigned"
#endif