mirror of
https://gitee.com/mirrors_PX4/PX4-Autopilot.git
synced 2026-10-06 13:18:52 +08:00
Several bugfixes contributed by Petteri Aimonen
git-svn-id: http://svn.code.sf.net/p/nuttx/code/trunk@5238 42af7a65-404d-4744-a932-0658087f49c3
This commit is contained in:
@@ -172,3 +172,14 @@
|
||||
NxWidgets/NxWM unit tests.
|
||||
|
||||
1.4 2012-xx-xx Gregory Nutt <gnutt@nuttx.org>
|
||||
|
||||
* libnxwidgets/Makefile, NxWidgets/nxwm/Makefile, and
|
||||
NxWidgets/UnitTests/nxwm/Makefile: Makefile improvements from
|
||||
submitted by Petteri Aimonen. Other Makefiles in the UnitTests
|
||||
directory probably also need these changes.
|
||||
* libnxwidgets/src/ccallback.cxx: Fix misplaced #endif. Provided
|
||||
by Petteri Aimonen.
|
||||
* libnxwidgets/src/cnxserver.cxx: Reduce delay to allow NX server
|
||||
to start. One second was un-necessarily long. Reduced to 50 MS.
|
||||
Reduction suggested by Petteri Aimonen.
|
||||
|
||||
|
||||
@@ -105,7 +105,7 @@ STACKSIZE = 2048
|
||||
|
||||
VPATH =
|
||||
|
||||
all: .built
|
||||
all: chkcxx chklibnxwidgets chklibnxwm .built
|
||||
.PHONY: clean depend context disclean chkcxx chklibnxwidgets chklibnxwm
|
||||
|
||||
# Object file creation targets
|
||||
@@ -163,7 +163,7 @@ $(NXWIDGETS_LIB): # Just to keep make happy. chklibnxwidgets does the work.
|
||||
|
||||
$(NXWM_LIB): # Just to keep make happy. chklibnxwm does the work.
|
||||
|
||||
.built: chkcxx chklibnxwidgets chklibnxwm $(OBJS) $(NXWIDGETS_LIB)
|
||||
.built: $(OBJS) $(NXWIDGETS_LIB)
|
||||
@( for obj in $(OBJS) ; do \
|
||||
$(call ARCHIVE, $(BIN), $${obj}); \
|
||||
done ; )
|
||||
|
||||
@@ -92,7 +92,7 @@ CXXFLAGS += ${shell $(TOPDIR)/tools/incdir.sh $(INCDIROPT) "$(CC)" $(NXWIDGETDIR
|
||||
DEPPATH = --dep-path src
|
||||
VPATH = src
|
||||
|
||||
all: $(BIN)
|
||||
all: check_nuttx $(BIN)
|
||||
.PHONY = check_nuttx depend clean distclean export
|
||||
|
||||
$(AOBJS): %$(OBJEXT): %.S
|
||||
@@ -122,7 +122,7 @@ check_nuttx:
|
||||
fi; \
|
||||
)
|
||||
|
||||
$(BIN): check_nuttx $(OBJS)
|
||||
$(BIN): $(OBJS)
|
||||
@( for obj in $(OBJS) ; do \
|
||||
$(call ARCHIVE, $@, $${obj}); \
|
||||
done ; )
|
||||
|
||||
@@ -226,6 +226,8 @@ void CCallback::newKeyboardEvent(NXHANDLE hwnd, uint8_t nCh,
|
||||
}
|
||||
}
|
||||
|
||||
#endif // CONFIG_NX_KBD
|
||||
|
||||
/**
|
||||
* This callback is the response from nx_block (or nxtk_block). Those
|
||||
* blocking interfaces are used to assure that no further messages are
|
||||
@@ -260,4 +262,3 @@ void CCallback::windowBlocked(NXWINDOW hwnd, FAR void *arg1, FAR void *arg2)
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif // CONFIG_NX_KBD
|
||||
|
||||
@@ -225,7 +225,7 @@ bool CNxServer::connect(void)
|
||||
|
||||
// Wait a bit to let the server get started
|
||||
|
||||
sleep(1);
|
||||
usleep(50*1000);
|
||||
|
||||
// Connect to the server
|
||||
|
||||
|
||||
@@ -97,7 +97,7 @@ CXXFLAGS += ${shell $(TOPDIR)/tools/incdir.sh $(INCDIROPT) "$(CC)" $(NXWIDGETDIR
|
||||
DEPPATH = --dep-path src
|
||||
VPATH = src
|
||||
|
||||
all: $(BIN)
|
||||
all: check_nuttx $(BIN)
|
||||
.PHONY = check_nuttx depend clean distclean export
|
||||
|
||||
$(AOBJS): %$(OBJEXT): %.S
|
||||
@@ -127,7 +127,7 @@ check_nuttx:
|
||||
fi; \
|
||||
)
|
||||
|
||||
$(BIN): check_nuttx $(OBJS)
|
||||
$(BIN): $(OBJS)
|
||||
@( for obj in $(OBJS) ; do \
|
||||
$(call ARCHIVE, $@, $${obj}); \
|
||||
done ; )
|
||||
|
||||
@@ -375,3 +375,8 @@
|
||||
* apps/nshlib/nsh_netcmds.c: The ping command now passes a maximum round
|
||||
trip time to uip_icmpping(). This allows pinging of hosts on complex
|
||||
networks where the ICMP ECHO round trip time may exceed the ping interval.
|
||||
* apps/examples/nxtext/nxtext_main.c: Fix bad conditional compilation
|
||||
when CONFIG_NX_KBD is not defined. Submitted by Petteri Aimonen.
|
||||
* apps/examples/nximage/nximage_main.c: Add a 5 second delay after the
|
||||
NX logo is presented so that there is time for the image to be verified.
|
||||
Suggested by Petteri Aimonen.
|
||||
|
||||
@@ -263,9 +263,10 @@ int nximage_main(int argc, char *argv[])
|
||||
}
|
||||
message("nximage_main: Screen resolution (%d,%d)\n", g_nximage.xres, g_nximage.yres);
|
||||
|
||||
/* Now, put up the NuttX logo. */
|
||||
/* Now, put up the NuttX logo and wait a bit so that it visible. */
|
||||
|
||||
nximage_image(g_nximage.hbkgd);
|
||||
sleep(5);
|
||||
|
||||
/* Release background */
|
||||
|
||||
|
||||
@@ -96,7 +96,6 @@
|
||||
* Private Data
|
||||
****************************************************************************/
|
||||
|
||||
#ifdef CONFIG_NX_KBD
|
||||
static const uint8_t g_pumsg[] = "Pop-Up!";
|
||||
static const char *g_bgmsg[BGMSG_LINES] =
|
||||
{
|
||||
@@ -125,7 +124,6 @@ static const char *g_bgmsg[BGMSG_LINES] =
|
||||
"I must be gone and live,\n", /* Line 23 */
|
||||
" or stay and die.\n" /* Line 24 */
|
||||
};
|
||||
#endif
|
||||
|
||||
/****************************************************************************
|
||||
* Public Data
|
||||
|
||||
+6
-1
@@ -3480,4 +3480,9 @@
|
||||
* drivers/input/max11802.c/h, and include/nuttx/input max11802.h: Adds
|
||||
support for the Maxim MAX11802 touchscreen controller (contributed by
|
||||
Petteri Aimonen).
|
||||
|
||||
* graphics/nxtk/nxtk_events.c: Missing implementatin of the blocked
|
||||
method. This is a critical bugfix for graphics support (contributed
|
||||
by Petteri Aimonen).
|
||||
* drivers/usbdev/pl2303.c, drivers/usbdev/usbmsc.h, and
|
||||
include/nuttx/usb/cdcacm.h: USB_CONFIG_ATTR_SELFPOWER vs.
|
||||
USB_CONFIG_ATT_SELFPOWER (contributed by Petteri Aimonen).
|
||||
@@ -4,6 +4,8 @@
|
||||
#
|
||||
|
||||
if ARCH_ARM
|
||||
comment "ARM Options"
|
||||
|
||||
choice
|
||||
prompt "ARM chip selection"
|
||||
default ARCH_CHIP_STM32
|
||||
@@ -239,6 +241,15 @@ config ARCH_CALIBRATION
|
||||
watch to measure the 100 second delay then adjust BOARD_LOOPSPERMSEC until
|
||||
the delay actually is 100 seconds.
|
||||
|
||||
config DEBUG_HARDFAULT
|
||||
bool "Verbose Hard-Fault Debug"
|
||||
default n
|
||||
depends on DEBUG && (ARCH_CORTEXM3 || ARCH_CORTEXM4)
|
||||
---help---
|
||||
Enables verbose debug output when a hard fault is occurs. This verbose
|
||||
output is sometimes helpful when debugging difficult hard fault problems,
|
||||
but may be more than you typcially want to see.
|
||||
|
||||
if ARCH_CHIP_C5471
|
||||
source arch/arm/src/c5471/Kconfig
|
||||
endif
|
||||
|
||||
@@ -57,9 +57,7 @@
|
||||
|
||||
/* Debug output from this file may interfere with context switching! */
|
||||
|
||||
#undef DEBUG_HARDFAULTS /* Define to debug hard faults */
|
||||
|
||||
#ifdef DEBUG_HARDFAULTS
|
||||
#ifdef CONFIG_DEBUG_HARDFAULT
|
||||
# define hfdbg(format, arg...) lldbg(format, ##arg)
|
||||
#else
|
||||
# define hfdbg(x...)
|
||||
|
||||
@@ -132,7 +132,7 @@
|
||||
/* USB Controller */
|
||||
|
||||
#ifndef CONFIG_USBDEV_SELFPOWERED
|
||||
# define SELFPOWERED USB_CONFIG_ATT_SELFPOWER
|
||||
# define SELFPOWERED USB_CONFIG_ATTR_SELFPOWER
|
||||
#else
|
||||
# define SELFPOWERED (0)
|
||||
#endif
|
||||
|
||||
@@ -227,7 +227,7 @@
|
||||
/* USB Controller */
|
||||
|
||||
#ifndef CONFIG_USBDEV_SELFPOWERED
|
||||
# define SELFPOWERED USB_CONFIG_ATT_SELFPOWER
|
||||
# define SELFPOWERED USB_CONFIG_ATTR_SELFPOWER
|
||||
#else
|
||||
# define SELFPOWERED (0)
|
||||
#endif
|
||||
|
||||
@@ -76,6 +76,9 @@ static void nxtk_mousein(NXWINDOW hwnd, FAR const struct nxgl_point_s *pos,
|
||||
static void nxtk_kbdin(NXWINDOW hwnd, uint8_t nch, const uint8_t *ch,
|
||||
FAR void *arg);
|
||||
#endif
|
||||
#ifdef CONFIG_NX_MULTIUSER
|
||||
static void nxtk_blocked(NXWINDOW hwnd, FAR void *arg1, FAR void *arg2);
|
||||
#endif
|
||||
|
||||
/****************************************************************************
|
||||
* Private Data
|
||||
@@ -95,6 +98,9 @@ const struct nx_callback_s g_nxtkcb =
|
||||
#ifdef CONFIG_NX_KBD
|
||||
, nxtk_kbdin /* kbdin */
|
||||
#endif
|
||||
#ifdef CONFIG_NX_MULTIUSER
|
||||
, nxtk_blocked
|
||||
#endif
|
||||
};
|
||||
|
||||
/****************************************************************************
|
||||
@@ -292,6 +298,24 @@ static void nxtk_kbdin(NXWINDOW hwnd, uint8_t nch, const uint8_t *ch,
|
||||
}
|
||||
#endif
|
||||
|
||||
/****************************************************************************
|
||||
* Name: nxtk_blocked
|
||||
****************************************************************************/
|
||||
|
||||
#ifdef CONFIG_NX_MULTIUSER
|
||||
static void nxtk_blocked(NXWINDOW hwnd, FAR void *arg1, FAR void *arg2)
|
||||
{
|
||||
FAR struct nxtk_framedwindow_s *fwnd = (FAR struct nxtk_framedwindow_s *)hwnd;
|
||||
|
||||
/* Only the client window gets keyboard input */
|
||||
|
||||
if (fwnd->fwcb->blocked)
|
||||
{
|
||||
fwnd->fwcb->blocked((NXTKWINDOW)fwnd, fwnd->fwarg, arg2);
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
/****************************************************************************
|
||||
* Public Functions
|
||||
****************************************************************************/
|
||||
|
||||
@@ -205,7 +205,7 @@
|
||||
/* USB Controller */
|
||||
|
||||
#ifndef CONFIG_USBDEV_SELFPOWERED
|
||||
# define SELFPOWERED USB_CONFIG_ATT_SELFPOWER
|
||||
# define SELFPOWERED USB_CONFIG_ATTR_SELFPOWER
|
||||
#else
|
||||
# define SELFPOWERED (0)
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user