Commit Graph

292 Commits

Author SHA1 Message Date
Gregory Nutt
9f2a839ac3 For STM32 boards, rename up_spiinitialize to stm32_spibus_initialize 2016-01-26 12:21:39 -06:00
Gregory Nutt
de50bc82a7 Remove CONFIG_SPI_OWNBUS: Now it is not just a good idea, it is the law 2016-01-23 18:21:36 -06:00
Gregory Nutt
9535c909d3 Rename CONFIG_SYSTEM_INIFILE to CONFIG_FSUTILS_INIFILE 2016-01-20 17:11:48 -06:00
Gregory Nutt
004f4b8896 All bash scripts should be marked executable 2016-01-15 07:54:27 -06:00
Gregory Nutt
2a5bdf230c Merge remote-tracking branch 'origin/master' into windeps 2016-01-09 16:38:13 -06:00
Gregory Nutt
9e548d34c3 mkdeps.sh and mkdeps.bat have been deleted. All configurations must now use the compiler mkeps prograqm 2016-01-09 16:06:15 -06:00
Gregory Nutt
e46cd30c14 Change use of mknulldeps.sh to mkwindeps.sh 2016-01-09 14:13:44 -06:00
Gregory Nutt
b90f5ba7f4 Remove CONFIG_DISCRETE_IO from all defconfig files 2015-12-15 08:41:10 -06:00
Gregory Nutt
c41449b12a Rename CONFIG_ARMV7M_MPU to CONFIG_ARM_MPU so that we can reuse the configuration settings for the ARMV7R MPU 2015-12-14 13:56:56 -06:00
Gregory Nutt
dde6ba85a3 STM32F429i Discovery uses CCM procfs and so needs FS_PROCFS_REGISTER=y 2015-12-01 15:03:39 -06:00
Gregory Nutt
651bd9e8ad Rename CONFIG_LOOP to CONFIG_DEV_LOOP 2015-11-25 17:11:27 -06:00
Gregory Nutt
175d248af1 Refresh all configurations that have SMARTFS enabled. They should have MKSMARTFS enabled for backward compatibility. 2015-11-23 11:20:47 -06:00
Gregory Nutt
faa9f50e53 Fix several build errors detected by tools/testbuil.sh, most configuration problems 2015-11-18 14:35:08 -06:00
Alan Carvalho de Assis
0a3d0ec1f5 configs/stm32f429i-disco/src/stm32_nsh.c file calculated partition boundries based on page block sizes but mtd_partition is expecting calculations based on erase block size. From Alan Carvalho de Assis. 2015-11-16 10:44:54 -06:00
Gregory Nutt
c8ee1c2061 STM32F429i-Discovery: Need to add pin disambiguation due to changes to pinmap header files 2015-11-01 17:40:30 -06:00
Gregory Nutt
b28bd72a48 Standardize naming of user LEDs interface functions 2015-11-01 12:45:58 -06:00
Gregory Nutt
f56ed529e5 Remove prototypes for all user LED interfaces from board.h header files 2015-11-01 10:53:34 -06:00
Gregory Nutt
893bd9c7b5 Rename board_led_off to board_autoled_off 2015-11-01 09:10:08 -06:00
Gregory Nutt
78f19bbefb Rename board_led_on to board_autoled_on 2015-11-01 09:07:36 -06:00
Gregory Nutt
88c506d843 Rename board_led_initialize to board_autoled_initiaize 2015-11-01 09:03:01 -06:00
Gregory Nutt
2b88bc7119 Standardize the width of all comment boxes in C header files 2015-10-03 07:41:15 -06:00
Gregory Nutt
f696caa6f4 Standardize the width of all comment boxes in C files 2015-10-03 07:25:23 -06:00
Gregory Nutt
e6e46f830b Standardize the width of all comment boxes in C files 2015-10-02 17:43:08 -06:00
Gregory Nutt
37111e6b2c Eliminate warnings 2015-09-08 10:19:34 -06:00
Paul A. Patience
55d8aee826 Simplify configs/ Makefiles by combining common longic into a new board.mk Makefile fragment. For Paul A. Patience" 2015-09-04 16:42:34 -06:00
Paul A. Patience
81268bb75c Add -Wundef warning flag 2015-09-01 13:19:57 -04:00
Gregory Nutt
f7ba1b1eeb Remove all references to the dedunct CONFIG_SYSTEM_SYSINFO configuration from all defconfig files 2015-07-04 15:19:11 -06:00
Gregory Nutt
d1ab9c2e0a Remove the configs/ directory 2015-06-29 13:12:29 -06:00
Gregory Nutt
7214e52fb2 Fix references to the no-longer-existent misc/ directory in comments, README files, and documentation 2015-06-28 08:08:57 -06:00
Gregory Nutt
342f5fe33d Fix references to the no-longer-existent misc/ directory in comments, README files, and documentation 2015-06-28 08:08:57 -06:00
Gregory Nutt
add36cc3de Add an option to disable support for long long formats in lib_vsprintf. From Alan Carvalho de Assis 2015-05-30 10:00:54 -06:00
Gregory Nutt
fce87336a4 Add an option to disable support for long long formats in lib_vsprintf. From Alan Carvalho de Assis 2015-05-30 10:00:54 -06:00
Gregory Nutt
d468285739 Rename usbhost_storageinit() to usbhost_msc_initialize(). Add calls to usbhost_cdcacm_initialize() is CONFIG_USBHOST_CDCACM is selected. 2015-05-06 14:11:29 -06:00
Gregory Nutt
691d7c9819 Rename usbhost_storageinit() to usbhost_msc_initialize(). Add calls to usbhost_cdcacm_initialize() is CONFIG_USBHOST_CDCACM is selected. 2015-05-06 14:11:29 -06:00
Gregory Nutt
5f992dd1a9 STM32F429i-Disco: Add some missing USB host configureation. Fix some some duplicate class registration that causes infinite loops in USB registry searches 2015-04-30 13:01:29 -06:00
Gregory Nutt
4d5fae4ea9 STM32F429i-Disco: Add some missing USB host configureation. Fix some some duplicate class registration that causes infinite loops in USB registry searches 2015-04-30 13:01:29 -06:00
Gregory Nutt
119bd7fe8a USB HUB: Update all USB host connection waiter application threads to use the the new connection interface 2015-04-28 12:21:23 -06:00
Gregory Nutt
7042225a8a USB HUB: Update all USB host connection waiter application threads to use the the new connection interface 2015-04-28 12:21:23 -06:00
Gregory Nutt
3233c043f2 Add logic to register the hub class to all board logic that initialize USB host 2015-04-28 11:53:26 -06:00
Gregory Nutt
1441689cc9 Add logic to register the hub class to all board logic that initialize USB host 2015-04-28 11:53:26 -06:00
Gregory Nutt
88908dd61e Use menconfig instead of config 2015-04-17 07:38:33 -06:00
Gregory Nutt
9f0a9824bc Use menconfig instead of config 2015-04-17 07:38:33 -06:00
Gregory Nutt
ff7d5d23e9 STM32F429i Disco: (1) Fix a bad return value if the LCD driver is already initialized. (2) The LCD driver initialization is now performed during the early boot sequence. (3) Increased the size of the message queue from 32 to 64 in the lcd configuration. From Marco, ocram.lhark@yahoo.com. 2015-04-17 07:04:53 -06:00
Gregory Nutt
41d5828fa7 STM32F429i Disco: (1) Fix a bad return value if the LCD driver is already initialized. (2) The LCD driver initialization is now performed during the early boot sequence. (3) Increased the size of the message queue from 32 to 64 in the lcd configuration. From Marco, ocram.lhark@yahoo.com. 2015-04-17 07:04:53 -06:00
Gregory Nutt
77393de102 Add support for the new DMA2D features to the STM32F429i-Disco LTDC configuration. From Marco Krahl. 2015-04-16 09:11:53 -06:00
Gregory Nutt
eb28a666b4 Add support for the new DMA2D features to the STM32F429i-Disco LTDC configuration. From Marco Krahl. 2015-04-16 09:11:53 -06:00
Gregory Nutt
68a97a53ac Make some file section headers more consistent with standard 2015-04-08 09:15:17 -06:00
Gregory Nutt
54847a163f Make some file section headers more consistent with standard 2015-04-08 09:15:17 -06:00
Gregory Nutt
f73fdd90c9 More renaming: up_lcdinitialize->board_lcd_initialize, up_lcdgetdev->board_lcd_getdev, up_lcduninitialize->board_lcd_uninitialize 2015-04-04 11:49:15 -06:00
Gregory Nutt
02beb0d449 More renaming: up_lcdinitialize->board_lcd_initialize, up_lcdgetdev->board_lcd_getdev, up_lcduninitialize->board_lcd_uninitialize 2015-04-04 11:49:15 -06:00
Gregory Nutt
15b90de919 NSH initialization now calls boardctl(BOARDIOC_INIT) instead of board_app_initaliaze. Modify all configurations: Make sure that CONFIG_LIB_BOARDCTL=y appears wherever CONFIG_NSH_ARCHINIT=y appears. Remove support for CONFIG_NSH_ARCHMAC. It is not used and there are better ways to do that operation 2015-03-31 12:14:16 -06:00
Gregory Nutt
4a8e0e2359 NSH initialization now calls boardctl(BOARDIOC_INIT) instead of board_app_initaliaze. Modify all configurations: Make sure that CONFIG_LIB_BOARDCTL=y appears wherever CONFIG_NSH_ARCHINIT=y appears. Remove support for CONFIG_NSH_ARCHMAC. It is not used and there are better ways to do that operation 2015-03-31 12:14:16 -06:00
Gregory Nutt
103a17d4f1 Rename arch_nshinitialize() to board_app_initialize() 2015-03-31 10:21:31 -06:00
Gregory Nutt
9c0441e2da Rename arch_nshinitialize() to board_app_initialize() 2015-03-31 10:21:31 -06:00
Gregory Nutt
7583c94252 Move board_ prototypes from arch.h to board.h 2015-02-27 20:02:03 -06:00
Gregory Nutt
12d61531aa Move board_ prototypes from arch.h to board.h 2015-02-27 20:02:03 -06:00
Gregory Nutt
42327117a3 configs/: board function prototypes are now in include/nuttx/board.h. Remove from board header file; Add inclusion of nuttx/board.h to all files referencing board functions 2015-02-27 18:49:24 -06:00
Gregory Nutt
f75184b5ac configs/: board function prototypes are now in include/nuttx/board.h. Remove from board header file; Add inclusion of nuttx/board.h to all files referencing board functions 2015-02-27 18:49:24 -06:00
Gregory Nutt
aaabd05bfc RTC: Remove all backdoor interfaces from rtc.h 2015-02-13 08:41:34 -06:00
Gregory Nutt
3724a5e98e RTC: Remove all backdoor interfaces from rtc.h 2015-02-13 08:41:34 -06:00
Gregory Nutt
aff4c9cfd0 stm32f429i-disco: change ltdc initializing during boot up. This moves initializing of the ili9341 lcd and ltdc driver to the board specific initializing routine.
Signed-off-by: Marco Krahl <ocram.lhark@gmail.com>
2014-12-29 09:50:36 -06:00
Gregory Nutt
3a5571da63 stm32f429i-disco: change ltdc initializing during boot up. This moves initializing of the ili9341 lcd and ltdc driver to the board specific initializing routine.
Signed-off-by: Marco Krahl <ocram.lhark@gmail.com>
2014-12-29 09:50:36 -06:00
Gregory Nutt
868d4b7afc STM32F429i-Disco USB: Strangeness: Conditioned on OTGHS but called otgfs initialize routines. Must be something broken 2014-12-29 07:02:32 -06:00
Gregory Nutt
a99f6c2061 STM32F429i-Disco USB: Strangeness: Conditioned on OTGHS but called otgfs initialize routines. Must be something broken 2014-12-29 07:02:32 -06:00
Gregory Nutt
217f3fec70 STM32F429i-Disco USBMC configuration: SPI1 should not be enabled. It is not supported 2014-12-29 07:01:36 -06:00
Gregory Nutt
715ea79555 STM32F429i-Disco USBMC configuration: SPI1 should not be enabled. It is not supported 2014-12-29 07:01:36 -06:00
Gregory Nutt
0d33717de4 STM32F429-Disco: Refresh five configurations, turning off DEBUG 2014-12-28 14:04:53 -06:00
Gregory Nutt
338d76d84b STM32F429-Disco: Refresh five configurations, turning off DEBUG 2014-12-28 14:04:53 -06:00
Gregory Nutt
56340ae971 STM32 LTDC: Move ltdc.h from include/nuttx/video to arch/arm/include/stm32; Trivial updates after general review 2014-12-19 14:52:17 -06:00
Gregory Nutt
fa5dffbc18 STM32 LTDC: Move ltdc.h from include/nuttx/video to arch/arm/include/stm32; Trivial updates after general review 2014-12-19 14:52:17 -06:00
Gregory Nutt
6194fed86b Stuff that goes along with the new LTDC README file 2014-12-19 14:14:41 -06:00
Gregory Nutt
31a0e8ac5e Stuff that goes along with the new LTDC README file 2014-12-19 14:14:41 -06:00
Gregory Nutt
e63730e995 stm32f429i-disco: add default platform configuration to test framebuffer support for the ltdc
Memory configuration:

The heap start address of memory region 3 starts at 0xD0000000.
The allocated framebuffer of the layers is addressed up to the end of the memory
region 3.

If the layer pixel format changes e.g. from RGB565 to RGB24, than the memory
configuration must be configured too. Currently an easy memory calculation
is missing for that in Kconfig.

Signed-off-by: Marco Krahl <ocram.lhark@gmail.com>
2014-12-19 14:08:59 -06:00
Gregory Nutt
1ff469af5f stm32f429i-disco: add default platform configuration to test framebuffer support for the ltdc
Memory configuration:

The heap start address of memory region 3 starts at 0xD0000000.
The allocated framebuffer of the layers is addressed up to the end of the memory
region 3.

If the layer pixel format changes e.g. from RGB565 to RGB24, than the memory
configuration must be configured too. Currently an easy memory calculation
is missing for that in Kconfig.

Signed-off-by: Marco Krahl <ocram.lhark@gmail.com>
2014-12-19 14:08:59 -06:00
Gregory Nutt
78ff2450cb stm32f429i-disco: initialize ltdc during bootup
Signed-off-by: Marco Krahl <ocram.lhark@gmail.com>
2014-12-19 14:05:19 -06:00
Gregory Nutt
8d6614b9af stm32f429i-disco: initialize ltdc during bootup
Signed-off-by: Marco Krahl <ocram.lhark@gmail.com>
2014-12-19 14:05:19 -06:00
Gregory Nutt
9853b62e73 stm32f429i-disco: enable configuration of framebuffer support for the ltdc controller
Signed-off-by: Marco Krahl <ocram.lhark@gmail.com>
2014-12-19 14:02:26 -06:00
Gregory Nutt
61c927904f stm32f429i-disco: enable configuration of framebuffer support for the ltdc controller
Signed-off-by: Marco Krahl <ocram.lhark@gmail.com>
2014-12-19 14:02:26 -06:00
Gregory Nutt
a5a8349226 stm32f429i-disco: Add support for initializing ltdc framebuffer and the configured lcd display
This adds support for initializing of the ltdc controller and the lcd device connected on the stm32f429i-disco. The following methods are provided for the generic fb interface:

- up_fbinitialize
- up_fbgetvplane
- fb_uninitialize

The following methods are provided for the ltdc interface:

- up_ltdcgetlayer

Signed-off-by: Marco Krahl <ocram.lhark@gmail.com>
2014-12-19 13:54:27 -06:00
Gregory Nutt
d2b7dc0eef stm32f429i-disco: Add support for initializing ltdc framebuffer and the configured lcd display
This adds support for initializing of the ltdc controller and the lcd device connected on the stm32f429i-disco. The following methods are provided for the generic fb interface:

- up_fbinitialize
- up_fbgetvplane
- fb_uninitialize

The following methods are provided for the ltdc interface:

- up_ltdcgetlayer

Signed-off-by: Marco Krahl <ocram.lhark@gmail.com>
2014-12-19 13:54:27 -06:00
Gregory Nutt
bd078141a6 stm32f429i-disco: update board definition for the ili9341 LCD display. This configures all LCD settings for the RGB interface. Also adds a customer LCD display template.
Signed-off-by: Marco Krahl <ocram.lhark@gmail.com>
2014-12-19 13:34:37 -06:00
Gregory Nutt
dd51c8db2d stm32f429i-disco: update board definition for the ili9341 LCD display. This configures all LCD settings for the RGB interface. Also adds a customer LCD display template.
Signed-off-by: Marco Krahl <ocram.lhark@gmail.com>
2014-12-19 13:34:37 -06:00
Gregory Nutt
db562b774a Unify sensor debug. ADX driver was using input debug; LM75 and QENCODE that their own custom debug. Now all use CONFIG_DEBUG_SENSOR, sndbg() 2014-12-16 09:54:32 -06:00
Gregory Nutt
ae18f9dacd Unify sensor debug. ADX driver was using input debug; LM75 and QENCODE that their own custom debug. Now all use CONFIG_DEBUG_SENSOR, sndbg() 2014-12-16 09:54:32 -06:00
Gregory Nutt
b3fd08e568 Correct spelling: MOUNTPOINT not MOUNTPOUNT. Numerous places. Some are problems. From Woohan Lee 2014-12-01 06:41:30 -06:00
Gregory Nutt
76906110b0 Correct spelling: MOUNTPOINT not MOUNTPOUNT. Numerous places. Some are problems. From Woohan Lee 2014-12-01 06:41:30 -06:00
Gregory Nutt
4683ad7843 Refresh STM32F429i Disco USB NSH configuration 2014-11-20 07:55:30 -06:00
Gregory Nutt
86c0ef71f2 Refresh STM32F429i Disco USB NSH configuration 2014-11-20 07:55:30 -06:00
Gregory Nutt
13332e41d2 STM32 F4 OTGHS device controller driver from Brennan Ashton 2014-11-20 07:19:04 -06:00
Gregory Nutt
cba8179c28 STM32 F4 OTGHS device controller driver from Brennan Ashton 2014-11-20 07:19:04 -06:00
Gregory Nutt
f31dca368b Remove CONFIG_MAX_TASK_ARGS from all Kconfigs and defconfigs 2014-11-12 18:02:19 -06:00
Gregory Nutt
fcffafee30 Remove CONFIG_MAX_TASK_ARGS from all Kconfigs and defconfigs 2014-11-12 18:02: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
0f1ba777f0 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
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
9537715ebb 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
c6c5a221e9 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
7a217f1015 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
17af388456 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
b8b9834ae9 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
bce6a9e077 stm32f429i-disco: Fix obsolete SPI5 dependency. From Marco Krahl 2014-10-20 15:10:50 -06:00
Gregory Nutt
ca57ef9fac Change naming of HP work queue configuration varaibles to be symmetric with LP work queue naming 2014-10-11 17:03:44 -06:00
Gregory Nutt
c9d7472d68 Change naming of HP work queue configuration varaibles to be symmetric with LP work queue naming 2014-10-11 17:03:44 -06:00
Gregory Nutt
857d0b8e76 Remove non-standard, conditional syslog_enable(), instead only the required, standard setlogmask() 2014-10-09 06:09:03 -06:00
Gregory Nutt
4efb064169 Remove non-standard, conditional syslog_enable(), instead only the required, standard setlogmask() 2014-10-09 06:09:03 -06:00
Gregory Nutt
4d851b150d All NSH-related files under nuttx/configs changed to use the corrected syslog interfaces 2014-10-08 14:28:55 -06:00
Gregory Nutt
f40857c04f All NSH-related files under nuttx/configs changed to use the corrected syslog interfaces 2014-10-08 14:28:55 -06:00
Gregory Nutt
6a178608fb Remove non-functional vestiges of OTGHS in FS mode (including OTGFS2); try to convert the stm32f429i-disco configuration to use OTGHS instead of OTFHS in FS mode (OTGFS2). But I don't have the boards and can't test 2014-10-07 15:25:31 -06:00
Gregory Nutt
868fa211bc Remove non-functional vestiges of OTGHS in FS mode (including OTGFS2); try to convert the stm32f429i-disco configuration to use OTGHS instead of OTFHS in FS mode (OTGFS2). But I don't have the boards and can't test 2014-10-07 15:25:31 -06:00
Gregory Nutt
4aa785a503 Rename CONFIG_EXAMPLES_NXCONSOLE to CONFIG_EXAMPLES_NXTERM; rename CONFIG_NXWM_NXCONSOLE to CONFIG_NXWM_NXTERM 2014-09-20 14:25:51 -06:00
Gregory Nutt
3d050101eb Rename CONFIG_EXAMPLES_NXCONSOLE to CONFIG_EXAMPLES_NXTERM; rename CONFIG_NXWM_NXCONSOLE to CONFIG_NXWM_NXTERM 2014-09-20 14:25:51 -06:00
Gregory Nutt
e09923cd8e Every defconfig file should now have a valid setting for CONFIG_WDOG_INTRESERVE 2014-09-03 06:55:06 -06:00
Gregory Nutt
9ee4b9e2b1 Every defconfig file should now have a valid setting for CONFIG_WDOG_INTRESERVE 2014-09-03 06:55:06 -06:00
Gregory Nutt
3dd8c08714 Remove final traces of the 8015 from the NuttX source tree 2014-09-01 13:21:15 -06:00
Gregory Nutt
23147c40a5 Remove final traces of the 8015 from the NuttX source tree 2014-09-01 13:21:15 -06:00
Gregory Nutt
591a9c85d2 Rename kmalloc to kmm_malloc for consistency 2014-08-31 17:26:36 -06:00
Gregory Nutt
1780810d3d Rename kmalloc to kmm_malloc for consistency 2014-08-31 17:26:36 -06:00
Gregory Nutt
f15246ec6c Remove CONFIG_MM_MULTIHEAP. Non-multiheap operation is no longer supported 2014-08-31 10:54:55 -06:00
Gregory Nutt
3c1a70c9dc Remove CONFIG_MM_MULTIHEAP. Non-multiheap operation is no longer supported 2014-08-31 10:54:55 -06:00
Gregory Nutt
1b2a96c965 Change CONFIG_ADDRENV to CONFIG_ARCH_ADDRENV; change how it is selected -- the architecure must first declare support 2014-08-24 06:42:11 -06:00
Gregory Nutt
1624e2fbcf Change CONFIG_ADDRENV to CONFIG_ARCH_ADDRENV; change how it is selected -- the architecure must first declare support 2014-08-24 06:42:11 -06:00
Gregory Nutt
49deb059d4 Change CONFIG_MSEC_PER_TICK to CONFIG_USEC_PER_TICK. This gives more options for system timers in general, but more importantly, let's us realize higher resolution for the case of CONFIG_SCHED_TICKLESS=y -- of course, at the risk of some new interger overvflow problems 2014-08-07 13:42:47 -06:00
Gregory Nutt
0aa7209765 Change CONFIG_MSEC_PER_TICK to CONFIG_USEC_PER_TICK. This gives more options for system timers in general, but more importantly, let's us realize higher resolution for the case of CONFIG_SCHED_TICKLESS=y -- of course, at the risk of some new interger overvflow problems 2014-08-07 13:42:47 -06:00
Gregory Nutt
7edc6a5666 Remove CONFIG_DISABLE_CLOCK 2014-08-07 12:35:24 -06:00
Gregory Nutt
caba61999a Remove CONFIG_DISABLE_CLOCK 2014-08-07 12:35:24 -06:00
Gregory Nutt
cbe4d3573d Rename apps/examples/uip to apps/examples/webserver 2014-07-03 17:31:17 -06:00
Gregory Nutt
44988c6ca6 Rename apps/examples/uip to apps/examples/webserver 2014-07-03 17:31:17 -06:00
Gregory Nutt
285f66a2c1 NET: Rename uiplib/UIPLIB to netlib/NETLIB 2014-07-02 16:04:25 -06:00
Gregory Nutt
0eb1666cb0 NET: Rename uiplib/UIPLIB to netlib/NETLIB 2014-07-02 16:04:25 -06:00
Gregory Nutt
bb5f545173 STM32: Fix STM32F100CB pin configuration (from Kosma Moczek); and make chip naming a little more consistent 2014-05-07 12:54:27 -06:00
Gregory Nutt
6a8a62c0c1 STM32: Fix STM32F100CB pin configuration (from Kosma Moczek); and make chip naming a little more consistent 2014-05-07 12:54:27 -06:00
Gregory Nutt
2dbaed4779 The alternate console device CONFIG_NSH_CONDEV must not be defined unconditionally. This causes errors when using Telnet sessions. This was solved by adding CONFIG_NSH_ALTCONDEV: CONFIG_NSH_ALTCONDEV enables or disables the feature then, if enabled, CONFIG_NSH_CONDEV provides the alternative console device name 2014-05-05 08:52:02 -06:00
Gregory Nutt
f924601fc1 The alternate console device CONFIG_NSH_CONDEV must not be defined unconditionally. This causes errors when using Telnet sessions. This was solved by adding CONFIG_NSH_ALTCONDEV: CONFIG_NSH_ALTCONDEV enables or disables the feature then, if enabled, CONFIG_NSH_CONDEV provides the alternative console device name 2014-05-05 08:52:02 -06:00
Gregory Nutt
51950d7850 Undefine IRQPRIO in all configurations it should not be set 2014-04-16 08:29:39 -06:00
Gregory Nutt
e21212f2b4 Undefine IRQPRIO in all configurations it should not be set 2014-04-16 08:29:39 -06:00
Gregory Nutt
ab5b37189b More trailing whilespace removal 2014-04-13 16:22:22 -06:00
Gregory Nutt
f8024cf409 More trailing whilespace removal 2014-04-13 16:22:22 -06:00
Gregory Nutt
fb4fa33cae Cosmetic changes for coding style; removal of dangling spaces at the end of lines 2014-04-13 13:18:06 -06:00
Gregory Nutt
f7e5953804 Cosmetic changes for coding style; removal of dangling spaces at the end of lines 2014-04-13 13:18:06 -06:00
Gregory Nutt
6cf9895b95 configs/*/defconfig: Increase the number of pre-allocated watchdogs in configurations that use networking or USB 2014-04-09 10:57:56 -06:00
Gregory Nutt
6be62a7ef3 configs/*/defconfig: Increase the number of pre-allocated watchdogs in configurations that use networking or USB 2014-04-09 10:57:56 -06:00
Gregory Nutt
b0c49a71a0 Refresh configuration files 2014-03-06 17:16:46 -06:00
Gregory Nutt
eb132f256c Refresh configuration files 2014-03-06 17:16:46 -06:00
Gregory Nutt
7050b91155 Removed the CONFIG_NUTTX_NEWCONFIG setting from every defconfig file 2014-03-06 12:23:26 -06:00
Gregory Nutt
596bdc73df Removed the CONFIG_NUTTX_NEWCONFIG setting from every defconfig file 2014-03-06 12:23:26 -06:00