2221 Commits

Author SHA1 Message Date
Adam Porter
1da921c00f STM32, STM32F7, STM32H7, STM32L4, and EFM32 USB Host: This change was required to get my devices (CDC-MBIM) to enumerate. Initially the system timed out retrieving the USB configuration descriptor. Ctrl IN requests got nothing but NAKs. I found that the initial SETUP packet and corresponding IN transfer were fine; it was the Status OUT phase that was getting the NAK. After receiving a NAK on the Status OUT, the code would loop back and issue another ctrl IN, which will always fail because the data was already transferred before. Thus the entire transfer would 'timeout'. The fix I implemented moves the DATANAK timeout loop to only apply to the Status OUT. Of course this worked for my devices, but maybe isn't the right solution in general. I think that both the ctrl IN and the Status OUT need their own retry loops? 2019-09-09 17:08:31 -06:00
Adam Porter
5b4516d291 arch/arm/src/stm32/stm32_otg[fs|hs]host.c: STM32 host only initiates transfer if buflenl > 0. 2019-09-08 06:46:54 -06:00
Juha Niskanen
822bb06967 Fix some typos. Also minor update to stm32f7/nucleo-144/README.txt and stm32l4/nucleo-l496zg/README.txt board documentation. 2019-09-05 08:12:50 -06:00
Augusto Fraga Giachero
68bbc8438c drivers/timers/pwm.c: Move the pwm/pwm.c driver to timers/pwm.c, The drivers/pwm contained only one .c file (pwm.c), so to avoid the proliferation of sub-directories inside drivers/ is better to move the pwm.c driver to drivers/timers. The pwm.h header was moved to include/nuttx/timers to keep consistency, so all files referencing it need to be updated. 2019-09-02 07:57:10 -06:00
Gregory Nutt
19e1db3f97 arch/arm/src/stm32/hardware/stm32_adc_*: Additional coding standard issues: Binary operators should be separated with spaces. 2019-08-31 17:54:38 -06:00
Gregory Nutt
97a71db3b1 arch/arm/src/stm32/hardware/stm32_adc_*: Clean up some coding standard issues. 2019-08-31 17:45:32 -06:00
Gregory Nutt
5f57b85438 arch/arm/src/stm32/stm32_adc.c: Another fix. adc_calibrate was called even when it was conditioned out, causing a link time failure. 2019-08-31 17:12:15 -06:00
Gregory Nutt
70fcf486a0 arch/arm/src/stm32/stm32_adc.c: Corect an error found in build testing. Recent commit to add STM32F1 calibration was not properly conditioned. Caused compilation errors on all STM32 F2 family members. 2019-08-31 17:06:24 -06:00
Matous Pokorny
2236916be6 arch/arm/src/stm32/stm32_adc.c: Add ADC calibration procedure for IP_ADC_V1. Tested on STM32F100, and it magically increased result accuracy. STM32F103 has the same calibration procedure. I am not sure about others. 2019-08-29 19:01:22 -06:00
Michael Jung
decd07725f arch/arm/src/stm32/stm32_spi.c: TI Synchronous Serial Frame Format. The SPI macros on STM32 MCUs do support the Texas Instruments Synchronous Serial Frame Format protocol (TI protocol). Defined a new SPIDEV_MODETI and add support for it in stm32_spi.c. 2019-08-25 09:07:09 -06:00
Michael Jung
b395cde043 arch/arm/src/stm32: PLLI2S support for F427/F437. Enable support of the I2S Phase Locked Loop on STM32F427 and STM32F437 MCUs. 2019-08-25 09:01:35 -06:00
Beat Küng
ef233507db Merged in bkueng/nuttx/serial_single-wire_pullup (pull request #994)
serial single-wire: add possibility to specify pull-up instead of open drain

Approved-by: David Sidrane <david.sidrane@nscdg.com>
Approved-by: Gregory Nutt <gnutt@nuttx.org>
2019-08-15 21:58:52 +00:00
raiden00pl
5ed743d58a Merged in raiden00/nuttx_f334 (pull request #974)
Master

* Revert "Merged in yanqil-br/feature-multi_chan_pwm (pull request #973)"

    This reverts commit aef0e0b5383b99cad1f0d5f8e612fd5463252daf.

* arch/arm/src/{stm32/stm32f7/stm32h7/stm32l4}/stm32_pwm.c: configure multi-channel duty only if channel specified. This allows you to update duty cycle for a single channel

* nucleo-f303re/configs: add basic NSH configuration

* nucleo-f303re/configs/pwm: enable console on UART2 and set entry point to nsh_main

Approved-by: Gregory Nutt <gnutt@nuttx.org>
2019-08-10 15:14:19 +00:00
Yan Li
aef0e0b538 Merged in yanqil-br/feature-multi_chan_pwm (pull request #973)
multi-channel PWM with single chan selection

Approved-by: Gregory Nutt <gnutt@nuttx.org>
2019-08-09 23:57:31 +00:00
Gregory Nutt
240926c995 Beginning to update comments to reflect new organization of the boards/ sub-directory. 2019-08-08 08:46:54 -06:00
David S. Alessio
ced0dc1e16 arch/arm/src/armv7-m: Add ARMv7-M setjmp/longjump functions. 2019-08-06 15:59:19 -06:00
Gregory Nutt
615c0ea7ee Change naming configs/ to boards in comments, Documentation, etc. Still a few more to go. 2019-08-05 07:13:48 -06:00
Alin Jerpelea
a1c991d921 Merged in alinjerpelea/nuttx (pull request #963)
Move boards to boards folder

* boards: rename configs folder to boards

    This is the proposed layout after the change:

    boards: - folder containing board folders
            <board>: - name of each board
                    drivers: - extra drivers specific for platform
                    include: - header files for the boars
                    scripts: - extra scripts specific for platform
                        src: - board specific code
                      tools: - extra tools specific for platform
                    <config>: - board specific configuration(s)

    Note:
    <xxx> names are dependent on platform

    This is a logical change to aim to the arch layout but this is a
    huge change it should be done in several steps to lower the risk.

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

* Kconfig: replace configs with boards

    The change is needed after the path change

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

* Makefile: replace configs with boards

    The change is needed after the path change

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

* Makefile.*: replace configs with boards

    The change is needed after the path change

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

* Make.defs: replace configs with boards

    The change is needed after the path change

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

* .sh: replace configs with boards

    The change is needed after the path change

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

* .mk: replace configs with boards

    The change is needed after the path change

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

* .c & .h: replace configs with boards

    The change is needed after the path change

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

* .bat: replace configs with boards

    The change is needed after the path change

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

Approved-by: Gregory Nutt <gnutt@nuttx.org>
2019-08-05 12:04:14 +00:00
Nathan Hartman
68d43d3679 Fix typos. 2019-08-04 14:50:28 -06:00
David Sidrane
2204b6506b Merged in david_s5/nuttx/master_stm_hw_hs (pull request #961)
stm32{L4|F4|H7}:serial add HW HS on UART 4 & 5

* stm32:serial add HW HS on UART 4 & 5

* stm32f7:serial update copyright date

* stm32h7:serial add HW HS on UART 4 & 5

* stm32l4:serial add HW HS on UART 4 & 5

Approved-by: Gregory Nutt <gnutt@nuttx.org>
2019-08-01 19:52:43 +00:00
Gregory Nutt
e0f1469526 Fix warnings found in build testing. 2019-07-28 17:50:57 -06:00
Gregory Nutt
a9b84eb941 arch/arm/src/stm32/Kconfig: Revert duplicate dependency introduced by 9f6361060d1f548ebce1b15fe83710daf2f59d11 2019-07-13 10:21:42 -06:00
Gregory Nutt
9f6361060d arch/arm/src/stm32/Kconfig: Segment LCD source clock selection should debug on CONFIG_STM32_LCD. 2019-07-13 10:07:02 -06:00
Alan Carvalho de Assis
b10df23454 arch/arm/src/stm32/Kconfig: Add the missing STM32 LCD Clock Source Selections. 2019-07-13 09:54:57 -06:00
Adam Porter
37c4fb5477 In stm32_ctrlout() in the HS and FS host drivers, the data buffer isn't sent. This patch passes the buffer and buflen to the stm32_ctrl_senddata() function. With this change, I am able to send MBIM control messages to my USB modem, and read the response. 2019-06-23 07:05:21 -06:00
Adam Porter
af9b70ca5d STM32,F7,H7,L4 OTG FS/HS: Fix constant using in comparison to determine endpoint is interrupt type. 2019-06-20 06:58:35 -06:00
raiden00pl
aaa173dd37 Merged in raiden00/nuttx_pe (pull request #891)
stm32/stm32_pwm.c, stm32h7/stm32_pwm.c: fix pulsecount for the number of counts greater than 128

Approved-by: Gregory Nutt <gnutt@nuttx.org>
2019-06-12 13:22:21 +00:00
raiden00pl
e923c7683b Merged in raiden00/nuttx_pe (pull request #886)
Fixes for STM32F1 PWM

arch/arm/src/stm32/hardware/stm32f1xxx_pinmap.h: fix names for complementary PWM outputs

Approved-by: Gregory Nutt <gnutt@nuttx.org>
2019-06-10 09:25:54 +00:00
Dave Marples
a2def2a4d1 arch/arm/src/common/up_lwl_console.c: Add support for a 'Lightweight Link' protocol between a target and debugger for use when you need a console but the target doesn't have a spare serial port or other available resource. 2019-06-03 07:31:17 -06:00
raiden00pl
04ea439121 Merged in raiden00/nuttx_h7 (pull request #880)
Initial PWM support for STM32H7

arch/arm/src/stm32h7: port PWM from STM32

Approved-by: Gregory Nutt <gnutt@nuttx.org>
2019-06-03 11:51:00 +00:00
rajan gill
0ceac9a969 arch/arm/src/stm32/stm32_adc.c: The attached patch fixes a compilation error when verbose analog debugging is enabled for the stm32 adc: not all stm32s have an SQR4 register. 2019-05-31 08:50:38 -06:00
Dave Marples
d518cbb170 arch/arm/src/stm32/Kconfig: Add MEDIUM_DENSITY selection. 2019-05-31 07:55:43 -06:00
Gregory Nutt
491520350a Fix a spelling error that was cloned in many files. 2019-05-31 07:24:19 -06:00
raiden00pl
f4caf4b3ec Merged in raiden00/nuttx_pe (pull request #877)
Improvements for STM32 PWM

arch/arm/src/stm32/stm32_pwm: add support for all PWM modes

arch/arm/src/stm32/stm32_pwm: add interface to change PWM mode

arch/arm/src/stm32/stm32_pwm: refactor pwm_mode_configure()

arch/arm/src/stm32/stm32_pwm: STM32_PWM_CHANx corresponds to the timer channel and STM32_PWM_OUTx corresponds to the timer channel output

arch/arm/src/stm32/stm32_pwm: add CHAN5 and CHAN6 to PWM_TIMx_NCHANNELS

arch/arm/src/stm32/stm32_pwm: calculate the PWM_TIMx_NCHANNELS if CONFIG_STM32_PWM_MULTICHAN is selected

Approved-by: Gregory Nutt <gnutt@nuttx.org>
2019-05-28 15:07:43 +00:00
Jason Harris
cc2d97f942 arch/arm/src/stm32/stm32_fsmc.h: Fix the include file guarding name in stm32/stm32_fsmc.h. 2019-05-27 11:15:37 -06:00
Jason Harris
2c3ca9d756 Here's a patch to split the STM32 FMC/FSMC functionality (FSMC = flexible static memory controller, FMC = flexible memory controller = FSMC + sdram support). This commit makes FMC it's own thing rather than piggy backing on the FSMC code. The peripherals have a few utility functions and this commits lets you have a common function in the arch/arm/src/stm32 rather than having duplicate functions in the board code. 2019-05-27 07:21:52 -06:00
Gregory Nutt
788f77a9af Cosmetic 2019-05-26 12:33:42 -06:00
Gregory Nutt
d5bbbba8ad Rename all remaining arch/xxx/src/xxx/chip to arch/xxx/src/xxx/hardware. 2019-05-25 09:27:28 -06:00
Gregory Nutt
4126ec86cb Rename arch/arm/src/stm32/chip to arch/arm/src/stm32/hardware. 2019-05-25 08:31:02 -06:00
Gregory Nutt
b49be4bb20 Squashed commit of the following:
arch/:  Removed all references to CONFIG_DISABLE_POLL.  The standard POSIX poll() can not longer be disabled.
    sched/ audio/ crypto/:  Removed all references to CONFIG_DISABLE_POLL.  The standard POSIX poll() can not longer be disabled.
    Documentation/:  Removed all references to CONFIG_DISABLE_POLL.  The standard POSIX poll() can not longer be disabled.
    fs/:  Removed all references to CONFIG_DISABLE_POLL.  The standard POSIX poll() can not longer be disabled.
    graphics/:  Removed all references to CONFIG_DISABLE_POLL.  The standard POSIX poll() can not longer be disabled.
    net/:  Removed all references to CONFIG_DISABLE_POLL.  The standard POSIX poll() can not longer be disabled.
    drivers/:  Removed all references to CONFIG_DISABLE_POLL.  The standard POSIX poll() can not longer be disabled.
    include/, syscall/, wireless/:  Removed all references to CONFIG_DISABLE_POLL.  The standard POSIX poll() can not longer be disabled.
    configs/:  Remove all references to CONFIG_DISABLE_POLL.  Standard POSIX poll can no longer be disabled.
2019-05-21 18:57:54 -06:00
Maximilian Kriegleder
8f285b249d arch/arm/src/stm32/Kconfig: Correct some typos in conditional logic. 2019-05-21 10:15:30 -06:00
raiden00pl
a5250662fa Merged in raiden00/nuttx_lora/lora (pull request #872)
Port AES and RND to STM32 M0 + some improvements

arch/arm/src/stm32f0l0/stm32_rng.c: change the function names to use the stm32_rng prefix

arch/arm/src/stm32f0l0/stm32_usbdev.c: move HSI48 enable to stm32xx_rcc.c

arch/arm/src/stm32f0l0: add support for AES

arch/arm/src/stm32f0l0: add support for RND

arch/arm/src/stm32f0l0: add HSI48 support for L0

Approved-by: Gregory Nutt <gnutt@nuttx.org>
2019-05-17 18:46:30 +00:00
raiden00pl
0c6df13a4c Merged in raiden00/nuttx_stm32 (pull request #871)
arch/arm/src/stm32/Kconfig: simplify ARCH_HAVE_FPU selection and remove redundant options for F207

Approved-by: Gregory Nutt <gnutt@nuttx.org>
2019-05-17 11:41:16 +00:00
Gregory Nutt
4676470dd7 arch/arm/src/stm32/chip/stm32_i2c.h: Fix typo in last PR noted by David Sidrane 2019-05-15 09:34:50 -06:00
raiden00pl
8ce1f1a67b Merged in raiden00/nuttx_lora/lora (pull request #869)
Port STM32F7 I2C to STM32F3 and STM32F0L0

arch/arm/src/stm32: port I2C IPv2 driver from F7 (only F3 chips)

arch/arm/src/stm32f0l0: port I2C IPv2 driver from F7

configs/b-l072z-lrwan1: nxlines_oled example (ssd1306)

configs/b-l072z-lrwan1: support for the I2C tool

configs/nucleo-f303ze: nxlines_oled example (ssd1306)

arch/arm/src/stm32h7/chip.h: cosmetics

arch/arm/src/stm32/chip/stm32_tim.h: cosmetics

Approved-by: Gregory Nutt <gnutt@nuttx.org>
2019-05-15 08:20:28 +00:00
Gregory Nutt
3e848fb893 Merged imxrt1020 into master 2019-04-30 16:08:46 -06:00
Gregory Nutt
abf6965c24 Squashed commit of the following:
libs/:  Remove references to CONFIG_DISABLE_SIGNALS.  Signals can no longer be disabled.
    syscall/:  Remove references to CONFIG_DISABLE_SIGNALS.  Signals can no longer be disabled.
    wireless/:  Remove references to CONFIG_DISABLE_SIGNALS.  Signals can no longer be disabled.
    Documentation/:  Remove references to CONFIG_DISABLE_SIGNALS.  Signals can no longer be disabled.
    include/:  Remove references to CONFIG_DISABLE_SIGNALS.  Signals can no longer be disabled.
    drivers/:  Remove references to CONFIG_DISABLE_SIGNALS.  Signals can no longer be disabled.
    sched/:  Remove references to CONFIG_DISABLE_SIGNALS.  Signals can no longer be disabled.
    configs:  Remove references to CONFIG_DISABLE_SIGNALS.  Signals can no longer be disabled.
    arch/xtensa:  Remove references to CONFIG_DISABLE_SIGNALS.  Signals can no longer be disabled.
    arch/z80:  Remove references to CONFIG_DISABLE_SIGNALS.  Signals can no longer be disabled.
    arch/x86:  Remove references to CONFIG_DISABLE_SIGNALS.  Signals can no longer be disabled.
    arch/renesas and arch/risc-v:  Remove references to CONFIG_DISABLE_SIGNALS.  Signals can no longer be disabled.
    arch/or1k:  Remove all references to CONFIG_DISABLE_SIGNALS.  Signals are always enabled.
    arch/misoc:  Remove all references to CONFIG_DISABLE_SIGNALS.  Signals are always enabled.
    arch/mips:  Remove all references to CONFIG_DISABLE_SIGNALS.  Signals are always enabled.
    arch/avr:  Remove all references to CONFIG_DISABLE_SIGNALS.  Signals are always enabled.
    arch/arm:  Remove all references to CONFIG_DISABLE_SIGNALS.  Signals are always enabled.
2019-04-29 14:52:05 -06:00
Gregory Nutt
c7f042ba14 arch/arm/src: Remove dependency on CONFIG_ARCH_FPU for inclusion of nvic.h in all other *_start.c files. 2019-04-25 07:17:10 -06:00
Jason Harris
2609b0dff3 drivers/usbhost/usbhost_storage.c: Correct typo "const const" to "const".
arch/arm/src/stm32/stm32_i2s.c:  In debug assertions, it  on a sample rate of 0, but based on other code comments this value implies disabling the i2s master clock.

arch/arm/src/stm32/stm32_usbhost.h and arch/arm/src/stm32/Kconfig:  Allow vbus monitoring for the OTG_HS host driver.
2019-04-23 11:11:11 -06:00
Matias N
7ac80a1d56 arch/arm/src/stm32/Kconfig: it seems one option in the timer configuration was lost at some point. 2019-04-15 14:57:01 -06:00