* Different RISC-V DTBs use different names for UART interrupts such as "interrupts" and "interrupts-extended", so it is not portable. * polling functions are currently used, so there is no need to query interrupts. --- bsps/riscv/riscv/console/console-config.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-)
diff --git a/bsps/riscv/riscv/console/console-config.c b/bsps/riscv/riscv/console/console-config.c index 04d0b28361..81e46f304f 100644 --- a/bsps/riscv/riscv/console/console-config.c +++ b/bsps/riscv/riscv/console/console-config.c @@ -183,13 +183,20 @@ static void riscv_console_probe(void) ctx->clock = fdt32_to_cpu(val[0]); - val = (fdt32_t *) fdt_getprop(fdt, node, "interrupts", &len); + /* XXX Different RISC-V DTBs use different property names for interrupt + sources. If an interrupt-driven driver is needed, uncomment, replace the + "interrupts-extended" string below with your target's DTB name for UART + interrupts, and use interrupt-driven UART functions instead of + ns16550_polled_* functions */ + + /* val = (fdt32_t *) fdt_getprop(fdt, node, "interrupts-extended", &len); if (val == NULL || len != 4) { bsp_fatal(RISCV_FATAL_NO_NS16550_INTERRUPTS_IN_DEVICE_TREE); } ctx->irq = RISCV_INTERRUPT_VECTOR_EXTERNAL(fdt32_to_cpu(val[0])); + */ if (node == console_node) { riscv_console.context = &ctx->base; -- 2.17.1 _______________________________________________ devel mailing list devel@rtems.org http://lists.rtems.org/mailman/listinfo/devel