Re: [PATCH v5 2/2] QE: remove PPCisms for QE

From: Leo Li
Date: Thu Sep 22 2016 - 15:38:56 EST


On Wed, Sep 21, 2016 at 8:43 PM, Qiang Zhao <qiang.zhao@xxxxxxx> wrote:
> On Mon, Sep 22, 2016 at 2:19 AM, Leo Li wrote:
>> -----Original Message-----
>> From: Leo Li [mailto:pku.leo@xxxxxxxxx]
>> Sent: Thursday, September 22, 2016 2:19 AM
>> To: Qiang Zhao <qiang.zhao@xxxxxxx>
>> Cc: Scott Wood <oss@xxxxxxxxxxxx>; linuxppc-dev <linuxppc-
>> dev@xxxxxxxxxxxxxxxx>; lkml <linux-kernel@xxxxxxxxxxxxxxx>; X.B. Xie
>> <xiaobo.xie@xxxxxxx>
>> Subject: Re: [PATCH v5 2/2] QE: remove PPCisms for QE
>>
>> On Tue, Sep 20, 2016 at 8:13 PM, Qiang Zhao <qiang.zhao@xxxxxxx> wrote:
>> > On Mon, Sep 20, 2016 at 4:13 AM, Leo Li wrote:
>> >> -----Original Message-----
>> >> From: Leo Li [mailto:pku.leo@xxxxxxxxx]
>> >> Sent: Tuesday, September 20, 2016 4:13 AM
>> >> To: Qiang Zhao <qiang.zhao@xxxxxxx>
>> >> Cc: Scott Wood <oss@xxxxxxxxxxxx>; linuxppc-dev <linuxppc-
>> >> dev@xxxxxxxxxxxxxxxx>; lkml <linux-kernel@xxxxxxxxxxxxxxx>; X.B. Xie
>> >> <xiaobo.xie@xxxxxxx>
>> >> Subject: Re: [PATCH v5 2/2] QE: remove PPCisms for QE
>> >>
>> >> On Mon, Jul 25, 2016 at 12:43 AM, Zhao Qiang <qiang.zhao@xxxxxxx>
>> wrote:
>> >> > QE was supported on PowerPC, and dependent on PPC, Now it is
>> >> > supported on other platforms. so remove PPCisms.
>> >> >
>> >> > Signed-off-by: Zhao Qiang <qiang.zhao@xxxxxxx>
>> >> > ---
>> >> > Changes for v2:
>> >> > - na
>> >> > Changes for v3:
>> >> > - add NO_IRQ
>> >> > Changes for v4:
>> >> > - modify spin_event_timeout to opencoded timeout loop
>> >> > - remove NO_IRQ
>> >> > - modify virq_to_hw to opencoed code Changes for v5:
>> >> > - modify commit msg
>> >> > - modify depends of QUICC_ENGINE
>> >> > - add kerneldoc header for qe_issue_cmd
>> >> >
>> >> > drivers/irqchip/qe_ic.c | 28 +++++++++------
>> >> > drivers/soc/fsl/qe/Kconfig | 2 +-
>> >> > drivers/soc/fsl/qe/qe.c | 80 ++++++++++++++++++++++++++----------
>> ----
>> >> ---
>> >> > drivers/soc/fsl/qe/qe_io.c | 42 ++++++++++-------------
>> >> > drivers/soc/fsl/qe/qe_tdm.c | 8 ++---
>> >> > drivers/soc/fsl/qe/ucc.c | 10 +++---
>> >> > drivers/soc/fsl/qe/ucc_fast.c | 68 ++++++++++++++++++------------------
>> >> > include/soc/fsl/qe/qe.h | 1 -
>> >> > include/soc/fsl/qe/qe_ic.h | 12 +++----
>> >> > 9 files changed, 133 insertions(+), 118 deletions(-)
>> >> >
>> >>
>> >> [snip]
>> >>
>> >> > diff --git a/drivers/soc/fsl/qe/Kconfig
>> >> > b/drivers/soc/fsl/qe/Kconfig index 73a2e08..b26b643 100644
>> >> > --- a/drivers/soc/fsl/qe/Kconfig
>> >> > +++ b/drivers/soc/fsl/qe/Kconfig
>> >> > @@ -4,7 +4,7 @@
>> >> >
>> >> > config QUICC_ENGINE
>> >> > bool "Freescale QUICC Engine (QE) Support"
>> >> > - depends on FSL_SOC && PPC32
>> >> > + depends on OF && HAS_IOMEM
>> >> > select GENERIC_ALLOCATOR
>> >> > select CRC32
>> >> > help
>> >>
>> >> You make it possible to build QE drivers on ARM, but the UCC_GETH
>> >> fails to build on arm64. Please make sure all these drivers can
>> >> build on other architectures. Or you can simply make them only build
>> >> for Power architecture as most of them are not available on ARM.
>> >>
>> >
>> > Most of them are not available on ARM and ARM64.
>> > Now, only qe-hdlc is available on ARM64.
>>
>> Then you should update the Kconfig for these drivers too, if they are only
>> depending on CONFIG_QUICC_ENGINE.
>
> You mean adding "depends on FSL_SOC && PPC32 " to the drivers that are not available for ARM?

Yes. Previously these drivers get the architecture limitation from
CONFIG_QUICC_ENGINE, but now they need them by their own.

Regards,
Leo