>>>>> "David" == David H Lynch <dhlii@xxxxxxxxxx> writes: Hi, David> Your ulite_console_write performance is pretty slow - David> almost an order of magnitude slower than what I am seeing in David> my driver. I beleive it is because you are waiting for the Tx David> FIFO to be empty before and after sending each character David> rather than only waiting while the Tx FIFO is full. Really? The implementation is basically a copy of 8250.c, so I would imagine that would get similar performance. Perhaps it's related to your specific setup? The driver only waits before sending a character, not afterwards. David> That may also be an issue in the rest of the driver but I have been David> unable to get it to through registering the driver. David> I suspect that is because your driver is a platform driver, but you did David> not provide patches to the arch/ppc/platforms/4xx/virtex.* or David> xilinx_ml???.* to setup the platform device structure. No, because the Xilinx boards don't have any uartlite devices. David> If you could provide a copy I would appreciate it. Sure, just add something like this to your board code (with your base address/irq ofcause): static struct resource uartlite_resources[] = { [0] = { .start = 0xa1000003, .end = 0xa1000012, .flags = IORESOURCE_MEM, }, [1] = { .start = 2, .end = 2, .flags = IORESOURCE_IRQ, }, }; static struct platform_device uartlite = { .name = "uartlite", .id = 0, .num_resources = ARRAY_SIZE(uartlite_resources), .resource = uartlite_resources, .dev.platform_data = 0, }; static struct platform_device *my_devices[] __initdata = { &uartlite, . . . }; static int __init my_platform_add_devices(void) { return platform_add_devices(my_devices, ARRAY_SIZE(my_devices)); } arch_initcall(my_platform_add_devices); -- Bye, Peter Korsgaard - To unsubscribe from this list: send the line "unsubscribe linux-serial" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html