[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [PATCH] arm: Drop deprecated early printk platform options
Hi, > On 13 Sep 2024, at 09:28, Michal Orzel <michal.orzel@xxxxxxx> wrote: > > Hi Bertrand, > > On 13/09/2024 08:54, Bertrand Marquis wrote: >> >> >> Hi Michal, >> >>> On 13 Sep 2024, at 08:15, Michal Orzel <michal.orzel@xxxxxxx> wrote: >>> >>> The predefined configurations for early printk have been deprecated for >>> a sufficient amount of time. Let's finally remove them. >>> >>> Note: >>> In order not to loose these predefined configurations, I wrote a wiki >>> page: https://wiki.xenproject.org/wiki/Xen_on_ARM_Early_Printk >>> >>> Signed-off-by: Michal Orzel <michal.orzel@xxxxxxx> Reviewed-by: Bertrand Marquis <bertrand.marquis@xxxxxxx> >>> --- >>> docs/misc/arm/early-printk.txt | 4 - >>> xen/arch/arm/Kconfig.debug | 155 ++------------------------------- >>> 2 files changed, 9 insertions(+), 150 deletions(-) >>> >>> diff --git a/docs/misc/arm/early-printk.txt b/docs/misc/arm/early-printk.txt >>> index bc2d65aa2ea3..e6b9124a38e3 100644 >>> --- a/docs/misc/arm/early-printk.txt >>> +++ b/docs/misc/arm/early-printk.txt >>> @@ -35,8 +35,4 @@ Other options depends on the driver selected: >>> >>> - For all other uarts there are no additional options. >>> >>> -As a convenience it is also possible to select from a list of >>> -predefined configurations available in the list of choice for "Early >>> -printk" for specific platform. >>> - >>> By default early printk is disabled. >>> diff --git a/xen/arch/arm/Kconfig.debug b/xen/arch/arm/Kconfig.debug >>> index eec860e88e0b..2fa0acd2a3f1 100644 >>> --- a/xen/arch/arm/Kconfig.debug >>> +++ b/xen/arch/arm/Kconfig.debug >>> @@ -13,177 +13,67 @@ choice >>> Choose one of the UART drivers for early printk, then you'll >>> have to specify the parameters, like the base address. >>> >>> - Deprecated: Alternatively, there are platform specific options >>> - which will have default values for the various parameters. But >>> - such option will soon be removed. >>> - >>> config EARLY_UART_CHOICE_8250 >>> select EARLY_UART_8250 >>> bool "Early printk via 8250 UART" >>> help >>> Say Y here if you wish the early printk to direct their >>> - output to a 8250 UART. You can use this option to >>> - provide the parameters for the 8250 UART rather than >>> - selecting one of the platform specific options below if >>> - you know the parameters for the port. >>> + output to a 8250 UART. >>> >>> - This option is preferred over the platform specific >>> - options; the platform specific options are deprecated >>> - and will soon be removed. >>> config EARLY_UART_CHOICE_CADENCE >>> select EARLY_UART_CADENCE >>> depends on ARM_64 >>> bool "Early printk via Cadence UART" >>> help >>> Say Y here if you wish the early printk to direct their >>> - output to a Cadence UART. You can use this option to >>> - provide the parameters for the Cadence UART rather than >>> - selecting one of the platform specific options below if >>> - you know the parameters for the port. >>> + output to a Cadence UART. >>> >>> - This option is preferred over the platform specific >>> - options; the platform specific options are deprecated >>> - and will soon be removed. >>> config EARLY_UART_CHOICE_EXYNOS4210 >>> select EARLY_UART_EXYNOS4210 >>> depends on ARM_32 >>> bool "Early printk via Exynos4210 UART" >>> help >>> Say Y here if you wish the early printk to direct their >>> - output to a Exynos 4210 UART. You can use this option to >>> - provide the parameters for the Exynos 4210 UART rather than >>> - selecting one of the platform specific options below if >>> - you know the parameters for the port. >>> + output to a Exynos 4210 UART. >>> >>> - This option is preferred over the platform specific >>> - options; the platform specific options are deprecated >>> - and will soon be removed. >>> config EARLY_UART_CHOICE_IMX_LPUART >>> select EARLY_UART_IMX_LPUART >>> depends on ARM_64 >>> bool "Early printk via i.MX LPUART" >>> help >>> Say Y here if you wish the early printk to direct their >>> - output to a i.MX LPUART. You can use this option to >>> - provide the parameters for the i.MX LPUART rather than >>> - selecting one of the platform specific options below if >>> - you know the parameters for the port. >>> + output to a i.MX LPUART. >>> + >>> config EARLY_UART_CHOICE_MESON >>> select EARLY_UART_MESON >>> depends on ARM_64 >>> bool "Early printk via MESON UART" >>> help >>> Say Y here if you wish the early printk to direct their >>> - output to a MESON UART. You can use this option to >>> - provide the parameters for the MESON UART rather than >>> - selecting one of the platform specific options below if >>> - you know the parameters for the port. >>> + output to a MESON UART. >>> >>> - This option is preferred over the platform specific >>> - options; the platform specific options are deprecated >>> - and will soon be removed. >>> config EARLY_UART_CHOICE_MVEBU >>> select EARLY_UART_MVEBU >>> depends on ARM_64 >>> bool "Early printk via MVEBU UART" >>> help >>> Say Y here if you wish the early printk to direct their >>> - output to a MVEBU UART. You can use this option to >>> - provide the parameters for the MVEBU UART rather than >>> - selecting one of the platform specific options below if >>> - you know the parameters for the port. >>> + output to a MVEBU UART. >>> >>> - This option is preferred over the platform specific >>> - options; the platform specific options are deprecated >>> - and will soon be removed. >>> config EARLY_UART_CHOICE_PL011 >>> select EARLY_UART_PL011 >>> bool "Early printk via PL011 UART" >>> help >>> Say Y here if you wish the early printk to direct their >>> - output to a PL011 UART. You can use this option to >>> - provide the parameters for the PL011 UART rather than >>> - selecting one of the platform specific options below if >>> - you know the parameters for the port. >>> + output to a PL011 UART. >>> >>> - This option is preferred over the platform specific >>> - options; the platform specific options are deprecated >>> - and will soon be removed. >>> config EARLY_UART_CHOICE_SCIF >>> select EARLY_UART_SCIF >>> bool "Early printk via SCIF UART" >>> help >>> Say Y here if you wish the early printk to direct their >>> - output to a SCIF UART. You can use this option to >>> - provide the parameters for the SCIF UART rather than >>> - selecting one of the platform specific options below if >>> - you know the parameters for the port. >>> + output to a SCIF UART. >>> >>> - This option is preferred over the platform specific >>> - options; the platform specific options are deprecated >>> - and will soon be removed. >>> - >>> - config EARLY_PRINTK_BRCM >>> - bool "Early printk with 8250 on Broadcom 7445D0 boards with A15 >>> processors" >>> - select EARLY_UART_8250 >>> - config EARLY_PRINTK_DRA7 >>> - bool "Early printk with 8250 on DRA7 platform" >>> - select EARLY_UART_8250 >>> - config EARLY_PRINTK_EXYNOS5250 >>> - bool "Early printk with the second UART on Exynos5250" >>> - select EARLY_UART_EXYNOS4210 >>> - depends on ARM_32 >>> - config EARLY_PRINTK_FASTMODEL >>> - bool "Early printk with pl011 on ARM Fastmodel software emulators" >>> - select EARLY_UART_PL011 >>> - config EARLY_PRINTK_HIKEY960 >>> - bool "Early printk with pl011 with Hikey 960" >>> - select EARLY_UART_PL011 >>> - config EARLY_PRINTK_JUNO >>> - bool "Early printk with pl011 on Juno platform" >>> - select EARLY_UART_PL011 >>> - config EARLY_PRINTK_LAGER >>> - bool "Early printk with SCIF0 on Renesas Lager board (R-Car H2 processor)" >>> - select EARLY_UART_SCIF >>> - config EARLY_PRINTK_MIDWAY >>> - bool "Early printk with pl011 on Calxeda Midway processors" >>> - select EARLY_UART_PL011 >>> - config EARLY_PRINTK_MVEBU >>> - bool "Early printk with MVEBU for Marvell Armada 3700 SoCs" >>> - select EARLY_UART_MVEBU >>> - depends on ARM_64 >>> - config EARLY_PRINTK_OMAP5432 >>> - bool "Early printk with UART3 on TI OMAP5432 processors" >>> - select EARLY_UART_8250 >>> - config EARLY_PRINTK_RCAR3 >>> - bool "Early printk with SCIF2 on Renesas R-Car Gen3 processors" >>> - select EARLY_UART_SCIF >>> - config EARLY_PRINTK_SEATTLE >>> - bool "Early printk with pl011 for AMD Seattle processor" >>> - select EARLY_UART_PL011 >>> - config EARLY_PRINTK_SUN6I >>> - bool "Early printk with 8250 on Allwinner A31 processors" >>> - select EARLY_UART_8250 >>> - config EARLY_PRINTK_SUN7I >>> - bool "Early printk with 8250 on Allwinner A20 processors" >>> - select EARLY_UART_8250 >>> - config EARLY_PRINTK_THUNDERX >>> - bool "Early printk with pl011 for Cavium ThunderX processor" >>> - select EARLY_UART_PL011 >>> - depends on ARM_64 >>> - config EARLY_PRINTK_VEXPRESS >>> - bool "Early printk with pl011 for versatile express" >>> - select EARLY_UART_PL011 >>> - config EARLY_PRINTK_XGENE_MCDIVITT >>> - bool "Early printk with 820 on Xgene mcdivitt platform" >>> - select EARLY_UART_8250 >>> - config EARLY_PRINTK_XGENE_STORM >>> - bool "Early printk with 820 on Xgene storm platform" >>> - select EARLY_UART_8250 >>> - config EARLY_PRINTK_ZYNQMP >>> - bool "Early printk with Cadence UART for Xilinx ZynqMP SoCs" >>> - select EARLY_UART_CADENCE >>> - depends on ARM_64 >>> endchoice >>> >>> >>> @@ -219,25 +109,6 @@ config EARLY_UART_BASE_ADDRESS >>> depends on EARLY_PRINTK >>> hex "Early printk, physical base address of debug UART" >>> range 0x0 0xffffffff if ARM_32 >>> - default 0xF040AB00 if EARLY_PRINTK_BRCM >>> - default 0x4806A000 if EARLY_PRINTK_DRA7 >>> - default 0x1c090000 if EARLY_PRINTK_FASTMODEL >>> - default 0x12c20000 if EARLY_PRINTK_EXYNOS5250 >>> - default 0xfff32000 if EARLY_PRINTK_HIKEY960 >>> - default 0x7ff80000 if EARLY_PRINTK_JUNO >>> - default 0xe6e60000 if EARLY_PRINTK_LAGER >>> - default 0xfff36000 if EARLY_PRINTK_MIDWAY >>> - default 0xd0012000 if EARLY_PRINTK_MVEBU >>> - default 0x48020000 if EARLY_PRINTK_OMAP5432 >>> - default 0xe6e88000 if EARLY_PRINTK_RCAR3 >>> - default 0xe1010000 if EARLY_PRINTK_SEATTLE >>> - default 0x01c28000 if EARLY_PRINTK_SUN6I >>> - default 0x01c28000 if EARLY_PRINTK_SUN7I >>> - default 0x87e024000000 if EARLY_PRINTK_THUNDERX >>> - default 0x1c090000 if EARLY_PRINTK_VEXPRESS >>> - default 0x1c021000 if EARLY_PRINTK_XGENE_MCDIVITT >>> - default 0x1c020000 if EARLY_PRINTK_XGENE_STORM >>> - default 0xff000000 if EARLY_PRINTK_ZYNQMP >> >> Shouldn't we put a default 0 value here ? > No, we should not. It's done like that on purpose to trigger build error > if user enables early printk but forgets to specify an address. Adding > default 0 > would remove this guard behavior. > Ok makes sense. >> >>> >>> config EARLY_UART_PL011_BAUD_RATE >>> depends on EARLY_UART_PL011 >>> @@ -250,7 +121,6 @@ config EARLY_UART_PL011_BAUD_RATE >>> not try to initialize the UART, so that bootloader or firmware >>> settings can be used for maximum compatibility. >>> >>> - default 115200 if EARLY_PRINTK_FASTMODEL >>> default 0 >>> >>> config EARLY_UART_PL011_MMIO32 >>> @@ -274,13 +144,6 @@ config EARLY_UART_8250_REG_SHIFT >>> >>> Default to 0. >>> >>> - default 2 if EARLY_PRINTK_BRCM >>> - default 2 if EARLY_PRINTK_DRA7 >>> - default 2 if EARLY_PRINTK_OMAP5432 >>> - default 2 if EARLY_PRINTK_SUN6I >>> - default 2 if EARLY_PRINTK_SUN7I >>> - default 2 if EARLY_PRINTK_XGENE_MCDIVITT >>> - default 2 if EARLY_PRINTK_XGENE_STORM >>> default 0 >> >> Seeing that all know example are setting this to 2, wouldn't it >> make sense to change the default to 2 ? > It would be a change in behavior and would not fit the purpose of this patch. > Also, the EARLY_UART_8250_REG_SHIFT Kconfig help mentions 0 as a default. > There might be platforms 8250 based where we don't know the correct reg shift > value. > Better not to make any assumptions. > Ok. > ~Michal
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |