Re: [PATCH] tty: serial: make SERIAL_SPRD depends on ARM or ARM64

From: Chunyan Zhang
Date: Tue Mar 24 2020 - 21:37:48 EST


Hi Mark, Greg,

Pleas see my answer below.

On Tue, 24 Mar 2020 at 19:21, Mark Rutland <mark.rutland@xxxxxxx> wrote:
>
> On Tue, Mar 24, 2020 at 02:49:49PM +0800, Chunyan Zhang wrote:
> > From: Chunyan Zhang <chunyan.zhang@xxxxxxxxxx>
> >
> > kbuild-test reported an error:
> >
> > config: mips-randconfig-a001-20200321 ...
> > >> drivers/tty/serial/sprd_serial.c:1175: undefined reference
> > to `clk_set_parent'
> >
> > Because some mips Kconfig-s select CONFIG_HAVE_CLK but not CONFIG_COMMON_CLK,
> > so it's probably that clk_set_parent is missed for those configs.
> >
> > To fix this error, this patch adds dependence on ARM || ARM64
> > for SERIAL_SPRD.
>
> From the above, isn't the real dependency COMMON_CLOCK?

Some arch can implement its own clock APIs, for example AR7 [1].

The sprd serial driver is used on ARM and ARM64 platforms only for
now, which uses clock functions provided by COMMON_CLK, but it has the
possibility of being used on other architecture platforms, that was my
thought.

I should revise this commit message to:
"
Because some mips Kconfig-s select CONFIG_HAVE_CLK but not define
clk_set_parent which is used by the sprd serial driver.
...
"

Does it make sense?

Thanks,
Chunyan

[1] https://elixir.bootlin.com/linux/v5.5.11/source/arch/mips/ar7/clock.c#L475

>
> Mark.
>
> >
> > Fixes: 7ba87cfec71a ("tty: serial: make SERIAL_SPRD not depend on ARCH_SPRD")
> > Reported-by: kbuild test robot <lkp@xxxxxxxxx>
> > Signed-off-by: Chunyan Zhang <chunyan.zhang@xxxxxxxxxx>
> > ---
> > drivers/tty/serial/Kconfig | 1 +
> > 1 file changed, 1 insertion(+)
> >
> > diff --git a/drivers/tty/serial/Kconfig b/drivers/tty/serial/Kconfig
> > index b43dce785a58..417f7e45a3f8 100644
> > --- a/drivers/tty/serial/Kconfig
> > +++ b/drivers/tty/serial/Kconfig
> > @@ -1444,6 +1444,7 @@ config SERIAL_MEN_Z135
> > config SERIAL_SPRD
> > tristate "Support for Spreadtrum serial"
> > select SERIAL_CORE
> > + depends on ARM || ARM64 || COMPILE_TEST
> > help
> > This enables the driver for the Spreadtrum's serial.
> >
> > --
> > 2.20.1
> >