On 13 January 2015 at 11:39, Arnd Bergmann <arnd@xxxxxxxx> wrote: > On Tuesday 13 January 2015 11:00:21 Rafał Miłecki wrote: >> I were testing Hauke's driver for ARM BCM5301X PCIe controller >> PCI: BCM5301X: add PCIe2 driver for BCM5301X SoCs >> https://patchwork.kernel.org/patch/5257871/ >> and it went wrong. >> >> It hangs my ARM device, but the worst part of it is that I don't see >> *any* message over serial console. The last message I can see is >> bootloader's: >> Starting program at 0x00008000 >> >> So obviously early printk doesn't work for me, but I was hoping to at >> least see messages from the standard serial console driver. >> >> My setup is: >> CONFIG_SERIAL_OF_PLATFORM=y >> CONFIG_PCI_BCM5301X=y >> >> 1) of_serial.c >> It uses module_platform_driver which means: >> module_init + platform_driver_register >> >> 2) pci-host-bcm5301x.c >> It uses: >> module_init + bcma_driver_register >> >> So both drivers are using the same initcall (device_initcall) and its >> random (not really) which one gets loaded first: PCIe driver or serial >> driver. In my setup it happens to be PCIe driver which hangs the >> machine without giving me anything over the serial console. >> >> I've to obviously fix my early printk, but I was also wondering if >> this would be possible to move of_serial (and maybe others) to some >> earlier initcall? > > You have three options here: > > - raw debug_ll: this provides some very bare debugging output with > the printascii function, but requires hardcoding the UART > - earlyprintk: based on debug_ll, but uses the regular printk > infrastructure as soon as it's available > - earlycon: uses the normal uart code and is available almost as > early as earlyprintk, but requires a patch on ARM to the fixmap > code (hopefully to be merged into 3.20). Yeah, as I said, I'm going to play with early printing here, but my question would be a bit different :) Would it make sense to modify standard serial drivers? E.g. for ppl not using early printing stuff. -- Rafał -- 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