diff --git a/ChangeLog b/ChangeLog index bfae8e3670..4e799b4a84 100644 --- a/ChangeLog +++ b/ChangeLog @@ -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). \ No newline at end of file diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig index 2a7ea10b59..02a8719943 100644 --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig @@ -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 diff --git a/arch/arm/src/armv7-m/up_hardfault.c b/arch/arm/src/armv7-m/up_hardfault.c index cb3ce9e8a9..c30015ad22 100644 --- a/arch/arm/src/armv7-m/up_hardfault.c +++ b/arch/arm/src/armv7-m/up_hardfault.c @@ -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...) diff --git a/drivers/usbdev/pl2303.c b/drivers/usbdev/pl2303.c index 69bf879656..95f26c1854 100644 --- a/drivers/usbdev/pl2303.c +++ b/drivers/usbdev/pl2303.c @@ -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 diff --git a/drivers/usbdev/usbmsc.h b/drivers/usbdev/usbmsc.h index 6a5530d9d9..883a499517 100644 --- a/drivers/usbdev/usbmsc.h +++ b/drivers/usbdev/usbmsc.h @@ -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 diff --git a/graphics/nxtk/nxtk_events.c b/graphics/nxtk/nxtk_events.c index 33c50b7f90..aaec16b5af 100644 --- a/graphics/nxtk/nxtk_events.c +++ b/graphics/nxtk/nxtk_events.c @@ -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 ****************************************************************************/ diff --git a/include/nuttx/usb/cdcacm.h b/include/nuttx/usb/cdcacm.h index 307f2a5977..1dca050c4b 100644 --- a/include/nuttx/usb/cdcacm.h +++ b/include/nuttx/usb/cdcacm.h @@ -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