samples/task_profiler: disable UART0 on galileo to fix crash

On galileo, UART_0 IRQ is incorrectly mapped to IRQ 0
UART_0 IRQ should be mapped to IRQ 17 (same as UART_1 IRQ)
but NS16550 driver doesn't support mapping same IRQ for
different devices.
This is creating crashes when dumping profiler data on UART
CONSOLE (UART_1) with UART console enabled (UART in interrupt
mode)

This patch is disabling UART_0 in sample apps and adding a note
in the README file

This problem appeared due to following commit:
e643cede3a uart: add ISR callback mechanism for UART drivers
Since that commit, UART driver is setting the ISR for all
UART device instances when interrupt mode is enabled

Change-Id: Ic9d0207e5e5c7e3d8e8a8bf90f3132801bc6c2b1
Signed-off-by: Fabrice Olivero <fabrice.olivero@intel.com>
This commit is contained in:
Fabrice Olivero 2016-05-18 16:22:40 +02:00 committed by Anas Nashif
commit f9f606b641
3 changed files with 12 additions and 0 deletions

View file

@ -198,6 +198,16 @@ CONFIG_UART_NS16550_PORT_1_BAUD_RATE=921600
Profiler has been tested at 2 Mbauds on Quark SE. Profiler has been tested at 2 Mbauds on Quark SE.
2.4) (Galileo only) disable UART 0
----------------------------------
Due to an issue with Quark X1000 UART_0 IRQ mapping, UART0 must be disabled in
$APP_BASE/prj.conf:
<--snippet
CONFIG_UART_NS16550_PORT_0=n
-->
3) Enable profiler console for dynamic control 3) Enable profiler console for dynamic control
---------------------------------------------- ----------------------------------------------

View file

@ -16,3 +16,4 @@ CONFIG_SYS_POWER_MANAGEMENT=y
CONFIG_TICKLESS_IDLE=y CONFIG_TICKLESS_IDLE=y
CONFIG_KERNEL_EVENT_LOGGER_SLEEP=y CONFIG_KERNEL_EVENT_LOGGER_SLEEP=y
CONFIG_UART_NS16550_PORT_1_BAUD_RATE=921600 CONFIG_UART_NS16550_PORT_1_BAUD_RATE=921600
CONFIG_UART_NS16550_PORT_0=n

View file

@ -14,3 +14,4 @@ CONFIG_KERNEL_EVENT_LOGGER_INTERRUPT=y
#CONFIG_TICKLESS_IDLE=y #CONFIG_TICKLESS_IDLE=y
#CONFIG_KERNEL_EVENT_LOGGER_SLEEP=y #CONFIG_KERNEL_EVENT_LOGGER_SLEEP=y
CONFIG_UART_NS16550_PORT_1_BAUD_RATE=921600 CONFIG_UART_NS16550_PORT_1_BAUD_RATE=921600
CONFIG_UART_NS16550_PORT_0=n