From 10bdfcfdbe13d342c77f824cb6911a918e9b6126 Mon Sep 17 00:00:00 2001 From: qianfan Zhao Date: Tue, 16 Oct 2018 15:02:54 +0800 Subject: [PATCH] boards: same70: Enable SPI0 on dts Enable the SPI interface on Arduino Shield(J505 Header) default Signed-off-by: qianfan Zhao --- boards/arm/sam_e70_xplained/board.h | 2 ++ .../arm/sam_e70_xplained/doc/sam_e70_xplained.rst | 2 ++ boards/arm/sam_e70_xplained/sam_e70_xplained.dts | 4 ++++ boards/arm/sam_e70_xplained/sam_e70_xplained.yaml | 1 + soc/arm/atmel_sam/same70/soc_pinmap.h | 14 ++++++++++++++ 5 files changed, 23 insertions(+) diff --git a/boards/arm/sam_e70_xplained/board.h b/boards/arm/sam_e70_xplained/board.h index e9cd18e4b42..2c6416dc860 100644 --- a/boards/arm/sam_e70_xplained/board.h +++ b/boards/arm/sam_e70_xplained/board.h @@ -9,4 +9,6 @@ #include +#define PINS_SPI0_CS {PIN_SPI0_CS3_PD27} + #endif /* _INC_BOARD_H_ */ diff --git a/boards/arm/sam_e70_xplained/doc/sam_e70_xplained.rst b/boards/arm/sam_e70_xplained/doc/sam_e70_xplained.rst index 6cbd63f1d1c..2fdd4b2004f 100644 --- a/boards/arm/sam_e70_xplained/doc/sam_e70_xplained.rst +++ b/boards/arm/sam_e70_xplained/doc/sam_e70_xplained.rst @@ -50,6 +50,8 @@ features: +-----------+------------+-------------------------------------+ | I2C | on-chip | i2c | +-----------+------------+-------------------------------------+ +| SPI | on-chip | spi | ++-----------+------------+-------------------------------------+ | ETHERNET | on-chip | ethernet | +-----------+------------+-------------------------------------+ | WATCHDOG | on-chip | watchdog | diff --git a/boards/arm/sam_e70_xplained/sam_e70_xplained.dts b/boards/arm/sam_e70_xplained/sam_e70_xplained.dts index b1d7d549ce4..0e5f5e54a6a 100644 --- a/boards/arm/sam_e70_xplained/sam_e70_xplained.dts +++ b/boards/arm/sam_e70_xplained/sam_e70_xplained.dts @@ -65,6 +65,10 @@ status = "ok"; }; +&spi0 { + status = "ok"; +}; + &usart1 { current-speed = <115200>; status = "ok"; diff --git a/boards/arm/sam_e70_xplained/sam_e70_xplained.yaml b/boards/arm/sam_e70_xplained/sam_e70_xplained.yaml index 16f2c73ef16..65dca15791d 100644 --- a/boards/arm/sam_e70_xplained/sam_e70_xplained.yaml +++ b/boards/arm/sam_e70_xplained/sam_e70_xplained.yaml @@ -9,3 +9,4 @@ supported: - netif:eth - adc - gpio + - spi diff --git a/soc/arm/atmel_sam/same70/soc_pinmap.h b/soc/arm/atmel_sam/same70/soc_pinmap.h index 90e3403a1e9..d19c43d043b 100644 --- a/soc/arm/atmel_sam/same70/soc_pinmap.h +++ b/soc/arm/atmel_sam/same70/soc_pinmap.h @@ -137,10 +137,24 @@ /* Serial Peripheral Interface (SPI) */ +#define PIN_SPI0_CS0_PB2 {PIO_PB2D_SPI0_NPCS0, PIOB, ID_PIOB, SOC_GPIO_FUNC_D} +#define PIN_SPI0_CS1_PA31 {PIO_PA31A_SPI0_NPCS1, PIOA, ID_PIOA, SOC_GPIO_FUNC_A} +#define PIN_SPI0_CS1_PD25 {PIO_PD25B_SPI0_NPCS1, PIOD, ID_PIOD, SOC_GPIO_FUNC_B} +#define PIN_SPI0_CS2_PD12 {PIO_PD12C_SPI0_NPCS2, PIOD, ID_PIOD, SOC_GPIO_FUNC_C} +#define PIN_SPI0_CS3_PD27 {PIO_PD27B_SPI0_NPCS3, PIOD, ID_PIOD, SOC_GPIO_FUNC_B} + #define PINS_SPI0_MASK \ (PIO_PD20B_SPI0_MISO | PIO_PD21B_SPI0_MOSI | PIO_PD22B_SPI0_SPCK) #define PINS_SPI0 {PINS_SPI0_MASK, PIOD, ID_PIOD, SOC_GPIO_FUNC_B} +#define PIN_SPI1_CS0_PC25 {PIO_PC25C_SPI1_NPCS0, PIOC, ID_PIOC, SOC_GPIO_FUNC_C} +#define PIN_SPI1_CS1_PC28 {PIO_PC28C_SPI1_NPCS1, PIOC, ID_PIOC, SOC_GPIO_FUNC_C} +#define PIN_SPI1_CS1_PD0 {PIO_PD0C_SPI1_NPCS1, PIOD, ID_PIOD, SOC_GPIO_FUNC_C} +#define PIN_SPI1_CS2_PC29 {PIO_PC29C_SPI1_NPCS2, PIOC, ID_PIOC, SOC_GPIO_FUNC_C} +#define PIN_SPI1_CS2_PD1 {PIO_PD1C_SPI1_NPCS2, PIOD, ID_PIOD, SOC_GPIO_FUNC_C} +#define PIN_SPI1_CS3_PC30 {PIO_PC30C_SPI1_NPCS3, PIOC, ID_PIOC, SOC_GPIO_FUNC_C} +#define PIN_SPI1_CS3_PD2 {PIO_PD2C_SPI1_NPCS3, PIOD, ID_PIOD, SOC_GPIO_FUNC_C} + #define PINS_SPI1_MASK \ (PIO_PC26C_SPI1_MISO | PIO_PC27C_SPI1_MOSI | PIO_PC24C_SPI1_SPCK) #define PINS_SPI1 {PINS_SPI1_MASK, PIOC, ID_PIOC, SOC_GPIO_FUNC_C}