1How to enable early printk 2 3Early printk can only be enabled if debug=y. You may want to enable it if 4you are debbuging code that executes before the console is initialized. 5 6Note that selecting this option will limit Xen to a single UART definition. 7Attempting to boot Xen image on a different platform *will not work*, so this 8option should not be enable for Xens that are intended to be portable. 9 10CONFIG_EARLY_PRINTK=<INC>,<BASE_ADDRESS>,<OTHER_OPTIONS> 11 12<INC> and <BASE_ADDRESS> are mandatory arguments: 13 14 - <INC> is the name of the driver, see xen/arch/arm/arm{32,64}/debug-*.inc 15 (where <INC> corresponds to the wildcarded *). 16 - <BASE_ADDRESS> is the base physical address of the UART to use 17 18<OTHER_OPTIONS> varies depending on <INC>: 19 20 - 8250,<BASE_ADDRESS>,<REG_SHIFT> 21 - <REG_SHIFT> is, optionally, the left-shift to apply to the 22 register offsets within the uart. 23 - pl011,<BASE_ADDRESS>,<BAUD_RATE> 24 - <BAUD_RATE> is, optionally a baud rate which should be used to 25 configure the UART at start of day. 26 27 If <BAUD_RATE> is not given then the code will not try to 28 initialize the UART, so that bootloader or firmware settings can 29 be used for maximum compatibility. 30 - For all other uarts there are no additional options. 31 32As a convenience it is also possible to select from a list of 33predefined configurations using CONFIG_EARLY_PRINTK=mach where mach is 34the name of the machine: 35 36 - brcm: printk with 8250 on Broadcom 7445D0 boards with A15 processors. 37 - dra7: printk with 8250 on DRA7 platform 38 - exynos5250: printk with the second UART 39 - fastmodel: printk on ARM Fastmodel software emulators 40 - hikey960: printk with pl011 with Hikey 960 41 - juno: printk with pl011 on Juno platform 42 - lager: printk with SCIF0 on Renesas R-Car H2 processors 43 - midway: printk with the pl011 on Calxeda Midway processors 44 - omap5432: printk with UART3 on TI OMAP5432 processors 45 - rcar3: printk with SCIF2 on Renesas R-Car Gen3 processors 46 - seattle: printk with pl011 for AMD Seattle processor 47 - sun6i: printk with 8250 on Allwinner A31 processors 48 - sun7i: printk with 8250 on Allwinner A20 processors 49 - thunderx: printk with pl011 for Cavium ThunderX processor 50 - vexpress: printk with pl011 for versatile express 51 - xgene-mcdivitt: printk with 820 on Xgene mcdivitt platform 52 - xgene-storm: printk with 820 on Xgene storm platform 53 - zynqmp: printk with Cadence UART for Xilinx ZynqMP SoCs 54 55These settings are is hardcoded in xen/arch/arm/Rules.mk, 56see there when adding support for new machines. 57 58By default early printk is disabled. 59