If the mediatek serial port driver is built-in, but serial
console is disabled in Kconfig (e.g. when the serial driver
itself is a loadable module), we get this build error:
drivers/built-in.o: In function `early_mtk8250_setup':
undefined reference to `early_serial8250_setup'
To avoid that problem, this patch encloses the early_mtk8250_setup
function in #ifdef CONFIG_SERIAL_8250_CONSOLE, the same symbol
that guards the early_serial8250_setup function.
Signed-off-by: Arnd Bergmann <[email protected]>
diff --git a/drivers/tty/serial/8250/8250_mtk.c b/drivers/tty/serial/8250/8250_mtk.c
index 4488c2bdb7ba..78883ca64ddd 100644
--- a/drivers/tty/serial/8250/8250_mtk.c
+++ b/drivers/tty/serial/8250/8250_mtk.c
@@ -305,6 +305,7 @@ static struct platform_driver mtk8250_platform_driver = {
};
module_platform_driver(mtk8250_platform_driver);
+#ifdef CONFIG_SERIAL_8250_CONSOLE
static int __init early_mtk8250_setup(struct earlycon_device *device,
const char *options)
{
@@ -317,6 +318,7 @@ static int __init early_mtk8250_setup(struct earlycon_device *device,
}
OF_EARLYCON_DECLARE(mtk8250, "mediatek,mt6577-uart", early_mtk8250_setup);
+#endif
MODULE_AUTHOR("Matthias Brugger");
MODULE_LICENSE("GPL");
Hi Arnd,
On Tue, 2015-05-19 at 22:11 +0200, Arnd Bergmann wrote:
> If the mediatek serial port driver is built-in, but serial
> console is disabled in Kconfig (e.g. when the serial driver
> itself is a loadable module), we get this build error:
>
> drivers/built-in.o: In function `early_mtk8250_setup':
> undefined reference to `early_serial8250_setup'
>
> To avoid that problem, this patch encloses the early_mtk8250_setup
> function in #ifdef CONFIG_SERIAL_8250_CONSOLE, the same symbol
> that guards the early_serial8250_setup function.
>
> Signed-off-by: Arnd Bergmann <[email protected]>
>
> diff --git a/drivers/tty/serial/8250/8250_mtk.c b/drivers/tty/serial/8250/8250_mtk.c
> index 4488c2bdb7ba..78883ca64ddd 100644
> --- a/drivers/tty/serial/8250/8250_mtk.c
> +++ b/drivers/tty/serial/8250/8250_mtk.c
> @@ -305,6 +305,7 @@ static struct platform_driver mtk8250_platform_driver = {
> };
> module_platform_driver(mtk8250_platform_driver);
>
> +#ifdef CONFIG_SERIAL_8250_CONSOLE
> static int __init early_mtk8250_setup(struct earlycon_device *device,
> const char *options)
> {
> @@ -317,6 +318,7 @@ static int __init early_mtk8250_setup(struct earlycon_device *device,
> }
>
> OF_EARLYCON_DECLARE(mtk8250, "mediatek,mt6577-uart", early_mtk8250_setup);
> +#endif
>
> MODULE_AUTHOR("Matthias Brugger");
> MODULE_LICENSE("GPL");
>
Acked-by: Eddie Huang <[email protected]>
Thanks your correction.
Eddie