Re: [PATCH] tty: serial: fsl_lpuart: select SERIAL_FSL_LPUART for SERIAL_FSL_LPUART_CONSOLE

From: Randy Dunlap
Date: Sat Feb 25 2023 - 13:39:06 EST




On 2/25/23 10:16, Randy Dunlap wrote:
>
>
> On 2/25/23 10:03, Randy Dunlap wrote:
>>
>>
>> On 2/25/23 09:51, Tom Rix wrote:
>>>
>>> On 2/25/23 9:46 AM, Randy Dunlap wrote:
>>>> Hi--
>>>>
>>>> On 2/25/23 09:39, Tom Rix wrote:
>>>>> A rand config causes this link error
>>>>> ld: drivers/tty/serial/earlycon.o: in function `parse_options':
>>>>> drivers/tty/serial/earlycon.c:99: undefined reference to `uart_parse_earlycon'
>>>>>
>>>>> The rand config has
>>>>> CONFIG_SERIAL_CORE=m
>>>>> CONFIG_SERIAL_EARLYCON=y
>>>>> CONFIG_SERIAL_FSL_LPUART=m
>>>>> CONFIG_SERIAL_FSL_LPUART_CONSOLE=y
>>>>>
>>>>> SERIAL_FSL_LPUART should have been selected instead of depends on-ed.
>>>>>
>>>>> Signed-off-by: Tom Rix <trix@xxxxxxxxxx>
>>>>> ---
>>>>>   drivers/tty/serial/Kconfig | 2 +-
>>>>>   1 file changed, 1 insertion(+), 1 deletion(-)
>>>>>
>>>>> diff --git a/drivers/tty/serial/Kconfig b/drivers/tty/serial/Kconfig
>>>>> index 625358f44419..b24d74d389fc 100644
>>>>> --- a/drivers/tty/serial/Kconfig
>>>>> +++ b/drivers/tty/serial/Kconfig
>>>>> @@ -1313,7 +1313,7 @@ config SERIAL_FSL_LPUART
>>>>>     config SERIAL_FSL_LPUART_CONSOLE
>>>>>       bool "Console on Freescale lpuart serial port"
>>>>> -    depends on SERIAL_FSL_LPUART
>>>>> +    select SERIAL_FSL_LPUART
>>>> Most other _CONSOLE Kconfig have:
>>>>
>>>>     depends on SERIAL_FSL_LPUART=y
>>>
>>> commit 5779a072c248db7a40cfd0f5ea958097fd1d9a30 removed the =y. so it could be built as a module.
>>>
>>
>> uh. But it's still a bool, not a tristate. How does that work?
>
> OK, I see. :)
>
> Well, I don't see another decent solution ATM.
>
> Tom, does your patch fix the build error?
>
> What are the listed CONFIG settings after the patch?

OK, after I apply the patch, all of the listed config symbols are
changed to =y (builtin), so not built as a loadable module.

Do you see something different?


>>>> e.g.
>>>>
>>>> but I noticed a few others with a similar problem.
>>>>
>>>>>       select SERIAL_CORE_CONSOLE
>>>>>       select SERIAL_EARLYCON
>>>>>       help
>>>
>>
>

--
~Randy