Commit Graph

3395 Commits

Author SHA1 Message Date
Gregory Nutt
b2755708bc STM32GG Starter Kit: Add Makefile and boot logic 2014-11-03 16:26:55 -06:00
Gregory Nutt
cfbad6f5d8 STM32GG Starter Kit: Add Kconfig and linker script files 2014-11-03 16:22:29 -06:00
Gregory Nutt
92b6c8f325 EFM32GG: Add a few files for the starter kit 2014-11-03 16:13:12 -06:00
Gregory Nutt
9fd42cdcfc Update document and README 2014-10-30 10:24:42 -06:00
Gregory Nutt
aed8195155 Fix all yahoo links. From Magnus Templing 2014-10-30 09:39:23 -06:00
Gregory Nutt
adb022054b Fix typo introduced into a Kconfig file in the last few days. Thanks to Sebastien Lorquet 2014-10-30 08:18:58 -06:00
Gregory Nutt
138114dfd5 Remove some dangling whitespace 2014-10-30 06:57:43 -06:00
Gregory Nutt
6090a5a461 Documentation Update 2014-10-30 06:56:30 -06:00
Gregory Nutt
8247bf3e1c SAM4E-EK: Fix an error in USART1 pin number 2014-10-29 17:29:21 -06:00
Gregory Nutt
627e6301e0 EFM32 Gecko Starter Kit: Calibrate delay loops, update README 2014-10-29 12:31:55 -06:00
Gregory Nutt
33f454a011 EFM32 Gecko Starter Kit: Switch to LEUART0 as the default console 2014-10-29 11:43:03 -06:00
Gregory Nutt
e97ef669ed EFM32: Minor serial interrupt mask change; Add LEUART0 board support 2014-10-29 08:04:29 -06:00
Gregory Nutt
714464405d Fix a few more EFM32 integration bugs 2014-10-28 19:02:21 -06:00
Gregory Nutt
2326ea0307 EFM32: Need to configure UART GPIOs as outputs 2014-10-28 14:50:15 -06:00
Gregory Nutt
f8b2f291b4 EFM32: Fix GPIO configuration logic; Add missing board initializatin logic; Fix LED naming 2014-10-28 10:39:57 -06:00
Gregory Nutt
a839463322 EFM32G: Fix typo in memory map header file 2014-10-28 09:26:06 -06:00
Gregory Nutt
8595f421ee EFM32: Correct a typo in LFXO bit in clock configuration 2014-10-28 08:59:27 -06:00
Gregory Nutt
89605a5e78 EFM32: Update a configuration; Compile fix for when DEBUG is enabled 2014-10-28 07:24:04 -06:00
Gregory Nutt
4c36103407 Refresh a configuration 2014-10-28 00:11:40 -06:00
Gregory Nutt
afe6c95da3 Refresh configuration 2014-10-27 13:12:19 -06:00
Gregory Nutt
dd4d482fe2 Rename CONFIG_STM32_HAVE_USARTn to CONFIG_STM32_HAVE_UARTn for n-4,5,7,8 2014-10-27 11:29:43 -06:00
Gregory Nutt
854dbb7d65 SAM4E-EK: Add -fno-strict-aliasing 2014-10-25 15:23:14 -06:00
Gregory Nutt
6c03fd7ad1 EFM32: Correct handling of DMA descriptors; Add initialization of DMA CTRLBASE 2014-10-25 14:55:02 -06:00
Gregory Nutt
b629ab2862 SAM4E-EK: Add support for PHY insterrupt 2014-10-24 12:28:57 -06:00
Gregory Nutt
a4dde0c527 Kconfig: Allow select of standard board properties for custom board 2014-10-24 09:57:32 -06:00
Gregory Nutt
e315a6d500 SAM4E: Fix options to select GPIO interrupts in Kconfig 2014-10-24 09:29:01 -06:00
Gregory Nutt
8712d1115c Refresh SAM4E configurations 2014-10-23 10:16:00 -06:00
Gregory Nutt
bdbe5393e1 Add README for non-existent port to the EFM32GG-STK3700; fix typos in related README files 2014-10-22 14:32:25 -06:00
Gregory Nutt
ef4a649372 Add logic to manage BC_EN signal 2014-10-22 14:27:05 -06:00
Gregory Nutt
33015d6018 EFM32: Add buton interrupt handling for the Olimex board 2014-10-21 13:51:30 -06:00
Gregory Nutt
b8d841c9d2 The olimex-efm32g880f128-stk now defaults to use LEUART1 as the serial console. Also fixes lots of compile bugs from the original LEUART checkin 2014-10-21 11:38:51 -06:00
Gregory Nutt
d39eb3ade7 EFM32: Add LFA and LFB clock support 2014-10-21 10:45:33 -06:00
Gregory Nutt
c688cda22a stm32f429i-disco: add wrapper for spi5 evice
initializing

As long as the method up_spiinitialize recognized the initialized state of the
spi device by the spi enable flag of the cr1 register, it isn't safe to disable
the spi device outside of the nuttx spi interface structure. But this has to be
done as long as the nuttx spi interface doesn't support bidirectional data
transfer for multiple devices share one spi bus. This wrapper store the
initialized state of the spi device after the first initializing and should be
used by each driver who shares the spi5 bus.

Note! Understand this as temporary workaround.

Signed-off-by: Marco Krahl <ocram.lhark@gmail.com>
2014-10-20 15:36:11 -06:00
Gregory Nutt
4c470720d0 stm32f429i-disco: add new platform config
This adds a new default platform configuration to support the lcd device
connected to the stm32f429i-disco board.

Signed-off-by: Marco Krahl <ocram.lhark@gmail.com>
2014-10-20 15:33:25 -06:00
Gregory Nutt
bf4ad09e6e stm32f429i-disco: enable usage of ili93414ws
This enables build and configuration of the ili94314ws sub driver.

Signed-off-by: Marco Krahl <ocram.lhark@gmail.com>
2014-10-20 15:24:24 -06:00
Gregory Nutt
e597d07d42 stm32f429i-disco: implements lcd initializing
This enables the initializing of the lcd device connected on the
stm32f429i-disco. The following methods are provided:
- up_lcdinitialize
- up_lcduninitialize
- up_lcdgetdev

The corresponding ili9341 lcd device in the nuttx driver section can be
configured by Kconfig. Interface 0 is used by default.

Signed-off-by: Marco Krahl <ocram.lhark@gmail.com>
2014-10-20 15:21:48 -06:00
Gregory Nutt
f02de7c7ec stm32f429i-disco: implements ili9341 interface
This add a new sub driver ili93414ws which implements the ili9341
interface. This allows to control the ili9341 lcd display of the
stm32f429i-disco board. This also modifies the board specific header to
make the entry point to the sub driver known.

Generally the display supports two different ways to drawing pixel data. This
can be done by RGB interface or MCU interface. Second one is supported by this
driver.

The configuration of the MCU interface is fixed by the hardware pinout.
In the case of the stm32f429i-disco board it is a 4-wire serial (spi)
interface. The display is connected on spi5 and acts as a slave device.
It supports half duplex bidirectional mode for transmitting and receiving data.

Nuttx spi interface only support full duplex so the interface can not be used
for the driver in conventional way. Therefore the driver has its own logic for
the communication with the spi5 device.

But if multiple devices share the same spi5 bus, e.g. if MEMS support enabled
the spi bus must be locked to avoid inconsistency. This is done by enable
CONFIG_STM32_SPI5 in the nuttx configuration. In this case the driver uses the
spi_dev_s instance for the spi5 port to interact with the nuttx spi interface,
e.g. using method SPI_LOCK to lock the bus for the current usage. So it is safe
to share the spi bus. Keep in mind this is a possible workaround.
I would be happy if nuttx spi interface supports different spi modes other
than full duplex only. Are there any plans?

Futhermore the driver supports a few configurable settings:

1. SPI Frequency.

This allows to configure the spi frequency for the communication with the
display. As a result of the spi devices of the stm32f429 only allow fixed
frequency by divider depending on PCLK1, it is not possible to configure each
spi clock we want. A divider of 4, what means ~10Mhz spi clock, gives me the
best results and should be near the upper limit.

2. SPI 16-bit mode.

This allows to setup the spi hardware to 16-bit mode for read or write
operations when receiving or transmitting pixel data from or to the gram of the
display. This is not documented in the ili9341 reference manual but this trick
works just fine because we use only one read or write operation for each pixel,
instead two. This gives a small performance boost.

The driver implements all functions described in the header (see
include/nuttx/lcd/ili9341.h).
Note! Using the backlight function has no effect, because the board
doesn't support controlling of the backlight in the current hardware
layout.

Todo: Add support for dma transfer for writing pixel data to the displays gram.

Signed-off-by: Marco Krahl <ocram.lhark@gmail.com>
2014-10-20 15:17:56 -06:00
Gregory Nutt
3035f1a88f stm32f429i-disco: Fix obsolete SPI5 dependency. From Marco Krahl 2014-10-20 15:10:50 -06:00
Gregory Nutt
94f5d3427d Update README files 2014-10-20 15:08:35 -06:00
Gregory Nutt
468b004fcb Add board support for the Olimex EFM32G8809128 STK 2014-10-20 12:00:37 -06:00
Gregory Nutt
fbaa55e416 EFM32 Gecko Starter Kit: Must initialize LEDs on boot 2014-10-20 11:52:31 -06:00
Gregory Nutt
ea3024c529 Merge branch 'efm32' 2014-10-20 08:15:53 -06:00
Gregory Nutt
180c0e9dec Add some UART configuration logic (still incomplete) 2014-10-19 16:42:15 -06:00
Gregory Nutt
4d6f0a7708 Basic clock configuration logic 2014-10-19 11:08:56 -06:00
Gregory Nutt
17403fe074 Add frame for EFM32 GPIO logic (empty functions) 2014-10-18 18:40:08 -06:00
Gregory Nutt
5842b5d705 Need to enable the standard serial driver for NSH 2014-10-18 16:15:14 -06:00
Gregory Nutt
192ef77d68 Use UART0 for the serial console 2014-10-18 12:47:45 -06:00
Gregory Nutt
d707a29c35 Add board XTAL definitions 2014-10-18 12:07:34 -06:00
Gregory Nutt
d359e4bf3f Add EFM32 CMU header file 2014-10-18 09:26:56 -06:00
Gregory Nutt
b327a408a4 Add EFM32 Memory Maps 2014-10-17 16:43:52 -06:00