diff --git a/configs/ea3131/src/ea3131_internal.h b/configs/ea3131/src/ea3131_internal.h index 58368e80e5c..0f28ea1cc69 100755 --- a/configs/ea3131/src/ea3131_internal.h +++ b/configs/ea3131/src/ea3131_internal.h @@ -45,20 +45,24 @@ #include #include +#include "lpc313x_ioconfig.h" + /************************************************************************************ * Definitions ************************************************************************************/ /* EA3131L GPIOs ********************************************************************/ -/* LEDs */ +/* LEDs -- interface through an I2C GPIO expander */ /* BUTTONS -- NOTE that some have EXTI interrupts configured */ /* SPI Chip Selects */ +/* SPI NOR flash is the only device on SPI. SPI_CS_OUT0 is its chip select */ -/* USB Soft Connect Pullup*/ +#define SPINOR_CS IOCONFIG_SPI_CSOUT0 +/* USB Soft Connect Pullup -- NONE */ /************************************************************************************ * Public Types diff --git a/configs/ea3131/src/up_spi.c b/configs/ea3131/src/up_spi.c index 7eef2db6644..66c9d228f35 100755 --- a/configs/ea3131/src/up_spi.c +++ b/configs/ea3131/src/up_spi.c @@ -100,6 +100,7 @@ void weak_function lpc313x_spiinitialize(void) * architecture. */ + gpio_outputhigh(LPC313X_IOCONFIG_SPI, SPINOR_CS); } /**************************************************************************** @@ -130,6 +131,18 @@ void weak_function lpc313x_spiinitialize(void) void lpc313x_spiselect(FAR struct spi_dev_s *dev, enum spi_dev_e devid, bool selected) { spidbg("devid: %d CS: %s\n", (int)devid, selected ? "assert" : "de-assert"); + + if (devid == SPIDEV_FLASH) + { + if (selected) + { + gpio_outputlow(LPC313X_IOCONFIG_SPI, SPINOR_CS); + } + else + { + gpio_outputhigh(LPC313X_IOCONFIG_SPI, SPINOR_CS); + } + } } uint8_t lpc313x_spistatus(FAR struct spi_dev_s *dev, enum spi_dev_e devid)