Re: [PATCH v1 17/24] ns16550: match when to define bdf with uart code

Tom Rini
2023-02-22T18:18:12Z

[-- Attachment #1: Type: text/plain, Size: 1613 bytes --]

On Tue, Feb 21, 2023 at 05:38:14PM -0800, Troy Kisky wrote:

> When switching defined(CONFIG_PCI) to CONFIG_IS_ENABLED(PCI)
> bdf is no longer accessible. So change to preprocessor to avoid access.
>
> Signed-off-by: Troy Kisky <troykiskyboundary@gmail.com>
> ---
>
> arch/x86/cpu/apollolake/uart.c | 6 +++---
> include/ns16550.h | 2 +-
> 2 files changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/arch/x86/cpu/apollolake/uart.c b/arch/x86/cpu/apollolake/uart.c
> index a9362436000..143217755ff 100644
> --- a/arch/x86/cpu/apollolake/uart.c
> +++ b/arch/x86/cpu/apollolake/uart.c
> @@ -79,11 +79,11 @@ void apl_uart_init(pci_dev_t bdf, ulong base)
>
> static int apl_ns16550_probe(struct udevice *dev)
> {
> +#if !CONFIG_IS_ENABLED(PCI)
> struct apl_ns16550_plat *plat = dev_get_plat(dev);
>
> - if (!CONFIG_IS_ENABLED(PCI))
> - apl_uart_init(plat->ns16550.bdf, plat->ns16550.base);
> -
> + apl_uart_init(plat->ns16550.bdf, plat->ns16550.base);
> +#endif
> return ns16550_serial_probe(dev);
> }
>
> diff --git a/include/ns16550.h b/include/ns16550.h
> index e7e68663d03..8d7eb7d8f9c 100644
> --- a/include/ns16550.h
> +++ b/include/ns16550.h
> @@ -74,7 +74,7 @@ struct ns16550_plat {
> int clock;
> u32 fcr;
> int flags;
> -#if defined(CONFIG_PCI) && defined(CONFIG_SPL)
> +#if !CONFIG_IS_ENABLED(PCI) || CONFIG_IS_ENABLED(OF_PLATDATA)
> int bdf;
> #endif
> };

This isn't equivalent. This means platforms such as am335x_evm which do
not enable PCI nor SPL_PCI now get this field and grow their rodata.

--
Tom

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 659 bytes --]