Re: Could serial console drivers be loaded earlier?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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).

	Arnd
--
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



[Index of Archives]     [Kernel Newbies]     [Security]     [Netfilter]     [Bugtraq]     [Linux PPP]     [Linux FS]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Linmodem]     [Device Mapper]     [Linux Kernel for ARM]

  Powered by Linux