Commit Graph

12333 Commits

Author SHA1 Message Date
Masayuki Ishikawa
e7d44ee16e arch: armv7-a: Fix heap corruption in SMP mode
Currently up_allocate_heap() assumes that g_idle_topstack points
top of the heap memory. However, g_idle_topstack pointed incorrect
address in SMP mode which resulted in heap corruption. This PR
moves g_idle_topstack at the end of .noinit to avoid this issue.

Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>
2020-02-18 07:06:12 -06:00
YAMAMOTO Takashi
7513cb6921 CONFIG_ARM_SEMIHOSTING_HOSTFS: mention limited support of directories 2020-02-18 17:11:59 +08:00
YAMAMOTO Takashi
9d4e9ce21e Make this build with CONFIG_ARM_SEMIHOSTING_HOSTFS=y 2020-02-18 13:46:33 +08:00
Nathan Hartman
239537fd9d arch/arm/include/tiva/chip.h: Fix typos 2020-02-17 16:50:03 -06:00
YAMAMOTO Takashi
5ebce26cc7 Fix "unused" warnings with CONFIG_TIVA_WITH_QEMU=y 2020-02-17 13:41:10 +08:00
Juha Niskanen
15b78abccf Fix typos in comments 2020-02-14 08:50:45 -06:00
YAMAMOTO Takashi
f79b47ad25 tiva_serial.c: Make this buildable with certain configurations 2020-02-14 15:38:24 +08:00
Nicholas Chin
e1d35096cf arch/arm/src/imxrt/Kconfig: Fixes IMXRT_HAVE_LCD to only be selected by 1052 and 1062 and misc. typos 2020-02-12 09:42:07 -08:00
Nicholas Chin
8469de724a Fixes build issues with IMXRT Qencoder 2020-02-12 09:42:07 -08:00
Gregory Nutt
cfb7561e77 arch/arm/src/armv7-a/arm_vectors.S: Fix clobbered register in SMP mode. 2020-02-12 16:49:32 +01:00
Nicholas C
c4c0d05891 arch/arm/src/imxrt; Adds clock config logic and Kconfig menus for FLEXIO on IMXRT 2020-02-10 20:36:22 -06:00
Xiang Xiao
6d69439f58 Call xxx_timer_initialize from clock subsystem
Call xxx_timer_initialize from clock subsystem to make timer ready for use as soon as possiblei and revert the workaround:

commit 0863e771a9
Author: Gregory Nutt <gnutt@nuttx.org>
Date:   Fri Apr 26 07:24:57 2019 -0600

    Revert "sched/clock/clock_initialize.c:  clock_inittime() needs to be done with CONFIG_SCHED_TICKLESS and clock_initialize should skip clock_inittime() for external RTC case since the RTC isn't ready yet."

    This reverts commit 2bc709d4b9.

    Commit 2bc709d4b9 was intended to handle the case where up_timer_gettime may not start from zero case.  However, this change has the side-effect of breaking every implementation of tickless mode:  After this change the tickless timer structures are used before they are initialized in clock_inittime().  Initialization happens later when up_initialize is called() when arm_timer_initialize().

    Since the tickless mode timer is very special, one solution might be to

    1. Rename xxx_timer_initialize to up_timer_initialize
    2  Move up_timer_initialize to include/nuttx/arch.h
    3.  Call it from clock subsystem instead up_initialize

    Basically, this change make timer initialization almost same as rtc initialization(up_rtc_initialize).

    For now, however, we just need to revert the change.
2020-02-08 07:40:06 -06:00
Xiang Xiao
76bbed07a4 Call up_irqinitialize from irq subsystem
Call up_irqinitialize from irq subsystem to make the irq ready for use as soon as possible
2020-02-08 07:39:22 -06:00
Xiang Xiao
a8de37fbec Ensure all source code end with one and only one newline
by this command:
git ls-files -z | while IFS= read -rd '' f; do tail -c1 < "$f" | read -r _ || echo >> "$f"; done
2020-02-08 07:25:56 -06:00
liuguo09
e21c30cf9d
arch/arm/include/stm32f010g0/chip.h: correct wrong #if defined to fix build break (#227)
/home/jenkins/jenkins-slave/workspace/NuttX-Nightly-Build/nuttx/include/arch/stm32f0l0g0/chip.h:53:42: error: missing ')' after "defined"
   53 | #if defined(CONFIG_ARCH_CHIP_STM32F030RC || CONFIG_ARCH_CHIP_STM32F030CC)
      |                                          ^~
/home/jenkins/jenkins-slave/workspace/NuttX-Nightly-Build/nuttx/include/arch/stm32f0l0g0/chip.h:53:45: error: missing binary operator before token "CONFIG_ARCH_CHIP_STM32F030CC"
   53 | #if defined(CONFIG_ARCH_CHIP_STM32F030RC || CONFIG_ARCH_CHIP_STM32F030CC)

Signed-off-by: liuhaitao <liuhaitao@xiaomi.com>
2020-02-07 08:30:58 -08:00
Peter van der Perk
499607d68f
S32K add support for Nxp drone boards (#224)
* S32K add support for Nxp drone boards

* Update arch/arm/src/s32k1xx/hardware/s32k1xx_rtc.h codestyle

Co-Authored-By: David Sidrane <David.Sidrane@Nscdg.com>

Co-authored-by: Jari van Ewijk <jari.vanewijk@nxp.com>
Co-authored-by: David Sidrane <David.Sidrane@Nscdg.com>
2020-02-07 04:53:40 -08:00
David Sidrane
2d5141baf8
Merge pull request #222 from han1raaijmakers/imxrtI2C
imxrt added missing i2c prescale mask
2020-02-07 04:09:24 -08:00
David Sidrane
cabd6927bc
Merge pull request #223 from han1raaijmakers/KinetisTJA110X
Kinetis renamed TJA1100 to TJA110X registers
2020-02-07 04:08:41 -08:00
Peter van der Perk
d79e673468 imxrt added missing i2c prescale mask 2020-02-07 10:09:43 +01:00
Peter van der Perk
513475c11c Kinetis renamed TJA1100 to TJA110X registers 2020-02-07 10:04:48 +01:00
Alan Carvalho de Assis
7f91a737ea arch/arm/include/stm32f010g0/chip.h: Add support for STM32F030CC 2020-02-06 17:40:05 +00:00
David Sidrane
4c0bc308cc
Merge pull request #212 from bkueng/stm32_spibus_initialize_fix
fix stm32_spibus_initialize: add missing leave_critical_section
2020-02-06 01:33:43 -08:00
Beat Küng
729af004c0
fix stm32_spibus_initialize: ensure leave_critical_section is called
in case the requested SPI bus is invalid or not configured.
2020-02-06 08:05:21 +01:00
Alan Carvalho de Assis
bc00f6e444 arch/arm/src/stm32f010g0: Add memorymap and pimmap support for the
STM32F030RC
2020-02-05 22:38:04 +00:00
Alan Carvalho de Assis
af68c22a2e arch/arm/src/kinetis/kinetis_spi.c: Clear the MDIS bit before trying to
disable TX or RX.
2020-02-04 20:45:00 +00:00
Xiang Xiao
c5b1554d84 Remove NETDEV_LOOPBACK option, NET_LOOPBACK is enough 2020-02-02 08:25:06 -06:00
Xiang Xiao
5c80b94820 Replace #include <semaphore.h> to #include <nuttx/semaphore.h>
Since the kernel side should call nxsem_xxx instead and remove the unused inclusion
2020-02-01 08:27:30 -06:00
Xiang Xiao
80277d1630
Refine the preprocessor conditional guard style (#190) 2020-01-31 19:07:39 +01:00
Xiang Xiao
68951e8d72 Remove exra whitespace from files (#189)
* Remove multiple newlines at the end of files
* Remove the whitespace from the end of lines
2020-01-31 09:24:49 -06:00
David Sidrane
04a7ccdc68 imxrt - interrupt serial storm, add DTCM and set up I and D cache (#175)
* Serial Fixed interrupt storm

  The target would randomly hang in the serial isr.
  The priv->ie and the hardware were inconsistent.
  The isr used the priv->ie to gate offloading
  the RX data. Bang! Hung.

                  imxrt_disableuartint(priv, &ie);
                  ret = imxrt_setup(dev);

                  /* Restore the interrupt state */

                  imxrt_restoreuartint(priv, ie);
       interrupt->  Of no return
                  priv->ie = ie;

   On a fast cpu with FIFO, this will not work
   with out proper protections.

* Serial: Conditionally enable 9 bit mode

* armv7-mi/mpu.hi: Restructure API

   Preserve the existing API and enabled better granualriy on
   setting.

* Enable MPU for non protected builds to set cache

* mpuinit use symbolic values for addresses

* Allow DTCM on HEAP

* allocateheap Fix Coding style
2020-01-29 07:33:19 -06:00
Dave Marples
e99a8d192d Generic SPI interface for controlling an LCD display 2020-01-28 11:32:35 -03:00
taikoyaP
4813b9d751 arch/arm/src/stm32l4/stm32l4_flash.c: Fix flash_erase(page) when page >= 256 (#170)
All STM32L4 MPUs have FLASH_CR_PNB bits (8 bits), and some MPUs have FLASH_CR_BKER bit to change bank if page >= 256.
The code wasn't setting or clearing FLASH_CR_BKER correctly.
2020-01-27 14:56:17 +00:00
YAMAMOTO Takashi
5515e09e8d Fix some "from from" in code comments 2020-01-27 08:46:46 +01:00
Satoshi Togawa
705ac84432 STM32L4: Add workaround of data cache corruption on RWW.
Author: Gregory Nutt <gnutt@nuttx.org>

    Run .c modified by the PR through tools/nxstyle and correct all reporting coding style problems noted in the file.

Author: Satoshi Togawa <togawa@develcb210.centurysys.co.jp>

    STM32L4: Add workaround of data cache corruption on RWW.

    Some STM32L4 chips has eratta "Data cache might be corrupted during Flash Read While Write operation". This is also in STM32, and arch/arm/src/stm32/stm32f20xxf40xx_flash.c has workaround.

    To enable this workaround, define CONFIG_STM32L4_FLASH_WORKAROUND_DATA_CACHE_CORRUPTION_ON_RWW.
2020-01-26 08:57:12 -06:00
Satoshi Togawa
50223920a8 arch/arm/src/stm32l4/hardware/stm32l4_flash.h: Add flash register bit in stm32l4x5
STM32L4x5 MPUs have flash bank register bits similar to STM32L4x6.  But it is not defined on these MPUs in stm32l4_flash.h.  So I define these bits.
2020-01-25 17:46:06 -06:00
patacongo
b46b76c956 Fix implicit definition warnings do to missing inclusion of nuttx/time.h (#162)
Recent changes removed CONFIG_TIME_ENHANCED and unmasked some warnings.  These warnings were caused by nuttx/time.h not being included by files that now referenced clock_daysbeforemonth() and clock_isleapyear().

This commit adds those missing inclusions and eliminates the warnings.

Co-authored-by: Gregory Nutt <gnutt@nuttx.org>
2020-01-24 23:06:19 +01:00
Gregory Nutt
d644b759b2 arch/arm/src/lpc17_40/lpc17_49_ethernet.c: Fix build failure.
Fix these build errors which occurred if there was no PHY:

chip/lpc17_40_ethernet.c:1643:31: error: expected expression before ';' token
  ret lpc17_40_phyinit();

chip/lpc17_40_ethernet.c:3941:1: error: expected identifier or '(' before '{' token
  {

chip/lpc17_40_ethernet.c:448:13: warning: 'lpc17_40_macmode' used but never defined
  static void lpc17_40_macmode(uint8_t mode);
2020-01-23 19:45:41 -03:00
Xiang Xiao
ac4735cf58 Many fixes on Kconfigs and defconfigs do SDIO, NETDEV, USBHOST
Author: Xiang Xiao <xiaoxiang@xiaomi.com>

    Fix warning: selects SDIO_DMA or SDIO_BLOCKSETUP which has unmet direct dependencies (MMCSD)

    Fix warning: selects NETDEV_TELNET which has unmet direct dependencies (NETDEVICES && NET && NET_TCP)

    Fix warning: selects ARCH_PHY_INTERRUPT which has unmet direct dependencies (NETDEVICES && ARCH_HAVE_PHY)

    Fix warning: selects USBHOST_HAVE_ASYNCH which has unmet direct dependencies (USBHOST)

    Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2020-01-23 11:41:12 -03:00
Xiang Xiao
1e3f457c9e Remove TIME_EXTENDED option to more conform C standard
Gregory Nutt <gnutt@nuttx.org>

    Run all .c and .h files modified in this PR through nxstyle and correct all coding standard problems.

Xiang Xiao <xiaoxiang@xiaomi.com>

    Remove TIME_EXTENDED option to more conform C standard

    Note: the code/data size increment is small
2020-01-23 08:17:22 -06:00
patacongo
1658d75005 arch/arm/src/stm32/stm32_dac.c: Fix warning (#148)
Fix warning found in build testing:  "warning:  'dac_interrupt' defined but not used [-Wunused-function].  The compiler is right, dac_interrupt is not used.  It is, apparently, a placeholder for future interrupt support.  Now conditioned out with #if 0 to suppress build test warnings.

Co-authored-by: Gregory Nutt <gnutt@nuttx.org>
2020-01-22 18:35:38 +01:00
Gregory Nutt
c1f75af084 Fix SAMA5D* warnings
sama5d3-xplained:ethernet-over-phy configuration found in build testing:

  arch/arm/src/sama5/sam_irq.c:  Fix "Control reaches end of non-void function " warning
  arch/arm/src/sama5/sam_udphs.c:  Fix "unused variable 'epno'" warning
  boards/arm/sama5/sama5d*-*/src/sam_usb.c:  Fix "warning 'HAVE_USBHOST' not defined" warnings
2020-01-22 16:42:46 +01:00
Masayuki Ishikawa
a218953082 arch: cxd56xx: Fix hardfault when accessing to uSD card
The bug had been introduced in recent refactoring.

Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>
2020-01-21 08:13:20 -03:00
Daniel P. Carvalho
3054ade4cf Fix some build issues when CONFIG_PWM_PULSECOUNT is enabled. 2020-01-20 16:23:37 -03:00
Juha Niskanen
a762c06ed9 Fix typos and some incorrect comments
Author: Alan Carvalho de Assis <acassis@gmail.com>

    Run nxstyle against .c and .h files and fix it

Author: Juha Niskanen <juha.niskanen@haltian.com>

    Fix typos and some incorrect comments
2020-01-20 09:32:36 -03:00
raiden00pl
e0cd10b7d5 Nrf52 imrpovements (#119)
* arch/arm/src/nrf52/hardware/nrf52_twi.h: fix typo

  * arch/arm/src/nrf52/nrf52_i2c.c: add interrupts support and some debug messages

  * boards/arm/nrf52/nrf52840-dk: add support for hts221 and lsm303agr; boards/arm/nrf52/nrf52840-dk: fix issues noted by nxstyle
2020-01-17 14:30:34 +00:00
Nathan Hartman
d1dd2841c5 Fix typos in comments and README.txt.
No functional changes.
2020-01-15 10:09:34 -06:00
Mateusz Szafoni
58c3ee65e7 nrf52 improvements
Author: Alan Carvalho de Assis <acassis@gmail.com>

    Run nxstyle on .c and .h files and fix it

Author: raiden00pl <raiden00pl@gmail.com>

    arch/arm/src/nrf52: use the same naming convention for register defs

    arch/arm/src/nrf52/hardware/nrf52_ficr.h: remove invalid defs

    arch/arm/src/nrf52/hardware: add TIMER register defs
2020-01-15 11:43:36 -03:00
Nathan Hartman
72a0934bcc arch/arm/include/cxd56xx/audio.h: Fix minor typos 2020-01-14 20:57:29 -03:00
Daniel P. Carvalho
bf5d48acac Add SPWM example to test STM32L4 PWM driver low level operations
Author: Alan Carvalho de Assis <acassis@gmail.com>

    Run nxstyle again .c file and fix error message

Author: Daniel P. Carvalho <danieloak@gmail.com>

    Add SPWM example to test STM32L4 PWM driver low level operations.

    Fix BUGs.
2020-01-14 11:53:26 -03:00
patacongo
f00569816f Fix a few errors concerning use of section block comments in .c files: (#95)
1. No .c file should include a "Public Types" section.  Only a header file can define a public type.  A .c file can only define a private type.  Several files contained private type definitions.  The section that they were defined in, however, was incorrectly named "Public Types."  Those were easilty changed to "Private Types" which is what they are.

2. No .c file should include a "Public Function Prototypes" section.  All global function prototypes should be provided via a header file and never declared with a .c file.

For No. 2, I corrected as many cases as was reasonable for the time that I had available.  But there are still a dozen or so .c files that declare "Public Function Prototypes" within a .c file.  This is bad programming style.  These declarations should all be moved to the proper header files.
2020-01-14 00:37:54 +01:00