Skip to contentSkip to conversation

tty: serial: fsl_lpuart: select SERIAL_FSL_LPUART for SERIAL_FSL_LPUART_CONSOLE

PATCH In review Tom Rix 2 participants 3 messages Feb 26, 2023 TTY layer and serial drivers

lore
Share & tools
lore

Tom Rix

author
#0 lore raw

PATCH v2 1/1 tty: serial: fsl_lpuart: select SERIAL_FSL_LPUART for SERIAL_FSL_LPUART_CONSOLE

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.

After applying the configs are
CONFIG_SERIAL_CORE=y
CONFIG_SERIAL_EARLYCON=y
CONFIG_SERIAL_FSL_LPUART=y
CONFIG_SERIAL_FSL_LPUART_CONSOLE=y

---
v2: Add how the configs changed to commit log

---
 drivers/tty/serial/Kconfig | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
drivers/tty/serial/Kconfig +1 -1
index 625358f44419..b24d74d389fc 100644
@@ -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
 	select SERIAL_CORE_CONSOLE
 	select SERIAL_EARLYCON
 	help
Signature · 1 line
2.27.0
#1 lore raw

Hi Tom,

[adding the recent commit signers]

Quoted 10 lines · Tom Rix

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

Quoted 7 lines

SERIAL_FSL_LPUART should have been selected instead of depends on-ed.

After applying the configs are
CONFIG_SERIAL_CORE=y
CONFIG_SERIAL_EARLYCON=y
CONFIG_SERIAL_FSL_LPUART=y
CONFIG_SERIAL_FSL_LPUART_CONSOLE=y

This works, but I thought that the point of the recent patch was to make the driver modular.

You said:
"commit 5779a072c248db7a40cfd0f5ea958097fd1d9a30 removed the =y. so it could be built as a module."

That's not the same as what is happening here.

I think it would be better to revert the commit mentioned above.

Quoted 20 lines

---
v2: Add how the configs changed to commit log

---
 drivers/tty/serial/Kconfig | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
drivers/tty/serial/Kconfig +1 -1
index 625358f44419..b24d74d389fc 100644
@@ -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
 	select SERIAL_CORE_CONSOLE
 	select SERIAL_EARLYCON
 	help
Signature · 1 line
~Randy
author
#2 lore raw
Quoted 22 lines · Randy Dunlap

Hi Tom,

[adding the recent commit signers]

Quoted 10 lines · Tom Rix

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

Quoted 7 lines

SERIAL_FSL_LPUART should have been selected instead of depends on-ed.

After applying the configs are
CONFIG_SERIAL_CORE=y
CONFIG_SERIAL_EARLYCON=y
CONFIG_SERIAL_FSL_LPUART=y
CONFIG_SERIAL_FSL_LPUART_CONSOLE=y

Quoted 6 lines

This works, but I thought that the point of the recent patch was to make the driver modular.

You said:
"commit 5779a072c248db7a40cfd0f5ea958097fd1d9a30 removed the =y. so it could be built as a module."

That's not the same as what is happening here.

As you pointed out SERIAL_FSL_LPUART is not tristate so the it likely never worked to be modular.

Let me fiddle a bit with this and see, if it doesn't work, I'll submit the revert.

Tom

Quoted 23 lines

I think it would be better to revert the commit mentioned above.

Quoted 20 lines

---
v2: Add how the configs changed to commit log

---
  drivers/tty/serial/Kconfig | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)
drivers/tty/serial/Kconfig +1 -1
index 625358f44419..b24d74d389fc 100644
@@ -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
  	select SERIAL_CORE_CONSOLE
  	select SERIAL_EARLYCON
  	help