Re: [PATCH] earlycon: rework common framework for earlycon declarations

From: Arnd Bergmann
Date: Fri Feb 12 2016 - 05:07:00 EST


On Friday 12 February 2016 18:28:16 Masahiro Yamada wrote:
> Commit 71f50c6d9a22 ("of: drop symbols declared by _OF_DECLARE() from
> modules") fixed the link error introduced by commit b8d20e06eaad
> ("serial: 8250_uniphier: add earlycon support").
>
> After commit 2eaa790989e0 ("earlycon: Use common framework for
> earlycon declarations") was applied, the link error came back
> because the commit reworked OF_EARLYCON_DECLARE() to not use
> _OF_DECLARE().
>
> This commit reworks OF_EARLYCON_DECLARE() again based on
> _OF_DECLARE(). My motivations are:
>
> - Fix the link error in a generic way (without patching
> drivers/tty/serial/8250/8250_uniphier.c)
>
> - Delete struct earlycon_id. This struct is re-inventing the wheel;
> the fields "name", "compatible", "setup" can be implemented in
> struct of_device_id as other framework do.
>
> The difference between OF_EARLYCON_DECLARE() and other users of
> _OF_DECLARE is that OF_EARLYCON_DECLARE() needs to fill the "name"
> field of struct of_device_id. To make it easier, a new macro
> _OF_DECLARE_WITH_NAME() has been added. It fills the name field
> with the given argument. On the other hand, _OF_DECLARE() sets the
> "name" field to a null string; this is the same behavior as before.
>
> Fixes: 2eaa790989e0 ("earlycon: Use common framework for earlycon declarations")
> Signed-off-by: Masahiro Yamada <yamada.masahiro@xxxxxxxxxxxxx>
> ---
>
> I confirmed this patch can apply onto "next-20160212" tag of linux-next.
>
> In order to apply it onto the "tty-next" branch of TTY subsytem,
> Grag will have to pull v4.5-rc3 in.

I think this is the right approach, and I can include it in my 8250
series when I resend it, and rebase the other patches on top of it
to simplify them.

Peter, since you did the change "earlycon: Use common framework for
earlycon declarations", are you ok with the new version?

Arnd