Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

MIPS: Netlogic: Use chip_data for irq_chip methods

Update mips/netlogic/common/irq.c and mips/pci/msi-xlp.c to use chip_data
to store interrupt controller data pointer. It uses handler_data now,
and that causes errors when an API (like the GPIO subsystem) tries to
use the handler data.

Signed-off-by: Kamlakant Patel <kamlakant.patel@broadcom.com>
Signed-off-by: Jayachandran C <jchandra@broadcom.com>
Cc: linux-mips@linux-mips.org
Patchwork: https://patchwork.linux-mips.org/patch/10817/
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>

authored by

Kamlakant Patel and committed by
Ralf Baechle
325f0a18 832f5dac

+16 -16
+6 -6
arch/mips/netlogic/common/irq.c
··· 87 87 static void xlp_pic_enable(struct irq_data *d) 88 88 { 89 89 unsigned long flags; 90 - struct nlm_pic_irq *pd = irq_data_get_irq_handler_data(d); 90 + struct nlm_pic_irq *pd = irq_data_get_irq_chip_data(d); 91 91 92 92 BUG_ON(!pd); 93 93 spin_lock_irqsave(&pd->node->piclock, flags); ··· 97 97 98 98 static void xlp_pic_disable(struct irq_data *d) 99 99 { 100 - struct nlm_pic_irq *pd = irq_data_get_irq_handler_data(d); 100 + struct nlm_pic_irq *pd = irq_data_get_irq_chip_data(d); 101 101 unsigned long flags; 102 102 103 103 BUG_ON(!pd); ··· 108 108 109 109 static void xlp_pic_mask_ack(struct irq_data *d) 110 110 { 111 - struct nlm_pic_irq *pd = irq_data_get_irq_handler_data(d); 111 + struct nlm_pic_irq *pd = irq_data_get_irq_chip_data(d); 112 112 113 113 clear_c0_eimr(pd->picirq); 114 114 ack_c0_eirr(pd->picirq); ··· 116 116 117 117 static void xlp_pic_unmask(struct irq_data *d) 118 118 { 119 - struct nlm_pic_irq *pd = irq_data_get_irq_handler_data(d); 119 + struct nlm_pic_irq *pd = irq_data_get_irq_chip_data(d); 120 120 121 121 BUG_ON(!pd); 122 122 ··· 193 193 pic_data->picirq = picirq; 194 194 pic_data->node = nlm_get_node(node); 195 195 irq_set_chip_and_handler(xirq, &xlp_pic, handle_level_irq); 196 - irq_set_handler_data(xirq, pic_data); 196 + irq_set_chip_data(xirq, pic_data); 197 197 } 198 198 199 199 void nlm_set_pic_extra_ack(int node, int irq, void (*xack)(struct irq_data *)) ··· 202 202 int xirq; 203 203 204 204 xirq = nlm_irq_to_xirq(node, irq); 205 - pic_data = irq_get_handler_data(xirq); 205 + pic_data = irq_get_chip_data(xirq); 206 206 if (WARN_ON(!pic_data)) 207 207 return; 208 208 pic_data->extra_ack = xack;
+10 -10
arch/mips/pci/msi-xlp.c
··· 131 131 */ 132 132 static void xlp_msi_enable(struct irq_data *d) 133 133 { 134 - struct xlp_msi_data *md = irq_data_get_irq_handler_data(d); 134 + struct xlp_msi_data *md = irq_data_get_irq_chip_data(d); 135 135 unsigned long flags; 136 136 int vec; 137 137 ··· 148 148 149 149 static void xlp_msi_disable(struct irq_data *d) 150 150 { 151 - struct xlp_msi_data *md = irq_data_get_irq_handler_data(d); 151 + struct xlp_msi_data *md = irq_data_get_irq_chip_data(d); 152 152 unsigned long flags; 153 153 int vec; 154 154 ··· 165 165 166 166 static void xlp_msi_mask_ack(struct irq_data *d) 167 167 { 168 - struct xlp_msi_data *md = irq_data_get_irq_handler_data(d); 168 + struct xlp_msi_data *md = irq_data_get_irq_chip_data(d); 169 169 int link, vec; 170 170 171 171 link = nlm_irq_msilink(d->irq); ··· 211 211 msixvec = nlm_irq_msixvec(d->irq); 212 212 link = nlm_irq_msixlink(msixvec); 213 213 pci_msi_mask_irq(d); 214 - md = irq_data_get_irq_handler_data(d); 214 + md = irq_data_get_irq_chip_data(d); 215 215 216 216 /* Ack MSI on bridge */ 217 217 if (cpu_is_xlp9xx()) { ··· 302 302 /* Get MSI data for the link */ 303 303 lirq = PIC_PCIE_LINK_MSI_IRQ(link); 304 304 xirq = nlm_irq_to_xirq(node, nlm_link_msiirq(link, 0)); 305 - md = irq_get_handler_data(xirq); 305 + md = irq_get_chip_data(xirq); 306 306 msiaddr = MSI_LINK_ADDR(node, link); 307 307 308 308 spin_lock_irqsave(&md->msi_lock, flags); ··· 409 409 /* Get MSI data for the link */ 410 410 lirq = PIC_PCIE_MSIX_IRQ(link); 411 411 xirq = nlm_irq_to_xirq(node, nlm_link_msixirq(link, 0)); 412 - md = irq_get_handler_data(xirq); 412 + md = irq_get_chip_data(xirq); 413 413 msixaddr = MSIX_LINK_ADDR(node, link); 414 414 415 415 spin_lock_irqsave(&md->msi_lock, flags); ··· 485 485 irq = nlm_irq_to_xirq(node, nlm_link_msiirq(link, 0)); 486 486 for (i = irq; i < irq + XLP_MSIVEC_PER_LINK; i++) { 487 487 irq_set_chip_and_handler(i, &xlp_msi_chip, handle_level_irq); 488 - irq_set_handler_data(i, md); 488 + irq_set_chip_data(i, md); 489 489 } 490 490 491 491 for (i = 0; i < XLP_MSIXVEC_PER_LINK ; i++) { ··· 508 508 /* Initialize MSI-X extended irq space for the link */ 509 509 irq = nlm_irq_to_xirq(node, nlm_link_msixirq(link, i)); 510 510 irq_set_chip_and_handler(irq, &xlp_msix_chip, handle_level_irq); 511 - irq_set_handler_data(irq, md); 511 + irq_set_chip_data(irq, md); 512 512 } 513 513 } 514 514 ··· 520 520 521 521 link = lirq - PIC_PCIE_LINK_MSI_IRQ_BASE; 522 522 irqbase = nlm_irq_to_xirq(node, nlm_link_msiirq(link, 0)); 523 - md = irq_get_handler_data(irqbase); 523 + md = irq_get_chip_data(irqbase); 524 524 if (cpu_is_xlp9xx()) 525 525 status = nlm_read_reg(md->lnkbase, PCIE_9XX_MSI_STATUS) & 526 526 md->msi_enabled_mask; ··· 550 550 551 551 link = lirq - PIC_PCIE_MSIX_IRQ_BASE; 552 552 irqbase = nlm_irq_to_xirq(node, nlm_link_msixirq(link, 0)); 553 - md = irq_get_handler_data(irqbase); 553 + md = irq_get_chip_data(irqbase); 554 554 if (cpu_is_xlp9xx()) 555 555 status = nlm_read_reg(md->lnkbase, PCIE_9XX_MSIX_STATUSX(link)); 556 556 else