You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@nuttx.apache.org by ag...@apache.org on 2020/01/24 10:23:38 UTC
[incubator-nuttx] branch master updated: boards/x86: Fix qemu build
break (#158)
This is an automated email from the ASF dual-hosted git repository.
aguettouche pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-nuttx.git
The following commit(s) were added to refs/heads/master by this push:
new 758934e boards/x86: Fix qemu build break (#158)
758934e is described below
commit 758934e53d8f1df50378fbf0bd0667f438d8ab6d
Author: liuhaitao <li...@xiaomi.com>
AuthorDate: Fri Jan 24 11:16:26 2020 +0000
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 <li...@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 <li...@xiaomi.com>
---
boards/x86/qemu/qemu-i486/configs/nsh/defconfig | 1 +
boards/x86/qemu/qemu-i486/configs/ostest/defconfig | 1 +
boards/x86/qemu/qemu-i486/src/Makefile | 4 ++
boards/x86/qemu/qemu-i486/src/qemu_appinit.c | 79 ++++++++++++++++++++++
4 files changed, 85 insertions(+)
diff --git a/boards/x86/qemu/qemu-i486/configs/nsh/defconfig b/boards/x86/qemu/qemu-i486/configs/nsh/defconfig
index 98d8b24..b956fde 100644
--- a/boards/x86/qemu/qemu-i486/configs/nsh/defconfig
+++ b/boards/x86/qemu/qemu-i486/configs/nsh/defconfig
@@ -23,6 +23,7 @@ CONFIG_ARCH_CHIP="qemu"
CONFIG_ARCH_CHIP_QEMU=y
CONFIG_ARCH_STACKDUMP=y
CONFIG_ARCH_X86=y
+CONFIG_ARCH_X86_M32=y
CONFIG_BOARD_LOOPSPERMSEC=999
CONFIG_BOOT_RUNFROMEXTSRAM=y
CONFIG_FS_FAT=y
diff --git a/boards/x86/qemu/qemu-i486/configs/ostest/defconfig b/boards/x86/qemu/qemu-i486/configs/ostest/defconfig
index f0353dc..ad0814b 100644
--- a/boards/x86/qemu/qemu-i486/configs/ostest/defconfig
+++ b/boards/x86/qemu/qemu-i486/configs/ostest/defconfig
@@ -12,6 +12,7 @@ CONFIG_ARCH_CHIP="qemu"
CONFIG_ARCH_CHIP_QEMU=y
CONFIG_ARCH_STACKDUMP=y
CONFIG_ARCH_X86=y
+CONFIG_ARCH_X86_M32=y
CONFIG_BOARD_LOOPSPERMSEC=999
CONFIG_BOOT_RUNFROMEXTSRAM=y
CONFIG_DEV_LOWCONSOLE=y
diff --git a/boards/x86/qemu/qemu-i486/src/Makefile b/boards/x86/qemu/qemu-i486/src/Makefile
index f4c619b..3c40b8a 100644
--- a/boards/x86/qemu/qemu-i486/src/Makefile
+++ b/boards/x86/qemu/qemu-i486/src/Makefile
@@ -38,4 +38,8 @@
ASRCS =
CSRCS = qemu_boot.c
+ifeq ($(CONFIG_LIB_BOARDCTL),y)
+ CSRCS += qemu_appinit.c
+endif
+
include $(TOPDIR)/boards/Board.mk
diff --git a/boards/x86/qemu/qemu-i486/src/qemu_appinit.c b/boards/x86/qemu/qemu-i486/src/qemu_appinit.c
new file mode 100644
index 0000000..c4622f6
--- /dev/null
+++ b/boards/x86/qemu/qemu-i486/src/qemu_appinit.c
@@ -0,0 +1,79 @@
+/****************************************************************************
+ * boards/x86/qemu/qemu-i486/src/qemu_appinit.c
+ *
+ * Copyright (C) 2020 Gregory Nutt. All rights reserved.
+ * Author: Gregory Nutt <gn...@nuttx.org>
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in
+ * the documentation and/or other materials provided with the
+ * distribution.
+ * 3. Neither the name NuttX nor the names of its contributors may be
+ * used to endorse or promote products derived from this software
+ * without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+ * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
+ * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
+ * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ * POSSIBILITY OF SUCH DAMAGE.
+ *
+ ****************************************************************************/
+
+/****************************************************************************
+ * Included Files
+ ****************************************************************************/
+
+#include <nuttx/config.h>
+#include <nuttx/board.h>
+
+#include "up_internal.h"
+
+/****************************************************************************
+ * Public Functions
+ ****************************************************************************/
+
+/****************************************************************************
+ * Name: board_app_initialize
+ *
+ * Description:
+ * Perform application specific initialization. This function is never
+ * called directly from application code, but only indirectly via the
+ * (non-standard) boardctl() interface using the command BOARDIOC_INIT.
+ *
+ * Input Parameters:
+ * arg - The boardctl() argument is passed to the board_app_initialize()
+ * implementation without modification. The argument has no
+ * meaning to NuttX; the meaning of the argument is a contract
+ * between the board-specific initialization logic and the
+ * matching application logic. The value cold be such things as a
+ * mode enumeration value, a set of DIP switch switch settings, a
+ * pointer to configuration data read from a file or serial FLASH,
+ * or whatever you would like to do with it. Every implementation
+ * should accept zero/NULL as a default configuration.
+ *
+ * Returned Value:
+ * Zero (OK) is returned on success; a negated errno value is returned on
+ * any failure to indicate the nature of the failure.
+ *
+ ****************************************************************************/
+
+#ifdef CONFIG_LIB_BOARDCTL
+int board_app_initialize(uintptr_t arg)
+{
+ return 0;
+}
+#endif /* CONFIG_LIB_BOARDCTL */