Commit Graph

36133 Commits

Author SHA1 Message Date
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
Alan Carvalho de Assis 05a346214c Disable MKRD RAMDISK support to save 1KB of memory 2020-01-23 16:46:36 -06: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
Gregory Nutt 50c3f9ce58 boards/arm/c5471/c5471evm/configs/nsh/defconfig: Fix build breakage
This change backs out a portion of ac4735cf58 and corrects the dependencies on CONFIG_NETUTILS_TELNETD.  Without this change, the configuration will not build.  It will fail with:

nsh.h:154:4: error: #error "No NSH frtont end defined."
2020-01-23 18:31:53 -03:00
Gregory Nutt 211c6dcaa7 Remove unused configuration option CONFIG_RAMDISK 2020-01-23 17:42:56 -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
liuhaitao c09071ffe8 tools/testbuild.sh: use fail to record build result
CI should know the build status of testbuild.sh, so use -k make flag option as default
instead of -i ignore-error option. Then use fail to record build result. In addition,
refresh .config if toolchain updated.

Change-Id: I182c2b2db489e6ccb0a79fdc664072d19974c3ca
Signed-off-by: liuhaitao <liuhaitao@xiaomi.com>
2020-01-23 10:29:56 -03:00
Xiang Xiao 540e947c0c Run ./tools/refresh.sh --silent all 2020-01-22 20:47:18 -06:00
Xiang Xiao 7d33af1360 Change boards/z16/z16f2811 to boards/z16/z16f
to fix the follow error:
Refresh z16f2800100zcog/nsh
LN: include/arch to arch/z16/include
LN: include/arch/board to /workspace/mirtos/nuttx/boards/z16/z16/z16f2800100zcog/include
No directory at /workspace/mirtos/nuttx/boards/z16/z16/z16f2800100zcog/include
2020-01-22 20:46:02 -06:00
Xiang Xiao 12cc24abb2 Change boards/renesas/sh7032 to boards/renesas/sh1
to fix the follow error:
Refresh us7032evb1:nsh
LN: include/arch to arch/renesas/include
LN: include/arch/board to /workspace/mirtos/nuttx/boards/renesas//us7032evb1/include
No directory at /workspace/mirtos/nuttx/boards/renesas//us7032evb1/include
2020-01-22 20:45:11 -06:00
Xiang Xiao 9a8ff07716 Change boards/renesas/m32262f8 to boards/hc/m16c
to fix the follow error:
Refresh skp16c26/ostest
LN: include/arch/board to /workspace/mirtos/nuttx/boards/renesas/m32262f8/skp16c26/include
LN: include/arch/chip to arch/renesas/include/m32262f8
2020-01-22 20:44:18 -06:00
Xiang Xiao 3db775f0d0 Change boards/hc/mcs92s12ne64 to boards/hc/m9s12
fix the follow error:
Refresh demo9s12ne64/ostest
LN: include/arch/board to /workspace/mirtos/nuttx/boards/hc/mcs92s12ne64/demo9s12ne64/include
LN: include/arch/chip to arch/hc/include/mcs92s12ne64
No directory at /workspace/mirtos/nuttx/arch/hc/include/mcs92s12ne64
2020-01-22 20:43:26 -06:00
Xiang Xiao 4bd4f3b424 tools/refresh.sh: support to refresh all configuration by pseudo config 2020-01-22 20:41:53 -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
liuhaitao ac1b59fb01 clicker2-stm32/mrf24j40-mac: enable SCHED_LPWORK config to fix build break
Author: liuhaitao <liuhaitao@xiaomi.com>

    clicker2-stm32/mrf24j40-mac: enable SCHED_LPWORK config to fix build break

    ieee802154/mac802154_internal.h:75:4: error: #error Both Low and High priority work queues are required for this driver
       75 | #  error Both Low and High priority work queues are required for this driver
          |    ^~~~~
    ERROR: arm-none-eabi-gcc failed: 1

    nucleo-f303re/nxlines: enable NXSTART_EXTERNINIT config to fix build break

    arm-none-eabi-ld: /var/lib/jenkins/workspace/NuttX-Nightly-Build/nuttx/staging/libgraphics.a(nxmu_start.o): in function `nx_server':
    nxmu_start.c:(.text+0x2): undefined reference to `board_lcd_initialize'
    arm-none-eabi-ld: nxmu_start.c:(.text+0xc): undefined reference to `board_lcd_getdev'
    make[1]: *** [nuttx] Error 1

    Disable cxx new long to fix build break for some sam34 boards configs

    Build fail log as below:
    CXX:  libxx_new.cxx
    libxx_new.cxx:66:7: error: 'operator new' takes type 'size_t' ('unsigned int') as first parameter [-fpermissive]
       66 | void *operator new(unsigned long nbytes)
          |       ^~~~~~~~
    Makefile:102: recipe for target 'libxx_new.o' failed

    Signed-off-by: liuhaitao <liuhaitao@xiaomi.com>
2020-01-22 12:54:33 -03: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
Greg Nutt 6b413ec241 net/tcp: Fix errors found in build testing.
Author: Gregory Nutt <gnutt@nuttx.org>

    net/tcp: Fix errors found in build testing.

    Recent re-organization moved some functions from net/inet to net/tcp and net/udp.  This include references to nxsem_wait(), SEM_PRIO_NONE, and other internal NuttX semaphore functions.  These all failed to compile because nuttx/semaphore.h was not included in any of the files.
2020-01-22 12:29:26 -03:00
patacongo d126ddeeed Kconfig: Mark Windows Native build as EXPERIMENTAL (#144)
Kconfig:  the CONFIG_WINDOWS_NATIVE options now depends on CONFIG_EXPERIMENTAL.  The Windows native build is complete and available, but not often used or verified.  As a consequence, it cannot be assured to be fully functional at any given time.  Hence, it is marked here as EXPERIMENTAL so that the end user will be aware of this state.

boards/arm/stm32/stm32f4discovery/configs/winbuild/defconfig:  Add CONFIG_EXPERIMENTAL to the windbuild configuration.  It is now necessary for this configuratino to be a viable test configuration.

Co-authored-by: Gregory Nutt <gnutt@nuttx.org>
2020-01-22 16:22:59 +01:00
chao.an 5a53ed6e9c kwork/notifier: initialize the work handler
kworker dqueue corruption if the garbage in work->worker handler

Change-Id: Ice5e66e8ed080a7539d5fe02f946a66794cbda7d
Signed-off-by: chao.an <anchao@xiaomi.com>
2020-01-22 10:05:28 +01:00
Xiang Xiao d865500770 Enhance the syntax of testlist-file for testbuild.sh
1.Scan the folder under nuttx/boards by prefix /
2.Skip the specified configuration by prefix -

Change-Id: Ibb67f2c6b96cd8e439d94bf71d098c1fd9e5a79d
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2020-01-21 13:39:15 -03:00
chao.an c709ed2464 tools/Makefile.unix and Makefile.won: In distclean target, unlink the dir after subdir clean
Ensure the linked dir can be clean complete in multi-job case
2020-01-21 08:37:59 -06:00
Gregory Nutt 6d4b86ff06 net/tcp/tcp.h: Correct spacing error introduced with the last PR. 2020-01-21 08:30:39 -06:00