Commit Graph

36155 Commits

Author SHA1 Message Date
Gregory Nutt
2def8035db sched/sched/sched_getcpu.c: Implement non-standard interface.
If SMP is enabled this function will return the number of the CPU that the thread is running on.  This is non-standard but follows GLIBC if __GNU_SOURCE is enabled.  The returned CPU number is, however, worthless since it returns the CPU number of the CPU that was executing the task when the function was called.  The application can never know the true CPU number of the CPU tht it is running on since that value is volatile and change change at any time.
2020-01-31 20:25:15 +00: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
Gregory Nutt
960c26491c Run tools/nxstyle against all files modified by PR187 and correct complaints 2020-01-30 19:06:13 -06:00
Ouss4
73bdb433bb arch/mips/pic32mz/pic32mz-lowconsole.c: Wait for transfer complete.
Wait for the transfer to complete when using up_lowputc.
2020-01-30 19:03:54 -06:00
Ouss4
701b6897d7 arch/mips/src/pic32mz/pic32mz-head.S: Add showprogress macro 2020-01-30 19:03:01 -06:00
Ouss4
300fe5e354 arch/mips/src/Common and mips32: Access g_current_regs through the macro CURRENT_REGS. 2020-01-30 19:01:47 -06:00
minabeoki
1600980a82 fix gran_alloc() miss allocation in mm_granalloc.c. 2020-01-30 12:22:23 -03:00
Xiang Xiao
b80fb6befc net/utils: Fix the wrong mask calculation in net_ipv6_pref2mask 2020-01-30 07:47:07 -06:00
Xiang Xiao
174df6b793 net/utils/net_dsec2tick.c: Rturn type should unsigned int 2020-01-30 07:45:14 -06:00
Xiang Xiao
affc32c9d1 net/: Fix net checksum related issue
1. Remove the unused and unimplemented ipv6_chksum declaration
2. Update NET_ARCH_CHKSUM description to align with the implementation
3. Declare all checksum function prototype regardless CONFIG_NET_ARCH_CHKSUM
4. Remove the CONFIG_NET_ARCH_CHKSUM guard for tcp_ipv[4|6]_chksum
2020-01-30 07:44:36 -06:00
Masayuki Ishikawa
5a24d499cf boards: spresense: Add posix_spawn configuration
Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>
2020-01-30 09:22:21 +01:00
YAMAMOTO Takashi
2983fcdeb7 Fix an inverted logic in the following commit.
commit 39bd9ff670
	Author: YAMAMOTO Takashi <yamamoto@midokura.com>
	Date:   Wed Jan 29 00:17:05 2020 +0900

		sim: Prefix symbols with _ for non-ELF

		Namely for Mach-O.  Leave __CYGWIN__ case as it is.
2020-01-29 10:02:39 -08:00
Nathan Hartman
6c4b672a08 boards/sim/sim/sim/README.txt: Improve and rewrap text.
Fix some typos and grammar. Rewrap the text to 80 columns for
consistency with the rest of the file.
2020-01-29 11:27:09 -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
YAMAMOTO Takashi
ca5799e70d README.txt: Fix an example for Cygwin 2020-01-29 09:11:12 +01:00
YAMAMOTO Takashi
ba1a150dd2 snprintf: Fix a comment typo 2020-01-29 09:04:25 +01:00
YAMAMOTO Takashi
6251e81545 Makefile: Update a comment 2020-01-29 09:04:06 +01:00
YAMAMOTO Takashi
4174c818df sim: Don't bother to remove nuttx.rel after consuming
We usually don't remove input files like $OBJS.
2020-01-29 09:03:48 +01:00
YAMAMOTO Takashi
b2b84cb010 sim: Update documentation for macOS 2020-01-29 09:03:48 +01:00
YAMAMOTO Takashi
b5573c5b51 sim: Fix nuttx.rel for macOS
* ld doesn't have --start-groupi/--end-group things.  As far as I know,
  it works that way by default.

* objcopy with Mach-O support is not widely available.
  (GNU binutils seem to claim the support but it didn't actually work
  for me.  llvm-objcopy --redefine-syms explicitly rejects Mach-O.)
  Instead, use -unexported_symbols_list linker flag to hide symbols
  to avoid conflicts with host symbols.
2020-01-29 09:03:48 +01:00
YAMAMOTO Takashi
b879b9b908 sim: Fix ostest build on macOS
On some platforms like macOS, we can't create an empty archive.
2020-01-29 09:03:48 +01:00
YAMAMOTO Takashi
cc90d586c0 A workaround for macOS linker
It seems that "ld -r" on macOS doesn't include objects from
libraries for common symbols. Because of that, sim build
ends up with undefined references to globals like g_binfmts
and g_mmheap.

	@(#)PROGRAM:ld  PROJECT:ld64-530
	BUILD 18:57:17 Dec 13 2019
	configured to support archs: armv6 armv7 armv7s arm64 arm64e arm64_32 i386 x86_64 x86_64h armv6m armv7k armv7m armv7em
	LTO support using: LLVM version 11.0.0, (clang-1100.0.33.17) (static support for 23, runtime is 23)
	TAPI support using: Apple TAPI version 11.0.0 (tapi-1100.0.11)
2020-01-29 09:03:48 +01:00
YAMAMOTO Takashi
298c2e5e4f sim: Fix stack alignment
The recent x86-64 convention requires 16-byte alignment before
(not after) calling a function.

This fixes snprintf crash I observed on macOS while saving XMM registers.
2020-01-29 09:03:48 +01:00
YAMAMOTO Takashi
39bd9ff670 sim: Prefix symbols with _ for non-ELF
Namely for Mach-O.  Leave __CYGWIN__ case as it is.
2020-01-29 09:03:48 +01:00
YAMAMOTO Takashi
b1678d0e26 sim: Remove -g from LDFLAGS/LDLINKFLAGS
My copy of GNU ld documentation is saying that -g is ignored.
macOS's ld doesn't know the option and bails out.

	% ld -g
	ld: unknown option: -g
	%
2020-01-29 09:03:48 +01:00
YAMAMOTO Takashi
5c6cca8633 sim: Fix typos in README.txt 2020-01-29 09:03:48 +01:00
YAMAMOTO Takashi
69a8b9721c sim: Check __ELF__ for .type/.size directives
Mach-O assembler doesn't have them either.
2020-01-29 09:03:48 +01:00
YAMAMOTO Takashi
aa8aadf18e Use "uname -s" where "uname -o" is not available
Namely this changes HOSTOS for macOS from "Other" to "Darwin".

Also, suppress the following harmless messages during a "make":
(Missing redirect in tools/Makefile.host)

	uname: illegal option -- o
	usage: uname [-amnprsv]
2020-01-29 09:03:48 +01:00
YAMAMOTO Takashi
431317ef26 sethost.sh: Don't ignore "make olddefconfig" failure
I guess missing kconfig-conf is a common mistake for
newbies like me.  Bail out earlier instead of producing
random errors during a build.
2020-01-29 09:03:48 +01:00
Gregory Nutt
94483cf400 tools/nxstyle.c: Add logic to detect check for left brace in first column, but preceded by a blank line. That should never happen for the outermost opening branch (but could happen with internal compound statements).
Consider junk.c for example:

    /****************************************************************************
     * xx
     ****************************************************************************/

    /****************************************************************************
     * Private Types
     ****************************************************************************/

    struct foo_s

    {
      int bar;
    };

    /****************************************************************************
     * Public Functions
     ****************************************************************************/

    int dofoo(int barin)

    {
      barout = barin;
      return barout;
    }

nxstyle not detects these problems:

    $ tools/nxstyle.exe junk.c
    junk.c:11:0: error: Blank line before opening left brace
    junk.c:21:0: error: Blank line before opening left brace
2020-01-28 12:26:01 -03:00
Gregory Nutt
f27152a1af Fix several coding standard issues in the generic SPI LCD driver. 2020-01-28 12:00:02 -03:00
Dave Marples
e99a8d192d Generic SPI interface for controlling an LCD display 2020-01-28 11:32:35 -03:00
Masayuki Ishikawa
6ad906488e drivers: wireless: Return OK with 0 bytes in gs2200m_send_bulk() when device is busy.
Also, change max retry count and interval in driver layer.

Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>
2020-01-28 09:18:50 +01: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
83354983c3 Fix "with with" typos
In many cases, remove one of them.
In a few places, it looks like a typo of "width" actually.
2020-01-27 08:46:46 +01:00
YAMAMOTO Takashi
e02c14a926 libs/README.txt: Fix a typo
Also, remove an extra space.
2020-01-27 08:46:46 +01:00
YAMAMOTO Takashi
2d51ecbbaa INVIOLABLES.txt: Some missing periods 2020-01-27 08:46:46 +01:00
YAMAMOTO Takashi
4ff8698b0b INVIOLABLES.txt: Add a missing "be" 2020-01-27 08:46:46 +01: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
y-sugino
cf756061f4 arch: fe310: Fix comments 2020-01-26 07:18:47 -06:00
minabeoki
65ff48f7be fix typo berr messages in binfmt_execmodule.c 2020-01-26 07:03:30 -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
ecb2f99dfb drivers/rwbuffer.c: Fix coding style issues. (#164)
Run .c and .h files affected by PR163 through nxstyle and fix all coding style complaints.

Co-authored-by: Gregory Nutt <gnutt@nuttx.org>
2020-01-25 15:26:42 +01:00
Satoshi Togawa
aad1ab2574 Fix assertion occurrence in rwb_invalidate_writebuffer() 2020-01-25 07:48:34 -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
patacongo
36185d8366 boards/arm/lpc17xx_40xx/lx_cpu/configs/nsh: Fix build test error (#161)
Add CONFIG_MMCSD_SDIO=y to configuration.  This eliminates the following error found in build testing: lpc17_40_bringup.c: undefined reference to mmcsd_initialize
2020-01-24 16:51:32 +01:00
Gregory Nutt
5a3da5ef50 tools/testbuild.sh: Restore ability to select type of new and delete operators
This capability was erroneously removed by a previous commit.  This setting is necessary when the C++ code generated by the compiler uses the new and delete operators provided in libs/libxx.

Here is an example of an error scenario where this capability is required:

1. CONFIG_CXX_NEWLONG=y in the defconfig file
2. This causes libs/libxx to to generate a delete operator of this form:

   void delete(void*, unsigned long);

3. But the compiler expects to link with a delete operator of this form:

   void delete(void*, unsigned int);

That results in a link-time failure and the ONLY solution for avoiding that link time failure (short of some complete redesign) is to have a control over the CONFIG_CXX_NEWLONG setting and make sture that it is always disabled for that toolchain.

Other toolchains will require that CONFIG_CXX_NEWLONG=y in all cases.  This cannot be predicted because it is dependndent on the definitions provided by C libraries and header files that were build into binary toolchain.
2020-01-24 11:21:14 -03:00
liuhaitao
758934e53d boards/x86: Fix qemu build break (#158)
* qemu-i486: Enable 32-bit system with a 64-bit machine config

Change-Id: If2e7dd6f51b5732bcdfae2ac9784f58fab1f4abf
Signed-off-by: liuhaitao <liuhaitao@xiaomi.com>

* qemu-i486/nsh: Add board_app_initialize stub to fix boardctl build break

Add board_app_initialize stub in qemu_appinit.c to fix boardctl undefined reference
to board_app_initialize.

Change-Id: I75318ae7ab152f018ce3682db417d1f0fb1a1652
Signed-off-by: liuhaitao <liuhaitao@xiaomi.com>
2020-01-24 11:16:26 +00:00