Signed-off-by: Peter A. G. Crosthwaite <peter.crosthwa...@petalogix.com> --- hw/xilinx_uartlite.c | 24 ++++++++++++++++++++++++ 1 files changed, 24 insertions(+), 0 deletions(-)
diff --git a/hw/xilinx_uartlite.c b/hw/xilinx_uartlite.c index 467a26c..dc2debd 100644 --- a/hw/xilinx_uartlite.c +++ b/hw/xilinx_uartlite.c @@ -218,3 +218,27 @@ static void xilinx_uart_register(void) } device_init(xilinx_uart_register) + +#ifdef CONFIG_FDT + +#include "fdt_generic_util.h" + +static int xilinx_uartlite_fdt_init(char *node_path, FDTMachineInfo *fdti, + void *unused) +{ + target_phys_addr_t base; + qemu_irq irqline; + char irq_info[1024]; + + base = qemu_devtree_getprop(fdti->fdt, NULL, node_path, "reg", 0, 0); + irqline = fdt_get_irq_info(fdti, node_path, 0, NULL, irq_info); + printf("FDT: UARTLITE: baseaddr: 0x" TARGET_FMT_plx ", irq: %s\n", base, + irq_info); + sysbus_create_simple("xilinx,uartlite", base, irqline); + return 0; +} + +fdt_register_compatibility(xilinx_uartlite_fdt_init, + "xlnx,xps-uartlite-1.00.a"); + +#endif /* CONFIG_FDT */ -- 1.7.3.2