Commit Graph

12166 Commits

Author SHA1 Message Date
Matias N
fd625eaa89 arch/arm/src/stm32l4 and boards/arm/stm32l4/nucleo-l476rg: Add support for LPTIM timers on the STM32L4 as PWM outputs. 2019-10-27 17:21:32 -06:00
Gregory Nutt
ba0afebdcb arch/arm/src/stm32 and boards/arm/stm32/olimex-stm32-p207/src: Fix an error found in build testing. There is not relationship be CONFIG_STM32_USBHOST and CONFIG_USBHOST, yet they they are used interchangably. This means that can (and did) get out of synch causing link time failures. This commit adds logic to select CONFIG_USBHOST when CONFIG_STM32_USBHOST is selected, keeping the two settings syncrhonized. Furthermore, since CONFIG_STM32_USBHOST is the authoritative setting, all ocurrences of CONFIG_USBHOST were replaced with CONFIG_STM32_USBHOST in the architecture code and in this one board code that was producing the error in build testing. 2019-10-27 15:02:56 -06:00
Gregory Nutt
1a0f5dec18 arch/arm/src/stm32l4/stm32l4xrxx_dma.c: Eliminate a new warning found in build testing. 2019-10-25 13:10:40 -06:00
Jussi Kivilinna
267b440f0a Merged in jussi_kivilinna/nuttx/stm32l4r_otgfs (pull request #1063)
stm32l4_otgfs: enable OTGFS for STM32L4+ series

The OTGFS peripheral on stm32l4x6 and stm32l4rxxx reference manual is
exactly the same. This patch also adds missing bits and fixes errors in
stm32l4x5xx and stm32l4x6xx OTGFS register maps.

Approved-by: Gregory Nutt <gnutt@nuttx.org>
2019-10-25 13:07:15 +00:00
Jussi Kivilinna
49ade3ca72 Merged in jussi_kivilinna/nuttx/stm32l4r_add_dmamux (pull request #1062)
Add DMA support for STM32L4+ series

* Add DMA support for STM32L4+

* stm32l4xrxx_rcc: enable "Range 1 boost" mode if any PLL freq above 80 Mhz

Approved-by: Gregory Nutt <gnutt@nuttx.org>
2019-10-25 13:05:56 +00:00
Gregory Nutt
79f46c05d1 arch/arm/src/imxrt/imxrt_lpi2c.c: Fix a warning about an unused local variable. Found in build testing. 2019-10-24 13:52:29 -06:00
Alin Jerpelea
2be1153030 Merged in alinjerpelea/nuttx (pull request #1061)
boards: cxd56xx: spresense: cleanup and new defconfig

* arch: cxd56xx: remove NVIC_SYSH redefinition

    The NVIC_SYSH is already defined in nvicpri.h

    Signed-off-by: Alin Jerpelea <alin.jerpelea@sony.com>

* boards: cxd56xx: spresense: configs: enable SPRESENSE_EXTENSION

    Enable high current mode for the Spresense Extension board on all examples
    that have SDCARD support

    Signed-off-by: Alin Jerpelea <alin.jerpelea@sony.com>

* boards: cxd56xx: spresense: ifdef SDCARD_TXS02612

    The SD Card TXS02612 port expander is hosted on the Extension board and
    should not be enabled if the extension board is not prezent.

    Signed-off-by: Alin Jerpelea <alin.jerpelea@sony.com>

* boards: cxd56xx: spresense: configs: increase MQ_MAXMSGSIZE

    This change is needed by the display driver on spresense platform

    Signed-off-by: Alin Jerpelea <alin.jerpelea@sony.com>

* boards: cxd56xx: spresense: config: add lcd examples defconfig

    This is a configuration for the basic nx examples

    Signed-off-by: Alin Jerpelea <alin.jerpelea@sony.com>

Approved-by: Gregory Nutt <gnutt@nuttx.org>
2019-10-24 14:26:02 +00:00
Fabio Balzano
5ca0b57a59 i.MXRT1060-EVK (mostly): Add basic LCD support for the board IMXRT1060-EVK. 2019-10-23 13:17:30 -06:00
David Sidrane
b3ed4b95bf STM32H7 FLASH: Fixed compile error. 2019-10-23 08:03:09 -06:00
Alin Jerpelea
f7af996f1d Merged in alinjerpelea/nuttx (pull request #1059)
boards: cxd56xx: spresense: add board_timerhook function

* boards: cxd56xx: spresense: add board_timerhook function

    in preparation for SDK we muts have a weak board_timerhook function

    Signed-off-by: Alin Jerpelea <alin.jerpelea@sony.com>

* drivers: usbhost: add missing endif

    By accident an endif was missing.

    Signed-off-by: Alin Jerpelea <alin.jerpelea@sony.com>

* boards: cxd56xx: audio: add build barrier

    The audio implementation should not be beuilt if the config
    CONFIG_CXD56_AUDIO is not set.

    Signed-off-by: Alin Jerpelea <alin.jerpelea@sony.com>

* arch:arm:cxd56xx: add ge2d.h header

    The header is used by imageproc.

    Signed-off-by: Alin Jerpelea <alin.jerpelea@sony.com>

Approved-by: Gregory Nutt <gnutt@nuttx.org>
2019-10-23 13:12:21 +00:00
Gregory Nutt
7dc2b7285e arch/arm/src/s32k1xx/s32k1xx_flashcfg.c: Flash configuration array should be const (although it really does not matter in this context). 2019-10-22 17:44:16 -06:00
David Sidrane
f506e2bd72 Merged in david_s5/nuttx/master_h7 (pull request #1058)
STM32H7:Flash driver and Serious BUG fixes.

* arch/arm/Kconfig:Add ARCH_HAVE_PROGMEM for STM32H7

* stm32h7:Add FLASH progmem support

* stm32h7:pwr add CPUCR & D3CR

* stm32h7:syscfg Add PWRCR

* stm32h7:rcc Properly configure VOS and Flash

Approved-by: Gregory Nutt <gnutt@nuttx.org>
2019-10-22 19:49:49 +00:00
Markus Bernet
185557440b STM32H7 Ethernet: Fix ETH_MACMDIOAR_CR_MASK bit mask. 2019-10-21 06:29:13 -06:00
Fabio Balzano
8bfb9a486e boards/arm/imxrt/imxrt1060-evk/src/imxrt_lcd.c: Add support for LCD. Clean up some LCD-related interfaces. 2019-10-20 10:46:21 -06:00
Gregory Nutt
ec298554ff arch/arm/src/s32k1xx/s32k1xx_flashcfg.c: Correct some byte ordering. 2019-10-20 10:15:54 -06:00
Gregory Nutt
1386e70d85 boards/arm: Fix/verify to errors found in build testing. 2019-10-19 15:25:38 -06:00
Gregory Nutt
63d150dcaf arch/arm/src/s32k1xx/Kconfig: Add some help text for the flash configuration fields. 2019-10-19 13:26:53 -06:00
Gregory Nutt
d6b4e90d70 arch/arm/src/s32k1xx: Support configuration and initialization of the flash configuration bytes. boards/arm/s32k1xx/s32k1**evb/scripts/flash.ld: Create a special FLASH section to hold the FLASH configuration bytes. 2019-10-19 13:14:02 -06:00
Gregory Nutt
6f5fadf289 arch/arm/src/stm32/hardware/stm32f40xxx_pinmap.h: ETH_RMII_REF_CLK is an input. 2019-10-18 11:50:12 -06:00
Daniel Pereira Volpato
ca52e33ba9 include/nuttx/timers/pwm.h: Correct some typos. arch/arm/src/stm32f0l0g0: Add PWM support. 2019-10-17 12:00:57 -06:00
Jussi Kivilinna
d45f559d47 arch/arm/src/stm32l4/Kconfig: Add STM32L4R5ZI chip type. 2019-10-17 11:05:50 -06:00
Masayuki Ishikawa
78d68fe8cc Merged in masayuki2009/nuttx.nuttx/fix_cpustart (pull request #1051)
Fix cpustart for Cortex-M SMP

* arch: lc823450: Fix lc823450_cpustart.c

    In Cortex-M, offset 0 in vector table stores initial stack pointer
    and offset 4 stores reset vector.

    Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>

* arch: sam34: Fix sam4cm_cpustart.c

    In Cortex-M, offset 0 in vector table stores initial stack pointer
    and offset 4 stores reset vector.

    Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>

Approved-by: Gregory Nutt <gnutt@nuttx.org>
2019-10-16 03:16:48 +00:00
Gregory Nutt
eeff429939 Fix some trivial spacing issues noted in review of PR. 2019-10-11 23:52:15 +08:00
Alin Jerpelea
716c7c9bee Merged in alinjerpelea/nuttx (pull request #1048)
boards: arm: cxd56xx: audio: add power_control and audio_tone_generator

* boards: arm: cxd56xx: audio: add power_control

    Add a simeple way to control the audio power for userspace apps

    Signed-off-by: Alin Jerpelea <alin.jerpelea@sony.com>

* boards: arm: cxd56xx: audio: add audio_tone_generator

    Add a simple way to control the audio buzzer with defined frequency
    for userspace apps

    Signed-off-by: Alin Jerpelea <alin.jerpelea@sony.com>

Approved-by: Gregory Nutt <gnutt@nuttx.org>
2019-10-11 15:46:15 +00:00
Daniel P. Volpato ‎
0142dd96a2 Add files that were supposed to be included as part of 0d1934a740. 2019-10-11 14:47:53 +08:00
Alin Jerpelea
33d0de4d57 Merged in alinjerpelea/nuttx (pull request #1046)
boards: spresense: add audio implementation

* boards: arm: cxd56xx: add audio implementation

    Add the board audio control implemantation

    Signed-off-by: Alin Jerpelea <alin.jerpelea@sony.com>

* boards: arm: cxd56xx: update audio defconfig

    Small updates to build the platforms specific audio driver

    Signed-off-by: Alin Jerpelea <alin.jerpelea@sony.com>

* boards: arm: cxd56xx: drivers: add audio implementation

    Add the audio implementation for CXD56XX chip

    Signed-off-by: Alin Jerpelea <alin.jerpelea@sony.com>

* boards: arm: cxd56xx: fix Load switch GPIO

    During the initial bringup the grong GPIO was set.

    Signed-off-by: Alin Jerpelea <alin.jerpelea@sony.com>

Approved-by: Gregory Nutt <gnutt@nuttx.org>
2019-10-09 23:55:20 +00:00
Daniel Pereira Volpato
0d1934a740 arch/arm/src/stm32f0l0g0: Support timers available on STM32G070
arch/arm/src/stm32f0l0g0: Pinmap TIM1 GPIOs available for STM32G0
arch/arm/src/stm32f0l0g0: Add TIM driver lowerhalf
arch/arm/src/stm32f0l0g0/stm32_tim_lowerhalf.c:  Handle 32-bit overflow on some calculations.
2019-10-07 22:07:21 -06:00
Daniel Pereira Volpato
8c62600cc1 arch/arm/src/stm32h7/hardware/stm32_tim.h: Fix ATIM_BDTR_BK2P define
arch/arm/src/stm32h7/hardware/stm32_tim.h: Fix ATIM_AF2 bitfields wrongly allocated to ATIM_AF1
arch/arm/src/stm32f7/hardware/stm32f76xx77xx_tim.h: Fix ATIM_AF2 bitfields wrongly allocated to ATIM_AF1
arch/arm/src/stm32h7/stm32_tim.c: Fix some copy'n'paste errors on defines
2019-10-07 21:59:28 -06:00
Xiang Xiao
3bc62f1ccc Change space to tab and help to ---help--- in Kconfig files. 2019-10-05 21:39:12 -06:00
Augusto Fraga Giachero
a6b31e3f03 arch/arm/src/lpc17xx_40xx/lpc17_40_ethernet.c: Use usleep() instead of up_delay() for large wait times. 2019-10-04 13:01:47 -06:00
Gregory Nutt
6c2f73774b armv7-a and xtensa: Apply Masayuki Ishakawa's change of cef90a3865 to these these other SMP architectures as well. 2019-10-04 07:17:35 -06:00
Masayuki Ishikawa
cef90a3865 Merged in masayuki2009/nuttx.nuttx/fix_up_sigdeliver_for_smp (pull request #1043)
arch: armv7-m: Fix a deadlock in up_sigdeliver() in SMP mode.

In previous implementation, up_disable_irq() was called before
recovering local context. However, I noticed a deadlock happens
in the following situation. For example, if up_sigdevliver() is
in progress on CPU0 and CPU1 has called up_cpu_paused to CPU0,
hence g_cpu_irqlock has been locked by CPU1, in this case,
we would see a deadlock in later call of enter_critical_section()
to restore irqcount.

To avoid this situation, we need to call enter_critical_section()
to break the deadlock.

Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>

Approved-by: Gregory Nutt <gnutt@nuttx.org>
2019-10-04 12:40:26 +00:00
Gregory Nutt
cc485f2e2c arch/arm/src/stm32/stm32_usbdev.c: Fix some new warnings reported by gcc 8.3.1 in build tests. 2019-10-03 16:34:14 -06:00
Masayuki Ishikawa
4c53f0d232 Merged in masayuki2009/nuttx.nuttx/spresense_smp (pull request #1041)
Spresense smp

* arch: arm: Add ARCH_GLOBAL_IRQDISABLE to ARCH_CHIP_CXD56XX in Kconfig

    Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>

* arch: arm: cxd56xx: Make fpuconfg() public in cxd56_start.c

    NOTE: fpuconfig() is called in both cxd56_start.c and cxd56_cpustart.c

    Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>

* arch: arm: cxd56xx: Add support for SMP

    NOTE: To run cxd56xx in SMP mode, new boot loader which will be
    released later must be used.

    Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>

* arch: arm: cxd56xx: Add irq routing for SMP in cxd56_irq.c

    NOTE: In cxd56xx, each external interrupt controller can be
    accessed from a local APP_DSP (Cortex-M4F) only. This commit
    supports IRQ routing for SMP by calling up_send_irqreq() in
    both up_enable_irq() and up_disable_irq().

    Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>

* boards: spresense: Add smp configuration

    Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>

Approved-by: Gregory Nutt <gnutt@nuttx.org>
2019-10-03 13:06:21 +00:00
Gregory Nutt
a9f2c5e76a arch/arm/src/stm32l4/stm32l4_firewall.c: Correct a test to determine if an address lies in FLASH or not. Improper mask caused test to always fail. 2019-10-02 13:00:55 -06:00
Nathan Hartman
46aaec7ba0 Fix minor typos in docs and comments. 2019-09-29 12:52:20 -06:00
Juha Niskanen
c3d24571fb Fix some typos. Mostly inital->initial. 2019-09-27 06:32:32 -06:00
Juha Niskanen
5a73b54dc7 arch/arm/src/stm32l4/stm32l4_dumpgpio.c: Fix using wrong GPIO enable register. 2019-09-27 06:30:45 -06:00
Eduard Niesner
dc43f4e648 arch\arm\src\stm32h7\Kconfig: Add the CRC option in KConfig. 2019-09-27 06:22:12 -06:00
Alin Jerpelea
7420f4dc5e Merged in alinjerpelea/nuttx (pull request #1038)
cxd56xx: various fixes

* arch: arm: cxd56xx: Support to set any i2c frequency

    This commit supports to be able to set the i2c frequency other than just
    100 or 400 Hz.

* arch: arm: cxd56xx: Enable SD clock during access to SD card

    - Improve GNSS low sensitivity with SD card inserted
    - Reduce power consumption by stopping SD clock

* arch: arm: cxd56xx: Do PANIC() when cpu rx fifo is overflow

    If CPU Rx FIFO is overflow, it's fatal error for system. In such a case,
    this commit changes to allow the user to notice by calling PANIC() for
    debuggability enhancement.

* arch: arm: cxd56xx: Fix compile error in sdhci debug code

* arch: arm: cxd56xx: Remove assertion in cpu tx queue

    When CPU Tx queue is overflow, it returns -EAGAIN instead of assertion
    to be able to retry.

* arch: arm: cxd56xx: Add configurations for cpu fifo elements

    Signed-off-by: Alin Jerpelea <alin.jerpelea@sony.com>

* arch: arm: cxd56xx: Fix LPADC configuration

    LPADC options defined in the same symbol name, so kconfig tool
    couldn't process them correctly.

    Signed-off-by: Alin Jerpelea <alin.jerpelea@sony.com>

* arch: arm: cxd56xx: Update loader and gnssfw ver.17660

* arch: arm: cxd56xx: Fix hang-up when error interrupt occurs

    Fix a problem that error interrupts are not cleared.

    Signed-off-by: Alin Jerpelea <alin.jerpelea@sony.com>

* arch: arm: cxd56xx: Fix sdhci semaphore

    Fix inital value of semaphore in sdhci drive.r

    Signed-off-by: Alin Jerpelea <alin.jerpelea@sony.com>

* boards: cxd56xx: Treat the initial value of LNA power as off

    LNA is always turned power on when GNSS is started. So it is desirable
    that the initial value of the LNA power is off by default.

* boards: cxd56xx: Remove initial setting of PIN_AP_CLK

    PIN_AP_CLK is used as a port selector of SDIO expander on the extension
    board, and is set output low in initalizing. Therefore, this pin cannot
    be used for other board. To avoid this restriction, remove this initial
    operation because this pin is pulled down by default on the extension
    board.

Approved-by: Gregory Nutt <gnutt@nuttx.org>
2019-09-26 11:28:26 +00:00
David Sidrane
04b501eddf Merged in david_s5/nuttx/master_h7 (pull request #1037)
stm32h7:RCC Add PLL3 Support and only enable PLLs if used

Approved-by: Gregory Nutt <gnutt@nuttx.org>
2019-09-24 14:30:05 +00:00
Markus Bernet
08ffb3d285 arch/arm/src/stm32h7/hardware/stm32_adc.h: Fix typos in ADC register definitions. 2019-09-24 06:53:12 -06:00
Gregory Nutt
43fc0fee03 arch/arm/src/imxrt/imxrt_enet.c: Fix some trivial coding standard problems. 2019-09-23 07:47:42 -06:00
Gregory Nutt
ed830550e9 arch/arm/src/imxrt/imxrt_lpspi.c: Fix some copy-paste errors for LPSPI3 and LPSPI4. 2019-09-23 07:46:56 -06:00
Andrei Stefanescu
eae495bc0a arch/arm/src/lpc54xx/lpc54_clockconfig.c: Fix PLL settings. For the lpc54628 Rev. E board the PLL was not configured properly and the board wouldn't boot correctly. I checked the startup files from the official IDE and inspected the assembly instructions for the libraries used. 2019-09-22 13:41:38 -06:00
Gregory Nutt
261cd9df4b arch/arm/src/imxrt/imxrt_idle.c: Dave Marples <dave@marples.net>. 2019-09-21 07:31:00 -06:00
Dave Marples
62fca7c376 arch/arm/src/imxrt/imxrt_usdhc.c: Move some comments. 2019-09-21 07:26:49 -06:00
Dave Marples
05bbbec3e1 Add support for the BCM43438A1 Bluetooth capability. It also adds a serial 'shim' to allow any regular serial port that can support a Bluetooth H4 interface (i.e. it has RTS/CTS) to be used to drive a Bluetooth device (Get a handle to it via hci_uart_getdevice("/dev/xxx") and then pass it to the btuart_register function.
Most of the bluetooth and wifi chips appear to need external firmware, and the 43438 is no exception. Fortunately, since Cypress got involved, these are much more straightforward to obtain and are shipped as part of their SDK, which is downloadable from their website.  Those firmwares are already provided as C arrays, so their names just need updating to;

const unsigned char bt_firmware_hcd -> The bt firmware array.

const int bt_firmware_len = sizeof(bt_firmware_hcd);
2019-09-21 07:16:37 -06:00
Juha Niskanen
5c853cd1dc libs/libc/unistd/lib_getcwd.c: remove stray sched_unlock(). Also fixes several typos. 2019-09-20 06:23:48 -06:00
Juha Niskanen
e8b5dd4528 Fix use of undefined pp-token #errror, other typos. 2019-09-19 18:19:18 -06:00