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

From: Arnd Bergmann
Date: Wed Mar 15 2017 - 08:08:36 EST


On Wed, Mar 15, 2017 at 6:35 AM, Michael Ellerman <mpe@xxxxxxxxxxxxxx> 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:
>>>
>>
>> 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.

I think the removal of the NO_IRQ references is a requirement for
getting the drivers working properly on ARM, as the OF platform
code will use '0' for invalid IRQs.

Arnd