Re: [PATCH] drivers/pcmcia: NO_IRQ removal for electra_cf.c

From: Scott Wood
Date: Wed Mar 15 2017 - 13:51:43 EST


On Wed, 2017-03-15 at 16:35 +1100, Michael Ellerman wrote:
> Arnd Bergmann <arnd@xxxxxxxx> writes:
>
> >
> > On Tue, Mar 14, 2017 at 11:51 AM, Michael Ellerman <mpe@xxxxxxxxxxxxxx>
> > wrote:
> > >
> > > Michael Ellerman <mpe@xxxxxxxxxxxxxx> writes:
> > >
> > > >
> > > > We'd like to eventually remove NO_IRQ on powerpc, so remove usages of
> > > > it
> > > > from electra_cf.c which is a powerpc-only driver.
> > > >
> > > > Signed-off-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>
> > > > ---
> > > > Âdrivers/pcmcia/electra_cf.c | 4 ++--
> > > > Â1 file changed, 2 insertions(+), 2 deletions(-)
> > > Ping anyone?
> > >
> > > Or should I merge this via the powerpc tree?
> > That's what I would recommend for a powerpc specific pcmcia driver, yes.
> Suits me.
>
> >
> > Looking at the bigger picture of powerpc drivers using NO_IRQ, I also
> > see these others:
> >
> > drivers/ata/pata_mpc52xx.c:ÂÂÂÂÂif (ata_irq == NO_IRQ) {
> > drivers/ata/sata_dwc_460ex.c:#ifndef NO_IRQ
> > drivers/ata/sata_dwc_460ex.c:#define NO_IRQÂÂÂÂÂÂÂÂÂÂÂÂÂ0
> > drivers/ata/sata_dwc_460ex.c:ÂÂÂif (hsdev->dma->irq == NO_IRQ) {
> > drivers/ata/sata_dwc_460ex.c:ÂÂÂif (irq == NO_IRQ) {
> > drivers/iommu/fsl_pamu.c:ÂÂÂÂÂÂÂif (irq == NO_IRQ) {
> > drivers/iommu/fsl_pamu.c:ÂÂÂÂÂÂÂif (irq != NO_IRQ)
> > drivers/media/platform/fsl-viu.c:ÂÂÂÂÂÂÂif (viu_irq == NO_IRQ) {
> > drivers/mtd/nand/mpc5121_nfc.c: if (prv->irq == NO_IRQ) {
> > drivers/pcmcia/electra_cf.c:ÂÂÂÂcf->irq = NO_IRQ;
> > drivers/pcmcia/electra_cf.c:ÂÂÂÂif (cf->irq != NO_IRQ)
> > drivers/soc/fsl/qe/qe_ic.c:/* Return an interrupt vector or NO_IRQ if
> > no interrupt is pending. */
> > drivers/soc/fsl/qe/qe_ic.c:ÂÂÂÂÂÂÂÂÂÂÂÂÂreturn NO_IRQ;
> > drivers/soc/fsl/qe/qe_ic.c:/* Return an interrupt vector or NO_IRQ if
> > no interrupt is pending. */
> > drivers/soc/fsl/qe/qe_ic.c:ÂÂÂÂÂÂÂÂÂÂÂÂÂreturn NO_IRQ;
> > drivers/soc/fsl/qe/qe_ic.c:ÂÂÂÂÂif (qe_ic->virq_low == NO_IRQ) {
> > drivers/soc/fsl/qe/qe_ic.c:ÂÂÂÂÂif (qe_ic->virq_high != NO_IRQ &&
> > drivers/spi/spi-mpc52xx.c:ÂÂÂÂÂÂif (status && (irq != NO_IRQ))
> > drivers/tty/ehv_bytechan.c:ÂÂÂÂÂif (stdout_irq == NO_IRQ) {
> > drivers/tty/ehv_bytechan.c:ÂÂÂÂÂif ((bc->rx_irq == NO_IRQ) ||
> > (bc->tx_irq == NO_IRQ)) {
> > drivers/tty/serial/cpm_uart/cpm_uart_core.c:ÂÂÂÂif (pinfo->port.irq ==
> > NO_IRQ) {
> > drivers/uio/uio_fsl_elbc_gpcm.c:ÂÂÂÂÂÂÂÂif (irq != NO_IRQ) {
> > drivers/uio/uio_fsl_elbc_gpcm.c:ÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂirq = NO_IRQ;
> > drivers/uio/uio_fsl_elbc_gpcm.c:ÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂirq != NO_IRQ ? irq :
> > -1);
> > drivers/usb/host/ehci-grlib.c:ÂÂif (irq == NO_IRQ) {
> > drivers/usb/host/ehci-ppc-of.c: if (irq == NO_IRQ) {
> > drivers/usb/host/fhci-hcd.c:ÂÂÂÂif (usb_irq == NO_IRQ) {
> > drivers/usb/host/ohci-ppc-of.c: if (irq == NO_IRQ) {
> > drivers/usb/host/uhci-grlib.c:ÂÂif (irq == NO_IRQ) {
> > drivers/video/fbdev/mb862xx/mb862xxfbdrv.c:ÂÂÂÂÂif (par->irq == NO_IRQ) {
> > drivers/virt/fsl_hypervisor.c:ÂÂÂÂÂÂÂÂÂÂif (!handle || (irq == NO_IRQ)) {
> > include/soc/fsl/qe/qe_ic.h:ÂÂÂÂÂif (cascade_irq != NO_IRQ)
> > include/soc/fsl/qe/qe_ic.h:ÂÂÂÂÂif (cascade_irq != NO_IRQ)
> > include/soc/fsl/qe/qe_ic.h:ÂÂÂÂÂif (cascade_irq != NO_IRQ)
> > include/soc/fsl/qe/qe_ic.h:ÂÂÂÂÂif (cascade_irq != NO_IRQ)
> > include/soc/fsl/qe/qe_ic.h:ÂÂÂÂÂif (cascade_irq == NO_IRQ)
> > include/soc/fsl/qe/qe_ic.h:ÂÂÂÂÂif (cascade_irq != NO_IRQ)
> >
> > Did you have other pending patches for those?
> No. I stayed away from anything FSL related as I was under the
> impression some of them were being ported to arch/arm, which uses -1 for
> NO_IRQ IIUIC.
>
> eg. all of include/soc/fsl and drivers/soc/fsl was moved from
> arch/powerpc in commit 7aa1aa6ecec2, which said:
>
> ÂÂÂÂQE: Move QE from arch/powerpc to drivers/soc
> ÂÂÂÂ
> ÂÂÂÂls1 has qe and ls1 has arm cpu.
> ÂÂÂÂmove qe from arch/powerpc to drivers/soc/fsl
> ÂÂÂÂto adapt to powerpc and arm
>
> But looking at the Kconfigs it looks like they're still only selectable
> on PPC. So that's a bit annoying.
>
> I'll do patches for everything above that's not drivers/soc or
> include/soc and hopefully we can hear from someone at NXP on the plans
> for getting the soc parts enabled on arm.

qe_ic is handled byÂhttps://lkml.org/lkml/2017/3/13/1234

-Scott