diff options
Diffstat (limited to 'drivers')
917 files changed, 2751 insertions, 3827 deletions
diff --git a/drivers/acorn/block/mfmhd.c b/drivers/acorn/block/mfmhd.c index 1bace29f4b6a..7fde8f4daebf 100644 --- a/drivers/acorn/block/mfmhd.c +++ b/drivers/acorn/block/mfmhd.c | |||
@@ -938,7 +938,7 @@ static void do_mfm_request(request_queue_t *q) | |||
938 | mfm_request(); | 938 | mfm_request(); |
939 | } | 939 | } |
940 | 940 | ||
941 | static void mfm_interrupt_handler(int unused, void *dev_id, struct pt_regs *regs) | 941 | static void mfm_interrupt_handler(int unused, void *dev_id) |
942 | { | 942 | { |
943 | void (*handler) (void) = do_mfm; | 943 | void (*handler) (void) = do_mfm; |
944 | 944 | ||
diff --git a/drivers/acpi/cm_sbs.c b/drivers/acpi/cm_sbs.c index a01ce6700bfe..4a9b7bf6f44e 100644 --- a/drivers/acpi/cm_sbs.c +++ b/drivers/acpi/cm_sbs.c | |||
@@ -67,7 +67,7 @@ void acpi_unlock_ac_dir(struct proc_dir_entry *acpi_ac_dir_param) | |||
67 | lock_ac_dir_cnt--; | 67 | lock_ac_dir_cnt--; |
68 | if (lock_ac_dir_cnt == 0 && acpi_ac_dir_param && acpi_ac_dir) { | 68 | if (lock_ac_dir_cnt == 0 && acpi_ac_dir_param && acpi_ac_dir) { |
69 | remove_proc_entry(ACPI_AC_CLASS, acpi_root_dir); | 69 | remove_proc_entry(ACPI_AC_CLASS, acpi_root_dir); |
70 | acpi_ac_dir = 0; | 70 | acpi_ac_dir = NULL; |
71 | } | 71 | } |
72 | mutex_unlock(&cm_sbs_mutex); | 72 | mutex_unlock(&cm_sbs_mutex); |
73 | } | 73 | } |
@@ -99,7 +99,7 @@ void acpi_unlock_battery_dir(struct proc_dir_entry *acpi_battery_dir_param) | |||
99 | if (lock_battery_dir_cnt == 0 && acpi_battery_dir_param | 99 | if (lock_battery_dir_cnt == 0 && acpi_battery_dir_param |
100 | && acpi_battery_dir) { | 100 | && acpi_battery_dir) { |
101 | remove_proc_entry(ACPI_BATTERY_CLASS, acpi_root_dir); | 101 | remove_proc_entry(ACPI_BATTERY_CLASS, acpi_root_dir); |
102 | acpi_battery_dir = 0; | 102 | acpi_battery_dir = NULL; |
103 | } | 103 | } |
104 | mutex_unlock(&cm_sbs_mutex); | 104 | mutex_unlock(&cm_sbs_mutex); |
105 | return; | 105 | return; |
diff --git a/drivers/acpi/hardware/hwregs.c b/drivers/acpi/hardware/hwregs.c index 3143f36fcec9..fa58c1edce1e 100644 --- a/drivers/acpi/hardware/hwregs.c +++ b/drivers/acpi/hardware/hwregs.c | |||
@@ -665,8 +665,6 @@ acpi_status acpi_hw_register_write(u8 use_lock, u32 register_id, u32 value) | |||
665 | 665 | ||
666 | /* | 666 | /* |
667 | * Perform a read first to preserve certain bits (per ACPI spec) | 667 | * Perform a read first to preserve certain bits (per ACPI spec) |
668 | * | ||
669 | * Note: This includes SCI_EN, we never want to change this bit | ||
670 | */ | 668 | */ |
671 | status = acpi_hw_register_read(ACPI_MTX_DO_NOT_LOCK, | 669 | status = acpi_hw_register_read(ACPI_MTX_DO_NOT_LOCK, |
672 | ACPI_REGISTER_PM1_CONTROL, | 670 | ACPI_REGISTER_PM1_CONTROL, |
diff --git a/drivers/acpi/osl.c b/drivers/acpi/osl.c index 20beea778ea2..068fe4f100b0 100644 --- a/drivers/acpi/osl.c +++ b/drivers/acpi/osl.c | |||
@@ -237,7 +237,7 @@ acpi_os_table_override(struct acpi_table_header * existing_table, | |||
237 | return AE_OK; | 237 | return AE_OK; |
238 | } | 238 | } |
239 | 239 | ||
240 | static irqreturn_t acpi_irq(int irq, void *dev_id, struct pt_regs *regs) | 240 | static irqreturn_t acpi_irq(int irq, void *dev_id) |
241 | { | 241 | { |
242 | return (*acpi_irq_handler) (acpi_irq_context) ? IRQ_HANDLED : IRQ_NONE; | 242 | return (*acpi_irq_handler) (acpi_irq_context) ? IRQ_HANDLED : IRQ_NONE; |
243 | } | 243 | } |
diff --git a/drivers/ata/ahci.c b/drivers/ata/ahci.c index 54e1f38ce301..25929123ffff 100644 --- a/drivers/ata/ahci.c +++ b/drivers/ata/ahci.c | |||
@@ -204,7 +204,7 @@ static u32 ahci_scr_read (struct ata_port *ap, unsigned int sc_reg); | |||
204 | static void ahci_scr_write (struct ata_port *ap, unsigned int sc_reg, u32 val); | 204 | static void ahci_scr_write (struct ata_port *ap, unsigned int sc_reg, u32 val); |
205 | static int ahci_init_one (struct pci_dev *pdev, const struct pci_device_id *ent); | 205 | static int ahci_init_one (struct pci_dev *pdev, const struct pci_device_id *ent); |
206 | static unsigned int ahci_qc_issue(struct ata_queued_cmd *qc); | 206 | static unsigned int ahci_qc_issue(struct ata_queued_cmd *qc); |
207 | static irqreturn_t ahci_interrupt (int irq, void *dev_instance, struct pt_regs *regs); | 207 | static irqreturn_t ahci_interrupt (int irq, void *dev_instance); |
208 | static void ahci_irq_clear(struct ata_port *ap); | 208 | static void ahci_irq_clear(struct ata_port *ap); |
209 | static int ahci_port_start(struct ata_port *ap); | 209 | static int ahci_port_start(struct ata_port *ap); |
210 | static void ahci_port_stop(struct ata_port *ap); | 210 | static void ahci_port_stop(struct ata_port *ap); |
@@ -1059,7 +1059,7 @@ static void ahci_irq_clear(struct ata_port *ap) | |||
1059 | /* TODO */ | 1059 | /* TODO */ |
1060 | } | 1060 | } |
1061 | 1061 | ||
1062 | static irqreturn_t ahci_interrupt(int irq, void *dev_instance, struct pt_regs *regs) | 1062 | static irqreturn_t ahci_interrupt(int irq, void *dev_instance) |
1063 | { | 1063 | { |
1064 | struct ata_host *host = dev_instance; | 1064 | struct ata_host *host = dev_instance; |
1065 | struct ahci_host_priv *hpriv; | 1065 | struct ahci_host_priv *hpriv; |
diff --git a/drivers/ata/libata-core.c b/drivers/ata/libata-core.c index dce65651d858..77138a39eb04 100644 --- a/drivers/ata/libata-core.c +++ b/drivers/ata/libata-core.c | |||
@@ -4857,7 +4857,6 @@ idle_irq: | |||
4857 | * ata_interrupt - Default ATA host interrupt handler | 4857 | * ata_interrupt - Default ATA host interrupt handler |
4858 | * @irq: irq line (unused) | 4858 | * @irq: irq line (unused) |
4859 | * @dev_instance: pointer to our ata_host information structure | 4859 | * @dev_instance: pointer to our ata_host information structure |
4860 | * @regs: unused | ||
4861 | * | 4860 | * |
4862 | * Default interrupt handler for PCI IDE devices. Calls | 4861 | * Default interrupt handler for PCI IDE devices. Calls |
4863 | * ata_host_intr() for each port that is not disabled. | 4862 | * ata_host_intr() for each port that is not disabled. |
@@ -4869,7 +4868,7 @@ idle_irq: | |||
4869 | * IRQ_NONE or IRQ_HANDLED. | 4868 | * IRQ_NONE or IRQ_HANDLED. |
4870 | */ | 4869 | */ |
4871 | 4870 | ||
4872 | irqreturn_t ata_interrupt (int irq, void *dev_instance, struct pt_regs *regs) | 4871 | irqreturn_t ata_interrupt (int irq, void *dev_instance) |
4873 | { | 4872 | { |
4874 | struct ata_host *host = dev_instance; | 4873 | struct ata_host *host = dev_instance; |
4875 | unsigned int i; | 4874 | unsigned int i; |
diff --git a/drivers/ata/pdc_adma.c b/drivers/ata/pdc_adma.c index 81f3d219e70e..9021e34d2096 100644 --- a/drivers/ata/pdc_adma.c +++ b/drivers/ata/pdc_adma.c | |||
@@ -124,8 +124,7 @@ struct adma_port_priv { | |||
124 | 124 | ||
125 | static int adma_ata_init_one (struct pci_dev *pdev, | 125 | static int adma_ata_init_one (struct pci_dev *pdev, |
126 | const struct pci_device_id *ent); | 126 | const struct pci_device_id *ent); |
127 | static irqreturn_t adma_intr (int irq, void *dev_instance, | 127 | static irqreturn_t adma_intr (int irq, void *dev_instance); |
128 | struct pt_regs *regs); | ||
129 | static int adma_port_start(struct ata_port *ap); | 128 | static int adma_port_start(struct ata_port *ap); |
130 | static void adma_host_stop(struct ata_host *host); | 129 | static void adma_host_stop(struct ata_host *host); |
131 | static void adma_port_stop(struct ata_port *ap); | 130 | static void adma_port_stop(struct ata_port *ap); |
@@ -508,7 +507,7 @@ static inline unsigned int adma_intr_mmio(struct ata_host *host) | |||
508 | return handled; | 507 | return handled; |
509 | } | 508 | } |
510 | 509 | ||
511 | static irqreturn_t adma_intr(int irq, void *dev_instance, struct pt_regs *regs) | 510 | static irqreturn_t adma_intr(int irq, void *dev_instance) |
512 | { | 511 | { |
513 | struct ata_host *host = dev_instance; | 512 | struct ata_host *host = dev_instance; |
514 | unsigned int handled = 0; | 513 | unsigned int handled = 0; |
diff --git a/drivers/ata/sata_mv.c b/drivers/ata/sata_mv.c index e6aa1a86d5cf..1b8e0eb9e032 100644 --- a/drivers/ata/sata_mv.c +++ b/drivers/ata/sata_mv.c | |||
@@ -348,8 +348,7 @@ static void mv_port_stop(struct ata_port *ap); | |||
348 | static void mv_qc_prep(struct ata_queued_cmd *qc); | 348 | static void mv_qc_prep(struct ata_queued_cmd *qc); |
349 | static void mv_qc_prep_iie(struct ata_queued_cmd *qc); | 349 | static void mv_qc_prep_iie(struct ata_queued_cmd *qc); |
350 | static unsigned int mv_qc_issue(struct ata_queued_cmd *qc); | 350 | static unsigned int mv_qc_issue(struct ata_queued_cmd *qc); |
351 | static irqreturn_t mv_interrupt(int irq, void *dev_instance, | 351 | static irqreturn_t mv_interrupt(int irq, void *dev_instance); |
352 | struct pt_regs *regs); | ||
353 | static void mv_eng_timeout(struct ata_port *ap); | 352 | static void mv_eng_timeout(struct ata_port *ap); |
354 | static int mv_init_one(struct pci_dev *pdev, const struct pci_device_id *ent); | 353 | static int mv_init_one(struct pci_dev *pdev, const struct pci_device_id *ent); |
355 | 354 | ||
@@ -1448,8 +1447,7 @@ static void mv_host_intr(struct ata_host *host, u32 relevant, unsigned int hc) | |||
1448 | * This routine holds the host lock while processing pending | 1447 | * This routine holds the host lock while processing pending |
1449 | * interrupts. | 1448 | * interrupts. |
1450 | */ | 1449 | */ |
1451 | static irqreturn_t mv_interrupt(int irq, void *dev_instance, | 1450 | static irqreturn_t mv_interrupt(int irq, void *dev_instance) |
1452 | struct pt_regs *regs) | ||
1453 | { | 1451 | { |
1454 | struct ata_host *host = dev_instance; | 1452 | struct ata_host *host = dev_instance; |
1455 | unsigned int hc, handled = 0, n_hcs; | 1453 | unsigned int hc, handled = 0, n_hcs; |
diff --git a/drivers/ata/sata_nv.c b/drivers/ata/sata_nv.c index d09d20a17790..323b60710806 100644 --- a/drivers/ata/sata_nv.c +++ b/drivers/ata/sata_nv.c | |||
@@ -82,12 +82,9 @@ enum { | |||
82 | 82 | ||
83 | static int nv_init_one (struct pci_dev *pdev, const struct pci_device_id *ent); | 83 | static int nv_init_one (struct pci_dev *pdev, const struct pci_device_id *ent); |
84 | static void nv_ck804_host_stop(struct ata_host *host); | 84 | static void nv_ck804_host_stop(struct ata_host *host); |
85 | static irqreturn_t nv_generic_interrupt(int irq, void *dev_instance, | 85 | static irqreturn_t nv_generic_interrupt(int irq, void *dev_instance); |
86 | struct pt_regs *regs); | 86 | static irqreturn_t nv_nf2_interrupt(int irq, void *dev_instance); |
87 | static irqreturn_t nv_nf2_interrupt(int irq, void *dev_instance, | 87 | static irqreturn_t nv_ck804_interrupt(int irq, void *dev_instance); |
88 | struct pt_regs *regs); | ||
89 | static irqreturn_t nv_ck804_interrupt(int irq, void *dev_instance, | ||
90 | struct pt_regs *regs); | ||
91 | static u32 nv_scr_read (struct ata_port *ap, unsigned int sc_reg); | 88 | static u32 nv_scr_read (struct ata_port *ap, unsigned int sc_reg); |
92 | static void nv_scr_write (struct ata_port *ap, unsigned int sc_reg, u32 val); | 89 | static void nv_scr_write (struct ata_port *ap, unsigned int sc_reg, u32 val); |
93 | 90 | ||
@@ -276,8 +273,7 @@ MODULE_LICENSE("GPL"); | |||
276 | MODULE_DEVICE_TABLE(pci, nv_pci_tbl); | 273 | MODULE_DEVICE_TABLE(pci, nv_pci_tbl); |
277 | MODULE_VERSION(DRV_VERSION); | 274 | MODULE_VERSION(DRV_VERSION); |
278 | 275 | ||
279 | static irqreturn_t nv_generic_interrupt(int irq, void *dev_instance, | 276 | static irqreturn_t nv_generic_interrupt(int irq, void *dev_instance) |
280 | struct pt_regs *regs) | ||
281 | { | 277 | { |
282 | struct ata_host *host = dev_instance; | 278 | struct ata_host *host = dev_instance; |
283 | unsigned int i; | 279 | unsigned int i; |
@@ -357,8 +353,7 @@ static irqreturn_t nv_do_interrupt(struct ata_host *host, u8 irq_stat) | |||
357 | return IRQ_RETVAL(handled); | 353 | return IRQ_RETVAL(handled); |
358 | } | 354 | } |
359 | 355 | ||
360 | static irqreturn_t nv_nf2_interrupt(int irq, void *dev_instance, | 356 | static irqreturn_t nv_nf2_interrupt(int irq, void *dev_instance) |
361 | struct pt_regs *regs) | ||
362 | { | 357 | { |
363 | struct ata_host *host = dev_instance; | 358 | struct ata_host *host = dev_instance; |
364 | u8 irq_stat; | 359 | u8 irq_stat; |
@@ -372,8 +367,7 @@ static irqreturn_t nv_nf2_interrupt(int irq, void *dev_instance, | |||
372 | return ret; | 367 | return ret; |
373 | } | 368 | } |
374 | 369 | ||
375 | static irqreturn_t nv_ck804_interrupt(int irq, void *dev_instance, | 370 | static irqreturn_t nv_ck804_interrupt(int irq, void *dev_instance) |
376 | struct pt_regs *regs) | ||
377 | { | 371 | { |
378 | struct ata_host *host = dev_instance; | 372 | struct ata_host *host = dev_instance; |
379 | u8 irq_stat; | 373 | u8 irq_stat; |
diff --git a/drivers/ata/sata_promise.c b/drivers/ata/sata_promise.c index 15c9437710fc..8bcdfa64667c 100644 --- a/drivers/ata/sata_promise.c +++ b/drivers/ata/sata_promise.c | |||
@@ -93,7 +93,7 @@ struct pdc_host_priv { | |||
93 | static u32 pdc_sata_scr_read (struct ata_port *ap, unsigned int sc_reg); | 93 | static u32 pdc_sata_scr_read (struct ata_port *ap, unsigned int sc_reg); |
94 | static void pdc_sata_scr_write (struct ata_port *ap, unsigned int sc_reg, u32 val); | 94 | static void pdc_sata_scr_write (struct ata_port *ap, unsigned int sc_reg, u32 val); |
95 | static int pdc_ata_init_one (struct pci_dev *pdev, const struct pci_device_id *ent); | 95 | static int pdc_ata_init_one (struct pci_dev *pdev, const struct pci_device_id *ent); |
96 | static irqreturn_t pdc_interrupt (int irq, void *dev_instance, struct pt_regs *regs); | 96 | static irqreturn_t pdc_interrupt (int irq, void *dev_instance); |
97 | static void pdc_eng_timeout(struct ata_port *ap); | 97 | static void pdc_eng_timeout(struct ata_port *ap); |
98 | static int pdc_port_start(struct ata_port *ap); | 98 | static int pdc_port_start(struct ata_port *ap); |
99 | static void pdc_port_stop(struct ata_port *ap); | 99 | static void pdc_port_stop(struct ata_port *ap); |
@@ -360,7 +360,7 @@ static void pdc_sata_phy_reset(struct ata_port *ap) | |||
360 | static void pdc_pata_cbl_detect(struct ata_port *ap) | 360 | static void pdc_pata_cbl_detect(struct ata_port *ap) |
361 | { | 361 | { |
362 | u8 tmp; | 362 | u8 tmp; |
363 | void __iomem *mmio = (void *) ap->ioaddr.cmd_addr + PDC_CTLSTAT + 0x03; | 363 | void __iomem *mmio = (void __iomem *) ap->ioaddr.cmd_addr + PDC_CTLSTAT + 0x03; |
364 | 364 | ||
365 | tmp = readb(mmio); | 365 | tmp = readb(mmio); |
366 | 366 | ||
@@ -498,7 +498,7 @@ static void pdc_irq_clear(struct ata_port *ap) | |||
498 | readl(mmio + PDC_INT_SEQMASK); | 498 | readl(mmio + PDC_INT_SEQMASK); |
499 | } | 499 | } |
500 | 500 | ||
501 | static irqreturn_t pdc_interrupt (int irq, void *dev_instance, struct pt_regs *regs) | 501 | static irqreturn_t pdc_interrupt (int irq, void *dev_instance) |
502 | { | 502 | { |
503 | struct ata_host *host = dev_instance; | 503 | struct ata_host *host = dev_instance; |
504 | struct ata_port *ap; | 504 | struct ata_port *ap; |
diff --git a/drivers/ata/sata_qstor.c b/drivers/ata/sata_qstor.c index 7f6cc3c07de5..710909df4eaf 100644 --- a/drivers/ata/sata_qstor.c +++ b/drivers/ata/sata_qstor.c | |||
@@ -114,7 +114,7 @@ struct qs_port_priv { | |||
114 | static u32 qs_scr_read (struct ata_port *ap, unsigned int sc_reg); | 114 | static u32 qs_scr_read (struct ata_port *ap, unsigned int sc_reg); |
115 | static void qs_scr_write (struct ata_port *ap, unsigned int sc_reg, u32 val); | 115 | static void qs_scr_write (struct ata_port *ap, unsigned int sc_reg, u32 val); |
116 | static int qs_ata_init_one (struct pci_dev *pdev, const struct pci_device_id *ent); | 116 | static int qs_ata_init_one (struct pci_dev *pdev, const struct pci_device_id *ent); |
117 | static irqreturn_t qs_intr (int irq, void *dev_instance, struct pt_regs *regs); | 117 | static irqreturn_t qs_intr (int irq, void *dev_instance); |
118 | static int qs_port_start(struct ata_port *ap); | 118 | static int qs_port_start(struct ata_port *ap); |
119 | static void qs_host_stop(struct ata_host *host); | 119 | static void qs_host_stop(struct ata_host *host); |
120 | static void qs_port_stop(struct ata_port *ap); | 120 | static void qs_port_stop(struct ata_port *ap); |
@@ -454,7 +454,7 @@ static inline unsigned int qs_intr_mmio(struct ata_host *host) | |||
454 | return handled; | 454 | return handled; |
455 | } | 455 | } |
456 | 456 | ||
457 | static irqreturn_t qs_intr(int irq, void *dev_instance, struct pt_regs *regs) | 457 | static irqreturn_t qs_intr(int irq, void *dev_instance) |
458 | { | 458 | { |
459 | struct ata_host *host = dev_instance; | 459 | struct ata_host *host = dev_instance; |
460 | unsigned int handled = 0; | 460 | unsigned int handled = 0; |
diff --git a/drivers/ata/sata_sil.c b/drivers/ata/sata_sil.c index 3d9fa1cc834d..ca8d99312472 100644 --- a/drivers/ata/sata_sil.c +++ b/drivers/ata/sata_sil.c | |||
@@ -116,8 +116,7 @@ static void sil_dev_config(struct ata_port *ap, struct ata_device *dev); | |||
116 | static u32 sil_scr_read (struct ata_port *ap, unsigned int sc_reg); | 116 | static u32 sil_scr_read (struct ata_port *ap, unsigned int sc_reg); |
117 | static void sil_scr_write (struct ata_port *ap, unsigned int sc_reg, u32 val); | 117 | static void sil_scr_write (struct ata_port *ap, unsigned int sc_reg, u32 val); |
118 | static void sil_post_set_mode (struct ata_port *ap); | 118 | static void sil_post_set_mode (struct ata_port *ap); |
119 | static irqreturn_t sil_interrupt(int irq, void *dev_instance, | 119 | static irqreturn_t sil_interrupt(int irq, void *dev_instance); |
120 | struct pt_regs *regs); | ||
121 | static void sil_freeze(struct ata_port *ap); | 120 | static void sil_freeze(struct ata_port *ap); |
122 | static void sil_thaw(struct ata_port *ap); | 121 | static void sil_thaw(struct ata_port *ap); |
123 | 122 | ||
@@ -350,7 +349,7 @@ static u32 sil_scr_read (struct ata_port *ap, unsigned int sc_reg) | |||
350 | 349 | ||
351 | static void sil_scr_write (struct ata_port *ap, unsigned int sc_reg, u32 val) | 350 | static void sil_scr_write (struct ata_port *ap, unsigned int sc_reg, u32 val) |
352 | { | 351 | { |
353 | void *mmio = (void __iomem *) sil_scr_addr(ap, sc_reg); | 352 | void __iomem *mmio = (void __iomem *) sil_scr_addr(ap, sc_reg); |
354 | if (mmio) | 353 | if (mmio) |
355 | writel(val, mmio); | 354 | writel(val, mmio); |
356 | } | 355 | } |
@@ -437,8 +436,7 @@ static void sil_host_intr(struct ata_port *ap, u32 bmdma2) | |||
437 | ata_port_freeze(ap); | 436 | ata_port_freeze(ap); |
438 | } | 437 | } |
439 | 438 | ||
440 | static irqreturn_t sil_interrupt(int irq, void *dev_instance, | 439 | static irqreturn_t sil_interrupt(int irq, void *dev_instance) |
441 | struct pt_regs *regs) | ||
442 | { | 440 | { |
443 | struct ata_host *host = dev_instance; | 441 | struct ata_host *host = dev_instance; |
444 | void __iomem *mmio_base = host->mmio_base; | 442 | void __iomem *mmio_base = host->mmio_base; |
diff --git a/drivers/ata/sata_sil24.c b/drivers/ata/sata_sil24.c index a951f40c2f21..169e200a6a71 100644 --- a/drivers/ata/sata_sil24.c +++ b/drivers/ata/sata_sil24.c | |||
@@ -330,7 +330,7 @@ static void sil24_tf_read(struct ata_port *ap, struct ata_taskfile *tf); | |||
330 | static void sil24_qc_prep(struct ata_queued_cmd *qc); | 330 | static void sil24_qc_prep(struct ata_queued_cmd *qc); |
331 | static unsigned int sil24_qc_issue(struct ata_queued_cmd *qc); | 331 | static unsigned int sil24_qc_issue(struct ata_queued_cmd *qc); |
332 | static void sil24_irq_clear(struct ata_port *ap); | 332 | static void sil24_irq_clear(struct ata_port *ap); |
333 | static irqreturn_t sil24_interrupt(int irq, void *dev_instance, struct pt_regs *regs); | 333 | static irqreturn_t sil24_interrupt(int irq, void *dev_instance); |
334 | static void sil24_freeze(struct ata_port *ap); | 334 | static void sil24_freeze(struct ata_port *ap); |
335 | static void sil24_thaw(struct ata_port *ap); | 335 | static void sil24_thaw(struct ata_port *ap); |
336 | static void sil24_error_handler(struct ata_port *ap); | 336 | static void sil24_error_handler(struct ata_port *ap); |
@@ -870,7 +870,7 @@ static inline void sil24_host_intr(struct ata_port *ap) | |||
870 | slot_stat, ap->active_tag, ap->sactive); | 870 | slot_stat, ap->active_tag, ap->sactive); |
871 | } | 871 | } |
872 | 872 | ||
873 | static irqreturn_t sil24_interrupt(int irq, void *dev_instance, struct pt_regs *regs) | 873 | static irqreturn_t sil24_interrupt(int irq, void *dev_instance) |
874 | { | 874 | { |
875 | struct ata_host *host = dev_instance; | 875 | struct ata_host *host = dev_instance; |
876 | struct sil24_host_priv *hpriv = host->private_data; | 876 | struct sil24_host_priv *hpriv = host->private_data; |
diff --git a/drivers/ata/sata_svw.c b/drivers/ata/sata_svw.c index 84025a2fd5be..db32d15b7fa1 100644 --- a/drivers/ata/sata_svw.c +++ b/drivers/ata/sata_svw.c | |||
@@ -177,7 +177,7 @@ static void k2_bmdma_setup_mmio (struct ata_queued_cmd *qc) | |||
177 | struct ata_port *ap = qc->ap; | 177 | struct ata_port *ap = qc->ap; |
178 | unsigned int rw = (qc->tf.flags & ATA_TFLAG_WRITE); | 178 | unsigned int rw = (qc->tf.flags & ATA_TFLAG_WRITE); |
179 | u8 dmactl; | 179 | u8 dmactl; |
180 | void *mmio = (void *) ap->ioaddr.bmdma_addr; | 180 | void __iomem *mmio = (void __iomem *) ap->ioaddr.bmdma_addr; |
181 | /* load PRD table addr. */ | 181 | /* load PRD table addr. */ |
182 | mb(); /* make sure PRD table writes are visible to controller */ | 182 | mb(); /* make sure PRD table writes are visible to controller */ |
183 | writel(ap->prd_dma, mmio + ATA_DMA_TABLE_OFS); | 183 | writel(ap->prd_dma, mmio + ATA_DMA_TABLE_OFS); |
@@ -205,7 +205,7 @@ static void k2_bmdma_setup_mmio (struct ata_queued_cmd *qc) | |||
205 | static void k2_bmdma_start_mmio (struct ata_queued_cmd *qc) | 205 | static void k2_bmdma_start_mmio (struct ata_queued_cmd *qc) |
206 | { | 206 | { |
207 | struct ata_port *ap = qc->ap; | 207 | struct ata_port *ap = qc->ap; |
208 | void *mmio = (void *) ap->ioaddr.bmdma_addr; | 208 | void __iomem *mmio = (void __iomem *) ap->ioaddr.bmdma_addr; |
209 | u8 dmactl; | 209 | u8 dmactl; |
210 | 210 | ||
211 | /* start host DMA transaction */ | 211 | /* start host DMA transaction */ |
diff --git a/drivers/ata/sata_sx4.c b/drivers/ata/sata_sx4.c index 8c74f2ff4344..ae7992de4b08 100644 --- a/drivers/ata/sata_sx4.c +++ b/drivers/ata/sata_sx4.c | |||
@@ -152,7 +152,7 @@ struct pdc_host_priv { | |||
152 | 152 | ||
153 | 153 | ||
154 | static int pdc_sata_init_one (struct pci_dev *pdev, const struct pci_device_id *ent); | 154 | static int pdc_sata_init_one (struct pci_dev *pdev, const struct pci_device_id *ent); |
155 | static irqreturn_t pdc20621_interrupt (int irq, void *dev_instance, struct pt_regs *regs); | 155 | static irqreturn_t pdc20621_interrupt (int irq, void *dev_instance); |
156 | static void pdc_eng_timeout(struct ata_port *ap); | 156 | static void pdc_eng_timeout(struct ata_port *ap); |
157 | static void pdc_20621_phy_reset (struct ata_port *ap); | 157 | static void pdc_20621_phy_reset (struct ata_port *ap); |
158 | static int pdc_port_start(struct ata_port *ap); | 158 | static int pdc_port_start(struct ata_port *ap); |
@@ -788,7 +788,7 @@ static void pdc20621_irq_clear(struct ata_port *ap) | |||
788 | readl(mmio + PDC_20621_SEQMASK); | 788 | readl(mmio + PDC_20621_SEQMASK); |
789 | } | 789 | } |
790 | 790 | ||
791 | static irqreturn_t pdc20621_interrupt (int irq, void *dev_instance, struct pt_regs *regs) | 791 | static irqreturn_t pdc20621_interrupt (int irq, void *dev_instance) |
792 | { | 792 | { |
793 | struct ata_host *host = dev_instance; | 793 | struct ata_host *host = dev_instance; |
794 | struct ata_port *ap; | 794 | struct ata_port *ap; |
diff --git a/drivers/ata/sata_vsc.c b/drivers/ata/sata_vsc.c index 273d88fcf980..e654b990b905 100644 --- a/drivers/ata/sata_vsc.c +++ b/drivers/ata/sata_vsc.c | |||
@@ -203,8 +203,7 @@ static void vsc_sata_tf_read(struct ata_port *ap, struct ata_taskfile *tf) | |||
203 | * | 203 | * |
204 | * Read the interrupt register and process for the devices that have them pending. | 204 | * Read the interrupt register and process for the devices that have them pending. |
205 | */ | 205 | */ |
206 | static irqreturn_t vsc_sata_interrupt (int irq, void *dev_instance, | 206 | static irqreturn_t vsc_sata_interrupt (int irq, void *dev_instance) |
207 | struct pt_regs *regs) | ||
208 | { | 207 | { |
209 | struct ata_host *host = dev_instance; | 208 | struct ata_host *host = dev_instance; |
210 | unsigned int i; | 209 | unsigned int i; |
diff --git a/drivers/atm/ambassador.c b/drivers/atm/ambassador.c index da599e6e9d34..323592de047b 100644 --- a/drivers/atm/ambassador.c +++ b/drivers/atm/ambassador.c | |||
@@ -861,18 +861,11 @@ static inline void interrupts_off (amb_dev * dev) { | |||
861 | 861 | ||
862 | /********** interrupt handling **********/ | 862 | /********** interrupt handling **********/ |
863 | 863 | ||
864 | static irqreturn_t interrupt_handler(int irq, void *dev_id, | 864 | static irqreturn_t interrupt_handler(int irq, void *dev_id) { |
865 | struct pt_regs *pt_regs) { | 865 | amb_dev * dev = dev_id; |
866 | amb_dev * dev = (amb_dev *) dev_id; | ||
867 | (void) pt_regs; | ||
868 | 866 | ||
869 | PRINTD (DBG_IRQ|DBG_FLOW, "interrupt_handler: %p", dev_id); | 867 | PRINTD (DBG_IRQ|DBG_FLOW, "interrupt_handler: %p", dev_id); |
870 | 868 | ||
871 | if (!dev_id) { | ||
872 | PRINTD (DBG_IRQ|DBG_ERR, "irq with NULL dev_id: %d", irq); | ||
873 | return IRQ_NONE; | ||
874 | } | ||
875 | |||
876 | { | 869 | { |
877 | u32 interrupt = rd_plain (dev, offsetof(amb_mem, interrupt)); | 870 | u32 interrupt = rd_plain (dev, offsetof(amb_mem, interrupt)); |
878 | 871 | ||
diff --git a/drivers/atm/eni.c b/drivers/atm/eni.c index df359a6c14f6..bc1b13c8f5d7 100644 --- a/drivers/atm/eni.c +++ b/drivers/atm/eni.c | |||
@@ -1488,7 +1488,7 @@ static void bug_int(struct atm_dev *dev,unsigned long reason) | |||
1488 | } | 1488 | } |
1489 | 1489 | ||
1490 | 1490 | ||
1491 | static irqreturn_t eni_int(int irq,void *dev_id,struct pt_regs *regs) | 1491 | static irqreturn_t eni_int(int irq,void *dev_id) |
1492 | { | 1492 | { |
1493 | struct atm_dev *dev; | 1493 | struct atm_dev *dev; |
1494 | struct eni_dev *eni_dev; | 1494 | struct eni_dev *eni_dev; |
diff --git a/drivers/atm/firestream.c b/drivers/atm/firestream.c index 5f25e5efefcd..40ab9b65fae9 100644 --- a/drivers/atm/firestream.c +++ b/drivers/atm/firestream.c | |||
@@ -1546,7 +1546,7 @@ static void __devexit free_freepool (struct fs_dev *dev, struct freepool *fp) | |||
1546 | 1546 | ||
1547 | 1547 | ||
1548 | 1548 | ||
1549 | static irqreturn_t fs_irq (int irq, void *dev_id, struct pt_regs * pt_regs) | 1549 | static irqreturn_t fs_irq (int irq, void *dev_id) |
1550 | { | 1550 | { |
1551 | int i; | 1551 | int i; |
1552 | u32 status; | 1552 | u32 status; |
diff --git a/drivers/atm/fore200e.c b/drivers/atm/fore200e.c index 98622130de5b..3a7b21ff30a5 100644 --- a/drivers/atm/fore200e.c +++ b/drivers/atm/fore200e.c | |||
@@ -1328,7 +1328,7 @@ fore200e_irq(struct fore200e* fore200e) | |||
1328 | 1328 | ||
1329 | 1329 | ||
1330 | static irqreturn_t | 1330 | static irqreturn_t |
1331 | fore200e_interrupt(int irq, void* dev, struct pt_regs* regs) | 1331 | fore200e_interrupt(int irq, void* dev) |
1332 | { | 1332 | { |
1333 | struct fore200e* fore200e = FORE200E_DEV((struct atm_dev*)dev); | 1333 | struct fore200e* fore200e = FORE200E_DEV((struct atm_dev*)dev); |
1334 | 1334 | ||
diff --git a/drivers/atm/he.c b/drivers/atm/he.c index b22a9142b240..c7314a79da0f 100644 --- a/drivers/atm/he.c +++ b/drivers/atm/he.c | |||
@@ -109,7 +109,7 @@ static int he_open(struct atm_vcc *vcc); | |||
109 | static void he_close(struct atm_vcc *vcc); | 109 | static void he_close(struct atm_vcc *vcc); |
110 | static int he_send(struct atm_vcc *vcc, struct sk_buff *skb); | 110 | static int he_send(struct atm_vcc *vcc, struct sk_buff *skb); |
111 | static int he_ioctl(struct atm_dev *dev, unsigned int cmd, void __user *arg); | 111 | static int he_ioctl(struct atm_dev *dev, unsigned int cmd, void __user *arg); |
112 | static irqreturn_t he_irq_handler(int irq, void *dev_id, struct pt_regs *regs); | 112 | static irqreturn_t he_irq_handler(int irq, void *dev_id); |
113 | static void he_tasklet(unsigned long data); | 113 | static void he_tasklet(unsigned long data); |
114 | static int he_proc_read(struct atm_dev *dev,loff_t *pos,char *page); | 114 | static int he_proc_read(struct atm_dev *dev,loff_t *pos,char *page); |
115 | static int he_start(struct atm_dev *dev); | 115 | static int he_start(struct atm_dev *dev); |
@@ -2216,7 +2216,7 @@ he_tasklet(unsigned long data) | |||
2216 | } | 2216 | } |
2217 | 2217 | ||
2218 | static irqreturn_t | 2218 | static irqreturn_t |
2219 | he_irq_handler(int irq, void *dev_id, struct pt_regs *regs) | 2219 | he_irq_handler(int irq, void *dev_id) |
2220 | { | 2220 | { |
2221 | unsigned long flags; | 2221 | unsigned long flags; |
2222 | struct he_dev *he_dev = (struct he_dev * )dev_id; | 2222 | struct he_dev *he_dev = (struct he_dev * )dev_id; |
diff --git a/drivers/atm/horizon.c b/drivers/atm/horizon.c index 209dba1c70da..f59349206dd2 100644 --- a/drivers/atm/horizon.c +++ b/drivers/atm/horizon.c | |||
@@ -1382,24 +1382,13 @@ static inline void rx_data_av_handler (hrz_dev * dev) { | |||
1382 | 1382 | ||
1383 | /********** interrupt handler **********/ | 1383 | /********** interrupt handler **********/ |
1384 | 1384 | ||
1385 | static irqreturn_t interrupt_handler(int irq, void *dev_id, | 1385 | static irqreturn_t interrupt_handler(int irq, void *dev_id) { |
1386 | struct pt_regs *pt_regs) { | ||
1387 | hrz_dev * dev = (hrz_dev *) dev_id; | 1386 | hrz_dev * dev = (hrz_dev *) dev_id; |
1388 | u32 int_source; | 1387 | u32 int_source; |
1389 | unsigned int irq_ok; | 1388 | unsigned int irq_ok; |
1390 | (void) pt_regs; | ||
1391 | 1389 | ||
1392 | PRINTD (DBG_FLOW, "interrupt_handler: %p", dev_id); | 1390 | PRINTD (DBG_FLOW, "interrupt_handler: %p", dev_id); |
1393 | 1391 | ||
1394 | if (!dev_id) { | ||
1395 | PRINTD (DBG_IRQ|DBG_ERR, "irq with NULL dev_id: %d", irq); | ||
1396 | return IRQ_NONE; | ||
1397 | } | ||
1398 | if (irq != dev->irq) { | ||
1399 | PRINTD (DBG_IRQ|DBG_ERR, "irq mismatch: %d", irq); | ||
1400 | return IRQ_NONE; | ||
1401 | } | ||
1402 | |||
1403 | // definitely for us | 1392 | // definitely for us |
1404 | irq_ok = 0; | 1393 | irq_ok = 0; |
1405 | while ((int_source = rd_regl (dev, INT_SOURCE_REG_OFF) | 1394 | while ((int_source = rd_regl (dev, INT_SOURCE_REG_OFF) |
diff --git a/drivers/atm/idt77252.c b/drivers/atm/idt77252.c index 7487f0ad68e9..87b17c33b3f9 100644 --- a/drivers/atm/idt77252.c +++ b/drivers/atm/idt77252.c | |||
@@ -2774,7 +2774,7 @@ idt77252_collect_stat(struct idt77252_dev *card) | |||
2774 | } | 2774 | } |
2775 | 2775 | ||
2776 | static irqreturn_t | 2776 | static irqreturn_t |
2777 | idt77252_interrupt(int irq, void *dev_id, struct pt_regs *ptregs) | 2777 | idt77252_interrupt(int irq, void *dev_id) |
2778 | { | 2778 | { |
2779 | struct idt77252_dev *card = dev_id; | 2779 | struct idt77252_dev *card = dev_id; |
2780 | u32 stat; | 2780 | u32 stat; |
diff --git a/drivers/atm/iphase.c b/drivers/atm/iphase.c index f20b0b2c06c6..9ed1c60048f0 100644 --- a/drivers/atm/iphase.c +++ b/drivers/atm/iphase.c | |||
@@ -2195,7 +2195,7 @@ err_out: | |||
2195 | return -ENOMEM; | 2195 | return -ENOMEM; |
2196 | } | 2196 | } |
2197 | 2197 | ||
2198 | static irqreturn_t ia_int(int irq, void *dev_id, struct pt_regs *regs) | 2198 | static irqreturn_t ia_int(int irq, void *dev_id) |
2199 | { | 2199 | { |
2200 | struct atm_dev *dev; | 2200 | struct atm_dev *dev; |
2201 | IADEV *iadev; | 2201 | IADEV *iadev; |
diff --git a/drivers/atm/lanai.c b/drivers/atm/lanai.c index b9568e10965a..267825501dfe 100644 --- a/drivers/atm/lanai.c +++ b/drivers/atm/lanai.c | |||
@@ -1890,13 +1890,11 @@ static inline void lanai_int_1(struct lanai_dev *lanai, u32 reason) | |||
1890 | reg_write(lanai, ack, IntAck_Reg); | 1890 | reg_write(lanai, ack, IntAck_Reg); |
1891 | } | 1891 | } |
1892 | 1892 | ||
1893 | static irqreturn_t lanai_int(int irq, void *devid, struct pt_regs *regs) | 1893 | static irqreturn_t lanai_int(int irq, void *devid) |
1894 | { | 1894 | { |
1895 | struct lanai_dev *lanai = (struct lanai_dev *) devid; | 1895 | struct lanai_dev *lanai = devid; |
1896 | u32 reason; | 1896 | u32 reason; |
1897 | 1897 | ||
1898 | (void) irq; (void) regs; /* unused variables */ | ||
1899 | |||
1900 | #ifdef USE_POWERDOWN | 1898 | #ifdef USE_POWERDOWN |
1901 | /* | 1899 | /* |
1902 | * If we're powered down we shouldn't be generating any interrupts - | 1900 | * If we're powered down we shouldn't be generating any interrupts - |
diff --git a/drivers/atm/nicstar.c b/drivers/atm/nicstar.c index b8036899e56f..632ede552761 100644 --- a/drivers/atm/nicstar.c +++ b/drivers/atm/nicstar.c | |||
@@ -214,7 +214,7 @@ static void __devinit ns_init_card_error(ns_dev *card, int error); | |||
214 | static scq_info *get_scq(int size, u32 scd); | 214 | static scq_info *get_scq(int size, u32 scd); |
215 | static void free_scq(scq_info *scq, struct atm_vcc *vcc); | 215 | static void free_scq(scq_info *scq, struct atm_vcc *vcc); |
216 | static void push_rxbufs(ns_dev *, struct sk_buff *); | 216 | static void push_rxbufs(ns_dev *, struct sk_buff *); |
217 | static irqreturn_t ns_irq_handler(int irq, void *dev_id, struct pt_regs *regs); | 217 | static irqreturn_t ns_irq_handler(int irq, void *dev_id); |
218 | static int ns_open(struct atm_vcc *vcc); | 218 | static int ns_open(struct atm_vcc *vcc); |
219 | static void ns_close(struct atm_vcc *vcc); | 219 | static void ns_close(struct atm_vcc *vcc); |
220 | static void fill_tst(ns_dev *card, int n, vc_map *vc); | 220 | static void fill_tst(ns_dev *card, int n, vc_map *vc); |
@@ -1194,7 +1194,7 @@ static void push_rxbufs(ns_dev *card, struct sk_buff *skb) | |||
1194 | 1194 | ||
1195 | 1195 | ||
1196 | 1196 | ||
1197 | static irqreturn_t ns_irq_handler(int irq, void *dev_id, struct pt_regs *regs) | 1197 | static irqreturn_t ns_irq_handler(int irq, void *dev_id) |
1198 | { | 1198 | { |
1199 | u32 stat_r; | 1199 | u32 stat_r; |
1200 | ns_dev *card; | 1200 | ns_dev *card; |
diff --git a/drivers/atm/zatm.c b/drivers/atm/zatm.c index 083c5d3f2e18..7df0f373188e 100644 --- a/drivers/atm/zatm.c +++ b/drivers/atm/zatm.c | |||
@@ -1012,7 +1012,7 @@ static int start_tx(struct atm_dev *dev) | |||
1012 | /*------------------------------- interrupts --------------------------------*/ | 1012 | /*------------------------------- interrupts --------------------------------*/ |
1013 | 1013 | ||
1014 | 1014 | ||
1015 | static irqreturn_t zatm_int(int irq,void *dev_id,struct pt_regs *regs) | 1015 | static irqreturn_t zatm_int(int irq,void *dev_id) |
1016 | { | 1016 | { |
1017 | struct atm_dev *dev; | 1017 | struct atm_dev *dev; |
1018 | struct zatm_dev *zatm_dev; | 1018 | struct zatm_dev *zatm_dev; |
diff --git a/drivers/block/DAC960.c b/drivers/block/DAC960.c index b3f639fbf220..742d07403101 100644 --- a/drivers/block/DAC960.c +++ b/drivers/block/DAC960.c | |||
@@ -2698,8 +2698,7 @@ DAC960_DetectController(struct pci_dev *PCI_Device, | |||
2698 | { | 2698 | { |
2699 | struct DAC960_privdata *privdata = | 2699 | struct DAC960_privdata *privdata = |
2700 | (struct DAC960_privdata *)entry->driver_data; | 2700 | (struct DAC960_privdata *)entry->driver_data; |
2701 | irqreturn_t (*InterruptHandler)(int, void *, struct pt_regs *) = | 2701 | irq_handler_t InterruptHandler = privdata->InterruptHandler; |
2702 | privdata->InterruptHandler; | ||
2703 | unsigned int MemoryWindowSize = privdata->MemoryWindowSize; | 2702 | unsigned int MemoryWindowSize = privdata->MemoryWindowSize; |
2704 | DAC960_Controller_T *Controller = NULL; | 2703 | DAC960_Controller_T *Controller = NULL; |
2705 | unsigned char DeviceFunction = PCI_Device->devfn; | 2704 | unsigned char DeviceFunction = PCI_Device->devfn; |
@@ -5253,10 +5252,9 @@ static void DAC960_V2_ProcessCompletedCommand(DAC960_Command_T *Command) | |||
5253 | */ | 5252 | */ |
5254 | 5253 | ||
5255 | static irqreturn_t DAC960_GEM_InterruptHandler(int IRQ_Channel, | 5254 | static irqreturn_t DAC960_GEM_InterruptHandler(int IRQ_Channel, |
5256 | void *DeviceIdentifier, | 5255 | void *DeviceIdentifier) |
5257 | struct pt_regs *InterruptRegisters) | ||
5258 | { | 5256 | { |
5259 | DAC960_Controller_T *Controller = (DAC960_Controller_T *) DeviceIdentifier; | 5257 | DAC960_Controller_T *Controller = DeviceIdentifier; |
5260 | void __iomem *ControllerBaseAddress = Controller->BaseAddress; | 5258 | void __iomem *ControllerBaseAddress = Controller->BaseAddress; |
5261 | DAC960_V2_StatusMailbox_T *NextStatusMailbox; | 5259 | DAC960_V2_StatusMailbox_T *NextStatusMailbox; |
5262 | unsigned long flags; | 5260 | unsigned long flags; |
@@ -5295,10 +5293,9 @@ static irqreturn_t DAC960_GEM_InterruptHandler(int IRQ_Channel, | |||
5295 | */ | 5293 | */ |
5296 | 5294 | ||
5297 | static irqreturn_t DAC960_BA_InterruptHandler(int IRQ_Channel, | 5295 | static irqreturn_t DAC960_BA_InterruptHandler(int IRQ_Channel, |
5298 | void *DeviceIdentifier, | 5296 | void *DeviceIdentifier) |
5299 | struct pt_regs *InterruptRegisters) | ||
5300 | { | 5297 | { |
5301 | DAC960_Controller_T *Controller = (DAC960_Controller_T *) DeviceIdentifier; | 5298 | DAC960_Controller_T *Controller = DeviceIdentifier; |
5302 | void __iomem *ControllerBaseAddress = Controller->BaseAddress; | 5299 | void __iomem *ControllerBaseAddress = Controller->BaseAddress; |
5303 | DAC960_V2_StatusMailbox_T *NextStatusMailbox; | 5300 | DAC960_V2_StatusMailbox_T *NextStatusMailbox; |
5304 | unsigned long flags; | 5301 | unsigned long flags; |
@@ -5338,10 +5335,9 @@ static irqreturn_t DAC960_BA_InterruptHandler(int IRQ_Channel, | |||
5338 | */ | 5335 | */ |
5339 | 5336 | ||
5340 | static irqreturn_t DAC960_LP_InterruptHandler(int IRQ_Channel, | 5337 | static irqreturn_t DAC960_LP_InterruptHandler(int IRQ_Channel, |
5341 | void *DeviceIdentifier, | 5338 | void *DeviceIdentifier) |
5342 | struct pt_regs *InterruptRegisters) | ||
5343 | { | 5339 | { |
5344 | DAC960_Controller_T *Controller = (DAC960_Controller_T *) DeviceIdentifier; | 5340 | DAC960_Controller_T *Controller = DeviceIdentifier; |
5345 | void __iomem *ControllerBaseAddress = Controller->BaseAddress; | 5341 | void __iomem *ControllerBaseAddress = Controller->BaseAddress; |
5346 | DAC960_V2_StatusMailbox_T *NextStatusMailbox; | 5342 | DAC960_V2_StatusMailbox_T *NextStatusMailbox; |
5347 | unsigned long flags; | 5343 | unsigned long flags; |
@@ -5381,10 +5377,9 @@ static irqreturn_t DAC960_LP_InterruptHandler(int IRQ_Channel, | |||
5381 | */ | 5377 | */ |
5382 | 5378 | ||
5383 | static irqreturn_t DAC960_LA_InterruptHandler(int IRQ_Channel, | 5379 | static irqreturn_t DAC960_LA_InterruptHandler(int IRQ_Channel, |
5384 | void *DeviceIdentifier, | 5380 | void *DeviceIdentifier) |
5385 | struct pt_regs *InterruptRegisters) | ||
5386 | { | 5381 | { |
5387 | DAC960_Controller_T *Controller = (DAC960_Controller_T *) DeviceIdentifier; | 5382 | DAC960_Controller_T *Controller = DeviceIdentifier; |
5388 | void __iomem *ControllerBaseAddress = Controller->BaseAddress; | 5383 | void __iomem *ControllerBaseAddress = Controller->BaseAddress; |
5389 | DAC960_V1_StatusMailbox_T *NextStatusMailbox; | 5384 | DAC960_V1_StatusMailbox_T *NextStatusMailbox; |
5390 | unsigned long flags; | 5385 | unsigned long flags; |
@@ -5420,10 +5415,9 @@ static irqreturn_t DAC960_LA_InterruptHandler(int IRQ_Channel, | |||
5420 | */ | 5415 | */ |
5421 | 5416 | ||
5422 | static irqreturn_t DAC960_PG_InterruptHandler(int IRQ_Channel, | 5417 | static irqreturn_t DAC960_PG_InterruptHandler(int IRQ_Channel, |
5423 | void *DeviceIdentifier, | 5418 | void *DeviceIdentifier) |
5424 | struct pt_regs *InterruptRegisters) | ||
5425 | { | 5419 | { |
5426 | DAC960_Controller_T *Controller = (DAC960_Controller_T *) DeviceIdentifier; | 5420 | DAC960_Controller_T *Controller = DeviceIdentifier; |
5427 | void __iomem *ControllerBaseAddress = Controller->BaseAddress; | 5421 | void __iomem *ControllerBaseAddress = Controller->BaseAddress; |
5428 | DAC960_V1_StatusMailbox_T *NextStatusMailbox; | 5422 | DAC960_V1_StatusMailbox_T *NextStatusMailbox; |
5429 | unsigned long flags; | 5423 | unsigned long flags; |
@@ -5459,10 +5453,9 @@ static irqreturn_t DAC960_PG_InterruptHandler(int IRQ_Channel, | |||
5459 | */ | 5453 | */ |
5460 | 5454 | ||
5461 | static irqreturn_t DAC960_PD_InterruptHandler(int IRQ_Channel, | 5455 | static irqreturn_t DAC960_PD_InterruptHandler(int IRQ_Channel, |
5462 | void *DeviceIdentifier, | 5456 | void *DeviceIdentifier) |
5463 | struct pt_regs *InterruptRegisters) | ||
5464 | { | 5457 | { |
5465 | DAC960_Controller_T *Controller = (DAC960_Controller_T *) DeviceIdentifier; | 5458 | DAC960_Controller_T *Controller = DeviceIdentifier; |
5466 | void __iomem *ControllerBaseAddress = Controller->BaseAddress; | 5459 | void __iomem *ControllerBaseAddress = Controller->BaseAddress; |
5467 | unsigned long flags; | 5460 | unsigned long flags; |
5468 | 5461 | ||
@@ -5498,10 +5491,9 @@ static irqreturn_t DAC960_PD_InterruptHandler(int IRQ_Channel, | |||
5498 | */ | 5491 | */ |
5499 | 5492 | ||
5500 | static irqreturn_t DAC960_P_InterruptHandler(int IRQ_Channel, | 5493 | static irqreturn_t DAC960_P_InterruptHandler(int IRQ_Channel, |
5501 | void *DeviceIdentifier, | 5494 | void *DeviceIdentifier) |
5502 | struct pt_regs *InterruptRegisters) | ||
5503 | { | 5495 | { |
5504 | DAC960_Controller_T *Controller = (DAC960_Controller_T *) DeviceIdentifier; | 5496 | DAC960_Controller_T *Controller = DeviceIdentifier; |
5505 | void __iomem *ControllerBaseAddress = Controller->BaseAddress; | 5497 | void __iomem *ControllerBaseAddress = Controller->BaseAddress; |
5506 | unsigned long flags; | 5498 | unsigned long flags; |
5507 | 5499 | ||
diff --git a/drivers/block/DAC960.h b/drivers/block/DAC960.h index f9217c34bc2b..cec539e601fe 100644 --- a/drivers/block/DAC960.h +++ b/drivers/block/DAC960.h | |||
@@ -2175,7 +2175,7 @@ static char | |||
2175 | struct DAC960_privdata { | 2175 | struct DAC960_privdata { |
2176 | DAC960_HardwareType_T HardwareType; | 2176 | DAC960_HardwareType_T HardwareType; |
2177 | DAC960_FirmwareType_T FirmwareType; | 2177 | DAC960_FirmwareType_T FirmwareType; |
2178 | irqreturn_t (*InterruptHandler)(int, void *, struct pt_regs *); | 2178 | irq_handler_t InterruptHandler; |
2179 | unsigned int MemoryWindowSize; | 2179 | unsigned int MemoryWindowSize; |
2180 | }; | 2180 | }; |
2181 | 2181 | ||
@@ -4412,12 +4412,12 @@ static void DAC960_FinalizeController(DAC960_Controller_T *); | |||
4412 | static void DAC960_V1_QueueReadWriteCommand(DAC960_Command_T *); | 4412 | static void DAC960_V1_QueueReadWriteCommand(DAC960_Command_T *); |
4413 | static void DAC960_V2_QueueReadWriteCommand(DAC960_Command_T *); | 4413 | static void DAC960_V2_QueueReadWriteCommand(DAC960_Command_T *); |
4414 | static void DAC960_RequestFunction(struct request_queue *); | 4414 | static void DAC960_RequestFunction(struct request_queue *); |
4415 | static irqreturn_t DAC960_BA_InterruptHandler(int, void *, struct pt_regs *); | 4415 | static irqreturn_t DAC960_BA_InterruptHandler(int, void *); |
4416 | static irqreturn_t DAC960_LP_InterruptHandler(int, void *, struct pt_regs *); | 4416 | static irqreturn_t DAC960_LP_InterruptHandler(int, void *); |
4417 | static irqreturn_t DAC960_LA_InterruptHandler(int, void *, struct pt_regs *); | 4417 | static irqreturn_t DAC960_LA_InterruptHandler(int, void *); |
4418 | static irqreturn_t DAC960_PG_InterruptHandler(int, void *, struct pt_regs *); | 4418 | static irqreturn_t DAC960_PG_InterruptHandler(int, void *); |
4419 | static irqreturn_t DAC960_PD_InterruptHandler(int, void *, struct pt_regs *); | 4419 | static irqreturn_t DAC960_PD_InterruptHandler(int, void *); |
4420 | static irqreturn_t DAC960_P_InterruptHandler(int, void *, struct pt_regs *); | 4420 | static irqreturn_t DAC960_P_InterruptHandler(int, void *); |
4421 | static void DAC960_V1_QueueMonitoringCommand(DAC960_Command_T *); | 4421 | static void DAC960_V1_QueueMonitoringCommand(DAC960_Command_T *); |
4422 | static void DAC960_V2_QueueMonitoringCommand(DAC960_Command_T *); | 4422 | static void DAC960_V2_QueueMonitoringCommand(DAC960_Command_T *); |
4423 | static void DAC960_MonitoringTimerFunction(unsigned long); | 4423 | static void DAC960_MonitoringTimerFunction(unsigned long); |
diff --git a/drivers/block/acsi.c b/drivers/block/acsi.c index 0b80fbb8dbfd..706cdc6a69ec 100644 --- a/drivers/block/acsi.c +++ b/drivers/block/acsi.c | |||
@@ -346,7 +346,7 @@ static int acsicmd_dma( const char *cmd, char *buffer, int blocks, int | |||
346 | rwflag, int enable); | 346 | rwflag, int enable); |
347 | static int acsi_reqsense( char *buffer, int targ, int lun); | 347 | static int acsi_reqsense( char *buffer, int targ, int lun); |
348 | static void acsi_print_error(const unsigned char *errblk, struct acsi_info_struct *aip); | 348 | static void acsi_print_error(const unsigned char *errblk, struct acsi_info_struct *aip); |
349 | static irqreturn_t acsi_interrupt (int irq, void *data, struct pt_regs *fp); | 349 | static irqreturn_t acsi_interrupt (int irq, void *data); |
350 | static void unexpected_acsi_interrupt( void ); | 350 | static void unexpected_acsi_interrupt( void ); |
351 | static void bad_rw_intr( void ); | 351 | static void bad_rw_intr( void ); |
352 | static void read_intr( void ); | 352 | static void read_intr( void ); |
@@ -726,7 +726,7 @@ static void acsi_print_error(const unsigned char *errblk, struct acsi_info_struc | |||
726 | * | 726 | * |
727 | *******************************************************************/ | 727 | *******************************************************************/ |
728 | 728 | ||
729 | static irqreturn_t acsi_interrupt(int irq, void *data, struct pt_regs *fp ) | 729 | static irqreturn_t acsi_interrupt(int irq, void *data ) |
730 | 730 | ||
731 | { void (*acsi_irq_handler)(void) = do_acsi; | 731 | { void (*acsi_irq_handler)(void) = do_acsi; |
732 | 732 | ||
diff --git a/drivers/block/acsi_slm.c b/drivers/block/acsi_slm.c index 4030a8fd1187..8e41c87b026e 100644 --- a/drivers/block/acsi_slm.c +++ b/drivers/block/acsi_slm.c | |||
@@ -246,7 +246,7 @@ static int slm_getstats( char *buffer, int device ); | |||
246 | static ssize_t slm_read( struct file* file, char *buf, size_t count, loff_t | 246 | static ssize_t slm_read( struct file* file, char *buf, size_t count, loff_t |
247 | *ppos ); | 247 | *ppos ); |
248 | static void start_print( int device ); | 248 | static void start_print( int device ); |
249 | static irqreturn_t slm_interrupt(int irc, void *data, struct pt_regs *fp); | 249 | static irqreturn_t slm_interrupt(int irc, void *data); |
250 | static void slm_test_ready( unsigned long dummy ); | 250 | static void slm_test_ready( unsigned long dummy ); |
251 | static void set_dma_addr( unsigned long paddr ); | 251 | static void set_dma_addr( unsigned long paddr ); |
252 | static unsigned long get_dma_addr( void ); | 252 | static unsigned long get_dma_addr( void ); |
@@ -452,7 +452,7 @@ static void start_print( int device ) | |||
452 | 452 | ||
453 | /* Only called when an error happened or at the end of a page */ | 453 | /* Only called when an error happened or at the end of a page */ |
454 | 454 | ||
455 | static irqreturn_t slm_interrupt(int irc, void *data, struct pt_regs *fp) | 455 | static irqreturn_t slm_interrupt(int irc, void *data) |
456 | 456 | ||
457 | { unsigned long addr; | 457 | { unsigned long addr; |
458 | int stat; | 458 | int stat; |
diff --git a/drivers/block/amiflop.c b/drivers/block/amiflop.c index 2641597c6549..5d254b714509 100644 --- a/drivers/block/amiflop.c +++ b/drivers/block/amiflop.c | |||
@@ -209,7 +209,7 @@ static int fd_device[4] = { 0, 0, 0, 0 }; | |||
209 | 209 | ||
210 | /* Milliseconds timer */ | 210 | /* Milliseconds timer */ |
211 | 211 | ||
212 | static irqreturn_t ms_isr(int irq, void *dummy, struct pt_regs *fp) | 212 | static irqreturn_t ms_isr(int irq, void *dummy) |
213 | { | 213 | { |
214 | ms_busy = -1; | 214 | ms_busy = -1; |
215 | wake_up(&ms_wait); | 215 | wake_up(&ms_wait); |
@@ -560,7 +560,7 @@ static unsigned long fd_get_drive_id(int drive) | |||
560 | return (id); | 560 | return (id); |
561 | } | 561 | } |
562 | 562 | ||
563 | static irqreturn_t fd_block_done(int irq, void *dummy, struct pt_regs *fp) | 563 | static irqreturn_t fd_block_done(int irq, void *dummy) |
564 | { | 564 | { |
565 | if (block_flag) | 565 | if (block_flag) |
566 | custom.dsklen = 0x4000; | 566 | custom.dsklen = 0x4000; |
diff --git a/drivers/block/ataflop.c b/drivers/block/ataflop.c index c39650920bdf..14d6b9492750 100644 --- a/drivers/block/ataflop.c +++ b/drivers/block/ataflop.c | |||
@@ -342,7 +342,7 @@ static void fd_select_drive( int drive ); | |||
342 | static void fd_deselect( void ); | 342 | static void fd_deselect( void ); |
343 | static void fd_motor_off_timer( unsigned long dummy ); | 343 | static void fd_motor_off_timer( unsigned long dummy ); |
344 | static void check_change( unsigned long dummy ); | 344 | static void check_change( unsigned long dummy ); |
345 | static irqreturn_t floppy_irq (int irq, void *dummy, struct pt_regs *fp); | 345 | static irqreturn_t floppy_irq (int irq, void *dummy); |
346 | static void fd_error( void ); | 346 | static void fd_error( void ); |
347 | static int do_format(int drive, int type, struct atari_format_descr *desc); | 347 | static int do_format(int drive, int type, struct atari_format_descr *desc); |
348 | static void do_fd_action( int drive ); | 348 | static void do_fd_action( int drive ); |
@@ -573,7 +573,7 @@ static inline void copy_buffer(void *from, void *to) | |||
573 | 573 | ||
574 | static void (*FloppyIRQHandler)( int status ) = NULL; | 574 | static void (*FloppyIRQHandler)( int status ) = NULL; |
575 | 575 | ||
576 | static irqreturn_t floppy_irq (int irq, void *dummy, struct pt_regs *fp) | 576 | static irqreturn_t floppy_irq (int irq, void *dummy) |
577 | { | 577 | { |
578 | unsigned char status; | 578 | unsigned char status; |
579 | void (*handler)( int ); | 579 | void (*handler)( int ); |
diff --git a/drivers/block/cciss.c b/drivers/block/cciss.c index 36b88f6c5f82..dcccaf2782f3 100644 --- a/drivers/block/cciss.c +++ b/drivers/block/cciss.c | |||
@@ -130,7 +130,7 @@ static struct board_type products[] = { | |||
130 | static ctlr_info_t *hba[MAX_CTLR]; | 130 | static ctlr_info_t *hba[MAX_CTLR]; |
131 | 131 | ||
132 | static void do_cciss_request(request_queue_t *q); | 132 | static void do_cciss_request(request_queue_t *q); |
133 | static irqreturn_t do_cciss_intr(int irq, void *dev_id, struct pt_regs *regs); | 133 | static irqreturn_t do_cciss_intr(int irq, void *dev_id); |
134 | static int cciss_open(struct inode *inode, struct file *filep); | 134 | static int cciss_open(struct inode *inode, struct file *filep); |
135 | static int cciss_release(struct inode *inode, struct file *filep); | 135 | static int cciss_release(struct inode *inode, struct file *filep); |
136 | static int cciss_ioctl(struct inode *inode, struct file *filep, | 136 | static int cciss_ioctl(struct inode *inode, struct file *filep, |
@@ -2300,7 +2300,7 @@ static int sendcmd(__u8 cmd, int ctlr, void *buff, size_t size, unsigned int use | |||
2300 | #ifdef CONFIG_CISS_SCSI_TAPE | 2300 | #ifdef CONFIG_CISS_SCSI_TAPE |
2301 | /* if we saved some commands for later, process them now. */ | 2301 | /* if we saved some commands for later, process them now. */ |
2302 | if (info_p->scsi_rejects.ncompletions > 0) | 2302 | if (info_p->scsi_rejects.ncompletions > 0) |
2303 | do_cciss_intr(0, info_p, NULL); | 2303 | do_cciss_intr(0, info_p); |
2304 | #endif | 2304 | #endif |
2305 | cmd_free(info_p, c, 1); | 2305 | cmd_free(info_p, c, 1); |
2306 | return status; | 2306 | return status; |
@@ -2652,7 +2652,7 @@ static inline long interrupt_not_for_us(ctlr_info_t *h) | |||
2652 | #endif | 2652 | #endif |
2653 | } | 2653 | } |
2654 | 2654 | ||
2655 | static irqreturn_t do_cciss_intr(int irq, void *dev_id, struct pt_regs *regs) | 2655 | static irqreturn_t do_cciss_intr(int irq, void *dev_id) |
2656 | { | 2656 | { |
2657 | ctlr_info_t *h = dev_id; | 2657 | ctlr_info_t *h = dev_id; |
2658 | CommandList_struct *c; | 2658 | CommandList_struct *c; |
diff --git a/drivers/block/cpqarray.c b/drivers/block/cpqarray.c index ada68e65b5ff..570d2f049323 100644 --- a/drivers/block/cpqarray.c +++ b/drivers/block/cpqarray.c | |||
@@ -169,7 +169,7 @@ static inline cmdlist_t *removeQ(cmdlist_t **Qptr, cmdlist_t *c); | |||
169 | static inline void complete_buffers(struct bio *bio, int ok); | 169 | static inline void complete_buffers(struct bio *bio, int ok); |
170 | static inline void complete_command(cmdlist_t *cmd, int timeout); | 170 | static inline void complete_command(cmdlist_t *cmd, int timeout); |
171 | 171 | ||
172 | static irqreturn_t do_ida_intr(int irq, void *dev_id, struct pt_regs * regs); | 172 | static irqreturn_t do_ida_intr(int irq, void *dev_id); |
173 | static void ida_timer(unsigned long tdata); | 173 | static void ida_timer(unsigned long tdata); |
174 | static int ida_revalidate(struct gendisk *disk); | 174 | static int ida_revalidate(struct gendisk *disk); |
175 | static int revalidate_allvol(ctlr_info_t *host); | 175 | static int revalidate_allvol(ctlr_info_t *host); |
@@ -1042,7 +1042,7 @@ static inline void complete_command(cmdlist_t *cmd, int timeout) | |||
1042 | * Find the command on the completion queue, remove it, tell the OS and | 1042 | * Find the command on the completion queue, remove it, tell the OS and |
1043 | * try to queue up more IO | 1043 | * try to queue up more IO |
1044 | */ | 1044 | */ |
1045 | static irqreturn_t do_ida_intr(int irq, void *dev_id, struct pt_regs *regs) | 1045 | static irqreturn_t do_ida_intr(int irq, void *dev_id) |
1046 | { | 1046 | { |
1047 | ctlr_info_t *h = dev_id; | 1047 | ctlr_info_t *h = dev_id; |
1048 | cmdlist_t *c; | 1048 | cmdlist_t *c; |
diff --git a/drivers/block/floppy.c b/drivers/block/floppy.c index 629c5769d994..9e6d3a87cbe3 100644 --- a/drivers/block/floppy.c +++ b/drivers/block/floppy.c | |||
@@ -221,7 +221,7 @@ static DEFINE_SPINLOCK(floppy_lock); | |||
221 | static struct completion device_release; | 221 | static struct completion device_release; |
222 | 222 | ||
223 | static unsigned short virtual_dma_port = 0x3f0; | 223 | static unsigned short virtual_dma_port = 0x3f0; |
224 | irqreturn_t floppy_interrupt(int irq, void *dev_id, struct pt_regs *regs); | 224 | irqreturn_t floppy_interrupt(int irq, void *dev_id); |
225 | static int set_dor(int fdc, char mask, char data); | 225 | static int set_dor(int fdc, char mask, char data); |
226 | 226 | ||
227 | #define K_64 0x10000 /* 64KB */ | 227 | #define K_64 0x10000 /* 64KB */ |
@@ -1726,7 +1726,7 @@ static void print_result(char *message, int inr) | |||
1726 | } | 1726 | } |
1727 | 1727 | ||
1728 | /* interrupt handler. Note that this can be called externally on the Sparc */ | 1728 | /* interrupt handler. Note that this can be called externally on the Sparc */ |
1729 | irqreturn_t floppy_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 1729 | irqreturn_t floppy_interrupt(int irq, void *dev_id) |
1730 | { | 1730 | { |
1731 | void (*handler) (void) = do_floppy; | 1731 | void (*handler) (void) = do_floppy; |
1732 | int do_print; | 1732 | int do_print; |
diff --git a/drivers/block/loop.c b/drivers/block/loop.c index d6bb8da955a2..beab6d2643cb 100644 --- a/drivers/block/loop.c +++ b/drivers/block/loop.c | |||
@@ -295,7 +295,7 @@ fail: | |||
295 | * and do_lo_send_write(). | 295 | * and do_lo_send_write(). |
296 | */ | 296 | */ |
297 | static int __do_lo_send_write(struct file *file, | 297 | static int __do_lo_send_write(struct file *file, |
298 | u8 __user *buf, const int len, loff_t pos) | 298 | u8 *buf, const int len, loff_t pos) |
299 | { | 299 | { |
300 | ssize_t bw; | 300 | ssize_t bw; |
301 | mm_segment_t old_fs = get_fs(); | 301 | mm_segment_t old_fs = get_fs(); |
@@ -324,7 +324,7 @@ static int do_lo_send_direct_write(struct loop_device *lo, | |||
324 | struct bio_vec *bvec, int bsize, loff_t pos, struct page *page) | 324 | struct bio_vec *bvec, int bsize, loff_t pos, struct page *page) |
325 | { | 325 | { |
326 | ssize_t bw = __do_lo_send_write(lo->lo_backing_file, | 326 | ssize_t bw = __do_lo_send_write(lo->lo_backing_file, |
327 | (u8 __user *)kmap(bvec->bv_page) + bvec->bv_offset, | 327 | kmap(bvec->bv_page) + bvec->bv_offset, |
328 | bvec->bv_len, pos); | 328 | bvec->bv_len, pos); |
329 | kunmap(bvec->bv_page); | 329 | kunmap(bvec->bv_page); |
330 | cond_resched(); | 330 | cond_resched(); |
@@ -351,7 +351,7 @@ static int do_lo_send_write(struct loop_device *lo, struct bio_vec *bvec, | |||
351 | bvec->bv_offset, bvec->bv_len, pos >> 9); | 351 | bvec->bv_offset, bvec->bv_len, pos >> 9); |
352 | if (likely(!ret)) | 352 | if (likely(!ret)) |
353 | return __do_lo_send_write(lo->lo_backing_file, | 353 | return __do_lo_send_write(lo->lo_backing_file, |
354 | (u8 __user *)page_address(page), bvec->bv_len, | 354 | page_address(page), bvec->bv_len, |
355 | pos); | 355 | pos); |
356 | printk(KERN_ERR "loop: Transfer error at byte offset %llu, " | 356 | printk(KERN_ERR "loop: Transfer error at byte offset %llu, " |
357 | "length %i.\n", (unsigned long long)pos, bvec->bv_len); | 357 | "length %i.\n", (unsigned long long)pos, bvec->bv_len); |
@@ -1187,7 +1187,7 @@ struct compat_loop_info { | |||
1187 | * - noinlined to reduce stack space usage in main part of driver | 1187 | * - noinlined to reduce stack space usage in main part of driver |
1188 | */ | 1188 | */ |
1189 | static noinline int | 1189 | static noinline int |
1190 | loop_info64_from_compat(const struct compat_loop_info *arg, | 1190 | loop_info64_from_compat(const struct compat_loop_info __user *arg, |
1191 | struct loop_info64 *info64) | 1191 | struct loop_info64 *info64) |
1192 | { | 1192 | { |
1193 | struct compat_loop_info info; | 1193 | struct compat_loop_info info; |
diff --git a/drivers/block/ps2esdi.c b/drivers/block/ps2esdi.c index 5537974fb242..688a4fb0dc99 100644 --- a/drivers/block/ps2esdi.c +++ b/drivers/block/ps2esdi.c | |||
@@ -75,8 +75,7 @@ static int ps2esdi_out_cmd_blk(u_short * cmd_blk); | |||
75 | 75 | ||
76 | static void ps2esdi_prep_dma(char *buffer, u_short length, u_char dma_xmode); | 76 | static void ps2esdi_prep_dma(char *buffer, u_short length, u_char dma_xmode); |
77 | 77 | ||
78 | static irqreturn_t ps2esdi_interrupt_handler(int irq, void *dev_id, | 78 | static irqreturn_t ps2esdi_interrupt_handler(int irq, void *dev_id); |
79 | struct pt_regs *regs); | ||
80 | static void (*current_int_handler) (u_int) = NULL; | 79 | static void (*current_int_handler) (u_int) = NULL; |
81 | static void ps2esdi_normal_interrupt_handler(u_int); | 80 | static void ps2esdi_normal_interrupt_handler(u_int); |
82 | static void ps2esdi_initial_reset_int_handler(u_int); | 81 | static void ps2esdi_initial_reset_int_handler(u_int); |
@@ -687,8 +686,7 @@ static void ps2esdi_prep_dma(char *buffer, u_short length, u_char dma_xmode) | |||
687 | 686 | ||
688 | 687 | ||
689 | 688 | ||
690 | static irqreturn_t ps2esdi_interrupt_handler(int irq, void *dev_id, | 689 | static irqreturn_t ps2esdi_interrupt_handler(int irq, void *dev_id) |
691 | struct pt_regs *regs) | ||
692 | { | 690 | { |
693 | u_int int_ret_code; | 691 | u_int int_ret_code; |
694 | 692 | ||
diff --git a/drivers/block/swim3.c b/drivers/block/swim3.c index fdc8f892eb86..1a65979f1f0f 100644 --- a/drivers/block/swim3.c +++ b/drivers/block/swim3.c | |||
@@ -238,8 +238,8 @@ static void scan_timeout(unsigned long data); | |||
238 | static void seek_timeout(unsigned long data); | 238 | static void seek_timeout(unsigned long data); |
239 | static void settle_timeout(unsigned long data); | 239 | static void settle_timeout(unsigned long data); |
240 | static void xfer_timeout(unsigned long data); | 240 | static void xfer_timeout(unsigned long data); |
241 | static irqreturn_t swim3_interrupt(int irq, void *dev_id, struct pt_regs *regs); | 241 | static irqreturn_t swim3_interrupt(int irq, void *dev_id); |
242 | /*static void fd_dma_interrupt(int irq, void *dev_id, struct pt_regs *regs);*/ | 242 | /*static void fd_dma_interrupt(int irq, void *dev_id);*/ |
243 | static int grab_drive(struct floppy_state *fs, enum swim_state state, | 243 | static int grab_drive(struct floppy_state *fs, enum swim_state state, |
244 | int interruptible); | 244 | int interruptible); |
245 | static void release_drive(struct floppy_state *fs); | 245 | static void release_drive(struct floppy_state *fs); |
@@ -624,7 +624,7 @@ static void xfer_timeout(unsigned long data) | |||
624 | start_request(fs); | 624 | start_request(fs); |
625 | } | 625 | } |
626 | 626 | ||
627 | static irqreturn_t swim3_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 627 | static irqreturn_t swim3_interrupt(int irq, void *dev_id) |
628 | { | 628 | { |
629 | struct floppy_state *fs = (struct floppy_state *) dev_id; | 629 | struct floppy_state *fs = (struct floppy_state *) dev_id; |
630 | struct swim3 __iomem *sw = fs->swim3; | 630 | struct swim3 __iomem *sw = fs->swim3; |
@@ -777,7 +777,7 @@ static irqreturn_t swim3_interrupt(int irq, void *dev_id, struct pt_regs *regs) | |||
777 | } | 777 | } |
778 | 778 | ||
779 | /* | 779 | /* |
780 | static void fd_dma_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 780 | static void fd_dma_interrupt(int irq, void *dev_id) |
781 | { | 781 | { |
782 | } | 782 | } |
783 | */ | 783 | */ |
diff --git a/drivers/block/swim_iop.c b/drivers/block/swim_iop.c index dfda796eba56..ed7b06cf3e68 100644 --- a/drivers/block/swim_iop.c +++ b/drivers/block/swim_iop.c | |||
@@ -94,7 +94,7 @@ static char *drive_names[7] = { | |||
94 | int swimiop_init(void); | 94 | int swimiop_init(void); |
95 | static void swimiop_init_request(struct swim_iop_req *); | 95 | static void swimiop_init_request(struct swim_iop_req *); |
96 | static int swimiop_send_request(struct swim_iop_req *); | 96 | static int swimiop_send_request(struct swim_iop_req *); |
97 | static void swimiop_receive(struct iop_msg *, struct pt_regs *); | 97 | static void swimiop_receive(struct iop_msg *); |
98 | static void swimiop_status_update(int, struct swim_drvstatus *); | 98 | static void swimiop_status_update(int, struct swim_drvstatus *); |
99 | static int swimiop_eject(struct floppy_state *fs); | 99 | static int swimiop_eject(struct floppy_state *fs); |
100 | 100 | ||
@@ -257,7 +257,7 @@ static int swimiop_send_request(struct swim_iop_req *req) | |||
257 | * 2. An unsolicited message was received from the IOP. | 257 | * 2. An unsolicited message was received from the IOP. |
258 | */ | 258 | */ |
259 | 259 | ||
260 | void swimiop_receive(struct iop_msg *msg, struct pt_regs *regs) | 260 | void swimiop_receive(struct iop_msg *msg) |
261 | { | 261 | { |
262 | struct swim_iop_req *req; | 262 | struct swim_iop_req *req; |
263 | struct swimmsg_status *sm; | 263 | struct swimmsg_status *sm; |
diff --git a/drivers/block/sx8.c b/drivers/block/sx8.c index c6beee18a07c..47d6975268ff 100644 --- a/drivers/block/sx8.c +++ b/drivers/block/sx8.c | |||
@@ -1200,7 +1200,7 @@ static inline void carm_handle_responses(struct carm_host *host) | |||
1200 | host->resp_idx += work; | 1200 | host->resp_idx += work; |
1201 | } | 1201 | } |
1202 | 1202 | ||
1203 | static irqreturn_t carm_interrupt(int irq, void *__host, struct pt_regs *regs) | 1203 | static irqreturn_t carm_interrupt(int irq, void *__host) |
1204 | { | 1204 | { |
1205 | struct carm_host *host = __host; | 1205 | struct carm_host *host = __host; |
1206 | void __iomem *mmio; | 1206 | void __iomem *mmio; |
diff --git a/drivers/block/ub.c b/drivers/block/ub.c index 45a8f402b07b..0d5c73f07265 100644 --- a/drivers/block/ub.c +++ b/drivers/block/ub.c | |||
@@ -362,7 +362,7 @@ static void ub_end_rq(struct request *rq, unsigned int status); | |||
362 | static int ub_rw_cmd_retry(struct ub_dev *sc, struct ub_lun *lun, | 362 | static int ub_rw_cmd_retry(struct ub_dev *sc, struct ub_lun *lun, |
363 | struct ub_request *urq, struct ub_scsi_cmd *cmd); | 363 | struct ub_request *urq, struct ub_scsi_cmd *cmd); |
364 | static int ub_submit_scsi(struct ub_dev *sc, struct ub_scsi_cmd *cmd); | 364 | static int ub_submit_scsi(struct ub_dev *sc, struct ub_scsi_cmd *cmd); |
365 | static void ub_urb_complete(struct urb *urb, struct pt_regs *pt); | 365 | static void ub_urb_complete(struct urb *urb); |
366 | static void ub_scsi_action(unsigned long _dev); | 366 | static void ub_scsi_action(unsigned long _dev); |
367 | static void ub_scsi_dispatch(struct ub_dev *sc); | 367 | static void ub_scsi_dispatch(struct ub_dev *sc); |
368 | static void ub_scsi_urb_compl(struct ub_dev *sc, struct ub_scsi_cmd *cmd); | 368 | static void ub_scsi_urb_compl(struct ub_dev *sc, struct ub_scsi_cmd *cmd); |
@@ -959,7 +959,7 @@ static void ub_urb_timeout(unsigned long arg) | |||
959 | * the sc->lock taken) and from an interrupt (while we do NOT have | 959 | * the sc->lock taken) and from an interrupt (while we do NOT have |
960 | * the sc->lock taken). Therefore, bounce this off to a tasklet. | 960 | * the sc->lock taken). Therefore, bounce this off to a tasklet. |
961 | */ | 961 | */ |
962 | static void ub_urb_complete(struct urb *urb, struct pt_regs *pt) | 962 | static void ub_urb_complete(struct urb *urb) |
963 | { | 963 | { |
964 | struct ub_dev *sc = urb->context; | 964 | struct ub_dev *sc = urb->context; |
965 | 965 | ||
@@ -1923,7 +1923,7 @@ err_alloc: | |||
1923 | 1923 | ||
1924 | /* | 1924 | /* |
1925 | */ | 1925 | */ |
1926 | static void ub_probe_urb_complete(struct urb *urb, struct pt_regs *pt) | 1926 | static void ub_probe_urb_complete(struct urb *urb) |
1927 | { | 1927 | { |
1928 | struct completion *cop = urb->context; | 1928 | struct completion *cop = urb->context; |
1929 | complete(cop); | 1929 | complete(cop); |
diff --git a/drivers/block/umem.c b/drivers/block/umem.c index cbb9d0f21acc..30f16bd83650 100644 --- a/drivers/block/umem.c +++ b/drivers/block/umem.c | |||
@@ -571,7 +571,7 @@ static int mm_make_request(request_queue_t *q, struct bio *bio) | |||
571 | -- mm_interrupt | 571 | -- mm_interrupt |
572 | ----------------------------------------------------------------------------------- | 572 | ----------------------------------------------------------------------------------- |
573 | */ | 573 | */ |
574 | static irqreturn_t mm_interrupt(int irq, void *__card, struct pt_regs *regs) | 574 | static irqreturn_t mm_interrupt(int irq, void *__card) |
575 | { | 575 | { |
576 | struct cardinfo *card = (struct cardinfo *) __card; | 576 | struct cardinfo *card = (struct cardinfo *) __card; |
577 | unsigned int dma_status; | 577 | unsigned int dma_status; |
diff --git a/drivers/block/xd.c b/drivers/block/xd.c index ebf3025721d1..10cc38783bdf 100644 --- a/drivers/block/xd.c +++ b/drivers/block/xd.c | |||
@@ -462,8 +462,7 @@ static void xd_recalibrate (u_char drive) | |||
462 | } | 462 | } |
463 | 463 | ||
464 | /* xd_interrupt_handler: interrupt service routine */ | 464 | /* xd_interrupt_handler: interrupt service routine */ |
465 | static irqreturn_t xd_interrupt_handler(int irq, void *dev_id, | 465 | static irqreturn_t xd_interrupt_handler(int irq, void *dev_id) |
466 | struct pt_regs *regs) | ||
467 | { | 466 | { |
468 | if (inb(XD_STATUS) & STAT_INTERRUPT) { /* check if it was our device */ | 467 | if (inb(XD_STATUS) & STAT_INTERRUPT) { /* check if it was our device */ |
469 | #ifdef DEBUG_OTHER | 468 | #ifdef DEBUG_OTHER |
diff --git a/drivers/block/xd.h b/drivers/block/xd.h index 71ac2e3dffc8..82e090fea957 100644 --- a/drivers/block/xd.h +++ b/drivers/block/xd.h | |||
@@ -109,8 +109,7 @@ static int xd_ioctl (struct inode *inode,struct file *file,unsigned int cmd,unsi | |||
109 | static int xd_readwrite (u_char operation,XD_INFO *disk,char *buffer,u_int block,u_int count); | 109 | static int xd_readwrite (u_char operation,XD_INFO *disk,char *buffer,u_int block,u_int count); |
110 | static void xd_recalibrate (u_char drive); | 110 | static void xd_recalibrate (u_char drive); |
111 | 111 | ||
112 | static irqreturn_t xd_interrupt_handler(int irq, void *dev_id, | 112 | static irqreturn_t xd_interrupt_handler(int irq, void *dev_id); |
113 | struct pt_regs *regs); | ||
114 | static u_char xd_setup_dma (u_char opcode,u_char *buffer,u_int count); | 113 | static u_char xd_setup_dma (u_char opcode,u_char *buffer,u_int count); |
115 | static u_char *xd_build (u_char *cmdblk,u_char command,u_char drive,u_char head,u_short cylinder,u_char sector,u_char count,u_char control); | 114 | static u_char *xd_build (u_char *cmdblk,u_char command,u_char drive,u_char head,u_short cylinder,u_char sector,u_char count,u_char control); |
116 | static void xd_watchdog (unsigned long unused); | 115 | static void xd_watchdog (unsigned long unused); |
diff --git a/drivers/bluetooth/bcm203x.c b/drivers/bluetooth/bcm203x.c index 13ba729cdd57..67cdda43f229 100644 --- a/drivers/bluetooth/bcm203x.c +++ b/drivers/bluetooth/bcm203x.c | |||
@@ -82,7 +82,7 @@ struct bcm203x_data { | |||
82 | unsigned int fw_sent; | 82 | unsigned int fw_sent; |
83 | }; | 83 | }; |
84 | 84 | ||
85 | static void bcm203x_complete(struct urb *urb, struct pt_regs *regs) | 85 | static void bcm203x_complete(struct urb *urb) |
86 | { | 86 | { |
87 | struct bcm203x_data *data = urb->context; | 87 | struct bcm203x_data *data = urb->context; |
88 | struct usb_device *udev = urb->dev; | 88 | struct usb_device *udev = urb->dev; |
diff --git a/drivers/bluetooth/bfusb.c b/drivers/bluetooth/bfusb.c index efcc28ec9d9a..31ade991aa91 100644 --- a/drivers/bluetooth/bfusb.c +++ b/drivers/bluetooth/bfusb.c | |||
@@ -95,8 +95,8 @@ struct bfusb_data_scb { | |||
95 | struct urb *urb; | 95 | struct urb *urb; |
96 | }; | 96 | }; |
97 | 97 | ||
98 | static void bfusb_tx_complete(struct urb *urb, struct pt_regs *regs); | 98 | static void bfusb_tx_complete(struct urb *urb); |
99 | static void bfusb_rx_complete(struct urb *urb, struct pt_regs *regs); | 99 | static void bfusb_rx_complete(struct urb *urb); |
100 | 100 | ||
101 | static struct urb *bfusb_get_completed(struct bfusb_data *data) | 101 | static struct urb *bfusb_get_completed(struct bfusb_data *data) |
102 | { | 102 | { |
@@ -190,7 +190,7 @@ static void bfusb_tx_wakeup(struct bfusb_data *data) | |||
190 | clear_bit(BFUSB_TX_PROCESS, &data->state); | 190 | clear_bit(BFUSB_TX_PROCESS, &data->state); |
191 | } | 191 | } |
192 | 192 | ||
193 | static void bfusb_tx_complete(struct urb *urb, struct pt_regs *regs) | 193 | static void bfusb_tx_complete(struct urb *urb) |
194 | { | 194 | { |
195 | struct sk_buff *skb = (struct sk_buff *) urb->context; | 195 | struct sk_buff *skb = (struct sk_buff *) urb->context; |
196 | struct bfusb_data *data = (struct bfusb_data *) skb->dev; | 196 | struct bfusb_data *data = (struct bfusb_data *) skb->dev; |
@@ -349,7 +349,7 @@ static inline int bfusb_recv_block(struct bfusb_data *data, int hdr, unsigned ch | |||
349 | return 0; | 349 | return 0; |
350 | } | 350 | } |
351 | 351 | ||
352 | static void bfusb_rx_complete(struct urb *urb, struct pt_regs *regs) | 352 | static void bfusb_rx_complete(struct urb *urb) |
353 | { | 353 | { |
354 | struct sk_buff *skb = (struct sk_buff *) urb->context; | 354 | struct sk_buff *skb = (struct sk_buff *) urb->context; |
355 | struct bfusb_data *data = (struct bfusb_data *) skb->dev; | 355 | struct bfusb_data *data = (struct bfusb_data *) skb->dev; |
diff --git a/drivers/bluetooth/bluecard_cs.c b/drivers/bluetooth/bluecard_cs.c index 8eebf9ca3786..845b8680032a 100644 --- a/drivers/bluetooth/bluecard_cs.c +++ b/drivers/bluetooth/bluecard_cs.c | |||
@@ -497,7 +497,7 @@ static void bluecard_receive(bluecard_info_t *info, unsigned int offset) | |||
497 | } | 497 | } |
498 | 498 | ||
499 | 499 | ||
500 | static irqreturn_t bluecard_interrupt(int irq, void *dev_inst, struct pt_regs *regs) | 500 | static irqreturn_t bluecard_interrupt(int irq, void *dev_inst) |
501 | { | 501 | { |
502 | bluecard_info_t *info = dev_inst; | 502 | bluecard_info_t *info = dev_inst; |
503 | unsigned int iobase; | 503 | unsigned int iobase; |
diff --git a/drivers/bluetooth/bpa10x.c b/drivers/bluetooth/bpa10x.c index e0231dc2cb1a..9fca6513562d 100644 --- a/drivers/bluetooth/bpa10x.c +++ b/drivers/bluetooth/bpa10x.c | |||
@@ -263,7 +263,7 @@ static void bpa10x_wakeup(struct bpa10x_data *data) | |||
263 | } | 263 | } |
264 | } | 264 | } |
265 | 265 | ||
266 | static void bpa10x_complete(struct urb *urb, struct pt_regs *regs) | 266 | static void bpa10x_complete(struct urb *urb) |
267 | { | 267 | { |
268 | struct bpa10x_data *data = urb->context; | 268 | struct bpa10x_data *data = urb->context; |
269 | unsigned char *buf = urb->transfer_buffer; | 269 | unsigned char *buf = urb->transfer_buffer; |
diff --git a/drivers/bluetooth/bt3c_cs.c b/drivers/bluetooth/bt3c_cs.c index df7bb016df49..3a96a0babc6a 100644 --- a/drivers/bluetooth/bt3c_cs.c +++ b/drivers/bluetooth/bt3c_cs.c | |||
@@ -338,7 +338,7 @@ static void bt3c_receive(bt3c_info_t *info) | |||
338 | } | 338 | } |
339 | 339 | ||
340 | 340 | ||
341 | static irqreturn_t bt3c_interrupt(int irq, void *dev_inst, struct pt_regs *regs) | 341 | static irqreturn_t bt3c_interrupt(int irq, void *dev_inst) |
342 | { | 342 | { |
343 | bt3c_info_t *info = dev_inst; | 343 | bt3c_info_t *info = dev_inst; |
344 | unsigned int iobase; | 344 | unsigned int iobase; |
diff --git a/drivers/bluetooth/btuart_cs.c b/drivers/bluetooth/btuart_cs.c index 746ccca97f6f..3b29086b7c3f 100644 --- a/drivers/bluetooth/btuart_cs.c +++ b/drivers/bluetooth/btuart_cs.c | |||
@@ -288,7 +288,7 @@ static void btuart_receive(btuart_info_t *info) | |||
288 | } | 288 | } |
289 | 289 | ||
290 | 290 | ||
291 | static irqreturn_t btuart_interrupt(int irq, void *dev_inst, struct pt_regs *regs) | 291 | static irqreturn_t btuart_interrupt(int irq, void *dev_inst) |
292 | { | 292 | { |
293 | btuart_info_t *info = dev_inst; | 293 | btuart_info_t *info = dev_inst; |
294 | unsigned int iobase; | 294 | unsigned int iobase; |
diff --git a/drivers/bluetooth/dtl1_cs.c b/drivers/bluetooth/dtl1_cs.c index 0e99def8a1e3..e7c800f4c3ad 100644 --- a/drivers/bluetooth/dtl1_cs.c +++ b/drivers/bluetooth/dtl1_cs.c | |||
@@ -291,7 +291,7 @@ static void dtl1_receive(dtl1_info_t *info) | |||
291 | } | 291 | } |
292 | 292 | ||
293 | 293 | ||
294 | static irqreturn_t dtl1_interrupt(int irq, void *dev_inst, struct pt_regs *regs) | 294 | static irqreturn_t dtl1_interrupt(int irq, void *dev_inst) |
295 | { | 295 | { |
296 | dtl1_info_t *info = dev_inst; | 296 | dtl1_info_t *info = dev_inst; |
297 | unsigned int iobase; | 297 | unsigned int iobase; |
diff --git a/drivers/bluetooth/hci_usb.c b/drivers/bluetooth/hci_usb.c index 0801af4ad2b9..7565642a007a 100644 --- a/drivers/bluetooth/hci_usb.c +++ b/drivers/bluetooth/hci_usb.c | |||
@@ -176,8 +176,8 @@ static struct _urb *_urb_dequeue(struct _urb_queue *q) | |||
176 | return _urb; | 176 | return _urb; |
177 | } | 177 | } |
178 | 178 | ||
179 | static void hci_usb_rx_complete(struct urb *urb, struct pt_regs *regs); | 179 | static void hci_usb_rx_complete(struct urb *urb); |
180 | static void hci_usb_tx_complete(struct urb *urb, struct pt_regs *regs); | 180 | static void hci_usb_tx_complete(struct urb *urb); |
181 | 181 | ||
182 | #define __pending_tx(husb, type) (&husb->pending_tx[type-1]) | 182 | #define __pending_tx(husb, type) (&husb->pending_tx[type-1]) |
183 | #define __pending_q(husb, type) (&husb->pending_q[type-1]) | 183 | #define __pending_q(husb, type) (&husb->pending_q[type-1]) |
@@ -732,7 +732,7 @@ static inline int __recv_frame(struct hci_usb *husb, int type, void *data, int c | |||
732 | return 0; | 732 | return 0; |
733 | } | 733 | } |
734 | 734 | ||
735 | static void hci_usb_rx_complete(struct urb *urb, struct pt_regs *regs) | 735 | static void hci_usb_rx_complete(struct urb *urb) |
736 | { | 736 | { |
737 | struct _urb *_urb = container_of(urb, struct _urb, urb); | 737 | struct _urb *_urb = container_of(urb, struct _urb, urb); |
738 | struct hci_usb *husb = (void *) urb->context; | 738 | struct hci_usb *husb = (void *) urb->context; |
@@ -786,7 +786,7 @@ unlock: | |||
786 | read_unlock(&husb->completion_lock); | 786 | read_unlock(&husb->completion_lock); |
787 | } | 787 | } |
788 | 788 | ||
789 | static void hci_usb_tx_complete(struct urb *urb, struct pt_regs *regs) | 789 | static void hci_usb_tx_complete(struct urb *urb) |
790 | { | 790 | { |
791 | struct _urb *_urb = container_of(urb, struct _urb, urb); | 791 | struct _urb *_urb = container_of(urb, struct _urb, urb); |
792 | struct hci_usb *husb = (void *) urb->context; | 792 | struct hci_usb *husb = (void *) urb->context; |
diff --git a/drivers/cdrom/cdrom.c b/drivers/cdrom/cdrom.c index 2a0c50d84fc5..7ea0f48f8fa6 100644 --- a/drivers/cdrom/cdrom.c +++ b/drivers/cdrom/cdrom.c | |||
@@ -703,7 +703,7 @@ static int cdrom_has_defect_mgt(struct cdrom_device_info *cdi) | |||
703 | { | 703 | { |
704 | struct packet_command cgc; | 704 | struct packet_command cgc; |
705 | char buffer[16]; | 705 | char buffer[16]; |
706 | __u16 *feature_code; | 706 | __be16 *feature_code; |
707 | int ret; | 707 | int ret; |
708 | 708 | ||
709 | init_cdrom_command(&cgc, buffer, sizeof(buffer), CGC_DATA_READ); | 709 | init_cdrom_command(&cgc, buffer, sizeof(buffer), CGC_DATA_READ); |
@@ -716,7 +716,7 @@ static int cdrom_has_defect_mgt(struct cdrom_device_info *cdi) | |||
716 | if ((ret = cdi->ops->generic_packet(cdi, &cgc))) | 716 | if ((ret = cdi->ops->generic_packet(cdi, &cgc))) |
717 | return ret; | 717 | return ret; |
718 | 718 | ||
719 | feature_code = (__u16 *) &buffer[sizeof(struct feature_header)]; | 719 | feature_code = (__be16 *) &buffer[sizeof(struct feature_header)]; |
720 | if (be16_to_cpu(*feature_code) == CDF_HWDM) | 720 | if (be16_to_cpu(*feature_code) == CDF_HWDM) |
721 | return 0; | 721 | return 0; |
722 | 722 | ||
@@ -2963,7 +2963,7 @@ static int mmc_ioctl(struct cdrom_device_info *cdi, unsigned int cmd, | |||
2963 | how much data is available for transfer. buffer[1] is | 2963 | how much data is available for transfer. buffer[1] is |
2964 | unfortunately ambigious and the only reliable way seem | 2964 | unfortunately ambigious and the only reliable way seem |
2965 | to be to simply skip over the block descriptor... */ | 2965 | to be to simply skip over the block descriptor... */ |
2966 | offset = 8 + be16_to_cpu(*(unsigned short *)(buffer+6)); | 2966 | offset = 8 + be16_to_cpu(*(__be16 *)(buffer+6)); |
2967 | 2967 | ||
2968 | if (offset + 16 > sizeof(buffer)) | 2968 | if (offset + 16 > sizeof(buffer)) |
2969 | return -E2BIG; | 2969 | return -E2BIG; |
diff --git a/drivers/cdrom/cdu31a.c b/drivers/cdrom/cdu31a.c index ccd91c1a84bd..2157c58755e0 100644 --- a/drivers/cdrom/cdu31a.c +++ b/drivers/cdrom/cdu31a.c | |||
@@ -513,7 +513,7 @@ static inline void write_cmd(unsigned char cmd) | |||
513 | outb(cmd, sony_cd_cmd_reg); | 513 | outb(cmd, sony_cd_cmd_reg); |
514 | } | 514 | } |
515 | 515 | ||
516 | static irqreturn_t cdu31a_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 516 | static irqreturn_t cdu31a_interrupt(int irq, void *dev_id) |
517 | { | 517 | { |
518 | unsigned char val; | 518 | unsigned char val; |
519 | 519 | ||
diff --git a/drivers/cdrom/cm206.c b/drivers/cdrom/cm206.c index 9b05ddd23141..e6d8e9ededea 100644 --- a/drivers/cdrom/cm206.c +++ b/drivers/cdrom/cm206.c | |||
@@ -359,7 +359,7 @@ static struct tasklet_struct cm206_tasklet; | |||
359 | as there seems so reason for this to happen. | 359 | as there seems so reason for this to happen. |
360 | */ | 360 | */ |
361 | 361 | ||
362 | static irqreturn_t cm206_interrupt(int sig, void *dev_id, struct pt_regs *regs) | 362 | static irqreturn_t cm206_interrupt(int sig, void *dev_id) |
363 | { | 363 | { |
364 | volatile ush fool; | 364 | volatile ush fool; |
365 | cd->intr_ds = inw(r_data_status); /* resets data_ready, data_error, | 365 | cd->intr_ds = inw(r_data_status); /* resets data_ready, data_error, |
diff --git a/drivers/cdrom/mcdx.c b/drivers/cdrom/mcdx.c index dcd1ab684f3e..f574962f4288 100644 --- a/drivers/cdrom/mcdx.c +++ b/drivers/cdrom/mcdx.c | |||
@@ -845,15 +845,11 @@ static void mcdx_delay(struct s_drive_stuff *stuff, long jifs) | |||
845 | } | 845 | } |
846 | } | 846 | } |
847 | 847 | ||
848 | static irqreturn_t mcdx_intr(int irq, void *dev_id, struct pt_regs *regs) | 848 | static irqreturn_t mcdx_intr(int irq, void *dev_id) |
849 | { | 849 | { |
850 | struct s_drive_stuff *stuffp = dev_id; | 850 | struct s_drive_stuff *stuffp = dev_id; |
851 | unsigned char b; | 851 | unsigned char b; |
852 | 852 | ||
853 | if (stuffp == NULL) { | ||
854 | xwarn("mcdx: no device for intr %d\n", irq); | ||
855 | return IRQ_NONE; | ||
856 | } | ||
857 | #ifdef AK2 | 853 | #ifdef AK2 |
858 | if (!stuffp->busy && stuffp->pending) | 854 | if (!stuffp->busy && stuffp->pending) |
859 | stuffp->int_err = 1; | 855 | stuffp->int_err = 1; |
diff --git a/drivers/cdrom/sonycd535.c b/drivers/cdrom/sonycd535.c index 30ab56258a92..f77ada933ea0 100644 --- a/drivers/cdrom/sonycd535.c +++ b/drivers/cdrom/sonycd535.c | |||
@@ -322,7 +322,7 @@ disable_interrupts(void) | |||
322 | } | 322 | } |
323 | 323 | ||
324 | static irqreturn_t | 324 | static irqreturn_t |
325 | cdu535_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 325 | cdu535_interrupt(int irq, void *dev_id) |
326 | { | 326 | { |
327 | disable_interrupts(); | 327 | disable_interrupts(); |
328 | if (waitqueue_active(&cdu535_irq_wait)) { | 328 | if (waitqueue_active(&cdu535_irq_wait)) { |
diff --git a/drivers/char/amiserial.c b/drivers/char/amiserial.c index 486f97c3f4e5..66086fa2d59a 100644 --- a/drivers/char/amiserial.c +++ b/drivers/char/amiserial.c | |||
@@ -447,7 +447,7 @@ static void check_modem_status(struct async_struct *info) | |||
447 | } | 447 | } |
448 | } | 448 | } |
449 | 449 | ||
450 | static irqreturn_t ser_vbl_int( int irq, void *data, struct pt_regs *regs) | 450 | static irqreturn_t ser_vbl_int( int irq, void *data) |
451 | { | 451 | { |
452 | /* vbl is just a periodic interrupt we tie into to update modem status */ | 452 | /* vbl is just a periodic interrupt we tie into to update modem status */ |
453 | struct async_struct * info = IRQ_ports; | 453 | struct async_struct * info = IRQ_ports; |
@@ -460,7 +460,7 @@ static irqreturn_t ser_vbl_int( int irq, void *data, struct pt_regs *regs) | |||
460 | return IRQ_HANDLED; | 460 | return IRQ_HANDLED; |
461 | } | 461 | } |
462 | 462 | ||
463 | static irqreturn_t ser_rx_int(int irq, void *dev_id, struct pt_regs * regs) | 463 | static irqreturn_t ser_rx_int(int irq, void *dev_id) |
464 | { | 464 | { |
465 | struct async_struct * info; | 465 | struct async_struct * info; |
466 | 466 | ||
@@ -480,7 +480,7 @@ static irqreturn_t ser_rx_int(int irq, void *dev_id, struct pt_regs * regs) | |||
480 | return IRQ_HANDLED; | 480 | return IRQ_HANDLED; |
481 | } | 481 | } |
482 | 482 | ||
483 | static irqreturn_t ser_tx_int(int irq, void *dev_id, struct pt_regs * regs) | 483 | static irqreturn_t ser_tx_int(int irq, void *dev_id) |
484 | { | 484 | { |
485 | struct async_struct * info; | 485 | struct async_struct * info; |
486 | 486 | ||
diff --git a/drivers/char/applicom.c b/drivers/char/applicom.c index 10a389dafd60..1f0b752e5de1 100644 --- a/drivers/char/applicom.c +++ b/drivers/char/applicom.c | |||
@@ -110,7 +110,7 @@ static ssize_t ac_read (struct file *, char __user *, size_t, loff_t *); | |||
110 | static ssize_t ac_write (struct file *, const char __user *, size_t, loff_t *); | 110 | static ssize_t ac_write (struct file *, const char __user *, size_t, loff_t *); |
111 | static int ac_ioctl(struct inode *, struct file *, unsigned int, | 111 | static int ac_ioctl(struct inode *, struct file *, unsigned int, |
112 | unsigned long); | 112 | unsigned long); |
113 | static irqreturn_t ac_interrupt(int, void *, struct pt_regs *); | 113 | static irqreturn_t ac_interrupt(int, void *); |
114 | 114 | ||
115 | static const struct file_operations ac_fops = { | 115 | static const struct file_operations ac_fops = { |
116 | .owner = THIS_MODULE, | 116 | .owner = THIS_MODULE, |
@@ -617,7 +617,7 @@ static ssize_t ac_read (struct file *filp, char __user *buf, size_t count, loff_ | |||
617 | } | 617 | } |
618 | } | 618 | } |
619 | 619 | ||
620 | static irqreturn_t ac_interrupt(int vec, void *dev_instance, struct pt_regs *regs) | 620 | static irqreturn_t ac_interrupt(int vec, void *dev_instance) |
621 | { | 621 | { |
622 | unsigned int i; | 622 | unsigned int i; |
623 | unsigned int FlagInt; | 623 | unsigned int FlagInt; |
diff --git a/drivers/char/cyclades.c b/drivers/char/cyclades.c index 87b2fb510871..e608dadece2f 100644 --- a/drivers/char/cyclades.c +++ b/drivers/char/cyclades.c | |||
@@ -1057,7 +1057,7 @@ detect_isa_irq(void __iomem *address) | |||
1057 | received, out buffer empty, modem change, etc. | 1057 | received, out buffer empty, modem change, etc. |
1058 | */ | 1058 | */ |
1059 | static irqreturn_t | 1059 | static irqreturn_t |
1060 | cyy_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 1060 | cyy_interrupt(int irq, void *dev_id) |
1061 | { | 1061 | { |
1062 | struct tty_struct *tty; | 1062 | struct tty_struct *tty; |
1063 | int status; | 1063 | int status; |
@@ -1802,7 +1802,7 @@ cyz_handle_cmd(struct cyclades_card *cinfo) | |||
1802 | 1802 | ||
1803 | #ifdef CONFIG_CYZ_INTR | 1803 | #ifdef CONFIG_CYZ_INTR |
1804 | static irqreturn_t | 1804 | static irqreturn_t |
1805 | cyz_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 1805 | cyz_interrupt(int irq, void *dev_id) |
1806 | { | 1806 | { |
1807 | struct cyclades_card *cinfo; | 1807 | struct cyclades_card *cinfo; |
1808 | 1808 | ||
diff --git a/drivers/char/drm/drm_os_linux.h b/drivers/char/drm/drm_os_linux.h index 695115d70382..2908b72daa6e 100644 --- a/drivers/char/drm/drm_os_linux.h +++ b/drivers/char/drm/drm_os_linux.h | |||
@@ -38,7 +38,7 @@ | |||
38 | drm_device_t *dev = priv->head->dev | 38 | drm_device_t *dev = priv->head->dev |
39 | 39 | ||
40 | /** IRQ handler arguments and return type and values */ | 40 | /** IRQ handler arguments and return type and values */ |
41 | #define DRM_IRQ_ARGS int irq, void *arg, struct pt_regs *regs | 41 | #define DRM_IRQ_ARGS int irq, void *arg |
42 | 42 | ||
43 | /** AGP types */ | 43 | /** AGP types */ |
44 | #if __OS_HAS_AGP | 44 | #if __OS_HAS_AGP |
diff --git a/drivers/char/ec3104_keyb.c b/drivers/char/ec3104_keyb.c index abac18b1871c..77f58ed6d59a 100644 --- a/drivers/char/ec3104_keyb.c +++ b/drivers/char/ec3104_keyb.c | |||
@@ -370,7 +370,7 @@ static void e5_receive(struct e5_struct *k) | |||
370 | } | 370 | } |
371 | } | 371 | } |
372 | 372 | ||
373 | static void ec3104_keyb_interrupt(int irq, void *data, struct pt_regs *regs) | 373 | static void ec3104_keyb_interrupt(int irq, void *data) |
374 | { | 374 | { |
375 | struct e5_struct *k = &ec3104_keyb; | 375 | struct e5_struct *k = &ec3104_keyb; |
376 | u8 msr, lsr; | 376 | u8 msr, lsr; |
diff --git a/drivers/char/esp.c b/drivers/char/esp.c index 05788c75d7fc..15a4ea896328 100644 --- a/drivers/char/esp.c +++ b/drivers/char/esp.c | |||
@@ -615,8 +615,7 @@ static inline void check_modem_status(struct esp_struct *info) | |||
615 | /* | 615 | /* |
616 | * This is the serial driver's interrupt routine | 616 | * This is the serial driver's interrupt routine |
617 | */ | 617 | */ |
618 | static irqreturn_t rs_interrupt_single(int irq, void *dev_id, | 618 | static irqreturn_t rs_interrupt_single(int irq, void *dev_id) |
619 | struct pt_regs *regs) | ||
620 | { | 619 | { |
621 | struct esp_struct * info; | 620 | struct esp_struct * info; |
622 | unsigned err_status; | 621 | unsigned err_status; |
diff --git a/drivers/char/ftape/lowlevel/fdc-io.c b/drivers/char/ftape/lowlevel/fdc-io.c index 216532445652..bbcf918f056f 100644 --- a/drivers/char/ftape/lowlevel/fdc-io.c +++ b/drivers/char/ftape/lowlevel/fdc-io.c | |||
@@ -1243,7 +1243,7 @@ static int fdc_config(void) | |||
1243 | TRACE_EXIT 0; | 1243 | TRACE_EXIT 0; |
1244 | } | 1244 | } |
1245 | 1245 | ||
1246 | static irqreturn_t ftape_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 1246 | static irqreturn_t ftape_interrupt(int irq, void *dev_id) |
1247 | { | 1247 | { |
1248 | void (*handler) (void) = *fdc.hook; | 1248 | void (*handler) (void) = *fdc.hook; |
1249 | int handled = 0; | 1249 | int handled = 0; |
diff --git a/drivers/char/hangcheck-timer.c b/drivers/char/hangcheck-timer.c index d69f2ad9a67d..1aa93a752a9c 100644 --- a/drivers/char/hangcheck-timer.c +++ b/drivers/char/hangcheck-timer.c | |||
@@ -159,7 +159,7 @@ static void hangcheck_fire(unsigned long data) | |||
159 | if (hangcheck_dump_tasks) { | 159 | if (hangcheck_dump_tasks) { |
160 | printk(KERN_CRIT "Hangcheck: Task state:\n"); | 160 | printk(KERN_CRIT "Hangcheck: Task state:\n"); |
161 | #ifdef CONFIG_MAGIC_SYSRQ | 161 | #ifdef CONFIG_MAGIC_SYSRQ |
162 | handle_sysrq('t', NULL, NULL); | 162 | handle_sysrq('t', NULL); |
163 | #endif /* CONFIG_MAGIC_SYSRQ */ | 163 | #endif /* CONFIG_MAGIC_SYSRQ */ |
164 | } | 164 | } |
165 | if (hangcheck_reboot) { | 165 | if (hangcheck_reboot) { |
diff --git a/drivers/char/hpet.c b/drivers/char/hpet.c index 58b0eb581114..091a11cd878c 100644 --- a/drivers/char/hpet.c +++ b/drivers/char/hpet.c | |||
@@ -116,7 +116,7 @@ static inline void writeq(unsigned long long v, void __iomem *addr) | |||
116 | } | 116 | } |
117 | #endif | 117 | #endif |
118 | 118 | ||
119 | static irqreturn_t hpet_interrupt(int irq, void *data, struct pt_regs *regs) | 119 | static irqreturn_t hpet_interrupt(int irq, void *data) |
120 | { | 120 | { |
121 | struct hpet_dev *devp; | 121 | struct hpet_dev *devp; |
122 | unsigned long isr; | 122 | unsigned long isr; |
diff --git a/drivers/char/hvc_console.c b/drivers/char/hvc_console.c index 4053d1cd393f..9902ffad3b12 100644 --- a/drivers/char/hvc_console.c +++ b/drivers/char/hvc_console.c | |||
@@ -294,7 +294,7 @@ static int hvc_poll(struct hvc_struct *hp); | |||
294 | * NOTE: This API isn't used if the console adapter doesn't support interrupts. | 294 | * NOTE: This API isn't used if the console adapter doesn't support interrupts. |
295 | * In this case the console is poll driven. | 295 | * In this case the console is poll driven. |
296 | */ | 296 | */ |
297 | static irqreturn_t hvc_handle_interrupt(int irq, void *dev_instance, struct pt_regs *regs) | 297 | static irqreturn_t hvc_handle_interrupt(int irq, void *dev_instance) |
298 | { | 298 | { |
299 | /* if hvc_poll request a repoll, then kick the hvcd thread */ | 299 | /* if hvc_poll request a repoll, then kick the hvcd thread */ |
300 | if (hvc_poll(dev_instance)) | 300 | if (hvc_poll(dev_instance)) |
@@ -621,7 +621,7 @@ static int hvc_poll(struct hvc_struct *hp) | |||
621 | sysrq_pressed = 1; | 621 | sysrq_pressed = 1; |
622 | continue; | 622 | continue; |
623 | } else if (sysrq_pressed) { | 623 | } else if (sysrq_pressed) { |
624 | handle_sysrq(buf[i], NULL, tty); | 624 | handle_sysrq(buf[i], tty); |
625 | sysrq_pressed = 0; | 625 | sysrq_pressed = 0; |
626 | continue; | 626 | continue; |
627 | } | 627 | } |
diff --git a/drivers/char/hvcs.c b/drivers/char/hvcs.c index 0b89bcde8c52..8728255c9463 100644 --- a/drivers/char/hvcs.c +++ b/drivers/char/hvcs.c | |||
@@ -313,8 +313,7 @@ static DEFINE_SPINLOCK(hvcs_structs_lock); | |||
313 | 313 | ||
314 | static void hvcs_unthrottle(struct tty_struct *tty); | 314 | static void hvcs_unthrottle(struct tty_struct *tty); |
315 | static void hvcs_throttle(struct tty_struct *tty); | 315 | static void hvcs_throttle(struct tty_struct *tty); |
316 | static irqreturn_t hvcs_handle_interrupt(int irq, void *dev_instance, | 316 | static irqreturn_t hvcs_handle_interrupt(int irq, void *dev_instance); |
317 | struct pt_regs *regs); | ||
318 | 317 | ||
319 | static int hvcs_write(struct tty_struct *tty, | 318 | static int hvcs_write(struct tty_struct *tty, |
320 | const unsigned char *buf, int count); | 319 | const unsigned char *buf, int count); |
@@ -387,8 +386,7 @@ static void hvcs_throttle(struct tty_struct *tty) | |||
387 | * handler taking any further interrupts because they are disabled which means | 386 | * handler taking any further interrupts because they are disabled which means |
388 | * the hvcs_struct will always be valid in this handler. | 387 | * the hvcs_struct will always be valid in this handler. |
389 | */ | 388 | */ |
390 | static irqreturn_t hvcs_handle_interrupt(int irq, void *dev_instance, | 389 | static irqreturn_t hvcs_handle_interrupt(int irq, void *dev_instance) |
391 | struct pt_regs *regs) | ||
392 | { | 390 | { |
393 | struct hvcs_struct *hvcsd = dev_instance; | 391 | struct hvcs_struct *hvcsd = dev_instance; |
394 | 392 | ||
diff --git a/drivers/char/hvsi.c b/drivers/char/hvsi.c index c07dc58d5c1d..2cf63e7305a3 100644 --- a/drivers/char/hvsi.c +++ b/drivers/char/hvsi.c | |||
@@ -406,7 +406,7 @@ static void hvsi_insert_chars(struct hvsi_struct *hp, const char *buf, int len) | |||
406 | hp->sysrq = 1; | 406 | hp->sysrq = 1; |
407 | continue; | 407 | continue; |
408 | } else if (hp->sysrq) { | 408 | } else if (hp->sysrq) { |
409 | handle_sysrq(c, NULL, hp->tty); | 409 | handle_sysrq(c, hp->tty); |
410 | hp->sysrq = 0; | 410 | hp->sysrq = 0; |
411 | continue; | 411 | continue; |
412 | } | 412 | } |
@@ -555,7 +555,7 @@ static void hvsi_send_overflow(struct hvsi_struct *hp) | |||
555 | * must get all pending data because we only get an irq on empty->non-empty | 555 | * must get all pending data because we only get an irq on empty->non-empty |
556 | * transition | 556 | * transition |
557 | */ | 557 | */ |
558 | static irqreturn_t hvsi_interrupt(int irq, void *arg, struct pt_regs *regs) | 558 | static irqreturn_t hvsi_interrupt(int irq, void *arg) |
559 | { | 559 | { |
560 | struct hvsi_struct *hp = (struct hvsi_struct *)arg; | 560 | struct hvsi_struct *hp = (struct hvsi_struct *)arg; |
561 | struct tty_struct *flip; | 561 | struct tty_struct *flip; |
@@ -616,7 +616,7 @@ static int __init poll_for_state(struct hvsi_struct *hp, int state) | |||
616 | unsigned long end_jiffies = jiffies + HVSI_TIMEOUT; | 616 | unsigned long end_jiffies = jiffies + HVSI_TIMEOUT; |
617 | 617 | ||
618 | for (;;) { | 618 | for (;;) { |
619 | hvsi_interrupt(hp->virq, (void *)hp, NULL); /* get pending data */ | 619 | hvsi_interrupt(hp->virq, (void *)hp); /* get pending data */ |
620 | 620 | ||
621 | if (hp->state == state) | 621 | if (hp->state == state) |
622 | return 0; | 622 | return 0; |
diff --git a/drivers/char/ip2/ip2main.c b/drivers/char/ip2/ip2main.c index 62ef511d143b..858ba5432c99 100644 --- a/drivers/char/ip2/ip2main.c +++ b/drivers/char/ip2/ip2main.c | |||
@@ -190,7 +190,7 @@ static int ip2_tiocmset(struct tty_struct *tty, struct file *file, | |||
190 | 190 | ||
191 | static void set_irq(int, int); | 191 | static void set_irq(int, int); |
192 | static void ip2_interrupt_bh(i2eBordStrPtr pB); | 192 | static void ip2_interrupt_bh(i2eBordStrPtr pB); |
193 | static irqreturn_t ip2_interrupt(int irq, void *dev_id, struct pt_regs * regs); | 193 | static irqreturn_t ip2_interrupt(int irq, void *dev_id); |
194 | static void ip2_poll(unsigned long arg); | 194 | static void ip2_poll(unsigned long arg); |
195 | static inline void service_all_boards(void); | 195 | static inline void service_all_boards(void); |
196 | static void do_input(void *p); | 196 | static void do_input(void *p); |
@@ -1154,10 +1154,9 @@ ip2_interrupt_bh(i2eBordStrPtr pB) | |||
1154 | 1154 | ||
1155 | 1155 | ||
1156 | /******************************************************************************/ | 1156 | /******************************************************************************/ |
1157 | /* Function: ip2_interrupt(int irq, void *dev_id, struct pt_regs * regs) */ | 1157 | /* Function: ip2_interrupt(int irq, void *dev_id) */ |
1158 | /* Parameters: irq - interrupt number */ | 1158 | /* Parameters: irq - interrupt number */ |
1159 | /* pointer to optional device ID structure */ | 1159 | /* pointer to optional device ID structure */ |
1160 | /* pointer to register structure */ | ||
1161 | /* Returns: Nothing */ | 1160 | /* Returns: Nothing */ |
1162 | /* */ | 1161 | /* */ |
1163 | /* Description: */ | 1162 | /* Description: */ |
@@ -1173,7 +1172,7 @@ ip2_interrupt_bh(i2eBordStrPtr pB) | |||
1173 | /* */ | 1172 | /* */ |
1174 | /******************************************************************************/ | 1173 | /******************************************************************************/ |
1175 | static irqreturn_t | 1174 | static irqreturn_t |
1176 | ip2_interrupt(int irq, void *dev_id, struct pt_regs * regs) | 1175 | ip2_interrupt(int irq, void *dev_id) |
1177 | { | 1176 | { |
1178 | int i; | 1177 | int i; |
1179 | i2eBordStrPtr pB; | 1178 | i2eBordStrPtr pB; |
@@ -1237,7 +1236,7 @@ ip2_poll(unsigned long arg) | |||
1237 | // Just polled boards, IRQ = 0 will hit all non-interrupt boards. | 1236 | // Just polled boards, IRQ = 0 will hit all non-interrupt boards. |
1238 | // It will NOT poll boards handled by hard interrupts. | 1237 | // It will NOT poll boards handled by hard interrupts. |
1239 | // The issue of queued BH interrups is handled in ip2_interrupt(). | 1238 | // The issue of queued BH interrups is handled in ip2_interrupt(). |
1240 | ip2_interrupt(0, NULL, NULL); | 1239 | ip2_interrupt(0, NULL); |
1241 | 1240 | ||
1242 | PollTimer.expires = POLL_TIMEOUT; | 1241 | PollTimer.expires = POLL_TIMEOUT; |
1243 | add_timer( &PollTimer ); | 1242 | add_timer( &PollTimer ); |
diff --git a/drivers/char/ipmi/ipmi_si_intf.c b/drivers/char/ipmi/ipmi_si_intf.c index b106c45abfc9..24825bdca8f4 100644 --- a/drivers/char/ipmi/ipmi_si_intf.c +++ b/drivers/char/ipmi/ipmi_si_intf.c | |||
@@ -872,7 +872,7 @@ static void smi_timeout(unsigned long data) | |||
872 | add_timer(&(smi_info->si_timer)); | 872 | add_timer(&(smi_info->si_timer)); |
873 | } | 873 | } |
874 | 874 | ||
875 | static irqreturn_t si_irq_handler(int irq, void *data, struct pt_regs *regs) | 875 | static irqreturn_t si_irq_handler(int irq, void *data) |
876 | { | 876 | { |
877 | struct smi_info *smi_info = data; | 877 | struct smi_info *smi_info = data; |
878 | unsigned long flags; | 878 | unsigned long flags; |
@@ -899,14 +899,14 @@ static irqreturn_t si_irq_handler(int irq, void *data, struct pt_regs *regs) | |||
899 | return IRQ_HANDLED; | 899 | return IRQ_HANDLED; |
900 | } | 900 | } |
901 | 901 | ||
902 | static irqreturn_t si_bt_irq_handler(int irq, void *data, struct pt_regs *regs) | 902 | static irqreturn_t si_bt_irq_handler(int irq, void *data) |
903 | { | 903 | { |
904 | struct smi_info *smi_info = data; | 904 | struct smi_info *smi_info = data; |
905 | /* We need to clear the IRQ flag for the BT interface. */ | 905 | /* We need to clear the IRQ flag for the BT interface. */ |
906 | smi_info->io.outputb(&smi_info->io, IPMI_BT_INTMASK_REG, | 906 | smi_info->io.outputb(&smi_info->io, IPMI_BT_INTMASK_REG, |
907 | IPMI_BT_INTMASK_CLEAR_IRQ_BIT | 907 | IPMI_BT_INTMASK_CLEAR_IRQ_BIT |
908 | | IPMI_BT_INTMASK_ENABLE_IRQ_BIT); | 908 | | IPMI_BT_INTMASK_ENABLE_IRQ_BIT); |
909 | return si_irq_handler(irq, data, regs); | 909 | return si_irq_handler(irq, data); |
910 | } | 910 | } |
911 | 911 | ||
912 | static int smi_start_processing(void *send_info, | 912 | static int smi_start_processing(void *send_info, |
diff --git a/drivers/char/ipmi/ipmi_watchdog.c b/drivers/char/ipmi/ipmi_watchdog.c index accaaf1a6b69..73f759eaa5a6 100644 --- a/drivers/char/ipmi/ipmi_watchdog.c +++ b/drivers/char/ipmi/ipmi_watchdog.c | |||
@@ -903,7 +903,7 @@ static void ipmi_register_watchdog(int ipmi_intf) | |||
903 | 903 | ||
904 | #ifdef HAVE_NMI_HANDLER | 904 | #ifdef HAVE_NMI_HANDLER |
905 | static int | 905 | static int |
906 | ipmi_nmi(void *dev_id, struct pt_regs *regs, int cpu, int handled) | 906 | ipmi_nmi(void *dev_id, int cpu, int handled) |
907 | { | 907 | { |
908 | /* If we are not expecting a timeout, ignore it. */ | 908 | /* If we are not expecting a timeout, ignore it. */ |
909 | if (ipmi_watchdog_state == WDOG_TIMEOUT_NONE) | 909 | if (ipmi_watchdog_state == WDOG_TIMEOUT_NONE) |
diff --git a/drivers/char/isicom.c b/drivers/char/isicom.c index ea2bbf80ad33..e9e9bf31c369 100644 --- a/drivers/char/isicom.c +++ b/drivers/char/isicom.c | |||
@@ -546,7 +546,7 @@ static void isicom_bottomhalf(void *data) | |||
546 | * Main interrupt handler routine | 546 | * Main interrupt handler routine |
547 | */ | 547 | */ |
548 | 548 | ||
549 | static irqreturn_t isicom_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 549 | static irqreturn_t isicom_interrupt(int irq, void *dev_id) |
550 | { | 550 | { |
551 | struct isi_board *card = dev_id; | 551 | struct isi_board *card = dev_id; |
552 | struct isi_port *port; | 552 | struct isi_port *port; |
diff --git a/drivers/char/istallion.c b/drivers/char/istallion.c index d6e031542c6b..ffdf9df1a67a 100644 --- a/drivers/char/istallion.c +++ b/drivers/char/istallion.c | |||
@@ -686,37 +686,37 @@ static stlibrd_t *stli_allocbrd(void); | |||
686 | static void stli_ecpinit(stlibrd_t *brdp); | 686 | static void stli_ecpinit(stlibrd_t *brdp); |
687 | static void stli_ecpenable(stlibrd_t *brdp); | 687 | static void stli_ecpenable(stlibrd_t *brdp); |
688 | static void stli_ecpdisable(stlibrd_t *brdp); | 688 | static void stli_ecpdisable(stlibrd_t *brdp); |
689 | static char *stli_ecpgetmemptr(stlibrd_t *brdp, unsigned long offset, int line); | 689 | static void __iomem *stli_ecpgetmemptr(stlibrd_t *brdp, unsigned long offset, int line); |
690 | static void stli_ecpreset(stlibrd_t *brdp); | 690 | static void stli_ecpreset(stlibrd_t *brdp); |
691 | static void stli_ecpintr(stlibrd_t *brdp); | 691 | static void stli_ecpintr(stlibrd_t *brdp); |
692 | static void stli_ecpeiinit(stlibrd_t *brdp); | 692 | static void stli_ecpeiinit(stlibrd_t *brdp); |
693 | static void stli_ecpeienable(stlibrd_t *brdp); | 693 | static void stli_ecpeienable(stlibrd_t *brdp); |
694 | static void stli_ecpeidisable(stlibrd_t *brdp); | 694 | static void stli_ecpeidisable(stlibrd_t *brdp); |
695 | static char *stli_ecpeigetmemptr(stlibrd_t *brdp, unsigned long offset, int line); | 695 | static void __iomem *stli_ecpeigetmemptr(stlibrd_t *brdp, unsigned long offset, int line); |
696 | static void stli_ecpeireset(stlibrd_t *brdp); | 696 | static void stli_ecpeireset(stlibrd_t *brdp); |
697 | static void stli_ecpmcenable(stlibrd_t *brdp); | 697 | static void stli_ecpmcenable(stlibrd_t *brdp); |
698 | static void stli_ecpmcdisable(stlibrd_t *brdp); | 698 | static void stli_ecpmcdisable(stlibrd_t *brdp); |
699 | static char *stli_ecpmcgetmemptr(stlibrd_t *brdp, unsigned long offset, int line); | 699 | static void __iomem *stli_ecpmcgetmemptr(stlibrd_t *brdp, unsigned long offset, int line); |
700 | static void stli_ecpmcreset(stlibrd_t *brdp); | 700 | static void stli_ecpmcreset(stlibrd_t *brdp); |
701 | static void stli_ecppciinit(stlibrd_t *brdp); | 701 | static void stli_ecppciinit(stlibrd_t *brdp); |
702 | static char *stli_ecppcigetmemptr(stlibrd_t *brdp, unsigned long offset, int line); | 702 | static void __iomem *stli_ecppcigetmemptr(stlibrd_t *brdp, unsigned long offset, int line); |
703 | static void stli_ecppcireset(stlibrd_t *brdp); | 703 | static void stli_ecppcireset(stlibrd_t *brdp); |
704 | 704 | ||
705 | static void stli_onbinit(stlibrd_t *brdp); | 705 | static void stli_onbinit(stlibrd_t *brdp); |
706 | static void stli_onbenable(stlibrd_t *brdp); | 706 | static void stli_onbenable(stlibrd_t *brdp); |
707 | static void stli_onbdisable(stlibrd_t *brdp); | 707 | static void stli_onbdisable(stlibrd_t *brdp); |
708 | static char *stli_onbgetmemptr(stlibrd_t *brdp, unsigned long offset, int line); | 708 | static void __iomem *stli_onbgetmemptr(stlibrd_t *brdp, unsigned long offset, int line); |
709 | static void stli_onbreset(stlibrd_t *brdp); | 709 | static void stli_onbreset(stlibrd_t *brdp); |
710 | static void stli_onbeinit(stlibrd_t *brdp); | 710 | static void stli_onbeinit(stlibrd_t *brdp); |
711 | static void stli_onbeenable(stlibrd_t *brdp); | 711 | static void stli_onbeenable(stlibrd_t *brdp); |
712 | static void stli_onbedisable(stlibrd_t *brdp); | 712 | static void stli_onbedisable(stlibrd_t *brdp); |
713 | static char *stli_onbegetmemptr(stlibrd_t *brdp, unsigned long offset, int line); | 713 | static void __iomem *stli_onbegetmemptr(stlibrd_t *brdp, unsigned long offset, int line); |
714 | static void stli_onbereset(stlibrd_t *brdp); | 714 | static void stli_onbereset(stlibrd_t *brdp); |
715 | static void stli_bbyinit(stlibrd_t *brdp); | 715 | static void stli_bbyinit(stlibrd_t *brdp); |
716 | static char *stli_bbygetmemptr(stlibrd_t *brdp, unsigned long offset, int line); | 716 | static void __iomem *stli_bbygetmemptr(stlibrd_t *brdp, unsigned long offset, int line); |
717 | static void stli_bbyreset(stlibrd_t *brdp); | 717 | static void stli_bbyreset(stlibrd_t *brdp); |
718 | static void stli_stalinit(stlibrd_t *brdp); | 718 | static void stli_stalinit(stlibrd_t *brdp); |
719 | static char *stli_stalgetmemptr(stlibrd_t *brdp, unsigned long offset, int line); | 719 | static void __iomem *stli_stalgetmemptr(stlibrd_t *brdp, unsigned long offset, int line); |
720 | static void stli_stalreset(stlibrd_t *brdp); | 720 | static void stli_stalreset(stlibrd_t *brdp); |
721 | 721 | ||
722 | static stliport_t *stli_getport(int brdnr, int panelnr, int portnr); | 722 | static stliport_t *stli_getport(int brdnr, int panelnr, int portnr); |
@@ -1566,7 +1566,7 @@ static void stli_flushchars(struct tty_struct *tty) | |||
1566 | 1566 | ||
1567 | len = MIN(len, cooksize); | 1567 | len = MIN(len, cooksize); |
1568 | count = 0; | 1568 | count = 0; |
1569 | shbuf = (char *) EBRDGETMEMPTR(brdp, portp->txoffset); | 1569 | shbuf = EBRDGETMEMPTR(brdp, portp->txoffset); |
1570 | buf = stli_txcookbuf; | 1570 | buf = stli_txcookbuf; |
1571 | 1571 | ||
1572 | while (len > 0) { | 1572 | while (len > 0) { |
@@ -2948,9 +2948,9 @@ static void stli_ecpdisable(stlibrd_t *brdp) | |||
2948 | 2948 | ||
2949 | /*****************************************************************************/ | 2949 | /*****************************************************************************/ |
2950 | 2950 | ||
2951 | static char *stli_ecpgetmemptr(stlibrd_t *brdp, unsigned long offset, int line) | 2951 | static void __iomem *stli_ecpgetmemptr(stlibrd_t *brdp, unsigned long offset, int line) |
2952 | { | 2952 | { |
2953 | void *ptr; | 2953 | void __iomem *ptr; |
2954 | unsigned char val; | 2954 | unsigned char val; |
2955 | 2955 | ||
2956 | if (offset > brdp->memsize) { | 2956 | if (offset > brdp->memsize) { |
@@ -3022,9 +3022,9 @@ static void stli_ecpeidisable(stlibrd_t *brdp) | |||
3022 | 3022 | ||
3023 | /*****************************************************************************/ | 3023 | /*****************************************************************************/ |
3024 | 3024 | ||
3025 | static char *stli_ecpeigetmemptr(stlibrd_t *brdp, unsigned long offset, int line) | 3025 | static void __iomem *stli_ecpeigetmemptr(stlibrd_t *brdp, unsigned long offset, int line) |
3026 | { | 3026 | { |
3027 | void *ptr; | 3027 | void __iomem *ptr; |
3028 | unsigned char val; | 3028 | unsigned char val; |
3029 | 3029 | ||
3030 | if (offset > brdp->memsize) { | 3030 | if (offset > brdp->memsize) { |
@@ -3074,9 +3074,9 @@ static void stli_ecpmcdisable(stlibrd_t *brdp) | |||
3074 | 3074 | ||
3075 | /*****************************************************************************/ | 3075 | /*****************************************************************************/ |
3076 | 3076 | ||
3077 | static char *stli_ecpmcgetmemptr(stlibrd_t *brdp, unsigned long offset, int line) | 3077 | static void __iomem *stli_ecpmcgetmemptr(stlibrd_t *brdp, unsigned long offset, int line) |
3078 | { | 3078 | { |
3079 | void *ptr; | 3079 | void __iomem *ptr; |
3080 | unsigned char val; | 3080 | unsigned char val; |
3081 | 3081 | ||
3082 | if (offset > brdp->memsize) { | 3082 | if (offset > brdp->memsize) { |
@@ -3119,9 +3119,9 @@ static void stli_ecppciinit(stlibrd_t *brdp) | |||
3119 | 3119 | ||
3120 | /*****************************************************************************/ | 3120 | /*****************************************************************************/ |
3121 | 3121 | ||
3122 | static char *stli_ecppcigetmemptr(stlibrd_t *brdp, unsigned long offset, int line) | 3122 | static void __iomem *stli_ecppcigetmemptr(stlibrd_t *brdp, unsigned long offset, int line) |
3123 | { | 3123 | { |
3124 | void *ptr; | 3124 | void __iomem *ptr; |
3125 | unsigned char val; | 3125 | unsigned char val; |
3126 | 3126 | ||
3127 | if (offset > brdp->memsize) { | 3127 | if (offset > brdp->memsize) { |
@@ -3185,9 +3185,9 @@ static void stli_onbdisable(stlibrd_t *brdp) | |||
3185 | 3185 | ||
3186 | /*****************************************************************************/ | 3186 | /*****************************************************************************/ |
3187 | 3187 | ||
3188 | static char *stli_onbgetmemptr(stlibrd_t *brdp, unsigned long offset, int line) | 3188 | static void __iomem *stli_onbgetmemptr(stlibrd_t *brdp, unsigned long offset, int line) |
3189 | { | 3189 | { |
3190 | void *ptr; | 3190 | void __iomem *ptr; |
3191 | 3191 | ||
3192 | if (offset > brdp->memsize) { | 3192 | if (offset > brdp->memsize) { |
3193 | printk(KERN_ERR "STALLION: shared memory pointer=%x out of " | 3193 | printk(KERN_ERR "STALLION: shared memory pointer=%x out of " |
@@ -3250,9 +3250,9 @@ static void stli_onbedisable(stlibrd_t *brdp) | |||
3250 | 3250 | ||
3251 | /*****************************************************************************/ | 3251 | /*****************************************************************************/ |
3252 | 3252 | ||
3253 | static char *stli_onbegetmemptr(stlibrd_t *brdp, unsigned long offset, int line) | 3253 | static void __iomem *stli_onbegetmemptr(stlibrd_t *brdp, unsigned long offset, int line) |
3254 | { | 3254 | { |
3255 | void *ptr; | 3255 | void __iomem *ptr; |
3256 | unsigned char val; | 3256 | unsigned char val; |
3257 | 3257 | ||
3258 | if (offset > brdp->memsize) { | 3258 | if (offset > brdp->memsize) { |
@@ -3300,9 +3300,9 @@ static void stli_bbyinit(stlibrd_t *brdp) | |||
3300 | 3300 | ||
3301 | /*****************************************************************************/ | 3301 | /*****************************************************************************/ |
3302 | 3302 | ||
3303 | static char *stli_bbygetmemptr(stlibrd_t *brdp, unsigned long offset, int line) | 3303 | static void __iomem *stli_bbygetmemptr(stlibrd_t *brdp, unsigned long offset, int line) |
3304 | { | 3304 | { |
3305 | void *ptr; | 3305 | void __iomem *ptr; |
3306 | unsigned char val; | 3306 | unsigned char val; |
3307 | 3307 | ||
3308 | BUG_ON(offset > brdp->memsize); | 3308 | BUG_ON(offset > brdp->memsize); |
@@ -3337,7 +3337,7 @@ static void stli_stalinit(stlibrd_t *brdp) | |||
3337 | 3337 | ||
3338 | /*****************************************************************************/ | 3338 | /*****************************************************************************/ |
3339 | 3339 | ||
3340 | static char *stli_stalgetmemptr(stlibrd_t *brdp, unsigned long offset, int line) | 3340 | static void __iomem *stli_stalgetmemptr(stlibrd_t *brdp, unsigned long offset, int line) |
3341 | { | 3341 | { |
3342 | BUG_ON(offset > brdp->memsize); | 3342 | BUG_ON(offset > brdp->memsize); |
3343 | return brdp->membase + (offset % STAL_PAGESIZE); | 3343 | return brdp->membase + (offset % STAL_PAGESIZE); |
@@ -3876,7 +3876,7 @@ static int stli_eisamemprobe(stlibrd_t *brdp) | |||
3876 | continue; | 3876 | continue; |
3877 | 3877 | ||
3878 | if (brdp->brdtype == BRD_ECPE) { | 3878 | if (brdp->brdtype == BRD_ECPE) { |
3879 | ecpsigp = (cdkecpsig_t __iomem *) stli_ecpeigetmemptr(brdp, | 3879 | ecpsigp = stli_ecpeigetmemptr(brdp, |
3880 | CDK_SIGADDR, __LINE__); | 3880 | CDK_SIGADDR, __LINE__); |
3881 | memcpy_fromio(&ecpsig, ecpsigp, sizeof(cdkecpsig_t)); | 3881 | memcpy_fromio(&ecpsig, ecpsigp, sizeof(cdkecpsig_t)); |
3882 | if (ecpsig.magic == cpu_to_le32(ECP_MAGIC)) | 3882 | if (ecpsig.magic == cpu_to_le32(ECP_MAGIC)) |
@@ -4184,7 +4184,7 @@ static int stli_initbrds(void) | |||
4184 | static ssize_t stli_memread(struct file *fp, char __user *buf, size_t count, loff_t *offp) | 4184 | static ssize_t stli_memread(struct file *fp, char __user *buf, size_t count, loff_t *offp) |
4185 | { | 4185 | { |
4186 | unsigned long flags; | 4186 | unsigned long flags; |
4187 | void *memptr; | 4187 | void __iomem *memptr; |
4188 | stlibrd_t *brdp; | 4188 | stlibrd_t *brdp; |
4189 | int brdnr, size, n; | 4189 | int brdnr, size, n; |
4190 | void *p; | 4190 | void *p; |
@@ -4214,7 +4214,7 @@ static ssize_t stli_memread(struct file *fp, char __user *buf, size_t count, lof | |||
4214 | while (size > 0) { | 4214 | while (size > 0) { |
4215 | spin_lock_irqsave(&brd_lock, flags); | 4215 | spin_lock_irqsave(&brd_lock, flags); |
4216 | EBRDENABLE(brdp); | 4216 | EBRDENABLE(brdp); |
4217 | memptr = (void *) EBRDGETMEMPTR(brdp, off); | 4217 | memptr = EBRDGETMEMPTR(brdp, off); |
4218 | n = MIN(size, (brdp->pagesize - (((unsigned long) off) % brdp->pagesize))); | 4218 | n = MIN(size, (brdp->pagesize - (((unsigned long) off) % brdp->pagesize))); |
4219 | n = MIN(n, PAGE_SIZE); | 4219 | n = MIN(n, PAGE_SIZE); |
4220 | memcpy_fromio(p, memptr, n); | 4220 | memcpy_fromio(p, memptr, n); |
@@ -4247,7 +4247,7 @@ out: | |||
4247 | static ssize_t stli_memwrite(struct file *fp, const char __user *buf, size_t count, loff_t *offp) | 4247 | static ssize_t stli_memwrite(struct file *fp, const char __user *buf, size_t count, loff_t *offp) |
4248 | { | 4248 | { |
4249 | unsigned long flags; | 4249 | unsigned long flags; |
4250 | void *memptr; | 4250 | void __iomem *memptr; |
4251 | stlibrd_t *brdp; | 4251 | stlibrd_t *brdp; |
4252 | char __user *chbuf; | 4252 | char __user *chbuf; |
4253 | int brdnr, size, n; | 4253 | int brdnr, size, n; |
@@ -4287,7 +4287,7 @@ static ssize_t stli_memwrite(struct file *fp, const char __user *buf, size_t cou | |||
4287 | } | 4287 | } |
4288 | spin_lock_irqsave(&brd_lock, flags); | 4288 | spin_lock_irqsave(&brd_lock, flags); |
4289 | EBRDENABLE(brdp); | 4289 | EBRDENABLE(brdp); |
4290 | memptr = (void *) EBRDGETMEMPTR(brdp, off); | 4290 | memptr = EBRDGETMEMPTR(brdp, off); |
4291 | memcpy_toio(memptr, p, n); | 4291 | memcpy_toio(memptr, p, n); |
4292 | EBRDDISABLE(brdp); | 4292 | EBRDDISABLE(brdp); |
4293 | spin_unlock_irqrestore(&brd_lock, flags); | 4293 | spin_unlock_irqrestore(&brd_lock, flags); |
diff --git a/drivers/char/keyboard.c b/drivers/char/keyboard.c index e2011669c7bb..20b6c8b30248 100644 --- a/drivers/char/keyboard.c +++ b/drivers/char/keyboard.c | |||
@@ -32,6 +32,7 @@ | |||
32 | #include <linux/string.h> | 32 | #include <linux/string.h> |
33 | #include <linux/init.h> | 33 | #include <linux/init.h> |
34 | #include <linux/slab.h> | 34 | #include <linux/slab.h> |
35 | #include <linux/irq.h> | ||
35 | 36 | ||
36 | #include <linux/kbd_kern.h> | 37 | #include <linux/kbd_kern.h> |
37 | #include <linux/kbd_diacr.h> | 38 | #include <linux/kbd_diacr.h> |
@@ -77,7 +78,7 @@ void compute_shiftstate(void); | |||
77 | k_slock, k_dead2, k_brl, k_ignore | 78 | k_slock, k_dead2, k_brl, k_ignore |
78 | 79 | ||
79 | typedef void (k_handler_fn)(struct vc_data *vc, unsigned char value, | 80 | typedef void (k_handler_fn)(struct vc_data *vc, unsigned char value, |
80 | char up_flag, struct pt_regs *regs); | 81 | char up_flag); |
81 | static k_handler_fn K_HANDLERS; | 82 | static k_handler_fn K_HANDLERS; |
82 | static k_handler_fn *k_handler[16] = { K_HANDLERS }; | 83 | static k_handler_fn *k_handler[16] = { K_HANDLERS }; |
83 | 84 | ||
@@ -88,7 +89,7 @@ static k_handler_fn *k_handler[16] = { K_HANDLERS }; | |||
88 | fn_boot_it, fn_caps_on, fn_compose, fn_SAK,\ | 89 | fn_boot_it, fn_caps_on, fn_compose, fn_SAK,\ |
89 | fn_dec_console, fn_inc_console, fn_spawn_con, fn_bare_num | 90 | fn_dec_console, fn_inc_console, fn_spawn_con, fn_bare_num |
90 | 91 | ||
91 | typedef void (fn_handler_fn)(struct vc_data *vc, struct pt_regs *regs); | 92 | typedef void (fn_handler_fn)(struct vc_data *vc); |
92 | static fn_handler_fn FN_HANDLERS; | 93 | static fn_handler_fn FN_HANDLERS; |
93 | static fn_handler_fn *fn_handler[] = { FN_HANDLERS }; | 94 | static fn_handler_fn *fn_handler[] = { FN_HANDLERS }; |
94 | 95 | ||
@@ -428,7 +429,7 @@ static unsigned int handle_diacr(struct vc_data *vc, unsigned int ch) | |||
428 | /* | 429 | /* |
429 | * Special function handlers | 430 | * Special function handlers |
430 | */ | 431 | */ |
431 | static void fn_enter(struct vc_data *vc, struct pt_regs *regs) | 432 | static void fn_enter(struct vc_data *vc) |
432 | { | 433 | { |
433 | if (diacr) { | 434 | if (diacr) { |
434 | if (kbd->kbdmode == VC_UNICODE) | 435 | if (kbd->kbdmode == VC_UNICODE) |
@@ -442,27 +443,28 @@ static void fn_enter(struct vc_data *vc, struct pt_regs *regs) | |||
442 | put_queue(vc, 10); | 443 | put_queue(vc, 10); |
443 | } | 444 | } |
444 | 445 | ||
445 | static void fn_caps_toggle(struct vc_data *vc, struct pt_regs *regs) | 446 | static void fn_caps_toggle(struct vc_data *vc) |
446 | { | 447 | { |
447 | if (rep) | 448 | if (rep) |
448 | return; | 449 | return; |
449 | chg_vc_kbd_led(kbd, VC_CAPSLOCK); | 450 | chg_vc_kbd_led(kbd, VC_CAPSLOCK); |
450 | } | 451 | } |
451 | 452 | ||
452 | static void fn_caps_on(struct vc_data *vc, struct pt_regs *regs) | 453 | static void fn_caps_on(struct vc_data *vc) |
453 | { | 454 | { |
454 | if (rep) | 455 | if (rep) |
455 | return; | 456 | return; |
456 | set_vc_kbd_led(kbd, VC_CAPSLOCK); | 457 | set_vc_kbd_led(kbd, VC_CAPSLOCK); |
457 | } | 458 | } |
458 | 459 | ||
459 | static void fn_show_ptregs(struct vc_data *vc, struct pt_regs *regs) | 460 | static void fn_show_ptregs(struct vc_data *vc) |
460 | { | 461 | { |
462 | struct pt_regs *regs = get_irq_regs(); | ||
461 | if (regs) | 463 | if (regs) |
462 | show_regs(regs); | 464 | show_regs(regs); |
463 | } | 465 | } |
464 | 466 | ||
465 | static void fn_hold(struct vc_data *vc, struct pt_regs *regs) | 467 | static void fn_hold(struct vc_data *vc) |
466 | { | 468 | { |
467 | struct tty_struct *tty = vc->vc_tty; | 469 | struct tty_struct *tty = vc->vc_tty; |
468 | 470 | ||
@@ -480,12 +482,12 @@ static void fn_hold(struct vc_data *vc, struct pt_regs *regs) | |||
480 | stop_tty(tty); | 482 | stop_tty(tty); |
481 | } | 483 | } |
482 | 484 | ||
483 | static void fn_num(struct vc_data *vc, struct pt_regs *regs) | 485 | static void fn_num(struct vc_data *vc) |
484 | { | 486 | { |
485 | if (vc_kbd_mode(kbd,VC_APPLIC)) | 487 | if (vc_kbd_mode(kbd,VC_APPLIC)) |
486 | applkey(vc, 'P', 1); | 488 | applkey(vc, 'P', 1); |
487 | else | 489 | else |
488 | fn_bare_num(vc, regs); | 490 | fn_bare_num(vc); |
489 | } | 491 | } |
490 | 492 | ||
491 | /* | 493 | /* |
@@ -494,19 +496,19 @@ static void fn_num(struct vc_data *vc, struct pt_regs *regs) | |||
494 | * Bind this to NumLock if you prefer that the NumLock key always | 496 | * Bind this to NumLock if you prefer that the NumLock key always |
495 | * changes the NumLock flag. | 497 | * changes the NumLock flag. |
496 | */ | 498 | */ |
497 | static void fn_bare_num(struct vc_data *vc, struct pt_regs *regs) | 499 | static void fn_bare_num(struct vc_data *vc) |
498 | { | 500 | { |
499 | if (!rep) | 501 | if (!rep) |
500 | chg_vc_kbd_led(kbd, VC_NUMLOCK); | 502 | chg_vc_kbd_led(kbd, VC_NUMLOCK); |
501 | } | 503 | } |
502 | 504 | ||
503 | static void fn_lastcons(struct vc_data *vc, struct pt_regs *regs) | 505 | static void fn_lastcons(struct vc_data *vc) |
504 | { | 506 | { |
505 | /* switch to the last used console, ChN */ | 507 | /* switch to the last used console, ChN */ |
506 | set_console(last_console); | 508 | set_console(last_console); |
507 | } | 509 | } |
508 | 510 | ||
509 | static void fn_dec_console(struct vc_data *vc, struct pt_regs *regs) | 511 | static void fn_dec_console(struct vc_data *vc) |
510 | { | 512 | { |
511 | int i, cur = fg_console; | 513 | int i, cur = fg_console; |
512 | 514 | ||
@@ -523,7 +525,7 @@ static void fn_dec_console(struct vc_data *vc, struct pt_regs *regs) | |||
523 | set_console(i); | 525 | set_console(i); |
524 | } | 526 | } |
525 | 527 | ||
526 | static void fn_inc_console(struct vc_data *vc, struct pt_regs *regs) | 528 | static void fn_inc_console(struct vc_data *vc) |
527 | { | 529 | { |
528 | int i, cur = fg_console; | 530 | int i, cur = fg_console; |
529 | 531 | ||
@@ -540,7 +542,7 @@ static void fn_inc_console(struct vc_data *vc, struct pt_regs *regs) | |||
540 | set_console(i); | 542 | set_console(i); |
541 | } | 543 | } |
542 | 544 | ||
543 | static void fn_send_intr(struct vc_data *vc, struct pt_regs *regs) | 545 | static void fn_send_intr(struct vc_data *vc) |
544 | { | 546 | { |
545 | struct tty_struct *tty = vc->vc_tty; | 547 | struct tty_struct *tty = vc->vc_tty; |
546 | 548 | ||
@@ -550,37 +552,37 @@ static void fn_send_intr(struct vc_data *vc, struct pt_regs *regs) | |||
550 | con_schedule_flip(tty); | 552 | con_schedule_flip(tty); |
551 | } | 553 | } |
552 | 554 | ||
553 | static void fn_scroll_forw(struct vc_data *vc, struct pt_regs *regs) | 555 | static void fn_scroll_forw(struct vc_data *vc) |
554 | { | 556 | { |
555 | scrollfront(vc, 0); | 557 | scrollfront(vc, 0); |
556 | } | 558 | } |
557 | 559 | ||
558 | static void fn_scroll_back(struct vc_data *vc, struct pt_regs *regs) | 560 | static void fn_scroll_back(struct vc_data *vc) |
559 | { | 561 | { |
560 | scrollback(vc, 0); | 562 | scrollback(vc, 0); |
561 | } | 563 | } |
562 | 564 | ||
563 | static void fn_show_mem(struct vc_data *vc, struct pt_regs *regs) | 565 | static void fn_show_mem(struct vc_data *vc) |
564 | { | 566 | { |
565 | show_mem(); | 567 | show_mem(); |
566 | } | 568 | } |
567 | 569 | ||
568 | static void fn_show_state(struct vc_data *vc, struct pt_regs *regs) | 570 | static void fn_show_state(struct vc_data *vc) |
569 | { | 571 | { |
570 | show_state(); | 572 | show_state(); |
571 | } | 573 | } |
572 | 574 | ||
573 | static void fn_boot_it(struct vc_data *vc, struct pt_regs *regs) | 575 | static void fn_boot_it(struct vc_data *vc) |
574 | { | 576 | { |
575 | ctrl_alt_del(); | 577 | ctrl_alt_del(); |
576 | } | 578 | } |
577 | 579 | ||
578 | static void fn_compose(struct vc_data *vc, struct pt_regs *regs) | 580 | static void fn_compose(struct vc_data *vc) |
579 | { | 581 | { |
580 | dead_key_next = 1; | 582 | dead_key_next = 1; |
581 | } | 583 | } |
582 | 584 | ||
583 | static void fn_spawn_con(struct vc_data *vc, struct pt_regs *regs) | 585 | static void fn_spawn_con(struct vc_data *vc) |
584 | { | 586 | { |
585 | spin_lock(&vt_spawn_con.lock); | 587 | spin_lock(&vt_spawn_con.lock); |
586 | if (vt_spawn_con.pid) | 588 | if (vt_spawn_con.pid) |
@@ -591,7 +593,7 @@ static void fn_spawn_con(struct vc_data *vc, struct pt_regs *regs) | |||
591 | spin_unlock(&vt_spawn_con.lock); | 593 | spin_unlock(&vt_spawn_con.lock); |
592 | } | 594 | } |
593 | 595 | ||
594 | static void fn_SAK(struct vc_data *vc, struct pt_regs *regs) | 596 | static void fn_SAK(struct vc_data *vc) |
595 | { | 597 | { |
596 | struct tty_struct *tty = vc->vc_tty; | 598 | struct tty_struct *tty = vc->vc_tty; |
597 | 599 | ||
@@ -604,7 +606,7 @@ static void fn_SAK(struct vc_data *vc, struct pt_regs *regs) | |||
604 | reset_vc(vc); | 606 | reset_vc(vc); |
605 | } | 607 | } |
606 | 608 | ||
607 | static void fn_null(struct vc_data *vc, struct pt_regs *regs) | 609 | static void fn_null(struct vc_data *vc) |
608 | { | 610 | { |
609 | compute_shiftstate(); | 611 | compute_shiftstate(); |
610 | } | 612 | } |
@@ -612,11 +614,11 @@ static void fn_null(struct vc_data *vc, struct pt_regs *regs) | |||
612 | /* | 614 | /* |
613 | * Special key handlers | 615 | * Special key handlers |
614 | */ | 616 | */ |
615 | static void k_ignore(struct vc_data *vc, unsigned char value, char up_flag, struct pt_regs *regs) | 617 | static void k_ignore(struct vc_data *vc, unsigned char value, char up_flag) |
616 | { | 618 | { |
617 | } | 619 | } |
618 | 620 | ||
619 | static void k_spec(struct vc_data *vc, unsigned char value, char up_flag, struct pt_regs *regs) | 621 | static void k_spec(struct vc_data *vc, unsigned char value, char up_flag) |
620 | { | 622 | { |
621 | if (up_flag) | 623 | if (up_flag) |
622 | return; | 624 | return; |
@@ -626,15 +628,15 @@ static void k_spec(struct vc_data *vc, unsigned char value, char up_flag, struct | |||
626 | kbd->kbdmode == VC_MEDIUMRAW) && | 628 | kbd->kbdmode == VC_MEDIUMRAW) && |
627 | value != KVAL(K_SAK)) | 629 | value != KVAL(K_SAK)) |
628 | return; /* SAK is allowed even in raw mode */ | 630 | return; /* SAK is allowed even in raw mode */ |
629 | fn_handler[value](vc, regs); | 631 | fn_handler[value](vc); |
630 | } | 632 | } |
631 | 633 | ||
632 | static void k_lowercase(struct vc_data *vc, unsigned char value, char up_flag, struct pt_regs *regs) | 634 | static void k_lowercase(struct vc_data *vc, unsigned char value, char up_flag) |
633 | { | 635 | { |
634 | printk(KERN_ERR "keyboard.c: k_lowercase was called - impossible\n"); | 636 | printk(KERN_ERR "keyboard.c: k_lowercase was called - impossible\n"); |
635 | } | 637 | } |
636 | 638 | ||
637 | static void k_unicode(struct vc_data *vc, unsigned int value, char up_flag, struct pt_regs *regs) | 639 | static void k_unicode(struct vc_data *vc, unsigned int value, char up_flag) |
638 | { | 640 | { |
639 | if (up_flag) | 641 | if (up_flag) |
640 | return; /* no action, if this is a key release */ | 642 | return; /* no action, if this is a key release */ |
@@ -658,41 +660,41 @@ static void k_unicode(struct vc_data *vc, unsigned int value, char up_flag, stru | |||
658 | * dead keys modifying the same character. Very useful | 660 | * dead keys modifying the same character. Very useful |
659 | * for Vietnamese. | 661 | * for Vietnamese. |
660 | */ | 662 | */ |
661 | static void k_deadunicode(struct vc_data *vc, unsigned int value, char up_flag, struct pt_regs *regs) | 663 | static void k_deadunicode(struct vc_data *vc, unsigned int value, char up_flag) |
662 | { | 664 | { |
663 | if (up_flag) | 665 | if (up_flag) |
664 | return; | 666 | return; |
665 | diacr = (diacr ? handle_diacr(vc, value) : value); | 667 | diacr = (diacr ? handle_diacr(vc, value) : value); |
666 | } | 668 | } |
667 | 669 | ||
668 | static void k_self(struct vc_data *vc, unsigned char value, char up_flag, struct pt_regs *regs) | 670 | static void k_self(struct vc_data *vc, unsigned char value, char up_flag) |
669 | { | 671 | { |
670 | k_unicode(vc, value, up_flag, regs); | 672 | k_unicode(vc, value, up_flag); |
671 | } | 673 | } |
672 | 674 | ||
673 | static void k_dead2(struct vc_data *vc, unsigned char value, char up_flag, struct pt_regs *regs) | 675 | static void k_dead2(struct vc_data *vc, unsigned char value, char up_flag) |
674 | { | 676 | { |
675 | k_deadunicode(vc, value, up_flag, regs); | 677 | k_deadunicode(vc, value, up_flag); |
676 | } | 678 | } |
677 | 679 | ||
678 | /* | 680 | /* |
679 | * Obsolete - for backwards compatibility only | 681 | * Obsolete - for backwards compatibility only |
680 | */ | 682 | */ |
681 | static void k_dead(struct vc_data *vc, unsigned char value, char up_flag, struct pt_regs *regs) | 683 | static void k_dead(struct vc_data *vc, unsigned char value, char up_flag) |
682 | { | 684 | { |
683 | static const unsigned char ret_diacr[NR_DEAD] = {'`', '\'', '^', '~', '"', ',' }; | 685 | static const unsigned char ret_diacr[NR_DEAD] = {'`', '\'', '^', '~', '"', ',' }; |
684 | value = ret_diacr[value]; | 686 | value = ret_diacr[value]; |
685 | k_deadunicode(vc, value, up_flag, regs); | 687 | k_deadunicode(vc, value, up_flag); |
686 | } | 688 | } |
687 | 689 | ||
688 | static void k_cons(struct vc_data *vc, unsigned char value, char up_flag, struct pt_regs *regs) | 690 | static void k_cons(struct vc_data *vc, unsigned char value, char up_flag) |
689 | { | 691 | { |
690 | if (up_flag) | 692 | if (up_flag) |
691 | return; | 693 | return; |
692 | set_console(value); | 694 | set_console(value); |
693 | } | 695 | } |
694 | 696 | ||
695 | static void k_fn(struct vc_data *vc, unsigned char value, char up_flag, struct pt_regs *regs) | 697 | static void k_fn(struct vc_data *vc, unsigned char value, char up_flag) |
696 | { | 698 | { |
697 | unsigned v; | 699 | unsigned v; |
698 | 700 | ||
@@ -706,7 +708,7 @@ static void k_fn(struct vc_data *vc, unsigned char value, char up_flag, struct p | |||
706 | printk(KERN_ERR "k_fn called with value=%d\n", value); | 708 | printk(KERN_ERR "k_fn called with value=%d\n", value); |
707 | } | 709 | } |
708 | 710 | ||
709 | static void k_cur(struct vc_data *vc, unsigned char value, char up_flag, struct pt_regs *regs) | 711 | static void k_cur(struct vc_data *vc, unsigned char value, char up_flag) |
710 | { | 712 | { |
711 | static const char *cur_chars = "BDCA"; | 713 | static const char *cur_chars = "BDCA"; |
712 | 714 | ||
@@ -715,7 +717,7 @@ static void k_cur(struct vc_data *vc, unsigned char value, char up_flag, struct | |||
715 | applkey(vc, cur_chars[value], vc_kbd_mode(kbd, VC_CKMODE)); | 717 | applkey(vc, cur_chars[value], vc_kbd_mode(kbd, VC_CKMODE)); |
716 | } | 718 | } |
717 | 719 | ||
718 | static void k_pad(struct vc_data *vc, unsigned char value, char up_flag, struct pt_regs *regs) | 720 | static void k_pad(struct vc_data *vc, unsigned char value, char up_flag) |
719 | { | 721 | { |
720 | static const char pad_chars[] = "0123456789+-*/\015,.?()#"; | 722 | static const char pad_chars[] = "0123456789+-*/\015,.?()#"; |
721 | static const char app_map[] = "pqrstuvwxylSRQMnnmPQS"; | 723 | static const char app_map[] = "pqrstuvwxylSRQMnnmPQS"; |
@@ -733,34 +735,34 @@ static void k_pad(struct vc_data *vc, unsigned char value, char up_flag, struct | |||
733 | switch (value) { | 735 | switch (value) { |
734 | case KVAL(K_PCOMMA): | 736 | case KVAL(K_PCOMMA): |
735 | case KVAL(K_PDOT): | 737 | case KVAL(K_PDOT): |
736 | k_fn(vc, KVAL(K_REMOVE), 0, regs); | 738 | k_fn(vc, KVAL(K_REMOVE), 0); |
737 | return; | 739 | return; |
738 | case KVAL(K_P0): | 740 | case KVAL(K_P0): |
739 | k_fn(vc, KVAL(K_INSERT), 0, regs); | 741 | k_fn(vc, KVAL(K_INSERT), 0); |
740 | return; | 742 | return; |
741 | case KVAL(K_P1): | 743 | case KVAL(K_P1): |
742 | k_fn(vc, KVAL(K_SELECT), 0, regs); | 744 | k_fn(vc, KVAL(K_SELECT), 0); |
743 | return; | 745 | return; |
744 | case KVAL(K_P2): | 746 | case KVAL(K_P2): |
745 | k_cur(vc, KVAL(K_DOWN), 0, regs); | 747 | k_cur(vc, KVAL(K_DOWN), 0); |
746 | return; | 748 | return; |
747 | case KVAL(K_P3): | 749 | case KVAL(K_P3): |
748 | k_fn(vc, KVAL(K_PGDN), 0, regs); | 750 | k_fn(vc, KVAL(K_PGDN), 0); |
749 | return; | 751 | return; |
750 | case KVAL(K_P4): | 752 | case KVAL(K_P4): |
751 | k_cur(vc, KVAL(K_LEFT), 0, regs); | 753 | k_cur(vc, KVAL(K_LEFT), 0); |
752 | return; | 754 | return; |
753 | case KVAL(K_P6): | 755 | case KVAL(K_P6): |
754 | k_cur(vc, KVAL(K_RIGHT), 0, regs); | 756 | k_cur(vc, KVAL(K_RIGHT), 0); |
755 | return; | 757 | return; |
756 | case KVAL(K_P7): | 758 | case KVAL(K_P7): |
757 | k_fn(vc, KVAL(K_FIND), 0, regs); | 759 | k_fn(vc, KVAL(K_FIND), 0); |
758 | return; | 760 | return; |
759 | case KVAL(K_P8): | 761 | case KVAL(K_P8): |
760 | k_cur(vc, KVAL(K_UP), 0, regs); | 762 | k_cur(vc, KVAL(K_UP), 0); |
761 | return; | 763 | return; |
762 | case KVAL(K_P9): | 764 | case KVAL(K_P9): |
763 | k_fn(vc, KVAL(K_PGUP), 0, regs); | 765 | k_fn(vc, KVAL(K_PGUP), 0); |
764 | return; | 766 | return; |
765 | case KVAL(K_P5): | 767 | case KVAL(K_P5): |
766 | applkey(vc, 'G', vc_kbd_mode(kbd, VC_APPLIC)); | 768 | applkey(vc, 'G', vc_kbd_mode(kbd, VC_APPLIC)); |
@@ -772,7 +774,7 @@ static void k_pad(struct vc_data *vc, unsigned char value, char up_flag, struct | |||
772 | put_queue(vc, 10); | 774 | put_queue(vc, 10); |
773 | } | 775 | } |
774 | 776 | ||
775 | static void k_shift(struct vc_data *vc, unsigned char value, char up_flag, struct pt_regs *regs) | 777 | static void k_shift(struct vc_data *vc, unsigned char value, char up_flag) |
776 | { | 778 | { |
777 | int old_state = shift_state; | 779 | int old_state = shift_state; |
778 | 780 | ||
@@ -813,7 +815,7 @@ static void k_shift(struct vc_data *vc, unsigned char value, char up_flag, struc | |||
813 | } | 815 | } |
814 | } | 816 | } |
815 | 817 | ||
816 | static void k_meta(struct vc_data *vc, unsigned char value, char up_flag, struct pt_regs *regs) | 818 | static void k_meta(struct vc_data *vc, unsigned char value, char up_flag) |
817 | { | 819 | { |
818 | if (up_flag) | 820 | if (up_flag) |
819 | return; | 821 | return; |
@@ -825,7 +827,7 @@ static void k_meta(struct vc_data *vc, unsigned char value, char up_flag, struct | |||
825 | put_queue(vc, value | 0x80); | 827 | put_queue(vc, value | 0x80); |
826 | } | 828 | } |
827 | 829 | ||
828 | static void k_ascii(struct vc_data *vc, unsigned char value, char up_flag, struct pt_regs *regs) | 830 | static void k_ascii(struct vc_data *vc, unsigned char value, char up_flag) |
829 | { | 831 | { |
830 | int base; | 832 | int base; |
831 | 833 | ||
@@ -847,16 +849,16 @@ static void k_ascii(struct vc_data *vc, unsigned char value, char up_flag, struc | |||
847 | npadch = npadch * base + value; | 849 | npadch = npadch * base + value; |
848 | } | 850 | } |
849 | 851 | ||
850 | static void k_lock(struct vc_data *vc, unsigned char value, char up_flag, struct pt_regs *regs) | 852 | static void k_lock(struct vc_data *vc, unsigned char value, char up_flag) |
851 | { | 853 | { |
852 | if (up_flag || rep) | 854 | if (up_flag || rep) |
853 | return; | 855 | return; |
854 | chg_vc_kbd_lock(kbd, value); | 856 | chg_vc_kbd_lock(kbd, value); |
855 | } | 857 | } |
856 | 858 | ||
857 | static void k_slock(struct vc_data *vc, unsigned char value, char up_flag, struct pt_regs *regs) | 859 | static void k_slock(struct vc_data *vc, unsigned char value, char up_flag) |
858 | { | 860 | { |
859 | k_shift(vc, value, up_flag, regs); | 861 | k_shift(vc, value, up_flag); |
860 | if (up_flag || rep) | 862 | if (up_flag || rep) |
861 | return; | 863 | return; |
862 | chg_vc_kbd_slock(kbd, value); | 864 | chg_vc_kbd_slock(kbd, value); |
@@ -876,25 +878,25 @@ static unsigned brl_nbchords = 1; | |||
876 | MODULE_PARM_DESC(brl_nbchords, "Number of chords that produce a braille pattern (0 for dead chords)"); | 878 | MODULE_PARM_DESC(brl_nbchords, "Number of chords that produce a braille pattern (0 for dead chords)"); |
877 | module_param(brl_nbchords, uint, 0644); | 879 | module_param(brl_nbchords, uint, 0644); |
878 | 880 | ||
879 | static void k_brlcommit(struct vc_data *vc, unsigned int pattern, char up_flag, struct pt_regs *regs) | 881 | static void k_brlcommit(struct vc_data *vc, unsigned int pattern, char up_flag) |
880 | { | 882 | { |
881 | static unsigned long chords; | 883 | static unsigned long chords; |
882 | static unsigned committed; | 884 | static unsigned committed; |
883 | 885 | ||
884 | if (!brl_nbchords) | 886 | if (!brl_nbchords) |
885 | k_deadunicode(vc, BRL_UC_ROW | pattern, up_flag, regs); | 887 | k_deadunicode(vc, BRL_UC_ROW | pattern, up_flag); |
886 | else { | 888 | else { |
887 | committed |= pattern; | 889 | committed |= pattern; |
888 | chords++; | 890 | chords++; |
889 | if (chords == brl_nbchords) { | 891 | if (chords == brl_nbchords) { |
890 | k_unicode(vc, BRL_UC_ROW | committed, up_flag, regs); | 892 | k_unicode(vc, BRL_UC_ROW | committed, up_flag); |
891 | chords = 0; | 893 | chords = 0; |
892 | committed = 0; | 894 | committed = 0; |
893 | } | 895 | } |
894 | } | 896 | } |
895 | } | 897 | } |
896 | 898 | ||
897 | static void k_brl(struct vc_data *vc, unsigned char value, char up_flag, struct pt_regs *regs) | 899 | static void k_brl(struct vc_data *vc, unsigned char value, char up_flag) |
898 | { | 900 | { |
899 | static unsigned pressed,committing; | 901 | static unsigned pressed,committing; |
900 | static unsigned long releasestart; | 902 | static unsigned long releasestart; |
@@ -906,7 +908,7 @@ static void k_brl(struct vc_data *vc, unsigned char value, char up_flag, struct | |||
906 | } | 908 | } |
907 | 909 | ||
908 | if (!value) { | 910 | if (!value) { |
909 | k_unicode(vc, BRL_UC_ROW, up_flag, regs); | 911 | k_unicode(vc, BRL_UC_ROW, up_flag); |
910 | return; | 912 | return; |
911 | } | 913 | } |
912 | 914 | ||
@@ -923,13 +925,13 @@ static void k_brl(struct vc_data *vc, unsigned char value, char up_flag, struct | |||
923 | pressed &= ~(1 << (value - 1)); | 925 | pressed &= ~(1 << (value - 1)); |
924 | if (!pressed) { | 926 | if (!pressed) { |
925 | if (committing) { | 927 | if (committing) { |
926 | k_brlcommit(vc, committing, 0, regs); | 928 | k_brlcommit(vc, committing, 0); |
927 | committing = 0; | 929 | committing = 0; |
928 | } | 930 | } |
929 | } | 931 | } |
930 | } else { | 932 | } else { |
931 | if (committing) { | 933 | if (committing) { |
932 | k_brlcommit(vc, committing, 0, regs); | 934 | k_brlcommit(vc, committing, 0); |
933 | committing = 0; | 935 | committing = 0; |
934 | } | 936 | } |
935 | pressed &= ~(1 << (value - 1)); | 937 | pressed &= ~(1 << (value - 1)); |
@@ -1133,8 +1135,7 @@ static void kbd_rawcode(unsigned char data) | |||
1133 | put_queue(vc, data); | 1135 | put_queue(vc, data); |
1134 | } | 1136 | } |
1135 | 1137 | ||
1136 | static void kbd_keycode(unsigned int keycode, int down, | 1138 | static void kbd_keycode(unsigned int keycode, int down, int hw_raw) |
1137 | int hw_raw, struct pt_regs *regs) | ||
1138 | { | 1139 | { |
1139 | struct vc_data *vc = vc_cons[fg_console].d; | 1140 | struct vc_data *vc = vc_cons[fg_console].d; |
1140 | unsigned short keysym, *key_map; | 1141 | unsigned short keysym, *key_map; |
@@ -1181,7 +1182,7 @@ static void kbd_keycode(unsigned int keycode, int down, | |||
1181 | if (sysrq_down && !down && keycode == sysrq_alt_use) | 1182 | if (sysrq_down && !down && keycode == sysrq_alt_use) |
1182 | sysrq_down = 0; | 1183 | sysrq_down = 0; |
1183 | if (sysrq_down && down && !rep) { | 1184 | if (sysrq_down && down && !rep) { |
1184 | handle_sysrq(kbd_sysrq_xlate[keycode], regs, tty); | 1185 | handle_sysrq(kbd_sysrq_xlate[keycode], tty); |
1185 | return; | 1186 | return; |
1186 | } | 1187 | } |
1187 | #endif | 1188 | #endif |
@@ -1267,7 +1268,7 @@ static void kbd_keycode(unsigned int keycode, int down, | |||
1267 | } | 1268 | } |
1268 | } | 1269 | } |
1269 | 1270 | ||
1270 | (*k_handler[type])(vc, keysym & 0xff, !down, regs); | 1271 | (*k_handler[type])(vc, keysym & 0xff, !down); |
1271 | 1272 | ||
1272 | if (type != KT_SLOCK) | 1273 | if (type != KT_SLOCK) |
1273 | kbd->slockstate = 0; | 1274 | kbd->slockstate = 0; |
@@ -1279,7 +1280,7 @@ static void kbd_event(struct input_handle *handle, unsigned int event_type, | |||
1279 | if (event_type == EV_MSC && event_code == MSC_RAW && HW_RAW(handle->dev)) | 1280 | if (event_type == EV_MSC && event_code == MSC_RAW && HW_RAW(handle->dev)) |
1280 | kbd_rawcode(value); | 1281 | kbd_rawcode(value); |
1281 | if (event_type == EV_KEY) | 1282 | if (event_type == EV_KEY) |
1282 | kbd_keycode(event_code, value, HW_RAW(handle->dev), handle->dev->regs); | 1283 | kbd_keycode(event_code, value, HW_RAW(handle->dev)); |
1283 | tasklet_schedule(&keyboard_tasklet); | 1284 | tasklet_schedule(&keyboard_tasklet); |
1284 | do_poke_blanked_console = 1; | 1285 | do_poke_blanked_console = 1; |
1285 | schedule_console_callback(); | 1286 | schedule_console_callback(); |
diff --git a/drivers/char/mbcs.c b/drivers/char/mbcs.c index 636354722658..0afb7ba999cf 100644 --- a/drivers/char/mbcs.c +++ b/drivers/char/mbcs.c | |||
@@ -516,11 +516,10 @@ int mbcs_gscr_mmap(struct file *fp, struct vm_area_struct *vma) | |||
516 | * mbcs_completion_intr_handler - Primary completion handler. | 516 | * mbcs_completion_intr_handler - Primary completion handler. |
517 | * @irq: irq | 517 | * @irq: irq |
518 | * @arg: soft struct for device | 518 | * @arg: soft struct for device |
519 | * @ep: regs | ||
520 | * | 519 | * |
521 | */ | 520 | */ |
522 | static irqreturn_t | 521 | static irqreturn_t |
523 | mbcs_completion_intr_handler(int irq, void *arg, struct pt_regs *ep) | 522 | mbcs_completion_intr_handler(int irq, void *arg) |
524 | { | 523 | { |
525 | struct mbcs_soft *soft = (struct mbcs_soft *)arg; | 524 | struct mbcs_soft *soft = (struct mbcs_soft *)arg; |
526 | void *mmr_base; | 525 | void *mmr_base; |
diff --git a/drivers/char/mmtimer.c b/drivers/char/mmtimer.c index 1f0f2b6dae26..22b9905c1e52 100644 --- a/drivers/char/mmtimer.c +++ b/drivers/char/mmtimer.c | |||
@@ -422,7 +422,6 @@ static int inline reschedule_periodic_timer(mmtimer_t *x) | |||
422 | * mmtimer_interrupt - timer interrupt handler | 422 | * mmtimer_interrupt - timer interrupt handler |
423 | * @irq: irq received | 423 | * @irq: irq received |
424 | * @dev_id: device the irq came from | 424 | * @dev_id: device the irq came from |
425 | * @regs: register state upon receipt of the interrupt | ||
426 | * | 425 | * |
427 | * Called when one of the comarators matches the counter, This | 426 | * Called when one of the comarators matches the counter, This |
428 | * routine will send signals to processes that have requested | 427 | * routine will send signals to processes that have requested |
@@ -433,7 +432,7 @@ static int inline reschedule_periodic_timer(mmtimer_t *x) | |||
433 | * registers. | 432 | * registers. |
434 | */ | 433 | */ |
435 | static irqreturn_t | 434 | static irqreturn_t |
436 | mmtimer_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 435 | mmtimer_interrupt(int irq, void *dev_id) |
437 | { | 436 | { |
438 | int i; | 437 | int i; |
439 | unsigned long expires = 0; | 438 | unsigned long expires = 0; |
diff --git a/drivers/char/mwave/tp3780i.c b/drivers/char/mwave/tp3780i.c index cc3e54dd7234..f282976daaac 100644 --- a/drivers/char/mwave/tp3780i.c +++ b/drivers/char/mwave/tp3780i.c | |||
@@ -95,14 +95,14 @@ static void EnableSRAM(THINKPAD_BD_DATA * pBDData) | |||
95 | } | 95 | } |
96 | 96 | ||
97 | 97 | ||
98 | static irqreturn_t UartInterrupt(int irq, void *dev_id, struct pt_regs *regs) | 98 | static irqreturn_t UartInterrupt(int irq, void *dev_id) |
99 | { | 99 | { |
100 | PRINTK_3(TRACE_TP3780I, | 100 | PRINTK_3(TRACE_TP3780I, |
101 | "tp3780i::UartInterrupt entry irq %x dev_id %p\n", irq, dev_id); | 101 | "tp3780i::UartInterrupt entry irq %x dev_id %p\n", irq, dev_id); |
102 | return IRQ_HANDLED; | 102 | return IRQ_HANDLED; |
103 | } | 103 | } |
104 | 104 | ||
105 | static irqreturn_t DspInterrupt(int irq, void *dev_id, struct pt_regs *regs) | 105 | static irqreturn_t DspInterrupt(int irq, void *dev_id) |
106 | { | 106 | { |
107 | pMWAVE_DEVICE_DATA pDrvData = &mwave_s_mdd; | 107 | pMWAVE_DEVICE_DATA pDrvData = &mwave_s_mdd; |
108 | DSP_3780I_CONFIG_SETTINGS *pSettings = &pDrvData->rBDData.rDspSettings; | 108 | DSP_3780I_CONFIG_SETTINGS *pSettings = &pDrvData->rBDData.rDspSettings; |
diff --git a/drivers/char/mxser.c b/drivers/char/mxser.c index 8253fca8efd5..048d91142c17 100644 --- a/drivers/char/mxser.c +++ b/drivers/char/mxser.c | |||
@@ -407,7 +407,7 @@ static void mxser_stop(struct tty_struct *); | |||
407 | static void mxser_start(struct tty_struct *); | 407 | static void mxser_start(struct tty_struct *); |
408 | static void mxser_hangup(struct tty_struct *); | 408 | static void mxser_hangup(struct tty_struct *); |
409 | static void mxser_rs_break(struct tty_struct *, int); | 409 | static void mxser_rs_break(struct tty_struct *, int); |
410 | static irqreturn_t mxser_interrupt(int, void *, struct pt_regs *); | 410 | static irqreturn_t mxser_interrupt(int, void *); |
411 | static void mxser_receive_chars(struct mxser_struct *, int *); | 411 | static void mxser_receive_chars(struct mxser_struct *, int *); |
412 | static void mxser_transmit_chars(struct mxser_struct *); | 412 | static void mxser_transmit_chars(struct mxser_struct *); |
413 | static void mxser_check_modem_status(struct mxser_struct *, int); | 413 | static void mxser_check_modem_status(struct mxser_struct *, int); |
@@ -1916,7 +1916,7 @@ static void mxser_rs_break(struct tty_struct *tty, int break_state) | |||
1916 | /* | 1916 | /* |
1917 | * This is the serial driver's generic interrupt routine | 1917 | * This is the serial driver's generic interrupt routine |
1918 | */ | 1918 | */ |
1919 | static irqreturn_t mxser_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 1919 | static irqreturn_t mxser_interrupt(int irq, void *dev_id) |
1920 | { | 1920 | { |
1921 | int status, iir, i; | 1921 | int status, iir, i; |
1922 | struct mxser_struct *info; | 1922 | struct mxser_struct *info; |
diff --git a/drivers/char/nwbutton.c b/drivers/char/nwbutton.c index ea1aa7764f8e..2d264971d839 100644 --- a/drivers/char/nwbutton.c +++ b/drivers/char/nwbutton.c | |||
@@ -144,7 +144,7 @@ static void button_sequence_finished (unsigned long parameters) | |||
144 | * increments the counter. | 144 | * increments the counter. |
145 | */ | 145 | */ |
146 | 146 | ||
147 | static irqreturn_t button_handler (int irq, void *dev_id, struct pt_regs *regs) | 147 | static irqreturn_t button_handler (int irq, void *dev_id) |
148 | { | 148 | { |
149 | if (button_press_count) { | 149 | if (button_press_count) { |
150 | del_timer (&button_timer); | 150 | del_timer (&button_timer); |
diff --git a/drivers/char/nwbutton.h b/drivers/char/nwbutton.h index ddb7b928dcbb..c3ebc16ce8a7 100644 --- a/drivers/char/nwbutton.h +++ b/drivers/char/nwbutton.h | |||
@@ -25,7 +25,7 @@ struct button_callback { | |||
25 | /* Function prototypes: */ | 25 | /* Function prototypes: */ |
26 | 26 | ||
27 | static void button_sequence_finished (unsigned long parameters); | 27 | static void button_sequence_finished (unsigned long parameters); |
28 | static irqreturn_t button_handler (int irq, void *dev_id, struct pt_regs *regs); | 28 | static irqreturn_t button_handler (int irq, void *dev_id); |
29 | int button_init (void); | 29 | int button_init (void); |
30 | int button_add_callback (void (*callback) (void), int count); | 30 | int button_add_callback (void (*callback) (void), int count); |
31 | int button_del_callback (void (*callback) (void)); | 31 | int button_del_callback (void (*callback) (void)); |
diff --git a/drivers/char/pcmcia/synclink_cs.c b/drivers/char/pcmcia/synclink_cs.c index 73e324209913..1a0bc30b79d1 100644 --- a/drivers/char/pcmcia/synclink_cs.c +++ b/drivers/char/pcmcia/synclink_cs.c | |||
@@ -416,7 +416,7 @@ static void rx_reset_buffers(MGSLPC_INFO *info); | |||
416 | static int rx_alloc_buffers(MGSLPC_INFO *info); | 416 | static int rx_alloc_buffers(MGSLPC_INFO *info); |
417 | static void rx_free_buffers(MGSLPC_INFO *info); | 417 | static void rx_free_buffers(MGSLPC_INFO *info); |
418 | 418 | ||
419 | static irqreturn_t mgslpc_isr(int irq, void *dev_id, struct pt_regs * regs); | 419 | static irqreturn_t mgslpc_isr(int irq, void *dev_id); |
420 | 420 | ||
421 | /* | 421 | /* |
422 | * Bottom half interrupt handlers | 422 | * Bottom half interrupt handlers |
@@ -1234,9 +1234,8 @@ static void ri_change(MGSLPC_INFO *info) | |||
1234 | * | 1234 | * |
1235 | * irq interrupt number that caused interrupt | 1235 | * irq interrupt number that caused interrupt |
1236 | * dev_id device ID supplied during interrupt registration | 1236 | * dev_id device ID supplied during interrupt registration |
1237 | * regs interrupted processor context | ||
1238 | */ | 1237 | */ |
1239 | static irqreturn_t mgslpc_isr(int irq, void *dev_id, struct pt_regs * regs) | 1238 | static irqreturn_t mgslpc_isr(int irq, void *dev_id) |
1240 | { | 1239 | { |
1241 | MGSLPC_INFO * info = (MGSLPC_INFO *)dev_id; | 1240 | MGSLPC_INFO * info = (MGSLPC_INFO *)dev_id; |
1242 | unsigned short isr; | 1241 | unsigned short isr; |
diff --git a/drivers/char/ppdev.c b/drivers/char/ppdev.c index 520d2cf82bc0..efc485edad1c 100644 --- a/drivers/char/ppdev.c +++ b/drivers/char/ppdev.c | |||
@@ -269,7 +269,7 @@ static ssize_t pp_write (struct file * file, const char __user * buf, | |||
269 | return bytes_written; | 269 | return bytes_written; |
270 | } | 270 | } |
271 | 271 | ||
272 | static void pp_irq (int irq, void * private, struct pt_regs * unused) | 272 | static void pp_irq (int irq, void * private) |
273 | { | 273 | { |
274 | struct pp_struct * pp = (struct pp_struct *) private; | 274 | struct pp_struct * pp = (struct pp_struct *) private; |
275 | 275 | ||
diff --git a/drivers/char/qtronix.c b/drivers/char/qtronix.c deleted file mode 100644 index 9d134e98d2a0..000000000000 --- a/drivers/char/qtronix.c +++ /dev/null | |||
@@ -1,605 +0,0 @@ | |||
1 | /* | ||
2 | * | ||
3 | * BRIEF MODULE DESCRIPTION | ||
4 | * Qtronix 990P infrared keyboard driver. | ||
5 | * | ||
6 | * | ||
7 | * Copyright 2001 MontaVista Software Inc. | ||
8 | * Author: MontaVista Software, Inc. | ||
9 | * ppopov@mvista.com or source@mvista.com | ||
10 | * | ||
11 | * | ||
12 | * The bottom portion of this driver was take from | ||
13 | * pc_keyb.c Please see that file for copyrights. | ||
14 | * | ||
15 | * This program is free software; you can redistribute it and/or modify it | ||
16 | * under the terms of the GNU General Public License as published by the | ||
17 | * Free Software Foundation; either version 2 of the License, or (at your | ||
18 | * option) any later version. | ||
19 | * | ||
20 | * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED | ||
21 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF | ||
22 | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN | ||
23 | * NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, | ||
24 | * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT | ||
25 | * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF | ||
26 | * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON | ||
27 | * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT | ||
28 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF | ||
29 | * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||
30 | * | ||
31 | * You should have received a copy of the GNU General Public License along | ||
32 | * with this program; if not, write to the Free Software Foundation, Inc., | ||
33 | * 675 Mass Ave, Cambridge, MA 02139, USA. | ||
34 | */ | ||
35 | |||
36 | |||
37 | /* | ||
38 | * NOTE: | ||
39 | * | ||
40 | * This driver has only been tested with the Consumer IR | ||
41 | * port of the ITE 8172 system controller. | ||
42 | * | ||
43 | * You do not need this driver if you are using the ps/2 or | ||
44 | * USB adapter that the keyboard ships with. You only need | ||
45 | * this driver if your board has a IR port and the keyboard | ||
46 | * data is being sent directly to the IR. In that case, | ||
47 | * you also need some low-level IR support. See it8172_cir.c. | ||
48 | * | ||
49 | */ | ||
50 | |||
51 | #ifdef CONFIG_QTRONIX_KEYBOARD | ||
52 | |||
53 | #include <linux/module.h> | ||
54 | #include <linux/types.h> | ||
55 | #include <linux/pci.h> | ||
56 | #include <linux/kernel.h> | ||
57 | |||
58 | #include <asm/it8172/it8172.h> | ||
59 | #include <asm/it8172/it8172_int.h> | ||
60 | #include <asm/it8172/it8172_cir.h> | ||
61 | |||
62 | #include <linux/spinlock.h> | ||
63 | #include <linux/sched.h> | ||
64 | #include <linux/interrupt.h> | ||
65 | #include <linux/tty.h> | ||
66 | #include <linux/mm.h> | ||
67 | #include <linux/signal.h> | ||
68 | #include <linux/init.h> | ||
69 | #include <linux/kbd_ll.h> | ||
70 | #include <linux/delay.h> | ||
71 | #include <linux/poll.h> | ||
72 | #include <linux/miscdevice.h> | ||
73 | #include <linux/slab.h> | ||
74 | #include <linux/kbd_kern.h> | ||
75 | #include <linux/smp_lock.h> | ||
76 | #include <asm/io.h> | ||
77 | #include <linux/pc_keyb.h> | ||
78 | |||
79 | #include <asm/keyboard.h> | ||
80 | #include <linux/bitops.h> | ||
81 | #include <asm/uaccess.h> | ||
82 | #include <asm/irq.h> | ||
83 | #include <asm/system.h> | ||
84 | |||
85 | #define leading1 0 | ||
86 | #define leading2 0xF | ||
87 | |||
88 | #define KBD_CIR_PORT 0 | ||
89 | #define AUX_RECONNECT 170 /* scancode when ps2 device is plugged (back) in */ | ||
90 | |||
91 | static int data_index; | ||
92 | struct cir_port *cir; | ||
93 | static unsigned char kbdbytes[5]; | ||
94 | static unsigned char cir_data[32]; /* we only need 16 chars */ | ||
95 | |||
96 | static void kbd_int_handler(int irq, void *dev_id, struct pt_regs *regs); | ||
97 | static int handle_data(unsigned char *p_data); | ||
98 | static inline void handle_mouse_event(unsigned char scancode); | ||
99 | static inline void handle_keyboard_event(unsigned char scancode, int down); | ||
100 | static int __init psaux_init(void); | ||
101 | |||
102 | static struct aux_queue *queue; /* Mouse data buffer. */ | ||
103 | static int aux_count = 0; | ||
104 | |||
105 | /* | ||
106 | * Keys accessed through the 'Fn' key | ||
107 | * The Fn key does not produce a key-up sequence. So, the first | ||
108 | * time the user presses it, it will be key-down event. The key | ||
109 | * stays down until the user presses it again. | ||
110 | */ | ||
111 | #define NUM_FN_KEYS 56 | ||
112 | static unsigned char fn_keys[NUM_FN_KEYS] = { | ||
113 | 0,0,0,0,0,0,0,0, /* 0 7 */ | ||
114 | 8,9,10,93,0,0,0,0, /* 8 15 */ | ||
115 | 0,0,0,0,0,0,0,5, /* 16 23 */ | ||
116 | 6,7,91,0,0,0,0,0, /* 24 31 */ | ||
117 | 0,0,0,0,0,2,3,4, /* 32 39 */ | ||
118 | 92,0,0,0,0,0,0,0, /* 40 47 */ | ||
119 | 0,0,0,0,11,0,94,95 /* 48 55 */ | ||
120 | |||
121 | }; | ||
122 | |||
123 | void __init init_qtronix_990P_kbd(void) | ||
124 | { | ||
125 | int retval; | ||
126 | |||
127 | cir = (struct cir_port *)kmalloc(sizeof(struct cir_port), GFP_KERNEL); | ||
128 | if (!cir) { | ||
129 | printk("Unable to initialize Qtronix keyboard\n"); | ||
130 | return; | ||
131 | } | ||
132 | |||
133 | /* | ||
134 | * revisit | ||
135 | * this should be programmable, somehow by the, by the user. | ||
136 | */ | ||
137 | cir->port = KBD_CIR_PORT; | ||
138 | cir->baud_rate = 0x1d; | ||
139 | cir->rdwos = 0; | ||
140 | cir->rxdcr = 0x3; | ||
141 | cir->hcfs = 0; | ||
142 | cir->fifo_tl = 0; | ||
143 | cir->cfq = 0x1d; | ||
144 | cir_port_init(cir); | ||
145 | |||
146 | retval = request_irq(IT8172_CIR0_IRQ, kbd_int_handler, | ||
147 | (unsigned long )(IRQF_DISABLED|IRQF_SHARED), | ||
148 | (const char *)"Qtronix IR Keyboard", (void *)cir); | ||
149 | |||
150 | if (retval) { | ||
151 | printk("unable to allocate cir %d irq %d\n", | ||
152 | cir->port, IT8172_CIR0_IRQ); | ||
153 | } | ||
154 | #ifdef CONFIG_PSMOUSE | ||
155 | psaux_init(); | ||
156 | #endif | ||
157 | } | ||
158 | |||
159 | static inline unsigned char BitReverse(unsigned short key) | ||
160 | { | ||
161 | unsigned char rkey = 0; | ||
162 | rkey |= (key & 0x1) << 7; | ||
163 | rkey |= (key & 0x2) << 5; | ||
164 | rkey |= (key & 0x4) << 3; | ||
165 | rkey |= (key & 0x8) << 1; | ||
166 | rkey |= (key & 0x10) >> 1; | ||
167 | rkey |= (key & 0x20) >> 3; | ||
168 | rkey |= (key & 0x40) >> 5; | ||
169 | rkey |= (key & 0x80) >> 7; | ||
170 | return rkey; | ||
171 | |||
172 | } | ||
173 | |||
174 | |||
175 | static inline u_int8_t UpperByte(u_int8_t data) | ||
176 | { | ||
177 | return (data >> 4); | ||
178 | } | ||
179 | |||
180 | |||
181 | static inline u_int8_t LowerByte(u_int8_t data) | ||
182 | { | ||
183 | return (data & 0xF); | ||
184 | } | ||
185 | |||
186 | |||
187 | int CheckSumOk(u_int8_t byte1, u_int8_t byte2, | ||
188 | u_int8_t byte3, u_int8_t byte4, u_int8_t byte5) | ||
189 | { | ||
190 | u_int8_t CheckSum; | ||
191 | |||
192 | CheckSum = (byte1 & 0x0F) + byte2 + byte3 + byte4 + byte5; | ||
193 | if ( LowerByte(UpperByte(CheckSum) + LowerByte(CheckSum)) != UpperByte(byte1) ) | ||
194 | return 0; | ||
195 | else | ||
196 | return 1; | ||
197 | } | ||
198 | |||
199 | |||
200 | static void kbd_int_handler(int irq, void *dev_id, struct pt_regs *regs) | ||
201 | { | ||
202 | struct cir_port *cir; | ||
203 | int j; | ||
204 | unsigned char int_status; | ||
205 | |||
206 | cir = (struct cir_port *)dev_id; | ||
207 | int_status = get_int_status(cir); | ||
208 | if (int_status & 0x4) { | ||
209 | clear_fifo(cir); | ||
210 | return; | ||
211 | } | ||
212 | |||
213 | while (cir_get_rx_count(cir)) { | ||
214 | |||
215 | cir_data[data_index] = cir_read_data(cir); | ||
216 | |||
217 | if (data_index == 0) {/* expecting first byte */ | ||
218 | if (cir_data[data_index] != leading1) { | ||
219 | //printk("!leading byte %x\n", cir_data[data_index]); | ||
220 | set_rx_active(cir); | ||
221 | clear_fifo(cir); | ||
222 | continue; | ||
223 | } | ||
224 | } | ||
225 | if (data_index == 1) { | ||
226 | if ((cir_data[data_index] & 0xf) != leading2) { | ||
227 | set_rx_active(cir); | ||
228 | data_index = 0; /* start over */ | ||
229 | clear_fifo(cir); | ||
230 | continue; | ||
231 | } | ||
232 | } | ||
233 | |||
234 | if ( (cir_data[data_index] == 0xff)) { /* last byte */ | ||
235 | //printk("data_index %d\n", data_index); | ||
236 | set_rx_active(cir); | ||
237 | #if 0 | ||
238 | for (j=0; j<=data_index; j++) { | ||
239 | printk("rx_data %d: %x\n", j, cir_data[j]); | ||
240 | } | ||
241 | #endif | ||
242 | data_index = 0; | ||
243 | handle_data(cir_data); | ||
244 | return; | ||
245 | } | ||
246 | else if (data_index>16) { | ||
247 | set_rx_active(cir); | ||
248 | #if 0 | ||
249 | printk("warning: data_index %d\n", data_index); | ||
250 | for (j=0; j<=data_index; j++) { | ||
251 | printk("rx_data %d: %x\n", j, cir_data[j]); | ||
252 | } | ||
253 | #endif | ||
254 | data_index = 0; | ||
255 | clear_fifo(cir); | ||
256 | return; | ||
257 | } | ||
258 | data_index++; | ||
259 | } | ||
260 | } | ||
261 | |||
262 | |||
263 | #define NUM_KBD_BYTES 5 | ||
264 | static int handle_data(unsigned char *p_data) | ||
265 | { | ||
266 | u_int32_t bit_bucket; | ||
267 | u_int32_t i, j; | ||
268 | u_int32_t got_bits, next_byte; | ||
269 | int down = 0; | ||
270 | |||
271 | /* Reorganize the bit stream */ | ||
272 | for (i=0; i<16; i++) | ||
273 | p_data[i] = BitReverse(~p_data[i]); | ||
274 | |||
275 | /* | ||
276 | * We've already previously checked that p_data[0] | ||
277 | * is equal to leading1 and that (p_data[1] & 0xf) | ||
278 | * is equal to leading2. These twelve bits are the | ||
279 | * leader code. We can now throw them away (the 12 | ||
280 | * bits) and continue parsing the stream. | ||
281 | */ | ||
282 | bit_bucket = p_data[1] << 12; | ||
283 | got_bits = 4; | ||
284 | next_byte = 2; | ||
285 | |||
286 | /* | ||
287 | * Process four bits at a time | ||
288 | */ | ||
289 | for (i=0; i<NUM_KBD_BYTES; i++) { | ||
290 | |||
291 | kbdbytes[i]=0; | ||
292 | |||
293 | for (j=0; j<8; j++) /* 8 bits per byte */ | ||
294 | { | ||
295 | if (got_bits < 4) { | ||
296 | bit_bucket |= (p_data[next_byte++] << (8 - got_bits)); | ||
297 | got_bits += 8; | ||
298 | } | ||
299 | |||
300 | if ((bit_bucket & 0xF000) == 0x8000) { | ||
301 | /* Convert 1000b to 1 */ | ||
302 | kbdbytes[i] = 0x80 | (kbdbytes[i] >> 1); | ||
303 | got_bits -= 4; | ||
304 | bit_bucket = bit_bucket << 4; | ||
305 | } | ||
306 | else if ((bit_bucket & 0xC000) == 0x8000) { | ||
307 | /* Convert 10b to 0 */ | ||
308 | kbdbytes[i] = kbdbytes[i] >> 1; | ||
309 | got_bits -= 2; | ||
310 | bit_bucket = bit_bucket << 2; | ||
311 | } | ||
312 | else { | ||
313 | /* bad serial stream */ | ||
314 | return 1; | ||
315 | } | ||
316 | |||
317 | if (next_byte > 16) { | ||
318 | //printk("error: too many bytes\n"); | ||
319 | return 1; | ||
320 | } | ||
321 | } | ||
322 | } | ||
323 | |||
324 | |||
325 | if (!CheckSumOk(kbdbytes[0], kbdbytes[1], | ||
326 | kbdbytes[2], kbdbytes[3], kbdbytes[4])) { | ||
327 | //printk("checksum failed\n"); | ||
328 | return 1; | ||
329 | } | ||
330 | |||
331 | if (kbdbytes[1] & 0x08) { | ||
332 | //printk("m: %x %x %x\n", kbdbytes[1], kbdbytes[2], kbdbytes[3]); | ||
333 | handle_mouse_event(kbdbytes[1]); | ||
334 | handle_mouse_event(kbdbytes[2]); | ||
335 | handle_mouse_event(kbdbytes[3]); | ||
336 | } | ||
337 | else { | ||
338 | if (kbdbytes[2] == 0) down = 1; | ||
339 | #if 0 | ||
340 | if (down) | ||
341 | printk("down %d\n", kbdbytes[3]); | ||
342 | else | ||
343 | printk("up %d\n", kbdbytes[3]); | ||
344 | #endif | ||
345 | handle_keyboard_event(kbdbytes[3], down); | ||
346 | } | ||
347 | return 0; | ||
348 | } | ||
349 | |||
350 | |||
351 | DEFINE_SPINLOCK(kbd_controller_lock); | ||
352 | static unsigned char handle_kbd_event(void); | ||
353 | |||
354 | |||
355 | int kbd_setkeycode(unsigned int scancode, unsigned int keycode) | ||
356 | { | ||
357 | printk("kbd_setkeycode scancode %x keycode %x\n", scancode, keycode); | ||
358 | return 0; | ||
359 | } | ||
360 | |||
361 | int kbd_getkeycode(unsigned int scancode) | ||
362 | { | ||
363 | return scancode; | ||
364 | } | ||
365 | |||
366 | |||
367 | int kbd_translate(unsigned char scancode, unsigned char *keycode, | ||
368 | char raw_mode) | ||
369 | { | ||
370 | static int prev_scancode = 0; | ||
371 | |||
372 | if (scancode == 0x00 || scancode == 0xff) { | ||
373 | prev_scancode = 0; | ||
374 | return 0; | ||
375 | } | ||
376 | |||
377 | /* todo */ | ||
378 | if (!prev_scancode && scancode == 160) { /* Fn key down */ | ||
379 | //printk("Fn key down\n"); | ||
380 | prev_scancode = 160; | ||
381 | return 0; | ||
382 | } | ||
383 | else if (prev_scancode && scancode == 160) { /* Fn key up */ | ||
384 | //printk("Fn key up\n"); | ||
385 | prev_scancode = 0; | ||
386 | return 0; | ||
387 | } | ||
388 | |||
389 | /* todo */ | ||
390 | if (prev_scancode == 160) { | ||
391 | if (scancode <= NUM_FN_KEYS) { | ||
392 | *keycode = fn_keys[scancode]; | ||
393 | //printk("fn keycode %d\n", *keycode); | ||
394 | } | ||
395 | else | ||
396 | return 0; | ||
397 | } | ||
398 | else if (scancode <= 127) { | ||
399 | *keycode = scancode; | ||
400 | } | ||
401 | else | ||
402 | return 0; | ||
403 | |||
404 | |||
405 | return 1; | ||
406 | } | ||
407 | |||
408 | char kbd_unexpected_up(unsigned char keycode) | ||
409 | { | ||
410 | //printk("kbd_unexpected_up\n"); | ||
411 | return 0; | ||
412 | } | ||
413 | |||
414 | static unsigned char kbd_exists = 1; | ||
415 | |||
416 | static inline void handle_keyboard_event(unsigned char scancode, int down) | ||
417 | { | ||
418 | kbd_exists = 1; | ||
419 | handle_scancode(scancode, down); | ||
420 | tasklet_schedule(&keyboard_tasklet); | ||
421 | } | ||
422 | |||
423 | |||
424 | void kbd_leds(unsigned char leds) | ||
425 | { | ||
426 | } | ||
427 | |||
428 | /* dummy */ | ||
429 | void kbd_init_hw(void) | ||
430 | { | ||
431 | } | ||
432 | |||
433 | |||
434 | |||
435 | static inline void handle_mouse_event(unsigned char scancode) | ||
436 | { | ||
437 | if(scancode == AUX_RECONNECT){ | ||
438 | queue->head = queue->tail = 0; /* Flush input queue */ | ||
439 | // __aux_write_ack(AUX_ENABLE_DEV); /* ping the mouse :) */ | ||
440 | return; | ||
441 | } | ||
442 | |||
443 | if (aux_count) { | ||
444 | int head = queue->head; | ||
445 | |||
446 | queue->buf[head] = scancode; | ||
447 | head = (head + 1) & (AUX_BUF_SIZE-1); | ||
448 | if (head != queue->tail) { | ||
449 | queue->head = head; | ||
450 | kill_fasync(&queue->fasync, SIGIO, POLL_IN); | ||
451 | wake_up_interruptible(&queue->proc_list); | ||
452 | } | ||
453 | } | ||
454 | } | ||
455 | |||
456 | static unsigned char get_from_queue(void) | ||
457 | { | ||
458 | unsigned char result; | ||
459 | unsigned long flags; | ||
460 | |||
461 | spin_lock_irqsave(&kbd_controller_lock, flags); | ||
462 | result = queue->buf[queue->tail]; | ||
463 | queue->tail = (queue->tail + 1) & (AUX_BUF_SIZE-1); | ||
464 | spin_unlock_irqrestore(&kbd_controller_lock, flags); | ||
465 | return result; | ||
466 | } | ||
467 | |||
468 | |||
469 | static inline int queue_empty(void) | ||
470 | { | ||
471 | return queue->head == queue->tail; | ||
472 | } | ||
473 | |||
474 | static int fasync_aux(int fd, struct file *filp, int on) | ||
475 | { | ||
476 | int retval; | ||
477 | |||
478 | //printk("fasync_aux\n"); | ||
479 | retval = fasync_helper(fd, filp, on, &queue->fasync); | ||
480 | if (retval < 0) | ||
481 | return retval; | ||
482 | return 0; | ||
483 | } | ||
484 | |||
485 | |||
486 | /* | ||
487 | * Random magic cookie for the aux device | ||
488 | */ | ||
489 | #define AUX_DEV ((void *)queue) | ||
490 | |||
491 | static int release_aux(struct inode * inode, struct file * file) | ||
492 | { | ||
493 | fasync_aux(-1, file, 0); | ||
494 | aux_count--; | ||
495 | return 0; | ||
496 | } | ||
497 | |||
498 | static int open_aux(struct inode * inode, struct file * file) | ||
499 | { | ||
500 | if (aux_count++) { | ||
501 | return 0; | ||
502 | } | ||
503 | queue->head = queue->tail = 0; /* Flush input queue */ | ||
504 | return 0; | ||
505 | } | ||
506 | |||
507 | /* | ||
508 | * Put bytes from input queue to buffer. | ||
509 | */ | ||
510 | |||
511 | static ssize_t read_aux(struct file * file, char * buffer, | ||
512 | size_t count, loff_t *ppos) | ||
513 | { | ||
514 | DECLARE_WAITQUEUE(wait, current); | ||
515 | ssize_t i = count; | ||
516 | unsigned char c; | ||
517 | |||
518 | if (queue_empty()) { | ||
519 | if (file->f_flags & O_NONBLOCK) | ||
520 | return -EAGAIN; | ||
521 | add_wait_queue(&queue->proc_list, &wait); | ||
522 | repeat: | ||
523 | set_current_state(TASK_INTERRUPTIBLE); | ||
524 | if (queue_empty() && !signal_pending(current)) { | ||
525 | schedule(); | ||
526 | goto repeat; | ||
527 | } | ||
528 | current->state = TASK_RUNNING; | ||
529 | remove_wait_queue(&queue->proc_list, &wait); | ||
530 | } | ||
531 | while (i > 0 && !queue_empty()) { | ||
532 | c = get_from_queue(); | ||
533 | put_user(c, buffer++); | ||
534 | i--; | ||
535 | } | ||
536 | if (count-i) { | ||
537 | struct inode *inode = file->f_dentry->d_inode; | ||
538 | inode->i_atime = current_fs_time(inode->i_sb); | ||
539 | return count-i; | ||
540 | } | ||
541 | if (signal_pending(current)) | ||
542 | return -ERESTARTSYS; | ||
543 | return 0; | ||
544 | } | ||
545 | |||
546 | /* | ||
547 | * Write to the aux device. | ||
548 | */ | ||
549 | |||
550 | static ssize_t write_aux(struct file * file, const char * buffer, | ||
551 | size_t count, loff_t *ppos) | ||
552 | { | ||
553 | /* | ||
554 | * The ITE boards this was tested on did not have the | ||
555 | * transmit wires connected. | ||
556 | */ | ||
557 | return count; | ||
558 | } | ||
559 | |||
560 | static unsigned int aux_poll(struct file *file, poll_table * wait) | ||
561 | { | ||
562 | poll_wait(file, &queue->proc_list, wait); | ||
563 | if (!queue_empty()) | ||
564 | return POLLIN | POLLRDNORM; | ||
565 | return 0; | ||
566 | } | ||
567 | |||
568 | struct file_operations psaux_fops = { | ||
569 | .read = read_aux, | ||
570 | .write = write_aux, | ||
571 | .poll = aux_poll, | ||
572 | .open = open_aux, | ||
573 | .release = release_aux, | ||
574 | .fasync = fasync_aux, | ||
575 | }; | ||
576 | |||
577 | /* | ||
578 | * Initialize driver. | ||
579 | */ | ||
580 | static struct miscdevice psaux_mouse = { | ||
581 | PSMOUSE_MINOR, "psaux", &psaux_fops | ||
582 | }; | ||
583 | |||
584 | static int __init psaux_init(void) | ||
585 | { | ||
586 | int retval; | ||
587 | |||
588 | retval = misc_register(&psaux_mouse); | ||
589 | if(retval < 0) | ||
590 | return retval; | ||
591 | |||
592 | queue = (struct aux_queue *) kmalloc(sizeof(*queue), GFP_KERNEL); | ||
593 | if (!queue) { | ||
594 | misc_deregister(&psaux_mouse); | ||
595 | return -ENOMEM; | ||
596 | } | ||
597 | |||
598 | memset(queue, 0, sizeof(*queue)); | ||
599 | queue->head = queue->tail = 0; | ||
600 | init_waitqueue_head(&queue->proc_list); | ||
601 | |||
602 | return 0; | ||
603 | } | ||
604 | module_init(init_qtronix_990P_kbd); | ||
605 | #endif | ||
diff --git a/drivers/char/rio/func.h b/drivers/char/rio/func.h index 6b039186856d..9e7283bd81a0 100644 --- a/drivers/char/rio/func.h +++ b/drivers/char/rio/func.h | |||
@@ -88,7 +88,7 @@ void RIOHostReset(unsigned int, struct DpRam __iomem *, unsigned int); | |||
88 | 88 | ||
89 | /* riointr.c */ | 89 | /* riointr.c */ |
90 | void RIOTxEnable(char *); | 90 | void RIOTxEnable(char *); |
91 | void RIOServiceHost(struct rio_info *, struct Host *, int); | 91 | void RIOServiceHost(struct rio_info *, struct Host *); |
92 | int riotproc(struct rio_info *, struct ttystatics *, int, int); | 92 | int riotproc(struct rio_info *, struct ttystatics *, int, int); |
93 | 93 | ||
94 | /* rioparam.c */ | 94 | /* rioparam.c */ |
diff --git a/drivers/char/rio/rio_linux.c b/drivers/char/rio/rio_linux.c index 202a3b0945b7..c382df0f82f6 100644 --- a/drivers/char/rio/rio_linux.c +++ b/drivers/char/rio/rio_linux.c | |||
@@ -363,12 +363,12 @@ static void rio_reset_interrupt(struct Host *HostP) | |||
363 | } | 363 | } |
364 | 364 | ||
365 | 365 | ||
366 | static irqreturn_t rio_interrupt(int irq, void *ptr, struct pt_regs *regs) | 366 | static irqreturn_t rio_interrupt(int irq, void *ptr) |
367 | { | 367 | { |
368 | struct Host *HostP; | 368 | struct Host *HostP; |
369 | func_enter(); | 369 | func_enter(); |
370 | 370 | ||
371 | HostP = (struct Host *) ptr; /* &p->RIOHosts[(long)ptr]; */ | 371 | HostP = ptr; /* &p->RIOHosts[(long)ptr]; */ |
372 | rio_dprintk(RIO_DEBUG_IFLOW, "rio: enter rio_interrupt (%d/%d)\n", irq, HostP->Ivec); | 372 | rio_dprintk(RIO_DEBUG_IFLOW, "rio: enter rio_interrupt (%d/%d)\n", irq, HostP->Ivec); |
373 | 373 | ||
374 | /* AAargh! The order in which to do these things is essential and | 374 | /* AAargh! The order in which to do these things is essential and |
@@ -402,7 +402,7 @@ static irqreturn_t rio_interrupt(int irq, void *ptr, struct pt_regs *regs) | |||
402 | return IRQ_HANDLED; | 402 | return IRQ_HANDLED; |
403 | } | 403 | } |
404 | 404 | ||
405 | RIOServiceHost(p, HostP, irq); | 405 | RIOServiceHost(p, HostP); |
406 | 406 | ||
407 | rio_dprintk(RIO_DEBUG_IFLOW, "riointr() doing host %p type %d\n", ptr, HostP->Type); | 407 | rio_dprintk(RIO_DEBUG_IFLOW, "riointr() doing host %p type %d\n", ptr, HostP->Type); |
408 | 408 | ||
@@ -417,7 +417,7 @@ static void rio_pollfunc(unsigned long data) | |||
417 | { | 417 | { |
418 | func_enter(); | 418 | func_enter(); |
419 | 419 | ||
420 | rio_interrupt(0, &p->RIOHosts[data], NULL); | 420 | rio_interrupt(0, &p->RIOHosts[data]); |
421 | p->RIOHosts[data].timer.expires = jiffies + rio_poll; | 421 | p->RIOHosts[data].timer.expires = jiffies + rio_poll; |
422 | add_timer(&p->RIOHosts[data].timer); | 422 | add_timer(&p->RIOHosts[data].timer); |
423 | 423 | ||
diff --git a/drivers/char/rio/riointr.c b/drivers/char/rio/riointr.c index 0bd09040a5c0..eeda40c5e189 100644 --- a/drivers/char/rio/riointr.c +++ b/drivers/char/rio/riointr.c | |||
@@ -181,7 +181,7 @@ static int RupIntr; | |||
181 | static int RxIntr; | 181 | static int RxIntr; |
182 | static int TxIntr; | 182 | static int TxIntr; |
183 | 183 | ||
184 | void RIOServiceHost(struct rio_info *p, struct Host *HostP, int From) | 184 | void RIOServiceHost(struct rio_info *p, struct Host *HostP) |
185 | { | 185 | { |
186 | rio_spin_lock(&HostP->HostLock); | 186 | rio_spin_lock(&HostP->HostLock); |
187 | if ((HostP->Flags & RUN_STATE) != RC_RUNNING) { | 187 | if ((HostP->Flags & RUN_STATE) != RC_RUNNING) { |
diff --git a/drivers/char/riscom8.c b/drivers/char/riscom8.c index b0ab3f28cc6a..5ab32b38f45a 100644 --- a/drivers/char/riscom8.c +++ b/drivers/char/riscom8.c | |||
@@ -550,7 +550,7 @@ static inline void rc_check_modem(struct riscom_board const * bp) | |||
550 | } | 550 | } |
551 | 551 | ||
552 | /* The main interrupt processing routine */ | 552 | /* The main interrupt processing routine */ |
553 | static irqreturn_t rc_interrupt(int irq, void * dev_id, struct pt_regs * regs) | 553 | static irqreturn_t rc_interrupt(int irq, void * dev_id) |
554 | { | 554 | { |
555 | unsigned char status; | 555 | unsigned char status; |
556 | unsigned char ack; | 556 | unsigned char ack; |
@@ -559,11 +559,10 @@ static irqreturn_t rc_interrupt(int irq, void * dev_id, struct pt_regs * regs) | |||
559 | int handled = 0; | 559 | int handled = 0; |
560 | 560 | ||
561 | bp = IRQ_to_board[irq]; | 561 | bp = IRQ_to_board[irq]; |
562 | 562 | ||
563 | if (!bp || !(bp->flags & RC_BOARD_ACTIVE)) { | 563 | if (!(bp->flags & RC_BOARD_ACTIVE)) |
564 | return IRQ_NONE; | 564 | return IRQ_NONE; |
565 | } | 565 | |
566 | |||
567 | while ((++loop < 16) && ((status = ~(rc_in(bp, RC_BSR))) & | 566 | while ((++loop < 16) && ((status = ~(rc_in(bp, RC_BSR))) & |
568 | (RC_BSR_TOUT | RC_BSR_TINT | | 567 | (RC_BSR_TOUT | RC_BSR_TINT | |
569 | RC_BSR_MINT | RC_BSR_RINT))) { | 568 | RC_BSR_MINT | RC_BSR_RINT))) { |
diff --git a/drivers/char/rtc.c b/drivers/char/rtc.c index 656f8c0ca52e..66a7385bc34a 100644 --- a/drivers/char/rtc.c +++ b/drivers/char/rtc.c | |||
@@ -35,13 +35,13 @@ | |||
35 | * 1.09a Pete Zaitcev: Sun SPARC | 35 | * 1.09a Pete Zaitcev: Sun SPARC |
36 | * 1.09b Jeff Garzik: Modularize, init cleanup | 36 | * 1.09b Jeff Garzik: Modularize, init cleanup |
37 | * 1.09c Jeff Garzik: SMP cleanup | 37 | * 1.09c Jeff Garzik: SMP cleanup |
38 | * 1.10 Paul Barton-Davis: add support for async I/O | 38 | * 1.10 Paul Barton-Davis: add support for async I/O |
39 | * 1.10a Andrea Arcangeli: Alpha updates | 39 | * 1.10a Andrea Arcangeli: Alpha updates |
40 | * 1.10b Andrew Morton: SMP lock fix | 40 | * 1.10b Andrew Morton: SMP lock fix |
41 | * 1.10c Cesar Barros: SMP locking fixes and cleanup | 41 | * 1.10c Cesar Barros: SMP locking fixes and cleanup |
42 | * 1.10d Paul Gortmaker: delete paranoia check in rtc_exit | 42 | * 1.10d Paul Gortmaker: delete paranoia check in rtc_exit |
43 | * 1.10e Maciej W. Rozycki: Handle DECstation's year weirdness. | 43 | * 1.10e Maciej W. Rozycki: Handle DECstation's year weirdness. |
44 | * 1.11 Takashi Iwai: Kernel access functions | 44 | * 1.11 Takashi Iwai: Kernel access functions |
45 | * rtc_register/rtc_unregister/rtc_control | 45 | * rtc_register/rtc_unregister/rtc_control |
46 | * 1.11a Daniele Bellucci: Audit create_proc_read_entry in rtc_init | 46 | * 1.11a Daniele Bellucci: Audit create_proc_read_entry in rtc_init |
47 | * 1.12 Venkatesh Pallipadi: Hooks for emulating rtc on HPET base-timer | 47 | * 1.12 Venkatesh Pallipadi: Hooks for emulating rtc on HPET base-timer |
@@ -113,9 +113,9 @@ static int rtc_has_irq = 1; | |||
113 | #define hpet_set_rtc_irq_bit(arg) 0 | 113 | #define hpet_set_rtc_irq_bit(arg) 0 |
114 | #define hpet_rtc_timer_init() do { } while (0) | 114 | #define hpet_rtc_timer_init() do { } while (0) |
115 | #define hpet_rtc_dropped_irq() 0 | 115 | #define hpet_rtc_dropped_irq() 0 |
116 | static inline irqreturn_t hpet_rtc_interrupt(int irq, void *dev_id, struct pt_regs *regs) {return 0;} | 116 | static inline irqreturn_t hpet_rtc_interrupt(int irq, void *dev_id) {return 0;} |
117 | #else | 117 | #else |
118 | extern irqreturn_t hpet_rtc_interrupt(int irq, void *dev_id, struct pt_regs *regs); | 118 | extern irqreturn_t hpet_rtc_interrupt(int irq, void *dev_id); |
119 | #endif | 119 | #endif |
120 | 120 | ||
121 | /* | 121 | /* |
@@ -229,7 +229,7 @@ static inline unsigned char rtc_is_updating(void) | |||
229 | * (See ./arch/XXXX/kernel/time.c for the set_rtc_mmss() function.) | 229 | * (See ./arch/XXXX/kernel/time.c for the set_rtc_mmss() function.) |
230 | */ | 230 | */ |
231 | 231 | ||
232 | irqreturn_t rtc_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 232 | irqreturn_t rtc_interrupt(int irq, void *dev_id) |
233 | { | 233 | { |
234 | /* | 234 | /* |
235 | * Can be an alarm interrupt, update complete interrupt, | 235 | * Can be an alarm interrupt, update complete interrupt, |
@@ -915,7 +915,7 @@ static const struct file_operations rtc_proc_fops = { | |||
915 | }; | 915 | }; |
916 | 916 | ||
917 | #if defined(RTC_IRQ) && !defined(__sparc__) | 917 | #if defined(RTC_IRQ) && !defined(__sparc__) |
918 | static irqreturn_t (*rtc_int_handler_ptr)(int irq, void *dev_id, struct pt_regs *regs); | 918 | static irq_handler_t rtc_int_handler_ptr; |
919 | #endif | 919 | #endif |
920 | 920 | ||
921 | static int __init rtc_init(void) | 921 | static int __init rtc_init(void) |
diff --git a/drivers/char/ser_a2232.c b/drivers/char/ser_a2232.c index 65c751d0d643..4217d38caef9 100644 --- a/drivers/char/ser_a2232.c +++ b/drivers/char/ser_a2232.c | |||
@@ -111,7 +111,7 @@ | |||
111 | 111 | ||
112 | /***************************** Prototypes ***************************/ | 112 | /***************************** Prototypes ***************************/ |
113 | /* The interrupt service routine */ | 113 | /* The interrupt service routine */ |
114 | static irqreturn_t a2232_vbl_inter(int irq, void *data, struct pt_regs *fp); | 114 | static irqreturn_t a2232_vbl_inter(int irq, void *data); |
115 | /* Initialize the port structures */ | 115 | /* Initialize the port structures */ |
116 | static void a2232_init_portstructs(void); | 116 | static void a2232_init_portstructs(void); |
117 | /* Initialize and register TTY drivers. */ | 117 | /* Initialize and register TTY drivers. */ |
@@ -504,7 +504,7 @@ static int a2232_open(struct tty_struct * tty, struct file * filp) | |||
504 | } | 504 | } |
505 | /*** END OF FUNCTIONS EXPECTED BY TTY DRIVER STRUCTS ***/ | 505 | /*** END OF FUNCTIONS EXPECTED BY TTY DRIVER STRUCTS ***/ |
506 | 506 | ||
507 | static irqreturn_t a2232_vbl_inter(int irq, void *data, struct pt_regs *fp) | 507 | static irqreturn_t a2232_vbl_inter(int irq, void *data) |
508 | { | 508 | { |
509 | #if A2232_IOBUFLEN != 256 | 509 | #if A2232_IOBUFLEN != 256 |
510 | #error "Re-Implement a2232_vbl_inter()!" | 510 | #error "Re-Implement a2232_vbl_inter()!" |
diff --git a/drivers/char/serial167.c b/drivers/char/serial167.c index f4809c8183cc..461bfe0234c9 100644 --- a/drivers/char/serial167.c +++ b/drivers/char/serial167.c | |||
@@ -62,6 +62,7 @@ | |||
62 | #include <linux/console.h> | 62 | #include <linux/console.h> |
63 | #include <linux/module.h> | 63 | #include <linux/module.h> |
64 | #include <linux/bitops.h> | 64 | #include <linux/bitops.h> |
65 | #include <linux/tty_flip.h> | ||
65 | 66 | ||
66 | #include <asm/system.h> | 67 | #include <asm/system.h> |
67 | #include <asm/io.h> | 68 | #include <asm/io.h> |
@@ -370,7 +371,7 @@ cy_sched_event(struct cyclades_port *info, int event) | |||
370 | received, out buffer empty, modem change, etc. | 371 | received, out buffer empty, modem change, etc. |
371 | */ | 372 | */ |
372 | static irqreturn_t | 373 | static irqreturn_t |
373 | cd2401_rxerr_interrupt(int irq, void *dev_id, struct pt_regs *fp) | 374 | cd2401_rxerr_interrupt(int irq, void *dev_id) |
374 | { | 375 | { |
375 | struct tty_struct *tty; | 376 | struct tty_struct *tty; |
376 | struct cyclades_port *info; | 377 | struct cyclades_port *info; |
@@ -427,8 +428,9 @@ cd2401_rxerr_interrupt(int irq, void *dev_id, struct pt_regs *fp) | |||
427 | overflowing, we still loose | 428 | overflowing, we still loose |
428 | the next incoming character. | 429 | the next incoming character. |
429 | */ | 430 | */ |
430 | tty_insert_flip_char(tty, data, TTY_NORMAL); | 431 | if (tty_buffer_request_room(tty, 1) != 0){ |
431 | } | 432 | tty_insert_flip_char(tty, data, TTY_FRAME); |
433 | } | ||
432 | /* These two conditions may imply */ | 434 | /* These two conditions may imply */ |
433 | /* a normal read should be done. */ | 435 | /* a normal read should be done. */ |
434 | /* else if(data & CyTIMEOUT) */ | 436 | /* else if(data & CyTIMEOUT) */ |
@@ -437,21 +439,21 @@ cd2401_rxerr_interrupt(int irq, void *dev_id, struct pt_regs *fp) | |||
437 | tty_insert_flip_char(tty, 0, TTY_NORMAL); | 439 | tty_insert_flip_char(tty, 0, TTY_NORMAL); |
438 | } | 440 | } |
439 | }else{ | 441 | }else{ |
440 | tty_insert_flip_char(tty, data, TTY_NORMAL); | 442 | tty_insert_flip_char(tty, data, TTY_NORMAL); |
441 | } | 443 | } |
442 | }else{ | 444 | }else{ |
443 | /* there was a software buffer overrun | 445 | /* there was a software buffer overrun |
444 | and nothing could be done about it!!! */ | 446 | and nothing could be done about it!!! */ |
445 | } | 447 | } |
446 | } | 448 | } |
447 | schedule_delayed_work(&tty->flip.work, 1); | 449 | tty_schedule_flip(tty); |
448 | /* end of service */ | 450 | /* end of service */ |
449 | base_addr[CyREOIR] = rfoc ? 0 : CyNOTRANS; | 451 | base_addr[CyREOIR] = rfoc ? 0 : CyNOTRANS; |
450 | return IRQ_HANDLED; | 452 | return IRQ_HANDLED; |
451 | } /* cy_rxerr_interrupt */ | 453 | } /* cy_rxerr_interrupt */ |
452 | 454 | ||
453 | static irqreturn_t | 455 | static irqreturn_t |
454 | cd2401_modem_interrupt(int irq, void *dev_id, struct pt_regs *fp) | 456 | cd2401_modem_interrupt(int irq, void *dev_id) |
455 | { | 457 | { |
456 | struct cyclades_port *info; | 458 | struct cyclades_port *info; |
457 | volatile unsigned char *base_addr = (unsigned char *)BASE_ADDR; | 459 | volatile unsigned char *base_addr = (unsigned char *)BASE_ADDR; |
@@ -506,7 +508,7 @@ cd2401_modem_interrupt(int irq, void *dev_id, struct pt_regs *fp) | |||
506 | } /* cy_modem_interrupt */ | 508 | } /* cy_modem_interrupt */ |
507 | 509 | ||
508 | static irqreturn_t | 510 | static irqreturn_t |
509 | cd2401_tx_interrupt(int irq, void *dev_id, struct pt_regs *fp) | 511 | cd2401_tx_interrupt(int irq, void *dev_id) |
510 | { | 512 | { |
511 | struct cyclades_port *info; | 513 | struct cyclades_port *info; |
512 | volatile unsigned char *base_addr = (unsigned char *)BASE_ADDR; | 514 | volatile unsigned char *base_addr = (unsigned char *)BASE_ADDR; |
@@ -626,7 +628,7 @@ cd2401_tx_interrupt(int irq, void *dev_id, struct pt_regs *fp) | |||
626 | } /* cy_tx_interrupt */ | 628 | } /* cy_tx_interrupt */ |
627 | 629 | ||
628 | static irqreturn_t | 630 | static irqreturn_t |
629 | cd2401_rx_interrupt(int irq, void *dev_id, struct pt_regs *fp) | 631 | cd2401_rx_interrupt(int irq, void *dev_id) |
630 | { | 632 | { |
631 | struct tty_struct *tty; | 633 | struct tty_struct *tty; |
632 | struct cyclades_port *info; | 634 | struct cyclades_port *info; |
@@ -635,6 +637,7 @@ cd2401_rx_interrupt(int irq, void *dev_id, struct pt_regs *fp) | |||
635 | char data; | 637 | char data; |
636 | int char_count; | 638 | int char_count; |
637 | int save_cnt; | 639 | int save_cnt; |
640 | int len; | ||
638 | 641 | ||
639 | /* determine the channel and change to that context */ | 642 | /* determine the channel and change to that context */ |
640 | channel = (u_short ) (base_addr[CyLICR] >> 2); | 643 | channel = (u_short ) (base_addr[CyLICR] >> 2); |
@@ -667,14 +670,15 @@ cd2401_rx_interrupt(int irq, void *dev_id, struct pt_regs *fp) | |||
667 | info->mon.char_max = char_count; | 670 | info->mon.char_max = char_count; |
668 | info->mon.char_last = char_count; | 671 | info->mon.char_last = char_count; |
669 | #endif | 672 | #endif |
670 | while(char_count--){ | 673 | len = tty_buffer_request_room(tty, char_count); |
674 | while(len--){ | ||
671 | data = base_addr[CyRDR]; | 675 | data = base_addr[CyRDR]; |
672 | tty_insert_flip_char(tty, data, TTY_NORMAL); | 676 | tty_insert_flip_char(tty, data, TTY_NORMAL); |
673 | #ifdef CYCLOM_16Y_HACK | 677 | #ifdef CYCLOM_16Y_HACK |
674 | udelay(10L); | 678 | udelay(10L); |
675 | #endif | 679 | #endif |
676 | } | 680 | } |
677 | schedule_delayed_work(&tty->flip.work, 1); | 681 | tty_schedule_flip(tty); |
678 | } | 682 | } |
679 | /* end of service */ | 683 | /* end of service */ |
680 | base_addr[CyREOIR] = save_cnt ? 0 : CyNOTRANS; | 684 | base_addr[CyREOIR] = save_cnt ? 0 : CyNOTRANS; |
@@ -1422,7 +1426,6 @@ cy_tiocmget(struct tty_struct *tty, struct file *file) | |||
1422 | volatile unsigned char *base_addr = (u_char *)BASE_ADDR; | 1426 | volatile unsigned char *base_addr = (u_char *)BASE_ADDR; |
1423 | unsigned long flags; | 1427 | unsigned long flags; |
1424 | unsigned char status; | 1428 | unsigned char status; |
1425 | unsigned int result; | ||
1426 | 1429 | ||
1427 | channel = info->line; | 1430 | channel = info->line; |
1428 | 1431 | ||
@@ -1446,7 +1449,6 @@ cy_tiocmset(struct tty_struct *tty, struct file *file, | |||
1446 | int channel; | 1449 | int channel; |
1447 | volatile unsigned char *base_addr = (u_char *)BASE_ADDR; | 1450 | volatile unsigned char *base_addr = (u_char *)BASE_ADDR; |
1448 | unsigned long flags; | 1451 | unsigned long flags; |
1449 | unsigned int arg; | ||
1450 | 1452 | ||
1451 | channel = info->line; | 1453 | channel = info->line; |
1452 | 1454 | ||
diff --git a/drivers/char/snsc.c b/drivers/char/snsc.c index 07e0b75f2338..52753e723eaa 100644 --- a/drivers/char/snsc.c +++ b/drivers/char/snsc.c | |||
@@ -34,7 +34,7 @@ | |||
34 | #define SCDRV_TIMEOUT 1000 | 34 | #define SCDRV_TIMEOUT 1000 |
35 | 35 | ||
36 | static irqreturn_t | 36 | static irqreturn_t |
37 | scdrv_interrupt(int irq, void *subch_data, struct pt_regs *regs) | 37 | scdrv_interrupt(int irq, void *subch_data) |
38 | { | 38 | { |
39 | struct subch_data_s *sd = subch_data; | 39 | struct subch_data_s *sd = subch_data; |
40 | unsigned long flags; | 40 | unsigned long flags; |
diff --git a/drivers/char/snsc_event.c b/drivers/char/snsc_event.c index 864854c58866..2f56e8c54897 100644 --- a/drivers/char/snsc_event.c +++ b/drivers/char/snsc_event.c | |||
@@ -36,7 +36,7 @@ DECLARE_TASKLET(sn_sysctl_event, scdrv_event, 0); | |||
36 | * destination. | 36 | * destination. |
37 | */ | 37 | */ |
38 | static irqreturn_t | 38 | static irqreturn_t |
39 | scdrv_event_interrupt(int irq, void *subch_data, struct pt_regs *regs) | 39 | scdrv_event_interrupt(int irq, void *subch_data) |
40 | { | 40 | { |
41 | struct subch_data_s *sd = subch_data; | 41 | struct subch_data_s *sd = subch_data; |
42 | unsigned long flags; | 42 | unsigned long flags; |
diff --git a/drivers/char/sonypi.c b/drivers/char/sonypi.c index d4e434d694b7..c084149153de 100644 --- a/drivers/char/sonypi.c +++ b/drivers/char/sonypi.c | |||
@@ -826,7 +826,7 @@ static void sonypi_report_input_event(u8 event) | |||
826 | } | 826 | } |
827 | 827 | ||
828 | /* Interrupt handler: some event is available */ | 828 | /* Interrupt handler: some event is available */ |
829 | static irqreturn_t sonypi_irq(int irq, void *dev_id, struct pt_regs *regs) | 829 | static irqreturn_t sonypi_irq(int irq, void *dev_id) |
830 | { | 830 | { |
831 | u8 v1, v2, event = 0; | 831 | u8 v1, v2, event = 0; |
832 | int i, j; | 832 | int i, j; |
diff --git a/drivers/char/specialix.c b/drivers/char/specialix.c index 902c48dca3bc..d0b88d0e87fd 100644 --- a/drivers/char/specialix.c +++ b/drivers/char/specialix.c | |||
@@ -200,7 +200,7 @@ static struct specialix_port sx_port[SX_NBOARD * SX_NPORT]; | |||
200 | 200 | ||
201 | #ifdef SPECIALIX_TIMER | 201 | #ifdef SPECIALIX_TIMER |
202 | static struct timer_list missed_irq_timer; | 202 | static struct timer_list missed_irq_timer; |
203 | static irqreturn_t sx_interrupt(int irq, void * dev_id, struct pt_regs * regs); | 203 | static irqreturn_t sx_interrupt(int irq, void * dev_id); |
204 | #endif | 204 | #endif |
205 | 205 | ||
206 | 206 | ||
@@ -897,7 +897,7 @@ static inline void sx_check_modem(struct specialix_board * bp) | |||
897 | 897 | ||
898 | 898 | ||
899 | /* The main interrupt processing routine */ | 899 | /* The main interrupt processing routine */ |
900 | static irqreturn_t sx_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 900 | static irqreturn_t sx_interrupt(int irq, void *dev_id) |
901 | { | 901 | { |
902 | unsigned char status; | 902 | unsigned char status; |
903 | unsigned char ack; | 903 | unsigned char ack; |
@@ -912,7 +912,7 @@ static irqreturn_t sx_interrupt(int irq, void *dev_id, struct pt_regs *regs) | |||
912 | spin_lock_irqsave(&bp->lock, flags); | 912 | spin_lock_irqsave(&bp->lock, flags); |
913 | 913 | ||
914 | dprintk (SX_DEBUG_FLOW, "enter %s port %d room: %ld\n", __FUNCTION__, port_No(sx_get_port(bp, "INT")), SERIAL_XMIT_SIZE - sx_get_port(bp, "ITN")->xmit_cnt - 1); | 914 | dprintk (SX_DEBUG_FLOW, "enter %s port %d room: %ld\n", __FUNCTION__, port_No(sx_get_port(bp, "INT")), SERIAL_XMIT_SIZE - sx_get_port(bp, "ITN")->xmit_cnt - 1); |
915 | if (!bp || !(bp->flags & SX_BOARD_ACTIVE)) { | 915 | if (!(bp->flags & SX_BOARD_ACTIVE)) { |
916 | dprintk (SX_DEBUG_IRQ, "sx: False interrupt. irq %d.\n", irq); | 916 | dprintk (SX_DEBUG_IRQ, "sx: False interrupt. irq %d.\n", irq); |
917 | spin_unlock_irqrestore(&bp->lock, flags); | 917 | spin_unlock_irqrestore(&bp->lock, flags); |
918 | func_exit(); | 918 | func_exit(); |
diff --git a/drivers/char/stallion.c b/drivers/char/stallion.c index bd711537ec4e..522e88e395cc 100644 --- a/drivers/char/stallion.c +++ b/drivers/char/stallion.c | |||
@@ -1927,13 +1927,12 @@ stl_readdone: | |||
1927 | * calls off to the approrpriate board interrupt handlers. | 1927 | * calls off to the approrpriate board interrupt handlers. |
1928 | */ | 1928 | */ |
1929 | 1929 | ||
1930 | static irqreturn_t stl_intr(int irq, void *dev_id, struct pt_regs *regs) | 1930 | static irqreturn_t stl_intr(int irq, void *dev_id) |
1931 | { | 1931 | { |
1932 | stlbrd_t *brdp = (stlbrd_t *) dev_id; | 1932 | stlbrd_t *brdp = (stlbrd_t *) dev_id; |
1933 | 1933 | ||
1934 | #ifdef DEBUG | 1934 | #ifdef DEBUG |
1935 | printk("stl_intr(brdp=%x,irq=%d,regs=%x)\n", (int) brdp, irq, | 1935 | printk("stl_intr(brdp=%x,irq=%d)\n", (int) brdp, irq); |
1936 | (int) regs); | ||
1937 | #endif | 1936 | #endif |
1938 | 1937 | ||
1939 | return IRQ_RETVAL((* brdp->isr)(brdp)); | 1938 | return IRQ_RETVAL((* brdp->isr)(brdp)); |
diff --git a/drivers/char/sx.c b/drivers/char/sx.c index 8fd71a5fc619..5fec626598cd 100644 --- a/drivers/char/sx.c +++ b/drivers/char/sx.c | |||
@@ -1192,7 +1192,7 @@ static inline void sx_check_modem_signals (struct sx_port *port) | |||
1192 | * Small, elegant, clear. | 1192 | * Small, elegant, clear. |
1193 | */ | 1193 | */ |
1194 | 1194 | ||
1195 | static irqreturn_t sx_interrupt (int irq, void *ptr, struct pt_regs *regs) | 1195 | static irqreturn_t sx_interrupt (int irq, void *ptr) |
1196 | { | 1196 | { |
1197 | struct sx_board *board = ptr; | 1197 | struct sx_board *board = ptr; |
1198 | struct sx_port *port; | 1198 | struct sx_port *port; |
@@ -1300,7 +1300,7 @@ static void sx_pollfunc (unsigned long data) | |||
1300 | 1300 | ||
1301 | func_enter (); | 1301 | func_enter (); |
1302 | 1302 | ||
1303 | sx_interrupt (0, board, NULL); | 1303 | sx_interrupt (0, board); |
1304 | 1304 | ||
1305 | init_timer(&board->timer); | 1305 | init_timer(&board->timer); |
1306 | 1306 | ||
diff --git a/drivers/char/synclink.c b/drivers/char/synclink.c index a4150c4519c4..f2864cc64240 100644 --- a/drivers/char/synclink.c +++ b/drivers/char/synclink.c | |||
@@ -1698,11 +1698,10 @@ static void mgsl_isr_transmit_dma( struct mgsl_struct *info ) | |||
1698 | * | 1698 | * |
1699 | * irq interrupt number that caused interrupt | 1699 | * irq interrupt number that caused interrupt |
1700 | * dev_id device ID supplied during interrupt registration | 1700 | * dev_id device ID supplied during interrupt registration |
1701 | * regs interrupted processor context | ||
1702 | * | 1701 | * |
1703 | * Return Value: None | 1702 | * Return Value: None |
1704 | */ | 1703 | */ |
1705 | static irqreturn_t mgsl_interrupt(int irq, void *dev_id, struct pt_regs * regs) | 1704 | static irqreturn_t mgsl_interrupt(int irq, void *dev_id) |
1706 | { | 1705 | { |
1707 | struct mgsl_struct * info; | 1706 | struct mgsl_struct * info; |
1708 | u16 UscVector; | 1707 | u16 UscVector; |
diff --git a/drivers/char/synclink_gt.c b/drivers/char/synclink_gt.c index bdc7cb248b8f..d4334c79f8d4 100644 --- a/drivers/char/synclink_gt.c +++ b/drivers/char/synclink_gt.c | |||
@@ -491,7 +491,7 @@ static void isr_serial(struct slgt_info *info); | |||
491 | static void isr_rdma(struct slgt_info *info); | 491 | static void isr_rdma(struct slgt_info *info); |
492 | static void isr_txeom(struct slgt_info *info, unsigned short status); | 492 | static void isr_txeom(struct slgt_info *info, unsigned short status); |
493 | static void isr_tdma(struct slgt_info *info); | 493 | static void isr_tdma(struct slgt_info *info); |
494 | static irqreturn_t slgt_interrupt(int irq, void *dev_id, struct pt_regs * regs); | 494 | static irqreturn_t slgt_interrupt(int irq, void *dev_id); |
495 | 495 | ||
496 | static int alloc_dma_bufs(struct slgt_info *info); | 496 | static int alloc_dma_bufs(struct slgt_info *info); |
497 | static void free_dma_bufs(struct slgt_info *info); | 497 | static void free_dma_bufs(struct slgt_info *info); |
@@ -2217,9 +2217,8 @@ static void isr_gpio(struct slgt_info *info, unsigned int changed, unsigned int | |||
2217 | * | 2217 | * |
2218 | * irq interrupt number | 2218 | * irq interrupt number |
2219 | * dev_id device ID supplied during interrupt registration | 2219 | * dev_id device ID supplied during interrupt registration |
2220 | * regs interrupted processor context | ||
2221 | */ | 2220 | */ |
2222 | static irqreturn_t slgt_interrupt(int irq, void *dev_id, struct pt_regs * regs) | 2221 | static irqreturn_t slgt_interrupt(int irq, void *dev_id) |
2223 | { | 2222 | { |
2224 | struct slgt_info *info; | 2223 | struct slgt_info *info; |
2225 | unsigned int gsr; | 2224 | unsigned int gsr; |
diff --git a/drivers/char/synclinkmp.c b/drivers/char/synclinkmp.c index 6eb75dcd7961..3e932b681371 100644 --- a/drivers/char/synclinkmp.c +++ b/drivers/char/synclinkmp.c | |||
@@ -2596,8 +2596,7 @@ void isr_io_pin( SLMP_INFO *info, u16 status ) | |||
2596 | * dev_id device ID supplied during interrupt registration | 2596 | * dev_id device ID supplied during interrupt registration |
2597 | * regs interrupted processor context | 2597 | * regs interrupted processor context |
2598 | */ | 2598 | */ |
2599 | static irqreturn_t synclinkmp_interrupt(int irq, void *dev_id, | 2599 | static irqreturn_t synclinkmp_interrupt(int irq, void *dev_id) |
2600 | struct pt_regs *regs) | ||
2601 | { | 2600 | { |
2602 | SLMP_INFO * info; | 2601 | SLMP_INFO * info; |
2603 | unsigned char status, status0, status1=0; | 2602 | unsigned char status, status0, status1=0; |
diff --git a/drivers/char/sysrq.c b/drivers/char/sysrq.c index 6b4d4d1e343d..5f49280779fb 100644 --- a/drivers/char/sysrq.c +++ b/drivers/char/sysrq.c | |||
@@ -35,14 +35,15 @@ | |||
35 | #include <linux/vt_kern.h> | 35 | #include <linux/vt_kern.h> |
36 | #include <linux/workqueue.h> | 36 | #include <linux/workqueue.h> |
37 | #include <linux/kexec.h> | 37 | #include <linux/kexec.h> |
38 | #include <linux/irq.h> | ||
38 | 39 | ||
39 | #include <asm/ptrace.h> | 40 | #include <asm/ptrace.h> |
41 | #include <asm/irq_regs.h> | ||
40 | 42 | ||
41 | /* Whether we react on sysrq keys or just ignore them */ | 43 | /* Whether we react on sysrq keys or just ignore them */ |
42 | int sysrq_enabled = 1; | 44 | int sysrq_enabled = 1; |
43 | 45 | ||
44 | static void sysrq_handle_loglevel(int key, struct pt_regs *pt_regs, | 46 | static void sysrq_handle_loglevel(int key, struct tty_struct *tty) |
45 | struct tty_struct *tty) | ||
46 | { | 47 | { |
47 | int i; | 48 | int i; |
48 | i = key - '0'; | 49 | i = key - '0'; |
@@ -58,8 +59,7 @@ static struct sysrq_key_op sysrq_loglevel_op = { | |||
58 | }; | 59 | }; |
59 | 60 | ||
60 | #ifdef CONFIG_VT | 61 | #ifdef CONFIG_VT |
61 | static void sysrq_handle_SAK(int key, struct pt_regs *pt_regs, | 62 | static void sysrq_handle_SAK(int key, struct tty_struct *tty) |
62 | struct tty_struct *tty) | ||
63 | { | 63 | { |
64 | if (tty) | 64 | if (tty) |
65 | do_SAK(tty); | 65 | do_SAK(tty); |
@@ -76,8 +76,7 @@ static struct sysrq_key_op sysrq_SAK_op = { | |||
76 | #endif | 76 | #endif |
77 | 77 | ||
78 | #ifdef CONFIG_VT | 78 | #ifdef CONFIG_VT |
79 | static void sysrq_handle_unraw(int key, struct pt_regs *pt_regs, | 79 | static void sysrq_handle_unraw(int key, struct tty_struct *tty) |
80 | struct tty_struct *tty) | ||
81 | { | 80 | { |
82 | struct kbd_struct *kbd = &kbd_table[fg_console]; | 81 | struct kbd_struct *kbd = &kbd_table[fg_console]; |
83 | 82 | ||
@@ -95,10 +94,9 @@ static struct sysrq_key_op sysrq_unraw_op = { | |||
95 | #endif /* CONFIG_VT */ | 94 | #endif /* CONFIG_VT */ |
96 | 95 | ||
97 | #ifdef CONFIG_KEXEC | 96 | #ifdef CONFIG_KEXEC |
98 | static void sysrq_handle_crashdump(int key, struct pt_regs *pt_regs, | 97 | static void sysrq_handle_crashdump(int key, struct tty_struct *tty) |
99 | struct tty_struct *tty) | ||
100 | { | 98 | { |
101 | crash_kexec(pt_regs); | 99 | crash_kexec(get_irq_regs()); |
102 | } | 100 | } |
103 | static struct sysrq_key_op sysrq_crashdump_op = { | 101 | static struct sysrq_key_op sysrq_crashdump_op = { |
104 | .handler = sysrq_handle_crashdump, | 102 | .handler = sysrq_handle_crashdump, |
@@ -110,8 +108,7 @@ static struct sysrq_key_op sysrq_crashdump_op = { | |||
110 | #define sysrq_crashdump_op (*(struct sysrq_key_op *)0) | 108 | #define sysrq_crashdump_op (*(struct sysrq_key_op *)0) |
111 | #endif | 109 | #endif |
112 | 110 | ||
113 | static void sysrq_handle_reboot(int key, struct pt_regs *pt_regs, | 111 | static void sysrq_handle_reboot(int key, struct tty_struct *tty) |
114 | struct tty_struct *tty) | ||
115 | { | 112 | { |
116 | lockdep_off(); | 113 | lockdep_off(); |
117 | local_irq_enable(); | 114 | local_irq_enable(); |
@@ -124,8 +121,7 @@ static struct sysrq_key_op sysrq_reboot_op = { | |||
124 | .enable_mask = SYSRQ_ENABLE_BOOT, | 121 | .enable_mask = SYSRQ_ENABLE_BOOT, |
125 | }; | 122 | }; |
126 | 123 | ||
127 | static void sysrq_handle_sync(int key, struct pt_regs *pt_regs, | 124 | static void sysrq_handle_sync(int key, struct tty_struct *tty) |
128 | struct tty_struct *tty) | ||
129 | { | 125 | { |
130 | emergency_sync(); | 126 | emergency_sync(); |
131 | } | 127 | } |
@@ -136,8 +132,7 @@ static struct sysrq_key_op sysrq_sync_op = { | |||
136 | .enable_mask = SYSRQ_ENABLE_SYNC, | 132 | .enable_mask = SYSRQ_ENABLE_SYNC, |
137 | }; | 133 | }; |
138 | 134 | ||
139 | static void sysrq_handle_mountro(int key, struct pt_regs *pt_regs, | 135 | static void sysrq_handle_mountro(int key, struct tty_struct *tty) |
140 | struct tty_struct *tty) | ||
141 | { | 136 | { |
142 | emergency_remount(); | 137 | emergency_remount(); |
143 | } | 138 | } |
@@ -149,8 +144,7 @@ static struct sysrq_key_op sysrq_mountro_op = { | |||
149 | }; | 144 | }; |
150 | 145 | ||
151 | #ifdef CONFIG_LOCKDEP | 146 | #ifdef CONFIG_LOCKDEP |
152 | static void sysrq_handle_showlocks(int key, struct pt_regs *pt_regs, | 147 | static void sysrq_handle_showlocks(int key, struct tty_struct *tty) |
153 | struct tty_struct *tty) | ||
154 | { | 148 | { |
155 | debug_show_all_locks(); | 149 | debug_show_all_locks(); |
156 | } | 150 | } |
@@ -164,11 +158,11 @@ static struct sysrq_key_op sysrq_showlocks_op = { | |||
164 | #define sysrq_showlocks_op (*(struct sysrq_key_op *)0) | 158 | #define sysrq_showlocks_op (*(struct sysrq_key_op *)0) |
165 | #endif | 159 | #endif |
166 | 160 | ||
167 | static void sysrq_handle_showregs(int key, struct pt_regs *pt_regs, | 161 | static void sysrq_handle_showregs(int key, struct tty_struct *tty) |
168 | struct tty_struct *tty) | ||
169 | { | 162 | { |
170 | if (pt_regs) | 163 | struct pt_regs *regs = get_irq_regs(); |
171 | show_regs(pt_regs); | 164 | if (regs) |
165 | show_regs(regs); | ||
172 | } | 166 | } |
173 | static struct sysrq_key_op sysrq_showregs_op = { | 167 | static struct sysrq_key_op sysrq_showregs_op = { |
174 | .handler = sysrq_handle_showregs, | 168 | .handler = sysrq_handle_showregs, |
@@ -177,8 +171,7 @@ static struct sysrq_key_op sysrq_showregs_op = { | |||
177 | .enable_mask = SYSRQ_ENABLE_DUMP, | 171 | .enable_mask = SYSRQ_ENABLE_DUMP, |
178 | }; | 172 | }; |
179 | 173 | ||
180 | static void sysrq_handle_showstate(int key, struct pt_regs *pt_regs, | 174 | static void sysrq_handle_showstate(int key, struct tty_struct *tty) |
181 | struct tty_struct *tty) | ||
182 | { | 175 | { |
183 | show_state(); | 176 | show_state(); |
184 | } | 177 | } |
@@ -189,8 +182,7 @@ static struct sysrq_key_op sysrq_showstate_op = { | |||
189 | .enable_mask = SYSRQ_ENABLE_DUMP, | 182 | .enable_mask = SYSRQ_ENABLE_DUMP, |
190 | }; | 183 | }; |
191 | 184 | ||
192 | static void sysrq_handle_showmem(int key, struct pt_regs *pt_regs, | 185 | static void sysrq_handle_showmem(int key, struct tty_struct *tty) |
193 | struct tty_struct *tty) | ||
194 | { | 186 | { |
195 | show_mem(); | 187 | show_mem(); |
196 | } | 188 | } |
@@ -215,8 +207,7 @@ static void send_sig_all(int sig) | |||
215 | } | 207 | } |
216 | } | 208 | } |
217 | 209 | ||
218 | static void sysrq_handle_term(int key, struct pt_regs *pt_regs, | 210 | static void sysrq_handle_term(int key, struct tty_struct *tty) |
219 | struct tty_struct *tty) | ||
220 | { | 211 | { |
221 | send_sig_all(SIGTERM); | 212 | send_sig_all(SIGTERM); |
222 | console_loglevel = 8; | 213 | console_loglevel = 8; |
@@ -236,8 +227,7 @@ static void moom_callback(void *ignored) | |||
236 | 227 | ||
237 | static DECLARE_WORK(moom_work, moom_callback, NULL); | 228 | static DECLARE_WORK(moom_work, moom_callback, NULL); |
238 | 229 | ||
239 | static void sysrq_handle_moom(int key, struct pt_regs *pt_regs, | 230 | static void sysrq_handle_moom(int key, struct tty_struct *tty) |
240 | struct tty_struct *tty) | ||
241 | { | 231 | { |
242 | schedule_work(&moom_work); | 232 | schedule_work(&moom_work); |
243 | } | 233 | } |
@@ -247,8 +237,7 @@ static struct sysrq_key_op sysrq_moom_op = { | |||
247 | .action_msg = "Manual OOM execution", | 237 | .action_msg = "Manual OOM execution", |
248 | }; | 238 | }; |
249 | 239 | ||
250 | static void sysrq_handle_kill(int key, struct pt_regs *pt_regs, | 240 | static void sysrq_handle_kill(int key, struct tty_struct *tty) |
251 | struct tty_struct *tty) | ||
252 | { | 241 | { |
253 | send_sig_all(SIGKILL); | 242 | send_sig_all(SIGKILL); |
254 | console_loglevel = 8; | 243 | console_loglevel = 8; |
@@ -260,8 +249,7 @@ static struct sysrq_key_op sysrq_kill_op = { | |||
260 | .enable_mask = SYSRQ_ENABLE_SIGNAL, | 249 | .enable_mask = SYSRQ_ENABLE_SIGNAL, |
261 | }; | 250 | }; |
262 | 251 | ||
263 | static void sysrq_handle_unrt(int key, struct pt_regs *pt_regs, | 252 | static void sysrq_handle_unrt(int key, struct tty_struct *tty) |
264 | struct tty_struct *tty) | ||
265 | { | 253 | { |
266 | normalize_rt_tasks(); | 254 | normalize_rt_tasks(); |
267 | } | 255 | } |
@@ -361,8 +349,7 @@ static void __sysrq_put_key_op(int key, struct sysrq_key_op *op_p) | |||
361 | * This is the non-locking version of handle_sysrq. It must/can only be called | 349 | * This is the non-locking version of handle_sysrq. It must/can only be called |
362 | * by sysrq key handlers, as they are inside of the lock | 350 | * by sysrq key handlers, as they are inside of the lock |
363 | */ | 351 | */ |
364 | void __handle_sysrq(int key, struct pt_regs *pt_regs, struct tty_struct *tty, | 352 | void __handle_sysrq(int key, struct tty_struct *tty, int check_mask) |
365 | int check_mask) | ||
366 | { | 353 | { |
367 | struct sysrq_key_op *op_p; | 354 | struct sysrq_key_op *op_p; |
368 | int orig_log_level; | 355 | int orig_log_level; |
@@ -384,7 +371,7 @@ void __handle_sysrq(int key, struct pt_regs *pt_regs, struct tty_struct *tty, | |||
384 | (sysrq_enabled & op_p->enable_mask)) { | 371 | (sysrq_enabled & op_p->enable_mask)) { |
385 | printk("%s\n", op_p->action_msg); | 372 | printk("%s\n", op_p->action_msg); |
386 | console_loglevel = orig_log_level; | 373 | console_loglevel = orig_log_level; |
387 | op_p->handler(key, pt_regs, tty); | 374 | op_p->handler(key, tty); |
388 | } else { | 375 | } else { |
389 | printk("This sysrq operation is disabled.\n"); | 376 | printk("This sysrq operation is disabled.\n"); |
390 | } | 377 | } |
@@ -413,11 +400,11 @@ void __handle_sysrq(int key, struct pt_regs *pt_regs, struct tty_struct *tty, | |||
413 | * This function is called by the keyboard handler when SysRq is pressed | 400 | * This function is called by the keyboard handler when SysRq is pressed |
414 | * and any other keycode arrives. | 401 | * and any other keycode arrives. |
415 | */ | 402 | */ |
416 | void handle_sysrq(int key, struct pt_regs *pt_regs, struct tty_struct *tty) | 403 | void handle_sysrq(int key, struct tty_struct *tty) |
417 | { | 404 | { |
418 | if (!sysrq_enabled) | 405 | if (!sysrq_enabled) |
419 | return; | 406 | return; |
420 | __handle_sysrq(key, pt_regs, tty, 1); | 407 | __handle_sysrq(key, tty, 1); |
421 | } | 408 | } |
422 | EXPORT_SYMBOL(handle_sysrq); | 409 | EXPORT_SYMBOL(handle_sysrq); |
423 | 410 | ||
diff --git a/drivers/char/tlclk.c b/drivers/char/tlclk.c index d2c5ba4e83b8..2444a0e24b31 100644 --- a/drivers/char/tlclk.c +++ b/drivers/char/tlclk.c | |||
@@ -193,7 +193,7 @@ static DEFINE_SPINLOCK(event_lock); | |||
193 | 193 | ||
194 | static int tlclk_major = TLCLK_MAJOR; | 194 | static int tlclk_major = TLCLK_MAJOR; |
195 | 195 | ||
196 | static irqreturn_t tlclk_interrupt(int irq, void *dev_id, struct pt_regs *regs); | 196 | static irqreturn_t tlclk_interrupt(int irq, void *dev_id); |
197 | 197 | ||
198 | static DECLARE_WAIT_QUEUE_HEAD(wq); | 198 | static DECLARE_WAIT_QUEUE_HEAD(wq); |
199 | 199 | ||
@@ -856,7 +856,7 @@ static void switchover_timeout(unsigned long data) | |||
856 | wake_up(&wq); | 856 | wake_up(&wq); |
857 | } | 857 | } |
858 | 858 | ||
859 | static irqreturn_t tlclk_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 859 | static irqreturn_t tlclk_interrupt(int irq, void *dev_id) |
860 | { | 860 | { |
861 | unsigned long flags; | 861 | unsigned long flags; |
862 | 862 | ||
diff --git a/drivers/char/tpm/tpm_tis.c b/drivers/char/tpm/tpm_tis.c index ee7ac6f43c65..483f3f60013c 100644 --- a/drivers/char/tpm/tpm_tis.c +++ b/drivers/char/tpm/tpm_tis.c | |||
@@ -377,7 +377,7 @@ static struct tpm_vendor_specific tpm_tis = { | |||
377 | .fops = &tis_ops,}, | 377 | .fops = &tis_ops,}, |
378 | }; | 378 | }; |
379 | 379 | ||
380 | static irqreturn_t tis_int_probe(int irq, void *dev_id, struct pt_regs *regs) | 380 | static irqreturn_t tis_int_probe(int irq, void *dev_id) |
381 | { | 381 | { |
382 | struct tpm_chip *chip = (struct tpm_chip *) dev_id; | 382 | struct tpm_chip *chip = (struct tpm_chip *) dev_id; |
383 | u32 interrupt; | 383 | u32 interrupt; |
@@ -397,7 +397,7 @@ static irqreturn_t tis_int_probe(int irq, void *dev_id, struct pt_regs *regs) | |||
397 | return IRQ_HANDLED; | 397 | return IRQ_HANDLED; |
398 | } | 398 | } |
399 | 399 | ||
400 | static irqreturn_t tis_int_handler(int irq, void *dev_id, struct pt_regs *regs) | 400 | static irqreturn_t tis_int_handler(int irq, void *dev_id) |
401 | { | 401 | { |
402 | struct tpm_chip *chip = (struct tpm_chip *) dev_id; | 402 | struct tpm_chip *chip = (struct tpm_chip *) dev_id; |
403 | u32 interrupt; | 403 | u32 interrupt; |
diff --git a/drivers/char/viocons.c b/drivers/char/viocons.c index a362ee9c92dd..6d2e314860df 100644 --- a/drivers/char/viocons.c +++ b/drivers/char/viocons.c | |||
@@ -947,7 +947,7 @@ static void vioHandleData(struct HvLpEvent *event) | |||
947 | */ | 947 | */ |
948 | continue; | 948 | continue; |
949 | } else if (vio_sysrq_pressed) { | 949 | } else if (vio_sysrq_pressed) { |
950 | handle_sysrq(cevent->data[index], NULL, tty); | 950 | handle_sysrq(cevent->data[index], tty); |
951 | vio_sysrq_pressed = 0; | 951 | vio_sysrq_pressed = 0; |
952 | /* | 952 | /* |
953 | * continue because we don't want to add | 953 | * continue because we don't want to add |
diff --git a/drivers/char/vme_scc.c b/drivers/char/vme_scc.c index c2ca31eb850b..d0b94dd1af6d 100644 --- a/drivers/char/vme_scc.c +++ b/drivers/char/vme_scc.c | |||
@@ -81,10 +81,10 @@ static int scc_ioctl(struct tty_struct * tty, struct file * filp, | |||
81 | unsigned int cmd, unsigned long arg); | 81 | unsigned int cmd, unsigned long arg); |
82 | static void scc_throttle(struct tty_struct *tty); | 82 | static void scc_throttle(struct tty_struct *tty); |
83 | static void scc_unthrottle(struct tty_struct *tty); | 83 | static void scc_unthrottle(struct tty_struct *tty); |
84 | static irqreturn_t scc_tx_int(int irq, void *data, struct pt_regs *fp); | 84 | static irqreturn_t scc_tx_int(int irq, void *data); |
85 | static irqreturn_t scc_rx_int(int irq, void *data, struct pt_regs *fp); | 85 | static irqreturn_t scc_rx_int(int irq, void *data); |
86 | static irqreturn_t scc_stat_int(int irq, void *data, struct pt_regs *fp); | 86 | static irqreturn_t scc_stat_int(int irq, void *data); |
87 | static irqreturn_t scc_spcond_int(int irq, void *data, struct pt_regs *fp); | 87 | static irqreturn_t scc_spcond_int(int irq, void *data); |
88 | static void scc_setsignals(struct scc_port *port, int dtr, int rts); | 88 | static void scc_setsignals(struct scc_port *port, int dtr, int rts); |
89 | static void scc_break_ctl(struct tty_struct *tty, int break_state); | 89 | static void scc_break_ctl(struct tty_struct *tty, int break_state); |
90 | 90 | ||
@@ -419,7 +419,7 @@ module_init(vme_scc_init); | |||
419 | * Interrupt handlers | 419 | * Interrupt handlers |
420 | *--------------------------------------------------------------------------*/ | 420 | *--------------------------------------------------------------------------*/ |
421 | 421 | ||
422 | static irqreturn_t scc_rx_int(int irq, void *data, struct pt_regs *fp) | 422 | static irqreturn_t scc_rx_int(int irq, void *data) |
423 | { | 423 | { |
424 | unsigned char ch; | 424 | unsigned char ch; |
425 | struct scc_port *port = data; | 425 | struct scc_port *port = data; |
@@ -440,7 +440,7 @@ static irqreturn_t scc_rx_int(int irq, void *data, struct pt_regs *fp) | |||
440 | */ | 440 | */ |
441 | if (SCCread(INT_PENDING_REG) & | 441 | if (SCCread(INT_PENDING_REG) & |
442 | (port->channel == CHANNEL_A ? IPR_A_RX : IPR_B_RX)) { | 442 | (port->channel == CHANNEL_A ? IPR_A_RX : IPR_B_RX)) { |
443 | scc_spcond_int (irq, data, fp); | 443 | scc_spcond_int (irq, data); |
444 | return IRQ_HANDLED; | 444 | return IRQ_HANDLED; |
445 | } | 445 | } |
446 | 446 | ||
@@ -451,7 +451,7 @@ static irqreturn_t scc_rx_int(int irq, void *data, struct pt_regs *fp) | |||
451 | } | 451 | } |
452 | 452 | ||
453 | 453 | ||
454 | static irqreturn_t scc_spcond_int(int irq, void *data, struct pt_regs *fp) | 454 | static irqreturn_t scc_spcond_int(int irq, void *data) |
455 | { | 455 | { |
456 | struct scc_port *port = data; | 456 | struct scc_port *port = data; |
457 | struct tty_struct *tty = port->gs.tty; | 457 | struct tty_struct *tty = port->gs.tty; |
@@ -496,7 +496,7 @@ static irqreturn_t scc_spcond_int(int irq, void *data, struct pt_regs *fp) | |||
496 | } | 496 | } |
497 | 497 | ||
498 | 498 | ||
499 | static irqreturn_t scc_tx_int(int irq, void *data, struct pt_regs *fp) | 499 | static irqreturn_t scc_tx_int(int irq, void *data) |
500 | { | 500 | { |
501 | struct scc_port *port = data; | 501 | struct scc_port *port = data; |
502 | SCC_ACCESS_INIT(port); | 502 | SCC_ACCESS_INIT(port); |
@@ -538,7 +538,7 @@ static irqreturn_t scc_tx_int(int irq, void *data, struct pt_regs *fp) | |||
538 | } | 538 | } |
539 | 539 | ||
540 | 540 | ||
541 | static irqreturn_t scc_stat_int(int irq, void *data, struct pt_regs *fp) | 541 | static irqreturn_t scc_stat_int(int irq, void *data) |
542 | { | 542 | { |
543 | struct scc_port *port = data; | 543 | struct scc_port *port = data; |
544 | unsigned channel = port->channel; | 544 | unsigned channel = port->channel; |
@@ -593,7 +593,7 @@ static void scc_enable_tx_interrupts(void *ptr) | |||
593 | local_irq_save(flags); | 593 | local_irq_save(flags); |
594 | SCCmod(INT_AND_DMA_REG, 0xff, IDR_TX_INT_ENAB); | 594 | SCCmod(INT_AND_DMA_REG, 0xff, IDR_TX_INT_ENAB); |
595 | /* restart the transmitter */ | 595 | /* restart the transmitter */ |
596 | scc_tx_int (0, port, 0); | 596 | scc_tx_int (0, port); |
597 | local_irq_restore(flags); | 597 | local_irq_restore(flags); |
598 | } | 598 | } |
599 | 599 | ||
diff --git a/drivers/char/vr41xx_giu.c b/drivers/char/vr41xx_giu.c index 8116a47b80f4..8e7949305171 100644 --- a/drivers/char/vr41xx_giu.c +++ b/drivers/char/vr41xx_giu.c | |||
@@ -221,7 +221,7 @@ static struct hw_interrupt_type giuint_high_irq_type = { | |||
221 | .end = end_giuint_high_irq, | 221 | .end = end_giuint_high_irq, |
222 | }; | 222 | }; |
223 | 223 | ||
224 | static int giu_get_irq(unsigned int irq, struct pt_regs *regs) | 224 | static int giu_get_irq(unsigned int irq) |
225 | { | 225 | { |
226 | uint16_t pendl, pendh, maskl, maskh; | 226 | uint16_t pendl, pendh, maskl, maskh; |
227 | int i; | 227 | int i; |
diff --git a/drivers/char/watchdog/eurotechwdt.c b/drivers/char/watchdog/eurotechwdt.c index 4f4269754c46..e228d6e173ce 100644 --- a/drivers/char/watchdog/eurotechwdt.c +++ b/drivers/char/watchdog/eurotechwdt.c | |||
@@ -153,7 +153,7 @@ static void eurwdt_activate_timer(void) | |||
153 | * Kernel methods. | 153 | * Kernel methods. |
154 | */ | 154 | */ |
155 | 155 | ||
156 | static irqreturn_t eurwdt_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 156 | static irqreturn_t eurwdt_interrupt(int irq, void *dev_id) |
157 | { | 157 | { |
158 | printk(KERN_CRIT "timeout WDT timeout\n"); | 158 | printk(KERN_CRIT "timeout WDT timeout\n"); |
159 | 159 | ||
diff --git a/drivers/char/watchdog/mpcore_wdt.c b/drivers/char/watchdog/mpcore_wdt.c index 02d336ace504..3404a9c67f08 100644 --- a/drivers/char/watchdog/mpcore_wdt.c +++ b/drivers/char/watchdog/mpcore_wdt.c | |||
@@ -64,7 +64,7 @@ MODULE_PARM_DESC(mpcore_noboot, "MPcore watchdog action, set to 1 to ignore rebo | |||
64 | * This is the interrupt handler. Note that we only use this | 64 | * This is the interrupt handler. Note that we only use this |
65 | * in testing mode, so don't actually do a reboot here. | 65 | * in testing mode, so don't actually do a reboot here. |
66 | */ | 66 | */ |
67 | static irqreturn_t mpcore_wdt_fire(int irq, void *arg, struct pt_regs *regs) | 67 | static irqreturn_t mpcore_wdt_fire(int irq, void *arg) |
68 | { | 68 | { |
69 | struct mpcore_wdt *wdt = arg; | 69 | struct mpcore_wdt *wdt = arg; |
70 | 70 | ||
diff --git a/drivers/char/watchdog/pcwd_usb.c b/drivers/char/watchdog/pcwd_usb.c index 77662cb0ac46..bda45334d802 100644 --- a/drivers/char/watchdog/pcwd_usb.c +++ b/drivers/char/watchdog/pcwd_usb.c | |||
@@ -158,7 +158,7 @@ static struct usb_driver usb_pcwd_driver = { | |||
158 | }; | 158 | }; |
159 | 159 | ||
160 | 160 | ||
161 | static void usb_pcwd_intr_done(struct urb *urb, struct pt_regs *regs) | 161 | static void usb_pcwd_intr_done(struct urb *urb) |
162 | { | 162 | { |
163 | struct usb_pcwd_private *usb_pcwd = (struct usb_pcwd_private *)urb->context; | 163 | struct usb_pcwd_private *usb_pcwd = (struct usb_pcwd_private *)urb->context; |
164 | unsigned char *data = usb_pcwd->intr_buffer; | 164 | unsigned char *data = usb_pcwd->intr_buffer; |
diff --git a/drivers/char/watchdog/s3c2410_wdt.c b/drivers/char/watchdog/s3c2410_wdt.c index b36a04ae9ab8..68b1ca976d53 100644 --- a/drivers/char/watchdog/s3c2410_wdt.c +++ b/drivers/char/watchdog/s3c2410_wdt.c | |||
@@ -336,8 +336,7 @@ static struct miscdevice s3c2410wdt_miscdev = { | |||
336 | 336 | ||
337 | /* interrupt handler code */ | 337 | /* interrupt handler code */ |
338 | 338 | ||
339 | static irqreturn_t s3c2410wdt_irq(int irqno, void *param, | 339 | static irqreturn_t s3c2410wdt_irq(int irqno, void *param) |
340 | struct pt_regs *regs) | ||
341 | { | 340 | { |
342 | printk(KERN_INFO PFX "Watchdog timer expired!\n"); | 341 | printk(KERN_INFO PFX "Watchdog timer expired!\n"); |
343 | 342 | ||
diff --git a/drivers/char/watchdog/wdt.c b/drivers/char/watchdog/wdt.c index 13f23f4a2233..517fbd8643f8 100644 --- a/drivers/char/watchdog/wdt.c +++ b/drivers/char/watchdog/wdt.c | |||
@@ -225,14 +225,13 @@ static int wdt_get_temperature(int *temperature) | |||
225 | * wdt_interrupt: | 225 | * wdt_interrupt: |
226 | * @irq: Interrupt number | 226 | * @irq: Interrupt number |
227 | * @dev_id: Unused as we don't allow multiple devices. | 227 | * @dev_id: Unused as we don't allow multiple devices. |
228 | * @regs: Unused. | ||
229 | * | 228 | * |
230 | * Handle an interrupt from the board. These are raised when the status | 229 | * Handle an interrupt from the board. These are raised when the status |
231 | * map changes in what the board considers an interesting way. That means | 230 | * map changes in what the board considers an interesting way. That means |
232 | * a failure condition occurring. | 231 | * a failure condition occurring. |
233 | */ | 232 | */ |
234 | 233 | ||
235 | static irqreturn_t wdt_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 234 | static irqreturn_t wdt_interrupt(int irq, void *dev_id) |
236 | { | 235 | { |
237 | /* | 236 | /* |
238 | * Read the status register see what is up and | 237 | * Read the status register see what is up and |
diff --git a/drivers/char/watchdog/wdt285.c b/drivers/char/watchdog/wdt285.c index 89a249e23fde..e4cf661dc890 100644 --- a/drivers/char/watchdog/wdt285.c +++ b/drivers/char/watchdog/wdt285.c | |||
@@ -46,7 +46,7 @@ static unsigned long timer_alive; | |||
46 | /* | 46 | /* |
47 | * If the timer expires.. | 47 | * If the timer expires.. |
48 | */ | 48 | */ |
49 | static void watchdog_fire(int irq, void *dev_id, struct pt_regs *regs) | 49 | static void watchdog_fire(int irq, void *dev_id) |
50 | { | 50 | { |
51 | printk(KERN_CRIT "Watchdog: Would Reboot.\n"); | 51 | printk(KERN_CRIT "Watchdog: Would Reboot.\n"); |
52 | *CSR_TIMER4_CNTL = 0; | 52 | *CSR_TIMER4_CNTL = 0; |
diff --git a/drivers/char/watchdog/wdt_pci.c b/drivers/char/watchdog/wdt_pci.c index 74d8cf836e13..ce1261c5cbce 100644 --- a/drivers/char/watchdog/wdt_pci.c +++ b/drivers/char/watchdog/wdt_pci.c | |||
@@ -270,14 +270,13 @@ static int wdtpci_get_temperature(int *temperature) | |||
270 | * wdtpci_interrupt: | 270 | * wdtpci_interrupt: |
271 | * @irq: Interrupt number | 271 | * @irq: Interrupt number |
272 | * @dev_id: Unused as we don't allow multiple devices. | 272 | * @dev_id: Unused as we don't allow multiple devices. |
273 | * @regs: Unused. | ||
274 | * | 273 | * |
275 | * Handle an interrupt from the board. These are raised when the status | 274 | * Handle an interrupt from the board. These are raised when the status |
276 | * map changes in what the board considers an interesting way. That means | 275 | * map changes in what the board considers an interesting way. That means |
277 | * a failure condition occurring. | 276 | * a failure condition occurring. |
278 | */ | 277 | */ |
279 | 278 | ||
280 | static irqreturn_t wdtpci_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 279 | static irqreturn_t wdtpci_interrupt(int irq, void *dev_id) |
281 | { | 280 | { |
282 | /* | 281 | /* |
283 | * Read the status register see what is up and | 282 | * Read the status register see what is up and |
diff --git a/drivers/dma/ioatdma.c b/drivers/dma/ioatdma.c index dbd4d6c3698e..0358419a0e48 100644 --- a/drivers/dma/ioatdma.c +++ b/drivers/dma/ioatdma.c | |||
@@ -80,7 +80,7 @@ static int enumerate_dma_channels(struct ioat_device *device) | |||
80 | 80 | ||
81 | static struct ioat_desc_sw *ioat_dma_alloc_descriptor( | 81 | static struct ioat_desc_sw *ioat_dma_alloc_descriptor( |
82 | struct ioat_dma_chan *ioat_chan, | 82 | struct ioat_dma_chan *ioat_chan, |
83 | int flags) | 83 | gfp_t flags) |
84 | { | 84 | { |
85 | struct ioat_dma_descriptor *desc; | 85 | struct ioat_dma_descriptor *desc; |
86 | struct ioat_desc_sw *desc_sw; | 86 | struct ioat_desc_sw *desc_sw; |
@@ -563,7 +563,7 @@ static struct pci_driver ioat_pci_drv = { | |||
563 | .remove = __devexit_p(ioat_remove), | 563 | .remove = __devexit_p(ioat_remove), |
564 | }; | 564 | }; |
565 | 565 | ||
566 | static irqreturn_t ioat_do_interrupt(int irq, void *data, struct pt_regs *regs) | 566 | static irqreturn_t ioat_do_interrupt(int irq, void *data) |
567 | { | 567 | { |
568 | struct ioat_device *instance = data; | 568 | struct ioat_device *instance = data; |
569 | unsigned long attnstatus; | 569 | unsigned long attnstatus; |
@@ -686,7 +686,7 @@ static int __devinit ioat_probe(struct pci_dev *pdev, | |||
686 | { | 686 | { |
687 | int err; | 687 | int err; |
688 | unsigned long mmio_start, mmio_len; | 688 | unsigned long mmio_start, mmio_len; |
689 | void *reg_base; | 689 | void __iomem *reg_base; |
690 | struct ioat_device *device; | 690 | struct ioat_device *device; |
691 | 691 | ||
692 | err = pci_enable_device(pdev); | 692 | err = pci_enable_device(pdev); |
diff --git a/drivers/dma/ioatdma.h b/drivers/dma/ioatdma.h index a5d3b3644160..62b26a9be4c9 100644 --- a/drivers/dma/ioatdma.h +++ b/drivers/dma/ioatdma.h | |||
@@ -44,7 +44,7 @@ extern struct list_head dma_client_list; | |||
44 | 44 | ||
45 | struct ioat_device { | 45 | struct ioat_device { |
46 | struct pci_dev *pdev; | 46 | struct pci_dev *pdev; |
47 | void *reg_base; | 47 | void __iomem *reg_base; |
48 | struct pci_pool *dma_pool; | 48 | struct pci_pool *dma_pool; |
49 | struct pci_pool *completion_pool; | 49 | struct pci_pool *completion_pool; |
50 | 50 | ||
@@ -73,7 +73,7 @@ struct ioat_device { | |||
73 | 73 | ||
74 | struct ioat_dma_chan { | 74 | struct ioat_dma_chan { |
75 | 75 | ||
76 | void *reg_base; | 76 | void __iomem *reg_base; |
77 | 77 | ||
78 | dma_cookie_t completed_cookie; | 78 | dma_cookie_t completed_cookie; |
79 | unsigned long last_completion; | 79 | unsigned long last_completion; |
diff --git a/drivers/fc4/soc.c b/drivers/fc4/soc.c index 3b07e0ca81cd..b09dfc78e5a2 100644 --- a/drivers/fc4/soc.c +++ b/drivers/fc4/soc.c | |||
@@ -334,7 +334,7 @@ update_out: | |||
334 | } | 334 | } |
335 | } | 335 | } |
336 | 336 | ||
337 | static irqreturn_t soc_intr(int irq, void *dev_id, struct pt_regs *regs) | 337 | static irqreturn_t soc_intr(int irq, void *dev_id) |
338 | { | 338 | { |
339 | u32 cmd; | 339 | u32 cmd; |
340 | unsigned long flags; | 340 | unsigned long flags; |
diff --git a/drivers/fc4/socal.c b/drivers/fc4/socal.c index 2b75edc5859d..a6b1ae256e16 100644 --- a/drivers/fc4/socal.c +++ b/drivers/fc4/socal.c | |||
@@ -404,7 +404,7 @@ update_out: | |||
404 | } | 404 | } |
405 | } | 405 | } |
406 | 406 | ||
407 | static irqreturn_t socal_intr(int irq, void *dev_id, struct pt_regs *regs) | 407 | static irqreturn_t socal_intr(int irq, void *dev_id) |
408 | { | 408 | { |
409 | u32 cmd; | 409 | u32 cmd; |
410 | unsigned long flags; | 410 | unsigned long flags; |
diff --git a/drivers/firmware/dcdbas.c b/drivers/firmware/dcdbas.c index 339f405ff708..8bcb58cd4ac0 100644 --- a/drivers/firmware/dcdbas.c +++ b/drivers/firmware/dcdbas.c | |||
@@ -559,7 +559,7 @@ static int __devinit dcdbas_probe(struct platform_device *dev) | |||
559 | while (--i >= 0) | 559 | while (--i >= 0) |
560 | sysfs_remove_bin_file(&dev->dev.kobj, | 560 | sysfs_remove_bin_file(&dev->dev.kobj, |
561 | dcdbas_bin_attrs[i]); | 561 | dcdbas_bin_attrs[i]); |
562 | sysfs_create_group(&dev->dev.kobj, &dcdbas_attr_group); | 562 | sysfs_remove_group(&dev->dev.kobj, &dcdbas_attr_group); |
563 | return error; | 563 | return error; |
564 | } | 564 | } |
565 | } | 565 | } |
diff --git a/drivers/i2c/busses/i2c-elektor.c b/drivers/i2c/busses/i2c-elektor.c index caa8e5c8bfbb..a591fe685f06 100644 --- a/drivers/i2c/busses/i2c-elektor.c +++ b/drivers/i2c/busses/i2c-elektor.c | |||
@@ -131,7 +131,7 @@ static void pcf_isa_waitforpin(void) { | |||
131 | } | 131 | } |
132 | 132 | ||
133 | 133 | ||
134 | static irqreturn_t pcf_isa_handler(int this_irq, void *dev_id, struct pt_regs *regs) { | 134 | static irqreturn_t pcf_isa_handler(int this_irq, void *dev_id) { |
135 | spin_lock(&lock); | 135 | spin_lock(&lock); |
136 | pcf_pending = 1; | 136 | pcf_pending = 1; |
137 | spin_unlock(&lock); | 137 | spin_unlock(&lock); |
diff --git a/drivers/i2c/busses/i2c-ibm_iic.c b/drivers/i2c/busses/i2c-ibm_iic.c index 80d4ba1bdfec..781a99c1647a 100644 --- a/drivers/i2c/busses/i2c-ibm_iic.c +++ b/drivers/i2c/busses/i2c-ibm_iic.c | |||
@@ -320,7 +320,7 @@ err: | |||
320 | /* | 320 | /* |
321 | * IIC interrupt handler | 321 | * IIC interrupt handler |
322 | */ | 322 | */ |
323 | static irqreturn_t iic_handler(int irq, void *dev_id, struct pt_regs *regs) | 323 | static irqreturn_t iic_handler(int irq, void *dev_id) |
324 | { | 324 | { |
325 | struct ibm_iic_private* dev = (struct ibm_iic_private*)dev_id; | 325 | struct ibm_iic_private* dev = (struct ibm_iic_private*)dev_id; |
326 | volatile struct iic_regs __iomem *iic = dev->vaddr; | 326 | volatile struct iic_regs __iomem *iic = dev->vaddr; |
diff --git a/drivers/i2c/busses/i2c-iop3xx.c b/drivers/i2c/busses/i2c-iop3xx.c index 4436c89be58e..d108ab4974cc 100644 --- a/drivers/i2c/busses/i2c-iop3xx.c +++ b/drivers/i2c/busses/i2c-iop3xx.c | |||
@@ -120,7 +120,7 @@ iop3xx_i2c_transaction_cleanup(struct i2c_algo_iop3xx_data *iop3xx_adap) | |||
120 | * Then it passes the SR flags of interest to BH via adap data | 120 | * Then it passes the SR flags of interest to BH via adap data |
121 | */ | 121 | */ |
122 | static irqreturn_t | 122 | static irqreturn_t |
123 | iop3xx_i2c_irq_handler(int this_irq, void *dev_id, struct pt_regs *regs) | 123 | iop3xx_i2c_irq_handler(int this_irq, void *dev_id) |
124 | { | 124 | { |
125 | struct i2c_algo_iop3xx_data *iop3xx_adap = dev_id; | 125 | struct i2c_algo_iop3xx_data *iop3xx_adap = dev_id; |
126 | u32 sr = __raw_readl(iop3xx_adap->ioaddr + SR_OFFSET); | 126 | u32 sr = __raw_readl(iop3xx_adap->ioaddr + SR_OFFSET); |
diff --git a/drivers/i2c/busses/i2c-ite.c b/drivers/i2c/busses/i2c-ite.c index 559a62b04ee9..f7d71869b3b9 100644 --- a/drivers/i2c/busses/i2c-ite.c +++ b/drivers/i2c/busses/i2c-ite.c | |||
@@ -140,8 +140,7 @@ static void iic_ite_waitforpin(void) { | |||
140 | } | 140 | } |
141 | 141 | ||
142 | 142 | ||
143 | static irqreturn_t iic_ite_handler(int this_irq, void *dev_id, | 143 | static irqreturn_t iic_ite_handler(int this_irq, void *dev_id) |
144 | struct pt_regs *regs) | ||
145 | { | 144 | { |
146 | spin_lock(&lock); | 145 | spin_lock(&lock); |
147 | iic_pending = 1; | 146 | iic_pending = 1; |
diff --git a/drivers/i2c/busses/i2c-mpc.c b/drivers/i2c/busses/i2c-mpc.c index 155a986de516..ee65aa1be13a 100644 --- a/drivers/i2c/busses/i2c-mpc.c +++ b/drivers/i2c/busses/i2c-mpc.c | |||
@@ -63,7 +63,7 @@ static __inline__ void writeccr(struct mpc_i2c *i2c, u32 x) | |||
63 | writeb(x, i2c->base + MPC_I2C_CR); | 63 | writeb(x, i2c->base + MPC_I2C_CR); |
64 | } | 64 | } |
65 | 65 | ||
66 | static irqreturn_t mpc_i2c_isr(int irq, void *dev_id, struct pt_regs *regs) | 66 | static irqreturn_t mpc_i2c_isr(int irq, void *dev_id) |
67 | { | 67 | { |
68 | struct mpc_i2c *i2c = dev_id; | 68 | struct mpc_i2c *i2c = dev_id; |
69 | if (readb(i2c->base + MPC_I2C_SR) & CSR_MIF) { | 69 | if (readb(i2c->base + MPC_I2C_SR) & CSR_MIF) { |
diff --git a/drivers/i2c/busses/i2c-mv64xxx.c b/drivers/i2c/busses/i2c-mv64xxx.c index eacbaf745b64..bbc8e3a7ff55 100644 --- a/drivers/i2c/busses/i2c-mv64xxx.c +++ b/drivers/i2c/busses/i2c-mv64xxx.c | |||
@@ -278,7 +278,7 @@ mv64xxx_i2c_do_action(struct mv64xxx_i2c_data *drv_data) | |||
278 | } | 278 | } |
279 | 279 | ||
280 | static int | 280 | static int |
281 | mv64xxx_i2c_intr(int irq, void *dev_id, struct pt_regs *regs) | 281 | mv64xxx_i2c_intr(int irq, void *dev_id) |
282 | { | 282 | { |
283 | struct mv64xxx_i2c_data *drv_data = dev_id; | 283 | struct mv64xxx_i2c_data *drv_data = dev_id; |
284 | unsigned long flags; | 284 | unsigned long flags; |
diff --git a/drivers/i2c/busses/i2c-ocores.c b/drivers/i2c/busses/i2c-ocores.c index 3e276e958ef7..f28a76d1c0af 100644 --- a/drivers/i2c/busses/i2c-ocores.c +++ b/drivers/i2c/busses/i2c-ocores.c | |||
@@ -143,7 +143,7 @@ static void ocores_process(struct ocores_i2c *i2c) | |||
143 | } | 143 | } |
144 | } | 144 | } |
145 | 145 | ||
146 | static irqreturn_t ocores_isr(int irq, void *dev_id, struct pt_regs *regs) | 146 | static irqreturn_t ocores_isr(int irq, void *dev_id) |
147 | { | 147 | { |
148 | struct ocores_i2c *i2c = dev_id; | 148 | struct ocores_i2c *i2c = dev_id; |
149 | 149 | ||
diff --git a/drivers/i2c/busses/i2c-omap.c b/drivers/i2c/busses/i2c-omap.c index 81d87d2c2a2d..dec04da0455c 100644 --- a/drivers/i2c/busses/i2c-omap.c +++ b/drivers/i2c/busses/i2c-omap.c | |||
@@ -400,7 +400,7 @@ omap_i2c_ack_stat(struct omap_i2c_dev *dev, u16 stat) | |||
400 | } | 400 | } |
401 | 401 | ||
402 | static irqreturn_t | 402 | static irqreturn_t |
403 | omap_i2c_rev1_isr(int this_irq, void *dev_id, struct pt_regs *regs) | 403 | omap_i2c_rev1_isr(int this_irq, void *dev_id) |
404 | { | 404 | { |
405 | struct omap_i2c_dev *dev = dev_id; | 405 | struct omap_i2c_dev *dev = dev_id; |
406 | u16 iv, w; | 406 | u16 iv, w; |
@@ -452,7 +452,7 @@ omap_i2c_rev1_isr(int this_irq, void *dev_id, struct pt_regs *regs) | |||
452 | } | 452 | } |
453 | 453 | ||
454 | static irqreturn_t | 454 | static irqreturn_t |
455 | omap_i2c_isr(int this_irq, void *dev_id, struct pt_regs *regs) | 455 | omap_i2c_isr(int this_irq, void *dev_id) |
456 | { | 456 | { |
457 | struct omap_i2c_dev *dev = dev_id; | 457 | struct omap_i2c_dev *dev = dev_id; |
458 | u16 bits; | 458 | u16 bits; |
diff --git a/drivers/i2c/busses/i2c-pca-isa.c b/drivers/i2c/busses/i2c-pca-isa.c index d9b4ddbad7e0..407840b6a260 100644 --- a/drivers/i2c/busses/i2c-pca-isa.c +++ b/drivers/i2c/busses/i2c-pca-isa.c | |||
@@ -99,7 +99,7 @@ static int pca_isa_waitforinterrupt(struct i2c_algo_pca_data *adap) | |||
99 | return ret; | 99 | return ret; |
100 | } | 100 | } |
101 | 101 | ||
102 | static irqreturn_t pca_handler(int this_irq, void *dev_id, struct pt_regs *regs) { | 102 | static irqreturn_t pca_handler(int this_irq, void *dev_id) { |
103 | wake_up_interruptible(&pca_wait); | 103 | wake_up_interruptible(&pca_wait); |
104 | return IRQ_HANDLED; | 104 | return IRQ_HANDLED; |
105 | } | 105 | } |
diff --git a/drivers/i2c/busses/i2c-powermac.c b/drivers/i2c/busses/i2c-powermac.c index a508cb962d24..648d55533d87 100644 --- a/drivers/i2c/busses/i2c-powermac.c +++ b/drivers/i2c/busses/i2c-powermac.c | |||
@@ -182,9 +182,9 @@ static const struct i2c_algorithm i2c_powermac_algorithm = { | |||
182 | }; | 182 | }; |
183 | 183 | ||
184 | 184 | ||
185 | static int i2c_powermac_remove(struct device *dev) | 185 | static int i2c_powermac_remove(struct platform_device *dev) |
186 | { | 186 | { |
187 | struct i2c_adapter *adapter = dev_get_drvdata(dev); | 187 | struct i2c_adapter *adapter = platform_get_drvdata(dev); |
188 | struct pmac_i2c_bus *bus = i2c_get_adapdata(adapter); | 188 | struct pmac_i2c_bus *bus = i2c_get_adapdata(adapter); |
189 | int rc; | 189 | int rc; |
190 | 190 | ||
@@ -195,16 +195,16 @@ static int i2c_powermac_remove(struct device *dev) | |||
195 | if (rc) | 195 | if (rc) |
196 | printk("i2c-powermac.c: Failed to remove bus %s !\n", | 196 | printk("i2c-powermac.c: Failed to remove bus %s !\n", |
197 | adapter->name); | 197 | adapter->name); |
198 | dev_set_drvdata(dev, NULL); | 198 | platform_set_drvdata(dev, NULL); |
199 | kfree(adapter); | 199 | kfree(adapter); |
200 | 200 | ||
201 | return 0; | 201 | return 0; |
202 | } | 202 | } |
203 | 203 | ||
204 | 204 | ||
205 | static int i2c_powermac_probe(struct device *dev) | 205 | static int __devexit i2c_powermac_probe(struct platform_device *dev) |
206 | { | 206 | { |
207 | struct pmac_i2c_bus *bus = dev->platform_data; | 207 | struct pmac_i2c_bus *bus = dev->dev.platform_data; |
208 | struct device_node *parent = NULL; | 208 | struct device_node *parent = NULL; |
209 | struct i2c_adapter *adapter; | 209 | struct i2c_adapter *adapter; |
210 | char name[32]; | 210 | char name[32]; |
@@ -246,11 +246,11 @@ static int i2c_powermac_probe(struct device *dev) | |||
246 | printk(KERN_ERR "i2c-powermac: can't allocate inteface !\n"); | 246 | printk(KERN_ERR "i2c-powermac: can't allocate inteface !\n"); |
247 | return -ENOMEM; | 247 | return -ENOMEM; |
248 | } | 248 | } |
249 | dev_set_drvdata(dev, adapter); | 249 | platform_set_drvdata(dev, adapter); |
250 | strcpy(adapter->name, name); | 250 | strcpy(adapter->name, name); |
251 | adapter->algo = &i2c_powermac_algorithm; | 251 | adapter->algo = &i2c_powermac_algorithm; |
252 | i2c_set_adapdata(adapter, bus); | 252 | i2c_set_adapdata(adapter, bus); |
253 | adapter->dev.parent = dev; | 253 | adapter->dev.parent = &dev->dev; |
254 | pmac_i2c_attach_adapter(bus, adapter); | 254 | pmac_i2c_attach_adapter(bus, adapter); |
255 | rc = i2c_add_adapter(adapter); | 255 | rc = i2c_add_adapter(adapter); |
256 | if (rc) { | 256 | if (rc) { |
@@ -265,23 +265,25 @@ static int i2c_powermac_probe(struct device *dev) | |||
265 | } | 265 | } |
266 | 266 | ||
267 | 267 | ||
268 | static struct device_driver i2c_powermac_driver = { | 268 | static struct platform_driver i2c_powermac_driver = { |
269 | .name = "i2c-powermac", | ||
270 | .bus = &platform_bus_type, | ||
271 | .probe = i2c_powermac_probe, | 269 | .probe = i2c_powermac_probe, |
272 | .remove = i2c_powermac_remove, | 270 | .remove = __devexit_p(i2c_powermac_remove), |
271 | .driver = { | ||
272 | .name = "i2c-powermac", | ||
273 | .bus = &platform_bus_type, | ||
274 | }, | ||
273 | }; | 275 | }; |
274 | 276 | ||
275 | static int __init i2c_powermac_init(void) | 277 | static int __init i2c_powermac_init(void) |
276 | { | 278 | { |
277 | driver_register(&i2c_powermac_driver); | 279 | platform_driver_register(&i2c_powermac_driver); |
278 | return 0; | 280 | return 0; |
279 | } | 281 | } |
280 | 282 | ||
281 | 283 | ||
282 | static void __exit i2c_powermac_cleanup(void) | 284 | static void __exit i2c_powermac_cleanup(void) |
283 | { | 285 | { |
284 | driver_unregister(&i2c_powermac_driver); | 286 | platform_driver_unregister(&i2c_powermac_driver); |
285 | } | 287 | } |
286 | 288 | ||
287 | module_init(i2c_powermac_init); | 289 | module_init(i2c_powermac_init); |
diff --git a/drivers/i2c/busses/i2c-pxa.c b/drivers/i2c/busses/i2c-pxa.c index cd4ad98ad517..81050d3c9b21 100644 --- a/drivers/i2c/busses/i2c-pxa.c +++ b/drivers/i2c/busses/i2c-pxa.c | |||
@@ -850,7 +850,7 @@ static void i2c_pxa_irq_rxfull(struct pxa_i2c *i2c, u32 isr) | |||
850 | ICR = icr; | 850 | ICR = icr; |
851 | } | 851 | } |
852 | 852 | ||
853 | static irqreturn_t i2c_pxa_handler(int this_irq, void *dev_id, struct pt_regs *regs) | 853 | static irqreturn_t i2c_pxa_handler(int this_irq, void *dev_id) |
854 | { | 854 | { |
855 | struct pxa_i2c *i2c = dev_id; | 855 | struct pxa_i2c *i2c = dev_id; |
856 | u32 isr = ISR; | 856 | u32 isr = ISR; |
diff --git a/drivers/i2c/busses/i2c-rpx.c b/drivers/i2c/busses/i2c-rpx.c index 0ebec3c1a54e..8764df06f51d 100644 --- a/drivers/i2c/busses/i2c-rpx.c +++ b/drivers/i2c/busses/i2c-rpx.c | |||
@@ -55,10 +55,10 @@ rpx_iic_init(struct i2c_algo_8xx_data *data) | |||
55 | data->i2c = (i2c8xx_t *)&(((immap_t *)IMAP_ADDR)->im_i2c); | 55 | data->i2c = (i2c8xx_t *)&(((immap_t *)IMAP_ADDR)->im_i2c); |
56 | } | 56 | } |
57 | 57 | ||
58 | static int rpx_install_isr(int irq, void (*func)(void *, void *), void *data) | 58 | static int rpx_install_isr(int irq, void (*func)(void *), void *data) |
59 | { | 59 | { |
60 | /* install interrupt handler */ | 60 | /* install interrupt handler */ |
61 | cpm_install_handler(irq, (void (*)(void *, struct pt_regs *)) func, data); | 61 | cpm_install_handler(irq, func, data); |
62 | 62 | ||
63 | return 0; | 63 | return 0; |
64 | } | 64 | } |
diff --git a/drivers/i2c/busses/i2c-s3c2410.c b/drivers/i2c/busses/i2c-s3c2410.c index 9ebe429a0a0f..4ca6de209b8b 100644 --- a/drivers/i2c/busses/i2c-s3c2410.c +++ b/drivers/i2c/busses/i2c-s3c2410.c | |||
@@ -423,8 +423,7 @@ static int i2s_s3c_irq_nextbyte(struct s3c24xx_i2c *i2c, unsigned long iicstat) | |||
423 | * top level IRQ servicing routine | 423 | * top level IRQ servicing routine |
424 | */ | 424 | */ |
425 | 425 | ||
426 | static irqreturn_t s3c24xx_i2c_irq(int irqno, void *dev_id, | 426 | static irqreturn_t s3c24xx_i2c_irq(int irqno, void *dev_id) |
427 | struct pt_regs *regs) | ||
428 | { | 427 | { |
429 | struct s3c24xx_i2c *i2c = dev_id; | 428 | struct s3c24xx_i2c *i2c = dev_id; |
430 | unsigned long status; | 429 | unsigned long status; |
diff --git a/drivers/i2c/chips/isp1301_omap.c b/drivers/i2c/chips/isp1301_omap.c index 182f04953466..ccdf3e90862b 100644 --- a/drivers/i2c/chips/isp1301_omap.c +++ b/drivers/i2c/chips/isp1301_omap.c | |||
@@ -669,7 +669,7 @@ pulldown: | |||
669 | dump_regs(isp, "otg->isp1301"); | 669 | dump_regs(isp, "otg->isp1301"); |
670 | } | 670 | } |
671 | 671 | ||
672 | static irqreturn_t omap_otg_irq(int irq, void *_isp, struct pt_regs *regs) | 672 | static irqreturn_t omap_otg_irq(int irq, void *_isp) |
673 | { | 673 | { |
674 | u16 otg_irq = OTG_IRQ_SRC_REG; | 674 | u16 otg_irq = OTG_IRQ_SRC_REG; |
675 | u32 otg_ctrl; | 675 | u32 otg_ctrl; |
@@ -1181,7 +1181,7 @@ isp1301_work(void *data) | |||
1181 | isp->working = 0; | 1181 | isp->working = 0; |
1182 | } | 1182 | } |
1183 | 1183 | ||
1184 | static irqreturn_t isp1301_irq(int irq, void *isp, struct pt_regs *regs) | 1184 | static irqreturn_t isp1301_irq(int irq, void *isp) |
1185 | { | 1185 | { |
1186 | isp1301_defer_work(isp, WORK_UPDATE_OTG); | 1186 | isp1301_defer_work(isp, WORK_UPDATE_OTG); |
1187 | return IRQ_HANDLED; | 1187 | return IRQ_HANDLED; |
diff --git a/drivers/i2c/chips/tps65010.c b/drivers/i2c/chips/tps65010.c index 6a7578217177..60bef94cd25f 100644 --- a/drivers/i2c/chips/tps65010.c +++ b/drivers/i2c/chips/tps65010.c | |||
@@ -446,7 +446,7 @@ static void tps65010_work(void *_tps) | |||
446 | mutex_unlock(&tps->lock); | 446 | mutex_unlock(&tps->lock); |
447 | } | 447 | } |
448 | 448 | ||
449 | static irqreturn_t tps65010_irq(int irq, void *_tps, struct pt_regs *regs) | 449 | static irqreturn_t tps65010_irq(int irq, void *_tps) |
450 | { | 450 | { |
451 | struct tps65010 *tps = _tps; | 451 | struct tps65010 *tps = _tps; |
452 | 452 | ||
diff --git a/drivers/ide/ide-io.c b/drivers/ide/ide-io.c index ba6039b55b41..2614f41b5074 100644 --- a/drivers/ide/ide-io.c +++ b/drivers/ide/ide-io.c | |||
@@ -1562,7 +1562,7 @@ static void unexpected_intr (int irq, ide_hwgroup_t *hwgroup) | |||
1562 | * on the hwgroup and the process begins again. | 1562 | * on the hwgroup and the process begins again. |
1563 | */ | 1563 | */ |
1564 | 1564 | ||
1565 | irqreturn_t ide_intr (int irq, void *dev_id, struct pt_regs *regs) | 1565 | irqreturn_t ide_intr (int irq, void *dev_id) |
1566 | { | 1566 | { |
1567 | unsigned long flags; | 1567 | unsigned long flags; |
1568 | ide_hwgroup_t *hwgroup = (ide_hwgroup_t *)dev_id; | 1568 | ide_hwgroup_t *hwgroup = (ide_hwgroup_t *)dev_id; |
diff --git a/drivers/ide/legacy/hd.c b/drivers/ide/legacy/hd.c index 4ab931145673..b1d5291531b7 100644 --- a/drivers/ide/legacy/hd.c +++ b/drivers/ide/legacy/hd.c | |||
@@ -673,7 +673,7 @@ static int hd_getgeo(struct block_device *bdev, struct hd_geometry *geo) | |||
673 | * be forgotten about... | 673 | * be forgotten about... |
674 | */ | 674 | */ |
675 | 675 | ||
676 | static irqreturn_t hd_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 676 | static irqreturn_t hd_interrupt(int irq, void *dev_id) |
677 | { | 677 | { |
678 | void (*handler)(void) = do_hd; | 678 | void (*handler)(void) = do_hd; |
679 | 679 | ||
diff --git a/drivers/ide/legacy/macide.c b/drivers/ide/legacy/macide.c index d655da749144..b1730d7e414c 100644 --- a/drivers/ide/legacy/macide.c +++ b/drivers/ide/legacy/macide.c | |||
@@ -78,7 +78,7 @@ int macide_ack_intr(ide_hwif_t* hwif) | |||
78 | } | 78 | } |
79 | 79 | ||
80 | #ifdef CONFIG_BLK_DEV_MAC_MEDIABAY | 80 | #ifdef CONFIG_BLK_DEV_MAC_MEDIABAY |
81 | static void macide_mediabay_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 81 | static void macide_mediabay_interrupt(int irq, void *dev_id) |
82 | { | 82 | { |
83 | int state = baboon->mb_status & 0x04; | 83 | int state = baboon->mb_status & 0x04; |
84 | 84 | ||
diff --git a/drivers/ide/mips/swarm.c b/drivers/ide/mips/swarm.c index 66f6064f4640..09c9e7936b0d 100644 --- a/drivers/ide/mips/swarm.c +++ b/drivers/ide/mips/swarm.c | |||
@@ -4,6 +4,7 @@ | |||
4 | * Author: Manish Lachwani, mlachwani@mvista.com | 4 | * Author: Manish Lachwani, mlachwani@mvista.com |
5 | * Copyright (C) 2004 MIPS Technologies, Inc. All rights reserved. | 5 | * Copyright (C) 2004 MIPS Technologies, Inc. All rights reserved. |
6 | * Author: Maciej W. Rozycki <macro@mips.com> | 6 | * Author: Maciej W. Rozycki <macro@mips.com> |
7 | * Copyright (c) 2006 Maciej W. Rozycki | ||
7 | * | 8 | * |
8 | * This program is free software; you can redistribute it and/or | 9 | * This program is free software; you can redistribute it and/or |
9 | * modify it under the terms of the GNU General Public License | 10 | * modify it under the terms of the GNU General Public License |
@@ -127,6 +128,7 @@ static int __devinit swarm_ide_probe(struct device *dev) | |||
127 | memcpy(hwif->io_ports, hwif->hw.io_ports, sizeof(hwif->io_ports)); | 128 | memcpy(hwif->io_ports, hwif->hw.io_ports, sizeof(hwif->io_ports)); |
128 | hwif->irq = hwif->hw.irq; | 129 | hwif->irq = hwif->hw.irq; |
129 | 130 | ||
131 | probe_hwif_init(hwif); | ||
130 | dev_set_drvdata(dev, hwif); | 132 | dev_set_drvdata(dev, hwif); |
131 | 133 | ||
132 | return 0; | 134 | return 0; |
diff --git a/drivers/ieee1394/nodemgr.c b/drivers/ieee1394/nodemgr.c index 3e7974c57443..8e7b83f84485 100644 --- a/drivers/ieee1394/nodemgr.c +++ b/drivers/ieee1394/nodemgr.c | |||
@@ -1614,7 +1614,7 @@ static int nodemgr_host_thread(void *__hi) | |||
1614 | { | 1614 | { |
1615 | struct host_info *hi = (struct host_info *)__hi; | 1615 | struct host_info *hi = (struct host_info *)__hi; |
1616 | struct hpsb_host *host = hi->host; | 1616 | struct hpsb_host *host = hi->host; |
1617 | unsigned int g, generation = get_hpsb_generation(host) - 1; | 1617 | unsigned int g, generation = 0; |
1618 | int i, reset_cycles = 0; | 1618 | int i, reset_cycles = 0; |
1619 | 1619 | ||
1620 | /* Setup our device-model entries */ | 1620 | /* Setup our device-model entries */ |
diff --git a/drivers/ieee1394/ohci1394.c b/drivers/ieee1394/ohci1394.c index 8fd0030475ba..dea13525df88 100644 --- a/drivers/ieee1394/ohci1394.c +++ b/drivers/ieee1394/ohci1394.c | |||
@@ -2301,8 +2301,7 @@ static void ohci_schedule_iso_tasklets(struct ti_ohci *ohci, | |||
2301 | spin_unlock_irqrestore(&ohci->iso_tasklet_list_lock, flags); | 2301 | spin_unlock_irqrestore(&ohci->iso_tasklet_list_lock, flags); |
2302 | } | 2302 | } |
2303 | 2303 | ||
2304 | static irqreturn_t ohci_irq_handler(int irq, void *dev_id, | 2304 | static irqreturn_t ohci_irq_handler(int irq, void *dev_id) |
2305 | struct pt_regs *regs_are_unused) | ||
2306 | { | 2305 | { |
2307 | quadlet_t event, node_id; | 2306 | quadlet_t event, node_id; |
2308 | struct ti_ohci *ohci = (struct ti_ohci *)dev_id; | 2307 | struct ti_ohci *ohci = (struct ti_ohci *)dev_id; |
diff --git a/drivers/ieee1394/pcilynx.c b/drivers/ieee1394/pcilynx.c index b4f146f2c951..0a7412e27eb4 100644 --- a/drivers/ieee1394/pcilynx.c +++ b/drivers/ieee1394/pcilynx.c | |||
@@ -839,8 +839,7 @@ static int lynx_devctl(struct hpsb_host *host, enum devctl_cmd cmd, int arg) | |||
839 | ********************************************************/ | 839 | ********************************************************/ |
840 | 840 | ||
841 | 841 | ||
842 | static irqreturn_t lynx_irq_handler(int irq, void *dev_id, | 842 | static irqreturn_t lynx_irq_handler(int irq, void *dev_id) |
843 | struct pt_regs *regs_are_unused) | ||
844 | { | 843 | { |
845 | struct ti_lynx *lynx = (struct ti_lynx *)dev_id; | 844 | struct ti_lynx *lynx = (struct ti_lynx *)dev_id; |
846 | struct hpsb_host *host = lynx->host; | 845 | struct hpsb_host *host = lynx->host; |
diff --git a/drivers/infiniband/core/cm.c b/drivers/infiniband/core/cm.c index f35fcc4c0638..25b1018a476c 100644 --- a/drivers/infiniband/core/cm.c +++ b/drivers/infiniband/core/cm.c | |||
@@ -75,6 +75,7 @@ static struct ib_cm { | |||
75 | struct rb_root remote_sidr_table; | 75 | struct rb_root remote_sidr_table; |
76 | struct idr local_id_table; | 76 | struct idr local_id_table; |
77 | __be32 random_id_operand; | 77 | __be32 random_id_operand; |
78 | struct list_head timewait_list; | ||
78 | struct workqueue_struct *wq; | 79 | struct workqueue_struct *wq; |
79 | } cm; | 80 | } cm; |
80 | 81 | ||
@@ -112,6 +113,7 @@ struct cm_work { | |||
112 | 113 | ||
113 | struct cm_timewait_info { | 114 | struct cm_timewait_info { |
114 | struct cm_work work; /* Must be first. */ | 115 | struct cm_work work; /* Must be first. */ |
116 | struct list_head list; | ||
115 | struct rb_node remote_qp_node; | 117 | struct rb_node remote_qp_node; |
116 | struct rb_node remote_id_node; | 118 | struct rb_node remote_id_node; |
117 | __be64 remote_ca_guid; | 119 | __be64 remote_ca_guid; |
@@ -647,13 +649,6 @@ static inline int cm_convert_to_ms(int iba_time) | |||
647 | 649 | ||
648 | static void cm_cleanup_timewait(struct cm_timewait_info *timewait_info) | 650 | static void cm_cleanup_timewait(struct cm_timewait_info *timewait_info) |
649 | { | 651 | { |
650 | unsigned long flags; | ||
651 | |||
652 | if (!timewait_info->inserted_remote_id && | ||
653 | !timewait_info->inserted_remote_qp) | ||
654 | return; | ||
655 | |||
656 | spin_lock_irqsave(&cm.lock, flags); | ||
657 | if (timewait_info->inserted_remote_id) { | 652 | if (timewait_info->inserted_remote_id) { |
658 | rb_erase(&timewait_info->remote_id_node, &cm.remote_id_table); | 653 | rb_erase(&timewait_info->remote_id_node, &cm.remote_id_table); |
659 | timewait_info->inserted_remote_id = 0; | 654 | timewait_info->inserted_remote_id = 0; |
@@ -663,7 +658,6 @@ static void cm_cleanup_timewait(struct cm_timewait_info *timewait_info) | |||
663 | rb_erase(&timewait_info->remote_qp_node, &cm.remote_qp_table); | 658 | rb_erase(&timewait_info->remote_qp_node, &cm.remote_qp_table); |
664 | timewait_info->inserted_remote_qp = 0; | 659 | timewait_info->inserted_remote_qp = 0; |
665 | } | 660 | } |
666 | spin_unlock_irqrestore(&cm.lock, flags); | ||
667 | } | 661 | } |
668 | 662 | ||
669 | static struct cm_timewait_info * cm_create_timewait_info(__be32 local_id) | 663 | static struct cm_timewait_info * cm_create_timewait_info(__be32 local_id) |
@@ -684,8 +678,12 @@ static struct cm_timewait_info * cm_create_timewait_info(__be32 local_id) | |||
684 | static void cm_enter_timewait(struct cm_id_private *cm_id_priv) | 678 | static void cm_enter_timewait(struct cm_id_private *cm_id_priv) |
685 | { | 679 | { |
686 | int wait_time; | 680 | int wait_time; |
681 | unsigned long flags; | ||
687 | 682 | ||
683 | spin_lock_irqsave(&cm.lock, flags); | ||
688 | cm_cleanup_timewait(cm_id_priv->timewait_info); | 684 | cm_cleanup_timewait(cm_id_priv->timewait_info); |
685 | list_add_tail(&cm_id_priv->timewait_info->list, &cm.timewait_list); | ||
686 | spin_unlock_irqrestore(&cm.lock, flags); | ||
689 | 687 | ||
690 | /* | 688 | /* |
691 | * The cm_id could be destroyed by the user before we exit timewait. | 689 | * The cm_id could be destroyed by the user before we exit timewait. |
@@ -701,9 +699,13 @@ static void cm_enter_timewait(struct cm_id_private *cm_id_priv) | |||
701 | 699 | ||
702 | static void cm_reset_to_idle(struct cm_id_private *cm_id_priv) | 700 | static void cm_reset_to_idle(struct cm_id_private *cm_id_priv) |
703 | { | 701 | { |
702 | unsigned long flags; | ||
703 | |||
704 | cm_id_priv->id.state = IB_CM_IDLE; | 704 | cm_id_priv->id.state = IB_CM_IDLE; |
705 | if (cm_id_priv->timewait_info) { | 705 | if (cm_id_priv->timewait_info) { |
706 | spin_lock_irqsave(&cm.lock, flags); | ||
706 | cm_cleanup_timewait(cm_id_priv->timewait_info); | 707 | cm_cleanup_timewait(cm_id_priv->timewait_info); |
708 | spin_unlock_irqrestore(&cm.lock, flags); | ||
707 | kfree(cm_id_priv->timewait_info); | 709 | kfree(cm_id_priv->timewait_info); |
708 | cm_id_priv->timewait_info = NULL; | 710 | cm_id_priv->timewait_info = NULL; |
709 | } | 711 | } |
@@ -1307,6 +1309,7 @@ static struct cm_id_private * cm_match_req(struct cm_work *work, | |||
1307 | if (timewait_info) { | 1309 | if (timewait_info) { |
1308 | cur_cm_id_priv = cm_get_id(timewait_info->work.local_id, | 1310 | cur_cm_id_priv = cm_get_id(timewait_info->work.local_id, |
1309 | timewait_info->work.remote_id); | 1311 | timewait_info->work.remote_id); |
1312 | cm_cleanup_timewait(cm_id_priv->timewait_info); | ||
1310 | spin_unlock_irqrestore(&cm.lock, flags); | 1313 | spin_unlock_irqrestore(&cm.lock, flags); |
1311 | if (cur_cm_id_priv) { | 1314 | if (cur_cm_id_priv) { |
1312 | cm_dup_req_handler(work, cur_cm_id_priv); | 1315 | cm_dup_req_handler(work, cur_cm_id_priv); |
@@ -1315,7 +1318,8 @@ static struct cm_id_private * cm_match_req(struct cm_work *work, | |||
1315 | cm_issue_rej(work->port, work->mad_recv_wc, | 1318 | cm_issue_rej(work->port, work->mad_recv_wc, |
1316 | IB_CM_REJ_STALE_CONN, CM_MSG_RESPONSE_REQ, | 1319 | IB_CM_REJ_STALE_CONN, CM_MSG_RESPONSE_REQ, |
1317 | NULL, 0); | 1320 | NULL, 0); |
1318 | goto error; | 1321 | listen_cm_id_priv = NULL; |
1322 | goto out; | ||
1319 | } | 1323 | } |
1320 | 1324 | ||
1321 | /* Find matching listen request. */ | 1325 | /* Find matching listen request. */ |
@@ -1323,21 +1327,20 @@ static struct cm_id_private * cm_match_req(struct cm_work *work, | |||
1323 | req_msg->service_id, | 1327 | req_msg->service_id, |
1324 | req_msg->private_data); | 1328 | req_msg->private_data); |
1325 | if (!listen_cm_id_priv) { | 1329 | if (!listen_cm_id_priv) { |
1330 | cm_cleanup_timewait(cm_id_priv->timewait_info); | ||
1326 | spin_unlock_irqrestore(&cm.lock, flags); | 1331 | spin_unlock_irqrestore(&cm.lock, flags); |
1327 | cm_issue_rej(work->port, work->mad_recv_wc, | 1332 | cm_issue_rej(work->port, work->mad_recv_wc, |
1328 | IB_CM_REJ_INVALID_SERVICE_ID, CM_MSG_RESPONSE_REQ, | 1333 | IB_CM_REJ_INVALID_SERVICE_ID, CM_MSG_RESPONSE_REQ, |
1329 | NULL, 0); | 1334 | NULL, 0); |
1330 | goto error; | 1335 | goto out; |
1331 | } | 1336 | } |
1332 | atomic_inc(&listen_cm_id_priv->refcount); | 1337 | atomic_inc(&listen_cm_id_priv->refcount); |
1333 | atomic_inc(&cm_id_priv->refcount); | 1338 | atomic_inc(&cm_id_priv->refcount); |
1334 | cm_id_priv->id.state = IB_CM_REQ_RCVD; | 1339 | cm_id_priv->id.state = IB_CM_REQ_RCVD; |
1335 | atomic_inc(&cm_id_priv->work_count); | 1340 | atomic_inc(&cm_id_priv->work_count); |
1336 | spin_unlock_irqrestore(&cm.lock, flags); | 1341 | spin_unlock_irqrestore(&cm.lock, flags); |
1342 | out: | ||
1337 | return listen_cm_id_priv; | 1343 | return listen_cm_id_priv; |
1338 | |||
1339 | error: cm_cleanup_timewait(cm_id_priv->timewait_info); | ||
1340 | return NULL; | ||
1341 | } | 1344 | } |
1342 | 1345 | ||
1343 | static int cm_req_handler(struct cm_work *work) | 1346 | static int cm_req_handler(struct cm_work *work) |
@@ -1899,6 +1902,32 @@ out: spin_unlock_irqrestore(&cm_id_priv->lock, flags); | |||
1899 | } | 1902 | } |
1900 | EXPORT_SYMBOL(ib_send_cm_drep); | 1903 | EXPORT_SYMBOL(ib_send_cm_drep); |
1901 | 1904 | ||
1905 | static int cm_issue_drep(struct cm_port *port, | ||
1906 | struct ib_mad_recv_wc *mad_recv_wc) | ||
1907 | { | ||
1908 | struct ib_mad_send_buf *msg = NULL; | ||
1909 | struct cm_dreq_msg *dreq_msg; | ||
1910 | struct cm_drep_msg *drep_msg; | ||
1911 | int ret; | ||
1912 | |||
1913 | ret = cm_alloc_response_msg(port, mad_recv_wc, &msg); | ||
1914 | if (ret) | ||
1915 | return ret; | ||
1916 | |||
1917 | dreq_msg = (struct cm_dreq_msg *) mad_recv_wc->recv_buf.mad; | ||
1918 | drep_msg = (struct cm_drep_msg *) msg->mad; | ||
1919 | |||
1920 | cm_format_mad_hdr(&drep_msg->hdr, CM_DREP_ATTR_ID, dreq_msg->hdr.tid); | ||
1921 | drep_msg->remote_comm_id = dreq_msg->local_comm_id; | ||
1922 | drep_msg->local_comm_id = dreq_msg->remote_comm_id; | ||
1923 | |||
1924 | ret = ib_post_send_mad(msg, NULL); | ||
1925 | if (ret) | ||
1926 | cm_free_msg(msg); | ||
1927 | |||
1928 | return ret; | ||
1929 | } | ||
1930 | |||
1902 | static int cm_dreq_handler(struct cm_work *work) | 1931 | static int cm_dreq_handler(struct cm_work *work) |
1903 | { | 1932 | { |
1904 | struct cm_id_private *cm_id_priv; | 1933 | struct cm_id_private *cm_id_priv; |
@@ -1910,8 +1939,10 @@ static int cm_dreq_handler(struct cm_work *work) | |||
1910 | dreq_msg = (struct cm_dreq_msg *)work->mad_recv_wc->recv_buf.mad; | 1939 | dreq_msg = (struct cm_dreq_msg *)work->mad_recv_wc->recv_buf.mad; |
1911 | cm_id_priv = cm_acquire_id(dreq_msg->remote_comm_id, | 1940 | cm_id_priv = cm_acquire_id(dreq_msg->remote_comm_id, |
1912 | dreq_msg->local_comm_id); | 1941 | dreq_msg->local_comm_id); |
1913 | if (!cm_id_priv) | 1942 | if (!cm_id_priv) { |
1943 | cm_issue_drep(work->port, work->mad_recv_wc); | ||
1914 | return -EINVAL; | 1944 | return -EINVAL; |
1945 | } | ||
1915 | 1946 | ||
1916 | work->cm_event.private_data = &dreq_msg->private_data; | 1947 | work->cm_event.private_data = &dreq_msg->private_data; |
1917 | 1948 | ||
@@ -2601,28 +2632,29 @@ static int cm_timewait_handler(struct cm_work *work) | |||
2601 | { | 2632 | { |
2602 | struct cm_timewait_info *timewait_info; | 2633 | struct cm_timewait_info *timewait_info; |
2603 | struct cm_id_private *cm_id_priv; | 2634 | struct cm_id_private *cm_id_priv; |
2604 | unsigned long flags; | ||
2605 | int ret; | 2635 | int ret; |
2606 | 2636 | ||
2607 | timewait_info = (struct cm_timewait_info *)work; | 2637 | timewait_info = (struct cm_timewait_info *)work; |
2608 | cm_cleanup_timewait(timewait_info); | 2638 | spin_lock_irq(&cm.lock); |
2639 | list_del(&timewait_info->list); | ||
2640 | spin_unlock_irq(&cm.lock); | ||
2609 | 2641 | ||
2610 | cm_id_priv = cm_acquire_id(timewait_info->work.local_id, | 2642 | cm_id_priv = cm_acquire_id(timewait_info->work.local_id, |
2611 | timewait_info->work.remote_id); | 2643 | timewait_info->work.remote_id); |
2612 | if (!cm_id_priv) | 2644 | if (!cm_id_priv) |
2613 | return -EINVAL; | 2645 | return -EINVAL; |
2614 | 2646 | ||
2615 | spin_lock_irqsave(&cm_id_priv->lock, flags); | 2647 | spin_lock_irq(&cm_id_priv->lock); |
2616 | if (cm_id_priv->id.state != IB_CM_TIMEWAIT || | 2648 | if (cm_id_priv->id.state != IB_CM_TIMEWAIT || |
2617 | cm_id_priv->remote_qpn != timewait_info->remote_qpn) { | 2649 | cm_id_priv->remote_qpn != timewait_info->remote_qpn) { |
2618 | spin_unlock_irqrestore(&cm_id_priv->lock, flags); | 2650 | spin_unlock_irq(&cm_id_priv->lock); |
2619 | goto out; | 2651 | goto out; |
2620 | } | 2652 | } |
2621 | cm_id_priv->id.state = IB_CM_IDLE; | 2653 | cm_id_priv->id.state = IB_CM_IDLE; |
2622 | ret = atomic_inc_and_test(&cm_id_priv->work_count); | 2654 | ret = atomic_inc_and_test(&cm_id_priv->work_count); |
2623 | if (!ret) | 2655 | if (!ret) |
2624 | list_add_tail(&work->list, &cm_id_priv->work_list); | 2656 | list_add_tail(&work->list, &cm_id_priv->work_list); |
2625 | spin_unlock_irqrestore(&cm_id_priv->lock, flags); | 2657 | spin_unlock_irq(&cm_id_priv->lock); |
2626 | 2658 | ||
2627 | if (ret) | 2659 | if (ret) |
2628 | cm_process_work(cm_id_priv, work); | 2660 | cm_process_work(cm_id_priv, work); |
@@ -3374,6 +3406,7 @@ static int __init ib_cm_init(void) | |||
3374 | idr_init(&cm.local_id_table); | 3406 | idr_init(&cm.local_id_table); |
3375 | get_random_bytes(&cm.random_id_operand, sizeof cm.random_id_operand); | 3407 | get_random_bytes(&cm.random_id_operand, sizeof cm.random_id_operand); |
3376 | idr_pre_get(&cm.local_id_table, GFP_KERNEL); | 3408 | idr_pre_get(&cm.local_id_table, GFP_KERNEL); |
3409 | INIT_LIST_HEAD(&cm.timewait_list); | ||
3377 | 3410 | ||
3378 | cm.wq = create_workqueue("ib_cm"); | 3411 | cm.wq = create_workqueue("ib_cm"); |
3379 | if (!cm.wq) | 3412 | if (!cm.wq) |
@@ -3391,7 +3424,20 @@ error: | |||
3391 | 3424 | ||
3392 | static void __exit ib_cm_cleanup(void) | 3425 | static void __exit ib_cm_cleanup(void) |
3393 | { | 3426 | { |
3427 | struct cm_timewait_info *timewait_info, *tmp; | ||
3428 | |||
3429 | spin_lock_irq(&cm.lock); | ||
3430 | list_for_each_entry(timewait_info, &cm.timewait_list, list) | ||
3431 | cancel_delayed_work(&timewait_info->work.work); | ||
3432 | spin_unlock_irq(&cm.lock); | ||
3433 | |||
3394 | destroy_workqueue(cm.wq); | 3434 | destroy_workqueue(cm.wq); |
3435 | |||
3436 | list_for_each_entry_safe(timewait_info, tmp, &cm.timewait_list, list) { | ||
3437 | list_del(&timewait_info->list); | ||
3438 | kfree(timewait_info); | ||
3439 | } | ||
3440 | |||
3395 | ib_unregister_client(&cm_client); | 3441 | ib_unregister_client(&cm_client); |
3396 | idr_destroy(&cm.local_id_table); | 3442 | idr_destroy(&cm.local_id_table); |
3397 | } | 3443 | } |
diff --git a/drivers/infiniband/hw/amso1100/c2.c b/drivers/infiniband/hw/amso1100/c2.c index 9e9120f36019..dc1ebeac35c7 100644 --- a/drivers/infiniband/hw/amso1100/c2.c +++ b/drivers/infiniband/hw/amso1100/c2.c | |||
@@ -72,7 +72,7 @@ static int c2_down(struct net_device *netdev); | |||
72 | static int c2_xmit_frame(struct sk_buff *skb, struct net_device *netdev); | 72 | static int c2_xmit_frame(struct sk_buff *skb, struct net_device *netdev); |
73 | static void c2_tx_interrupt(struct net_device *netdev); | 73 | static void c2_tx_interrupt(struct net_device *netdev); |
74 | static void c2_rx_interrupt(struct net_device *netdev); | 74 | static void c2_rx_interrupt(struct net_device *netdev); |
75 | static irqreturn_t c2_interrupt(int irq, void *dev_id, struct pt_regs *regs); | 75 | static irqreturn_t c2_interrupt(int irq, void *dev_id); |
76 | static void c2_tx_timeout(struct net_device *netdev); | 76 | static void c2_tx_timeout(struct net_device *netdev); |
77 | static int c2_change_mtu(struct net_device *netdev, int new_mtu); | 77 | static int c2_change_mtu(struct net_device *netdev, int new_mtu); |
78 | static void c2_reset(struct c2_port *c2_port); | 78 | static void c2_reset(struct c2_port *c2_port); |
@@ -544,7 +544,7 @@ static void c2_rx_interrupt(struct net_device *netdev) | |||
544 | /* | 544 | /* |
545 | * Handle netisr0 TX & RX interrupts. | 545 | * Handle netisr0 TX & RX interrupts. |
546 | */ | 546 | */ |
547 | static irqreturn_t c2_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 547 | static irqreturn_t c2_interrupt(int irq, void *dev_id) |
548 | { | 548 | { |
549 | unsigned int netisr0, dmaisr; | 549 | unsigned int netisr0, dmaisr; |
550 | int handled = 0; | 550 | int handled = 0; |
diff --git a/drivers/infiniband/hw/amso1100/c2_ae.c b/drivers/infiniband/hw/amso1100/c2_ae.c index 3aae4978e1cb..a31439bd3b67 100644 --- a/drivers/infiniband/hw/amso1100/c2_ae.c +++ b/drivers/infiniband/hw/amso1100/c2_ae.c | |||
@@ -66,7 +66,6 @@ static int c2_convert_cm_status(u32 c2_status) | |||
66 | } | 66 | } |
67 | } | 67 | } |
68 | 68 | ||
69 | #ifdef DEBUG | ||
70 | static const char* to_event_str(int event) | 69 | static const char* to_event_str(int event) |
71 | { | 70 | { |
72 | static const char* event_str[] = { | 71 | static const char* event_str[] = { |
@@ -144,7 +143,6 @@ static const char *to_qp_state_str(int state) | |||
144 | return "<invalid QP state>"; | 143 | return "<invalid QP state>"; |
145 | }; | 144 | }; |
146 | } | 145 | } |
147 | #endif | ||
148 | 146 | ||
149 | void c2_ae_event(struct c2_dev *c2dev, u32 mq_index) | 147 | void c2_ae_event(struct c2_dev *c2dev, u32 mq_index) |
150 | { | 148 | { |
diff --git a/drivers/infiniband/hw/amso1100/c2_qp.c b/drivers/infiniband/hw/amso1100/c2_qp.c index 12261132b077..5bcf697aa335 100644 --- a/drivers/infiniband/hw/amso1100/c2_qp.c +++ b/drivers/infiniband/hw/amso1100/c2_qp.c | |||
@@ -35,6 +35,8 @@ | |||
35 | * | 35 | * |
36 | */ | 36 | */ |
37 | 37 | ||
38 | #include <linux/delay.h> | ||
39 | |||
38 | #include "c2.h" | 40 | #include "c2.h" |
39 | #include "c2_vq.h" | 41 | #include "c2_vq.h" |
40 | #include "c2_status.h" | 42 | #include "c2_status.h" |
@@ -705,10 +707,8 @@ static inline void c2_activity(struct c2_dev *c2dev, u32 mq_index, u16 shared) | |||
705 | * cannot get on the bus and the card and system hang in a | 707 | * cannot get on the bus and the card and system hang in a |
706 | * deadlock -- thus the need for this code. [TOT] | 708 | * deadlock -- thus the need for this code. [TOT] |
707 | */ | 709 | */ |
708 | while (readl(c2dev->regs + PCI_BAR0_ADAPTER_HINT) & 0x80000000) { | 710 | while (readl(c2dev->regs + PCI_BAR0_ADAPTER_HINT) & 0x80000000) |
709 | set_current_state(TASK_UNINTERRUPTIBLE); | 711 | udelay(10); |
710 | schedule_timeout(0); | ||
711 | } | ||
712 | 712 | ||
713 | __raw_writel(C2_HINT_MAKE(mq_index, shared), | 713 | __raw_writel(C2_HINT_MAKE(mq_index, shared), |
714 | c2dev->regs + PCI_BAR0_ADAPTER_HINT); | 714 | c2dev->regs + PCI_BAR0_ADAPTER_HINT); |
@@ -766,6 +766,7 @@ int c2_post_send(struct ib_qp *ibqp, struct ib_send_wr *ib_wr, | |||
766 | struct c2_dev *c2dev = to_c2dev(ibqp->device); | 766 | struct c2_dev *c2dev = to_c2dev(ibqp->device); |
767 | struct c2_qp *qp = to_c2qp(ibqp); | 767 | struct c2_qp *qp = to_c2qp(ibqp); |
768 | union c2wr wr; | 768 | union c2wr wr; |
769 | unsigned long lock_flags; | ||
769 | int err = 0; | 770 | int err = 0; |
770 | 771 | ||
771 | u32 flags; | 772 | u32 flags; |
@@ -881,8 +882,10 @@ int c2_post_send(struct ib_qp *ibqp, struct ib_send_wr *ib_wr, | |||
881 | /* | 882 | /* |
882 | * Post the puppy! | 883 | * Post the puppy! |
883 | */ | 884 | */ |
885 | spin_lock_irqsave(&qp->lock, lock_flags); | ||
884 | err = qp_wr_post(&qp->sq_mq, &wr, qp, msg_size); | 886 | err = qp_wr_post(&qp->sq_mq, &wr, qp, msg_size); |
885 | if (err) { | 887 | if (err) { |
888 | spin_unlock_irqrestore(&qp->lock, lock_flags); | ||
886 | break; | 889 | break; |
887 | } | 890 | } |
888 | 891 | ||
@@ -890,6 +893,7 @@ int c2_post_send(struct ib_qp *ibqp, struct ib_send_wr *ib_wr, | |||
890 | * Enqueue mq index to activity FIFO. | 893 | * Enqueue mq index to activity FIFO. |
891 | */ | 894 | */ |
892 | c2_activity(c2dev, qp->sq_mq.index, qp->sq_mq.hint_count); | 895 | c2_activity(c2dev, qp->sq_mq.index, qp->sq_mq.hint_count); |
896 | spin_unlock_irqrestore(&qp->lock, lock_flags); | ||
893 | 897 | ||
894 | ib_wr = ib_wr->next; | 898 | ib_wr = ib_wr->next; |
895 | } | 899 | } |
@@ -905,6 +909,7 @@ int c2_post_receive(struct ib_qp *ibqp, struct ib_recv_wr *ib_wr, | |||
905 | struct c2_dev *c2dev = to_c2dev(ibqp->device); | 909 | struct c2_dev *c2dev = to_c2dev(ibqp->device); |
906 | struct c2_qp *qp = to_c2qp(ibqp); | 910 | struct c2_qp *qp = to_c2qp(ibqp); |
907 | union c2wr wr; | 911 | union c2wr wr; |
912 | unsigned long lock_flags; | ||
908 | int err = 0; | 913 | int err = 0; |
909 | 914 | ||
910 | if (qp->state > IB_QPS_RTS) | 915 | if (qp->state > IB_QPS_RTS) |
@@ -945,8 +950,10 @@ int c2_post_receive(struct ib_qp *ibqp, struct ib_recv_wr *ib_wr, | |||
945 | break; | 950 | break; |
946 | } | 951 | } |
947 | 952 | ||
953 | spin_lock_irqsave(&qp->lock, lock_flags); | ||
948 | err = qp_wr_post(&qp->rq_mq, &wr, qp, qp->rq_mq.msg_size); | 954 | err = qp_wr_post(&qp->rq_mq, &wr, qp, qp->rq_mq.msg_size); |
949 | if (err) { | 955 | if (err) { |
956 | spin_unlock_irqrestore(&qp->lock, lock_flags); | ||
950 | break; | 957 | break; |
951 | } | 958 | } |
952 | 959 | ||
@@ -954,6 +961,7 @@ int c2_post_receive(struct ib_qp *ibqp, struct ib_recv_wr *ib_wr, | |||
954 | * Enqueue mq index to activity FIFO | 961 | * Enqueue mq index to activity FIFO |
955 | */ | 962 | */ |
956 | c2_activity(c2dev, qp->rq_mq.index, qp->rq_mq.hint_count); | 963 | c2_activity(c2dev, qp->rq_mq.index, qp->rq_mq.hint_count); |
964 | spin_unlock_irqrestore(&qp->lock, lock_flags); | ||
957 | 965 | ||
958 | ib_wr = ib_wr->next; | 966 | ib_wr = ib_wr->next; |
959 | } | 967 | } |
diff --git a/drivers/infiniband/hw/ehca/ehca_irq.c b/drivers/infiniband/hw/ehca/ehca_irq.c index 2a65b5be1979..048cc443d1e7 100644 --- a/drivers/infiniband/hw/ehca/ehca_irq.c +++ b/drivers/infiniband/hw/ehca/ehca_irq.c | |||
@@ -360,7 +360,7 @@ static inline void reset_eq_pending(struct ehca_cq *cq) | |||
360 | return; | 360 | return; |
361 | } | 361 | } |
362 | 362 | ||
363 | irqreturn_t ehca_interrupt_neq(int irq, void *dev_id, struct pt_regs *regs) | 363 | irqreturn_t ehca_interrupt_neq(int irq, void *dev_id) |
364 | { | 364 | { |
365 | struct ehca_shca *shca = (struct ehca_shca*)dev_id; | 365 | struct ehca_shca *shca = (struct ehca_shca*)dev_id; |
366 | 366 | ||
@@ -393,7 +393,7 @@ void ehca_tasklet_neq(unsigned long data) | |||
393 | return; | 393 | return; |
394 | } | 394 | } |
395 | 395 | ||
396 | irqreturn_t ehca_interrupt_eq(int irq, void *dev_id, struct pt_regs *regs) | 396 | irqreturn_t ehca_interrupt_eq(int irq, void *dev_id) |
397 | { | 397 | { |
398 | struct ehca_shca *shca = (struct ehca_shca*)dev_id; | 398 | struct ehca_shca *shca = (struct ehca_shca*)dev_id; |
399 | 399 | ||
diff --git a/drivers/infiniband/hw/ehca/ehca_irq.h b/drivers/infiniband/hw/ehca/ehca_irq.h index 85bf1fe16fe4..be579cc0adf6 100644 --- a/drivers/infiniband/hw/ehca/ehca_irq.h +++ b/drivers/infiniband/hw/ehca/ehca_irq.h | |||
@@ -51,10 +51,10 @@ struct ehca_shca; | |||
51 | 51 | ||
52 | int ehca_error_data(struct ehca_shca *shca, void *data, u64 resource); | 52 | int ehca_error_data(struct ehca_shca *shca, void *data, u64 resource); |
53 | 53 | ||
54 | irqreturn_t ehca_interrupt_neq(int irq, void *dev_id, struct pt_regs *regs); | 54 | irqreturn_t ehca_interrupt_neq(int irq, void *dev_id); |
55 | void ehca_tasklet_neq(unsigned long data); | 55 | void ehca_tasklet_neq(unsigned long data); |
56 | 56 | ||
57 | irqreturn_t ehca_interrupt_eq(int irq, void *dev_id, struct pt_regs *regs); | 57 | irqreturn_t ehca_interrupt_eq(int irq, void *dev_id); |
58 | void ehca_tasklet_eq(unsigned long data); | 58 | void ehca_tasklet_eq(unsigned long data); |
59 | 59 | ||
60 | struct ehca_cpu_comp_task { | 60 | struct ehca_cpu_comp_task { |
diff --git a/drivers/infiniband/hw/ipath/ipath_intr.c b/drivers/infiniband/hw/ipath/ipath_intr.c index 6bee53ce5f33..d9079ee12030 100644 --- a/drivers/infiniband/hw/ipath/ipath_intr.c +++ b/drivers/infiniband/hw/ipath/ipath_intr.c | |||
@@ -839,7 +839,7 @@ static void handle_urcv(struct ipath_devdata *dd, u32 istat) | |||
839 | } | 839 | } |
840 | } | 840 | } |
841 | 841 | ||
842 | irqreturn_t ipath_intr(int irq, void *data, struct pt_regs *regs) | 842 | irqreturn_t ipath_intr(int irq, void *data) |
843 | { | 843 | { |
844 | struct ipath_devdata *dd = data; | 844 | struct ipath_devdata *dd = data; |
845 | u32 istat, chk0rcv = 0; | 845 | u32 istat, chk0rcv = 0; |
diff --git a/drivers/infiniband/hw/ipath/ipath_kernel.h b/drivers/infiniband/hw/ipath/ipath_kernel.h index d7540b71b451..7c436697d0e4 100644 --- a/drivers/infiniband/hw/ipath/ipath_kernel.h +++ b/drivers/infiniband/hw/ipath/ipath_kernel.h | |||
@@ -606,7 +606,7 @@ struct sk_buff *ipath_alloc_skb(struct ipath_devdata *dd, gfp_t); | |||
606 | 606 | ||
607 | extern int ipath_diag_inuse; | 607 | extern int ipath_diag_inuse; |
608 | 608 | ||
609 | irqreturn_t ipath_intr(int irq, void *devid, struct pt_regs *regs); | 609 | irqreturn_t ipath_intr(int irq, void *devid); |
610 | void ipath_decode_err(char *buf, size_t blen, ipath_err_t err); | 610 | void ipath_decode_err(char *buf, size_t blen, ipath_err_t err); |
611 | #if __IPATH_INFO || __IPATH_DBG | 611 | #if __IPATH_INFO || __IPATH_DBG |
612 | extern const char *ipath_ibcstatus_str[]; | 612 | extern const char *ipath_ibcstatus_str[]; |
diff --git a/drivers/infiniband/hw/mthca/mthca_eq.c b/drivers/infiniband/hw/mthca/mthca_eq.c index a29b1b6d82b1..e284e0613a94 100644 --- a/drivers/infiniband/hw/mthca/mthca_eq.c +++ b/drivers/infiniband/hw/mthca/mthca_eq.c | |||
@@ -405,7 +405,7 @@ static int mthca_eq_int(struct mthca_dev *dev, struct mthca_eq *eq) | |||
405 | return eqes_found; | 405 | return eqes_found; |
406 | } | 406 | } |
407 | 407 | ||
408 | static irqreturn_t mthca_tavor_interrupt(int irq, void *dev_ptr, struct pt_regs *regs) | 408 | static irqreturn_t mthca_tavor_interrupt(int irq, void *dev_ptr) |
409 | { | 409 | { |
410 | struct mthca_dev *dev = dev_ptr; | 410 | struct mthca_dev *dev = dev_ptr; |
411 | u32 ecr; | 411 | u32 ecr; |
@@ -432,8 +432,7 @@ static irqreturn_t mthca_tavor_interrupt(int irq, void *dev_ptr, struct pt_regs | |||
432 | return IRQ_HANDLED; | 432 | return IRQ_HANDLED; |
433 | } | 433 | } |
434 | 434 | ||
435 | static irqreturn_t mthca_tavor_msi_x_interrupt(int irq, void *eq_ptr, | 435 | static irqreturn_t mthca_tavor_msi_x_interrupt(int irq, void *eq_ptr) |
436 | struct pt_regs *regs) | ||
437 | { | 436 | { |
438 | struct mthca_eq *eq = eq_ptr; | 437 | struct mthca_eq *eq = eq_ptr; |
439 | struct mthca_dev *dev = eq->dev; | 438 | struct mthca_dev *dev = eq->dev; |
@@ -446,7 +445,7 @@ static irqreturn_t mthca_tavor_msi_x_interrupt(int irq, void *eq_ptr, | |||
446 | return IRQ_HANDLED; | 445 | return IRQ_HANDLED; |
447 | } | 446 | } |
448 | 447 | ||
449 | static irqreturn_t mthca_arbel_interrupt(int irq, void *dev_ptr, struct pt_regs *regs) | 448 | static irqreturn_t mthca_arbel_interrupt(int irq, void *dev_ptr) |
450 | { | 449 | { |
451 | struct mthca_dev *dev = dev_ptr; | 450 | struct mthca_dev *dev = dev_ptr; |
452 | int work = 0; | 451 | int work = 0; |
@@ -467,8 +466,7 @@ static irqreturn_t mthca_arbel_interrupt(int irq, void *dev_ptr, struct pt_regs | |||
467 | return IRQ_RETVAL(work); | 466 | return IRQ_RETVAL(work); |
468 | } | 467 | } |
469 | 468 | ||
470 | static irqreturn_t mthca_arbel_msi_x_interrupt(int irq, void *eq_ptr, | 469 | static irqreturn_t mthca_arbel_msi_x_interrupt(int irq, void *eq_ptr) |
471 | struct pt_regs *regs) | ||
472 | { | 470 | { |
473 | struct mthca_eq *eq = eq_ptr; | 471 | struct mthca_eq *eq = eq_ptr; |
474 | struct mthca_dev *dev = eq->dev; | 472 | struct mthca_dev *dev = eq->dev; |
diff --git a/drivers/infiniband/hw/mthca/mthca_provider.c b/drivers/infiniband/hw/mthca/mthca_provider.c index 981fe2eebdfa..fc67f780581b 100644 --- a/drivers/infiniband/hw/mthca/mthca_provider.c +++ b/drivers/infiniband/hw/mthca/mthca_provider.c | |||
@@ -179,6 +179,8 @@ static int mthca_query_port(struct ib_device *ibdev, | |||
179 | props->max_mtu = out_mad->data[41] & 0xf; | 179 | props->max_mtu = out_mad->data[41] & 0xf; |
180 | props->active_mtu = out_mad->data[36] >> 4; | 180 | props->active_mtu = out_mad->data[36] >> 4; |
181 | props->subnet_timeout = out_mad->data[51] & 0x1f; | 181 | props->subnet_timeout = out_mad->data[51] & 0x1f; |
182 | props->max_vl_num = out_mad->data[37] >> 4; | ||
183 | props->init_type_reply = out_mad->data[41] >> 4; | ||
182 | 184 | ||
183 | out: | 185 | out: |
184 | kfree(in_mad); | 186 | kfree(in_mad); |
diff --git a/drivers/infiniband/hw/mthca/mthca_srq.c b/drivers/infiniband/hw/mthca/mthca_srq.c index 0f316c87bf64..92a72f521528 100644 --- a/drivers/infiniband/hw/mthca/mthca_srq.c +++ b/drivers/infiniband/hw/mthca/mthca_srq.c | |||
@@ -201,6 +201,8 @@ int mthca_alloc_srq(struct mthca_dev *dev, struct mthca_pd *pd, | |||
201 | 201 | ||
202 | if (mthca_is_memfree(dev)) | 202 | if (mthca_is_memfree(dev)) |
203 | srq->max = roundup_pow_of_two(srq->max + 1); | 203 | srq->max = roundup_pow_of_two(srq->max + 1); |
204 | else | ||
205 | srq->max = srq->max + 1; | ||
204 | 206 | ||
205 | ds = max(64UL, | 207 | ds = max(64UL, |
206 | roundup_pow_of_two(sizeof (struct mthca_next_seg) + | 208 | roundup_pow_of_two(sizeof (struct mthca_next_seg) + |
@@ -277,7 +279,7 @@ int mthca_alloc_srq(struct mthca_dev *dev, struct mthca_pd *pd, | |||
277 | srq->first_free = 0; | 279 | srq->first_free = 0; |
278 | srq->last_free = srq->max - 1; | 280 | srq->last_free = srq->max - 1; |
279 | 281 | ||
280 | attr->max_wr = (mthca_is_memfree(dev)) ? srq->max - 1 : srq->max; | 282 | attr->max_wr = srq->max - 1; |
281 | attr->max_sge = srq->max_gs; | 283 | attr->max_sge = srq->max_gs; |
282 | 284 | ||
283 | return 0; | 285 | return 0; |
@@ -413,7 +415,7 @@ int mthca_query_srq(struct ib_srq *ibsrq, struct ib_srq_attr *srq_attr) | |||
413 | srq_attr->srq_limit = be16_to_cpu(tavor_ctx->limit_watermark); | 415 | srq_attr->srq_limit = be16_to_cpu(tavor_ctx->limit_watermark); |
414 | } | 416 | } |
415 | 417 | ||
416 | srq_attr->max_wr = (mthca_is_memfree(dev)) ? srq->max - 1 : srq->max; | 418 | srq_attr->max_wr = srq->max - 1; |
417 | srq_attr->max_sge = srq->max_gs; | 419 | srq_attr->max_sge = srq->max_gs; |
418 | 420 | ||
419 | out: | 421 | out: |
diff --git a/drivers/infiniband/ulp/ipoib/ipoib_ib.c b/drivers/infiniband/ulp/ipoib/ipoib_ib.c index f426a69d9a43..8bf5e9ec7c95 100644 --- a/drivers/infiniband/ulp/ipoib/ipoib_ib.c +++ b/drivers/infiniband/ulp/ipoib/ipoib_ib.c | |||
@@ -355,6 +355,11 @@ void ipoib_send(struct net_device *dev, struct sk_buff *skb, | |||
355 | tx_req->skb = skb; | 355 | tx_req->skb = skb; |
356 | addr = dma_map_single(priv->ca->dma_device, skb->data, skb->len, | 356 | addr = dma_map_single(priv->ca->dma_device, skb->data, skb->len, |
357 | DMA_TO_DEVICE); | 357 | DMA_TO_DEVICE); |
358 | if (unlikely(dma_mapping_error(addr))) { | ||
359 | ++priv->stats.tx_errors; | ||
360 | dev_kfree_skb_any(skb); | ||
361 | return; | ||
362 | } | ||
358 | pci_unmap_addr_set(tx_req, mapping, addr); | 363 | pci_unmap_addr_set(tx_req, mapping, addr); |
359 | 364 | ||
360 | if (unlikely(post_send(priv, priv->tx_head & (ipoib_sendq_size - 1), | 365 | if (unlikely(post_send(priv, priv->tx_head & (ipoib_sendq_size - 1), |
diff --git a/drivers/infiniband/ulp/srp/ib_srp.c b/drivers/infiniband/ulp/srp/ib_srp.c index 44b9e5be6687..4b09147f438f 100644 --- a/drivers/infiniband/ulp/srp/ib_srp.c +++ b/drivers/infiniband/ulp/srp/ib_srp.c | |||
@@ -343,29 +343,32 @@ static int srp_send_req(struct srp_target_port *target) | |||
343 | */ | 343 | */ |
344 | if (target->io_class == SRP_REV10_IB_IO_CLASS) { | 344 | if (target->io_class == SRP_REV10_IB_IO_CLASS) { |
345 | memcpy(req->priv.initiator_port_id, | 345 | memcpy(req->priv.initiator_port_id, |
346 | target->srp_host->initiator_port_id + 8, 8); | 346 | &target->path.sgid.global.interface_id, 8); |
347 | memcpy(req->priv.initiator_port_id + 8, | 347 | memcpy(req->priv.initiator_port_id + 8, |
348 | target->srp_host->initiator_port_id, 8); | 348 | &target->initiator_ext, 8); |
349 | memcpy(req->priv.target_port_id, &target->ioc_guid, 8); | 349 | memcpy(req->priv.target_port_id, &target->ioc_guid, 8); |
350 | memcpy(req->priv.target_port_id + 8, &target->id_ext, 8); | 350 | memcpy(req->priv.target_port_id + 8, &target->id_ext, 8); |
351 | } else { | 351 | } else { |
352 | memcpy(req->priv.initiator_port_id, | 352 | memcpy(req->priv.initiator_port_id, |
353 | target->srp_host->initiator_port_id, 16); | 353 | &target->initiator_ext, 8); |
354 | memcpy(req->priv.initiator_port_id + 8, | ||
355 | &target->path.sgid.global.interface_id, 8); | ||
354 | memcpy(req->priv.target_port_id, &target->id_ext, 8); | 356 | memcpy(req->priv.target_port_id, &target->id_ext, 8); |
355 | memcpy(req->priv.target_port_id + 8, &target->ioc_guid, 8); | 357 | memcpy(req->priv.target_port_id + 8, &target->ioc_guid, 8); |
356 | } | 358 | } |
357 | 359 | ||
358 | /* | 360 | /* |
359 | * Topspin/Cisco SRP targets will reject our login unless we | 361 | * Topspin/Cisco SRP targets will reject our login unless we |
360 | * zero out the first 8 bytes of our initiator port ID. The | 362 | * zero out the first 8 bytes of our initiator port ID and set |
361 | * second 8 bytes must be our local node GUID, but we always | 363 | * the second 8 bytes to the local node GUID. |
362 | * use that anyway. | ||
363 | */ | 364 | */ |
364 | if (topspin_workarounds && !memcmp(&target->ioc_guid, topspin_oui, 3)) { | 365 | if (topspin_workarounds && !memcmp(&target->ioc_guid, topspin_oui, 3)) { |
365 | printk(KERN_DEBUG PFX "Topspin/Cisco initiator port ID workaround " | 366 | printk(KERN_DEBUG PFX "Topspin/Cisco initiator port ID workaround " |
366 | "activated for target GUID %016llx\n", | 367 | "activated for target GUID %016llx\n", |
367 | (unsigned long long) be64_to_cpu(target->ioc_guid)); | 368 | (unsigned long long) be64_to_cpu(target->ioc_guid)); |
368 | memset(req->priv.initiator_port_id, 0, 8); | 369 | memset(req->priv.initiator_port_id, 0, 8); |
370 | memcpy(req->priv.initiator_port_id + 8, | ||
371 | &target->srp_host->dev->dev->node_guid, 8); | ||
369 | } | 372 | } |
370 | 373 | ||
371 | status = ib_send_cm_req(target->cm_id, &req->param); | 374 | status = ib_send_cm_req(target->cm_id, &req->param); |
@@ -1553,6 +1556,7 @@ enum { | |||
1553 | SRP_OPT_MAX_SECT = 1 << 5, | 1556 | SRP_OPT_MAX_SECT = 1 << 5, |
1554 | SRP_OPT_MAX_CMD_PER_LUN = 1 << 6, | 1557 | SRP_OPT_MAX_CMD_PER_LUN = 1 << 6, |
1555 | SRP_OPT_IO_CLASS = 1 << 7, | 1558 | SRP_OPT_IO_CLASS = 1 << 7, |
1559 | SRP_OPT_INITIATOR_EXT = 1 << 8, | ||
1556 | SRP_OPT_ALL = (SRP_OPT_ID_EXT | | 1560 | SRP_OPT_ALL = (SRP_OPT_ID_EXT | |
1557 | SRP_OPT_IOC_GUID | | 1561 | SRP_OPT_IOC_GUID | |
1558 | SRP_OPT_DGID | | 1562 | SRP_OPT_DGID | |
@@ -1569,6 +1573,7 @@ static match_table_t srp_opt_tokens = { | |||
1569 | { SRP_OPT_MAX_SECT, "max_sect=%d" }, | 1573 | { SRP_OPT_MAX_SECT, "max_sect=%d" }, |
1570 | { SRP_OPT_MAX_CMD_PER_LUN, "max_cmd_per_lun=%d" }, | 1574 | { SRP_OPT_MAX_CMD_PER_LUN, "max_cmd_per_lun=%d" }, |
1571 | { SRP_OPT_IO_CLASS, "io_class=%x" }, | 1575 | { SRP_OPT_IO_CLASS, "io_class=%x" }, |
1576 | { SRP_OPT_INITIATOR_EXT, "initiator_ext=%s" }, | ||
1572 | { SRP_OPT_ERR, NULL } | 1577 | { SRP_OPT_ERR, NULL } |
1573 | }; | 1578 | }; |
1574 | 1579 | ||
@@ -1668,6 +1673,12 @@ static int srp_parse_options(const char *buf, struct srp_target_port *target) | |||
1668 | target->io_class = token; | 1673 | target->io_class = token; |
1669 | break; | 1674 | break; |
1670 | 1675 | ||
1676 | case SRP_OPT_INITIATOR_EXT: | ||
1677 | p = match_strdup(args); | ||
1678 | target->initiator_ext = cpu_to_be64(simple_strtoull(p, NULL, 16)); | ||
1679 | kfree(p); | ||
1680 | break; | ||
1681 | |||
1671 | default: | 1682 | default: |
1672 | printk(KERN_WARNING PFX "unknown parameter or missing value " | 1683 | printk(KERN_WARNING PFX "unknown parameter or missing value " |
1673 | "'%s' in target creation request\n", p); | 1684 | "'%s' in target creation request\n", p); |
@@ -1708,7 +1719,6 @@ static ssize_t srp_create_target(struct class_device *class_dev, | |||
1708 | target_host->max_lun = SRP_MAX_LUN; | 1719 | target_host->max_lun = SRP_MAX_LUN; |
1709 | 1720 | ||
1710 | target = host_to_target(target_host); | 1721 | target = host_to_target(target_host); |
1711 | memset(target, 0, sizeof *target); | ||
1712 | 1722 | ||
1713 | target->io_class = SRP_REV16A_IB_IO_CLASS; | 1723 | target->io_class = SRP_REV16A_IB_IO_CLASS; |
1714 | target->scsi_host = target_host; | 1724 | target->scsi_host = target_host; |
@@ -1815,9 +1825,6 @@ static struct srp_host *srp_add_port(struct srp_device *device, u8 port) | |||
1815 | host->dev = device; | 1825 | host->dev = device; |
1816 | host->port = port; | 1826 | host->port = port; |
1817 | 1827 | ||
1818 | host->initiator_port_id[7] = port; | ||
1819 | memcpy(host->initiator_port_id + 8, &device->dev->node_guid, 8); | ||
1820 | |||
1821 | host->class_dev.class = &srp_class; | 1828 | host->class_dev.class = &srp_class; |
1822 | host->class_dev.dev = device->dev->dma_device; | 1829 | host->class_dev.dev = device->dev->dma_device; |
1823 | snprintf(host->class_dev.class_id, BUS_ID_SIZE, "srp-%s-%d", | 1830 | snprintf(host->class_dev.class_id, BUS_ID_SIZE, "srp-%s-%d", |
diff --git a/drivers/infiniband/ulp/srp/ib_srp.h b/drivers/infiniband/ulp/srp/ib_srp.h index 5b581fb8eb0d..d4e35ef51374 100644 --- a/drivers/infiniband/ulp/srp/ib_srp.h +++ b/drivers/infiniband/ulp/srp/ib_srp.h | |||
@@ -91,7 +91,6 @@ struct srp_device { | |||
91 | }; | 91 | }; |
92 | 92 | ||
93 | struct srp_host { | 93 | struct srp_host { |
94 | u8 initiator_port_id[16]; | ||
95 | struct srp_device *dev; | 94 | struct srp_device *dev; |
96 | u8 port; | 95 | u8 port; |
97 | struct class_device class_dev; | 96 | struct class_device class_dev; |
@@ -122,6 +121,7 @@ struct srp_target_port { | |||
122 | __be64 id_ext; | 121 | __be64 id_ext; |
123 | __be64 ioc_guid; | 122 | __be64 ioc_guid; |
124 | __be64 service_id; | 123 | __be64 service_id; |
124 | __be64 initiator_ext; | ||
125 | u16 io_class; | 125 | u16 io_class; |
126 | struct srp_host *srp_host; | 126 | struct srp_host *srp_host; |
127 | struct Scsi_Host *scsi_host; | 127 | struct Scsi_Host *scsi_host; |
diff --git a/drivers/input/joystick/amijoy.c b/drivers/input/joystick/amijoy.c index 7249d324297b..650acf3a30b7 100644 --- a/drivers/input/joystick/amijoy.c +++ b/drivers/input/joystick/amijoy.c | |||
@@ -57,7 +57,7 @@ static DEFINE_MUTEX(amijoy_mutex); | |||
57 | static struct input_dev *amijoy_dev[2]; | 57 | static struct input_dev *amijoy_dev[2]; |
58 | static char *amijoy_phys[2] = { "amijoy/input0", "amijoy/input1" }; | 58 | static char *amijoy_phys[2] = { "amijoy/input0", "amijoy/input1" }; |
59 | 59 | ||
60 | static irqreturn_t amijoy_interrupt(int irq, void *dummy, struct pt_regs *fp) | 60 | static irqreturn_t amijoy_interrupt(int irq, void *dummy) |
61 | { | 61 | { |
62 | int i, data = 0, button = 0; | 62 | int i, data = 0, button = 0; |
63 | 63 | ||
@@ -69,8 +69,6 @@ static irqreturn_t amijoy_interrupt(int irq, void *dummy, struct pt_regs *fp) | |||
69 | case 1: data = ~amiga_custom.joy1dat; button = (~ciaa.pra >> 7) & 1; break; | 69 | case 1: data = ~amiga_custom.joy1dat; button = (~ciaa.pra >> 7) & 1; break; |
70 | } | 70 | } |
71 | 71 | ||
72 | input_regs(amijoy_dev[i], fp); | ||
73 | |||
74 | input_report_key(amijoy_dev[i], BTN_TRIGGER, button); | 72 | input_report_key(amijoy_dev[i], BTN_TRIGGER, button); |
75 | 73 | ||
76 | input_report_abs(amijoy_dev[i], ABS_X, ((data >> 1) & 1) - ((data >> 9) & 1)); | 74 | input_report_abs(amijoy_dev[i], ABS_X, ((data >> 1) & 1) - ((data >> 9) & 1)); |
diff --git a/drivers/input/joystick/iforce/iforce-packets.c b/drivers/input/joystick/iforce/iforce-packets.c index 8632d47a7fbe..808f05932a6f 100644 --- a/drivers/input/joystick/iforce/iforce-packets.c +++ b/drivers/input/joystick/iforce/iforce-packets.c | |||
@@ -155,7 +155,7 @@ static int mark_core_as_ready(struct iforce *iforce, unsigned short addr) | |||
155 | return -1; | 155 | return -1; |
156 | } | 156 | } |
157 | 157 | ||
158 | void iforce_process_packet(struct iforce *iforce, u16 cmd, unsigned char *data, struct pt_regs *regs) | 158 | void iforce_process_packet(struct iforce *iforce, u16 cmd, unsigned char *data) |
159 | { | 159 | { |
160 | struct input_dev *dev = iforce->dev; | 160 | struct input_dev *dev = iforce->dev; |
161 | int i; | 161 | int i; |
@@ -183,9 +183,6 @@ void iforce_process_packet(struct iforce *iforce, u16 cmd, unsigned char *data, | |||
183 | 183 | ||
184 | case 0x01: /* joystick position data */ | 184 | case 0x01: /* joystick position data */ |
185 | case 0x03: /* wheel position data */ | 185 | case 0x03: /* wheel position data */ |
186 | |||
187 | input_regs(dev, regs); | ||
188 | |||
189 | if (HI(cmd) == 1) { | 186 | if (HI(cmd) == 1) { |
190 | input_report_abs(dev, ABS_X, (__s16) (((__s16)data[1] << 8) | data[0])); | 187 | input_report_abs(dev, ABS_X, (__s16) (((__s16)data[1] << 8) | data[0])); |
191 | input_report_abs(dev, ABS_Y, (__s16) (((__s16)data[3] << 8) | data[2])); | 188 | input_report_abs(dev, ABS_Y, (__s16) (((__s16)data[3] << 8) | data[2])); |
@@ -224,7 +221,6 @@ void iforce_process_packet(struct iforce *iforce, u16 cmd, unsigned char *data, | |||
224 | break; | 221 | break; |
225 | 222 | ||
226 | case 0x02: /* status report */ | 223 | case 0x02: /* status report */ |
227 | input_regs(dev, regs); | ||
228 | input_report_key(dev, BTN_DEAD, data[0] & 0x02); | 224 | input_report_key(dev, BTN_DEAD, data[0] & 0x02); |
229 | input_sync(dev); | 225 | input_sync(dev); |
230 | 226 | ||
diff --git a/drivers/input/joystick/iforce/iforce-serio.c b/drivers/input/joystick/iforce/iforce-serio.c index 64a78c515484..ca08f45c2040 100644 --- a/drivers/input/joystick/iforce/iforce-serio.c +++ b/drivers/input/joystick/iforce/iforce-serio.c | |||
@@ -81,7 +81,7 @@ static void iforce_serio_write_wakeup(struct serio *serio) | |||
81 | } | 81 | } |
82 | 82 | ||
83 | static irqreturn_t iforce_serio_irq(struct serio *serio, | 83 | static irqreturn_t iforce_serio_irq(struct serio *serio, |
84 | unsigned char data, unsigned int flags, struct pt_regs *regs) | 84 | unsigned char data, unsigned int flags) |
85 | { | 85 | { |
86 | struct iforce *iforce = serio_get_drvdata(serio); | 86 | struct iforce *iforce = serio_get_drvdata(serio); |
87 | 87 | ||
@@ -115,7 +115,7 @@ static irqreturn_t iforce_serio_irq(struct serio *serio, | |||
115 | } | 115 | } |
116 | 116 | ||
117 | if (iforce->idx == iforce->len) { | 117 | if (iforce->idx == iforce->len) { |
118 | iforce_process_packet(iforce, (iforce->id << 8) | iforce->idx, iforce->data, regs); | 118 | iforce_process_packet(iforce, (iforce->id << 8) | iforce->idx, iforce->data); |
119 | iforce->pkt = 0; | 119 | iforce->pkt = 0; |
120 | iforce->id = 0; | 120 | iforce->id = 0; |
121 | iforce->len = 0; | 121 | iforce->len = 0; |
diff --git a/drivers/input/joystick/iforce/iforce-usb.c b/drivers/input/joystick/iforce/iforce-usb.c index fe79d158456d..105112fb7b57 100644 --- a/drivers/input/joystick/iforce/iforce-usb.c +++ b/drivers/input/joystick/iforce/iforce-usb.c | |||
@@ -74,7 +74,7 @@ void iforce_usb_xmit(struct iforce *iforce) | |||
74 | spin_unlock_irqrestore(&iforce->xmit_lock, flags); | 74 | spin_unlock_irqrestore(&iforce->xmit_lock, flags); |
75 | } | 75 | } |
76 | 76 | ||
77 | static void iforce_usb_irq(struct urb *urb, struct pt_regs *regs) | 77 | static void iforce_usb_irq(struct urb *urb) |
78 | { | 78 | { |
79 | struct iforce *iforce = urb->context; | 79 | struct iforce *iforce = urb->context; |
80 | int status; | 80 | int status; |
@@ -96,7 +96,7 @@ static void iforce_usb_irq(struct urb *urb, struct pt_regs *regs) | |||
96 | } | 96 | } |
97 | 97 | ||
98 | iforce_process_packet(iforce, | 98 | iforce_process_packet(iforce, |
99 | (iforce->data[0] << 8) | (urb->actual_length - 1), iforce->data + 1, regs); | 99 | (iforce->data[0] << 8) | (urb->actual_length - 1), iforce->data + 1); |
100 | 100 | ||
101 | exit: | 101 | exit: |
102 | status = usb_submit_urb (urb, GFP_ATOMIC); | 102 | status = usb_submit_urb (urb, GFP_ATOMIC); |
@@ -105,7 +105,7 @@ exit: | |||
105 | __FUNCTION__, status); | 105 | __FUNCTION__, status); |
106 | } | 106 | } |
107 | 107 | ||
108 | static void iforce_usb_out(struct urb *urb, struct pt_regs *regs) | 108 | static void iforce_usb_out(struct urb *urb) |
109 | { | 109 | { |
110 | struct iforce *iforce = urb->context; | 110 | struct iforce *iforce = urb->context; |
111 | 111 | ||
@@ -119,7 +119,7 @@ static void iforce_usb_out(struct urb *urb, struct pt_regs *regs) | |||
119 | wake_up(&iforce->wait); | 119 | wake_up(&iforce->wait); |
120 | } | 120 | } |
121 | 121 | ||
122 | static void iforce_usb_ctrl(struct urb *urb, struct pt_regs *regs) | 122 | static void iforce_usb_ctrl(struct urb *urb) |
123 | { | 123 | { |
124 | struct iforce *iforce = urb->context; | 124 | struct iforce *iforce = urb->context; |
125 | if (urb->status) return; | 125 | if (urb->status) return; |
diff --git a/drivers/input/joystick/iforce/iforce.h b/drivers/input/joystick/iforce/iforce.h index 947df2739843..ffaeaefa1a42 100644 --- a/drivers/input/joystick/iforce/iforce.h +++ b/drivers/input/joystick/iforce/iforce.h | |||
@@ -160,7 +160,7 @@ void iforce_delete_device(struct iforce *iforce); | |||
160 | 160 | ||
161 | /* iforce-packets.c */ | 161 | /* iforce-packets.c */ |
162 | int iforce_control_playback(struct iforce*, u16 id, unsigned int); | 162 | int iforce_control_playback(struct iforce*, u16 id, unsigned int); |
163 | void iforce_process_packet(struct iforce *iforce, u16 cmd, unsigned char *data, struct pt_regs *regs); | 163 | void iforce_process_packet(struct iforce *iforce, u16 cmd, unsigned char *data); |
164 | int iforce_send_packet(struct iforce *iforce, u16 cmd, unsigned char* data); | 164 | int iforce_send_packet(struct iforce *iforce, u16 cmd, unsigned char* data); |
165 | void iforce_dump_packet(char *msg, u16 cmd, unsigned char *data) ; | 165 | void iforce_dump_packet(char *msg, u16 cmd, unsigned char *data) ; |
166 | int iforce_get_id_packet(struct iforce *iforce, char *packet); | 166 | int iforce_get_id_packet(struct iforce *iforce, char *packet); |
diff --git a/drivers/input/joystick/magellan.c b/drivers/input/joystick/magellan.c index 168b1061a03b..e3d19444ba2e 100644 --- a/drivers/input/joystick/magellan.c +++ b/drivers/input/joystick/magellan.c | |||
@@ -82,7 +82,7 @@ static int magellan_crunch_nibbles(unsigned char *data, int count) | |||
82 | return 0; | 82 | return 0; |
83 | } | 83 | } |
84 | 84 | ||
85 | static void magellan_process_packet(struct magellan* magellan, struct pt_regs *regs) | 85 | static void magellan_process_packet(struct magellan* magellan) |
86 | { | 86 | { |
87 | struct input_dev *dev = magellan->dev; | 87 | struct input_dev *dev = magellan->dev; |
88 | unsigned char *data = magellan->data; | 88 | unsigned char *data = magellan->data; |
@@ -90,8 +90,6 @@ static void magellan_process_packet(struct magellan* magellan, struct pt_regs *r | |||
90 | 90 | ||
91 | if (!magellan->idx) return; | 91 | if (!magellan->idx) return; |
92 | 92 | ||
93 | input_regs(dev, regs); | ||
94 | |||
95 | switch (magellan->data[0]) { | 93 | switch (magellan->data[0]) { |
96 | 94 | ||
97 | case 'd': /* Axis data */ | 95 | case 'd': /* Axis data */ |
@@ -115,12 +113,12 @@ static void magellan_process_packet(struct magellan* magellan, struct pt_regs *r | |||
115 | } | 113 | } |
116 | 114 | ||
117 | static irqreturn_t magellan_interrupt(struct serio *serio, | 115 | static irqreturn_t magellan_interrupt(struct serio *serio, |
118 | unsigned char data, unsigned int flags, struct pt_regs *regs) | 116 | unsigned char data, unsigned int flags) |
119 | { | 117 | { |
120 | struct magellan* magellan = serio_get_drvdata(serio); | 118 | struct magellan* magellan = serio_get_drvdata(serio); |
121 | 119 | ||
122 | if (data == '\r') { | 120 | if (data == '\r') { |
123 | magellan_process_packet(magellan, regs); | 121 | magellan_process_packet(magellan); |
124 | magellan->idx = 0; | 122 | magellan->idx = 0; |
125 | } else { | 123 | } else { |
126 | if (magellan->idx < MAGELLAN_MAX_LENGTH) | 124 | if (magellan->idx < MAGELLAN_MAX_LENGTH) |
diff --git a/drivers/input/joystick/spaceball.c b/drivers/input/joystick/spaceball.c index 7a19ee052972..2a9808cf826f 100644 --- a/drivers/input/joystick/spaceball.c +++ b/drivers/input/joystick/spaceball.c | |||
@@ -82,7 +82,7 @@ struct spaceball { | |||
82 | * SpaceBall. | 82 | * SpaceBall. |
83 | */ | 83 | */ |
84 | 84 | ||
85 | static void spaceball_process_packet(struct spaceball* spaceball, struct pt_regs *regs) | 85 | static void spaceball_process_packet(struct spaceball* spaceball) |
86 | { | 86 | { |
87 | struct input_dev *dev = spaceball->dev; | 87 | struct input_dev *dev = spaceball->dev; |
88 | unsigned char *data = spaceball->data; | 88 | unsigned char *data = spaceball->data; |
@@ -90,8 +90,6 @@ static void spaceball_process_packet(struct spaceball* spaceball, struct pt_regs | |||
90 | 90 | ||
91 | if (spaceball->idx < 2) return; | 91 | if (spaceball->idx < 2) return; |
92 | 92 | ||
93 | input_regs(dev, regs); | ||
94 | |||
95 | switch (spaceball->data[0]) { | 93 | switch (spaceball->data[0]) { |
96 | 94 | ||
97 | case 'D': /* Ball data */ | 95 | case 'D': /* Ball data */ |
@@ -151,13 +149,13 @@ static void spaceball_process_packet(struct spaceball* spaceball, struct pt_regs | |||
151 | */ | 149 | */ |
152 | 150 | ||
153 | static irqreturn_t spaceball_interrupt(struct serio *serio, | 151 | static irqreturn_t spaceball_interrupt(struct serio *serio, |
154 | unsigned char data, unsigned int flags, struct pt_regs *regs) | 152 | unsigned char data, unsigned int flags) |
155 | { | 153 | { |
156 | struct spaceball *spaceball = serio_get_drvdata(serio); | 154 | struct spaceball *spaceball = serio_get_drvdata(serio); |
157 | 155 | ||
158 | switch (data) { | 156 | switch (data) { |
159 | case 0xd: | 157 | case 0xd: |
160 | spaceball_process_packet(spaceball, regs); | 158 | spaceball_process_packet(spaceball); |
161 | spaceball->idx = 0; | 159 | spaceball->idx = 0; |
162 | spaceball->escape = 0; | 160 | spaceball->escape = 0; |
163 | break; | 161 | break; |
diff --git a/drivers/input/joystick/spaceorb.c b/drivers/input/joystick/spaceorb.c index 3e2782e79834..c4db0247c5fb 100644 --- a/drivers/input/joystick/spaceorb.c +++ b/drivers/input/joystick/spaceorb.c | |||
@@ -74,7 +74,7 @@ static unsigned char *spaceorb_errors[] = { "EEPROM storing 0 failed", "Receive | |||
74 | * SpaceOrb. | 74 | * SpaceOrb. |
75 | */ | 75 | */ |
76 | 76 | ||
77 | static void spaceorb_process_packet(struct spaceorb *spaceorb, struct pt_regs *regs) | 77 | static void spaceorb_process_packet(struct spaceorb *spaceorb) |
78 | { | 78 | { |
79 | struct input_dev *dev = spaceorb->dev; | 79 | struct input_dev *dev = spaceorb->dev; |
80 | unsigned char *data = spaceorb->data; | 80 | unsigned char *data = spaceorb->data; |
@@ -86,8 +86,6 @@ static void spaceorb_process_packet(struct spaceorb *spaceorb, struct pt_regs *r | |||
86 | for (i = 0; i < spaceorb->idx; i++) c ^= data[i]; | 86 | for (i = 0; i < spaceorb->idx; i++) c ^= data[i]; |
87 | if (c) return; | 87 | if (c) return; |
88 | 88 | ||
89 | input_regs(dev, regs); | ||
90 | |||
91 | switch (data[0]) { | 89 | switch (data[0]) { |
92 | 90 | ||
93 | case 'R': /* Reset packet */ | 91 | case 'R': /* Reset packet */ |
@@ -131,12 +129,12 @@ static void spaceorb_process_packet(struct spaceorb *spaceorb, struct pt_regs *r | |||
131 | } | 129 | } |
132 | 130 | ||
133 | static irqreturn_t spaceorb_interrupt(struct serio *serio, | 131 | static irqreturn_t spaceorb_interrupt(struct serio *serio, |
134 | unsigned char data, unsigned int flags, struct pt_regs *regs) | 132 | unsigned char data, unsigned int flags) |
135 | { | 133 | { |
136 | struct spaceorb* spaceorb = serio_get_drvdata(serio); | 134 | struct spaceorb* spaceorb = serio_get_drvdata(serio); |
137 | 135 | ||
138 | if (~data & 0x80) { | 136 | if (~data & 0x80) { |
139 | if (spaceorb->idx) spaceorb_process_packet(spaceorb, regs); | 137 | if (spaceorb->idx) spaceorb_process_packet(spaceorb); |
140 | spaceorb->idx = 0; | 138 | spaceorb->idx = 0; |
141 | } | 139 | } |
142 | if (spaceorb->idx < SPACEORB_MAX_LENGTH) | 140 | if (spaceorb->idx < SPACEORB_MAX_LENGTH) |
diff --git a/drivers/input/joystick/stinger.c b/drivers/input/joystick/stinger.c index 011ec4858e15..1ffb03223311 100644 --- a/drivers/input/joystick/stinger.c +++ b/drivers/input/joystick/stinger.c | |||
@@ -64,15 +64,13 @@ struct stinger { | |||
64 | * Stinger. It updates the data accordingly. | 64 | * Stinger. It updates the data accordingly. |
65 | */ | 65 | */ |
66 | 66 | ||
67 | static void stinger_process_packet(struct stinger *stinger, struct pt_regs *regs) | 67 | static void stinger_process_packet(struct stinger *stinger) |
68 | { | 68 | { |
69 | struct input_dev *dev = stinger->dev; | 69 | struct input_dev *dev = stinger->dev; |
70 | unsigned char *data = stinger->data; | 70 | unsigned char *data = stinger->data; |
71 | 71 | ||
72 | if (!stinger->idx) return; | 72 | if (!stinger->idx) return; |
73 | 73 | ||
74 | input_regs(dev, regs); | ||
75 | |||
76 | input_report_key(dev, BTN_A, ((data[0] & 0x20) >> 5)); | 74 | input_report_key(dev, BTN_A, ((data[0] & 0x20) >> 5)); |
77 | input_report_key(dev, BTN_B, ((data[0] & 0x10) >> 4)); | 75 | input_report_key(dev, BTN_B, ((data[0] & 0x10) >> 4)); |
78 | input_report_key(dev, BTN_C, ((data[0] & 0x08) >> 3)); | 76 | input_report_key(dev, BTN_C, ((data[0] & 0x08) >> 3)); |
@@ -99,7 +97,7 @@ static void stinger_process_packet(struct stinger *stinger, struct pt_regs *regs | |||
99 | */ | 97 | */ |
100 | 98 | ||
101 | static irqreturn_t stinger_interrupt(struct serio *serio, | 99 | static irqreturn_t stinger_interrupt(struct serio *serio, |
102 | unsigned char data, unsigned int flags, struct pt_regs *regs) | 100 | unsigned char data, unsigned int flags) |
103 | { | 101 | { |
104 | struct stinger *stinger = serio_get_drvdata(serio); | 102 | struct stinger *stinger = serio_get_drvdata(serio); |
105 | 103 | ||
@@ -109,7 +107,7 @@ static irqreturn_t stinger_interrupt(struct serio *serio, | |||
109 | stinger->data[stinger->idx++] = data; | 107 | stinger->data[stinger->idx++] = data; |
110 | 108 | ||
111 | if (stinger->idx == 4) { | 109 | if (stinger->idx == 4) { |
112 | stinger_process_packet(stinger, regs); | 110 | stinger_process_packet(stinger); |
113 | stinger->idx = 0; | 111 | stinger->idx = 0; |
114 | } | 112 | } |
115 | 113 | ||
diff --git a/drivers/input/joystick/twidjoy.c b/drivers/input/joystick/twidjoy.c index 076f237d9654..49085df2d631 100644 --- a/drivers/input/joystick/twidjoy.c +++ b/drivers/input/joystick/twidjoy.c | |||
@@ -104,7 +104,7 @@ struct twidjoy { | |||
104 | * Twiddler. It updates the data accordingly. | 104 | * Twiddler. It updates the data accordingly. |
105 | */ | 105 | */ |
106 | 106 | ||
107 | static void twidjoy_process_packet(struct twidjoy *twidjoy, struct pt_regs *regs) | 107 | static void twidjoy_process_packet(struct twidjoy *twidjoy) |
108 | { | 108 | { |
109 | struct input_dev *dev = twidjoy->dev; | 109 | struct input_dev *dev = twidjoy->dev; |
110 | unsigned char *data = twidjoy->data; | 110 | unsigned char *data = twidjoy->data; |
@@ -113,8 +113,6 @@ static void twidjoy_process_packet(struct twidjoy *twidjoy, struct pt_regs *regs | |||
113 | 113 | ||
114 | button_bits = ((data[1] & 0x7f) << 7) | (data[0] & 0x7f); | 114 | button_bits = ((data[1] & 0x7f) << 7) | (data[0] & 0x7f); |
115 | 115 | ||
116 | input_regs(dev, regs); | ||
117 | |||
118 | for (bp = twidjoy_buttons; bp->bitmask; bp++) { | 116 | for (bp = twidjoy_buttons; bp->bitmask; bp++) { |
119 | int value = (button_bits & (bp->bitmask << bp->bitshift)) >> bp->bitshift; | 117 | int value = (button_bits & (bp->bitmask << bp->bitshift)) >> bp->bitshift; |
120 | int i; | 118 | int i; |
@@ -141,7 +139,7 @@ static void twidjoy_process_packet(struct twidjoy *twidjoy, struct pt_regs *regs | |||
141 | * packet processing routine. | 139 | * packet processing routine. |
142 | */ | 140 | */ |
143 | 141 | ||
144 | static irqreturn_t twidjoy_interrupt(struct serio *serio, unsigned char data, unsigned int flags, struct pt_regs *regs) | 142 | static irqreturn_t twidjoy_interrupt(struct serio *serio, unsigned char data, unsigned int flags) |
145 | { | 143 | { |
146 | struct twidjoy *twidjoy = serio_get_drvdata(serio); | 144 | struct twidjoy *twidjoy = serio_get_drvdata(serio); |
147 | 145 | ||
@@ -158,7 +156,7 @@ static irqreturn_t twidjoy_interrupt(struct serio *serio, unsigned char data, un | |||
158 | twidjoy->data[twidjoy->idx++] = data; | 156 | twidjoy->data[twidjoy->idx++] = data; |
159 | 157 | ||
160 | if (twidjoy->idx == TWIDJOY_MAX_LENGTH) { | 158 | if (twidjoy->idx == TWIDJOY_MAX_LENGTH) { |
161 | twidjoy_process_packet(twidjoy, regs); | 159 | twidjoy_process_packet(twidjoy); |
162 | twidjoy->idx = 0; | 160 | twidjoy->idx = 0; |
163 | } | 161 | } |
164 | 162 | ||
diff --git a/drivers/input/joystick/warrior.c b/drivers/input/joystick/warrior.c index f9c1a03214eb..35edea1ab955 100644 --- a/drivers/input/joystick/warrior.c +++ b/drivers/input/joystick/warrior.c | |||
@@ -64,15 +64,13 @@ struct warrior { | |||
64 | * Warrior. It updates the data accordingly. | 64 | * Warrior. It updates the data accordingly. |
65 | */ | 65 | */ |
66 | 66 | ||
67 | static void warrior_process_packet(struct warrior *warrior, struct pt_regs *regs) | 67 | static void warrior_process_packet(struct warrior *warrior) |
68 | { | 68 | { |
69 | struct input_dev *dev = warrior->dev; | 69 | struct input_dev *dev = warrior->dev; |
70 | unsigned char *data = warrior->data; | 70 | unsigned char *data = warrior->data; |
71 | 71 | ||
72 | if (!warrior->idx) return; | 72 | if (!warrior->idx) return; |
73 | 73 | ||
74 | input_regs(dev, regs); | ||
75 | |||
76 | switch ((data[0] >> 4) & 7) { | 74 | switch ((data[0] >> 4) & 7) { |
77 | case 1: /* Button data */ | 75 | case 1: /* Button data */ |
78 | input_report_key(dev, BTN_TRIGGER, data[3] & 1); | 76 | input_report_key(dev, BTN_TRIGGER, data[3] & 1); |
@@ -101,12 +99,12 @@ static void warrior_process_packet(struct warrior *warrior, struct pt_regs *regs | |||
101 | */ | 99 | */ |
102 | 100 | ||
103 | static irqreturn_t warrior_interrupt(struct serio *serio, | 101 | static irqreturn_t warrior_interrupt(struct serio *serio, |
104 | unsigned char data, unsigned int flags, struct pt_regs *regs) | 102 | unsigned char data, unsigned int flags) |
105 | { | 103 | { |
106 | struct warrior *warrior = serio_get_drvdata(serio); | 104 | struct warrior *warrior = serio_get_drvdata(serio); |
107 | 105 | ||
108 | if (data & 0x80) { | 106 | if (data & 0x80) { |
109 | if (warrior->idx) warrior_process_packet(warrior, regs); | 107 | if (warrior->idx) warrior_process_packet(warrior); |
110 | warrior->idx = 0; | 108 | warrior->idx = 0; |
111 | warrior->len = warrior_lengths[(data >> 4) & 7]; | 109 | warrior->len = warrior_lengths[(data >> 4) & 7]; |
112 | } | 110 | } |
@@ -115,7 +113,7 @@ static irqreturn_t warrior_interrupt(struct serio *serio, | |||
115 | warrior->data[warrior->idx++] = data; | 113 | warrior->data[warrior->idx++] = data; |
116 | 114 | ||
117 | if (warrior->idx == warrior->len) { | 115 | if (warrior->idx == warrior->len) { |
118 | if (warrior->idx) warrior_process_packet(warrior, regs); | 116 | if (warrior->idx) warrior_process_packet(warrior); |
119 | warrior->idx = 0; | 117 | warrior->idx = 0; |
120 | warrior->len = 0; | 118 | warrior->len = 0; |
121 | } | 119 | } |
diff --git a/drivers/input/keyboard/Kconfig b/drivers/input/keyboard/Kconfig index 679bde34d247..81a333f73010 100644 --- a/drivers/input/keyboard/Kconfig +++ b/drivers/input/keyboard/Kconfig | |||
@@ -166,7 +166,7 @@ config KEYBOARD_AMIGA | |||
166 | 166 | ||
167 | config KEYBOARD_HIL_OLD | 167 | config KEYBOARD_HIL_OLD |
168 | tristate "HP HIL keyboard support (simple driver)" | 168 | tristate "HP HIL keyboard support (simple driver)" |
169 | depends on GSC | 169 | depends on GSC || HP300 |
170 | default y | 170 | default y |
171 | help | 171 | help |
172 | The "Human Interface Loop" is a older, 8-channel USB-like | 172 | The "Human Interface Loop" is a older, 8-channel USB-like |
@@ -183,7 +183,7 @@ config KEYBOARD_HIL_OLD | |||
183 | 183 | ||
184 | config KEYBOARD_HIL | 184 | config KEYBOARD_HIL |
185 | tristate "HP HIL keyboard support" | 185 | tristate "HP HIL keyboard support" |
186 | depends on GSC | 186 | depends on GSC || HP300 |
187 | default y | 187 | default y |
188 | select HP_SDC | 188 | select HP_SDC |
189 | select HIL_MLC | 189 | select HIL_MLC |
diff --git a/drivers/input/keyboard/amikbd.c b/drivers/input/keyboard/amikbd.c index f1f9db9d282c..8abdbd0ee8f9 100644 --- a/drivers/input/keyboard/amikbd.c +++ b/drivers/input/keyboard/amikbd.c | |||
@@ -158,7 +158,7 @@ static const char *amikbd_messages[8] = { | |||
158 | 158 | ||
159 | static struct input_dev *amikbd_dev; | 159 | static struct input_dev *amikbd_dev; |
160 | 160 | ||
161 | static irqreturn_t amikbd_interrupt(int irq, void *dummy, struct pt_regs *fp) | 161 | static irqreturn_t amikbd_interrupt(int irq, void *dummy) |
162 | { | 162 | { |
163 | unsigned char scancode, down; | 163 | unsigned char scancode, down; |
164 | 164 | ||
@@ -171,8 +171,6 @@ static irqreturn_t amikbd_interrupt(int irq, void *dummy, struct pt_regs *fp) | |||
171 | scancode >>= 1; | 171 | scancode >>= 1; |
172 | 172 | ||
173 | if (scancode < 0x78) { /* scancodes < 0x78 are keys */ | 173 | if (scancode < 0x78) { /* scancodes < 0x78 are keys */ |
174 | input_regs(amikbd_dev, fp); | ||
175 | |||
176 | if (scancode == 98) { /* CapsLock is a toggle switch key on Amiga */ | 174 | if (scancode == 98) { /* CapsLock is a toggle switch key on Amiga */ |
177 | input_report_key(amikbd_dev, scancode, 1); | 175 | input_report_key(amikbd_dev, scancode, 1); |
178 | input_report_key(amikbd_dev, scancode, 0); | 176 | input_report_key(amikbd_dev, scancode, 0); |
diff --git a/drivers/input/keyboard/atkbd.c b/drivers/input/keyboard/atkbd.c index 40244d4ce0f1..b6ef9eaad1dc 100644 --- a/drivers/input/keyboard/atkbd.c +++ b/drivers/input/keyboard/atkbd.c | |||
@@ -318,7 +318,7 @@ static unsigned int atkbd_compat_scancode(struct atkbd *atkbd, unsigned int code | |||
318 | */ | 318 | */ |
319 | 319 | ||
320 | static irqreturn_t atkbd_interrupt(struct serio *serio, unsigned char data, | 320 | static irqreturn_t atkbd_interrupt(struct serio *serio, unsigned char data, |
321 | unsigned int flags, struct pt_regs *regs) | 321 | unsigned int flags) |
322 | { | 322 | { |
323 | struct atkbd *atkbd = serio_get_drvdata(serio); | 323 | struct atkbd *atkbd = serio_get_drvdata(serio); |
324 | struct input_dev *dev = atkbd->dev; | 324 | struct input_dev *dev = atkbd->dev; |
@@ -458,7 +458,6 @@ static irqreturn_t atkbd_interrupt(struct serio *serio, unsigned char data, | |||
458 | atkbd->time = jiffies + msecs_to_jiffies(dev->rep[REP_DELAY]) / 2; | 458 | atkbd->time = jiffies + msecs_to_jiffies(dev->rep[REP_DELAY]) / 2; |
459 | } | 459 | } |
460 | 460 | ||
461 | input_regs(dev, regs); | ||
462 | input_event(dev, EV_KEY, keycode, value); | 461 | input_event(dev, EV_KEY, keycode, value); |
463 | input_sync(dev); | 462 | input_sync(dev); |
464 | 463 | ||
@@ -469,7 +468,6 @@ static irqreturn_t atkbd_interrupt(struct serio *serio, unsigned char data, | |||
469 | } | 468 | } |
470 | 469 | ||
471 | if (atkbd->scroll) { | 470 | if (atkbd->scroll) { |
472 | input_regs(dev, regs); | ||
473 | if (click != -1) | 471 | if (click != -1) |
474 | input_report_key(dev, BTN_MIDDLE, click); | 472 | input_report_key(dev, BTN_MIDDLE, click); |
475 | input_report_rel(dev, REL_WHEEL, scroll); | 473 | input_report_rel(dev, REL_WHEEL, scroll); |
diff --git a/drivers/input/keyboard/corgikbd.c b/drivers/input/keyboard/corgikbd.c index 1e03153b9bca..cb70970625b5 100644 --- a/drivers/input/keyboard/corgikbd.c +++ b/drivers/input/keyboard/corgikbd.c | |||
@@ -129,7 +129,7 @@ static inline void corgikbd_reset_col(int col) | |||
129 | */ | 129 | */ |
130 | 130 | ||
131 | /* Scan the hardware keyboard and push any changes up through the input layer */ | 131 | /* Scan the hardware keyboard and push any changes up through the input layer */ |
132 | static void corgikbd_scankeyboard(struct corgikbd *corgikbd_data, struct pt_regs *regs) | 132 | static void corgikbd_scankeyboard(struct corgikbd *corgikbd_data) |
133 | { | 133 | { |
134 | unsigned int row, col, rowd; | 134 | unsigned int row, col, rowd; |
135 | unsigned long flags; | 135 | unsigned long flags; |
@@ -140,9 +140,6 @@ static void corgikbd_scankeyboard(struct corgikbd *corgikbd_data, struct pt_regs | |||
140 | 140 | ||
141 | spin_lock_irqsave(&corgikbd_data->lock, flags); | 141 | spin_lock_irqsave(&corgikbd_data->lock, flags); |
142 | 142 | ||
143 | if (regs) | ||
144 | input_regs(corgikbd_data->input, regs); | ||
145 | |||
146 | num_pressed = 0; | 143 | num_pressed = 0; |
147 | for (col = 0; col < KB_COLS; col++) { | 144 | for (col = 0; col < KB_COLS; col++) { |
148 | /* | 145 | /* |
@@ -191,14 +188,14 @@ static void corgikbd_scankeyboard(struct corgikbd *corgikbd_data, struct pt_regs | |||
191 | /* | 188 | /* |
192 | * corgi keyboard interrupt handler. | 189 | * corgi keyboard interrupt handler. |
193 | */ | 190 | */ |
194 | static irqreturn_t corgikbd_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 191 | static irqreturn_t corgikbd_interrupt(int irq, void *dev_id) |
195 | { | 192 | { |
196 | struct corgikbd *corgikbd_data = dev_id; | 193 | struct corgikbd *corgikbd_data = dev_id; |
197 | 194 | ||
198 | if (!timer_pending(&corgikbd_data->timer)) { | 195 | if (!timer_pending(&corgikbd_data->timer)) { |
199 | /** wait chattering delay **/ | 196 | /** wait chattering delay **/ |
200 | udelay(20); | 197 | udelay(20); |
201 | corgikbd_scankeyboard(corgikbd_data, regs); | 198 | corgikbd_scankeyboard(corgikbd_data); |
202 | } | 199 | } |
203 | 200 | ||
204 | return IRQ_HANDLED; | 201 | return IRQ_HANDLED; |
diff --git a/drivers/input/keyboard/hil_kbd.c b/drivers/input/keyboard/hil_kbd.c index 2e4abdc26367..e774dd31e99b 100644 --- a/drivers/input/keyboard/hil_kbd.c +++ b/drivers/input/keyboard/hil_kbd.c | |||
@@ -198,7 +198,7 @@ static void hil_kbd_process_err(struct hil_kbd *kbd) { | |||
198 | } | 198 | } |
199 | 199 | ||
200 | static irqreturn_t hil_kbd_interrupt(struct serio *serio, | 200 | static irqreturn_t hil_kbd_interrupt(struct serio *serio, |
201 | unsigned char data, unsigned int flags, struct pt_regs *regs) | 201 | unsigned char data, unsigned int flags) |
202 | { | 202 | { |
203 | struct hil_kbd *kbd; | 203 | struct hil_kbd *kbd; |
204 | hil_packet packet; | 204 | hil_packet packet; |
@@ -328,7 +328,7 @@ static int hil_kbd_connect(struct serio *serio, struct serio_driver *drv) | |||
328 | kbd->dev->id.vendor = PCI_VENDOR_ID_HP; | 328 | kbd->dev->id.vendor = PCI_VENDOR_ID_HP; |
329 | kbd->dev->id.product = 0x0001; /* TODO: get from kbd->rsc */ | 329 | kbd->dev->id.product = 0x0001; /* TODO: get from kbd->rsc */ |
330 | kbd->dev->id.version = 0x0100; /* TODO: get from kbd->rsc */ | 330 | kbd->dev->id.version = 0x0100; /* TODO: get from kbd->rsc */ |
331 | kbd->dev->dev = &serio->dev; | 331 | kbd->dev->cdev.dev = &serio->dev; |
332 | 332 | ||
333 | for (i = 0; i < 128; i++) { | 333 | for (i = 0; i < 128; i++) { |
334 | set_bit(hil_kbd_set1[i], kbd->dev->keybit); | 334 | set_bit(hil_kbd_set1[i], kbd->dev->keybit); |
diff --git a/drivers/input/keyboard/hilkbd.c b/drivers/input/keyboard/hilkbd.c index d22c7c624296..54bc569db4b0 100644 --- a/drivers/input/keyboard/hilkbd.c +++ b/drivers/input/keyboard/hilkbd.c | |||
@@ -150,7 +150,7 @@ static inline void handle_data(unsigned char s, unsigned char c) | |||
150 | /* | 150 | /* |
151 | * Handle HIL interrupts. | 151 | * Handle HIL interrupts. |
152 | */ | 152 | */ |
153 | static irqreturn_t hil_interrupt(int irq, void *handle, struct pt_regs *regs) | 153 | static irqreturn_t hil_interrupt(int irq, void *handle) |
154 | { | 154 | { |
155 | unsigned char s, c; | 155 | unsigned char s, c; |
156 | 156 | ||
diff --git a/drivers/input/keyboard/lkkbd.c b/drivers/input/keyboard/lkkbd.c index 5174224cadb4..708d5a1bc3d2 100644 --- a/drivers/input/keyboard/lkkbd.c +++ b/drivers/input/keyboard/lkkbd.c | |||
@@ -453,8 +453,7 @@ lkkbd_detection_done (struct lkkbd *lk) | |||
453 | * is received. | 453 | * is received. |
454 | */ | 454 | */ |
455 | static irqreturn_t | 455 | static irqreturn_t |
456 | lkkbd_interrupt (struct serio *serio, unsigned char data, unsigned int flags, | 456 | lkkbd_interrupt (struct serio *serio, unsigned char data, unsigned int flags) |
457 | struct pt_regs *regs) | ||
458 | { | 457 | { |
459 | struct lkkbd *lk = serio_get_drvdata (serio); | 458 | struct lkkbd *lk = serio_get_drvdata (serio); |
460 | int i; | 459 | int i; |
@@ -473,7 +472,6 @@ lkkbd_interrupt (struct serio *serio, unsigned char data, unsigned int flags, | |||
473 | 472 | ||
474 | switch (data) { | 473 | switch (data) { |
475 | case LK_ALL_KEYS_UP: | 474 | case LK_ALL_KEYS_UP: |
476 | input_regs (lk->dev, regs); | ||
477 | for (i = 0; i < ARRAY_SIZE (lkkbd_keycode); i++) | 475 | for (i = 0; i < ARRAY_SIZE (lkkbd_keycode); i++) |
478 | if (lk->keycode[i] != KEY_RESERVED) | 476 | if (lk->keycode[i] != KEY_RESERVED) |
479 | input_report_key (lk->dev, lk->keycode[i], 0); | 477 | input_report_key (lk->dev, lk->keycode[i], 0); |
@@ -501,7 +499,6 @@ lkkbd_interrupt (struct serio *serio, unsigned char data, unsigned int flags, | |||
501 | 499 | ||
502 | default: | 500 | default: |
503 | if (lk->keycode[data] != KEY_RESERVED) { | 501 | if (lk->keycode[data] != KEY_RESERVED) { |
504 | input_regs (lk->dev, regs); | ||
505 | if (!test_bit (lk->keycode[data], lk->dev->key)) | 502 | if (!test_bit (lk->keycode[data], lk->dev->key)) |
506 | input_report_key (lk->dev, lk->keycode[data], 1); | 503 | input_report_key (lk->dev, lk->keycode[data], 1); |
507 | else | 504 | else |
diff --git a/drivers/input/keyboard/locomokbd.c b/drivers/input/keyboard/locomokbd.c index 83906f80ba21..fd33c9cc3272 100644 --- a/drivers/input/keyboard/locomokbd.c +++ b/drivers/input/keyboard/locomokbd.c | |||
@@ -126,7 +126,7 @@ static inline void locomokbd_reset_col(unsigned long membase, int col) | |||
126 | */ | 126 | */ |
127 | 127 | ||
128 | /* Scan the hardware keyboard and push any changes up through the input layer */ | 128 | /* Scan the hardware keyboard and push any changes up through the input layer */ |
129 | static void locomokbd_scankeyboard(struct locomokbd *locomokbd, struct pt_regs *regs) | 129 | static void locomokbd_scankeyboard(struct locomokbd *locomokbd) |
130 | { | 130 | { |
131 | unsigned int row, col, rowd, scancode; | 131 | unsigned int row, col, rowd, scancode; |
132 | unsigned long flags; | 132 | unsigned long flags; |
@@ -135,8 +135,6 @@ static void locomokbd_scankeyboard(struct locomokbd *locomokbd, struct pt_regs * | |||
135 | 135 | ||
136 | spin_lock_irqsave(&locomokbd->lock, flags); | 136 | spin_lock_irqsave(&locomokbd->lock, flags); |
137 | 137 | ||
138 | input_regs(locomokbd->input, regs); | ||
139 | |||
140 | locomokbd_charge_all(membase); | 138 | locomokbd_charge_all(membase); |
141 | 139 | ||
142 | num_pressed = 0; | 140 | num_pressed = 0; |
@@ -171,13 +169,13 @@ static void locomokbd_scankeyboard(struct locomokbd *locomokbd, struct pt_regs * | |||
171 | /* | 169 | /* |
172 | * LoCoMo keyboard interrupt handler. | 170 | * LoCoMo keyboard interrupt handler. |
173 | */ | 171 | */ |
174 | static irqreturn_t locomokbd_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 172 | static irqreturn_t locomokbd_interrupt(int irq, void *dev_id) |
175 | { | 173 | { |
176 | struct locomokbd *locomokbd = dev_id; | 174 | struct locomokbd *locomokbd = dev_id; |
177 | /** wait chattering delay **/ | 175 | /** wait chattering delay **/ |
178 | udelay(100); | 176 | udelay(100); |
179 | 177 | ||
180 | locomokbd_scankeyboard(locomokbd, regs); | 178 | locomokbd_scankeyboard(locomokbd); |
181 | 179 | ||
182 | return IRQ_HANDLED; | 180 | return IRQ_HANDLED; |
183 | } | 181 | } |
diff --git a/drivers/input/keyboard/newtonkbd.c b/drivers/input/keyboard/newtonkbd.c index 40a3f551247e..9282e4e082bd 100644 --- a/drivers/input/keyboard/newtonkbd.c +++ b/drivers/input/keyboard/newtonkbd.c | |||
@@ -65,13 +65,12 @@ struct nkbd { | |||
65 | }; | 65 | }; |
66 | 66 | ||
67 | static irqreturn_t nkbd_interrupt(struct serio *serio, | 67 | static irqreturn_t nkbd_interrupt(struct serio *serio, |
68 | unsigned char data, unsigned int flags, struct pt_regs *regs) | 68 | unsigned char data, unsigned int flags) |
69 | { | 69 | { |
70 | struct nkbd *nkbd = serio_get_drvdata(serio); | 70 | struct nkbd *nkbd = serio_get_drvdata(serio); |
71 | 71 | ||
72 | /* invalid scan codes are probably the init sequence, so we ignore them */ | 72 | /* invalid scan codes are probably the init sequence, so we ignore them */ |
73 | if (nkbd->keycode[data & NKBD_KEY]) { | 73 | if (nkbd->keycode[data & NKBD_KEY]) { |
74 | input_regs(nkbd->dev, regs); | ||
75 | input_report_key(nkbd->dev, nkbd->keycode[data & NKBD_KEY], data & NKBD_PRESS); | 74 | input_report_key(nkbd->dev, nkbd->keycode[data & NKBD_KEY], data & NKBD_PRESS); |
76 | input_sync(nkbd->dev); | 75 | input_sync(nkbd->dev); |
77 | } | 76 | } |
diff --git a/drivers/input/keyboard/omap-keypad.c b/drivers/input/keyboard/omap-keypad.c index d436287d1d2e..5680a6d95b2b 100644 --- a/drivers/input/keyboard/omap-keypad.c +++ b/drivers/input/keyboard/omap-keypad.c | |||
@@ -97,8 +97,7 @@ static u8 get_row_gpio_val(struct omap_kp *omap_kp) | |||
97 | #define get_row_gpio_val(x) 0 | 97 | #define get_row_gpio_val(x) 0 |
98 | #endif | 98 | #endif |
99 | 99 | ||
100 | static irqreturn_t omap_kp_interrupt(int irq, void *dev_id, | 100 | static irqreturn_t omap_kp_interrupt(int irq, void *dev_id) |
101 | struct pt_regs *regs) | ||
102 | { | 101 | { |
103 | struct omap_kp *omap_kp = dev_id; | 102 | struct omap_kp *omap_kp = dev_id; |
104 | 103 | ||
diff --git a/drivers/input/keyboard/spitzkbd.c b/drivers/input/keyboard/spitzkbd.c index e385710233f4..8b18c009e3e0 100644 --- a/drivers/input/keyboard/spitzkbd.c +++ b/drivers/input/keyboard/spitzkbd.c | |||
@@ -176,7 +176,7 @@ static inline int spitzkbd_get_row_status(int col) | |||
176 | */ | 176 | */ |
177 | 177 | ||
178 | /* Scan the hardware keyboard and push any changes up through the input layer */ | 178 | /* Scan the hardware keyboard and push any changes up through the input layer */ |
179 | static void spitzkbd_scankeyboard(struct spitzkbd *spitzkbd_data, struct pt_regs *regs) | 179 | static void spitzkbd_scankeyboard(struct spitzkbd *spitzkbd_data) |
180 | { | 180 | { |
181 | unsigned int row, col, rowd; | 181 | unsigned int row, col, rowd; |
182 | unsigned long flags; | 182 | unsigned long flags; |
@@ -187,8 +187,6 @@ static void spitzkbd_scankeyboard(struct spitzkbd *spitzkbd_data, struct pt_regs | |||
187 | 187 | ||
188 | spin_lock_irqsave(&spitzkbd_data->lock, flags); | 188 | spin_lock_irqsave(&spitzkbd_data->lock, flags); |
189 | 189 | ||
190 | input_regs(spitzkbd_data->input, regs); | ||
191 | |||
192 | num_pressed = 0; | 190 | num_pressed = 0; |
193 | for (col = 0; col < KB_COLS; col++) { | 191 | for (col = 0; col < KB_COLS; col++) { |
194 | /* | 192 | /* |
@@ -239,14 +237,14 @@ static void spitzkbd_scankeyboard(struct spitzkbd *spitzkbd_data, struct pt_regs | |||
239 | /* | 237 | /* |
240 | * spitz keyboard interrupt handler. | 238 | * spitz keyboard interrupt handler. |
241 | */ | 239 | */ |
242 | static irqreturn_t spitzkbd_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 240 | static irqreturn_t spitzkbd_interrupt(int irq, void *dev_id) |
243 | { | 241 | { |
244 | struct spitzkbd *spitzkbd_data = dev_id; | 242 | struct spitzkbd *spitzkbd_data = dev_id; |
245 | 243 | ||
246 | if (!timer_pending(&spitzkbd_data->timer)) { | 244 | if (!timer_pending(&spitzkbd_data->timer)) { |
247 | /** wait chattering delay **/ | 245 | /** wait chattering delay **/ |
248 | udelay(20); | 246 | udelay(20); |
249 | spitzkbd_scankeyboard(spitzkbd_data, regs); | 247 | spitzkbd_scankeyboard(spitzkbd_data); |
250 | } | 248 | } |
251 | 249 | ||
252 | return IRQ_HANDLED; | 250 | return IRQ_HANDLED; |
@@ -267,7 +265,7 @@ static void spitzkbd_timer_callback(unsigned long data) | |||
267 | * We debounce the switches and pass them to the input system. | 265 | * We debounce the switches and pass them to the input system. |
268 | */ | 266 | */ |
269 | 267 | ||
270 | static irqreturn_t spitzkbd_hinge_isr(int irq, void *dev_id, struct pt_regs *regs) | 268 | static irqreturn_t spitzkbd_hinge_isr(int irq, void *dev_id) |
271 | { | 269 | { |
272 | struct spitzkbd *spitzkbd_data = dev_id; | 270 | struct spitzkbd *spitzkbd_data = dev_id; |
273 | 271 | ||
diff --git a/drivers/input/keyboard/stowaway.c b/drivers/input/keyboard/stowaway.c index 04c54c57f25c..e60937d17b1c 100644 --- a/drivers/input/keyboard/stowaway.c +++ b/drivers/input/keyboard/stowaway.c | |||
@@ -71,13 +71,12 @@ struct skbd { | |||
71 | }; | 71 | }; |
72 | 72 | ||
73 | static irqreturn_t skbd_interrupt(struct serio *serio, unsigned char data, | 73 | static irqreturn_t skbd_interrupt(struct serio *serio, unsigned char data, |
74 | unsigned int flags, struct pt_regs *regs) | 74 | unsigned int flags) |
75 | { | 75 | { |
76 | struct skbd *skbd = serio_get_drvdata(serio); | 76 | struct skbd *skbd = serio_get_drvdata(serio); |
77 | struct input_dev *dev = skbd->dev; | 77 | struct input_dev *dev = skbd->dev; |
78 | 78 | ||
79 | if (skbd->keycode[data & SKBD_KEY_MASK]) { | 79 | if (skbd->keycode[data & SKBD_KEY_MASK]) { |
80 | input_regs(dev, regs); | ||
81 | input_report_key(dev, skbd->keycode[data & SKBD_KEY_MASK], | 80 | input_report_key(dev, skbd->keycode[data & SKBD_KEY_MASK], |
82 | !(data & SKBD_RELEASE)); | 81 | !(data & SKBD_RELEASE)); |
83 | input_sync(dev); | 82 | input_sync(dev); |
diff --git a/drivers/input/keyboard/sunkbd.c b/drivers/input/keyboard/sunkbd.c index 9dbd7b85686d..cac4781103c3 100644 --- a/drivers/input/keyboard/sunkbd.c +++ b/drivers/input/keyboard/sunkbd.c | |||
@@ -94,7 +94,7 @@ struct sunkbd { | |||
94 | */ | 94 | */ |
95 | 95 | ||
96 | static irqreturn_t sunkbd_interrupt(struct serio *serio, | 96 | static irqreturn_t sunkbd_interrupt(struct serio *serio, |
97 | unsigned char data, unsigned int flags, struct pt_regs *regs) | 97 | unsigned char data, unsigned int flags) |
98 | { | 98 | { |
99 | struct sunkbd* sunkbd = serio_get_drvdata(serio); | 99 | struct sunkbd* sunkbd = serio_get_drvdata(serio); |
100 | 100 | ||
@@ -129,7 +129,6 @@ static irqreturn_t sunkbd_interrupt(struct serio *serio, | |||
129 | break; | 129 | break; |
130 | 130 | ||
131 | if (sunkbd->keycode[data & SUNKBD_KEY]) { | 131 | if (sunkbd->keycode[data & SUNKBD_KEY]) { |
132 | input_regs(sunkbd->dev, regs); | ||
133 | input_report_key(sunkbd->dev, sunkbd->keycode[data & SUNKBD_KEY], !(data & SUNKBD_RELEASE)); | 132 | input_report_key(sunkbd->dev, sunkbd->keycode[data & SUNKBD_KEY], !(data & SUNKBD_RELEASE)); |
134 | input_sync(sunkbd->dev); | 133 | input_sync(sunkbd->dev); |
135 | } else { | 134 | } else { |
diff --git a/drivers/input/keyboard/xtkbd.c b/drivers/input/keyboard/xtkbd.c index 0821d53cf0c1..8c11dc935454 100644 --- a/drivers/input/keyboard/xtkbd.c +++ b/drivers/input/keyboard/xtkbd.c | |||
@@ -64,7 +64,7 @@ struct xtkbd { | |||
64 | }; | 64 | }; |
65 | 65 | ||
66 | static irqreturn_t xtkbd_interrupt(struct serio *serio, | 66 | static irqreturn_t xtkbd_interrupt(struct serio *serio, |
67 | unsigned char data, unsigned int flags, struct pt_regs *regs) | 67 | unsigned char data, unsigned int flags) |
68 | { | 68 | { |
69 | struct xtkbd *xtkbd = serio_get_drvdata(serio); | 69 | struct xtkbd *xtkbd = serio_get_drvdata(serio); |
70 | 70 | ||
@@ -75,7 +75,6 @@ static irqreturn_t xtkbd_interrupt(struct serio *serio, | |||
75 | default: | 75 | default: |
76 | 76 | ||
77 | if (xtkbd->keycode[data & XTKBD_KEY]) { | 77 | if (xtkbd->keycode[data & XTKBD_KEY]) { |
78 | input_regs(xtkbd->dev, regs); | ||
79 | input_report_key(xtkbd->dev, xtkbd->keycode[data & XTKBD_KEY], !(data & XTKBD_RELEASE)); | 78 | input_report_key(xtkbd->dev, xtkbd->keycode[data & XTKBD_KEY], !(data & XTKBD_RELEASE)); |
80 | input_sync(xtkbd->dev); | 79 | input_sync(xtkbd->dev); |
81 | } else { | 80 | } else { |
diff --git a/drivers/input/misc/Kconfig b/drivers/input/misc/Kconfig index a6dfc7455733..ba0e88c64e1e 100644 --- a/drivers/input/misc/Kconfig +++ b/drivers/input/misc/Kconfig | |||
@@ -73,7 +73,7 @@ config INPUT_UINPUT | |||
73 | 73 | ||
74 | config HP_SDC_RTC | 74 | config HP_SDC_RTC |
75 | tristate "HP SDC Real Time Clock" | 75 | tristate "HP SDC Real Time Clock" |
76 | depends on GSC | 76 | depends on GSC || HP300 |
77 | select HP_SDC | 77 | select HP_SDC |
78 | help | 78 | help |
79 | Say Y here if you want to support the built-in real time clock | 79 | Say Y here if you want to support the built-in real time clock |
diff --git a/drivers/input/misc/ixp4xx-beeper.c b/drivers/input/misc/ixp4xx-beeper.c index 805b636e73d9..105c6fc27823 100644 --- a/drivers/input/misc/ixp4xx-beeper.c +++ b/drivers/input/misc/ixp4xx-beeper.c | |||
@@ -79,7 +79,7 @@ static int ixp4xx_spkr_event(struct input_dev *dev, unsigned int type, unsigned | |||
79 | return 0; | 79 | return 0; |
80 | } | 80 | } |
81 | 81 | ||
82 | static irqreturn_t ixp4xx_spkr_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 82 | static irqreturn_t ixp4xx_spkr_interrupt(int irq, void *dev_id) |
83 | { | 83 | { |
84 | /* clear interrupt */ | 84 | /* clear interrupt */ |
85 | *IXP4XX_OSST = IXP4XX_OSST_TIMER_2_PEND; | 85 | *IXP4XX_OSST = IXP4XX_OSST_TIMER_2_PEND; |
diff --git a/drivers/input/mouse/Kconfig b/drivers/input/mouse/Kconfig index f15ccf781688..35d998c3e578 100644 --- a/drivers/input/mouse/Kconfig +++ b/drivers/input/mouse/Kconfig | |||
@@ -119,7 +119,7 @@ config MOUSE_VSXXXAA | |||
119 | 119 | ||
120 | config MOUSE_HIL | 120 | config MOUSE_HIL |
121 | tristate "HIL pointers (mice etc)." | 121 | tristate "HIL pointers (mice etc)." |
122 | depends on GSC | 122 | depends on GSC || HP300 |
123 | select HP_SDC | 123 | select HP_SDC |
124 | select HIL_MLC | 124 | select HIL_MLC |
125 | help | 125 | help |
diff --git a/drivers/input/mouse/alps.c b/drivers/input/mouse/alps.c index 450b68a619fd..4e71a66fc7fc 100644 --- a/drivers/input/mouse/alps.c +++ b/drivers/input/mouse/alps.c | |||
@@ -76,7 +76,7 @@ static const struct alps_model_info alps_model_data[] = { | |||
76 | * on a dualpoint, etc. | 76 | * on a dualpoint, etc. |
77 | */ | 77 | */ |
78 | 78 | ||
79 | static void alps_process_packet(struct psmouse *psmouse, struct pt_regs *regs) | 79 | static void alps_process_packet(struct psmouse *psmouse) |
80 | { | 80 | { |
81 | struct alps_data *priv = psmouse->private; | 81 | struct alps_data *priv = psmouse->private; |
82 | unsigned char *packet = psmouse->packet; | 82 | unsigned char *packet = psmouse->packet; |
@@ -85,8 +85,6 @@ static void alps_process_packet(struct psmouse *psmouse, struct pt_regs *regs) | |||
85 | int x, y, z, ges, fin, left, right, middle; | 85 | int x, y, z, ges, fin, left, right, middle; |
86 | int back = 0, forward = 0; | 86 | int back = 0, forward = 0; |
87 | 87 | ||
88 | input_regs(dev, regs); | ||
89 | |||
90 | if ((packet[0] & 0xc8) == 0x08) { /* 3-byte PS/2 packet */ | 88 | if ((packet[0] & 0xc8) == 0x08) { /* 3-byte PS/2 packet */ |
91 | input_report_key(dev2, BTN_LEFT, packet[0] & 1); | 89 | input_report_key(dev2, BTN_LEFT, packet[0] & 1); |
92 | input_report_key(dev2, BTN_RIGHT, packet[0] & 2); | 90 | input_report_key(dev2, BTN_RIGHT, packet[0] & 2); |
@@ -181,13 +179,13 @@ static void alps_process_packet(struct psmouse *psmouse, struct pt_regs *regs) | |||
181 | input_sync(dev); | 179 | input_sync(dev); |
182 | } | 180 | } |
183 | 181 | ||
184 | static psmouse_ret_t alps_process_byte(struct psmouse *psmouse, struct pt_regs *regs) | 182 | static psmouse_ret_t alps_process_byte(struct psmouse *psmouse) |
185 | { | 183 | { |
186 | struct alps_data *priv = psmouse->private; | 184 | struct alps_data *priv = psmouse->private; |
187 | 185 | ||
188 | if ((psmouse->packet[0] & 0xc8) == 0x08) { /* PS/2 packet */ | 186 | if ((psmouse->packet[0] & 0xc8) == 0x08) { /* PS/2 packet */ |
189 | if (psmouse->pktcnt == 3) { | 187 | if (psmouse->pktcnt == 3) { |
190 | alps_process_packet(psmouse, regs); | 188 | alps_process_packet(psmouse); |
191 | return PSMOUSE_FULL_PACKET; | 189 | return PSMOUSE_FULL_PACKET; |
192 | } | 190 | } |
193 | return PSMOUSE_GOOD_DATA; | 191 | return PSMOUSE_GOOD_DATA; |
@@ -202,7 +200,7 @@ static psmouse_ret_t alps_process_byte(struct psmouse *psmouse, struct pt_regs * | |||
202 | return PSMOUSE_BAD_DATA; | 200 | return PSMOUSE_BAD_DATA; |
203 | 201 | ||
204 | if (psmouse->pktcnt == 6) { | 202 | if (psmouse->pktcnt == 6) { |
205 | alps_process_packet(psmouse, regs); | 203 | alps_process_packet(psmouse); |
206 | return PSMOUSE_FULL_PACKET; | 204 | return PSMOUSE_FULL_PACKET; |
207 | } | 205 | } |
208 | 206 | ||
diff --git a/drivers/input/mouse/amimouse.c b/drivers/input/mouse/amimouse.c index c8b2cc9f184c..599a7b2dc519 100644 --- a/drivers/input/mouse/amimouse.c +++ b/drivers/input/mouse/amimouse.c | |||
@@ -36,7 +36,7 @@ MODULE_LICENSE("GPL"); | |||
36 | static int amimouse_lastx, amimouse_lasty; | 36 | static int amimouse_lastx, amimouse_lasty; |
37 | static struct input_dev *amimouse_dev; | 37 | static struct input_dev *amimouse_dev; |
38 | 38 | ||
39 | static irqreturn_t amimouse_interrupt(int irq, void *dummy, struct pt_regs *fp) | 39 | static irqreturn_t amimouse_interrupt(int irq, void *dummy) |
40 | { | 40 | { |
41 | unsigned short joy0dat, potgor; | 41 | unsigned short joy0dat, potgor; |
42 | int nx, ny, dx, dy; | 42 | int nx, ny, dx, dy; |
@@ -59,8 +59,6 @@ static irqreturn_t amimouse_interrupt(int irq, void *dummy, struct pt_regs *fp) | |||
59 | 59 | ||
60 | potgor = amiga_custom.potgor; | 60 | potgor = amiga_custom.potgor; |
61 | 61 | ||
62 | input_regs(amimouse_dev, fp); | ||
63 | |||
64 | input_report_rel(amimouse_dev, REL_X, dx); | 62 | input_report_rel(amimouse_dev, REL_X, dx); |
65 | input_report_rel(amimouse_dev, REL_Y, dy); | 63 | input_report_rel(amimouse_dev, REL_Y, dy); |
66 | 64 | ||
diff --git a/drivers/input/mouse/hil_ptr.c b/drivers/input/mouse/hil_ptr.c index 69f02178c528..4f2b503c1ac7 100644 --- a/drivers/input/mouse/hil_ptr.c +++ b/drivers/input/mouse/hil_ptr.c | |||
@@ -190,7 +190,7 @@ static void hil_ptr_process_err(struct hil_ptr *ptr) { | |||
190 | } | 190 | } |
191 | 191 | ||
192 | static irqreturn_t hil_ptr_interrupt(struct serio *serio, | 192 | static irqreturn_t hil_ptr_interrupt(struct serio *serio, |
193 | unsigned char data, unsigned int flags, struct pt_regs *regs) | 193 | unsigned char data, unsigned int flags) |
194 | { | 194 | { |
195 | struct hil_ptr *ptr; | 195 | struct hil_ptr *ptr; |
196 | hil_packet packet; | 196 | hil_packet packet; |
@@ -375,7 +375,7 @@ static int hil_ptr_connect(struct serio *serio, struct serio_driver *driver) | |||
375 | ptr->dev->id.vendor = PCI_VENDOR_ID_HP; | 375 | ptr->dev->id.vendor = PCI_VENDOR_ID_HP; |
376 | ptr->dev->id.product = 0x0001; /* TODO: get from ptr->rsc */ | 376 | ptr->dev->id.product = 0x0001; /* TODO: get from ptr->rsc */ |
377 | ptr->dev->id.version = 0x0100; /* TODO: get from ptr->rsc */ | 377 | ptr->dev->id.version = 0x0100; /* TODO: get from ptr->rsc */ |
378 | ptr->dev->dev = &serio->dev; | 378 | ptr->dev->cdev.dev = &serio->dev; |
379 | 379 | ||
380 | input_register_device(ptr->dev); | 380 | input_register_device(ptr->dev); |
381 | printk(KERN_INFO "input: %s (%s), ID: %d\n", | 381 | printk(KERN_INFO "input: %s (%s), ID: %d\n", |
diff --git a/drivers/input/mouse/inport.c b/drivers/input/mouse/inport.c index 50f1fed10be4..e1252fa9a107 100644 --- a/drivers/input/mouse/inport.c +++ b/drivers/input/mouse/inport.c | |||
@@ -88,15 +88,13 @@ __obsolete_setup("inport_irq="); | |||
88 | 88 | ||
89 | static struct input_dev *inport_dev; | 89 | static struct input_dev *inport_dev; |
90 | 90 | ||
91 | static irqreturn_t inport_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 91 | static irqreturn_t inport_interrupt(int irq, void *dev_id) |
92 | { | 92 | { |
93 | unsigned char buttons; | 93 | unsigned char buttons; |
94 | 94 | ||
95 | outb(INPORT_REG_MODE, INPORT_CONTROL_PORT); | 95 | outb(INPORT_REG_MODE, INPORT_CONTROL_PORT); |
96 | outb(INPORT_MODE_HOLD | INPORT_MODE_IRQ | INPORT_MODE_BASE, INPORT_DATA_PORT); | 96 | outb(INPORT_MODE_HOLD | INPORT_MODE_IRQ | INPORT_MODE_BASE, INPORT_DATA_PORT); |
97 | 97 | ||
98 | input_regs(inport_dev, regs); | ||
99 | |||
100 | outb(INPORT_REG_X, INPORT_CONTROL_PORT); | 98 | outb(INPORT_REG_X, INPORT_CONTROL_PORT); |
101 | input_report_rel(inport_dev, REL_X, inb(INPORT_DATA_PORT)); | 99 | input_report_rel(inport_dev, REL_X, inb(INPORT_DATA_PORT)); |
102 | 100 | ||
diff --git a/drivers/input/mouse/lifebook.c b/drivers/input/mouse/lifebook.c index 5e9d25067513..c57e8853b949 100644 --- a/drivers/input/mouse/lifebook.c +++ b/drivers/input/mouse/lifebook.c | |||
@@ -62,7 +62,7 @@ static struct dmi_system_id lifebook_dmi_table[] = { | |||
62 | }; | 62 | }; |
63 | 63 | ||
64 | 64 | ||
65 | static psmouse_ret_t lifebook_process_byte(struct psmouse *psmouse, struct pt_regs *regs) | 65 | static psmouse_ret_t lifebook_process_byte(struct psmouse *psmouse) |
66 | { | 66 | { |
67 | unsigned char *packet = psmouse->packet; | 67 | unsigned char *packet = psmouse->packet; |
68 | struct input_dev *dev = psmouse->dev; | 68 | struct input_dev *dev = psmouse->dev; |
@@ -70,8 +70,6 @@ static psmouse_ret_t lifebook_process_byte(struct psmouse *psmouse, struct pt_re | |||
70 | if (psmouse->pktcnt != 3) | 70 | if (psmouse->pktcnt != 3) |
71 | return PSMOUSE_GOOD_DATA; | 71 | return PSMOUSE_GOOD_DATA; |
72 | 72 | ||
73 | input_regs(dev, regs); | ||
74 | |||
75 | /* calculate X and Y */ | 73 | /* calculate X and Y */ |
76 | if ((packet[0] & 0x08) == 0x00) { | 74 | if ((packet[0] & 0x08) == 0x00) { |
77 | input_report_abs(dev, ABS_X, | 75 | input_report_abs(dev, ABS_X, |
diff --git a/drivers/input/mouse/logibm.c b/drivers/input/mouse/logibm.c index 9c7ce38806d7..8e9c2f3d69a8 100644 --- a/drivers/input/mouse/logibm.c +++ b/drivers/input/mouse/logibm.c | |||
@@ -79,7 +79,7 @@ __obsolete_setup("logibm_irq="); | |||
79 | 79 | ||
80 | static struct input_dev *logibm_dev; | 80 | static struct input_dev *logibm_dev; |
81 | 81 | ||
82 | static irqreturn_t logibm_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 82 | static irqreturn_t logibm_interrupt(int irq, void *dev_id) |
83 | { | 83 | { |
84 | char dx, dy; | 84 | char dx, dy; |
85 | unsigned char buttons; | 85 | unsigned char buttons; |
@@ -95,7 +95,6 @@ static irqreturn_t logibm_interrupt(int irq, void *dev_id, struct pt_regs *regs) | |||
95 | dy |= (buttons & 0xf) << 4; | 95 | dy |= (buttons & 0xf) << 4; |
96 | buttons = ~buttons >> 5; | 96 | buttons = ~buttons >> 5; |
97 | 97 | ||
98 | input_regs(logibm_dev, regs); | ||
99 | input_report_rel(logibm_dev, REL_X, dx); | 98 | input_report_rel(logibm_dev, REL_X, dx); |
100 | input_report_rel(logibm_dev, REL_Y, dy); | 99 | input_report_rel(logibm_dev, REL_Y, dy); |
101 | input_report_key(logibm_dev, BTN_RIGHT, buttons & 1); | 100 | input_report_key(logibm_dev, BTN_RIGHT, buttons & 1); |
diff --git a/drivers/input/mouse/logips2pp.c b/drivers/input/mouse/logips2pp.c index 7972eecbcfe4..8a4f862709e7 100644 --- a/drivers/input/mouse/logips2pp.c +++ b/drivers/input/mouse/logips2pp.c | |||
@@ -39,7 +39,7 @@ struct ps2pp_info { | |||
39 | * Process a PS2++ or PS2T++ packet. | 39 | * Process a PS2++ or PS2T++ packet. |
40 | */ | 40 | */ |
41 | 41 | ||
42 | static psmouse_ret_t ps2pp_process_byte(struct psmouse *psmouse, struct pt_regs *regs) | 42 | static psmouse_ret_t ps2pp_process_byte(struct psmouse *psmouse) |
43 | { | 43 | { |
44 | struct input_dev *dev = psmouse->dev; | 44 | struct input_dev *dev = psmouse->dev; |
45 | unsigned char *packet = psmouse->packet; | 45 | unsigned char *packet = psmouse->packet; |
@@ -51,8 +51,6 @@ static psmouse_ret_t ps2pp_process_byte(struct psmouse *psmouse, struct pt_regs | |||
51 | * Full packet accumulated, process it | 51 | * Full packet accumulated, process it |
52 | */ | 52 | */ |
53 | 53 | ||
54 | input_regs(dev, regs); | ||
55 | |||
56 | if ((packet[0] & 0x48) == 0x48 && (packet[1] & 0x02) == 0x02) { | 54 | if ((packet[0] & 0x48) == 0x48 && (packet[1] & 0x02) == 0x02) { |
57 | 55 | ||
58 | /* Logitech extended packet */ | 56 | /* Logitech extended packet */ |
diff --git a/drivers/input/mouse/pc110pad.c b/drivers/input/mouse/pc110pad.c index d284ea712151..8c075aa7223b 100644 --- a/drivers/input/mouse/pc110pad.c +++ b/drivers/input/mouse/pc110pad.c | |||
@@ -57,7 +57,7 @@ static struct input_dev *pc110pad_dev; | |||
57 | static int pc110pad_data[3]; | 57 | static int pc110pad_data[3]; |
58 | static int pc110pad_count; | 58 | static int pc110pad_count; |
59 | 59 | ||
60 | static irqreturn_t pc110pad_interrupt(int irq, void *ptr, struct pt_regs *regs) | 60 | static irqreturn_t pc110pad_interrupt(int irq, void *ptr) |
61 | { | 61 | { |
62 | int value = inb_p(pc110pad_io); | 62 | int value = inb_p(pc110pad_io); |
63 | int handshake = inb_p(pc110pad_io + 2); | 63 | int handshake = inb_p(pc110pad_io + 2); |
@@ -71,7 +71,6 @@ static irqreturn_t pc110pad_interrupt(int irq, void *ptr, struct pt_regs *regs) | |||
71 | if (pc110pad_count < 3) | 71 | if (pc110pad_count < 3) |
72 | return IRQ_HANDLED; | 72 | return IRQ_HANDLED; |
73 | 73 | ||
74 | input_regs(pc110pad_dev, regs); | ||
75 | input_report_key(pc110pad_dev, BTN_TOUCH, | 74 | input_report_key(pc110pad_dev, BTN_TOUCH, |
76 | pc110pad_data[0] & 0x01); | 75 | pc110pad_data[0] & 0x01); |
77 | input_report_abs(pc110pad_dev, ABS_X, | 76 | input_report_abs(pc110pad_dev, ABS_X, |
@@ -91,9 +90,9 @@ static void pc110pad_close(struct input_dev *dev) | |||
91 | 90 | ||
92 | static int pc110pad_open(struct input_dev *dev) | 91 | static int pc110pad_open(struct input_dev *dev) |
93 | { | 92 | { |
94 | pc110pad_interrupt(0, NULL, NULL); | 93 | pc110pad_interrupt(0, NULL); |
95 | pc110pad_interrupt(0, NULL, NULL); | 94 | pc110pad_interrupt(0, NULL); |
96 | pc110pad_interrupt(0, NULL, NULL); | 95 | pc110pad_interrupt(0, NULL); |
97 | outb(PC110PAD_ON, pc110pad_io + 2); | 96 | outb(PC110PAD_ON, pc110pad_io + 2); |
98 | pc110pad_count = 0; | 97 | pc110pad_count = 0; |
99 | 98 | ||
diff --git a/drivers/input/mouse/psmouse-base.c b/drivers/input/mouse/psmouse-base.c index 9fb7eb6b0f71..6f9b2c7cc9c2 100644 --- a/drivers/input/mouse/psmouse-base.c +++ b/drivers/input/mouse/psmouse-base.c | |||
@@ -124,7 +124,7 @@ struct psmouse_protocol { | |||
124 | * relevant events to the input module once full packet has arrived. | 124 | * relevant events to the input module once full packet has arrived. |
125 | */ | 125 | */ |
126 | 126 | ||
127 | static psmouse_ret_t psmouse_process_byte(struct psmouse *psmouse, struct pt_regs *regs) | 127 | static psmouse_ret_t psmouse_process_byte(struct psmouse *psmouse) |
128 | { | 128 | { |
129 | struct input_dev *dev = psmouse->dev; | 129 | struct input_dev *dev = psmouse->dev; |
130 | unsigned char *packet = psmouse->packet; | 130 | unsigned char *packet = psmouse->packet; |
@@ -136,8 +136,6 @@ static psmouse_ret_t psmouse_process_byte(struct psmouse *psmouse, struct pt_reg | |||
136 | * Full packet accumulated, process it | 136 | * Full packet accumulated, process it |
137 | */ | 137 | */ |
138 | 138 | ||
139 | input_regs(dev, regs); | ||
140 | |||
141 | /* | 139 | /* |
142 | * Scroll wheel on IntelliMice, scroll buttons on NetMice | 140 | * Scroll wheel on IntelliMice, scroll buttons on NetMice |
143 | */ | 141 | */ |
@@ -231,9 +229,9 @@ static void psmouse_set_state(struct psmouse *psmouse, enum psmouse_state new_st | |||
231 | * by calling corresponding protocol handler. | 229 | * by calling corresponding protocol handler. |
232 | */ | 230 | */ |
233 | 231 | ||
234 | static int psmouse_handle_byte(struct psmouse *psmouse, struct pt_regs *regs) | 232 | static int psmouse_handle_byte(struct psmouse *psmouse) |
235 | { | 233 | { |
236 | psmouse_ret_t rc = psmouse->protocol_handler(psmouse, regs); | 234 | psmouse_ret_t rc = psmouse->protocol_handler(psmouse); |
237 | 235 | ||
238 | switch (rc) { | 236 | switch (rc) { |
239 | case PSMOUSE_BAD_DATA: | 237 | case PSMOUSE_BAD_DATA: |
@@ -271,7 +269,7 @@ static int psmouse_handle_byte(struct psmouse *psmouse, struct pt_regs *regs) | |||
271 | */ | 269 | */ |
272 | 270 | ||
273 | static irqreturn_t psmouse_interrupt(struct serio *serio, | 271 | static irqreturn_t psmouse_interrupt(struct serio *serio, |
274 | unsigned char data, unsigned int flags, struct pt_regs *regs) | 272 | unsigned char data, unsigned int flags) |
275 | { | 273 | { |
276 | struct psmouse *psmouse = serio_get_drvdata(serio); | 274 | struct psmouse *psmouse = serio_get_drvdata(serio); |
277 | 275 | ||
@@ -327,7 +325,7 @@ static irqreturn_t psmouse_interrupt(struct serio *serio, | |||
327 | * Not a new device, try processing first byte normally | 325 | * Not a new device, try processing first byte normally |
328 | */ | 326 | */ |
329 | psmouse->pktcnt = 1; | 327 | psmouse->pktcnt = 1; |
330 | if (psmouse_handle_byte(psmouse, regs)) | 328 | if (psmouse_handle_byte(psmouse)) |
331 | goto out; | 329 | goto out; |
332 | 330 | ||
333 | psmouse->packet[psmouse->pktcnt++] = data; | 331 | psmouse->packet[psmouse->pktcnt++] = data; |
@@ -346,7 +344,7 @@ static irqreturn_t psmouse_interrupt(struct serio *serio, | |||
346 | } | 344 | } |
347 | 345 | ||
348 | psmouse->last = jiffies; | 346 | psmouse->last = jiffies; |
349 | psmouse_handle_byte(psmouse, regs); | 347 | psmouse_handle_byte(psmouse); |
350 | 348 | ||
351 | out: | 349 | out: |
352 | return IRQ_HANDLED; | 350 | return IRQ_HANDLED; |
@@ -940,7 +938,7 @@ static void psmouse_resync(void *p) | |||
940 | psmouse_set_state(psmouse, PSMOUSE_CMD_MODE); | 938 | psmouse_set_state(psmouse, PSMOUSE_CMD_MODE); |
941 | for (i = 0; i < psmouse->pktsize; i++) { | 939 | for (i = 0; i < psmouse->pktsize; i++) { |
942 | psmouse->pktcnt++; | 940 | psmouse->pktcnt++; |
943 | rc = psmouse->protocol_handler(psmouse, NULL); | 941 | rc = psmouse->protocol_handler(psmouse); |
944 | if (rc != PSMOUSE_GOOD_DATA) | 942 | if (rc != PSMOUSE_GOOD_DATA) |
945 | break; | 943 | break; |
946 | } | 944 | } |
diff --git a/drivers/input/mouse/psmouse.h b/drivers/input/mouse/psmouse.h index 4d9107fba6a1..1b74cae8a556 100644 --- a/drivers/input/mouse/psmouse.h +++ b/drivers/input/mouse/psmouse.h | |||
@@ -62,7 +62,7 @@ struct psmouse { | |||
62 | unsigned int resync_time; | 62 | unsigned int resync_time; |
63 | unsigned int smartscroll; /* Logitech only */ | 63 | unsigned int smartscroll; /* Logitech only */ |
64 | 64 | ||
65 | psmouse_ret_t (*protocol_handler)(struct psmouse *psmouse, struct pt_regs *regs); | 65 | psmouse_ret_t (*protocol_handler)(struct psmouse *psmouse); |
66 | void (*set_rate)(struct psmouse *psmouse, unsigned int rate); | 66 | void (*set_rate)(struct psmouse *psmouse, unsigned int rate); |
67 | void (*set_resolution)(struct psmouse *psmouse, unsigned int resolution); | 67 | void (*set_resolution)(struct psmouse *psmouse, unsigned int resolution); |
68 | 68 | ||
diff --git a/drivers/input/mouse/rpcmouse.c b/drivers/input/mouse/rpcmouse.c index 872b30bf7aad..ea0468569610 100644 --- a/drivers/input/mouse/rpcmouse.c +++ b/drivers/input/mouse/rpcmouse.c | |||
@@ -36,7 +36,7 @@ MODULE_LICENSE("GPL"); | |||
36 | static short rpcmouse_lastx, rpcmouse_lasty; | 36 | static short rpcmouse_lastx, rpcmouse_lasty; |
37 | static struct input_dev *rpcmouse_dev; | 37 | static struct input_dev *rpcmouse_dev; |
38 | 38 | ||
39 | static irqreturn_t rpcmouse_irq(int irq, void *dev_id, struct pt_regs *regs) | 39 | static irqreturn_t rpcmouse_irq(int irq, void *dev_id) |
40 | { | 40 | { |
41 | struct input_dev *dev = dev_id; | 41 | struct input_dev *dev = dev_id; |
42 | short x, y, dx, dy, b; | 42 | short x, y, dx, dy, b; |
@@ -51,8 +51,6 @@ static irqreturn_t rpcmouse_irq(int irq, void *dev_id, struct pt_regs *regs) | |||
51 | rpcmouse_lastx = x; | 51 | rpcmouse_lastx = x; |
52 | rpcmouse_lasty = y; | 52 | rpcmouse_lasty = y; |
53 | 53 | ||
54 | input_regs(dev, regs); | ||
55 | |||
56 | input_report_rel(dev, REL_X, dx); | 54 | input_report_rel(dev, REL_X, dx); |
57 | input_report_rel(dev, REL_Y, -dy); | 55 | input_report_rel(dev, REL_Y, -dy); |
58 | 56 | ||
diff --git a/drivers/input/mouse/sermouse.c b/drivers/input/mouse/sermouse.c index 680b32353884..2a272c5daf08 100644 --- a/drivers/input/mouse/sermouse.c +++ b/drivers/input/mouse/sermouse.c | |||
@@ -61,13 +61,11 @@ struct sermouse { | |||
61 | * second, which is as good as a PS/2 or USB mouse. | 61 | * second, which is as good as a PS/2 or USB mouse. |
62 | */ | 62 | */ |
63 | 63 | ||
64 | static void sermouse_process_msc(struct sermouse *sermouse, signed char data, struct pt_regs *regs) | 64 | static void sermouse_process_msc(struct sermouse *sermouse, signed char data) |
65 | { | 65 | { |
66 | struct input_dev *dev = sermouse->dev; | 66 | struct input_dev *dev = sermouse->dev; |
67 | signed char *buf = sermouse->buf; | 67 | signed char *buf = sermouse->buf; |
68 | 68 | ||
69 | input_regs(dev, regs); | ||
70 | |||
71 | switch (sermouse->count) { | 69 | switch (sermouse->count) { |
72 | 70 | ||
73 | case 0: | 71 | case 0: |
@@ -104,15 +102,13 @@ static void sermouse_process_msc(struct sermouse *sermouse, signed char data, st | |||
104 | * standard 3-byte packets and 1200 bps. | 102 | * standard 3-byte packets and 1200 bps. |
105 | */ | 103 | */ |
106 | 104 | ||
107 | static void sermouse_process_ms(struct sermouse *sermouse, signed char data, struct pt_regs *regs) | 105 | static void sermouse_process_ms(struct sermouse *sermouse, signed char data) |
108 | { | 106 | { |
109 | struct input_dev *dev = sermouse->dev; | 107 | struct input_dev *dev = sermouse->dev; |
110 | signed char *buf = sermouse->buf; | 108 | signed char *buf = sermouse->buf; |
111 | 109 | ||
112 | if (data & 0x40) sermouse->count = 0; | 110 | if (data & 0x40) sermouse->count = 0; |
113 | 111 | ||
114 | input_regs(dev, regs); | ||
115 | |||
116 | switch (sermouse->count) { | 112 | switch (sermouse->count) { |
117 | 113 | ||
118 | case 0: | 114 | case 0: |
@@ -206,7 +202,7 @@ static void sermouse_process_ms(struct sermouse *sermouse, signed char data, str | |||
206 | */ | 202 | */ |
207 | 203 | ||
208 | static irqreturn_t sermouse_interrupt(struct serio *serio, | 204 | static irqreturn_t sermouse_interrupt(struct serio *serio, |
209 | unsigned char data, unsigned int flags, struct pt_regs *regs) | 205 | unsigned char data, unsigned int flags) |
210 | { | 206 | { |
211 | struct sermouse *sermouse = serio_get_drvdata(serio); | 207 | struct sermouse *sermouse = serio_get_drvdata(serio); |
212 | 208 | ||
@@ -214,9 +210,9 @@ static irqreturn_t sermouse_interrupt(struct serio *serio, | |||
214 | sermouse->last = jiffies; | 210 | sermouse->last = jiffies; |
215 | 211 | ||
216 | if (sermouse->type > SERIO_SUN) | 212 | if (sermouse->type > SERIO_SUN) |
217 | sermouse_process_ms(sermouse, data, regs); | 213 | sermouse_process_ms(sermouse, data); |
218 | else | 214 | else |
219 | sermouse_process_msc(sermouse, data, regs); | 215 | sermouse_process_msc(sermouse, data); |
220 | return IRQ_HANDLED; | 216 | return IRQ_HANDLED; |
221 | } | 217 | } |
222 | 218 | ||
diff --git a/drivers/input/mouse/synaptics.c b/drivers/input/mouse/synaptics.c index 392108c436ba..49ac696d6cff 100644 --- a/drivers/input/mouse/synaptics.c +++ b/drivers/input/mouse/synaptics.c | |||
@@ -216,13 +216,13 @@ static void synaptics_pass_pt_packet(struct serio *ptport, unsigned char *packet | |||
216 | struct psmouse *child = serio_get_drvdata(ptport); | 216 | struct psmouse *child = serio_get_drvdata(ptport); |
217 | 217 | ||
218 | if (child && child->state == PSMOUSE_ACTIVATED) { | 218 | if (child && child->state == PSMOUSE_ACTIVATED) { |
219 | serio_interrupt(ptport, packet[1], 0, NULL); | 219 | serio_interrupt(ptport, packet[1], 0); |
220 | serio_interrupt(ptport, packet[4], 0, NULL); | 220 | serio_interrupt(ptport, packet[4], 0); |
221 | serio_interrupt(ptport, packet[5], 0, NULL); | 221 | serio_interrupt(ptport, packet[5], 0); |
222 | if (child->pktsize == 4) | 222 | if (child->pktsize == 4) |
223 | serio_interrupt(ptport, packet[2], 0, NULL); | 223 | serio_interrupt(ptport, packet[2], 0); |
224 | } else | 224 | } else |
225 | serio_interrupt(ptport, packet[1], 0, NULL); | 225 | serio_interrupt(ptport, packet[1], 0); |
226 | } | 226 | } |
227 | 227 | ||
228 | static void synaptics_pt_activate(struct psmouse *psmouse) | 228 | static void synaptics_pt_activate(struct psmouse *psmouse) |
@@ -469,13 +469,10 @@ static unsigned char synaptics_detect_pkt_type(struct psmouse *psmouse) | |||
469 | return SYN_NEWABS_STRICT; | 469 | return SYN_NEWABS_STRICT; |
470 | } | 470 | } |
471 | 471 | ||
472 | static psmouse_ret_t synaptics_process_byte(struct psmouse *psmouse, struct pt_regs *regs) | 472 | static psmouse_ret_t synaptics_process_byte(struct psmouse *psmouse) |
473 | { | 473 | { |
474 | struct input_dev *dev = psmouse->dev; | ||
475 | struct synaptics_data *priv = psmouse->private; | 474 | struct synaptics_data *priv = psmouse->private; |
476 | 475 | ||
477 | input_regs(dev, regs); | ||
478 | |||
479 | if (psmouse->pktcnt >= 6) { /* Full packet received */ | 476 | if (psmouse->pktcnt >= 6) { /* Full packet received */ |
480 | if (unlikely(priv->pkt_type == SYN_NEWABS)) | 477 | if (unlikely(priv->pkt_type == SYN_NEWABS)) |
481 | priv->pkt_type = synaptics_detect_pkt_type(psmouse); | 478 | priv->pkt_type = synaptics_detect_pkt_type(psmouse); |
diff --git a/drivers/input/mouse/vsxxxaa.c b/drivers/input/mouse/vsxxxaa.c index 47edcfd022ba..ffdb50eee93d 100644 --- a/drivers/input/mouse/vsxxxaa.c +++ b/drivers/input/mouse/vsxxxaa.c | |||
@@ -211,7 +211,7 @@ vsxxxaa_smells_like_packet (struct vsxxxaa *mouse, unsigned char type, size_t le | |||
211 | } | 211 | } |
212 | 212 | ||
213 | static void | 213 | static void |
214 | vsxxxaa_handle_REL_packet (struct vsxxxaa *mouse, struct pt_regs *regs) | 214 | vsxxxaa_handle_REL_packet (struct vsxxxaa *mouse) |
215 | { | 215 | { |
216 | struct input_dev *dev = mouse->dev; | 216 | struct input_dev *dev = mouse->dev; |
217 | unsigned char *buf = mouse->buf; | 217 | unsigned char *buf = mouse->buf; |
@@ -258,7 +258,6 @@ vsxxxaa_handle_REL_packet (struct vsxxxaa *mouse, struct pt_regs *regs) | |||
258 | /* | 258 | /* |
259 | * Report what we've found so far... | 259 | * Report what we've found so far... |
260 | */ | 260 | */ |
261 | input_regs (dev, regs); | ||
262 | input_report_key (dev, BTN_LEFT, left); | 261 | input_report_key (dev, BTN_LEFT, left); |
263 | input_report_key (dev, BTN_MIDDLE, middle); | 262 | input_report_key (dev, BTN_MIDDLE, middle); |
264 | input_report_key (dev, BTN_RIGHT, right); | 263 | input_report_key (dev, BTN_RIGHT, right); |
@@ -269,7 +268,7 @@ vsxxxaa_handle_REL_packet (struct vsxxxaa *mouse, struct pt_regs *regs) | |||
269 | } | 268 | } |
270 | 269 | ||
271 | static void | 270 | static void |
272 | vsxxxaa_handle_ABS_packet (struct vsxxxaa *mouse, struct pt_regs *regs) | 271 | vsxxxaa_handle_ABS_packet (struct vsxxxaa *mouse) |
273 | { | 272 | { |
274 | struct input_dev *dev = mouse->dev; | 273 | struct input_dev *dev = mouse->dev; |
275 | unsigned char *buf = mouse->buf; | 274 | unsigned char *buf = mouse->buf; |
@@ -312,7 +311,6 @@ vsxxxaa_handle_ABS_packet (struct vsxxxaa *mouse, struct pt_regs *regs) | |||
312 | /* | 311 | /* |
313 | * Report what we've found so far... | 312 | * Report what we've found so far... |
314 | */ | 313 | */ |
315 | input_regs (dev, regs); | ||
316 | input_report_key (dev, BTN_LEFT, left); | 314 | input_report_key (dev, BTN_LEFT, left); |
317 | input_report_key (dev, BTN_MIDDLE, middle); | 315 | input_report_key (dev, BTN_MIDDLE, middle); |
318 | input_report_key (dev, BTN_RIGHT, right); | 316 | input_report_key (dev, BTN_RIGHT, right); |
@@ -323,7 +321,7 @@ vsxxxaa_handle_ABS_packet (struct vsxxxaa *mouse, struct pt_regs *regs) | |||
323 | } | 321 | } |
324 | 322 | ||
325 | static void | 323 | static void |
326 | vsxxxaa_handle_POR_packet (struct vsxxxaa *mouse, struct pt_regs *regs) | 324 | vsxxxaa_handle_POR_packet (struct vsxxxaa *mouse) |
327 | { | 325 | { |
328 | struct input_dev *dev = mouse->dev; | 326 | struct input_dev *dev = mouse->dev; |
329 | unsigned char *buf = mouse->buf; | 327 | unsigned char *buf = mouse->buf; |
@@ -367,7 +365,6 @@ vsxxxaa_handle_POR_packet (struct vsxxxaa *mouse, struct pt_regs *regs) | |||
367 | 365 | ||
368 | if (error <= 0x1f) { | 366 | if (error <= 0x1f) { |
369 | /* No (serious) error. Report buttons */ | 367 | /* No (serious) error. Report buttons */ |
370 | input_regs (dev, regs); | ||
371 | input_report_key (dev, BTN_LEFT, left); | 368 | input_report_key (dev, BTN_LEFT, left); |
372 | input_report_key (dev, BTN_MIDDLE, middle); | 369 | input_report_key (dev, BTN_MIDDLE, middle); |
373 | input_report_key (dev, BTN_RIGHT, right); | 370 | input_report_key (dev, BTN_RIGHT, right); |
@@ -395,7 +392,7 @@ vsxxxaa_handle_POR_packet (struct vsxxxaa *mouse, struct pt_regs *regs) | |||
395 | } | 392 | } |
396 | 393 | ||
397 | static void | 394 | static void |
398 | vsxxxaa_parse_buffer (struct vsxxxaa *mouse, struct pt_regs *regs) | 395 | vsxxxaa_parse_buffer (struct vsxxxaa *mouse) |
399 | { | 396 | { |
400 | unsigned char *buf = mouse->buf; | 397 | unsigned char *buf = mouse->buf; |
401 | int stray_bytes; | 398 | int stray_bytes; |
@@ -432,7 +429,7 @@ vsxxxaa_parse_buffer (struct vsxxxaa *mouse, struct pt_regs *regs) | |||
432 | continue; | 429 | continue; |
433 | } | 430 | } |
434 | 431 | ||
435 | vsxxxaa_handle_REL_packet (mouse, regs); | 432 | vsxxxaa_handle_REL_packet (mouse); |
436 | continue; /* More to parse? */ | 433 | continue; /* More to parse? */ |
437 | } | 434 | } |
438 | 435 | ||
@@ -446,7 +443,7 @@ vsxxxaa_parse_buffer (struct vsxxxaa *mouse, struct pt_regs *regs) | |||
446 | continue; | 443 | continue; |
447 | } | 444 | } |
448 | 445 | ||
449 | vsxxxaa_handle_ABS_packet (mouse, regs); | 446 | vsxxxaa_handle_ABS_packet (mouse); |
450 | continue; /* More to parse? */ | 447 | continue; /* More to parse? */ |
451 | } | 448 | } |
452 | 449 | ||
@@ -460,7 +457,7 @@ vsxxxaa_parse_buffer (struct vsxxxaa *mouse, struct pt_regs *regs) | |||
460 | continue; | 457 | continue; |
461 | } | 458 | } |
462 | 459 | ||
463 | vsxxxaa_handle_POR_packet (mouse, regs); | 460 | vsxxxaa_handle_POR_packet (mouse); |
464 | continue; /* More to parse? */ | 461 | continue; /* More to parse? */ |
465 | } | 462 | } |
466 | 463 | ||
@@ -469,13 +466,12 @@ vsxxxaa_parse_buffer (struct vsxxxaa *mouse, struct pt_regs *regs) | |||
469 | } | 466 | } |
470 | 467 | ||
471 | static irqreturn_t | 468 | static irqreturn_t |
472 | vsxxxaa_interrupt (struct serio *serio, unsigned char data, unsigned int flags, | 469 | vsxxxaa_interrupt (struct serio *serio, unsigned char data, unsigned int flags) |
473 | struct pt_regs *regs) | ||
474 | { | 470 | { |
475 | struct vsxxxaa *mouse = serio_get_drvdata (serio); | 471 | struct vsxxxaa *mouse = serio_get_drvdata (serio); |
476 | 472 | ||
477 | vsxxxaa_queue_byte (mouse, data); | 473 | vsxxxaa_queue_byte (mouse, data); |
478 | vsxxxaa_parse_buffer (mouse, regs); | 474 | vsxxxaa_parse_buffer (mouse); |
479 | 475 | ||
480 | return IRQ_HANDLED; | 476 | return IRQ_HANDLED; |
481 | } | 477 | } |
diff --git a/drivers/input/serio/Kconfig b/drivers/input/serio/Kconfig index 8cdbfeca5903..adef447f23ea 100644 --- a/drivers/input/serio/Kconfig +++ b/drivers/input/serio/Kconfig | |||
@@ -112,7 +112,7 @@ config SERIO_GSCPS2 | |||
112 | 112 | ||
113 | config HP_SDC | 113 | config HP_SDC |
114 | tristate "HP System Device Controller i8042 Support" | 114 | tristate "HP System Device Controller i8042 Support" |
115 | depends on GSC && SERIO | 115 | depends on (GSC || HP300) && SERIO |
116 | default y | 116 | default y |
117 | ---help--- | 117 | ---help--- |
118 | This option enables support for the "System Device | 118 | This option enables support for the "System Device |
diff --git a/drivers/input/serio/ambakmi.c b/drivers/input/serio/ambakmi.c index 3df5eedf8f31..5a7b49c35539 100644 --- a/drivers/input/serio/ambakmi.c +++ b/drivers/input/serio/ambakmi.c | |||
@@ -37,14 +37,14 @@ struct amba_kmi_port { | |||
37 | unsigned int open; | 37 | unsigned int open; |
38 | }; | 38 | }; |
39 | 39 | ||
40 | static irqreturn_t amba_kmi_int(int irq, void *dev_id, struct pt_regs *regs) | 40 | static irqreturn_t amba_kmi_int(int irq, void *dev_id) |
41 | { | 41 | { |
42 | struct amba_kmi_port *kmi = dev_id; | 42 | struct amba_kmi_port *kmi = dev_id; |
43 | unsigned int status = readb(KMIIR); | 43 | unsigned int status = readb(KMIIR); |
44 | int handled = IRQ_NONE; | 44 | int handled = IRQ_NONE; |
45 | 45 | ||
46 | while (status & KMIIR_RXINTR) { | 46 | while (status & KMIIR_RXINTR) { |
47 | serio_interrupt(kmi->io, readb(KMIDATA), 0, regs); | 47 | serio_interrupt(kmi->io, readb(KMIDATA), 0); |
48 | status = readb(KMIIR); | 48 | status = readb(KMIIR); |
49 | handled = IRQ_HANDLED; | 49 | handled = IRQ_HANDLED; |
50 | } | 50 | } |
diff --git a/drivers/input/serio/ct82c710.c b/drivers/input/serio/ct82c710.c index bc6e87add093..0d35018c23a9 100644 --- a/drivers/input/serio/ct82c710.c +++ b/drivers/input/serio/ct82c710.c | |||
@@ -71,9 +71,9 @@ static struct resource ct82c710_iores; | |||
71 | * is waiting in the 82C710. | 71 | * is waiting in the 82C710. |
72 | */ | 72 | */ |
73 | 73 | ||
74 | static irqreturn_t ct82c710_interrupt(int cpl, void *dev_id, struct pt_regs * regs) | 74 | static irqreturn_t ct82c710_interrupt(int cpl, void *dev_id) |
75 | { | 75 | { |
76 | return serio_interrupt(ct82c710_port, inb(CT82C710_DATA), 0, regs); | 76 | return serio_interrupt(ct82c710_port, inb(CT82C710_DATA), 0); |
77 | } | 77 | } |
78 | 78 | ||
79 | /* | 79 | /* |
diff --git a/drivers/input/serio/gscps2.c b/drivers/input/serio/gscps2.c index cde036a92168..74f14e097789 100644 --- a/drivers/input/serio/gscps2.c +++ b/drivers/input/serio/gscps2.c | |||
@@ -82,7 +82,7 @@ MODULE_DEVICE_TABLE(parisc, gscps2_device_tbl); | |||
82 | #define GSC_ID_MOUSE 1 | 82 | #define GSC_ID_MOUSE 1 |
83 | 83 | ||
84 | 84 | ||
85 | static irqreturn_t gscps2_interrupt(int irq, void *dev, struct pt_regs *regs); | 85 | static irqreturn_t gscps2_interrupt(int irq, void *dev); |
86 | 86 | ||
87 | #define BUFFER_SIZE 0x0f | 87 | #define BUFFER_SIZE 0x0f |
88 | 88 | ||
@@ -166,7 +166,7 @@ static inline int gscps2_writeb_output(struct gscps2port *ps2port, u8 data) | |||
166 | 166 | ||
167 | /* make sure any received data is returned as fast as possible */ | 167 | /* make sure any received data is returned as fast as possible */ |
168 | /* this is important e.g. when we set the LEDs on the keyboard */ | 168 | /* this is important e.g. when we set the LEDs on the keyboard */ |
169 | gscps2_interrupt(0, NULL, NULL); | 169 | gscps2_interrupt(0, NULL); |
170 | 170 | ||
171 | return 1; | 171 | return 1; |
172 | } | 172 | } |
@@ -226,7 +226,7 @@ static LIST_HEAD(ps2port_list); | |||
226 | * later. | 226 | * later. |
227 | */ | 227 | */ |
228 | 228 | ||
229 | static irqreturn_t gscps2_interrupt(int irq, void *dev, struct pt_regs *regs) | 229 | static irqreturn_t gscps2_interrupt(int irq, void *dev) |
230 | { | 230 | { |
231 | struct gscps2port *ps2port; | 231 | struct gscps2port *ps2port; |
232 | 232 | ||
@@ -267,7 +267,7 @@ static irqreturn_t gscps2_interrupt(int irq, void *dev, struct pt_regs *regs) | |||
267 | rxflags = ((status & GSC_STAT_TERR) ? SERIO_TIMEOUT : 0 ) | | 267 | rxflags = ((status & GSC_STAT_TERR) ? SERIO_TIMEOUT : 0 ) | |
268 | ((status & GSC_STAT_PERR) ? SERIO_PARITY : 0 ); | 268 | ((status & GSC_STAT_PERR) ? SERIO_PARITY : 0 ); |
269 | 269 | ||
270 | serio_interrupt(ps2port->port, data, rxflags, regs); | 270 | serio_interrupt(ps2port->port, data, rxflags); |
271 | 271 | ||
272 | } /* while() */ | 272 | } /* while() */ |
273 | 273 | ||
@@ -306,7 +306,7 @@ static int gscps2_open(struct serio *port) | |||
306 | /* enable it */ | 306 | /* enable it */ |
307 | gscps2_enable(ps2port, ENABLE); | 307 | gscps2_enable(ps2port, ENABLE); |
308 | 308 | ||
309 | gscps2_interrupt(0, NULL, NULL); | 309 | gscps2_interrupt(0, NULL); |
310 | 310 | ||
311 | return 0; | 311 | return 0; |
312 | } | 312 | } |
diff --git a/drivers/input/serio/hil_mlc.c b/drivers/input/serio/hil_mlc.c index bbbe15e21904..bdfde046b741 100644 --- a/drivers/input/serio/hil_mlc.c +++ b/drivers/input/serio/hil_mlc.c | |||
@@ -162,10 +162,10 @@ static void hil_mlc_send_polls(hil_mlc *mlc) { | |||
162 | if (did != (p & HIL_PKT_ADDR_MASK) >> 8) { | 162 | if (did != (p & HIL_PKT_ADDR_MASK) >> 8) { |
163 | if (drv == NULL || drv->interrupt == NULL) goto skip; | 163 | if (drv == NULL || drv->interrupt == NULL) goto skip; |
164 | 164 | ||
165 | drv->interrupt(serio, 0, 0, NULL); | 165 | drv->interrupt(serio, 0, 0); |
166 | drv->interrupt(serio, HIL_ERR_INT >> 16, 0, NULL); | 166 | drv->interrupt(serio, HIL_ERR_INT >> 16, 0); |
167 | drv->interrupt(serio, HIL_PKT_CMD >> 8, 0, NULL); | 167 | drv->interrupt(serio, HIL_PKT_CMD >> 8, 0); |
168 | drv->interrupt(serio, HIL_CMD_POL + cnt, 0, NULL); | 168 | drv->interrupt(serio, HIL_CMD_POL + cnt, 0); |
169 | skip: | 169 | skip: |
170 | did = (p & HIL_PKT_ADDR_MASK) >> 8; | 170 | did = (p & HIL_PKT_ADDR_MASK) >> 8; |
171 | serio = did ? mlc->serio[mlc->di_map[did-1]] : NULL; | 171 | serio = did ? mlc->serio[mlc->di_map[did-1]] : NULL; |
@@ -174,10 +174,10 @@ static void hil_mlc_send_polls(hil_mlc *mlc) { | |||
174 | } | 174 | } |
175 | cnt++; i++; | 175 | cnt++; i++; |
176 | if (drv == NULL || drv->interrupt == NULL) continue; | 176 | if (drv == NULL || drv->interrupt == NULL) continue; |
177 | drv->interrupt(serio, (p >> 24), 0, NULL); | 177 | drv->interrupt(serio, (p >> 24), 0); |
178 | drv->interrupt(serio, (p >> 16) & 0xff, 0, NULL); | 178 | drv->interrupt(serio, (p >> 16) & 0xff, 0); |
179 | drv->interrupt(serio, (p >> 8) & ~HIL_PKT_ADDR_MASK, 0, NULL); | 179 | drv->interrupt(serio, (p >> 8) & ~HIL_PKT_ADDR_MASK, 0); |
180 | drv->interrupt(serio, p & 0xff, 0, NULL); | 180 | drv->interrupt(serio, p & 0xff, 0); |
181 | } | 181 | } |
182 | } | 182 | } |
183 | 183 | ||
@@ -780,16 +780,16 @@ static int hil_mlc_serio_write(struct serio *serio, unsigned char c) { | |||
780 | while ((last != idx) && (*last == 0)) last--; | 780 | while ((last != idx) && (*last == 0)) last--; |
781 | 781 | ||
782 | while (idx != last) { | 782 | while (idx != last) { |
783 | drv->interrupt(serio, 0, 0, NULL); | 783 | drv->interrupt(serio, 0, 0); |
784 | drv->interrupt(serio, HIL_ERR_INT >> 16, 0, NULL); | 784 | drv->interrupt(serio, HIL_ERR_INT >> 16, 0); |
785 | drv->interrupt(serio, 0, 0, NULL); | 785 | drv->interrupt(serio, 0, 0); |
786 | drv->interrupt(serio, *idx, 0, NULL); | 786 | drv->interrupt(serio, *idx, 0); |
787 | idx++; | 787 | idx++; |
788 | } | 788 | } |
789 | drv->interrupt(serio, 0, 0, NULL); | 789 | drv->interrupt(serio, 0, 0); |
790 | drv->interrupt(serio, HIL_ERR_INT >> 16, 0, NULL); | 790 | drv->interrupt(serio, HIL_ERR_INT >> 16, 0); |
791 | drv->interrupt(serio, HIL_PKT_CMD >> 8, 0, NULL); | 791 | drv->interrupt(serio, HIL_PKT_CMD >> 8, 0); |
792 | drv->interrupt(serio, *idx, 0, NULL); | 792 | drv->interrupt(serio, *idx, 0); |
793 | 793 | ||
794 | mlc->serio_oidx[map->didx] = 0; | 794 | mlc->serio_oidx[map->didx] = 0; |
795 | mlc->serio_opacket[map->didx] = 0; | 795 | mlc->serio_opacket[map->didx] = 0; |
diff --git a/drivers/input/serio/hp_sdc.c b/drivers/input/serio/hp_sdc.c index a10348bb25e9..ba7b920347e3 100644 --- a/drivers/input/serio/hp_sdc.c +++ b/drivers/input/serio/hp_sdc.c | |||
@@ -202,7 +202,7 @@ static void hp_sdc_take (int irq, void *dev_id, uint8_t status, uint8_t data) { | |||
202 | } | 202 | } |
203 | } | 203 | } |
204 | 204 | ||
205 | static irqreturn_t hp_sdc_isr(int irq, void *dev_id, struct pt_regs * regs) { | 205 | static irqreturn_t hp_sdc_isr(int irq, void *dev_id) { |
206 | uint8_t status, data; | 206 | uint8_t status, data; |
207 | 207 | ||
208 | status = hp_sdc_status_in8(); | 208 | status = hp_sdc_status_in8(); |
@@ -253,7 +253,7 @@ static irqreturn_t hp_sdc_isr(int irq, void *dev_id, struct pt_regs * regs) { | |||
253 | } | 253 | } |
254 | 254 | ||
255 | 255 | ||
256 | static irqreturn_t hp_sdc_nmisr(int irq, void *dev_id, struct pt_regs * regs) { | 256 | static irqreturn_t hp_sdc_nmisr(int irq, void *dev_id) { |
257 | int status; | 257 | int status; |
258 | 258 | ||
259 | status = hp_sdc_status_in8(); | 259 | status = hp_sdc_status_in8(); |
diff --git a/drivers/input/serio/i8042.c b/drivers/input/serio/i8042.c index 1bb0c76a9259..09b06e605b50 100644 --- a/drivers/input/serio/i8042.c +++ b/drivers/input/serio/i8042.c | |||
@@ -108,7 +108,7 @@ static unsigned char i8042_kbd_irq_registered; | |||
108 | static unsigned char i8042_aux_irq_registered; | 108 | static unsigned char i8042_aux_irq_registered; |
109 | static struct platform_device *i8042_platform_device; | 109 | static struct platform_device *i8042_platform_device; |
110 | 110 | ||
111 | static irqreturn_t i8042_interrupt(int irq, void *dev_id, struct pt_regs *regs); | 111 | static irqreturn_t i8042_interrupt(int irq, void *dev_id); |
112 | 112 | ||
113 | /* | 113 | /* |
114 | * The i8042_wait_read() and i8042_wait_write functions wait for the i8042 to | 114 | * The i8042_wait_read() and i8042_wait_write functions wait for the i8042 to |
@@ -271,7 +271,7 @@ static int i8042_aux_write(struct serio *serio, unsigned char c) | |||
271 | * characters later. | 271 | * characters later. |
272 | */ | 272 | */ |
273 | 273 | ||
274 | i8042_interrupt(0, NULL, NULL); | 274 | i8042_interrupt(0, NULL); |
275 | return retval; | 275 | return retval; |
276 | } | 276 | } |
277 | 277 | ||
@@ -309,7 +309,7 @@ static void i8042_stop(struct serio *serio) | |||
309 | * to the upper layers. | 309 | * to the upper layers. |
310 | */ | 310 | */ |
311 | 311 | ||
312 | static irqreturn_t i8042_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 312 | static irqreturn_t i8042_interrupt(int irq, void *dev_id) |
313 | { | 313 | { |
314 | struct i8042_port *port; | 314 | struct i8042_port *port; |
315 | unsigned long flags; | 315 | unsigned long flags; |
@@ -379,7 +379,7 @@ static irqreturn_t i8042_interrupt(int irq, void *dev_id, struct pt_regs *regs) | |||
379 | dfl & SERIO_TIMEOUT ? ", timeout" : ""); | 379 | dfl & SERIO_TIMEOUT ? ", timeout" : ""); |
380 | 380 | ||
381 | if (likely(port->exists)) | 381 | if (likely(port->exists)) |
382 | serio_interrupt(port->serio, data, dfl, regs); | 382 | serio_interrupt(port->serio, data, dfl); |
383 | 383 | ||
384 | ret = 1; | 384 | ret = 1; |
385 | out: | 385 | out: |
@@ -519,7 +519,7 @@ static int __devinit i8042_check_mux(void) | |||
519 | static struct completion i8042_aux_irq_delivered __devinitdata; | 519 | static struct completion i8042_aux_irq_delivered __devinitdata; |
520 | static int i8042_irq_being_tested __devinitdata; | 520 | static int i8042_irq_being_tested __devinitdata; |
521 | 521 | ||
522 | static irqreturn_t __devinit i8042_aux_test_irq(int irq, void *dev_id, struct pt_regs *regs) | 522 | static irqreturn_t __devinit i8042_aux_test_irq(int irq, void *dev_id) |
523 | { | 523 | { |
524 | unsigned long flags; | 524 | unsigned long flags; |
525 | unsigned char str, data; | 525 | unsigned char str, data; |
@@ -905,7 +905,7 @@ static int i8042_resume(struct platform_device *dev) | |||
905 | if (i8042_ports[I8042_KBD_PORT_NO].serio) | 905 | if (i8042_ports[I8042_KBD_PORT_NO].serio) |
906 | i8042_enable_kbd_port(); | 906 | i8042_enable_kbd_port(); |
907 | 907 | ||
908 | i8042_interrupt(0, NULL, NULL); | 908 | i8042_interrupt(0, NULL); |
909 | 909 | ||
910 | return 0; | 910 | return 0; |
911 | } | 911 | } |
diff --git a/drivers/input/serio/maceps2.c b/drivers/input/serio/maceps2.c index f08a5d0cd5fa..558200e96d0f 100644 --- a/drivers/input/serio/maceps2.c +++ b/drivers/input/serio/maceps2.c | |||
@@ -72,8 +72,7 @@ static int maceps2_write(struct serio *dev, unsigned char val) | |||
72 | return -1; | 72 | return -1; |
73 | } | 73 | } |
74 | 74 | ||
75 | static irqreturn_t maceps2_interrupt(int irq, void *dev_id, | 75 | static irqreturn_t maceps2_interrupt(int irq, void *dev_id) |
76 | struct pt_regs *regs) | ||
77 | { | 76 | { |
78 | struct serio *dev = dev_id; | 77 | struct serio *dev = dev_id; |
79 | struct mace_ps2port *port = ((struct maceps2_data *)dev->port_data)->port; | 78 | struct mace_ps2port *port = ((struct maceps2_data *)dev->port_data)->port; |
@@ -81,7 +80,7 @@ static irqreturn_t maceps2_interrupt(int irq, void *dev_id, | |||
81 | 80 | ||
82 | if (port->status & PS2_STATUS_RX_FULL) { | 81 | if (port->status & PS2_STATUS_RX_FULL) { |
83 | byte = port->rx; | 82 | byte = port->rx; |
84 | serio_interrupt(dev, byte & 0xff, 0, regs); | 83 | serio_interrupt(dev, byte & 0xff, 0); |
85 | } | 84 | } |
86 | 85 | ||
87 | return IRQ_HANDLED; | 86 | return IRQ_HANDLED; |
diff --git a/drivers/input/serio/parkbd.c b/drivers/input/serio/parkbd.c index a5c1fb3a4a51..688610e86a3e 100644 --- a/drivers/input/serio/parkbd.c +++ b/drivers/input/serio/parkbd.c | |||
@@ -102,7 +102,7 @@ static int parkbd_write(struct serio *port, unsigned char c) | |||
102 | return 0; | 102 | return 0; |
103 | } | 103 | } |
104 | 104 | ||
105 | static void parkbd_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 105 | static void parkbd_interrupt(int irq, void *dev_id) |
106 | { | 106 | { |
107 | 107 | ||
108 | if (parkbd_writing) { | 108 | if (parkbd_writing) { |
@@ -134,7 +134,7 @@ static void parkbd_interrupt(int irq, void *dev_id, struct pt_regs *regs) | |||
134 | parkbd_buffer |= (parkbd_readlines() >> 1) << parkbd_counter++; | 134 | parkbd_buffer |= (parkbd_readlines() >> 1) << parkbd_counter++; |
135 | 135 | ||
136 | if (parkbd_counter == parkbd_mode + 10) | 136 | if (parkbd_counter == parkbd_mode + 10) |
137 | serio_interrupt(parkbd_port, (parkbd_buffer >> (2 - parkbd_mode)) & 0xff, 0, regs); | 137 | serio_interrupt(parkbd_port, (parkbd_buffer >> (2 - parkbd_mode)) & 0xff, 0); |
138 | } | 138 | } |
139 | 139 | ||
140 | parkbd_last = jiffies; | 140 | parkbd_last = jiffies; |
diff --git a/drivers/input/serio/pcips2.c b/drivers/input/serio/pcips2.c index fb727c665253..ea5e3c6ddb62 100644 --- a/drivers/input/serio/pcips2.c +++ b/drivers/input/serio/pcips2.c | |||
@@ -58,7 +58,7 @@ static int pcips2_write(struct serio *io, unsigned char val) | |||
58 | return 0; | 58 | return 0; |
59 | } | 59 | } |
60 | 60 | ||
61 | static irqreturn_t pcips2_interrupt(int irq, void *devid, struct pt_regs *regs) | 61 | static irqreturn_t pcips2_interrupt(int irq, void *devid) |
62 | { | 62 | { |
63 | struct pcips2_data *ps2if = devid; | 63 | struct pcips2_data *ps2if = devid; |
64 | unsigned char status, scancode; | 64 | unsigned char status, scancode; |
@@ -80,7 +80,7 @@ static irqreturn_t pcips2_interrupt(int irq, void *devid, struct pt_regs *regs) | |||
80 | if (hweight8(scancode) & 1) | 80 | if (hweight8(scancode) & 1) |
81 | flag ^= SERIO_PARITY; | 81 | flag ^= SERIO_PARITY; |
82 | 82 | ||
83 | serio_interrupt(ps2if->io, scancode, flag, regs); | 83 | serio_interrupt(ps2if->io, scancode, flag); |
84 | } while (1); | 84 | } while (1); |
85 | return IRQ_RETVAL(handled); | 85 | return IRQ_RETVAL(handled); |
86 | } | 86 | } |
diff --git a/drivers/input/serio/q40kbd.c b/drivers/input/serio/q40kbd.c index d3827c5fe119..cb89aff2e160 100644 --- a/drivers/input/serio/q40kbd.c +++ b/drivers/input/serio/q40kbd.c | |||
@@ -53,14 +53,14 @@ DEFINE_SPINLOCK(q40kbd_lock); | |||
53 | static struct serio *q40kbd_port; | 53 | static struct serio *q40kbd_port; |
54 | static struct platform_device *q40kbd_device; | 54 | static struct platform_device *q40kbd_device; |
55 | 55 | ||
56 | static irqreturn_t q40kbd_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 56 | static irqreturn_t q40kbd_interrupt(int irq, void *dev_id) |
57 | { | 57 | { |
58 | unsigned long flags; | 58 | unsigned long flags; |
59 | 59 | ||
60 | spin_lock_irqsave(&q40kbd_lock, flags); | 60 | spin_lock_irqsave(&q40kbd_lock, flags); |
61 | 61 | ||
62 | if (Q40_IRQ_KEYB_MASK & master_inb(INTERRUPT_REG)) | 62 | if (Q40_IRQ_KEYB_MASK & master_inb(INTERRUPT_REG)) |
63 | serio_interrupt(q40kbd_port, master_inb(KEYCODE_REG), 0, regs); | 63 | serio_interrupt(q40kbd_port, master_inb(KEYCODE_REG), 0); |
64 | 64 | ||
65 | master_outb(-1, KEYBOARD_UNLOCK_REG); | 65 | master_outb(-1, KEYBOARD_UNLOCK_REG); |
66 | 66 | ||
diff --git a/drivers/input/serio/rpckbd.c b/drivers/input/serio/rpckbd.c index 513d37fc1acf..49f84315cb32 100644 --- a/drivers/input/serio/rpckbd.c +++ b/drivers/input/serio/rpckbd.c | |||
@@ -56,7 +56,7 @@ static int rpckbd_write(struct serio *port, unsigned char val) | |||
56 | return 0; | 56 | return 0; |
57 | } | 57 | } |
58 | 58 | ||
59 | static irqreturn_t rpckbd_rx(int irq, void *dev_id, struct pt_regs *regs) | 59 | static irqreturn_t rpckbd_rx(int irq, void *dev_id) |
60 | { | 60 | { |
61 | struct serio *port = dev_id; | 61 | struct serio *port = dev_id; |
62 | unsigned int byte; | 62 | unsigned int byte; |
@@ -65,13 +65,13 @@ static irqreturn_t rpckbd_rx(int irq, void *dev_id, struct pt_regs *regs) | |||
65 | while (iomd_readb(IOMD_KCTRL) & (1 << 5)) { | 65 | while (iomd_readb(IOMD_KCTRL) & (1 << 5)) { |
66 | byte = iomd_readb(IOMD_KARTRX); | 66 | byte = iomd_readb(IOMD_KARTRX); |
67 | 67 | ||
68 | serio_interrupt(port, byte, 0, regs); | 68 | serio_interrupt(port, byte, 0); |
69 | handled = IRQ_HANDLED; | 69 | handled = IRQ_HANDLED; |
70 | } | 70 | } |
71 | return handled; | 71 | return handled; |
72 | } | 72 | } |
73 | 73 | ||
74 | static irqreturn_t rpckbd_tx(int irq, void *dev_id, struct pt_regs *regs) | 74 | static irqreturn_t rpckbd_tx(int irq, void *dev_id) |
75 | { | 75 | { |
76 | return IRQ_HANDLED; | 76 | return IRQ_HANDLED; |
77 | } | 77 | } |
diff --git a/drivers/input/serio/sa1111ps2.c b/drivers/input/serio/sa1111ps2.c index ebd9976fc811..559508795af1 100644 --- a/drivers/input/serio/sa1111ps2.c +++ b/drivers/input/serio/sa1111ps2.c | |||
@@ -40,7 +40,7 @@ struct ps2if { | |||
40 | * at the most one, but we loop for safety. If there was a | 40 | * at the most one, but we loop for safety. If there was a |
41 | * framing error, we have to manually clear the status. | 41 | * framing error, we have to manually clear the status. |
42 | */ | 42 | */ |
43 | static irqreturn_t ps2_rxint(int irq, void *dev_id, struct pt_regs *regs) | 43 | static irqreturn_t ps2_rxint(int irq, void *dev_id) |
44 | { | 44 | { |
45 | struct ps2if *ps2if = dev_id; | 45 | struct ps2if *ps2if = dev_id; |
46 | unsigned int scancode, flag, status; | 46 | unsigned int scancode, flag, status; |
@@ -58,7 +58,7 @@ static irqreturn_t ps2_rxint(int irq, void *dev_id, struct pt_regs *regs) | |||
58 | if (hweight8(scancode) & 1) | 58 | if (hweight8(scancode) & 1) |
59 | flag ^= SERIO_PARITY; | 59 | flag ^= SERIO_PARITY; |
60 | 60 | ||
61 | serio_interrupt(ps2if->io, scancode, flag, regs); | 61 | serio_interrupt(ps2if->io, scancode, flag); |
62 | 62 | ||
63 | status = sa1111_readl(ps2if->base + SA1111_PS2STAT); | 63 | status = sa1111_readl(ps2if->base + SA1111_PS2STAT); |
64 | } | 64 | } |
@@ -69,7 +69,7 @@ static irqreturn_t ps2_rxint(int irq, void *dev_id, struct pt_regs *regs) | |||
69 | /* | 69 | /* |
70 | * Completion of ps2 write | 70 | * Completion of ps2 write |
71 | */ | 71 | */ |
72 | static irqreturn_t ps2_txint(int irq, void *dev_id, struct pt_regs *regs) | 72 | static irqreturn_t ps2_txint(int irq, void *dev_id) |
73 | { | 73 | { |
74 | struct ps2if *ps2if = dev_id; | 74 | struct ps2if *ps2if = dev_id; |
75 | unsigned int status; | 75 | unsigned int status; |
diff --git a/drivers/input/serio/serio.c b/drivers/input/serio/serio.c index 3e76ad71c9a0..960fae3c3cea 100644 --- a/drivers/input/serio/serio.c +++ b/drivers/input/serio/serio.c | |||
@@ -911,7 +911,7 @@ void serio_close(struct serio *serio) | |||
911 | } | 911 | } |
912 | 912 | ||
913 | irqreturn_t serio_interrupt(struct serio *serio, | 913 | irqreturn_t serio_interrupt(struct serio *serio, |
914 | unsigned char data, unsigned int dfl, struct pt_regs *regs) | 914 | unsigned char data, unsigned int dfl) |
915 | { | 915 | { |
916 | unsigned long flags; | 916 | unsigned long flags; |
917 | irqreturn_t ret = IRQ_NONE; | 917 | irqreturn_t ret = IRQ_NONE; |
@@ -919,7 +919,7 @@ irqreturn_t serio_interrupt(struct serio *serio, | |||
919 | spin_lock_irqsave(&serio->lock, flags); | 919 | spin_lock_irqsave(&serio->lock, flags); |
920 | 920 | ||
921 | if (likely(serio->drv)) { | 921 | if (likely(serio->drv)) { |
922 | ret = serio->drv->interrupt(serio, data, dfl, regs); | 922 | ret = serio->drv->interrupt(serio, data, dfl); |
923 | } else if (!dfl && serio->registered) { | 923 | } else if (!dfl && serio->registered) { |
924 | serio_rescan(serio); | 924 | serio_rescan(serio); |
925 | ret = IRQ_HANDLED; | 925 | ret = IRQ_HANDLED; |
diff --git a/drivers/input/serio/serio_raw.c b/drivers/input/serio/serio_raw.c index 71a8eea816cb..ba2a2035d648 100644 --- a/drivers/input/serio/serio_raw.c +++ b/drivers/input/serio/serio_raw.c | |||
@@ -250,7 +250,7 @@ static struct file_operations serio_raw_fops = { | |||
250 | *********************************************************************/ | 250 | *********************************************************************/ |
251 | 251 | ||
252 | static irqreturn_t serio_raw_interrupt(struct serio *serio, unsigned char data, | 252 | static irqreturn_t serio_raw_interrupt(struct serio *serio, unsigned char data, |
253 | unsigned int dfl, struct pt_regs *regs) | 253 | unsigned int dfl) |
254 | { | 254 | { |
255 | struct serio_raw *serio_raw = serio_get_drvdata(serio); | 255 | struct serio_raw *serio_raw = serio_get_drvdata(serio); |
256 | struct serio_raw_list *list; | 256 | struct serio_raw_list *list; |
diff --git a/drivers/input/serio/serport.c b/drivers/input/serio/serport.c index 54a680cc704d..e1a3a79ab3f9 100644 --- a/drivers/input/serio/serport.c +++ b/drivers/input/serio/serport.c | |||
@@ -117,9 +117,6 @@ static void serport_ldisc_close(struct tty_struct *tty) | |||
117 | * serport_ldisc_receive() is called by the low level tty driver when characters | 117 | * serport_ldisc_receive() is called by the low level tty driver when characters |
118 | * are ready for us. We forward the characters, one by one to the 'interrupt' | 118 | * are ready for us. We forward the characters, one by one to the 'interrupt' |
119 | * routine. | 119 | * routine. |
120 | * | ||
121 | * FIXME: We should get pt_regs from the tty layer and forward them to | ||
122 | * serio_interrupt here. | ||
123 | */ | 120 | */ |
124 | 121 | ||
125 | static void serport_ldisc_receive(struct tty_struct *tty, const unsigned char *cp, char *fp, int count) | 122 | static void serport_ldisc_receive(struct tty_struct *tty, const unsigned char *cp, char *fp, int count) |
@@ -134,7 +131,7 @@ static void serport_ldisc_receive(struct tty_struct *tty, const unsigned char *c | |||
134 | goto out; | 131 | goto out; |
135 | 132 | ||
136 | for (i = 0; i < count; i++) | 133 | for (i = 0; i < count; i++) |
137 | serio_interrupt(serport->serio, cp[i], 0, NULL); | 134 | serio_interrupt(serport->serio, cp[i], 0); |
138 | 135 | ||
139 | out: | 136 | out: |
140 | spin_unlock_irqrestore(&serport->lock, flags); | 137 | spin_unlock_irqrestore(&serport->lock, flags); |
diff --git a/drivers/input/touchscreen/ads7846.c b/drivers/input/touchscreen/ads7846.c index 66e411badf70..f56d6a0f0624 100644 --- a/drivers/input/touchscreen/ads7846.c +++ b/drivers/input/touchscreen/ads7846.c | |||
@@ -487,7 +487,7 @@ static void ads7846_timer(unsigned long handle) | |||
487 | spin_unlock_irq(&ts->lock); | 487 | spin_unlock_irq(&ts->lock); |
488 | } | 488 | } |
489 | 489 | ||
490 | static irqreturn_t ads7846_irq(int irq, void *handle, struct pt_regs *regs) | 490 | static irqreturn_t ads7846_irq(int irq, void *handle) |
491 | { | 491 | { |
492 | struct ads7846 *ts = handle; | 492 | struct ads7846 *ts = handle; |
493 | unsigned long flags; | 493 | unsigned long flags; |
diff --git a/drivers/input/touchscreen/corgi_ts.c b/drivers/input/touchscreen/corgi_ts.c index 9b66271d3ba8..ca79b2246195 100644 --- a/drivers/input/touchscreen/corgi_ts.c +++ b/drivers/input/touchscreen/corgi_ts.c | |||
@@ -173,7 +173,7 @@ static int read_xydata(struct corgi_ts *corgi_ts) | |||
173 | return 1; | 173 | return 1; |
174 | } | 174 | } |
175 | 175 | ||
176 | static void new_data(struct corgi_ts *corgi_ts, struct pt_regs *regs) | 176 | static void new_data(struct corgi_ts *corgi_ts) |
177 | { | 177 | { |
178 | if (corgi_ts->power_mode != PWR_MODE_ACTIVE) | 178 | if (corgi_ts->power_mode != PWR_MODE_ACTIVE) |
179 | return; | 179 | return; |
@@ -181,7 +181,6 @@ static void new_data(struct corgi_ts *corgi_ts, struct pt_regs *regs) | |||
181 | if (!corgi_ts->tc.pressure && corgi_ts->pendown == 0) | 181 | if (!corgi_ts->tc.pressure && corgi_ts->pendown == 0) |
182 | return; | 182 | return; |
183 | 183 | ||
184 | input_regs(corgi_ts->input, regs); | ||
185 | input_report_abs(corgi_ts->input, ABS_X, corgi_ts->tc.x); | 184 | input_report_abs(corgi_ts->input, ABS_X, corgi_ts->tc.x); |
186 | input_report_abs(corgi_ts->input, ABS_Y, corgi_ts->tc.y); | 185 | input_report_abs(corgi_ts->input, ABS_Y, corgi_ts->tc.y); |
187 | input_report_abs(corgi_ts->input, ABS_PRESSURE, corgi_ts->tc.pressure); | 186 | input_report_abs(corgi_ts->input, ABS_PRESSURE, corgi_ts->tc.pressure); |
@@ -189,14 +188,14 @@ static void new_data(struct corgi_ts *corgi_ts, struct pt_regs *regs) | |||
189 | input_sync(corgi_ts->input); | 188 | input_sync(corgi_ts->input); |
190 | } | 189 | } |
191 | 190 | ||
192 | static void ts_interrupt_main(struct corgi_ts *corgi_ts, int isTimer, struct pt_regs *regs) | 191 | static void ts_interrupt_main(struct corgi_ts *corgi_ts, int isTimer) |
193 | { | 192 | { |
194 | if ((GPLR(IRQ_TO_GPIO(corgi_ts->irq_gpio)) & GPIO_bit(IRQ_TO_GPIO(corgi_ts->irq_gpio))) == 0) { | 193 | if ((GPLR(IRQ_TO_GPIO(corgi_ts->irq_gpio)) & GPIO_bit(IRQ_TO_GPIO(corgi_ts->irq_gpio))) == 0) { |
195 | /* Disable Interrupt */ | 194 | /* Disable Interrupt */ |
196 | set_irq_type(corgi_ts->irq_gpio, IRQT_NOEDGE); | 195 | set_irq_type(corgi_ts->irq_gpio, IRQT_NOEDGE); |
197 | if (read_xydata(corgi_ts)) { | 196 | if (read_xydata(corgi_ts)) { |
198 | corgi_ts->pendown = 1; | 197 | corgi_ts->pendown = 1; |
199 | new_data(corgi_ts, regs); | 198 | new_data(corgi_ts); |
200 | } | 199 | } |
201 | mod_timer(&corgi_ts->timer, jiffies + HZ / 100); | 200 | mod_timer(&corgi_ts->timer, jiffies + HZ / 100); |
202 | } else { | 201 | } else { |
@@ -208,7 +207,7 @@ static void ts_interrupt_main(struct corgi_ts *corgi_ts, int isTimer, struct pt_ | |||
208 | 207 | ||
209 | if (corgi_ts->pendown) { | 208 | if (corgi_ts->pendown) { |
210 | corgi_ts->tc.pressure = 0; | 209 | corgi_ts->tc.pressure = 0; |
211 | new_data(corgi_ts, regs); | 210 | new_data(corgi_ts); |
212 | } | 211 | } |
213 | 212 | ||
214 | /* Enable Falling Edge */ | 213 | /* Enable Falling Edge */ |
@@ -223,10 +222,10 @@ static void corgi_ts_timer(unsigned long data) | |||
223 | ts_interrupt_main(corgits_data, 1, NULL); | 222 | ts_interrupt_main(corgits_data, 1, NULL); |
224 | } | 223 | } |
225 | 224 | ||
226 | static irqreturn_t ts_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 225 | static irqreturn_t ts_interrupt(int irq, void *dev_id) |
227 | { | 226 | { |
228 | struct corgi_ts *corgits_data = dev_id; | 227 | struct corgi_ts *corgits_data = dev_id; |
229 | ts_interrupt_main(corgits_data, 0, regs); | 228 | ts_interrupt_main(corgits_data, 0); |
230 | return IRQ_HANDLED; | 229 | return IRQ_HANDLED; |
231 | } | 230 | } |
232 | 231 | ||
diff --git a/drivers/input/touchscreen/elo.c b/drivers/input/touchscreen/elo.c index ab565335ee44..913e1b73bb0e 100644 --- a/drivers/input/touchscreen/elo.c +++ b/drivers/input/touchscreen/elo.c | |||
@@ -67,7 +67,7 @@ struct elo { | |||
67 | char phys[32]; | 67 | char phys[32]; |
68 | }; | 68 | }; |
69 | 69 | ||
70 | static void elo_process_data_10(struct elo *elo, unsigned char data, struct pt_regs *regs) | 70 | static void elo_process_data_10(struct elo *elo, unsigned char data) |
71 | { | 71 | { |
72 | struct input_dev *dev = elo->dev; | 72 | struct input_dev *dev = elo->dev; |
73 | 73 | ||
@@ -95,7 +95,6 @@ static void elo_process_data_10(struct elo *elo, unsigned char data, struct pt_r | |||
95 | break; | 95 | break; |
96 | } | 96 | } |
97 | if (likely(elo->data[1] == ELO10_TOUCH_PACKET)) { | 97 | if (likely(elo->data[1] == ELO10_TOUCH_PACKET)) { |
98 | input_regs(dev, regs); | ||
99 | input_report_abs(dev, ABS_X, (elo->data[4] << 8) | elo->data[3]); | 98 | input_report_abs(dev, ABS_X, (elo->data[4] << 8) | elo->data[3]); |
100 | input_report_abs(dev, ABS_Y, (elo->data[6] << 8) | elo->data[5]); | 99 | input_report_abs(dev, ABS_Y, (elo->data[6] << 8) | elo->data[5]); |
101 | if (elo->data[2] & ELO10_PRESSURE) | 100 | if (elo->data[2] & ELO10_PRESSURE) |
@@ -116,7 +115,7 @@ static void elo_process_data_10(struct elo *elo, unsigned char data, struct pt_r | |||
116 | elo->csum += data; | 115 | elo->csum += data; |
117 | } | 116 | } |
118 | 117 | ||
119 | static void elo_process_data_6(struct elo *elo, unsigned char data, struct pt_regs *regs) | 118 | static void elo_process_data_6(struct elo *elo, unsigned char data) |
120 | { | 119 | { |
121 | struct input_dev *dev = elo->dev; | 120 | struct input_dev *dev = elo->dev; |
122 | 121 | ||
@@ -134,7 +133,6 @@ static void elo_process_data_6(struct elo *elo, unsigned char data, struct pt_re | |||
134 | break; | 133 | break; |
135 | } | 134 | } |
136 | 135 | ||
137 | input_regs(dev, regs); | ||
138 | input_report_abs(dev, ABS_X, ((elo->data[0] & 0x3f) << 6) | (elo->data[1] & 0x3f)); | 136 | input_report_abs(dev, ABS_X, ((elo->data[0] & 0x3f) << 6) | (elo->data[1] & 0x3f)); |
139 | input_report_abs(dev, ABS_Y, ((elo->data[2] & 0x3f) << 6) | (elo->data[3] & 0x3f)); | 137 | input_report_abs(dev, ABS_Y, ((elo->data[2] & 0x3f) << 6) | (elo->data[3] & 0x3f)); |
140 | 138 | ||
@@ -164,7 +162,7 @@ static void elo_process_data_6(struct elo *elo, unsigned char data, struct pt_re | |||
164 | } | 162 | } |
165 | } | 163 | } |
166 | 164 | ||
167 | static void elo_process_data_3(struct elo *elo, unsigned char data, struct pt_regs *regs) | 165 | static void elo_process_data_3(struct elo *elo, unsigned char data) |
168 | { | 166 | { |
169 | struct input_dev *dev = elo->dev; | 167 | struct input_dev *dev = elo->dev; |
170 | 168 | ||
@@ -177,7 +175,6 @@ static void elo_process_data_3(struct elo *elo, unsigned char data, struct pt_re | |||
177 | elo->idx = 0; | 175 | elo->idx = 0; |
178 | break; | 176 | break; |
179 | case 2: | 177 | case 2: |
180 | input_regs(dev, regs); | ||
181 | input_report_key(dev, BTN_TOUCH, !(elo->data[1] & 0x80)); | 178 | input_report_key(dev, BTN_TOUCH, !(elo->data[1] & 0x80)); |
182 | input_report_abs(dev, ABS_X, elo->data[1]); | 179 | input_report_abs(dev, ABS_X, elo->data[1]); |
183 | input_report_abs(dev, ABS_Y, elo->data[2]); | 180 | input_report_abs(dev, ABS_Y, elo->data[2]); |
@@ -188,22 +185,22 @@ static void elo_process_data_3(struct elo *elo, unsigned char data, struct pt_re | |||
188 | } | 185 | } |
189 | 186 | ||
190 | static irqreturn_t elo_interrupt(struct serio *serio, | 187 | static irqreturn_t elo_interrupt(struct serio *serio, |
191 | unsigned char data, unsigned int flags, struct pt_regs *regs) | 188 | unsigned char data, unsigned int flags) |
192 | { | 189 | { |
193 | struct elo *elo = serio_get_drvdata(serio); | 190 | struct elo *elo = serio_get_drvdata(serio); |
194 | 191 | ||
195 | switch(elo->id) { | 192 | switch(elo->id) { |
196 | case 0: | 193 | case 0: |
197 | elo_process_data_10(elo, data, regs); | 194 | elo_process_data_10(elo, data); |
198 | break; | 195 | break; |
199 | 196 | ||
200 | case 1: | 197 | case 1: |
201 | case 2: | 198 | case 2: |
202 | elo_process_data_6(elo, data, regs); | 199 | elo_process_data_6(elo, data); |
203 | break; | 200 | break; |
204 | 201 | ||
205 | case 3: | 202 | case 3: |
206 | elo_process_data_3(elo, data, regs); | 203 | elo_process_data_3(elo, data); |
207 | break; | 204 | break; |
208 | } | 205 | } |
209 | 206 | ||
diff --git a/drivers/input/touchscreen/gunze.c b/drivers/input/touchscreen/gunze.c index b769b21973b7..817c2198933d 100644 --- a/drivers/input/touchscreen/gunze.c +++ b/drivers/input/touchscreen/gunze.c | |||
@@ -60,7 +60,7 @@ struct gunze { | |||
60 | char phys[32]; | 60 | char phys[32]; |
61 | }; | 61 | }; |
62 | 62 | ||
63 | static void gunze_process_packet(struct gunze* gunze, struct pt_regs *regs) | 63 | static void gunze_process_packet(struct gunze* gunze) |
64 | { | 64 | { |
65 | struct input_dev *dev = gunze->dev; | 65 | struct input_dev *dev = gunze->dev; |
66 | 66 | ||
@@ -70,7 +70,6 @@ static void gunze_process_packet(struct gunze* gunze, struct pt_regs *regs) | |||
70 | return; | 70 | return; |
71 | } | 71 | } |
72 | 72 | ||
73 | input_regs(dev, regs); | ||
74 | input_report_abs(dev, ABS_X, simple_strtoul(gunze->data + 1, NULL, 10)); | 73 | input_report_abs(dev, ABS_X, simple_strtoul(gunze->data + 1, NULL, 10)); |
75 | input_report_abs(dev, ABS_Y, 1024 - simple_strtoul(gunze->data + 6, NULL, 10)); | 74 | input_report_abs(dev, ABS_Y, 1024 - simple_strtoul(gunze->data + 6, NULL, 10)); |
76 | input_report_key(dev, BTN_TOUCH, gunze->data[0] == 'T'); | 75 | input_report_key(dev, BTN_TOUCH, gunze->data[0] == 'T'); |
@@ -78,12 +77,12 @@ static void gunze_process_packet(struct gunze* gunze, struct pt_regs *regs) | |||
78 | } | 77 | } |
79 | 78 | ||
80 | static irqreturn_t gunze_interrupt(struct serio *serio, | 79 | static irqreturn_t gunze_interrupt(struct serio *serio, |
81 | unsigned char data, unsigned int flags, struct pt_regs *regs) | 80 | unsigned char data, unsigned int flags) |
82 | { | 81 | { |
83 | struct gunze* gunze = serio_get_drvdata(serio); | 82 | struct gunze* gunze = serio_get_drvdata(serio); |
84 | 83 | ||
85 | if (data == '\r') { | 84 | if (data == '\r') { |
86 | gunze_process_packet(gunze, regs); | 85 | gunze_process_packet(gunze); |
87 | gunze->idx = 0; | 86 | gunze->idx = 0; |
88 | } else { | 87 | } else { |
89 | if (gunze->idx < GUNZE_MAX_LENGTH) | 88 | if (gunze->idx < GUNZE_MAX_LENGTH) |
diff --git a/drivers/input/touchscreen/h3600_ts_input.c b/drivers/input/touchscreen/h3600_ts_input.c index e2b910018773..d9e61ee05ea9 100644 --- a/drivers/input/touchscreen/h3600_ts_input.c +++ b/drivers/input/touchscreen/h3600_ts_input.c | |||
@@ -106,19 +106,18 @@ struct h3600_dev { | |||
106 | char phys[32]; | 106 | char phys[32]; |
107 | }; | 107 | }; |
108 | 108 | ||
109 | static irqreturn_t action_button_handler(int irq, void *dev_id, struct pt_regs *regs) | 109 | static irqreturn_t action_button_handler(int irq, void *dev_id) |
110 | { | 110 | { |
111 | int down = (GPLR & GPIO_BITSY_ACTION_BUTTON) ? 0 : 1; | 111 | int down = (GPLR & GPIO_BITSY_ACTION_BUTTON) ? 0 : 1; |
112 | struct input_dev *dev = (struct input_dev *) dev_id; | 112 | struct input_dev *dev = (struct input_dev *) dev_id; |
113 | 113 | ||
114 | input_regs(dev, regs); | ||
115 | input_report_key(dev, KEY_ENTER, down); | 114 | input_report_key(dev, KEY_ENTER, down); |
116 | input_sync(dev); | 115 | input_sync(dev); |
117 | 116 | ||
118 | return IRQ_HANDLED; | 117 | return IRQ_HANDLED; |
119 | } | 118 | } |
120 | 119 | ||
121 | static irqreturn_t npower_button_handler(int irq, void *dev_id, struct pt_regs *regs) | 120 | static irqreturn_t npower_button_handler(int irq, void *dev_id) |
122 | { | 121 | { |
123 | int down = (GPLR & GPIO_BITSY_NPOWER_BUTTON) ? 0 : 1; | 122 | int down = (GPLR & GPIO_BITSY_NPOWER_BUTTON) ? 0 : 1; |
124 | struct input_dev *dev = (struct input_dev *) dev_id; | 123 | struct input_dev *dev = (struct input_dev *) dev_id; |
@@ -127,7 +126,6 @@ static irqreturn_t npower_button_handler(int irq, void *dev_id, struct pt_regs * | |||
127 | * This interrupt is only called when we release the key. So we have | 126 | * This interrupt is only called when we release the key. So we have |
128 | * to fake a key press. | 127 | * to fake a key press. |
129 | */ | 128 | */ |
130 | input_regs(dev, regs); | ||
131 | input_report_key(dev, KEY_SUSPEND, 1); | 129 | input_report_key(dev, KEY_SUSPEND, 1); |
132 | input_report_key(dev, KEY_SUSPEND, down); | 130 | input_report_key(dev, KEY_SUSPEND, down); |
133 | input_sync(dev); | 131 | input_sync(dev); |
@@ -165,14 +163,12 @@ unsigned int h3600_flite_power(struct input_dev *dev, enum flite_pwr pwr) | |||
165 | * packets. Some packets coming from serial are not touchscreen related. In | 163 | * packets. Some packets coming from serial are not touchscreen related. In |
166 | * this case we send them off to be processed elsewhere. | 164 | * this case we send them off to be processed elsewhere. |
167 | */ | 165 | */ |
168 | static void h3600ts_process_packet(struct h3600_dev *ts, struct pt_regs *regs) | 166 | static void h3600ts_process_packet(struct h3600_dev *ts) |
169 | { | 167 | { |
170 | struct input_dev *dev = ts->dev; | 168 | struct input_dev *dev = ts->dev; |
171 | static int touched = 0; | 169 | static int touched = 0; |
172 | int key, down = 0; | 170 | int key, down = 0; |
173 | 171 | ||
174 | input_regs(dev, regs); | ||
175 | |||
176 | switch (ts->event) { | 172 | switch (ts->event) { |
177 | /* | 173 | /* |
178 | Buttons - returned as a single byte | 174 | Buttons - returned as a single byte |
@@ -301,7 +297,7 @@ static int state; | |||
301 | #define STATE_EOF 3 /* state where we decode checksum or EOF */ | 297 | #define STATE_EOF 3 /* state where we decode checksum or EOF */ |
302 | 298 | ||
303 | static irqreturn_t h3600ts_interrupt(struct serio *serio, unsigned char data, | 299 | static irqreturn_t h3600ts_interrupt(struct serio *serio, unsigned char data, |
304 | unsigned int flags, struct pt_regs *regs) | 300 | unsigned int flags) |
305 | { | 301 | { |
306 | struct h3600_dev *ts = serio_get_drvdata(serio); | 302 | struct h3600_dev *ts = serio_get_drvdata(serio); |
307 | 303 | ||
@@ -333,7 +329,7 @@ static irqreturn_t h3600ts_interrupt(struct serio *serio, unsigned char data, | |||
333 | case STATE_EOF: | 329 | case STATE_EOF: |
334 | state = STATE_SOF; | 330 | state = STATE_SOF; |
335 | if (data == CHAR_EOF || data == ts->chksum) | 331 | if (data == CHAR_EOF || data == ts->chksum) |
336 | h3600ts_process_packet(ts, regs); | 332 | h3600ts_process_packet(ts); |
337 | break; | 333 | break; |
338 | default: | 334 | default: |
339 | printk("Error3\n"); | 335 | printk("Error3\n"); |
diff --git a/drivers/input/touchscreen/hp680_ts_input.c b/drivers/input/touchscreen/hp680_ts_input.c index ee6c2f40cdf6..e31c6c55b2e2 100644 --- a/drivers/input/touchscreen/hp680_ts_input.c +++ b/drivers/input/touchscreen/hp680_ts_input.c | |||
@@ -66,7 +66,7 @@ static void do_softint(void *data) | |||
66 | enable_irq(HP680_TS_IRQ); | 66 | enable_irq(HP680_TS_IRQ); |
67 | } | 67 | } |
68 | 68 | ||
69 | static irqreturn_t hp680_ts_interrupt(int irq, void *dev, struct pt_regs *regs) | 69 | static irqreturn_t hp680_ts_interrupt(int irq, void *dev) |
70 | { | 70 | { |
71 | disable_irq_nosync(irq); | 71 | disable_irq_nosync(irq); |
72 | schedule_delayed_work(&work, HZ / 20); | 72 | schedule_delayed_work(&work, HZ / 20); |
diff --git a/drivers/input/touchscreen/mk712.c b/drivers/input/touchscreen/mk712.c index 3226830eea08..4cbcaa6a71e5 100644 --- a/drivers/input/touchscreen/mk712.c +++ b/drivers/input/touchscreen/mk712.c | |||
@@ -80,7 +80,7 @@ MODULE_PARM_DESC(irq, "IRQ of MK712 touchscreen controller"); | |||
80 | static struct input_dev *mk712_dev; | 80 | static struct input_dev *mk712_dev; |
81 | static DEFINE_SPINLOCK(mk712_lock); | 81 | static DEFINE_SPINLOCK(mk712_lock); |
82 | 82 | ||
83 | static irqreturn_t mk712_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 83 | static irqreturn_t mk712_interrupt(int irq, void *dev_id) |
84 | { | 84 | { |
85 | unsigned char status; | 85 | unsigned char status; |
86 | static int debounce = 1; | 86 | static int debounce = 1; |
@@ -88,7 +88,6 @@ static irqreturn_t mk712_interrupt(int irq, void *dev_id, struct pt_regs *regs) | |||
88 | static unsigned short last_y; | 88 | static unsigned short last_y; |
89 | 89 | ||
90 | spin_lock(&mk712_lock); | 90 | spin_lock(&mk712_lock); |
91 | input_regs(mk712_dev, regs); | ||
92 | 91 | ||
93 | status = inb(mk712_io + MK712_STATUS); | 92 | status = inb(mk712_io + MK712_STATUS); |
94 | 93 | ||
diff --git a/drivers/input/touchscreen/mtouch.c b/drivers/input/touchscreen/mtouch.c index 8647a905df80..3b4c61664b63 100644 --- a/drivers/input/touchscreen/mtouch.c +++ b/drivers/input/touchscreen/mtouch.c | |||
@@ -63,12 +63,11 @@ struct mtouch { | |||
63 | char phys[32]; | 63 | char phys[32]; |
64 | }; | 64 | }; |
65 | 65 | ||
66 | static void mtouch_process_format_tablet(struct mtouch *mtouch, struct pt_regs *regs) | 66 | static void mtouch_process_format_tablet(struct mtouch *mtouch) |
67 | { | 67 | { |
68 | struct input_dev *dev = mtouch->dev; | 68 | struct input_dev *dev = mtouch->dev; |
69 | 69 | ||
70 | if (MTOUCH_FORMAT_TABLET_LENGTH == ++mtouch->idx) { | 70 | if (MTOUCH_FORMAT_TABLET_LENGTH == ++mtouch->idx) { |
71 | input_regs(dev, regs); | ||
72 | input_report_abs(dev, ABS_X, MTOUCH_GET_XC(mtouch->data)); | 71 | input_report_abs(dev, ABS_X, MTOUCH_GET_XC(mtouch->data)); |
73 | input_report_abs(dev, ABS_Y, MTOUCH_MAX_YC - MTOUCH_GET_YC(mtouch->data)); | 72 | input_report_abs(dev, ABS_Y, MTOUCH_MAX_YC - MTOUCH_GET_YC(mtouch->data)); |
74 | input_report_key(dev, BTN_TOUCH, MTOUCH_GET_TOUCHED(mtouch->data)); | 73 | input_report_key(dev, BTN_TOUCH, MTOUCH_GET_TOUCHED(mtouch->data)); |
@@ -78,7 +77,7 @@ static void mtouch_process_format_tablet(struct mtouch *mtouch, struct pt_regs * | |||
78 | } | 77 | } |
79 | } | 78 | } |
80 | 79 | ||
81 | static void mtouch_process_response(struct mtouch *mtouch, struct pt_regs *regs) | 80 | static void mtouch_process_response(struct mtouch *mtouch) |
82 | { | 81 | { |
83 | if (MTOUCH_RESPONSE_END_BYTE == mtouch->data[mtouch->idx++]) { | 82 | if (MTOUCH_RESPONSE_END_BYTE == mtouch->data[mtouch->idx++]) { |
84 | /* FIXME - process response */ | 83 | /* FIXME - process response */ |
@@ -90,16 +89,16 @@ static void mtouch_process_response(struct mtouch *mtouch, struct pt_regs *regs) | |||
90 | } | 89 | } |
91 | 90 | ||
92 | static irqreturn_t mtouch_interrupt(struct serio *serio, | 91 | static irqreturn_t mtouch_interrupt(struct serio *serio, |
93 | unsigned char data, unsigned int flags, struct pt_regs *regs) | 92 | unsigned char data, unsigned int flags) |
94 | { | 93 | { |
95 | struct mtouch* mtouch = serio_get_drvdata(serio); | 94 | struct mtouch* mtouch = serio_get_drvdata(serio); |
96 | 95 | ||
97 | mtouch->data[mtouch->idx] = data; | 96 | mtouch->data[mtouch->idx] = data; |
98 | 97 | ||
99 | if (MTOUCH_FORMAT_TABLET_STATUS_BIT & mtouch->data[0]) | 98 | if (MTOUCH_FORMAT_TABLET_STATUS_BIT & mtouch->data[0]) |
100 | mtouch_process_format_tablet(mtouch, regs); | 99 | mtouch_process_format_tablet(mtouch); |
101 | else if (MTOUCH_RESPONSE_BEGIN_BYTE == mtouch->data[0]) | 100 | else if (MTOUCH_RESPONSE_BEGIN_BYTE == mtouch->data[0]) |
102 | mtouch_process_response(mtouch, regs); | 101 | mtouch_process_response(mtouch); |
103 | else | 102 | else |
104 | printk(KERN_DEBUG "mtouch.c: unknown/unsynchronized data from device, byte %x\n",mtouch->data[0]); | 103 | printk(KERN_DEBUG "mtouch.c: unknown/unsynchronized data from device, byte %x\n",mtouch->data[0]); |
105 | 104 | ||
diff --git a/drivers/input/touchscreen/penmount.c b/drivers/input/touchscreen/penmount.c index f7370109d43e..6c7d0c2c76cc 100644 --- a/drivers/input/touchscreen/penmount.c +++ b/drivers/input/touchscreen/penmount.c | |||
@@ -46,7 +46,7 @@ struct pm { | |||
46 | }; | 46 | }; |
47 | 47 | ||
48 | static irqreturn_t pm_interrupt(struct serio *serio, | 48 | static irqreturn_t pm_interrupt(struct serio *serio, |
49 | unsigned char data, unsigned int flags, struct pt_regs *regs) | 49 | unsigned char data, unsigned int flags) |
50 | { | 50 | { |
51 | struct pm *pm = serio_get_drvdata(serio); | 51 | struct pm *pm = serio_get_drvdata(serio); |
52 | struct input_dev *dev = pm->dev; | 52 | struct input_dev *dev = pm->dev; |
@@ -55,7 +55,6 @@ static irqreturn_t pm_interrupt(struct serio *serio, | |||
55 | 55 | ||
56 | if (pm->data[0] & 0x80) { | 56 | if (pm->data[0] & 0x80) { |
57 | if (PM_MAX_LENGTH == ++pm->idx) { | 57 | if (PM_MAX_LENGTH == ++pm->idx) { |
58 | input_regs(dev, regs); | ||
59 | input_report_abs(dev, ABS_X, pm->data[2] * 128 + pm->data[1]); | 58 | input_report_abs(dev, ABS_X, pm->data[2] * 128 + pm->data[1]); |
60 | input_report_abs(dev, ABS_Y, pm->data[4] * 128 + pm->data[3]); | 59 | input_report_abs(dev, ABS_Y, pm->data[4] * 128 + pm->data[3]); |
61 | input_report_key(dev, BTN_TOUCH, !!(pm->data[0] & 0x40)); | 60 | input_report_key(dev, BTN_TOUCH, !!(pm->data[0] & 0x40)); |
diff --git a/drivers/input/touchscreen/touchright.c b/drivers/input/touchscreen/touchright.c index 1c89fa538651..c74f74e57af0 100644 --- a/drivers/input/touchscreen/touchright.c +++ b/drivers/input/touchscreen/touchright.c | |||
@@ -56,7 +56,7 @@ struct tr { | |||
56 | }; | 56 | }; |
57 | 57 | ||
58 | static irqreturn_t tr_interrupt(struct serio *serio, | 58 | static irqreturn_t tr_interrupt(struct serio *serio, |
59 | unsigned char data, unsigned int flags, struct pt_regs *regs) | 59 | unsigned char data, unsigned int flags) |
60 | { | 60 | { |
61 | struct tr *tr = serio_get_drvdata(serio); | 61 | struct tr *tr = serio_get_drvdata(serio); |
62 | struct input_dev *dev = tr->dev; | 62 | struct input_dev *dev = tr->dev; |
@@ -65,7 +65,6 @@ static irqreturn_t tr_interrupt(struct serio *serio, | |||
65 | 65 | ||
66 | if ((tr->data[0] & TR_FORMAT_STATUS_MASK) == TR_FORMAT_STATUS_BYTE) { | 66 | if ((tr->data[0] & TR_FORMAT_STATUS_MASK) == TR_FORMAT_STATUS_BYTE) { |
67 | if (++tr->idx == TR_LENGTH) { | 67 | if (++tr->idx == TR_LENGTH) { |
68 | input_regs(dev, regs); | ||
69 | input_report_abs(dev, ABS_X, | 68 | input_report_abs(dev, ABS_X, |
70 | (tr->data[1] << 5) | (tr->data[2] >> 1)); | 69 | (tr->data[1] << 5) | (tr->data[2] >> 1)); |
71 | input_report_abs(dev, ABS_Y, | 70 | input_report_abs(dev, ABS_Y, |
diff --git a/drivers/input/touchscreen/touchwin.c b/drivers/input/touchscreen/touchwin.c index a7b4c755958e..9911820fa2fe 100644 --- a/drivers/input/touchscreen/touchwin.c +++ b/drivers/input/touchscreen/touchwin.c | |||
@@ -60,7 +60,7 @@ struct tw { | |||
60 | }; | 60 | }; |
61 | 61 | ||
62 | static irqreturn_t tw_interrupt(struct serio *serio, | 62 | static irqreturn_t tw_interrupt(struct serio *serio, |
63 | unsigned char data, unsigned int flags, struct pt_regs *regs) | 63 | unsigned char data, unsigned int flags) |
64 | { | 64 | { |
65 | struct tw *tw = serio_get_drvdata(serio); | 65 | struct tw *tw = serio_get_drvdata(serio); |
66 | struct input_dev *dev = tw->dev; | 66 | struct input_dev *dev = tw->dev; |
@@ -70,7 +70,6 @@ static irqreturn_t tw_interrupt(struct serio *serio, | |||
70 | tw->data[tw->idx++] = data; | 70 | tw->data[tw->idx++] = data; |
71 | /* verify length and that the two Y's are the same */ | 71 | /* verify length and that the two Y's are the same */ |
72 | if (tw->idx == TW_LENGTH && tw->data[1] == tw->data[2]) { | 72 | if (tw->idx == TW_LENGTH && tw->data[1] == tw->data[2]) { |
73 | input_regs(dev, regs); | ||
74 | input_report_abs(dev, ABS_X, tw->data[0]); | 73 | input_report_abs(dev, ABS_X, tw->data[0]); |
75 | input_report_abs(dev, ABS_Y, tw->data[1]); | 74 | input_report_abs(dev, ABS_Y, tw->data[1]); |
76 | input_report_key(dev, BTN_TOUCH, 1); | 75 | input_report_key(dev, BTN_TOUCH, 1); |
diff --git a/drivers/isdn/act2000/act2000_isa.c b/drivers/isdn/act2000/act2000_isa.c index bc98d77c5ecd..3cac23739344 100644 --- a/drivers/isdn/act2000/act2000_isa.c +++ b/drivers/isdn/act2000/act2000_isa.c | |||
@@ -16,8 +16,6 @@ | |||
16 | #include "act2000_isa.h" | 16 | #include "act2000_isa.h" |
17 | #include "capi.h" | 17 | #include "capi.h" |
18 | 18 | ||
19 | static act2000_card *irq2card_map[16]; | ||
20 | |||
21 | /* | 19 | /* |
22 | * Reset Controller, then try to read the Card's signature. | 20 | * Reset Controller, then try to read the Card's signature. |
23 | + Return: | 21 | + Return: |
@@ -63,16 +61,11 @@ act2000_isa_detect(unsigned short portbase) | |||
63 | } | 61 | } |
64 | 62 | ||
65 | static irqreturn_t | 63 | static irqreturn_t |
66 | act2000_isa_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 64 | act2000_isa_interrupt(int irq, void *dev_id) |
67 | { | 65 | { |
68 | act2000_card *card = irq2card_map[irq]; | 66 | act2000_card *card = dev_id; |
69 | u_char istatus; | 67 | u_char istatus; |
70 | 68 | ||
71 | if (!card) { | ||
72 | printk(KERN_WARNING | ||
73 | "act2000: Spurious interrupt!\n"); | ||
74 | return IRQ_NONE; | ||
75 | } | ||
76 | istatus = (inb(ISA_PORT_ISR) & 0x07); | 69 | istatus = (inb(ISA_PORT_ISR) & 0x07); |
77 | if (istatus & ISA_ISR_OUT) { | 70 | if (istatus & ISA_ISR_OUT) { |
78 | /* RX fifo has data */ | 71 | /* RX fifo has data */ |
@@ -139,17 +132,15 @@ int | |||
139 | act2000_isa_config_irq(act2000_card * card, short irq) | 132 | act2000_isa_config_irq(act2000_card * card, short irq) |
140 | { | 133 | { |
141 | if (card->flags & ACT2000_FLAGS_IVALID) { | 134 | if (card->flags & ACT2000_FLAGS_IVALID) { |
142 | free_irq(card->irq, NULL); | 135 | free_irq(card->irq, card); |
143 | irq2card_map[card->irq] = NULL; | ||
144 | } | 136 | } |
145 | card->flags &= ~ACT2000_FLAGS_IVALID; | 137 | card->flags &= ~ACT2000_FLAGS_IVALID; |
146 | outb(ISA_COR_IRQOFF, ISA_PORT_COR); | 138 | outb(ISA_COR_IRQOFF, ISA_PORT_COR); |
147 | if (!irq) | 139 | if (!irq) |
148 | return 0; | 140 | return 0; |
149 | 141 | ||
150 | if (!request_irq(irq, &act2000_isa_interrupt, 0, card->regname, NULL)) { | 142 | if (!request_irq(irq, &act2000_isa_interrupt, 0, card->regname, card)) { |
151 | card->irq = irq; | 143 | card->irq = irq; |
152 | irq2card_map[card->irq] = card; | ||
153 | card->flags |= ACT2000_FLAGS_IVALID; | 144 | card->flags |= ACT2000_FLAGS_IVALID; |
154 | printk(KERN_WARNING | 145 | printk(KERN_WARNING |
155 | "act2000: Could not request irq %d\n",irq); | 146 | "act2000: Could not request irq %d\n",irq); |
@@ -188,10 +179,9 @@ act2000_isa_release(act2000_card * card) | |||
188 | unsigned long flags; | 179 | unsigned long flags; |
189 | 180 | ||
190 | spin_lock_irqsave(&card->lock, flags); | 181 | spin_lock_irqsave(&card->lock, flags); |
191 | if (card->flags & ACT2000_FLAGS_IVALID) { | 182 | if (card->flags & ACT2000_FLAGS_IVALID) |
192 | free_irq(card->irq, NULL); | 183 | free_irq(card->irq, card); |
193 | irq2card_map[card->irq] = NULL; | 184 | |
194 | } | ||
195 | card->flags &= ~ACT2000_FLAGS_IVALID; | 185 | card->flags &= ~ACT2000_FLAGS_IVALID; |
196 | if (card->flags & ACT2000_FLAGS_PVALID) | 186 | if (card->flags & ACT2000_FLAGS_PVALID) |
197 | release_region(card->port, ISA_REGION); | 187 | release_region(card->port, ISA_REGION); |
diff --git a/drivers/isdn/gigaset/bas-gigaset.c b/drivers/isdn/gigaset/bas-gigaset.c index 5cfbe6a38010..0c937325a1b3 100644 --- a/drivers/isdn/gigaset/bas-gigaset.c +++ b/drivers/isdn/gigaset/bas-gigaset.c | |||
@@ -454,7 +454,7 @@ inline static int update_basstate(struct bas_cardstate *ucs, | |||
454 | * urb USB request block | 454 | * urb USB request block |
455 | * urb->context = inbuf structure for controller state | 455 | * urb->context = inbuf structure for controller state |
456 | */ | 456 | */ |
457 | static void read_ctrl_callback(struct urb *urb, struct pt_regs *regs) | 457 | static void read_ctrl_callback(struct urb *urb) |
458 | { | 458 | { |
459 | struct inbuf_t *inbuf = urb->context; | 459 | struct inbuf_t *inbuf = urb->context; |
460 | struct cardstate *cs = inbuf->cs; | 460 | struct cardstate *cs = inbuf->cs; |
@@ -596,7 +596,7 @@ static int atread_submit(struct cardstate *cs, int timeout) | |||
596 | * urb USB request block | 596 | * urb USB request block |
597 | * urb->context = controller state structure | 597 | * urb->context = controller state structure |
598 | */ | 598 | */ |
599 | static void read_int_callback(struct urb *urb, struct pt_regs *regs) | 599 | static void read_int_callback(struct urb *urb) |
600 | { | 600 | { |
601 | struct cardstate *cs = urb->context; | 601 | struct cardstate *cs = urb->context; |
602 | struct bas_cardstate *ucs = cs->hw.bas; | 602 | struct bas_cardstate *ucs = cs->hw.bas; |
@@ -762,7 +762,7 @@ resubmit: | |||
762 | * urb USB request block of completed request | 762 | * urb USB request block of completed request |
763 | * urb->context = bc_state structure | 763 | * urb->context = bc_state structure |
764 | */ | 764 | */ |
765 | static void read_iso_callback(struct urb *urb, struct pt_regs *regs) | 765 | static void read_iso_callback(struct urb *urb) |
766 | { | 766 | { |
767 | struct bc_state *bcs; | 767 | struct bc_state *bcs; |
768 | struct bas_bc_state *ubc; | 768 | struct bas_bc_state *ubc; |
@@ -827,7 +827,7 @@ static void read_iso_callback(struct urb *urb, struct pt_regs *regs) | |||
827 | * urb USB request block of completed request | 827 | * urb USB request block of completed request |
828 | * urb->context = isow_urbctx_t structure | 828 | * urb->context = isow_urbctx_t structure |
829 | */ | 829 | */ |
830 | static void write_iso_callback(struct urb *urb, struct pt_regs *regs) | 830 | static void write_iso_callback(struct urb *urb) |
831 | { | 831 | { |
832 | struct isow_urbctx_t *ucx; | 832 | struct isow_urbctx_t *ucx; |
833 | struct bas_bc_state *ubc; | 833 | struct bas_bc_state *ubc; |
@@ -1415,7 +1415,7 @@ static void req_timeout(unsigned long data) | |||
1415 | * urb USB request block of completed request | 1415 | * urb USB request block of completed request |
1416 | * urb->context = hardware specific controller state structure | 1416 | * urb->context = hardware specific controller state structure |
1417 | */ | 1417 | */ |
1418 | static void write_ctrl_callback(struct urb *urb, struct pt_regs *regs) | 1418 | static void write_ctrl_callback(struct urb *urb) |
1419 | { | 1419 | { |
1420 | struct bas_cardstate *ucs = urb->context; | 1420 | struct bas_cardstate *ucs = urb->context; |
1421 | int rc; | 1421 | int rc; |
@@ -1661,7 +1661,7 @@ static void complete_cb(struct cardstate *cs) | |||
1661 | * urb USB request block of completed request | 1661 | * urb USB request block of completed request |
1662 | * urb->context = controller state structure | 1662 | * urb->context = controller state structure |
1663 | */ | 1663 | */ |
1664 | static void write_command_callback(struct urb *urb, struct pt_regs *regs) | 1664 | static void write_command_callback(struct urb *urb) |
1665 | { | 1665 | { |
1666 | struct cardstate *cs = urb->context; | 1666 | struct cardstate *cs = urb->context; |
1667 | struct bas_cardstate *ucs = cs->hw.bas; | 1667 | struct bas_cardstate *ucs = cs->hw.bas; |
diff --git a/drivers/isdn/gigaset/usb-gigaset.c b/drivers/isdn/gigaset/usb-gigaset.c index 6e05d9d4a51a..4ffa9eb1c28e 100644 --- a/drivers/isdn/gigaset/usb-gigaset.c +++ b/drivers/isdn/gigaset/usb-gigaset.c | |||
@@ -362,7 +362,7 @@ static void gigaset_modem_fill(unsigned long data) | |||
362 | * | 362 | * |
363 | * It is called if the data was received from the device. | 363 | * It is called if the data was received from the device. |
364 | */ | 364 | */ |
365 | static void gigaset_read_int_callback(struct urb *urb, struct pt_regs *regs) | 365 | static void gigaset_read_int_callback(struct urb *urb) |
366 | { | 366 | { |
367 | struct inbuf_t *inbuf = urb->context; | 367 | struct inbuf_t *inbuf = urb->context; |
368 | struct cardstate *cs = inbuf->cs; | 368 | struct cardstate *cs = inbuf->cs; |
@@ -420,7 +420,7 @@ static void gigaset_read_int_callback(struct urb *urb, struct pt_regs *regs) | |||
420 | 420 | ||
421 | 421 | ||
422 | /* This callback routine is called when data was transmitted to the device. */ | 422 | /* This callback routine is called when data was transmitted to the device. */ |
423 | static void gigaset_write_bulk_callback(struct urb *urb, struct pt_regs *regs) | 423 | static void gigaset_write_bulk_callback(struct urb *urb) |
424 | { | 424 | { |
425 | struct cardstate *cs = urb->context; | 425 | struct cardstate *cs = urb->context; |
426 | unsigned long flags; | 426 | unsigned long flags; |
diff --git a/drivers/isdn/hardware/avm/avmcard.h b/drivers/isdn/hardware/avm/avmcard.h index 3b431723c7cb..d964f07e4a56 100644 --- a/drivers/isdn/hardware/avm/avmcard.h +++ b/drivers/isdn/hardware/avm/avmcard.h | |||
@@ -554,7 +554,7 @@ void b1_register_appl(struct capi_ctr *ctrl, u16 appl, | |||
554 | void b1_release_appl(struct capi_ctr *ctrl, u16 appl); | 554 | void b1_release_appl(struct capi_ctr *ctrl, u16 appl); |
555 | u16 b1_send_message(struct capi_ctr *ctrl, struct sk_buff *skb); | 555 | u16 b1_send_message(struct capi_ctr *ctrl, struct sk_buff *skb); |
556 | void b1_parse_version(avmctrl_info *card); | 556 | void b1_parse_version(avmctrl_info *card); |
557 | irqreturn_t b1_interrupt(int interrupt, void *devptr, struct pt_regs *regs); | 557 | irqreturn_t b1_interrupt(int interrupt, void *devptr); |
558 | 558 | ||
559 | int b1ctl_read_proc(char *page, char **start, off_t off, | 559 | int b1ctl_read_proc(char *page, char **start, off_t off, |
560 | int count, int *eof, struct capi_ctr *ctrl); | 560 | int count, int *eof, struct capi_ctr *ctrl); |
@@ -567,7 +567,7 @@ void avmcard_dma_free(avmcard_dmainfo *); | |||
567 | int b1pciv4_detect(avmcard *card); | 567 | int b1pciv4_detect(avmcard *card); |
568 | int t1pci_detect(avmcard *card); | 568 | int t1pci_detect(avmcard *card); |
569 | void b1dma_reset(avmcard *card); | 569 | void b1dma_reset(avmcard *card); |
570 | irqreturn_t b1dma_interrupt(int interrupt, void *devptr, struct pt_regs *regs); | 570 | irqreturn_t b1dma_interrupt(int interrupt, void *devptr); |
571 | 571 | ||
572 | int b1dma_load_firmware(struct capi_ctr *ctrl, capiloaddata *data); | 572 | int b1dma_load_firmware(struct capi_ctr *ctrl, capiloaddata *data); |
573 | void b1dma_reset_ctr(struct capi_ctr *ctrl); | 573 | void b1dma_reset_ctr(struct capi_ctr *ctrl); |
diff --git a/drivers/isdn/hardware/avm/b1.c b/drivers/isdn/hardware/avm/b1.c index 0c7061d55027..da2729247713 100644 --- a/drivers/isdn/hardware/avm/b1.c +++ b/drivers/isdn/hardware/avm/b1.c | |||
@@ -485,7 +485,7 @@ void b1_parse_version(avmctrl_info *cinfo) | |||
485 | 485 | ||
486 | /* ------------------------------------------------------------- */ | 486 | /* ------------------------------------------------------------- */ |
487 | 487 | ||
488 | irqreturn_t b1_interrupt(int interrupt, void *devptr, struct pt_regs *regs) | 488 | irqreturn_t b1_interrupt(int interrupt, void *devptr) |
489 | { | 489 | { |
490 | avmcard *card = devptr; | 490 | avmcard *card = devptr; |
491 | avmctrl_info *cinfo = &card->ctrlinfo[0]; | 491 | avmctrl_info *cinfo = &card->ctrlinfo[0]; |
diff --git a/drivers/isdn/hardware/avm/b1dma.c b/drivers/isdn/hardware/avm/b1dma.c index a4beeb46c859..ddd47cdfdb1f 100644 --- a/drivers/isdn/hardware/avm/b1dma.c +++ b/drivers/isdn/hardware/avm/b1dma.c | |||
@@ -628,7 +628,7 @@ static void b1dma_handle_interrupt(avmcard *card) | |||
628 | spin_unlock(&card->lock); | 628 | spin_unlock(&card->lock); |
629 | } | 629 | } |
630 | 630 | ||
631 | irqreturn_t b1dma_interrupt(int interrupt, void *devptr, struct pt_regs *regs) | 631 | irqreturn_t b1dma_interrupt(int interrupt, void *devptr) |
632 | { | 632 | { |
633 | avmcard *card = devptr; | 633 | avmcard *card = devptr; |
634 | 634 | ||
diff --git a/drivers/isdn/hardware/avm/c4.c b/drivers/isdn/hardware/avm/c4.c index 6c3d5f5f1f4b..2a3eb38f0ebb 100644 --- a/drivers/isdn/hardware/avm/c4.c +++ b/drivers/isdn/hardware/avm/c4.c | |||
@@ -713,7 +713,7 @@ static irqreturn_t c4_handle_interrupt(avmcard *card) | |||
713 | return IRQ_HANDLED; | 713 | return IRQ_HANDLED; |
714 | } | 714 | } |
715 | 715 | ||
716 | static irqreturn_t c4_interrupt(int interrupt, void *devptr, struct pt_regs *regs) | 716 | static irqreturn_t c4_interrupt(int interrupt, void *devptr) |
717 | { | 717 | { |
718 | avmcard *card = devptr; | 718 | avmcard *card = devptr; |
719 | 719 | ||
diff --git a/drivers/isdn/hardware/avm/t1isa.c b/drivers/isdn/hardware/avm/t1isa.c index 5a2f854d55b5..e47c60b0a8ec 100644 --- a/drivers/isdn/hardware/avm/t1isa.c +++ b/drivers/isdn/hardware/avm/t1isa.c | |||
@@ -131,7 +131,7 @@ static int t1_detectandinit(unsigned int base, unsigned irq, int cardnr) | |||
131 | return 0; | 131 | return 0; |
132 | } | 132 | } |
133 | 133 | ||
134 | static irqreturn_t t1isa_interrupt(int interrupt, void *devptr, struct pt_regs *regs) | 134 | static irqreturn_t t1isa_interrupt(int interrupt, void *devptr) |
135 | { | 135 | { |
136 | avmcard *card = devptr; | 136 | avmcard *card = devptr; |
137 | avmctrl_info *cinfo = &card->ctrlinfo[0]; | 137 | avmctrl_info *cinfo = &card->ctrlinfo[0]; |
diff --git a/drivers/isdn/hardware/eicon/diva.c b/drivers/isdn/hardware/eicon/diva.c index 8ab8027f33c0..ffa2afa77c2f 100644 --- a/drivers/isdn/hardware/eicon/diva.c +++ b/drivers/isdn/hardware/eicon/diva.c | |||
@@ -71,8 +71,6 @@ DivaIdiReqFunc(29) | |||
71 | DivaIdiReqFunc(30) | 71 | DivaIdiReqFunc(30) |
72 | DivaIdiReqFunc(31) | 72 | DivaIdiReqFunc(31) |
73 | 73 | ||
74 | struct pt_regs; | ||
75 | |||
76 | /* | 74 | /* |
77 | ** LOCALS | 75 | ** LOCALS |
78 | */ | 76 | */ |
@@ -515,7 +513,7 @@ diva_xdi_read(void *adapter, void *os_handle, void __user *dst, | |||
515 | } | 513 | } |
516 | 514 | ||
517 | 515 | ||
518 | irqreturn_t diva_os_irq_wrapper(int irq, void *context, struct pt_regs *regs) | 516 | irqreturn_t diva_os_irq_wrapper(int irq, void *context) |
519 | { | 517 | { |
520 | diva_os_xdi_adapter_t *a = (diva_os_xdi_adapter_t *) context; | 518 | diva_os_xdi_adapter_t *a = (diva_os_xdi_adapter_t *) context; |
521 | diva_xdi_clear_interrupts_proc_t clear_int_proc; | 519 | diva_xdi_clear_interrupts_proc_t clear_int_proc; |
diff --git a/drivers/isdn/hardware/eicon/divasmain.c b/drivers/isdn/hardware/eicon/divasmain.c index b7dadba13e82..dae2e83dd5e8 100644 --- a/drivers/isdn/hardware/eicon/divasmain.c +++ b/drivers/isdn/hardware/eicon/divasmain.c | |||
@@ -58,8 +58,7 @@ static char *DRIVERLNAME = "divas"; | |||
58 | static char *DEVNAME = "Divas"; | 58 | static char *DEVNAME = "Divas"; |
59 | char *DRIVERRELEASE_DIVAS = "2.0"; | 59 | char *DRIVERRELEASE_DIVAS = "2.0"; |
60 | 60 | ||
61 | extern irqreturn_t diva_os_irq_wrapper(int irq, void *context, | 61 | extern irqreturn_t diva_os_irq_wrapper(int irq, void *context); |
62 | struct pt_regs *regs); | ||
63 | extern int create_divas_proc(void); | 62 | extern int create_divas_proc(void); |
64 | extern void remove_divas_proc(void); | 63 | extern void remove_divas_proc(void); |
65 | extern void diva_get_vserial_number(PISDN_ADAPTER IoAdapter, char *buf); | 64 | extern void diva_get_vserial_number(PISDN_ADAPTER IoAdapter, char *buf); |
diff --git a/drivers/isdn/hisax/amd7930_fn.c b/drivers/isdn/hisax/amd7930_fn.c index 8ae08c41c853..bec59010bc66 100644 --- a/drivers/isdn/hisax/amd7930_fn.c +++ b/drivers/isdn/hisax/amd7930_fn.c | |||
@@ -733,7 +733,7 @@ dbusy_timer_handler(struct IsdnCardState *cs) | |||
733 | wByteAMD(cs, 0x21, 0x82); | 733 | wByteAMD(cs, 0x21, 0x82); |
734 | wByteAMD(cs, 0x21, 0x02); | 734 | wByteAMD(cs, 0x21, 0x02); |
735 | spin_unlock_irqrestore(&cs->lock, flags); | 735 | spin_unlock_irqrestore(&cs->lock, flags); |
736 | cs->irq_func(cs->irq, cs, NULL); | 736 | cs->irq_func(cs->irq, cs); |
737 | 737 | ||
738 | if (cs->debug & L1_DEB_ISAC) | 738 | if (cs->debug & L1_DEB_ISAC) |
739 | debugl1(cs, "Amd7930: dbusy_timer_handler: Transmitter reset"); | 739 | debugl1(cs, "Amd7930: dbusy_timer_handler: Transmitter reset"); |
diff --git a/drivers/isdn/hisax/asuscom.c b/drivers/isdn/hisax/asuscom.c index 93ff941c48f1..61e69e9c4aa9 100644 --- a/drivers/isdn/hisax/asuscom.c +++ b/drivers/isdn/hisax/asuscom.c | |||
@@ -156,7 +156,7 @@ WriteHSCX(struct IsdnCardState *cs, int hscx, u_char offset, u_char value) | |||
156 | #include "hscx_irq.c" | 156 | #include "hscx_irq.c" |
157 | 157 | ||
158 | static irqreturn_t | 158 | static irqreturn_t |
159 | asuscom_interrupt(int intno, void *dev_id, struct pt_regs *regs) | 159 | asuscom_interrupt(int intno, void *dev_id) |
160 | { | 160 | { |
161 | struct IsdnCardState *cs = dev_id; | 161 | struct IsdnCardState *cs = dev_id; |
162 | u_char val; | 162 | u_char val; |
@@ -194,7 +194,7 @@ asuscom_interrupt(int intno, void *dev_id, struct pt_regs *regs) | |||
194 | } | 194 | } |
195 | 195 | ||
196 | static irqreturn_t | 196 | static irqreturn_t |
197 | asuscom_interrupt_ipac(int intno, void *dev_id, struct pt_regs *regs) | 197 | asuscom_interrupt_ipac(int intno, void *dev_id) |
198 | { | 198 | { |
199 | struct IsdnCardState *cs = dev_id; | 199 | struct IsdnCardState *cs = dev_id; |
200 | u_char ista, val, icnt = 5; | 200 | u_char ista, val, icnt = 5; |
diff --git a/drivers/isdn/hisax/avm_a1.c b/drivers/isdn/hisax/avm_a1.c index 729e906bdc61..d9028e9b9b8f 100644 --- a/drivers/isdn/hisax/avm_a1.c +++ b/drivers/isdn/hisax/avm_a1.c | |||
@@ -101,7 +101,7 @@ WriteHSCX(struct IsdnCardState *cs, int hscx, u_char offset, u_char value) | |||
101 | #include "hscx_irq.c" | 101 | #include "hscx_irq.c" |
102 | 102 | ||
103 | static irqreturn_t | 103 | static irqreturn_t |
104 | avm_a1_interrupt(int intno, void *dev_id, struct pt_regs *regs) | 104 | avm_a1_interrupt(int intno, void *dev_id) |
105 | { | 105 | { |
106 | struct IsdnCardState *cs = dev_id; | 106 | struct IsdnCardState *cs = dev_id; |
107 | u_char val, sval; | 107 | u_char val, sval; |
diff --git a/drivers/isdn/hisax/avm_a1p.c b/drivers/isdn/hisax/avm_a1p.c index 574e252dfa43..c87fa3f9b298 100644 --- a/drivers/isdn/hisax/avm_a1p.c +++ b/drivers/isdn/hisax/avm_a1p.c | |||
@@ -140,7 +140,7 @@ WriteHSCXfifo(struct IsdnCardState *cs, int hscx, u_char * data, int size) | |||
140 | #include "hscx_irq.c" | 140 | #include "hscx_irq.c" |
141 | 141 | ||
142 | static irqreturn_t | 142 | static irqreturn_t |
143 | avm_a1p_interrupt(int intno, void *dev_id, struct pt_regs *regs) | 143 | avm_a1p_interrupt(int intno, void *dev_id) |
144 | { | 144 | { |
145 | struct IsdnCardState *cs = dev_id; | 145 | struct IsdnCardState *cs = dev_id; |
146 | u_char val, sval; | 146 | u_char val, sval; |
diff --git a/drivers/isdn/hisax/avm_pci.c b/drivers/isdn/hisax/avm_pci.c index 369afd3a3a4b..b04a178e5021 100644 --- a/drivers/isdn/hisax/avm_pci.c +++ b/drivers/isdn/hisax/avm_pci.c | |||
@@ -651,7 +651,7 @@ inithdlc(struct IsdnCardState *cs) | |||
651 | } | 651 | } |
652 | 652 | ||
653 | static irqreturn_t | 653 | static irqreturn_t |
654 | avm_pcipnp_interrupt(int intno, void *dev_id, struct pt_regs *regs) | 654 | avm_pcipnp_interrupt(int intno, void *dev_id) |
655 | { | 655 | { |
656 | struct IsdnCardState *cs = dev_id; | 656 | struct IsdnCardState *cs = dev_id; |
657 | u_long flags; | 657 | u_long flags; |
diff --git a/drivers/isdn/hisax/bkm_a4t.c b/drivers/isdn/hisax/bkm_a4t.c index 87a630128a6c..871310d56a6e 100644 --- a/drivers/isdn/hisax/bkm_a4t.c +++ b/drivers/isdn/hisax/bkm_a4t.c | |||
@@ -125,7 +125,7 @@ WriteJADE(struct IsdnCardState *cs, int jade, u_char offset, u_char value) | |||
125 | #include "jade_irq.c" | 125 | #include "jade_irq.c" |
126 | 126 | ||
127 | static irqreturn_t | 127 | static irqreturn_t |
128 | bkm_interrupt(int intno, void *dev_id, struct pt_regs *regs) | 128 | bkm_interrupt(int intno, void *dev_id) |
129 | { | 129 | { |
130 | struct IsdnCardState *cs = dev_id; | 130 | struct IsdnCardState *cs = dev_id; |
131 | u_char val = 0; | 131 | u_char val = 0; |
diff --git a/drivers/isdn/hisax/bkm_a8.c b/drivers/isdn/hisax/bkm_a8.c index dae090a9a489..340310645346 100644 --- a/drivers/isdn/hisax/bkm_a8.c +++ b/drivers/isdn/hisax/bkm_a8.c | |||
@@ -140,7 +140,7 @@ set_ipac_active(struct IsdnCardState *cs, u_int active) | |||
140 | #include "hscx_irq.c" | 140 | #include "hscx_irq.c" |
141 | 141 | ||
142 | static irqreturn_t | 142 | static irqreturn_t |
143 | bkm_interrupt_ipac(int intno, void *dev_id, struct pt_regs *regs) | 143 | bkm_interrupt_ipac(int intno, void *dev_id) |
144 | { | 144 | { |
145 | struct IsdnCardState *cs = dev_id; | 145 | struct IsdnCardState *cs = dev_id; |
146 | u_char ista, val, icnt = 5; | 146 | u_char ista, val, icnt = 5; |
diff --git a/drivers/isdn/hisax/diva.c b/drivers/isdn/hisax/diva.c index e294fa3918f3..7e95f04f13da 100644 --- a/drivers/isdn/hisax/diva.c +++ b/drivers/isdn/hisax/diva.c | |||
@@ -289,7 +289,7 @@ MemWriteHSCX_IPACX(struct IsdnCardState *cs, int hscx, u_char offset, u_char val | |||
289 | #include "hscx_irq.c" | 289 | #include "hscx_irq.c" |
290 | 290 | ||
291 | static irqreturn_t | 291 | static irqreturn_t |
292 | diva_interrupt(int intno, void *dev_id, struct pt_regs *regs) | 292 | diva_interrupt(int intno, void *dev_id) |
293 | { | 293 | { |
294 | struct IsdnCardState *cs = dev_id; | 294 | struct IsdnCardState *cs = dev_id; |
295 | u_char val, sval; | 295 | u_char val, sval; |
@@ -319,7 +319,7 @@ diva_interrupt(int intno, void *dev_id, struct pt_regs *regs) | |||
319 | } | 319 | } |
320 | 320 | ||
321 | static irqreturn_t | 321 | static irqreturn_t |
322 | diva_irq_ipac_isa(int intno, void *dev_id, struct pt_regs *regs) | 322 | diva_irq_ipac_isa(int intno, void *dev_id) |
323 | { | 323 | { |
324 | struct IsdnCardState *cs = dev_id; | 324 | struct IsdnCardState *cs = dev_id; |
325 | u_char ista,val; | 325 | u_char ista,val; |
@@ -630,7 +630,7 @@ Memhscx_int_main(struct IsdnCardState *cs, u_char val) | |||
630 | } | 630 | } |
631 | 631 | ||
632 | static irqreturn_t | 632 | static irqreturn_t |
633 | diva_irq_ipac_pci(int intno, void *dev_id, struct pt_regs *regs) | 633 | diva_irq_ipac_pci(int intno, void *dev_id) |
634 | { | 634 | { |
635 | struct IsdnCardState *cs = dev_id; | 635 | struct IsdnCardState *cs = dev_id; |
636 | u_char ista,val; | 636 | u_char ista,val; |
@@ -685,7 +685,7 @@ Start_IPACPCI: | |||
685 | } | 685 | } |
686 | 686 | ||
687 | static irqreturn_t | 687 | static irqreturn_t |
688 | diva_irq_ipacx_pci(int intno, void *dev_id, struct pt_regs *regs) | 688 | diva_irq_ipacx_pci(int intno, void *dev_id) |
689 | { | 689 | { |
690 | struct IsdnCardState *cs = dev_id; | 690 | struct IsdnCardState *cs = dev_id; |
691 | u_char val; | 691 | u_char val; |
diff --git a/drivers/isdn/hisax/elsa.c b/drivers/isdn/hisax/elsa.c index 3b3e318f6076..fab3e4ea0595 100644 --- a/drivers/isdn/hisax/elsa.c +++ b/drivers/isdn/hisax/elsa.c | |||
@@ -282,7 +282,7 @@ TimerRun(struct IsdnCardState *cs) | |||
282 | #include "hscx_irq.c" | 282 | #include "hscx_irq.c" |
283 | 283 | ||
284 | static irqreturn_t | 284 | static irqreturn_t |
285 | elsa_interrupt(int intno, void *dev_id, struct pt_regs *regs) | 285 | elsa_interrupt(int intno, void *dev_id) |
286 | { | 286 | { |
287 | struct IsdnCardState *cs = dev_id; | 287 | struct IsdnCardState *cs = dev_id; |
288 | u_long flags; | 288 | u_long flags; |
@@ -361,7 +361,7 @@ elsa_interrupt(int intno, void *dev_id, struct pt_regs *regs) | |||
361 | } | 361 | } |
362 | 362 | ||
363 | static irqreturn_t | 363 | static irqreturn_t |
364 | elsa_interrupt_ipac(int intno, void *dev_id, struct pt_regs *regs) | 364 | elsa_interrupt_ipac(int intno, void *dev_id) |
365 | { | 365 | { |
366 | struct IsdnCardState *cs = dev_id; | 366 | struct IsdnCardState *cs = dev_id; |
367 | u_long flags; | 367 | u_long flags; |
diff --git a/drivers/isdn/hisax/enternow_pci.c b/drivers/isdn/hisax/enternow_pci.c index 76c7d29d1b2f..b45de9d408d1 100644 --- a/drivers/isdn/hisax/enternow_pci.c +++ b/drivers/isdn/hisax/enternow_pci.c | |||
@@ -240,7 +240,7 @@ enpci_card_msg(struct IsdnCardState *cs, int mt, void *arg) | |||
240 | } | 240 | } |
241 | 241 | ||
242 | static irqreturn_t | 242 | static irqreturn_t |
243 | enpci_interrupt(int intno, void *dev_id, struct pt_regs *regs) | 243 | enpci_interrupt(int intno, void *dev_id) |
244 | { | 244 | { |
245 | struct IsdnCardState *cs = dev_id; | 245 | struct IsdnCardState *cs = dev_id; |
246 | unsigned char s0val, s1val, ir; | 246 | unsigned char s0val, s1val, ir; |
diff --git a/drivers/isdn/hisax/gazel.c b/drivers/isdn/hisax/gazel.c index fe2937267777..3efa719b6d29 100644 --- a/drivers/isdn/hisax/gazel.c +++ b/drivers/isdn/hisax/gazel.c | |||
@@ -243,7 +243,7 @@ WriteHSCX(struct IsdnCardState *cs, int hscx, u_char offset, u_char value) | |||
243 | #include "hscx_irq.c" | 243 | #include "hscx_irq.c" |
244 | 244 | ||
245 | static irqreturn_t | 245 | static irqreturn_t |
246 | gazel_interrupt(int intno, void *dev_id, struct pt_regs *regs) | 246 | gazel_interrupt(int intno, void *dev_id) |
247 | { | 247 | { |
248 | #define MAXCOUNT 5 | 248 | #define MAXCOUNT 5 |
249 | struct IsdnCardState *cs = dev_id; | 249 | struct IsdnCardState *cs = dev_id; |
@@ -274,7 +274,7 @@ gazel_interrupt(int intno, void *dev_id, struct pt_regs *regs) | |||
274 | 274 | ||
275 | 275 | ||
276 | static irqreturn_t | 276 | static irqreturn_t |
277 | gazel_interrupt_ipac(int intno, void *dev_id, struct pt_regs *regs) | 277 | gazel_interrupt_ipac(int intno, void *dev_id) |
278 | { | 278 | { |
279 | struct IsdnCardState *cs = dev_id; | 279 | struct IsdnCardState *cs = dev_id; |
280 | u_char ista, val; | 280 | u_char ista, val; |
diff --git a/drivers/isdn/hisax/hfc4s8s_l1.c b/drivers/isdn/hisax/hfc4s8s_l1.c index 0ca5e66d2f5a..d852c9d998b2 100644 --- a/drivers/isdn/hisax/hfc4s8s_l1.c +++ b/drivers/isdn/hisax/hfc4s8s_l1.c | |||
@@ -1268,7 +1268,7 @@ hfc4s8s_bh(hfc4s8s_hw * hw) | |||
1268 | /* interrupt handler */ | 1268 | /* interrupt handler */ |
1269 | /*********************/ | 1269 | /*********************/ |
1270 | static irqreturn_t | 1270 | static irqreturn_t |
1271 | hfc4s8s_interrupt(int intno, void *dev_id, struct pt_regs *regs) | 1271 | hfc4s8s_interrupt(int intno, void *dev_id) |
1272 | { | 1272 | { |
1273 | hfc4s8s_hw *hw = dev_id; | 1273 | hfc4s8s_hw *hw = dev_id; |
1274 | u_char b, ovr; | 1274 | u_char b, ovr; |
diff --git a/drivers/isdn/hisax/hfc_pci.c b/drivers/isdn/hisax/hfc_pci.c index 1df60ca9481f..93f60b563515 100644 --- a/drivers/isdn/hisax/hfc_pci.c +++ b/drivers/isdn/hisax/hfc_pci.c | |||
@@ -931,7 +931,7 @@ receive_emsg(struct IsdnCardState *cs) | |||
931 | /* Interrupt handler */ | 931 | /* Interrupt handler */ |
932 | /*********************/ | 932 | /*********************/ |
933 | static irqreturn_t | 933 | static irqreturn_t |
934 | hfcpci_interrupt(int intno, void *dev_id, struct pt_regs *regs) | 934 | hfcpci_interrupt(int intno, void *dev_id) |
935 | { | 935 | { |
936 | u_long flags; | 936 | u_long flags; |
937 | struct IsdnCardState *cs = dev_id; | 937 | struct IsdnCardState *cs = dev_id; |
diff --git a/drivers/isdn/hisax/hfc_sx.c b/drivers/isdn/hisax/hfc_sx.c index b7e8e23be337..954d1536db1f 100644 --- a/drivers/isdn/hisax/hfc_sx.c +++ b/drivers/isdn/hisax/hfc_sx.c | |||
@@ -691,7 +691,7 @@ receive_emsg(struct IsdnCardState *cs) | |||
691 | /* Interrupt handler */ | 691 | /* Interrupt handler */ |
692 | /*********************/ | 692 | /*********************/ |
693 | static irqreturn_t | 693 | static irqreturn_t |
694 | hfcsx_interrupt(int intno, void *dev_id, struct pt_regs *regs) | 694 | hfcsx_interrupt(int intno, void *dev_id) |
695 | { | 695 | { |
696 | struct IsdnCardState *cs = dev_id; | 696 | struct IsdnCardState *cs = dev_id; |
697 | u_char exval; | 697 | u_char exval; |
diff --git a/drivers/isdn/hisax/hfc_usb.c b/drivers/isdn/hisax/hfc_usb.c index 6b88ecb5047d..7105b043add8 100644 --- a/drivers/isdn/hisax/hfc_usb.c +++ b/drivers/isdn/hisax/hfc_usb.c | |||
@@ -276,7 +276,7 @@ control_action_handler(hfcusb_data * hfc, int reg, int val, int action) | |||
276 | /* control completion routine handling background control cmds */ | 276 | /* control completion routine handling background control cmds */ |
277 | /***************************************************************/ | 277 | /***************************************************************/ |
278 | static void | 278 | static void |
279 | ctrl_complete(struct urb *urb, struct pt_regs *regs) | 279 | ctrl_complete(struct urb *urb) |
280 | { | 280 | { |
281 | hfcusb_data *hfc = (hfcusb_data *) urb->context; | 281 | hfcusb_data *hfc = (hfcusb_data *) urb->context; |
282 | ctrl_buft *buf; | 282 | ctrl_buft *buf; |
@@ -603,7 +603,7 @@ static int iso_packets[8] = | |||
603 | /* transmit completion routine for all ISO tx fifos */ | 603 | /* transmit completion routine for all ISO tx fifos */ |
604 | /*****************************************************/ | 604 | /*****************************************************/ |
605 | static void | 605 | static void |
606 | tx_iso_complete(struct urb *urb, struct pt_regs *regs) | 606 | tx_iso_complete(struct urb *urb) |
607 | { | 607 | { |
608 | iso_urb_struct *context_iso_urb = (iso_urb_struct *) urb->context; | 608 | iso_urb_struct *context_iso_urb = (iso_urb_struct *) urb->context; |
609 | usb_fifo *fifo = context_iso_urb->owner_fifo; | 609 | usb_fifo *fifo = context_iso_urb->owner_fifo; |
@@ -726,7 +726,7 @@ tx_iso_complete(struct urb *urb, struct pt_regs *regs) | |||
726 | /* receive completion routine for all ISO tx fifos */ | 726 | /* receive completion routine for all ISO tx fifos */ |
727 | /*****************************************************/ | 727 | /*****************************************************/ |
728 | static void | 728 | static void |
729 | rx_iso_complete(struct urb *urb, struct pt_regs *regs) | 729 | rx_iso_complete(struct urb *urb) |
730 | { | 730 | { |
731 | iso_urb_struct *context_iso_urb = (iso_urb_struct *) urb->context; | 731 | iso_urb_struct *context_iso_urb = (iso_urb_struct *) urb->context; |
732 | usb_fifo *fifo = context_iso_urb->owner_fifo; | 732 | usb_fifo *fifo = context_iso_urb->owner_fifo; |
@@ -919,7 +919,7 @@ collect_rx_frame(usb_fifo * fifo, __u8 * data, int len, int finish) | |||
919 | /* receive completion routine for all rx fifos */ | 919 | /* receive completion routine for all rx fifos */ |
920 | /***********************************************/ | 920 | /***********************************************/ |
921 | static void | 921 | static void |
922 | rx_complete(struct urb *urb, struct pt_regs *regs) | 922 | rx_complete(struct urb *urb) |
923 | { | 923 | { |
924 | int len; | 924 | int len; |
925 | int status; | 925 | int status; |
diff --git a/drivers/isdn/hisax/hfcscard.c b/drivers/isdn/hisax/hfcscard.c index 4e7f472877e9..57670dc5034d 100644 --- a/drivers/isdn/hisax/hfcscard.c +++ b/drivers/isdn/hisax/hfcscard.c | |||
@@ -21,7 +21,7 @@ extern const char *CardType[]; | |||
21 | static const char *hfcs_revision = "$Revision: 1.10.2.4 $"; | 21 | static const char *hfcs_revision = "$Revision: 1.10.2.4 $"; |
22 | 22 | ||
23 | static irqreturn_t | 23 | static irqreturn_t |
24 | hfcs_interrupt(int intno, void *dev_id, struct pt_regs *regs) | 24 | hfcs_interrupt(int intno, void *dev_id) |
25 | { | 25 | { |
26 | struct IsdnCardState *cs = dev_id; | 26 | struct IsdnCardState *cs = dev_id; |
27 | u_char val, stat; | 27 | u_char val, stat; |
diff --git a/drivers/isdn/hisax/hisax.h b/drivers/isdn/hisax/hisax.h index 2f9d5118ceaf..159c5896061e 100644 --- a/drivers/isdn/hisax/hisax.h +++ b/drivers/isdn/hisax/hisax.h | |||
@@ -941,7 +941,7 @@ struct IsdnCardState { | |||
941 | int (*cardmsg) (struct IsdnCardState *, int, void *); | 941 | int (*cardmsg) (struct IsdnCardState *, int, void *); |
942 | void (*setstack_d) (struct PStack *, struct IsdnCardState *); | 942 | void (*setstack_d) (struct PStack *, struct IsdnCardState *); |
943 | void (*DC_Close) (struct IsdnCardState *); | 943 | void (*DC_Close) (struct IsdnCardState *); |
944 | int (*irq_func) (int, void *, struct pt_regs *); | 944 | int (*irq_func) (int, void *); |
945 | int (*auxcmd) (struct IsdnCardState *, isdn_ctrl *); | 945 | int (*auxcmd) (struct IsdnCardState *, isdn_ctrl *); |
946 | struct Channel channel[2+MAX_WAITING_CALLS]; | 946 | struct Channel channel[2+MAX_WAITING_CALLS]; |
947 | struct BCState bcs[2+MAX_WAITING_CALLS]; | 947 | struct BCState bcs[2+MAX_WAITING_CALLS]; |
diff --git a/drivers/isdn/hisax/hisax_fcpcipnp.c b/drivers/isdn/hisax/hisax_fcpcipnp.c index 881a4165cfb4..f6db55a752c4 100644 --- a/drivers/isdn/hisax/hisax_fcpcipnp.c +++ b/drivers/isdn/hisax/hisax_fcpcipnp.c | |||
@@ -651,7 +651,7 @@ static void fritz_b_l2l1(struct hisax_if *ifc, int pr, void *arg) | |||
651 | // ---------------------------------------------------------------------- | 651 | // ---------------------------------------------------------------------- |
652 | 652 | ||
653 | static irqreturn_t | 653 | static irqreturn_t |
654 | fcpci2_irq(int intno, void *dev, struct pt_regs *regs) | 654 | fcpci2_irq(int intno, void *dev) |
655 | { | 655 | { |
656 | struct fritz_adapter *adapter = dev; | 656 | struct fritz_adapter *adapter = dev; |
657 | unsigned char val; | 657 | unsigned char val; |
@@ -671,7 +671,7 @@ fcpci2_irq(int intno, void *dev, struct pt_regs *regs) | |||
671 | } | 671 | } |
672 | 672 | ||
673 | static irqreturn_t | 673 | static irqreturn_t |
674 | fcpci_irq(int intno, void *dev, struct pt_regs *regs) | 674 | fcpci_irq(int intno, void *dev) |
675 | { | 675 | { |
676 | struct fritz_adapter *adapter = dev; | 676 | struct fritz_adapter *adapter = dev; |
677 | unsigned char sval; | 677 | unsigned char sval; |
diff --git a/drivers/isdn/hisax/icc.c b/drivers/isdn/hisax/icc.c index 2cf7b665609e..da706925d54d 100644 --- a/drivers/isdn/hisax/icc.c +++ b/drivers/isdn/hisax/icc.c | |||
@@ -608,7 +608,7 @@ dbusy_timer_handler(struct IsdnCardState *cs) | |||
608 | debugl1(cs, "D-Channel Busy no skb"); | 608 | debugl1(cs, "D-Channel Busy no skb"); |
609 | } | 609 | } |
610 | cs->writeisac(cs, ICC_CMDR, 0x01); /* Transmitter reset */ | 610 | cs->writeisac(cs, ICC_CMDR, 0x01); /* Transmitter reset */ |
611 | cs->irq_func(cs->irq, cs, NULL); | 611 | cs->irq_func(cs->irq, cs); |
612 | } | 612 | } |
613 | } | 613 | } |
614 | } | 614 | } |
diff --git a/drivers/isdn/hisax/isac.c b/drivers/isdn/hisax/isac.c index 565b7892c267..282f349408bc 100644 --- a/drivers/isdn/hisax/isac.c +++ b/drivers/isdn/hisax/isac.c | |||
@@ -609,7 +609,7 @@ dbusy_timer_handler(struct IsdnCardState *cs) | |||
609 | debugl1(cs, "D-Channel Busy no skb"); | 609 | debugl1(cs, "D-Channel Busy no skb"); |
610 | } | 610 | } |
611 | cs->writeisac(cs, ISAC_CMDR, 0x01); /* Transmitter reset */ | 611 | cs->writeisac(cs, ISAC_CMDR, 0x01); /* Transmitter reset */ |
612 | cs->irq_func(cs->irq, cs, NULL); | 612 | cs->irq_func(cs->irq, cs); |
613 | } | 613 | } |
614 | } | 614 | } |
615 | } | 615 | } |
diff --git a/drivers/isdn/hisax/isurf.c b/drivers/isdn/hisax/isurf.c index 715a1a8cd694..55de06953540 100644 --- a/drivers/isdn/hisax/isurf.c +++ b/drivers/isdn/hisax/isurf.c | |||
@@ -83,7 +83,7 @@ WriteISAR(struct IsdnCardState *cs, int mode, u_char offset, u_char value) | |||
83 | } | 83 | } |
84 | 84 | ||
85 | static irqreturn_t | 85 | static irqreturn_t |
86 | isurf_interrupt(int intno, void *dev_id, struct pt_regs *regs) | 86 | isurf_interrupt(int intno, void *dev_id) |
87 | { | 87 | { |
88 | struct IsdnCardState *cs = dev_id; | 88 | struct IsdnCardState *cs = dev_id; |
89 | u_char val; | 89 | u_char val; |
diff --git a/drivers/isdn/hisax/ix1_micro.c b/drivers/isdn/hisax/ix1_micro.c index 39717506c678..252d79de5e5e 100644 --- a/drivers/isdn/hisax/ix1_micro.c +++ b/drivers/isdn/hisax/ix1_micro.c | |||
@@ -125,7 +125,7 @@ WriteHSCX(struct IsdnCardState *cs, int hscx, u_char offset, u_char value) | |||
125 | #include "hscx_irq.c" | 125 | #include "hscx_irq.c" |
126 | 126 | ||
127 | static irqreturn_t | 127 | static irqreturn_t |
128 | ix1micro_interrupt(int intno, void *dev_id, struct pt_regs *regs) | 128 | ix1micro_interrupt(int intno, void *dev_id) |
129 | { | 129 | { |
130 | struct IsdnCardState *cs = dev_id; | 130 | struct IsdnCardState *cs = dev_id; |
131 | u_char val; | 131 | u_char val; |
diff --git a/drivers/isdn/hisax/mic.c b/drivers/isdn/hisax/mic.c index 8c82519593a8..a81d175d9f64 100644 --- a/drivers/isdn/hisax/mic.c +++ b/drivers/isdn/hisax/mic.c | |||
@@ -120,7 +120,7 @@ WriteHSCX(struct IsdnCardState *cs, int hscx, u_char offset, u_char value) | |||
120 | #include "hscx_irq.c" | 120 | #include "hscx_irq.c" |
121 | 121 | ||
122 | static irqreturn_t | 122 | static irqreturn_t |
123 | mic_interrupt(int intno, void *dev_id, struct pt_regs *regs) | 123 | mic_interrupt(int intno, void *dev_id) |
124 | { | 124 | { |
125 | struct IsdnCardState *cs = dev_id; | 125 | struct IsdnCardState *cs = dev_id; |
126 | u_char val; | 126 | u_char val; |
diff --git a/drivers/isdn/hisax/netjet.h b/drivers/isdn/hisax/netjet.h index 1080508f3c6a..4d89d3ea4173 100644 --- a/drivers/isdn/hisax/netjet.h +++ b/drivers/isdn/hisax/netjet.h | |||
@@ -66,7 +66,7 @@ void read_tiger(struct IsdnCardState *cs); | |||
66 | void write_tiger(struct IsdnCardState *cs); | 66 | void write_tiger(struct IsdnCardState *cs); |
67 | 67 | ||
68 | void netjet_fill_dma(struct BCState *bcs); | 68 | void netjet_fill_dma(struct BCState *bcs); |
69 | void netjet_interrupt(int intno, void *dev_id, struct pt_regs *regs); | 69 | void netjet_interrupt(int intno, void *dev_id); |
70 | void inittiger(struct IsdnCardState *cs); | 70 | void inittiger(struct IsdnCardState *cs); |
71 | void release_io_netjet(struct IsdnCardState *cs); | 71 | void release_io_netjet(struct IsdnCardState *cs); |
72 | 72 | ||
diff --git a/drivers/isdn/hisax/niccy.c b/drivers/isdn/hisax/niccy.c index 0945336c28da..e5918c6fe73d 100644 --- a/drivers/isdn/hisax/niccy.c +++ b/drivers/isdn/hisax/niccy.c | |||
@@ -122,8 +122,7 @@ static void WriteHSCX(struct IsdnCardState *cs, int hscx, u_char offset, | |||
122 | 122 | ||
123 | #include "hscx_irq.c" | 123 | #include "hscx_irq.c" |
124 | 124 | ||
125 | static irqreturn_t niccy_interrupt(int intno, void *dev_id, | 125 | static irqreturn_t niccy_interrupt(int intno, void *dev_id) |
126 | struct pt_regs *regs) | ||
127 | { | 126 | { |
128 | struct IsdnCardState *cs = dev_id; | 127 | struct IsdnCardState *cs = dev_id; |
129 | u_char val; | 128 | u_char val; |
diff --git a/drivers/isdn/hisax/nj_s.c b/drivers/isdn/hisax/nj_s.c index 80025fd890f4..c09ffb135330 100644 --- a/drivers/isdn/hisax/nj_s.c +++ b/drivers/isdn/hisax/nj_s.c | |||
@@ -26,7 +26,7 @@ static void dummywr(struct IsdnCardState *cs, int chan, u_char off, u_char value | |||
26 | } | 26 | } |
27 | 27 | ||
28 | static irqreturn_t | 28 | static irqreturn_t |
29 | netjet_s_interrupt(int intno, void *dev_id, struct pt_regs *regs) | 29 | netjet_s_interrupt(int intno, void *dev_id) |
30 | { | 30 | { |
31 | struct IsdnCardState *cs = dev_id; | 31 | struct IsdnCardState *cs = dev_id; |
32 | u_char val, s1val, s0val; | 32 | u_char val, s1val, s0val; |
diff --git a/drivers/isdn/hisax/nj_u.c b/drivers/isdn/hisax/nj_u.c index 37497162d539..8202cf34ecae 100644 --- a/drivers/isdn/hisax/nj_u.c +++ b/drivers/isdn/hisax/nj_u.c | |||
@@ -26,7 +26,7 @@ static void dummywr(struct IsdnCardState *cs, int chan, u_char off, u_char value | |||
26 | } | 26 | } |
27 | 27 | ||
28 | static irqreturn_t | 28 | static irqreturn_t |
29 | netjet_u_interrupt(int intno, void *dev_id, struct pt_regs *regs) | 29 | netjet_u_interrupt(int intno, void *dev_id) |
30 | { | 30 | { |
31 | struct IsdnCardState *cs = dev_id; | 31 | struct IsdnCardState *cs = dev_id; |
32 | u_char val, sval; | 32 | u_char val, sval; |
diff --git a/drivers/isdn/hisax/s0box.c b/drivers/isdn/hisax/s0box.c index e76042d323ea..150ef68b4ae2 100644 --- a/drivers/isdn/hisax/s0box.c +++ b/drivers/isdn/hisax/s0box.c | |||
@@ -141,7 +141,7 @@ WriteHSCX(struct IsdnCardState *cs, int hscx, u_char offset, u_char value) | |||
141 | #include "hscx_irq.c" | 141 | #include "hscx_irq.c" |
142 | 142 | ||
143 | static irqreturn_t | 143 | static irqreturn_t |
144 | s0box_interrupt(int intno, void *dev_id, struct pt_regs *regs) | 144 | s0box_interrupt(int intno, void *dev_id) |
145 | { | 145 | { |
146 | #define MAXCOUNT 5 | 146 | #define MAXCOUNT 5 |
147 | struct IsdnCardState *cs = dev_id; | 147 | struct IsdnCardState *cs = dev_id; |
diff --git a/drivers/isdn/hisax/saphir.c b/drivers/isdn/hisax/saphir.c index d943d365890b..c99b16690fb3 100644 --- a/drivers/isdn/hisax/saphir.c +++ b/drivers/isdn/hisax/saphir.c | |||
@@ -117,7 +117,7 @@ WriteHSCX(struct IsdnCardState *cs, int hscx, u_char offset, u_char value) | |||
117 | #include "hscx_irq.c" | 117 | #include "hscx_irq.c" |
118 | 118 | ||
119 | static irqreturn_t | 119 | static irqreturn_t |
120 | saphir_interrupt(int intno, void *dev_id, struct pt_regs *regs) | 120 | saphir_interrupt(int intno, void *dev_id) |
121 | { | 121 | { |
122 | struct IsdnCardState *cs = dev_id; | 122 | struct IsdnCardState *cs = dev_id; |
123 | u_char val; | 123 | u_char val; |
diff --git a/drivers/isdn/hisax/sedlbauer.c b/drivers/isdn/hisax/sedlbauer.c index 8d8e8a299892..9522141f4351 100644 --- a/drivers/isdn/hisax/sedlbauer.c +++ b/drivers/isdn/hisax/sedlbauer.c | |||
@@ -260,7 +260,7 @@ WriteISAR(struct IsdnCardState *cs, int mode, u_char offset, u_char value) | |||
260 | #include "hscx_irq.c" | 260 | #include "hscx_irq.c" |
261 | 261 | ||
262 | static irqreturn_t | 262 | static irqreturn_t |
263 | sedlbauer_interrupt(int intno, void *dev_id, struct pt_regs *regs) | 263 | sedlbauer_interrupt(int intno, void *dev_id) |
264 | { | 264 | { |
265 | struct IsdnCardState *cs = dev_id; | 265 | struct IsdnCardState *cs = dev_id; |
266 | u_char val; | 266 | u_char val; |
@@ -306,7 +306,7 @@ sedlbauer_interrupt(int intno, void *dev_id, struct pt_regs *regs) | |||
306 | } | 306 | } |
307 | 307 | ||
308 | static irqreturn_t | 308 | static irqreturn_t |
309 | sedlbauer_interrupt_ipac(int intno, void *dev_id, struct pt_regs *regs) | 309 | sedlbauer_interrupt_ipac(int intno, void *dev_id) |
310 | { | 310 | { |
311 | struct IsdnCardState *cs = dev_id; | 311 | struct IsdnCardState *cs = dev_id; |
312 | u_char ista, val, icnt = 5; | 312 | u_char ista, val, icnt = 5; |
@@ -353,7 +353,7 @@ Start_IPAC: | |||
353 | } | 353 | } |
354 | 354 | ||
355 | static irqreturn_t | 355 | static irqreturn_t |
356 | sedlbauer_interrupt_isar(int intno, void *dev_id, struct pt_regs *regs) | 356 | sedlbauer_interrupt_isar(int intno, void *dev_id) |
357 | { | 357 | { |
358 | struct IsdnCardState *cs = dev_id; | 358 | struct IsdnCardState *cs = dev_id; |
359 | u_char val; | 359 | u_char val; |
diff --git a/drivers/isdn/hisax/sportster.c b/drivers/isdn/hisax/sportster.c index a49b694eb730..02209500b3b7 100644 --- a/drivers/isdn/hisax/sportster.c +++ b/drivers/isdn/hisax/sportster.c | |||
@@ -99,7 +99,7 @@ WriteHSCX(struct IsdnCardState *cs, int hscx, u_char offset, u_char value) | |||
99 | #include "hscx_irq.c" | 99 | #include "hscx_irq.c" |
100 | 100 | ||
101 | static irqreturn_t | 101 | static irqreturn_t |
102 | sportster_interrupt(int intno, void *dev_id, struct pt_regs *regs) | 102 | sportster_interrupt(int intno, void *dev_id) |
103 | { | 103 | { |
104 | struct IsdnCardState *cs = dev_id; | 104 | struct IsdnCardState *cs = dev_id; |
105 | u_char val; | 105 | u_char val; |
diff --git a/drivers/isdn/hisax/st5481_b.c b/drivers/isdn/hisax/st5481_b.c index aca2a3954b14..75d0f248e4ee 100644 --- a/drivers/isdn/hisax/st5481_b.c +++ b/drivers/isdn/hisax/st5481_b.c | |||
@@ -161,7 +161,7 @@ static void led_blink(struct st5481_adapter *adapter) | |||
161 | st5481_usb_device_ctrl_msg(adapter, GPIO_OUT, leds, NULL, NULL); | 161 | st5481_usb_device_ctrl_msg(adapter, GPIO_OUT, leds, NULL, NULL); |
162 | } | 162 | } |
163 | 163 | ||
164 | static void usb_b_out_complete(struct urb *urb, struct pt_regs *regs) | 164 | static void usb_b_out_complete(struct urb *urb) |
165 | { | 165 | { |
166 | struct st5481_bcs *bcs = urb->context; | 166 | struct st5481_bcs *bcs = urb->context; |
167 | struct st5481_b_out *b_out = &bcs->b_out; | 167 | struct st5481_b_out *b_out = &bcs->b_out; |
diff --git a/drivers/isdn/hisax/st5481_d.c b/drivers/isdn/hisax/st5481_d.c index 98adec440590..1d8c2618366c 100644 --- a/drivers/isdn/hisax/st5481_d.c +++ b/drivers/isdn/hisax/st5481_d.c | |||
@@ -370,7 +370,7 @@ static void fifo_reseted(void *context) | |||
370 | FsmEvent(&adapter->d_out.fsm, EV_DOUT_RESETED, NULL); | 370 | FsmEvent(&adapter->d_out.fsm, EV_DOUT_RESETED, NULL); |
371 | } | 371 | } |
372 | 372 | ||
373 | static void usb_d_out_complete(struct urb *urb, struct pt_regs *regs) | 373 | static void usb_d_out_complete(struct urb *urb) |
374 | { | 374 | { |
375 | struct st5481_adapter *adapter = urb->context; | 375 | struct st5481_adapter *adapter = urb->context; |
376 | struct st5481_d_out *d_out = &adapter->d_out; | 376 | struct st5481_d_out *d_out = &adapter->d_out; |
diff --git a/drivers/isdn/hisax/st5481_usb.c b/drivers/isdn/hisax/st5481_usb.c index b096b64b0253..ff1595122048 100644 --- a/drivers/isdn/hisax/st5481_usb.c +++ b/drivers/isdn/hisax/st5481_usb.c | |||
@@ -125,7 +125,7 @@ void st5481_ph_command(struct st5481_adapter *adapter, unsigned int command) | |||
125 | * Call the user provided completion routine and try | 125 | * Call the user provided completion routine and try |
126 | * to send the next request. | 126 | * to send the next request. |
127 | */ | 127 | */ |
128 | static void usb_ctrl_complete(struct urb *urb, struct pt_regs *regs) | 128 | static void usb_ctrl_complete(struct urb *urb) |
129 | { | 129 | { |
130 | struct st5481_adapter *adapter = urb->context; | 130 | struct st5481_adapter *adapter = urb->context; |
131 | struct st5481_ctrl *ctrl = &adapter->ctrl; | 131 | struct st5481_ctrl *ctrl = &adapter->ctrl; |
@@ -179,7 +179,7 @@ static void usb_ctrl_complete(struct urb *urb, struct pt_regs *regs) | |||
179 | * Decode the register values and schedule a private event. | 179 | * Decode the register values and schedule a private event. |
180 | * Called at interrupt. | 180 | * Called at interrupt. |
181 | */ | 181 | */ |
182 | static void usb_int_complete(struct urb *urb, struct pt_regs *regs) | 182 | static void usb_int_complete(struct urb *urb) |
183 | { | 183 | { |
184 | u8 *data = urb->transfer_buffer; | 184 | u8 *data = urb->transfer_buffer; |
185 | u8 irqbyte; | 185 | u8 irqbyte; |
@@ -483,7 +483,7 @@ void st5481_release_isocpipes(struct urb* urb[2]) | |||
483 | * called 50 times per second with 20 ISOC descriptors. | 483 | * called 50 times per second with 20 ISOC descriptors. |
484 | * Called at interrupt. | 484 | * Called at interrupt. |
485 | */ | 485 | */ |
486 | static void usb_in_complete(struct urb *urb, struct pt_regs *regs) | 486 | static void usb_in_complete(struct urb *urb) |
487 | { | 487 | { |
488 | struct st5481_in *in = urb->context; | 488 | struct st5481_in *in = urb->context; |
489 | unsigned char *ptr; | 489 | unsigned char *ptr; |
diff --git a/drivers/isdn/hisax/teleint.c b/drivers/isdn/hisax/teleint.c index e94dc6f5bd62..0909662b7458 100644 --- a/drivers/isdn/hisax/teleint.c +++ b/drivers/isdn/hisax/teleint.c | |||
@@ -157,7 +157,7 @@ WriteHFC(struct IsdnCardState *cs, int data, u_char reg, u_char value) | |||
157 | } | 157 | } |
158 | 158 | ||
159 | static irqreturn_t | 159 | static irqreturn_t |
160 | TeleInt_interrupt(int intno, void *dev_id, struct pt_regs *regs) | 160 | TeleInt_interrupt(int intno, void *dev_id) |
161 | { | 161 | { |
162 | struct IsdnCardState *cs = dev_id; | 162 | struct IsdnCardState *cs = dev_id; |
163 | u_char val; | 163 | u_char val; |
diff --git a/drivers/isdn/hisax/teles0.c b/drivers/isdn/hisax/teles0.c index f94af0930a17..48581335f43c 100644 --- a/drivers/isdn/hisax/teles0.c +++ b/drivers/isdn/hisax/teles0.c | |||
@@ -144,7 +144,7 @@ WriteHSCX(struct IsdnCardState *cs, int hscx, u_char offset, u_char value) | |||
144 | #include "hscx_irq.c" | 144 | #include "hscx_irq.c" |
145 | 145 | ||
146 | static irqreturn_t | 146 | static irqreturn_t |
147 | teles0_interrupt(int intno, void *dev_id, struct pt_regs *regs) | 147 | teles0_interrupt(int intno, void *dev_id) |
148 | { | 148 | { |
149 | struct IsdnCardState *cs = dev_id; | 149 | struct IsdnCardState *cs = dev_id; |
150 | u_char val; | 150 | u_char val; |
diff --git a/drivers/isdn/hisax/teles3.c b/drivers/isdn/hisax/teles3.c index 5cb712437da4..6a5e379e0774 100644 --- a/drivers/isdn/hisax/teles3.c +++ b/drivers/isdn/hisax/teles3.c | |||
@@ -101,7 +101,7 @@ WriteHSCX(struct IsdnCardState *cs, int hscx, u_char offset, u_char value) | |||
101 | #include "hscx_irq.c" | 101 | #include "hscx_irq.c" |
102 | 102 | ||
103 | static irqreturn_t | 103 | static irqreturn_t |
104 | teles3_interrupt(int intno, void *dev_id, struct pt_regs *regs) | 104 | teles3_interrupt(int intno, void *dev_id) |
105 | { | 105 | { |
106 | #define MAXCOUNT 5 | 106 | #define MAXCOUNT 5 |
107 | struct IsdnCardState *cs = dev_id; | 107 | struct IsdnCardState *cs = dev_id; |
diff --git a/drivers/isdn/hisax/telespci.c b/drivers/isdn/hisax/telespci.c index dca446865f24..d09f6d033f15 100644 --- a/drivers/isdn/hisax/telespci.c +++ b/drivers/isdn/hisax/telespci.c | |||
@@ -226,7 +226,7 @@ WriteHSCX(struct IsdnCardState *cs, int hscx, u_char offset, u_char value) | |||
226 | #include "hscx_irq.c" | 226 | #include "hscx_irq.c" |
227 | 227 | ||
228 | static irqreturn_t | 228 | static irqreturn_t |
229 | telespci_interrupt(int intno, void *dev_id, struct pt_regs *regs) | 229 | telespci_interrupt(int intno, void *dev_id) |
230 | { | 230 | { |
231 | struct IsdnCardState *cs = dev_id; | 231 | struct IsdnCardState *cs = dev_id; |
232 | u_char hval, ival; | 232 | u_char hval, ival; |
diff --git a/drivers/isdn/hisax/w6692.c b/drivers/isdn/hisax/w6692.c index 0595293b8659..1655341797a9 100644 --- a/drivers/isdn/hisax/w6692.c +++ b/drivers/isdn/hisax/w6692.c | |||
@@ -400,7 +400,7 @@ W6692B_interrupt(struct IsdnCardState *cs, u_char bchan) | |||
400 | } | 400 | } |
401 | 401 | ||
402 | static irqreturn_t | 402 | static irqreturn_t |
403 | W6692_interrupt(int intno, void *dev_id, struct pt_regs *regs) | 403 | W6692_interrupt(int intno, void *dev_id) |
404 | { | 404 | { |
405 | struct IsdnCardState *cs = dev_id; | 405 | struct IsdnCardState *cs = dev_id; |
406 | u_char val, exval, v1; | 406 | u_char val, exval, v1; |
@@ -715,7 +715,7 @@ dbusy_timer_handler(struct IsdnCardState *cs) | |||
715 | } | 715 | } |
716 | cs->writeW6692(cs, W_D_CMDR, W_D_CMDR_XRST); /* Transmitter reset */ | 716 | cs->writeW6692(cs, W_D_CMDR, W_D_CMDR_XRST); /* Transmitter reset */ |
717 | spin_unlock_irqrestore(&cs->lock, flags); | 717 | spin_unlock_irqrestore(&cs->lock, flags); |
718 | cs->irq_func(cs->irq, cs, NULL); | 718 | cs->irq_func(cs->irq, cs); |
719 | return; | 719 | return; |
720 | } | 720 | } |
721 | } | 721 | } |
diff --git a/drivers/isdn/hysdn/boardergo.c b/drivers/isdn/hysdn/boardergo.c index 73afebdf80bd..160f22fa5941 100644 --- a/drivers/isdn/hysdn/boardergo.c +++ b/drivers/isdn/hysdn/boardergo.c | |||
@@ -33,7 +33,7 @@ | |||
33 | /* The cards interrupt handler. Called from system */ | 33 | /* The cards interrupt handler. Called from system */ |
34 | /***************************************************/ | 34 | /***************************************************/ |
35 | static irqreturn_t | 35 | static irqreturn_t |
36 | ergo_interrupt(int intno, void *dev_id, struct pt_regs *regs) | 36 | ergo_interrupt(int intno, void *dev_id) |
37 | { | 37 | { |
38 | hysdn_card *card = dev_id; /* parameter from irq */ | 38 | hysdn_card *card = dev_id; /* parameter from irq */ |
39 | tErgDpram *dpr; | 39 | tErgDpram *dpr; |
diff --git a/drivers/isdn/pcbit/layer2.c b/drivers/isdn/pcbit/layer2.c index ba766930f088..13e7d219d1c7 100644 --- a/drivers/isdn/pcbit/layer2.c +++ b/drivers/isdn/pcbit/layer2.c | |||
@@ -512,7 +512,7 @@ pcbit_firmware_bug(struct pcbit_dev *dev) | |||
512 | } | 512 | } |
513 | 513 | ||
514 | irqreturn_t | 514 | irqreturn_t |
515 | pcbit_irq_handler(int interrupt, void *devptr, struct pt_regs *regs) | 515 | pcbit_irq_handler(int interrupt, void *devptr) |
516 | { | 516 | { |
517 | struct pcbit_dev *dev; | 517 | struct pcbit_dev *dev; |
518 | u_char info, | 518 | u_char info, |
diff --git a/drivers/isdn/pcbit/layer2.h b/drivers/isdn/pcbit/layer2.h index 0d99da3a3e2b..2ac295e1a6e5 100644 --- a/drivers/isdn/pcbit/layer2.h +++ b/drivers/isdn/pcbit/layer2.h | |||
@@ -124,7 +124,7 @@ struct frame_buf { | |||
124 | extern int pcbit_l2_write(struct pcbit_dev * dev, ulong msg, ushort refnum, | 124 | extern int pcbit_l2_write(struct pcbit_dev * dev, ulong msg, ushort refnum, |
125 | struct sk_buff *skb, unsigned short hdr_len); | 125 | struct sk_buff *skb, unsigned short hdr_len); |
126 | 126 | ||
127 | extern irqreturn_t pcbit_irq_handler(int interrupt, void *, struct pt_regs *regs); | 127 | extern irqreturn_t pcbit_irq_handler(int interrupt, void *); |
128 | 128 | ||
129 | extern struct pcbit_dev * dev_pcbit[MAX_PCBIT_CARDS]; | 129 | extern struct pcbit_dev * dev_pcbit[MAX_PCBIT_CARDS]; |
130 | 130 | ||
diff --git a/drivers/isdn/sc/init.c b/drivers/isdn/sc/init.c index a627e68023f6..222ca7c08baa 100644 --- a/drivers/isdn/sc/init.c +++ b/drivers/isdn/sc/init.c | |||
@@ -35,7 +35,7 @@ module_param_array(irq, int, NULL, 0); | |||
35 | module_param_array(ram, int, NULL, 0); | 35 | module_param_array(ram, int, NULL, 0); |
36 | module_param(do_reset, bool, 0); | 36 | module_param(do_reset, bool, 0); |
37 | 37 | ||
38 | extern irqreturn_t interrupt_handler(int, void *, struct pt_regs *); | 38 | extern irqreturn_t interrupt_handler(int, void *); |
39 | extern int sndpkt(int, int, int, struct sk_buff *); | 39 | extern int sndpkt(int, int, int, struct sk_buff *); |
40 | extern int command(isdn_ctrl *); | 40 | extern int command(isdn_ctrl *); |
41 | extern int indicate_status(int, int, ulong, char*); | 41 | extern int indicate_status(int, int, ulong, char*); |
diff --git a/drivers/isdn/sc/interrupt.c b/drivers/isdn/sc/interrupt.c index ae6263125ac2..cd17de18cb76 100644 --- a/drivers/isdn/sc/interrupt.c +++ b/drivers/isdn/sc/interrupt.c | |||
@@ -45,7 +45,7 @@ static int get_card_from_irq(int irq) | |||
45 | /* | 45 | /* |
46 | * | 46 | * |
47 | */ | 47 | */ |
48 | irqreturn_t interrupt_handler(int interrupt, void *cardptr, struct pt_regs *regs) | 48 | irqreturn_t interrupt_handler(int interrupt, void *cardptr) |
49 | { | 49 | { |
50 | 50 | ||
51 | RspMessage rcvmsg; | 51 | RspMessage rcvmsg; |
diff --git a/drivers/macintosh/adb-iop.c b/drivers/macintosh/adb-iop.c index d56d400b6aaa..17ef5d3c01b4 100644 --- a/drivers/macintosh/adb-iop.c +++ b/drivers/macintosh/adb-iop.c | |||
@@ -30,7 +30,7 @@ | |||
30 | 30 | ||
31 | /*#define DEBUG_ADB_IOP*/ | 31 | /*#define DEBUG_ADB_IOP*/ |
32 | 32 | ||
33 | extern void iop_ism_irq(int, void *, struct pt_regs *); | 33 | extern void iop_ism_irq(int, void *); |
34 | 34 | ||
35 | static struct adb_request *current_req; | 35 | static struct adb_request *current_req; |
36 | static struct adb_request *last_req; | 36 | static struct adb_request *last_req; |
@@ -78,7 +78,7 @@ static void adb_iop_end_req(struct adb_request *req, int state) | |||
78 | * This will be called when a packet has been successfully sent. | 78 | * This will be called when a packet has been successfully sent. |
79 | */ | 79 | */ |
80 | 80 | ||
81 | static void adb_iop_complete(struct iop_msg *msg, struct pt_regs *regs) | 81 | static void adb_iop_complete(struct iop_msg *msg) |
82 | { | 82 | { |
83 | struct adb_request *req; | 83 | struct adb_request *req; |
84 | uint flags; | 84 | uint flags; |
@@ -100,7 +100,7 @@ static void adb_iop_complete(struct iop_msg *msg, struct pt_regs *regs) | |||
100 | * commands or autopoll packets) are received. | 100 | * commands or autopoll packets) are received. |
101 | */ | 101 | */ |
102 | 102 | ||
103 | static void adb_iop_listen(struct iop_msg *msg, struct pt_regs *regs) | 103 | static void adb_iop_listen(struct iop_msg *msg) |
104 | { | 104 | { |
105 | struct adb_iopmsg *amsg = (struct adb_iopmsg *) msg->message; | 105 | struct adb_iopmsg *amsg = (struct adb_iopmsg *) msg->message; |
106 | struct adb_request *req; | 106 | struct adb_request *req; |
@@ -143,7 +143,7 @@ static void adb_iop_listen(struct iop_msg *msg, struct pt_regs *regs) | |||
143 | req->reply_len = amsg->count + 1; | 143 | req->reply_len = amsg->count + 1; |
144 | memcpy(req->reply, &amsg->cmd, req->reply_len); | 144 | memcpy(req->reply, &amsg->cmd, req->reply_len); |
145 | } else { | 145 | } else { |
146 | adb_input(&amsg->cmd, amsg->count + 1, regs, | 146 | adb_input(&amsg->cmd, amsg->count + 1, |
147 | amsg->flags & ADB_IOP_AUTOPOLL); | 147 | amsg->flags & ADB_IOP_AUTOPOLL); |
148 | } | 148 | } |
149 | memcpy(msg->reply, msg->message, IOP_MSG_LEN); | 149 | memcpy(msg->reply, msg->message, IOP_MSG_LEN); |
@@ -266,7 +266,7 @@ int adb_iop_autopoll(int devs) | |||
266 | void adb_iop_poll(void) | 266 | void adb_iop_poll(void) |
267 | { | 267 | { |
268 | if (adb_iop_state == idle) adb_iop_start(); | 268 | if (adb_iop_state == idle) adb_iop_start(); |
269 | iop_ism_irq(0, (void *) ADB_IOP, NULL); | 269 | iop_ism_irq(0, (void *) ADB_IOP); |
270 | } | 270 | } |
271 | 271 | ||
272 | int adb_iop_reset_bus(void) | 272 | int adb_iop_reset_bus(void) |
diff --git a/drivers/macintosh/adb.c b/drivers/macintosh/adb.c index 360f93f6fcdb..be0bd34ff6f9 100644 --- a/drivers/macintosh/adb.c +++ b/drivers/macintosh/adb.c | |||
@@ -103,7 +103,7 @@ static void adbdev_init(void); | |||
103 | static int try_handler_change(int, int); | 103 | static int try_handler_change(int, int); |
104 | 104 | ||
105 | static struct adb_handler { | 105 | static struct adb_handler { |
106 | void (*handler)(unsigned char *, int, struct pt_regs *, int); | 106 | void (*handler)(unsigned char *, int, int); |
107 | int original_address; | 107 | int original_address; |
108 | int handler_id; | 108 | int handler_id; |
109 | int busy; | 109 | int busy; |
@@ -522,7 +522,7 @@ bail: | |||
522 | the handler_id id it doesn't match. */ | 522 | the handler_id id it doesn't match. */ |
523 | int | 523 | int |
524 | adb_register(int default_id, int handler_id, struct adb_ids *ids, | 524 | adb_register(int default_id, int handler_id, struct adb_ids *ids, |
525 | void (*handler)(unsigned char *, int, struct pt_regs *, int)) | 525 | void (*handler)(unsigned char *, int, int)) |
526 | { | 526 | { |
527 | int i; | 527 | int i; |
528 | 528 | ||
@@ -570,13 +570,13 @@ adb_unregister(int index) | |||
570 | } | 570 | } |
571 | 571 | ||
572 | void | 572 | void |
573 | adb_input(unsigned char *buf, int nb, struct pt_regs *regs, int autopoll) | 573 | adb_input(unsigned char *buf, int nb, int autopoll) |
574 | { | 574 | { |
575 | int i, id; | 575 | int i, id; |
576 | static int dump_adb_input = 0; | 576 | static int dump_adb_input = 0; |
577 | unsigned long flags; | 577 | unsigned long flags; |
578 | 578 | ||
579 | void (*handler)(unsigned char *, int, struct pt_regs *, int); | 579 | void (*handler)(unsigned char *, int, int); |
580 | 580 | ||
581 | /* We skip keystrokes and mouse moves when the sleep process | 581 | /* We skip keystrokes and mouse moves when the sleep process |
582 | * has been started. We stop autopoll, but this is another security | 582 | * has been started. We stop autopoll, but this is another security |
@@ -597,7 +597,7 @@ adb_input(unsigned char *buf, int nb, struct pt_regs *regs, int autopoll) | |||
597 | adb_handler[id].busy = 1; | 597 | adb_handler[id].busy = 1; |
598 | write_unlock_irqrestore(&adb_handler_lock, flags); | 598 | write_unlock_irqrestore(&adb_handler_lock, flags); |
599 | if (handler != NULL) { | 599 | if (handler != NULL) { |
600 | (*handler)(buf, nb, regs, autopoll); | 600 | (*handler)(buf, nb, autopoll); |
601 | wmb(); | 601 | wmb(); |
602 | adb_handler[id].busy = 0; | 602 | adb_handler[id].busy = 0; |
603 | } | 603 | } |
diff --git a/drivers/macintosh/adbhid.c b/drivers/macintosh/adbhid.c index b7fb367808d8..5066e7a8ea9c 100644 --- a/drivers/macintosh/adbhid.c +++ b/drivers/macintosh/adbhid.c | |||
@@ -222,7 +222,7 @@ static struct adbhid *adbhid[16]; | |||
222 | 222 | ||
223 | static void adbhid_probe(void); | 223 | static void adbhid_probe(void); |
224 | 224 | ||
225 | static void adbhid_input_keycode(int, int, int, struct pt_regs *); | 225 | static void adbhid_input_keycode(int, int, int); |
226 | 226 | ||
227 | static void init_trackpad(int id); | 227 | static void init_trackpad(int id); |
228 | static void init_trackball(int id); | 228 | static void init_trackball(int id); |
@@ -253,7 +253,7 @@ static struct adb_ids buttons_ids; | |||
253 | #define ADBMOUSE_MACALLY2 9 /* MacAlly 2-button mouse */ | 253 | #define ADBMOUSE_MACALLY2 9 /* MacAlly 2-button mouse */ |
254 | 254 | ||
255 | static void | 255 | static void |
256 | adbhid_keyboard_input(unsigned char *data, int nb, struct pt_regs *regs, int apoll) | 256 | adbhid_keyboard_input(unsigned char *data, int nb, int apoll) |
257 | { | 257 | { |
258 | int id = (data[0] >> 4) & 0x0f; | 258 | int id = (data[0] >> 4) & 0x0f; |
259 | 259 | ||
@@ -266,13 +266,13 @@ adbhid_keyboard_input(unsigned char *data, int nb, struct pt_regs *regs, int apo | |||
266 | /* first check this is from register 0 */ | 266 | /* first check this is from register 0 */ |
267 | if (nb != 3 || (data[0] & 3) != KEYB_KEYREG) | 267 | if (nb != 3 || (data[0] & 3) != KEYB_KEYREG) |
268 | return; /* ignore it */ | 268 | return; /* ignore it */ |
269 | adbhid_input_keycode(id, data[1], 0, regs); | 269 | adbhid_input_keycode(id, data[1], 0); |
270 | if (!(data[2] == 0xff || (data[2] == 0x7f && data[1] == 0x7f))) | 270 | if (!(data[2] == 0xff || (data[2] == 0x7f && data[1] == 0x7f))) |
271 | adbhid_input_keycode(id, data[2], 0, regs); | 271 | adbhid_input_keycode(id, data[2], 0); |
272 | } | 272 | } |
273 | 273 | ||
274 | static void | 274 | static void |
275 | adbhid_input_keycode(int id, int keycode, int repeat, struct pt_regs *regs) | 275 | adbhid_input_keycode(int id, int keycode, int repeat) |
276 | { | 276 | { |
277 | struct adbhid *ahid = adbhid[id]; | 277 | struct adbhid *ahid = adbhid[id]; |
278 | int up_flag; | 278 | int up_flag; |
@@ -282,7 +282,6 @@ adbhid_input_keycode(int id, int keycode, int repeat, struct pt_regs *regs) | |||
282 | 282 | ||
283 | switch (keycode) { | 283 | switch (keycode) { |
284 | case ADB_KEY_CAPSLOCK: /* Generate down/up events for CapsLock everytime. */ | 284 | case ADB_KEY_CAPSLOCK: /* Generate down/up events for CapsLock everytime. */ |
285 | input_regs(ahid->input, regs); | ||
286 | input_report_key(ahid->input, KEY_CAPSLOCK, 1); | 285 | input_report_key(ahid->input, KEY_CAPSLOCK, 1); |
287 | input_report_key(ahid->input, KEY_CAPSLOCK, 0); | 286 | input_report_key(ahid->input, KEY_CAPSLOCK, 0); |
288 | input_sync(ahid->input); | 287 | input_sync(ahid->input); |
@@ -338,7 +337,6 @@ adbhid_input_keycode(int id, int keycode, int repeat, struct pt_regs *regs) | |||
338 | } | 337 | } |
339 | 338 | ||
340 | if (adbhid[id]->keycode[keycode]) { | 339 | if (adbhid[id]->keycode[keycode]) { |
341 | input_regs(adbhid[id]->input, regs); | ||
342 | input_report_key(adbhid[id]->input, | 340 | input_report_key(adbhid[id]->input, |
343 | adbhid[id]->keycode[keycode], !up_flag); | 341 | adbhid[id]->keycode[keycode], !up_flag); |
344 | input_sync(adbhid[id]->input); | 342 | input_sync(adbhid[id]->input); |
@@ -349,7 +347,7 @@ adbhid_input_keycode(int id, int keycode, int repeat, struct pt_regs *regs) | |||
349 | } | 347 | } |
350 | 348 | ||
351 | static void | 349 | static void |
352 | adbhid_mouse_input(unsigned char *data, int nb, struct pt_regs *regs, int autopoll) | 350 | adbhid_mouse_input(unsigned char *data, int nb, int autopoll) |
353 | { | 351 | { |
354 | int id = (data[0] >> 4) & 0x0f; | 352 | int id = (data[0] >> 4) & 0x0f; |
355 | 353 | ||
@@ -432,8 +430,6 @@ adbhid_mouse_input(unsigned char *data, int nb, struct pt_regs *regs, int autopo | |||
432 | break; | 430 | break; |
433 | } | 431 | } |
434 | 432 | ||
435 | input_regs(adbhid[id]->input, regs); | ||
436 | |||
437 | input_report_key(adbhid[id]->input, BTN_LEFT, !((data[1] >> 7) & 1)); | 433 | input_report_key(adbhid[id]->input, BTN_LEFT, !((data[1] >> 7) & 1)); |
438 | input_report_key(adbhid[id]->input, BTN_MIDDLE, !((data[2] >> 7) & 1)); | 434 | input_report_key(adbhid[id]->input, BTN_MIDDLE, !((data[2] >> 7) & 1)); |
439 | 435 | ||
@@ -449,7 +445,7 @@ adbhid_mouse_input(unsigned char *data, int nb, struct pt_regs *regs, int autopo | |||
449 | } | 445 | } |
450 | 446 | ||
451 | static void | 447 | static void |
452 | adbhid_buttons_input(unsigned char *data, int nb, struct pt_regs *regs, int autopoll) | 448 | adbhid_buttons_input(unsigned char *data, int nb, int autopoll) |
453 | { | 449 | { |
454 | int id = (data[0] >> 4) & 0x0f; | 450 | int id = (data[0] >> 4) & 0x0f; |
455 | 451 | ||
@@ -458,8 +454,6 @@ adbhid_buttons_input(unsigned char *data, int nb, struct pt_regs *regs, int auto | |||
458 | return; | 454 | return; |
459 | } | 455 | } |
460 | 456 | ||
461 | input_regs(adbhid[id]->input, regs); | ||
462 | |||
463 | switch (adbhid[id]->original_handler_id) { | 457 | switch (adbhid[id]->original_handler_id) { |
464 | default: | 458 | default: |
465 | case 0x02: /* Adjustable keyboard button device */ | 459 | case 0x02: /* Adjustable keyboard button device */ |
diff --git a/drivers/macintosh/macio-adb.c b/drivers/macintosh/macio-adb.c index 4b08852c35ee..797cef72258f 100644 --- a/drivers/macintosh/macio-adb.c +++ b/drivers/macintosh/macio-adb.c | |||
@@ -64,7 +64,7 @@ static DEFINE_SPINLOCK(macio_lock); | |||
64 | 64 | ||
65 | static int macio_probe(void); | 65 | static int macio_probe(void); |
66 | static int macio_init(void); | 66 | static int macio_init(void); |
67 | static irqreturn_t macio_adb_interrupt(int irq, void *arg, struct pt_regs *regs); | 67 | static irqreturn_t macio_adb_interrupt(int irq, void *arg); |
68 | static int macio_send_request(struct adb_request *req, int sync); | 68 | static int macio_send_request(struct adb_request *req, int sync); |
69 | static int macio_adb_autopoll(int devs); | 69 | static int macio_adb_autopoll(int devs); |
70 | static void macio_adb_poll(void); | 70 | static void macio_adb_poll(void); |
@@ -189,8 +189,7 @@ static int macio_send_request(struct adb_request *req, int sync) | |||
189 | return 0; | 189 | return 0; |
190 | } | 190 | } |
191 | 191 | ||
192 | static irqreturn_t macio_adb_interrupt(int irq, void *arg, | 192 | static irqreturn_t macio_adb_interrupt(int irq, void *arg) |
193 | struct pt_regs *regs) | ||
194 | { | 193 | { |
195 | int i, n, err; | 194 | int i, n, err; |
196 | struct adb_request *req = NULL; | 195 | struct adb_request *req = NULL; |
@@ -260,7 +259,7 @@ static irqreturn_t macio_adb_interrupt(int irq, void *arg, | |||
260 | (*done)(req); | 259 | (*done)(req); |
261 | } | 260 | } |
262 | if (ibuf_len) | 261 | if (ibuf_len) |
263 | adb_input(ibuf, ibuf_len, regs, autopoll); | 262 | adb_input(ibuf, ibuf_len, autopoll); |
264 | 263 | ||
265 | return IRQ_RETVAL(handled); | 264 | return IRQ_RETVAL(handled); |
266 | } | 265 | } |
@@ -271,6 +270,6 @@ static void macio_adb_poll(void) | |||
271 | 270 | ||
272 | local_irq_save(flags); | 271 | local_irq_save(flags); |
273 | if (in_8(&adb->intr.r) != 0) | 272 | if (in_8(&adb->intr.r) != 0) |
274 | macio_adb_interrupt(0, NULL, NULL); | 273 | macio_adb_interrupt(0, NULL); |
275 | local_irq_restore(flags); | 274 | local_irq_restore(flags); |
276 | } | 275 | } |
diff --git a/drivers/macintosh/smu.c b/drivers/macintosh/smu.c index c0f9d82e4662..ade25b3fbb35 100644 --- a/drivers/macintosh/smu.c +++ b/drivers/macintosh/smu.c | |||
@@ -145,7 +145,7 @@ static void smu_start_cmd(void) | |||
145 | } | 145 | } |
146 | 146 | ||
147 | 147 | ||
148 | static irqreturn_t smu_db_intr(int irq, void *arg, struct pt_regs *regs) | 148 | static irqreturn_t smu_db_intr(int irq, void *arg) |
149 | { | 149 | { |
150 | unsigned long flags; | 150 | unsigned long flags; |
151 | struct smu_cmd *cmd; | 151 | struct smu_cmd *cmd; |
@@ -224,7 +224,7 @@ static irqreturn_t smu_db_intr(int irq, void *arg, struct pt_regs *regs) | |||
224 | } | 224 | } |
225 | 225 | ||
226 | 226 | ||
227 | static irqreturn_t smu_msg_intr(int irq, void *arg, struct pt_regs *regs) | 227 | static irqreturn_t smu_msg_intr(int irq, void *arg) |
228 | { | 228 | { |
229 | /* I don't quite know what to do with this one, we seem to never | 229 | /* I don't quite know what to do with this one, we seem to never |
230 | * receive it, so I suspect we have to arm it someway in the SMU | 230 | * receive it, so I suspect we have to arm it someway in the SMU |
@@ -309,7 +309,7 @@ void smu_poll(void) | |||
309 | 309 | ||
310 | gpio = pmac_do_feature_call(PMAC_FTR_READ_GPIO, NULL, smu->doorbell); | 310 | gpio = pmac_do_feature_call(PMAC_FTR_READ_GPIO, NULL, smu->doorbell); |
311 | if ((gpio & 7) == 7) | 311 | if ((gpio & 7) == 7) |
312 | smu_db_intr(smu->db_irq, smu, NULL); | 312 | smu_db_intr(smu->db_irq, smu); |
313 | } | 313 | } |
314 | EXPORT_SYMBOL(smu_poll); | 314 | EXPORT_SYMBOL(smu_poll); |
315 | 315 | ||
diff --git a/drivers/macintosh/via-cuda.c b/drivers/macintosh/via-cuda.c index 7512d1c15207..df66291b1322 100644 --- a/drivers/macintosh/via-cuda.c +++ b/drivers/macintosh/via-cuda.c | |||
@@ -98,8 +98,8 @@ static int cuda_reset_adb_bus(void); | |||
98 | 98 | ||
99 | static int cuda_init_via(void); | 99 | static int cuda_init_via(void); |
100 | static void cuda_start(void); | 100 | static void cuda_start(void); |
101 | static irqreturn_t cuda_interrupt(int irq, void *arg, struct pt_regs *regs); | 101 | static irqreturn_t cuda_interrupt(int irq, void *arg); |
102 | static void cuda_input(unsigned char *buf, int nb, struct pt_regs *regs); | 102 | static void cuda_input(unsigned char *buf, int nb); |
103 | void cuda_poll(void); | 103 | void cuda_poll(void); |
104 | static int cuda_write(struct adb_request *req); | 104 | static int cuda_write(struct adb_request *req); |
105 | 105 | ||
@@ -437,12 +437,12 @@ cuda_poll(void) | |||
437 | * disable_irq(), would that work on m68k ? --BenH | 437 | * disable_irq(), would that work on m68k ? --BenH |
438 | */ | 438 | */ |
439 | local_irq_save(flags); | 439 | local_irq_save(flags); |
440 | cuda_interrupt(0, NULL, NULL); | 440 | cuda_interrupt(0, NULL); |
441 | local_irq_restore(flags); | 441 | local_irq_restore(flags); |
442 | } | 442 | } |
443 | 443 | ||
444 | static irqreturn_t | 444 | static irqreturn_t |
445 | cuda_interrupt(int irq, void *arg, struct pt_regs *regs) | 445 | cuda_interrupt(int irq, void *arg) |
446 | { | 446 | { |
447 | int status; | 447 | int status; |
448 | struct adb_request *req = NULL; | 448 | struct adb_request *req = NULL; |
@@ -594,12 +594,12 @@ cuda_interrupt(int irq, void *arg, struct pt_regs *regs) | |||
594 | (*done)(req); | 594 | (*done)(req); |
595 | } | 595 | } |
596 | if (ibuf_len) | 596 | if (ibuf_len) |
597 | cuda_input(ibuf, ibuf_len, regs); | 597 | cuda_input(ibuf, ibuf_len); |
598 | return IRQ_HANDLED; | 598 | return IRQ_HANDLED; |
599 | } | 599 | } |
600 | 600 | ||
601 | static void | 601 | static void |
602 | cuda_input(unsigned char *buf, int nb, struct pt_regs *regs) | 602 | cuda_input(unsigned char *buf, int nb) |
603 | { | 603 | { |
604 | int i; | 604 | int i; |
605 | 605 | ||
@@ -615,7 +615,7 @@ cuda_input(unsigned char *buf, int nb, struct pt_regs *regs) | |||
615 | } | 615 | } |
616 | #endif /* CONFIG_XMON */ | 616 | #endif /* CONFIG_XMON */ |
617 | #ifdef CONFIG_ADB | 617 | #ifdef CONFIG_ADB |
618 | adb_input(buf+2, nb-2, regs, buf[1] & 0x40); | 618 | adb_input(buf+2, nb-2, buf[1] & 0x40); |
619 | #endif /* CONFIG_ADB */ | 619 | #endif /* CONFIG_ADB */ |
620 | break; | 620 | break; |
621 | 621 | ||
diff --git a/drivers/macintosh/via-macii.c b/drivers/macintosh/via-macii.c index 2a2ffe060169..5d88d5b0ad99 100644 --- a/drivers/macintosh/via-macii.c +++ b/drivers/macintosh/via-macii.c | |||
@@ -77,7 +77,7 @@ static volatile unsigned char *via; | |||
77 | 77 | ||
78 | static int macii_init_via(void); | 78 | static int macii_init_via(void); |
79 | static void macii_start(void); | 79 | static void macii_start(void); |
80 | static irqreturn_t macii_interrupt(int irq, void *arg, struct pt_regs *regs); | 80 | static irqreturn_t macii_interrupt(int irq, void *arg); |
81 | static void macii_retransmit(int); | 81 | static void macii_retransmit(int); |
82 | static void macii_queue_poll(void); | 82 | static void macii_queue_poll(void); |
83 | 83 | ||
@@ -295,7 +295,7 @@ static void macii_poll(void) | |||
295 | unsigned long flags; | 295 | unsigned long flags; |
296 | 296 | ||
297 | local_irq_save(flags); | 297 | local_irq_save(flags); |
298 | if (via[IFR] & SR_INT) macii_interrupt(0, NULL, NULL); | 298 | if (via[IFR] & SR_INT) macii_interrupt(0, NULL); |
299 | local_irq_restore(flags); | 299 | local_irq_restore(flags); |
300 | } | 300 | } |
301 | 301 | ||
@@ -410,7 +410,7 @@ static void macii_start(void) | |||
410 | * Note: As of 21/10/97, the MacII ADB part works including timeout detection | 410 | * Note: As of 21/10/97, the MacII ADB part works including timeout detection |
411 | * and retransmit (Talk to the last active device). | 411 | * and retransmit (Talk to the last active device). |
412 | */ | 412 | */ |
413 | static irqreturn_t macii_interrupt(int irq, void *arg, struct pt_regs *regs) | 413 | static irqreturn_t macii_interrupt(int irq, void *arg) |
414 | { | 414 | { |
415 | int x, adbdir; | 415 | int x, adbdir; |
416 | unsigned long flags; | 416 | unsigned long flags; |
@@ -602,8 +602,7 @@ static irqreturn_t macii_interrupt(int irq, void *arg, struct pt_regs *regs) | |||
602 | current_req = req->next; | 602 | current_req = req->next; |
603 | if (req->done) (*req->done)(req); | 603 | if (req->done) (*req->done)(req); |
604 | } else { | 604 | } else { |
605 | adb_input(reply_buf, reply_ptr - reply_buf, | 605 | adb_input(reply_buf, reply_ptr - reply_buf, 0); |
606 | regs, 0); | ||
607 | } | 606 | } |
608 | 607 | ||
609 | /* | 608 | /* |
diff --git a/drivers/macintosh/via-maciisi.c b/drivers/macintosh/via-maciisi.c index 0129fcc3b183..1f0aa5dc9aa5 100644 --- a/drivers/macintosh/via-maciisi.c +++ b/drivers/macintosh/via-maciisi.c | |||
@@ -84,8 +84,8 @@ static int maciisi_init(void); | |||
84 | static int maciisi_send_request(struct adb_request* req, int sync); | 84 | static int maciisi_send_request(struct adb_request* req, int sync); |
85 | static void maciisi_sync(struct adb_request *req); | 85 | static void maciisi_sync(struct adb_request *req); |
86 | static int maciisi_write(struct adb_request* req); | 86 | static int maciisi_write(struct adb_request* req); |
87 | static irqreturn_t maciisi_interrupt(int irq, void* arg, struct pt_regs* regs); | 87 | static irqreturn_t maciisi_interrupt(int irq, void* arg); |
88 | static void maciisi_input(unsigned char *buf, int nb, struct pt_regs *regs); | 88 | static void maciisi_input(unsigned char *buf, int nb); |
89 | static int maciisi_init_via(void); | 89 | static int maciisi_init_via(void); |
90 | static void maciisi_poll(void); | 90 | static void maciisi_poll(void); |
91 | static int maciisi_start(void); | 91 | static int maciisi_start(void); |
@@ -421,7 +421,7 @@ maciisi_poll(void) | |||
421 | 421 | ||
422 | local_irq_save(flags); | 422 | local_irq_save(flags); |
423 | if (via[IFR] & SR_INT) { | 423 | if (via[IFR] & SR_INT) { |
424 | maciisi_interrupt(0, NULL, NULL); | 424 | maciisi_interrupt(0, NULL); |
425 | } | 425 | } |
426 | else /* avoid calling this function too quickly in a loop */ | 426 | else /* avoid calling this function too quickly in a loop */ |
427 | udelay(ADB_DELAY); | 427 | udelay(ADB_DELAY); |
@@ -433,7 +433,7 @@ maciisi_poll(void) | |||
433 | register is either full or empty. In practice, I have no idea what | 433 | register is either full or empty. In practice, I have no idea what |
434 | it means :( */ | 434 | it means :( */ |
435 | static irqreturn_t | 435 | static irqreturn_t |
436 | maciisi_interrupt(int irq, void* arg, struct pt_regs* regs) | 436 | maciisi_interrupt(int irq, void* arg) |
437 | { | 437 | { |
438 | int status; | 438 | int status; |
439 | struct adb_request *req; | 439 | struct adb_request *req; |
@@ -612,7 +612,7 @@ maciisi_interrupt(int irq, void* arg, struct pt_regs* regs) | |||
612 | /* Obviously, we got it */ | 612 | /* Obviously, we got it */ |
613 | reading_reply = 0; | 613 | reading_reply = 0; |
614 | } else { | 614 | } else { |
615 | maciisi_input(maciisi_rbuf, reply_ptr - maciisi_rbuf, regs); | 615 | maciisi_input(maciisi_rbuf, reply_ptr - maciisi_rbuf); |
616 | } | 616 | } |
617 | maciisi_state = idle; | 617 | maciisi_state = idle; |
618 | status = via[B] & (TIP|TREQ); | 618 | status = via[B] & (TIP|TREQ); |
@@ -657,7 +657,7 @@ maciisi_interrupt(int irq, void* arg, struct pt_regs* regs) | |||
657 | } | 657 | } |
658 | 658 | ||
659 | static void | 659 | static void |
660 | maciisi_input(unsigned char *buf, int nb, struct pt_regs *regs) | 660 | maciisi_input(unsigned char *buf, int nb) |
661 | { | 661 | { |
662 | #ifdef DEBUG_MACIISI_ADB | 662 | #ifdef DEBUG_MACIISI_ADB |
663 | int i; | 663 | int i; |
@@ -665,7 +665,7 @@ maciisi_input(unsigned char *buf, int nb, struct pt_regs *regs) | |||
665 | 665 | ||
666 | switch (buf[0]) { | 666 | switch (buf[0]) { |
667 | case ADB_PACKET: | 667 | case ADB_PACKET: |
668 | adb_input(buf+2, nb-2, regs, buf[1] & 0x40); | 668 | adb_input(buf+2, nb-2, buf[1] & 0x40); |
669 | break; | 669 | break; |
670 | default: | 670 | default: |
671 | #ifdef DEBUG_MACIISI_ADB | 671 | #ifdef DEBUG_MACIISI_ADB |
diff --git a/drivers/macintosh/via-pmu.c b/drivers/macintosh/via-pmu.c index 4f04fd0956a0..e63ea1c1f3c1 100644 --- a/drivers/macintosh/via-pmu.c +++ b/drivers/macintosh/via-pmu.c | |||
@@ -191,8 +191,8 @@ static int pmu_adb_reset_bus(void); | |||
191 | 191 | ||
192 | static int init_pmu(void); | 192 | static int init_pmu(void); |
193 | static void pmu_start(void); | 193 | static void pmu_start(void); |
194 | static irqreturn_t via_pmu_interrupt(int irq, void *arg, struct pt_regs *regs); | 194 | static irqreturn_t via_pmu_interrupt(int irq, void *arg); |
195 | static irqreturn_t gpio1_interrupt(int irq, void *arg, struct pt_regs *regs); | 195 | static irqreturn_t gpio1_interrupt(int irq, void *arg); |
196 | static int proc_get_info(char *page, char **start, off_t off, | 196 | static int proc_get_info(char *page, char **start, off_t off, |
197 | int count, int *eof, void *data); | 197 | int count, int *eof, void *data); |
198 | static int proc_get_irqstats(char *page, char **start, off_t off, | 198 | static int proc_get_irqstats(char *page, char **start, off_t off, |
@@ -555,7 +555,7 @@ init_pmu(void) | |||
555 | } | 555 | } |
556 | if (pmu_state == idle) | 556 | if (pmu_state == idle) |
557 | adb_int_pending = 1; | 557 | adb_int_pending = 1; |
558 | via_pmu_interrupt(0, NULL, NULL); | 558 | via_pmu_interrupt(0, NULL); |
559 | udelay(10); | 559 | udelay(10); |
560 | } | 560 | } |
561 | 561 | ||
@@ -1215,7 +1215,7 @@ pmu_poll(void) | |||
1215 | return; | 1215 | return; |
1216 | if (disable_poll) | 1216 | if (disable_poll) |
1217 | return; | 1217 | return; |
1218 | via_pmu_interrupt(0, NULL, NULL); | 1218 | via_pmu_interrupt(0, NULL); |
1219 | } | 1219 | } |
1220 | 1220 | ||
1221 | void | 1221 | void |
@@ -1228,7 +1228,7 @@ pmu_poll_adb(void) | |||
1228 | /* Kicks ADB read when PMU is suspended */ | 1228 | /* Kicks ADB read when PMU is suspended */ |
1229 | adb_int_pending = 1; | 1229 | adb_int_pending = 1; |
1230 | do { | 1230 | do { |
1231 | via_pmu_interrupt(0, NULL, NULL); | 1231 | via_pmu_interrupt(0, NULL); |
1232 | } while (pmu_suspended && (adb_int_pending || pmu_state != idle | 1232 | } while (pmu_suspended && (adb_int_pending || pmu_state != idle |
1233 | || req_awaiting_reply)); | 1233 | || req_awaiting_reply)); |
1234 | } | 1234 | } |
@@ -1239,7 +1239,7 @@ pmu_wait_complete(struct adb_request *req) | |||
1239 | if (!via) | 1239 | if (!via) |
1240 | return; | 1240 | return; |
1241 | while((pmu_state != idle && pmu_state != locked) || !req->complete) | 1241 | while((pmu_state != idle && pmu_state != locked) || !req->complete) |
1242 | via_pmu_interrupt(0, NULL, NULL); | 1242 | via_pmu_interrupt(0, NULL); |
1243 | } | 1243 | } |
1244 | 1244 | ||
1245 | /* This function loops until the PMU is idle and prevents it from | 1245 | /* This function loops until the PMU is idle and prevents it from |
@@ -1268,7 +1268,7 @@ pmu_suspend(void) | |||
1268 | spin_unlock_irqrestore(&pmu_lock, flags); | 1268 | spin_unlock_irqrestore(&pmu_lock, flags); |
1269 | if (req_awaiting_reply) | 1269 | if (req_awaiting_reply) |
1270 | adb_int_pending = 1; | 1270 | adb_int_pending = 1; |
1271 | via_pmu_interrupt(0, NULL, NULL); | 1271 | via_pmu_interrupt(0, NULL); |
1272 | spin_lock_irqsave(&pmu_lock, flags); | 1272 | spin_lock_irqsave(&pmu_lock, flags); |
1273 | if (!adb_int_pending && pmu_state == idle && !req_awaiting_reply) { | 1273 | if (!adb_int_pending && pmu_state == idle && !req_awaiting_reply) { |
1274 | #ifdef SUSPEND_USES_PMU | 1274 | #ifdef SUSPEND_USES_PMU |
@@ -1318,7 +1318,7 @@ pmu_resume(void) | |||
1318 | 1318 | ||
1319 | /* Interrupt data could be the result data from an ADB cmd */ | 1319 | /* Interrupt data could be the result data from an ADB cmd */ |
1320 | static void | 1320 | static void |
1321 | pmu_handle_data(unsigned char *data, int len, struct pt_regs *regs) | 1321 | pmu_handle_data(unsigned char *data, int len) |
1322 | { | 1322 | { |
1323 | unsigned char ints, pirq; | 1323 | unsigned char ints, pirq; |
1324 | int i = 0; | 1324 | int i = 0; |
@@ -1393,7 +1393,7 @@ next: | |||
1393 | if (!(pmu_kind == PMU_OHARE_BASED && len == 4 | 1393 | if (!(pmu_kind == PMU_OHARE_BASED && len == 4 |
1394 | && data[1] == 0x2c && data[3] == 0xff | 1394 | && data[1] == 0x2c && data[3] == 0xff |
1395 | && (data[2] & ~1) == 0xf4)) | 1395 | && (data[2] & ~1) == 0xf4)) |
1396 | adb_input(data+1, len-1, regs, 1); | 1396 | adb_input(data+1, len-1, 1); |
1397 | #endif /* CONFIG_ADB */ | 1397 | #endif /* CONFIG_ADB */ |
1398 | } | 1398 | } |
1399 | } | 1399 | } |
@@ -1431,7 +1431,7 @@ next: | |||
1431 | } | 1431 | } |
1432 | 1432 | ||
1433 | static struct adb_request* | 1433 | static struct adb_request* |
1434 | pmu_sr_intr(struct pt_regs *regs) | 1434 | pmu_sr_intr(void) |
1435 | { | 1435 | { |
1436 | struct adb_request *req; | 1436 | struct adb_request *req; |
1437 | int bite = 0; | 1437 | int bite = 0; |
@@ -1537,7 +1537,7 @@ pmu_sr_intr(struct pt_regs *regs) | |||
1537 | } | 1537 | } |
1538 | 1538 | ||
1539 | static irqreturn_t | 1539 | static irqreturn_t |
1540 | via_pmu_interrupt(int irq, void *arg, struct pt_regs *regs) | 1540 | via_pmu_interrupt(int irq, void *arg) |
1541 | { | 1541 | { |
1542 | unsigned long flags; | 1542 | unsigned long flags; |
1543 | int intr; | 1543 | int intr; |
@@ -1567,7 +1567,7 @@ via_pmu_interrupt(int irq, void *arg, struct pt_regs *regs) | |||
1567 | pmu_irq_stats[0]++; | 1567 | pmu_irq_stats[0]++; |
1568 | } | 1568 | } |
1569 | if (intr & SR_INT) { | 1569 | if (intr & SR_INT) { |
1570 | req = pmu_sr_intr(regs); | 1570 | req = pmu_sr_intr(); |
1571 | if (req) | 1571 | if (req) |
1572 | break; | 1572 | break; |
1573 | } | 1573 | } |
@@ -1613,7 +1613,7 @@ no_free_slot: | |||
1613 | 1613 | ||
1614 | /* Deal with interrupt datas outside of the lock */ | 1614 | /* Deal with interrupt datas outside of the lock */ |
1615 | if (int_data >= 0) { | 1615 | if (int_data >= 0) { |
1616 | pmu_handle_data(interrupt_data[int_data], interrupt_data_len[int_data], regs); | 1616 | pmu_handle_data(interrupt_data[int_data], interrupt_data_len[int_data]); |
1617 | spin_lock_irqsave(&pmu_lock, flags); | 1617 | spin_lock_irqsave(&pmu_lock, flags); |
1618 | ++disable_poll; | 1618 | ++disable_poll; |
1619 | int_data_state[int_data] = int_data_empty; | 1619 | int_data_state[int_data] = int_data_empty; |
@@ -1638,7 +1638,7 @@ pmu_unlock(void) | |||
1638 | 1638 | ||
1639 | 1639 | ||
1640 | static irqreturn_t | 1640 | static irqreturn_t |
1641 | gpio1_interrupt(int irq, void *arg, struct pt_regs *regs) | 1641 | gpio1_interrupt(int irq, void *arg) |
1642 | { | 1642 | { |
1643 | unsigned long flags; | 1643 | unsigned long flags; |
1644 | 1644 | ||
@@ -1651,7 +1651,7 @@ gpio1_interrupt(int irq, void *arg, struct pt_regs *regs) | |||
1651 | pmu_irq_stats[1]++; | 1651 | pmu_irq_stats[1]++; |
1652 | adb_int_pending = 1; | 1652 | adb_int_pending = 1; |
1653 | spin_unlock_irqrestore(&pmu_lock, flags); | 1653 | spin_unlock_irqrestore(&pmu_lock, flags); |
1654 | via_pmu_interrupt(0, NULL, NULL); | 1654 | via_pmu_interrupt(0, NULL); |
1655 | return IRQ_HANDLED; | 1655 | return IRQ_HANDLED; |
1656 | } | 1656 | } |
1657 | return IRQ_NONE; | 1657 | return IRQ_NONE; |
@@ -2116,7 +2116,7 @@ pmac_wakeup_devices(void) | |||
2116 | 2116 | ||
2117 | /* Force a poll of ADB interrupts */ | 2117 | /* Force a poll of ADB interrupts */ |
2118 | adb_int_pending = 1; | 2118 | adb_int_pending = 1; |
2119 | via_pmu_interrupt(0, NULL, NULL); | 2119 | via_pmu_interrupt(0, NULL); |
2120 | 2120 | ||
2121 | /* Restart jiffies & scheduling */ | 2121 | /* Restart jiffies & scheduling */ |
2122 | wakeup_decrementer(); | 2122 | wakeup_decrementer(); |
diff --git a/drivers/macintosh/via-pmu68k.c b/drivers/macintosh/via-pmu68k.c index 9f4eff1d1a0f..d9986f3a3fbf 100644 --- a/drivers/macintosh/via-pmu68k.c +++ b/drivers/macintosh/via-pmu68k.c | |||
@@ -107,7 +107,7 @@ BLOCKING_NOTIFIER_HEAD(sleep_notifier_list); | |||
107 | static int pmu_probe(void); | 107 | static int pmu_probe(void); |
108 | static int pmu_init(void); | 108 | static int pmu_init(void); |
109 | static void pmu_start(void); | 109 | static void pmu_start(void); |
110 | static irqreturn_t pmu_interrupt(int irq, void *arg, struct pt_regs *regs); | 110 | static irqreturn_t pmu_interrupt(int irq, void *arg); |
111 | static int pmu_send_request(struct adb_request *req, int sync); | 111 | static int pmu_send_request(struct adb_request *req, int sync); |
112 | static int pmu_autopoll(int devs); | 112 | static int pmu_autopoll(int devs); |
113 | void pmu_poll(void); | 113 | void pmu_poll(void); |
@@ -118,8 +118,7 @@ static void pmu_start(void); | |||
118 | static void send_byte(int x); | 118 | static void send_byte(int x); |
119 | static void recv_byte(void); | 119 | static void recv_byte(void); |
120 | static void pmu_done(struct adb_request *req); | 120 | static void pmu_done(struct adb_request *req); |
121 | static void pmu_handle_data(unsigned char *data, int len, | 121 | static void pmu_handle_data(unsigned char *data, int len); |
122 | struct pt_regs *regs); | ||
123 | static void set_volume(int level); | 122 | static void set_volume(int level); |
124 | static void pmu_enable_backlight(int on); | 123 | static void pmu_enable_backlight(int on); |
125 | static void pmu_set_brightness(int level); | 124 | static void pmu_set_brightness(int level); |
@@ -222,7 +221,7 @@ pmu_init(void) | |||
222 | } | 221 | } |
223 | if (pmu_state == idle) { | 222 | if (pmu_state == idle) { |
224 | adb_int_pending = 1; | 223 | adb_int_pending = 1; |
225 | pmu_interrupt(0, NULL, NULL); | 224 | pmu_interrupt(0, NULL); |
226 | } | 225 | } |
227 | pmu_poll(); | 226 | pmu_poll(); |
228 | udelay(10); | 227 | udelay(10); |
@@ -563,17 +562,17 @@ pmu_poll(void) | |||
563 | local_irq_save(flags); | 562 | local_irq_save(flags); |
564 | if (via1[IFR] & SR_INT) { | 563 | if (via1[IFR] & SR_INT) { |
565 | via1[IFR] = SR_INT; | 564 | via1[IFR] = SR_INT; |
566 | pmu_interrupt(IRQ_MAC_ADB_SR, NULL, NULL); | 565 | pmu_interrupt(IRQ_MAC_ADB_SR, NULL); |
567 | } | 566 | } |
568 | if (via1[IFR] & CB1_INT) { | 567 | if (via1[IFR] & CB1_INT) { |
569 | via1[IFR] = CB1_INT; | 568 | via1[IFR] = CB1_INT; |
570 | pmu_interrupt(IRQ_MAC_ADB_CL, NULL, NULL); | 569 | pmu_interrupt(IRQ_MAC_ADB_CL, NULL); |
571 | } | 570 | } |
572 | local_irq_restore(flags); | 571 | local_irq_restore(flags); |
573 | } | 572 | } |
574 | 573 | ||
575 | static irqreturn_t | 574 | static irqreturn_t |
576 | pmu_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 575 | pmu_interrupt(int irq, void *dev_id) |
577 | { | 576 | { |
578 | struct adb_request *req; | 577 | struct adb_request *req; |
579 | int timeout, bite = 0; /* to prevent compiler warning */ | 578 | int timeout, bite = 0; /* to prevent compiler warning */ |
@@ -657,7 +656,7 @@ pmu_interrupt(int irq, void *dev_id, struct pt_regs *regs) | |||
657 | } | 656 | } |
658 | 657 | ||
659 | if (pmu_state == reading_intr) { | 658 | if (pmu_state == reading_intr) { |
660 | pmu_handle_data(interrupt_data, data_index, regs); | 659 | pmu_handle_data(interrupt_data, data_index); |
661 | } else { | 660 | } else { |
662 | req = current_req; | 661 | req = current_req; |
663 | current_req = req->next; | 662 | current_req = req->next; |
@@ -701,7 +700,7 @@ pmu_done(struct adb_request *req) | |||
701 | 700 | ||
702 | /* Interrupt data could be the result data from an ADB cmd */ | 701 | /* Interrupt data could be the result data from an ADB cmd */ |
703 | static void | 702 | static void |
704 | pmu_handle_data(unsigned char *data, int len, struct pt_regs *regs) | 703 | pmu_handle_data(unsigned char *data, int len) |
705 | { | 704 | { |
706 | static int show_pmu_ints = 1; | 705 | static int show_pmu_ints = 1; |
707 | 706 | ||
@@ -726,7 +725,7 @@ pmu_handle_data(unsigned char *data, int len, struct pt_regs *regs) | |||
726 | } | 725 | } |
727 | pmu_done(req); | 726 | pmu_done(req); |
728 | } else { | 727 | } else { |
729 | adb_input(data+1, len-1, regs, 1); | 728 | adb_input(data+1, len-1, 1); |
730 | } | 729 | } |
731 | } else { | 730 | } else { |
732 | if (data[0] == 0x08 && len == 3) { | 731 | if (data[0] == 0x08 && len == 3) { |
diff --git a/drivers/macintosh/windfarm_pm112.c b/drivers/macintosh/windfarm_pm112.c index ef66bf2778ec..fa4b13f89369 100644 --- a/drivers/macintosh/windfarm_pm112.c +++ b/drivers/macintosh/windfarm_pm112.c | |||
@@ -650,24 +650,26 @@ static struct notifier_block pm112_events = { | |||
650 | .notifier_call = pm112_wf_notify, | 650 | .notifier_call = pm112_wf_notify, |
651 | }; | 651 | }; |
652 | 652 | ||
653 | static int wf_pm112_probe(struct device *dev) | 653 | static int wf_pm112_probe(struct platform_device *dev) |
654 | { | 654 | { |
655 | wf_register_client(&pm112_events); | 655 | wf_register_client(&pm112_events); |
656 | return 0; | 656 | return 0; |
657 | } | 657 | } |
658 | 658 | ||
659 | static int wf_pm112_remove(struct device *dev) | 659 | static int __devexit wf_pm112_remove(struct platform_device *dev) |
660 | { | 660 | { |
661 | wf_unregister_client(&pm112_events); | 661 | wf_unregister_client(&pm112_events); |
662 | /* should release all sensors and controls */ | 662 | /* should release all sensors and controls */ |
663 | return 0; | 663 | return 0; |
664 | } | 664 | } |
665 | 665 | ||
666 | static struct device_driver wf_pm112_driver = { | 666 | static struct platform_driver wf_pm112_driver = { |
667 | .name = "windfarm", | ||
668 | .bus = &platform_bus_type, | ||
669 | .probe = wf_pm112_probe, | 667 | .probe = wf_pm112_probe, |
670 | .remove = wf_pm112_remove, | 668 | .remove = __devexit_p(wf_pm112_remove), |
669 | .driver = { | ||
670 | .name = "windfarm", | ||
671 | .bus = &platform_bus_type, | ||
672 | }, | ||
671 | }; | 673 | }; |
672 | 674 | ||
673 | static int __init wf_pm112_init(void) | 675 | static int __init wf_pm112_init(void) |
@@ -683,13 +685,13 @@ static int __init wf_pm112_init(void) | |||
683 | ++nr_cores; | 685 | ++nr_cores; |
684 | 686 | ||
685 | printk(KERN_INFO "windfarm: initializing for dual-core desktop G5\n"); | 687 | printk(KERN_INFO "windfarm: initializing for dual-core desktop G5\n"); |
686 | driver_register(&wf_pm112_driver); | 688 | platform_driver_register(&wf_pm112_driver); |
687 | return 0; | 689 | return 0; |
688 | } | 690 | } |
689 | 691 | ||
690 | static void __exit wf_pm112_exit(void) | 692 | static void __exit wf_pm112_exit(void) |
691 | { | 693 | { |
692 | driver_unregister(&wf_pm112_driver); | 694 | platform_driver_unregister(&wf_pm112_driver); |
693 | } | 695 | } |
694 | 696 | ||
695 | module_init(wf_pm112_init); | 697 | module_init(wf_pm112_init); |
diff --git a/drivers/macintosh/windfarm_pm81.c b/drivers/macintosh/windfarm_pm81.c index 2ff546e4c92f..2a944851b8e1 100644 --- a/drivers/macintosh/windfarm_pm81.c +++ b/drivers/macintosh/windfarm_pm81.c | |||
@@ -131,8 +131,6 @@ | |||
131 | 131 | ||
132 | static int wf_smu_mach_model; /* machine model id */ | 132 | static int wf_smu_mach_model; /* machine model id */ |
133 | 133 | ||
134 | static struct device *wf_smu_dev; | ||
135 | |||
136 | /* Controls & sensors */ | 134 | /* Controls & sensors */ |
137 | static struct wf_sensor *sensor_cpu_power; | 135 | static struct wf_sensor *sensor_cpu_power; |
138 | static struct wf_sensor *sensor_cpu_temp; | 136 | static struct wf_sensor *sensor_cpu_temp; |
@@ -717,16 +715,14 @@ static int wf_init_pm(void) | |||
717 | return 0; | 715 | return 0; |
718 | } | 716 | } |
719 | 717 | ||
720 | static int wf_smu_probe(struct device *ddev) | 718 | static int wf_smu_probe(struct platform_device *ddev) |
721 | { | 719 | { |
722 | wf_smu_dev = ddev; | ||
723 | |||
724 | wf_register_client(&wf_smu_events); | 720 | wf_register_client(&wf_smu_events); |
725 | 721 | ||
726 | return 0; | 722 | return 0; |
727 | } | 723 | } |
728 | 724 | ||
729 | static int wf_smu_remove(struct device *ddev) | 725 | static int __devexit wf_smu_remove(struct platform_device *ddev) |
730 | { | 726 | { |
731 | wf_unregister_client(&wf_smu_events); | 727 | wf_unregister_client(&wf_smu_events); |
732 | 728 | ||
@@ -766,16 +762,16 @@ static int wf_smu_remove(struct device *ddev) | |||
766 | if (wf_smu_cpu_fans) | 762 | if (wf_smu_cpu_fans) |
767 | kfree(wf_smu_cpu_fans); | 763 | kfree(wf_smu_cpu_fans); |
768 | 764 | ||
769 | wf_smu_dev = NULL; | ||
770 | |||
771 | return 0; | 765 | return 0; |
772 | } | 766 | } |
773 | 767 | ||
774 | static struct device_driver wf_smu_driver = { | 768 | static struct platform_driver wf_smu_driver = { |
775 | .name = "windfarm", | ||
776 | .bus = &platform_bus_type, | ||
777 | .probe = wf_smu_probe, | 769 | .probe = wf_smu_probe, |
778 | .remove = wf_smu_remove, | 770 | .remove = __devexit_p(wf_smu_remove), |
771 | .driver = { | ||
772 | .name = "windfarm", | ||
773 | .bus = &platform_bus_type, | ||
774 | }, | ||
779 | }; | 775 | }; |
780 | 776 | ||
781 | 777 | ||
@@ -794,7 +790,7 @@ static int __init wf_smu_init(void) | |||
794 | request_module("windfarm_lm75_sensor"); | 790 | request_module("windfarm_lm75_sensor"); |
795 | 791 | ||
796 | #endif /* MODULE */ | 792 | #endif /* MODULE */ |
797 | driver_register(&wf_smu_driver); | 793 | platform_driver_register(&wf_smu_driver); |
798 | } | 794 | } |
799 | 795 | ||
800 | return rc; | 796 | return rc; |
@@ -803,7 +799,7 @@ static int __init wf_smu_init(void) | |||
803 | static void __exit wf_smu_exit(void) | 799 | static void __exit wf_smu_exit(void) |
804 | { | 800 | { |
805 | 801 | ||
806 | driver_unregister(&wf_smu_driver); | 802 | platform_driver_unregister(&wf_smu_driver); |
807 | } | 803 | } |
808 | 804 | ||
809 | 805 | ||
diff --git a/drivers/macintosh/windfarm_pm91.c b/drivers/macintosh/windfarm_pm91.c index 59e9ffe37c39..9961a67b4f85 100644 --- a/drivers/macintosh/windfarm_pm91.c +++ b/drivers/macintosh/windfarm_pm91.c | |||
@@ -63,8 +63,6 @@ | |||
63 | */ | 63 | */ |
64 | #undef HACKED_OVERTEMP | 64 | #undef HACKED_OVERTEMP |
65 | 65 | ||
66 | static struct device *wf_smu_dev; | ||
67 | |||
68 | /* Controls & sensors */ | 66 | /* Controls & sensors */ |
69 | static struct wf_sensor *sensor_cpu_power; | 67 | static struct wf_sensor *sensor_cpu_power; |
70 | static struct wf_sensor *sensor_cpu_temp; | 68 | static struct wf_sensor *sensor_cpu_temp; |
@@ -641,16 +639,14 @@ static int wf_init_pm(void) | |||
641 | return 0; | 639 | return 0; |
642 | } | 640 | } |
643 | 641 | ||
644 | static int wf_smu_probe(struct device *ddev) | 642 | static int wf_smu_probe(struct platform_device *ddev) |
645 | { | 643 | { |
646 | wf_smu_dev = ddev; | ||
647 | |||
648 | wf_register_client(&wf_smu_events); | 644 | wf_register_client(&wf_smu_events); |
649 | 645 | ||
650 | return 0; | 646 | return 0; |
651 | } | 647 | } |
652 | 648 | ||
653 | static int wf_smu_remove(struct device *ddev) | 649 | static int __devexit wf_smu_remove(struct platform_device *ddev) |
654 | { | 650 | { |
655 | wf_unregister_client(&wf_smu_events); | 651 | wf_unregister_client(&wf_smu_events); |
656 | 652 | ||
@@ -698,16 +694,16 @@ static int wf_smu_remove(struct device *ddev) | |||
698 | if (wf_smu_cpu_fans) | 694 | if (wf_smu_cpu_fans) |
699 | kfree(wf_smu_cpu_fans); | 695 | kfree(wf_smu_cpu_fans); |
700 | 696 | ||
701 | wf_smu_dev = NULL; | ||
702 | |||
703 | return 0; | 697 | return 0; |
704 | } | 698 | } |
705 | 699 | ||
706 | static struct device_driver wf_smu_driver = { | 700 | static struct platform_driver wf_smu_driver = { |
707 | .name = "windfarm", | ||
708 | .bus = &platform_bus_type, | ||
709 | .probe = wf_smu_probe, | 701 | .probe = wf_smu_probe, |
710 | .remove = wf_smu_remove, | 702 | .remove = __devexit_p(wf_smu_remove), |
703 | .driver = { | ||
704 | .name = "windfarm", | ||
705 | .bus = &platform_bus_type, | ||
706 | }, | ||
711 | }; | 707 | }; |
712 | 708 | ||
713 | 709 | ||
@@ -725,7 +721,7 @@ static int __init wf_smu_init(void) | |||
725 | request_module("windfarm_lm75_sensor"); | 721 | request_module("windfarm_lm75_sensor"); |
726 | 722 | ||
727 | #endif /* MODULE */ | 723 | #endif /* MODULE */ |
728 | driver_register(&wf_smu_driver); | 724 | platform_driver_register(&wf_smu_driver); |
729 | } | 725 | } |
730 | 726 | ||
731 | return rc; | 727 | return rc; |
@@ -734,7 +730,7 @@ static int __init wf_smu_init(void) | |||
734 | static void __exit wf_smu_exit(void) | 730 | static void __exit wf_smu_exit(void) |
735 | { | 731 | { |
736 | 732 | ||
737 | driver_unregister(&wf_smu_driver); | 733 | platform_driver_unregister(&wf_smu_driver); |
738 | } | 734 | } |
739 | 735 | ||
740 | 736 | ||
diff --git a/drivers/md/md.c b/drivers/md/md.c index cb8281605be8..57fa64f93e5f 100644 --- a/drivers/md/md.c +++ b/drivers/md/md.c | |||
@@ -3849,6 +3849,7 @@ static int hot_add_disk(mddev_t * mddev, dev_t dev) | |||
3849 | } | 3849 | } |
3850 | clear_bit(In_sync, &rdev->flags); | 3850 | clear_bit(In_sync, &rdev->flags); |
3851 | rdev->desc_nr = -1; | 3851 | rdev->desc_nr = -1; |
3852 | rdev->saved_raid_disk = -1; | ||
3852 | err = bind_rdev_to_array(rdev, mddev); | 3853 | err = bind_rdev_to_array(rdev, mddev); |
3853 | if (err) | 3854 | if (err) |
3854 | goto abort_export; | 3855 | goto abort_export; |
diff --git a/drivers/media/common/saa7146_core.c b/drivers/media/common/saa7146_core.c index b88451e33c09..86cbdbcf9d7d 100644 --- a/drivers/media/common/saa7146_core.c +++ b/drivers/media/common/saa7146_core.c | |||
@@ -230,7 +230,7 @@ int saa7146_pgtable_build_single(struct pci_dev *pci, struct saa7146_pgtable *pt | |||
230 | 230 | ||
231 | /********************************************************************************/ | 231 | /********************************************************************************/ |
232 | /* interrupt handler */ | 232 | /* interrupt handler */ |
233 | static irqreturn_t interrupt_hw(int irq, void *dev_id, struct pt_regs *regs) | 233 | static irqreturn_t interrupt_hw(int irq, void *dev_id) |
234 | { | 234 | { |
235 | struct saa7146_dev *dev = dev_id; | 235 | struct saa7146_dev *dev = dev_id; |
236 | u32 isr = 0; | 236 | u32 isr = 0; |
diff --git a/drivers/media/dvb/b2c2/flexcop-pci.c b/drivers/media/dvb/b2c2/flexcop-pci.c index eb2e6432c8c2..06893243f3d4 100644 --- a/drivers/media/dvb/b2c2/flexcop-pci.c +++ b/drivers/media/dvb/b2c2/flexcop-pci.c | |||
@@ -122,7 +122,7 @@ static void flexcop_pci_irq_check_work(void *data) | |||
122 | /* When PID filtering is turned on, we use the timer IRQ, because small amounts | 122 | /* When PID filtering is turned on, we use the timer IRQ, because small amounts |
123 | * of data need to be passed to the user space instantly as well. When PID | 123 | * of data need to be passed to the user space instantly as well. When PID |
124 | * filtering is turned off, we use the page-change-IRQ */ | 124 | * filtering is turned off, we use the page-change-IRQ */ |
125 | static irqreturn_t flexcop_pci_isr(int irq, void *dev_id, struct pt_regs *regs) | 125 | static irqreturn_t flexcop_pci_isr(int irq, void *dev_id) |
126 | { | 126 | { |
127 | struct flexcop_pci *fc_pci = dev_id; | 127 | struct flexcop_pci *fc_pci = dev_id; |
128 | struct flexcop_device *fc = fc_pci->fc_dev; | 128 | struct flexcop_device *fc = fc_pci->fc_dev; |
diff --git a/drivers/media/dvb/b2c2/flexcop-usb.c b/drivers/media/dvb/b2c2/flexcop-usb.c index 515954f96c9a..2853ea1bdaf1 100644 --- a/drivers/media/dvb/b2c2/flexcop-usb.c +++ b/drivers/media/dvb/b2c2/flexcop-usb.c | |||
@@ -328,7 +328,7 @@ static void flexcop_usb_process_frame(struct flexcop_usb *fc_usb, u8 *buffer, in | |||
328 | fc_usb->tmp_buffer_length = l; | 328 | fc_usb->tmp_buffer_length = l; |
329 | } | 329 | } |
330 | 330 | ||
331 | static void flexcop_usb_urb_complete(struct urb *urb, struct pt_regs *ptregs) | 331 | static void flexcop_usb_urb_complete(struct urb *urb) |
332 | { | 332 | { |
333 | struct flexcop_usb *fc_usb = urb->context; | 333 | struct flexcop_usb *fc_usb = urb->context; |
334 | int i; | 334 | int i; |
diff --git a/drivers/media/dvb/bt8xx/bt878.c b/drivers/media/dvb/bt8xx/bt878.c index 755822ee6e9b..329a51c18562 100644 --- a/drivers/media/dvb/bt8xx/bt878.c +++ b/drivers/media/dvb/bt8xx/bt878.c | |||
@@ -266,7 +266,7 @@ EXPORT_SYMBOL(bt878_stop); | |||
266 | /* Interrupt service routine */ | 266 | /* Interrupt service routine */ |
267 | /*****************************/ | 267 | /*****************************/ |
268 | 268 | ||
269 | static irqreturn_t bt878_irq(int irq, void *dev_id, struct pt_regs *regs) | 269 | static irqreturn_t bt878_irq(int irq, void *dev_id) |
270 | { | 270 | { |
271 | u32 stat, astat, mask; | 271 | u32 stat, astat, mask; |
272 | int count; | 272 | int count; |
diff --git a/drivers/media/dvb/cinergyT2/cinergyT2.c b/drivers/media/dvb/cinergyT2/cinergyT2.c index 410fa6d620ff..ff7d4f56ced3 100644 --- a/drivers/media/dvb/cinergyT2/cinergyT2.c +++ b/drivers/media/dvb/cinergyT2/cinergyT2.c | |||
@@ -238,7 +238,7 @@ static void cinergyt2_sleep (struct cinergyt2 *cinergyt2, int sleep) | |||
238 | cinergyt2->sleeping = sleep; | 238 | cinergyt2->sleeping = sleep; |
239 | } | 239 | } |
240 | 240 | ||
241 | static void cinergyt2_stream_irq (struct urb *urb, struct pt_regs *regs); | 241 | static void cinergyt2_stream_irq (struct urb *urb); |
242 | 242 | ||
243 | static int cinergyt2_submit_stream_urb (struct cinergyt2 *cinergyt2, struct urb *urb) | 243 | static int cinergyt2_submit_stream_urb (struct cinergyt2 *cinergyt2, struct urb *urb) |
244 | { | 244 | { |
@@ -258,7 +258,7 @@ static int cinergyt2_submit_stream_urb (struct cinergyt2 *cinergyt2, struct urb | |||
258 | return err; | 258 | return err; |
259 | } | 259 | } |
260 | 260 | ||
261 | static void cinergyt2_stream_irq (struct urb *urb, struct pt_regs *regs) | 261 | static void cinergyt2_stream_irq (struct urb *urb) |
262 | { | 262 | { |
263 | struct cinergyt2 *cinergyt2 = urb->context; | 263 | struct cinergyt2 *cinergyt2 = urb->context; |
264 | 264 | ||
diff --git a/drivers/media/dvb/dvb-usb/usb-urb.c b/drivers/media/dvb/dvb-usb/usb-urb.c index 572b2d9aa66a..78035ee824ca 100644 --- a/drivers/media/dvb/dvb-usb/usb-urb.c +++ b/drivers/media/dvb/dvb-usb/usb-urb.c | |||
@@ -11,7 +11,7 @@ | |||
11 | #include "dvb-usb-common.h" | 11 | #include "dvb-usb-common.h" |
12 | 12 | ||
13 | /* URB stuff for streaming */ | 13 | /* URB stuff for streaming */ |
14 | static void usb_urb_complete(struct urb *urb, struct pt_regs *ptregs) | 14 | static void usb_urb_complete(struct urb *urb) |
15 | { | 15 | { |
16 | struct usb_data_stream *stream = urb->context; | 16 | struct usb_data_stream *stream = urb->context; |
17 | int ptype = usb_pipetype(urb->pipe); | 17 | int ptype = usb_pipetype(urb->pipe); |
diff --git a/drivers/media/dvb/pluto2/pluto2.c b/drivers/media/dvb/pluto2/pluto2.c index 2310b2bfed4e..8e4ce101eb22 100644 --- a/drivers/media/dvb/pluto2/pluto2.c +++ b/drivers/media/dvb/pluto2/pluto2.c | |||
@@ -306,7 +306,7 @@ static void pluto_dma_end(struct pluto *pluto, unsigned int nbpackets) | |||
306 | TS_DMA_BYTES, PCI_DMA_FROMDEVICE); | 306 | TS_DMA_BYTES, PCI_DMA_FROMDEVICE); |
307 | } | 307 | } |
308 | 308 | ||
309 | static irqreturn_t pluto_irq(int irq, void *dev_id, struct pt_regs *regs) | 309 | static irqreturn_t pluto_irq(int irq, void *dev_id) |
310 | { | 310 | { |
311 | struct pluto *pluto = dev_id; | 311 | struct pluto *pluto = dev_id; |
312 | u32 tscr; | 312 | u32 tscr; |
diff --git a/drivers/media/dvb/ttusb-budget/dvb-ttusb-budget.c b/drivers/media/dvb/ttusb-budget/dvb-ttusb-budget.c index 234199875f53..60820deb900b 100644 --- a/drivers/media/dvb/ttusb-budget/dvb-ttusb-budget.c +++ b/drivers/media/dvb/ttusb-budget/dvb-ttusb-budget.c | |||
@@ -732,7 +732,7 @@ static void ttusb_process_frame(struct ttusb *ttusb, u8 * data, int len) | |||
732 | } | 732 | } |
733 | } | 733 | } |
734 | 734 | ||
735 | static void ttusb_iso_irq(struct urb *urb, struct pt_regs *ptregs) | 735 | static void ttusb_iso_irq(struct urb *urb) |
736 | { | 736 | { |
737 | struct ttusb *ttusb = urb->context; | 737 | struct ttusb *ttusb = urb->context; |
738 | 738 | ||
diff --git a/drivers/media/dvb/ttusb-dec/ttusb_dec.c b/drivers/media/dvb/ttusb-dec/ttusb_dec.c index de077a757192..a1c9fa9919ea 100644 --- a/drivers/media/dvb/ttusb-dec/ttusb_dec.c +++ b/drivers/media/dvb/ttusb-dec/ttusb_dec.c | |||
@@ -203,7 +203,7 @@ static u16 rc_keys[] = { | |||
203 | static void ttusb_dec_set_model(struct ttusb_dec *dec, | 203 | static void ttusb_dec_set_model(struct ttusb_dec *dec, |
204 | enum ttusb_dec_model model); | 204 | enum ttusb_dec_model model); |
205 | 205 | ||
206 | static void ttusb_dec_handle_irq( struct urb *urb, struct pt_regs *regs) | 206 | static void ttusb_dec_handle_irq( struct urb *urb) |
207 | { | 207 | { |
208 | struct ttusb_dec * dec = urb->context; | 208 | struct ttusb_dec * dec = urb->context; |
209 | char *buffer = dec->irq_buffer; | 209 | char *buffer = dec->irq_buffer; |
@@ -755,7 +755,7 @@ static void ttusb_dec_process_urb_frame_list(unsigned long data) | |||
755 | } | 755 | } |
756 | } | 756 | } |
757 | 757 | ||
758 | static void ttusb_dec_process_urb(struct urb *urb, struct pt_regs *ptregs) | 758 | static void ttusb_dec_process_urb(struct urb *urb) |
759 | { | 759 | { |
760 | struct ttusb_dec *dec = urb->context; | 760 | struct ttusb_dec *dec = urb->context; |
761 | 761 | ||
diff --git a/drivers/media/video/arv.c b/drivers/media/video/arv.c index 5c5e682a3004..4861799eb430 100644 --- a/drivers/media/video/arv.c +++ b/drivers/media/video/arv.c | |||
@@ -549,7 +549,7 @@ static int ar_ioctl(struct inode *inode, struct file *file, unsigned int cmd, | |||
549 | /* | 549 | /* |
550 | * Interrupt handler | 550 | * Interrupt handler |
551 | */ | 551 | */ |
552 | static void ar_interrupt(int irq, void *dev, struct pt_regs *regs) | 552 | static void ar_interrupt(int irq, void *dev) |
553 | { | 553 | { |
554 | struct ar_device *ar = dev; | 554 | struct ar_device *ar = dev; |
555 | unsigned int line_count; | 555 | unsigned int line_count; |
diff --git a/drivers/media/video/bt8xx/bttv-driver.c b/drivers/media/video/bt8xx/bttv-driver.c index 50dde82844ec..6e1ddad9f0c1 100644 --- a/drivers/media/video/bt8xx/bttv-driver.c +++ b/drivers/media/video/bt8xx/bttv-driver.c | |||
@@ -3753,7 +3753,7 @@ bttv_irq_switch_vbi(struct bttv *btv) | |||
3753 | spin_unlock(&btv->s_lock); | 3753 | spin_unlock(&btv->s_lock); |
3754 | } | 3754 | } |
3755 | 3755 | ||
3756 | static irqreturn_t bttv_irq(int irq, void *dev_id, struct pt_regs * regs) | 3756 | static irqreturn_t bttv_irq(int irq, void *dev_id) |
3757 | { | 3757 | { |
3758 | u32 stat,astat; | 3758 | u32 stat,astat; |
3759 | u32 dstat; | 3759 | u32 dstat; |
diff --git a/drivers/media/video/cpia2/cpia2_usb.c b/drivers/media/video/cpia2/cpia2_usb.c index f4da02941493..28dc6a1a1e43 100644 --- a/drivers/media/video/cpia2/cpia2_usb.c +++ b/drivers/media/video/cpia2/cpia2_usb.c | |||
@@ -49,7 +49,7 @@ static int frame_sizes[] = { | |||
49 | #define FRAME_SIZE_PER_DESC frame_sizes[cam->cur_alt] | 49 | #define FRAME_SIZE_PER_DESC frame_sizes[cam->cur_alt] |
50 | 50 | ||
51 | static void process_frame(struct camera_data *cam); | 51 | static void process_frame(struct camera_data *cam); |
52 | static void cpia2_usb_complete(struct urb *urb, struct pt_regs *); | 52 | static void cpia2_usb_complete(struct urb *urb); |
53 | static int cpia2_usb_probe(struct usb_interface *intf, | 53 | static int cpia2_usb_probe(struct usb_interface *intf, |
54 | const struct usb_device_id *id); | 54 | const struct usb_device_id *id); |
55 | static void cpia2_usb_disconnect(struct usb_interface *intf); | 55 | static void cpia2_usb_disconnect(struct usb_interface *intf); |
@@ -199,7 +199,7 @@ static void add_COM(struct camera_data *cam) | |||
199 | * | 199 | * |
200 | * callback when incoming packet is received | 200 | * callback when incoming packet is received |
201 | *****************************************************************************/ | 201 | *****************************************************************************/ |
202 | static void cpia2_usb_complete(struct urb *urb, struct pt_regs *regs) | 202 | static void cpia2_usb_complete(struct urb *urb) |
203 | { | 203 | { |
204 | int i; | 204 | int i; |
205 | unsigned char *cdata; | 205 | unsigned char *cdata; |
diff --git a/drivers/media/video/cpia_usb.c b/drivers/media/video/cpia_usb.c index 2ee34a3b9280..9da4726eb9b9 100644 --- a/drivers/media/video/cpia_usb.c +++ b/drivers/media/video/cpia_usb.c | |||
@@ -109,7 +109,7 @@ static struct cpia_camera_ops cpia_usb_ops = { | |||
109 | static LIST_HEAD(cam_list); | 109 | static LIST_HEAD(cam_list); |
110 | static spinlock_t cam_list_lock_usb; | 110 | static spinlock_t cam_list_lock_usb; |
111 | 111 | ||
112 | static void cpia_usb_complete(struct urb *urb, struct pt_regs *regs) | 112 | static void cpia_usb_complete(struct urb *urb) |
113 | { | 113 | { |
114 | int i; | 114 | int i; |
115 | char *cdata; | 115 | char *cdata; |
diff --git a/drivers/media/video/cx88/cx88-alsa.c b/drivers/media/video/cx88/cx88-alsa.c index f0340662e078..e4355fdc3b6d 100644 --- a/drivers/media/video/cx88/cx88-alsa.c +++ b/drivers/media/video/cx88/cx88-alsa.c | |||
@@ -262,7 +262,7 @@ static void cx8801_aud_irq(snd_cx88_card_t *chip) | |||
262 | /* | 262 | /* |
263 | * BOARD Specific: Handles IRQ calls | 263 | * BOARD Specific: Handles IRQ calls |
264 | */ | 264 | */ |
265 | static irqreturn_t cx8801_irq(int irq, void *dev_id, struct pt_regs *regs) | 265 | static irqreturn_t cx8801_irq(int irq, void *dev_id) |
266 | { | 266 | { |
267 | snd_cx88_card_t *chip = dev_id; | 267 | snd_cx88_card_t *chip = dev_id; |
268 | struct cx88_core *core = chip->core; | 268 | struct cx88_core *core = chip->core; |
diff --git a/drivers/media/video/cx88/cx88-mpeg.c b/drivers/media/video/cx88/cx88-mpeg.c index d6d980774c21..6b23a4e6f66d 100644 --- a/drivers/media/video/cx88/cx88-mpeg.c +++ b/drivers/media/video/cx88/cx88-mpeg.c | |||
@@ -376,7 +376,7 @@ static void cx8802_mpeg_irq(struct cx8802_dev *dev) | |||
376 | 376 | ||
377 | #define MAX_IRQ_LOOP 10 | 377 | #define MAX_IRQ_LOOP 10 |
378 | 378 | ||
379 | static irqreturn_t cx8802_irq(int irq, void *dev_id, struct pt_regs *regs) | 379 | static irqreturn_t cx8802_irq(int irq, void *dev_id) |
380 | { | 380 | { |
381 | struct cx8802_dev *dev = dev_id; | 381 | struct cx8802_dev *dev = dev_id; |
382 | struct cx88_core *core = dev->core; | 382 | struct cx88_core *core = dev->core; |
diff --git a/drivers/media/video/cx88/cx88-video.c b/drivers/media/video/cx88/cx88-video.c index cb0c0eea20f9..90e298d074d1 100644 --- a/drivers/media/video/cx88/cx88-video.c +++ b/drivers/media/video/cx88/cx88-video.c | |||
@@ -1744,7 +1744,7 @@ static void cx8800_vid_irq(struct cx8800_dev *dev) | |||
1744 | } | 1744 | } |
1745 | } | 1745 | } |
1746 | 1746 | ||
1747 | static irqreturn_t cx8800_irq(int irq, void *dev_id, struct pt_regs *regs) | 1747 | static irqreturn_t cx8800_irq(int irq, void *dev_id) |
1748 | { | 1748 | { |
1749 | struct cx8800_dev *dev = dev_id; | 1749 | struct cx8800_dev *dev = dev_id; |
1750 | struct cx88_core *core = dev->core; | 1750 | struct cx88_core *core = dev->core; |
diff --git a/drivers/media/video/dabusb.c b/drivers/media/video/dabusb.c index b9ba95f5e026..b1012e92ee04 100644 --- a/drivers/media/video/dabusb.c +++ b/drivers/media/video/dabusb.c | |||
@@ -166,7 +166,7 @@ static int dabusb_free_buffers (pdabusb_t s) | |||
166 | return 0; | 166 | return 0; |
167 | } | 167 | } |
168 | /*-------------------------------------------------------------------*/ | 168 | /*-------------------------------------------------------------------*/ |
169 | static void dabusb_iso_complete (struct urb *purb, struct pt_regs *regs) | 169 | static void dabusb_iso_complete (struct urb *purb) |
170 | { | 170 | { |
171 | pbuff_t b = purb->context; | 171 | pbuff_t b = purb->context; |
172 | pdabusb_t s = b->s; | 172 | pdabusb_t s = b->s; |
diff --git a/drivers/media/video/em28xx/em28xx-core.c b/drivers/media/video/em28xx/em28xx-core.c index 4350cc75b025..255a47dfb84f 100644 --- a/drivers/media/video/em28xx/em28xx-core.c +++ b/drivers/media/video/em28xx/em28xx-core.c | |||
@@ -382,7 +382,7 @@ int em28xx_resolution_set(struct em28xx *dev) | |||
382 | /******************* isoc transfer handling ****************************/ | 382 | /******************* isoc transfer handling ****************************/ |
383 | 383 | ||
384 | #ifdef ENABLE_DEBUG_ISOC_FRAMES | 384 | #ifdef ENABLE_DEBUG_ISOC_FRAMES |
385 | static void em28xx_isoc_dump(struct urb *urb, struct pt_regs *regs) | 385 | static void em28xx_isoc_dump(struct urb *urb) |
386 | { | 386 | { |
387 | int len = 0; | 387 | int len = 0; |
388 | int ntrans = 0; | 388 | int ntrans = 0; |
@@ -534,7 +534,7 @@ static inline void em28xx_isoc_video_copy(struct em28xx *dev, | |||
534 | * em28xx_isoIrq() | 534 | * em28xx_isoIrq() |
535 | * handles the incoming isoc urbs and fills the frames from our inqueue | 535 | * handles the incoming isoc urbs and fills the frames from our inqueue |
536 | */ | 536 | */ |
537 | static void em28xx_isocIrq(struct urb *urb, struct pt_regs *regs) | 537 | static void em28xx_isocIrq(struct urb *urb) |
538 | { | 538 | { |
539 | struct em28xx *dev = urb->context; | 539 | struct em28xx *dev = urb->context; |
540 | int i, status; | 540 | int i, status; |
@@ -545,7 +545,7 @@ static void em28xx_isocIrq(struct urb *urb, struct pt_regs *regs) | |||
545 | return; | 545 | return; |
546 | #ifdef ENABLE_DEBUG_ISOC_FRAMES | 546 | #ifdef ENABLE_DEBUG_ISOC_FRAMES |
547 | if (isoc_debug>1) | 547 | if (isoc_debug>1) |
548 | em28xx_isoc_dump(urb, regs); | 548 | em28xx_isoc_dump(urb); |
549 | #endif | 549 | #endif |
550 | 550 | ||
551 | if (urb->status == -ENOENT) | 551 | if (urb->status == -ENOENT) |
diff --git a/drivers/media/video/em28xx/em28xx-video.c b/drivers/media/video/em28xx/em28xx-video.c index 20df657b70c8..2a461dde480c 100644 --- a/drivers/media/video/em28xx/em28xx-video.c +++ b/drivers/media/video/em28xx/em28xx-video.c | |||
@@ -174,7 +174,7 @@ static void em28xx_config_i2c(struct em28xx *dev) | |||
174 | 174 | ||
175 | route.input = INPUT(dev->ctl_input)->vmux; | 175 | route.input = INPUT(dev->ctl_input)->vmux; |
176 | route.output = 0; | 176 | route.output = 0; |
177 | em28xx_i2c_call_clients(dev, VIDIOC_INT_RESET, 0); | 177 | em28xx_i2c_call_clients(dev, VIDIOC_INT_RESET, NULL); |
178 | em28xx_i2c_call_clients(dev, VIDIOC_INT_S_VIDEO_ROUTING, &route); | 178 | em28xx_i2c_call_clients(dev, VIDIOC_INT_S_VIDEO_ROUTING, &route); |
179 | em28xx_i2c_call_clients(dev, VIDIOC_STREAMON, NULL); | 179 | em28xx_i2c_call_clients(dev, VIDIOC_STREAMON, NULL); |
180 | 180 | ||
diff --git a/drivers/media/video/et61x251/et61x251_core.c b/drivers/media/video/et61x251/et61x251_core.c index 8992b6e62b9f..bc544cc7ccb8 100644 --- a/drivers/media/video/et61x251/et61x251_core.c +++ b/drivers/media/video/et61x251/et61x251_core.c | |||
@@ -398,7 +398,7 @@ int et61x251_i2c_write(struct et61x251_device* cam, u8 address, u8 value) | |||
398 | 398 | ||
399 | /*****************************************************************************/ | 399 | /*****************************************************************************/ |
400 | 400 | ||
401 | static void et61x251_urb_complete(struct urb *urb, struct pt_regs* regs) | 401 | static void et61x251_urb_complete(struct urb *urb) |
402 | { | 402 | { |
403 | struct et61x251_device* cam = urb->context; | 403 | struct et61x251_device* cam = urb->context; |
404 | struct et61x251_frame_t** f; | 404 | struct et61x251_frame_t** f; |
diff --git a/drivers/media/video/meye.c b/drivers/media/video/meye.c index e278753f8f25..b083338823df 100644 --- a/drivers/media/video/meye.c +++ b/drivers/media/video/meye.c | |||
@@ -786,7 +786,7 @@ static void mchip_cont_compression_start(void) | |||
786 | /* Interrupt handling */ | 786 | /* Interrupt handling */ |
787 | /****************************************************************************/ | 787 | /****************************************************************************/ |
788 | 788 | ||
789 | static irqreturn_t meye_irq(int irq, void *dev_id, struct pt_regs *regs) | 789 | static irqreturn_t meye_irq(int irq, void *dev_id) |
790 | { | 790 | { |
791 | u32 v; | 791 | u32 v; |
792 | int reqnr; | 792 | int reqnr; |
diff --git a/drivers/media/video/ov511.c b/drivers/media/video/ov511.c index 5d8cd283fcd8..ce4886f1528d 100644 --- a/drivers/media/video/ov511.c +++ b/drivers/media/video/ov511.c | |||
@@ -3503,7 +3503,7 @@ check_middle: | |||
3503 | } | 3503 | } |
3504 | 3504 | ||
3505 | static void | 3505 | static void |
3506 | ov51x_isoc_irq(struct urb *urb, struct pt_regs *regs) | 3506 | ov51x_isoc_irq(struct urb *urb) |
3507 | { | 3507 | { |
3508 | int i; | 3508 | int i; |
3509 | struct usb_ov511 *ov; | 3509 | struct usb_ov511 *ov; |
diff --git a/drivers/media/video/planb.c b/drivers/media/video/planb.c index 3484e36b6801..368d6e219fa4 100644 --- a/drivers/media/video/planb.c +++ b/drivers/media/video/planb.c | |||
@@ -91,7 +91,7 @@ static void planb_close(struct video_device *); | |||
91 | static int planb_ioctl(struct video_device *, unsigned int, void *); | 91 | static int planb_ioctl(struct video_device *, unsigned int, void *); |
92 | static int planb_init_done(struct video_device *); | 92 | static int planb_init_done(struct video_device *); |
93 | static int planb_mmap(struct video_device *, const char *, unsigned long); | 93 | static int planb_mmap(struct video_device *, const char *, unsigned long); |
94 | static void planb_irq(int, void *, struct pt_regs *); | 94 | static void planb_irq(int, void *); |
95 | static void release_planb(void); | 95 | static void release_planb(void); |
96 | int init_planbs(struct video_init *); | 96 | int init_planbs(struct video_init *); |
97 | 97 | ||
@@ -1316,7 +1316,7 @@ cmd_tab_data_end: | |||
1316 | return c1; | 1316 | return c1; |
1317 | } | 1317 | } |
1318 | 1318 | ||
1319 | static void planb_irq(int irq, void *dev_id, struct pt_regs * regs) | 1319 | static void planb_irq(int irq, void *dev_id) |
1320 | { | 1320 | { |
1321 | unsigned int stat, astat; | 1321 | unsigned int stat, astat; |
1322 | struct planb *pb = (struct planb *)dev_id; | 1322 | struct planb *pb = (struct planb *)dev_id; |
diff --git a/drivers/media/video/pvrusb2/pvrusb2-hdw.c b/drivers/media/video/pvrusb2/pvrusb2-hdw.c index 3d8cd0daf6a9..f920e0ccacd3 100644 --- a/drivers/media/video/pvrusb2/pvrusb2-hdw.c +++ b/drivers/media/video/pvrusb2/pvrusb2-hdw.c | |||
@@ -2552,7 +2552,7 @@ void pvr2_hdw_v4l_store_minor_number(struct pvr2_hdw *hdw,int v) | |||
2552 | } | 2552 | } |
2553 | 2553 | ||
2554 | 2554 | ||
2555 | static void pvr2_ctl_write_complete(struct urb *urb, struct pt_regs *regs) | 2555 | static void pvr2_ctl_write_complete(struct urb *urb) |
2556 | { | 2556 | { |
2557 | struct pvr2_hdw *hdw = urb->context; | 2557 | struct pvr2_hdw *hdw = urb->context; |
2558 | hdw->ctl_write_pend_flag = 0; | 2558 | hdw->ctl_write_pend_flag = 0; |
@@ -2561,7 +2561,7 @@ static void pvr2_ctl_write_complete(struct urb *urb, struct pt_regs *regs) | |||
2561 | } | 2561 | } |
2562 | 2562 | ||
2563 | 2563 | ||
2564 | static void pvr2_ctl_read_complete(struct urb *urb, struct pt_regs *regs) | 2564 | static void pvr2_ctl_read_complete(struct urb *urb) |
2565 | { | 2565 | { |
2566 | struct pvr2_hdw *hdw = urb->context; | 2566 | struct pvr2_hdw *hdw = urb->context; |
2567 | hdw->ctl_read_pend_flag = 0; | 2567 | hdw->ctl_read_pend_flag = 0; |
diff --git a/drivers/media/video/pvrusb2/pvrusb2-io.c b/drivers/media/video/pvrusb2/pvrusb2-io.c index 1e393762546c..70aa63eba0cb 100644 --- a/drivers/media/video/pvrusb2/pvrusb2-io.c +++ b/drivers/media/video/pvrusb2/pvrusb2-io.c | |||
@@ -429,7 +429,7 @@ static void pvr2_stream_done(struct pvr2_stream *sp) | |||
429 | } while (0); mutex_unlock(&sp->mutex); | 429 | } while (0); mutex_unlock(&sp->mutex); |
430 | } | 430 | } |
431 | 431 | ||
432 | static void buffer_complete(struct urb *urb, struct pt_regs *regs) | 432 | static void buffer_complete(struct urb *urb) |
433 | { | 433 | { |
434 | struct pvr2_buffer *bp = urb->context; | 434 | struct pvr2_buffer *bp = urb->context; |
435 | struct pvr2_stream *sp; | 435 | struct pvr2_stream *sp; |
diff --git a/drivers/media/video/pwc/pwc-if.c b/drivers/media/video/pwc/pwc-if.c index 53c4b5790d5c..c77b85cf3d80 100644 --- a/drivers/media/video/pwc/pwc-if.c +++ b/drivers/media/video/pwc/pwc-if.c | |||
@@ -682,7 +682,7 @@ static int pwc_rcv_short_packet(struct pwc_device *pdev, const struct pwc_frame_ | |||
682 | /* This gets called for the Isochronous pipe (video). This is done in | 682 | /* This gets called for the Isochronous pipe (video). This is done in |
683 | * interrupt time, so it has to be fast, not crash, and not stall. Neat. | 683 | * interrupt time, so it has to be fast, not crash, and not stall. Neat. |
684 | */ | 684 | */ |
685 | static void pwc_isoc_handler(struct urb *urb, struct pt_regs *regs) | 685 | static void pwc_isoc_handler(struct urb *urb) |
686 | { | 686 | { |
687 | struct pwc_device *pdev; | 687 | struct pwc_device *pdev; |
688 | int i, fst, flen; | 688 | int i, fst, flen; |
diff --git a/drivers/media/video/saa7134/saa7134-alsa.c b/drivers/media/video/saa7134/saa7134-alsa.c index a39e0136ce3b..4abf5c03a740 100644 --- a/drivers/media/video/saa7134/saa7134-alsa.c +++ b/drivers/media/video/saa7134/saa7134-alsa.c | |||
@@ -212,7 +212,7 @@ static void saa7134_irq_alsa_done(struct saa7134_dev *dev, | |||
212 | * | 212 | * |
213 | */ | 213 | */ |
214 | 214 | ||
215 | static irqreturn_t saa7134_alsa_irq(int irq, void *dev_id, struct pt_regs *regs) | 215 | static irqreturn_t saa7134_alsa_irq(int irq, void *dev_id) |
216 | { | 216 | { |
217 | struct saa7134_dmasound *dmasound = dev_id; | 217 | struct saa7134_dmasound *dmasound = dev_id; |
218 | struct saa7134_dev *dev = dmasound->priv_data; | 218 | struct saa7134_dev *dev = dmasound->priv_data; |
diff --git a/drivers/media/video/saa7134/saa7134-core.c b/drivers/media/video/saa7134/saa7134-core.c index 09aa62f61af7..5c9e63dfbea6 100644 --- a/drivers/media/video/saa7134/saa7134-core.c +++ b/drivers/media/video/saa7134/saa7134-core.c | |||
@@ -495,7 +495,7 @@ static void print_irqstatus(struct saa7134_dev *dev, int loop, | |||
495 | printk("\n"); | 495 | printk("\n"); |
496 | } | 496 | } |
497 | 497 | ||
498 | static irqreturn_t saa7134_irq(int irq, void *dev_id, struct pt_regs *regs) | 498 | static irqreturn_t saa7134_irq(int irq, void *dev_id) |
499 | { | 499 | { |
500 | struct saa7134_dev *dev = (struct saa7134_dev*) dev_id; | 500 | struct saa7134_dev *dev = (struct saa7134_dev*) dev_id; |
501 | unsigned long report,status; | 501 | unsigned long report,status; |
diff --git a/drivers/media/video/saa7134/saa7134-oss.c b/drivers/media/video/saa7134/saa7134-oss.c index 2e3ba5f31453..bfcb860d14cc 100644 --- a/drivers/media/video/saa7134/saa7134-oss.c +++ b/drivers/media/video/saa7134/saa7134-oss.c | |||
@@ -814,7 +814,7 @@ struct file_operations saa7134_mixer_fops = { | |||
814 | 814 | ||
815 | /* ------------------------------------------------------------------ */ | 815 | /* ------------------------------------------------------------------ */ |
816 | 816 | ||
817 | static irqreturn_t saa7134_oss_irq(int irq, void *dev_id, struct pt_regs *regs) | 817 | static irqreturn_t saa7134_oss_irq(int irq, void *dev_id) |
818 | { | 818 | { |
819 | struct saa7134_dmasound *dmasound = dev_id; | 819 | struct saa7134_dmasound *dmasound = dev_id; |
820 | struct saa7134_dev *dev = dmasound->priv_data; | 820 | struct saa7134_dev *dev = dmasound->priv_data; |
diff --git a/drivers/media/video/se401.c b/drivers/media/video/se401.c index 67987baee77a..7aeec574d7ce 100644 --- a/drivers/media/video/se401.c +++ b/drivers/media/video/se401.c | |||
@@ -282,7 +282,7 @@ static void se401_auto_resetlevel(struct usb_se401 *se401) | |||
282 | } | 282 | } |
283 | 283 | ||
284 | /* irq handler for snapshot button */ | 284 | /* irq handler for snapshot button */ |
285 | static void se401_button_irq(struct urb *urb, struct pt_regs *regs) | 285 | static void se401_button_irq(struct urb *urb) |
286 | { | 286 | { |
287 | struct usb_se401 *se401 = urb->context; | 287 | struct usb_se401 *se401 = urb->context; |
288 | int status; | 288 | int status; |
@@ -318,7 +318,7 @@ exit: | |||
318 | __FUNCTION__, status); | 318 | __FUNCTION__, status); |
319 | } | 319 | } |
320 | 320 | ||
321 | static void se401_video_irq(struct urb *urb, struct pt_regs *regs) | 321 | static void se401_video_irq(struct urb *urb) |
322 | { | 322 | { |
323 | struct usb_se401 *se401 = urb->context; | 323 | struct usb_se401 *se401 = urb->context; |
324 | int length = urb->actual_length; | 324 | int length = urb->actual_length; |
diff --git a/drivers/media/video/sn9c102/sn9c102_core.c b/drivers/media/video/sn9c102/sn9c102_core.c index 48d138a7c723..3e0ff8a78468 100644 --- a/drivers/media/video/sn9c102/sn9c102_core.c +++ b/drivers/media/video/sn9c102/sn9c102_core.c | |||
@@ -518,7 +518,7 @@ sn9c102_find_eof_header(struct sn9c102_device* cam, void* mem, size_t len) | |||
518 | } | 518 | } |
519 | 519 | ||
520 | 520 | ||
521 | static void sn9c102_urb_complete(struct urb *urb, struct pt_regs* regs) | 521 | static void sn9c102_urb_complete(struct urb *urb) |
522 | { | 522 | { |
523 | struct sn9c102_device* cam = urb->context; | 523 | struct sn9c102_device* cam = urb->context; |
524 | struct sn9c102_frame_t** f; | 524 | struct sn9c102_frame_t** f; |
diff --git a/drivers/media/video/stradis.c b/drivers/media/video/stradis.c index 5686547ba76a..525d81288d55 100644 --- a/drivers/media/video/stradis.c +++ b/drivers/media/video/stradis.c | |||
@@ -406,7 +406,7 @@ static void send_osd_data(struct saa7146 *saa) | |||
406 | } | 406 | } |
407 | } | 407 | } |
408 | 408 | ||
409 | static irqreturn_t saa7146_irq(int irq, void *dev_id, struct pt_regs *regs) | 409 | static irqreturn_t saa7146_irq(int irq, void *dev_id) |
410 | { | 410 | { |
411 | struct saa7146 *saa = dev_id; | 411 | struct saa7146 *saa = dev_id; |
412 | u32 stat, astat; | 412 | u32 stat, astat; |
diff --git a/drivers/media/video/stv680.c b/drivers/media/video/stv680.c index 2ba2991a214f..87e11300181d 100644 --- a/drivers/media/video/stv680.c +++ b/drivers/media/video/stv680.c | |||
@@ -582,7 +582,7 @@ static int stv680_set_pict (struct usb_stv *stv680, struct video_picture *p) | |||
582 | return 0; | 582 | return 0; |
583 | } | 583 | } |
584 | 584 | ||
585 | static void stv680_video_irq (struct urb *urb, struct pt_regs *regs) | 585 | static void stv680_video_irq (struct urb *urb) |
586 | { | 586 | { |
587 | struct usb_stv *stv680 = urb->context; | 587 | struct usb_stv *stv680 = urb->context; |
588 | int length = urb->actual_length; | 588 | int length = urb->actual_length; |
diff --git a/drivers/media/video/usbvideo/konicawc.c b/drivers/media/video/usbvideo/konicawc.c index 4eee8be88314..abe214619092 100644 --- a/drivers/media/video/usbvideo/konicawc.c +++ b/drivers/media/video/usbvideo/konicawc.c | |||
@@ -387,7 +387,7 @@ static void resubmit_urb(struct uvd *uvd, struct urb *urb) | |||
387 | } | 387 | } |
388 | 388 | ||
389 | 389 | ||
390 | static void konicawc_isoc_irq(struct urb *urb, struct pt_regs *regs) | 390 | static void konicawc_isoc_irq(struct urb *urb) |
391 | { | 391 | { |
392 | struct uvd *uvd = urb->context; | 392 | struct uvd *uvd = urb->context; |
393 | struct konicawc *cam = (struct konicawc *)uvd->user_data; | 393 | struct konicawc *cam = (struct konicawc *)uvd->user_data; |
diff --git a/drivers/media/video/usbvideo/quickcam_messenger.c b/drivers/media/video/usbvideo/quickcam_messenger.c index 56e01b622417..9a26b9484aae 100644 --- a/drivers/media/video/usbvideo/quickcam_messenger.c +++ b/drivers/media/video/usbvideo/quickcam_messenger.c | |||
@@ -125,7 +125,7 @@ static void qcm_report_buttonstat(struct qcm *cam) | |||
125 | } | 125 | } |
126 | } | 126 | } |
127 | 127 | ||
128 | static void qcm_int_irq(struct urb *urb, struct pt_regs *regs) | 128 | static void qcm_int_irq(struct urb *urb) |
129 | { | 129 | { |
130 | int ret; | 130 | int ret; |
131 | struct uvd *uvd = urb->context; | 131 | struct uvd *uvd = urb->context; |
@@ -606,7 +606,7 @@ static void resubmit_urb(struct uvd *uvd, struct urb *urb) | |||
606 | err("usb_submit_urb error (%d)", ret); | 606 | err("usb_submit_urb error (%d)", ret); |
607 | } | 607 | } |
608 | 608 | ||
609 | static void qcm_isoc_irq(struct urb *urb, struct pt_regs *regs) | 609 | static void qcm_isoc_irq(struct urb *urb) |
610 | { | 610 | { |
611 | int len; | 611 | int len; |
612 | struct uvd *uvd = urb->context; | 612 | struct uvd *uvd = urb->context; |
diff --git a/drivers/media/video/usbvideo/usbvideo.c b/drivers/media/video/usbvideo/usbvideo.c index 13b37c8c0d56..d8b88024bc2f 100644 --- a/drivers/media/video/usbvideo/usbvideo.c +++ b/drivers/media/video/usbvideo/usbvideo.c | |||
@@ -1680,7 +1680,7 @@ static int usbvideo_CompressIsochronous(struct uvd *uvd, struct urb *urb) | |||
1680 | return totlen; | 1680 | return totlen; |
1681 | } | 1681 | } |
1682 | 1682 | ||
1683 | static void usbvideo_IsocIrq(struct urb *urb, struct pt_regs *regs) | 1683 | static void usbvideo_IsocIrq(struct urb *urb) |
1684 | { | 1684 | { |
1685 | int i, ret, len; | 1685 | int i, ret, len; |
1686 | struct uvd *uvd = urb->context; | 1686 | struct uvd *uvd = urb->context; |
diff --git a/drivers/media/video/vino.c b/drivers/media/video/vino.c index d1e04f7c530b..6b6dff4d236a 100644 --- a/drivers/media/video/vino.c +++ b/drivers/media/video/vino.c | |||
@@ -2325,7 +2325,7 @@ static void vino_capture_tasklet(unsigned long channel) { | |||
2325 | } | 2325 | } |
2326 | } | 2326 | } |
2327 | 2327 | ||
2328 | static irqreturn_t vino_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 2328 | static irqreturn_t vino_interrupt(int irq, void *dev_id) |
2329 | { | 2329 | { |
2330 | u32 ctrl, intr; | 2330 | u32 ctrl, intr; |
2331 | unsigned int fc_a, fc_b; | 2331 | unsigned int fc_a, fc_b; |
diff --git a/drivers/media/video/w9968cf.c b/drivers/media/video/w9968cf.c index 2912326a5aef..ddce2fb83424 100644 --- a/drivers/media/video/w9968cf.c +++ b/drivers/media/video/w9968cf.c | |||
@@ -417,7 +417,7 @@ static int w9968cf_write_fsb(struct w9968cf_device*, u16* data); | |||
417 | static int w9968cf_write_sb(struct w9968cf_device*, u16 value); | 417 | static int w9968cf_write_sb(struct w9968cf_device*, u16 value); |
418 | static int w9968cf_read_sb(struct w9968cf_device*); | 418 | static int w9968cf_read_sb(struct w9968cf_device*); |
419 | static int w9968cf_upload_quantizationtables(struct w9968cf_device*); | 419 | static int w9968cf_upload_quantizationtables(struct w9968cf_device*); |
420 | static void w9968cf_urb_complete(struct urb *urb, struct pt_regs *regs); | 420 | static void w9968cf_urb_complete(struct urb *urb); |
421 | 421 | ||
422 | /* Low-level I2C (SMBus) I/O */ | 422 | /* Low-level I2C (SMBus) I/O */ |
423 | static int w9968cf_smbus_start(struct w9968cf_device*); | 423 | static int w9968cf_smbus_start(struct w9968cf_device*); |
@@ -781,7 +781,7 @@ static int w9968cf_allocate_memory(struct w9968cf_device* cam) | |||
781 | If there are no requested frames in the FIFO list, packets are collected into | 781 | If there are no requested frames in the FIFO list, packets are collected into |
782 | a temporary buffer. | 782 | a temporary buffer. |
783 | --------------------------------------------------------------------------*/ | 783 | --------------------------------------------------------------------------*/ |
784 | static void w9968cf_urb_complete(struct urb *urb, struct pt_regs *regs) | 784 | static void w9968cf_urb_complete(struct urb *urb) |
785 | { | 785 | { |
786 | struct w9968cf_device* cam = (struct w9968cf_device*)urb->context; | 786 | struct w9968cf_device* cam = (struct w9968cf_device*)urb->context; |
787 | struct w9968cf_frame_t** f; | 787 | struct w9968cf_frame_t** f; |
diff --git a/drivers/media/video/zc0301/zc0301_core.c b/drivers/media/video/zc0301/zc0301_core.c index 1b2be2d2a3ec..5b5563424422 100644 --- a/drivers/media/video/zc0301/zc0301_core.c +++ b/drivers/media/video/zc0301/zc0301_core.c | |||
@@ -303,7 +303,7 @@ int zc0301_i2c_write(struct zc0301_device* cam, u16 address, u16 value) | |||
303 | 303 | ||
304 | /*****************************************************************************/ | 304 | /*****************************************************************************/ |
305 | 305 | ||
306 | static void zc0301_urb_complete(struct urb *urb, struct pt_regs* regs) | 306 | static void zc0301_urb_complete(struct urb *urb) |
307 | { | 307 | { |
308 | struct zc0301_device* cam = urb->context; | 308 | struct zc0301_device* cam = urb->context; |
309 | struct zc0301_frame_t** f; | 309 | struct zc0301_frame_t** f; |
diff --git a/drivers/media/video/zoran_device.c b/drivers/media/video/zoran_device.c index 3cbac2e8aed3..168e431d7c71 100644 --- a/drivers/media/video/zoran_device.c +++ b/drivers/media/video/zoran_device.c | |||
@@ -1408,15 +1408,14 @@ error_handler (struct zoran *zr, | |||
1408 | 1408 | ||
1409 | irqreturn_t | 1409 | irqreturn_t |
1410 | zoran_irq (int irq, | 1410 | zoran_irq (int irq, |
1411 | void *dev_id, | 1411 | void *dev_id) |
1412 | struct pt_regs *regs) | ||
1413 | { | 1412 | { |
1414 | u32 stat, astat; | 1413 | u32 stat, astat; |
1415 | int count; | 1414 | int count; |
1416 | struct zoran *zr; | 1415 | struct zoran *zr; |
1417 | unsigned long flags; | 1416 | unsigned long flags; |
1418 | 1417 | ||
1419 | zr = (struct zoran *) dev_id; | 1418 | zr = dev_id; |
1420 | count = 0; | 1419 | count = 0; |
1421 | 1420 | ||
1422 | if (zr->testing) { | 1421 | if (zr->testing) { |
diff --git a/drivers/media/video/zoran_device.h b/drivers/media/video/zoran_device.h index f19705cbdb39..37fa86a34083 100644 --- a/drivers/media/video/zoran_device.h +++ b/drivers/media/video/zoran_device.h | |||
@@ -64,9 +64,7 @@ extern int wait_grab_pending(struct zoran *zr); | |||
64 | /* interrupts */ | 64 | /* interrupts */ |
65 | extern void print_interrupts(struct zoran *zr); | 65 | extern void print_interrupts(struct zoran *zr); |
66 | extern void clear_interrupt_counters(struct zoran *zr); | 66 | extern void clear_interrupt_counters(struct zoran *zr); |
67 | extern irqreturn_t zoran_irq(int irq, | 67 | extern irqreturn_t zoran_irq(int irq, void *dev_id); |
68 | void *dev_id, | ||
69 | struct pt_regs *regs); | ||
70 | 68 | ||
71 | /* JPEG codec access */ | 69 | /* JPEG codec access */ |
72 | extern void jpeg_start(struct zoran *zr); | 70 | extern void jpeg_start(struct zoran *zr); |
diff --git a/drivers/media/video/zr36120.c b/drivers/media/video/zr36120.c index b5ffe53c40d8..0cbf564388a6 100644 --- a/drivers/media/video/zr36120.c +++ b/drivers/media/video/zr36120.c | |||
@@ -335,13 +335,13 @@ DEBUG(printk(CARD_DEBUG "turning off\n",CARD)); | |||
335 | } | 335 | } |
336 | 336 | ||
337 | static | 337 | static |
338 | void zoran_irq(int irq, void *dev_id, struct pt_regs * regs) | 338 | void zoran_irq(int irq, void *dev_id) |
339 | { | 339 | { |
340 | u32 stat,estat; | 340 | u32 stat,estat; |
341 | int count = 0; | 341 | int count = 0; |
342 | struct zoran *ztv = dev_id; | 342 | struct zoran *ztv = dev_id; |
343 | 343 | ||
344 | UNUSED(irq); UNUSED(regs); | 344 | UNUSED(irq); |
345 | for (;;) { | 345 | for (;;) { |
346 | /* get/clear interrupt status bits */ | 346 | /* get/clear interrupt status bits */ |
347 | stat=zrread(ZORAN_ISR); | 347 | stat=zrread(ZORAN_ISR); |
diff --git a/drivers/message/fusion/mptbase.c b/drivers/message/fusion/mptbase.c index 29d0635cce1d..e5c72719debc 100644 --- a/drivers/message/fusion/mptbase.c +++ b/drivers/message/fusion/mptbase.c | |||
@@ -122,7 +122,7 @@ static DECLARE_WAIT_QUEUE_HEAD(mpt_waitq); | |||
122 | /* | 122 | /* |
123 | * Forward protos... | 123 | * Forward protos... |
124 | */ | 124 | */ |
125 | static irqreturn_t mpt_interrupt(int irq, void *bus_id, struct pt_regs *r); | 125 | static irqreturn_t mpt_interrupt(int irq, void *bus_id); |
126 | static int mpt_base_reply(MPT_ADAPTER *ioc, MPT_FRAME_HDR *req, MPT_FRAME_HDR *reply); | 126 | static int mpt_base_reply(MPT_ADAPTER *ioc, MPT_FRAME_HDR *req, MPT_FRAME_HDR *reply); |
127 | static int mpt_handshake_req_reply_wait(MPT_ADAPTER *ioc, int reqBytes, | 127 | static int mpt_handshake_req_reply_wait(MPT_ADAPTER *ioc, int reqBytes, |
128 | u32 *req, int replyBytes, u16 *u16reply, int maxwait, | 128 | u32 *req, int replyBytes, u16 *u16reply, int maxwait, |
@@ -351,7 +351,6 @@ mpt_reply(MPT_ADAPTER *ioc, u32 pa) | |||
351 | * mpt_interrupt - MPT adapter (IOC) specific interrupt handler. | 351 | * mpt_interrupt - MPT adapter (IOC) specific interrupt handler. |
352 | * @irq: irq number (not used) | 352 | * @irq: irq number (not used) |
353 | * @bus_id: bus identifier cookie == pointer to MPT_ADAPTER structure | 353 | * @bus_id: bus identifier cookie == pointer to MPT_ADAPTER structure |
354 | * @r: pt_regs pointer (not used) | ||
355 | * | 354 | * |
356 | * This routine is registered via the request_irq() kernel API call, | 355 | * This routine is registered via the request_irq() kernel API call, |
357 | * and handles all interrupts generated from a specific MPT adapter | 356 | * and handles all interrupts generated from a specific MPT adapter |
@@ -365,7 +364,7 @@ mpt_reply(MPT_ADAPTER *ioc, u32 pa) | |||
365 | * the protocol-specific details of the MPT request completion. | 364 | * the protocol-specific details of the MPT request completion. |
366 | */ | 365 | */ |
367 | static irqreturn_t | 366 | static irqreturn_t |
368 | mpt_interrupt(int irq, void *bus_id, struct pt_regs *r) | 367 | mpt_interrupt(int irq, void *bus_id) |
369 | { | 368 | { |
370 | MPT_ADAPTER *ioc = bus_id; | 369 | MPT_ADAPTER *ioc = bus_id; |
371 | u32 pa = CHIPREG_READ32_dmasync(&ioc->chip->ReplyFifo); | 370 | u32 pa = CHIPREG_READ32_dmasync(&ioc->chip->ReplyFifo); |
diff --git a/drivers/message/i2o/pci.c b/drivers/message/i2o/pci.c index dec41cc89937..62f1ac08332c 100644 --- a/drivers/message/i2o/pci.c +++ b/drivers/message/i2o/pci.c | |||
@@ -224,12 +224,11 @@ static int __devinit i2o_pci_alloc(struct i2o_controller *c) | |||
224 | * i2o_pci_interrupt - Interrupt handler for I2O controller | 224 | * i2o_pci_interrupt - Interrupt handler for I2O controller |
225 | * @irq: interrupt line | 225 | * @irq: interrupt line |
226 | * @dev_id: pointer to the I2O controller | 226 | * @dev_id: pointer to the I2O controller |
227 | * @r: pointer to registers | ||
228 | * | 227 | * |
229 | * Handle an interrupt from a PCI based I2O controller. This turns out | 228 | * Handle an interrupt from a PCI based I2O controller. This turns out |
230 | * to be rather simple. We keep the controller pointer in the cookie. | 229 | * to be rather simple. We keep the controller pointer in the cookie. |
231 | */ | 230 | */ |
232 | static irqreturn_t i2o_pci_interrupt(int irq, void *dev_id, struct pt_regs *r) | 231 | static irqreturn_t i2o_pci_interrupt(int irq, void *dev_id) |
233 | { | 232 | { |
234 | struct i2o_controller *c = dev_id; | 233 | struct i2o_controller *c = dev_id; |
235 | u32 m; | 234 | u32 m; |
diff --git a/drivers/mfd/ucb1x00-core.c b/drivers/mfd/ucb1x00-core.c index 2bf32721eb53..149810a084f5 100644 --- a/drivers/mfd/ucb1x00-core.c +++ b/drivers/mfd/ucb1x00-core.c | |||
@@ -203,7 +203,7 @@ void ucb1x00_adc_disable(struct ucb1x00 *ucb) | |||
203 | * SIBCLK to talk to the chip. We leave the clock running until | 203 | * SIBCLK to talk to the chip. We leave the clock running until |
204 | * we have finished processing all interrupts from the chip. | 204 | * we have finished processing all interrupts from the chip. |
205 | */ | 205 | */ |
206 | static irqreturn_t ucb1x00_irq(int irqnr, void *devid, struct pt_regs *regs) | 206 | static irqreturn_t ucb1x00_irq(int irqnr, void *devid) |
207 | { | 207 | { |
208 | struct ucb1x00 *ucb = devid; | 208 | struct ucb1x00 *ucb = devid; |
209 | struct ucb1x00_irq *irq; | 209 | struct ucb1x00_irq *irq; |
diff --git a/drivers/misc/ibmasm/ibmasm.h b/drivers/misc/ibmasm/ibmasm.h index 634d538ccd14..48d5abebfc30 100644 --- a/drivers/misc/ibmasm/ibmasm.h +++ b/drivers/misc/ibmasm/ibmasm.h | |||
@@ -196,10 +196,10 @@ extern int ibmasm_send_os_state(struct service_processor *sp, int os_state); | |||
196 | 196 | ||
197 | /* low level message processing */ | 197 | /* low level message processing */ |
198 | extern int ibmasm_send_i2o_message(struct service_processor *sp); | 198 | extern int ibmasm_send_i2o_message(struct service_processor *sp); |
199 | extern irqreturn_t ibmasm_interrupt_handler(int irq, void * dev_id, struct pt_regs *regs); | 199 | extern irqreturn_t ibmasm_interrupt_handler(int irq, void * dev_id); |
200 | 200 | ||
201 | /* remote console */ | 201 | /* remote console */ |
202 | extern void ibmasm_handle_mouse_interrupt(struct service_processor *sp, struct pt_regs *regs); | 202 | extern void ibmasm_handle_mouse_interrupt(struct service_processor *sp); |
203 | extern int ibmasm_init_remote_input_dev(struct service_processor *sp); | 203 | extern int ibmasm_init_remote_input_dev(struct service_processor *sp); |
204 | extern void ibmasm_free_remote_input_dev(struct service_processor *sp); | 204 | extern void ibmasm_free_remote_input_dev(struct service_processor *sp); |
205 | 205 | ||
diff --git a/drivers/misc/ibmasm/lowlevel.c b/drivers/misc/ibmasm/lowlevel.c index 47949a2c7e94..a3c589b7cbfa 100644 --- a/drivers/misc/ibmasm/lowlevel.c +++ b/drivers/misc/ibmasm/lowlevel.c | |||
@@ -54,7 +54,7 @@ int ibmasm_send_i2o_message(struct service_processor *sp) | |||
54 | return 0; | 54 | return 0; |
55 | } | 55 | } |
56 | 56 | ||
57 | irqreturn_t ibmasm_interrupt_handler(int irq, void * dev_id, struct pt_regs *regs) | 57 | irqreturn_t ibmasm_interrupt_handler(int irq, void * dev_id) |
58 | { | 58 | { |
59 | u32 mfa; | 59 | u32 mfa; |
60 | struct service_processor *sp = (struct service_processor *)dev_id; | 60 | struct service_processor *sp = (struct service_processor *)dev_id; |
@@ -67,7 +67,7 @@ irqreturn_t ibmasm_interrupt_handler(int irq, void * dev_id, struct pt_regs *reg | |||
67 | dbg("respond to interrupt at %s\n", get_timestamp(tsbuf)); | 67 | dbg("respond to interrupt at %s\n", get_timestamp(tsbuf)); |
68 | 68 | ||
69 | if (mouse_interrupt_pending(sp)) { | 69 | if (mouse_interrupt_pending(sp)) { |
70 | ibmasm_handle_mouse_interrupt(sp, regs); | 70 | ibmasm_handle_mouse_interrupt(sp); |
71 | clear_mouse_interrupt(sp); | 71 | clear_mouse_interrupt(sp); |
72 | } | 72 | } |
73 | 73 | ||
diff --git a/drivers/misc/ibmasm/remote.c b/drivers/misc/ibmasm/remote.c index 0f9e3aa34d07..a40fda6c402c 100644 --- a/drivers/misc/ibmasm/remote.c +++ b/drivers/misc/ibmasm/remote.c | |||
@@ -158,12 +158,10 @@ static void print_input(struct remote_input *input) | |||
158 | } | 158 | } |
159 | } | 159 | } |
160 | 160 | ||
161 | static void send_mouse_event(struct input_dev *dev, struct pt_regs *regs, | 161 | static void send_mouse_event(struct input_dev *dev, struct remote_input *input) |
162 | struct remote_input *input) | ||
163 | { | 162 | { |
164 | unsigned char buttons = input->mouse_buttons; | 163 | unsigned char buttons = input->mouse_buttons; |
165 | 164 | ||
166 | input_regs(dev, regs); | ||
167 | input_report_abs(dev, ABS_X, input->data.mouse.x); | 165 | input_report_abs(dev, ABS_X, input->data.mouse.x); |
168 | input_report_abs(dev, ABS_Y, input->data.mouse.y); | 166 | input_report_abs(dev, ABS_Y, input->data.mouse.y); |
169 | input_report_key(dev, BTN_LEFT, buttons & REMOTE_BUTTON_LEFT); | 167 | input_report_key(dev, BTN_LEFT, buttons & REMOTE_BUTTON_LEFT); |
@@ -172,7 +170,7 @@ static void send_mouse_event(struct input_dev *dev, struct pt_regs *regs, | |||
172 | input_sync(dev); | 170 | input_sync(dev); |
173 | } | 171 | } |
174 | 172 | ||
175 | static void send_keyboard_event(struct input_dev *dev, struct pt_regs *regs, | 173 | static void send_keyboard_event(struct input_dev *dev, |
176 | struct remote_input *input) | 174 | struct remote_input *input) |
177 | { | 175 | { |
178 | unsigned int key; | 176 | unsigned int key; |
@@ -182,13 +180,11 @@ static void send_keyboard_event(struct input_dev *dev, struct pt_regs *regs, | |||
182 | key = xlate_high[code & 0xff]; | 180 | key = xlate_high[code & 0xff]; |
183 | else | 181 | else |
184 | key = xlate[code]; | 182 | key = xlate[code]; |
185 | input_regs(dev, regs); | ||
186 | input_report_key(dev, key, (input->data.keyboard.key_down) ? 1 : 0); | 183 | input_report_key(dev, key, (input->data.keyboard.key_down) ? 1 : 0); |
187 | input_sync(dev); | 184 | input_sync(dev); |
188 | } | 185 | } |
189 | 186 | ||
190 | void ibmasm_handle_mouse_interrupt(struct service_processor *sp, | 187 | void ibmasm_handle_mouse_interrupt(struct service_processor *sp) |
191 | struct pt_regs *regs) | ||
192 | { | 188 | { |
193 | unsigned long reader; | 189 | unsigned long reader; |
194 | unsigned long writer; | 190 | unsigned long writer; |
@@ -203,9 +199,9 @@ void ibmasm_handle_mouse_interrupt(struct service_processor *sp, | |||
203 | 199 | ||
204 | print_input(&input); | 200 | print_input(&input); |
205 | if (input.type == INPUT_TYPE_MOUSE) { | 201 | if (input.type == INPUT_TYPE_MOUSE) { |
206 | send_mouse_event(sp->remote.mouse_dev, regs, &input); | 202 | send_mouse_event(sp->remote.mouse_dev, &input); |
207 | } else if (input.type == INPUT_TYPE_KEYBOARD) { | 203 | } else if (input.type == INPUT_TYPE_KEYBOARD) { |
208 | send_keyboard_event(sp->remote.keybd_dev, regs, &input); | 204 | send_keyboard_event(sp->remote.keybd_dev, &input); |
209 | } else | 205 | } else |
210 | break; | 206 | break; |
211 | 207 | ||
diff --git a/drivers/misc/lkdtm.c b/drivers/misc/lkdtm.c index e689ee94ac3d..bbdba7b37e11 100644 --- a/drivers/misc/lkdtm.c +++ b/drivers/misc/lkdtm.c | |||
@@ -127,15 +127,14 @@ module_param(cpoint_count, int, 06444); | |||
127 | MODULE_PARM_DESC(cpoint_count, "Crash Point Count, number of times the \ | 127 | MODULE_PARM_DESC(cpoint_count, "Crash Point Count, number of times the \ |
128 | crash point is to be hit to trigger action"); | 128 | crash point is to be hit to trigger action"); |
129 | 129 | ||
130 | unsigned int jp_do_irq(unsigned int irq, struct pt_regs *regs) | 130 | unsigned int jp_do_irq(unsigned int irq) |
131 | { | 131 | { |
132 | lkdtm_handler(); | 132 | lkdtm_handler(); |
133 | jprobe_return(); | 133 | jprobe_return(); |
134 | return 0; | 134 | return 0; |
135 | } | 135 | } |
136 | 136 | ||
137 | irqreturn_t jp_handle_irq_event(unsigned int irq, struct pt_regs *regs, | 137 | irqreturn_t jp_handle_irq_event(unsigned int irq, struct irqaction *action) |
138 | struct irqaction *action) | ||
139 | { | 138 | { |
140 | lkdtm_handler(); | 139 | lkdtm_handler(); |
141 | jprobe_return(); | 140 | jprobe_return(); |
diff --git a/drivers/misc/tifm_7xx1.c b/drivers/misc/tifm_7xx1.c index a7ed30446185..1ba8754e9383 100644 --- a/drivers/misc/tifm_7xx1.c +++ b/drivers/misc/tifm_7xx1.c | |||
@@ -48,7 +48,7 @@ static void tifm_7xx1_remove_media(void *adapter) | |||
48 | printk(KERN_INFO DRIVER_NAME | 48 | printk(KERN_INFO DRIVER_NAME |
49 | ": demand removing card from socket %d\n", cnt); | 49 | ": demand removing card from socket %d\n", cnt); |
50 | sock = fm->sockets[cnt]; | 50 | sock = fm->sockets[cnt]; |
51 | fm->sockets[cnt] = 0; | 51 | fm->sockets[cnt] = NULL; |
52 | fm->remove_mask &= ~(1 << cnt); | 52 | fm->remove_mask &= ~(1 << cnt); |
53 | 53 | ||
54 | writel(0x0e00, sock->addr + SOCK_CONTROL); | 54 | writel(0x0e00, sock->addr + SOCK_CONTROL); |
@@ -67,7 +67,7 @@ static void tifm_7xx1_remove_media(void *adapter) | |||
67 | class_device_put(&fm->cdev); | 67 | class_device_put(&fm->cdev); |
68 | } | 68 | } |
69 | 69 | ||
70 | static irqreturn_t tifm_7xx1_isr(int irq, void *dev_id, struct pt_regs *regs) | 70 | static irqreturn_t tifm_7xx1_isr(int irq, void *dev_id) |
71 | { | 71 | { |
72 | struct tifm_adapter *fm = dev_id; | 72 | struct tifm_adapter *fm = dev_id; |
73 | unsigned int irq_status; | 73 | unsigned int irq_status; |
@@ -118,7 +118,7 @@ static irqreturn_t tifm_7xx1_isr(int irq, void *dev_id, struct pt_regs *regs) | |||
118 | return IRQ_HANDLED; | 118 | return IRQ_HANDLED; |
119 | } | 119 | } |
120 | 120 | ||
121 | static tifm_media_id tifm_7xx1_toggle_sock_power(char *sock_addr, int is_x2) | 121 | static tifm_media_id tifm_7xx1_toggle_sock_power(char __iomem *sock_addr, int is_x2) |
122 | { | 122 | { |
123 | unsigned int s_state; | 123 | unsigned int s_state; |
124 | int cnt; | 124 | int cnt; |
@@ -163,7 +163,8 @@ static tifm_media_id tifm_7xx1_toggle_sock_power(char *sock_addr, int is_x2) | |||
163 | return (readl(sock_addr + SOCK_PRESENT_STATE) >> 4) & 7; | 163 | return (readl(sock_addr + SOCK_PRESENT_STATE) >> 4) & 7; |
164 | } | 164 | } |
165 | 165 | ||
166 | inline static char *tifm_7xx1_sock_addr(char *base_addr, unsigned int sock_num) | 166 | inline static char __iomem * |
167 | tifm_7xx1_sock_addr(char __iomem *base_addr, unsigned int sock_num) | ||
167 | { | 168 | { |
168 | return base_addr + ((sock_num + 1) << 10); | 169 | return base_addr + ((sock_num + 1) << 10); |
169 | } | 170 | } |
@@ -176,7 +177,7 @@ static void tifm_7xx1_insert_media(void *adapter) | |||
176 | char *card_name = "xx"; | 177 | char *card_name = "xx"; |
177 | int cnt, ok_to_register; | 178 | int cnt, ok_to_register; |
178 | unsigned int insert_mask; | 179 | unsigned int insert_mask; |
179 | struct tifm_dev *new_sock = 0; | 180 | struct tifm_dev *new_sock = NULL; |
180 | 181 | ||
181 | if (!class_device_get(&fm->cdev)) | 182 | if (!class_device_get(&fm->cdev)) |
182 | return; | 183 | return; |
@@ -230,7 +231,7 @@ static void tifm_7xx1_insert_media(void *adapter) | |||
230 | if (!ok_to_register || | 231 | if (!ok_to_register || |
231 | device_register(&new_sock->dev)) { | 232 | device_register(&new_sock->dev)) { |
232 | spin_lock_irqsave(&fm->lock, flags); | 233 | spin_lock_irqsave(&fm->lock, flags); |
233 | fm->sockets[cnt] = 0; | 234 | fm->sockets[cnt] = NULL; |
234 | spin_unlock_irqrestore(&fm->lock, | 235 | spin_unlock_irqrestore(&fm->lock, |
235 | flags); | 236 | flags); |
236 | tifm_free_device(&new_sock->dev); | 237 | tifm_free_device(&new_sock->dev); |
@@ -390,7 +391,7 @@ static void tifm_7xx1_remove(struct pci_dev *dev) | |||
390 | 391 | ||
391 | tifm_remove_adapter(fm); | 392 | tifm_remove_adapter(fm); |
392 | 393 | ||
393 | pci_set_drvdata(dev, 0); | 394 | pci_set_drvdata(dev, NULL); |
394 | 395 | ||
395 | iounmap(fm->addr); | 396 | iounmap(fm->addr); |
396 | pci_intx(dev, 0); | 397 | pci_intx(dev, 0); |
diff --git a/drivers/misc/tifm_core.c b/drivers/misc/tifm_core.c index cca5f8522469..ee326136d03b 100644 --- a/drivers/misc/tifm_core.c +++ b/drivers/misc/tifm_core.c | |||
@@ -157,7 +157,7 @@ struct tifm_dev *tifm_alloc_device(struct tifm_adapter *fm, unsigned int id) | |||
157 | dev->wq = create_singlethread_workqueue(dev->wq_name); | 157 | dev->wq = create_singlethread_workqueue(dev->wq_name); |
158 | if (!dev->wq) { | 158 | if (!dev->wq) { |
159 | kfree(dev); | 159 | kfree(dev); |
160 | return 0; | 160 | return NULL; |
161 | } | 161 | } |
162 | dev->dev.parent = fm->dev; | 162 | dev->dev.parent = fm->dev; |
163 | dev->dev.bus = &tifm_bus_type; | 163 | dev->dev.bus = &tifm_bus_type; |
diff --git a/drivers/mmc/at91_mci.c b/drivers/mmc/at91_mci.c index cb142a66098c..494b23fb0a01 100644 --- a/drivers/mmc/at91_mci.c +++ b/drivers/mmc/at91_mci.c | |||
@@ -661,7 +661,7 @@ static void at91_mci_set_ios(struct mmc_host *mmc, struct mmc_ios *ios) | |||
661 | /* | 661 | /* |
662 | * Handle an interrupt | 662 | * Handle an interrupt |
663 | */ | 663 | */ |
664 | static irqreturn_t at91_mci_irq(int irq, void *devid, struct pt_regs *regs) | 664 | static irqreturn_t at91_mci_irq(int irq, void *devid) |
665 | { | 665 | { |
666 | struct at91mci_host *host = devid; | 666 | struct at91mci_host *host = devid; |
667 | int completed = 0; | 667 | int completed = 0; |
@@ -754,7 +754,7 @@ static irqreturn_t at91_mci_irq(int irq, void *devid, struct pt_regs *regs) | |||
754 | return IRQ_HANDLED; | 754 | return IRQ_HANDLED; |
755 | } | 755 | } |
756 | 756 | ||
757 | static irqreturn_t at91_mmc_det_irq(int irq, void *_host, struct pt_regs *regs) | 757 | static irqreturn_t at91_mmc_det_irq(int irq, void *_host) |
758 | { | 758 | { |
759 | struct at91mci_host *host = _host; | 759 | struct at91mci_host *host = _host; |
760 | int present = !at91_get_gpio_value(irq); | 760 | int present = !at91_get_gpio_value(irq); |
diff --git a/drivers/mmc/au1xmmc.c b/drivers/mmc/au1xmmc.c index 61268da13957..53ffcbb14a97 100644 --- a/drivers/mmc/au1xmmc.c +++ b/drivers/mmc/au1xmmc.c | |||
@@ -750,7 +750,7 @@ static void au1xmmc_dma_callback(int irq, void *dev_id) | |||
750 | #define STATUS_DATA_IN (SD_STATUS_NE) | 750 | #define STATUS_DATA_IN (SD_STATUS_NE) |
751 | #define STATUS_DATA_OUT (SD_STATUS_TH) | 751 | #define STATUS_DATA_OUT (SD_STATUS_TH) |
752 | 752 | ||
753 | static irqreturn_t au1xmmc_irq(int irq, void *dev_id, struct pt_regs *regs) | 753 | static irqreturn_t au1xmmc_irq(int irq, void *dev_id) |
754 | { | 754 | { |
755 | 755 | ||
756 | u32 status; | 756 | u32 status; |
diff --git a/drivers/mmc/imxmmc.c b/drivers/mmc/imxmmc.c index 1b79dd271aae..659d4a822cc5 100644 --- a/drivers/mmc/imxmmc.c +++ b/drivers/mmc/imxmmc.c | |||
@@ -635,7 +635,7 @@ static int imxmci_cpu_driven_data(struct imxmci_host *host, unsigned int *pstat) | |||
635 | return trans_done; | 635 | return trans_done; |
636 | } | 636 | } |
637 | 637 | ||
638 | static void imxmci_dma_irq(int dma, void *devid, struct pt_regs *regs) | 638 | static void imxmci_dma_irq(int dma, void *devid) |
639 | { | 639 | { |
640 | struct imxmci_host *host = devid; | 640 | struct imxmci_host *host = devid; |
641 | uint32_t stat = MMC_STATUS; | 641 | uint32_t stat = MMC_STATUS; |
@@ -646,7 +646,7 @@ static void imxmci_dma_irq(int dma, void *devid, struct pt_regs *regs) | |||
646 | tasklet_schedule(&host->tasklet); | 646 | tasklet_schedule(&host->tasklet); |
647 | } | 647 | } |
648 | 648 | ||
649 | static irqreturn_t imxmci_irq(int irq, void *devid, struct pt_regs *regs) | 649 | static irqreturn_t imxmci_irq(int irq, void *devid) |
650 | { | 650 | { |
651 | struct imxmci_host *host = devid; | 651 | struct imxmci_host *host = devid; |
652 | uint32_t stat = MMC_STATUS; | 652 | uint32_t stat = MMC_STATUS; |
diff --git a/drivers/mmc/mmc_block.c b/drivers/mmc/mmc_block.c index c1293f1bda87..f9027c8db792 100644 --- a/drivers/mmc/mmc_block.c +++ b/drivers/mmc/mmc_block.c | |||
@@ -28,6 +28,7 @@ | |||
28 | #include <linux/kdev_t.h> | 28 | #include <linux/kdev_t.h> |
29 | #include <linux/blkdev.h> | 29 | #include <linux/blkdev.h> |
30 | #include <linux/mutex.h> | 30 | #include <linux/mutex.h> |
31 | #include <linux/scatterlist.h> | ||
31 | 32 | ||
32 | #include <linux/mmc/card.h> | 33 | #include <linux/mmc/card.h> |
33 | #include <linux/mmc/host.h> | 34 | #include <linux/mmc/host.h> |
@@ -154,6 +155,71 @@ static int mmc_blk_prep_rq(struct mmc_queue *mq, struct request *req) | |||
154 | return stat; | 155 | return stat; |
155 | } | 156 | } |
156 | 157 | ||
158 | static u32 mmc_sd_num_wr_blocks(struct mmc_card *card) | ||
159 | { | ||
160 | int err; | ||
161 | u32 blocks; | ||
162 | |||
163 | struct mmc_request mrq; | ||
164 | struct mmc_command cmd; | ||
165 | struct mmc_data data; | ||
166 | unsigned int timeout_us; | ||
167 | |||
168 | struct scatterlist sg; | ||
169 | |||
170 | memset(&cmd, 0, sizeof(struct mmc_command)); | ||
171 | |||
172 | cmd.opcode = MMC_APP_CMD; | ||
173 | cmd.arg = card->rca << 16; | ||
174 | cmd.flags = MMC_RSP_R1 | MMC_CMD_AC; | ||
175 | |||
176 | err = mmc_wait_for_cmd(card->host, &cmd, 0); | ||
177 | if ((err != MMC_ERR_NONE) || !(cmd.resp[0] & R1_APP_CMD)) | ||
178 | return (u32)-1; | ||
179 | |||
180 | memset(&cmd, 0, sizeof(struct mmc_command)); | ||
181 | |||
182 | cmd.opcode = SD_APP_SEND_NUM_WR_BLKS; | ||
183 | cmd.arg = 0; | ||
184 | cmd.flags = MMC_RSP_R1 | MMC_CMD_ADTC; | ||
185 | |||
186 | memset(&data, 0, sizeof(struct mmc_data)); | ||
187 | |||
188 | data.timeout_ns = card->csd.tacc_ns * 100; | ||
189 | data.timeout_clks = card->csd.tacc_clks * 100; | ||
190 | |||
191 | timeout_us = data.timeout_ns / 1000; | ||
192 | timeout_us += data.timeout_clks * 1000 / | ||
193 | (card->host->ios.clock / 1000); | ||
194 | |||
195 | if (timeout_us > 100000) { | ||
196 | data.timeout_ns = 100000000; | ||
197 | data.timeout_clks = 0; | ||
198 | } | ||
199 | |||
200 | data.blksz = 4; | ||
201 | data.blocks = 1; | ||
202 | data.flags = MMC_DATA_READ; | ||
203 | data.sg = &sg; | ||
204 | data.sg_len = 1; | ||
205 | |||
206 | memset(&mrq, 0, sizeof(struct mmc_request)); | ||
207 | |||
208 | mrq.cmd = &cmd; | ||
209 | mrq.data = &data; | ||
210 | |||
211 | sg_init_one(&sg, &blocks, 4); | ||
212 | |||
213 | mmc_wait_for_req(card->host, &mrq); | ||
214 | |||
215 | if (cmd.error != MMC_ERR_NONE || data.error != MMC_ERR_NONE) | ||
216 | return (u32)-1; | ||
217 | |||
218 | blocks = ntohl(blocks); | ||
219 | |||
220 | return blocks; | ||
221 | } | ||
222 | |||
157 | static int mmc_blk_issue_rq(struct mmc_queue *mq, struct request *req) | 223 | static int mmc_blk_issue_rq(struct mmc_queue *mq, struct request *req) |
158 | { | 224 | { |
159 | struct mmc_blk_data *md = mq->data; | 225 | struct mmc_blk_data *md = mq->data; |
@@ -184,10 +250,13 @@ static int mmc_blk_issue_rq(struct mmc_queue *mq, struct request *req) | |||
184 | 250 | ||
185 | /* | 251 | /* |
186 | * If the host doesn't support multiple block writes, force | 252 | * If the host doesn't support multiple block writes, force |
187 | * block writes to single block. | 253 | * block writes to single block. SD cards are excepted from |
254 | * this rule as they support querying the number of | ||
255 | * successfully written sectors. | ||
188 | */ | 256 | */ |
189 | if (rq_data_dir(req) != READ && | 257 | if (rq_data_dir(req) != READ && |
190 | !(card->host->caps & MMC_CAP_MULTIWRITE)) | 258 | !(card->host->caps & MMC_CAP_MULTIWRITE) && |
259 | !mmc_card_sd(card)) | ||
191 | brq.data.blocks = 1; | 260 | brq.data.blocks = 1; |
192 | 261 | ||
193 | if (brq.data.blocks > 1) { | 262 | if (brq.data.blocks > 1) { |
@@ -276,24 +345,41 @@ static int mmc_blk_issue_rq(struct mmc_queue *mq, struct request *req) | |||
276 | return 1; | 345 | return 1; |
277 | 346 | ||
278 | cmd_err: | 347 | cmd_err: |
279 | mmc_card_release_host(card); | ||
280 | |||
281 | ret = 1; | 348 | ret = 1; |
282 | 349 | ||
283 | /* | 350 | /* |
284 | * For writes and where the host claims to support proper | 351 | * If this is an SD card and we're writing, we can first |
285 | * error reporting, we first ok the successful blocks. | 352 | * mark the known good sectors as ok. |
353 | * | ||
354 | * If the card is not SD, we can still ok written sectors | ||
355 | * if the controller can do proper error reporting. | ||
286 | * | 356 | * |
287 | * For reads we just fail the entire chunk as that should | 357 | * For reads we just fail the entire chunk as that should |
288 | * be safe in all cases. | 358 | * be safe in all cases. |
289 | */ | 359 | */ |
290 | if (rq_data_dir(req) != READ && | 360 | if (rq_data_dir(req) != READ && mmc_card_sd(card)) { |
291 | (card->host->caps & MMC_CAP_MULTIWRITE)) { | 361 | u32 blocks; |
362 | unsigned int bytes; | ||
363 | |||
364 | blocks = mmc_sd_num_wr_blocks(card); | ||
365 | if (blocks != (u32)-1) { | ||
366 | if (card->csd.write_partial) | ||
367 | bytes = blocks << md->block_bits; | ||
368 | else | ||
369 | bytes = blocks << 9; | ||
370 | spin_lock_irq(&md->lock); | ||
371 | ret = end_that_request_chunk(req, 1, bytes); | ||
372 | spin_unlock_irq(&md->lock); | ||
373 | } | ||
374 | } else if (rq_data_dir(req) != READ && | ||
375 | (card->host->caps & MMC_CAP_MULTIWRITE)) { | ||
292 | spin_lock_irq(&md->lock); | 376 | spin_lock_irq(&md->lock); |
293 | ret = end_that_request_chunk(req, 1, brq.data.bytes_xfered); | 377 | ret = end_that_request_chunk(req, 1, brq.data.bytes_xfered); |
294 | spin_unlock_irq(&md->lock); | 378 | spin_unlock_irq(&md->lock); |
295 | } | 379 | } |
296 | 380 | ||
381 | mmc_card_release_host(card); | ||
382 | |||
297 | spin_lock_irq(&md->lock); | 383 | spin_lock_irq(&md->lock); |
298 | while (ret) { | 384 | while (ret) { |
299 | ret = end_that_request_chunk(req, 0, | 385 | ret = end_that_request_chunk(req, 0, |
diff --git a/drivers/mmc/mmci.c b/drivers/mmc/mmci.c index 2b5a0cc9ea56..828503c4ee62 100644 --- a/drivers/mmc/mmci.c +++ b/drivers/mmc/mmci.c | |||
@@ -261,7 +261,7 @@ static int mmci_pio_write(struct mmci_host *host, char *buffer, unsigned int rem | |||
261 | /* | 261 | /* |
262 | * PIO data transfer IRQ handler. | 262 | * PIO data transfer IRQ handler. |
263 | */ | 263 | */ |
264 | static irqreturn_t mmci_pio_irq(int irq, void *dev_id, struct pt_regs *regs) | 264 | static irqreturn_t mmci_pio_irq(int irq, void *dev_id) |
265 | { | 265 | { |
266 | struct mmci_host *host = dev_id; | 266 | struct mmci_host *host = dev_id; |
267 | void __iomem *base = host->base; | 267 | void __iomem *base = host->base; |
@@ -347,7 +347,7 @@ static irqreturn_t mmci_pio_irq(int irq, void *dev_id, struct pt_regs *regs) | |||
347 | /* | 347 | /* |
348 | * Handle completion of command and data transfers. | 348 | * Handle completion of command and data transfers. |
349 | */ | 349 | */ |
350 | static irqreturn_t mmci_irq(int irq, void *dev_id, struct pt_regs *regs) | 350 | static irqreturn_t mmci_irq(int irq, void *dev_id) |
351 | { | 351 | { |
352 | struct mmci_host *host = dev_id; | 352 | struct mmci_host *host = dev_id; |
353 | u32 status; | 353 | u32 status; |
diff --git a/drivers/mmc/omap.c b/drivers/mmc/omap.c index 52c9e52e6b78..762fa2895891 100644 --- a/drivers/mmc/omap.c +++ b/drivers/mmc/omap.c | |||
@@ -377,7 +377,7 @@ static inline void mmc_omap_report_irq(u16 status) | |||
377 | } | 377 | } |
378 | } | 378 | } |
379 | 379 | ||
380 | static irqreturn_t mmc_omap_irq(int irq, void *dev_id, struct pt_regs *regs) | 380 | static irqreturn_t mmc_omap_irq(int irq, void *dev_id) |
381 | { | 381 | { |
382 | struct mmc_omap_host * host = (struct mmc_omap_host *)dev_id; | 382 | struct mmc_omap_host * host = (struct mmc_omap_host *)dev_id; |
383 | u16 status; | 383 | u16 status; |
@@ -514,7 +514,7 @@ static irqreturn_t mmc_omap_irq(int irq, void *dev_id, struct pt_regs *regs) | |||
514 | return IRQ_HANDLED; | 514 | return IRQ_HANDLED; |
515 | } | 515 | } |
516 | 516 | ||
517 | static irqreturn_t mmc_omap_switch_irq(int irq, void *dev_id, struct pt_regs *regs) | 517 | static irqreturn_t mmc_omap_switch_irq(int irq, void *dev_id) |
518 | { | 518 | { |
519 | struct mmc_omap_host *host = (struct mmc_omap_host *) dev_id; | 519 | struct mmc_omap_host *host = (struct mmc_omap_host *) dev_id; |
520 | 520 | ||
diff --git a/drivers/mmc/pxamci.c b/drivers/mmc/pxamci.c index ef350908478c..a526698b8c91 100644 --- a/drivers/mmc/pxamci.c +++ b/drivers/mmc/pxamci.c | |||
@@ -299,7 +299,7 @@ static int pxamci_data_done(struct pxamci_host *host, unsigned int stat) | |||
299 | return 1; | 299 | return 1; |
300 | } | 300 | } |
301 | 301 | ||
302 | static irqreturn_t pxamci_irq(int irq, void *devid, struct pt_regs *regs) | 302 | static irqreturn_t pxamci_irq(int irq, void *devid) |
303 | { | 303 | { |
304 | struct pxamci_host *host = devid; | 304 | struct pxamci_host *host = devid; |
305 | unsigned int ireg; | 305 | unsigned int ireg; |
@@ -399,13 +399,13 @@ static struct mmc_host_ops pxamci_ops = { | |||
399 | .set_ios = pxamci_set_ios, | 399 | .set_ios = pxamci_set_ios, |
400 | }; | 400 | }; |
401 | 401 | ||
402 | static void pxamci_dma_irq(int dma, void *devid, struct pt_regs *regs) | 402 | static void pxamci_dma_irq(int dma, void *devid) |
403 | { | 403 | { |
404 | printk(KERN_ERR "DMA%d: IRQ???\n", dma); | 404 | printk(KERN_ERR "DMA%d: IRQ???\n", dma); |
405 | DCSR(dma) = DCSR_STARTINTR|DCSR_ENDINTR|DCSR_BUSERR; | 405 | DCSR(dma) = DCSR_STARTINTR|DCSR_ENDINTR|DCSR_BUSERR; |
406 | } | 406 | } |
407 | 407 | ||
408 | static irqreturn_t pxamci_detect_irq(int irq, void *devid, struct pt_regs *regs) | 408 | static irqreturn_t pxamci_detect_irq(int irq, void *devid) |
409 | { | 409 | { |
410 | struct pxamci_host *host = mmc_priv(devid); | 410 | struct pxamci_host *host = mmc_priv(devid); |
411 | 411 | ||
diff --git a/drivers/mmc/sdhci.c b/drivers/mmc/sdhci.c index 20711acb0120..9a7d39b7cdbf 100644 --- a/drivers/mmc/sdhci.c +++ b/drivers/mmc/sdhci.c | |||
@@ -985,7 +985,7 @@ static void sdhci_data_irq(struct sdhci_host *host, u32 intmask) | |||
985 | } | 985 | } |
986 | } | 986 | } |
987 | 987 | ||
988 | static irqreturn_t sdhci_irq(int irq, void *dev_id, struct pt_regs *regs) | 988 | static irqreturn_t sdhci_irq(int irq, void *dev_id) |
989 | { | 989 | { |
990 | irqreturn_t result; | 990 | irqreturn_t result; |
991 | struct sdhci_host* host = dev_id; | 991 | struct sdhci_host* host = dev_id; |
@@ -1329,7 +1329,7 @@ static int __devinit sdhci_probe_slot(struct pci_dev *pdev, int slot) | |||
1329 | tasklet_init(&host->finish_tasklet, | 1329 | tasklet_init(&host->finish_tasklet, |
1330 | sdhci_tasklet_finish, (unsigned long)host); | 1330 | sdhci_tasklet_finish, (unsigned long)host); |
1331 | 1331 | ||
1332 | setup_timer(&host->timer, sdhci_timeout_timer, (long)host); | 1332 | setup_timer(&host->timer, sdhci_timeout_timer, (unsigned long)host); |
1333 | 1333 | ||
1334 | ret = request_irq(host->irq, sdhci_irq, IRQF_SHARED, | 1334 | ret = request_irq(host->irq, sdhci_irq, IRQF_SHARED, |
1335 | host->slot_descr, host); | 1335 | host->slot_descr, host); |
diff --git a/drivers/mmc/tifm_sd.c b/drivers/mmc/tifm_sd.c index 6d23dc08d169..2bacff60913d 100644 --- a/drivers/mmc/tifm_sd.c +++ b/drivers/mmc/tifm_sd.c | |||
@@ -501,13 +501,13 @@ static void tifm_sd_end_cmd(void *data) | |||
501 | struct tifm_dev *sock = host->dev; | 501 | struct tifm_dev *sock = host->dev; |
502 | struct mmc_host *mmc = tifm_get_drvdata(sock); | 502 | struct mmc_host *mmc = tifm_get_drvdata(sock); |
503 | struct mmc_request *mrq; | 503 | struct mmc_request *mrq; |
504 | struct mmc_data *r_data = 0; | 504 | struct mmc_data *r_data = NULL; |
505 | unsigned long flags; | 505 | unsigned long flags; |
506 | 506 | ||
507 | spin_lock_irqsave(&sock->lock, flags); | 507 | spin_lock_irqsave(&sock->lock, flags); |
508 | 508 | ||
509 | mrq = host->req; | 509 | mrq = host->req; |
510 | host->req = 0; | 510 | host->req = NULL; |
511 | host->state = IDLE; | 511 | host->state = IDLE; |
512 | 512 | ||
513 | if (!mrq) { | 513 | if (!mrq) { |
@@ -546,7 +546,7 @@ static void tifm_sd_request_nodma(struct mmc_host *mmc, struct mmc_request *mrq) | |||
546 | struct tifm_dev *sock = host->dev; | 546 | struct tifm_dev *sock = host->dev; |
547 | unsigned long flags; | 547 | unsigned long flags; |
548 | struct mmc_data *r_data = mrq->cmd->data; | 548 | struct mmc_data *r_data = mrq->cmd->data; |
549 | char *t_buffer = 0; | 549 | char *t_buffer = NULL; |
550 | 550 | ||
551 | if (r_data) { | 551 | if (r_data) { |
552 | t_buffer = kmap(r_data->sg->page); | 552 | t_buffer = kmap(r_data->sg->page); |
@@ -613,13 +613,13 @@ static void tifm_sd_end_cmd_nodma(void *data) | |||
613 | struct tifm_dev *sock = host->dev; | 613 | struct tifm_dev *sock = host->dev; |
614 | struct mmc_host *mmc = tifm_get_drvdata(sock); | 614 | struct mmc_host *mmc = tifm_get_drvdata(sock); |
615 | struct mmc_request *mrq; | 615 | struct mmc_request *mrq; |
616 | struct mmc_data *r_data = 0; | 616 | struct mmc_data *r_data = NULL; |
617 | unsigned long flags; | 617 | unsigned long flags; |
618 | 618 | ||
619 | spin_lock_irqsave(&sock->lock, flags); | 619 | spin_lock_irqsave(&sock->lock, flags); |
620 | 620 | ||
621 | mrq = host->req; | 621 | mrq = host->req; |
622 | host->req = 0; | 622 | host->req = NULL; |
623 | host->state = IDLE; | 623 | host->state = IDLE; |
624 | 624 | ||
625 | if (!mrq) { | 625 | if (!mrq) { |
@@ -644,7 +644,7 @@ static void tifm_sd_end_cmd_nodma(void *data) | |||
644 | r_data->bytes_xfered += r_data->blksz - | 644 | r_data->bytes_xfered += r_data->blksz - |
645 | readl(sock->addr + SOCK_MMCSD_BLOCK_LEN) + 1; | 645 | readl(sock->addr + SOCK_MMCSD_BLOCK_LEN) + 1; |
646 | } | 646 | } |
647 | host->buffer = 0; | 647 | host->buffer = NULL; |
648 | host->buffer_pos = 0; | 648 | host->buffer_pos = 0; |
649 | host->buffer_size = 0; | 649 | host->buffer_size = 0; |
650 | } | 650 | } |
@@ -895,7 +895,7 @@ static void tifm_sd_remove(struct tifm_dev *sock) | |||
895 | sock->addr + SOCK_DMA_FIFO_INT_ENABLE_CLEAR); | 895 | sock->addr + SOCK_DMA_FIFO_INT_ENABLE_CLEAR); |
896 | writel(0, sock->addr + SOCK_DMA_FIFO_INT_ENABLE_SET); | 896 | writel(0, sock->addr + SOCK_DMA_FIFO_INT_ENABLE_SET); |
897 | 897 | ||
898 | tifm_set_drvdata(sock, 0); | 898 | tifm_set_drvdata(sock, NULL); |
899 | mmc_free_host(mmc); | 899 | mmc_free_host(mmc); |
900 | } | 900 | } |
901 | 901 | ||
diff --git a/drivers/mmc/wbsd.c b/drivers/mmc/wbsd.c index 88c6f0b129f5..ced309b37a8f 100644 --- a/drivers/mmc/wbsd.c +++ b/drivers/mmc/wbsd.c | |||
@@ -1256,7 +1256,7 @@ end: | |||
1256 | * Interrupt handling | 1256 | * Interrupt handling |
1257 | */ | 1257 | */ |
1258 | 1258 | ||
1259 | static irqreturn_t wbsd_irq(int irq, void *dev_id, struct pt_regs *regs) | 1259 | static irqreturn_t wbsd_irq(int irq, void *dev_id) |
1260 | { | 1260 | { |
1261 | struct wbsd_host *host = dev_id; | 1261 | struct wbsd_host *host = dev_id; |
1262 | int isr; | 1262 | int isr; |
diff --git a/drivers/mtd/maps/physmap.c b/drivers/mtd/maps/physmap.c index bc7cc71788bc..d1717763f719 100644 --- a/drivers/mtd/maps/physmap.c +++ b/drivers/mtd/maps/physmap.c | |||
@@ -62,7 +62,7 @@ static int physmap_flash_remove(struct platform_device *dev) | |||
62 | } | 62 | } |
63 | 63 | ||
64 | if (info->map.virt != NULL) | 64 | if (info->map.virt != NULL) |
65 | iounmap((void *)info->map.virt); | 65 | iounmap(info->map.virt); |
66 | 66 | ||
67 | if (info->res != NULL) { | 67 | if (info->res != NULL) { |
68 | release_resource(info->res); | 68 | release_resource(info->res); |
diff --git a/drivers/mtd/nand/cs553x_nand.c b/drivers/mtd/nand/cs553x_nand.c index e0a1d386e581..94924d52a9b9 100644 --- a/drivers/mtd/nand/cs553x_nand.c +++ b/drivers/mtd/nand/cs553x_nand.c | |||
@@ -249,7 +249,7 @@ static int __init cs553x_init_one(int cs, int mmio, unsigned long adr) | |||
249 | goto out; | 249 | goto out; |
250 | 250 | ||
251 | out_ior: | 251 | out_ior: |
252 | iounmap((void *)this->IO_ADDR_R); | 252 | iounmap(this->IO_ADDR_R); |
253 | out_mtd: | 253 | out_mtd: |
254 | kfree(new_mtd); | 254 | kfree(new_mtd); |
255 | out: | 255 | out: |
diff --git a/drivers/net/3c501.c b/drivers/net/3c501.c index 1b82bccd8c71..11d170afa9c3 100644 --- a/drivers/net/3c501.c +++ b/drivers/net/3c501.c | |||
@@ -496,7 +496,6 @@ static int el_start_xmit(struct sk_buff *skb, struct net_device *dev) | |||
496 | * el_interrupt: | 496 | * el_interrupt: |
497 | * @irq: Interrupt number | 497 | * @irq: Interrupt number |
498 | * @dev_id: The 3c501 that burped | 498 | * @dev_id: The 3c501 that burped |
499 | * @regs: Register data (surplus to our requirements) | ||
500 | * | 499 | * |
501 | * Handle the ether interface interrupts. The 3c501 needs a lot more | 500 | * Handle the ether interface interrupts. The 3c501 needs a lot more |
502 | * hand holding than most cards. In particular we get a transmit interrupt | 501 | * hand holding than most cards. In particular we get a transmit interrupt |
@@ -515,7 +514,7 @@ static int el_start_xmit(struct sk_buff *skb, struct net_device *dev) | |||
515 | * TCP window. | 514 | * TCP window. |
516 | */ | 515 | */ |
517 | 516 | ||
518 | static irqreturn_t el_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 517 | static irqreturn_t el_interrupt(int irq, void *dev_id) |
519 | { | 518 | { |
520 | struct net_device *dev = dev_id; | 519 | struct net_device *dev = dev_id; |
521 | struct net_local *lp; | 520 | struct net_local *lp; |
diff --git a/drivers/net/3c501.h b/drivers/net/3c501.h index 39d332474750..c56a2c62f7de 100644 --- a/drivers/net/3c501.h +++ b/drivers/net/3c501.h | |||
@@ -7,7 +7,7 @@ static int el1_probe1(struct net_device *dev, int ioaddr); | |||
7 | static int el_open(struct net_device *dev); | 7 | static int el_open(struct net_device *dev); |
8 | static void el_timeout(struct net_device *dev); | 8 | static void el_timeout(struct net_device *dev); |
9 | static int el_start_xmit(struct sk_buff *skb, struct net_device *dev); | 9 | static int el_start_xmit(struct sk_buff *skb, struct net_device *dev); |
10 | static irqreturn_t el_interrupt(int irq, void *dev_id, struct pt_regs *regs); | 10 | static irqreturn_t el_interrupt(int irq, void *dev_id); |
11 | static void el_receive(struct net_device *dev); | 11 | static void el_receive(struct net_device *dev); |
12 | static void el_reset(struct net_device *dev); | 12 | static void el_reset(struct net_device *dev); |
13 | static int el1_close(struct net_device *dev); | 13 | static int el1_close(struct net_device *dev); |
diff --git a/drivers/net/3c505.c b/drivers/net/3c505.c index ab8230a68bea..458cb9cbe915 100644 --- a/drivers/net/3c505.c +++ b/drivers/net/3c505.c | |||
@@ -649,7 +649,7 @@ static void receive_packet(struct net_device *dev, int len) | |||
649 | * | 649 | * |
650 | ******************************************************/ | 650 | ******************************************************/ |
651 | 651 | ||
652 | static irqreturn_t elp_interrupt(int irq, void *dev_id, struct pt_regs *reg_ptr) | 652 | static irqreturn_t elp_interrupt(int irq, void *dev_id) |
653 | { | 653 | { |
654 | int len; | 654 | int len; |
655 | int dlen; | 655 | int dlen; |
diff --git a/drivers/net/3c507.c b/drivers/net/3c507.c index 8205a535c5b7..aa43563610ae 100644 --- a/drivers/net/3c507.c +++ b/drivers/net/3c507.c | |||
@@ -286,7 +286,7 @@ static unsigned short init_words[] = { | |||
286 | static int el16_probe1(struct net_device *dev, int ioaddr); | 286 | static int el16_probe1(struct net_device *dev, int ioaddr); |
287 | static int el16_open(struct net_device *dev); | 287 | static int el16_open(struct net_device *dev); |
288 | static int el16_send_packet(struct sk_buff *skb, struct net_device *dev); | 288 | static int el16_send_packet(struct sk_buff *skb, struct net_device *dev); |
289 | static irqreturn_t el16_interrupt(int irq, void *dev_id, struct pt_regs *regs); | 289 | static irqreturn_t el16_interrupt(int irq, void *dev_id); |
290 | static void el16_rx(struct net_device *dev); | 290 | static void el16_rx(struct net_device *dev); |
291 | static int el16_close(struct net_device *dev); | 291 | static int el16_close(struct net_device *dev); |
292 | static struct net_device_stats *el16_get_stats(struct net_device *dev); | 292 | static struct net_device_stats *el16_get_stats(struct net_device *dev); |
@@ -543,7 +543,7 @@ static int el16_send_packet (struct sk_buff *skb, struct net_device *dev) | |||
543 | 543 | ||
544 | /* The typical workload of the driver: | 544 | /* The typical workload of the driver: |
545 | Handle the network interface interrupts. */ | 545 | Handle the network interface interrupts. */ |
546 | static irqreturn_t el16_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 546 | static irqreturn_t el16_interrupt(int irq, void *dev_id) |
547 | { | 547 | { |
548 | struct net_device *dev = dev_id; | 548 | struct net_device *dev = dev_id; |
549 | struct net_local *lp; | 549 | struct net_local *lp; |
diff --git a/drivers/net/3c509.c b/drivers/net/3c509.c index b936373ab2a5..f791bf026e51 100644 --- a/drivers/net/3c509.c +++ b/drivers/net/3c509.c | |||
@@ -191,7 +191,7 @@ static ushort id_read_eeprom(int index); | |||
191 | static ushort read_eeprom(int ioaddr, int index); | 191 | static ushort read_eeprom(int ioaddr, int index); |
192 | static int el3_open(struct net_device *dev); | 192 | static int el3_open(struct net_device *dev); |
193 | static int el3_start_xmit(struct sk_buff *skb, struct net_device *dev); | 193 | static int el3_start_xmit(struct sk_buff *skb, struct net_device *dev); |
194 | static irqreturn_t el3_interrupt(int irq, void *dev_id, struct pt_regs *regs); | 194 | static irqreturn_t el3_interrupt(int irq, void *dev_id); |
195 | static void update_stats(struct net_device *dev); | 195 | static void update_stats(struct net_device *dev); |
196 | static struct net_device_stats *el3_get_stats(struct net_device *dev); | 196 | static struct net_device_stats *el3_get_stats(struct net_device *dev); |
197 | static int el3_rx(struct net_device *dev); | 197 | static int el3_rx(struct net_device *dev); |
@@ -910,18 +910,13 @@ el3_start_xmit(struct sk_buff *skb, struct net_device *dev) | |||
910 | 910 | ||
911 | /* The EL3 interrupt handler. */ | 911 | /* The EL3 interrupt handler. */ |
912 | static irqreturn_t | 912 | static irqreturn_t |
913 | el3_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 913 | el3_interrupt(int irq, void *dev_id) |
914 | { | 914 | { |
915 | struct net_device *dev = (struct net_device *)dev_id; | 915 | struct net_device *dev = dev_id; |
916 | struct el3_private *lp; | 916 | struct el3_private *lp; |
917 | int ioaddr, status; | 917 | int ioaddr, status; |
918 | int i = max_interrupt_work; | 918 | int i = max_interrupt_work; |
919 | 919 | ||
920 | if (dev == NULL) { | ||
921 | printk ("el3_interrupt(): irq %d for unknown device.\n", irq); | ||
922 | return IRQ_NONE; | ||
923 | } | ||
924 | |||
925 | lp = netdev_priv(dev); | 920 | lp = netdev_priv(dev); |
926 | spin_lock(&lp->lock); | 921 | spin_lock(&lp->lock); |
927 | 922 | ||
@@ -1006,7 +1001,7 @@ el3_interrupt(int irq, void *dev_id, struct pt_regs *regs) | |||
1006 | static void el3_poll_controller(struct net_device *dev) | 1001 | static void el3_poll_controller(struct net_device *dev) |
1007 | { | 1002 | { |
1008 | disable_irq(dev->irq); | 1003 | disable_irq(dev->irq); |
1009 | el3_interrupt(dev->irq, dev, NULL); | 1004 | el3_interrupt(dev->irq, dev); |
1010 | enable_irq(dev->irq); | 1005 | enable_irq(dev->irq); |
1011 | } | 1006 | } |
1012 | #endif | 1007 | #endif |
diff --git a/drivers/net/3c515.c b/drivers/net/3c515.c index 91f2232e6050..c307ce66145c 100644 --- a/drivers/net/3c515.c +++ b/drivers/net/3c515.c | |||
@@ -373,8 +373,7 @@ static int corkscrew_start_xmit(struct sk_buff *skb, | |||
373 | static int corkscrew_rx(struct net_device *dev); | 373 | static int corkscrew_rx(struct net_device *dev); |
374 | static void corkscrew_timeout(struct net_device *dev); | 374 | static void corkscrew_timeout(struct net_device *dev); |
375 | static int boomerang_rx(struct net_device *dev); | 375 | static int boomerang_rx(struct net_device *dev); |
376 | static irqreturn_t corkscrew_interrupt(int irq, void *dev_id, | 376 | static irqreturn_t corkscrew_interrupt(int irq, void *dev_id); |
377 | struct pt_regs *regs); | ||
378 | static int corkscrew_close(struct net_device *dev); | 377 | static int corkscrew_close(struct net_device *dev); |
379 | static void update_stats(int addr, struct net_device *dev); | 378 | static void update_stats(int addr, struct net_device *dev); |
380 | static struct net_device_stats *corkscrew_get_stats(struct net_device *dev); | 379 | static struct net_device_stats *corkscrew_get_stats(struct net_device *dev); |
@@ -1116,8 +1115,7 @@ static int corkscrew_start_xmit(struct sk_buff *skb, | |||
1116 | /* The interrupt handler does all of the Rx thread work and cleans up | 1115 | /* The interrupt handler does all of the Rx thread work and cleans up |
1117 | after the Tx thread. */ | 1116 | after the Tx thread. */ |
1118 | 1117 | ||
1119 | static irqreturn_t corkscrew_interrupt(int irq, void *dev_id, | 1118 | static irqreturn_t corkscrew_interrupt(int irq, void *dev_id) |
1120 | struct pt_regs *regs) | ||
1121 | { | 1119 | { |
1122 | /* Use the now-standard shared IRQ implementation. */ | 1120 | /* Use the now-standard shared IRQ implementation. */ |
1123 | struct net_device *dev = dev_id; | 1121 | struct net_device *dev = dev_id; |
diff --git a/drivers/net/3c523.c b/drivers/net/3c523.c index cf8a0bc3bf34..91849469b4f4 100644 --- a/drivers/net/3c523.c +++ b/drivers/net/3c523.c | |||
@@ -180,7 +180,7 @@ sizeof(nop_cmd) = 8; | |||
180 | dev->name,__LINE__); \ | 180 | dev->name,__LINE__); \ |
181 | elmc_id_reset586(); } } } | 181 | elmc_id_reset586(); } } } |
182 | 182 | ||
183 | static irqreturn_t elmc_interrupt(int irq, void *dev_id, struct pt_regs *reg_ptr); | 183 | static irqreturn_t elmc_interrupt(int irq, void *dev_id); |
184 | static int elmc_open(struct net_device *dev); | 184 | static int elmc_open(struct net_device *dev); |
185 | static int elmc_close(struct net_device *dev); | 185 | static int elmc_close(struct net_device *dev); |
186 | static int elmc_send_packet(struct sk_buff *, struct net_device *); | 186 | static int elmc_send_packet(struct sk_buff *, struct net_device *); |
@@ -900,16 +900,13 @@ static void *alloc_rfa(struct net_device *dev, void *ptr) | |||
900 | */ | 900 | */ |
901 | 901 | ||
902 | static irqreturn_t | 902 | static irqreturn_t |
903 | elmc_interrupt(int irq, void *dev_id, struct pt_regs *reg_ptr) | 903 | elmc_interrupt(int irq, void *dev_id) |
904 | { | 904 | { |
905 | struct net_device *dev = (struct net_device *) dev_id; | 905 | struct net_device *dev = dev_id; |
906 | unsigned short stat; | 906 | unsigned short stat; |
907 | struct priv *p; | 907 | struct priv *p; |
908 | 908 | ||
909 | if (dev == NULL) { | 909 | if (!netif_running(dev)) { |
910 | printk(KERN_ERR "elmc-interrupt: irq %d for unknown device.\n", (int) -(((struct pt_regs *) reg_ptr)->orig_eax + 2)); | ||
911 | return IRQ_NONE; | ||
912 | } else if (!netif_running(dev)) { | ||
913 | /* The 3c523 has this habit of generating interrupts during the | 910 | /* The 3c523 has this habit of generating interrupts during the |
914 | reset. I'm not sure if the ni52 has this same problem, but it's | 911 | reset. I'm not sure if the ni52 has this same problem, but it's |
915 | really annoying if we haven't finished initializing it. I was | 912 | really annoying if we haven't finished initializing it. I was |
diff --git a/drivers/net/3c527.c b/drivers/net/3c527.c index 625e57dc3b4a..f4aca5386add 100644 --- a/drivers/net/3c527.c +++ b/drivers/net/3c527.c | |||
@@ -217,7 +217,7 @@ static int mc32_command(struct net_device *dev, u16 cmd, void *data, int le | |||
217 | static int mc32_open(struct net_device *dev); | 217 | static int mc32_open(struct net_device *dev); |
218 | static void mc32_timeout(struct net_device *dev); | 218 | static void mc32_timeout(struct net_device *dev); |
219 | static int mc32_send_packet(struct sk_buff *skb, struct net_device *dev); | 219 | static int mc32_send_packet(struct sk_buff *skb, struct net_device *dev); |
220 | static irqreturn_t mc32_interrupt(int irq, void *dev_id, struct pt_regs *regs); | 220 | static irqreturn_t mc32_interrupt(int irq, void *dev_id); |
221 | static int mc32_close(struct net_device *dev); | 221 | static int mc32_close(struct net_device *dev); |
222 | static struct net_device_stats *mc32_get_stats(struct net_device *dev); | 222 | static struct net_device_stats *mc32_get_stats(struct net_device *dev); |
223 | static void mc32_set_multicast_list(struct net_device *dev); | 223 | static void mc32_set_multicast_list(struct net_device *dev); |
@@ -1316,7 +1316,7 @@ static void mc32_tx_ring(struct net_device *dev) | |||
1316 | * | 1316 | * |
1317 | */ | 1317 | */ |
1318 | 1318 | ||
1319 | static irqreturn_t mc32_interrupt(int irq, void *dev_id, struct pt_regs * regs) | 1319 | static irqreturn_t mc32_interrupt(int irq, void *dev_id) |
1320 | { | 1320 | { |
1321 | struct net_device *dev = dev_id; | 1321 | struct net_device *dev = dev_id; |
1322 | struct mc32_local *lp; | 1322 | struct mc32_local *lp; |
@@ -1324,11 +1324,6 @@ static irqreturn_t mc32_interrupt(int irq, void *dev_id, struct pt_regs * regs) | |||
1324 | int rx_event = 0; | 1324 | int rx_event = 0; |
1325 | int tx_event = 0; | 1325 | int tx_event = 0; |
1326 | 1326 | ||
1327 | if (dev == NULL) { | ||
1328 | printk(KERN_WARNING "%s: irq %d for unknown device.\n", cardname, irq); | ||
1329 | return IRQ_NONE; | ||
1330 | } | ||
1331 | |||
1332 | ioaddr = dev->base_addr; | 1327 | ioaddr = dev->base_addr; |
1333 | lp = netdev_priv(dev); | 1328 | lp = netdev_priv(dev); |
1334 | 1329 | ||
diff --git a/drivers/net/3c59x.c b/drivers/net/3c59x.c index df42e28cc80f..80bdcf846234 100644 --- a/drivers/net/3c59x.c +++ b/drivers/net/3c59x.c | |||
@@ -717,8 +717,8 @@ static int vortex_start_xmit(struct sk_buff *skb, struct net_device *dev); | |||
717 | static int boomerang_start_xmit(struct sk_buff *skb, struct net_device *dev); | 717 | static int boomerang_start_xmit(struct sk_buff *skb, struct net_device *dev); |
718 | static int vortex_rx(struct net_device *dev); | 718 | static int vortex_rx(struct net_device *dev); |
719 | static int boomerang_rx(struct net_device *dev); | 719 | static int boomerang_rx(struct net_device *dev); |
720 | static irqreturn_t vortex_interrupt(int irq, void *dev_id, struct pt_regs *regs); | 720 | static irqreturn_t vortex_interrupt(int irq, void *dev_id); |
721 | static irqreturn_t boomerang_interrupt(int irq, void *dev_id, struct pt_regs *regs); | 721 | static irqreturn_t boomerang_interrupt(int irq, void *dev_id); |
722 | static int vortex_close(struct net_device *dev); | 722 | static int vortex_close(struct net_device *dev); |
723 | static void dump_tx_ring(struct net_device *dev); | 723 | static void dump_tx_ring(struct net_device *dev); |
724 | static void update_stats(void __iomem *ioaddr, struct net_device *dev); | 724 | static void update_stats(void __iomem *ioaddr, struct net_device *dev); |
@@ -794,7 +794,7 @@ static void poll_vortex(struct net_device *dev) | |||
794 | unsigned long flags; | 794 | unsigned long flags; |
795 | local_save_flags(flags); | 795 | local_save_flags(flags); |
796 | local_irq_disable(); | 796 | local_irq_disable(); |
797 | (vp->full_bus_master_rx ? boomerang_interrupt:vortex_interrupt)(dev->irq,dev,NULL); | 797 | (vp->full_bus_master_rx ? boomerang_interrupt:vortex_interrupt)(dev->irq,dev); |
798 | local_irq_restore(flags); | 798 | local_irq_restore(flags); |
799 | } | 799 | } |
800 | #endif | 800 | #endif |
@@ -1849,9 +1849,9 @@ static void vortex_tx_timeout(struct net_device *dev) | |||
1849 | unsigned long flags; | 1849 | unsigned long flags; |
1850 | local_irq_save(flags); | 1850 | local_irq_save(flags); |
1851 | if (vp->full_bus_master_tx) | 1851 | if (vp->full_bus_master_tx) |
1852 | boomerang_interrupt(dev->irq, dev, NULL); | 1852 | boomerang_interrupt(dev->irq, dev); |
1853 | else | 1853 | else |
1854 | vortex_interrupt(dev->irq, dev, NULL); | 1854 | vortex_interrupt(dev->irq, dev); |
1855 | local_irq_restore(flags); | 1855 | local_irq_restore(flags); |
1856 | } | 1856 | } |
1857 | } | 1857 | } |
@@ -2149,7 +2149,7 @@ boomerang_start_xmit(struct sk_buff *skb, struct net_device *dev) | |||
2149 | */ | 2149 | */ |
2150 | 2150 | ||
2151 | static irqreturn_t | 2151 | static irqreturn_t |
2152 | vortex_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 2152 | vortex_interrupt(int irq, void *dev_id) |
2153 | { | 2153 | { |
2154 | struct net_device *dev = dev_id; | 2154 | struct net_device *dev = dev_id; |
2155 | struct vortex_private *vp = netdev_priv(dev); | 2155 | struct vortex_private *vp = netdev_priv(dev); |
@@ -2254,7 +2254,7 @@ handler_exit: | |||
2254 | */ | 2254 | */ |
2255 | 2255 | ||
2256 | static irqreturn_t | 2256 | static irqreturn_t |
2257 | boomerang_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 2257 | boomerang_interrupt(int irq, void *dev_id) |
2258 | { | 2258 | { |
2259 | struct net_device *dev = dev_id; | 2259 | struct net_device *dev = dev_id; |
2260 | struct vortex_private *vp = netdev_priv(dev); | 2260 | struct vortex_private *vp = netdev_priv(dev); |
diff --git a/drivers/net/7990.c b/drivers/net/7990.c index db7b19a5cd59..7733697f7776 100644 --- a/drivers/net/7990.c +++ b/drivers/net/7990.c | |||
@@ -438,7 +438,7 @@ static int lance_tx (struct net_device *dev) | |||
438 | } | 438 | } |
439 | 439 | ||
440 | static irqreturn_t | 440 | static irqreturn_t |
441 | lance_interrupt (int irq, void *dev_id, struct pt_regs *regs) | 441 | lance_interrupt (int irq, void *dev_id) |
442 | { | 442 | { |
443 | struct net_device *dev = (struct net_device *)dev_id; | 443 | struct net_device *dev = (struct net_device *)dev_id; |
444 | struct lance_private *lp = netdev_priv(dev); | 444 | struct lance_private *lp = netdev_priv(dev); |
@@ -674,7 +674,7 @@ void lance_poll(struct net_device *dev) | |||
674 | WRITERAP(lp, LE_CSR0); | 674 | WRITERAP(lp, LE_CSR0); |
675 | WRITERDP(lp, LE_C0_STRT); | 675 | WRITERDP(lp, LE_C0_STRT); |
676 | spin_unlock (&lp->devlock); | 676 | spin_unlock (&lp->devlock); |
677 | lance_interrupt(dev->irq, dev, NULL); | 677 | lance_interrupt(dev->irq, dev); |
678 | } | 678 | } |
679 | #endif | 679 | #endif |
680 | 680 | ||
diff --git a/drivers/net/8139cp.c b/drivers/net/8139cp.c index 5a4990ae3730..458dd9f830c4 100644 --- a/drivers/net/8139cp.c +++ b/drivers/net/8139cp.c | |||
@@ -631,8 +631,7 @@ rx_next: | |||
631 | return 1; /* not done */ | 631 | return 1; /* not done */ |
632 | } | 632 | } |
633 | 633 | ||
634 | static irqreturn_t | 634 | static irqreturn_t cp_interrupt (int irq, void *dev_instance) |
635 | cp_interrupt (int irq, void *dev_instance, struct pt_regs *regs) | ||
636 | { | 635 | { |
637 | struct net_device *dev = dev_instance; | 636 | struct net_device *dev = dev_instance; |
638 | struct cp_private *cp; | 637 | struct cp_private *cp; |
@@ -696,7 +695,7 @@ cp_interrupt (int irq, void *dev_instance, struct pt_regs *regs) | |||
696 | static void cp_poll_controller(struct net_device *dev) | 695 | static void cp_poll_controller(struct net_device *dev) |
697 | { | 696 | { |
698 | disable_irq(dev->irq); | 697 | disable_irq(dev->irq); |
699 | cp_interrupt(dev->irq, dev, NULL); | 698 | cp_interrupt(dev->irq, dev); |
700 | enable_irq(dev->irq); | 699 | enable_irq(dev->irq); |
701 | } | 700 | } |
702 | #endif | 701 | #endif |
diff --git a/drivers/net/8139too.c b/drivers/net/8139too.c index dbc5c0b1b96c..d02ed51abfcc 100644 --- a/drivers/net/8139too.c +++ b/drivers/net/8139too.c | |||
@@ -629,8 +629,7 @@ static int rtl8139_poll(struct net_device *dev, int *budget); | |||
629 | #ifdef CONFIG_NET_POLL_CONTROLLER | 629 | #ifdef CONFIG_NET_POLL_CONTROLLER |
630 | static void rtl8139_poll_controller(struct net_device *dev); | 630 | static void rtl8139_poll_controller(struct net_device *dev); |
631 | #endif | 631 | #endif |
632 | static irqreturn_t rtl8139_interrupt (int irq, void *dev_instance, | 632 | static irqreturn_t rtl8139_interrupt (int irq, void *dev_instance); |
633 | struct pt_regs *regs); | ||
634 | static int rtl8139_close (struct net_device *dev); | 633 | static int rtl8139_close (struct net_device *dev); |
635 | static int netdev_ioctl (struct net_device *dev, struct ifreq *rq, int cmd); | 634 | static int netdev_ioctl (struct net_device *dev, struct ifreq *rq, int cmd); |
636 | static struct net_device_stats *rtl8139_get_stats (struct net_device *dev); | 635 | static struct net_device_stats *rtl8139_get_stats (struct net_device *dev); |
@@ -2146,8 +2145,7 @@ static int rtl8139_poll(struct net_device *dev, int *budget) | |||
2146 | 2145 | ||
2147 | /* The interrupt handler does all of the Rx thread work and cleans up | 2146 | /* The interrupt handler does all of the Rx thread work and cleans up |
2148 | after the Tx thread. */ | 2147 | after the Tx thread. */ |
2149 | static irqreturn_t rtl8139_interrupt (int irq, void *dev_instance, | 2148 | static irqreturn_t rtl8139_interrupt (int irq, void *dev_instance) |
2150 | struct pt_regs *regs) | ||
2151 | { | 2149 | { |
2152 | struct net_device *dev = (struct net_device *) dev_instance; | 2150 | struct net_device *dev = (struct net_device *) dev_instance; |
2153 | struct rtl8139_private *tp = netdev_priv(dev); | 2151 | struct rtl8139_private *tp = netdev_priv(dev); |
@@ -2219,7 +2217,7 @@ static irqreturn_t rtl8139_interrupt (int irq, void *dev_instance, | |||
2219 | static void rtl8139_poll_controller(struct net_device *dev) | 2217 | static void rtl8139_poll_controller(struct net_device *dev) |
2220 | { | 2218 | { |
2221 | disable_irq(dev->irq); | 2219 | disable_irq(dev->irq); |
2222 | rtl8139_interrupt(dev->irq, dev, NULL); | 2220 | rtl8139_interrupt(dev->irq, dev); |
2223 | enable_irq(dev->irq); | 2221 | enable_irq(dev->irq); |
2224 | } | 2222 | } |
2225 | #endif | 2223 | #endif |
diff --git a/drivers/net/82596.c b/drivers/net/82596.c index c9e4dca9d410..8236f26ffd46 100644 --- a/drivers/net/82596.c +++ b/drivers/net/82596.c | |||
@@ -357,7 +357,7 @@ static char init_setup[] = | |||
357 | 357 | ||
358 | static int i596_open(struct net_device *dev); | 358 | static int i596_open(struct net_device *dev); |
359 | static int i596_start_xmit(struct sk_buff *skb, struct net_device *dev); | 359 | static int i596_start_xmit(struct sk_buff *skb, struct net_device *dev); |
360 | static irqreturn_t i596_interrupt(int irq, void *dev_id, struct pt_regs *regs); | 360 | static irqreturn_t i596_interrupt(int irq, void *dev_id); |
361 | static int i596_close(struct net_device *dev); | 361 | static int i596_close(struct net_device *dev); |
362 | static struct net_device_stats *i596_get_stats(struct net_device *dev); | 362 | static struct net_device_stats *i596_get_stats(struct net_device *dev); |
363 | static void i596_add_cmd(struct net_device *dev, struct i596_cmd *cmd); | 363 | static void i596_add_cmd(struct net_device *dev, struct i596_cmd *cmd); |
@@ -501,7 +501,7 @@ static void i596_display_data(struct net_device *dev) | |||
501 | 501 | ||
502 | 502 | ||
503 | #if defined(ENABLE_MVME16x_NET) || defined(ENABLE_BVME6000_NET) | 503 | #if defined(ENABLE_MVME16x_NET) || defined(ENABLE_BVME6000_NET) |
504 | static irqreturn_t i596_error(int irq, void *dev_id, struct pt_regs *regs) | 504 | static irqreturn_t i596_error(int irq, void *dev_id) |
505 | { | 505 | { |
506 | struct net_device *dev = dev_id; | 506 | struct net_device *dev = dev_id; |
507 | #ifdef ENABLE_MVME16x_NET | 507 | #ifdef ENABLE_MVME16x_NET |
@@ -1283,7 +1283,7 @@ out: | |||
1283 | return ERR_PTR(err); | 1283 | return ERR_PTR(err); |
1284 | } | 1284 | } |
1285 | 1285 | ||
1286 | static irqreturn_t i596_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 1286 | static irqreturn_t i596_interrupt(int irq, void *dev_id) |
1287 | { | 1287 | { |
1288 | struct net_device *dev = dev_id; | 1288 | struct net_device *dev = dev_id; |
1289 | struct i596_private *lp; | 1289 | struct i596_private *lp; |
@@ -1294,7 +1294,7 @@ static irqreturn_t i596_interrupt(int irq, void *dev_id, struct pt_regs *regs) | |||
1294 | #ifdef ENABLE_BVME6000_NET | 1294 | #ifdef ENABLE_BVME6000_NET |
1295 | if (MACH_IS_BVME6000) { | 1295 | if (MACH_IS_BVME6000) { |
1296 | if (*(char *) BVME_LOCAL_IRQ_STAT & BVME_ETHERR) { | 1296 | if (*(char *) BVME_LOCAL_IRQ_STAT & BVME_ETHERR) { |
1297 | i596_error(irq, dev_id, regs); | 1297 | i596_error(irq, dev_id); |
1298 | return IRQ_HANDLED; | 1298 | return IRQ_HANDLED; |
1299 | } | 1299 | } |
1300 | } | 1300 | } |
diff --git a/drivers/net/8390.c b/drivers/net/8390.c index 9d34056147ad..3d1c599ac3cb 100644 --- a/drivers/net/8390.c +++ b/drivers/net/8390.c | |||
@@ -391,7 +391,6 @@ static int ei_start_xmit(struct sk_buff *skb, struct net_device *dev) | |||
391 | * ei_interrupt - handle the interrupts from an 8390 | 391 | * ei_interrupt - handle the interrupts from an 8390 |
392 | * @irq: interrupt number | 392 | * @irq: interrupt number |
393 | * @dev_id: a pointer to the net_device | 393 | * @dev_id: a pointer to the net_device |
394 | * @regs: unused | ||
395 | * | 394 | * |
396 | * Handle the ether interface interrupts. We pull packets from | 395 | * Handle the ether interface interrupts. We pull packets from |
397 | * the 8390 via the card specific functions and fire them at the networking | 396 | * the 8390 via the card specific functions and fire them at the networking |
@@ -400,21 +399,15 @@ static int ei_start_xmit(struct sk_buff *skb, struct net_device *dev) | |||
400 | * needed. | 399 | * needed. |
401 | */ | 400 | */ |
402 | 401 | ||
403 | irqreturn_t ei_interrupt(int irq, void *dev_id, struct pt_regs * regs) | 402 | irqreturn_t ei_interrupt(int irq, void *dev_id) |
404 | { | 403 | { |
405 | struct net_device *dev = dev_id; | 404 | struct net_device *dev = dev_id; |
406 | long e8390_base; | 405 | long e8390_base; |
407 | int interrupts, nr_serviced = 0; | 406 | int interrupts, nr_serviced = 0; |
408 | struct ei_device *ei_local; | 407 | struct ei_device *ei_local; |
409 | 408 | ||
410 | if (dev == NULL) | ||
411 | { | ||
412 | printk ("net_interrupt(): irq %d for unknown device.\n", irq); | ||
413 | return IRQ_NONE; | ||
414 | } | ||
415 | |||
416 | e8390_base = dev->base_addr; | 409 | e8390_base = dev->base_addr; |
417 | ei_local = (struct ei_device *) netdev_priv(dev); | 410 | ei_local = netdev_priv(dev); |
418 | 411 | ||
419 | /* | 412 | /* |
420 | * Protect the irq test too. | 413 | * Protect the irq test too. |
@@ -506,7 +499,7 @@ irqreturn_t ei_interrupt(int irq, void *dev_id, struct pt_regs * regs) | |||
506 | void ei_poll(struct net_device *dev) | 499 | void ei_poll(struct net_device *dev) |
507 | { | 500 | { |
508 | disable_irq_lockdep(dev->irq); | 501 | disable_irq_lockdep(dev->irq); |
509 | ei_interrupt(dev->irq, dev, NULL); | 502 | ei_interrupt(dev->irq, dev); |
510 | enable_irq_lockdep(dev->irq); | 503 | enable_irq_lockdep(dev->irq); |
511 | } | 504 | } |
512 | #endif | 505 | #endif |
diff --git a/drivers/net/8390.h b/drivers/net/8390.h index ca4eb0ccf8cf..f44f1220b3a5 100644 --- a/drivers/net/8390.h +++ b/drivers/net/8390.h | |||
@@ -35,7 +35,7 @@ extern void ei_poll(struct net_device *dev); | |||
35 | extern void NS8390_init(struct net_device *dev, int startp); | 35 | extern void NS8390_init(struct net_device *dev, int startp); |
36 | extern int ei_open(struct net_device *dev); | 36 | extern int ei_open(struct net_device *dev); |
37 | extern int ei_close(struct net_device *dev); | 37 | extern int ei_close(struct net_device *dev); |
38 | extern irqreturn_t ei_interrupt(int irq, void *dev_id, struct pt_regs *regs); | 38 | extern irqreturn_t ei_interrupt(int irq, void *dev_id); |
39 | extern struct net_device *__alloc_ei_netdev(int size); | 39 | extern struct net_device *__alloc_ei_netdev(int size); |
40 | static inline struct net_device *alloc_ei_netdev(void) | 40 | static inline struct net_device *alloc_ei_netdev(void) |
41 | { | 41 | { |
diff --git a/drivers/net/a2065.c b/drivers/net/a2065.c index 5f7258fea19d..d76548e75350 100644 --- a/drivers/net/a2065.c +++ b/drivers/net/a2065.c | |||
@@ -425,8 +425,7 @@ static int lance_tx (struct net_device *dev) | |||
425 | return 0; | 425 | return 0; |
426 | } | 426 | } |
427 | 427 | ||
428 | static irqreturn_t | 428 | static irqreturn_t lance_interrupt (int irq, void *dev_id) |
429 | lance_interrupt (int irq, void *dev_id, struct pt_regs *regs) | ||
430 | { | 429 | { |
431 | struct net_device *dev; | 430 | struct net_device *dev; |
432 | struct lance_private *lp; | 431 | struct lance_private *lp; |
diff --git a/drivers/net/acenic.c b/drivers/net/acenic.c index 71a4f60f7325..33c6645455ae 100644 --- a/drivers/net/acenic.c +++ b/drivers/net/acenic.c | |||
@@ -2144,7 +2144,7 @@ static inline void ace_tx_int(struct net_device *dev, | |||
2144 | } | 2144 | } |
2145 | 2145 | ||
2146 | 2146 | ||
2147 | static irqreturn_t ace_interrupt(int irq, void *dev_id, struct pt_regs *ptregs) | 2147 | static irqreturn_t ace_interrupt(int irq, void *dev_id) |
2148 | { | 2148 | { |
2149 | struct net_device *dev = (struct net_device *)dev_id; | 2149 | struct net_device *dev = (struct net_device *)dev_id; |
2150 | struct ace_private *ap = netdev_priv(dev); | 2150 | struct ace_private *ap = netdev_priv(dev); |
diff --git a/drivers/net/acenic.h b/drivers/net/acenic.h index efb14b9f4d90..8ca8534d70bf 100644 --- a/drivers/net/acenic.h +++ b/drivers/net/acenic.h | |||
@@ -769,7 +769,7 @@ static int ace_init(struct net_device *dev); | |||
769 | static void ace_load_std_rx_ring(struct ace_private *ap, int nr_bufs); | 769 | static void ace_load_std_rx_ring(struct ace_private *ap, int nr_bufs); |
770 | static void ace_load_mini_rx_ring(struct ace_private *ap, int nr_bufs); | 770 | static void ace_load_mini_rx_ring(struct ace_private *ap, int nr_bufs); |
771 | static void ace_load_jumbo_rx_ring(struct ace_private *ap, int nr_bufs); | 771 | static void ace_load_jumbo_rx_ring(struct ace_private *ap, int nr_bufs); |
772 | static irqreturn_t ace_interrupt(int irq, void *dev_id, struct pt_regs *regs); | 772 | static irqreturn_t ace_interrupt(int irq, void *dev_id); |
773 | static int ace_load_firmware(struct net_device *dev); | 773 | static int ace_load_firmware(struct net_device *dev); |
774 | static int ace_open(struct net_device *dev); | 774 | static int ace_open(struct net_device *dev); |
775 | static int ace_start_xmit(struct sk_buff *skb, struct net_device *dev); | 775 | static int ace_start_xmit(struct sk_buff *skb, struct net_device *dev); |
diff --git a/drivers/net/amd8111e.c b/drivers/net/amd8111e.c index 28855a01ed7b..ef65e5917c8f 100644 --- a/drivers/net/amd8111e.c +++ b/drivers/net/amd8111e.c | |||
@@ -1257,7 +1257,7 @@ static int amd8111e_calc_coalesce(struct net_device *dev) | |||
1257 | /* | 1257 | /* |
1258 | This is device interrupt function. It handles transmit, receive,link change and hardware timer interrupts. | 1258 | This is device interrupt function. It handles transmit, receive,link change and hardware timer interrupts. |
1259 | */ | 1259 | */ |
1260 | static irqreturn_t amd8111e_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 1260 | static irqreturn_t amd8111e_interrupt(int irq, void *dev_id) |
1261 | { | 1261 | { |
1262 | 1262 | ||
1263 | struct net_device * dev = (struct net_device *) dev_id; | 1263 | struct net_device * dev = (struct net_device *) dev_id; |
@@ -1336,7 +1336,7 @@ static void amd8111e_poll(struct net_device *dev) | |||
1336 | unsigned long flags; | 1336 | unsigned long flags; |
1337 | local_save_flags(flags); | 1337 | local_save_flags(flags); |
1338 | local_irq_disable(); | 1338 | local_irq_disable(); |
1339 | amd8111e_interrupt(0, dev, NULL); | 1339 | amd8111e_interrupt(0, dev); |
1340 | local_irq_restore(flags); | 1340 | local_irq_restore(flags); |
1341 | } | 1341 | } |
1342 | #endif | 1342 | #endif |
diff --git a/drivers/net/apne.c b/drivers/net/apne.c index 643b08cc7403..9164d8cd670e 100644 --- a/drivers/net/apne.c +++ b/drivers/net/apne.c | |||
@@ -88,7 +88,7 @@ static void apne_block_input(struct net_device *dev, int count, | |||
88 | struct sk_buff *skb, int ring_offset); | 88 | struct sk_buff *skb, int ring_offset); |
89 | static void apne_block_output(struct net_device *dev, const int count, | 89 | static void apne_block_output(struct net_device *dev, const int count, |
90 | const unsigned char *buf, const int start_page); | 90 | const unsigned char *buf, const int start_page); |
91 | static irqreturn_t apne_interrupt(int irq, void *dev_id, struct pt_regs *regs); | 91 | static irqreturn_t apne_interrupt(int irq, void *dev_id); |
92 | 92 | ||
93 | static int init_pcmcia(void); | 93 | static int init_pcmcia(void); |
94 | 94 | ||
@@ -543,7 +543,7 @@ apne_block_output(struct net_device *dev, int count, | |||
543 | return; | 543 | return; |
544 | } | 544 | } |
545 | 545 | ||
546 | static irqreturn_t apne_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 546 | static irqreturn_t apne_interrupt(int irq, void *dev_id) |
547 | { | 547 | { |
548 | unsigned char pcmcia_intreq; | 548 | unsigned char pcmcia_intreq; |
549 | 549 | ||
@@ -559,7 +559,7 @@ static irqreturn_t apne_interrupt(int irq, void *dev_id, struct pt_regs *regs) | |||
559 | if (ei_debug > 3) | 559 | if (ei_debug > 3) |
560 | printk("pcmcia intreq = %x\n", pcmcia_intreq); | 560 | printk("pcmcia intreq = %x\n", pcmcia_intreq); |
561 | pcmcia_disable_irq(); /* to get rid of the sti() within ei_interrupt */ | 561 | pcmcia_disable_irq(); /* to get rid of the sti() within ei_interrupt */ |
562 | ei_interrupt(irq, dev_id, regs); | 562 | ei_interrupt(irq, dev_id); |
563 | pcmcia_ack_int(pcmcia_get_intreq()); | 563 | pcmcia_ack_int(pcmcia_get_intreq()); |
564 | pcmcia_enable_irq(); | 564 | pcmcia_enable_irq(); |
565 | return IRQ_HANDLED; | 565 | return IRQ_HANDLED; |
diff --git a/drivers/net/appletalk/cops.c b/drivers/net/appletalk/cops.c index ae7f828344d9..cc1a27ed197f 100644 --- a/drivers/net/appletalk/cops.c +++ b/drivers/net/appletalk/cops.c | |||
@@ -188,7 +188,7 @@ static void cops_reset (struct net_device *dev, int sleep); | |||
188 | static void cops_load (struct net_device *dev); | 188 | static void cops_load (struct net_device *dev); |
189 | static int cops_nodeid (struct net_device *dev, int nodeid); | 189 | static int cops_nodeid (struct net_device *dev, int nodeid); |
190 | 190 | ||
191 | static irqreturn_t cops_interrupt (int irq, void *dev_id, struct pt_regs *regs); | 191 | static irqreturn_t cops_interrupt (int irq, void *dev_id); |
192 | static void cops_poll (unsigned long ltdev); | 192 | static void cops_poll (unsigned long ltdev); |
193 | static void cops_timeout(struct net_device *dev); | 193 | static void cops_timeout(struct net_device *dev); |
194 | static void cops_rx (struct net_device *dev); | 194 | static void cops_rx (struct net_device *dev); |
@@ -721,7 +721,7 @@ static void cops_poll(unsigned long ltdev) | |||
721 | * The typical workload of the driver: | 721 | * The typical workload of the driver: |
722 | * Handle the network interface interrupts. | 722 | * Handle the network interface interrupts. |
723 | */ | 723 | */ |
724 | static irqreturn_t cops_interrupt(int irq, void *dev_id, struct pt_regs * regs) | 724 | static irqreturn_t cops_interrupt(int irq, void *dev_id) |
725 | { | 725 | { |
726 | struct net_device *dev = dev_id; | 726 | struct net_device *dev = dev_id; |
727 | struct cops_local *lp; | 727 | struct cops_local *lp; |
diff --git a/drivers/net/appletalk/ltpc.c b/drivers/net/appletalk/ltpc.c index d5666c37cb0d..2ea44ce49810 100644 --- a/drivers/net/appletalk/ltpc.c +++ b/drivers/net/appletalk/ltpc.c | |||
@@ -790,7 +790,7 @@ static int sendup_buffer (struct net_device *dev) | |||
790 | /* the handler for the board interrupt */ | 790 | /* the handler for the board interrupt */ |
791 | 791 | ||
792 | static irqreturn_t | 792 | static irqreturn_t |
793 | ltpc_interrupt(int irq, void *dev_id, struct pt_regs *reg_ptr) | 793 | ltpc_interrupt(int irq, void *dev_id) |
794 | { | 794 | { |
795 | struct net_device *dev = dev_id; | 795 | struct net_device *dev = dev_id; |
796 | 796 | ||
diff --git a/drivers/net/arcnet/arcnet.c b/drivers/net/arcnet/arcnet.c index 5a95005253fa..4e91dab1f17f 100644 --- a/drivers/net/arcnet/arcnet.c +++ b/drivers/net/arcnet/arcnet.c | |||
@@ -752,7 +752,7 @@ static void arcnet_timeout(struct net_device *dev) | |||
752 | * interrupts. Establish which device needs attention, and call the correct | 752 | * interrupts. Establish which device needs attention, and call the correct |
753 | * chipset interrupt handler. | 753 | * chipset interrupt handler. |
754 | */ | 754 | */ |
755 | irqreturn_t arcnet_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 755 | irqreturn_t arcnet_interrupt(int irq, void *dev_id) |
756 | { | 756 | { |
757 | struct net_device *dev = dev_id; | 757 | struct net_device *dev = dev_id; |
758 | struct arcnet_local *lp; | 758 | struct arcnet_local *lp; |
diff --git a/drivers/net/ariadne.c b/drivers/net/ariadne.c index 3aef3c10d56f..9dfc09b181c1 100644 --- a/drivers/net/ariadne.c +++ b/drivers/net/ariadne.c | |||
@@ -120,7 +120,7 @@ static int ariadne_start_xmit(struct sk_buff *skb, struct net_device *dev); | |||
120 | static void ariadne_tx_timeout(struct net_device *dev); | 120 | static void ariadne_tx_timeout(struct net_device *dev); |
121 | static int ariadne_rx(struct net_device *dev); | 121 | static int ariadne_rx(struct net_device *dev); |
122 | static void ariadne_reset(struct net_device *dev); | 122 | static void ariadne_reset(struct net_device *dev); |
123 | static irqreturn_t ariadne_interrupt(int irq, void *data, struct pt_regs *fp); | 123 | static irqreturn_t ariadne_interrupt(int irq, void *data); |
124 | static int ariadne_close(struct net_device *dev); | 124 | static int ariadne_close(struct net_device *dev); |
125 | static struct net_device_stats *ariadne_get_stats(struct net_device *dev); | 125 | static struct net_device_stats *ariadne_get_stats(struct net_device *dev); |
126 | #ifdef HAVE_MULTICAST | 126 | #ifdef HAVE_MULTICAST |
@@ -416,7 +416,7 @@ static inline void ariadne_reset(struct net_device *dev) | |||
416 | } | 416 | } |
417 | 417 | ||
418 | 418 | ||
419 | static irqreturn_t ariadne_interrupt(int irq, void *data, struct pt_regs *fp) | 419 | static irqreturn_t ariadne_interrupt(int irq, void *data) |
420 | { | 420 | { |
421 | struct net_device *dev = (struct net_device *)data; | 421 | struct net_device *dev = (struct net_device *)data; |
422 | volatile struct Am79C960 *lance = (struct Am79C960*)dev->base_addr; | 422 | volatile struct Am79C960 *lance = (struct Am79C960*)dev->base_addr; |
diff --git a/drivers/net/arm/am79c961a.c b/drivers/net/arm/am79c961a.c index 09d5c3f26985..ddd12d44ff22 100644 --- a/drivers/net/arm/am79c961a.c +++ b/drivers/net/arm/am79c961a.c | |||
@@ -38,7 +38,7 @@ | |||
38 | #include "am79c961a.h" | 38 | #include "am79c961a.h" |
39 | 39 | ||
40 | static irqreturn_t | 40 | static irqreturn_t |
41 | am79c961_interrupt (int irq, void *dev_id, struct pt_regs *regs); | 41 | am79c961_interrupt (int irq, void *dev_id); |
42 | 42 | ||
43 | static unsigned int net_debug = NET_DEBUG; | 43 | static unsigned int net_debug = NET_DEBUG; |
44 | 44 | ||
@@ -596,7 +596,7 @@ am79c961_tx(struct net_device *dev, struct dev_priv *priv) | |||
596 | } | 596 | } |
597 | 597 | ||
598 | static irqreturn_t | 598 | static irqreturn_t |
599 | am79c961_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 599 | am79c961_interrupt(int irq, void *dev_id) |
600 | { | 600 | { |
601 | struct net_device *dev = (struct net_device *)dev_id; | 601 | struct net_device *dev = (struct net_device *)dev_id; |
602 | struct dev_priv *priv = netdev_priv(dev); | 602 | struct dev_priv *priv = netdev_priv(dev); |
diff --git a/drivers/net/arm/at91_ether.c b/drivers/net/arm/at91_ether.c index 3ecf2cc53a7c..b54b857e357e 100644 --- a/drivers/net/arm/at91_ether.c +++ b/drivers/net/arm/at91_ether.c | |||
@@ -196,7 +196,7 @@ static void update_linkspeed(struct net_device *dev, int silent) | |||
196 | /* | 196 | /* |
197 | * Handle interrupts from the PHY | 197 | * Handle interrupts from the PHY |
198 | */ | 198 | */ |
199 | static irqreturn_t at91ether_phy_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 199 | static irqreturn_t at91ether_phy_interrupt(int irq, void *dev_id) |
200 | { | 200 | { |
201 | struct net_device *dev = (struct net_device *) dev_id; | 201 | struct net_device *dev = (struct net_device *) dev_id; |
202 | struct at91_private *lp = (struct at91_private *) dev->priv; | 202 | struct at91_private *lp = (struct at91_private *) dev->priv; |
@@ -888,7 +888,7 @@ static void at91ether_rx(struct net_device *dev) | |||
888 | /* | 888 | /* |
889 | * MAC interrupt handler | 889 | * MAC interrupt handler |
890 | */ | 890 | */ |
891 | static irqreturn_t at91ether_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 891 | static irqreturn_t at91ether_interrupt(int irq, void *dev_id) |
892 | { | 892 | { |
893 | struct net_device *dev = (struct net_device *) dev_id; | 893 | struct net_device *dev = (struct net_device *) dev_id; |
894 | struct at91_private *lp = (struct at91_private *) dev->priv; | 894 | struct at91_private *lp = (struct at91_private *) dev->priv; |
diff --git a/drivers/net/arm/ep93xx_eth.c b/drivers/net/arm/ep93xx_eth.c index d231efa624d4..127561c782fd 100644 --- a/drivers/net/arm/ep93xx_eth.c +++ b/drivers/net/arm/ep93xx_eth.c | |||
@@ -435,7 +435,7 @@ static void ep93xx_tx_complete(struct net_device *dev) | |||
435 | netif_wake_queue(dev); | 435 | netif_wake_queue(dev); |
436 | } | 436 | } |
437 | 437 | ||
438 | static irqreturn_t ep93xx_irq(int irq, void *dev_id, struct pt_regs *regs) | 438 | static irqreturn_t ep93xx_irq(int irq, void *dev_id) |
439 | { | 439 | { |
440 | struct net_device *dev = dev_id; | 440 | struct net_device *dev = dev_id; |
441 | struct ep93xx_priv *ep = netdev_priv(dev); | 441 | struct ep93xx_priv *ep = netdev_priv(dev); |
diff --git a/drivers/net/arm/ether1.c b/drivers/net/arm/ether1.c index 312955d07b28..f3478a30e778 100644 --- a/drivers/net/arm/ether1.c +++ b/drivers/net/arm/ether1.c | |||
@@ -68,7 +68,7 @@ static unsigned int net_debug = NET_DEBUG; | |||
68 | 68 | ||
69 | static int ether1_open(struct net_device *dev); | 69 | static int ether1_open(struct net_device *dev); |
70 | static int ether1_sendpacket(struct sk_buff *skb, struct net_device *dev); | 70 | static int ether1_sendpacket(struct sk_buff *skb, struct net_device *dev); |
71 | static irqreturn_t ether1_interrupt(int irq, void *dev_id, struct pt_regs *regs); | 71 | static irqreturn_t ether1_interrupt(int irq, void *dev_id); |
72 | static int ether1_close(struct net_device *dev); | 72 | static int ether1_close(struct net_device *dev); |
73 | static struct net_device_stats *ether1_getstats(struct net_device *dev); | 73 | static struct net_device_stats *ether1_getstats(struct net_device *dev); |
74 | static void ether1_setmulticastlist(struct net_device *dev); | 74 | static void ether1_setmulticastlist(struct net_device *dev); |
@@ -908,7 +908,7 @@ ether1_recv_done (struct net_device *dev) | |||
908 | } | 908 | } |
909 | 909 | ||
910 | static irqreturn_t | 910 | static irqreturn_t |
911 | ether1_interrupt (int irq, void *dev_id, struct pt_regs *regs) | 911 | ether1_interrupt (int irq, void *dev_id) |
912 | { | 912 | { |
913 | struct net_device *dev = (struct net_device *)dev_id; | 913 | struct net_device *dev = (struct net_device *)dev_id; |
914 | int status; | 914 | int status; |
diff --git a/drivers/net/arm/ether3.c b/drivers/net/arm/ether3.c index 081074180e62..84686c8a5bc2 100644 --- a/drivers/net/arm/ether3.c +++ b/drivers/net/arm/ether3.c | |||
@@ -81,7 +81,7 @@ static int ether3_rx(struct net_device *dev, unsigned int maxcnt); | |||
81 | static void ether3_tx(struct net_device *dev); | 81 | static void ether3_tx(struct net_device *dev); |
82 | static int ether3_open (struct net_device *dev); | 82 | static int ether3_open (struct net_device *dev); |
83 | static int ether3_sendpacket (struct sk_buff *skb, struct net_device *dev); | 83 | static int ether3_sendpacket (struct sk_buff *skb, struct net_device *dev); |
84 | static irqreturn_t ether3_interrupt (int irq, void *dev_id, struct pt_regs *regs); | 84 | static irqreturn_t ether3_interrupt (int irq, void *dev_id); |
85 | static int ether3_close (struct net_device *dev); | 85 | static int ether3_close (struct net_device *dev); |
86 | static struct net_device_stats *ether3_getstats (struct net_device *dev); | 86 | static struct net_device_stats *ether3_getstats (struct net_device *dev); |
87 | static void ether3_setmulticastlist (struct net_device *dev); | 87 | static void ether3_setmulticastlist (struct net_device *dev); |
@@ -568,7 +568,7 @@ ether3_sendpacket(struct sk_buff *skb, struct net_device *dev) | |||
568 | } | 568 | } |
569 | 569 | ||
570 | static irqreturn_t | 570 | static irqreturn_t |
571 | ether3_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 571 | ether3_interrupt(int irq, void *dev_id) |
572 | { | 572 | { |
573 | struct net_device *dev = (struct net_device *)dev_id; | 573 | struct net_device *dev = (struct net_device *)dev_id; |
574 | unsigned int status, handled = IRQ_NONE; | 574 | unsigned int status, handled = IRQ_NONE; |
diff --git a/drivers/net/at1700.c b/drivers/net/at1700.c index 4aeca11f3ee2..8620a5b470f5 100644 --- a/drivers/net/at1700.c +++ b/drivers/net/at1700.c | |||
@@ -161,7 +161,7 @@ static int at1700_probe1(struct net_device *dev, int ioaddr); | |||
161 | static int read_eeprom(long ioaddr, int location); | 161 | static int read_eeprom(long ioaddr, int location); |
162 | static int net_open(struct net_device *dev); | 162 | static int net_open(struct net_device *dev); |
163 | static int net_send_packet(struct sk_buff *skb, struct net_device *dev); | 163 | static int net_send_packet(struct sk_buff *skb, struct net_device *dev); |
164 | static irqreturn_t net_interrupt(int irq, void *dev_id, struct pt_regs *regs); | 164 | static irqreturn_t net_interrupt(int irq, void *dev_id); |
165 | static void net_rx(struct net_device *dev); | 165 | static void net_rx(struct net_device *dev); |
166 | static int net_close(struct net_device *dev); | 166 | static int net_close(struct net_device *dev); |
167 | static struct net_device_stats *net_get_stats(struct net_device *dev); | 167 | static struct net_device_stats *net_get_stats(struct net_device *dev); |
@@ -648,8 +648,7 @@ static int net_send_packet (struct sk_buff *skb, struct net_device *dev) | |||
648 | 648 | ||
649 | /* The typical workload of the driver: | 649 | /* The typical workload of the driver: |
650 | Handle the network interface interrupts. */ | 650 | Handle the network interface interrupts. */ |
651 | static irqreturn_t | 651 | static irqreturn_t net_interrupt(int irq, void *dev_id) |
652 | net_interrupt(int irq, void *dev_id, struct pt_regs *regs) | ||
653 | { | 652 | { |
654 | struct net_device *dev = dev_id; | 653 | struct net_device *dev = dev_id; |
655 | struct net_local *lp; | 654 | struct net_local *lp; |
diff --git a/drivers/net/atari_bionet.c b/drivers/net/atari_bionet.c index 92b52138acad..4e3bf6a1f22c 100644 --- a/drivers/net/atari_bionet.c +++ b/drivers/net/atari_bionet.c | |||
@@ -220,7 +220,7 @@ gsend: | |||
220 | } | 220 | } |
221 | 221 | ||
222 | static irqreturn_t | 222 | static irqreturn_t |
223 | bionet_intr(int irq, void *data, struct pt_regs *fp) { | 223 | bionet_intr(int irq, void *data) { |
224 | return IRQ_HANDLED; | 224 | return IRQ_HANDLED; |
225 | } | 225 | } |
226 | 226 | ||
diff --git a/drivers/net/atari_pamsnet.c b/drivers/net/atari_pamsnet.c index a1026251b933..3b5436149286 100644 --- a/drivers/net/atari_pamsnet.c +++ b/drivers/net/atari_pamsnet.c | |||
@@ -163,7 +163,7 @@ static int pamsnet_close(struct net_device *dev); | |||
163 | static struct net_device_stats *net_get_stats(struct net_device *dev); | 163 | static struct net_device_stats *net_get_stats(struct net_device *dev); |
164 | static void pamsnet_tick(unsigned long); | 164 | static void pamsnet_tick(unsigned long); |
165 | 165 | ||
166 | static irqreturn_t pamsnet_intr(int irq, void *data, struct pt_regs *fp); | 166 | static irqreturn_t pamsnet_intr(int irq, void *data); |
167 | 167 | ||
168 | static DEFINE_TIMER(pamsnet_timer, pamsnet_tick, 0, 0); | 168 | static DEFINE_TIMER(pamsnet_timer, pamsnet_tick, 0, 0); |
169 | 169 | ||
@@ -494,7 +494,6 @@ static irqreturn_t | |||
494 | pamsnet_intr(irq, data, fp) | 494 | pamsnet_intr(irq, data, fp) |
495 | int irq; | 495 | int irq; |
496 | void *data; | 496 | void *data; |
497 | struct pt_regs *fp; | ||
498 | { | 497 | { |
499 | return IRQ_HANDLED; | 498 | return IRQ_HANDLED; |
500 | } | 499 | } |
diff --git a/drivers/net/atarilance.c b/drivers/net/atarilance.c index b6570ca6ada7..d79489e46249 100644 --- a/drivers/net/atarilance.c +++ b/drivers/net/atarilance.c | |||
@@ -344,7 +344,7 @@ static unsigned long lance_probe1( struct net_device *dev, struct lance_addr | |||
344 | static int lance_open( struct net_device *dev ); | 344 | static int lance_open( struct net_device *dev ); |
345 | static void lance_init_ring( struct net_device *dev ); | 345 | static void lance_init_ring( struct net_device *dev ); |
346 | static int lance_start_xmit( struct sk_buff *skb, struct net_device *dev ); | 346 | static int lance_start_xmit( struct sk_buff *skb, struct net_device *dev ); |
347 | static irqreturn_t lance_interrupt( int irq, void *dev_id, struct pt_regs *fp ); | 347 | static irqreturn_t lance_interrupt( int irq, void *dev_id ); |
348 | static int lance_rx( struct net_device *dev ); | 348 | static int lance_rx( struct net_device *dev ); |
349 | static int lance_close( struct net_device *dev ); | 349 | static int lance_close( struct net_device *dev ); |
350 | static struct net_device_stats *lance_get_stats( struct net_device *dev ); | 350 | static struct net_device_stats *lance_get_stats( struct net_device *dev ); |
@@ -866,7 +866,7 @@ static int lance_start_xmit( struct sk_buff *skb, struct net_device *dev ) | |||
866 | 866 | ||
867 | /* The LANCE interrupt handler. */ | 867 | /* The LANCE interrupt handler. */ |
868 | 868 | ||
869 | static irqreturn_t lance_interrupt( int irq, void *dev_id, struct pt_regs *fp) | 869 | static irqreturn_t lance_interrupt( int irq, void *dev_id ) |
870 | { | 870 | { |
871 | struct net_device *dev = dev_id; | 871 | struct net_device *dev = dev_id; |
872 | struct lance_private *lp; | 872 | struct lance_private *lp; |
diff --git a/drivers/net/atp.c b/drivers/net/atp.c index f2c8e0d5497b..2d306fcb7f36 100644 --- a/drivers/net/atp.c +++ b/drivers/net/atp.c | |||
@@ -203,7 +203,7 @@ static void hardware_init(struct net_device *dev); | |||
203 | static void write_packet(long ioaddr, int length, unsigned char *packet, int pad, int mode); | 203 | static void write_packet(long ioaddr, int length, unsigned char *packet, int pad, int mode); |
204 | static void trigger_send(long ioaddr, int length); | 204 | static void trigger_send(long ioaddr, int length); |
205 | static int atp_send_packet(struct sk_buff *skb, struct net_device *dev); | 205 | static int atp_send_packet(struct sk_buff *skb, struct net_device *dev); |
206 | static irqreturn_t atp_interrupt(int irq, void *dev_id, struct pt_regs *regs); | 206 | static irqreturn_t atp_interrupt(int irq, void *dev_id); |
207 | static void net_rx(struct net_device *dev); | 207 | static void net_rx(struct net_device *dev); |
208 | static void read_block(long ioaddr, int length, unsigned char *buffer, int data_mode); | 208 | static void read_block(long ioaddr, int length, unsigned char *buffer, int data_mode); |
209 | static int net_close(struct net_device *dev); | 209 | static int net_close(struct net_device *dev); |
@@ -596,20 +596,15 @@ static int atp_send_packet(struct sk_buff *skb, struct net_device *dev) | |||
596 | 596 | ||
597 | /* The typical workload of the driver: | 597 | /* The typical workload of the driver: |
598 | Handle the network interface interrupts. */ | 598 | Handle the network interface interrupts. */ |
599 | static irqreturn_t | 599 | static irqreturn_t atp_interrupt(int irq, void *dev_instance) |
600 | atp_interrupt(int irq, void *dev_instance, struct pt_regs * regs) | ||
601 | { | 600 | { |
602 | struct net_device *dev = (struct net_device *)dev_instance; | 601 | struct net_device *dev = dev_instance; |
603 | struct net_local *lp; | 602 | struct net_local *lp; |
604 | long ioaddr; | 603 | long ioaddr; |
605 | static int num_tx_since_rx; | 604 | static int num_tx_since_rx; |
606 | int boguscount = max_interrupt_work; | 605 | int boguscount = max_interrupt_work; |
607 | int handled = 0; | 606 | int handled = 0; |
608 | 607 | ||
609 | if (dev == NULL) { | ||
610 | printk(KERN_ERR "ATP_interrupt(): irq %d for unknown device.\n", irq); | ||
611 | return IRQ_NONE; | ||
612 | } | ||
613 | ioaddr = dev->base_addr; | 608 | ioaddr = dev->base_addr; |
614 | lp = netdev_priv(dev); | 609 | lp = netdev_priv(dev); |
615 | 610 | ||
diff --git a/drivers/net/au1000_eth.c b/drivers/net/au1000_eth.c index ac33b1b9cf4a..4873dc610d22 100644 --- a/drivers/net/au1000_eth.c +++ b/drivers/net/au1000_eth.c | |||
@@ -89,7 +89,7 @@ static int au1000_open(struct net_device *); | |||
89 | static int au1000_close(struct net_device *); | 89 | static int au1000_close(struct net_device *); |
90 | static int au1000_tx(struct sk_buff *, struct net_device *); | 90 | static int au1000_tx(struct sk_buff *, struct net_device *); |
91 | static int au1000_rx(struct net_device *); | 91 | static int au1000_rx(struct net_device *); |
92 | static irqreturn_t au1000_interrupt(int, void *, struct pt_regs *); | 92 | static irqreturn_t au1000_interrupt(int, void *); |
93 | static void au1000_tx_timeout(struct net_device *); | 93 | static void au1000_tx_timeout(struct net_device *); |
94 | static void set_rx_mode(struct net_device *); | 94 | static void set_rx_mode(struct net_device *); |
95 | static struct net_device_stats *au1000_get_stats(struct net_device *); | 95 | static struct net_device_stats *au1000_get_stats(struct net_device *); |
@@ -1253,7 +1253,7 @@ static int au1000_rx(struct net_device *dev) | |||
1253 | /* | 1253 | /* |
1254 | * Au1000 interrupt service routine. | 1254 | * Au1000 interrupt service routine. |
1255 | */ | 1255 | */ |
1256 | static irqreturn_t au1000_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 1256 | static irqreturn_t au1000_interrupt(int irq, void *dev_id) |
1257 | { | 1257 | { |
1258 | struct net_device *dev = (struct net_device *) dev_id; | 1258 | struct net_device *dev = (struct net_device *) dev_id; |
1259 | 1259 | ||
diff --git a/drivers/net/b44.c b/drivers/net/b44.c index 973b8eb37dc2..ebb726e655ac 100644 --- a/drivers/net/b44.c +++ b/drivers/net/b44.c | |||
@@ -896,7 +896,7 @@ static int b44_poll(struct net_device *netdev, int *budget) | |||
896 | return (done ? 0 : 1); | 896 | return (done ? 0 : 1); |
897 | } | 897 | } |
898 | 898 | ||
899 | static irqreturn_t b44_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 899 | static irqreturn_t b44_interrupt(int irq, void *dev_id) |
900 | { | 900 | { |
901 | struct net_device *dev = dev_id; | 901 | struct net_device *dev = dev_id; |
902 | struct b44 *bp = netdev_priv(dev); | 902 | struct b44 *bp = netdev_priv(dev); |
@@ -1461,7 +1461,7 @@ out: | |||
1461 | static void b44_poll_controller(struct net_device *dev) | 1461 | static void b44_poll_controller(struct net_device *dev) |
1462 | { | 1462 | { |
1463 | disable_irq(dev->irq); | 1463 | disable_irq(dev->irq); |
1464 | b44_interrupt(dev->irq, dev, NULL); | 1464 | b44_interrupt(dev->irq, dev); |
1465 | enable_irq(dev->irq); | 1465 | enable_irq(dev->irq); |
1466 | } | 1466 | } |
1467 | #endif | 1467 | #endif |
diff --git a/drivers/net/bmac.c b/drivers/net/bmac.c index 4adfe7b77031..4528ce9c4e43 100644 --- a/drivers/net/bmac.c +++ b/drivers/net/bmac.c | |||
@@ -152,9 +152,9 @@ static void bmac_init_chip(struct net_device *dev); | |||
152 | static void bmac_init_registers(struct net_device *dev); | 152 | static void bmac_init_registers(struct net_device *dev); |
153 | static void bmac_enable_and_reset_chip(struct net_device *dev); | 153 | static void bmac_enable_and_reset_chip(struct net_device *dev); |
154 | static int bmac_set_address(struct net_device *dev, void *addr); | 154 | static int bmac_set_address(struct net_device *dev, void *addr); |
155 | static irqreturn_t bmac_misc_intr(int irq, void *dev_id, struct pt_regs *regs); | 155 | static irqreturn_t bmac_misc_intr(int irq, void *dev_id); |
156 | static irqreturn_t bmac_txdma_intr(int irq, void *dev_id, struct pt_regs *regs); | 156 | static irqreturn_t bmac_txdma_intr(int irq, void *dev_id); |
157 | static irqreturn_t bmac_rxdma_intr(int irq, void *dev_id, struct pt_regs *regs); | 157 | static irqreturn_t bmac_rxdma_intr(int irq, void *dev_id); |
158 | static void bmac_set_timeout(struct net_device *dev); | 158 | static void bmac_set_timeout(struct net_device *dev); |
159 | static void bmac_tx_timeout(unsigned long data); | 159 | static void bmac_tx_timeout(unsigned long data); |
160 | static int bmac_output(struct sk_buff *skb, struct net_device *dev); | 160 | static int bmac_output(struct sk_buff *skb, struct net_device *dev); |
@@ -688,7 +688,7 @@ static int bmac_transmit_packet(struct sk_buff *skb, struct net_device *dev) | |||
688 | 688 | ||
689 | static int rxintcount; | 689 | static int rxintcount; |
690 | 690 | ||
691 | static irqreturn_t bmac_rxdma_intr(int irq, void *dev_id, struct pt_regs *regs) | 691 | static irqreturn_t bmac_rxdma_intr(int irq, void *dev_id) |
692 | { | 692 | { |
693 | struct net_device *dev = (struct net_device *) dev_id; | 693 | struct net_device *dev = (struct net_device *) dev_id; |
694 | struct bmac_data *bp = netdev_priv(dev); | 694 | struct bmac_data *bp = netdev_priv(dev); |
@@ -765,7 +765,7 @@ static irqreturn_t bmac_rxdma_intr(int irq, void *dev_id, struct pt_regs *regs) | |||
765 | 765 | ||
766 | static int txintcount; | 766 | static int txintcount; |
767 | 767 | ||
768 | static irqreturn_t bmac_txdma_intr(int irq, void *dev_id, struct pt_regs *regs) | 768 | static irqreturn_t bmac_txdma_intr(int irq, void *dev_id) |
769 | { | 769 | { |
770 | struct net_device *dev = (struct net_device *) dev_id; | 770 | struct net_device *dev = (struct net_device *) dev_id; |
771 | struct bmac_data *bp = netdev_priv(dev); | 771 | struct bmac_data *bp = netdev_priv(dev); |
@@ -1082,7 +1082,7 @@ static void bmac_set_multicast(struct net_device *dev) | |||
1082 | 1082 | ||
1083 | static int miscintcount; | 1083 | static int miscintcount; |
1084 | 1084 | ||
1085 | static irqreturn_t bmac_misc_intr(int irq, void *dev_id, struct pt_regs *regs) | 1085 | static irqreturn_t bmac_misc_intr(int irq, void *dev_id) |
1086 | { | 1086 | { |
1087 | struct net_device *dev = (struct net_device *) dev_id; | 1087 | struct net_device *dev = (struct net_device *) dev_id; |
1088 | struct bmac_data *bp = netdev_priv(dev); | 1088 | struct bmac_data *bp = netdev_priv(dev); |
@@ -1091,7 +1091,7 @@ static irqreturn_t bmac_misc_intr(int irq, void *dev_id, struct pt_regs *regs) | |||
1091 | XXDEBUG(("bmac_misc_intr\n")); | 1091 | XXDEBUG(("bmac_misc_intr\n")); |
1092 | } | 1092 | } |
1093 | /* XXDEBUG(("bmac_misc_intr, status=%#08x\n", status)); */ | 1093 | /* XXDEBUG(("bmac_misc_intr, status=%#08x\n", status)); */ |
1094 | /* bmac_txdma_intr_inner(irq, dev_id, regs); */ | 1094 | /* bmac_txdma_intr_inner(irq, dev_id); */ |
1095 | /* if (status & FrameReceived) bp->stats.rx_dropped++; */ | 1095 | /* if (status & FrameReceived) bp->stats.rx_dropped++; */ |
1096 | if (status & RxErrorMask) bp->stats.rx_errors++; | 1096 | if (status & RxErrorMask) bp->stats.rx_errors++; |
1097 | if (status & RxCRCCntExp) bp->stats.rx_crc_errors++; | 1097 | if (status & RxCRCCntExp) bp->stats.rx_crc_errors++; |
diff --git a/drivers/net/bnx2.c b/drivers/net/bnx2.c index 6b4edb63c4c4..01b76d3aa42f 100644 --- a/drivers/net/bnx2.c +++ b/drivers/net/bnx2.c | |||
@@ -1888,7 +1888,7 @@ next_rx: | |||
1888 | * is that the MSI interrupt is always serviced. | 1888 | * is that the MSI interrupt is always serviced. |
1889 | */ | 1889 | */ |
1890 | static irqreturn_t | 1890 | static irqreturn_t |
1891 | bnx2_msi(int irq, void *dev_instance, struct pt_regs *regs) | 1891 | bnx2_msi(int irq, void *dev_instance) |
1892 | { | 1892 | { |
1893 | struct net_device *dev = dev_instance; | 1893 | struct net_device *dev = dev_instance; |
1894 | struct bnx2 *bp = netdev_priv(dev); | 1894 | struct bnx2 *bp = netdev_priv(dev); |
@@ -1908,7 +1908,7 @@ bnx2_msi(int irq, void *dev_instance, struct pt_regs *regs) | |||
1908 | } | 1908 | } |
1909 | 1909 | ||
1910 | static irqreturn_t | 1910 | static irqreturn_t |
1911 | bnx2_interrupt(int irq, void *dev_instance, struct pt_regs *regs) | 1911 | bnx2_interrupt(int irq, void *dev_instance) |
1912 | { | 1912 | { |
1913 | struct net_device *dev = dev_instance; | 1913 | struct net_device *dev = dev_instance; |
1914 | struct bnx2 *bp = netdev_priv(dev); | 1914 | struct bnx2 *bp = netdev_priv(dev); |
@@ -5554,7 +5554,7 @@ poll_bnx2(struct net_device *dev) | |||
5554 | struct bnx2 *bp = netdev_priv(dev); | 5554 | struct bnx2 *bp = netdev_priv(dev); |
5555 | 5555 | ||
5556 | disable_irq(bp->pdev->irq); | 5556 | disable_irq(bp->pdev->irq); |
5557 | bnx2_interrupt(bp->pdev->irq, dev, NULL); | 5557 | bnx2_interrupt(bp->pdev->irq, dev); |
5558 | enable_irq(bp->pdev->irq); | 5558 | enable_irq(bp->pdev->irq); |
5559 | } | 5559 | } |
5560 | #endif | 5560 | #endif |
diff --git a/drivers/net/cassini.c b/drivers/net/cassini.c index 7694365092f8..521c5b71023c 100644 --- a/drivers/net/cassini.c +++ b/drivers/net/cassini.c | |||
@@ -2469,7 +2469,7 @@ static inline void cas_handle_irqN(struct net_device *dev, | |||
2469 | cas_post_rxcs_ringN(dev, cp, ring); | 2469 | cas_post_rxcs_ringN(dev, cp, ring); |
2470 | } | 2470 | } |
2471 | 2471 | ||
2472 | static irqreturn_t cas_interruptN(int irq, void *dev_id, struct pt_regs *regs) | 2472 | static irqreturn_t cas_interruptN(int irq, void *dev_id) |
2473 | { | 2473 | { |
2474 | struct net_device *dev = dev_id; | 2474 | struct net_device *dev = dev_id; |
2475 | struct cas *cp = netdev_priv(dev); | 2475 | struct cas *cp = netdev_priv(dev); |
@@ -2522,7 +2522,7 @@ static inline void cas_handle_irq1(struct cas *cp, const u32 status) | |||
2522 | } | 2522 | } |
2523 | 2523 | ||
2524 | /* ring 2 handles a few more events than 3 and 4 */ | 2524 | /* ring 2 handles a few more events than 3 and 4 */ |
2525 | static irqreturn_t cas_interrupt1(int irq, void *dev_id, struct pt_regs *regs) | 2525 | static irqreturn_t cas_interrupt1(int irq, void *dev_id) |
2526 | { | 2526 | { |
2527 | struct net_device *dev = dev_id; | 2527 | struct net_device *dev = dev_id; |
2528 | struct cas *cp = netdev_priv(dev); | 2528 | struct cas *cp = netdev_priv(dev); |
@@ -2574,7 +2574,7 @@ static inline void cas_handle_irq(struct net_device *dev, | |||
2574 | cas_post_rxcs_ringN(dev, cp, 0); | 2574 | cas_post_rxcs_ringN(dev, cp, 0); |
2575 | } | 2575 | } |
2576 | 2576 | ||
2577 | static irqreturn_t cas_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 2577 | static irqreturn_t cas_interrupt(int irq, void *dev_id) |
2578 | { | 2578 | { |
2579 | struct net_device *dev = dev_id; | 2579 | struct net_device *dev = dev_id; |
2580 | struct cas *cp = netdev_priv(dev); | 2580 | struct cas *cp = netdev_priv(dev); |
@@ -2689,7 +2689,7 @@ static void cas_netpoll(struct net_device *dev) | |||
2689 | struct cas *cp = netdev_priv(dev); | 2689 | struct cas *cp = netdev_priv(dev); |
2690 | 2690 | ||
2691 | cas_disable_irq(cp, 0); | 2691 | cas_disable_irq(cp, 0); |
2692 | cas_interrupt(cp->pdev->irq, dev, NULL); | 2692 | cas_interrupt(cp->pdev->irq, dev); |
2693 | cas_enable_irq(cp, 0); | 2693 | cas_enable_irq(cp, 0); |
2694 | 2694 | ||
2695 | #ifdef USE_PCI_INTB | 2695 | #ifdef USE_PCI_INTB |
diff --git a/drivers/net/chelsio/cpl5_cmd.h b/drivers/net/chelsio/cpl5_cmd.h index 27925e487bcf..5b357d9e88d6 100644 --- a/drivers/net/chelsio/cpl5_cmd.h +++ b/drivers/net/chelsio/cpl5_cmd.h | |||
@@ -108,7 +108,7 @@ struct cpl_tx_pkt_lso { | |||
108 | u8 iff:4; | 108 | u8 iff:4; |
109 | #endif | 109 | #endif |
110 | u16 vlan; | 110 | u16 vlan; |
111 | u32 len; | 111 | __be32 len; |
112 | 112 | ||
113 | u32 rsvd2; | 113 | u32 rsvd2; |
114 | u8 rsvd3; | 114 | u8 rsvd3; |
@@ -119,7 +119,7 @@ struct cpl_tx_pkt_lso { | |||
119 | u8 ip_hdr_words:4; | 119 | u8 ip_hdr_words:4; |
120 | u8 tcp_hdr_words:4; | 120 | u8 tcp_hdr_words:4; |
121 | #endif | 121 | #endif |
122 | u16 eth_type_mss; | 122 | __be16 eth_type_mss; |
123 | }; | 123 | }; |
124 | 124 | ||
125 | struct cpl_rx_pkt { | 125 | struct cpl_rx_pkt { |
@@ -138,7 +138,7 @@ struct cpl_rx_pkt { | |||
138 | u8 iff:4; | 138 | u8 iff:4; |
139 | #endif | 139 | #endif |
140 | u16 csum; | 140 | u16 csum; |
141 | u16 vlan; | 141 | __be16 vlan; |
142 | u16 len; | 142 | u16 len; |
143 | }; | 143 | }; |
144 | 144 | ||
diff --git a/drivers/net/chelsio/cxgb2.c b/drivers/net/chelsio/cxgb2.c index 5f1b06753462..ad7ff9641a7e 100644 --- a/drivers/net/chelsio/cxgb2.c +++ b/drivers/net/chelsio/cxgb2.c | |||
@@ -918,7 +918,7 @@ static void t1_netpoll(struct net_device *dev) | |||
918 | struct adapter *adapter = dev->priv; | 918 | struct adapter *adapter = dev->priv; |
919 | 919 | ||
920 | local_irq_save(flags); | 920 | local_irq_save(flags); |
921 | t1_select_intr_handler(adapter)(adapter->pdev->irq, adapter, NULL); | 921 | t1_select_intr_handler(adapter)(adapter->pdev->irq, adapter); |
922 | local_irq_restore(flags); | 922 | local_irq_restore(flags); |
923 | } | 923 | } |
924 | #endif | 924 | #endif |
diff --git a/drivers/net/chelsio/sge.c b/drivers/net/chelsio/sge.c index ddd0bdb498f4..9799c12380fc 100644 --- a/drivers/net/chelsio/sge.c +++ b/drivers/net/chelsio/sge.c | |||
@@ -1217,7 +1217,7 @@ static inline int napi_is_scheduled(struct net_device *dev) | |||
1217 | /* | 1217 | /* |
1218 | * NAPI version of the main interrupt handler. | 1218 | * NAPI version of the main interrupt handler. |
1219 | */ | 1219 | */ |
1220 | static irqreturn_t t1_interrupt_napi(int irq, void *data, struct pt_regs *regs) | 1220 | static irqreturn_t t1_interrupt_napi(int irq, void *data) |
1221 | { | 1221 | { |
1222 | int handled; | 1222 | int handled; |
1223 | struct adapter *adapter = data; | 1223 | struct adapter *adapter = data; |
@@ -1279,7 +1279,7 @@ static irqreturn_t t1_interrupt_napi(int irq, void *data, struct pt_regs *regs) | |||
1279 | * 5. If we took an interrupt, but no valid respQ descriptors was found we | 1279 | * 5. If we took an interrupt, but no valid respQ descriptors was found we |
1280 | * let the slow_intr_handler run and do error handling. | 1280 | * let the slow_intr_handler run and do error handling. |
1281 | */ | 1281 | */ |
1282 | static irqreturn_t t1_interrupt(int irq, void *cookie, struct pt_regs *regs) | 1282 | static irqreturn_t t1_interrupt(int irq, void *cookie) |
1283 | { | 1283 | { |
1284 | int work_done; | 1284 | int work_done; |
1285 | struct respQ_e *e; | 1285 | struct respQ_e *e; |
@@ -1312,7 +1312,7 @@ static irqreturn_t t1_interrupt(int irq, void *cookie, struct pt_regs *regs) | |||
1312 | return IRQ_RETVAL(work_done != 0); | 1312 | return IRQ_RETVAL(work_done != 0); |
1313 | } | 1313 | } |
1314 | 1314 | ||
1315 | intr_handler_t t1_select_intr_handler(adapter_t *adapter) | 1315 | irq_handler_t t1_select_intr_handler(adapter_t *adapter) |
1316 | { | 1316 | { |
1317 | return adapter->params.sge.polling ? t1_interrupt_napi : t1_interrupt; | 1317 | return adapter->params.sge.polling ? t1_interrupt_napi : t1_interrupt; |
1318 | } | 1318 | } |
diff --git a/drivers/net/chelsio/sge.h b/drivers/net/chelsio/sge.h index 6d0d24a6364f..91af47bab7be 100644 --- a/drivers/net/chelsio/sge.h +++ b/drivers/net/chelsio/sge.h | |||
@@ -43,13 +43,6 @@ | |||
43 | #include <linux/interrupt.h> | 43 | #include <linux/interrupt.h> |
44 | #include <asm/byteorder.h> | 44 | #include <asm/byteorder.h> |
45 | 45 | ||
46 | #ifndef IRQ_RETVAL | ||
47 | #define IRQ_RETVAL(x) | ||
48 | typedef void irqreturn_t; | ||
49 | #endif | ||
50 | |||
51 | typedef irqreturn_t (*intr_handler_t)(int, void *, struct pt_regs *); | ||
52 | |||
53 | struct sge_intr_counts { | 46 | struct sge_intr_counts { |
54 | unsigned int respQ_empty; /* # times respQ empty */ | 47 | unsigned int respQ_empty; /* # times respQ empty */ |
55 | unsigned int respQ_overflow; /* # respQ overflow (fatal) */ | 48 | unsigned int respQ_overflow; /* # respQ overflow (fatal) */ |
@@ -88,7 +81,7 @@ struct sge *t1_sge_create(struct adapter *, struct sge_params *); | |||
88 | int t1_sge_configure(struct sge *, struct sge_params *); | 81 | int t1_sge_configure(struct sge *, struct sge_params *); |
89 | int t1_sge_set_coalesce_params(struct sge *, struct sge_params *); | 82 | int t1_sge_set_coalesce_params(struct sge *, struct sge_params *); |
90 | void t1_sge_destroy(struct sge *); | 83 | void t1_sge_destroy(struct sge *); |
91 | intr_handler_t t1_select_intr_handler(adapter_t *adapter); | 84 | irq_handler_t t1_select_intr_handler(adapter_t *adapter); |
92 | int t1_start_xmit(struct sk_buff *skb, struct net_device *dev); | 85 | int t1_start_xmit(struct sk_buff *skb, struct net_device *dev); |
93 | void t1_set_vlan_accel(struct adapter *adapter, int on_off); | 86 | void t1_set_vlan_accel(struct adapter *adapter, int on_off); |
94 | void t1_sge_start(struct sge *); | 87 | void t1_sge_start(struct sge *); |
diff --git a/drivers/net/cris/eth_v10.c b/drivers/net/cris/eth_v10.c index f1501b6f247e..966b563e42bb 100644 --- a/drivers/net/cris/eth_v10.c +++ b/drivers/net/cris/eth_v10.c | |||
@@ -403,8 +403,8 @@ static int etrax_ethernet_init(void); | |||
403 | static int e100_open(struct net_device *dev); | 403 | static int e100_open(struct net_device *dev); |
404 | static int e100_set_mac_address(struct net_device *dev, void *addr); | 404 | static int e100_set_mac_address(struct net_device *dev, void *addr); |
405 | static int e100_send_packet(struct sk_buff *skb, struct net_device *dev); | 405 | static int e100_send_packet(struct sk_buff *skb, struct net_device *dev); |
406 | static irqreturn_t e100rxtx_interrupt(int irq, void *dev_id, struct pt_regs *regs); | 406 | static irqreturn_t e100rxtx_interrupt(int irq, void *dev_id); |
407 | static irqreturn_t e100nw_interrupt(int irq, void *dev_id, struct pt_regs *regs); | 407 | static irqreturn_t e100nw_interrupt(int irq, void *dev_id); |
408 | static void e100_rx(struct net_device *dev); | 408 | static void e100_rx(struct net_device *dev); |
409 | static int e100_close(struct net_device *dev); | 409 | static int e100_close(struct net_device *dev); |
410 | static int e100_ioctl(struct net_device *dev, struct ifreq *ifr, int cmd); | 410 | static int e100_ioctl(struct net_device *dev, struct ifreq *ifr, int cmd); |
@@ -1197,7 +1197,7 @@ e100_send_packet(struct sk_buff *skb, struct net_device *dev) | |||
1197 | */ | 1197 | */ |
1198 | 1198 | ||
1199 | static irqreturn_t | 1199 | static irqreturn_t |
1200 | e100rxtx_interrupt(int irq, void *dev_id, struct pt_regs * regs) | 1200 | e100rxtx_interrupt(int irq, void *dev_id) |
1201 | { | 1201 | { |
1202 | struct net_device *dev = (struct net_device *)dev_id; | 1202 | struct net_device *dev = (struct net_device *)dev_id; |
1203 | struct net_local *np = (struct net_local *)dev->priv; | 1203 | struct net_local *np = (struct net_local *)dev->priv; |
@@ -1264,7 +1264,7 @@ e100rxtx_interrupt(int irq, void *dev_id, struct pt_regs * regs) | |||
1264 | } | 1264 | } |
1265 | 1265 | ||
1266 | static irqreturn_t | 1266 | static irqreturn_t |
1267 | e100nw_interrupt(int irq, void *dev_id, struct pt_regs * regs) | 1267 | e100nw_interrupt(int irq, void *dev_id) |
1268 | { | 1268 | { |
1269 | struct net_device *dev = (struct net_device *)dev_id; | 1269 | struct net_device *dev = (struct net_device *)dev_id; |
1270 | struct net_local *np = (struct net_local *)dev->priv; | 1270 | struct net_local *np = (struct net_local *)dev->priv; |
diff --git a/drivers/net/cs89x0.c b/drivers/net/cs89x0.c index e4d50f0de930..4ffc9b44a8e1 100644 --- a/drivers/net/cs89x0.c +++ b/drivers/net/cs89x0.c | |||
@@ -249,7 +249,7 @@ struct net_local { | |||
249 | static int cs89x0_probe1(struct net_device *dev, int ioaddr, int modular); | 249 | static int cs89x0_probe1(struct net_device *dev, int ioaddr, int modular); |
250 | static int net_open(struct net_device *dev); | 250 | static int net_open(struct net_device *dev); |
251 | static int net_send_packet(struct sk_buff *skb, struct net_device *dev); | 251 | static int net_send_packet(struct sk_buff *skb, struct net_device *dev); |
252 | static irqreturn_t net_interrupt(int irq, void *dev_id, struct pt_regs *regs); | 252 | static irqreturn_t net_interrupt(int irq, void *dev_id); |
253 | static void set_multicast_list(struct net_device *dev); | 253 | static void set_multicast_list(struct net_device *dev); |
254 | static void net_timeout(struct net_device *dev); | 254 | static void net_timeout(struct net_device *dev); |
255 | static void net_rx(struct net_device *dev); | 255 | static void net_rx(struct net_device *dev); |
@@ -495,7 +495,7 @@ get_eeprom_cksum(int off, int len, int *buffer) | |||
495 | static void net_poll_controller(struct net_device *dev) | 495 | static void net_poll_controller(struct net_device *dev) |
496 | { | 496 | { |
497 | disable_irq(dev->irq); | 497 | disable_irq(dev->irq); |
498 | net_interrupt(dev->irq, dev, NULL); | 498 | net_interrupt(dev->irq, dev); |
499 | enable_irq(dev->irq); | 499 | enable_irq(dev->irq); |
500 | } | 500 | } |
501 | #endif | 501 | #endif |
@@ -1573,7 +1573,7 @@ static int net_send_packet(struct sk_buff *skb, struct net_device *dev) | |||
1573 | /* The typical workload of the driver: | 1573 | /* The typical workload of the driver: |
1574 | Handle the network interface interrupts. */ | 1574 | Handle the network interface interrupts. */ |
1575 | 1575 | ||
1576 | static irqreturn_t net_interrupt(int irq, void *dev_id, struct pt_regs * regs) | 1576 | static irqreturn_t net_interrupt(int irq, void *dev_id) |
1577 | { | 1577 | { |
1578 | struct net_device *dev = dev_id; | 1578 | struct net_device *dev = dev_id; |
1579 | struct net_local *lp; | 1579 | struct net_local *lp; |
diff --git a/drivers/net/de600.c b/drivers/net/de600.c index 0b930da5d47d..690bb40b353d 100644 --- a/drivers/net/de600.c +++ b/drivers/net/de600.c | |||
@@ -258,19 +258,13 @@ static int de600_start_xmit(struct sk_buff *skb, struct net_device *dev) | |||
258 | * Handle the network interface interrupts. | 258 | * Handle the network interface interrupts. |
259 | */ | 259 | */ |
260 | 260 | ||
261 | static irqreturn_t de600_interrupt(int irq, void *dev_id, struct pt_regs * regs) | 261 | static irqreturn_t de600_interrupt(int irq, void *dev_id) |
262 | { | 262 | { |
263 | struct net_device *dev = dev_id; | 263 | struct net_device *dev = dev_id; |
264 | u8 irq_status; | 264 | u8 irq_status; |
265 | int retrig = 0; | 265 | int retrig = 0; |
266 | int boguscount = 0; | 266 | int boguscount = 0; |
267 | 267 | ||
268 | /* This might just as well be deleted now, no crummy drivers present :-) */ | ||
269 | if ((dev == NULL) || (DE600_IRQ != irq)) { | ||
270 | printk(KERN_ERR "%s: bogus interrupt %d\n", dev?dev->name:"DE-600", irq); | ||
271 | return IRQ_NONE; | ||
272 | } | ||
273 | |||
274 | spin_lock(&de600_lock); | 268 | spin_lock(&de600_lock); |
275 | 269 | ||
276 | select_nic(); | 270 | select_nic(); |
diff --git a/drivers/net/de600.h b/drivers/net/de600.h index e4073015dcd8..1288e48ba704 100644 --- a/drivers/net/de600.h +++ b/drivers/net/de600.h | |||
@@ -125,7 +125,7 @@ static struct net_device_stats *get_stats(struct net_device *dev); | |||
125 | static int de600_start_xmit(struct sk_buff *skb, struct net_device *dev); | 125 | static int de600_start_xmit(struct sk_buff *skb, struct net_device *dev); |
126 | 126 | ||
127 | /* Dispatch from interrupts. */ | 127 | /* Dispatch from interrupts. */ |
128 | static irqreturn_t de600_interrupt(int irq, void *dev_id, struct pt_regs *regs); | 128 | static irqreturn_t de600_interrupt(int irq, void *dev_id); |
129 | static int de600_tx_intr(struct net_device *dev, int irq_status); | 129 | static int de600_tx_intr(struct net_device *dev, int irq_status); |
130 | static void de600_rx_intr(struct net_device *dev); | 130 | static void de600_rx_intr(struct net_device *dev); |
131 | 131 | ||
diff --git a/drivers/net/de620.c b/drivers/net/de620.c index a18d4d14b665..b6ad0cb50552 100644 --- a/drivers/net/de620.c +++ b/drivers/net/de620.c | |||
@@ -221,7 +221,7 @@ static void de620_set_multicast_list(struct net_device *); | |||
221 | static int de620_start_xmit(struct sk_buff *, struct net_device *); | 221 | static int de620_start_xmit(struct sk_buff *, struct net_device *); |
222 | 222 | ||
223 | /* Dispatch from interrupts. */ | 223 | /* Dispatch from interrupts. */ |
224 | static irqreturn_t de620_interrupt(int, void *, struct pt_regs *); | 224 | static irqreturn_t de620_interrupt(int, void *); |
225 | static int de620_rx_intr(struct net_device *); | 225 | static int de620_rx_intr(struct net_device *); |
226 | 226 | ||
227 | /* Initialization */ | 227 | /* Initialization */ |
@@ -591,7 +591,7 @@ static int de620_start_xmit(struct sk_buff *skb, struct net_device *dev) | |||
591 | * | 591 | * |
592 | */ | 592 | */ |
593 | static irqreturn_t | 593 | static irqreturn_t |
594 | de620_interrupt(int irq_in, void *dev_id, struct pt_regs *regs) | 594 | de620_interrupt(int irq_in, void *dev_id) |
595 | { | 595 | { |
596 | struct net_device *dev = dev_id; | 596 | struct net_device *dev = dev_id; |
597 | byte irq_status; | 597 | byte irq_status; |
diff --git a/drivers/net/declance.c b/drivers/net/declance.c index bbccd741cdbf..00e2a8a134d7 100644 --- a/drivers/net/declance.c +++ b/drivers/net/declance.c | |||
@@ -694,19 +694,17 @@ out: | |||
694 | spin_unlock(&lp->lock); | 694 | spin_unlock(&lp->lock); |
695 | } | 695 | } |
696 | 696 | ||
697 | static irqreturn_t lance_dma_merr_int(const int irq, void *dev_id, | 697 | static irqreturn_t lance_dma_merr_int(const int irq, void *dev_id) |
698 | struct pt_regs *regs) | ||
699 | { | 698 | { |
700 | struct net_device *dev = (struct net_device *) dev_id; | 699 | struct net_device *dev = dev_id; |
701 | 700 | ||
702 | printk("%s: DMA error\n", dev->name); | 701 | printk("%s: DMA error\n", dev->name); |
703 | return IRQ_HANDLED; | 702 | return IRQ_HANDLED; |
704 | } | 703 | } |
705 | 704 | ||
706 | static irqreturn_t lance_interrupt(const int irq, void *dev_id, | 705 | static irqreturn_t lance_interrupt(const int irq, void *dev_id) |
707 | struct pt_regs *regs) | ||
708 | { | 706 | { |
709 | struct net_device *dev = (struct net_device *) dev_id; | 707 | struct net_device *dev = dev_id; |
710 | struct lance_private *lp = netdev_priv(dev); | 708 | struct lance_private *lp = netdev_priv(dev); |
711 | volatile struct lance_regs *ll = lp->ll; | 709 | volatile struct lance_regs *ll = lp->ll; |
712 | int csr0; | 710 | int csr0; |
diff --git a/drivers/net/defxx.c b/drivers/net/defxx.c index ae9680552b82..8f514cc0debd 100644 --- a/drivers/net/defxx.c +++ b/drivers/net/defxx.c | |||
@@ -248,8 +248,7 @@ static int dfx_close(struct net_device *dev); | |||
248 | static void dfx_int_pr_halt_id(DFX_board_t *bp); | 248 | static void dfx_int_pr_halt_id(DFX_board_t *bp); |
249 | static void dfx_int_type_0_process(DFX_board_t *bp); | 249 | static void dfx_int_type_0_process(DFX_board_t *bp); |
250 | static void dfx_int_common(struct net_device *dev); | 250 | static void dfx_int_common(struct net_device *dev); |
251 | static irqreturn_t dfx_interrupt(int irq, void *dev_id, | 251 | static irqreturn_t dfx_interrupt(int irq, void *dev_id); |
252 | struct pt_regs *regs); | ||
253 | 252 | ||
254 | static struct net_device_stats *dfx_ctl_get_stats(struct net_device *dev); | 253 | static struct net_device_stats *dfx_ctl_get_stats(struct net_device *dev); |
255 | static void dfx_ctl_set_multicast_list(struct net_device *dev); | 254 | static void dfx_ctl_set_multicast_list(struct net_device *dev); |
@@ -1693,7 +1692,6 @@ static void dfx_int_common(struct net_device *dev) | |||
1693 | * Arguments: | 1692 | * Arguments: |
1694 | * irq - interrupt vector | 1693 | * irq - interrupt vector |
1695 | * dev_id - pointer to device information | 1694 | * dev_id - pointer to device information |
1696 | * regs - pointer to registers structure | ||
1697 | * | 1695 | * |
1698 | * Functional Description: | 1696 | * Functional Description: |
1699 | * This routine calls the interrupt processing routine for this adapter. It | 1697 | * This routine calls the interrupt processing routine for this adapter. It |
@@ -1716,7 +1714,7 @@ static void dfx_int_common(struct net_device *dev) | |||
1716 | * Interrupts are disabled, then reenabled at the adapter. | 1714 | * Interrupts are disabled, then reenabled at the adapter. |
1717 | */ | 1715 | */ |
1718 | 1716 | ||
1719 | static irqreturn_t dfx_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 1717 | static irqreturn_t dfx_interrupt(int irq, void *dev_id) |
1720 | { | 1718 | { |
1721 | struct net_device *dev = dev_id; | 1719 | struct net_device *dev = dev_id; |
1722 | DFX_board_t *bp; /* private board structure pointer */ | 1720 | DFX_board_t *bp; /* private board structure pointer */ |
diff --git a/drivers/net/depca.c b/drivers/net/depca.c index af594664df51..f87f6e3dc721 100644 --- a/drivers/net/depca.c +++ b/drivers/net/depca.c | |||
@@ -518,7 +518,7 @@ struct depca_private { | |||
518 | */ | 518 | */ |
519 | static int depca_open(struct net_device *dev); | 519 | static int depca_open(struct net_device *dev); |
520 | static int depca_start_xmit(struct sk_buff *skb, struct net_device *dev); | 520 | static int depca_start_xmit(struct sk_buff *skb, struct net_device *dev); |
521 | static irqreturn_t depca_interrupt(int irq, void *dev_id, struct pt_regs *regs); | 521 | static irqreturn_t depca_interrupt(int irq, void *dev_id); |
522 | static int depca_close(struct net_device *dev); | 522 | static int depca_close(struct net_device *dev); |
523 | static int depca_ioctl(struct net_device *dev, struct ifreq *rq, int cmd); | 523 | static int depca_ioctl(struct net_device *dev, struct ifreq *rq, int cmd); |
524 | static void depca_tx_timeout(struct net_device *dev); | 524 | static void depca_tx_timeout(struct net_device *dev); |
@@ -965,7 +965,7 @@ static int depca_start_xmit(struct sk_buff *skb, struct net_device *dev) | |||
965 | /* | 965 | /* |
966 | ** The DEPCA interrupt handler. | 966 | ** The DEPCA interrupt handler. |
967 | */ | 967 | */ |
968 | static irqreturn_t depca_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 968 | static irqreturn_t depca_interrupt(int irq, void *dev_id) |
969 | { | 969 | { |
970 | struct net_device *dev = dev_id; | 970 | struct net_device *dev = dev_id; |
971 | struct depca_private *lp; | 971 | struct depca_private *lp; |
diff --git a/drivers/net/dgrs.c b/drivers/net/dgrs.c index d0842527b369..a79520295fd0 100644 --- a/drivers/net/dgrs.c +++ b/drivers/net/dgrs.c | |||
@@ -895,10 +895,10 @@ static int dgrs_ioctl(struct net_device *devN, struct ifreq *ifr, int cmd) | |||
895 | * dev, priv will always refer to the 0th device in Multi-NIC mode. | 895 | * dev, priv will always refer to the 0th device in Multi-NIC mode. |
896 | */ | 896 | */ |
897 | 897 | ||
898 | static irqreturn_t dgrs_intr(int irq, void *dev_id, struct pt_regs *regs) | 898 | static irqreturn_t dgrs_intr(int irq, void *dev_id) |
899 | { | 899 | { |
900 | struct net_device *dev0 = (struct net_device *) dev_id; | 900 | struct net_device *dev0 = dev_id; |
901 | DGRS_PRIV *priv0 = (DGRS_PRIV *) dev0->priv; | 901 | DGRS_PRIV *priv0 = dev0->priv; |
902 | I596_CB *cbp; | 902 | I596_CB *cbp; |
903 | int cmd; | 903 | int cmd; |
904 | int i; | 904 | int i; |
diff --git a/drivers/net/dl2k.c b/drivers/net/dl2k.c index 7e95cf1a4872..9d446a0fe0bf 100644 --- a/drivers/net/dl2k.c +++ b/drivers/net/dl2k.c | |||
@@ -60,7 +60,7 @@ static void rio_timer (unsigned long data); | |||
60 | static void rio_tx_timeout (struct net_device *dev); | 60 | static void rio_tx_timeout (struct net_device *dev); |
61 | static void alloc_list (struct net_device *dev); | 61 | static void alloc_list (struct net_device *dev); |
62 | static int start_xmit (struct sk_buff *skb, struct net_device *dev); | 62 | static int start_xmit (struct sk_buff *skb, struct net_device *dev); |
63 | static irqreturn_t rio_interrupt (int irq, void *dev_instance, struct pt_regs *regs); | 63 | static irqreturn_t rio_interrupt (int irq, void *dev_instance); |
64 | static void rio_free_tx (struct net_device *dev, int irq); | 64 | static void rio_free_tx (struct net_device *dev, int irq); |
65 | static void tx_error (struct net_device *dev, int tx_status); | 65 | static void tx_error (struct net_device *dev, int tx_status); |
66 | static int receive_packet (struct net_device *dev); | 66 | static int receive_packet (struct net_device *dev); |
@@ -665,7 +665,7 @@ start_xmit (struct sk_buff *skb, struct net_device *dev) | |||
665 | } | 665 | } |
666 | 666 | ||
667 | static irqreturn_t | 667 | static irqreturn_t |
668 | rio_interrupt (int irq, void *dev_instance, struct pt_regs *rgs) | 668 | rio_interrupt (int irq, void *dev_instance) |
669 | { | 669 | { |
670 | struct net_device *dev = dev_instance; | 670 | struct net_device *dev = dev_instance; |
671 | struct netdev_private *np; | 671 | struct netdev_private *np; |
diff --git a/drivers/net/dm9000.c b/drivers/net/dm9000.c index a860ebbbf815..615d2b14efa7 100644 --- a/drivers/net/dm9000.c +++ b/drivers/net/dm9000.c | |||
@@ -159,7 +159,7 @@ static void dm9000_init_dm9000(struct net_device *); | |||
159 | 159 | ||
160 | static struct net_device_stats *dm9000_get_stats(struct net_device *); | 160 | static struct net_device_stats *dm9000_get_stats(struct net_device *); |
161 | 161 | ||
162 | static irqreturn_t dm9000_interrupt(int, void *, struct pt_regs *); | 162 | static irqreturn_t dm9000_interrupt(int, void *); |
163 | 163 | ||
164 | static int dm9000_phy_read(struct net_device *dev, int phyaddr_unsused, int reg); | 164 | static int dm9000_phy_read(struct net_device *dev, int phyaddr_unsused, int reg); |
165 | static void dm9000_phy_write(struct net_device *dev, int phyaddr_unused, int reg, | 165 | static void dm9000_phy_write(struct net_device *dev, int phyaddr_unused, int reg, |
@@ -346,7 +346,7 @@ static void dm9000_timeout(struct net_device *dev) | |||
346 | static void dm9000_poll_controller(struct net_device *dev) | 346 | static void dm9000_poll_controller(struct net_device *dev) |
347 | { | 347 | { |
348 | disable_irq(dev->irq); | 348 | disable_irq(dev->irq); |
349 | dm9000_interrupt(dev->irq,dev,NULL); | 349 | dm9000_interrupt(dev->irq,dev); |
350 | enable_irq(dev->irq); | 350 | enable_irq(dev->irq); |
351 | } | 351 | } |
352 | #endif | 352 | #endif |
@@ -804,7 +804,7 @@ dm9000_tx_done(struct net_device *dev, board_info_t * db) | |||
804 | } | 804 | } |
805 | 805 | ||
806 | static irqreturn_t | 806 | static irqreturn_t |
807 | dm9000_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 807 | dm9000_interrupt(int irq, void *dev_id) |
808 | { | 808 | { |
809 | struct net_device *dev = dev_id; | 809 | struct net_device *dev = dev_id; |
810 | board_info_t *db; | 810 | board_info_t *db; |
diff --git a/drivers/net/e100.c b/drivers/net/e100.c index 26073c345213..27d5d2f02533 100644 --- a/drivers/net/e100.c +++ b/drivers/net/e100.c | |||
@@ -1949,7 +1949,7 @@ static int e100_rx_alloc_list(struct nic *nic) | |||
1949 | return 0; | 1949 | return 0; |
1950 | } | 1950 | } |
1951 | 1951 | ||
1952 | static irqreturn_t e100_intr(int irq, void *dev_id, struct pt_regs *regs) | 1952 | static irqreturn_t e100_intr(int irq, void *dev_id) |
1953 | { | 1953 | { |
1954 | struct net_device *netdev = dev_id; | 1954 | struct net_device *netdev = dev_id; |
1955 | struct nic *nic = netdev_priv(netdev); | 1955 | struct nic *nic = netdev_priv(netdev); |
@@ -2005,7 +2005,7 @@ static void e100_netpoll(struct net_device *netdev) | |||
2005 | struct nic *nic = netdev_priv(netdev); | 2005 | struct nic *nic = netdev_priv(netdev); |
2006 | 2006 | ||
2007 | e100_disable_irq(nic); | 2007 | e100_disable_irq(nic); |
2008 | e100_intr(nic->pdev->irq, netdev, NULL); | 2008 | e100_intr(nic->pdev->irq, netdev); |
2009 | e100_tx_clean(nic); | 2009 | e100_tx_clean(nic); |
2010 | e100_enable_irq(nic); | 2010 | e100_enable_irq(nic); |
2011 | } | 2011 | } |
diff --git a/drivers/net/e1000/e1000_ethtool.c b/drivers/net/e1000/e1000_ethtool.c index 778ede3c0216..773821e4cf57 100644 --- a/drivers/net/e1000/e1000_ethtool.c +++ b/drivers/net/e1000/e1000_ethtool.c | |||
@@ -883,8 +883,7 @@ e1000_eeprom_test(struct e1000_adapter *adapter, uint64_t *data) | |||
883 | 883 | ||
884 | static irqreturn_t | 884 | static irqreturn_t |
885 | e1000_test_intr(int irq, | 885 | e1000_test_intr(int irq, |
886 | void *data, | 886 | void *data) |
887 | struct pt_regs *regs) | ||
888 | { | 887 | { |
889 | struct net_device *netdev = (struct net_device *) data; | 888 | struct net_device *netdev = (struct net_device *) data; |
890 | struct e1000_adapter *adapter = netdev_priv(netdev); | 889 | struct e1000_adapter *adapter = netdev_priv(netdev); |
diff --git a/drivers/net/e1000/e1000_main.c b/drivers/net/e1000/e1000_main.c index 7dca38fba6a1..ce0d35fe3947 100644 --- a/drivers/net/e1000/e1000_main.c +++ b/drivers/net/e1000/e1000_main.c | |||
@@ -153,7 +153,7 @@ static int e1000_xmit_frame(struct sk_buff *skb, struct net_device *netdev); | |||
153 | static struct net_device_stats * e1000_get_stats(struct net_device *netdev); | 153 | static struct net_device_stats * e1000_get_stats(struct net_device *netdev); |
154 | static int e1000_change_mtu(struct net_device *netdev, int new_mtu); | 154 | static int e1000_change_mtu(struct net_device *netdev, int new_mtu); |
155 | static int e1000_set_mac(struct net_device *netdev, void *p); | 155 | static int e1000_set_mac(struct net_device *netdev, void *p); |
156 | static irqreturn_t e1000_intr(int irq, void *data, struct pt_regs *regs); | 156 | static irqreturn_t e1000_intr(int irq, void *data); |
157 | static boolean_t e1000_clean_tx_irq(struct e1000_adapter *adapter, | 157 | static boolean_t e1000_clean_tx_irq(struct e1000_adapter *adapter, |
158 | struct e1000_tx_ring *tx_ring); | 158 | struct e1000_tx_ring *tx_ring); |
159 | #ifdef CONFIG_E1000_NAPI | 159 | #ifdef CONFIG_E1000_NAPI |
@@ -3436,11 +3436,10 @@ e1000_update_stats(struct e1000_adapter *adapter) | |||
3436 | * e1000_intr - Interrupt Handler | 3436 | * e1000_intr - Interrupt Handler |
3437 | * @irq: interrupt number | 3437 | * @irq: interrupt number |
3438 | * @data: pointer to a network interface device structure | 3438 | * @data: pointer to a network interface device structure |
3439 | * @pt_regs: CPU registers structure | ||
3440 | **/ | 3439 | **/ |
3441 | 3440 | ||
3442 | static irqreturn_t | 3441 | static irqreturn_t |
3443 | e1000_intr(int irq, void *data, struct pt_regs *regs) | 3442 | e1000_intr(int irq, void *data) |
3444 | { | 3443 | { |
3445 | struct net_device *netdev = data; | 3444 | struct net_device *netdev = data; |
3446 | struct e1000_adapter *adapter = netdev_priv(netdev); | 3445 | struct e1000_adapter *adapter = netdev_priv(netdev); |
@@ -4862,7 +4861,7 @@ e1000_netpoll(struct net_device *netdev) | |||
4862 | struct e1000_adapter *adapter = netdev_priv(netdev); | 4861 | struct e1000_adapter *adapter = netdev_priv(netdev); |
4863 | 4862 | ||
4864 | disable_irq(adapter->pdev->irq); | 4863 | disable_irq(adapter->pdev->irq); |
4865 | e1000_intr(adapter->pdev->irq, netdev, NULL); | 4864 | e1000_intr(adapter->pdev->irq, netdev); |
4866 | e1000_clean_tx_irq(adapter, adapter->tx_ring); | 4865 | e1000_clean_tx_irq(adapter, adapter->tx_ring); |
4867 | #ifndef CONFIG_E1000_NAPI | 4866 | #ifndef CONFIG_E1000_NAPI |
4868 | adapter->clean_rx(adapter, adapter->rx_ring); | 4867 | adapter->clean_rx(adapter, adapter->rx_ring); |
diff --git a/drivers/net/eepro.c b/drivers/net/eepro.c index 09ff9b9418f4..a4eb0dc99ecf 100644 --- a/drivers/net/eepro.c +++ b/drivers/net/eepro.c | |||
@@ -311,7 +311,7 @@ struct eepro_local { | |||
311 | static int eepro_probe1(struct net_device *dev, int autoprobe); | 311 | static int eepro_probe1(struct net_device *dev, int autoprobe); |
312 | static int eepro_open(struct net_device *dev); | 312 | static int eepro_open(struct net_device *dev); |
313 | static int eepro_send_packet(struct sk_buff *skb, struct net_device *dev); | 313 | static int eepro_send_packet(struct sk_buff *skb, struct net_device *dev); |
314 | static irqreturn_t eepro_interrupt(int irq, void *dev_id, struct pt_regs *regs); | 314 | static irqreturn_t eepro_interrupt(int irq, void *dev_id); |
315 | static void eepro_rx(struct net_device *dev); | 315 | static void eepro_rx(struct net_device *dev); |
316 | static void eepro_transmit_interrupt(struct net_device *dev); | 316 | static void eepro_transmit_interrupt(struct net_device *dev); |
317 | static int eepro_close(struct net_device *dev); | 317 | static int eepro_close(struct net_device *dev); |
@@ -994,16 +994,6 @@ static int eepro_open(struct net_device *dev) | |||
994 | return -EAGAIN; | 994 | return -EAGAIN; |
995 | } | 995 | } |
996 | 996 | ||
997 | #ifdef irq2dev_map | ||
998 | if (((irq2dev_map[dev->irq] != 0) | ||
999 | || (irq2dev_map[dev->irq] = dev) == 0) && | ||
1000 | (irq2dev_map[dev->irq]!=dev)) { | ||
1001 | /* printk("%s: IRQ map wrong\n", dev->name); */ | ||
1002 | free_irq(dev->irq, dev); | ||
1003 | return -EAGAIN; | ||
1004 | } | ||
1005 | #endif | ||
1006 | |||
1007 | /* Initialize the 82595. */ | 997 | /* Initialize the 82595. */ |
1008 | 998 | ||
1009 | eepro_sw2bank2(ioaddr); /* be CAREFUL, BANK 2 now */ | 999 | eepro_sw2bank2(ioaddr); /* be CAREFUL, BANK 2 now */ |
@@ -1196,19 +1186,13 @@ static int eepro_send_packet(struct sk_buff *skb, struct net_device *dev) | |||
1196 | Handle the network interface interrupts. */ | 1186 | Handle the network interface interrupts. */ |
1197 | 1187 | ||
1198 | static irqreturn_t | 1188 | static irqreturn_t |
1199 | eepro_interrupt(int irq, void *dev_id, struct pt_regs * regs) | 1189 | eepro_interrupt(int irq, void *dev_id) |
1200 | { | 1190 | { |
1201 | struct net_device *dev = (struct net_device *)dev_id; | 1191 | struct net_device *dev = dev_id; |
1202 | /* (struct net_device *)(irq2dev_map[irq]);*/ | ||
1203 | struct eepro_local *lp; | 1192 | struct eepro_local *lp; |
1204 | int ioaddr, status, boguscount = 20; | 1193 | int ioaddr, status, boguscount = 20; |
1205 | int handled = 0; | 1194 | int handled = 0; |
1206 | 1195 | ||
1207 | if (dev == NULL) { | ||
1208 | printk (KERN_ERR "eepro_interrupt(): irq %d for unknown device.\\n", irq); | ||
1209 | return IRQ_NONE; | ||
1210 | } | ||
1211 | |||
1212 | lp = netdev_priv(dev); | 1196 | lp = netdev_priv(dev); |
1213 | 1197 | ||
1214 | spin_lock(&lp->lock); | 1198 | spin_lock(&lp->lock); |
@@ -1288,10 +1272,6 @@ static int eepro_close(struct net_device *dev) | |||
1288 | /* release the interrupt */ | 1272 | /* release the interrupt */ |
1289 | free_irq(dev->irq, dev); | 1273 | free_irq(dev->irq, dev); |
1290 | 1274 | ||
1291 | #ifdef irq2dev_map | ||
1292 | irq2dev_map[dev->irq] = 0; | ||
1293 | #endif | ||
1294 | |||
1295 | /* Update the statistics here. What statistics? */ | 1275 | /* Update the statistics here. What statistics? */ |
1296 | 1276 | ||
1297 | return 0; | 1277 | return 0; |
diff --git a/drivers/net/eepro100.c b/drivers/net/eepro100.c index 499e93b31f54..e28bb1e38f8d 100644 --- a/drivers/net/eepro100.c +++ b/drivers/net/eepro100.c | |||
@@ -488,7 +488,7 @@ static int speedo_start_xmit(struct sk_buff *skb, struct net_device *dev); | |||
488 | static void speedo_refill_rx_buffers(struct net_device *dev, int force); | 488 | static void speedo_refill_rx_buffers(struct net_device *dev, int force); |
489 | static int speedo_rx(struct net_device *dev); | 489 | static int speedo_rx(struct net_device *dev); |
490 | static void speedo_tx_buffer_gc(struct net_device *dev); | 490 | static void speedo_tx_buffer_gc(struct net_device *dev); |
491 | static irqreturn_t speedo_interrupt(int irq, void *dev_instance, struct pt_regs *regs); | 491 | static irqreturn_t speedo_interrupt(int irq, void *dev_instance); |
492 | static int speedo_close(struct net_device *dev); | 492 | static int speedo_close(struct net_device *dev); |
493 | static struct net_device_stats *speedo_get_stats(struct net_device *dev); | 493 | static struct net_device_stats *speedo_get_stats(struct net_device *dev); |
494 | static int speedo_ioctl(struct net_device *dev, struct ifreq *rq, int cmd); | 494 | static int speedo_ioctl(struct net_device *dev, struct ifreq *rq, int cmd); |
@@ -606,7 +606,7 @@ static void poll_speedo (struct net_device *dev) | |||
606 | /* disable_irq is not very nice, but with the funny lockless design | 606 | /* disable_irq is not very nice, but with the funny lockless design |
607 | we have no other choice. */ | 607 | we have no other choice. */ |
608 | disable_irq(dev->irq); | 608 | disable_irq(dev->irq); |
609 | speedo_interrupt (dev->irq, dev, NULL); | 609 | speedo_interrupt (dev->irq, dev); |
610 | enable_irq(dev->irq); | 610 | enable_irq(dev->irq); |
611 | } | 611 | } |
612 | #endif | 612 | #endif |
@@ -1541,7 +1541,7 @@ static void speedo_tx_buffer_gc(struct net_device *dev) | |||
1541 | 1541 | ||
1542 | /* The interrupt handler does all of the Rx thread work and cleans up | 1542 | /* The interrupt handler does all of the Rx thread work and cleans up |
1543 | after the Tx thread. */ | 1543 | after the Tx thread. */ |
1544 | static irqreturn_t speedo_interrupt(int irq, void *dev_instance, struct pt_regs *regs) | 1544 | static irqreturn_t speedo_interrupt(int irq, void *dev_instance) |
1545 | { | 1545 | { |
1546 | struct net_device *dev = (struct net_device *)dev_instance; | 1546 | struct net_device *dev = (struct net_device *)dev_instance; |
1547 | struct speedo_private *sp; | 1547 | struct speedo_private *sp; |
diff --git a/drivers/net/eexpress.c b/drivers/net/eexpress.c index 9cb05d99ee1b..e14be020e562 100644 --- a/drivers/net/eexpress.c +++ b/drivers/net/eexpress.c | |||
@@ -249,7 +249,7 @@ static void eexp_timeout(struct net_device *dev); | |||
249 | static struct net_device_stats *eexp_stats(struct net_device *dev); | 249 | static struct net_device_stats *eexp_stats(struct net_device *dev); |
250 | static int eexp_xmit(struct sk_buff *buf, struct net_device *dev); | 250 | static int eexp_xmit(struct sk_buff *buf, struct net_device *dev); |
251 | 251 | ||
252 | static irqreturn_t eexp_irq(int irq, void *dev_addr, struct pt_regs *regs); | 252 | static irqreturn_t eexp_irq(int irq, void *dev_addr); |
253 | static void eexp_set_multicast(struct net_device *dev); | 253 | static void eexp_set_multicast(struct net_device *dev); |
254 | 254 | ||
255 | /* | 255 | /* |
@@ -789,20 +789,13 @@ static void eexp_cmd_clear(struct net_device *dev) | |||
789 | } | 789 | } |
790 | } | 790 | } |
791 | 791 | ||
792 | static irqreturn_t eexp_irq(int irq, void *dev_info, struct pt_regs *regs) | 792 | static irqreturn_t eexp_irq(int irq, void *dev_info) |
793 | { | 793 | { |
794 | struct net_device *dev = dev_info; | 794 | struct net_device *dev = dev_info; |
795 | struct net_local *lp; | 795 | struct net_local *lp; |
796 | unsigned short ioaddr,status,ack_cmd; | 796 | unsigned short ioaddr,status,ack_cmd; |
797 | unsigned short old_read_ptr, old_write_ptr; | 797 | unsigned short old_read_ptr, old_write_ptr; |
798 | 798 | ||
799 | if (dev==NULL) | ||
800 | { | ||
801 | printk(KERN_WARNING "eexpress: irq %d for unknown device\n", | ||
802 | irq); | ||
803 | return IRQ_NONE; | ||
804 | } | ||
805 | |||
806 | lp = netdev_priv(dev); | 799 | lp = netdev_priv(dev); |
807 | ioaddr = dev->base_addr; | 800 | ioaddr = dev->base_addr; |
808 | 801 | ||
diff --git a/drivers/net/ehea/ehea_main.c b/drivers/net/ehea/ehea_main.c index 263d1c5b3f23..c6b31775e26b 100644 --- a/drivers/net/ehea/ehea_main.c +++ b/drivers/net/ehea/ehea_main.c | |||
@@ -536,16 +536,14 @@ void ehea_send_irq_tasklet(unsigned long data) | |||
536 | tasklet_hi_schedule(&pr->send_comp_task); | 536 | tasklet_hi_schedule(&pr->send_comp_task); |
537 | } | 537 | } |
538 | 538 | ||
539 | static irqreturn_t ehea_send_irq_handler(int irq, void *param, | 539 | static irqreturn_t ehea_send_irq_handler(int irq, void *param) |
540 | struct pt_regs *regs) | ||
541 | { | 540 | { |
542 | struct ehea_port_res *pr = param; | 541 | struct ehea_port_res *pr = param; |
543 | tasklet_hi_schedule(&pr->send_comp_task); | 542 | tasklet_hi_schedule(&pr->send_comp_task); |
544 | return IRQ_HANDLED; | 543 | return IRQ_HANDLED; |
545 | } | 544 | } |
546 | 545 | ||
547 | static irqreturn_t ehea_recv_irq_handler(int irq, void *param, | 546 | static irqreturn_t ehea_recv_irq_handler(int irq, void *param) |
548 | struct pt_regs *regs) | ||
549 | { | 547 | { |
550 | struct ehea_port_res *pr = param; | 548 | struct ehea_port_res *pr = param; |
551 | struct ehea_port *port = pr->port; | 549 | struct ehea_port *port = pr->port; |
@@ -553,8 +551,7 @@ static irqreturn_t ehea_recv_irq_handler(int irq, void *param, | |||
553 | return IRQ_HANDLED; | 551 | return IRQ_HANDLED; |
554 | } | 552 | } |
555 | 553 | ||
556 | static irqreturn_t ehea_qp_aff_irq_handler(int irq, void *param, | 554 | static irqreturn_t ehea_qp_aff_irq_handler(int irq, void *param) |
557 | struct pt_regs *regs) | ||
558 | { | 555 | { |
559 | struct ehea_port *port = param; | 556 | struct ehea_port *port = param; |
560 | struct ehea_eqe *eqe; | 557 | struct ehea_eqe *eqe; |
@@ -850,8 +847,7 @@ static void ehea_neq_tasklet(unsigned long data) | |||
850 | adapter->neq->fw_handle, event_mask); | 847 | adapter->neq->fw_handle, event_mask); |
851 | } | 848 | } |
852 | 849 | ||
853 | static irqreturn_t ehea_interrupt_neq(int irq, void *param, | 850 | static irqreturn_t ehea_interrupt_neq(int irq, void *param) |
854 | struct pt_regs *regs) | ||
855 | { | 851 | { |
856 | struct ehea_adapter *adapter = param; | 852 | struct ehea_adapter *adapter = param; |
857 | tasklet_hi_schedule(&adapter->neq_tasklet); | 853 | tasklet_hi_schedule(&adapter->neq_tasklet); |
diff --git a/drivers/net/epic100.c b/drivers/net/epic100.c index ba2565ee0439..3a6a83d3ee1c 100644 --- a/drivers/net/epic100.c +++ b/drivers/net/epic100.c | |||
@@ -297,7 +297,7 @@ static void epic_init_ring(struct net_device *dev); | |||
297 | static int epic_start_xmit(struct sk_buff *skb, struct net_device *dev); | 297 | static int epic_start_xmit(struct sk_buff *skb, struct net_device *dev); |
298 | static int epic_rx(struct net_device *dev, int budget); | 298 | static int epic_rx(struct net_device *dev, int budget); |
299 | static int epic_poll(struct net_device *dev, int *budget); | 299 | static int epic_poll(struct net_device *dev, int *budget); |
300 | static irqreturn_t epic_interrupt(int irq, void *dev_instance, struct pt_regs *regs); | 300 | static irqreturn_t epic_interrupt(int irq, void *dev_instance); |
301 | static int netdev_ioctl(struct net_device *dev, struct ifreq *rq, int cmd); | 301 | static int netdev_ioctl(struct net_device *dev, struct ifreq *rq, int cmd); |
302 | static const struct ethtool_ops netdev_ethtool_ops; | 302 | static const struct ethtool_ops netdev_ethtool_ops; |
303 | static int epic_close(struct net_device *dev); | 303 | static int epic_close(struct net_device *dev); |
@@ -1081,7 +1081,7 @@ static void epic_tx(struct net_device *dev, struct epic_private *ep) | |||
1081 | 1081 | ||
1082 | /* The interrupt handler does all of the Rx thread work and cleans up | 1082 | /* The interrupt handler does all of the Rx thread work and cleans up |
1083 | after the Tx thread. */ | 1083 | after the Tx thread. */ |
1084 | static irqreturn_t epic_interrupt(int irq, void *dev_instance, struct pt_regs *regs) | 1084 | static irqreturn_t epic_interrupt(int irq, void *dev_instance) |
1085 | { | 1085 | { |
1086 | struct net_device *dev = dev_instance; | 1086 | struct net_device *dev = dev_instance; |
1087 | struct epic_private *ep = dev->priv; | 1087 | struct epic_private *ep = dev->priv; |
diff --git a/drivers/net/eth16i.c b/drivers/net/eth16i.c index f16b6a5aaa34..8cc3c331aca8 100644 --- a/drivers/net/eth16i.c +++ b/drivers/net/eth16i.c | |||
@@ -410,7 +410,7 @@ static int eth16i_close(struct net_device *dev); | |||
410 | static int eth16i_tx(struct sk_buff *skb, struct net_device *dev); | 410 | static int eth16i_tx(struct sk_buff *skb, struct net_device *dev); |
411 | static void eth16i_rx(struct net_device *dev); | 411 | static void eth16i_rx(struct net_device *dev); |
412 | static void eth16i_timeout(struct net_device *dev); | 412 | static void eth16i_timeout(struct net_device *dev); |
413 | static irqreturn_t eth16i_interrupt(int irq, void *dev_id, struct pt_regs *regs); | 413 | static irqreturn_t eth16i_interrupt(int irq, void *dev_id); |
414 | static void eth16i_reset(struct net_device *dev); | 414 | static void eth16i_reset(struct net_device *dev); |
415 | static void eth16i_timeout(struct net_device *dev); | 415 | static void eth16i_timeout(struct net_device *dev); |
416 | static void eth16i_skip_packet(struct net_device *dev); | 416 | static void eth16i_skip_packet(struct net_device *dev); |
@@ -1226,7 +1226,7 @@ static void eth16i_rx(struct net_device *dev) | |||
1226 | } /* while */ | 1226 | } /* while */ |
1227 | } | 1227 | } |
1228 | 1228 | ||
1229 | static irqreturn_t eth16i_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 1229 | static irqreturn_t eth16i_interrupt(int irq, void *dev_id) |
1230 | { | 1230 | { |
1231 | struct net_device *dev = dev_id; | 1231 | struct net_device *dev = dev_id; |
1232 | struct eth16i_local *lp; | 1232 | struct eth16i_local *lp; |
diff --git a/drivers/net/ewrk3.c b/drivers/net/ewrk3.c index 75a43f7c70cf..c8c41f0a47d6 100644 --- a/drivers/net/ewrk3.c +++ b/drivers/net/ewrk3.c | |||
@@ -300,7 +300,7 @@ struct ewrk3_private { | |||
300 | */ | 300 | */ |
301 | static int ewrk3_open(struct net_device *dev); | 301 | static int ewrk3_open(struct net_device *dev); |
302 | static int ewrk3_queue_pkt(struct sk_buff *skb, struct net_device *dev); | 302 | static int ewrk3_queue_pkt(struct sk_buff *skb, struct net_device *dev); |
303 | static irqreturn_t ewrk3_interrupt(int irq, void *dev_id, struct pt_regs *regs); | 303 | static irqreturn_t ewrk3_interrupt(int irq, void *dev_id); |
304 | static int ewrk3_close(struct net_device *dev); | 304 | static int ewrk3_close(struct net_device *dev); |
305 | static struct net_device_stats *ewrk3_get_stats(struct net_device *dev); | 305 | static struct net_device_stats *ewrk3_get_stats(struct net_device *dev); |
306 | static void set_multicast_list(struct net_device *dev); | 306 | static void set_multicast_list(struct net_device *dev); |
@@ -884,7 +884,7 @@ err_out: | |||
884 | /* | 884 | /* |
885 | ** The EWRK3 interrupt handler. | 885 | ** The EWRK3 interrupt handler. |
886 | */ | 886 | */ |
887 | static irqreturn_t ewrk3_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 887 | static irqreturn_t ewrk3_interrupt(int irq, void *dev_id) |
888 | { | 888 | { |
889 | struct net_device *dev = dev_id; | 889 | struct net_device *dev = dev_id; |
890 | struct ewrk3_private *lp; | 890 | struct ewrk3_private *lp; |
diff --git a/drivers/net/fealnx.c b/drivers/net/fealnx.c index 191bd429076a..38a13f440530 100644 --- a/drivers/net/fealnx.c +++ b/drivers/net/fealnx.c | |||
@@ -434,7 +434,7 @@ static void reset_timer(unsigned long data); | |||
434 | static void tx_timeout(struct net_device *dev); | 434 | static void tx_timeout(struct net_device *dev); |
435 | static void init_ring(struct net_device *dev); | 435 | static void init_ring(struct net_device *dev); |
436 | static int start_tx(struct sk_buff *skb, struct net_device *dev); | 436 | static int start_tx(struct sk_buff *skb, struct net_device *dev); |
437 | static irqreturn_t intr_handler(int irq, void *dev_instance, struct pt_regs *regs); | 437 | static irqreturn_t intr_handler(int irq, void *dev_instance); |
438 | static int netdev_rx(struct net_device *dev); | 438 | static int netdev_rx(struct net_device *dev); |
439 | static void set_rx_mode(struct net_device *dev); | 439 | static void set_rx_mode(struct net_device *dev); |
440 | static void __set_rx_mode(struct net_device *dev); | 440 | static void __set_rx_mode(struct net_device *dev); |
@@ -1453,7 +1453,7 @@ static void reset_rx_descriptors(struct net_device *dev) | |||
1453 | 1453 | ||
1454 | /* The interrupt handler does all of the Rx thread work and cleans up | 1454 | /* The interrupt handler does all of the Rx thread work and cleans up |
1455 | after the Tx thread. */ | 1455 | after the Tx thread. */ |
1456 | static irqreturn_t intr_handler(int irq, void *dev_instance, struct pt_regs *rgs) | 1456 | static irqreturn_t intr_handler(int irq, void *dev_instance) |
1457 | { | 1457 | { |
1458 | struct net_device *dev = (struct net_device *) dev_instance; | 1458 | struct net_device *dev = (struct net_device *) dev_instance; |
1459 | struct netdev_private *np = netdev_priv(dev); | 1459 | struct netdev_private *np = netdev_priv(dev); |
diff --git a/drivers/net/fec.c b/drivers/net/fec.c index 55d86bc4c104..6764281b4531 100644 --- a/drivers/net/fec.c +++ b/drivers/net/fec.c | |||
@@ -229,7 +229,7 @@ struct fec_enet_private { | |||
229 | static int fec_enet_open(struct net_device *dev); | 229 | static int fec_enet_open(struct net_device *dev); |
230 | static int fec_enet_start_xmit(struct sk_buff *skb, struct net_device *dev); | 230 | static int fec_enet_start_xmit(struct sk_buff *skb, struct net_device *dev); |
231 | static void fec_enet_mii(struct net_device *dev); | 231 | static void fec_enet_mii(struct net_device *dev); |
232 | static irqreturn_t fec_enet_interrupt(int irq, void * dev_id, struct pt_regs * regs); | 232 | static irqreturn_t fec_enet_interrupt(int irq, void * dev_id); |
233 | static void fec_enet_tx(struct net_device *dev); | 233 | static void fec_enet_tx(struct net_device *dev); |
234 | static void fec_enet_rx(struct net_device *dev); | 234 | static void fec_enet_rx(struct net_device *dev); |
235 | static int fec_enet_close(struct net_device *dev); | 235 | static int fec_enet_close(struct net_device *dev); |
@@ -450,7 +450,7 @@ fec_timeout(struct net_device *dev) | |||
450 | * This is called from the MPC core interrupt. | 450 | * This is called from the MPC core interrupt. |
451 | */ | 451 | */ |
452 | static irqreturn_t | 452 | static irqreturn_t |
453 | fec_enet_interrupt(int irq, void * dev_id, struct pt_regs * regs) | 453 | fec_enet_interrupt(int irq, void * dev_id) |
454 | { | 454 | { |
455 | struct net_device *dev = dev_id; | 455 | struct net_device *dev = dev_id; |
456 | volatile fec_t *fecp; | 456 | volatile fec_t *fecp; |
@@ -1236,7 +1236,7 @@ static void | |||
1236 | mii_link_interrupt(void *dev_id); | 1236 | mii_link_interrupt(void *dev_id); |
1237 | #else | 1237 | #else |
1238 | static irqreturn_t | 1238 | static irqreturn_t |
1239 | mii_link_interrupt(int irq, void * dev_id, struct pt_regs * regs); | 1239 | mii_link_interrupt(int irq, void * dev_id); |
1240 | #endif | 1240 | #endif |
1241 | #endif | 1241 | #endif |
1242 | 1242 | ||
@@ -1251,7 +1251,7 @@ static void __inline__ fec_request_intrs(struct net_device *dev) | |||
1251 | static const struct idesc { | 1251 | static const struct idesc { |
1252 | char *name; | 1252 | char *name; |
1253 | unsigned short irq; | 1253 | unsigned short irq; |
1254 | irqreturn_t (*handler)(int, void *, struct pt_regs *); | 1254 | irq_handler_t handler; |
1255 | } *idp, id[] = { | 1255 | } *idp, id[] = { |
1256 | { "fec(RX)", 86, fec_enet_interrupt }, | 1256 | { "fec(RX)", 86, fec_enet_interrupt }, |
1257 | { "fec(TX)", 87, fec_enet_interrupt }, | 1257 | { "fec(TX)", 87, fec_enet_interrupt }, |
@@ -2117,7 +2117,7 @@ static void | |||
2117 | mii_link_interrupt(void *dev_id) | 2117 | mii_link_interrupt(void *dev_id) |
2118 | #else | 2118 | #else |
2119 | static irqreturn_t | 2119 | static irqreturn_t |
2120 | mii_link_interrupt(int irq, void * dev_id, struct pt_regs * regs) | 2120 | mii_link_interrupt(int irq, void * dev_id) |
2121 | #endif | 2121 | #endif |
2122 | { | 2122 | { |
2123 | struct net_device *dev = dev_id; | 2123 | struct net_device *dev = dev_id; |
diff --git a/drivers/net/fec_8xx/fec_main.c b/drivers/net/fec_8xx/fec_main.c index e17a1449ee10..8e7a56fadfd2 100644 --- a/drivers/net/fec_8xx/fec_main.c +++ b/drivers/net/fec_8xx/fec_main.c | |||
@@ -708,7 +708,7 @@ static void fec_enet_tx(struct net_device *dev) | |||
708 | * This is called from the MPC core interrupt. | 708 | * This is called from the MPC core interrupt. |
709 | */ | 709 | */ |
710 | static irqreturn_t | 710 | static irqreturn_t |
711 | fec_enet_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 711 | fec_enet_interrupt(int irq, void *dev_id) |
712 | { | 712 | { |
713 | struct net_device *dev = dev_id; | 713 | struct net_device *dev = dev_id; |
714 | struct fec_enet_private *fep; | 714 | struct fec_enet_private *fep; |
@@ -768,7 +768,7 @@ fec_enet_interrupt(int irq, void *dev_id, struct pt_regs *regs) | |||
768 | 768 | ||
769 | /* This interrupt occurs when the PHY detects a link change. */ | 769 | /* This interrupt occurs when the PHY detects a link change. */ |
770 | static irqreturn_t | 770 | static irqreturn_t |
771 | fec_mii_link_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 771 | fec_mii_link_interrupt(int irq, void *dev_id) |
772 | { | 772 | { |
773 | struct net_device *dev = dev_id; | 773 | struct net_device *dev = dev_id; |
774 | struct fec_enet_private *fep; | 774 | struct fec_enet_private *fep; |
diff --git a/drivers/net/forcedeth.c b/drivers/net/forcedeth.c index 35467e0ac538..c5ed635bce36 100644 --- a/drivers/net/forcedeth.c +++ b/drivers/net/forcedeth.c | |||
@@ -2397,7 +2397,7 @@ static void nv_link_irq(struct net_device *dev) | |||
2397 | dprintk(KERN_DEBUG "%s: link change notification done.\n", dev->name); | 2397 | dprintk(KERN_DEBUG "%s: link change notification done.\n", dev->name); |
2398 | } | 2398 | } |
2399 | 2399 | ||
2400 | static irqreturn_t nv_nic_irq(int foo, void *data, struct pt_regs *regs) | 2400 | static irqreturn_t nv_nic_irq(int foo, void *data) |
2401 | { | 2401 | { |
2402 | struct net_device *dev = (struct net_device *) data; | 2402 | struct net_device *dev = (struct net_device *) data; |
2403 | struct fe_priv *np = netdev_priv(dev); | 2403 | struct fe_priv *np = netdev_priv(dev); |
@@ -2490,7 +2490,7 @@ static irqreturn_t nv_nic_irq(int foo, void *data, struct pt_regs *regs) | |||
2490 | return IRQ_RETVAL(i); | 2490 | return IRQ_RETVAL(i); |
2491 | } | 2491 | } |
2492 | 2492 | ||
2493 | static irqreturn_t nv_nic_irq_tx(int foo, void *data, struct pt_regs *regs) | 2493 | static irqreturn_t nv_nic_irq_tx(int foo, void *data) |
2494 | { | 2494 | { |
2495 | struct net_device *dev = (struct net_device *) data; | 2495 | struct net_device *dev = (struct net_device *) data; |
2496 | struct fe_priv *np = netdev_priv(dev); | 2496 | struct fe_priv *np = netdev_priv(dev); |
@@ -2577,7 +2577,7 @@ static int nv_napi_poll(struct net_device *dev, int *budget) | |||
2577 | #endif | 2577 | #endif |
2578 | 2578 | ||
2579 | #ifdef CONFIG_FORCEDETH_NAPI | 2579 | #ifdef CONFIG_FORCEDETH_NAPI |
2580 | static irqreturn_t nv_nic_irq_rx(int foo, void *data, struct pt_regs *regs) | 2580 | static irqreturn_t nv_nic_irq_rx(int foo, void *data) |
2581 | { | 2581 | { |
2582 | struct net_device *dev = (struct net_device *) data; | 2582 | struct net_device *dev = (struct net_device *) data; |
2583 | u8 __iomem *base = get_hwbase(dev); | 2583 | u8 __iomem *base = get_hwbase(dev); |
@@ -2595,7 +2595,7 @@ static irqreturn_t nv_nic_irq_rx(int foo, void *data, struct pt_regs *regs) | |||
2595 | return IRQ_HANDLED; | 2595 | return IRQ_HANDLED; |
2596 | } | 2596 | } |
2597 | #else | 2597 | #else |
2598 | static irqreturn_t nv_nic_irq_rx(int foo, void *data, struct pt_regs *regs) | 2598 | static irqreturn_t nv_nic_irq_rx(int foo, void *data) |
2599 | { | 2599 | { |
2600 | struct net_device *dev = (struct net_device *) data; | 2600 | struct net_device *dev = (struct net_device *) data; |
2601 | struct fe_priv *np = netdev_priv(dev); | 2601 | struct fe_priv *np = netdev_priv(dev); |
@@ -2643,7 +2643,7 @@ static irqreturn_t nv_nic_irq_rx(int foo, void *data, struct pt_regs *regs) | |||
2643 | } | 2643 | } |
2644 | #endif | 2644 | #endif |
2645 | 2645 | ||
2646 | static irqreturn_t nv_nic_irq_other(int foo, void *data, struct pt_regs *regs) | 2646 | static irqreturn_t nv_nic_irq_other(int foo, void *data) |
2647 | { | 2647 | { |
2648 | struct net_device *dev = (struct net_device *) data; | 2648 | struct net_device *dev = (struct net_device *) data; |
2649 | struct fe_priv *np = netdev_priv(dev); | 2649 | struct fe_priv *np = netdev_priv(dev); |
@@ -2698,7 +2698,7 @@ static irqreturn_t nv_nic_irq_other(int foo, void *data, struct pt_regs *regs) | |||
2698 | return IRQ_RETVAL(i); | 2698 | return IRQ_RETVAL(i); |
2699 | } | 2699 | } |
2700 | 2700 | ||
2701 | static irqreturn_t nv_nic_irq_test(int foo, void *data, struct pt_regs *regs) | 2701 | static irqreturn_t nv_nic_irq_test(int foo, void *data) |
2702 | { | 2702 | { |
2703 | struct net_device *dev = (struct net_device *) data; | 2703 | struct net_device *dev = (struct net_device *) data; |
2704 | struct fe_priv *np = netdev_priv(dev); | 2704 | struct fe_priv *np = netdev_priv(dev); |
@@ -2908,22 +2908,22 @@ static void nv_do_nic_poll(unsigned long data) | |||
2908 | pci_push(base); | 2908 | pci_push(base); |
2909 | 2909 | ||
2910 | if (!using_multi_irqs(dev)) { | 2910 | if (!using_multi_irqs(dev)) { |
2911 | nv_nic_irq(0, dev, NULL); | 2911 | nv_nic_irq(0, dev); |
2912 | if (np->msi_flags & NV_MSI_X_ENABLED) | 2912 | if (np->msi_flags & NV_MSI_X_ENABLED) |
2913 | enable_irq_lockdep(np->msi_x_entry[NV_MSI_X_VECTOR_ALL].vector); | 2913 | enable_irq_lockdep(np->msi_x_entry[NV_MSI_X_VECTOR_ALL].vector); |
2914 | else | 2914 | else |
2915 | enable_irq_lockdep(dev->irq); | 2915 | enable_irq_lockdep(dev->irq); |
2916 | } else { | 2916 | } else { |
2917 | if (np->nic_poll_irq & NVREG_IRQ_RX_ALL) { | 2917 | if (np->nic_poll_irq & NVREG_IRQ_RX_ALL) { |
2918 | nv_nic_irq_rx(0, dev, NULL); | 2918 | nv_nic_irq_rx(0, dev); |
2919 | enable_irq_lockdep(np->msi_x_entry[NV_MSI_X_VECTOR_RX].vector); | 2919 | enable_irq_lockdep(np->msi_x_entry[NV_MSI_X_VECTOR_RX].vector); |
2920 | } | 2920 | } |
2921 | if (np->nic_poll_irq & NVREG_IRQ_TX_ALL) { | 2921 | if (np->nic_poll_irq & NVREG_IRQ_TX_ALL) { |
2922 | nv_nic_irq_tx(0, dev, NULL); | 2922 | nv_nic_irq_tx(0, dev); |
2923 | enable_irq_lockdep(np->msi_x_entry[NV_MSI_X_VECTOR_TX].vector); | 2923 | enable_irq_lockdep(np->msi_x_entry[NV_MSI_X_VECTOR_TX].vector); |
2924 | } | 2924 | } |
2925 | if (np->nic_poll_irq & NVREG_IRQ_OTHER) { | 2925 | if (np->nic_poll_irq & NVREG_IRQ_OTHER) { |
2926 | nv_nic_irq_other(0, dev, NULL); | 2926 | nv_nic_irq_other(0, dev); |
2927 | enable_irq_lockdep(np->msi_x_entry[NV_MSI_X_VECTOR_OTHER].vector); | 2927 | enable_irq_lockdep(np->msi_x_entry[NV_MSI_X_VECTOR_OTHER].vector); |
2928 | } | 2928 | } |
2929 | } | 2929 | } |
diff --git a/drivers/net/fs_enet/fs_enet-main.c b/drivers/net/fs_enet/fs_enet-main.c index d01870619a4a..cb3958704a87 100644 --- a/drivers/net/fs_enet/fs_enet-main.c +++ b/drivers/net/fs_enet/fs_enet-main.c | |||
@@ -441,7 +441,7 @@ static void fs_enet_tx(struct net_device *dev) | |||
441 | * This is called from the MPC core interrupt. | 441 | * This is called from the MPC core interrupt. |
442 | */ | 442 | */ |
443 | static irqreturn_t | 443 | static irqreturn_t |
444 | fs_enet_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 444 | fs_enet_interrupt(int irq, void *dev_id) |
445 | { | 445 | { |
446 | struct net_device *dev = dev_id; | 446 | struct net_device *dev = dev_id; |
447 | struct fs_enet_private *fep; | 447 | struct fs_enet_private *fep; |
@@ -667,7 +667,7 @@ static int fs_enet_start_xmit(struct sk_buff *skb, struct net_device *dev) | |||
667 | } | 667 | } |
668 | 668 | ||
669 | static int fs_request_irq(struct net_device *dev, int irq, const char *name, | 669 | static int fs_request_irq(struct net_device *dev, int irq, const char *name, |
670 | irqreturn_t (*irqf)(int irq, void *dev_id, struct pt_regs *regs)) | 670 | irq_handler_t irqf) |
671 | { | 671 | { |
672 | struct fs_enet_private *fep = netdev_priv(dev); | 672 | struct fs_enet_private *fep = netdev_priv(dev); |
673 | 673 | ||
diff --git a/drivers/net/gianfar.c b/drivers/net/gianfar.c index 280b114e253f..a06d8d1aaceb 100644 --- a/drivers/net/gianfar.c +++ b/drivers/net/gianfar.c | |||
@@ -119,9 +119,9 @@ struct sk_buff *gfar_new_skb(struct net_device *dev, struct rxbd8 *bdp); | |||
119 | static struct net_device_stats *gfar_get_stats(struct net_device *dev); | 119 | static struct net_device_stats *gfar_get_stats(struct net_device *dev); |
120 | static int gfar_set_mac_address(struct net_device *dev); | 120 | static int gfar_set_mac_address(struct net_device *dev); |
121 | static int gfar_change_mtu(struct net_device *dev, int new_mtu); | 121 | static int gfar_change_mtu(struct net_device *dev, int new_mtu); |
122 | static irqreturn_t gfar_error(int irq, void *dev_id, struct pt_regs *regs); | 122 | static irqreturn_t gfar_error(int irq, void *dev_id); |
123 | static irqreturn_t gfar_transmit(int irq, void *dev_id, struct pt_regs *regs); | 123 | static irqreturn_t gfar_transmit(int irq, void *dev_id); |
124 | static irqreturn_t gfar_interrupt(int irq, void *dev_id, struct pt_regs *regs); | 124 | static irqreturn_t gfar_interrupt(int irq, void *dev_id); |
125 | static void adjust_link(struct net_device *dev); | 125 | static void adjust_link(struct net_device *dev); |
126 | static void init_registers(struct net_device *dev); | 126 | static void init_registers(struct net_device *dev); |
127 | static int init_phy(struct net_device *dev); | 127 | static int init_phy(struct net_device *dev); |
@@ -1173,7 +1173,7 @@ static void gfar_timeout(struct net_device *dev) | |||
1173 | } | 1173 | } |
1174 | 1174 | ||
1175 | /* Interrupt Handler for Transmit complete */ | 1175 | /* Interrupt Handler for Transmit complete */ |
1176 | static irqreturn_t gfar_transmit(int irq, void *dev_id, struct pt_regs *regs) | 1176 | static irqreturn_t gfar_transmit(int irq, void *dev_id) |
1177 | { | 1177 | { |
1178 | struct net_device *dev = (struct net_device *) dev_id; | 1178 | struct net_device *dev = (struct net_device *) dev_id; |
1179 | struct gfar_private *priv = netdev_priv(dev); | 1179 | struct gfar_private *priv = netdev_priv(dev); |
@@ -1305,7 +1305,7 @@ static inline void count_errors(unsigned short status, struct gfar_private *priv | |||
1305 | } | 1305 | } |
1306 | } | 1306 | } |
1307 | 1307 | ||
1308 | irqreturn_t gfar_receive(int irq, void *dev_id, struct pt_regs *regs) | 1308 | irqreturn_t gfar_receive(int irq, void *dev_id) |
1309 | { | 1309 | { |
1310 | struct net_device *dev = (struct net_device *) dev_id; | 1310 | struct net_device *dev = (struct net_device *) dev_id; |
1311 | struct gfar_private *priv = netdev_priv(dev); | 1311 | struct gfar_private *priv = netdev_priv(dev); |
@@ -1537,7 +1537,7 @@ static int gfar_poll(struct net_device *dev, int *budget) | |||
1537 | #endif | 1537 | #endif |
1538 | 1538 | ||
1539 | /* The interrupt handler for devices with one interrupt */ | 1539 | /* The interrupt handler for devices with one interrupt */ |
1540 | static irqreturn_t gfar_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 1540 | static irqreturn_t gfar_interrupt(int irq, void *dev_id) |
1541 | { | 1541 | { |
1542 | struct net_device *dev = dev_id; | 1542 | struct net_device *dev = dev_id; |
1543 | struct gfar_private *priv = netdev_priv(dev); | 1543 | struct gfar_private *priv = netdev_priv(dev); |
@@ -1550,11 +1550,11 @@ static irqreturn_t gfar_interrupt(int irq, void *dev_id, struct pt_regs *regs) | |||
1550 | 1550 | ||
1551 | /* Check for reception */ | 1551 | /* Check for reception */ |
1552 | if ((events & IEVENT_RXF0) || (events & IEVENT_RXB0)) | 1552 | if ((events & IEVENT_RXF0) || (events & IEVENT_RXB0)) |
1553 | gfar_receive(irq, dev_id, regs); | 1553 | gfar_receive(irq, dev_id); |
1554 | 1554 | ||
1555 | /* Check for transmit completion */ | 1555 | /* Check for transmit completion */ |
1556 | if ((events & IEVENT_TXF) || (events & IEVENT_TXB)) | 1556 | if ((events & IEVENT_TXF) || (events & IEVENT_TXB)) |
1557 | gfar_transmit(irq, dev_id, regs); | 1557 | gfar_transmit(irq, dev_id); |
1558 | 1558 | ||
1559 | /* Update error statistics */ | 1559 | /* Update error statistics */ |
1560 | if (events & IEVENT_TXE) { | 1560 | if (events & IEVENT_TXE) { |
@@ -1578,7 +1578,7 @@ static irqreturn_t gfar_interrupt(int irq, void *dev_id, struct pt_regs *regs) | |||
1578 | priv->stats.rx_errors++; | 1578 | priv->stats.rx_errors++; |
1579 | priv->extra_stats.rx_bsy++; | 1579 | priv->extra_stats.rx_bsy++; |
1580 | 1580 | ||
1581 | gfar_receive(irq, dev_id, regs); | 1581 | gfar_receive(irq, dev_id); |
1582 | 1582 | ||
1583 | #ifndef CONFIG_GFAR_NAPI | 1583 | #ifndef CONFIG_GFAR_NAPI |
1584 | /* Clear the halt bit in RSTAT */ | 1584 | /* Clear the halt bit in RSTAT */ |
@@ -1857,7 +1857,7 @@ static void gfar_set_mac_for_addr(struct net_device *dev, int num, u8 *addr) | |||
1857 | } | 1857 | } |
1858 | 1858 | ||
1859 | /* GFAR error interrupt handler */ | 1859 | /* GFAR error interrupt handler */ |
1860 | static irqreturn_t gfar_error(int irq, void *dev_id, struct pt_regs *regs) | 1860 | static irqreturn_t gfar_error(int irq, void *dev_id) |
1861 | { | 1861 | { |
1862 | struct net_device *dev = dev_id; | 1862 | struct net_device *dev = dev_id; |
1863 | struct gfar_private *priv = netdev_priv(dev); | 1863 | struct gfar_private *priv = netdev_priv(dev); |
@@ -1898,7 +1898,7 @@ static irqreturn_t gfar_error(int irq, void *dev_id, struct pt_regs *regs) | |||
1898 | priv->stats.rx_errors++; | 1898 | priv->stats.rx_errors++; |
1899 | priv->extra_stats.rx_bsy++; | 1899 | priv->extra_stats.rx_bsy++; |
1900 | 1900 | ||
1901 | gfar_receive(irq, dev_id, regs); | 1901 | gfar_receive(irq, dev_id); |
1902 | 1902 | ||
1903 | #ifndef CONFIG_GFAR_NAPI | 1903 | #ifndef CONFIG_GFAR_NAPI |
1904 | /* Clear the halt bit in RSTAT */ | 1904 | /* Clear the halt bit in RSTAT */ |
diff --git a/drivers/net/gianfar.h b/drivers/net/gianfar.h index c35d47c40c39..9e81a50cf2be 100644 --- a/drivers/net/gianfar.h +++ b/drivers/net/gianfar.h | |||
@@ -754,7 +754,7 @@ static inline void gfar_write(volatile unsigned __iomem *addr, u32 val) | |||
754 | out_be32(addr, val); | 754 | out_be32(addr, val); |
755 | } | 755 | } |
756 | 756 | ||
757 | extern irqreturn_t gfar_receive(int irq, void *dev_id, struct pt_regs *regs); | 757 | extern irqreturn_t gfar_receive(int irq, void *dev_id); |
758 | extern int startup_gfar(struct net_device *dev); | 758 | extern int startup_gfar(struct net_device *dev); |
759 | extern void stop_gfar(struct net_device *dev); | 759 | extern void stop_gfar(struct net_device *dev); |
760 | extern void gfar_halt(struct net_device *dev); | 760 | extern void gfar_halt(struct net_device *dev); |
diff --git a/drivers/net/hamachi.c b/drivers/net/hamachi.c index 5c89ae78a519..c3c0d67fc383 100644 --- a/drivers/net/hamachi.c +++ b/drivers/net/hamachi.c | |||
@@ -556,7 +556,7 @@ static void hamachi_timer(unsigned long data); | |||
556 | static void hamachi_tx_timeout(struct net_device *dev); | 556 | static void hamachi_tx_timeout(struct net_device *dev); |
557 | static void hamachi_init_ring(struct net_device *dev); | 557 | static void hamachi_init_ring(struct net_device *dev); |
558 | static int hamachi_start_xmit(struct sk_buff *skb, struct net_device *dev); | 558 | static int hamachi_start_xmit(struct sk_buff *skb, struct net_device *dev); |
559 | static irqreturn_t hamachi_interrupt(int irq, void *dev_instance, struct pt_regs *regs); | 559 | static irqreturn_t hamachi_interrupt(int irq, void *dev_instance); |
560 | static int hamachi_rx(struct net_device *dev); | 560 | static int hamachi_rx(struct net_device *dev); |
561 | static inline int hamachi_tx(struct net_device *dev); | 561 | static inline int hamachi_tx(struct net_device *dev); |
562 | static void hamachi_error(struct net_device *dev, int intr_status); | 562 | static void hamachi_error(struct net_device *dev, int intr_status); |
@@ -1376,7 +1376,7 @@ static int hamachi_start_xmit(struct sk_buff *skb, struct net_device *dev) | |||
1376 | 1376 | ||
1377 | /* The interrupt handler does all of the Rx thread work and cleans up | 1377 | /* The interrupt handler does all of the Rx thread work and cleans up |
1378 | after the Tx thread. */ | 1378 | after the Tx thread. */ |
1379 | static irqreturn_t hamachi_interrupt(int irq, void *dev_instance, struct pt_regs *rgs) | 1379 | static irqreturn_t hamachi_interrupt(int irq, void *dev_instance) |
1380 | { | 1380 | { |
1381 | struct net_device *dev = dev_instance; | 1381 | struct net_device *dev = dev_instance; |
1382 | struct hamachi_private *hmp = netdev_priv(dev); | 1382 | struct hamachi_private *hmp = netdev_priv(dev); |
diff --git a/drivers/net/hamradio/baycom_epp.c b/drivers/net/hamradio/baycom_epp.c index 9220de9f4fe7..1ed9cccd3c11 100644 --- a/drivers/net/hamradio/baycom_epp.c +++ b/drivers/net/hamradio/baycom_epp.c | |||
@@ -323,7 +323,7 @@ static int eppconfig(struct baycom_state *bc) | |||
323 | 323 | ||
324 | /* ---------------------------------------------------------------------- */ | 324 | /* ---------------------------------------------------------------------- */ |
325 | 325 | ||
326 | static void epp_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 326 | static void epp_interrupt(int irq, void *dev_id) |
327 | { | 327 | { |
328 | } | 328 | } |
329 | 329 | ||
diff --git a/drivers/net/hamradio/baycom_par.c b/drivers/net/hamradio/baycom_par.c index 77411a00d1ee..5930aeb35015 100644 --- a/drivers/net/hamradio/baycom_par.c +++ b/drivers/net/hamradio/baycom_par.c | |||
@@ -270,7 +270,7 @@ static __inline__ void par96_rx(struct net_device *dev, struct baycom_state *bc) | |||
270 | 270 | ||
271 | /* --------------------------------------------------------------------- */ | 271 | /* --------------------------------------------------------------------- */ |
272 | 272 | ||
273 | static void par96_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 273 | static void par96_interrupt(int irq, void *dev_id) |
274 | { | 274 | { |
275 | struct net_device *dev = (struct net_device *)dev_id; | 275 | struct net_device *dev = (struct net_device *)dev_id; |
276 | struct baycom_state *bc = netdev_priv(dev); | 276 | struct baycom_state *bc = netdev_priv(dev); |
diff --git a/drivers/net/hamradio/baycom_ser_fdx.c b/drivers/net/hamradio/baycom_ser_fdx.c index 55906c7b4bb1..59214e74b9cf 100644 --- a/drivers/net/hamradio/baycom_ser_fdx.c +++ b/drivers/net/hamradio/baycom_ser_fdx.c | |||
@@ -279,7 +279,7 @@ static __inline__ void ser12_rx(struct net_device *dev, struct baycom_state *bc, | |||
279 | 279 | ||
280 | /* --------------------------------------------------------------------- */ | 280 | /* --------------------------------------------------------------------- */ |
281 | 281 | ||
282 | static irqreturn_t ser12_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 282 | static irqreturn_t ser12_interrupt(int irq, void *dev_id) |
283 | { | 283 | { |
284 | struct net_device *dev = (struct net_device *)dev_id; | 284 | struct net_device *dev = (struct net_device *)dev_id; |
285 | struct baycom_state *bc = netdev_priv(dev); | 285 | struct baycom_state *bc = netdev_priv(dev); |
diff --git a/drivers/net/hamradio/baycom_ser_hdx.c b/drivers/net/hamradio/baycom_ser_hdx.c index de95de8983da..3bcc57acbe6d 100644 --- a/drivers/net/hamradio/baycom_ser_hdx.c +++ b/drivers/net/hamradio/baycom_ser_hdx.c | |||
@@ -373,7 +373,7 @@ static inline void ser12_rx(struct net_device *dev, struct baycom_state *bc) | |||
373 | 373 | ||
374 | /* --------------------------------------------------------------------- */ | 374 | /* --------------------------------------------------------------------- */ |
375 | 375 | ||
376 | static irqreturn_t ser12_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 376 | static irqreturn_t ser12_interrupt(int irq, void *dev_id) |
377 | { | 377 | { |
378 | struct net_device *dev = (struct net_device *)dev_id; | 378 | struct net_device *dev = (struct net_device *)dev_id; |
379 | struct baycom_state *bc = netdev_priv(dev); | 379 | struct baycom_state *bc = netdev_priv(dev); |
diff --git a/drivers/net/hamradio/dmascc.c b/drivers/net/hamradio/dmascc.c index c9a46b89942a..0f8b9afd55b4 100644 --- a/drivers/net/hamradio/dmascc.c +++ b/drivers/net/hamradio/dmascc.c | |||
@@ -249,7 +249,7 @@ static void start_timer(struct scc_priv *priv, int t, int r15); | |||
249 | static inline unsigned char random(void); | 249 | static inline unsigned char random(void); |
250 | 250 | ||
251 | static inline void z8530_isr(struct scc_info *info); | 251 | static inline void z8530_isr(struct scc_info *info); |
252 | static irqreturn_t scc_isr(int irq, void *dev_id, struct pt_regs *regs); | 252 | static irqreturn_t scc_isr(int irq, void *dev_id); |
253 | static void rx_isr(struct scc_priv *priv); | 253 | static void rx_isr(struct scc_priv *priv); |
254 | static void special_condition(struct scc_priv *priv, int rc); | 254 | static void special_condition(struct scc_priv *priv, int rc); |
255 | static void rx_bh(void *arg); | 255 | static void rx_bh(void *arg); |
@@ -1142,7 +1142,7 @@ static inline void z8530_isr(struct scc_info *info) | |||
1142 | } | 1142 | } |
1143 | 1143 | ||
1144 | 1144 | ||
1145 | static irqreturn_t scc_isr(int irq, void *dev_id, struct pt_regs *regs) | 1145 | static irqreturn_t scc_isr(int irq, void *dev_id) |
1146 | { | 1146 | { |
1147 | struct scc_info *info = dev_id; | 1147 | struct scc_info *info = dev_id; |
1148 | 1148 | ||
diff --git a/drivers/net/hamradio/scc.c b/drivers/net/hamradio/scc.c index df4b68142ac7..ec9b6d9b6f05 100644 --- a/drivers/net/hamradio/scc.c +++ b/drivers/net/hamradio/scc.c | |||
@@ -200,7 +200,7 @@ static void z8530_init(void); | |||
200 | 200 | ||
201 | static void init_channel(struct scc_channel *scc); | 201 | static void init_channel(struct scc_channel *scc); |
202 | static void scc_key_trx (struct scc_channel *scc, char tx); | 202 | static void scc_key_trx (struct scc_channel *scc, char tx); |
203 | static irqreturn_t scc_isr(int irq, void *dev_id, struct pt_regs *regs); | 203 | static irqreturn_t scc_isr(int irq, void *dev_id); |
204 | static void scc_init_timer(struct scc_channel *scc); | 204 | static void scc_init_timer(struct scc_channel *scc); |
205 | 205 | ||
206 | static int scc_net_alloc(const char *name, struct scc_channel *scc); | 206 | static int scc_net_alloc(const char *name, struct scc_channel *scc); |
@@ -626,7 +626,7 @@ static void scc_isr_dispatch(struct scc_channel *scc, int vector) | |||
626 | 626 | ||
627 | #define SCC_IRQTIMEOUT 30000 | 627 | #define SCC_IRQTIMEOUT 30000 |
628 | 628 | ||
629 | static irqreturn_t scc_isr(int irq, void *dev_id, struct pt_regs *regs) | 629 | static irqreturn_t scc_isr(int irq, void *dev_id) |
630 | { | 630 | { |
631 | unsigned char vector; | 631 | unsigned char vector; |
632 | struct scc_channel *scc; | 632 | struct scc_channel *scc; |
diff --git a/drivers/net/hamradio/yam.c b/drivers/net/hamradio/yam.c index f98f5777dfbb..3c4455bd466d 100644 --- a/drivers/net/hamradio/yam.c +++ b/drivers/net/hamradio/yam.c | |||
@@ -702,7 +702,7 @@ static void yam_tx_byte(struct net_device *dev, struct yam_port *yp) | |||
702 | * ISR routine | 702 | * ISR routine |
703 | ************************************************************************************/ | 703 | ************************************************************************************/ |
704 | 704 | ||
705 | static irqreturn_t yam_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 705 | static irqreturn_t yam_interrupt(int irq, void *dev_id) |
706 | { | 706 | { |
707 | struct net_device *dev; | 707 | struct net_device *dev; |
708 | struct yam_port *yp; | 708 | struct yam_port *yp; |
diff --git a/drivers/net/hp100.c b/drivers/net/hp100.c index ae8ad4f763bf..844c136e9920 100644 --- a/drivers/net/hp100.c +++ b/drivers/net/hp100.c | |||
@@ -249,7 +249,7 @@ static void hp100_misc_interrupt(struct net_device *dev); | |||
249 | static void hp100_update_stats(struct net_device *dev); | 249 | static void hp100_update_stats(struct net_device *dev); |
250 | static void hp100_clear_stats(struct hp100_private *lp, int ioaddr); | 250 | static void hp100_clear_stats(struct hp100_private *lp, int ioaddr); |
251 | static void hp100_set_multicast_list(struct net_device *dev); | 251 | static void hp100_set_multicast_list(struct net_device *dev); |
252 | static irqreturn_t hp100_interrupt(int irq, void *dev_id, struct pt_regs *regs); | 252 | static irqreturn_t hp100_interrupt(int irq, void *dev_id); |
253 | static void hp100_start_interface(struct net_device *dev); | 253 | static void hp100_start_interface(struct net_device *dev); |
254 | static void hp100_stop_interface(struct net_device *dev); | 254 | static void hp100_stop_interface(struct net_device *dev); |
255 | static void hp100_load_eeprom(struct net_device *dev, u_short ioaddr); | 255 | static void hp100_load_eeprom(struct net_device *dev, u_short ioaddr); |
@@ -2187,7 +2187,7 @@ static void hp100_set_multicast_list(struct net_device *dev) | |||
2187 | * hardware interrupt handling | 2187 | * hardware interrupt handling |
2188 | */ | 2188 | */ |
2189 | 2189 | ||
2190 | static irqreturn_t hp100_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 2190 | static irqreturn_t hp100_interrupt(int irq, void *dev_id) |
2191 | { | 2191 | { |
2192 | struct net_device *dev = (struct net_device *) dev_id; | 2192 | struct net_device *dev = (struct net_device *) dev_id; |
2193 | struct hp100_private *lp = netdev_priv(dev); | 2193 | struct hp100_private *lp = netdev_priv(dev); |
diff --git a/drivers/net/ibm_emac/ibm_emac_core.c b/drivers/net/ibm_emac/ibm_emac_core.c index d52e3bd01301..ffeafb28f782 100644 --- a/drivers/net/ibm_emac/ibm_emac_core.c +++ b/drivers/net/ibm_emac/ibm_emac_core.c | |||
@@ -184,7 +184,7 @@ static const char emac_stats_keys[EMAC_ETHTOOL_STATS_COUNT][ETH_GSTRING_LEN] = { | |||
184 | "tx_errors" | 184 | "tx_errors" |
185 | }; | 185 | }; |
186 | 186 | ||
187 | static irqreturn_t emac_irq(int irq, void *dev_instance, struct pt_regs *regs); | 187 | static irqreturn_t emac_irq(int irq, void *dev_instance); |
188 | static void emac_clean_tx_ring(struct ocp_enet_private *dev); | 188 | static void emac_clean_tx_ring(struct ocp_enet_private *dev); |
189 | 189 | ||
190 | static inline int emac_phy_supports_gige(int phy_mode) | 190 | static inline int emac_phy_supports_gige(int phy_mode) |
@@ -1515,7 +1515,7 @@ static void emac_rxde(void *param) | |||
1515 | } | 1515 | } |
1516 | 1516 | ||
1517 | /* Hard IRQ */ | 1517 | /* Hard IRQ */ |
1518 | static irqreturn_t emac_irq(int irq, void *dev_instance, struct pt_regs *regs) | 1518 | static irqreturn_t emac_irq(int irq, void *dev_instance) |
1519 | { | 1519 | { |
1520 | struct ocp_enet_private *dev = dev_instance; | 1520 | struct ocp_enet_private *dev = dev_instance; |
1521 | struct emac_regs __iomem *p = dev->emacp; | 1521 | struct emac_regs __iomem *p = dev->emacp; |
diff --git a/drivers/net/ibm_emac/ibm_emac_debug.c b/drivers/net/ibm_emac/ibm_emac_debug.c index c3645908034d..92f970d402df 100644 --- a/drivers/net/ibm_emac/ibm_emac_debug.c +++ b/drivers/net/ibm_emac/ibm_emac_debug.c | |||
@@ -179,8 +179,7 @@ void emac_dbg_dump_all(void) | |||
179 | } | 179 | } |
180 | 180 | ||
181 | #if defined(CONFIG_MAGIC_SYSRQ) | 181 | #if defined(CONFIG_MAGIC_SYSRQ) |
182 | static void emac_sysrq_handler(int key, struct pt_regs *pt_regs, | 182 | static void emac_sysrq_handler(int key, struct tty_struct *tty) |
183 | struct tty_struct *tty) | ||
184 | { | 183 | { |
185 | emac_dbg_dump_all(); | 184 | emac_dbg_dump_all(); |
186 | } | 185 | } |
diff --git a/drivers/net/ibm_emac/ibm_emac_mal.c b/drivers/net/ibm_emac/ibm_emac_mal.c index af50e7b2e0d7..6c0f071e4052 100644 --- a/drivers/net/ibm_emac/ibm_emac_mal.c +++ b/drivers/net/ibm_emac/ibm_emac_mal.c | |||
@@ -168,7 +168,7 @@ static inline void mal_disable_eob_irq(struct ibm_ocp_mal *mal) | |||
168 | MAL_DBG2("%d: disable_irq" NL, mal->def->index); | 168 | MAL_DBG2("%d: disable_irq" NL, mal->def->index); |
169 | } | 169 | } |
170 | 170 | ||
171 | static irqreturn_t mal_serr(int irq, void *dev_instance, struct pt_regs *regs) | 171 | static irqreturn_t mal_serr(int irq, void *dev_instance) |
172 | { | 172 | { |
173 | struct ibm_ocp_mal *mal = dev_instance; | 173 | struct ibm_ocp_mal *mal = dev_instance; |
174 | u32 esr = get_mal_dcrn(mal, MAL_ESR); | 174 | u32 esr = get_mal_dcrn(mal, MAL_ESR); |
@@ -216,7 +216,7 @@ static inline void mal_schedule_poll(struct ibm_ocp_mal *mal) | |||
216 | MAL_DBG2("%d: already in poll" NL, mal->def->index); | 216 | MAL_DBG2("%d: already in poll" NL, mal->def->index); |
217 | } | 217 | } |
218 | 218 | ||
219 | static irqreturn_t mal_txeob(int irq, void *dev_instance, struct pt_regs *regs) | 219 | static irqreturn_t mal_txeob(int irq, void *dev_instance) |
220 | { | 220 | { |
221 | struct ibm_ocp_mal *mal = dev_instance; | 221 | struct ibm_ocp_mal *mal = dev_instance; |
222 | u32 r = get_mal_dcrn(mal, MAL_TXEOBISR); | 222 | u32 r = get_mal_dcrn(mal, MAL_TXEOBISR); |
@@ -226,7 +226,7 @@ static irqreturn_t mal_txeob(int irq, void *dev_instance, struct pt_regs *regs) | |||
226 | return IRQ_HANDLED; | 226 | return IRQ_HANDLED; |
227 | } | 227 | } |
228 | 228 | ||
229 | static irqreturn_t mal_rxeob(int irq, void *dev_instance, struct pt_regs *regs) | 229 | static irqreturn_t mal_rxeob(int irq, void *dev_instance) |
230 | { | 230 | { |
231 | struct ibm_ocp_mal *mal = dev_instance; | 231 | struct ibm_ocp_mal *mal = dev_instance; |
232 | u32 r = get_mal_dcrn(mal, MAL_RXEOBISR); | 232 | u32 r = get_mal_dcrn(mal, MAL_RXEOBISR); |
@@ -236,7 +236,7 @@ static irqreturn_t mal_rxeob(int irq, void *dev_instance, struct pt_regs *regs) | |||
236 | return IRQ_HANDLED; | 236 | return IRQ_HANDLED; |
237 | } | 237 | } |
238 | 238 | ||
239 | static irqreturn_t mal_txde(int irq, void *dev_instance, struct pt_regs *regs) | 239 | static irqreturn_t mal_txde(int irq, void *dev_instance) |
240 | { | 240 | { |
241 | struct ibm_ocp_mal *mal = dev_instance; | 241 | struct ibm_ocp_mal *mal = dev_instance; |
242 | u32 deir = get_mal_dcrn(mal, MAL_TXDEIR); | 242 | u32 deir = get_mal_dcrn(mal, MAL_TXDEIR); |
@@ -252,7 +252,7 @@ static irqreturn_t mal_txde(int irq, void *dev_instance, struct pt_regs *regs) | |||
252 | return IRQ_HANDLED; | 252 | return IRQ_HANDLED; |
253 | } | 253 | } |
254 | 254 | ||
255 | static irqreturn_t mal_rxde(int irq, void *dev_instance, struct pt_regs *regs) | 255 | static irqreturn_t mal_rxde(int irq, void *dev_instance) |
256 | { | 256 | { |
257 | struct ibm_ocp_mal *mal = dev_instance; | 257 | struct ibm_ocp_mal *mal = dev_instance; |
258 | struct list_head *l; | 258 | struct list_head *l; |
diff --git a/drivers/net/ibmlana.c b/drivers/net/ibmlana.c index 2a95d72fa593..3f946c811511 100644 --- a/drivers/net/ibmlana.c +++ b/drivers/net/ibmlana.c | |||
@@ -705,7 +705,7 @@ static void irqtxerr_handler(struct net_device *dev) | |||
705 | 705 | ||
706 | /* general interrupt entry */ | 706 | /* general interrupt entry */ |
707 | 707 | ||
708 | static irqreturn_t irq_handler(int irq, void *device, struct pt_regs *regs) | 708 | static irqreturn_t irq_handler(int irq, void *device) |
709 | { | 709 | { |
710 | struct net_device *dev = (struct net_device *) device; | 710 | struct net_device *dev = (struct net_device *) device; |
711 | u16 ival; | 711 | u16 ival; |
diff --git a/drivers/net/ibmveth.c b/drivers/net/ibmveth.c index 16f3faa7ea5b..bf414a93facb 100644 --- a/drivers/net/ibmveth.c +++ b/drivers/net/ibmveth.c | |||
@@ -93,7 +93,7 @@ static void ibmveth_proc_register_driver(void); | |||
93 | static void ibmveth_proc_unregister_driver(void); | 93 | static void ibmveth_proc_unregister_driver(void); |
94 | static void ibmveth_proc_register_adapter(struct ibmveth_adapter *adapter); | 94 | static void ibmveth_proc_register_adapter(struct ibmveth_adapter *adapter); |
95 | static void ibmveth_proc_unregister_adapter(struct ibmveth_adapter *adapter); | 95 | static void ibmveth_proc_unregister_adapter(struct ibmveth_adapter *adapter); |
96 | static irqreturn_t ibmveth_interrupt(int irq, void *dev_instance, struct pt_regs *regs); | 96 | static irqreturn_t ibmveth_interrupt(int irq, void *dev_instance); |
97 | static inline void ibmveth_rxq_harvest_buffer(struct ibmveth_adapter *adapter); | 97 | static inline void ibmveth_rxq_harvest_buffer(struct ibmveth_adapter *adapter); |
98 | static struct kobj_type ktype_veth_pool; | 98 | static struct kobj_type ktype_veth_pool; |
99 | 99 | ||
@@ -570,7 +570,7 @@ static int ibmveth_open(struct net_device *netdev) | |||
570 | } | 570 | } |
571 | 571 | ||
572 | ibmveth_debug_printk("initial replenish cycle\n"); | 572 | ibmveth_debug_printk("initial replenish cycle\n"); |
573 | ibmveth_interrupt(netdev->irq, netdev, NULL); | 573 | ibmveth_interrupt(netdev->irq, netdev); |
574 | 574 | ||
575 | netif_start_queue(netdev); | 575 | netif_start_queue(netdev); |
576 | 576 | ||
@@ -843,7 +843,7 @@ static int ibmveth_poll(struct net_device *netdev, int *budget) | |||
843 | return 0; | 843 | return 0; |
844 | } | 844 | } |
845 | 845 | ||
846 | static irqreturn_t ibmveth_interrupt(int irq, void *dev_instance, struct pt_regs *regs) | 846 | static irqreturn_t ibmveth_interrupt(int irq, void *dev_instance) |
847 | { | 847 | { |
848 | struct net_device *netdev = dev_instance; | 848 | struct net_device *netdev = dev_instance; |
849 | struct ibmveth_adapter *adapter = netdev->priv; | 849 | struct ibmveth_adapter *adapter = netdev->priv; |
@@ -1303,7 +1303,7 @@ const char * buf, size_t count) | |||
1303 | } | 1303 | } |
1304 | 1304 | ||
1305 | /* kick the interrupt handler to allocate/deallocate pools */ | 1305 | /* kick the interrupt handler to allocate/deallocate pools */ |
1306 | ibmveth_interrupt(netdev->irq, netdev, NULL); | 1306 | ibmveth_interrupt(netdev->irq, netdev); |
1307 | return count; | 1307 | return count; |
1308 | } | 1308 | } |
1309 | 1309 | ||
diff --git a/drivers/net/ioc3-eth.c b/drivers/net/ioc3-eth.c index 87650237dc5c..e963dbf816be 100644 --- a/drivers/net/ioc3-eth.c +++ b/drivers/net/ioc3-eth.c | |||
@@ -750,7 +750,7 @@ static void ioc3_error(struct ioc3_private *ip, u32 eisr) | |||
750 | 750 | ||
751 | /* The interrupt handler does all of the Rx thread work and cleans up | 751 | /* The interrupt handler does all of the Rx thread work and cleans up |
752 | after the Tx thread. */ | 752 | after the Tx thread. */ |
753 | static irqreturn_t ioc3_interrupt(int irq, void *_dev, struct pt_regs *regs) | 753 | static irqreturn_t ioc3_interrupt(int irq, void *_dev) |
754 | { | 754 | { |
755 | struct net_device *dev = (struct net_device *)_dev; | 755 | struct net_device *dev = (struct net_device *)_dev; |
756 | struct ioc3_private *ip = netdev_priv(dev); | 756 | struct ioc3_private *ip = netdev_priv(dev); |
diff --git a/drivers/net/irda/ali-ircc.c b/drivers/net/irda/ali-ircc.c index 68d4c418cb98..cebf8c374bc5 100644 --- a/drivers/net/irda/ali-ircc.c +++ b/drivers/net/irda/ali-ircc.c | |||
@@ -660,22 +660,15 @@ static int ali_ircc_read_dongle_id (int i, chipio_t *info) | |||
660 | * An interrupt from the chip has arrived. Time to do some work | 660 | * An interrupt from the chip has arrived. Time to do some work |
661 | * | 661 | * |
662 | */ | 662 | */ |
663 | static irqreturn_t ali_ircc_interrupt(int irq, void *dev_id, | 663 | static irqreturn_t ali_ircc_interrupt(int irq, void *dev_id) |
664 | struct pt_regs *regs) | ||
665 | { | 664 | { |
666 | struct net_device *dev = (struct net_device *) dev_id; | 665 | struct net_device *dev = dev_id; |
667 | struct ali_ircc_cb *self; | 666 | struct ali_ircc_cb *self; |
668 | int ret; | 667 | int ret; |
669 | 668 | ||
670 | IRDA_DEBUG(2, "%s(), ---------------- Start ----------------\n", __FUNCTION__); | 669 | IRDA_DEBUG(2, "%s(), ---------------- Start ----------------\n", __FUNCTION__); |
671 | 670 | ||
672 | if (!dev) { | 671 | self = dev->priv; |
673 | IRDA_WARNING("%s: irq %d for unknown device.\n", | ||
674 | ALI_IRCC_DRIVER_NAME, irq); | ||
675 | return IRQ_NONE; | ||
676 | } | ||
677 | |||
678 | self = (struct ali_ircc_cb *) dev->priv; | ||
679 | 672 | ||
680 | spin_lock(&self->lock); | 673 | spin_lock(&self->lock); |
681 | 674 | ||
diff --git a/drivers/net/irda/au1k_ir.c b/drivers/net/irda/au1k_ir.c index 7b2b4135bb23..37914dc5b90e 100644 --- a/drivers/net/irda/au1k_ir.c +++ b/drivers/net/irda/au1k_ir.c | |||
@@ -51,7 +51,7 @@ static int au1k_irda_start(struct net_device *); | |||
51 | static int au1k_irda_stop(struct net_device *dev); | 51 | static int au1k_irda_stop(struct net_device *dev); |
52 | static int au1k_irda_hard_xmit(struct sk_buff *, struct net_device *); | 52 | static int au1k_irda_hard_xmit(struct sk_buff *, struct net_device *); |
53 | static int au1k_irda_rx(struct net_device *); | 53 | static int au1k_irda_rx(struct net_device *); |
54 | static void au1k_irda_interrupt(int, void *, struct pt_regs *); | 54 | static void au1k_irda_interrupt(int, void *); |
55 | static void au1k_tx_timeout(struct net_device *); | 55 | static void au1k_tx_timeout(struct net_device *); |
56 | static struct net_device_stats *au1k_irda_stats(struct net_device *); | 56 | static struct net_device_stats *au1k_irda_stats(struct net_device *); |
57 | static int au1k_irda_ioctl(struct net_device *, struct ifreq *, int); | 57 | static int au1k_irda_ioctl(struct net_device *, struct ifreq *, int); |
@@ -627,7 +627,7 @@ static int au1k_irda_rx(struct net_device *dev) | |||
627 | } | 627 | } |
628 | 628 | ||
629 | 629 | ||
630 | void au1k_irda_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 630 | void au1k_irda_interrupt(int irq, void *dev_id) |
631 | { | 631 | { |
632 | struct net_device *dev = (struct net_device *) dev_id; | 632 | struct net_device *dev = (struct net_device *) dev_id; |
633 | 633 | ||
diff --git a/drivers/net/irda/donauboe.c b/drivers/net/irda/donauboe.c index 33c07d5275da..16620bd97fbf 100644 --- a/drivers/net/irda/donauboe.c +++ b/drivers/net/irda/donauboe.c | |||
@@ -657,12 +657,6 @@ toshoboe_makemttpacket (struct toshoboe_cb *self, void *buf, int mtt) | |||
657 | return xbofs; | 657 | return xbofs; |
658 | } | 658 | } |
659 | 659 | ||
660 | static int toshoboe_invalid_dev(int irq) | ||
661 | { | ||
662 | printk (KERN_WARNING DRIVER_NAME ": irq %d for unknown device.\n", irq); | ||
663 | return 1; | ||
664 | } | ||
665 | |||
666 | #ifdef USE_PROBE | 660 | #ifdef USE_PROBE |
667 | /***********************************************************************/ | 661 | /***********************************************************************/ |
668 | /* Probe code */ | 662 | /* Probe code */ |
@@ -709,14 +703,11 @@ stuff_byte (__u8 byte, __u8 * buf) | |||
709 | } | 703 | } |
710 | 704 | ||
711 | static irqreturn_t | 705 | static irqreturn_t |
712 | toshoboe_probeinterrupt (int irq, void *dev_id, struct pt_regs *regs) | 706 | toshoboe_probeinterrupt (int irq, void *dev_id) |
713 | { | 707 | { |
714 | struct toshoboe_cb *self = (struct toshoboe_cb *) dev_id; | 708 | struct toshoboe_cb *self = dev_id; |
715 | __u8 irqstat; | 709 | __u8 irqstat; |
716 | 710 | ||
717 | if (self == NULL && toshoboe_invalid_dev(irq)) | ||
718 | return IRQ_NONE; | ||
719 | |||
720 | irqstat = INB (OBOE_ISR); | 711 | irqstat = INB (OBOE_ISR); |
721 | 712 | ||
722 | /* was it us */ | 713 | /* was it us */ |
@@ -1161,15 +1152,12 @@ dumpbufs(skb->data,skb->len,'>'); | |||
1161 | 1152 | ||
1162 | /*interrupt handler */ | 1153 | /*interrupt handler */ |
1163 | static irqreturn_t | 1154 | static irqreturn_t |
1164 | toshoboe_interrupt (int irq, void *dev_id, struct pt_regs *regs) | 1155 | toshoboe_interrupt (int irq, void *dev_id) |
1165 | { | 1156 | { |
1166 | struct toshoboe_cb *self = (struct toshoboe_cb *) dev_id; | 1157 | struct toshoboe_cb *self = dev_id; |
1167 | __u8 irqstat; | 1158 | __u8 irqstat; |
1168 | struct sk_buff *skb = NULL; | 1159 | struct sk_buff *skb = NULL; |
1169 | 1160 | ||
1170 | if (self == NULL && toshoboe_invalid_dev(irq)) | ||
1171 | return IRQ_NONE; | ||
1172 | |||
1173 | irqstat = INB (OBOE_ISR); | 1161 | irqstat = INB (OBOE_ISR); |
1174 | 1162 | ||
1175 | /* was it us */ | 1163 | /* was it us */ |
@@ -1357,13 +1345,11 @@ toshoboe_net_open (struct net_device *dev) | |||
1357 | { | 1345 | { |
1358 | struct toshoboe_cb *self; | 1346 | struct toshoboe_cb *self; |
1359 | unsigned long flags; | 1347 | unsigned long flags; |
1348 | int rc; | ||
1360 | 1349 | ||
1361 | IRDA_DEBUG (4, "%s()\n", __FUNCTION__); | 1350 | IRDA_DEBUG (4, "%s()\n", __FUNCTION__); |
1362 | 1351 | ||
1363 | IRDA_ASSERT (dev != NULL, return -1; ); | 1352 | self = netdev_priv(dev); |
1364 | self = (struct toshoboe_cb *) dev->priv; | ||
1365 | |||
1366 | IRDA_ASSERT (self != NULL, return 0; ); | ||
1367 | 1353 | ||
1368 | if (self->async) | 1354 | if (self->async) |
1369 | return -EBUSY; | 1355 | return -EBUSY; |
@@ -1371,11 +1357,10 @@ toshoboe_net_open (struct net_device *dev) | |||
1371 | if (self->stopped) | 1357 | if (self->stopped) |
1372 | return 0; | 1358 | return 0; |
1373 | 1359 | ||
1374 | if (request_irq (self->io.irq, toshoboe_interrupt, | 1360 | rc = request_irq (self->io.irq, toshoboe_interrupt, |
1375 | IRQF_SHARED | IRQF_DISABLED, dev->name, (void *) self)) | 1361 | IRQF_SHARED | IRQF_DISABLED, dev->name, self); |
1376 | { | 1362 | if (rc) |
1377 | return -EAGAIN; | 1363 | return rc; |
1378 | } | ||
1379 | 1364 | ||
1380 | spin_lock_irqsave(&self->spinlock, flags); | 1365 | spin_lock_irqsave(&self->spinlock, flags); |
1381 | toshoboe_startchip (self); | 1366 | toshoboe_startchip (self); |
diff --git a/drivers/net/irda/irda-usb.c b/drivers/net/irda/irda-usb.c index 383cef1f5999..14bda765c2fa 100644 --- a/drivers/net/irda/irda-usb.c +++ b/drivers/net/irda/irda-usb.c | |||
@@ -114,9 +114,9 @@ static void irda_usb_change_speed_xbofs(struct irda_usb_cb *self); | |||
114 | static int irda_usb_hard_xmit(struct sk_buff *skb, struct net_device *dev); | 114 | static int irda_usb_hard_xmit(struct sk_buff *skb, struct net_device *dev); |
115 | static int irda_usb_open(struct irda_usb_cb *self); | 115 | static int irda_usb_open(struct irda_usb_cb *self); |
116 | static void irda_usb_close(struct irda_usb_cb *self); | 116 | static void irda_usb_close(struct irda_usb_cb *self); |
117 | static void speed_bulk_callback(struct urb *urb, struct pt_regs *regs); | 117 | static void speed_bulk_callback(struct urb *urb); |
118 | static void write_bulk_callback(struct urb *urb, struct pt_regs *regs); | 118 | static void write_bulk_callback(struct urb *urb); |
119 | static void irda_usb_receive(struct urb *urb, struct pt_regs *regs); | 119 | static void irda_usb_receive(struct urb *urb); |
120 | static void irda_usb_rx_defer_expired(unsigned long data); | 120 | static void irda_usb_rx_defer_expired(unsigned long data); |
121 | static int irda_usb_net_open(struct net_device *dev); | 121 | static int irda_usb_net_open(struct net_device *dev); |
122 | static int irda_usb_net_close(struct net_device *dev); | 122 | static int irda_usb_net_close(struct net_device *dev); |
@@ -343,7 +343,7 @@ static void irda_usb_change_speed_xbofs(struct irda_usb_cb *self) | |||
343 | * Speed URB callback | 343 | * Speed URB callback |
344 | * Now, we can only get called for the speed URB. | 344 | * Now, we can only get called for the speed URB. |
345 | */ | 345 | */ |
346 | static void speed_bulk_callback(struct urb *urb, struct pt_regs *regs) | 346 | static void speed_bulk_callback(struct urb *urb) |
347 | { | 347 | { |
348 | struct irda_usb_cb *self = urb->context; | 348 | struct irda_usb_cb *self = urb->context; |
349 | 349 | ||
@@ -562,7 +562,7 @@ drop: | |||
562 | /* | 562 | /* |
563 | * Note : this function will be called only for tx_urb... | 563 | * Note : this function will be called only for tx_urb... |
564 | */ | 564 | */ |
565 | static void write_bulk_callback(struct urb *urb, struct pt_regs *regs) | 565 | static void write_bulk_callback(struct urb *urb) |
566 | { | 566 | { |
567 | unsigned long flags; | 567 | unsigned long flags; |
568 | struct sk_buff *skb = urb->context; | 568 | struct sk_buff *skb = urb->context; |
@@ -809,7 +809,7 @@ static void irda_usb_submit(struct irda_usb_cb *self, struct sk_buff *skb, struc | |||
809 | * Called by the USB subsystem when a frame has been received | 809 | * Called by the USB subsystem when a frame has been received |
810 | * | 810 | * |
811 | */ | 811 | */ |
812 | static void irda_usb_receive(struct urb *urb, struct pt_regs *regs) | 812 | static void irda_usb_receive(struct urb *urb) |
813 | { | 813 | { |
814 | struct sk_buff *skb = (struct sk_buff *) urb->context; | 814 | struct sk_buff *skb = (struct sk_buff *) urb->context; |
815 | struct irda_usb_cb *self; | 815 | struct irda_usb_cb *self; |
diff --git a/drivers/net/irda/irport.c b/drivers/net/irda/irport.c index ba4f3eb988b3..654a68b490ae 100644 --- a/drivers/net/irda/irport.c +++ b/drivers/net/irda/irport.c | |||
@@ -87,8 +87,7 @@ static struct net_device_stats *irport_net_get_stats(struct net_device *dev); | |||
87 | static int irport_change_speed_complete(struct irda_task *task); | 87 | static int irport_change_speed_complete(struct irda_task *task); |
88 | static void irport_timeout(struct net_device *dev); | 88 | static void irport_timeout(struct net_device *dev); |
89 | 89 | ||
90 | static irqreturn_t irport_interrupt(int irq, void *dev_id, | 90 | static irqreturn_t irport_interrupt(int irq, void *dev_id); |
91 | struct pt_regs *regs); | ||
92 | static int irport_hard_xmit(struct sk_buff *skb, struct net_device *dev); | 91 | static int irport_hard_xmit(struct sk_buff *skb, struct net_device *dev); |
93 | static void irport_change_speed(void *priv, __u32 speed); | 92 | static void irport_change_speed(void *priv, __u32 speed); |
94 | static int irport_net_open(struct net_device *dev); | 93 | static int irport_net_open(struct net_device *dev); |
@@ -761,25 +760,20 @@ static inline void irport_receive(struct irport_cb *self) | |||
761 | } | 760 | } |
762 | 761 | ||
763 | /* | 762 | /* |
764 | * Function irport_interrupt (irq, dev_id, regs) | 763 | * Function irport_interrupt (irq, dev_id) |
765 | * | 764 | * |
766 | * Interrupt handler | 765 | * Interrupt handler |
767 | */ | 766 | */ |
768 | static irqreturn_t irport_interrupt(int irq, void *dev_id, | 767 | static irqreturn_t irport_interrupt(int irq, void *dev_id) |
769 | struct pt_regs *regs) | ||
770 | { | 768 | { |
771 | struct net_device *dev = (struct net_device *) dev_id; | 769 | struct net_device *dev = dev_id; |
772 | struct irport_cb *self; | 770 | struct irport_cb *self; |
773 | int boguscount = 0; | 771 | int boguscount = 0; |
774 | int iobase; | 772 | int iobase; |
775 | int iir, lsr; | 773 | int iir, lsr; |
776 | int handled = 0; | 774 | int handled = 0; |
777 | 775 | ||
778 | if (!dev) { | 776 | self = dev->priv; |
779 | IRDA_WARNING("%s() irq %d for unknown device.\n", __FUNCTION__, irq); | ||
780 | return IRQ_NONE; | ||
781 | } | ||
782 | self = (struct irport_cb *) dev->priv; | ||
783 | 777 | ||
784 | spin_lock(&self->lock); | 778 | spin_lock(&self->lock); |
785 | 779 | ||
diff --git a/drivers/net/irda/irport.h b/drivers/net/irda/irport.h index fc89c8c3dd7f..3f46b84c6c85 100644 --- a/drivers/net/irda/irport.h +++ b/drivers/net/irda/irport.h | |||
@@ -74,7 +74,7 @@ struct irport_cb { | |||
74 | /* For piggyback drivers */ | 74 | /* For piggyback drivers */ |
75 | void *priv; | 75 | void *priv; |
76 | void (*change_speed)(void *priv, __u32 speed); | 76 | void (*change_speed)(void *priv, __u32 speed); |
77 | int (*interrupt)(int irq, void *dev_id, struct pt_regs *regs); | 77 | irqreturn_t (*interrupt)(int irq, void *dev_id); |
78 | }; | 78 | }; |
79 | 79 | ||
80 | #endif /* IRPORT_H */ | 80 | #endif /* IRPORT_H */ |
diff --git a/drivers/net/irda/mcs7780.c b/drivers/net/irda/mcs7780.c index 415ba8dc94ce..b32c52ed19d7 100644 --- a/drivers/net/irda/mcs7780.c +++ b/drivers/net/irda/mcs7780.c | |||
@@ -764,7 +764,7 @@ static struct net_device_stats *mcs_net_get_stats(struct net_device *netdev) | |||
764 | } | 764 | } |
765 | 765 | ||
766 | /* Receive callback function. */ | 766 | /* Receive callback function. */ |
767 | static void mcs_receive_irq(struct urb *urb, struct pt_regs *regs) | 767 | static void mcs_receive_irq(struct urb *urb) |
768 | { | 768 | { |
769 | __u8 *bytes; | 769 | __u8 *bytes; |
770 | struct mcs_cb *mcs = urb->context; | 770 | struct mcs_cb *mcs = urb->context; |
@@ -813,7 +813,7 @@ static void mcs_receive_irq(struct urb *urb, struct pt_regs *regs) | |||
813 | } | 813 | } |
814 | 814 | ||
815 | /* Transmit callback funtion. */ | 815 | /* Transmit callback funtion. */ |
816 | static void mcs_send_irq(struct urb *urb, struct pt_regs *regs) | 816 | static void mcs_send_irq(struct urb *urb) |
817 | { | 817 | { |
818 | struct mcs_cb *mcs = urb->context; | 818 | struct mcs_cb *mcs = urb->context; |
819 | struct net_device *ndev = mcs->netdev; | 819 | struct net_device *ndev = mcs->netdev; |
diff --git a/drivers/net/irda/mcs7780.h b/drivers/net/irda/mcs7780.h index 1a723d725c2a..b18148cee638 100644 --- a/drivers/net/irda/mcs7780.h +++ b/drivers/net/irda/mcs7780.h | |||
@@ -156,8 +156,8 @@ static int mcs_net_close(struct net_device *netdev); | |||
156 | static int mcs_net_open(struct net_device *netdev); | 156 | static int mcs_net_open(struct net_device *netdev); |
157 | static struct net_device_stats *mcs_net_get_stats(struct net_device *netdev); | 157 | static struct net_device_stats *mcs_net_get_stats(struct net_device *netdev); |
158 | 158 | ||
159 | static void mcs_receive_irq(struct urb *urb, struct pt_regs *regs); | 159 | static void mcs_receive_irq(struct urb *urb); |
160 | static void mcs_send_irq(struct urb *urb, struct pt_regs *regs); | 160 | static void mcs_send_irq(struct urb *urb); |
161 | static int mcs_hard_xmit(struct sk_buff *skb, struct net_device *netdev); | 161 | static int mcs_hard_xmit(struct sk_buff *skb, struct net_device *netdev); |
162 | 162 | ||
163 | static int mcs_probe(struct usb_interface *intf, | 163 | static int mcs_probe(struct usb_interface *intf, |
diff --git a/drivers/net/irda/nsc-ircc.c b/drivers/net/irda/nsc-ircc.c index 7185a4ee3c1e..29b5ccd29d0b 100644 --- a/drivers/net/irda/nsc-ircc.c +++ b/drivers/net/irda/nsc-ircc.c | |||
@@ -2066,20 +2066,14 @@ static void nsc_ircc_fir_interrupt(struct nsc_ircc_cb *self, int iobase, | |||
2066 | * An interrupt from the chip has arrived. Time to do some work | 2066 | * An interrupt from the chip has arrived. Time to do some work |
2067 | * | 2067 | * |
2068 | */ | 2068 | */ |
2069 | static irqreturn_t nsc_ircc_interrupt(int irq, void *dev_id, | 2069 | static irqreturn_t nsc_ircc_interrupt(int irq, void *dev_id) |
2070 | struct pt_regs *regs) | ||
2071 | { | 2070 | { |
2072 | struct net_device *dev = (struct net_device *) dev_id; | 2071 | struct net_device *dev = dev_id; |
2073 | struct nsc_ircc_cb *self; | 2072 | struct nsc_ircc_cb *self; |
2074 | __u8 bsr, eir; | 2073 | __u8 bsr, eir; |
2075 | int iobase; | 2074 | int iobase; |
2076 | 2075 | ||
2077 | if (!dev) { | 2076 | self = dev->priv; |
2078 | IRDA_WARNING("%s: irq %d for unknown device.\n", | ||
2079 | driver_name, irq); | ||
2080 | return IRQ_NONE; | ||
2081 | } | ||
2082 | self = (struct nsc_ircc_cb *) dev->priv; | ||
2083 | 2077 | ||
2084 | spin_lock(&self->lock); | 2078 | spin_lock(&self->lock); |
2085 | 2079 | ||
diff --git a/drivers/net/irda/pxaficp_ir.c b/drivers/net/irda/pxaficp_ir.c index afb19e8d95c8..f9a1c88a4283 100644 --- a/drivers/net/irda/pxaficp_ir.c +++ b/drivers/net/irda/pxaficp_ir.c | |||
@@ -199,7 +199,7 @@ static int pxa_irda_set_speed(struct pxa_irda *si, int speed) | |||
199 | } | 199 | } |
200 | 200 | ||
201 | /* SIR interrupt service routine. */ | 201 | /* SIR interrupt service routine. */ |
202 | static irqreturn_t pxa_irda_sir_irq(int irq, void *dev_id, struct pt_regs *regs) | 202 | static irqreturn_t pxa_irda_sir_irq(int irq, void *dev_id) |
203 | { | 203 | { |
204 | struct net_device *dev = dev_id; | 204 | struct net_device *dev = dev_id; |
205 | struct pxa_irda *si = netdev_priv(dev); | 205 | struct pxa_irda *si = netdev_priv(dev); |
@@ -281,7 +281,7 @@ static irqreturn_t pxa_irda_sir_irq(int irq, void *dev_id, struct pt_regs *regs) | |||
281 | } | 281 | } |
282 | 282 | ||
283 | /* FIR Receive DMA interrupt handler */ | 283 | /* FIR Receive DMA interrupt handler */ |
284 | static void pxa_irda_fir_dma_rx_irq(int channel, void *data, struct pt_regs *regs) | 284 | static void pxa_irda_fir_dma_rx_irq(int channel, void *data) |
285 | { | 285 | { |
286 | int dcsr = DCSR(channel); | 286 | int dcsr = DCSR(channel); |
287 | 287 | ||
@@ -291,7 +291,7 @@ static void pxa_irda_fir_dma_rx_irq(int channel, void *data, struct pt_regs *reg | |||
291 | } | 291 | } |
292 | 292 | ||
293 | /* FIR Transmit DMA interrupt handler */ | 293 | /* FIR Transmit DMA interrupt handler */ |
294 | static void pxa_irda_fir_dma_tx_irq(int channel, void *data, struct pt_regs *regs) | 294 | static void pxa_irda_fir_dma_tx_irq(int channel, void *data) |
295 | { | 295 | { |
296 | struct net_device *dev = data; | 296 | struct net_device *dev = data; |
297 | struct pxa_irda *si = netdev_priv(dev); | 297 | struct pxa_irda *si = netdev_priv(dev); |
@@ -388,7 +388,7 @@ static void pxa_irda_fir_irq_eif(struct pxa_irda *si, struct net_device *dev) | |||
388 | } | 388 | } |
389 | 389 | ||
390 | /* FIR interrupt handler */ | 390 | /* FIR interrupt handler */ |
391 | static irqreturn_t pxa_irda_fir_irq(int irq, void *dev_id, struct pt_regs *regs) | 391 | static irqreturn_t pxa_irda_fir_irq(int irq, void *dev_id) |
392 | { | 392 | { |
393 | struct net_device *dev = dev_id; | 393 | struct net_device *dev = dev_id; |
394 | struct pxa_irda *si = netdev_priv(dev); | 394 | struct pxa_irda *si = netdev_priv(dev); |
diff --git a/drivers/net/irda/sa1100_ir.c b/drivers/net/irda/sa1100_ir.c index 8d5a288d7976..937372d00398 100644 --- a/drivers/net/irda/sa1100_ir.c +++ b/drivers/net/irda/sa1100_ir.c | |||
@@ -579,7 +579,7 @@ static void sa1100_irda_fir_irq(struct net_device *dev) | |||
579 | sa1100_irda_rx_dma_start(si); | 579 | sa1100_irda_rx_dma_start(si); |
580 | } | 580 | } |
581 | 581 | ||
582 | static irqreturn_t sa1100_irda_irq(int irq, void *dev_id, struct pt_regs *regs) | 582 | static irqreturn_t sa1100_irda_irq(int irq, void *dev_id) |
583 | { | 583 | { |
584 | struct net_device *dev = dev_id; | 584 | struct net_device *dev = dev_id; |
585 | if (IS_FIR(((struct sa1100_irda *)dev->priv))) | 585 | if (IS_FIR(((struct sa1100_irda *)dev->priv))) |
diff --git a/drivers/net/irda/smsc-ircc2.c b/drivers/net/irda/smsc-ircc2.c index 22358ff68c4c..31c623381ea8 100644 --- a/drivers/net/irda/smsc-ircc2.c +++ b/drivers/net/irda/smsc-ircc2.c | |||
@@ -196,7 +196,7 @@ static void smsc_ircc_dma_xmit(struct smsc_ircc_cb *self, int bofs); | |||
196 | static void smsc_ircc_dma_xmit_complete(struct smsc_ircc_cb *self); | 196 | static void smsc_ircc_dma_xmit_complete(struct smsc_ircc_cb *self); |
197 | static void smsc_ircc_change_speed(struct smsc_ircc_cb *self, u32 speed); | 197 | static void smsc_ircc_change_speed(struct smsc_ircc_cb *self, u32 speed); |
198 | static void smsc_ircc_set_sir_speed(struct smsc_ircc_cb *self, u32 speed); | 198 | static void smsc_ircc_set_sir_speed(struct smsc_ircc_cb *self, u32 speed); |
199 | static irqreturn_t smsc_ircc_interrupt(int irq, void *dev_id, struct pt_regs *regs); | 199 | static irqreturn_t smsc_ircc_interrupt(int irq, void *dev_id); |
200 | static irqreturn_t smsc_ircc_interrupt_sir(struct net_device *dev); | 200 | static irqreturn_t smsc_ircc_interrupt_sir(struct net_device *dev); |
201 | static void smsc_ircc_sir_start(struct smsc_ircc_cb *self); | 201 | static void smsc_ircc_sir_start(struct smsc_ircc_cb *self); |
202 | #if SMSC_IRCC2_C_SIR_STOP | 202 | #if SMSC_IRCC2_C_SIR_STOP |
@@ -1455,7 +1455,7 @@ static void smsc_ircc_sir_receive(struct smsc_ircc_cb *self) | |||
1455 | * An interrupt from the chip has arrived. Time to do some work | 1455 | * An interrupt from the chip has arrived. Time to do some work |
1456 | * | 1456 | * |
1457 | */ | 1457 | */ |
1458 | static irqreturn_t smsc_ircc_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 1458 | static irqreturn_t smsc_ircc_interrupt(int irq, void *dev_id) |
1459 | { | 1459 | { |
1460 | struct net_device *dev = (struct net_device *) dev_id; | 1460 | struct net_device *dev = (struct net_device *) dev_id; |
1461 | struct smsc_ircc_cb *self; | 1461 | struct smsc_ircc_cb *self; |
@@ -1520,7 +1520,7 @@ static irqreturn_t smsc_ircc_interrupt(int irq, void *dev_id, struct pt_regs *re | |||
1520 | } | 1520 | } |
1521 | 1521 | ||
1522 | /* | 1522 | /* |
1523 | * Function irport_interrupt_sir (irq, dev_id, regs) | 1523 | * Function irport_interrupt_sir (irq, dev_id) |
1524 | * | 1524 | * |
1525 | * Interrupt handler for SIR modes | 1525 | * Interrupt handler for SIR modes |
1526 | */ | 1526 | */ |
diff --git a/drivers/net/irda/stir4200.c b/drivers/net/irda/stir4200.c index 12103c93f7ef..be8a66e702b0 100644 --- a/drivers/net/irda/stir4200.c +++ b/drivers/net/irda/stir4200.c | |||
@@ -804,7 +804,7 @@ static int stir_transmit_thread(void *arg) | |||
804 | * Wakes up every ms (usb round trip) with wrapped | 804 | * Wakes up every ms (usb round trip) with wrapped |
805 | * data. | 805 | * data. |
806 | */ | 806 | */ |
807 | static void stir_rcv_irq(struct urb *urb, struct pt_regs *regs) | 807 | static void stir_rcv_irq(struct urb *urb) |
808 | { | 808 | { |
809 | struct stir_cb *stir = urb->context; | 809 | struct stir_cb *stir = urb->context; |
810 | int err; | 810 | int err; |
diff --git a/drivers/net/irda/via-ircc.c b/drivers/net/irda/via-ircc.c index d916e1257c47..c3ed9b3067e5 100644 --- a/drivers/net/irda/via-ircc.c +++ b/drivers/net/irda/via-ircc.c | |||
@@ -93,8 +93,7 @@ static int via_ircc_hard_xmit_fir(struct sk_buff *skb, | |||
93 | struct net_device *dev); | 93 | struct net_device *dev); |
94 | static void via_hw_init(struct via_ircc_cb *self); | 94 | static void via_hw_init(struct via_ircc_cb *self); |
95 | static void via_ircc_change_speed(struct via_ircc_cb *self, __u32 baud); | 95 | static void via_ircc_change_speed(struct via_ircc_cb *self, __u32 baud); |
96 | static irqreturn_t via_ircc_interrupt(int irq, void *dev_id, | 96 | static irqreturn_t via_ircc_interrupt(int irq, void *dev_id); |
97 | struct pt_regs *regs); | ||
98 | static int via_ircc_is_receiving(struct via_ircc_cb *self); | 97 | static int via_ircc_is_receiving(struct via_ircc_cb *self); |
99 | static int via_ircc_read_dongle_id(int iobase); | 98 | static int via_ircc_read_dongle_id(int iobase); |
100 | 99 | ||
@@ -1345,13 +1344,12 @@ static int RxTimerHandler(struct via_ircc_cb *self, int iobase) | |||
1345 | 1344 | ||
1346 | 1345 | ||
1347 | /* | 1346 | /* |
1348 | * Function via_ircc_interrupt (irq, dev_id, regs) | 1347 | * Function via_ircc_interrupt (irq, dev_id) |
1349 | * | 1348 | * |
1350 | * An interrupt from the chip has arrived. Time to do some work | 1349 | * An interrupt from the chip has arrived. Time to do some work |
1351 | * | 1350 | * |
1352 | */ | 1351 | */ |
1353 | static irqreturn_t via_ircc_interrupt(int irq, void *dev_id, | 1352 | static irqreturn_t via_ircc_interrupt(int irq, void *dev_id) |
1354 | struct pt_regs *regs) | ||
1355 | { | 1353 | { |
1356 | struct net_device *dev = (struct net_device *) dev_id; | 1354 | struct net_device *dev = (struct net_device *) dev_id; |
1357 | struct via_ircc_cb *self; | 1355 | struct via_ircc_cb *self; |
diff --git a/drivers/net/irda/vlsi_ir.c b/drivers/net/irda/vlsi_ir.c index 92d646cc9edc..18c68193bf14 100644 --- a/drivers/net/irda/vlsi_ir.c +++ b/drivers/net/irda/vlsi_ir.c | |||
@@ -1455,8 +1455,7 @@ static int vlsi_ioctl(struct net_device *ndev, struct ifreq *rq, int cmd) | |||
1455 | 1455 | ||
1456 | /********************************************************/ | 1456 | /********************************************************/ |
1457 | 1457 | ||
1458 | static irqreturn_t vlsi_interrupt(int irq, void *dev_instance, | 1458 | static irqreturn_t vlsi_interrupt(int irq, void *dev_instance) |
1459 | struct pt_regs *regs) | ||
1460 | { | 1459 | { |
1461 | struct net_device *ndev = dev_instance; | 1460 | struct net_device *ndev = dev_instance; |
1462 | vlsi_irda_dev_t *idev = ndev->priv; | 1461 | vlsi_irda_dev_t *idev = ndev->priv; |
diff --git a/drivers/net/irda/w83977af_ir.c b/drivers/net/irda/w83977af_ir.c index 7de1afdeec3d..4212657fa4f9 100644 --- a/drivers/net/irda/w83977af_ir.c +++ b/drivers/net/irda/w83977af_ir.c | |||
@@ -1111,20 +1111,14 @@ static __u8 w83977af_fir_interrupt(struct w83977af_ir *self, int isr) | |||
1111 | * An interrupt from the chip has arrived. Time to do some work | 1111 | * An interrupt from the chip has arrived. Time to do some work |
1112 | * | 1112 | * |
1113 | */ | 1113 | */ |
1114 | static irqreturn_t w83977af_interrupt(int irq, void *dev_id, | 1114 | static irqreturn_t w83977af_interrupt(int irq, void *dev_id) |
1115 | struct pt_regs *regs) | ||
1116 | { | 1115 | { |
1117 | struct net_device *dev = (struct net_device *) dev_id; | 1116 | struct net_device *dev = dev_id; |
1118 | struct w83977af_ir *self; | 1117 | struct w83977af_ir *self; |
1119 | __u8 set, icr, isr; | 1118 | __u8 set, icr, isr; |
1120 | int iobase; | 1119 | int iobase; |
1121 | 1120 | ||
1122 | if (!dev) { | 1121 | self = dev->priv; |
1123 | printk(KERN_WARNING "%s: irq %d for unknown device.\n", | ||
1124 | driver_name, irq); | ||
1125 | return IRQ_NONE; | ||
1126 | } | ||
1127 | self = (struct w83977af_ir *) dev->priv; | ||
1128 | 1122 | ||
1129 | iobase = self->io.fir_base; | 1123 | iobase = self->io.fir_base; |
1130 | 1124 | ||
diff --git a/drivers/net/isa-skeleton.c b/drivers/net/isa-skeleton.c index 984c31d1b3fb..0343f12d2ffb 100644 --- a/drivers/net/isa-skeleton.c +++ b/drivers/net/isa-skeleton.c | |||
@@ -107,7 +107,7 @@ struct net_local { | |||
107 | static int netcard_probe1(struct net_device *dev, int ioaddr); | 107 | static int netcard_probe1(struct net_device *dev, int ioaddr); |
108 | static int net_open(struct net_device *dev); | 108 | static int net_open(struct net_device *dev); |
109 | static int net_send_packet(struct sk_buff *skb, struct net_device *dev); | 109 | static int net_send_packet(struct sk_buff *skb, struct net_device *dev); |
110 | static irqreturn_t net_interrupt(int irq, void *dev_id, struct pt_regs *regs); | 110 | static irqreturn_t net_interrupt(int irq, void *dev_id); |
111 | static void net_rx(struct net_device *dev); | 111 | static void net_rx(struct net_device *dev); |
112 | static int net_close(struct net_device *dev); | 112 | static int net_close(struct net_device *dev); |
113 | static struct net_device_stats *net_get_stats(struct net_device *dev); | 113 | static struct net_device_stats *net_get_stats(struct net_device *dev); |
@@ -504,7 +504,7 @@ void net_tx(struct net_device *dev) | |||
504 | * The typical workload of the driver: | 504 | * The typical workload of the driver: |
505 | * Handle the network interface interrupts. | 505 | * Handle the network interface interrupts. |
506 | */ | 506 | */ |
507 | static irqreturn_t net_interrupt(int irq, void *dev_id, struct pt_regs * regs) | 507 | static irqreturn_t net_interrupt(int irq, void *dev_id) |
508 | { | 508 | { |
509 | struct net_device *dev = dev_id; | 509 | struct net_device *dev = dev_id; |
510 | struct net_local *np; | 510 | struct net_local *np; |
diff --git a/drivers/net/iseries_veth.c b/drivers/net/iseries_veth.c index 41b1d08fd57b..2284e2ce1692 100644 --- a/drivers/net/iseries_veth.c +++ b/drivers/net/iseries_veth.c | |||
@@ -586,7 +586,7 @@ static void veth_handle_int(struct veth_lpevent *event) | |||
586 | }; | 586 | }; |
587 | } | 587 | } |
588 | 588 | ||
589 | static void veth_handle_event(struct HvLpEvent *event, struct pt_regs *regs) | 589 | static void veth_handle_event(struct HvLpEvent *event) |
590 | { | 590 | { |
591 | struct veth_lpevent *veth_event = (struct veth_lpevent *)event; | 591 | struct veth_lpevent *veth_event = (struct veth_lpevent *)event; |
592 | 592 | ||
diff --git a/drivers/net/ixgb/ixgb_main.c b/drivers/net/ixgb/ixgb_main.c index cfde7c2569bb..e09f575a3a38 100644 --- a/drivers/net/ixgb/ixgb_main.c +++ b/drivers/net/ixgb/ixgb_main.c | |||
@@ -93,7 +93,7 @@ static int ixgb_xmit_frame(struct sk_buff *skb, struct net_device *netdev); | |||
93 | static struct net_device_stats *ixgb_get_stats(struct net_device *netdev); | 93 | static struct net_device_stats *ixgb_get_stats(struct net_device *netdev); |
94 | static int ixgb_change_mtu(struct net_device *netdev, int new_mtu); | 94 | static int ixgb_change_mtu(struct net_device *netdev, int new_mtu); |
95 | static int ixgb_set_mac(struct net_device *netdev, void *p); | 95 | static int ixgb_set_mac(struct net_device *netdev, void *p); |
96 | static irqreturn_t ixgb_intr(int irq, void *data, struct pt_regs *regs); | 96 | static irqreturn_t ixgb_intr(int irq, void *data); |
97 | static boolean_t ixgb_clean_tx_irq(struct ixgb_adapter *adapter); | 97 | static boolean_t ixgb_clean_tx_irq(struct ixgb_adapter *adapter); |
98 | 98 | ||
99 | #ifdef CONFIG_IXGB_NAPI | 99 | #ifdef CONFIG_IXGB_NAPI |
@@ -1687,11 +1687,10 @@ ixgb_update_stats(struct ixgb_adapter *adapter) | |||
1687 | * ixgb_intr - Interrupt Handler | 1687 | * ixgb_intr - Interrupt Handler |
1688 | * @irq: interrupt number | 1688 | * @irq: interrupt number |
1689 | * @data: pointer to a network interface device structure | 1689 | * @data: pointer to a network interface device structure |
1690 | * @pt_regs: CPU registers structure | ||
1691 | **/ | 1690 | **/ |
1692 | 1691 | ||
1693 | static irqreturn_t | 1692 | static irqreturn_t |
1694 | ixgb_intr(int irq, void *data, struct pt_regs *regs) | 1693 | ixgb_intr(int irq, void *data) |
1695 | { | 1694 | { |
1696 | struct net_device *netdev = data; | 1695 | struct net_device *netdev = data; |
1697 | struct ixgb_adapter *adapter = netdev_priv(netdev); | 1696 | struct ixgb_adapter *adapter = netdev_priv(netdev); |
@@ -2213,7 +2212,7 @@ static void ixgb_netpoll(struct net_device *dev) | |||
2213 | struct ixgb_adapter *adapter = netdev_priv(dev); | 2212 | struct ixgb_adapter *adapter = netdev_priv(dev); |
2214 | 2213 | ||
2215 | disable_irq(adapter->pdev->irq); | 2214 | disable_irq(adapter->pdev->irq); |
2216 | ixgb_intr(adapter->pdev->irq, dev, NULL); | 2215 | ixgb_intr(adapter->pdev->irq, dev); |
2217 | enable_irq(adapter->pdev->irq); | 2216 | enable_irq(adapter->pdev->irq); |
2218 | } | 2217 | } |
2219 | #endif | 2218 | #endif |
diff --git a/drivers/net/ixp2000/ixpdev.c b/drivers/net/ixp2000/ixpdev.c index 6eeb965b4d72..a4eccb11d677 100644 --- a/drivers/net/ixp2000/ixpdev.c +++ b/drivers/net/ixp2000/ixpdev.c | |||
@@ -188,7 +188,7 @@ static void ixpdev_tx_complete(void) | |||
188 | } | 188 | } |
189 | } | 189 | } |
190 | 190 | ||
191 | static irqreturn_t ixpdev_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 191 | static irqreturn_t ixpdev_interrupt(int irq, void *dev_id) |
192 | { | 192 | { |
193 | u32 status; | 193 | u32 status; |
194 | 194 | ||
diff --git a/drivers/net/lance.c b/drivers/net/lance.c index f349e88e0ddf..6efbd499d752 100644 --- a/drivers/net/lance.c +++ b/drivers/net/lance.c | |||
@@ -301,7 +301,7 @@ static int lance_open(struct net_device *dev); | |||
301 | static void lance_init_ring(struct net_device *dev, gfp_t mode); | 301 | static void lance_init_ring(struct net_device *dev, gfp_t mode); |
302 | static int lance_start_xmit(struct sk_buff *skb, struct net_device *dev); | 302 | static int lance_start_xmit(struct sk_buff *skb, struct net_device *dev); |
303 | static int lance_rx(struct net_device *dev); | 303 | static int lance_rx(struct net_device *dev); |
304 | static irqreturn_t lance_interrupt(int irq, void *dev_id, struct pt_regs *regs); | 304 | static irqreturn_t lance_interrupt(int irq, void *dev_id); |
305 | static int lance_close(struct net_device *dev); | 305 | static int lance_close(struct net_device *dev); |
306 | static struct net_device_stats *lance_get_stats(struct net_device *dev); | 306 | static struct net_device_stats *lance_get_stats(struct net_device *dev); |
307 | static void set_multicast_list(struct net_device *dev); | 307 | static void set_multicast_list(struct net_device *dev); |
@@ -1012,19 +1012,13 @@ out: | |||
1012 | } | 1012 | } |
1013 | 1013 | ||
1014 | /* The LANCE interrupt handler. */ | 1014 | /* The LANCE interrupt handler. */ |
1015 | static irqreturn_t | 1015 | static irqreturn_t lance_interrupt(int irq, void *dev_id) |
1016 | lance_interrupt(int irq, void *dev_id, struct pt_regs * regs) | ||
1017 | { | 1016 | { |
1018 | struct net_device *dev = dev_id; | 1017 | struct net_device *dev = dev_id; |
1019 | struct lance_private *lp; | 1018 | struct lance_private *lp; |
1020 | int csr0, ioaddr, boguscnt=10; | 1019 | int csr0, ioaddr, boguscnt=10; |
1021 | int must_restart; | 1020 | int must_restart; |
1022 | 1021 | ||
1023 | if (dev == NULL) { | ||
1024 | printk ("lance_interrupt(): irq %d for unknown device.\n", irq); | ||
1025 | return IRQ_NONE; | ||
1026 | } | ||
1027 | |||
1028 | ioaddr = dev->base_addr; | 1022 | ioaddr = dev->base_addr; |
1029 | lp = dev->priv; | 1023 | lp = dev->priv; |
1030 | 1024 | ||
diff --git a/drivers/net/lasi_82596.c b/drivers/net/lasi_82596.c index da1eedef0b55..f4d815bca643 100644 --- a/drivers/net/lasi_82596.c +++ b/drivers/net/lasi_82596.c | |||
@@ -403,7 +403,7 @@ static char init_setup[] = | |||
403 | 403 | ||
404 | static int i596_open(struct net_device *dev); | 404 | static int i596_open(struct net_device *dev); |
405 | static int i596_start_xmit(struct sk_buff *skb, struct net_device *dev); | 405 | static int i596_start_xmit(struct sk_buff *skb, struct net_device *dev); |
406 | static irqreturn_t i596_interrupt(int irq, void *dev_id, struct pt_regs *regs); | 406 | static irqreturn_t i596_interrupt(int irq, void *dev_id); |
407 | static int i596_close(struct net_device *dev); | 407 | static int i596_close(struct net_device *dev); |
408 | static struct net_device_stats *i596_get_stats(struct net_device *dev); | 408 | static struct net_device_stats *i596_get_stats(struct net_device *dev); |
409 | static void i596_add_cmd(struct net_device *dev, struct i596_cmd *cmd); | 409 | static void i596_add_cmd(struct net_device *dev, struct i596_cmd *cmd); |
@@ -527,7 +527,7 @@ static void i596_display_data(struct net_device *dev) | |||
527 | 527 | ||
528 | 528 | ||
529 | #if defined(ENABLE_MVME16x_NET) || defined(ENABLE_BVME6000_NET) | 529 | #if defined(ENABLE_MVME16x_NET) || defined(ENABLE_BVME6000_NET) |
530 | static void i596_error(int irq, void *dev_id, struct pt_regs *regs) | 530 | static void i596_error(int irq, void *dev_id) |
531 | { | 531 | { |
532 | struct net_device *dev = dev_id; | 532 | struct net_device *dev = dev_id; |
533 | volatile unsigned char *pcc2 = (unsigned char *) 0xfff42000; | 533 | volatile unsigned char *pcc2 = (unsigned char *) 0xfff42000; |
@@ -1252,12 +1252,12 @@ static int __devinit i82596_probe(struct net_device *dev, | |||
1252 | static void i596_poll_controller(struct net_device *dev) | 1252 | static void i596_poll_controller(struct net_device *dev) |
1253 | { | 1253 | { |
1254 | disable_irq(dev->irq); | 1254 | disable_irq(dev->irq); |
1255 | i596_interrupt(dev->irq, dev, NULL); | 1255 | i596_interrupt(dev->irq, dev); |
1256 | enable_irq(dev->irq); | 1256 | enable_irq(dev->irq); |
1257 | } | 1257 | } |
1258 | #endif | 1258 | #endif |
1259 | 1259 | ||
1260 | static irqreturn_t i596_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 1260 | static irqreturn_t i596_interrupt(int irq, void *dev_id) |
1261 | { | 1261 | { |
1262 | struct net_device *dev = dev_id; | 1262 | struct net_device *dev = dev_id; |
1263 | struct i596_private *lp; | 1263 | struct i596_private *lp; |
diff --git a/drivers/net/lp486e.c b/drivers/net/lp486e.c index 0258aaca9ed3..b833016f1825 100644 --- a/drivers/net/lp486e.c +++ b/drivers/net/lp486e.c | |||
@@ -379,7 +379,7 @@ static char init_setup[14] = { | |||
379 | 379 | ||
380 | static int i596_open(struct net_device *dev); | 380 | static int i596_open(struct net_device *dev); |
381 | static int i596_start_xmit(struct sk_buff *skb, struct net_device *dev); | 381 | static int i596_start_xmit(struct sk_buff *skb, struct net_device *dev); |
382 | static irqreturn_t i596_interrupt(int irq, void *dev_id, struct pt_regs *regs); | 382 | static irqreturn_t i596_interrupt(int irq, void *dev_id); |
383 | static int i596_close(struct net_device *dev); | 383 | static int i596_close(struct net_device *dev); |
384 | static struct net_device_stats *i596_get_stats(struct net_device *dev); | 384 | static struct net_device_stats *i596_get_stats(struct net_device *dev); |
385 | static void i596_add_cmd(struct net_device *dev, struct i596_cmd *cmd); | 385 | static void i596_add_cmd(struct net_device *dev, struct i596_cmd *cmd); |
@@ -1151,7 +1151,7 @@ i596_handle_CU_completion(struct net_device *dev, | |||
1151 | } | 1151 | } |
1152 | 1152 | ||
1153 | static irqreturn_t | 1153 | static irqreturn_t |
1154 | i596_interrupt (int irq, void *dev_instance, struct pt_regs *regs) { | 1154 | i596_interrupt (int irq, void *dev_instance) { |
1155 | struct net_device *dev = (struct net_device *) dev_instance; | 1155 | struct net_device *dev = (struct net_device *) dev_instance; |
1156 | struct i596_private *lp; | 1156 | struct i596_private *lp; |
1157 | unsigned short status, ack_cmd = 0; | 1157 | unsigned short status, ack_cmd = 0; |
diff --git a/drivers/net/mac89x0.c b/drivers/net/mac89x0.c index 8472b71641da..e960138011c0 100644 --- a/drivers/net/mac89x0.c +++ b/drivers/net/mac89x0.c | |||
@@ -129,7 +129,7 @@ extern void reset_chip(struct net_device *dev); | |||
129 | #endif | 129 | #endif |
130 | static int net_open(struct net_device *dev); | 130 | static int net_open(struct net_device *dev); |
131 | static int net_send_packet(struct sk_buff *skb, struct net_device *dev); | 131 | static int net_send_packet(struct sk_buff *skb, struct net_device *dev); |
132 | static irqreturn_t net_interrupt(int irq, void *dev_id, struct pt_regs *regs); | 132 | static irqreturn_t net_interrupt(int irq, void *dev_id); |
133 | static void set_multicast_list(struct net_device *dev); | 133 | static void set_multicast_list(struct net_device *dev); |
134 | static void net_rx(struct net_device *dev); | 134 | static void net_rx(struct net_device *dev); |
135 | static int net_close(struct net_device *dev); | 135 | static int net_close(struct net_device *dev); |
@@ -431,7 +431,7 @@ net_send_packet(struct sk_buff *skb, struct net_device *dev) | |||
431 | 431 | ||
432 | /* The typical workload of the driver: | 432 | /* The typical workload of the driver: |
433 | Handle the network interface interrupts. */ | 433 | Handle the network interface interrupts. */ |
434 | static irqreturn_t net_interrupt(int irq, void *dev_id, struct pt_regs * regs) | 434 | static irqreturn_t net_interrupt(int irq, void *dev_id) |
435 | { | 435 | { |
436 | struct net_device *dev = dev_id; | 436 | struct net_device *dev = dev_id; |
437 | struct net_local *lp; | 437 | struct net_local *lp; |
diff --git a/drivers/net/mace.c b/drivers/net/mace.c index 27c24eaa2414..2907cfb12ada 100644 --- a/drivers/net/mace.c +++ b/drivers/net/mace.c | |||
@@ -82,9 +82,9 @@ static struct net_device_stats *mace_stats(struct net_device *dev); | |||
82 | static void mace_set_multicast(struct net_device *dev); | 82 | static void mace_set_multicast(struct net_device *dev); |
83 | static void mace_reset(struct net_device *dev); | 83 | static void mace_reset(struct net_device *dev); |
84 | static int mace_set_address(struct net_device *dev, void *addr); | 84 | static int mace_set_address(struct net_device *dev, void *addr); |
85 | static irqreturn_t mace_interrupt(int irq, void *dev_id, struct pt_regs *regs); | 85 | static irqreturn_t mace_interrupt(int irq, void *dev_id); |
86 | static irqreturn_t mace_txdma_intr(int irq, void *dev_id, struct pt_regs *regs); | 86 | static irqreturn_t mace_txdma_intr(int irq, void *dev_id); |
87 | static irqreturn_t mace_rxdma_intr(int irq, void *dev_id, struct pt_regs *regs); | 87 | static irqreturn_t mace_rxdma_intr(int irq, void *dev_id); |
88 | static void mace_set_timeout(struct net_device *dev); | 88 | static void mace_set_timeout(struct net_device *dev); |
89 | static void mace_tx_timeout(unsigned long data); | 89 | static void mace_tx_timeout(unsigned long data); |
90 | static inline void dbdma_reset(volatile struct dbdma_regs __iomem *dma); | 90 | static inline void dbdma_reset(volatile struct dbdma_regs __iomem *dma); |
@@ -678,7 +678,7 @@ static void mace_handle_misc_intrs(struct mace_data *mp, int intr) | |||
678 | printk(KERN_DEBUG "mace: jabbering transceiver\n"); | 678 | printk(KERN_DEBUG "mace: jabbering transceiver\n"); |
679 | } | 679 | } |
680 | 680 | ||
681 | static irqreturn_t mace_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 681 | static irqreturn_t mace_interrupt(int irq, void *dev_id) |
682 | { | 682 | { |
683 | struct net_device *dev = (struct net_device *) dev_id; | 683 | struct net_device *dev = (struct net_device *) dev_id; |
684 | struct mace_data *mp = (struct mace_data *) dev->priv; | 684 | struct mace_data *mp = (struct mace_data *) dev->priv; |
@@ -890,12 +890,12 @@ out: | |||
890 | spin_unlock_irqrestore(&mp->lock, flags); | 890 | spin_unlock_irqrestore(&mp->lock, flags); |
891 | } | 891 | } |
892 | 892 | ||
893 | static irqreturn_t mace_txdma_intr(int irq, void *dev_id, struct pt_regs *regs) | 893 | static irqreturn_t mace_txdma_intr(int irq, void *dev_id) |
894 | { | 894 | { |
895 | return IRQ_HANDLED; | 895 | return IRQ_HANDLED; |
896 | } | 896 | } |
897 | 897 | ||
898 | static irqreturn_t mace_rxdma_intr(int irq, void *dev_id, struct pt_regs *regs) | 898 | static irqreturn_t mace_rxdma_intr(int irq, void *dev_id) |
899 | { | 899 | { |
900 | struct net_device *dev = (struct net_device *) dev_id; | 900 | struct net_device *dev = (struct net_device *) dev_id; |
901 | struct mace_data *mp = (struct mace_data *) dev->priv; | 901 | struct mace_data *mp = (struct mace_data *) dev->priv; |
diff --git a/drivers/net/macmace.c b/drivers/net/macmace.c index 696d5513e558..464e4a6f3d5f 100644 --- a/drivers/net/macmace.c +++ b/drivers/net/macmace.c | |||
@@ -77,8 +77,8 @@ static int mace_xmit_start(struct sk_buff *skb, struct net_device *dev); | |||
77 | static struct net_device_stats *mace_stats(struct net_device *dev); | 77 | static struct net_device_stats *mace_stats(struct net_device *dev); |
78 | static void mace_set_multicast(struct net_device *dev); | 78 | static void mace_set_multicast(struct net_device *dev); |
79 | static int mace_set_address(struct net_device *dev, void *addr); | 79 | static int mace_set_address(struct net_device *dev, void *addr); |
80 | static irqreturn_t mace_interrupt(int irq, void *dev_id, struct pt_regs *regs); | 80 | static irqreturn_t mace_interrupt(int irq, void *dev_id); |
81 | static irqreturn_t mace_dma_intr(int irq, void *dev_id, struct pt_regs *regs); | 81 | static irqreturn_t mace_dma_intr(int irq, void *dev_id); |
82 | static void mace_tx_timeout(struct net_device *dev); | 82 | static void mace_tx_timeout(struct net_device *dev); |
83 | 83 | ||
84 | /* Bit-reverse one byte of an ethernet hardware address. */ | 84 | /* Bit-reverse one byte of an ethernet hardware address. */ |
@@ -573,7 +573,7 @@ static void mace_recv_interrupt(struct net_device *dev) | |||
573 | * Process the chip interrupt | 573 | * Process the chip interrupt |
574 | */ | 574 | */ |
575 | 575 | ||
576 | static irqreturn_t mace_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 576 | static irqreturn_t mace_interrupt(int irq, void *dev_id) |
577 | { | 577 | { |
578 | struct net_device *dev = (struct net_device *) dev_id; | 578 | struct net_device *dev = (struct net_device *) dev_id; |
579 | struct mace_data *mp = (struct mace_data *) dev->priv; | 579 | struct mace_data *mp = (struct mace_data *) dev->priv; |
@@ -645,7 +645,7 @@ static void mace_dma_rx_frame(struct net_device *dev, struct mace_frame *mf) | |||
645 | * The PSC has passed us a DMA interrupt event. | 645 | * The PSC has passed us a DMA interrupt event. |
646 | */ | 646 | */ |
647 | 647 | ||
648 | static irqreturn_t mace_dma_intr(int irq, void *dev_id, struct pt_regs *regs) | 648 | static irqreturn_t mace_dma_intr(int irq, void *dev_id) |
649 | { | 649 | { |
650 | struct net_device *dev = (struct net_device *) dev_id; | 650 | struct net_device *dev = (struct net_device *) dev_id; |
651 | struct mace_data *mp = (struct mace_data *) dev->priv; | 651 | struct mace_data *mp = (struct mace_data *) dev->priv; |
diff --git a/drivers/net/meth.c b/drivers/net/meth.c index 55b1495a70d6..c1aa60b9a982 100644 --- a/drivers/net/meth.c +++ b/drivers/net/meth.c | |||
@@ -92,7 +92,7 @@ struct meth_private { | |||
92 | }; | 92 | }; |
93 | 93 | ||
94 | static void meth_tx_timeout(struct net_device *dev); | 94 | static void meth_tx_timeout(struct net_device *dev); |
95 | static irqreturn_t meth_interrupt(int irq, void *dev_id, struct pt_regs *pregs); | 95 | static irqreturn_t meth_interrupt(int irq, void *dev_id); |
96 | 96 | ||
97 | /* global, initialized in ip32-setup.c */ | 97 | /* global, initialized in ip32-setup.c */ |
98 | char o2meth_eaddr[8]={0,0,0,0,0,0,0,0}; | 98 | char o2meth_eaddr[8]={0,0,0,0,0,0,0,0}; |
@@ -569,7 +569,7 @@ static void meth_error(struct net_device* dev, unsigned status) | |||
569 | /* | 569 | /* |
570 | * The typical interrupt entry point | 570 | * The typical interrupt entry point |
571 | */ | 571 | */ |
572 | static irqreturn_t meth_interrupt(int irq, void *dev_id, struct pt_regs *pregs) | 572 | static irqreturn_t meth_interrupt(int irq, void *dev_id) |
573 | { | 573 | { |
574 | struct net_device *dev = (struct net_device *)dev_id; | 574 | struct net_device *dev = (struct net_device *)dev_id; |
575 | struct meth_private *priv = (struct meth_private *) dev->priv; | 575 | struct meth_private *priv = (struct meth_private *) dev->priv; |
diff --git a/drivers/net/mipsnet.c b/drivers/net/mipsnet.c index 07e58f4a2916..c9469985bd71 100644 --- a/drivers/net/mipsnet.c +++ b/drivers/net/mipsnet.c | |||
@@ -116,8 +116,7 @@ static inline ssize_t mipsnet_get_fromdev(struct net_device *dev, size_t count) | |||
116 | return count; | 116 | return count; |
117 | } | 117 | } |
118 | 118 | ||
119 | static irqreturn_t | 119 | static irqreturn_t mipsnet_interrupt(int irq, void *dev_id) |
120 | mipsnet_interrupt(int irq, void *dev_id, struct pt_regs *regs) | ||
121 | { | 120 | { |
122 | struct net_device *dev = dev_id; | 121 | struct net_device *dev = dev_id; |
123 | 122 | ||
diff --git a/drivers/net/mv643xx_eth.c b/drivers/net/mv643xx_eth.c index eccedf3e627d..9997081c6dae 100644 --- a/drivers/net/mv643xx_eth.c +++ b/drivers/net/mv643xx_eth.c | |||
@@ -507,8 +507,7 @@ static void mv643xx_eth_update_pscr(struct net_device *dev, | |||
507 | * Output : N/A | 507 | * Output : N/A |
508 | */ | 508 | */ |
509 | 509 | ||
510 | static irqreturn_t mv643xx_eth_int_handler(int irq, void *dev_id, | 510 | static irqreturn_t mv643xx_eth_int_handler(int irq, void *dev_id) |
511 | struct pt_regs *regs) | ||
512 | { | 511 | { |
513 | struct net_device *dev = (struct net_device *)dev_id; | 512 | struct net_device *dev = (struct net_device *)dev_id; |
514 | struct mv643xx_private *mp = netdev_priv(dev); | 513 | struct mv643xx_private *mp = netdev_priv(dev); |
@@ -1252,7 +1251,7 @@ static void mv643xx_netpoll(struct net_device *netdev) | |||
1252 | /* wait for previous write to complete */ | 1251 | /* wait for previous write to complete */ |
1253 | mv_read(MV643XX_ETH_INTERRUPT_MASK_REG(port_num)); | 1252 | mv_read(MV643XX_ETH_INTERRUPT_MASK_REG(port_num)); |
1254 | 1253 | ||
1255 | mv643xx_eth_int_handler(netdev->irq, netdev, NULL); | 1254 | mv643xx_eth_int_handler(netdev->irq, netdev); |
1256 | 1255 | ||
1257 | mv_write(MV643XX_ETH_INTERRUPT_MASK_REG(port_num), ETH_INT_UNMASK_ALL); | 1256 | mv_write(MV643XX_ETH_INTERRUPT_MASK_REG(port_num), ETH_INT_UNMASK_ALL); |
1258 | } | 1257 | } |
diff --git a/drivers/net/myri10ge/myri10ge.c b/drivers/net/myri10ge/myri10ge.c index 4330197994df..fdbb0d7213b0 100644 --- a/drivers/net/myri10ge/myri10ge.c +++ b/drivers/net/myri10ge/myri10ge.c | |||
@@ -1148,7 +1148,7 @@ static int myri10ge_poll(struct net_device *netdev, int *budget) | |||
1148 | return 1; | 1148 | return 1; |
1149 | } | 1149 | } |
1150 | 1150 | ||
1151 | static irqreturn_t myri10ge_intr(int irq, void *arg, struct pt_regs *regs) | 1151 | static irqreturn_t myri10ge_intr(int irq, void *arg) |
1152 | { | 1152 | { |
1153 | struct myri10ge_priv *mgp = arg; | 1153 | struct myri10ge_priv *mgp = arg; |
1154 | struct mcp_irq_data *stats = mgp->fw_stats; | 1154 | struct mcp_irq_data *stats = mgp->fw_stats; |
diff --git a/drivers/net/myri_sbus.c b/drivers/net/myri_sbus.c index a925bc9db4ac..466b484c9fa4 100644 --- a/drivers/net/myri_sbus.c +++ b/drivers/net/myri_sbus.c | |||
@@ -536,7 +536,7 @@ static void myri_rx(struct myri_eth *mp, struct net_device *dev) | |||
536 | } | 536 | } |
537 | } | 537 | } |
538 | 538 | ||
539 | static irqreturn_t myri_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 539 | static irqreturn_t myri_interrupt(int irq, void *dev_id) |
540 | { | 540 | { |
541 | struct net_device *dev = (struct net_device *) dev_id; | 541 | struct net_device *dev = (struct net_device *) dev_id; |
542 | struct myri_eth *mp = (struct myri_eth *) dev->priv; | 542 | struct myri_eth *mp = (struct myri_eth *) dev->priv; |
diff --git a/drivers/net/natsemi.c b/drivers/net/natsemi.c index d7b241f7d7bc..ffa0afd2eddc 100644 --- a/drivers/net/natsemi.c +++ b/drivers/net/natsemi.c | |||
@@ -623,7 +623,7 @@ static void free_ring(struct net_device *dev); | |||
623 | static void reinit_ring(struct net_device *dev); | 623 | static void reinit_ring(struct net_device *dev); |
624 | static void init_registers(struct net_device *dev); | 624 | static void init_registers(struct net_device *dev); |
625 | static int start_tx(struct sk_buff *skb, struct net_device *dev); | 625 | static int start_tx(struct sk_buff *skb, struct net_device *dev); |
626 | static irqreturn_t intr_handler(int irq, void *dev_instance, struct pt_regs *regs); | 626 | static irqreturn_t intr_handler(int irq, void *dev_instance); |
627 | static void netdev_error(struct net_device *dev, int intr_status); | 627 | static void netdev_error(struct net_device *dev, int intr_status); |
628 | static int natsemi_poll(struct net_device *dev, int *budget); | 628 | static int natsemi_poll(struct net_device *dev, int *budget); |
629 | static void netdev_rx(struct net_device *dev, int *work_done, int work_to_do); | 629 | static void netdev_rx(struct net_device *dev, int *work_done, int work_to_do); |
@@ -2088,7 +2088,7 @@ static void netdev_tx_done(struct net_device *dev) | |||
2088 | 2088 | ||
2089 | /* The interrupt handler doesn't actually handle interrupts itself, it | 2089 | /* The interrupt handler doesn't actually handle interrupts itself, it |
2090 | * schedules a NAPI poll if there is anything to do. */ | 2090 | * schedules a NAPI poll if there is anything to do. */ |
2091 | static irqreturn_t intr_handler(int irq, void *dev_instance, struct pt_regs *rgs) | 2091 | static irqreturn_t intr_handler(int irq, void *dev_instance) |
2092 | { | 2092 | { |
2093 | struct net_device *dev = dev_instance; | 2093 | struct net_device *dev = dev_instance; |
2094 | struct netdev_private *np = netdev_priv(dev); | 2094 | struct netdev_private *np = netdev_priv(dev); |
@@ -2373,7 +2373,7 @@ static struct net_device_stats *get_stats(struct net_device *dev) | |||
2373 | static void natsemi_poll_controller(struct net_device *dev) | 2373 | static void natsemi_poll_controller(struct net_device *dev) |
2374 | { | 2374 | { |
2375 | disable_irq(dev->irq); | 2375 | disable_irq(dev->irq); |
2376 | intr_handler(dev->irq, dev, NULL); | 2376 | intr_handler(dev->irq, dev); |
2377 | enable_irq(dev->irq); | 2377 | enable_irq(dev->irq); |
2378 | } | 2378 | } |
2379 | #endif | 2379 | #endif |
diff --git a/drivers/net/netx-eth.c b/drivers/net/netx-eth.c index 30ed9a5a40e0..a53644f6a29b 100644 --- a/drivers/net/netx-eth.c +++ b/drivers/net/netx-eth.c | |||
@@ -176,7 +176,7 @@ static void netx_eth_receive(struct net_device *ndev) | |||
176 | } | 176 | } |
177 | 177 | ||
178 | static irqreturn_t | 178 | static irqreturn_t |
179 | netx_eth_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 179 | netx_eth_interrupt(int irq, void *dev_id) |
180 | { | 180 | { |
181 | struct net_device *ndev = dev_id; | 181 | struct net_device *ndev = dev_id; |
182 | struct netx_eth_priv *priv = netdev_priv(ndev); | 182 | struct netx_eth_priv *priv = netdev_priv(ndev); |
diff --git a/drivers/net/ni5010.c b/drivers/net/ni5010.c index 383c690eefec..8be0d030d6f4 100644 --- a/drivers/net/ni5010.c +++ b/drivers/net/ni5010.c | |||
@@ -99,7 +99,7 @@ struct ni5010_local { | |||
99 | static int ni5010_probe1(struct net_device *dev, int ioaddr); | 99 | static int ni5010_probe1(struct net_device *dev, int ioaddr); |
100 | static int ni5010_open(struct net_device *dev); | 100 | static int ni5010_open(struct net_device *dev); |
101 | static int ni5010_send_packet(struct sk_buff *skb, struct net_device *dev); | 101 | static int ni5010_send_packet(struct sk_buff *skb, struct net_device *dev); |
102 | static irqreturn_t ni5010_interrupt(int irq, void *dev_id, struct pt_regs *regs); | 102 | static irqreturn_t ni5010_interrupt(int irq, void *dev_id); |
103 | static void ni5010_rx(struct net_device *dev); | 103 | static void ni5010_rx(struct net_device *dev); |
104 | static void ni5010_timeout(struct net_device *dev); | 104 | static void ni5010_timeout(struct net_device *dev); |
105 | static int ni5010_close(struct net_device *dev); | 105 | static int ni5010_close(struct net_device *dev); |
@@ -468,7 +468,7 @@ static int ni5010_send_packet(struct sk_buff *skb, struct net_device *dev) | |||
468 | * The typical workload of the driver: | 468 | * The typical workload of the driver: |
469 | * Handle the network interface interrupts. | 469 | * Handle the network interface interrupts. |
470 | */ | 470 | */ |
471 | static irqreturn_t ni5010_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 471 | static irqreturn_t ni5010_interrupt(int irq, void *dev_id) |
472 | { | 472 | { |
473 | struct net_device *dev = dev_id; | 473 | struct net_device *dev = dev_id; |
474 | struct ni5010_local *lp; | 474 | struct ni5010_local *lp; |
diff --git a/drivers/net/ni52.c b/drivers/net/ni52.c index e8889235996e..26e42f6e9fb1 100644 --- a/drivers/net/ni52.c +++ b/drivers/net/ni52.c | |||
@@ -195,7 +195,7 @@ sizeof(nop_cmd) = 8; | |||
195 | #define NI52_ADDR2 0x01 | 195 | #define NI52_ADDR2 0x01 |
196 | 196 | ||
197 | static int ni52_probe1(struct net_device *dev,int ioaddr); | 197 | static int ni52_probe1(struct net_device *dev,int ioaddr); |
198 | static irqreturn_t ni52_interrupt(int irq,void *dev_id,struct pt_regs *reg_ptr); | 198 | static irqreturn_t ni52_interrupt(int irq,void *dev_id); |
199 | static int ni52_open(struct net_device *dev); | 199 | static int ni52_open(struct net_device *dev); |
200 | static int ni52_close(struct net_device *dev); | 200 | static int ni52_close(struct net_device *dev); |
201 | static int ni52_send_packet(struct sk_buff *,struct net_device *); | 201 | static int ni52_send_packet(struct sk_buff *,struct net_device *); |
@@ -837,7 +837,7 @@ static void *alloc_rfa(struct net_device *dev,void *ptr) | |||
837 | * Interrupt Handler ... | 837 | * Interrupt Handler ... |
838 | */ | 838 | */ |
839 | 839 | ||
840 | static irqreturn_t ni52_interrupt(int irq,void *dev_id,struct pt_regs *reg_ptr) | 840 | static irqreturn_t ni52_interrupt(int irq,void *dev_id) |
841 | { | 841 | { |
842 | struct net_device *dev = dev_id; | 842 | struct net_device *dev = dev_id; |
843 | unsigned short stat; | 843 | unsigned short stat; |
diff --git a/drivers/net/ni65.c b/drivers/net/ni65.c index fab3c8593ac1..340ad0d5388a 100644 --- a/drivers/net/ni65.c +++ b/drivers/net/ni65.c | |||
@@ -248,7 +248,7 @@ struct priv | |||
248 | }; | 248 | }; |
249 | 249 | ||
250 | static int ni65_probe1(struct net_device *dev,int); | 250 | static int ni65_probe1(struct net_device *dev,int); |
251 | static irqreturn_t ni65_interrupt(int irq, void * dev_id, struct pt_regs *regs); | 251 | static irqreturn_t ni65_interrupt(int irq, void * dev_id); |
252 | static void ni65_recv_intr(struct net_device *dev,int); | 252 | static void ni65_recv_intr(struct net_device *dev,int); |
253 | static void ni65_xmit_intr(struct net_device *dev,int); | 253 | static void ni65_xmit_intr(struct net_device *dev,int); |
254 | static int ni65_open(struct net_device *dev); | 254 | static int ni65_open(struct net_device *dev); |
@@ -871,7 +871,7 @@ static int ni65_lance_reinit(struct net_device *dev) | |||
871 | /* | 871 | /* |
872 | * interrupt handler | 872 | * interrupt handler |
873 | */ | 873 | */ |
874 | static irqreturn_t ni65_interrupt(int irq, void * dev_id, struct pt_regs * regs) | 874 | static irqreturn_t ni65_interrupt(int irq, void * dev_id) |
875 | { | 875 | { |
876 | int csr0 = 0; | 876 | int csr0 = 0; |
877 | struct net_device *dev = dev_id; | 877 | struct net_device *dev = dev_id; |
diff --git a/drivers/net/ns83820.c b/drivers/net/ns83820.c index e10da1aa3d30..b0127c71a5b6 100644 --- a/drivers/net/ns83820.c +++ b/drivers/net/ns83820.c | |||
@@ -1288,7 +1288,7 @@ static void ns83820_mib_isr(struct ns83820 *dev) | |||
1288 | } | 1288 | } |
1289 | 1289 | ||
1290 | static void ns83820_do_isr(struct net_device *ndev, u32 isr); | 1290 | static void ns83820_do_isr(struct net_device *ndev, u32 isr); |
1291 | static irqreturn_t ns83820_irq(int foo, void *data, struct pt_regs *regs) | 1291 | static irqreturn_t ns83820_irq(int foo, void *data) |
1292 | { | 1292 | { |
1293 | struct net_device *ndev = data; | 1293 | struct net_device *ndev = data; |
1294 | struct ns83820 *dev = PRIV(ndev); | 1294 | struct ns83820 *dev = PRIV(ndev); |
diff --git a/drivers/net/pci-skeleton.c b/drivers/net/pci-skeleton.c index 2687e747657d..00ca0fdb837b 100644 --- a/drivers/net/pci-skeleton.c +++ b/drivers/net/pci-skeleton.c | |||
@@ -502,8 +502,7 @@ static void netdrv_tx_timeout (struct net_device *dev); | |||
502 | static void netdrv_init_ring (struct net_device *dev); | 502 | static void netdrv_init_ring (struct net_device *dev); |
503 | static int netdrv_start_xmit (struct sk_buff *skb, | 503 | static int netdrv_start_xmit (struct sk_buff *skb, |
504 | struct net_device *dev); | 504 | struct net_device *dev); |
505 | static irqreturn_t netdrv_interrupt (int irq, void *dev_instance, | 505 | static irqreturn_t netdrv_interrupt (int irq, void *dev_instance); |
506 | struct pt_regs *regs); | ||
507 | static int netdrv_close (struct net_device *dev); | 506 | static int netdrv_close (struct net_device *dev); |
508 | static int netdrv_ioctl (struct net_device *dev, struct ifreq *rq, int cmd); | 507 | static int netdrv_ioctl (struct net_device *dev, struct ifreq *rq, int cmd); |
509 | static struct net_device_stats *netdrv_get_stats (struct net_device *dev); | 508 | static struct net_device_stats *netdrv_get_stats (struct net_device *dev); |
@@ -1654,8 +1653,7 @@ static void netdrv_weird_interrupt (struct net_device *dev, | |||
1654 | 1653 | ||
1655 | /* The interrupt handler does all of the Rx thread work and cleans up | 1654 | /* The interrupt handler does all of the Rx thread work and cleans up |
1656 | after the Tx thread. */ | 1655 | after the Tx thread. */ |
1657 | static irqreturn_t netdrv_interrupt (int irq, void *dev_instance, | 1656 | static irqreturn_t netdrv_interrupt (int irq, void *dev_instance) |
1658 | struct pt_regs *regs) | ||
1659 | { | 1657 | { |
1660 | struct net_device *dev = (struct net_device *) dev_instance; | 1658 | struct net_device *dev = (struct net_device *) dev_instance; |
1661 | struct netdrv_private *tp = dev->priv; | 1659 | struct netdrv_private *tp = dev->priv; |
diff --git a/drivers/net/pcmcia/3c574_cs.c b/drivers/net/pcmcia/3c574_cs.c index 2418cdb9d317..046009928526 100644 --- a/drivers/net/pcmcia/3c574_cs.c +++ b/drivers/net/pcmcia/3c574_cs.c | |||
@@ -238,7 +238,7 @@ static void tc574_reset(struct net_device *dev); | |||
238 | static void media_check(unsigned long arg); | 238 | static void media_check(unsigned long arg); |
239 | static int el3_open(struct net_device *dev); | 239 | static int el3_open(struct net_device *dev); |
240 | static int el3_start_xmit(struct sk_buff *skb, struct net_device *dev); | 240 | static int el3_start_xmit(struct sk_buff *skb, struct net_device *dev); |
241 | static irqreturn_t el3_interrupt(int irq, void *dev_id, struct pt_regs *regs); | 241 | static irqreturn_t el3_interrupt(int irq, void *dev_id); |
242 | static void update_stats(struct net_device *dev); | 242 | static void update_stats(struct net_device *dev); |
243 | static struct net_device_stats *el3_get_stats(struct net_device *dev); | 243 | static struct net_device_stats *el3_get_stats(struct net_device *dev); |
244 | static int el3_rx(struct net_device *dev, int worklimit); | 244 | static int el3_rx(struct net_device *dev, int worklimit); |
@@ -817,7 +817,7 @@ static int el3_start_xmit(struct sk_buff *skb, struct net_device *dev) | |||
817 | } | 817 | } |
818 | 818 | ||
819 | /* The EL3 interrupt handler. */ | 819 | /* The EL3 interrupt handler. */ |
820 | static irqreturn_t el3_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 820 | static irqreturn_t el3_interrupt(int irq, void *dev_id) |
821 | { | 821 | { |
822 | struct net_device *dev = (struct net_device *) dev_id; | 822 | struct net_device *dev = (struct net_device *) dev_id; |
823 | struct el3_private *lp = netdev_priv(dev); | 823 | struct el3_private *lp = netdev_priv(dev); |
@@ -927,7 +927,7 @@ static void media_check(unsigned long arg) | |||
927 | if ((inw(ioaddr + EL3_STATUS) & IntLatch) && (inb(ioaddr + Timer) == 0xff)) { | 927 | if ((inw(ioaddr + EL3_STATUS) & IntLatch) && (inb(ioaddr + Timer) == 0xff)) { |
928 | if (!lp->fast_poll) | 928 | if (!lp->fast_poll) |
929 | printk(KERN_INFO "%s: interrupt(s) dropped!\n", dev->name); | 929 | printk(KERN_INFO "%s: interrupt(s) dropped!\n", dev->name); |
930 | el3_interrupt(dev->irq, lp, NULL); | 930 | el3_interrupt(dev->irq, lp); |
931 | lp->fast_poll = HZ; | 931 | lp->fast_poll = HZ; |
932 | } | 932 | } |
933 | if (lp->fast_poll) { | 933 | if (lp->fast_poll) { |
diff --git a/drivers/net/pcmcia/3c589_cs.c b/drivers/net/pcmcia/3c589_cs.c index a0e2b01c027c..231fa2c9ec6c 100644 --- a/drivers/net/pcmcia/3c589_cs.c +++ b/drivers/net/pcmcia/3c589_cs.c | |||
@@ -151,7 +151,7 @@ static void media_check(unsigned long arg); | |||
151 | static int el3_config(struct net_device *dev, struct ifmap *map); | 151 | static int el3_config(struct net_device *dev, struct ifmap *map); |
152 | static int el3_open(struct net_device *dev); | 152 | static int el3_open(struct net_device *dev); |
153 | static int el3_start_xmit(struct sk_buff *skb, struct net_device *dev); | 153 | static int el3_start_xmit(struct sk_buff *skb, struct net_device *dev); |
154 | static irqreturn_t el3_interrupt(int irq, void *dev_id, struct pt_regs *regs); | 154 | static irqreturn_t el3_interrupt(int irq, void *dev_id); |
155 | static void update_stats(struct net_device *dev); | 155 | static void update_stats(struct net_device *dev); |
156 | static struct net_device_stats *el3_get_stats(struct net_device *dev); | 156 | static struct net_device_stats *el3_get_stats(struct net_device *dev); |
157 | static int el3_rx(struct net_device *dev); | 157 | static int el3_rx(struct net_device *dev); |
@@ -645,7 +645,7 @@ static int el3_start_xmit(struct sk_buff *skb, struct net_device *dev) | |||
645 | } | 645 | } |
646 | 646 | ||
647 | /* The EL3 interrupt handler. */ | 647 | /* The EL3 interrupt handler. */ |
648 | static irqreturn_t el3_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 648 | static irqreturn_t el3_interrupt(int irq, void *dev_id) |
649 | { | 649 | { |
650 | struct net_device *dev = (struct net_device *) dev_id; | 650 | struct net_device *dev = (struct net_device *) dev_id; |
651 | struct el3_private *lp = netdev_priv(dev); | 651 | struct el3_private *lp = netdev_priv(dev); |
@@ -748,7 +748,7 @@ static void media_check(unsigned long arg) | |||
748 | (inb(ioaddr + EL3_TIMER) == 0xff)) { | 748 | (inb(ioaddr + EL3_TIMER) == 0xff)) { |
749 | if (!lp->fast_poll) | 749 | if (!lp->fast_poll) |
750 | printk(KERN_WARNING "%s: interrupt(s) dropped!\n", dev->name); | 750 | printk(KERN_WARNING "%s: interrupt(s) dropped!\n", dev->name); |
751 | el3_interrupt(dev->irq, lp, NULL); | 751 | el3_interrupt(dev->irq, lp); |
752 | lp->fast_poll = HZ; | 752 | lp->fast_poll = HZ; |
753 | } | 753 | } |
754 | if (lp->fast_poll) { | 754 | if (lp->fast_poll) { |
diff --git a/drivers/net/pcmcia/axnet_cs.c b/drivers/net/pcmcia/axnet_cs.c index a8891a9000ac..5ddd5742f779 100644 --- a/drivers/net/pcmcia/axnet_cs.c +++ b/drivers/net/pcmcia/axnet_cs.c | |||
@@ -92,7 +92,7 @@ static int axnet_open(struct net_device *dev); | |||
92 | static int axnet_close(struct net_device *dev); | 92 | static int axnet_close(struct net_device *dev); |
93 | static int axnet_ioctl(struct net_device *dev, struct ifreq *rq, int cmd); | 93 | static int axnet_ioctl(struct net_device *dev, struct ifreq *rq, int cmd); |
94 | static const struct ethtool_ops netdev_ethtool_ops; | 94 | static const struct ethtool_ops netdev_ethtool_ops; |
95 | static irqreturn_t ei_irq_wrapper(int irq, void *dev_id, struct pt_regs *regs); | 95 | static irqreturn_t ei_irq_wrapper(int irq, void *dev_id); |
96 | static void ei_watchdog(u_long arg); | 96 | static void ei_watchdog(u_long arg); |
97 | static void axnet_reset_8390(struct net_device *dev); | 97 | static void axnet_reset_8390(struct net_device *dev); |
98 | 98 | ||
@@ -112,7 +112,7 @@ static void axdev_setup(struct net_device *dev); | |||
112 | static void AX88190_init(struct net_device *dev, int startp); | 112 | static void AX88190_init(struct net_device *dev, int startp); |
113 | static int ax_open(struct net_device *dev); | 113 | static int ax_open(struct net_device *dev); |
114 | static int ax_close(struct net_device *dev); | 114 | static int ax_close(struct net_device *dev); |
115 | static irqreturn_t ax_interrupt(int irq, void *dev_id, struct pt_regs *regs); | 115 | static irqreturn_t ax_interrupt(int irq, void *dev_id); |
116 | 116 | ||
117 | /*====================================================================*/ | 117 | /*====================================================================*/ |
118 | 118 | ||
@@ -599,11 +599,11 @@ static void axnet_reset_8390(struct net_device *dev) | |||
599 | 599 | ||
600 | /*====================================================================*/ | 600 | /*====================================================================*/ |
601 | 601 | ||
602 | static irqreturn_t ei_irq_wrapper(int irq, void *dev_id, struct pt_regs *regs) | 602 | static irqreturn_t ei_irq_wrapper(int irq, void *dev_id) |
603 | { | 603 | { |
604 | struct net_device *dev = dev_id; | 604 | struct net_device *dev = dev_id; |
605 | PRIV(dev)->stale = 0; | 605 | PRIV(dev)->stale = 0; |
606 | return ax_interrupt(irq, dev_id, regs); | 606 | return ax_interrupt(irq, dev_id); |
607 | } | 607 | } |
608 | 608 | ||
609 | static void ei_watchdog(u_long arg) | 609 | static void ei_watchdog(u_long arg) |
@@ -621,7 +621,7 @@ static void ei_watchdog(u_long arg) | |||
621 | if (info->stale++ && (inb_p(nic_base + EN0_ISR) & ENISR_ALL)) { | 621 | if (info->stale++ && (inb_p(nic_base + EN0_ISR) & ENISR_ALL)) { |
622 | if (!info->fast_poll) | 622 | if (!info->fast_poll) |
623 | printk(KERN_INFO "%s: interrupt(s) dropped!\n", dev->name); | 623 | printk(KERN_INFO "%s: interrupt(s) dropped!\n", dev->name); |
624 | ei_irq_wrapper(dev->irq, dev, NULL); | 624 | ei_irq_wrapper(dev->irq, dev); |
625 | info->fast_poll = HZ; | 625 | info->fast_poll = HZ; |
626 | } | 626 | } |
627 | if (info->fast_poll) { | 627 | if (info->fast_poll) { |
@@ -1193,7 +1193,7 @@ static int ei_start_xmit(struct sk_buff *skb, struct net_device *dev) | |||
1193 | * needed. | 1193 | * needed. |
1194 | */ | 1194 | */ |
1195 | 1195 | ||
1196 | static irqreturn_t ax_interrupt(int irq, void *dev_id, struct pt_regs * regs) | 1196 | static irqreturn_t ax_interrupt(int irq, void *dev_id) |
1197 | { | 1197 | { |
1198 | struct net_device *dev = dev_id; | 1198 | struct net_device *dev = dev_id; |
1199 | long e8390_base; | 1199 | long e8390_base; |
@@ -1201,14 +1201,8 @@ static irqreturn_t ax_interrupt(int irq, void *dev_id, struct pt_regs * regs) | |||
1201 | struct ei_device *ei_local; | 1201 | struct ei_device *ei_local; |
1202 | int handled = 0; | 1202 | int handled = 0; |
1203 | 1203 | ||
1204 | if (dev == NULL) | ||
1205 | { | ||
1206 | printk ("net_interrupt(): irq %d for unknown device.\n", irq); | ||
1207 | return IRQ_NONE; | ||
1208 | } | ||
1209 | |||
1210 | e8390_base = dev->base_addr; | 1204 | e8390_base = dev->base_addr; |
1211 | ei_local = (struct ei_device *) netdev_priv(dev); | 1205 | ei_local = netdev_priv(dev); |
1212 | 1206 | ||
1213 | /* | 1207 | /* |
1214 | * Protect the irq test too. | 1208 | * Protect the irq test too. |
diff --git a/drivers/net/pcmcia/fmvj18x_cs.c b/drivers/net/pcmcia/fmvj18x_cs.c index d682f30dea6e..65f6fdf43725 100644 --- a/drivers/net/pcmcia/fmvj18x_cs.c +++ b/drivers/net/pcmcia/fmvj18x_cs.c | |||
@@ -97,7 +97,7 @@ static int fjn_config(struct net_device *dev, struct ifmap *map); | |||
97 | static int fjn_open(struct net_device *dev); | 97 | static int fjn_open(struct net_device *dev); |
98 | static int fjn_close(struct net_device *dev); | 98 | static int fjn_close(struct net_device *dev); |
99 | static int fjn_start_xmit(struct sk_buff *skb, struct net_device *dev); | 99 | static int fjn_start_xmit(struct sk_buff *skb, struct net_device *dev); |
100 | static irqreturn_t fjn_interrupt(int irq, void *dev_id, struct pt_regs *regs); | 100 | static irqreturn_t fjn_interrupt(int irq, void *dev_id); |
101 | static void fjn_rx(struct net_device *dev); | 101 | static void fjn_rx(struct net_device *dev); |
102 | static void fjn_reset(struct net_device *dev); | 102 | static void fjn_reset(struct net_device *dev); |
103 | static struct net_device_stats *fjn_get_stats(struct net_device *dev); | 103 | static struct net_device_stats *fjn_get_stats(struct net_device *dev); |
@@ -733,7 +733,7 @@ module_exit(exit_fmvj18x_cs); | |||
733 | 733 | ||
734 | /*====================================================================*/ | 734 | /*====================================================================*/ |
735 | 735 | ||
736 | static irqreturn_t fjn_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 736 | static irqreturn_t fjn_interrupt(int irq, void *dev_id) |
737 | { | 737 | { |
738 | struct net_device *dev = dev_id; | 738 | struct net_device *dev = dev_id; |
739 | local_info_t *lp = netdev_priv(dev); | 739 | local_info_t *lp = netdev_priv(dev); |
diff --git a/drivers/net/pcmcia/nmclan_cs.c b/drivers/net/pcmcia/nmclan_cs.c index 7d5687e94607..e77110e4c288 100644 --- a/drivers/net/pcmcia/nmclan_cs.c +++ b/drivers/net/pcmcia/nmclan_cs.c | |||
@@ -426,7 +426,7 @@ static int mace_open(struct net_device *dev); | |||
426 | static int mace_close(struct net_device *dev); | 426 | static int mace_close(struct net_device *dev); |
427 | static int mace_start_xmit(struct sk_buff *skb, struct net_device *dev); | 427 | static int mace_start_xmit(struct sk_buff *skb, struct net_device *dev); |
428 | static void mace_tx_timeout(struct net_device *dev); | 428 | static void mace_tx_timeout(struct net_device *dev); |
429 | static irqreturn_t mace_interrupt(int irq, void *dev_id, struct pt_regs *regs); | 429 | static irqreturn_t mace_interrupt(int irq, void *dev_id); |
430 | static struct net_device_stats *mace_get_stats(struct net_device *dev); | 430 | static struct net_device_stats *mace_get_stats(struct net_device *dev); |
431 | static int mace_rx(struct net_device *dev, unsigned char RxCnt); | 431 | static int mace_rx(struct net_device *dev, unsigned char RxCnt); |
432 | static void restore_multicast_list(struct net_device *dev); | 432 | static void restore_multicast_list(struct net_device *dev); |
@@ -1002,7 +1002,7 @@ static int mace_start_xmit(struct sk_buff *skb, struct net_device *dev) | |||
1002 | mace_interrupt | 1002 | mace_interrupt |
1003 | The interrupt handler. | 1003 | The interrupt handler. |
1004 | ---------------------------------------------------------------------------- */ | 1004 | ---------------------------------------------------------------------------- */ |
1005 | static irqreturn_t mace_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 1005 | static irqreturn_t mace_interrupt(int irq, void *dev_id) |
1006 | { | 1006 | { |
1007 | struct net_device *dev = (struct net_device *) dev_id; | 1007 | struct net_device *dev = (struct net_device *) dev_id; |
1008 | mace_private *lp = netdev_priv(dev); | 1008 | mace_private *lp = netdev_priv(dev); |
diff --git a/drivers/net/pcmcia/pcnet_cs.c b/drivers/net/pcmcia/pcnet_cs.c index a09c22840f63..0c00d182e7fd 100644 --- a/drivers/net/pcmcia/pcnet_cs.c +++ b/drivers/net/pcmcia/pcnet_cs.c | |||
@@ -109,7 +109,7 @@ static int pcnet_open(struct net_device *dev); | |||
109 | static int pcnet_close(struct net_device *dev); | 109 | static int pcnet_close(struct net_device *dev); |
110 | static int ei_ioctl(struct net_device *dev, struct ifreq *rq, int cmd); | 110 | static int ei_ioctl(struct net_device *dev, struct ifreq *rq, int cmd); |
111 | static const struct ethtool_ops netdev_ethtool_ops; | 111 | static const struct ethtool_ops netdev_ethtool_ops; |
112 | static irqreturn_t ei_irq_wrapper(int irq, void *dev_id, struct pt_regs *regs); | 112 | static irqreturn_t ei_irq_wrapper(int irq, void *dev_id); |
113 | static void ei_watchdog(u_long arg); | 113 | static void ei_watchdog(u_long arg); |
114 | static void pcnet_reset_8390(struct net_device *dev); | 114 | static void pcnet_reset_8390(struct net_device *dev); |
115 | static int set_config(struct net_device *dev, struct ifmap *map); | 115 | static int set_config(struct net_device *dev, struct ifmap *map); |
@@ -1071,11 +1071,11 @@ static int set_config(struct net_device *dev, struct ifmap *map) | |||
1071 | 1071 | ||
1072 | /*====================================================================*/ | 1072 | /*====================================================================*/ |
1073 | 1073 | ||
1074 | static irqreturn_t ei_irq_wrapper(int irq, void *dev_id, struct pt_regs *regs) | 1074 | static irqreturn_t ei_irq_wrapper(int irq, void *dev_id) |
1075 | { | 1075 | { |
1076 | struct net_device *dev = dev_id; | 1076 | struct net_device *dev = dev_id; |
1077 | pcnet_dev_t *info; | 1077 | pcnet_dev_t *info; |
1078 | irqreturn_t ret = ei_interrupt(irq, dev_id, regs); | 1078 | irqreturn_t ret = ei_interrupt(irq, dev_id); |
1079 | 1079 | ||
1080 | if (ret == IRQ_HANDLED) { | 1080 | if (ret == IRQ_HANDLED) { |
1081 | info = PRIV(dev); | 1081 | info = PRIV(dev); |
@@ -1100,7 +1100,7 @@ static void ei_watchdog(u_long arg) | |||
1100 | if (info->stale++ && (inb_p(nic_base + EN0_ISR) & ENISR_ALL)) { | 1100 | if (info->stale++ && (inb_p(nic_base + EN0_ISR) & ENISR_ALL)) { |
1101 | if (!info->fast_poll) | 1101 | if (!info->fast_poll) |
1102 | printk(KERN_INFO "%s: interrupt(s) dropped!\n", dev->name); | 1102 | printk(KERN_INFO "%s: interrupt(s) dropped!\n", dev->name); |
1103 | ei_irq_wrapper(dev->irq, dev, NULL); | 1103 | ei_irq_wrapper(dev->irq, dev); |
1104 | info->fast_poll = HZ; | 1104 | info->fast_poll = HZ; |
1105 | } | 1105 | } |
1106 | if (info->fast_poll) { | 1106 | if (info->fast_poll) { |
diff --git a/drivers/net/pcmcia/smc91c92_cs.c b/drivers/net/pcmcia/smc91c92_cs.c index a2f3a0e2a005..20fcc3576202 100644 --- a/drivers/net/pcmcia/smc91c92_cs.c +++ b/drivers/net/pcmcia/smc91c92_cs.c | |||
@@ -287,7 +287,7 @@ static int smc_close(struct net_device *dev); | |||
287 | static int smc_ioctl(struct net_device *dev, struct ifreq *rq, int cmd); | 287 | static int smc_ioctl(struct net_device *dev, struct ifreq *rq, int cmd); |
288 | static void smc_tx_timeout(struct net_device *dev); | 288 | static void smc_tx_timeout(struct net_device *dev); |
289 | static int smc_start_xmit(struct sk_buff *skb, struct net_device *dev); | 289 | static int smc_start_xmit(struct sk_buff *skb, struct net_device *dev); |
290 | static irqreturn_t smc_interrupt(int irq, void *dev_id, struct pt_regs *regs); | 290 | static irqreturn_t smc_interrupt(int irq, void *dev_id); |
291 | static void smc_rx(struct net_device *dev); | 291 | static void smc_rx(struct net_device *dev); |
292 | static struct net_device_stats *smc_get_stats(struct net_device *dev); | 292 | static struct net_device_stats *smc_get_stats(struct net_device *dev); |
293 | static void set_rx_mode(struct net_device *dev); | 293 | static void set_rx_mode(struct net_device *dev); |
@@ -1545,7 +1545,7 @@ static void smc_eph_irq(struct net_device *dev) | |||
1545 | 1545 | ||
1546 | /*====================================================================*/ | 1546 | /*====================================================================*/ |
1547 | 1547 | ||
1548 | static irqreturn_t smc_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 1548 | static irqreturn_t smc_interrupt(int irq, void *dev_id) |
1549 | { | 1549 | { |
1550 | struct net_device *dev = dev_id; | 1550 | struct net_device *dev = dev_id; |
1551 | struct smc_private *smc = netdev_priv(dev); | 1551 | struct smc_private *smc = netdev_priv(dev); |
@@ -1966,7 +1966,7 @@ static void media_check(u_long arg) | |||
1966 | if (smc->watchdog++ && ((i>>8) & i)) { | 1966 | if (smc->watchdog++ && ((i>>8) & i)) { |
1967 | if (!smc->fast_poll) | 1967 | if (!smc->fast_poll) |
1968 | printk(KERN_INFO "%s: interrupt(s) dropped!\n", dev->name); | 1968 | printk(KERN_INFO "%s: interrupt(s) dropped!\n", dev->name); |
1969 | smc_interrupt(dev->irq, smc, NULL); | 1969 | smc_interrupt(dev->irq, smc); |
1970 | smc->fast_poll = HZ; | 1970 | smc->fast_poll = HZ; |
1971 | } | 1971 | } |
1972 | if (smc->fast_poll) { | 1972 | if (smc->fast_poll) { |
diff --git a/drivers/net/pcmcia/xirc2ps_cs.c b/drivers/net/pcmcia/xirc2ps_cs.c index 62664c01eb45..f3914f58d67f 100644 --- a/drivers/net/pcmcia/xirc2ps_cs.c +++ b/drivers/net/pcmcia/xirc2ps_cs.c | |||
@@ -308,7 +308,7 @@ static void xirc2ps_detach(struct pcmcia_device *p_dev); | |||
308 | * less on other parts of the kernel. | 308 | * less on other parts of the kernel. |
309 | */ | 309 | */ |
310 | 310 | ||
311 | static irqreturn_t xirc2ps_interrupt(int irq, void *dev_id, struct pt_regs *regs); | 311 | static irqreturn_t xirc2ps_interrupt(int irq, void *dev_id); |
312 | 312 | ||
313 | /**************** | 313 | /**************** |
314 | * A linked list of "instances" of the device. Each actual | 314 | * A linked list of "instances" of the device. Each actual |
@@ -1121,7 +1121,7 @@ static int xirc2ps_resume(struct pcmcia_device *link) | |||
1121 | * This is the Interrupt service route. | 1121 | * This is the Interrupt service route. |
1122 | */ | 1122 | */ |
1123 | static irqreturn_t | 1123 | static irqreturn_t |
1124 | xirc2ps_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 1124 | xirc2ps_interrupt(int irq, void *dev_id) |
1125 | { | 1125 | { |
1126 | struct net_device *dev = (struct net_device *)dev_id; | 1126 | struct net_device *dev = (struct net_device *)dev_id; |
1127 | local_info_t *lp = netdev_priv(dev); | 1127 | local_info_t *lp = netdev_priv(dev); |
diff --git a/drivers/net/pcnet32.c b/drivers/net/pcnet32.c index a43e24245b7e..36f9d988278f 100644 --- a/drivers/net/pcnet32.c +++ b/drivers/net/pcnet32.c | |||
@@ -304,7 +304,7 @@ static int pcnet32_open(struct net_device *); | |||
304 | static int pcnet32_init_ring(struct net_device *); | 304 | static int pcnet32_init_ring(struct net_device *); |
305 | static int pcnet32_start_xmit(struct sk_buff *, struct net_device *); | 305 | static int pcnet32_start_xmit(struct sk_buff *, struct net_device *); |
306 | static void pcnet32_tx_timeout(struct net_device *dev); | 306 | static void pcnet32_tx_timeout(struct net_device *dev); |
307 | static irqreturn_t pcnet32_interrupt(int, void *, struct pt_regs *); | 307 | static irqreturn_t pcnet32_interrupt(int, void *); |
308 | static int pcnet32_close(struct net_device *); | 308 | static int pcnet32_close(struct net_device *); |
309 | static struct net_device_stats *pcnet32_get_stats(struct net_device *); | 309 | static struct net_device_stats *pcnet32_get_stats(struct net_device *); |
310 | static void pcnet32_load_multicast(struct net_device *dev); | 310 | static void pcnet32_load_multicast(struct net_device *dev); |
@@ -674,7 +674,7 @@ static void pcnet32_purge_rx_ring(struct net_device *dev) | |||
674 | static void pcnet32_poll_controller(struct net_device *dev) | 674 | static void pcnet32_poll_controller(struct net_device *dev) |
675 | { | 675 | { |
676 | disable_irq(dev->irq); | 676 | disable_irq(dev->irq); |
677 | pcnet32_interrupt(0, dev, NULL); | 677 | pcnet32_interrupt(0, dev); |
678 | enable_irq(dev->irq); | 678 | enable_irq(dev->irq); |
679 | } | 679 | } |
680 | #endif | 680 | #endif |
@@ -2561,7 +2561,7 @@ static int pcnet32_start_xmit(struct sk_buff *skb, struct net_device *dev) | |||
2561 | 2561 | ||
2562 | /* The PCNET32 interrupt handler. */ | 2562 | /* The PCNET32 interrupt handler. */ |
2563 | static irqreturn_t | 2563 | static irqreturn_t |
2564 | pcnet32_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 2564 | pcnet32_interrupt(int irq, void *dev_id) |
2565 | { | 2565 | { |
2566 | struct net_device *dev = dev_id; | 2566 | struct net_device *dev = dev_id; |
2567 | struct pcnet32_private *lp; | 2567 | struct pcnet32_private *lp; |
@@ -2569,13 +2569,6 @@ pcnet32_interrupt(int irq, void *dev_id, struct pt_regs *regs) | |||
2569 | u16 csr0; | 2569 | u16 csr0; |
2570 | int boguscnt = max_interrupt_work; | 2570 | int boguscnt = max_interrupt_work; |
2571 | 2571 | ||
2572 | if (!dev) { | ||
2573 | if (pcnet32_debug & NETIF_MSG_INTR) | ||
2574 | printk(KERN_DEBUG "%s(): irq %d for unknown device\n", | ||
2575 | __FUNCTION__, irq); | ||
2576 | return IRQ_NONE; | ||
2577 | } | ||
2578 | |||
2579 | ioaddr = dev->base_addr; | 2572 | ioaddr = dev->base_addr; |
2580 | lp = dev->priv; | 2573 | lp = dev->priv; |
2581 | 2574 | ||
diff --git a/drivers/net/phy/phy.c b/drivers/net/phy/phy.c index f5aad77288f9..3af9fcf76c81 100644 --- a/drivers/net/phy/phy.c +++ b/drivers/net/phy/phy.c | |||
@@ -480,7 +480,7 @@ void phy_error(struct phy_device *phydev) | |||
480 | * description: When a PHY interrupt occurs, the handler disables | 480 | * description: When a PHY interrupt occurs, the handler disables |
481 | * interrupts, and schedules a work task to clear the interrupt. | 481 | * interrupts, and schedules a work task to clear the interrupt. |
482 | */ | 482 | */ |
483 | static irqreturn_t phy_interrupt(int irq, void *phy_dat, struct pt_regs *regs) | 483 | static irqreturn_t phy_interrupt(int irq, void *phy_dat) |
484 | { | 484 | { |
485 | struct phy_device *phydev = phy_dat; | 485 | struct phy_device *phydev = phy_dat; |
486 | 486 | ||
diff --git a/drivers/net/plip.c b/drivers/net/plip.c index d4f54e9798cd..71afb274498f 100644 --- a/drivers/net/plip.c +++ b/drivers/net/plip.c | |||
@@ -143,7 +143,7 @@ static void plip_bh(struct net_device *dev); | |||
143 | static void plip_timer_bh(struct net_device *dev); | 143 | static void plip_timer_bh(struct net_device *dev); |
144 | 144 | ||
145 | /* Interrupt handler */ | 145 | /* Interrupt handler */ |
146 | static void plip_interrupt(int irq, void *dev_id, struct pt_regs *regs); | 146 | static void plip_interrupt(int irq, void *dev_id); |
147 | 147 | ||
148 | /* Functions for DEV methods */ | 148 | /* Functions for DEV methods */ |
149 | static int plip_tx_packet(struct sk_buff *skb, struct net_device *dev); | 149 | static int plip_tx_packet(struct sk_buff *skb, struct net_device *dev); |
@@ -385,7 +385,7 @@ plip_timer_bh(struct net_device *dev) | |||
385 | struct net_local *nl = netdev_priv(dev); | 385 | struct net_local *nl = netdev_priv(dev); |
386 | 386 | ||
387 | if (!(atomic_read (&nl->kill_timer))) { | 387 | if (!(atomic_read (&nl->kill_timer))) { |
388 | plip_interrupt (-1, dev, NULL); | 388 | plip_interrupt (-1, dev); |
389 | 389 | ||
390 | schedule_delayed_work(&nl->timer, 1); | 390 | schedule_delayed_work(&nl->timer, 1); |
391 | } | 391 | } |
@@ -902,18 +902,13 @@ plip_error(struct net_device *dev, struct net_local *nl, | |||
902 | 902 | ||
903 | /* Handle the parallel port interrupts. */ | 903 | /* Handle the parallel port interrupts. */ |
904 | static void | 904 | static void |
905 | plip_interrupt(int irq, void *dev_id, struct pt_regs * regs) | 905 | plip_interrupt(int irq, void *dev_id) |
906 | { | 906 | { |
907 | struct net_device *dev = dev_id; | 907 | struct net_device *dev = dev_id; |
908 | struct net_local *nl; | 908 | struct net_local *nl; |
909 | struct plip_local *rcv; | 909 | struct plip_local *rcv; |
910 | unsigned char c0; | 910 | unsigned char c0; |
911 | 911 | ||
912 | if (dev == NULL) { | ||
913 | printk(KERN_DEBUG "plip_interrupt: irq %d for unknown device.\n", irq); | ||
914 | return; | ||
915 | } | ||
916 | |||
917 | nl = netdev_priv(dev); | 912 | nl = netdev_priv(dev); |
918 | rcv = &nl->rcv_data; | 913 | rcv = &nl->rcv_data; |
919 | 914 | ||
diff --git a/drivers/net/qla3xxx.c b/drivers/net/qla3xxx.c index 157471846349..ec640f6229ae 100644 --- a/drivers/net/qla3xxx.c +++ b/drivers/net/qla3xxx.c | |||
@@ -1965,7 +1965,7 @@ quit_polling: | |||
1965 | return 1; | 1965 | return 1; |
1966 | } | 1966 | } |
1967 | 1967 | ||
1968 | static irqreturn_t ql3xxx_isr(int irq, void *dev_id, struct pt_regs *regs) | 1968 | static irqreturn_t ql3xxx_isr(int irq, void *dev_id) |
1969 | { | 1969 | { |
1970 | 1970 | ||
1971 | struct net_device *ndev = dev_id; | 1971 | struct net_device *ndev = dev_id; |
diff --git a/drivers/net/r8169.c b/drivers/net/r8169.c index 4c47c5b10ba0..f1c75751cab7 100644 --- a/drivers/net/r8169.c +++ b/drivers/net/r8169.c | |||
@@ -473,8 +473,7 @@ MODULE_VERSION(RTL8169_VERSION); | |||
473 | 473 | ||
474 | static int rtl8169_open(struct net_device *dev); | 474 | static int rtl8169_open(struct net_device *dev); |
475 | static int rtl8169_start_xmit(struct sk_buff *skb, struct net_device *dev); | 475 | static int rtl8169_start_xmit(struct sk_buff *skb, struct net_device *dev); |
476 | static irqreturn_t rtl8169_interrupt(int irq, void *dev_instance, | 476 | static irqreturn_t rtl8169_interrupt(int irq, void *dev_instance); |
477 | struct pt_regs *regs); | ||
478 | static int rtl8169_init_ring(struct net_device *dev); | 477 | static int rtl8169_init_ring(struct net_device *dev); |
479 | static void rtl8169_hw_start(struct net_device *dev); | 478 | static void rtl8169_hw_start(struct net_device *dev); |
480 | static int rtl8169_close(struct net_device *dev); | 479 | static int rtl8169_close(struct net_device *dev); |
@@ -1392,7 +1391,7 @@ static void rtl8169_netpoll(struct net_device *dev) | |||
1392 | struct pci_dev *pdev = tp->pci_dev; | 1391 | struct pci_dev *pdev = tp->pci_dev; |
1393 | 1392 | ||
1394 | disable_irq(pdev->irq); | 1393 | disable_irq(pdev->irq); |
1395 | rtl8169_interrupt(pdev->irq, dev, NULL); | 1394 | rtl8169_interrupt(pdev->irq, dev); |
1396 | enable_irq(pdev->irq); | 1395 | enable_irq(pdev->irq); |
1397 | } | 1396 | } |
1398 | #endif | 1397 | #endif |
@@ -2592,7 +2591,7 @@ rtl8169_rx_interrupt(struct net_device *dev, struct rtl8169_private *tp, | |||
2592 | 2591 | ||
2593 | /* The interrupt handler does all of the Rx thread work and cleans up after the Tx thread. */ | 2592 | /* The interrupt handler does all of the Rx thread work and cleans up after the Tx thread. */ |
2594 | static irqreturn_t | 2593 | static irqreturn_t |
2595 | rtl8169_interrupt(int irq, void *dev_instance, struct pt_regs *regs) | 2594 | rtl8169_interrupt(int irq, void *dev_instance) |
2596 | { | 2595 | { |
2597 | struct net_device *dev = (struct net_device *) dev_instance; | 2596 | struct net_device *dev = (struct net_device *) dev_instance; |
2598 | struct rtl8169_private *tp = netdev_priv(dev); | 2597 | struct rtl8169_private *tp = netdev_priv(dev); |
diff --git a/drivers/net/rrunner.c b/drivers/net/rrunner.c index 6108bac8d56a..d81536f90df6 100644 --- a/drivers/net/rrunner.c +++ b/drivers/net/rrunner.c | |||
@@ -1053,7 +1053,7 @@ static void rx_int(struct net_device *dev, u32 rxlimit, u32 index) | |||
1053 | } | 1053 | } |
1054 | 1054 | ||
1055 | 1055 | ||
1056 | static irqreturn_t rr_interrupt(int irq, void *dev_id, struct pt_regs *ptregs) | 1056 | static irqreturn_t rr_interrupt(int irq, void *dev_id) |
1057 | { | 1057 | { |
1058 | struct rr_private *rrpriv; | 1058 | struct rr_private *rrpriv; |
1059 | struct rr_regs __iomem *regs; | 1059 | struct rr_regs __iomem *regs; |
diff --git a/drivers/net/rrunner.h b/drivers/net/rrunner.h index 99451b523399..9f3e050c4dc6 100644 --- a/drivers/net/rrunner.h +++ b/drivers/net/rrunner.h | |||
@@ -829,7 +829,7 @@ struct rr_private | |||
829 | */ | 829 | */ |
830 | static int rr_init(struct net_device *dev); | 830 | static int rr_init(struct net_device *dev); |
831 | static int rr_init1(struct net_device *dev); | 831 | static int rr_init1(struct net_device *dev); |
832 | static irqreturn_t rr_interrupt(int irq, void *dev_id, struct pt_regs *regs); | 832 | static irqreturn_t rr_interrupt(int irq, void *dev_id); |
833 | 833 | ||
834 | static int rr_open(struct net_device *dev); | 834 | static int rr_open(struct net_device *dev); |
835 | static int rr_start_xmit(struct sk_buff *skb, struct net_device *dev); | 835 | static int rr_start_xmit(struct sk_buff *skb, struct net_device *dev); |
diff --git a/drivers/net/s2io.c b/drivers/net/s2io.c index 1bf23e41f580..a231ab7d28dd 100644 --- a/drivers/net/s2io.c +++ b/drivers/net/s2io.c | |||
@@ -4029,8 +4029,7 @@ static int s2io_chk_rx_buffers(nic_t *sp, int rng_n) | |||
4029 | return 0; | 4029 | return 0; |
4030 | } | 4030 | } |
4031 | 4031 | ||
4032 | static irqreturn_t | 4032 | static irqreturn_t s2io_msi_handle(int irq, void *dev_id) |
4033 | s2io_msi_handle(int irq, void *dev_id, struct pt_regs *regs) | ||
4034 | { | 4033 | { |
4035 | struct net_device *dev = (struct net_device *) dev_id; | 4034 | struct net_device *dev = (struct net_device *) dev_id; |
4036 | nic_t *sp = dev->priv; | 4035 | nic_t *sp = dev->priv; |
@@ -4063,8 +4062,7 @@ s2io_msi_handle(int irq, void *dev_id, struct pt_regs *regs) | |||
4063 | return IRQ_HANDLED; | 4062 | return IRQ_HANDLED; |
4064 | } | 4063 | } |
4065 | 4064 | ||
4066 | static irqreturn_t | 4065 | static irqreturn_t s2io_msix_ring_handle(int irq, void *dev_id) |
4067 | s2io_msix_ring_handle(int irq, void *dev_id, struct pt_regs *regs) | ||
4068 | { | 4066 | { |
4069 | ring_info_t *ring = (ring_info_t *)dev_id; | 4067 | ring_info_t *ring = (ring_info_t *)dev_id; |
4070 | nic_t *sp = ring->nic; | 4068 | nic_t *sp = ring->nic; |
@@ -4078,8 +4076,7 @@ s2io_msix_ring_handle(int irq, void *dev_id, struct pt_regs *regs) | |||
4078 | return IRQ_HANDLED; | 4076 | return IRQ_HANDLED; |
4079 | } | 4077 | } |
4080 | 4078 | ||
4081 | static irqreturn_t | 4079 | static irqreturn_t s2io_msix_fifo_handle(int irq, void *dev_id) |
4082 | s2io_msix_fifo_handle(int irq, void *dev_id, struct pt_regs *regs) | ||
4083 | { | 4080 | { |
4084 | fifo_info_t *fifo = (fifo_info_t *)dev_id; | 4081 | fifo_info_t *fifo = (fifo_info_t *)dev_id; |
4085 | nic_t *sp = fifo->nic; | 4082 | nic_t *sp = fifo->nic; |
@@ -4155,7 +4152,6 @@ static void s2io_txpic_intr_handle(nic_t *sp) | |||
4155 | * s2io_isr - ISR handler of the device . | 4152 | * s2io_isr - ISR handler of the device . |
4156 | * @irq: the irq of the device. | 4153 | * @irq: the irq of the device. |
4157 | * @dev_id: a void pointer to the dev structure of the NIC. | 4154 | * @dev_id: a void pointer to the dev structure of the NIC. |
4158 | * @pt_regs: pointer to the registers pushed on the stack. | ||
4159 | * Description: This function is the ISR handler of the device. It | 4155 | * Description: This function is the ISR handler of the device. It |
4160 | * identifies the reason for the interrupt and calls the relevant | 4156 | * identifies the reason for the interrupt and calls the relevant |
4161 | * service routines. As a contongency measure, this ISR allocates the | 4157 | * service routines. As a contongency measure, this ISR allocates the |
@@ -4165,7 +4161,7 @@ static void s2io_txpic_intr_handle(nic_t *sp) | |||
4165 | * IRQ_HANDLED: will be returned if IRQ was handled by this routine | 4161 | * IRQ_HANDLED: will be returned if IRQ was handled by this routine |
4166 | * IRQ_NONE: will be returned if interrupt is not from our device | 4162 | * IRQ_NONE: will be returned if interrupt is not from our device |
4167 | */ | 4163 | */ |
4168 | static irqreturn_t s2io_isr(int irq, void *dev_id, struct pt_regs *regs) | 4164 | static irqreturn_t s2io_isr(int irq, void *dev_id) |
4169 | { | 4165 | { |
4170 | struct net_device *dev = (struct net_device *) dev_id; | 4166 | struct net_device *dev = (struct net_device *) dev_id; |
4171 | nic_t *sp = dev->priv; | 4167 | nic_t *sp = dev->priv; |
diff --git a/drivers/net/s2io.h b/drivers/net/s2io.h index 3afd9126a591..12b719f4d00f 100644 --- a/drivers/net/s2io.h +++ b/drivers/net/s2io.h | |||
@@ -116,179 +116,179 @@ typedef struct { | |||
116 | /* The statistics block of Xena */ | 116 | /* The statistics block of Xena */ |
117 | typedef struct stat_block { | 117 | typedef struct stat_block { |
118 | /* Tx MAC statistics counters. */ | 118 | /* Tx MAC statistics counters. */ |
119 | u32 tmac_data_octets; | 119 | __le32 tmac_data_octets; |
120 | u32 tmac_frms; | 120 | __le32 tmac_frms; |
121 | u64 tmac_drop_frms; | 121 | __le64 tmac_drop_frms; |
122 | u32 tmac_bcst_frms; | 122 | __le32 tmac_bcst_frms; |
123 | u32 tmac_mcst_frms; | 123 | __le32 tmac_mcst_frms; |
124 | u64 tmac_pause_ctrl_frms; | 124 | __le64 tmac_pause_ctrl_frms; |
125 | u32 tmac_ucst_frms; | 125 | __le32 tmac_ucst_frms; |
126 | u32 tmac_ttl_octets; | 126 | __le32 tmac_ttl_octets; |
127 | u32 tmac_any_err_frms; | 127 | __le32 tmac_any_err_frms; |
128 | u32 tmac_nucst_frms; | 128 | __le32 tmac_nucst_frms; |
129 | u64 tmac_ttl_less_fb_octets; | 129 | __le64 tmac_ttl_less_fb_octets; |
130 | u64 tmac_vld_ip_octets; | 130 | __le64 tmac_vld_ip_octets; |
131 | u32 tmac_drop_ip; | 131 | __le32 tmac_drop_ip; |
132 | u32 tmac_vld_ip; | 132 | __le32 tmac_vld_ip; |
133 | u32 tmac_rst_tcp; | 133 | __le32 tmac_rst_tcp; |
134 | u32 tmac_icmp; | 134 | __le32 tmac_icmp; |
135 | u64 tmac_tcp; | 135 | __le64 tmac_tcp; |
136 | u32 reserved_0; | 136 | __le32 reserved_0; |
137 | u32 tmac_udp; | 137 | __le32 tmac_udp; |
138 | 138 | ||
139 | /* Rx MAC Statistics counters. */ | 139 | /* Rx MAC Statistics counters. */ |
140 | u32 rmac_data_octets; | 140 | __le32 rmac_data_octets; |
141 | u32 rmac_vld_frms; | 141 | __le32 rmac_vld_frms; |
142 | u64 rmac_fcs_err_frms; | 142 | __le64 rmac_fcs_err_frms; |
143 | u64 rmac_drop_frms; | 143 | __le64 rmac_drop_frms; |
144 | u32 rmac_vld_bcst_frms; | 144 | __le32 rmac_vld_bcst_frms; |
145 | u32 rmac_vld_mcst_frms; | 145 | __le32 rmac_vld_mcst_frms; |
146 | u32 rmac_out_rng_len_err_frms; | 146 | __le32 rmac_out_rng_len_err_frms; |
147 | u32 rmac_in_rng_len_err_frms; | 147 | __le32 rmac_in_rng_len_err_frms; |
148 | u64 rmac_long_frms; | 148 | __le64 rmac_long_frms; |
149 | u64 rmac_pause_ctrl_frms; | 149 | __le64 rmac_pause_ctrl_frms; |
150 | u64 rmac_unsup_ctrl_frms; | 150 | __le64 rmac_unsup_ctrl_frms; |
151 | u32 rmac_accepted_ucst_frms; | 151 | __le32 rmac_accepted_ucst_frms; |
152 | u32 rmac_ttl_octets; | 152 | __le32 rmac_ttl_octets; |
153 | u32 rmac_discarded_frms; | 153 | __le32 rmac_discarded_frms; |
154 | u32 rmac_accepted_nucst_frms; | 154 | __le32 rmac_accepted_nucst_frms; |
155 | u32 reserved_1; | 155 | __le32 reserved_1; |
156 | u32 rmac_drop_events; | 156 | __le32 rmac_drop_events; |
157 | u64 rmac_ttl_less_fb_octets; | 157 | __le64 rmac_ttl_less_fb_octets; |
158 | u64 rmac_ttl_frms; | 158 | __le64 rmac_ttl_frms; |
159 | u64 reserved_2; | 159 | __le64 reserved_2; |
160 | u32 rmac_usized_frms; | 160 | __le32 rmac_usized_frms; |
161 | u32 reserved_3; | 161 | __le32 reserved_3; |
162 | u32 rmac_frag_frms; | 162 | __le32 rmac_frag_frms; |
163 | u32 rmac_osized_frms; | 163 | __le32 rmac_osized_frms; |
164 | u32 reserved_4; | 164 | __le32 reserved_4; |
165 | u32 rmac_jabber_frms; | 165 | __le32 rmac_jabber_frms; |
166 | u64 rmac_ttl_64_frms; | 166 | __le64 rmac_ttl_64_frms; |
167 | u64 rmac_ttl_65_127_frms; | 167 | __le64 rmac_ttl_65_127_frms; |
168 | u64 reserved_5; | 168 | __le64 reserved_5; |
169 | u64 rmac_ttl_128_255_frms; | 169 | __le64 rmac_ttl_128_255_frms; |
170 | u64 rmac_ttl_256_511_frms; | 170 | __le64 rmac_ttl_256_511_frms; |
171 | u64 reserved_6; | 171 | __le64 reserved_6; |
172 | u64 rmac_ttl_512_1023_frms; | 172 | __le64 rmac_ttl_512_1023_frms; |
173 | u64 rmac_ttl_1024_1518_frms; | 173 | __le64 rmac_ttl_1024_1518_frms; |
174 | u32 rmac_ip; | 174 | __le32 rmac_ip; |
175 | u32 reserved_7; | 175 | __le32 reserved_7; |
176 | u64 rmac_ip_octets; | 176 | __le64 rmac_ip_octets; |
177 | u32 rmac_drop_ip; | 177 | __le32 rmac_drop_ip; |
178 | u32 rmac_hdr_err_ip; | 178 | __le32 rmac_hdr_err_ip; |
179 | u32 reserved_8; | 179 | __le32 reserved_8; |
180 | u32 rmac_icmp; | 180 | __le32 rmac_icmp; |
181 | u64 rmac_tcp; | 181 | __le64 rmac_tcp; |
182 | u32 rmac_err_drp_udp; | 182 | __le32 rmac_err_drp_udp; |
183 | u32 rmac_udp; | 183 | __le32 rmac_udp; |
184 | u64 rmac_xgmii_err_sym; | 184 | __le64 rmac_xgmii_err_sym; |
185 | u64 rmac_frms_q0; | 185 | __le64 rmac_frms_q0; |
186 | u64 rmac_frms_q1; | 186 | __le64 rmac_frms_q1; |
187 | u64 rmac_frms_q2; | 187 | __le64 rmac_frms_q2; |
188 | u64 rmac_frms_q3; | 188 | __le64 rmac_frms_q3; |
189 | u64 rmac_frms_q4; | 189 | __le64 rmac_frms_q4; |
190 | u64 rmac_frms_q5; | 190 | __le64 rmac_frms_q5; |
191 | u64 rmac_frms_q6; | 191 | __le64 rmac_frms_q6; |
192 | u64 rmac_frms_q7; | 192 | __le64 rmac_frms_q7; |
193 | u16 rmac_full_q3; | 193 | __le16 rmac_full_q3; |
194 | u16 rmac_full_q2; | 194 | __le16 rmac_full_q2; |
195 | u16 rmac_full_q1; | 195 | __le16 rmac_full_q1; |
196 | u16 rmac_full_q0; | 196 | __le16 rmac_full_q0; |
197 | u16 rmac_full_q7; | 197 | __le16 rmac_full_q7; |
198 | u16 rmac_full_q6; | 198 | __le16 rmac_full_q6; |
199 | u16 rmac_full_q5; | 199 | __le16 rmac_full_q5; |
200 | u16 rmac_full_q4; | 200 | __le16 rmac_full_q4; |
201 | u32 reserved_9; | 201 | __le32 reserved_9; |
202 | u32 rmac_pause_cnt; | 202 | __le32 rmac_pause_cnt; |
203 | u64 rmac_xgmii_data_err_cnt; | 203 | __le64 rmac_xgmii_data_err_cnt; |
204 | u64 rmac_xgmii_ctrl_err_cnt; | 204 | __le64 rmac_xgmii_ctrl_err_cnt; |
205 | u32 rmac_err_tcp; | 205 | __le32 rmac_err_tcp; |
206 | u32 rmac_accepted_ip; | 206 | __le32 rmac_accepted_ip; |
207 | 207 | ||
208 | /* PCI/PCI-X Read transaction statistics. */ | 208 | /* PCI/PCI-X Read transaction statistics. */ |
209 | u32 new_rd_req_cnt; | 209 | __le32 new_rd_req_cnt; |
210 | u32 rd_req_cnt; | 210 | __le32 rd_req_cnt; |
211 | u32 rd_rtry_cnt; | 211 | __le32 rd_rtry_cnt; |
212 | u32 new_rd_req_rtry_cnt; | 212 | __le32 new_rd_req_rtry_cnt; |
213 | 213 | ||
214 | /* PCI/PCI-X Write/Read transaction statistics. */ | 214 | /* PCI/PCI-X Write/Read transaction statistics. */ |
215 | u32 wr_req_cnt; | 215 | __le32 wr_req_cnt; |
216 | u32 wr_rtry_rd_ack_cnt; | 216 | __le32 wr_rtry_rd_ack_cnt; |
217 | u32 new_wr_req_rtry_cnt; | 217 | __le32 new_wr_req_rtry_cnt; |
218 | u32 new_wr_req_cnt; | 218 | __le32 new_wr_req_cnt; |
219 | u32 wr_disc_cnt; | 219 | __le32 wr_disc_cnt; |
220 | u32 wr_rtry_cnt; | 220 | __le32 wr_rtry_cnt; |
221 | 221 | ||
222 | /* PCI/PCI-X Write / DMA Transaction statistics. */ | 222 | /* PCI/PCI-X Write / DMA Transaction statistics. */ |
223 | u32 txp_wr_cnt; | 223 | __le32 txp_wr_cnt; |
224 | u32 rd_rtry_wr_ack_cnt; | 224 | __le32 rd_rtry_wr_ack_cnt; |
225 | u32 txd_wr_cnt; | 225 | __le32 txd_wr_cnt; |
226 | u32 txd_rd_cnt; | 226 | __le32 txd_rd_cnt; |
227 | u32 rxd_wr_cnt; | 227 | __le32 rxd_wr_cnt; |
228 | u32 rxd_rd_cnt; | 228 | __le32 rxd_rd_cnt; |
229 | u32 rxf_wr_cnt; | 229 | __le32 rxf_wr_cnt; |
230 | u32 txf_rd_cnt; | 230 | __le32 txf_rd_cnt; |
231 | 231 | ||
232 | /* Tx MAC statistics overflow counters. */ | 232 | /* Tx MAC statistics overflow counters. */ |
233 | u32 tmac_data_octets_oflow; | 233 | __le32 tmac_data_octets_oflow; |
234 | u32 tmac_frms_oflow; | 234 | __le32 tmac_frms_oflow; |
235 | u32 tmac_bcst_frms_oflow; | 235 | __le32 tmac_bcst_frms_oflow; |
236 | u32 tmac_mcst_frms_oflow; | 236 | __le32 tmac_mcst_frms_oflow; |
237 | u32 tmac_ucst_frms_oflow; | 237 | __le32 tmac_ucst_frms_oflow; |
238 | u32 tmac_ttl_octets_oflow; | 238 | __le32 tmac_ttl_octets_oflow; |
239 | u32 tmac_any_err_frms_oflow; | 239 | __le32 tmac_any_err_frms_oflow; |
240 | u32 tmac_nucst_frms_oflow; | 240 | __le32 tmac_nucst_frms_oflow; |
241 | u64 tmac_vlan_frms; | 241 | __le64 tmac_vlan_frms; |
242 | u32 tmac_drop_ip_oflow; | 242 | __le32 tmac_drop_ip_oflow; |
243 | u32 tmac_vld_ip_oflow; | 243 | __le32 tmac_vld_ip_oflow; |
244 | u32 tmac_rst_tcp_oflow; | 244 | __le32 tmac_rst_tcp_oflow; |
245 | u32 tmac_icmp_oflow; | 245 | __le32 tmac_icmp_oflow; |
246 | u32 tpa_unknown_protocol; | 246 | __le32 tpa_unknown_protocol; |
247 | u32 tmac_udp_oflow; | 247 | __le32 tmac_udp_oflow; |
248 | u32 reserved_10; | 248 | __le32 reserved_10; |
249 | u32 tpa_parse_failure; | 249 | __le32 tpa_parse_failure; |
250 | 250 | ||
251 | /* Rx MAC Statistics overflow counters. */ | 251 | /* Rx MAC Statistics overflow counters. */ |
252 | u32 rmac_data_octets_oflow; | 252 | __le32 rmac_data_octets_oflow; |
253 | u32 rmac_vld_frms_oflow; | 253 | __le32 rmac_vld_frms_oflow; |
254 | u32 rmac_vld_bcst_frms_oflow; | 254 | __le32 rmac_vld_bcst_frms_oflow; |
255 | u32 rmac_vld_mcst_frms_oflow; | 255 | __le32 rmac_vld_mcst_frms_oflow; |
256 | u32 rmac_accepted_ucst_frms_oflow; | 256 | __le32 rmac_accepted_ucst_frms_oflow; |
257 | u32 rmac_ttl_octets_oflow; | 257 | __le32 rmac_ttl_octets_oflow; |
258 | u32 rmac_discarded_frms_oflow; | 258 | __le32 rmac_discarded_frms_oflow; |
259 | u32 rmac_accepted_nucst_frms_oflow; | 259 | __le32 rmac_accepted_nucst_frms_oflow; |
260 | u32 rmac_usized_frms_oflow; | 260 | __le32 rmac_usized_frms_oflow; |
261 | u32 rmac_drop_events_oflow; | 261 | __le32 rmac_drop_events_oflow; |
262 | u32 rmac_frag_frms_oflow; | 262 | __le32 rmac_frag_frms_oflow; |
263 | u32 rmac_osized_frms_oflow; | 263 | __le32 rmac_osized_frms_oflow; |
264 | u32 rmac_ip_oflow; | 264 | __le32 rmac_ip_oflow; |
265 | u32 rmac_jabber_frms_oflow; | 265 | __le32 rmac_jabber_frms_oflow; |
266 | u32 rmac_icmp_oflow; | 266 | __le32 rmac_icmp_oflow; |
267 | u32 rmac_drop_ip_oflow; | 267 | __le32 rmac_drop_ip_oflow; |
268 | u32 rmac_err_drp_udp_oflow; | 268 | __le32 rmac_err_drp_udp_oflow; |
269 | u32 rmac_udp_oflow; | 269 | __le32 rmac_udp_oflow; |
270 | u32 reserved_11; | 270 | __le32 reserved_11; |
271 | u32 rmac_pause_cnt_oflow; | 271 | __le32 rmac_pause_cnt_oflow; |
272 | u64 rmac_ttl_1519_4095_frms; | 272 | __le64 rmac_ttl_1519_4095_frms; |
273 | u64 rmac_ttl_4096_8191_frms; | 273 | __le64 rmac_ttl_4096_8191_frms; |
274 | u64 rmac_ttl_8192_max_frms; | 274 | __le64 rmac_ttl_8192_max_frms; |
275 | u64 rmac_ttl_gt_max_frms; | 275 | __le64 rmac_ttl_gt_max_frms; |
276 | u64 rmac_osized_alt_frms; | 276 | __le64 rmac_osized_alt_frms; |
277 | u64 rmac_jabber_alt_frms; | 277 | __le64 rmac_jabber_alt_frms; |
278 | u64 rmac_gt_max_alt_frms; | 278 | __le64 rmac_gt_max_alt_frms; |
279 | u64 rmac_vlan_frms; | 279 | __le64 rmac_vlan_frms; |
280 | u32 rmac_len_discard; | 280 | __le32 rmac_len_discard; |
281 | u32 rmac_fcs_discard; | 281 | __le32 rmac_fcs_discard; |
282 | u32 rmac_pf_discard; | 282 | __le32 rmac_pf_discard; |
283 | u32 rmac_da_discard; | 283 | __le32 rmac_da_discard; |
284 | u32 rmac_red_discard; | 284 | __le32 rmac_red_discard; |
285 | u32 rmac_rts_discard; | 285 | __le32 rmac_rts_discard; |
286 | u32 reserved_12; | 286 | __le32 reserved_12; |
287 | u32 rmac_ingm_full_discard; | 287 | __le32 rmac_ingm_full_discard; |
288 | u32 reserved_13; | 288 | __le32 reserved_13; |
289 | u32 rmac_accepted_ip_oflow; | 289 | __le32 rmac_accepted_ip_oflow; |
290 | u32 reserved_14; | 290 | __le32 reserved_14; |
291 | u32 link_fault_cnt; | 291 | __le32 link_fault_cnt; |
292 | u8 buffer[20]; | 292 | u8 buffer[20]; |
293 | swStat_t sw_stat; | 293 | swStat_t sw_stat; |
294 | xpakStat_t xpak_stat; | 294 | xpakStat_t xpak_stat; |
@@ -992,12 +992,12 @@ static void s2io_init_pci(nic_t * sp); | |||
992 | static int s2io_set_mac_addr(struct net_device *dev, u8 * addr); | 992 | static int s2io_set_mac_addr(struct net_device *dev, u8 * addr); |
993 | static void s2io_alarm_handle(unsigned long data); | 993 | static void s2io_alarm_handle(unsigned long data); |
994 | static int s2io_enable_msi(nic_t *nic); | 994 | static int s2io_enable_msi(nic_t *nic); |
995 | static irqreturn_t s2io_msi_handle(int irq, void *dev_id, struct pt_regs *regs); | 995 | static irqreturn_t s2io_msi_handle(int irq, void *dev_id); |
996 | static irqreturn_t | 996 | static irqreturn_t |
997 | s2io_msix_ring_handle(int irq, void *dev_id, struct pt_regs *regs); | 997 | s2io_msix_ring_handle(int irq, void *dev_id); |
998 | static irqreturn_t | 998 | static irqreturn_t |
999 | s2io_msix_fifo_handle(int irq, void *dev_id, struct pt_regs *regs); | 999 | s2io_msix_fifo_handle(int irq, void *dev_id); |
1000 | static irqreturn_t s2io_isr(int irq, void *dev_id, struct pt_regs *regs); | 1000 | static irqreturn_t s2io_isr(int irq, void *dev_id); |
1001 | static int verify_xena_quiescence(nic_t *sp, u64 val64, int flag); | 1001 | static int verify_xena_quiescence(nic_t *sp, u64 val64, int flag); |
1002 | static const struct ethtool_ops netdev_ethtool_ops; | 1002 | static const struct ethtool_ops netdev_ethtool_ops; |
1003 | static void s2io_set_link(unsigned long data); | 1003 | static void s2io_set_link(unsigned long data); |
diff --git a/drivers/net/saa9730.c b/drivers/net/saa9730.c index c479b07be788..b269513cde45 100644 --- a/drivers/net/saa9730.c +++ b/drivers/net/saa9730.c | |||
@@ -745,10 +745,9 @@ static int lan_saa9730_rx(struct net_device *dev) | |||
745 | return 0; | 745 | return 0; |
746 | } | 746 | } |
747 | 747 | ||
748 | static irqreturn_t lan_saa9730_interrupt(const int irq, void *dev_id, | 748 | static irqreturn_t lan_saa9730_interrupt(const int irq, void *dev_id) |
749 | struct pt_regs *regs) | ||
750 | { | 749 | { |
751 | struct net_device *dev = (struct net_device *) dev_id; | 750 | struct net_device *dev = dev_id; |
752 | struct lan_saa9730_private *lp = netdev_priv(dev); | 751 | struct lan_saa9730_private *lp = netdev_priv(dev); |
753 | 752 | ||
754 | if (lan_saa9730_debug > 5) | 753 | if (lan_saa9730_debug > 5) |
diff --git a/drivers/net/sb1000.c b/drivers/net/sb1000.c index a1789ae59278..b9fa4fbb1398 100644 --- a/drivers/net/sb1000.c +++ b/drivers/net/sb1000.c | |||
@@ -84,7 +84,7 @@ extern int sb1000_probe(struct net_device *dev); | |||
84 | static int sb1000_open(struct net_device *dev); | 84 | static int sb1000_open(struct net_device *dev); |
85 | static int sb1000_dev_ioctl (struct net_device *dev, struct ifreq *ifr, int cmd); | 85 | static int sb1000_dev_ioctl (struct net_device *dev, struct ifreq *ifr, int cmd); |
86 | static int sb1000_start_xmit(struct sk_buff *skb, struct net_device *dev); | 86 | static int sb1000_start_xmit(struct sk_buff *skb, struct net_device *dev); |
87 | static irqreturn_t sb1000_interrupt(int irq, void *dev_id, struct pt_regs *regs); | 87 | static irqreturn_t sb1000_interrupt(int irq, void *dev_id); |
88 | static struct net_device_stats *sb1000_stats(struct net_device *dev); | 88 | static struct net_device_stats *sb1000_stats(struct net_device *dev); |
89 | static int sb1000_close(struct net_device *dev); | 89 | static int sb1000_close(struct net_device *dev); |
90 | 90 | ||
@@ -1079,24 +1079,18 @@ sb1000_start_xmit(struct sk_buff *skb, struct net_device *dev) | |||
1079 | } | 1079 | } |
1080 | 1080 | ||
1081 | /* SB1000 interrupt handler. */ | 1081 | /* SB1000 interrupt handler. */ |
1082 | static irqreturn_t sb1000_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 1082 | static irqreturn_t sb1000_interrupt(int irq, void *dev_id) |
1083 | { | 1083 | { |
1084 | char *name; | 1084 | char *name; |
1085 | unsigned char st; | 1085 | unsigned char st; |
1086 | int ioaddr[2]; | 1086 | int ioaddr[2]; |
1087 | struct net_device *dev = (struct net_device *) dev_id; | 1087 | struct net_device *dev = dev_id; |
1088 | struct sb1000_private *lp = netdev_priv(dev); | 1088 | struct sb1000_private *lp = netdev_priv(dev); |
1089 | 1089 | ||
1090 | const unsigned char Command0[6] = {0x80, 0x2c, 0x00, 0x00, 0x00, 0x00}; | 1090 | const unsigned char Command0[6] = {0x80, 0x2c, 0x00, 0x00, 0x00, 0x00}; |
1091 | const unsigned char Command1[6] = {0x80, 0x2e, 0x00, 0x00, 0x00, 0x00}; | 1091 | const unsigned char Command1[6] = {0x80, 0x2e, 0x00, 0x00, 0x00, 0x00}; |
1092 | const int MaxRxErrorCount = 6; | 1092 | const int MaxRxErrorCount = 6; |
1093 | 1093 | ||
1094 | if (dev == NULL) { | ||
1095 | printk(KERN_ERR "sb1000_interrupt(): irq %d for unknown device.\n", | ||
1096 | irq); | ||
1097 | return IRQ_NONE; | ||
1098 | } | ||
1099 | |||
1100 | ioaddr[0] = dev->base_addr; | 1094 | ioaddr[0] = dev->base_addr; |
1101 | /* mem_start holds the second I/O address */ | 1095 | /* mem_start holds the second I/O address */ |
1102 | ioaddr[1] = dev->mem_start; | 1096 | ioaddr[1] = dev->mem_start; |
diff --git a/drivers/net/sb1250-mac.c b/drivers/net/sb1250-mac.c index e4c8896b76cb..db2324939b69 100644 --- a/drivers/net/sb1250-mac.c +++ b/drivers/net/sb1250-mac.c | |||
@@ -294,7 +294,7 @@ static void sbmac_channel_stop(struct sbmac_softc *s); | |||
294 | static sbmac_state_t sbmac_set_channel_state(struct sbmac_softc *,sbmac_state_t); | 294 | static sbmac_state_t sbmac_set_channel_state(struct sbmac_softc *,sbmac_state_t); |
295 | static void sbmac_promiscuous_mode(struct sbmac_softc *sc,int onoff); | 295 | static void sbmac_promiscuous_mode(struct sbmac_softc *sc,int onoff); |
296 | static uint64_t sbmac_addr2reg(unsigned char *ptr); | 296 | static uint64_t sbmac_addr2reg(unsigned char *ptr); |
297 | static irqreturn_t sbmac_intr(int irq,void *dev_instance,struct pt_regs *rgs); | 297 | static irqreturn_t sbmac_intr(int irq,void *dev_instance); |
298 | static int sbmac_start_tx(struct sk_buff *skb, struct net_device *dev); | 298 | static int sbmac_start_tx(struct sk_buff *skb, struct net_device *dev); |
299 | static void sbmac_setmulti(struct sbmac_softc *sc); | 299 | static void sbmac_setmulti(struct sbmac_softc *sc); |
300 | static int sbmac_init(struct net_device *dev, int idx); | 300 | static int sbmac_init(struct net_device *dev, int idx); |
@@ -2049,7 +2049,7 @@ static int sbmac_set_duplex(struct sbmac_softc *s,sbmac_duplex_t duplex,sbmac_fc | |||
2049 | * Return value: | 2049 | * Return value: |
2050 | * nothing | 2050 | * nothing |
2051 | ********************************************************************* */ | 2051 | ********************************************************************* */ |
2052 | static irqreturn_t sbmac_intr(int irq,void *dev_instance,struct pt_regs *rgs) | 2052 | static irqreturn_t sbmac_intr(int irq,void *dev_instance) |
2053 | { | 2053 | { |
2054 | struct net_device *dev = (struct net_device *) dev_instance; | 2054 | struct net_device *dev = (struct net_device *) dev_instance; |
2055 | struct sbmac_softc *sc = netdev_priv(dev); | 2055 | struct sbmac_softc *sc = netdev_priv(dev); |
diff --git a/drivers/net/seeq8005.c b/drivers/net/seeq8005.c index 20afdc7f2b97..d9d0a3a3c558 100644 --- a/drivers/net/seeq8005.c +++ b/drivers/net/seeq8005.c | |||
@@ -83,7 +83,7 @@ static int seeq8005_probe1(struct net_device *dev, int ioaddr); | |||
83 | static int seeq8005_open(struct net_device *dev); | 83 | static int seeq8005_open(struct net_device *dev); |
84 | static void seeq8005_timeout(struct net_device *dev); | 84 | static void seeq8005_timeout(struct net_device *dev); |
85 | static int seeq8005_send_packet(struct sk_buff *skb, struct net_device *dev); | 85 | static int seeq8005_send_packet(struct sk_buff *skb, struct net_device *dev); |
86 | static irqreturn_t seeq8005_interrupt(int irq, void *dev_id, struct pt_regs *regs); | 86 | static irqreturn_t seeq8005_interrupt(int irq, void *dev_id); |
87 | static void seeq8005_rx(struct net_device *dev); | 87 | static void seeq8005_rx(struct net_device *dev); |
88 | static int seeq8005_close(struct net_device *dev); | 88 | static int seeq8005_close(struct net_device *dev); |
89 | static struct net_device_stats *seeq8005_get_stats(struct net_device *dev); | 89 | static struct net_device_stats *seeq8005_get_stats(struct net_device *dev); |
@@ -437,7 +437,7 @@ inline void wait_for_buffer(struct net_device * dev) | |||
437 | 437 | ||
438 | /* The typical workload of the driver: | 438 | /* The typical workload of the driver: |
439 | Handle the network interface interrupts. */ | 439 | Handle the network interface interrupts. */ |
440 | static irqreturn_t seeq8005_interrupt(int irq, void *dev_id, struct pt_regs * regs) | 440 | static irqreturn_t seeq8005_interrupt(int irq, void *dev_id) |
441 | { | 441 | { |
442 | struct net_device *dev = dev_id; | 442 | struct net_device *dev = dev_id; |
443 | struct net_local *lp; | 443 | struct net_local *lp; |
diff --git a/drivers/net/sgiseeq.c b/drivers/net/sgiseeq.c index f95a5b0223fb..a833e7f9757f 100644 --- a/drivers/net/sgiseeq.c +++ b/drivers/net/sgiseeq.c | |||
@@ -432,7 +432,7 @@ static inline void sgiseeq_tx(struct net_device *dev, struct sgiseeq_private *sp | |||
432 | } | 432 | } |
433 | } | 433 | } |
434 | 434 | ||
435 | static irqreturn_t sgiseeq_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 435 | static irqreturn_t sgiseeq_interrupt(int irq, void *dev_id) |
436 | { | 436 | { |
437 | struct net_device *dev = (struct net_device *) dev_id; | 437 | struct net_device *dev = (struct net_device *) dev_id; |
438 | struct sgiseeq_private *sp = netdev_priv(dev); | 438 | struct sgiseeq_private *sp = netdev_priv(dev); |
diff --git a/drivers/net/sis190.c b/drivers/net/sis190.c index e8f26b79bbaf..aaba458584fb 100644 --- a/drivers/net/sis190.c +++ b/drivers/net/sis190.c | |||
@@ -713,7 +713,7 @@ static void sis190_tx_interrupt(struct net_device *dev, | |||
713 | * The interrupt handler does all of the Rx thread work and cleans up after | 713 | * The interrupt handler does all of the Rx thread work and cleans up after |
714 | * the Tx thread. | 714 | * the Tx thread. |
715 | */ | 715 | */ |
716 | static irqreturn_t sis190_interrupt(int irq, void *__dev, struct pt_regs *regs) | 716 | static irqreturn_t sis190_interrupt(int irq, void *__dev) |
717 | { | 717 | { |
718 | struct net_device *dev = __dev; | 718 | struct net_device *dev = __dev; |
719 | struct sis190_private *tp = netdev_priv(dev); | 719 | struct sis190_private *tp = netdev_priv(dev); |
@@ -758,7 +758,7 @@ static void sis190_netpoll(struct net_device *dev) | |||
758 | struct pci_dev *pdev = tp->pci_dev; | 758 | struct pci_dev *pdev = tp->pci_dev; |
759 | 759 | ||
760 | disable_irq(pdev->irq); | 760 | disable_irq(pdev->irq); |
761 | sis190_interrupt(pdev->irq, dev, NULL); | 761 | sis190_interrupt(pdev->irq, dev); |
762 | enable_irq(pdev->irq); | 762 | enable_irq(pdev->irq); |
763 | } | 763 | } |
764 | #endif | 764 | #endif |
diff --git a/drivers/net/sis900.c b/drivers/net/sis900.c index 28606e20df1c..fb2b53051635 100644 --- a/drivers/net/sis900.c +++ b/drivers/net/sis900.c | |||
@@ -218,7 +218,7 @@ static void sis900_init_rx_ring(struct net_device *net_dev); | |||
218 | static int sis900_start_xmit(struct sk_buff *skb, struct net_device *net_dev); | 218 | static int sis900_start_xmit(struct sk_buff *skb, struct net_device *net_dev); |
219 | static int sis900_rx(struct net_device *net_dev); | 219 | static int sis900_rx(struct net_device *net_dev); |
220 | static void sis900_finish_xmit (struct net_device *net_dev); | 220 | static void sis900_finish_xmit (struct net_device *net_dev); |
221 | static irqreturn_t sis900_interrupt(int irq, void *dev_instance, struct pt_regs *regs); | 221 | static irqreturn_t sis900_interrupt(int irq, void *dev_instance); |
222 | static int sis900_close(struct net_device *net_dev); | 222 | static int sis900_close(struct net_device *net_dev); |
223 | static int mii_ioctl(struct net_device *net_dev, struct ifreq *rq, int cmd); | 223 | static int mii_ioctl(struct net_device *net_dev, struct ifreq *rq, int cmd); |
224 | static struct net_device_stats *sis900_get_stats(struct net_device *net_dev); | 224 | static struct net_device_stats *sis900_get_stats(struct net_device *net_dev); |
@@ -988,7 +988,7 @@ static u16 sis900_reset_phy(struct net_device *net_dev, int phy_addr) | |||
988 | static void sis900_poll(struct net_device *dev) | 988 | static void sis900_poll(struct net_device *dev) |
989 | { | 989 | { |
990 | disable_irq(dev->irq); | 990 | disable_irq(dev->irq); |
991 | sis900_interrupt(dev->irq, dev, NULL); | 991 | sis900_interrupt(dev->irq, dev); |
992 | enable_irq(dev->irq); | 992 | enable_irq(dev->irq); |
993 | } | 993 | } |
994 | #endif | 994 | #endif |
@@ -1642,7 +1642,7 @@ sis900_start_xmit(struct sk_buff *skb, struct net_device *net_dev) | |||
1642 | * and cleans up after the Tx thread | 1642 | * and cleans up after the Tx thread |
1643 | */ | 1643 | */ |
1644 | 1644 | ||
1645 | static irqreturn_t sis900_interrupt(int irq, void *dev_instance, struct pt_regs *regs) | 1645 | static irqreturn_t sis900_interrupt(int irq, void *dev_instance) |
1646 | { | 1646 | { |
1647 | struct net_device *net_dev = dev_instance; | 1647 | struct net_device *net_dev = dev_instance; |
1648 | struct sis900_private *sis_priv = net_dev->priv; | 1648 | struct sis900_private *sis_priv = net_dev->priv; |
diff --git a/drivers/net/sk98lin/skge.c b/drivers/net/sk98lin/skge.c index 99e92627642c..d4913c3de2a1 100644 --- a/drivers/net/sk98lin/skge.c +++ b/drivers/net/sk98lin/skge.c | |||
@@ -196,8 +196,8 @@ static SK_BOOL BoardAllocMem(SK_AC *pAC); | |||
196 | static void BoardFreeMem(SK_AC *pAC); | 196 | static void BoardFreeMem(SK_AC *pAC); |
197 | static void BoardInitMem(SK_AC *pAC); | 197 | static void BoardInitMem(SK_AC *pAC); |
198 | static void SetupRing(SK_AC*, void*, uintptr_t, RXD**, RXD**, RXD**, int*, SK_BOOL); | 198 | static void SetupRing(SK_AC*, void*, uintptr_t, RXD**, RXD**, RXD**, int*, SK_BOOL); |
199 | static SkIsrRetVar SkGeIsr(int irq, void *dev_id, struct pt_regs *ptregs); | 199 | static SkIsrRetVar SkGeIsr(int irq, void *dev_id); |
200 | static SkIsrRetVar SkGeIsrOnePort(int irq, void *dev_id, struct pt_regs *ptregs); | 200 | static SkIsrRetVar SkGeIsrOnePort(int irq, void *dev_id); |
201 | static int SkGeOpen(struct SK_NET_DEVICE *dev); | 201 | static int SkGeOpen(struct SK_NET_DEVICE *dev); |
202 | static int SkGeClose(struct SK_NET_DEVICE *dev); | 202 | static int SkGeClose(struct SK_NET_DEVICE *dev); |
203 | static int SkGeXmit(struct sk_buff *skb, struct SK_NET_DEVICE *dev); | 203 | static int SkGeXmit(struct sk_buff *skb, struct SK_NET_DEVICE *dev); |
@@ -880,7 +880,7 @@ int PortIndex) /* index of the port for which to re-init */ | |||
880 | * Returns: N/A | 880 | * Returns: N/A |
881 | * | 881 | * |
882 | */ | 882 | */ |
883 | static SkIsrRetVar SkGeIsr(int irq, void *dev_id, struct pt_regs *ptregs) | 883 | static SkIsrRetVar SkGeIsr(int irq, void *dev_id) |
884 | { | 884 | { |
885 | struct SK_NET_DEVICE *dev = (struct SK_NET_DEVICE *)dev_id; | 885 | struct SK_NET_DEVICE *dev = (struct SK_NET_DEVICE *)dev_id; |
886 | DEV_NET *pNet; | 886 | DEV_NET *pNet; |
@@ -1029,7 +1029,7 @@ SK_U32 IntSrc; /* interrupts source register contents */ | |||
1029 | * Returns: N/A | 1029 | * Returns: N/A |
1030 | * | 1030 | * |
1031 | */ | 1031 | */ |
1032 | static SkIsrRetVar SkGeIsrOnePort(int irq, void *dev_id, struct pt_regs *ptregs) | 1032 | static SkIsrRetVar SkGeIsrOnePort(int irq, void *dev_id) |
1033 | { | 1033 | { |
1034 | struct SK_NET_DEVICE *dev = (struct SK_NET_DEVICE *)dev_id; | 1034 | struct SK_NET_DEVICE *dev = (struct SK_NET_DEVICE *)dev_id; |
1035 | DEV_NET *pNet; | 1035 | DEV_NET *pNet; |
@@ -1140,7 +1140,7 @@ SK_U32 IntSrc; /* interrupts source register contents */ | |||
1140 | static void SkGePollController(struct net_device *dev) | 1140 | static void SkGePollController(struct net_device *dev) |
1141 | { | 1141 | { |
1142 | disable_irq(dev->irq); | 1142 | disable_irq(dev->irq); |
1143 | SkGeIsr(dev->irq, dev, NULL); | 1143 | SkGeIsr(dev->irq, dev); |
1144 | enable_irq(dev->irq); | 1144 | enable_irq(dev->irq); |
1145 | } | 1145 | } |
1146 | #endif | 1146 | #endif |
diff --git a/drivers/net/sk_mca.c b/drivers/net/sk_mca.c index 37b88da1abe5..96e06c51b75d 100644 --- a/drivers/net/sk_mca.c +++ b/drivers/net/sk_mca.c | |||
@@ -732,7 +732,7 @@ static u16 irqtx_handler(struct net_device *dev, u16 oldcsr0) | |||
732 | 732 | ||
733 | /* general interrupt entry */ | 733 | /* general interrupt entry */ |
734 | 734 | ||
735 | static irqreturn_t irq_handler(int irq, void *device, struct pt_regs *regs) | 735 | static irqreturn_t irq_handler(int irq, void *device) |
736 | { | 736 | { |
737 | struct net_device *dev = (struct net_device *) device; | 737 | struct net_device *dev = (struct net_device *) device; |
738 | u16 csr0val; | 738 | u16 csr0val; |
diff --git a/drivers/net/skfp/skfddi.c b/drivers/net/skfp/skfddi.c index 8e4d18440a56..9733a11c6146 100644 --- a/drivers/net/skfp/skfddi.c +++ b/drivers/net/skfp/skfddi.c | |||
@@ -101,7 +101,7 @@ static const char * const boot_msg = | |||
101 | static int skfp_driver_init(struct net_device *dev); | 101 | static int skfp_driver_init(struct net_device *dev); |
102 | static int skfp_open(struct net_device *dev); | 102 | static int skfp_open(struct net_device *dev); |
103 | static int skfp_close(struct net_device *dev); | 103 | static int skfp_close(struct net_device *dev); |
104 | static irqreturn_t skfp_interrupt(int irq, void *dev_id, struct pt_regs *regs); | 104 | static irqreturn_t skfp_interrupt(int irq, void *dev_id); |
105 | static struct net_device_stats *skfp_ctl_get_stats(struct net_device *dev); | 105 | static struct net_device_stats *skfp_ctl_get_stats(struct net_device *dev); |
106 | static void skfp_ctl_set_multicast_list(struct net_device *dev); | 106 | static void skfp_ctl_set_multicast_list(struct net_device *dev); |
107 | static void skfp_ctl_set_multicast_list_wo_lock(struct net_device *dev); | 107 | static void skfp_ctl_set_multicast_list_wo_lock(struct net_device *dev); |
@@ -593,7 +593,6 @@ static int skfp_close(struct net_device *dev) | |||
593 | * Arguments: | 593 | * Arguments: |
594 | * irq - interrupt vector | 594 | * irq - interrupt vector |
595 | * dev_id - pointer to device information | 595 | * dev_id - pointer to device information |
596 | * regs - pointer to registers structure | ||
597 | * | 596 | * |
598 | * Functional Description: | 597 | * Functional Description: |
599 | * This routine calls the interrupt processing routine for this adapter. It | 598 | * This routine calls the interrupt processing routine for this adapter. It |
@@ -615,17 +614,12 @@ static int skfp_close(struct net_device *dev) | |||
615 | * Interrupts are disabled, then reenabled at the adapter. | 614 | * Interrupts are disabled, then reenabled at the adapter. |
616 | */ | 615 | */ |
617 | 616 | ||
618 | irqreturn_t skfp_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 617 | irqreturn_t skfp_interrupt(int irq, void *dev_id) |
619 | { | 618 | { |
620 | struct net_device *dev = (struct net_device *) dev_id; | 619 | struct net_device *dev = dev_id; |
621 | struct s_smc *smc; /* private board structure pointer */ | 620 | struct s_smc *smc; /* private board structure pointer */ |
622 | skfddi_priv *bp; | 621 | skfddi_priv *bp; |
623 | 622 | ||
624 | if (dev == NULL) { | ||
625 | printk("%s: irq %d for unknown device\n", dev->name, irq); | ||
626 | return IRQ_NONE; | ||
627 | } | ||
628 | |||
629 | smc = netdev_priv(dev); | 623 | smc = netdev_priv(dev); |
630 | bp = &smc->os; | 624 | bp = &smc->os; |
631 | 625 | ||
diff --git a/drivers/net/skge.c b/drivers/net/skge.c index 705e9a8fa30f..a4a58e4e93a1 100644 --- a/drivers/net/skge.c +++ b/drivers/net/skge.c | |||
@@ -3051,7 +3051,7 @@ static void skge_extirq(void *arg) | |||
3051 | spin_unlock_irq(&hw->hw_lock); | 3051 | spin_unlock_irq(&hw->hw_lock); |
3052 | } | 3052 | } |
3053 | 3053 | ||
3054 | static irqreturn_t skge_intr(int irq, void *dev_id, struct pt_regs *regs) | 3054 | static irqreturn_t skge_intr(int irq, void *dev_id) |
3055 | { | 3055 | { |
3056 | struct skge_hw *hw = dev_id; | 3056 | struct skge_hw *hw = dev_id; |
3057 | u32 status; | 3057 | u32 status; |
@@ -3125,7 +3125,7 @@ static void skge_netpoll(struct net_device *dev) | |||
3125 | struct skge_port *skge = netdev_priv(dev); | 3125 | struct skge_port *skge = netdev_priv(dev); |
3126 | 3126 | ||
3127 | disable_irq(dev->irq); | 3127 | disable_irq(dev->irq); |
3128 | skge_intr(dev->irq, skge->hw, NULL); | 3128 | skge_intr(dev->irq, skge->hw); |
3129 | enable_irq(dev->irq); | 3129 | enable_irq(dev->irq); |
3130 | } | 3130 | } |
3131 | #endif | 3131 | #endif |
diff --git a/drivers/net/sky2.c b/drivers/net/sky2.c index 68515150ff3b..5a5289b7a885 100644 --- a/drivers/net/sky2.c +++ b/drivers/net/sky2.c | |||
@@ -2364,7 +2364,7 @@ static int sky2_poll(struct net_device *dev0, int *budget) | |||
2364 | } | 2364 | } |
2365 | } | 2365 | } |
2366 | 2366 | ||
2367 | static irqreturn_t sky2_intr(int irq, void *dev_id, struct pt_regs *regs) | 2367 | static irqreturn_t sky2_intr(int irq, void *dev_id) |
2368 | { | 2368 | { |
2369 | struct sky2_hw *hw = dev_id; | 2369 | struct sky2_hw *hw = dev_id; |
2370 | struct net_device *dev0 = hw->dev[0]; | 2370 | struct net_device *dev0 = hw->dev[0]; |
@@ -3298,8 +3298,7 @@ static void __devinit sky2_show_addr(struct net_device *dev) | |||
3298 | } | 3298 | } |
3299 | 3299 | ||
3300 | /* Handle software interrupt used during MSI test */ | 3300 | /* Handle software interrupt used during MSI test */ |
3301 | static irqreturn_t __devinit sky2_test_intr(int irq, void *dev_id, | 3301 | static irqreturn_t __devinit sky2_test_intr(int irq, void *dev_id) |
3302 | struct pt_regs *regs) | ||
3303 | { | 3302 | { |
3304 | struct sky2_hw *hw = dev_id; | 3303 | struct sky2_hw *hw = dev_id; |
3305 | u32 status = sky2_read32(hw, B0_Y2_SP_ISRC2); | 3304 | u32 status = sky2_read32(hw, B0_Y2_SP_ISRC2); |
diff --git a/drivers/net/smc-ultra.c b/drivers/net/smc-ultra.c index 7986514883ac..889ef0d7c374 100644 --- a/drivers/net/smc-ultra.c +++ b/drivers/net/smc-ultra.c | |||
@@ -127,7 +127,7 @@ MODULE_DEVICE_TABLE(isapnp, ultra_device_ids); | |||
127 | static void ultra_poll(struct net_device *dev) | 127 | static void ultra_poll(struct net_device *dev) |
128 | { | 128 | { |
129 | disable_irq(dev->irq); | 129 | disable_irq(dev->irq); |
130 | ei_interrupt(dev->irq, dev, NULL); | 130 | ei_interrupt(dev->irq, dev); |
131 | enable_irq(dev->irq); | 131 | enable_irq(dev->irq); |
132 | } | 132 | } |
133 | #endif | 133 | #endif |
diff --git a/drivers/net/smc911x.c b/drivers/net/smc911x.c index a621b17456e5..2c4343395a4d 100644 --- a/drivers/net/smc911x.c +++ b/drivers/net/smc911x.c | |||
@@ -1074,7 +1074,7 @@ static void smc911x_phy_interrupt(struct net_device *dev) | |||
1074 | * This is the main routine of the driver, to handle the device when | 1074 | * This is the main routine of the driver, to handle the device when |
1075 | * it needs some attention. | 1075 | * it needs some attention. |
1076 | */ | 1076 | */ |
1077 | static irqreturn_t smc911x_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 1077 | static irqreturn_t smc911x_interrupt(int irq, void *dev_id) |
1078 | { | 1078 | { |
1079 | struct net_device *dev = dev_id; | 1079 | struct net_device *dev = dev_id; |
1080 | unsigned long ioaddr = dev->base_addr; | 1080 | unsigned long ioaddr = dev->base_addr; |
@@ -1251,7 +1251,7 @@ static irqreturn_t smc911x_interrupt(int irq, void *dev_id, struct pt_regs *regs | |||
1251 | 1251 | ||
1252 | #ifdef SMC_USE_DMA | 1252 | #ifdef SMC_USE_DMA |
1253 | static void | 1253 | static void |
1254 | smc911x_tx_dma_irq(int dma, void *data, struct pt_regs *regs) | 1254 | smc911x_tx_dma_irq(int dma, void *data) |
1255 | { | 1255 | { |
1256 | struct net_device *dev = (struct net_device *)data; | 1256 | struct net_device *dev = (struct net_device *)data; |
1257 | struct smc911x_local *lp = netdev_priv(dev); | 1257 | struct smc911x_local *lp = netdev_priv(dev); |
@@ -1285,7 +1285,7 @@ smc911x_tx_dma_irq(int dma, void *data, struct pt_regs *regs) | |||
1285 | "%s: TX DMA irq completed\n", dev->name); | 1285 | "%s: TX DMA irq completed\n", dev->name); |
1286 | } | 1286 | } |
1287 | static void | 1287 | static void |
1288 | smc911x_rx_dma_irq(int dma, void *data, struct pt_regs *regs) | 1288 | smc911x_rx_dma_irq(int dma, void *data) |
1289 | { | 1289 | { |
1290 | struct net_device *dev = (struct net_device *)data; | 1290 | struct net_device *dev = (struct net_device *)data; |
1291 | unsigned long ioaddr = dev->base_addr; | 1291 | unsigned long ioaddr = dev->base_addr; |
diff --git a/drivers/net/smc9194.c b/drivers/net/smc9194.c index 5506a0d3efe2..c0d13d650913 100644 --- a/drivers/net/smc9194.c +++ b/drivers/net/smc9194.c | |||
@@ -270,7 +270,7 @@ static void smc_set_multicast_list(struct net_device *dev); | |||
270 | /* | 270 | /* |
271 | . Handles the actual interrupt | 271 | . Handles the actual interrupt |
272 | */ | 272 | */ |
273 | static irqreturn_t smc_interrupt(int irq, void *, struct pt_regs *regs); | 273 | static irqreturn_t smc_interrupt(int irq, void *); |
274 | /* | 274 | /* |
275 | . This is a separate procedure to handle the receipt of a packet, to | 275 | . This is a separate procedure to handle the receipt of a packet, to |
276 | . leave the interrupt code looking slightly cleaner | 276 | . leave the interrupt code looking slightly cleaner |
@@ -1391,7 +1391,7 @@ static void smc_tx( struct net_device * dev ) | |||
1391 | . | 1391 | . |
1392 | ---------------------------------------------------------------------*/ | 1392 | ---------------------------------------------------------------------*/ |
1393 | 1393 | ||
1394 | static irqreturn_t smc_interrupt(int irq, void * dev_id, struct pt_regs * regs) | 1394 | static irqreturn_t smc_interrupt(int irq, void * dev_id) |
1395 | { | 1395 | { |
1396 | struct net_device *dev = dev_id; | 1396 | struct net_device *dev = dev_id; |
1397 | int ioaddr = dev->base_addr; | 1397 | int ioaddr = dev->base_addr; |
diff --git a/drivers/net/smc91x.c b/drivers/net/smc91x.c index d7e56438b5d6..95b6478f55c6 100644 --- a/drivers/net/smc91x.c +++ b/drivers/net/smc91x.c | |||
@@ -1284,7 +1284,7 @@ static void smc_eph_interrupt(struct net_device *dev) | |||
1284 | * This is the main routine of the driver, to handle the device when | 1284 | * This is the main routine of the driver, to handle the device when |
1285 | * it needs some attention. | 1285 | * it needs some attention. |
1286 | */ | 1286 | */ |
1287 | static irqreturn_t smc_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 1287 | static irqreturn_t smc_interrupt(int irq, void *dev_id) |
1288 | { | 1288 | { |
1289 | struct net_device *dev = dev_id; | 1289 | struct net_device *dev = dev_id; |
1290 | struct smc_local *lp = netdev_priv(dev); | 1290 | struct smc_local *lp = netdev_priv(dev); |
@@ -1400,7 +1400,7 @@ static irqreturn_t smc_interrupt(int irq, void *dev_id, struct pt_regs *regs) | |||
1400 | static void smc_poll_controller(struct net_device *dev) | 1400 | static void smc_poll_controller(struct net_device *dev) |
1401 | { | 1401 | { |
1402 | disable_irq(dev->irq); | 1402 | disable_irq(dev->irq); |
1403 | smc_interrupt(dev->irq, dev, NULL); | 1403 | smc_interrupt(dev->irq, dev); |
1404 | enable_irq(dev->irq); | 1404 | enable_irq(dev->irq); |
1405 | } | 1405 | } |
1406 | #endif | 1406 | #endif |
diff --git a/drivers/net/smc91x.h b/drivers/net/smc91x.h index fedd1a37bc3e..636dbfcdf8cb 100644 --- a/drivers/net/smc91x.h +++ b/drivers/net/smc91x.h | |||
@@ -507,7 +507,7 @@ smc_pxa_dma_insw(void __iomem *ioaddr, u_long physaddr, int reg, int dma, | |||
507 | #endif | 507 | #endif |
508 | 508 | ||
509 | static void | 509 | static void |
510 | smc_pxa_dma_irq(int dma, void *dummy, struct pt_regs *regs) | 510 | smc_pxa_dma_irq(int dma, void *dummy) |
511 | { | 511 | { |
512 | DCSR(dma) = 0; | 512 | DCSR(dma) = 0; |
513 | } | 513 | } |
diff --git a/drivers/net/sonic.c b/drivers/net/sonic.c index 870cf6b07389..ed7aa0a5acca 100644 --- a/drivers/net/sonic.c +++ b/drivers/net/sonic.c | |||
@@ -293,17 +293,12 @@ static int sonic_send_packet(struct sk_buff *skb, struct net_device *dev) | |||
293 | * The typical workload of the driver: | 293 | * The typical workload of the driver: |
294 | * Handle the network interface interrupts. | 294 | * Handle the network interface interrupts. |
295 | */ | 295 | */ |
296 | static irqreturn_t sonic_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 296 | static irqreturn_t sonic_interrupt(int irq, void *dev_id) |
297 | { | 297 | { |
298 | struct net_device *dev = (struct net_device *) dev_id; | 298 | struct net_device *dev = dev_id; |
299 | struct sonic_local *lp = netdev_priv(dev); | 299 | struct sonic_local *lp = netdev_priv(dev); |
300 | int status; | 300 | int status; |
301 | 301 | ||
302 | if (dev == NULL) { | ||
303 | printk(KERN_ERR "sonic_interrupt: irq %d for unknown device.\n", irq); | ||
304 | return IRQ_NONE; | ||
305 | } | ||
306 | |||
307 | if (!(status = SONIC_READ(SONIC_ISR) & SONIC_IMR_DEFAULT)) | 302 | if (!(status = SONIC_READ(SONIC_ISR) & SONIC_IMR_DEFAULT)) |
308 | return IRQ_NONE; | 303 | return IRQ_NONE; |
309 | 304 | ||
diff --git a/drivers/net/sonic.h b/drivers/net/sonic.h index 7f886e8ae28f..7db13e4a7ea5 100644 --- a/drivers/net/sonic.h +++ b/drivers/net/sonic.h | |||
@@ -328,7 +328,7 @@ struct sonic_local { | |||
328 | 328 | ||
329 | static int sonic_open(struct net_device *dev); | 329 | static int sonic_open(struct net_device *dev); |
330 | static int sonic_send_packet(struct sk_buff *skb, struct net_device *dev); | 330 | static int sonic_send_packet(struct sk_buff *skb, struct net_device *dev); |
331 | static irqreturn_t sonic_interrupt(int irq, void *dev_id, struct pt_regs *regs); | 331 | static irqreturn_t sonic_interrupt(int irq, void *dev_id); |
332 | static void sonic_rx(struct net_device *dev); | 332 | static void sonic_rx(struct net_device *dev); |
333 | static int sonic_close(struct net_device *dev); | 333 | static int sonic_close(struct net_device *dev); |
334 | static struct net_device_stats *sonic_get_stats(struct net_device *dev); | 334 | static struct net_device_stats *sonic_get_stats(struct net_device *dev); |
diff --git a/drivers/net/spider_net.c b/drivers/net/spider_net.c index 1397fc55cf68..46a009085f7c 100644 --- a/drivers/net/spider_net.c +++ b/drivers/net/spider_net.c | |||
@@ -1445,7 +1445,7 @@ spider_net_handle_error_irq(struct spider_net_card *card, u32 status_reg) | |||
1445 | * interrupts for this device and makes the stack poll the driver | 1445 | * interrupts for this device and makes the stack poll the driver |
1446 | */ | 1446 | */ |
1447 | static irqreturn_t | 1447 | static irqreturn_t |
1448 | spider_net_interrupt(int irq, void *ptr, struct pt_regs *regs) | 1448 | spider_net_interrupt(int irq, void *ptr) |
1449 | { | 1449 | { |
1450 | struct net_device *netdev = ptr; | 1450 | struct net_device *netdev = ptr; |
1451 | struct spider_net_card *card = netdev_priv(netdev); | 1451 | struct spider_net_card *card = netdev_priv(netdev); |
@@ -1481,7 +1481,7 @@ static void | |||
1481 | spider_net_poll_controller(struct net_device *netdev) | 1481 | spider_net_poll_controller(struct net_device *netdev) |
1482 | { | 1482 | { |
1483 | disable_irq(netdev->irq); | 1483 | disable_irq(netdev->irq); |
1484 | spider_net_interrupt(netdev->irq, netdev, NULL); | 1484 | spider_net_interrupt(netdev->irq, netdev); |
1485 | enable_irq(netdev->irq); | 1485 | enable_irq(netdev->irq); |
1486 | } | 1486 | } |
1487 | #endif /* CONFIG_NET_POLL_CONTROLLER */ | 1487 | #endif /* CONFIG_NET_POLL_CONTROLLER */ |
diff --git a/drivers/net/starfire.c b/drivers/net/starfire.c index 3d617e8f54b5..7a0aee6c869d 100644 --- a/drivers/net/starfire.c +++ b/drivers/net/starfire.c | |||
@@ -632,7 +632,7 @@ static void check_duplex(struct net_device *dev); | |||
632 | static void tx_timeout(struct net_device *dev); | 632 | static void tx_timeout(struct net_device *dev); |
633 | static void init_ring(struct net_device *dev); | 633 | static void init_ring(struct net_device *dev); |
634 | static int start_tx(struct sk_buff *skb, struct net_device *dev); | 634 | static int start_tx(struct sk_buff *skb, struct net_device *dev); |
635 | static irqreturn_t intr_handler(int irq, void *dev_instance, struct pt_regs *regs); | 635 | static irqreturn_t intr_handler(int irq, void *dev_instance); |
636 | static void netdev_error(struct net_device *dev, int intr_status); | 636 | static void netdev_error(struct net_device *dev, int intr_status); |
637 | static int __netdev_rx(struct net_device *dev, int *quota); | 637 | static int __netdev_rx(struct net_device *dev, int *quota); |
638 | static void refill_rx_ring(struct net_device *dev); | 638 | static void refill_rx_ring(struct net_device *dev); |
@@ -1307,7 +1307,7 @@ static int start_tx(struct sk_buff *skb, struct net_device *dev) | |||
1307 | 1307 | ||
1308 | /* The interrupt handler does all of the Rx thread work and cleans up | 1308 | /* The interrupt handler does all of the Rx thread work and cleans up |
1309 | after the Tx thread. */ | 1309 | after the Tx thread. */ |
1310 | static irqreturn_t intr_handler(int irq, void *dev_instance, struct pt_regs *rgs) | 1310 | static irqreturn_t intr_handler(int irq, void *dev_instance) |
1311 | { | 1311 | { |
1312 | struct net_device *dev = dev_instance; | 1312 | struct net_device *dev = dev_instance; |
1313 | struct netdev_private *np = netdev_priv(dev); | 1313 | struct netdev_private *np = netdev_priv(dev); |
diff --git a/drivers/net/sun3_82586.c b/drivers/net/sun3_82586.c index 0605461bc56d..d1d1885b0295 100644 --- a/drivers/net/sun3_82586.c +++ b/drivers/net/sun3_82586.c | |||
@@ -122,7 +122,7 @@ sizeof(nop_cmd) = 8; | |||
122 | DELAY_16(); DELAY_16(); } } | 122 | DELAY_16(); DELAY_16(); } } |
123 | 123 | ||
124 | static int sun3_82586_probe1(struct net_device *dev,int ioaddr); | 124 | static int sun3_82586_probe1(struct net_device *dev,int ioaddr); |
125 | static irqreturn_t sun3_82586_interrupt(int irq,void *dev_id,struct pt_regs *reg_ptr); | 125 | static irqreturn_t sun3_82586_interrupt(int irq,void *dev_id); |
126 | static int sun3_82586_open(struct net_device *dev); | 126 | static int sun3_82586_open(struct net_device *dev); |
127 | static int sun3_82586_close(struct net_device *dev); | 127 | static int sun3_82586_close(struct net_device *dev); |
128 | static int sun3_82586_send_packet(struct sk_buff *,struct net_device *); | 128 | static int sun3_82586_send_packet(struct sk_buff *,struct net_device *); |
@@ -678,7 +678,7 @@ static void *alloc_rfa(struct net_device *dev,void *ptr) | |||
678 | * Interrupt Handler ... | 678 | * Interrupt Handler ... |
679 | */ | 679 | */ |
680 | 680 | ||
681 | static irqreturn_t sun3_82586_interrupt(int irq,void *dev_id,struct pt_regs *reg_ptr) | 681 | static irqreturn_t sun3_82586_interrupt(int irq,void *dev_id) |
682 | { | 682 | { |
683 | struct net_device *dev = dev_id; | 683 | struct net_device *dev = dev_id; |
684 | unsigned short stat; | 684 | unsigned short stat; |
diff --git a/drivers/net/sun3lance.c b/drivers/net/sun3lance.c index 61a832ce7ccf..91c76544e4dd 100644 --- a/drivers/net/sun3lance.c +++ b/drivers/net/sun3lance.c | |||
@@ -237,7 +237,7 @@ static int lance_probe( struct net_device *dev); | |||
237 | static int lance_open( struct net_device *dev ); | 237 | static int lance_open( struct net_device *dev ); |
238 | static void lance_init_ring( struct net_device *dev ); | 238 | static void lance_init_ring( struct net_device *dev ); |
239 | static int lance_start_xmit( struct sk_buff *skb, struct net_device *dev ); | 239 | static int lance_start_xmit( struct sk_buff *skb, struct net_device *dev ); |
240 | static irqreturn_t lance_interrupt( int irq, void *dev_id, struct pt_regs *fp ); | 240 | static irqreturn_t lance_interrupt( int irq, void *dev_id); |
241 | static int lance_rx( struct net_device *dev ); | 241 | static int lance_rx( struct net_device *dev ); |
242 | static int lance_close( struct net_device *dev ); | 242 | static int lance_close( struct net_device *dev ); |
243 | static struct net_device_stats *lance_get_stats( struct net_device *dev ); | 243 | static struct net_device_stats *lance_get_stats( struct net_device *dev ); |
@@ -642,7 +642,7 @@ static int lance_start_xmit( struct sk_buff *skb, struct net_device *dev ) | |||
642 | 642 | ||
643 | /* The LANCE interrupt handler. */ | 643 | /* The LANCE interrupt handler. */ |
644 | 644 | ||
645 | static irqreturn_t lance_interrupt( int irq, void *dev_id, struct pt_regs *fp) | 645 | static irqreturn_t lance_interrupt( int irq, void *dev_id) |
646 | { | 646 | { |
647 | struct net_device *dev = dev_id; | 647 | struct net_device *dev = dev_id; |
648 | struct lance_private *lp = netdev_priv(dev); | 648 | struct lance_private *lp = netdev_priv(dev); |
diff --git a/drivers/net/sunbmac.c b/drivers/net/sunbmac.c index 9e4be86495a0..6439b0cef1e4 100644 --- a/drivers/net/sunbmac.c +++ b/drivers/net/sunbmac.c | |||
@@ -888,7 +888,7 @@ static void bigmac_rx(struct bigmac *bp) | |||
888 | printk(KERN_NOTICE "%s: Memory squeeze, deferring packet.\n", bp->dev->name); | 888 | printk(KERN_NOTICE "%s: Memory squeeze, deferring packet.\n", bp->dev->name); |
889 | } | 889 | } |
890 | 890 | ||
891 | static irqreturn_t bigmac_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 891 | static irqreturn_t bigmac_interrupt(int irq, void *dev_id) |
892 | { | 892 | { |
893 | struct bigmac *bp = (struct bigmac *) dev_id; | 893 | struct bigmac *bp = (struct bigmac *) dev_id; |
894 | u32 qec_status, bmac_status; | 894 | u32 qec_status, bmac_status; |
diff --git a/drivers/net/sundance.c b/drivers/net/sundance.c index 6b8f4baf87fd..41c503d8bac4 100644 --- a/drivers/net/sundance.c +++ b/drivers/net/sundance.c | |||
@@ -420,7 +420,7 @@ static void tx_timeout(struct net_device *dev); | |||
420 | static void init_ring(struct net_device *dev); | 420 | static void init_ring(struct net_device *dev); |
421 | static int start_tx(struct sk_buff *skb, struct net_device *dev); | 421 | static int start_tx(struct sk_buff *skb, struct net_device *dev); |
422 | static int reset_tx (struct net_device *dev); | 422 | static int reset_tx (struct net_device *dev); |
423 | static irqreturn_t intr_handler(int irq, void *dev_instance, struct pt_regs *regs); | 423 | static irqreturn_t intr_handler(int irq, void *dev_instance); |
424 | static void rx_poll(unsigned long data); | 424 | static void rx_poll(unsigned long data); |
425 | static void tx_poll(unsigned long data); | 425 | static void tx_poll(unsigned long data); |
426 | static void refill_rx (struct net_device *dev); | 426 | static void refill_rx (struct net_device *dev); |
@@ -1102,7 +1102,7 @@ reset_tx (struct net_device *dev) | |||
1102 | 1102 | ||
1103 | /* The interrupt handler cleans up after the Tx thread, | 1103 | /* The interrupt handler cleans up after the Tx thread, |
1104 | and schedule a Rx thread work */ | 1104 | and schedule a Rx thread work */ |
1105 | static irqreturn_t intr_handler(int irq, void *dev_instance, struct pt_regs *rgs) | 1105 | static irqreturn_t intr_handler(int irq, void *dev_instance) |
1106 | { | 1106 | { |
1107 | struct net_device *dev = (struct net_device *)dev_instance; | 1107 | struct net_device *dev = (struct net_device *)dev_instance; |
1108 | struct netdev_private *np = netdev_priv(dev); | 1108 | struct netdev_private *np = netdev_priv(dev); |
diff --git a/drivers/net/sungem.c b/drivers/net/sungem.c index 0975695ae31b..253e96e7ad20 100644 --- a/drivers/net/sungem.c +++ b/drivers/net/sungem.c | |||
@@ -932,7 +932,7 @@ static int gem_poll(struct net_device *dev, int *budget) | |||
932 | return 0; | 932 | return 0; |
933 | } | 933 | } |
934 | 934 | ||
935 | static irqreturn_t gem_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 935 | static irqreturn_t gem_interrupt(int irq, void *dev_id) |
936 | { | 936 | { |
937 | struct net_device *dev = dev_id; | 937 | struct net_device *dev = dev_id; |
938 | struct gem *gp = dev->priv; | 938 | struct gem *gp = dev->priv; |
@@ -975,7 +975,7 @@ static void gem_poll_controller(struct net_device *dev) | |||
975 | /* gem_interrupt is safe to reentrance so no need | 975 | /* gem_interrupt is safe to reentrance so no need |
976 | * to disable_irq here. | 976 | * to disable_irq here. |
977 | */ | 977 | */ |
978 | gem_interrupt(dev->irq, dev, NULL); | 978 | gem_interrupt(dev->irq, dev); |
979 | } | 979 | } |
980 | #endif | 980 | #endif |
981 | 981 | ||
diff --git a/drivers/net/sunhme.c b/drivers/net/sunhme.c index f05eea53623b..9d7cd130c19d 100644 --- a/drivers/net/sunhme.c +++ b/drivers/net/sunhme.c | |||
@@ -2093,10 +2093,10 @@ static void happy_meal_rx(struct happy_meal *hp, struct net_device *dev) | |||
2093 | RXD((">")); | 2093 | RXD((">")); |
2094 | } | 2094 | } |
2095 | 2095 | ||
2096 | static irqreturn_t happy_meal_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 2096 | static irqreturn_t happy_meal_interrupt(int irq, void *dev_id) |
2097 | { | 2097 | { |
2098 | struct net_device *dev = (struct net_device *) dev_id; | 2098 | struct net_device *dev = dev_id; |
2099 | struct happy_meal *hp = dev->priv; | 2099 | struct happy_meal *hp = netdev_priv(dev); |
2100 | u32 happy_status = hme_read32(hp, hp->gregs + GREG_STAT); | 2100 | u32 happy_status = hme_read32(hp, hp->gregs + GREG_STAT); |
2101 | 2101 | ||
2102 | HMD(("happy_meal_interrupt: status=%08x ", happy_status)); | 2102 | HMD(("happy_meal_interrupt: status=%08x ", happy_status)); |
@@ -2132,7 +2132,7 @@ out: | |||
2132 | } | 2132 | } |
2133 | 2133 | ||
2134 | #ifdef CONFIG_SBUS | 2134 | #ifdef CONFIG_SBUS |
2135 | static irqreturn_t quattro_sbus_interrupt(int irq, void *cookie, struct pt_regs *ptregs) | 2135 | static irqreturn_t quattro_sbus_interrupt(int irq, void *cookie) |
2136 | { | 2136 | { |
2137 | struct quattro *qp = (struct quattro *) cookie; | 2137 | struct quattro *qp = (struct quattro *) cookie; |
2138 | int i; | 2138 | int i; |
diff --git a/drivers/net/sunlance.c b/drivers/net/sunlance.c index feb42db10ee1..5b00d79b5573 100644 --- a/drivers/net/sunlance.c +++ b/drivers/net/sunlance.c | |||
@@ -820,9 +820,9 @@ out: | |||
820 | spin_unlock(&lp->lock); | 820 | spin_unlock(&lp->lock); |
821 | } | 821 | } |
822 | 822 | ||
823 | static irqreturn_t lance_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 823 | static irqreturn_t lance_interrupt(int irq, void *dev_id) |
824 | { | 824 | { |
825 | struct net_device *dev = (struct net_device *)dev_id; | 825 | struct net_device *dev = dev_id; |
826 | struct lance_private *lp = netdev_priv(dev); | 826 | struct lance_private *lp = netdev_priv(dev); |
827 | int csr0; | 827 | int csr0; |
828 | 828 | ||
diff --git a/drivers/net/sunqe.c b/drivers/net/sunqe.c index 9202a1c369dd..7874eb1ef043 100644 --- a/drivers/net/sunqe.c +++ b/drivers/net/sunqe.c | |||
@@ -466,9 +466,9 @@ static void qe_tx_reclaim(struct sunqe *qep); | |||
466 | * so we just run through each qe and check to see who is signaling | 466 | * so we just run through each qe and check to see who is signaling |
467 | * and thus needs to be serviced. | 467 | * and thus needs to be serviced. |
468 | */ | 468 | */ |
469 | static irqreturn_t qec_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 469 | static irqreturn_t qec_interrupt(int irq, void *dev_id) |
470 | { | 470 | { |
471 | struct sunqec *qecp = (struct sunqec *) dev_id; | 471 | struct sunqec *qecp = dev_id; |
472 | u32 qec_status; | 472 | u32 qec_status; |
473 | int channel = 0; | 473 | int channel = 0; |
474 | 474 | ||
diff --git a/drivers/net/tc35815.c b/drivers/net/tc35815.c index 60f026509487..81ed82f0b520 100644 --- a/drivers/net/tc35815.c +++ b/drivers/net/tc35815.c | |||
@@ -453,7 +453,7 @@ static int __devinit tc35815_probe1(struct pci_dev *pdev, unsigned int base_addr | |||
453 | static int tc35815_open(struct net_device *dev); | 453 | static int tc35815_open(struct net_device *dev); |
454 | static int tc35815_send_packet(struct sk_buff *skb, struct net_device *dev); | 454 | static int tc35815_send_packet(struct sk_buff *skb, struct net_device *dev); |
455 | static void tc35815_tx_timeout(struct net_device *dev); | 455 | static void tc35815_tx_timeout(struct net_device *dev); |
456 | static irqreturn_t tc35815_interrupt(int irq, void *dev_id, struct pt_regs *regs); | 456 | static irqreturn_t tc35815_interrupt(int irq, void *dev_id); |
457 | static void tc35815_rx(struct net_device *dev); | 457 | static void tc35815_rx(struct net_device *dev); |
458 | static void tc35815_txdone(struct net_device *dev); | 458 | static void tc35815_txdone(struct net_device *dev); |
459 | static int tc35815_close(struct net_device *dev); | 459 | static int tc35815_close(struct net_device *dev); |
@@ -1044,7 +1044,7 @@ static void tc35815_fatal_error_interrupt(struct net_device *dev, int status) | |||
1044 | * The typical workload of the driver: | 1044 | * The typical workload of the driver: |
1045 | * Handle the network interface interrupts. | 1045 | * Handle the network interface interrupts. |
1046 | */ | 1046 | */ |
1047 | static irqreturn_t tc35815_interrupt(int irq, void *dev_id, struct pt_regs * regs) | 1047 | static irqreturn_t tc35815_interrupt(int irq, void *dev_id) |
1048 | { | 1048 | { |
1049 | struct net_device *dev = dev_id; | 1049 | struct net_device *dev = dev_id; |
1050 | struct tc35815_regs *tr; | 1050 | struct tc35815_regs *tr; |
diff --git a/drivers/net/tg3.c b/drivers/net/tg3.c index c25ba273b745..327836b1014e 100644 --- a/drivers/net/tg3.c +++ b/drivers/net/tg3.c | |||
@@ -3481,7 +3481,7 @@ static inline void tg3_full_unlock(struct tg3 *tp) | |||
3481 | /* One-shot MSI handler - Chip automatically disables interrupt | 3481 | /* One-shot MSI handler - Chip automatically disables interrupt |
3482 | * after sending MSI so driver doesn't have to do it. | 3482 | * after sending MSI so driver doesn't have to do it. |
3483 | */ | 3483 | */ |
3484 | static irqreturn_t tg3_msi_1shot(int irq, void *dev_id, struct pt_regs *regs) | 3484 | static irqreturn_t tg3_msi_1shot(int irq, void *dev_id) |
3485 | { | 3485 | { |
3486 | struct net_device *dev = dev_id; | 3486 | struct net_device *dev = dev_id; |
3487 | struct tg3 *tp = netdev_priv(dev); | 3487 | struct tg3 *tp = netdev_priv(dev); |
@@ -3499,7 +3499,7 @@ static irqreturn_t tg3_msi_1shot(int irq, void *dev_id, struct pt_regs *regs) | |||
3499 | * flush status block and interrupt mailbox. PCI ordering rules | 3499 | * flush status block and interrupt mailbox. PCI ordering rules |
3500 | * guarantee that MSI will arrive after the status block. | 3500 | * guarantee that MSI will arrive after the status block. |
3501 | */ | 3501 | */ |
3502 | static irqreturn_t tg3_msi(int irq, void *dev_id, struct pt_regs *regs) | 3502 | static irqreturn_t tg3_msi(int irq, void *dev_id) |
3503 | { | 3503 | { |
3504 | struct net_device *dev = dev_id; | 3504 | struct net_device *dev = dev_id; |
3505 | struct tg3 *tp = netdev_priv(dev); | 3505 | struct tg3 *tp = netdev_priv(dev); |
@@ -3520,7 +3520,7 @@ static irqreturn_t tg3_msi(int irq, void *dev_id, struct pt_regs *regs) | |||
3520 | return IRQ_RETVAL(1); | 3520 | return IRQ_RETVAL(1); |
3521 | } | 3521 | } |
3522 | 3522 | ||
3523 | static irqreturn_t tg3_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 3523 | static irqreturn_t tg3_interrupt(int irq, void *dev_id) |
3524 | { | 3524 | { |
3525 | struct net_device *dev = dev_id; | 3525 | struct net_device *dev = dev_id; |
3526 | struct tg3 *tp = netdev_priv(dev); | 3526 | struct tg3 *tp = netdev_priv(dev); |
@@ -3563,7 +3563,7 @@ out: | |||
3563 | return IRQ_RETVAL(handled); | 3563 | return IRQ_RETVAL(handled); |
3564 | } | 3564 | } |
3565 | 3565 | ||
3566 | static irqreturn_t tg3_interrupt_tagged(int irq, void *dev_id, struct pt_regs *regs) | 3566 | static irqreturn_t tg3_interrupt_tagged(int irq, void *dev_id) |
3567 | { | 3567 | { |
3568 | struct net_device *dev = dev_id; | 3568 | struct net_device *dev = dev_id; |
3569 | struct tg3 *tp = netdev_priv(dev); | 3569 | struct tg3 *tp = netdev_priv(dev); |
@@ -3606,8 +3606,7 @@ out: | |||
3606 | } | 3606 | } |
3607 | 3607 | ||
3608 | /* ISR for interrupt test */ | 3608 | /* ISR for interrupt test */ |
3609 | static irqreturn_t tg3_test_isr(int irq, void *dev_id, | 3609 | static irqreturn_t tg3_test_isr(int irq, void *dev_id) |
3610 | struct pt_regs *regs) | ||
3611 | { | 3610 | { |
3612 | struct net_device *dev = dev_id; | 3611 | struct net_device *dev = dev_id; |
3613 | struct tg3 *tp = netdev_priv(dev); | 3612 | struct tg3 *tp = netdev_priv(dev); |
@@ -3651,7 +3650,7 @@ static void tg3_poll_controller(struct net_device *dev) | |||
3651 | { | 3650 | { |
3652 | struct tg3 *tp = netdev_priv(dev); | 3651 | struct tg3 *tp = netdev_priv(dev); |
3653 | 3652 | ||
3654 | tg3_interrupt(tp->pdev->irq, dev, NULL); | 3653 | tg3_interrupt(tp->pdev->irq, dev); |
3655 | } | 3654 | } |
3656 | #endif | 3655 | #endif |
3657 | 3656 | ||
@@ -6838,7 +6837,7 @@ restart_timer: | |||
6838 | 6837 | ||
6839 | static int tg3_request_irq(struct tg3 *tp) | 6838 | static int tg3_request_irq(struct tg3 *tp) |
6840 | { | 6839 | { |
6841 | irqreturn_t (*fn)(int, void *, struct pt_regs *); | 6840 | irq_handler_t fn; |
6842 | unsigned long flags; | 6841 | unsigned long flags; |
6843 | struct net_device *dev = tp->dev; | 6842 | struct net_device *dev = tp->dev; |
6844 | 6843 | ||
diff --git a/drivers/net/tlan.c b/drivers/net/tlan.c index 8d807bf603a0..e14f5a00f65a 100644 --- a/drivers/net/tlan.c +++ b/drivers/net/tlan.c | |||
@@ -289,7 +289,7 @@ static void TLan_Eisa_Cleanup( void ); | |||
289 | static int TLan_Init( struct net_device * ); | 289 | static int TLan_Init( struct net_device * ); |
290 | static int TLan_Open( struct net_device *dev ); | 290 | static int TLan_Open( struct net_device *dev ); |
291 | static int TLan_StartTx( struct sk_buff *, struct net_device *); | 291 | static int TLan_StartTx( struct sk_buff *, struct net_device *); |
292 | static irqreturn_t TLan_HandleInterrupt( int, void *, struct pt_regs *); | 292 | static irqreturn_t TLan_HandleInterrupt( int, void *); |
293 | static int TLan_Close( struct net_device *); | 293 | static int TLan_Close( struct net_device *); |
294 | static struct net_device_stats *TLan_GetStats( struct net_device *); | 294 | static struct net_device_stats *TLan_GetStats( struct net_device *); |
295 | static void TLan_SetMulticastList( struct net_device *); | 295 | static void TLan_SetMulticastList( struct net_device *); |
@@ -824,7 +824,7 @@ static void __init TLan_EisaProbe (void) | |||
824 | static void TLan_Poll(struct net_device *dev) | 824 | static void TLan_Poll(struct net_device *dev) |
825 | { | 825 | { |
826 | disable_irq(dev->irq); | 826 | disable_irq(dev->irq); |
827 | TLan_HandleInterrupt(dev->irq, dev, NULL); | 827 | TLan_HandleInterrupt(dev->irq, dev); |
828 | enable_irq(dev->irq); | 828 | enable_irq(dev->irq); |
829 | } | 829 | } |
830 | #endif | 830 | #endif |
@@ -1151,7 +1151,6 @@ static int TLan_StartTx( struct sk_buff *skb, struct net_device *dev ) | |||
1151 | * occurred. | 1151 | * occurred. |
1152 | * dev_id A pointer to the device assigned to | 1152 | * dev_id A pointer to the device assigned to |
1153 | * this irq line. | 1153 | * this irq line. |
1154 | * regs ??? | ||
1155 | * | 1154 | * |
1156 | * This function handles an interrupt generated by its | 1155 | * This function handles an interrupt generated by its |
1157 | * assigned TLAN adapter. The function deactivates | 1156 | * assigned TLAN adapter. The function deactivates |
@@ -1162,7 +1161,7 @@ static int TLan_StartTx( struct sk_buff *skb, struct net_device *dev ) | |||
1162 | * | 1161 | * |
1163 | **************************************************************/ | 1162 | **************************************************************/ |
1164 | 1163 | ||
1165 | static irqreturn_t TLan_HandleInterrupt(int irq, void *dev_id, struct pt_regs *regs) | 1164 | static irqreturn_t TLan_HandleInterrupt(int irq, void *dev_id) |
1166 | { | 1165 | { |
1167 | u32 ack; | 1166 | u32 ack; |
1168 | struct net_device *dev; | 1167 | struct net_device *dev; |
diff --git a/drivers/net/tokenring/3c359.c b/drivers/net/tokenring/3c359.c index 412390ba142e..7580bdeacadc 100644 --- a/drivers/net/tokenring/3c359.c +++ b/drivers/net/tokenring/3c359.c | |||
@@ -130,7 +130,7 @@ static int xl_xmit(struct sk_buff *skb, struct net_device *dev); | |||
130 | static void xl_dn_comp(struct net_device *dev); | 130 | static void xl_dn_comp(struct net_device *dev); |
131 | static int xl_close(struct net_device *dev); | 131 | static int xl_close(struct net_device *dev); |
132 | static void xl_set_rx_mode(struct net_device *dev); | 132 | static void xl_set_rx_mode(struct net_device *dev); |
133 | static irqreturn_t xl_interrupt(int irq, void *dev_id, struct pt_regs *regs); | 133 | static irqreturn_t xl_interrupt(int irq, void *dev_id); |
134 | static struct net_device_stats * xl_get_stats(struct net_device *dev); | 134 | static struct net_device_stats * xl_get_stats(struct net_device *dev); |
135 | static int xl_set_mac_address(struct net_device *dev, void *addr) ; | 135 | static int xl_set_mac_address(struct net_device *dev, void *addr) ; |
136 | static void xl_arb_cmd(struct net_device *dev); | 136 | static void xl_arb_cmd(struct net_device *dev); |
@@ -1042,7 +1042,7 @@ static void xl_freemem(struct net_device *dev) | |||
1042 | return ; | 1042 | return ; |
1043 | } | 1043 | } |
1044 | 1044 | ||
1045 | static irqreturn_t xl_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 1045 | static irqreturn_t xl_interrupt(int irq, void *dev_id) |
1046 | { | 1046 | { |
1047 | struct net_device *dev = (struct net_device *)dev_id; | 1047 | struct net_device *dev = (struct net_device *)dev_id; |
1048 | struct xl_private *xl_priv =(struct xl_private *)dev->priv; | 1048 | struct xl_private *xl_priv =(struct xl_private *)dev->priv; |
diff --git a/drivers/net/tokenring/ibmtr.c b/drivers/net/tokenring/ibmtr.c index 4470025ff7f8..bfe59865b1dd 100644 --- a/drivers/net/tokenring/ibmtr.c +++ b/drivers/net/tokenring/ibmtr.c | |||
@@ -197,7 +197,7 @@ static void open_sap(unsigned char type, struct net_device *dev); | |||
197 | static void tok_set_multicast_list(struct net_device *dev); | 197 | static void tok_set_multicast_list(struct net_device *dev); |
198 | static int tok_send_packet(struct sk_buff *skb, struct net_device *dev); | 198 | static int tok_send_packet(struct sk_buff *skb, struct net_device *dev); |
199 | static int tok_close(struct net_device *dev); | 199 | static int tok_close(struct net_device *dev); |
200 | static irqreturn_t tok_interrupt(int irq, void *dev_id, struct pt_regs *regs); | 200 | static irqreturn_t tok_interrupt(int irq, void *dev_id); |
201 | static void initial_tok_int(struct net_device *dev); | 201 | static void initial_tok_int(struct net_device *dev); |
202 | static void tr_tx(struct net_device *dev); | 202 | static void tr_tx(struct net_device *dev); |
203 | static void tr_rx(struct net_device *dev); | 203 | static void tr_rx(struct net_device *dev); |
@@ -1166,7 +1166,7 @@ static void dir_open_adapter (struct net_device *dev) | |||
1166 | 1166 | ||
1167 | /******************************************************************************/ | 1167 | /******************************************************************************/ |
1168 | 1168 | ||
1169 | static irqreturn_t tok_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 1169 | static irqreturn_t tok_interrupt(int irq, void *dev_id) |
1170 | { | 1170 | { |
1171 | unsigned char status; | 1171 | unsigned char status; |
1172 | /* unsigned char status_even ; */ | 1172 | /* unsigned char status_even ; */ |
@@ -1178,7 +1178,7 @@ static irqreturn_t tok_interrupt(int irq, void *dev_id, struct pt_regs *regs) | |||
1178 | 1178 | ||
1179 | dev = dev_id; | 1179 | dev = dev_id; |
1180 | #if TR_VERBOSE | 1180 | #if TR_VERBOSE |
1181 | DPRINTK("Int from tok_driver, dev : %p irq%d regs=%p\n", dev,irq,regs); | 1181 | DPRINTK("Int from tok_driver, dev : %p irq%d\n", dev,irq); |
1182 | #endif | 1182 | #endif |
1183 | ti = (struct tok_info *) dev->priv; | 1183 | ti = (struct tok_info *) dev->priv; |
1184 | if (ti->sram_phys & 1) | 1184 | if (ti->sram_phys & 1) |
diff --git a/drivers/net/tokenring/lanstreamer.c b/drivers/net/tokenring/lanstreamer.c index bfc8c3eae9a1..e999feb8c0bb 100644 --- a/drivers/net/tokenring/lanstreamer.c +++ b/drivers/net/tokenring/lanstreamer.c | |||
@@ -206,8 +206,7 @@ static int streamer_open(struct net_device *dev); | |||
206 | static int streamer_xmit(struct sk_buff *skb, struct net_device *dev); | 206 | static int streamer_xmit(struct sk_buff *skb, struct net_device *dev); |
207 | static int streamer_close(struct net_device *dev); | 207 | static int streamer_close(struct net_device *dev); |
208 | static void streamer_set_rx_mode(struct net_device *dev); | 208 | static void streamer_set_rx_mode(struct net_device *dev); |
209 | static irqreturn_t streamer_interrupt(int irq, void *dev_id, | 209 | static irqreturn_t streamer_interrupt(int irq, void *dev_id); |
210 | struct pt_regs *regs); | ||
211 | static struct net_device_stats *streamer_get_stats(struct net_device *dev); | 210 | static struct net_device_stats *streamer_get_stats(struct net_device *dev); |
212 | static int streamer_set_mac_address(struct net_device *dev, void *addr); | 211 | static int streamer_set_mac_address(struct net_device *dev, void *addr); |
213 | static void streamer_arb_cmd(struct net_device *dev); | 212 | static void streamer_arb_cmd(struct net_device *dev); |
@@ -1028,7 +1027,7 @@ static void streamer_rx(struct net_device *dev) | |||
1028 | } /* end for all completed rx descriptors */ | 1027 | } /* end for all completed rx descriptors */ |
1029 | } | 1028 | } |
1030 | 1029 | ||
1031 | static irqreturn_t streamer_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 1030 | static irqreturn_t streamer_interrupt(int irq, void *dev_id) |
1032 | { | 1031 | { |
1033 | struct net_device *dev = (struct net_device *) dev_id; | 1032 | struct net_device *dev = (struct net_device *) dev_id; |
1034 | struct streamer_private *streamer_priv = | 1033 | struct streamer_private *streamer_priv = |
diff --git a/drivers/net/tokenring/madgemc.c b/drivers/net/tokenring/madgemc.c index 666bbaaae82f..ed274d6909d0 100644 --- a/drivers/net/tokenring/madgemc.c +++ b/drivers/net/tokenring/madgemc.c | |||
@@ -70,7 +70,7 @@ static void madgemc_setregpage(struct net_device *dev, int page); | |||
70 | static void madgemc_setsifsel(struct net_device *dev, int val); | 70 | static void madgemc_setsifsel(struct net_device *dev, int val); |
71 | static void madgemc_setint(struct net_device *dev, int val); | 71 | static void madgemc_setint(struct net_device *dev, int val); |
72 | 72 | ||
73 | static irqreturn_t madgemc_interrupt(int irq, void *dev_id, struct pt_regs *regs); | 73 | static irqreturn_t madgemc_interrupt(int irq, void *dev_id); |
74 | 74 | ||
75 | /* | 75 | /* |
76 | * These work around paging, however they don't guarentee you're on the | 76 | * These work around paging, however they don't guarentee you're on the |
@@ -417,7 +417,7 @@ getout: | |||
417 | * exhausted all contiguous interrupts. | 417 | * exhausted all contiguous interrupts. |
418 | * | 418 | * |
419 | */ | 419 | */ |
420 | static irqreturn_t madgemc_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 420 | static irqreturn_t madgemc_interrupt(int irq, void *dev_id) |
421 | { | 421 | { |
422 | int pending,reg1; | 422 | int pending,reg1; |
423 | struct net_device *dev; | 423 | struct net_device *dev; |
@@ -451,7 +451,7 @@ static irqreturn_t madgemc_interrupt(int irq, void *dev_id, struct pt_regs *regs | |||
451 | outb(reg1, dev->base_addr + MC_CONTROL_REG1); | 451 | outb(reg1, dev->base_addr + MC_CONTROL_REG1); |
452 | 452 | ||
453 | /* Continue handling as normal */ | 453 | /* Continue handling as normal */ |
454 | tms380tr_interrupt(irq, dev_id, regs); | 454 | tms380tr_interrupt(irq, dev_id); |
455 | 455 | ||
456 | pending = SIFREADW(SIFSTS); /* restart - the SIF way */ | 456 | pending = SIFREADW(SIFSTS); /* restart - the SIF way */ |
457 | 457 | ||
diff --git a/drivers/net/tokenring/olympic.c b/drivers/net/tokenring/olympic.c index 85831484bc40..cd142d0302bc 100644 --- a/drivers/net/tokenring/olympic.c +++ b/drivers/net/tokenring/olympic.c | |||
@@ -185,7 +185,7 @@ static int olympic_xmit(struct sk_buff *skb, struct net_device *dev); | |||
185 | static int olympic_close(struct net_device *dev); | 185 | static int olympic_close(struct net_device *dev); |
186 | static void olympic_set_rx_mode(struct net_device *dev); | 186 | static void olympic_set_rx_mode(struct net_device *dev); |
187 | static void olympic_freemem(struct net_device *dev) ; | 187 | static void olympic_freemem(struct net_device *dev) ; |
188 | static irqreturn_t olympic_interrupt(int irq, void *dev_id, struct pt_regs *regs); | 188 | static irqreturn_t olympic_interrupt(int irq, void *dev_id); |
189 | static struct net_device_stats * olympic_get_stats(struct net_device *dev); | 189 | static struct net_device_stats * olympic_get_stats(struct net_device *dev); |
190 | static int olympic_set_mac_address(struct net_device *dev, void *addr) ; | 190 | static int olympic_set_mac_address(struct net_device *dev, void *addr) ; |
191 | static void olympic_arb_cmd(struct net_device *dev); | 191 | static void olympic_arb_cmd(struct net_device *dev); |
@@ -925,7 +925,7 @@ static void olympic_freemem(struct net_device *dev) | |||
925 | return ; | 925 | return ; |
926 | } | 926 | } |
927 | 927 | ||
928 | static irqreturn_t olympic_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 928 | static irqreturn_t olympic_interrupt(int irq, void *dev_id) |
929 | { | 929 | { |
930 | struct net_device *dev= (struct net_device *)dev_id; | 930 | struct net_device *dev= (struct net_device *)dev_id; |
931 | struct olympic_private *olympic_priv=(struct olympic_private *)dev->priv; | 931 | struct olympic_private *olympic_priv=(struct olympic_private *)dev->priv; |
diff --git a/drivers/net/tokenring/smctr.c b/drivers/net/tokenring/smctr.c index 85a7f797d343..46dabdb12071 100644 --- a/drivers/net/tokenring/smctr.c +++ b/drivers/net/tokenring/smctr.c | |||
@@ -141,7 +141,7 @@ static int smctr_init_shared_memory(struct net_device *dev); | |||
141 | static int smctr_init_tx_bdbs(struct net_device *dev); | 141 | static int smctr_init_tx_bdbs(struct net_device *dev); |
142 | static int smctr_init_tx_fcbs(struct net_device *dev); | 142 | static int smctr_init_tx_fcbs(struct net_device *dev); |
143 | static int smctr_internal_self_test(struct net_device *dev); | 143 | static int smctr_internal_self_test(struct net_device *dev); |
144 | static irqreturn_t smctr_interrupt(int irq, void *dev_id, struct pt_regs *regs); | 144 | static irqreturn_t smctr_interrupt(int irq, void *dev_id); |
145 | static int smctr_issue_enable_int_cmd(struct net_device *dev, | 145 | static int smctr_issue_enable_int_cmd(struct net_device *dev, |
146 | __u16 interrupt_enable_mask); | 146 | __u16 interrupt_enable_mask); |
147 | static int smctr_issue_int_ack(struct net_device *dev, __u16 iack_code, | 147 | static int smctr_issue_int_ack(struct net_device *dev, __u16 iack_code, |
@@ -1980,7 +1980,7 @@ static int smctr_internal_self_test(struct net_device *dev) | |||
1980 | /* | 1980 | /* |
1981 | * The typical workload of the driver: Handle the network interface interrupts. | 1981 | * The typical workload of the driver: Handle the network interface interrupts. |
1982 | */ | 1982 | */ |
1983 | static irqreturn_t smctr_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 1983 | static irqreturn_t smctr_interrupt(int irq, void *dev_id) |
1984 | { | 1984 | { |
1985 | struct net_device *dev = dev_id; | 1985 | struct net_device *dev = dev_id; |
1986 | struct net_local *tp; | 1986 | struct net_local *tp; |
@@ -1990,15 +1990,8 @@ static irqreturn_t smctr_interrupt(int irq, void *dev_id, struct pt_regs *regs) | |||
1990 | __u8 isb_type, isb_subtype; | 1990 | __u8 isb_type, isb_subtype; |
1991 | __u16 isb_index; | 1991 | __u16 isb_index; |
1992 | 1992 | ||
1993 | if(dev == NULL) | ||
1994 | { | ||
1995 | printk(KERN_CRIT "%s: irq %d for unknown device.\n", dev->name, irq); | ||
1996 | return IRQ_NONE; | ||
1997 | } | ||
1998 | |||
1999 | ioaddr = dev->base_addr; | 1993 | ioaddr = dev->base_addr; |
2000 | tp = netdev_priv(dev); | 1994 | tp = netdev_priv(dev); |
2001 | |||
2002 | 1995 | ||
2003 | if(tp->status == NOT_INITIALIZED) | 1996 | if(tp->status == NOT_INITIALIZED) |
2004 | return IRQ_NONE; | 1997 | return IRQ_NONE; |
diff --git a/drivers/net/tokenring/tms380tr.c b/drivers/net/tokenring/tms380tr.c index c1925590a0e1..ea797ca2b988 100644 --- a/drivers/net/tokenring/tms380tr.c +++ b/drivers/net/tokenring/tms380tr.c | |||
@@ -744,18 +744,13 @@ static void tms380tr_timer_chk(unsigned long data) | |||
744 | /* | 744 | /* |
745 | * The typical workload of the driver: Handle the network interface interrupts. | 745 | * The typical workload of the driver: Handle the network interface interrupts. |
746 | */ | 746 | */ |
747 | irqreturn_t tms380tr_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 747 | irqreturn_t tms380tr_interrupt(int irq, void *dev_id) |
748 | { | 748 | { |
749 | struct net_device *dev = dev_id; | 749 | struct net_device *dev = dev_id; |
750 | struct net_local *tp; | 750 | struct net_local *tp; |
751 | unsigned short irq_type; | 751 | unsigned short irq_type; |
752 | int handled = 0; | 752 | int handled = 0; |
753 | 753 | ||
754 | if(dev == NULL) { | ||
755 | printk(KERN_INFO "%s: irq %d for unknown device.\n", dev->name, irq); | ||
756 | return IRQ_NONE; | ||
757 | } | ||
758 | |||
759 | tp = netdev_priv(dev); | 754 | tp = netdev_priv(dev); |
760 | 755 | ||
761 | irq_type = SIFREADW(SIFSTS); | 756 | irq_type = SIFREADW(SIFSTS); |
diff --git a/drivers/net/tokenring/tms380tr.h b/drivers/net/tokenring/tms380tr.h index 30452c67bb68..2a16078ac3fd 100644 --- a/drivers/net/tokenring/tms380tr.h +++ b/drivers/net/tokenring/tms380tr.h | |||
@@ -16,7 +16,7 @@ | |||
16 | /* module prototypes */ | 16 | /* module prototypes */ |
17 | int tms380tr_open(struct net_device *dev); | 17 | int tms380tr_open(struct net_device *dev); |
18 | int tms380tr_close(struct net_device *dev); | 18 | int tms380tr_close(struct net_device *dev); |
19 | irqreturn_t tms380tr_interrupt(int irq, void *dev_id, struct pt_regs *regs); | 19 | irqreturn_t tms380tr_interrupt(int irq, void *dev_id); |
20 | int tmsdev_init(struct net_device *dev, struct device *pdev); | 20 | int tmsdev_init(struct net_device *dev, struct device *pdev); |
21 | void tmsdev_term(struct net_device *dev); | 21 | void tmsdev_term(struct net_device *dev); |
22 | void tms380tr_wait(unsigned long time); | 22 | void tms380tr_wait(unsigned long time); |
diff --git a/drivers/net/tulip/de2104x.c b/drivers/net/tulip/de2104x.c index e1b48bd86646..2cfd9634895a 100644 --- a/drivers/net/tulip/de2104x.c +++ b/drivers/net/tulip/de2104x.c | |||
@@ -484,7 +484,7 @@ rx_next: | |||
484 | de->rx_tail = rx_tail; | 484 | de->rx_tail = rx_tail; |
485 | } | 485 | } |
486 | 486 | ||
487 | static irqreturn_t de_interrupt (int irq, void *dev_instance, struct pt_regs *regs) | 487 | static irqreturn_t de_interrupt (int irq, void *dev_instance) |
488 | { | 488 | { |
489 | struct net_device *dev = dev_instance; | 489 | struct net_device *dev = dev_instance; |
490 | struct de_private *de = dev->priv; | 490 | struct de_private *de = dev->priv; |
diff --git a/drivers/net/tulip/de4x5.c b/drivers/net/tulip/de4x5.c index fb5fa7d68888..3f4b6408b755 100644 --- a/drivers/net/tulip/de4x5.c +++ b/drivers/net/tulip/de4x5.c | |||
@@ -896,7 +896,7 @@ static struct { | |||
896 | */ | 896 | */ |
897 | static int de4x5_open(struct net_device *dev); | 897 | static int de4x5_open(struct net_device *dev); |
898 | static int de4x5_queue_pkt(struct sk_buff *skb, struct net_device *dev); | 898 | static int de4x5_queue_pkt(struct sk_buff *skb, struct net_device *dev); |
899 | static irqreturn_t de4x5_interrupt(int irq, void *dev_id, struct pt_regs *regs); | 899 | static irqreturn_t de4x5_interrupt(int irq, void *dev_id); |
900 | static int de4x5_close(struct net_device *dev); | 900 | static int de4x5_close(struct net_device *dev); |
901 | static struct net_device_stats *de4x5_get_stats(struct net_device *dev); | 901 | static struct net_device_stats *de4x5_get_stats(struct net_device *dev); |
902 | static void de4x5_local_stats(struct net_device *dev, char *buf, int pkt_len); | 902 | static void de4x5_local_stats(struct net_device *dev, char *buf, int pkt_len); |
@@ -1538,18 +1538,14 @@ de4x5_queue_pkt(struct sk_buff *skb, struct net_device *dev) | |||
1538 | ** interrupt is asserted and this routine entered. | 1538 | ** interrupt is asserted and this routine entered. |
1539 | */ | 1539 | */ |
1540 | static irqreturn_t | 1540 | static irqreturn_t |
1541 | de4x5_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 1541 | de4x5_interrupt(int irq, void *dev_id) |
1542 | { | 1542 | { |
1543 | struct net_device *dev = (struct net_device *)dev_id; | 1543 | struct net_device *dev = dev_id; |
1544 | struct de4x5_private *lp; | 1544 | struct de4x5_private *lp; |
1545 | s32 imr, omr, sts, limit; | 1545 | s32 imr, omr, sts, limit; |
1546 | u_long iobase; | 1546 | u_long iobase; |
1547 | unsigned int handled = 0; | 1547 | unsigned int handled = 0; |
1548 | 1548 | ||
1549 | if (dev == NULL) { | ||
1550 | printk ("de4x5_interrupt(): irq %d for unknown device.\n", irq); | ||
1551 | return IRQ_NONE; | ||
1552 | } | ||
1553 | lp = netdev_priv(dev); | 1549 | lp = netdev_priv(dev); |
1554 | spin_lock(&lp->lock); | 1550 | spin_lock(&lp->lock); |
1555 | iobase = dev->base_addr; | 1551 | iobase = dev->base_addr; |
diff --git a/drivers/net/tulip/dmfe.c b/drivers/net/tulip/dmfe.c index ccf2c225f084..4dd8a0bae860 100644 --- a/drivers/net/tulip/dmfe.c +++ b/drivers/net/tulip/dmfe.c | |||
@@ -300,7 +300,7 @@ static struct net_device_stats * dmfe_get_stats(struct DEVICE *); | |||
300 | static void dmfe_set_filter_mode(struct DEVICE *); | 300 | static void dmfe_set_filter_mode(struct DEVICE *); |
301 | static const struct ethtool_ops netdev_ethtool_ops; | 301 | static const struct ethtool_ops netdev_ethtool_ops; |
302 | static u16 read_srom_word(long ,int); | 302 | static u16 read_srom_word(long ,int); |
303 | static irqreturn_t dmfe_interrupt(int , void *, struct pt_regs *); | 303 | static irqreturn_t dmfe_interrupt(int , void *); |
304 | #ifdef CONFIG_NET_POLL_CONTROLLER | 304 | #ifdef CONFIG_NET_POLL_CONTROLLER |
305 | static void poll_dmfe (struct net_device *dev); | 305 | static void poll_dmfe (struct net_device *dev); |
306 | #endif | 306 | #endif |
@@ -735,7 +735,7 @@ static int dmfe_stop(struct DEVICE *dev) | |||
735 | * receive the packet to upper layer, free the transmitted packet | 735 | * receive the packet to upper layer, free the transmitted packet |
736 | */ | 736 | */ |
737 | 737 | ||
738 | static irqreturn_t dmfe_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 738 | static irqreturn_t dmfe_interrupt(int irq, void *dev_id) |
739 | { | 739 | { |
740 | struct DEVICE *dev = dev_id; | 740 | struct DEVICE *dev = dev_id; |
741 | struct dmfe_board_info *db = netdev_priv(dev); | 741 | struct dmfe_board_info *db = netdev_priv(dev); |
@@ -806,7 +806,7 @@ static void poll_dmfe (struct net_device *dev) | |||
806 | /* disable_irq here is not very nice, but with the lockless | 806 | /* disable_irq here is not very nice, but with the lockless |
807 | interrupt handler we have no other choice. */ | 807 | interrupt handler we have no other choice. */ |
808 | disable_irq(dev->irq); | 808 | disable_irq(dev->irq); |
809 | dmfe_interrupt (dev->irq, dev, NULL); | 809 | dmfe_interrupt (dev->irq, dev); |
810 | enable_irq(dev->irq); | 810 | enable_irq(dev->irq); |
811 | } | 811 | } |
812 | #endif | 812 | #endif |
diff --git a/drivers/net/tulip/interrupt.c b/drivers/net/tulip/interrupt.c index 7f8f5d42a761..e3488d7b8ede 100644 --- a/drivers/net/tulip/interrupt.c +++ b/drivers/net/tulip/interrupt.c | |||
@@ -496,7 +496,7 @@ static inline unsigned int phy_interrupt (struct net_device *dev) | |||
496 | 496 | ||
497 | /* The interrupt handler does all of the Rx thread work and cleans up | 497 | /* The interrupt handler does all of the Rx thread work and cleans up |
498 | after the Tx thread. */ | 498 | after the Tx thread. */ |
499 | irqreturn_t tulip_interrupt(int irq, void *dev_instance, struct pt_regs *regs) | 499 | irqreturn_t tulip_interrupt(int irq, void *dev_instance) |
500 | { | 500 | { |
501 | struct net_device *dev = (struct net_device *)dev_instance; | 501 | struct net_device *dev = (struct net_device *)dev_instance; |
502 | struct tulip_private *tp = netdev_priv(dev); | 502 | struct tulip_private *tp = netdev_priv(dev); |
diff --git a/drivers/net/tulip/tulip.h b/drivers/net/tulip/tulip.h index 25668ddb1f7e..ad107f45c7b1 100644 --- a/drivers/net/tulip/tulip.h +++ b/drivers/net/tulip/tulip.h | |||
@@ -424,7 +424,7 @@ int tulip_read_eeprom(struct net_device *dev, int location, int addr_len); | |||
424 | /* interrupt.c */ | 424 | /* interrupt.c */ |
425 | extern unsigned int tulip_max_interrupt_work; | 425 | extern unsigned int tulip_max_interrupt_work; |
426 | extern int tulip_rx_copybreak; | 426 | extern int tulip_rx_copybreak; |
427 | irqreturn_t tulip_interrupt(int irq, void *dev_instance, struct pt_regs *regs); | 427 | irqreturn_t tulip_interrupt(int irq, void *dev_instance); |
428 | int tulip_refill_rx(struct net_device *dev); | 428 | int tulip_refill_rx(struct net_device *dev); |
429 | #ifdef CONFIG_TULIP_NAPI | 429 | #ifdef CONFIG_TULIP_NAPI |
430 | int tulip_poll(struct net_device *dev, int *budget); | 430 | int tulip_poll(struct net_device *dev, int *budget); |
diff --git a/drivers/net/tulip/tulip_core.c b/drivers/net/tulip/tulip_core.c index 831919a81918..0aee618f883c 100644 --- a/drivers/net/tulip/tulip_core.c +++ b/drivers/net/tulip/tulip_core.c | |||
@@ -1823,7 +1823,7 @@ static void poll_tulip (struct net_device *dev) | |||
1823 | /* disable_irq here is not very nice, but with the lockless | 1823 | /* disable_irq here is not very nice, but with the lockless |
1824 | interrupt handler we have no other choice. */ | 1824 | interrupt handler we have no other choice. */ |
1825 | disable_irq(dev->irq); | 1825 | disable_irq(dev->irq); |
1826 | tulip_interrupt (dev->irq, dev, NULL); | 1826 | tulip_interrupt (dev->irq, dev); |
1827 | enable_irq(dev->irq); | 1827 | enable_irq(dev->irq); |
1828 | } | 1828 | } |
1829 | #endif | 1829 | #endif |
diff --git a/drivers/net/tulip/uli526x.c b/drivers/net/tulip/uli526x.c index 0b176be51eb3..229158e8e4be 100644 --- a/drivers/net/tulip/uli526x.c +++ b/drivers/net/tulip/uli526x.c | |||
@@ -224,7 +224,7 @@ static struct net_device_stats * uli526x_get_stats(struct net_device *); | |||
224 | static void uli526x_set_filter_mode(struct net_device *); | 224 | static void uli526x_set_filter_mode(struct net_device *); |
225 | static const struct ethtool_ops netdev_ethtool_ops; | 225 | static const struct ethtool_ops netdev_ethtool_ops; |
226 | static u16 read_srom_word(long, int); | 226 | static u16 read_srom_word(long, int); |
227 | static irqreturn_t uli526x_interrupt(int, void *, struct pt_regs *); | 227 | static irqreturn_t uli526x_interrupt(int, void *); |
228 | static void uli526x_descriptor_init(struct uli526x_board_info *, unsigned long); | 228 | static void uli526x_descriptor_init(struct uli526x_board_info *, unsigned long); |
229 | static void allocate_rx_buffer(struct uli526x_board_info *); | 229 | static void allocate_rx_buffer(struct uli526x_board_info *); |
230 | static void update_cr6(u32, unsigned long); | 230 | static void update_cr6(u32, unsigned long); |
@@ -659,7 +659,7 @@ static int uli526x_stop(struct net_device *dev) | |||
659 | * receive the packet to upper layer, free the transmitted packet | 659 | * receive the packet to upper layer, free the transmitted packet |
660 | */ | 660 | */ |
661 | 661 | ||
662 | static irqreturn_t uli526x_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 662 | static irqreturn_t uli526x_interrupt(int irq, void *dev_id) |
663 | { | 663 | { |
664 | struct net_device *dev = dev_id; | 664 | struct net_device *dev = dev_id; |
665 | struct uli526x_board_info *db = netdev_priv(dev); | 665 | struct uli526x_board_info *db = netdev_priv(dev); |
diff --git a/drivers/net/tulip/winbond-840.c b/drivers/net/tulip/winbond-840.c index 2fca1ee24f5a..002a05e0722f 100644 --- a/drivers/net/tulip/winbond-840.c +++ b/drivers/net/tulip/winbond-840.c | |||
@@ -332,7 +332,7 @@ static void tx_timeout(struct net_device *dev); | |||
332 | static int alloc_ringdesc(struct net_device *dev); | 332 | static int alloc_ringdesc(struct net_device *dev); |
333 | static void free_ringdesc(struct netdev_private *np); | 333 | static void free_ringdesc(struct netdev_private *np); |
334 | static int start_tx(struct sk_buff *skb, struct net_device *dev); | 334 | static int start_tx(struct sk_buff *skb, struct net_device *dev); |
335 | static irqreturn_t intr_handler(int irq, void *dev_instance, struct pt_regs *regs); | 335 | static irqreturn_t intr_handler(int irq, void *dev_instance); |
336 | static void netdev_error(struct net_device *dev, int intr_status); | 336 | static void netdev_error(struct net_device *dev, int intr_status); |
337 | static int netdev_rx(struct net_device *dev); | 337 | static int netdev_rx(struct net_device *dev); |
338 | static u32 __set_rx_mode(struct net_device *dev); | 338 | static u32 __set_rx_mode(struct net_device *dev); |
@@ -1110,7 +1110,7 @@ static void netdev_tx_done(struct net_device *dev) | |||
1110 | 1110 | ||
1111 | /* The interrupt handler does all of the Rx thread work and cleans up | 1111 | /* The interrupt handler does all of the Rx thread work and cleans up |
1112 | after the Tx thread. */ | 1112 | after the Tx thread. */ |
1113 | static irqreturn_t intr_handler(int irq, void *dev_instance, struct pt_regs *rgs) | 1113 | static irqreturn_t intr_handler(int irq, void *dev_instance) |
1114 | { | 1114 | { |
1115 | struct net_device *dev = (struct net_device *)dev_instance; | 1115 | struct net_device *dev = (struct net_device *)dev_instance; |
1116 | struct netdev_private *np = netdev_priv(dev); | 1116 | struct netdev_private *np = netdev_priv(dev); |
diff --git a/drivers/net/tulip/xircom_cb.c b/drivers/net/tulip/xircom_cb.c index 629eac645289..61d313049dd0 100644 --- a/drivers/net/tulip/xircom_cb.c +++ b/drivers/net/tulip/xircom_cb.c | |||
@@ -114,7 +114,7 @@ struct xircom_private { | |||
114 | /* Function prototypes */ | 114 | /* Function prototypes */ |
115 | static int xircom_probe(struct pci_dev *pdev, const struct pci_device_id *id); | 115 | static int xircom_probe(struct pci_dev *pdev, const struct pci_device_id *id); |
116 | static void xircom_remove(struct pci_dev *pdev); | 116 | static void xircom_remove(struct pci_dev *pdev); |
117 | static irqreturn_t xircom_interrupt(int irq, void *dev_instance, struct pt_regs *regs); | 117 | static irqreturn_t xircom_interrupt(int irq, void *dev_instance); |
118 | static int xircom_start_xmit(struct sk_buff *skb, struct net_device *dev); | 118 | static int xircom_start_xmit(struct sk_buff *skb, struct net_device *dev); |
119 | static int xircom_open(struct net_device *dev); | 119 | static int xircom_open(struct net_device *dev); |
120 | static int xircom_close(struct net_device *dev); | 120 | static int xircom_close(struct net_device *dev); |
@@ -334,7 +334,7 @@ static void __devexit xircom_remove(struct pci_dev *pdev) | |||
334 | leave("xircom_remove"); | 334 | leave("xircom_remove"); |
335 | } | 335 | } |
336 | 336 | ||
337 | static irqreturn_t xircom_interrupt(int irq, void *dev_instance, struct pt_regs *regs) | 337 | static irqreturn_t xircom_interrupt(int irq, void *dev_instance) |
338 | { | 338 | { |
339 | struct net_device *dev = (struct net_device *) dev_instance; | 339 | struct net_device *dev = (struct net_device *) dev_instance; |
340 | struct xircom_private *card = netdev_priv(dev); | 340 | struct xircom_private *card = netdev_priv(dev); |
@@ -513,7 +513,7 @@ static struct net_device_stats *xircom_get_stats(struct net_device *dev) | |||
513 | static void xircom_poll_controller(struct net_device *dev) | 513 | static void xircom_poll_controller(struct net_device *dev) |
514 | { | 514 | { |
515 | disable_irq(dev->irq); | 515 | disable_irq(dev->irq); |
516 | xircom_interrupt(dev->irq, dev, NULL); | 516 | xircom_interrupt(dev->irq, dev); |
517 | enable_irq(dev->irq); | 517 | enable_irq(dev->irq); |
518 | } | 518 | } |
519 | #endif | 519 | #endif |
diff --git a/drivers/net/tulip/xircom_tulip_cb.c b/drivers/net/tulip/xircom_tulip_cb.c index 312788caa4c6..a998c5d0ae9c 100644 --- a/drivers/net/tulip/xircom_tulip_cb.c +++ b/drivers/net/tulip/xircom_tulip_cb.c | |||
@@ -328,7 +328,7 @@ static void xircom_init_ring(struct net_device *dev); | |||
328 | static int xircom_start_xmit(struct sk_buff *skb, struct net_device *dev); | 328 | static int xircom_start_xmit(struct sk_buff *skb, struct net_device *dev); |
329 | static int xircom_rx(struct net_device *dev); | 329 | static int xircom_rx(struct net_device *dev); |
330 | static void xircom_media_change(struct net_device *dev); | 330 | static void xircom_media_change(struct net_device *dev); |
331 | static irqreturn_t xircom_interrupt(int irq, void *dev_instance, struct pt_regs *regs); | 331 | static irqreturn_t xircom_interrupt(int irq, void *dev_instance); |
332 | static int xircom_close(struct net_device *dev); | 332 | static int xircom_close(struct net_device *dev); |
333 | static struct net_device_stats *xircom_get_stats(struct net_device *dev); | 333 | static struct net_device_stats *xircom_get_stats(struct net_device *dev); |
334 | static int xircom_ioctl(struct net_device *dev, struct ifreq *rq, int cmd); | 334 | static int xircom_ioctl(struct net_device *dev, struct ifreq *rq, int cmd); |
@@ -1044,7 +1044,7 @@ static void check_duplex(struct net_device *dev) | |||
1044 | 1044 | ||
1045 | /* The interrupt handler does all of the Rx thread work and cleans up | 1045 | /* The interrupt handler does all of the Rx thread work and cleans up |
1046 | after the Tx thread. */ | 1046 | after the Tx thread. */ |
1047 | static irqreturn_t xircom_interrupt(int irq, void *dev_instance, struct pt_regs *regs) | 1047 | static irqreturn_t xircom_interrupt(int irq, void *dev_instance) |
1048 | { | 1048 | { |
1049 | struct net_device *dev = dev_instance; | 1049 | struct net_device *dev = dev_instance; |
1050 | struct xircom_private *tp = netdev_priv(dev); | 1050 | struct xircom_private *tp = netdev_priv(dev); |
diff --git a/drivers/net/typhoon.c b/drivers/net/typhoon.c index d5c32e9caa97..3bf9e630404f 100644 --- a/drivers/net/typhoon.c +++ b/drivers/net/typhoon.c | |||
@@ -1826,7 +1826,7 @@ typhoon_poll(struct net_device *dev, int *total_budget) | |||
1826 | } | 1826 | } |
1827 | 1827 | ||
1828 | static irqreturn_t | 1828 | static irqreturn_t |
1829 | typhoon_interrupt(int irq, void *dev_instance, struct pt_regs *rgs) | 1829 | typhoon_interrupt(int irq, void *dev_instance) |
1830 | { | 1830 | { |
1831 | struct net_device *dev = (struct net_device *) dev_instance; | 1831 | struct net_device *dev = (struct net_device *) dev_instance; |
1832 | struct typhoon *tp = dev->priv; | 1832 | struct typhoon *tp = dev->priv; |
diff --git a/drivers/net/ucc_geth.c b/drivers/net/ucc_geth.c index 700ebd7d1457..12cd7b561f35 100644 --- a/drivers/net/ucc_geth.c +++ b/drivers/net/ucc_geth.c | |||
@@ -3844,8 +3844,7 @@ static int ucc_geth_poll(struct net_device *dev, int *budget) | |||
3844 | } | 3844 | } |
3845 | #endif /* CONFIG_UGETH_NAPI */ | 3845 | #endif /* CONFIG_UGETH_NAPI */ |
3846 | 3846 | ||
3847 | static irqreturn_t ucc_geth_irq_handler(int irq, void *info, | 3847 | static irqreturn_t ucc_geth_irq_handler(int irq, void *info) |
3848 | struct pt_regs *regs) | ||
3849 | { | 3848 | { |
3850 | struct net_device *dev = (struct net_device *)info; | 3849 | struct net_device *dev = (struct net_device *)info; |
3851 | ucc_geth_private_t *ugeth = netdev_priv(dev); | 3850 | ucc_geth_private_t *ugeth = netdev_priv(dev); |
@@ -3910,7 +3909,7 @@ static irqreturn_t ucc_geth_irq_handler(int irq, void *info, | |||
3910 | return IRQ_HANDLED; | 3909 | return IRQ_HANDLED; |
3911 | } | 3910 | } |
3912 | 3911 | ||
3913 | static irqreturn_t phy_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 3912 | static irqreturn_t phy_interrupt(int irq, void *dev_id) |
3914 | { | 3913 | { |
3915 | struct net_device *dev = (struct net_device *)dev_id; | 3914 | struct net_device *dev = (struct net_device *)dev_id; |
3916 | ucc_geth_private_t *ugeth = netdev_priv(dev); | 3915 | ucc_geth_private_t *ugeth = netdev_priv(dev); |
diff --git a/drivers/net/via-rhine.c b/drivers/net/via-rhine.c index cbebf1b96e9d..ebbda1d8f542 100644 --- a/drivers/net/via-rhine.c +++ b/drivers/net/via-rhine.c | |||
@@ -404,7 +404,7 @@ static void mdio_write(struct net_device *dev, int phy_id, int location, int val | |||
404 | static int rhine_open(struct net_device *dev); | 404 | static int rhine_open(struct net_device *dev); |
405 | static void rhine_tx_timeout(struct net_device *dev); | 405 | static void rhine_tx_timeout(struct net_device *dev); |
406 | static int rhine_start_tx(struct sk_buff *skb, struct net_device *dev); | 406 | static int rhine_start_tx(struct sk_buff *skb, struct net_device *dev); |
407 | static irqreturn_t rhine_interrupt(int irq, void *dev_instance, struct pt_regs *regs); | 407 | static irqreturn_t rhine_interrupt(int irq, void *dev_instance); |
408 | static void rhine_tx(struct net_device *dev); | 408 | static void rhine_tx(struct net_device *dev); |
409 | static int rhine_rx(struct net_device *dev, int limit); | 409 | static int rhine_rx(struct net_device *dev, int limit); |
410 | static void rhine_error(struct net_device *dev, int intr_status); | 410 | static void rhine_error(struct net_device *dev, int intr_status); |
@@ -569,7 +569,7 @@ static void __devinit rhine_reload_eeprom(long pioaddr, struct net_device *dev) | |||
569 | static void rhine_poll(struct net_device *dev) | 569 | static void rhine_poll(struct net_device *dev) |
570 | { | 570 | { |
571 | disable_irq(dev->irq); | 571 | disable_irq(dev->irq); |
572 | rhine_interrupt(dev->irq, (void *)dev, NULL); | 572 | rhine_interrupt(dev->irq, (void *)dev); |
573 | enable_irq(dev->irq); | 573 | enable_irq(dev->irq); |
574 | } | 574 | } |
575 | #endif | 575 | #endif |
@@ -1290,7 +1290,7 @@ static int rhine_start_tx(struct sk_buff *skb, struct net_device *dev) | |||
1290 | 1290 | ||
1291 | /* The interrupt handler does all of the Rx thread work and cleans up | 1291 | /* The interrupt handler does all of the Rx thread work and cleans up |
1292 | after the Tx thread. */ | 1292 | after the Tx thread. */ |
1293 | static irqreturn_t rhine_interrupt(int irq, void *dev_instance, struct pt_regs *rgs) | 1293 | static irqreturn_t rhine_interrupt(int irq, void *dev_instance) |
1294 | { | 1294 | { |
1295 | struct net_device *dev = dev_instance; | 1295 | struct net_device *dev = dev_instance; |
1296 | struct rhine_private *rp = netdev_priv(dev); | 1296 | struct rhine_private *rp = netdev_priv(dev); |
diff --git a/drivers/net/via-velocity.c b/drivers/net/via-velocity.c index 7d8808ce541f..74f894795a1b 100644 --- a/drivers/net/via-velocity.c +++ b/drivers/net/via-velocity.c | |||
@@ -236,7 +236,7 @@ static void velocity_print_info(struct velocity_info *vptr); | |||
236 | static int velocity_open(struct net_device *dev); | 236 | static int velocity_open(struct net_device *dev); |
237 | static int velocity_change_mtu(struct net_device *dev, int mtu); | 237 | static int velocity_change_mtu(struct net_device *dev, int mtu); |
238 | static int velocity_xmit(struct sk_buff *skb, struct net_device *dev); | 238 | static int velocity_xmit(struct sk_buff *skb, struct net_device *dev); |
239 | static int velocity_intr(int irq, void *dev_instance, struct pt_regs *regs); | 239 | static int velocity_intr(int irq, void *dev_instance); |
240 | static void velocity_set_multi(struct net_device *dev); | 240 | static void velocity_set_multi(struct net_device *dev); |
241 | static struct net_device_stats *velocity_get_stats(struct net_device *dev); | 241 | static struct net_device_stats *velocity_get_stats(struct net_device *dev); |
242 | static int velocity_ioctl(struct net_device *dev, struct ifreq *rq, int cmd); | 242 | static int velocity_ioctl(struct net_device *dev, struct ifreq *rq, int cmd); |
@@ -2036,7 +2036,6 @@ static int velocity_xmit(struct sk_buff *skb, struct net_device *dev) | |||
2036 | * velocity_intr - interrupt callback | 2036 | * velocity_intr - interrupt callback |
2037 | * @irq: interrupt number | 2037 | * @irq: interrupt number |
2038 | * @dev_instance: interrupting device | 2038 | * @dev_instance: interrupting device |
2039 | * @pt_regs: CPU register state at interrupt | ||
2040 | * | 2039 | * |
2041 | * Called whenever an interrupt is generated by the velocity | 2040 | * Called whenever an interrupt is generated by the velocity |
2042 | * adapter IRQ line. We may not be the source of the interrupt | 2041 | * adapter IRQ line. We may not be the source of the interrupt |
@@ -2044,7 +2043,7 @@ static int velocity_xmit(struct sk_buff *skb, struct net_device *dev) | |||
2044 | * efficiently as possible. | 2043 | * efficiently as possible. |
2045 | */ | 2044 | */ |
2046 | 2045 | ||
2047 | static int velocity_intr(int irq, void *dev_instance, struct pt_regs *regs) | 2046 | static int velocity_intr(int irq, void *dev_instance) |
2048 | { | 2047 | { |
2049 | struct net_device *dev = dev_instance; | 2048 | struct net_device *dev = dev_instance; |
2050 | struct velocity_info *vptr = netdev_priv(dev); | 2049 | struct velocity_info *vptr = netdev_priv(dev); |
diff --git a/drivers/net/wan/cosa.c b/drivers/net/wan/cosa.c index 1f95b4864ea1..e1bf8b93f958 100644 --- a/drivers/net/wan/cosa.c +++ b/drivers/net/wan/cosa.c | |||
@@ -345,7 +345,7 @@ static void put_driver_status(struct cosa_data *cosa); | |||
345 | static void put_driver_status_nolock(struct cosa_data *cosa); | 345 | static void put_driver_status_nolock(struct cosa_data *cosa); |
346 | 346 | ||
347 | /* Interrupt handling */ | 347 | /* Interrupt handling */ |
348 | static irqreturn_t cosa_interrupt(int irq, void *cosa, struct pt_regs *regs); | 348 | static irqreturn_t cosa_interrupt(int irq, void *cosa); |
349 | 349 | ||
350 | /* I/O ops debugging */ | 350 | /* I/O ops debugging */ |
351 | #ifdef DEBUG_IO | 351 | #ifdef DEBUG_IO |
@@ -1972,7 +1972,7 @@ out: | |||
1972 | spin_unlock_irqrestore(&cosa->lock, flags); | 1972 | spin_unlock_irqrestore(&cosa->lock, flags); |
1973 | } | 1973 | } |
1974 | 1974 | ||
1975 | static irqreturn_t cosa_interrupt(int irq, void *cosa_, struct pt_regs *regs) | 1975 | static irqreturn_t cosa_interrupt(int irq, void *cosa_) |
1976 | { | 1976 | { |
1977 | unsigned status; | 1977 | unsigned status; |
1978 | int count = 0; | 1978 | int count = 0; |
diff --git a/drivers/net/wan/cycx_main.c b/drivers/net/wan/cycx_main.c index a5e7ce1bd16a..6e5f1c898517 100644 --- a/drivers/net/wan/cycx_main.c +++ b/drivers/net/wan/cycx_main.c | |||
@@ -74,7 +74,7 @@ static int cycx_wan_setup(struct wan_device *wandev, wandev_conf_t *conf); | |||
74 | static int cycx_wan_shutdown(struct wan_device *wandev); | 74 | static int cycx_wan_shutdown(struct wan_device *wandev); |
75 | 75 | ||
76 | /* Miscellaneous functions */ | 76 | /* Miscellaneous functions */ |
77 | static irqreturn_t cycx_isr(int irq, void *dev_id, struct pt_regs *regs); | 77 | static irqreturn_t cycx_isr(int irq, void *dev_id); |
78 | 78 | ||
79 | /* Global Data | 79 | /* Global Data |
80 | * Note: All data must be explicitly initialized!!! | 80 | * Note: All data must be explicitly initialized!!! |
@@ -301,11 +301,11 @@ out: return ret; | |||
301 | * o acknowledge Cyclom 2X hardware interrupt. | 301 | * o acknowledge Cyclom 2X hardware interrupt. |
302 | * o call protocol-specific interrupt service routine, if any. | 302 | * o call protocol-specific interrupt service routine, if any. |
303 | */ | 303 | */ |
304 | static irqreturn_t cycx_isr(int irq, void *dev_id, struct pt_regs *regs) | 304 | static irqreturn_t cycx_isr(int irq, void *dev_id) |
305 | { | 305 | { |
306 | struct cycx_device *card = (struct cycx_device *)dev_id; | 306 | struct cycx_device *card = dev_id; |
307 | 307 | ||
308 | if (!card || card->wandev.state == WAN_UNCONFIGURED) | 308 | if (card->wandev.state == WAN_UNCONFIGURED) |
309 | goto out; | 309 | goto out; |
310 | 310 | ||
311 | if (card->in_isr) { | 311 | if (card->in_isr) { |
diff --git a/drivers/net/wan/dscc4.c b/drivers/net/wan/dscc4.c index af4d4155905b..25021a7992a9 100644 --- a/drivers/net/wan/dscc4.c +++ b/drivers/net/wan/dscc4.c | |||
@@ -365,7 +365,7 @@ static int dscc4_init_ring(struct net_device *); | |||
365 | static void dscc4_release_ring(struct dscc4_dev_priv *); | 365 | static void dscc4_release_ring(struct dscc4_dev_priv *); |
366 | static void dscc4_timer(unsigned long); | 366 | static void dscc4_timer(unsigned long); |
367 | static void dscc4_tx_timeout(struct net_device *); | 367 | static void dscc4_tx_timeout(struct net_device *); |
368 | static irqreturn_t dscc4_irq(int irq, void *dev_id, struct pt_regs *ptregs); | 368 | static irqreturn_t dscc4_irq(int irq, void *dev_id); |
369 | static int dscc4_hdlc_attach(struct net_device *, unsigned short, unsigned short); | 369 | static int dscc4_hdlc_attach(struct net_device *, unsigned short, unsigned short); |
370 | static int dscc4_set_iface(struct dscc4_dev_priv *, struct net_device *); | 370 | static int dscc4_set_iface(struct dscc4_dev_priv *, struct net_device *); |
371 | #ifdef DSCC4_POLLING | 371 | #ifdef DSCC4_POLLING |
@@ -1476,7 +1476,7 @@ static int dscc4_set_iface(struct dscc4_dev_priv *dpriv, struct net_device *dev) | |||
1476 | return ret; | 1476 | return ret; |
1477 | } | 1477 | } |
1478 | 1478 | ||
1479 | static irqreturn_t dscc4_irq(int irq, void *token, struct pt_regs *ptregs) | 1479 | static irqreturn_t dscc4_irq(int irq, void *token) |
1480 | { | 1480 | { |
1481 | struct dscc4_dev_priv *root = token; | 1481 | struct dscc4_dev_priv *root = token; |
1482 | struct dscc4_pci_priv *priv; | 1482 | struct dscc4_pci_priv *priv; |
diff --git a/drivers/net/wan/farsync.c b/drivers/net/wan/farsync.c index 564351aafa41..c45d6a83339d 100644 --- a/drivers/net/wan/farsync.c +++ b/drivers/net/wan/farsync.c | |||
@@ -1498,7 +1498,7 @@ do_bottom_half_rx(struct fst_card_info *card) | |||
1498 | * Dev_id is our fst_card_info pointer | 1498 | * Dev_id is our fst_card_info pointer |
1499 | */ | 1499 | */ |
1500 | static irqreturn_t | 1500 | static irqreturn_t |
1501 | fst_intr(int irq, void *dev_id, struct pt_regs *regs) | 1501 | fst_intr(int irq, void *dev_id) |
1502 | { | 1502 | { |
1503 | struct fst_card_info *card; | 1503 | struct fst_card_info *card; |
1504 | struct fst_port_info *port; | 1504 | struct fst_port_info *port; |
diff --git a/drivers/net/wan/hd6457x.c b/drivers/net/wan/hd6457x.c index dce2bb317b82..8d0a1f2f00e5 100644 --- a/drivers/net/wan/hd6457x.c +++ b/drivers/net/wan/hd6457x.c | |||
@@ -424,7 +424,7 @@ static inline void sca_tx_intr(port_t *port) | |||
424 | 424 | ||
425 | 425 | ||
426 | 426 | ||
427 | static irqreturn_t sca_intr(int irq, void* dev_id, struct pt_regs *regs) | 427 | static irqreturn_t sca_intr(int irq, void* dev_id) |
428 | { | 428 | { |
429 | card_t *card = dev_id; | 429 | card_t *card = dev_id; |
430 | int i; | 430 | int i; |
diff --git a/drivers/net/wan/lmc/lmc_main.c b/drivers/net/wan/lmc/lmc_main.c index 7b5d81deb028..2b54f1bc3a0d 100644 --- a/drivers/net/wan/lmc/lmc_main.c +++ b/drivers/net/wan/lmc/lmc_main.c | |||
@@ -100,7 +100,7 @@ static int lmc_rx (struct net_device *dev); | |||
100 | static int lmc_open(struct net_device *dev); | 100 | static int lmc_open(struct net_device *dev); |
101 | static int lmc_close(struct net_device *dev); | 101 | static int lmc_close(struct net_device *dev); |
102 | static struct net_device_stats *lmc_get_stats(struct net_device *dev); | 102 | static struct net_device_stats *lmc_get_stats(struct net_device *dev); |
103 | static irqreturn_t lmc_interrupt(int irq, void *dev_instance, struct pt_regs *regs); | 103 | static irqreturn_t lmc_interrupt(int irq, void *dev_instance); |
104 | static void lmc_initcsrs(lmc_softc_t * const sc, lmc_csrptr_t csr_base, size_t csr_size); | 104 | static void lmc_initcsrs(lmc_softc_t * const sc, lmc_csrptr_t csr_base, size_t csr_size); |
105 | static void lmc_softreset(lmc_softc_t * const); | 105 | static void lmc_softreset(lmc_softc_t * const); |
106 | static void lmc_running_reset(struct net_device *dev); | 106 | static void lmc_running_reset(struct net_device *dev); |
@@ -1273,7 +1273,7 @@ static int lmc_ifdown (struct net_device *dev) /*fold00*/ | |||
1273 | /* Interrupt handling routine. This will take an incoming packet, or clean | 1273 | /* Interrupt handling routine. This will take an incoming packet, or clean |
1274 | * up after a trasmit. | 1274 | * up after a trasmit. |
1275 | */ | 1275 | */ |
1276 | static irqreturn_t lmc_interrupt (int irq, void *dev_instance, struct pt_regs *regs) /*fold00*/ | 1276 | static irqreturn_t lmc_interrupt (int irq, void *dev_instance) /*fold00*/ |
1277 | { | 1277 | { |
1278 | struct net_device *dev = (struct net_device *) dev_instance; | 1278 | struct net_device *dev = (struct net_device *) dev_instance; |
1279 | lmc_softc_t *sc; | 1279 | lmc_softc_t *sc; |
diff --git a/drivers/net/wan/pc300_drv.c b/drivers/net/wan/pc300_drv.c index 8d9b959bf15b..5823e3bca178 100644 --- a/drivers/net/wan/pc300_drv.c +++ b/drivers/net/wan/pc300_drv.c | |||
@@ -284,7 +284,7 @@ static void rx_dma_buf_pt_init(pc300_t *, int); | |||
284 | static void rx_dma_buf_init(pc300_t *, int); | 284 | static void rx_dma_buf_init(pc300_t *, int); |
285 | static void tx_dma_buf_check(pc300_t *, int); | 285 | static void tx_dma_buf_check(pc300_t *, int); |
286 | static void rx_dma_buf_check(pc300_t *, int); | 286 | static void rx_dma_buf_check(pc300_t *, int); |
287 | static irqreturn_t cpc_intr(int, void *, struct pt_regs *); | 287 | static irqreturn_t cpc_intr(int, void *); |
288 | static struct net_device_stats *cpc_get_stats(struct net_device *); | 288 | static struct net_device_stats *cpc_get_stats(struct net_device *); |
289 | static int clock_rate_calc(uclong, uclong, int *); | 289 | static int clock_rate_calc(uclong, uclong, int *); |
290 | static uclong detect_ram(pc300_t *); | 290 | static uclong detect_ram(pc300_t *); |
@@ -2363,7 +2363,7 @@ static void falc_intr(pc300_t * card) | |||
2363 | } | 2363 | } |
2364 | } | 2364 | } |
2365 | 2365 | ||
2366 | static irqreturn_t cpc_intr(int irq, void *dev_id, struct pt_regs *regs) | 2366 | static irqreturn_t cpc_intr(int irq, void *dev_id) |
2367 | { | 2367 | { |
2368 | pc300_t *card; | 2368 | pc300_t *card; |
2369 | volatile ucchar plx_status; | 2369 | volatile ucchar plx_status; |
diff --git a/drivers/net/wan/sbni.c b/drivers/net/wan/sbni.c index fc75bec19029..fc5c0c611ffd 100644 --- a/drivers/net/wan/sbni.c +++ b/drivers/net/wan/sbni.c | |||
@@ -119,7 +119,7 @@ static int sbni_ioctl( struct net_device *, struct ifreq *, int ); | |||
119 | static struct net_device_stats *sbni_get_stats( struct net_device * ); | 119 | static struct net_device_stats *sbni_get_stats( struct net_device * ); |
120 | static void set_multicast_list( struct net_device * ); | 120 | static void set_multicast_list( struct net_device * ); |
121 | 121 | ||
122 | static irqreturn_t sbni_interrupt( int, void *, struct pt_regs * ); | 122 | static irqreturn_t sbni_interrupt( int, void * ); |
123 | static void handle_channel( struct net_device * ); | 123 | static void handle_channel( struct net_device * ); |
124 | static int recv_frame( struct net_device * ); | 124 | static int recv_frame( struct net_device * ); |
125 | static void send_frame( struct net_device * ); | 125 | static void send_frame( struct net_device * ); |
@@ -501,7 +501,7 @@ sbni_start_xmit( struct sk_buff *skb, struct net_device *dev ) | |||
501 | */ | 501 | */ |
502 | 502 | ||
503 | static irqreturn_t | 503 | static irqreturn_t |
504 | sbni_interrupt( int irq, void *dev_id, struct pt_regs *regs ) | 504 | sbni_interrupt( int irq, void *dev_id ) |
505 | { | 505 | { |
506 | struct net_device *dev = (struct net_device *) dev_id; | 506 | struct net_device *dev = (struct net_device *) dev_id; |
507 | struct net_local *nl = (struct net_local *) dev->priv; | 507 | struct net_local *nl = (struct net_local *) dev->priv; |
diff --git a/drivers/net/wan/sdla.c b/drivers/net/wan/sdla.c index 0ba018f8382b..6a485f0556f4 100644 --- a/drivers/net/wan/sdla.c +++ b/drivers/net/wan/sdla.c | |||
@@ -867,7 +867,7 @@ static void sdla_receive(struct net_device *dev) | |||
867 | spin_unlock_irqrestore(&sdla_lock, flags); | 867 | spin_unlock_irqrestore(&sdla_lock, flags); |
868 | } | 868 | } |
869 | 869 | ||
870 | static irqreturn_t sdla_isr(int irq, void *dev_id, struct pt_regs * regs) | 870 | static irqreturn_t sdla_isr(int irq, void *dev_id) |
871 | { | 871 | { |
872 | struct net_device *dev; | 872 | struct net_device *dev; |
873 | struct frad_local *flp; | 873 | struct frad_local *flp; |
@@ -875,13 +875,7 @@ static irqreturn_t sdla_isr(int irq, void *dev_id, struct pt_regs * regs) | |||
875 | 875 | ||
876 | dev = dev_id; | 876 | dev = dev_id; |
877 | 877 | ||
878 | if (dev == NULL) | 878 | flp = netdev_priv(dev); |
879 | { | ||
880 | printk(KERN_WARNING "sdla_isr(): irq %d for unknown device.\n", irq); | ||
881 | return IRQ_NONE; | ||
882 | } | ||
883 | |||
884 | flp = dev->priv; | ||
885 | 879 | ||
886 | if (!flp->initialized) | 880 | if (!flp->initialized) |
887 | { | 881 | { |
diff --git a/drivers/net/wan/wanxl.c b/drivers/net/wan/wanxl.c index ec68f7dfd93f..c73601574334 100644 --- a/drivers/net/wan/wanxl.c +++ b/drivers/net/wan/wanxl.c | |||
@@ -244,7 +244,7 @@ static inline void wanxl_rx_intr(card_t *card) | |||
244 | 244 | ||
245 | 245 | ||
246 | 246 | ||
247 | static irqreturn_t wanxl_intr(int irq, void* dev_id, struct pt_regs *regs) | 247 | static irqreturn_t wanxl_intr(int irq, void* dev_id) |
248 | { | 248 | { |
249 | card_t *card = dev_id; | 249 | card_t *card = dev_id; |
250 | int i; | 250 | int i; |
diff --git a/drivers/net/wan/z85230.c b/drivers/net/wan/z85230.c index caa48f12fd0f..59ddd21c3958 100644 --- a/drivers/net/wan/z85230.c +++ b/drivers/net/wan/z85230.c | |||
@@ -728,7 +728,7 @@ EXPORT_SYMBOL(z8530_nop); | |||
728 | * channel). c->lock for both channels points to dev->lock | 728 | * channel). c->lock for both channels points to dev->lock |
729 | */ | 729 | */ |
730 | 730 | ||
731 | irqreturn_t z8530_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 731 | irqreturn_t z8530_interrupt(int irq, void *dev_id) |
732 | { | 732 | { |
733 | struct z8530_dev *dev=dev_id; | 733 | struct z8530_dev *dev=dev_id; |
734 | u8 intr; | 734 | u8 intr; |
diff --git a/drivers/net/wan/z85230.h b/drivers/net/wan/z85230.h index 77e53208045f..158aea7b8eac 100644 --- a/drivers/net/wan/z85230.h +++ b/drivers/net/wan/z85230.h | |||
@@ -396,7 +396,7 @@ struct z8530_dev | |||
396 | extern u8 z8530_dead_port[]; | 396 | extern u8 z8530_dead_port[]; |
397 | extern u8 z8530_hdlc_kilostream_85230[]; | 397 | extern u8 z8530_hdlc_kilostream_85230[]; |
398 | extern u8 z8530_hdlc_kilostream[]; | 398 | extern u8 z8530_hdlc_kilostream[]; |
399 | extern irqreturn_t z8530_interrupt(int, void *, struct pt_regs *); | 399 | extern irqreturn_t z8530_interrupt(int, void *); |
400 | extern void z8530_describe(struct z8530_dev *, char *mapping, unsigned long io); | 400 | extern void z8530_describe(struct z8530_dev *, char *mapping, unsigned long io); |
401 | extern int z8530_init(struct z8530_dev *); | 401 | extern int z8530_init(struct z8530_dev *); |
402 | extern int z8530_shutdown(struct z8530_dev *); | 402 | extern int z8530_shutdown(struct z8530_dev *); |
diff --git a/drivers/net/wireless/airo.c b/drivers/net/wireless/airo.c index 39d09345027c..0a33c8a56e13 100644 --- a/drivers/net/wireless/airo.c +++ b/drivers/net/wireless/airo.c | |||
@@ -1120,8 +1120,7 @@ static void mpi_receive_802_3(struct airo_info *ai); | |||
1120 | static void mpi_receive_802_11(struct airo_info *ai); | 1120 | static void mpi_receive_802_11(struct airo_info *ai); |
1121 | static int waitbusy (struct airo_info *ai); | 1121 | static int waitbusy (struct airo_info *ai); |
1122 | 1122 | ||
1123 | static irqreturn_t airo_interrupt( int irq, void* dev_id, struct pt_regs | 1123 | static irqreturn_t airo_interrupt( int irq, void* dev_id); |
1124 | *regs); | ||
1125 | static int airo_thread(void *data); | 1124 | static int airo_thread(void *data); |
1126 | static void timer_func( struct net_device *dev ); | 1125 | static void timer_func( struct net_device *dev ); |
1127 | static int airo_ioctl(struct net_device *dev, struct ifreq *rq, int cmd); | 1126 | static int airo_ioctl(struct net_device *dev, struct ifreq *rq, int cmd); |
@@ -3151,7 +3150,7 @@ static int airo_thread(void *data) { | |||
3151 | return 0; | 3150 | return 0; |
3152 | } | 3151 | } |
3153 | 3152 | ||
3154 | static irqreturn_t airo_interrupt ( int irq, void* dev_id, struct pt_regs *regs) { | 3153 | static irqreturn_t airo_interrupt ( int irq, void* dev_id) { |
3155 | struct net_device *dev = (struct net_device *)dev_id; | 3154 | struct net_device *dev = (struct net_device *)dev_id; |
3156 | u16 status; | 3155 | u16 status; |
3157 | u16 fid; | 3156 | u16 fid; |
diff --git a/drivers/net/wireless/arlan-main.c b/drivers/net/wireless/arlan-main.c index bb6bea4f3233..4688e56b69c7 100644 --- a/drivers/net/wireless/arlan-main.c +++ b/drivers/net/wireless/arlan-main.c | |||
@@ -78,7 +78,7 @@ static int arlans_found; | |||
78 | 78 | ||
79 | static int arlan_open(struct net_device *dev); | 79 | static int arlan_open(struct net_device *dev); |
80 | static int arlan_tx(struct sk_buff *skb, struct net_device *dev); | 80 | static int arlan_tx(struct sk_buff *skb, struct net_device *dev); |
81 | static irqreturn_t arlan_interrupt(int irq, void *dev_id, struct pt_regs *regs); | 81 | static irqreturn_t arlan_interrupt(int irq, void *dev_id); |
82 | static int arlan_close(struct net_device *dev); | 82 | static int arlan_close(struct net_device *dev); |
83 | static struct net_device_stats * | 83 | static struct net_device_stats * |
84 | arlan_statistics (struct net_device *dev); | 84 | arlan_statistics (struct net_device *dev); |
@@ -1651,7 +1651,7 @@ end_int_process: | |||
1651 | return; | 1651 | return; |
1652 | } | 1652 | } |
1653 | 1653 | ||
1654 | static irqreturn_t arlan_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 1654 | static irqreturn_t arlan_interrupt(int irq, void *dev_id) |
1655 | { | 1655 | { |
1656 | struct net_device *dev = dev_id; | 1656 | struct net_device *dev = dev_id; |
1657 | struct arlan_private *priv = netdev_priv(dev); | 1657 | struct arlan_private *priv = netdev_priv(dev); |
diff --git a/drivers/net/wireless/atmel.c b/drivers/net/wireless/atmel.c index 0fc267d626dc..31eed85de60f 100644 --- a/drivers/net/wireless/atmel.c +++ b/drivers/net/wireless/atmel.c | |||
@@ -1145,7 +1145,7 @@ next: | |||
1145 | } | 1145 | } |
1146 | } | 1146 | } |
1147 | 1147 | ||
1148 | static irqreturn_t service_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 1148 | static irqreturn_t service_interrupt(int irq, void *dev_id) |
1149 | { | 1149 | { |
1150 | struct net_device *dev = (struct net_device *) dev_id; | 1150 | struct net_device *dev = (struct net_device *) dev_id; |
1151 | struct atmel_private *priv = netdev_priv(dev); | 1151 | struct atmel_private *priv = netdev_priv(dev); |
diff --git a/drivers/net/wireless/bcm43xx/bcm43xx_main.c b/drivers/net/wireless/bcm43xx/bcm43xx_main.c index eb65db7393ba..bad3452ea893 100644 --- a/drivers/net/wireless/bcm43xx/bcm43xx_main.c +++ b/drivers/net/wireless/bcm43xx/bcm43xx_main.c | |||
@@ -1834,7 +1834,7 @@ static void bcm43xx_interrupt_ack(struct bcm43xx_private *bcm, u32 reason) | |||
1834 | } | 1834 | } |
1835 | 1835 | ||
1836 | /* Interrupt handler top-half */ | 1836 | /* Interrupt handler top-half */ |
1837 | static irqreturn_t bcm43xx_interrupt_handler(int irq, void *dev_id, struct pt_regs *regs) | 1837 | static irqreturn_t bcm43xx_interrupt_handler(int irq, void *dev_id) |
1838 | { | 1838 | { |
1839 | irqreturn_t ret = IRQ_HANDLED; | 1839 | irqreturn_t ret = IRQ_HANDLED; |
1840 | struct bcm43xx_private *bcm = dev_id; | 1840 | struct bcm43xx_private *bcm = dev_id; |
@@ -3963,7 +3963,7 @@ static void bcm43xx_net_poll_controller(struct net_device *net_dev) | |||
3963 | 3963 | ||
3964 | local_irq_save(flags); | 3964 | local_irq_save(flags); |
3965 | if (bcm43xx_status(bcm) == BCM43xx_STAT_INITIALIZED) | 3965 | if (bcm43xx_status(bcm) == BCM43xx_STAT_INITIALIZED) |
3966 | bcm43xx_interrupt_handler(bcm->irq, bcm, NULL); | 3966 | bcm43xx_interrupt_handler(bcm->irq, bcm); |
3967 | local_irq_restore(flags); | 3967 | local_irq_restore(flags); |
3968 | } | 3968 | } |
3969 | #endif /* CONFIG_NET_POLL_CONTROLLER */ | 3969 | #endif /* CONFIG_NET_POLL_CONTROLLER */ |
diff --git a/drivers/net/wireless/hostap/hostap_hw.c b/drivers/net/wireless/hostap/hostap_hw.c index d500012fdc7a..ed00ebb6e7f4 100644 --- a/drivers/net/wireless/hostap/hostap_hw.c +++ b/drivers/net/wireless/hostap/hostap_hw.c | |||
@@ -2622,7 +2622,7 @@ static void prism2_check_magic(local_info_t *local) | |||
2622 | 2622 | ||
2623 | 2623 | ||
2624 | /* Called only from hardware IRQ */ | 2624 | /* Called only from hardware IRQ */ |
2625 | static irqreturn_t prism2_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 2625 | static irqreturn_t prism2_interrupt(int irq, void *dev_id) |
2626 | { | 2626 | { |
2627 | struct net_device *dev = (struct net_device *) dev_id; | 2627 | struct net_device *dev = (struct net_device *) dev_id; |
2628 | struct hostap_interface *iface; | 2628 | struct hostap_interface *iface; |
diff --git a/drivers/net/wireless/ipw2100.c b/drivers/net/wireless/ipw2100.c index 599e2fe76188..4e4eaa2a99ca 100644 --- a/drivers/net/wireless/ipw2100.c +++ b/drivers/net/wireless/ipw2100.c | |||
@@ -3255,7 +3255,7 @@ static void ipw2100_irq_tasklet(struct ipw2100_priv *priv) | |||
3255 | IPW_DEBUG_ISR("exit\n"); | 3255 | IPW_DEBUG_ISR("exit\n"); |
3256 | } | 3256 | } |
3257 | 3257 | ||
3258 | static irqreturn_t ipw2100_interrupt(int irq, void *data, struct pt_regs *regs) | 3258 | static irqreturn_t ipw2100_interrupt(int irq, void *data) |
3259 | { | 3259 | { |
3260 | struct ipw2100_priv *priv = data; | 3260 | struct ipw2100_priv *priv = data; |
3261 | u32 inta, inta_mask; | 3261 | u32 inta, inta_mask; |
diff --git a/drivers/net/wireless/ipw2200.c b/drivers/net/wireless/ipw2200.c index 5685d7ba55bb..1f742814a01c 100644 --- a/drivers/net/wireless/ipw2200.c +++ b/drivers/net/wireless/ipw2200.c | |||
@@ -10467,7 +10467,7 @@ static const struct ethtool_ops ipw_ethtool_ops = { | |||
10467 | .set_eeprom = ipw_ethtool_set_eeprom, | 10467 | .set_eeprom = ipw_ethtool_set_eeprom, |
10468 | }; | 10468 | }; |
10469 | 10469 | ||
10470 | static irqreturn_t ipw_isr(int irq, void *data, struct pt_regs *regs) | 10470 | static irqreturn_t ipw_isr(int irq, void *data) |
10471 | { | 10471 | { |
10472 | struct ipw_priv *priv = data; | 10472 | struct ipw_priv *priv = data; |
10473 | u32 inta, inta_mask; | 10473 | u32 inta, inta_mask; |
diff --git a/drivers/net/wireless/netwave_cs.c b/drivers/net/wireless/netwave_cs.c index 36b5e004305e..6714e0dfa8d6 100644 --- a/drivers/net/wireless/netwave_cs.c +++ b/drivers/net/wireless/netwave_cs.c | |||
@@ -207,7 +207,7 @@ static int netwave_start_xmit( struct sk_buff *skb, struct net_device *dev); | |||
207 | static int netwave_rx( struct net_device *dev); | 207 | static int netwave_rx( struct net_device *dev); |
208 | 208 | ||
209 | /* Interrupt routines */ | 209 | /* Interrupt routines */ |
210 | static irqreturn_t netwave_interrupt(int irq, void *dev_id, struct pt_regs *regs); | 210 | static irqreturn_t netwave_interrupt(int irq, void *dev_id); |
211 | static void netwave_watchdog(struct net_device *); | 211 | static void netwave_watchdog(struct net_device *); |
212 | 212 | ||
213 | /* Statistics */ | 213 | /* Statistics */ |
@@ -1072,7 +1072,7 @@ static int netwave_start_xmit(struct sk_buff *skb, struct net_device *dev) { | |||
1072 | } /* netwave_start_xmit */ | 1072 | } /* netwave_start_xmit */ |
1073 | 1073 | ||
1074 | /* | 1074 | /* |
1075 | * Function netwave_interrupt (irq, dev_id, regs) | 1075 | * Function netwave_interrupt (irq, dev_id) |
1076 | * | 1076 | * |
1077 | * This function is the interrupt handler for the Netwave card. This | 1077 | * This function is the interrupt handler for the Netwave card. This |
1078 | * routine will be called whenever: | 1078 | * routine will be called whenever: |
@@ -1081,7 +1081,7 @@ static int netwave_start_xmit(struct sk_buff *skb, struct net_device *dev) { | |||
1081 | * ready to transmit another packet. | 1081 | * ready to transmit another packet. |
1082 | * 3. A command has completed execution. | 1082 | * 3. A command has completed execution. |
1083 | */ | 1083 | */ |
1084 | static irqreturn_t netwave_interrupt(int irq, void* dev_id, struct pt_regs *regs) | 1084 | static irqreturn_t netwave_interrupt(int irq, void* dev_id) |
1085 | { | 1085 | { |
1086 | kio_addr_t iobase; | 1086 | kio_addr_t iobase; |
1087 | u_char __iomem *ramBase; | 1087 | u_char __iomem *ramBase; |
diff --git a/drivers/net/wireless/orinoco.c b/drivers/net/wireless/orinoco.c index 9e19a963febc..b779c7dcc1a8 100644 --- a/drivers/net/wireless/orinoco.c +++ b/drivers/net/wireless/orinoco.c | |||
@@ -1952,9 +1952,9 @@ static void __orinoco_ev_wterr(struct net_device *dev, hermes_t *hw) | |||
1952 | dev->name); | 1952 | dev->name); |
1953 | } | 1953 | } |
1954 | 1954 | ||
1955 | irqreturn_t orinoco_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 1955 | irqreturn_t orinoco_interrupt(int irq, void *dev_id) |
1956 | { | 1956 | { |
1957 | struct net_device *dev = (struct net_device *)dev_id; | 1957 | struct net_device *dev = dev_id; |
1958 | struct orinoco_private *priv = netdev_priv(dev); | 1958 | struct orinoco_private *priv = netdev_priv(dev); |
1959 | hermes_t *hw = &priv->hw; | 1959 | hermes_t *hw = &priv->hw; |
1960 | int count = MAX_IRQLOOPS_PER_IRQ; | 1960 | int count = MAX_IRQLOOPS_PER_IRQ; |
diff --git a/drivers/net/wireless/orinoco.h b/drivers/net/wireless/orinoco.h index fb5700d6c454..4720fb20d66d 100644 --- a/drivers/net/wireless/orinoco.h +++ b/drivers/net/wireless/orinoco.h | |||
@@ -128,7 +128,7 @@ extern void free_orinocodev(struct net_device *dev); | |||
128 | extern int __orinoco_up(struct net_device *dev); | 128 | extern int __orinoco_up(struct net_device *dev); |
129 | extern int __orinoco_down(struct net_device *dev); | 129 | extern int __orinoco_down(struct net_device *dev); |
130 | extern int orinoco_reinit_firmware(struct net_device *dev); | 130 | extern int orinoco_reinit_firmware(struct net_device *dev); |
131 | extern irqreturn_t orinoco_interrupt(int irq, void * dev_id, struct pt_regs *regs); | 131 | extern irqreturn_t orinoco_interrupt(int irq, void * dev_id); |
132 | 132 | ||
133 | /********************************************************************/ | 133 | /********************************************************************/ |
134 | /* Locking and synchronization functions */ | 134 | /* Locking and synchronization functions */ |
diff --git a/drivers/net/wireless/prism54/islpci_dev.c b/drivers/net/wireless/prism54/islpci_dev.c index ab3c5a27efd9..ec1c00f19eb3 100644 --- a/drivers/net/wireless/prism54/islpci_dev.c +++ b/drivers/net/wireless/prism54/islpci_dev.c | |||
@@ -182,7 +182,7 @@ isl_upload_firmware(islpci_private *priv) | |||
182 | ******************************************************************************/ | 182 | ******************************************************************************/ |
183 | 183 | ||
184 | irqreturn_t | 184 | irqreturn_t |
185 | islpci_interrupt(int irq, void *config, struct pt_regs *regs) | 185 | islpci_interrupt(int irq, void *config) |
186 | { | 186 | { |
187 | u32 reg; | 187 | u32 reg; |
188 | islpci_private *priv = config; | 188 | islpci_private *priv = config; |
diff --git a/drivers/net/wireless/prism54/islpci_dev.h b/drivers/net/wireless/prism54/islpci_dev.h index 5049f37455b1..2f7e525d0cf6 100644 --- a/drivers/net/wireless/prism54/islpci_dev.h +++ b/drivers/net/wireless/prism54/islpci_dev.h | |||
@@ -198,7 +198,7 @@ islpci_state_t islpci_set_state(islpci_private *priv, islpci_state_t new_state); | |||
198 | 198 | ||
199 | #define ISLPCI_TX_TIMEOUT (2*HZ) | 199 | #define ISLPCI_TX_TIMEOUT (2*HZ) |
200 | 200 | ||
201 | irqreturn_t islpci_interrupt(int, void *, struct pt_regs *); | 201 | irqreturn_t islpci_interrupt(int, void *); |
202 | 202 | ||
203 | int prism54_post_setup(islpci_private *, int); | 203 | int prism54_post_setup(islpci_private *, int); |
204 | int islpci_reset(islpci_private *, int); | 204 | int islpci_reset(islpci_private *, int); |
diff --git a/drivers/net/wireless/ray_cs.c b/drivers/net/wireless/ray_cs.c index e82548ea609a..0b381d77015c 100644 --- a/drivers/net/wireless/ray_cs.c +++ b/drivers/net/wireless/ray_cs.c | |||
@@ -130,7 +130,7 @@ static void ray_update_parm(struct net_device *dev, UCHAR objid, UCHAR *value, i | |||
130 | static void verify_dl_startup(u_long); | 130 | static void verify_dl_startup(u_long); |
131 | 131 | ||
132 | /* Prototypes for interrpt time functions **********************************/ | 132 | /* Prototypes for interrpt time functions **********************************/ |
133 | static irqreturn_t ray_interrupt (int reg, void *dev_id, struct pt_regs *regs); | 133 | static irqreturn_t ray_interrupt (int reg, void *dev_id); |
134 | static void clear_interrupt(ray_dev_t *local); | 134 | static void clear_interrupt(ray_dev_t *local); |
135 | static void rx_deauthenticate(ray_dev_t *local, struct rcs __iomem *prcs, | 135 | static void rx_deauthenticate(ray_dev_t *local, struct rcs __iomem *prcs, |
136 | unsigned int pkt_addr, int rx_len); | 136 | unsigned int pkt_addr, int rx_len); |
@@ -1940,7 +1940,7 @@ static void set_multicast_list(struct net_device *dev) | |||
1940 | /*============================================================================= | 1940 | /*============================================================================= |
1941 | * All routines below here are run at interrupt time. | 1941 | * All routines below here are run at interrupt time. |
1942 | =============================================================================*/ | 1942 | =============================================================================*/ |
1943 | static irqreturn_t ray_interrupt(int irq, void *dev_id, struct pt_regs * regs) | 1943 | static irqreturn_t ray_interrupt(int irq, void *dev_id) |
1944 | { | 1944 | { |
1945 | struct net_device *dev = (struct net_device *)dev_id; | 1945 | struct net_device *dev = (struct net_device *)dev_id; |
1946 | struct pcmcia_device *link; | 1946 | struct pcmcia_device *link; |
diff --git a/drivers/net/wireless/wavelan.c b/drivers/net/wireless/wavelan.c index 5b69befdab74..24221e476cd3 100644 --- a/drivers/net/wireless/wavelan.c +++ b/drivers/net/wireless/wavelan.c | |||
@@ -3768,7 +3768,7 @@ static int wv_check_ioaddr(unsigned long ioaddr, u8 * mac) | |||
3768 | * This function is the interrupt handler for the WaveLAN card. This | 3768 | * This function is the interrupt handler for the WaveLAN card. This |
3769 | * routine will be called whenever: | 3769 | * routine will be called whenever: |
3770 | */ | 3770 | */ |
3771 | static irqreturn_t wavelan_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 3771 | static irqreturn_t wavelan_interrupt(int irq, void *dev_id) |
3772 | { | 3772 | { |
3773 | struct net_device *dev; | 3773 | struct net_device *dev; |
3774 | unsigned long ioaddr; | 3774 | unsigned long ioaddr; |
diff --git a/drivers/net/wireless/wavelan.p.h b/drivers/net/wireless/wavelan.p.h index 5cb0bc8bb128..72b646c77d5a 100644 --- a/drivers/net/wireless/wavelan.p.h +++ b/drivers/net/wireless/wavelan.p.h | |||
@@ -642,8 +642,7 @@ static int | |||
642 | /* ---------------------- INTERRUPT HANDLING ---------------------- */ | 642 | /* ---------------------- INTERRUPT HANDLING ---------------------- */ |
643 | static irqreturn_t | 643 | static irqreturn_t |
644 | wavelan_interrupt(int, /* interrupt handler */ | 644 | wavelan_interrupt(int, /* interrupt handler */ |
645 | void *, | 645 | void *); |
646 | struct pt_regs *); | ||
647 | static void | 646 | static void |
648 | wavelan_watchdog(struct net_device *); /* transmission watchdog */ | 647 | wavelan_watchdog(struct net_device *); /* transmission watchdog */ |
649 | /* ------------------- CONFIGURATION CALLBACKS ------------------- */ | 648 | /* ------------------- CONFIGURATION CALLBACKS ------------------- */ |
diff --git a/drivers/net/wireless/wavelan_cs.c b/drivers/net/wireless/wavelan_cs.c index 0065f057bb1c..aafb301041b1 100644 --- a/drivers/net/wireless/wavelan_cs.c +++ b/drivers/net/wireless/wavelan_cs.c | |||
@@ -4117,24 +4117,14 @@ wv_pcmcia_release(struct pcmcia_device *link) | |||
4117 | */ | 4117 | */ |
4118 | static irqreturn_t | 4118 | static irqreturn_t |
4119 | wavelan_interrupt(int irq, | 4119 | wavelan_interrupt(int irq, |
4120 | void * dev_id, | 4120 | void * dev_id) |
4121 | struct pt_regs * regs) | ||
4122 | { | 4121 | { |
4123 | struct net_device * dev; | 4122 | struct net_device * dev = dev_id; |
4124 | net_local * lp; | 4123 | net_local * lp; |
4125 | kio_addr_t base; | 4124 | kio_addr_t base; |
4126 | int status0; | 4125 | int status0; |
4127 | u_int tx_status; | 4126 | u_int tx_status; |
4128 | 4127 | ||
4129 | if ((dev = dev_id) == NULL) | ||
4130 | { | ||
4131 | #ifdef DEBUG_INTERRUPT_ERROR | ||
4132 | printk(KERN_WARNING "wavelan_interrupt(): irq %d for unknown device.\n", | ||
4133 | irq); | ||
4134 | #endif | ||
4135 | return IRQ_NONE; | ||
4136 | } | ||
4137 | |||
4138 | #ifdef DEBUG_INTERRUPT_TRACE | 4128 | #ifdef DEBUG_INTERRUPT_TRACE |
4139 | printk(KERN_DEBUG "%s: ->wavelan_interrupt()\n", dev->name); | 4129 | printk(KERN_DEBUG "%s: ->wavelan_interrupt()\n", dev->name); |
4140 | #endif | 4130 | #endif |
diff --git a/drivers/net/wireless/wavelan_cs.p.h b/drivers/net/wireless/wavelan_cs.p.h index f34a36b0c7b0..4d1c4905c749 100644 --- a/drivers/net/wireless/wavelan_cs.p.h +++ b/drivers/net/wireless/wavelan_cs.p.h | |||
@@ -738,8 +738,7 @@ static void | |||
738 | /* ---------------------- INTERRUPT HANDLING ---------------------- */ | 738 | /* ---------------------- INTERRUPT HANDLING ---------------------- */ |
739 | static irqreturn_t | 739 | static irqreturn_t |
740 | wavelan_interrupt(int, /* Interrupt handler */ | 740 | wavelan_interrupt(int, /* Interrupt handler */ |
741 | void *, | 741 | void *); |
742 | struct pt_regs *); | ||
743 | static void | 742 | static void |
744 | wavelan_watchdog(struct net_device *); /* Transmission watchdog */ | 743 | wavelan_watchdog(struct net_device *); /* Transmission watchdog */ |
745 | /* ------------------- CONFIGURATION CALLBACKS ------------------- */ | 744 | /* ------------------- CONFIGURATION CALLBACKS ------------------- */ |
diff --git a/drivers/net/wireless/wl3501_cs.c b/drivers/net/wireless/wl3501_cs.c index e3ae5f60d5be..5b98a7876982 100644 --- a/drivers/net/wireless/wl3501_cs.c +++ b/drivers/net/wireless/wl3501_cs.c | |||
@@ -1145,7 +1145,6 @@ static inline void wl3501_ack_interrupt(struct wl3501_card *this) | |||
1145 | * wl3501_interrupt - Hardware interrupt from card. | 1145 | * wl3501_interrupt - Hardware interrupt from card. |
1146 | * @irq - Interrupt number | 1146 | * @irq - Interrupt number |
1147 | * @dev_id - net_device | 1147 | * @dev_id - net_device |
1148 | * @regs - registers | ||
1149 | * | 1148 | * |
1150 | * We must acknowledge the interrupt as soon as possible, and block the | 1149 | * We must acknowledge the interrupt as soon as possible, and block the |
1151 | * interrupt from the same card immediately to prevent re-entry. | 1150 | * interrupt from the same card immediately to prevent re-entry. |
@@ -1154,27 +1153,20 @@ static inline void wl3501_ack_interrupt(struct wl3501_card *this) | |||
1154 | * On the other hand, to prevent SUTRO from malfunctioning, we must | 1153 | * On the other hand, to prevent SUTRO from malfunctioning, we must |
1155 | * unlock the SUTRO as soon as possible. | 1154 | * unlock the SUTRO as soon as possible. |
1156 | */ | 1155 | */ |
1157 | static irqreturn_t wl3501_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 1156 | static irqreturn_t wl3501_interrupt(int irq, void *dev_id) |
1158 | { | 1157 | { |
1159 | struct net_device *dev = (struct net_device *)dev_id; | 1158 | struct net_device *dev = dev_id; |
1160 | struct wl3501_card *this; | 1159 | struct wl3501_card *this; |
1161 | int handled = 1; | ||
1162 | 1160 | ||
1163 | if (!dev) | 1161 | this = netdev_priv(dev); |
1164 | goto unknown; | ||
1165 | this = dev->priv; | ||
1166 | spin_lock(&this->lock); | 1162 | spin_lock(&this->lock); |
1167 | wl3501_ack_interrupt(this); | 1163 | wl3501_ack_interrupt(this); |
1168 | wl3501_block_interrupt(this); | 1164 | wl3501_block_interrupt(this); |
1169 | wl3501_rx_interrupt(dev); | 1165 | wl3501_rx_interrupt(dev); |
1170 | wl3501_unblock_interrupt(this); | 1166 | wl3501_unblock_interrupt(this); |
1171 | spin_unlock(&this->lock); | 1167 | spin_unlock(&this->lock); |
1172 | out: | 1168 | |
1173 | return IRQ_RETVAL(handled); | 1169 | return IRQ_HANDLED; |
1174 | unknown: | ||
1175 | handled = 0; | ||
1176 | printk(KERN_ERR "%s: irq %d for unknown device.\n", __FUNCTION__, irq); | ||
1177 | goto out; | ||
1178 | } | 1170 | } |
1179 | 1171 | ||
1180 | static int wl3501_reset_board(struct wl3501_card *this) | 1172 | static int wl3501_reset_board(struct wl3501_card *this) |
diff --git a/drivers/net/wireless/zd1201.c b/drivers/net/wireless/zd1201.c index 80af9a9fcbb3..30057a335a7b 100644 --- a/drivers/net/wireless/zd1201.c +++ b/drivers/net/wireless/zd1201.c | |||
@@ -112,7 +112,7 @@ exit: | |||
112 | return err; | 112 | return err; |
113 | } | 113 | } |
114 | 114 | ||
115 | static void zd1201_usbfree(struct urb *urb, struct pt_regs *regs) | 115 | static void zd1201_usbfree(struct urb *urb) |
116 | { | 116 | { |
117 | struct zd1201 *zd = urb->context; | 117 | struct zd1201 *zd = urb->context; |
118 | 118 | ||
@@ -177,7 +177,7 @@ static int zd1201_docmd(struct zd1201 *zd, int cmd, int parm0, | |||
177 | } | 177 | } |
178 | 178 | ||
179 | /* Callback after sending out a packet */ | 179 | /* Callback after sending out a packet */ |
180 | static void zd1201_usbtx(struct urb *urb, struct pt_regs *regs) | 180 | static void zd1201_usbtx(struct urb *urb) |
181 | { | 181 | { |
182 | struct zd1201 *zd = urb->context; | 182 | struct zd1201 *zd = urb->context; |
183 | netif_wake_queue(zd->dev); | 183 | netif_wake_queue(zd->dev); |
@@ -185,7 +185,7 @@ static void zd1201_usbtx(struct urb *urb, struct pt_regs *regs) | |||
185 | } | 185 | } |
186 | 186 | ||
187 | /* Incoming data */ | 187 | /* Incoming data */ |
188 | static void zd1201_usbrx(struct urb *urb, struct pt_regs *regs) | 188 | static void zd1201_usbrx(struct urb *urb) |
189 | { | 189 | { |
190 | struct zd1201 *zd = urb->context; | 190 | struct zd1201 *zd = urb->context; |
191 | int free = 0; | 191 | int free = 0; |
diff --git a/drivers/net/wireless/zd1211rw/zd_usb.c b/drivers/net/wireless/zd1211rw/zd_usb.c index 5c265ad0485a..3faaeb2b7c89 100644 --- a/drivers/net/wireless/zd1211rw/zd_usb.c +++ b/drivers/net/wireless/zd1211rw/zd_usb.c | |||
@@ -408,7 +408,7 @@ static inline void handle_retry_failed_int(struct urb *urb) | |||
408 | } | 408 | } |
409 | 409 | ||
410 | 410 | ||
411 | static void int_urb_complete(struct urb *urb, struct pt_regs *pt_regs) | 411 | static void int_urb_complete(struct urb *urb) |
412 | { | 412 | { |
413 | int r; | 413 | int r; |
414 | struct usb_int_header *hdr; | 414 | struct usb_int_header *hdr; |
@@ -609,7 +609,7 @@ static void handle_rx_packet(struct zd_usb *usb, const u8 *buffer, | |||
609 | } | 609 | } |
610 | } | 610 | } |
611 | 611 | ||
612 | static void rx_urb_complete(struct urb *urb, struct pt_regs *pt_regs) | 612 | static void rx_urb_complete(struct urb *urb) |
613 | { | 613 | { |
614 | struct zd_usb *usb; | 614 | struct zd_usb *usb; |
615 | struct zd_usb_rx *rx; | 615 | struct zd_usb_rx *rx; |
@@ -779,7 +779,7 @@ void zd_usb_disable_rx(struct zd_usb *usb) | |||
779 | spin_unlock_irqrestore(&rx->lock, flags); | 779 | spin_unlock_irqrestore(&rx->lock, flags); |
780 | } | 780 | } |
781 | 781 | ||
782 | static void tx_urb_complete(struct urb *urb, struct pt_regs *pt_regs) | 782 | static void tx_urb_complete(struct urb *urb) |
783 | { | 783 | { |
784 | int r; | 784 | int r; |
785 | 785 | ||
diff --git a/drivers/net/yellowfin.c b/drivers/net/yellowfin.c index a4c4953f1365..2412ce4917f2 100644 --- a/drivers/net/yellowfin.c +++ b/drivers/net/yellowfin.c | |||
@@ -350,7 +350,7 @@ static void yellowfin_timer(unsigned long data); | |||
350 | static void yellowfin_tx_timeout(struct net_device *dev); | 350 | static void yellowfin_tx_timeout(struct net_device *dev); |
351 | static void yellowfin_init_ring(struct net_device *dev); | 351 | static void yellowfin_init_ring(struct net_device *dev); |
352 | static int yellowfin_start_xmit(struct sk_buff *skb, struct net_device *dev); | 352 | static int yellowfin_start_xmit(struct sk_buff *skb, struct net_device *dev); |
353 | static irqreturn_t yellowfin_interrupt(int irq, void *dev_instance, struct pt_regs *regs); | 353 | static irqreturn_t yellowfin_interrupt(int irq, void *dev_instance); |
354 | static int yellowfin_rx(struct net_device *dev); | 354 | static int yellowfin_rx(struct net_device *dev); |
355 | static void yellowfin_error(struct net_device *dev, int intr_status); | 355 | static void yellowfin_error(struct net_device *dev, int intr_status); |
356 | static int yellowfin_close(struct net_device *dev); | 356 | static int yellowfin_close(struct net_device *dev); |
@@ -888,7 +888,7 @@ static int yellowfin_start_xmit(struct sk_buff *skb, struct net_device *dev) | |||
888 | 888 | ||
889 | /* The interrupt handler does all of the Rx thread work and cleans up | 889 | /* The interrupt handler does all of the Rx thread work and cleans up |
890 | after the Tx thread. */ | 890 | after the Tx thread. */ |
891 | static irqreturn_t yellowfin_interrupt(int irq, void *dev_instance, struct pt_regs *regs) | 891 | static irqreturn_t yellowfin_interrupt(int irq, void *dev_instance) |
892 | { | 892 | { |
893 | struct net_device *dev = dev_instance; | 893 | struct net_device *dev = dev_instance; |
894 | struct yellowfin_private *yp; | 894 | struct yellowfin_private *yp; |
@@ -896,13 +896,6 @@ static irqreturn_t yellowfin_interrupt(int irq, void *dev_instance, struct pt_re | |||
896 | int boguscnt = max_interrupt_work; | 896 | int boguscnt = max_interrupt_work; |
897 | unsigned int handled = 0; | 897 | unsigned int handled = 0; |
898 | 898 | ||
899 | #ifndef final_version /* Can never occur. */ | ||
900 | if (dev == NULL) { | ||
901 | printk (KERN_ERR "yellowfin_interrupt(): irq %d for unknown device.\n", irq); | ||
902 | return IRQ_NONE; | ||
903 | } | ||
904 | #endif | ||
905 | |||
906 | yp = netdev_priv(dev); | 899 | yp = netdev_priv(dev); |
907 | ioaddr = yp->base; | 900 | ioaddr = yp->base; |
908 | 901 | ||
diff --git a/drivers/net/znet.c b/drivers/net/znet.c index 656d5a02908b..b24b0727108c 100644 --- a/drivers/net/znet.c +++ b/drivers/net/znet.c | |||
@@ -158,7 +158,7 @@ struct netidblk { | |||
158 | 158 | ||
159 | static int znet_open(struct net_device *dev); | 159 | static int znet_open(struct net_device *dev); |
160 | static int znet_send_packet(struct sk_buff *skb, struct net_device *dev); | 160 | static int znet_send_packet(struct sk_buff *skb, struct net_device *dev); |
161 | static irqreturn_t znet_interrupt(int irq, void *dev_id, struct pt_regs *regs); | 161 | static irqreturn_t znet_interrupt(int irq, void *dev_id); |
162 | static void znet_rx(struct net_device *dev); | 162 | static void znet_rx(struct net_device *dev); |
163 | static int znet_close(struct net_device *dev); | 163 | static int znet_close(struct net_device *dev); |
164 | static struct net_device_stats *net_get_stats(struct net_device *dev); | 164 | static struct net_device_stats *net_get_stats(struct net_device *dev); |
@@ -602,7 +602,7 @@ static int znet_send_packet(struct sk_buff *skb, struct net_device *dev) | |||
602 | } | 602 | } |
603 | 603 | ||
604 | /* The ZNET interrupt handler. */ | 604 | /* The ZNET interrupt handler. */ |
605 | static irqreturn_t znet_interrupt(int irq, void *dev_id, struct pt_regs * regs) | 605 | static irqreturn_t znet_interrupt(int irq, void *dev_id) |
606 | { | 606 | { |
607 | struct net_device *dev = dev_id; | 607 | struct net_device *dev = dev_id; |
608 | struct znet_private *znet = dev->priv; | 608 | struct znet_private *znet = dev->priv; |
@@ -610,11 +610,6 @@ static irqreturn_t znet_interrupt(int irq, void *dev_id, struct pt_regs * regs) | |||
610 | int boguscnt = 20; | 610 | int boguscnt = 20; |
611 | int handled = 0; | 611 | int handled = 0; |
612 | 612 | ||
613 | if (dev == NULL) { | ||
614 | printk(KERN_WARNING "znet_interrupt(): IRQ %d for unknown device.\n", irq); | ||
615 | return IRQ_NONE; | ||
616 | } | ||
617 | |||
618 | spin_lock (&znet->lock); | 613 | spin_lock (&znet->lock); |
619 | 614 | ||
620 | ioaddr = dev->base_addr; | 615 | ioaddr = dev->base_addr; |
diff --git a/drivers/parisc/dino.c b/drivers/parisc/dino.c index 0d96c50ffe9c..03c763c2d0e0 100644 --- a/drivers/parisc/dino.c +++ b/drivers/parisc/dino.c | |||
@@ -368,8 +368,7 @@ static struct hw_interrupt_type dino_interrupt_type = { | |||
368 | * ilr_loop counter is a kluge to prevent a "stuck" IRQ line from | 368 | * ilr_loop counter is a kluge to prevent a "stuck" IRQ line from |
369 | * wedging the CPU. Could be removed or made optional at some point. | 369 | * wedging the CPU. Could be removed or made optional at some point. |
370 | */ | 370 | */ |
371 | static irqreturn_t | 371 | static irqreturn_t dino_isr(int irq, void *intr_dev) |
372 | dino_isr(int irq, void *intr_dev, struct pt_regs *regs) | ||
373 | { | 372 | { |
374 | struct dino_device *dino_dev = intr_dev; | 373 | struct dino_device *dino_dev = intr_dev; |
375 | u32 mask; | 374 | u32 mask; |
@@ -390,7 +389,7 @@ ilr_again: | |||
390 | int irq = dino_dev->global_irq[local_irq]; | 389 | int irq = dino_dev->global_irq[local_irq]; |
391 | DBG(KERN_DEBUG "%s(%d, %p) mask 0x%x\n", | 390 | DBG(KERN_DEBUG "%s(%d, %p) mask 0x%x\n", |
392 | __FUNCTION__, irq, intr_dev, mask); | 391 | __FUNCTION__, irq, intr_dev, mask); |
393 | __do_IRQ(irq, regs); | 392 | __do_IRQ(irq); |
394 | mask &= ~(1 << local_irq); | 393 | mask &= ~(1 << local_irq); |
395 | } while (mask); | 394 | } while (mask); |
396 | 395 | ||
diff --git a/drivers/parisc/eisa.c b/drivers/parisc/eisa.c index 884965cedec9..e97cecbc4d18 100644 --- a/drivers/parisc/eisa.c +++ b/drivers/parisc/eisa.c | |||
@@ -199,7 +199,7 @@ static struct hw_interrupt_type eisa_interrupt_type = { | |||
199 | .end = no_end_irq, | 199 | .end = no_end_irq, |
200 | }; | 200 | }; |
201 | 201 | ||
202 | static irqreturn_t eisa_irq(int wax_irq, void *intr_dev, struct pt_regs *regs) | 202 | static irqreturn_t eisa_irq(int wax_irq, void *intr_dev) |
203 | { | 203 | { |
204 | int irq = gsc_readb(0xfc01f000); /* EISA supports 16 irqs */ | 204 | int irq = gsc_readb(0xfc01f000); /* EISA supports 16 irqs */ |
205 | unsigned long flags; | 205 | unsigned long flags; |
@@ -234,7 +234,7 @@ static irqreturn_t eisa_irq(int wax_irq, void *intr_dev, struct pt_regs *regs) | |||
234 | } | 234 | } |
235 | spin_unlock_irqrestore(&eisa_irq_lock, flags); | 235 | spin_unlock_irqrestore(&eisa_irq_lock, flags); |
236 | 236 | ||
237 | __do_IRQ(irq, regs); | 237 | __do_IRQ(irq); |
238 | 238 | ||
239 | spin_lock_irqsave(&eisa_irq_lock, flags); | 239 | spin_lock_irqsave(&eisa_irq_lock, flags); |
240 | /* unmask */ | 240 | /* unmask */ |
@@ -249,7 +249,7 @@ static irqreturn_t eisa_irq(int wax_irq, void *intr_dev, struct pt_regs *regs) | |||
249 | return IRQ_HANDLED; | 249 | return IRQ_HANDLED; |
250 | } | 250 | } |
251 | 251 | ||
252 | static irqreturn_t dummy_irq2_handler(int _, void *dev, struct pt_regs *regs) | 252 | static irqreturn_t dummy_irq2_handler(int _, void *dev) |
253 | { | 253 | { |
254 | printk(KERN_ALERT "eisa: uhh, irq2?\n"); | 254 | printk(KERN_ALERT "eisa: uhh, irq2?\n"); |
255 | return IRQ_HANDLED; | 255 | return IRQ_HANDLED; |
diff --git a/drivers/parisc/gsc.c b/drivers/parisc/gsc.c index b45aa5c675a0..1b3e3fd12d95 100644 --- a/drivers/parisc/gsc.c +++ b/drivers/parisc/gsc.c | |||
@@ -73,7 +73,7 @@ EXPORT_SYMBOL(gsc_alloc_irq); | |||
73 | EXPORT_SYMBOL(gsc_claim_irq); | 73 | EXPORT_SYMBOL(gsc_claim_irq); |
74 | 74 | ||
75 | /* Common interrupt demultiplexer used by Asp, Lasi & Wax. */ | 75 | /* Common interrupt demultiplexer used by Asp, Lasi & Wax. */ |
76 | irqreturn_t gsc_asic_intr(int gsc_asic_irq, void *dev, struct pt_regs *regs) | 76 | irqreturn_t gsc_asic_intr(int gsc_asic_irq, void *dev) |
77 | { | 77 | { |
78 | unsigned long irr; | 78 | unsigned long irr; |
79 | struct gsc_asic *gsc_asic = dev; | 79 | struct gsc_asic *gsc_asic = dev; |
@@ -87,7 +87,7 @@ irqreturn_t gsc_asic_intr(int gsc_asic_irq, void *dev, struct pt_regs *regs) | |||
87 | do { | 87 | do { |
88 | int local_irq = __ffs(irr); | 88 | int local_irq = __ffs(irr); |
89 | unsigned int irq = gsc_asic->global_irq[local_irq]; | 89 | unsigned int irq = gsc_asic->global_irq[local_irq]; |
90 | __do_IRQ(irq, regs); | 90 | __do_IRQ(irq); |
91 | irr &= ~(1 << local_irq); | 91 | irr &= ~(1 << local_irq); |
92 | } while (irr); | 92 | } while (irr); |
93 | 93 | ||
diff --git a/drivers/parisc/gsc.h b/drivers/parisc/gsc.h index a3dc456709d7..762a1babad60 100644 --- a/drivers/parisc/gsc.h +++ b/drivers/parisc/gsc.h | |||
@@ -44,4 +44,4 @@ void gsc_fixup_irqs(struct parisc_device *parent, void *ctrl, | |||
44 | void (*choose)(struct parisc_device *child, void *ctrl)); | 44 | void (*choose)(struct parisc_device *child, void *ctrl)); |
45 | void gsc_asic_assign_irq(struct gsc_asic *asic, int local_irq, int *irqp); | 45 | void gsc_asic_assign_irq(struct gsc_asic *asic, int local_irq, int *irqp); |
46 | 46 | ||
47 | irqreturn_t gsc_asic_intr(int irq, void *dev, struct pt_regs *regs); | 47 | irqreturn_t gsc_asic_intr(int irq, void *dev); |
diff --git a/drivers/parisc/power.c b/drivers/parisc/power.c index 2eb3577a88c5..97e9dc066f95 100644 --- a/drivers/parisc/power.c +++ b/drivers/parisc/power.c | |||
@@ -188,7 +188,7 @@ static void polling_tasklet_func(unsigned long soft_power_reg) | |||
188 | * powerfail interruption handler (irq IRQ_FROM_REGION(CPU_IRQ_REGION)+2) | 188 | * powerfail interruption handler (irq IRQ_FROM_REGION(CPU_IRQ_REGION)+2) |
189 | */ | 189 | */ |
190 | #if 0 | 190 | #if 0 |
191 | static void powerfail_interrupt(int code, void *x, struct pt_regs *regs) | 191 | static void powerfail_interrupt(int code, void *x) |
192 | { | 192 | { |
193 | printk(KERN_CRIT "POWERFAIL INTERRUPTION !\n"); | 193 | printk(KERN_CRIT "POWERFAIL INTERRUPTION !\n"); |
194 | poweroff(); | 194 | poweroff(); |
diff --git a/drivers/parisc/superio.c b/drivers/parisc/superio.c index 4ee26a6d9e25..1fd97f7c8b98 100644 --- a/drivers/parisc/superio.c +++ b/drivers/parisc/superio.c | |||
@@ -94,7 +94,7 @@ static struct superio_device sio_dev; | |||
94 | #define PFX SUPERIO ": " | 94 | #define PFX SUPERIO ": " |
95 | 95 | ||
96 | static irqreturn_t | 96 | static irqreturn_t |
97 | superio_interrupt(int parent_irq, void *devp, struct pt_regs *regs) | 97 | superio_interrupt(int parent_irq, void *devp) |
98 | { | 98 | { |
99 | u8 results; | 99 | u8 results; |
100 | u8 local_irq; | 100 | u8 local_irq; |
@@ -138,7 +138,7 @@ superio_interrupt(int parent_irq, void *devp, struct pt_regs *regs) | |||
138 | } | 138 | } |
139 | 139 | ||
140 | /* Call the appropriate device's interrupt */ | 140 | /* Call the appropriate device's interrupt */ |
141 | __do_IRQ(local_irq, regs); | 141 | __do_IRQ(local_irq); |
142 | 142 | ||
143 | /* set EOI - forces a new interrupt if a lower priority device | 143 | /* set EOI - forces a new interrupt if a lower priority device |
144 | * still needs service. | 144 | * still needs service. |
diff --git a/drivers/parport/daisy.c b/drivers/parport/daisy.c index 83ee095ec6e2..ff9f34453530 100644 --- a/drivers/parport/daisy.c +++ b/drivers/parport/daisy.c | |||
@@ -216,7 +216,7 @@ void parport_daisy_fini(struct parport *port) | |||
216 | 216 | ||
217 | struct pardevice *parport_open(int devnum, const char *name, | 217 | struct pardevice *parport_open(int devnum, const char *name, |
218 | int (*pf) (void *), void (*kf) (void *), | 218 | int (*pf) (void *), void (*kf) (void *), |
219 | void (*irqf) (int, void *, struct pt_regs *), | 219 | void (*irqf) (int, void *), |
220 | int flags, void *handle) | 220 | int flags, void *handle) |
221 | { | 221 | { |
222 | struct daisydev *p = topology; | 222 | struct daisydev *p = topology; |
diff --git a/drivers/parport/ieee1284.c b/drivers/parport/ieee1284.c index 7ff09f0f858f..5accaa7bde31 100644 --- a/drivers/parport/ieee1284.c +++ b/drivers/parport/ieee1284.c | |||
@@ -571,7 +571,7 @@ static int parport_ieee1284_ack_data_avail (struct parport *port) | |||
571 | #endif /* IEEE1284 support */ | 571 | #endif /* IEEE1284 support */ |
572 | 572 | ||
573 | /* Handle an interrupt. */ | 573 | /* Handle an interrupt. */ |
574 | void parport_ieee1284_interrupt (int which, void *handle, struct pt_regs *regs) | 574 | void parport_ieee1284_interrupt (int which, void *handle) |
575 | { | 575 | { |
576 | struct parport *port = handle; | 576 | struct parport *port = handle; |
577 | parport_ieee1284_wakeup (port); | 577 | parport_ieee1284_wakeup (port); |
diff --git a/drivers/parport/parport_amiga.c b/drivers/parport/parport_amiga.c index 5126e74ac2ec..a0afaee5ebe5 100644 --- a/drivers/parport/parport_amiga.c +++ b/drivers/parport/parport_amiga.c | |||
@@ -138,9 +138,9 @@ static unsigned char amiga_read_status(struct parport *p) | |||
138 | } | 138 | } |
139 | 139 | ||
140 | /* as this ports irq handling is already done, we use a generic funktion */ | 140 | /* as this ports irq handling is already done, we use a generic funktion */ |
141 | static irqreturn_t amiga_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 141 | static irqreturn_t amiga_interrupt(int irq, void *dev_id) |
142 | { | 142 | { |
143 | parport_generic_irq(irq, (struct parport *) dev_id, regs); | 143 | parport_generic_irq(irq, (struct parport *) dev_id); |
144 | return IRQ_HANDLED; | 144 | return IRQ_HANDLED; |
145 | } | 145 | } |
146 | 146 | ||
diff --git a/drivers/parport/parport_atari.c b/drivers/parport/parport_atari.c index 78c3f34108bc..6ea9929b8c7f 100644 --- a/drivers/parport/parport_atari.c +++ b/drivers/parport/parport_atari.c | |||
@@ -104,9 +104,9 @@ parport_atari_restore_state(struct parport *p, struct parport_state *s) | |||
104 | } | 104 | } |
105 | 105 | ||
106 | static irqreturn_t | 106 | static irqreturn_t |
107 | parport_atari_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 107 | parport_atari_interrupt(int irq, void *dev_id) |
108 | { | 108 | { |
109 | parport_generic_irq(irq, (struct parport *) dev_id, regs); | 109 | parport_generic_irq(irq, (struct parport *) dev_id); |
110 | return IRQ_HANDLED; | 110 | return IRQ_HANDLED; |
111 | } | 111 | } |
112 | 112 | ||
diff --git a/drivers/parport/parport_ax88796.c b/drivers/parport/parport_ax88796.c index 1850632590fd..74f4e9742c6c 100644 --- a/drivers/parport/parport_ax88796.c +++ b/drivers/parport/parport_ax88796.c | |||
@@ -233,9 +233,9 @@ parport_ax88796_restore_state(struct parport *p, struct parport_state *s) | |||
233 | } | 233 | } |
234 | 234 | ||
235 | static irqreturn_t | 235 | static irqreturn_t |
236 | parport_ax88796_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 236 | parport_ax88796_interrupt(int irq, void *dev_id) |
237 | { | 237 | { |
238 | parport_generic_irq(irq, dev_id, regs); | 238 | parport_generic_irq(irq, dev_id); |
239 | return IRQ_HANDLED; | 239 | return IRQ_HANDLED; |
240 | } | 240 | } |
241 | 241 | ||
diff --git a/drivers/parport/parport_gsc.c b/drivers/parport/parport_gsc.c index 7352104f7b30..a7c5ead9a3d3 100644 --- a/drivers/parport/parport_gsc.c +++ b/drivers/parport/parport_gsc.c | |||
@@ -81,9 +81,9 @@ static int clear_epp_timeout(struct parport *pb) | |||
81 | * of these are in parport_gsc.h. | 81 | * of these are in parport_gsc.h. |
82 | */ | 82 | */ |
83 | 83 | ||
84 | static irqreturn_t parport_gsc_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 84 | static irqreturn_t parport_gsc_interrupt(int irq, void *dev_id) |
85 | { | 85 | { |
86 | parport_generic_irq(irq, (struct parport *) dev_id, regs); | 86 | parport_generic_irq(irq, (struct parport *) dev_id); |
87 | return IRQ_HANDLED; | 87 | return IRQ_HANDLED; |
88 | } | 88 | } |
89 | 89 | ||
diff --git a/drivers/parport/parport_ip32.c b/drivers/parport/parport_ip32.c index 46e06e596d73..e3e19277030a 100644 --- a/drivers/parport/parport_ip32.c +++ b/drivers/parport/parport_ip32.c | |||
@@ -548,10 +548,8 @@ static void parport_ip32_dma_setup_context(unsigned int limit) | |||
548 | * parport_ip32_dma_interrupt - DMA interrupt handler | 548 | * parport_ip32_dma_interrupt - DMA interrupt handler |
549 | * @irq: interrupt number | 549 | * @irq: interrupt number |
550 | * @dev_id: unused | 550 | * @dev_id: unused |
551 | * @regs: pointer to &struct pt_regs | ||
552 | */ | 551 | */ |
553 | static irqreturn_t parport_ip32_dma_interrupt(int irq, void *dev_id, | 552 | static irqreturn_t parport_ip32_dma_interrupt(int irq, void *dev_id) |
554 | struct pt_regs *regs) | ||
555 | { | 553 | { |
556 | if (parport_ip32_dma.left) | 554 | if (parport_ip32_dma.left) |
557 | pr_trace(NULL, "(%d): ctx=%d", irq, parport_ip32_dma.ctx); | 555 | pr_trace(NULL, "(%d): ctx=%d", irq, parport_ip32_dma.ctx); |
@@ -560,8 +558,7 @@ static irqreturn_t parport_ip32_dma_interrupt(int irq, void *dev_id, | |||
560 | } | 558 | } |
561 | 559 | ||
562 | #if DEBUG_PARPORT_IP32 | 560 | #if DEBUG_PARPORT_IP32 |
563 | static irqreturn_t parport_ip32_merr_interrupt(int irq, void *dev_id, | 561 | static irqreturn_t parport_ip32_merr_interrupt(int irq, void *dev_id) |
564 | struct pt_regs *regs) | ||
565 | { | 562 | { |
566 | pr_trace1(NULL, "(%d)", irq); | 563 | pr_trace1(NULL, "(%d)", irq); |
567 | return IRQ_HANDLED; | 564 | return IRQ_HANDLED; |
@@ -772,13 +769,11 @@ static inline void parport_ip32_wakeup(struct parport *p) | |||
772 | * parport_ip32_interrupt - interrupt handler | 769 | * parport_ip32_interrupt - interrupt handler |
773 | * @irq: interrupt number | 770 | * @irq: interrupt number |
774 | * @dev_id: pointer to &struct parport | 771 | * @dev_id: pointer to &struct parport |
775 | * @regs: pointer to &struct pt_regs | ||
776 | * | 772 | * |
777 | * Caught interrupts are forwarded to the upper parport layer if IRQ_mode is | 773 | * Caught interrupts are forwarded to the upper parport layer if IRQ_mode is |
778 | * %PARPORT_IP32_IRQ_FWD. | 774 | * %PARPORT_IP32_IRQ_FWD. |
779 | */ | 775 | */ |
780 | static irqreturn_t parport_ip32_interrupt(int irq, void *dev_id, | 776 | static irqreturn_t parport_ip32_interrupt(int irq, void *dev_id) |
781 | struct pt_regs *regs) | ||
782 | { | 777 | { |
783 | struct parport * const p = dev_id; | 778 | struct parport * const p = dev_id; |
784 | struct parport_ip32_private * const priv = p->physport->private_data; | 779 | struct parport_ip32_private * const priv = p->physport->private_data; |
diff --git a/drivers/parport/parport_mfc3.c b/drivers/parport/parport_mfc3.c index b2b8092a2b39..e5b0a544de40 100644 --- a/drivers/parport/parport_mfc3.c +++ b/drivers/parport/parport_mfc3.c | |||
@@ -211,7 +211,7 @@ static void mfc3_change_mode( struct parport *p, int m) | |||
211 | 211 | ||
212 | static int use_cnt = 0; | 212 | static int use_cnt = 0; |
213 | 213 | ||
214 | static irqreturn_t mfc3_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 214 | static irqreturn_t mfc3_interrupt(int irq, void *dev_id) |
215 | { | 215 | { |
216 | int i; | 216 | int i; |
217 | 217 | ||
@@ -219,7 +219,7 @@ static irqreturn_t mfc3_interrupt(int irq, void *dev_id, struct pt_regs *regs) | |||
219 | if (this_port[i] != NULL) | 219 | if (this_port[i] != NULL) |
220 | if (pia(this_port[i])->crb & 128) { /* Board caused interrupt */ | 220 | if (pia(this_port[i])->crb & 128) { /* Board caused interrupt */ |
221 | dummy = pia(this_port[i])->pprb; /* clear irq bit */ | 221 | dummy = pia(this_port[i])->pprb; /* clear irq bit */ |
222 | parport_generic_irq(irq, this_port[i], regs); | 222 | parport_generic_irq(irq, this_port[i]); |
223 | } | 223 | } |
224 | return IRQ_HANDLED; | 224 | return IRQ_HANDLED; |
225 | } | 225 | } |
diff --git a/drivers/parport/parport_pc.c b/drivers/parport/parport_pc.c index fe800dc0be9f..39c96641bc72 100644 --- a/drivers/parport/parport_pc.c +++ b/drivers/parport/parport_pc.c | |||
@@ -270,9 +270,9 @@ static int clear_epp_timeout(struct parport *pb) | |||
270 | * of these are in parport_pc.h. | 270 | * of these are in parport_pc.h. |
271 | */ | 271 | */ |
272 | 272 | ||
273 | static irqreturn_t parport_pc_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 273 | static irqreturn_t parport_pc_interrupt(int irq, void *dev_id) |
274 | { | 274 | { |
275 | parport_generic_irq(irq, (struct parport *) dev_id, regs); | 275 | parport_generic_irq(irq, (struct parport *) dev_id); |
276 | /* FIXME! Was it really ours? */ | 276 | /* FIXME! Was it really ours? */ |
277 | return IRQ_HANDLED; | 277 | return IRQ_HANDLED; |
278 | } | 278 | } |
diff --git a/drivers/parport/parport_sunbpp.c b/drivers/parport/parport_sunbpp.c index fac333b279bf..9793533276ec 100644 --- a/drivers/parport/parport_sunbpp.c +++ b/drivers/parport/parport_sunbpp.c | |||
@@ -46,9 +46,9 @@ | |||
46 | #define dprintk(x) | 46 | #define dprintk(x) |
47 | #endif | 47 | #endif |
48 | 48 | ||
49 | static irqreturn_t parport_sunbpp_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 49 | static irqreturn_t parport_sunbpp_interrupt(int irq, void *dev_id) |
50 | { | 50 | { |
51 | parport_generic_irq(irq, (struct parport *) dev_id, regs); | 51 | parport_generic_irq(irq, (struct parport *) dev_id); |
52 | return IRQ_HANDLED; | 52 | return IRQ_HANDLED; |
53 | } | 53 | } |
54 | 54 | ||
diff --git a/drivers/parport/share.c b/drivers/parport/share.c index 94dc506b83d1..fd9129e424f9 100644 --- a/drivers/parport/share.c +++ b/drivers/parport/share.c | |||
@@ -519,7 +519,7 @@ void parport_remove_port(struct parport *port) | |||
519 | struct pardevice * | 519 | struct pardevice * |
520 | parport_register_device(struct parport *port, const char *name, | 520 | parport_register_device(struct parport *port, const char *name, |
521 | int (*pf)(void *), void (*kf)(void *), | 521 | int (*pf)(void *), void (*kf)(void *), |
522 | void (*irq_func)(int, void *, struct pt_regs *), | 522 | void (*irq_func)(int, void *), |
523 | int flags, void *handle) | 523 | int flags, void *handle) |
524 | { | 524 | { |
525 | struct pardevice *tmp; | 525 | struct pardevice *tmp; |
diff --git a/drivers/pci/hotplug/cpci_hotplug_core.c b/drivers/pci/hotplug/cpci_hotplug_core.c index d5df5871cfa2..d06ab4045134 100644 --- a/drivers/pci/hotplug/cpci_hotplug_core.c +++ b/drivers/pci/hotplug/cpci_hotplug_core.c | |||
@@ -342,7 +342,7 @@ cpci_hp_unregister_bus(struct pci_bus *bus) | |||
342 | 342 | ||
343 | /* This is the interrupt mode interrupt handler */ | 343 | /* This is the interrupt mode interrupt handler */ |
344 | static irqreturn_t | 344 | static irqreturn_t |
345 | cpci_hp_intr(int irq, void *data, struct pt_regs *regs) | 345 | cpci_hp_intr(int irq, void *data) |
346 | { | 346 | { |
347 | dbg("entered cpci_hp_intr"); | 347 | dbg("entered cpci_hp_intr"); |
348 | 348 | ||
diff --git a/drivers/pci/hotplug/cpqphp.h b/drivers/pci/hotplug/cpqphp.h index c74e9e37e76b..ea040c32f47d 100644 --- a/drivers/pci/hotplug/cpqphp.h +++ b/drivers/pci/hotplug/cpqphp.h | |||
@@ -409,7 +409,7 @@ extern void cpqhp_remove_debugfs_files (struct controller *ctrl); | |||
409 | 409 | ||
410 | /* controller functions */ | 410 | /* controller functions */ |
411 | extern void cpqhp_pushbutton_thread (unsigned long event_pointer); | 411 | extern void cpqhp_pushbutton_thread (unsigned long event_pointer); |
412 | extern irqreturn_t cpqhp_ctrl_intr (int IRQ, void *data, struct pt_regs *regs); | 412 | extern irqreturn_t cpqhp_ctrl_intr (int IRQ, void *data); |
413 | extern int cpqhp_find_available_resources (struct controller *ctrl, void __iomem *rom_start); | 413 | extern int cpqhp_find_available_resources (struct controller *ctrl, void __iomem *rom_start); |
414 | extern int cpqhp_event_start_thread (void); | 414 | extern int cpqhp_event_start_thread (void); |
415 | extern void cpqhp_event_stop_thread (void); | 415 | extern void cpqhp_event_stop_thread (void); |
diff --git a/drivers/pci/hotplug/cpqphp_ctrl.c b/drivers/pci/hotplug/cpqphp_ctrl.c index ae2dd36efef2..3ec2ad7db49a 100644 --- a/drivers/pci/hotplug/cpqphp_ctrl.c +++ b/drivers/pci/hotplug/cpqphp_ctrl.c | |||
@@ -889,7 +889,7 @@ int cpqhp_resource_sort_and_combine(struct pci_resource **head) | |||
889 | } | 889 | } |
890 | 890 | ||
891 | 891 | ||
892 | irqreturn_t cpqhp_ctrl_intr(int IRQ, void *data, struct pt_regs *regs) | 892 | irqreturn_t cpqhp_ctrl_intr(int IRQ, void *data) |
893 | { | 893 | { |
894 | struct controller *ctrl = data; | 894 | struct controller *ctrl = data; |
895 | u8 schedule_flag = 0; | 895 | u8 schedule_flag = 0; |
diff --git a/drivers/pci/hotplug/pciehp_hpc.c b/drivers/pci/hotplug/pciehp_hpc.c index 6ab3b6cd2b54..703a64a39fe8 100644 --- a/drivers/pci/hotplug/pciehp_hpc.c +++ b/drivers/pci/hotplug/pciehp_hpc.c | |||
@@ -222,7 +222,7 @@ static struct php_ctlr_state_s *php_ctlr_list_head; /* HPC state linked list */ | |||
222 | static int ctlr_seq_num = 0; /* Controller sequence # */ | 222 | static int ctlr_seq_num = 0; /* Controller sequence # */ |
223 | static spinlock_t list_lock; | 223 | static spinlock_t list_lock; |
224 | 224 | ||
225 | static irqreturn_t pcie_isr(int IRQ, void *dev_id, struct pt_regs *regs); | 225 | static irqreturn_t pcie_isr(int IRQ, void *dev_id); |
226 | 226 | ||
227 | static void start_int_poll_timer(struct php_ctlr_state_s *php_ctlr, int seconds); | 227 | static void start_int_poll_timer(struct php_ctlr_state_s *php_ctlr, int seconds); |
228 | 228 | ||
@@ -239,7 +239,7 @@ static void int_poll_timeout(unsigned long lphp_ctlr) | |||
239 | } | 239 | } |
240 | 240 | ||
241 | /* Poll for interrupt events. regs == NULL => polling */ | 241 | /* Poll for interrupt events. regs == NULL => polling */ |
242 | pcie_isr( 0, (void *)php_ctlr, NULL ); | 242 | pcie_isr( 0, (void *)php_ctlr ); |
243 | 243 | ||
244 | init_timer(&php_ctlr->int_poll_timer); | 244 | init_timer(&php_ctlr->int_poll_timer); |
245 | 245 | ||
@@ -863,7 +863,7 @@ static int hpc_power_off_slot(struct slot * slot) | |||
863 | return retval; | 863 | return retval; |
864 | } | 864 | } |
865 | 865 | ||
866 | static irqreturn_t pcie_isr(int IRQ, void *dev_id, struct pt_regs *regs) | 866 | static irqreturn_t pcie_isr(int IRQ, void *dev_id) |
867 | { | 867 | { |
868 | struct controller *ctrl = NULL; | 868 | struct controller *ctrl = NULL; |
869 | struct php_ctlr_state_s *php_ctlr; | 869 | struct php_ctlr_state_s *php_ctlr; |
diff --git a/drivers/pci/hotplug/shpchp_hpc.c b/drivers/pci/hotplug/shpchp_hpc.c index 0f9798df4704..4d8aee119134 100644 --- a/drivers/pci/hotplug/shpchp_hpc.c +++ b/drivers/pci/hotplug/shpchp_hpc.c | |||
@@ -218,7 +218,7 @@ static spinlock_t list_lock; | |||
218 | 218 | ||
219 | static atomic_t shpchp_num_controllers = ATOMIC_INIT(0); | 219 | static atomic_t shpchp_num_controllers = ATOMIC_INIT(0); |
220 | 220 | ||
221 | static irqreturn_t shpc_isr(int irq, void *dev_id, struct pt_regs *regs); | 221 | static irqreturn_t shpc_isr(int irq, void *dev_id); |
222 | static void start_int_poll_timer(struct php_ctlr_state_s *php_ctlr, int sec); | 222 | static void start_int_poll_timer(struct php_ctlr_state_s *php_ctlr, int sec); |
223 | static int hpc_check_cmd_status(struct controller *ctrl); | 223 | static int hpc_check_cmd_status(struct controller *ctrl); |
224 | 224 | ||
@@ -276,7 +276,7 @@ static void int_poll_timeout(unsigned long lphp_ctlr) | |||
276 | DBG_ENTER_ROUTINE | 276 | DBG_ENTER_ROUTINE |
277 | 277 | ||
278 | /* Poll for interrupt events. regs == NULL => polling */ | 278 | /* Poll for interrupt events. regs == NULL => polling */ |
279 | shpc_isr(0, php_ctlr->callback_instance_id, NULL); | 279 | shpc_isr(0, php_ctlr->callback_instance_id); |
280 | 280 | ||
281 | init_timer(&php_ctlr->int_poll_timer); | 281 | init_timer(&php_ctlr->int_poll_timer); |
282 | if (!shpchp_poll_time) | 282 | if (!shpchp_poll_time) |
@@ -870,7 +870,7 @@ static int hpc_set_bus_speed_mode(struct slot * slot, enum pci_bus_speed value) | |||
870 | return retval; | 870 | return retval; |
871 | } | 871 | } |
872 | 872 | ||
873 | static irqreturn_t shpc_isr(int irq, void *dev_id, struct pt_regs *regs) | 873 | static irqreturn_t shpc_isr(int irq, void *dev_id) |
874 | { | 874 | { |
875 | struct controller *ctrl = (struct controller *)dev_id; | 875 | struct controller *ctrl = (struct controller *)dev_id; |
876 | struct php_ctlr_state_s *php_ctlr = ctrl->hpc_ctlr_handle; | 876 | struct php_ctlr_state_s *php_ctlr = ctrl->hpc_ctlr_handle; |
diff --git a/drivers/pci/pcie/aer/aerdrv.c b/drivers/pci/pcie/aer/aerdrv.c index 0d4ac027d53e..04c43ef529ac 100644 --- a/drivers/pci/pcie/aer/aerdrv.c +++ b/drivers/pci/pcie/aer/aerdrv.c | |||
@@ -85,11 +85,10 @@ static struct pcie_port_service_driver aerdrv = { | |||
85 | * aer_irq - Root Port's ISR | 85 | * aer_irq - Root Port's ISR |
86 | * @irq: IRQ assigned to Root Port | 86 | * @irq: IRQ assigned to Root Port |
87 | * @context: pointer to Root Port data structure | 87 | * @context: pointer to Root Port data structure |
88 | * @r: pointer struct pt_regs | ||
89 | * | 88 | * |
90 | * Invoked when Root Port detects AER messages. | 89 | * Invoked when Root Port detects AER messages. |
91 | **/ | 90 | **/ |
92 | static irqreturn_t aer_irq(int irq, void *context, struct pt_regs * r) | 91 | static irqreturn_t aer_irq(int irq, void *context) |
93 | { | 92 | { |
94 | unsigned int status, id; | 93 | unsigned int status, id; |
95 | struct pcie_device *pdev = (struct pcie_device *)context; | 94 | struct pcie_device *pdev = (struct pcie_device *)context; |
diff --git a/drivers/pcmcia/at91_cf.c b/drivers/pcmcia/at91_cf.c index 40569f40e90e..7f5df9a9f393 100644 --- a/drivers/pcmcia/at91_cf.c +++ b/drivers/pcmcia/at91_cf.c | |||
@@ -64,9 +64,9 @@ static int at91_cf_ss_init(struct pcmcia_socket *s) | |||
64 | return 0; | 64 | return 0; |
65 | } | 65 | } |
66 | 66 | ||
67 | static irqreturn_t at91_cf_irq(int irq, void *_cf, struct pt_regs *r) | 67 | static irqreturn_t at91_cf_irq(int irq, void *_cf) |
68 | { | 68 | { |
69 | struct at91_cf_socket *cf = (struct at91_cf_socket *) _cf; | 69 | struct at91_cf_socket *cf = _cf; |
70 | 70 | ||
71 | if (irq == cf->board->det_pin) { | 71 | if (irq == cf->board->det_pin) { |
72 | unsigned present = at91_cf_present(cf); | 72 | unsigned present = at91_cf_present(cf); |
diff --git a/drivers/pcmcia/hd64465_ss.c b/drivers/pcmcia/hd64465_ss.c index ad02629c8be2..caca0dc9d30f 100644 --- a/drivers/pcmcia/hd64465_ss.c +++ b/drivers/pcmcia/hd64465_ss.c | |||
@@ -650,7 +650,7 @@ static int hs_set_mem_map(struct pcmcia_socket *s, struct pccard_mem_map *mem) | |||
650 | */ | 650 | */ |
651 | static int hs_irq_demux(int irq, void *dev) | 651 | static int hs_irq_demux(int irq, void *dev) |
652 | { | 652 | { |
653 | hs_socket_t *sp = (hs_socket_t *)dev; | 653 | hs_socket_t *sp = dev; |
654 | u_int cscr; | 654 | u_int cscr; |
655 | 655 | ||
656 | DPRINTK("hs_irq_demux(irq=%d)\n", irq); | 656 | DPRINTK("hs_irq_demux(irq=%d)\n", irq); |
@@ -671,13 +671,12 @@ static int hs_irq_demux(int irq, void *dev) | |||
671 | * Interrupt handling routine. | 671 | * Interrupt handling routine. |
672 | */ | 672 | */ |
673 | 673 | ||
674 | static irqreturn_t hs_interrupt(int irq, void *dev, struct pt_regs *regs) | 674 | static irqreturn_t hs_interrupt(int irq, void *dev) |
675 | { | 675 | { |
676 | hs_socket_t *sp = (hs_socket_t *)dev; | 676 | hs_socket_t *sp = dev; |
677 | u_int events = 0; | 677 | u_int events = 0; |
678 | u_int cscr; | 678 | u_int cscr; |
679 | 679 | ||
680 | |||
681 | cscr = hs_in(sp, CSCR); | 680 | cscr = hs_in(sp, CSCR); |
682 | 681 | ||
683 | DPRINTK("hs_interrupt, cscr=%04x\n", cscr); | 682 | DPRINTK("hs_interrupt, cscr=%04x\n", cscr); |
diff --git a/drivers/pcmcia/i82092.c b/drivers/pcmcia/i82092.c index 2163aa75a257..82715f448957 100644 --- a/drivers/pcmcia/i82092.c +++ b/drivers/pcmcia/i82092.c | |||
@@ -315,7 +315,7 @@ static int to_cycles(int ns) | |||
315 | 315 | ||
316 | /* Interrupt handler functionality */ | 316 | /* Interrupt handler functionality */ |
317 | 317 | ||
318 | static irqreturn_t i82092aa_interrupt(int irq, void *dev, struct pt_regs *regs) | 318 | static irqreturn_t i82092aa_interrupt(int irq, void *dev) |
319 | { | 319 | { |
320 | int i; | 320 | int i; |
321 | int loopcount = 0; | 321 | int loopcount = 0; |
diff --git a/drivers/pcmcia/i82092aa.h b/drivers/pcmcia/i82092aa.h index 9c14599d0673..b0d453303c5d 100644 --- a/drivers/pcmcia/i82092aa.h +++ b/drivers/pcmcia/i82092aa.h | |||
@@ -23,7 +23,7 @@ | |||
23 | static int i82092aa_pci_probe(struct pci_dev *dev, const struct pci_device_id *id); | 23 | static int i82092aa_pci_probe(struct pci_dev *dev, const struct pci_device_id *id); |
24 | static void i82092aa_pci_remove(struct pci_dev *dev); | 24 | static void i82092aa_pci_remove(struct pci_dev *dev); |
25 | static int card_present(int socketno); | 25 | static int card_present(int socketno); |
26 | static irqreturn_t i82092aa_interrupt(int irq, void *dev, struct pt_regs *regs); | 26 | static irqreturn_t i82092aa_interrupt(int irq, void *dev); |
27 | 27 | ||
28 | 28 | ||
29 | 29 | ||
diff --git a/drivers/pcmcia/i82365.c b/drivers/pcmcia/i82365.c index 1cc2682394b1..ea74f98a7350 100644 --- a/drivers/pcmcia/i82365.c +++ b/drivers/pcmcia/i82365.c | |||
@@ -80,7 +80,7 @@ module_param(pc_debug, int, 0644); | |||
80 | #define debug(lvl, fmt, arg...) do { } while (0) | 80 | #define debug(lvl, fmt, arg...) do { } while (0) |
81 | #endif | 81 | #endif |
82 | 82 | ||
83 | static irqreturn_t i365_count_irq(int, void *, struct pt_regs *); | 83 | static irqreturn_t i365_count_irq(int, void *); |
84 | static inline int _check_irq(int irq, int flags) | 84 | static inline int _check_irq(int irq, int flags) |
85 | { | 85 | { |
86 | if (request_irq(irq, i365_count_irq, flags, "x", i365_count_irq) != 0) | 86 | if (request_irq(irq, i365_count_irq, flags, "x", i365_count_irq) != 0) |
@@ -498,7 +498,7 @@ static u_int __init set_bridge_opts(u_short s, u_short ns) | |||
498 | static volatile u_int irq_hits; | 498 | static volatile u_int irq_hits; |
499 | static u_short irq_sock; | 499 | static u_short irq_sock; |
500 | 500 | ||
501 | static irqreturn_t i365_count_irq(int irq, void *dev, struct pt_regs *regs) | 501 | static irqreturn_t i365_count_irq(int irq, void *dev) |
502 | { | 502 | { |
503 | i365_get(irq_sock, I365_CSC); | 503 | i365_get(irq_sock, I365_CSC); |
504 | irq_hits++; | 504 | irq_hits++; |
@@ -848,8 +848,7 @@ static void __init isa_probe(void) | |||
848 | 848 | ||
849 | /*====================================================================*/ | 849 | /*====================================================================*/ |
850 | 850 | ||
851 | static irqreturn_t pcic_interrupt(int irq, void *dev, | 851 | static irqreturn_t pcic_interrupt(int irq, void *dev) |
852 | struct pt_regs *regs) | ||
853 | { | 852 | { |
854 | int i, j, csc; | 853 | int i, j, csc; |
855 | u_int events, active; | 854 | u_int events, active; |
@@ -898,7 +897,7 @@ static irqreturn_t pcic_interrupt(int irq, void *dev, | |||
898 | 897 | ||
899 | static void pcic_interrupt_wrapper(u_long data) | 898 | static void pcic_interrupt_wrapper(u_long data) |
900 | { | 899 | { |
901 | pcic_interrupt(0, NULL, NULL); | 900 | pcic_interrupt(0, NULL); |
902 | poll_timer.expires = jiffies + poll_interval; | 901 | poll_timer.expires = jiffies + poll_interval; |
903 | add_timer(&poll_timer); | 902 | add_timer(&poll_timer); |
904 | } | 903 | } |
diff --git a/drivers/pcmcia/m32r_cfc.c b/drivers/pcmcia/m32r_cfc.c index 9e768eaef17a..36fdaa58458c 100644 --- a/drivers/pcmcia/m32r_cfc.c +++ b/drivers/pcmcia/m32r_cfc.c | |||
@@ -254,7 +254,7 @@ static pcc_t pcc[] = { | |||
254 | #endif /* CONFIG_PLAT_USRV */ | 254 | #endif /* CONFIG_PLAT_USRV */ |
255 | }; | 255 | }; |
256 | 256 | ||
257 | static irqreturn_t pcc_interrupt(int, void *, struct pt_regs *); | 257 | static irqreturn_t pcc_interrupt(int, void *); |
258 | 258 | ||
259 | /*====================================================================*/ | 259 | /*====================================================================*/ |
260 | 260 | ||
@@ -372,14 +372,13 @@ static void add_pcc_socket(ulong base, int irq, ulong mapaddr, kio_addr_t ioaddr | |||
372 | 372 | ||
373 | /*====================================================================*/ | 373 | /*====================================================================*/ |
374 | 374 | ||
375 | static irqreturn_t pcc_interrupt(int irq, void *dev, struct pt_regs *regs) | 375 | static irqreturn_t pcc_interrupt(int irq, void *dev) |
376 | { | 376 | { |
377 | int i; | 377 | int i; |
378 | u_int events = 0; | 378 | u_int events = 0; |
379 | int handled = 0; | 379 | int handled = 0; |
380 | 380 | ||
381 | debug(3, "m32r_cfc: pcc_interrupt: irq=%d, dev=%p, regs=%p\n", | 381 | debug(3, "m32r_cfc: pcc_interrupt: irq=%d, dev=%p\n", irq, dev); |
382 | irq, dev, regs); | ||
383 | for (i = 0; i < pcc_sockets; i++) { | 382 | for (i = 0; i < pcc_sockets; i++) { |
384 | if (socket[i].cs_irq1 != irq && socket[i].cs_irq2 != irq) | 383 | if (socket[i].cs_irq1 != irq && socket[i].cs_irq2 != irq) |
385 | continue; | 384 | continue; |
diff --git a/drivers/pcmcia/m32r_pcc.c b/drivers/pcmcia/m32r_pcc.c index 61d50b5620dd..bbf025874d0c 100644 --- a/drivers/pcmcia/m32r_pcc.c +++ b/drivers/pcmcia/m32r_pcc.c | |||
@@ -267,7 +267,7 @@ static pcc_t pcc[] = { | |||
267 | { "xnux2", 0 }, { "xnux2", 0 }, | 267 | { "xnux2", 0 }, { "xnux2", 0 }, |
268 | }; | 268 | }; |
269 | 269 | ||
270 | static irqreturn_t pcc_interrupt(int, void *, struct pt_regs *); | 270 | static irqreturn_t pcc_interrupt(int, void *); |
271 | 271 | ||
272 | /*====================================================================*/ | 272 | /*====================================================================*/ |
273 | 273 | ||
@@ -352,7 +352,7 @@ static void add_pcc_socket(ulong base, int irq, ulong mapaddr, kio_addr_t ioaddr | |||
352 | 352 | ||
353 | /*====================================================================*/ | 353 | /*====================================================================*/ |
354 | 354 | ||
355 | static irqreturn_t pcc_interrupt(int irq, void *dev, struct pt_regs *regs) | 355 | static irqreturn_t pcc_interrupt(int irq, void *dev) |
356 | { | 356 | { |
357 | int i, j, irc; | 357 | int i, j, irc; |
358 | u_int events, active; | 358 | u_int events, active; |
@@ -395,7 +395,7 @@ static irqreturn_t pcc_interrupt(int irq, void *dev, struct pt_regs *regs) | |||
395 | 395 | ||
396 | static void pcc_interrupt_wrapper(u_long data) | 396 | static void pcc_interrupt_wrapper(u_long data) |
397 | { | 397 | { |
398 | pcc_interrupt(0, NULL, NULL); | 398 | pcc_interrupt(0, NULL); |
399 | init_timer(&poll_timer); | 399 | init_timer(&poll_timer); |
400 | poll_timer.expires = jiffies + poll_interval; | 400 | poll_timer.expires = jiffies + poll_interval; |
401 | add_timer(&poll_timer); | 401 | add_timer(&poll_timer); |
diff --git a/drivers/pcmcia/m8xx_pcmcia.c b/drivers/pcmcia/m8xx_pcmcia.c index d0f68ab8f041..e070a2896769 100644 --- a/drivers/pcmcia/m8xx_pcmcia.c +++ b/drivers/pcmcia/m8xx_pcmcia.c | |||
@@ -266,7 +266,7 @@ static const u32 m8xx_size_to_gray[M8XX_SIZES_NO] = | |||
266 | 266 | ||
267 | /* ------------------------------------------------------------------------- */ | 267 | /* ------------------------------------------------------------------------- */ |
268 | 268 | ||
269 | static irqreturn_t m8xx_interrupt(int irq, void *dev, struct pt_regs *regs); | 269 | static irqreturn_t m8xx_interrupt(int irq, void *dev); |
270 | 270 | ||
271 | #define PCMCIA_BMT_LIMIT (15*4) /* Bus Monitor Timeout value */ | 271 | #define PCMCIA_BMT_LIMIT (15*4) /* Bus Monitor Timeout value */ |
272 | 272 | ||
@@ -646,7 +646,7 @@ static struct platform_device m8xx_device = { | |||
646 | static u32 pending_events[PCMCIA_SOCKETS_NO]; | 646 | static u32 pending_events[PCMCIA_SOCKETS_NO]; |
647 | static DEFINE_SPINLOCK(pending_event_lock); | 647 | static DEFINE_SPINLOCK(pending_event_lock); |
648 | 648 | ||
649 | static irqreturn_t m8xx_interrupt(int irq, void *dev, struct pt_regs *regs) | 649 | static irqreturn_t m8xx_interrupt(int irq, void *dev) |
650 | { | 650 | { |
651 | struct socket_info *s; | 651 | struct socket_info *s; |
652 | struct event_table *e; | 652 | struct event_table *e; |
diff --git a/drivers/pcmcia/omap_cf.c b/drivers/pcmcia/omap_cf.c index 01be47e72730..c8e838c69766 100644 --- a/drivers/pcmcia/omap_cf.c +++ b/drivers/pcmcia/omap_cf.c | |||
@@ -102,7 +102,7 @@ static void omap_cf_timer(unsigned long _cf) | |||
102 | * claim the card's IRQ. It may also detect some card insertions, but | 102 | * claim the card's IRQ. It may also detect some card insertions, but |
103 | * not removals; it can't always eliminate timer irqs. | 103 | * not removals; it can't always eliminate timer irqs. |
104 | */ | 104 | */ |
105 | static irqreturn_t omap_cf_irq(int irq, void *_cf, struct pt_regs *r) | 105 | static irqreturn_t omap_cf_irq(int irq, void *_cf) |
106 | { | 106 | { |
107 | omap_cf_timer((unsigned long)_cf); | 107 | omap_cf_timer((unsigned long)_cf); |
108 | return IRQ_HANDLED; | 108 | return IRQ_HANDLED; |
diff --git a/drivers/pcmcia/pcmcia_resource.c b/drivers/pcmcia/pcmcia_resource.c index c8323399e9e4..74cebd424032 100644 --- a/drivers/pcmcia/pcmcia_resource.c +++ b/drivers/pcmcia/pcmcia_resource.c | |||
@@ -784,7 +784,7 @@ EXPORT_SYMBOL(pcmcia_request_io); | |||
784 | */ | 784 | */ |
785 | 785 | ||
786 | #ifdef CONFIG_PCMCIA_PROBE | 786 | #ifdef CONFIG_PCMCIA_PROBE |
787 | static irqreturn_t test_action(int cpl, void *dev_id, struct pt_regs *regs) | 787 | static irqreturn_t test_action(int cpl, void *dev_id) |
788 | { | 788 | { |
789 | return IRQ_NONE; | 789 | return IRQ_NONE; |
790 | } | 790 | } |
diff --git a/drivers/pcmcia/pd6729.c b/drivers/pcmcia/pd6729.c index 22c5e7427ddd..c83a0a6b158f 100644 --- a/drivers/pcmcia/pd6729.c +++ b/drivers/pcmcia/pd6729.c | |||
@@ -182,7 +182,7 @@ static void indirect_write16(struct pd6729_socket *socket, unsigned short reg, | |||
182 | 182 | ||
183 | /* Interrupt handler functionality */ | 183 | /* Interrupt handler functionality */ |
184 | 184 | ||
185 | static irqreturn_t pd6729_interrupt(int irq, void *dev, struct pt_regs *regs) | 185 | static irqreturn_t pd6729_interrupt(int irq, void *dev) |
186 | { | 186 | { |
187 | struct pd6729_socket *socket = (struct pd6729_socket *)dev; | 187 | struct pd6729_socket *socket = (struct pd6729_socket *)dev; |
188 | int i; | 188 | int i; |
@@ -249,7 +249,7 @@ static void pd6729_interrupt_wrapper(unsigned long data) | |||
249 | { | 249 | { |
250 | struct pd6729_socket *socket = (struct pd6729_socket *) data; | 250 | struct pd6729_socket *socket = (struct pd6729_socket *) data; |
251 | 251 | ||
252 | pd6729_interrupt(0, (void *)socket, NULL); | 252 | pd6729_interrupt(0, (void *)socket); |
253 | mod_timer(&socket->poll_timer, jiffies + HZ); | 253 | mod_timer(&socket->poll_timer, jiffies + HZ); |
254 | } | 254 | } |
255 | 255 | ||
@@ -575,7 +575,7 @@ static struct pccard_operations pd6729_operations = { | |||
575 | .set_mem_map = pd6729_set_mem_map, | 575 | .set_mem_map = pd6729_set_mem_map, |
576 | }; | 576 | }; |
577 | 577 | ||
578 | static irqreturn_t pd6729_test(int irq, void *dev, struct pt_regs *regs) | 578 | static irqreturn_t pd6729_test(int irq, void *dev) |
579 | { | 579 | { |
580 | dprintk("-> hit on irq %d\n", irq); | 580 | dprintk("-> hit on irq %d\n", irq); |
581 | return IRQ_HANDLED; | 581 | return IRQ_HANDLED; |
diff --git a/drivers/pcmcia/soc_common.c b/drivers/pcmcia/soc_common.c index ecaa132fa592..3627e52e0c27 100644 --- a/drivers/pcmcia/soc_common.c +++ b/drivers/pcmcia/soc_common.c | |||
@@ -256,7 +256,7 @@ static void soc_common_pcmcia_poll_event(unsigned long dummy) | |||
256 | * handling code performs scheduling operations which cannot be | 256 | * handling code performs scheduling operations which cannot be |
257 | * executed from within an interrupt context. | 257 | * executed from within an interrupt context. |
258 | */ | 258 | */ |
259 | static irqreturn_t soc_common_pcmcia_interrupt(int irq, void *dev, struct pt_regs *regs) | 259 | static irqreturn_t soc_common_pcmcia_interrupt(int irq, void *dev) |
260 | { | 260 | { |
261 | struct soc_pcmcia_socket *skt = dev; | 261 | struct soc_pcmcia_socket *skt = dev; |
262 | 262 | ||
diff --git a/drivers/pcmcia/tcic.c b/drivers/pcmcia/tcic.c index 65a60671659f..2d2f415f80a8 100644 --- a/drivers/pcmcia/tcic.c +++ b/drivers/pcmcia/tcic.c | |||
@@ -116,7 +116,7 @@ module_param(cycle_time, int, 0444); | |||
116 | 116 | ||
117 | /*====================================================================*/ | 117 | /*====================================================================*/ |
118 | 118 | ||
119 | static irqreturn_t tcic_interrupt(int irq, void *dev, struct pt_regs *regs); | 119 | static irqreturn_t tcic_interrupt(int irq, void *dev); |
120 | static void tcic_timer(u_long data); | 120 | static void tcic_timer(u_long data); |
121 | static struct pccard_operations tcic_operations; | 121 | static struct pccard_operations tcic_operations; |
122 | 122 | ||
@@ -218,7 +218,7 @@ static int to_cycles(int ns) | |||
218 | 218 | ||
219 | static volatile u_int irq_hits; | 219 | static volatile u_int irq_hits; |
220 | 220 | ||
221 | static irqreturn_t __init tcic_irq_count(int irq, void *dev, struct pt_regs *regs) | 221 | static irqreturn_t __init tcic_irq_count(int irq, void *dev) |
222 | { | 222 | { |
223 | irq_hits++; | 223 | irq_hits++; |
224 | return IRQ_HANDLED; | 224 | return IRQ_HANDLED; |
@@ -505,7 +505,7 @@ static int __init init_tcic(void) | |||
505 | } | 505 | } |
506 | 506 | ||
507 | /* jump start interrupt handler, if needed */ | 507 | /* jump start interrupt handler, if needed */ |
508 | tcic_interrupt(0, NULL, NULL); | 508 | tcic_interrupt(0, NULL); |
509 | 509 | ||
510 | platform_device_register(&tcic_device); | 510 | platform_device_register(&tcic_device); |
511 | 511 | ||
@@ -547,7 +547,7 @@ static void __exit exit_tcic(void) | |||
547 | 547 | ||
548 | /*====================================================================*/ | 548 | /*====================================================================*/ |
549 | 549 | ||
550 | static irqreturn_t tcic_interrupt(int irq, void *dev, struct pt_regs *regs) | 550 | static irqreturn_t tcic_interrupt(int irq, void *dev) |
551 | { | 551 | { |
552 | int i, quick = 0; | 552 | int i, quick = 0; |
553 | u_char latch, sstat; | 553 | u_char latch, sstat; |
@@ -606,7 +606,7 @@ static void tcic_timer(u_long data) | |||
606 | { | 606 | { |
607 | debug(2, "tcic_timer()\n"); | 607 | debug(2, "tcic_timer()\n"); |
608 | tcic_timer_pending = 0; | 608 | tcic_timer_pending = 0; |
609 | tcic_interrupt(0, NULL, NULL); | 609 | tcic_interrupt(0, NULL); |
610 | } /* tcic_timer */ | 610 | } /* tcic_timer */ |
611 | 611 | ||
612 | /*====================================================================*/ | 612 | /*====================================================================*/ |
diff --git a/drivers/pcmcia/vrc4171_card.c b/drivers/pcmcia/vrc4171_card.c index e076a13db555..e90d8e8c5fd6 100644 --- a/drivers/pcmcia/vrc4171_card.c +++ b/drivers/pcmcia/vrc4171_card.c | |||
@@ -514,7 +514,7 @@ static inline unsigned int get_events(int slot) | |||
514 | return events; | 514 | return events; |
515 | } | 515 | } |
516 | 516 | ||
517 | static irqreturn_t pccard_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 517 | static irqreturn_t pccard_interrupt(int irq, void *dev_id) |
518 | { | 518 | { |
519 | vrc4171_socket_t *socket; | 519 | vrc4171_socket_t *socket; |
520 | unsigned int events; | 520 | unsigned int events; |
diff --git a/drivers/pcmcia/vrc4173_cardu.c b/drivers/pcmcia/vrc4173_cardu.c index d19a9138135f..812f038e9bda 100644 --- a/drivers/pcmcia/vrc4173_cardu.c +++ b/drivers/pcmcia/vrc4173_cardu.c | |||
@@ -440,7 +440,7 @@ static uint16_t get_events(vrc4173_socket_t *socket) | |||
440 | return events; | 440 | return events; |
441 | } | 441 | } |
442 | 442 | ||
443 | static void cardu_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 443 | static void cardu_interrupt(int irq, void *dev_id) |
444 | { | 444 | { |
445 | vrc4173_socket_t *socket = (vrc4173_socket_t *)dev_id; | 445 | vrc4173_socket_t *socket = (vrc4173_socket_t *)dev_id; |
446 | uint16_t events; | 446 | uint16_t events; |
diff --git a/drivers/pcmcia/yenta_socket.c b/drivers/pcmcia/yenta_socket.c index 1344746381e8..26229d9da762 100644 --- a/drivers/pcmcia/yenta_socket.c +++ b/drivers/pcmcia/yenta_socket.c | |||
@@ -442,7 +442,7 @@ static int yenta_set_mem_map(struct pcmcia_socket *sock, struct pccard_mem_map * | |||
442 | 442 | ||
443 | 443 | ||
444 | 444 | ||
445 | static irqreturn_t yenta_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 445 | static irqreturn_t yenta_interrupt(int irq, void *dev_id) |
446 | { | 446 | { |
447 | unsigned int events; | 447 | unsigned int events; |
448 | struct yenta_socket *socket = (struct yenta_socket *) dev_id; | 448 | struct yenta_socket *socket = (struct yenta_socket *) dev_id; |
@@ -478,7 +478,7 @@ static void yenta_interrupt_wrapper(unsigned long data) | |||
478 | { | 478 | { |
479 | struct yenta_socket *socket = (struct yenta_socket *) data; | 479 | struct yenta_socket *socket = (struct yenta_socket *) data; |
480 | 480 | ||
481 | yenta_interrupt(0, (void *)socket, NULL); | 481 | yenta_interrupt(0, (void *)socket); |
482 | socket->poll_timer.expires = jiffies + HZ; | 482 | socket->poll_timer.expires = jiffies + HZ; |
483 | add_timer(&socket->poll_timer); | 483 | add_timer(&socket->poll_timer); |
484 | } | 484 | } |
@@ -896,7 +896,7 @@ static unsigned int yenta_probe_irq(struct yenta_socket *socket, u32 isa_irq_mas | |||
896 | #ifdef CONFIG_YENTA_TI | 896 | #ifdef CONFIG_YENTA_TI |
897 | 897 | ||
898 | /* interrupt handler, only used during probing */ | 898 | /* interrupt handler, only used during probing */ |
899 | static irqreturn_t yenta_probe_handler(int irq, void *dev_id, struct pt_regs *regs) | 899 | static irqreturn_t yenta_probe_handler(int irq, void *dev_id) |
900 | { | 900 | { |
901 | struct yenta_socket *socket = (struct yenta_socket *) dev_id; | 901 | struct yenta_socket *socket = (struct yenta_socket *) dev_id; |
902 | u8 csc; | 902 | u8 csc; |
diff --git a/drivers/pnp/resource.c b/drivers/pnp/resource.c index 5c8ec21e1086..a685fbec4604 100644 --- a/drivers/pnp/resource.c +++ b/drivers/pnp/resource.c | |||
@@ -348,7 +348,7 @@ int pnp_check_mem(struct pnp_dev * dev, int idx) | |||
348 | return 1; | 348 | return 1; |
349 | } | 349 | } |
350 | 350 | ||
351 | static irqreturn_t pnp_test_handler(int irq, void *dev_id, struct pt_regs *regs) | 351 | static irqreturn_t pnp_test_handler(int irq, void *dev_id) |
352 | { | 352 | { |
353 | return IRQ_HANDLED; | 353 | return IRQ_HANDLED; |
354 | } | 354 | } |
diff --git a/drivers/rtc/rtc-at91.c b/drivers/rtc/rtc-at91.c index c0714da44920..bd61e99540a3 100644 --- a/drivers/rtc/rtc-at91.c +++ b/drivers/rtc/rtc-at91.c | |||
@@ -238,8 +238,7 @@ static int at91_rtc_proc(struct device *dev, struct seq_file *seq) | |||
238 | /* | 238 | /* |
239 | * IRQ handler for the RTC | 239 | * IRQ handler for the RTC |
240 | */ | 240 | */ |
241 | static irqreturn_t at91_rtc_interrupt(int irq, void *dev_id, | 241 | static irqreturn_t at91_rtc_interrupt(int irq, void *dev_id) |
242 | struct pt_regs *regs) | ||
243 | { | 242 | { |
244 | struct platform_device *pdev = dev_id; | 243 | struct platform_device *pdev = dev_id; |
245 | struct rtc_device *rtc = platform_get_drvdata(pdev); | 244 | struct rtc_device *rtc = platform_get_drvdata(pdev); |
diff --git a/drivers/rtc/rtc-ds1553.c b/drivers/rtc/rtc-ds1553.c index 9647188fee2c..78552e6e76aa 100644 --- a/drivers/rtc/rtc-ds1553.c +++ b/drivers/rtc/rtc-ds1553.c | |||
@@ -189,8 +189,7 @@ static int ds1553_rtc_read_alarm(struct device *dev, struct rtc_wkalrm *alrm) | |||
189 | return 0; | 189 | return 0; |
190 | } | 190 | } |
191 | 191 | ||
192 | static irqreturn_t ds1553_rtc_interrupt(int irq, void *dev_id, | 192 | static irqreturn_t ds1553_rtc_interrupt(int irq, void *dev_id) |
193 | struct pt_regs *regs) | ||
194 | { | 193 | { |
195 | struct platform_device *pdev = dev_id; | 194 | struct platform_device *pdev = dev_id; |
196 | struct rtc_plat_data *pdata = platform_get_drvdata(pdev); | 195 | struct rtc_plat_data *pdata = platform_get_drvdata(pdev); |
diff --git a/drivers/rtc/rtc-pl031.c b/drivers/rtc/rtc-pl031.c index 739d1a6e14eb..f13daa9fecaa 100644 --- a/drivers/rtc/rtc-pl031.c +++ b/drivers/rtc/rtc-pl031.c | |||
@@ -47,7 +47,7 @@ struct pl031_local { | |||
47 | void __iomem *base; | 47 | void __iomem *base; |
48 | }; | 48 | }; |
49 | 49 | ||
50 | static irqreturn_t pl031_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 50 | static irqreturn_t pl031_interrupt(int irq, void *dev_id) |
51 | { | 51 | { |
52 | struct rtc_device *rtc = dev_id; | 52 | struct rtc_device *rtc = dev_id; |
53 | 53 | ||
diff --git a/drivers/rtc/rtc-s3c.c b/drivers/rtc/rtc-s3c.c index 625dad2eeb4f..e301dea57bb3 100644 --- a/drivers/rtc/rtc-s3c.c +++ b/drivers/rtc/rtc-s3c.c | |||
@@ -46,7 +46,7 @@ static unsigned int tick_count; | |||
46 | 46 | ||
47 | /* IRQ Handlers */ | 47 | /* IRQ Handlers */ |
48 | 48 | ||
49 | static irqreturn_t s3c_rtc_alarmirq(int irq, void *id, struct pt_regs *r) | 49 | static irqreturn_t s3c_rtc_alarmirq(int irq, void *id) |
50 | { | 50 | { |
51 | struct rtc_device *rdev = id; | 51 | struct rtc_device *rdev = id; |
52 | 52 | ||
@@ -54,7 +54,7 @@ static irqreturn_t s3c_rtc_alarmirq(int irq, void *id, struct pt_regs *r) | |||
54 | return IRQ_HANDLED; | 54 | return IRQ_HANDLED; |
55 | } | 55 | } |
56 | 56 | ||
57 | static irqreturn_t s3c_rtc_tickirq(int irq, void *id, struct pt_regs *r) | 57 | static irqreturn_t s3c_rtc_tickirq(int irq, void *id) |
58 | { | 58 | { |
59 | struct rtc_device *rdev = id; | 59 | struct rtc_device *rdev = id; |
60 | 60 | ||
diff --git a/drivers/rtc/rtc-sa1100.c b/drivers/rtc/rtc-sa1100.c index 439c41aea31c..bd4d7d174ef4 100644 --- a/drivers/rtc/rtc-sa1100.c +++ b/drivers/rtc/rtc-sa1100.c | |||
@@ -68,8 +68,7 @@ static int rtc_update_alarm(struct rtc_time *alrm) | |||
68 | return ret; | 68 | return ret; |
69 | } | 69 | } |
70 | 70 | ||
71 | static irqreturn_t sa1100_rtc_interrupt(int irq, void *dev_id, | 71 | static irqreturn_t sa1100_rtc_interrupt(int irq, void *dev_id) |
72 | struct pt_regs *regs) | ||
73 | { | 72 | { |
74 | struct platform_device *pdev = to_platform_device(dev_id); | 73 | struct platform_device *pdev = to_platform_device(dev_id); |
75 | struct rtc_device *rtc = platform_get_drvdata(pdev); | 74 | struct rtc_device *rtc = platform_get_drvdata(pdev); |
@@ -106,8 +105,7 @@ static irqreturn_t sa1100_rtc_interrupt(int irq, void *dev_id, | |||
106 | 105 | ||
107 | static int rtc_timer1_count; | 106 | static int rtc_timer1_count; |
108 | 107 | ||
109 | static irqreturn_t timer1_interrupt(int irq, void *dev_id, | 108 | static irqreturn_t timer1_interrupt(int irq, void *dev_id) |
110 | struct pt_regs *regs) | ||
111 | { | 109 | { |
112 | struct platform_device *pdev = to_platform_device(dev_id); | 110 | struct platform_device *pdev = to_platform_device(dev_id); |
113 | struct rtc_device *rtc = platform_get_drvdata(pdev); | 111 | struct rtc_device *rtc = platform_get_drvdata(pdev); |
diff --git a/drivers/rtc/rtc-sh.c b/drivers/rtc/rtc-sh.c index d2ce0c8bb8f3..8b6efcc05058 100644 --- a/drivers/rtc/rtc-sh.c +++ b/drivers/rtc/rtc-sh.c | |||
@@ -73,7 +73,7 @@ struct sh_rtc { | |||
73 | spinlock_t lock; | 73 | spinlock_t lock; |
74 | }; | 74 | }; |
75 | 75 | ||
76 | static irqreturn_t sh_rtc_interrupt(int irq, void *id, struct pt_regs *regs) | 76 | static irqreturn_t sh_rtc_interrupt(int irq, void *id) |
77 | { | 77 | { |
78 | struct platform_device *pdev = id; | 78 | struct platform_device *pdev = id; |
79 | struct sh_rtc *rtc = platform_get_drvdata(pdev); | 79 | struct sh_rtc *rtc = platform_get_drvdata(pdev); |
@@ -97,7 +97,7 @@ static irqreturn_t sh_rtc_interrupt(int irq, void *id, struct pt_regs *regs) | |||
97 | return IRQ_HANDLED; | 97 | return IRQ_HANDLED; |
98 | } | 98 | } |
99 | 99 | ||
100 | static irqreturn_t sh_rtc_periodic(int irq, void *id, struct pt_regs *regs) | 100 | static irqreturn_t sh_rtc_periodic(int irq, void *id) |
101 | { | 101 | { |
102 | struct sh_rtc *rtc = dev_get_drvdata(id); | 102 | struct sh_rtc *rtc = dev_get_drvdata(id); |
103 | 103 | ||
diff --git a/drivers/rtc/rtc-vr41xx.c b/drivers/rtc/rtc-vr41xx.c index 58e5ed0aa127..e40322b71938 100644 --- a/drivers/rtc/rtc-vr41xx.c +++ b/drivers/rtc/rtc-vr41xx.c | |||
@@ -268,7 +268,7 @@ static int vr41xx_rtc_ioctl(struct device *dev, unsigned int cmd, unsigned long | |||
268 | return 0; | 268 | return 0; |
269 | } | 269 | } |
270 | 270 | ||
271 | static irqreturn_t elapsedtime_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 271 | static irqreturn_t elapsedtime_interrupt(int irq, void *dev_id) |
272 | { | 272 | { |
273 | struct platform_device *pdev = (struct platform_device *)dev_id; | 273 | struct platform_device *pdev = (struct platform_device *)dev_id; |
274 | struct rtc_device *rtc = platform_get_drvdata(pdev); | 274 | struct rtc_device *rtc = platform_get_drvdata(pdev); |
@@ -280,7 +280,7 @@ static irqreturn_t elapsedtime_interrupt(int irq, void *dev_id, struct pt_regs * | |||
280 | return IRQ_HANDLED; | 280 | return IRQ_HANDLED; |
281 | } | 281 | } |
282 | 282 | ||
283 | static irqreturn_t rtclong1_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 283 | static irqreturn_t rtclong1_interrupt(int irq, void *dev_id) |
284 | { | 284 | { |
285 | struct platform_device *pdev = (struct platform_device *)dev_id; | 285 | struct platform_device *pdev = (struct platform_device *)dev_id; |
286 | struct rtc_device *rtc = platform_get_drvdata(pdev); | 286 | struct rtc_device *rtc = platform_get_drvdata(pdev); |
diff --git a/drivers/s390/block/dasd_diag.c b/drivers/s390/block/dasd_diag.c index 222a8a71a5e8..53db58a68617 100644 --- a/drivers/s390/block/dasd_diag.c +++ b/drivers/s390/block/dasd_diag.c | |||
@@ -218,7 +218,7 @@ dasd_diag_term_IO(struct dasd_ccw_req * cqr) | |||
218 | 218 | ||
219 | /* Handle external interruption. */ | 219 | /* Handle external interruption. */ |
220 | static void | 220 | static void |
221 | dasd_ext_handler(struct pt_regs *regs, __u16 code) | 221 | dasd_ext_handler(__u16 code) |
222 | { | 222 | { |
223 | struct dasd_ccw_req *cqr, *next; | 223 | struct dasd_ccw_req *cqr, *next; |
224 | struct dasd_device *device; | 224 | struct dasd_device *device; |
diff --git a/drivers/s390/char/ctrlchar.c b/drivers/s390/char/ctrlchar.c index d83eb6358bac..49e9628d9297 100644 --- a/drivers/s390/char/ctrlchar.c +++ b/drivers/s390/char/ctrlchar.c | |||
@@ -20,7 +20,7 @@ static int ctrlchar_sysrq_key; | |||
20 | static void | 20 | static void |
21 | ctrlchar_handle_sysrq(void *tty) | 21 | ctrlchar_handle_sysrq(void *tty) |
22 | { | 22 | { |
23 | handle_sysrq(ctrlchar_sysrq_key, NULL, (struct tty_struct *) tty); | 23 | handle_sysrq(ctrlchar_sysrq_key, (struct tty_struct *) tty); |
24 | } | 24 | } |
25 | 25 | ||
26 | static DECLARE_WORK(ctrlchar_work, ctrlchar_handle_sysrq, NULL); | 26 | static DECLARE_WORK(ctrlchar_work, ctrlchar_handle_sysrq, NULL); |
diff --git a/drivers/s390/char/keyboard.c b/drivers/s390/char/keyboard.c index 3be06569180d..e3491a5f5219 100644 --- a/drivers/s390/char/keyboard.c +++ b/drivers/s390/char/keyboard.c | |||
@@ -304,7 +304,7 @@ kbd_keycode(struct kbd_data *kbd, unsigned int keycode) | |||
304 | if (kbd->sysrq) { | 304 | if (kbd->sysrq) { |
305 | if (kbd->sysrq == K(KT_LATIN, '-')) { | 305 | if (kbd->sysrq == K(KT_LATIN, '-')) { |
306 | kbd->sysrq = 0; | 306 | kbd->sysrq = 0; |
307 | handle_sysrq(value, NULL, kbd->tty); | 307 | handle_sysrq(value, kbd->tty); |
308 | return; | 308 | return; |
309 | } | 309 | } |
310 | if (value == '-') { | 310 | if (value == '-') { |
diff --git a/drivers/s390/char/monwriter.c b/drivers/s390/char/monwriter.c index 1e3939aeb8ab..4362ff260244 100644 --- a/drivers/s390/char/monwriter.c +++ b/drivers/s390/char/monwriter.c | |||
@@ -26,6 +26,7 @@ | |||
26 | #define MONWRITE_MAX_DATALEN 4024 | 26 | #define MONWRITE_MAX_DATALEN 4024 |
27 | 27 | ||
28 | static int mon_max_bufs = 255; | 28 | static int mon_max_bufs = 255; |
29 | static int mon_buf_count; | ||
29 | 30 | ||
30 | struct mon_buf { | 31 | struct mon_buf { |
31 | struct list_head list; | 32 | struct list_head list; |
@@ -40,7 +41,6 @@ struct mon_private { | |||
40 | size_t hdr_to_read; | 41 | size_t hdr_to_read; |
41 | size_t data_to_read; | 42 | size_t data_to_read; |
42 | struct mon_buf *current_buf; | 43 | struct mon_buf *current_buf; |
43 | int mon_buf_count; | ||
44 | }; | 44 | }; |
45 | 45 | ||
46 | /* | 46 | /* |
@@ -99,13 +99,13 @@ static int monwrite_new_hdr(struct mon_private *monpriv) | |||
99 | rc = monwrite_diag(monhdr, monbuf->data, | 99 | rc = monwrite_diag(monhdr, monbuf->data, |
100 | APPLDATA_STOP_REC); | 100 | APPLDATA_STOP_REC); |
101 | list_del(&monbuf->list); | 101 | list_del(&monbuf->list); |
102 | monpriv->mon_buf_count--; | 102 | mon_buf_count--; |
103 | kfree(monbuf->data); | 103 | kfree(monbuf->data); |
104 | kfree(monbuf); | 104 | kfree(monbuf); |
105 | monbuf = NULL; | 105 | monbuf = NULL; |
106 | } | 106 | } |
107 | } else { | 107 | } else { |
108 | if (monpriv->mon_buf_count >= mon_max_bufs) | 108 | if (mon_buf_count >= mon_max_bufs) |
109 | return -ENOSPC; | 109 | return -ENOSPC; |
110 | monbuf = kzalloc(sizeof(struct mon_buf), GFP_KERNEL); | 110 | monbuf = kzalloc(sizeof(struct mon_buf), GFP_KERNEL); |
111 | if (!monbuf) | 111 | if (!monbuf) |
@@ -118,7 +118,7 @@ static int monwrite_new_hdr(struct mon_private *monpriv) | |||
118 | } | 118 | } |
119 | monbuf->hdr = *monhdr; | 119 | monbuf->hdr = *monhdr; |
120 | list_add_tail(&monbuf->list, &monpriv->list); | 120 | list_add_tail(&monbuf->list, &monpriv->list); |
121 | monpriv->mon_buf_count++; | 121 | mon_buf_count++; |
122 | } | 122 | } |
123 | monpriv->current_buf = monbuf; | 123 | monpriv->current_buf = monbuf; |
124 | return 0; | 124 | return 0; |
@@ -186,7 +186,7 @@ static int monwrite_close(struct inode *inode, struct file *filp) | |||
186 | if (entry->hdr.mon_function != MONWRITE_GEN_EVENT) | 186 | if (entry->hdr.mon_function != MONWRITE_GEN_EVENT) |
187 | monwrite_diag(&entry->hdr, entry->data, | 187 | monwrite_diag(&entry->hdr, entry->data, |
188 | APPLDATA_STOP_REC); | 188 | APPLDATA_STOP_REC); |
189 | monpriv->mon_buf_count--; | 189 | mon_buf_count--; |
190 | list_del(&entry->list); | 190 | list_del(&entry->list); |
191 | kfree(entry->data); | 191 | kfree(entry->data); |
192 | kfree(entry); | 192 | kfree(entry); |
diff --git a/drivers/s390/char/sclp.c b/drivers/s390/char/sclp.c index 31e335751d6d..8a056df09d6b 100644 --- a/drivers/s390/char/sclp.c +++ b/drivers/s390/char/sclp.c | |||
@@ -324,7 +324,7 @@ __sclp_find_req(u32 sccb) | |||
324 | * Prepare read event data request if necessary. Start processing of next | 324 | * Prepare read event data request if necessary. Start processing of next |
325 | * request on queue. */ | 325 | * request on queue. */ |
326 | static void | 326 | static void |
327 | sclp_interrupt_handler(struct pt_regs *regs, __u16 code) | 327 | sclp_interrupt_handler(__u16 code) |
328 | { | 328 | { |
329 | struct sclp_req *req; | 329 | struct sclp_req *req; |
330 | u32 finished_sccb; | 330 | u32 finished_sccb; |
@@ -743,7 +743,7 @@ EXPORT_SYMBOL(sclp_reactivate); | |||
743 | /* Handler for external interruption used during initialization. Modify | 743 | /* Handler for external interruption used during initialization. Modify |
744 | * request state to done. */ | 744 | * request state to done. */ |
745 | static void | 745 | static void |
746 | sclp_check_handler(struct pt_regs *regs, __u16 code) | 746 | sclp_check_handler(__u16 code) |
747 | { | 747 | { |
748 | u32 finished_sccb; | 748 | u32 finished_sccb; |
749 | 749 | ||
diff --git a/drivers/s390/cio/chsc.c b/drivers/s390/cio/chsc.c index 3bb4e472d73d..07c7f19339d2 100644 --- a/drivers/s390/cio/chsc.c +++ b/drivers/s390/cio/chsc.c | |||
@@ -200,11 +200,13 @@ css_get_ssd_info(struct subchannel *sch) | |||
200 | spin_unlock_irq(&sch->lock); | 200 | spin_unlock_irq(&sch->lock); |
201 | free_page((unsigned long)page); | 201 | free_page((unsigned long)page); |
202 | if (!ret) { | 202 | if (!ret) { |
203 | int j, chpid; | 203 | int j, chpid, mask; |
204 | /* Allocate channel path structures, if needed. */ | 204 | /* Allocate channel path structures, if needed. */ |
205 | for (j = 0; j < 8; j++) { | 205 | for (j = 0; j < 8; j++) { |
206 | mask = 0x80 >> j; | ||
206 | chpid = sch->ssd_info.chpid[j]; | 207 | chpid = sch->ssd_info.chpid[j]; |
207 | if (chpid && (get_chp_status(chpid) < 0)) | 208 | if ((sch->schib.pmcw.pim & mask) && |
209 | (get_chp_status(chpid) < 0)) | ||
208 | new_channel_path(chpid); | 210 | new_channel_path(chpid); |
209 | } | 211 | } |
210 | } | 212 | } |
@@ -222,13 +224,15 @@ s390_subchannel_remove_chpid(struct device *dev, void *data) | |||
222 | 224 | ||
223 | sch = to_subchannel(dev); | 225 | sch = to_subchannel(dev); |
224 | chpid = data; | 226 | chpid = data; |
225 | for (j = 0; j < 8; j++) | 227 | for (j = 0; j < 8; j++) { |
226 | if (sch->schib.pmcw.chpid[j] == chpid->id) | 228 | mask = 0x80 >> j; |
229 | if ((sch->schib.pmcw.pim & mask) && | ||
230 | (sch->schib.pmcw.chpid[j] == chpid->id)) | ||
227 | break; | 231 | break; |
232 | } | ||
228 | if (j >= 8) | 233 | if (j >= 8) |
229 | return 0; | 234 | return 0; |
230 | 235 | ||
231 | mask = 0x80 >> j; | ||
232 | spin_lock_irq(&sch->lock); | 236 | spin_lock_irq(&sch->lock); |
233 | 237 | ||
234 | stsch(sch->schid, &schib); | 238 | stsch(sch->schid, &schib); |
@@ -620,7 +624,7 @@ __chp_add_new_sch(struct subchannel_id schid) | |||
620 | static int | 624 | static int |
621 | __chp_add(struct subchannel_id schid, void *data) | 625 | __chp_add(struct subchannel_id schid, void *data) |
622 | { | 626 | { |
623 | int i; | 627 | int i, mask; |
624 | struct channel_path *chp; | 628 | struct channel_path *chp; |
625 | struct subchannel *sch; | 629 | struct subchannel *sch; |
626 | 630 | ||
@@ -630,8 +634,10 @@ __chp_add(struct subchannel_id schid, void *data) | |||
630 | /* Check if the subchannel is now available. */ | 634 | /* Check if the subchannel is now available. */ |
631 | return __chp_add_new_sch(schid); | 635 | return __chp_add_new_sch(schid); |
632 | spin_lock_irq(&sch->lock); | 636 | spin_lock_irq(&sch->lock); |
633 | for (i=0; i<8; i++) | 637 | for (i=0; i<8; i++) { |
634 | if (sch->schib.pmcw.chpid[i] == chp->id) { | 638 | mask = 0x80 >> i; |
639 | if ((sch->schib.pmcw.pim & mask) && | ||
640 | (sch->schib.pmcw.chpid[i] == chp->id)) { | ||
635 | if (stsch(sch->schid, &sch->schib) != 0) { | 641 | if (stsch(sch->schid, &sch->schib) != 0) { |
636 | /* Endgame. */ | 642 | /* Endgame. */ |
637 | spin_unlock_irq(&sch->lock); | 643 | spin_unlock_irq(&sch->lock); |
@@ -639,6 +645,7 @@ __chp_add(struct subchannel_id schid, void *data) | |||
639 | } | 645 | } |
640 | break; | 646 | break; |
641 | } | 647 | } |
648 | } | ||
642 | if (i==8) { | 649 | if (i==8) { |
643 | spin_unlock_irq(&sch->lock); | 650 | spin_unlock_irq(&sch->lock); |
644 | return 0; | 651 | return 0; |
@@ -646,7 +653,7 @@ __chp_add(struct subchannel_id schid, void *data) | |||
646 | sch->lpm = ((sch->schib.pmcw.pim & | 653 | sch->lpm = ((sch->schib.pmcw.pim & |
647 | sch->schib.pmcw.pam & | 654 | sch->schib.pmcw.pam & |
648 | sch->schib.pmcw.pom) | 655 | sch->schib.pmcw.pom) |
649 | | 0x80 >> i) & sch->opm; | 656 | | mask) & sch->opm; |
650 | 657 | ||
651 | if (sch->driver && sch->driver->verify) | 658 | if (sch->driver && sch->driver->verify) |
652 | sch->driver->verify(&sch->dev); | 659 | sch->driver->verify(&sch->dev); |
diff --git a/drivers/s390/cio/cio.c b/drivers/s390/cio/cio.c index 2e2882daefbb..f18b1623cad7 100644 --- a/drivers/s390/cio/cio.c +++ b/drivers/s390/cio/cio.c | |||
@@ -19,6 +19,7 @@ | |||
19 | #include <asm/cio.h> | 19 | #include <asm/cio.h> |
20 | #include <asm/delay.h> | 20 | #include <asm/delay.h> |
21 | #include <asm/irq.h> | 21 | #include <asm/irq.h> |
22 | #include <asm/irq_regs.h> | ||
22 | #include <asm/setup.h> | 23 | #include <asm/setup.h> |
23 | #include "airq.h" | 24 | #include "airq.h" |
24 | #include "cio.h" | 25 | #include "cio.h" |
@@ -606,15 +607,17 @@ do_IRQ (struct pt_regs *regs) | |||
606 | struct tpi_info *tpi_info; | 607 | struct tpi_info *tpi_info; |
607 | struct subchannel *sch; | 608 | struct subchannel *sch; |
608 | struct irb *irb; | 609 | struct irb *irb; |
610 | struct pt_regs *old_regs; | ||
609 | 611 | ||
610 | irq_enter (); | 612 | irq_enter (); |
613 | old_regs = set_irq_regs(regs); | ||
611 | asm volatile ("mc 0,0"); | 614 | asm volatile ("mc 0,0"); |
612 | if (S390_lowcore.int_clock >= S390_lowcore.jiffy_timer) | 615 | if (S390_lowcore.int_clock >= S390_lowcore.jiffy_timer) |
613 | /** | 616 | /** |
614 | * Make sure that the i/o interrupt did not "overtake" | 617 | * Make sure that the i/o interrupt did not "overtake" |
615 | * the last HZ timer interrupt. | 618 | * the last HZ timer interrupt. |
616 | */ | 619 | */ |
617 | account_ticks(regs); | 620 | account_ticks(); |
618 | /* | 621 | /* |
619 | * Get interrupt information from lowcore | 622 | * Get interrupt information from lowcore |
620 | */ | 623 | */ |
@@ -652,6 +655,7 @@ do_IRQ (struct pt_regs *regs) | |||
652 | * out of the sie which costs more cycles than it saves. | 655 | * out of the sie which costs more cycles than it saves. |
653 | */ | 656 | */ |
654 | } while (!MACHINE_IS_VM && tpi (NULL) != 0); | 657 | } while (!MACHINE_IS_VM && tpi (NULL) != 0); |
658 | set_irq_regs(old_regs); | ||
655 | irq_exit (); | 659 | irq_exit (); |
656 | } | 660 | } |
657 | 661 | ||
diff --git a/drivers/s390/crypto/ap_bus.c b/drivers/s390/crypto/ap_bus.c index cd30f37fceae..c5ccd20b110c 100644 --- a/drivers/s390/crypto/ap_bus.c +++ b/drivers/s390/crypto/ap_bus.c | |||
@@ -1062,7 +1062,7 @@ static int ap_poll_thread(void *data) | |||
1062 | unsigned long flags; | 1062 | unsigned long flags; |
1063 | int requests; | 1063 | int requests; |
1064 | 1064 | ||
1065 | set_user_nice(current, -20); | 1065 | set_user_nice(current, 19); |
1066 | while (1) { | 1066 | while (1) { |
1067 | if (need_resched()) { | 1067 | if (need_resched()) { |
1068 | schedule(); | 1068 | schedule(); |
diff --git a/drivers/s390/net/iucv.c b/drivers/s390/net/iucv.c index 809dd8d7f47a..1476ce2b437c 100644 --- a/drivers/s390/net/iucv.c +++ b/drivers/s390/net/iucv.c | |||
@@ -116,7 +116,7 @@ static DEFINE_SPINLOCK(iucv_irq_queue_lock); | |||
116 | *Internal function prototypes | 116 | *Internal function prototypes |
117 | */ | 117 | */ |
118 | static void iucv_tasklet_handler(unsigned long); | 118 | static void iucv_tasklet_handler(unsigned long); |
119 | static void iucv_irq_handler(struct pt_regs *, __u16); | 119 | static void iucv_irq_handler(__u16); |
120 | 120 | ||
121 | static DECLARE_TASKLET(iucv_tasklet,iucv_tasklet_handler,0); | 121 | static DECLARE_TASKLET(iucv_tasklet,iucv_tasklet_handler,0); |
122 | 122 | ||
@@ -2251,7 +2251,7 @@ iucv_sever(__u16 pathid, __u8 user_data[16]) | |||
2251 | * Places the interrupt buffer on a queue and schedules iucv_tasklet_handler(). | 2251 | * Places the interrupt buffer on a queue and schedules iucv_tasklet_handler(). |
2252 | */ | 2252 | */ |
2253 | static void | 2253 | static void |
2254 | iucv_irq_handler(struct pt_regs *regs, __u16 code) | 2254 | iucv_irq_handler(__u16 code) |
2255 | { | 2255 | { |
2256 | iucv_irqdata *irqdata; | 2256 | iucv_irqdata *irqdata; |
2257 | 2257 | ||
diff --git a/drivers/s390/scsi/zfcp_erp.c b/drivers/s390/scsi/zfcp_erp.c index 862a411a4aa0..c88babce9bca 100644 --- a/drivers/s390/scsi/zfcp_erp.c +++ b/drivers/s390/scsi/zfcp_erp.c | |||
@@ -1987,7 +1987,7 @@ zfcp_erp_adapter_strategy_open_qdio(struct zfcp_erp_action *erp_action) | |||
1987 | sbale = &(adapter->response_queue.buffer[i]->element[0]); | 1987 | sbale = &(adapter->response_queue.buffer[i]->element[0]); |
1988 | sbale->length = 0; | 1988 | sbale->length = 0; |
1989 | sbale->flags = SBAL_FLAGS_LAST_ENTRY; | 1989 | sbale->flags = SBAL_FLAGS_LAST_ENTRY; |
1990 | sbale->addr = 0; | 1990 | sbale->addr = NULL; |
1991 | } | 1991 | } |
1992 | 1992 | ||
1993 | ZFCP_LOG_TRACE("calling do_QDIO on adapter %s (flags=0x%x, " | 1993 | ZFCP_LOG_TRACE("calling do_QDIO on adapter %s (flags=0x%x, " |
diff --git a/drivers/sbus/char/aurora.c b/drivers/sbus/char/aurora.c index a305d4091547..a54b4ac67568 100644 --- a/drivers/sbus/char/aurora.c +++ b/drivers/sbus/char/aurora.c | |||
@@ -254,7 +254,7 @@ for(i=0;i<TYPE_1_IRQS;i++) | |||
254 | return 0; | 254 | return 0; |
255 | } | 255 | } |
256 | 256 | ||
257 | static irqreturn_t aurora_interrupt(int irq, void * dev_id, struct pt_regs * regs); | 257 | static irqreturn_t aurora_interrupt(int irq, void * dev_id); |
258 | 258 | ||
259 | /* Main probing routine, also sets irq. */ | 259 | /* Main probing routine, also sets irq. */ |
260 | static int aurora_probe(void) | 260 | static int aurora_probe(void) |
@@ -689,7 +689,7 @@ static void aurora_check_modem(struct Aurora_board const * bp, int chip) | |||
689 | } | 689 | } |
690 | 690 | ||
691 | /* The main interrupt processing routine */ | 691 | /* The main interrupt processing routine */ |
692 | static irqreturn_t aurora_interrupt(int irq, void * dev_id, struct pt_regs * regs) | 692 | static irqreturn_t aurora_interrupt(int irq, void * dev_id) |
693 | { | 693 | { |
694 | unsigned char status; | 694 | unsigned char status; |
695 | unsigned char ack,chip/*,chip_id*/; | 695 | unsigned char ack,chip/*,chip_id*/; |
diff --git a/drivers/sbus/char/bbc_i2c.c b/drivers/sbus/char/bbc_i2c.c index 7186235594f9..22631f8b9b48 100644 --- a/drivers/sbus/char/bbc_i2c.c +++ b/drivers/sbus/char/bbc_i2c.c | |||
@@ -331,7 +331,7 @@ EXPORT_SYMBOL(bbc_i2c_readb); | |||
331 | EXPORT_SYMBOL(bbc_i2c_write_buf); | 331 | EXPORT_SYMBOL(bbc_i2c_write_buf); |
332 | EXPORT_SYMBOL(bbc_i2c_read_buf); | 332 | EXPORT_SYMBOL(bbc_i2c_read_buf); |
333 | 333 | ||
334 | static irqreturn_t bbc_i2c_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 334 | static irqreturn_t bbc_i2c_interrupt(int irq, void *dev_id) |
335 | { | 335 | { |
336 | struct bbc_i2c_bus *bp = dev_id; | 336 | struct bbc_i2c_bus *bp = dev_id; |
337 | 337 | ||
diff --git a/drivers/sbus/char/cpwatchdog.c b/drivers/sbus/char/cpwatchdog.c index 40b6fc86f6a8..f5803ecb1999 100644 --- a/drivers/sbus/char/cpwatchdog.c +++ b/drivers/sbus/char/cpwatchdog.c | |||
@@ -185,7 +185,7 @@ MODULE_SUPPORTED_DEVICE | |||
185 | #ifdef WD_DEBUG | 185 | #ifdef WD_DEBUG |
186 | static void wd_dumpregs(void); | 186 | static void wd_dumpregs(void); |
187 | #endif | 187 | #endif |
188 | static irqreturn_t wd_interrupt(int irq, void *dev_id, struct pt_regs *regs); | 188 | static irqreturn_t wd_interrupt(int irq, void *dev_id); |
189 | static void wd_toggleintr(struct wd_timer* pTimer, int enable); | 189 | static void wd_toggleintr(struct wd_timer* pTimer, int enable); |
190 | static void wd_pingtimer(struct wd_timer* pTimer); | 190 | static void wd_pingtimer(struct wd_timer* pTimer); |
191 | static void wd_starttimer(struct wd_timer* pTimer); | 191 | static void wd_starttimer(struct wd_timer* pTimer); |
@@ -444,7 +444,7 @@ static ssize_t wd_read(struct file * file, char __user *buffer, | |||
444 | #endif /* ifdef WD_DEBUG */ | 444 | #endif /* ifdef WD_DEBUG */ |
445 | } | 445 | } |
446 | 446 | ||
447 | static irqreturn_t wd_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 447 | static irqreturn_t wd_interrupt(int irq, void *dev_id) |
448 | { | 448 | { |
449 | /* Only WD0 will interrupt-- others are NMI and we won't | 449 | /* Only WD0 will interrupt-- others are NMI and we won't |
450 | * see them here.... | 450 | * see them here.... |
diff --git a/drivers/sbus/char/openprom.c b/drivers/sbus/char/openprom.c index 2f698763ba5d..81ba2d71cee2 100644 --- a/drivers/sbus/char/openprom.c +++ b/drivers/sbus/char/openprom.c | |||
@@ -630,7 +630,7 @@ static int openprom_ioctl(struct inode * inode, struct file * file, | |||
630 | case OPROMPATH2NODE: | 630 | case OPROMPATH2NODE: |
631 | if ((file->f_mode & FMODE_READ) == 0) | 631 | if ((file->f_mode & FMODE_READ) == 0) |
632 | return -EPERM; | 632 | return -EPERM; |
633 | return openprom_sunos_ioctl(inode, file, cmd, arg, 0); | 633 | return openprom_sunos_ioctl(inode, file, cmd, arg, NULL); |
634 | 634 | ||
635 | case OPIOCGET: | 635 | case OPIOCGET: |
636 | case OPIOCNEXTPROP: | 636 | case OPIOCNEXTPROP: |
diff --git a/drivers/sbus/char/uctrl.c b/drivers/sbus/char/uctrl.c index 575b1f7ed410..b30372f17f1c 100644 --- a/drivers/sbus/char/uctrl.c +++ b/drivers/sbus/char/uctrl.c | |||
@@ -217,7 +217,7 @@ uctrl_open(struct inode *inode, struct file *file) | |||
217 | return 0; | 217 | return 0; |
218 | } | 218 | } |
219 | 219 | ||
220 | static irqreturn_t uctrl_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 220 | static irqreturn_t uctrl_interrupt(int irq, void *dev_id) |
221 | { | 221 | { |
222 | struct uctrl_driver *driver = (struct uctrl_driver *)dev_id; | 222 | struct uctrl_driver *driver = (struct uctrl_driver *)dev_id; |
223 | printk("in uctrl_interrupt\n"); | 223 | printk("in uctrl_interrupt\n"); |
@@ -400,7 +400,7 @@ static int __init ts102_uctrl_init(void) | |||
400 | } | 400 | } |
401 | 401 | ||
402 | driver->regs->uctrl_intr = UCTRL_INTR_RXNE_REQ|UCTRL_INTR_RXNE_MSK; | 402 | driver->regs->uctrl_intr = UCTRL_INTR_RXNE_REQ|UCTRL_INTR_RXNE_MSK; |
403 | printk("uctrl: 0x%x (irq %d)\n", driver->regs, driver->irq); | 403 | printk("uctrl: 0x%p (irq %d)\n", driver->regs, driver->irq); |
404 | uctrl_get_event_status(); | 404 | uctrl_get_event_status(); |
405 | uctrl_get_external_status(); | 405 | uctrl_get_external_status(); |
406 | return 0; | 406 | return 0; |
diff --git a/drivers/scsi/3w-9xxx.c b/drivers/scsi/3w-9xxx.c index da173159cedb..5f8c26cd66ca 100644 --- a/drivers/scsi/3w-9xxx.c +++ b/drivers/scsi/3w-9xxx.c | |||
@@ -1192,7 +1192,7 @@ out: | |||
1192 | } /* End twa_initialize_device_extension() */ | 1192 | } /* End twa_initialize_device_extension() */ |
1193 | 1193 | ||
1194 | /* This function is the interrupt service routine */ | 1194 | /* This function is the interrupt service routine */ |
1195 | static irqreturn_t twa_interrupt(int irq, void *dev_instance, struct pt_regs *regs) | 1195 | static irqreturn_t twa_interrupt(int irq, void *dev_instance) |
1196 | { | 1196 | { |
1197 | int request_id, error = 0; | 1197 | int request_id, error = 0; |
1198 | u32 status_reg_value; | 1198 | u32 status_reg_value; |
diff --git a/drivers/scsi/3w-xxxx.c b/drivers/scsi/3w-xxxx.c index 2d4cb6721fa6..99a259c5a0c0 100644 --- a/drivers/scsi/3w-xxxx.c +++ b/drivers/scsi/3w-xxxx.c | |||
@@ -2078,8 +2078,7 @@ static int tw_scsi_queue(struct scsi_cmnd *SCpnt, void (*done)(struct scsi_cmnd | |||
2078 | } /* End tw_scsi_queue() */ | 2078 | } /* End tw_scsi_queue() */ |
2079 | 2079 | ||
2080 | /* This function is the interrupt service routine */ | 2080 | /* This function is the interrupt service routine */ |
2081 | static irqreturn_t tw_interrupt(int irq, void *dev_instance, | 2081 | static irqreturn_t tw_interrupt(int irq, void *dev_instance) |
2082 | struct pt_regs *regs) | ||
2083 | { | 2082 | { |
2084 | int request_id; | 2083 | int request_id; |
2085 | u32 status_reg_value; | 2084 | u32 status_reg_value; |
diff --git a/drivers/scsi/53c700.c b/drivers/scsi/53c700.c index 15ce40a7053a..562432d017b0 100644 --- a/drivers/scsi/53c700.c +++ b/drivers/scsi/53c700.c | |||
@@ -1462,7 +1462,7 @@ NCR_700_start_command(struct scsi_cmnd *SCp) | |||
1462 | } | 1462 | } |
1463 | 1463 | ||
1464 | irqreturn_t | 1464 | irqreturn_t |
1465 | NCR_700_intr(int irq, void *dev_id, struct pt_regs *regs) | 1465 | NCR_700_intr(int irq, void *dev_id) |
1466 | { | 1466 | { |
1467 | struct Scsi_Host *host = (struct Scsi_Host *)dev_id; | 1467 | struct Scsi_Host *host = (struct Scsi_Host *)dev_id; |
1468 | struct NCR_700_Host_Parameters *hostdata = | 1468 | struct NCR_700_Host_Parameters *hostdata = |
diff --git a/drivers/scsi/53c700.h b/drivers/scsi/53c700.h index 97ebe71b701b..f5c3caf344a7 100644 --- a/drivers/scsi/53c700.h +++ b/drivers/scsi/53c700.h | |||
@@ -57,7 +57,7 @@ struct NCR_700_Host_Parameters; | |||
57 | struct Scsi_Host *NCR_700_detect(struct scsi_host_template *, | 57 | struct Scsi_Host *NCR_700_detect(struct scsi_host_template *, |
58 | struct NCR_700_Host_Parameters *, struct device *); | 58 | struct NCR_700_Host_Parameters *, struct device *); |
59 | int NCR_700_release(struct Scsi_Host *host); | 59 | int NCR_700_release(struct Scsi_Host *host); |
60 | irqreturn_t NCR_700_intr(int, void *, struct pt_regs *); | 60 | irqreturn_t NCR_700_intr(int, void *); |
61 | 61 | ||
62 | 62 | ||
63 | enum NCR_700_Host_State { | 63 | enum NCR_700_Host_State { |
diff --git a/drivers/scsi/53c7xx.c b/drivers/scsi/53c7xx.c index acf292736b4e..640536ef77dc 100644 --- a/drivers/scsi/53c7xx.c +++ b/drivers/scsi/53c7xx.c | |||
@@ -323,7 +323,7 @@ static int shutdown (struct Scsi_Host *host); | |||
323 | static void abnormal_finished (struct NCR53c7x0_cmd *cmd, int result); | 323 | static void abnormal_finished (struct NCR53c7x0_cmd *cmd, int result); |
324 | static int disable (struct Scsi_Host *host); | 324 | static int disable (struct Scsi_Host *host); |
325 | static int NCR53c7xx_run_tests (struct Scsi_Host *host); | 325 | static int NCR53c7xx_run_tests (struct Scsi_Host *host); |
326 | static irqreturn_t NCR53c7x0_intr(int irq, void *dev_id, struct pt_regs * regs); | 326 | static irqreturn_t NCR53c7x0_intr(int irq, void *dev_id); |
327 | static void NCR53c7x0_intfly (struct Scsi_Host *host); | 327 | static void NCR53c7x0_intfly (struct Scsi_Host *host); |
328 | static int ncr_halt (struct Scsi_Host *host); | 328 | static int ncr_halt (struct Scsi_Host *host); |
329 | static void intr_phase_mismatch (struct Scsi_Host *host, struct NCR53c7x0_cmd | 329 | static void intr_phase_mismatch (struct Scsi_Host *host, struct NCR53c7x0_cmd |
@@ -4227,7 +4227,7 @@ restart: | |||
4227 | } | 4227 | } |
4228 | 4228 | ||
4229 | /* | 4229 | /* |
4230 | * Function : static irqreturn_t NCR53c7x0_intr (int irq, void *dev_id, struct pt_regs * regs) | 4230 | * Function : static irqreturn_t NCR53c7x0_intr (int irq, void *dev_id) |
4231 | * | 4231 | * |
4232 | * Purpose : handle NCR53c7x0 interrupts for all NCR devices sharing | 4232 | * Purpose : handle NCR53c7x0 interrupts for all NCR devices sharing |
4233 | * the same IRQ line. | 4233 | * the same IRQ line. |
@@ -4241,7 +4241,7 @@ restart: | |||
4241 | */ | 4241 | */ |
4242 | 4242 | ||
4243 | static irqreturn_t | 4243 | static irqreturn_t |
4244 | NCR53c7x0_intr (int irq, void *dev_id, struct pt_regs * regs) | 4244 | NCR53c7x0_intr (int irq, void *dev_id) |
4245 | { | 4245 | { |
4246 | NCR53c7x0_local_declare(); | 4246 | NCR53c7x0_local_declare(); |
4247 | struct Scsi_Host *host; /* Host we are looking at */ | 4247 | struct Scsi_Host *host; /* Host we are looking at */ |
diff --git a/drivers/scsi/BusLogic.c b/drivers/scsi/BusLogic.c index 4ea49fd7965e..7c59bba98798 100644 --- a/drivers/scsi/BusLogic.c +++ b/drivers/scsi/BusLogic.c | |||
@@ -2653,7 +2653,7 @@ static void BusLogic_ProcessCompletedCCBs(struct BusLogic_HostAdapter *HostAdapt | |||
2653 | Adapters. | 2653 | Adapters. |
2654 | */ | 2654 | */ |
2655 | 2655 | ||
2656 | static irqreturn_t BusLogic_InterruptHandler(int IRQ_Channel, void *DeviceIdentifier, struct pt_regs *InterruptRegisters) | 2656 | static irqreturn_t BusLogic_InterruptHandler(int IRQ_Channel, void *DeviceIdentifier) |
2657 | { | 2657 | { |
2658 | struct BusLogic_HostAdapter *HostAdapter = (struct BusLogic_HostAdapter *) DeviceIdentifier; | 2658 | struct BusLogic_HostAdapter *HostAdapter = (struct BusLogic_HostAdapter *) DeviceIdentifier; |
2659 | unsigned long ProcessorFlags; | 2659 | unsigned long ProcessorFlags; |
diff --git a/drivers/scsi/BusLogic.h b/drivers/scsi/BusLogic.h index d6d1d5613c8a..cca6d45eee4d 100644 --- a/drivers/scsi/BusLogic.h +++ b/drivers/scsi/BusLogic.h | |||
@@ -1347,7 +1347,7 @@ static int BusLogic_BIOSDiskParameters(struct scsi_device *, struct block_device | |||
1347 | static int BusLogic_ProcDirectoryInfo(struct Scsi_Host *, char *, char **, off_t, int, int); | 1347 | static int BusLogic_ProcDirectoryInfo(struct Scsi_Host *, char *, char **, off_t, int, int); |
1348 | static int BusLogic_SlaveConfigure(struct scsi_device *); | 1348 | static int BusLogic_SlaveConfigure(struct scsi_device *); |
1349 | static void BusLogic_QueueCompletedCCB(struct BusLogic_CCB *); | 1349 | static void BusLogic_QueueCompletedCCB(struct BusLogic_CCB *); |
1350 | static irqreturn_t BusLogic_InterruptHandler(int, void *, struct pt_regs *); | 1350 | static irqreturn_t BusLogic_InterruptHandler(int, void *); |
1351 | static int BusLogic_ResetHostAdapter(struct BusLogic_HostAdapter *, boolean HardReset); | 1351 | static int BusLogic_ResetHostAdapter(struct BusLogic_HostAdapter *, boolean HardReset); |
1352 | static void BusLogic_Message(enum BusLogic_MessageLevel, char *, struct BusLogic_HostAdapter *, ...); | 1352 | static void BusLogic_Message(enum BusLogic_MessageLevel, char *, struct BusLogic_HostAdapter *, ...); |
1353 | static int __init BusLogic_Setup(char *); | 1353 | static int __init BusLogic_Setup(char *); |
diff --git a/drivers/scsi/NCR5380.c b/drivers/scsi/NCR5380.c index 616810ad17d8..a6aa91072880 100644 --- a/drivers/scsi/NCR5380.c +++ b/drivers/scsi/NCR5380.c | |||
@@ -558,8 +558,7 @@ static int probe_irq __initdata = 0; | |||
558 | * used by the IRQ probe code. | 558 | * used by the IRQ probe code. |
559 | */ | 559 | */ |
560 | 560 | ||
561 | static irqreturn_t __init probe_intr(int irq, void *dev_id, | 561 | static irqreturn_t __init probe_intr(int irq, void *dev_id) |
562 | struct pt_regs *regs) | ||
563 | { | 562 | { |
564 | probe_irq = irq; | 563 | probe_irq = irq; |
565 | return IRQ_HANDLED; | 564 | return IRQ_HANDLED; |
@@ -1148,7 +1147,6 @@ static void NCR5380_main(void *p) | |||
1148 | * NCR5380_intr - generic NCR5380 irq handler | 1147 | * NCR5380_intr - generic NCR5380 irq handler |
1149 | * @irq: interrupt number | 1148 | * @irq: interrupt number |
1150 | * @dev_id: device info | 1149 | * @dev_id: device info |
1151 | * @regs: registers (unused) | ||
1152 | * | 1150 | * |
1153 | * Handle interrupts, reestablishing I_T_L or I_T_L_Q nexuses | 1151 | * Handle interrupts, reestablishing I_T_L or I_T_L_Q nexuses |
1154 | * from the disconnected queue, and restarting NCR5380_main() | 1152 | * from the disconnected queue, and restarting NCR5380_main() |
@@ -1157,7 +1155,7 @@ static void NCR5380_main(void *p) | |||
1157 | * Locks: takes the needed instance locks | 1155 | * Locks: takes the needed instance locks |
1158 | */ | 1156 | */ |
1159 | 1157 | ||
1160 | static irqreturn_t NCR5380_intr(int irq, void *dev_id, struct pt_regs *regs) | 1158 | static irqreturn_t NCR5380_intr(int irq, void *dev_id) |
1161 | { | 1159 | { |
1162 | NCR5380_local_declare(); | 1160 | NCR5380_local_declare(); |
1163 | struct Scsi_Host *instance = (struct Scsi_Host *)dev_id; | 1161 | struct Scsi_Host *instance = (struct Scsi_Host *)dev_id; |
diff --git a/drivers/scsi/NCR5380.h b/drivers/scsi/NCR5380.h index c3462e358d1c..1bc73de496b0 100644 --- a/drivers/scsi/NCR5380.h +++ b/drivers/scsi/NCR5380.h | |||
@@ -296,7 +296,7 @@ static int NCR5380_init(struct Scsi_Host *instance, int flags); | |||
296 | static void NCR5380_exit(struct Scsi_Host *instance); | 296 | static void NCR5380_exit(struct Scsi_Host *instance); |
297 | static void NCR5380_information_transfer(struct Scsi_Host *instance); | 297 | static void NCR5380_information_transfer(struct Scsi_Host *instance); |
298 | #ifndef DONT_USE_INTR | 298 | #ifndef DONT_USE_INTR |
299 | static irqreturn_t NCR5380_intr(int irq, void *dev_id, struct pt_regs *regs); | 299 | static irqreturn_t NCR5380_intr(int irq, void *dev_id); |
300 | #endif | 300 | #endif |
301 | static void NCR5380_main(void *ptr); | 301 | static void NCR5380_main(void *ptr); |
302 | static void NCR5380_print_options(struct Scsi_Host *instance); | 302 | static void NCR5380_print_options(struct Scsi_Host *instance); |
diff --git a/drivers/scsi/NCR53C9x.c b/drivers/scsi/NCR53C9x.c index bdc6bb262bce..3c912ee29da0 100644 --- a/drivers/scsi/NCR53C9x.c +++ b/drivers/scsi/NCR53C9x.c | |||
@@ -96,7 +96,7 @@ enum { | |||
96 | static struct NCR_ESP *espchain; | 96 | static struct NCR_ESP *espchain; |
97 | int nesps = 0, esps_in_use = 0, esps_running = 0; | 97 | int nesps = 0, esps_in_use = 0, esps_running = 0; |
98 | 98 | ||
99 | irqreturn_t esp_intr(int irq, void *dev_id, struct pt_regs *pregs); | 99 | irqreturn_t esp_intr(int irq, void *dev_id); |
100 | 100 | ||
101 | /* Debugging routines */ | 101 | /* Debugging routines */ |
102 | static struct esp_cmdstrings { | 102 | static struct esp_cmdstrings { |
@@ -3533,7 +3533,7 @@ state_machine: | |||
3533 | } | 3533 | } |
3534 | 3534 | ||
3535 | #ifndef CONFIG_SMP | 3535 | #ifndef CONFIG_SMP |
3536 | irqreturn_t esp_intr(int irq, void *dev_id, struct pt_regs *pregs) | 3536 | irqreturn_t esp_intr(int irq, void *dev_id) |
3537 | { | 3537 | { |
3538 | struct NCR_ESP *esp; | 3538 | struct NCR_ESP *esp; |
3539 | unsigned long flags; | 3539 | unsigned long flags; |
@@ -3570,7 +3570,7 @@ repeat: | |||
3570 | } | 3570 | } |
3571 | #else | 3571 | #else |
3572 | /* For SMP we only service one ESP on the list list at our IRQ level! */ | 3572 | /* For SMP we only service one ESP on the list list at our IRQ level! */ |
3573 | irqreturn_t esp_intr(int irq, void *dev_id, struct pt_regs *pregs) | 3573 | irqreturn_t esp_intr(int irq, void *dev_id) |
3574 | { | 3574 | { |
3575 | struct NCR_ESP *esp; | 3575 | struct NCR_ESP *esp; |
3576 | unsigned long flags; | 3576 | unsigned long flags; |
diff --git a/drivers/scsi/NCR53C9x.h b/drivers/scsi/NCR53C9x.h index 481653c977cf..521e3f842cfd 100644 --- a/drivers/scsi/NCR53C9x.h +++ b/drivers/scsi/NCR53C9x.h | |||
@@ -656,7 +656,7 @@ extern struct NCR_ESP *esp_allocate(struct scsi_host_template *, void *); | |||
656 | extern void esp_deallocate(struct NCR_ESP *); | 656 | extern void esp_deallocate(struct NCR_ESP *); |
657 | extern void esp_release(void); | 657 | extern void esp_release(void); |
658 | extern void esp_initialize(struct NCR_ESP *); | 658 | extern void esp_initialize(struct NCR_ESP *); |
659 | extern irqreturn_t esp_intr(int, void *, struct pt_regs *); | 659 | extern irqreturn_t esp_intr(int, void *); |
660 | extern const char *esp_info(struct Scsi_Host *); | 660 | extern const char *esp_info(struct Scsi_Host *); |
661 | extern int esp_queue(Scsi_Cmnd *, void (*done)(Scsi_Cmnd *)); | 661 | extern int esp_queue(Scsi_Cmnd *, void (*done)(Scsi_Cmnd *)); |
662 | extern int esp_abort(Scsi_Cmnd *); | 662 | extern int esp_abort(Scsi_Cmnd *); |
diff --git a/drivers/scsi/NCR53c406a.c b/drivers/scsi/NCR53c406a.c index 8472c5359023..d4613815f685 100644 --- a/drivers/scsi/NCR53c406a.c +++ b/drivers/scsi/NCR53c406a.c | |||
@@ -168,8 +168,8 @@ enum Phase { | |||
168 | }; | 168 | }; |
169 | 169 | ||
170 | /* Static function prototypes */ | 170 | /* Static function prototypes */ |
171 | static void NCR53c406a_intr(int, void *, struct pt_regs *); | 171 | static void NCR53c406a_intr(void *); |
172 | static irqreturn_t do_NCR53c406a_intr(int, void *, struct pt_regs *); | 172 | static irqreturn_t do_NCR53c406a_intr(int, void *); |
173 | static void chip_init(void); | 173 | static void chip_init(void); |
174 | static void calc_port_addr(void); | 174 | static void calc_port_addr(void); |
175 | #ifndef IRQ_LEV | 175 | #ifndef IRQ_LEV |
@@ -685,7 +685,7 @@ static void wait_intr(void) | |||
685 | return; | 685 | return; |
686 | } | 686 | } |
687 | 687 | ||
688 | NCR53c406a_intr(0, NULL, NULL); | 688 | NCR53c406a_intr(NULL); |
689 | } | 689 | } |
690 | #endif | 690 | #endif |
691 | 691 | ||
@@ -761,19 +761,18 @@ static int NCR53c406a_biosparm(struct scsi_device *disk, | |||
761 | return 0; | 761 | return 0; |
762 | } | 762 | } |
763 | 763 | ||
764 | static irqreturn_t do_NCR53c406a_intr(int unused, void *dev_id, | 764 | static irqreturn_t do_NCR53c406a_intr(int unused, void *dev_id) |
765 | struct pt_regs *regs) | ||
766 | { | 765 | { |
767 | unsigned long flags; | 766 | unsigned long flags; |
768 | struct Scsi_Host *dev = dev_id; | 767 | struct Scsi_Host *dev = dev_id; |
769 | 768 | ||
770 | spin_lock_irqsave(dev->host_lock, flags); | 769 | spin_lock_irqsave(dev->host_lock, flags); |
771 | NCR53c406a_intr(0, dev_id, regs); | 770 | NCR53c406a_intr(dev_id); |
772 | spin_unlock_irqrestore(dev->host_lock, flags); | 771 | spin_unlock_irqrestore(dev->host_lock, flags); |
773 | return IRQ_HANDLED; | 772 | return IRQ_HANDLED; |
774 | } | 773 | } |
775 | 774 | ||
776 | static void NCR53c406a_intr(int unused, void *dev_id, struct pt_regs *regs) | 775 | static void NCR53c406a_intr(void *dev_id) |
777 | { | 776 | { |
778 | DEB(unsigned char fifo_size; | 777 | DEB(unsigned char fifo_size; |
779 | ) | 778 | ) |
diff --git a/drivers/scsi/NCR_D700.c b/drivers/scsi/NCR_D700.c index d05681f9d81a..9859cd17fc57 100644 --- a/drivers/scsi/NCR_D700.c +++ b/drivers/scsi/NCR_D700.c | |||
@@ -226,14 +226,14 @@ NCR_D700_probe_one(struct NCR_D700_private *p, int siop, int irq, | |||
226 | } | 226 | } |
227 | 227 | ||
228 | static int | 228 | static int |
229 | NCR_D700_intr(int irq, void *data, struct pt_regs *regs) | 229 | NCR_D700_intr(int irq, void *data) |
230 | { | 230 | { |
231 | struct NCR_D700_private *p = (struct NCR_D700_private *)data; | 231 | struct NCR_D700_private *p = (struct NCR_D700_private *)data; |
232 | int i, found = 0; | 232 | int i, found = 0; |
233 | 233 | ||
234 | for (i = 0; i < 2; i++) | 234 | for (i = 0; i < 2; i++) |
235 | if (p->hosts[i] && | 235 | if (p->hosts[i] && |
236 | NCR_700_intr(irq, p->hosts[i], regs) == IRQ_HANDLED) | 236 | NCR_700_intr(irq, p->hosts[i]) == IRQ_HANDLED) |
237 | found++; | 237 | found++; |
238 | 238 | ||
239 | return found ? IRQ_HANDLED : IRQ_NONE; | 239 | return found ? IRQ_HANDLED : IRQ_NONE; |
diff --git a/drivers/scsi/NCR_Q720.c b/drivers/scsi/NCR_Q720.c index c39ffbb86e39..778844c3544a 100644 --- a/drivers/scsi/NCR_Q720.c +++ b/drivers/scsi/NCR_Q720.c | |||
@@ -54,7 +54,7 @@ static struct scsi_host_template NCR_Q720_tpnt = { | |||
54 | }; | 54 | }; |
55 | 55 | ||
56 | static irqreturn_t | 56 | static irqreturn_t |
57 | NCR_Q720_intr(int irq, void *data, struct pt_regs * regs) | 57 | NCR_Q720_intr(int irq, void *data) |
58 | { | 58 | { |
59 | struct NCR_Q720_private *p = (struct NCR_Q720_private *)data; | 59 | struct NCR_Q720_private *p = (struct NCR_Q720_private *)data; |
60 | __u8 sir = (readb(p->mem_base + 0x0d) & 0xf0) >> 4; | 60 | __u8 sir = (readb(p->mem_base + 0x0d) & 0xf0) >> 4; |
@@ -68,7 +68,7 @@ NCR_Q720_intr(int irq, void *data, struct pt_regs * regs) | |||
68 | 68 | ||
69 | while((siop = ffz(sir)) < p->siops) { | 69 | while((siop = ffz(sir)) < p->siops) { |
70 | sir |= 1<<siop; | 70 | sir |= 1<<siop; |
71 | ncr53c8xx_intr(irq, p->hosts[siop], regs); | 71 | ncr53c8xx_intr(irq, p->hosts[siop]); |
72 | } | 72 | } |
73 | return IRQ_HANDLED; | 73 | return IRQ_HANDLED; |
74 | } | 74 | } |
diff --git a/drivers/scsi/a100u2w.c b/drivers/scsi/a100u2w.c index 2684150917e6..2650a5d0a161 100644 --- a/drivers/scsi/a100u2w.c +++ b/drivers/scsi/a100u2w.c | |||
@@ -1013,7 +1013,7 @@ static void inia100SCBPost(BYTE * pHcb, BYTE * pScb) | |||
1013 | /* | 1013 | /* |
1014 | * Interrupt handler (main routine of the driver) | 1014 | * Interrupt handler (main routine of the driver) |
1015 | */ | 1015 | */ |
1016 | static irqreturn_t inia100_intr(int irqno, void *devid, struct pt_regs *regs) | 1016 | static irqreturn_t inia100_intr(int irqno, void *devid) |
1017 | { | 1017 | { |
1018 | struct Scsi_Host *host = (struct Scsi_Host *)devid; | 1018 | struct Scsi_Host *host = (struct Scsi_Host *)devid; |
1019 | ORC_HCS *pHcb = (ORC_HCS *)host->hostdata; | 1019 | ORC_HCS *pHcb = (ORC_HCS *)host->hostdata; |
diff --git a/drivers/scsi/a2091.c b/drivers/scsi/a2091.c index 085406928605..f77016d31cab 100644 --- a/drivers/scsi/a2091.c +++ b/drivers/scsi/a2091.c | |||
@@ -24,7 +24,7 @@ | |||
24 | #define DMA(ptr) ((a2091_scsiregs *)((ptr)->base)) | 24 | #define DMA(ptr) ((a2091_scsiregs *)((ptr)->base)) |
25 | #define HDATA(ptr) ((struct WD33C93_hostdata *)((ptr)->hostdata)) | 25 | #define HDATA(ptr) ((struct WD33C93_hostdata *)((ptr)->hostdata)) |
26 | 26 | ||
27 | static irqreturn_t a2091_intr (int irq, void *_instance, struct pt_regs *fp) | 27 | static irqreturn_t a2091_intr (int irq, void *_instance) |
28 | { | 28 | { |
29 | unsigned long flags; | 29 | unsigned long flags; |
30 | unsigned int status; | 30 | unsigned int status; |
diff --git a/drivers/scsi/a3000.c b/drivers/scsi/a3000.c index 7bf46d40b561..1299bc8edef1 100644 --- a/drivers/scsi/a3000.c +++ b/drivers/scsi/a3000.c | |||
@@ -26,7 +26,7 @@ | |||
26 | 26 | ||
27 | static struct Scsi_Host *a3000_host = NULL; | 27 | static struct Scsi_Host *a3000_host = NULL; |
28 | 28 | ||
29 | static irqreturn_t a3000_intr (int irq, void *dummy, struct pt_regs *fp) | 29 | static irqreturn_t a3000_intr (int irq, void *dummy) |
30 | { | 30 | { |
31 | unsigned long flags; | 31 | unsigned long flags; |
32 | unsigned int status = DMA(a3000_host)->ISTR; | 32 | unsigned int status = DMA(a3000_host)->ISTR; |
diff --git a/drivers/scsi/aacraid/rx.c b/drivers/scsi/aacraid/rx.c index a1d214d770eb..dcc8b0ea7a9d 100644 --- a/drivers/scsi/aacraid/rx.c +++ b/drivers/scsi/aacraid/rx.c | |||
@@ -46,11 +46,11 @@ | |||
46 | 46 | ||
47 | #include "aacraid.h" | 47 | #include "aacraid.h" |
48 | 48 | ||
49 | static irqreturn_t aac_rx_intr(int irq, void *dev_id, struct pt_regs *regs) | 49 | static irqreturn_t aac_rx_intr(int irq, void *dev_id) |
50 | { | 50 | { |
51 | struct aac_dev *dev = dev_id; | 51 | struct aac_dev *dev = dev_id; |
52 | 52 | ||
53 | dprintk((KERN_DEBUG "aac_rx_intr(%d,%p,%p)\n", irq, dev_id, regs)); | 53 | dprintk((KERN_DEBUG "aac_rx_intr(%d,%p)\n", irq, dev_id)); |
54 | if (dev->new_comm_interface) { | 54 | if (dev->new_comm_interface) { |
55 | u32 Index = rx_readl(dev, MUnit.OutboundQueue); | 55 | u32 Index = rx_readl(dev, MUnit.OutboundQueue); |
56 | if (Index == 0xFFFFFFFFL) | 56 | if (Index == 0xFFFFFFFFL) |
diff --git a/drivers/scsi/aacraid/sa.c b/drivers/scsi/aacraid/sa.c index f906ead239dd..511b0a938fb1 100644 --- a/drivers/scsi/aacraid/sa.c +++ b/drivers/scsi/aacraid/sa.c | |||
@@ -46,7 +46,7 @@ | |||
46 | 46 | ||
47 | #include "aacraid.h" | 47 | #include "aacraid.h" |
48 | 48 | ||
49 | static irqreturn_t aac_sa_intr(int irq, void *dev_id, struct pt_regs *regs) | 49 | static irqreturn_t aac_sa_intr(int irq, void *dev_id) |
50 | { | 50 | { |
51 | struct aac_dev *dev = dev_id; | 51 | struct aac_dev *dev = dev_id; |
52 | unsigned short intstat, mask; | 52 | unsigned short intstat, mask; |
diff --git a/drivers/scsi/advansys.c b/drivers/scsi/advansys.c index 773f02e3b10b..2b344356a29e 100644 --- a/drivers/scsi/advansys.c +++ b/drivers/scsi/advansys.c | |||
@@ -3881,7 +3881,7 @@ typedef struct asc_board { | |||
3881 | /* | 3881 | /* |
3882 | * The following fields are used only for Wide Boards. | 3882 | * The following fields are used only for Wide Boards. |
3883 | */ | 3883 | */ |
3884 | void *ioremap_addr; /* I/O Memory remap address. */ | 3884 | void __iomem *ioremap_addr; /* I/O Memory remap address. */ |
3885 | ushort ioport; /* I/O Port address. */ | 3885 | ushort ioport; /* I/O Port address. */ |
3886 | ADV_CARR_T *orig_carrp; /* ADV_CARR_T memory block. */ | 3886 | ADV_CARR_T *orig_carrp; /* ADV_CARR_T memory block. */ |
3887 | adv_req_t *orig_reqp; /* adv_req_t memory block. */ | 3887 | adv_req_t *orig_reqp; /* adv_req_t memory block. */ |
@@ -3951,7 +3951,7 @@ typedef struct _PCI_CONFIG_SPACE_ | |||
3951 | 3951 | ||
3952 | /* Number of boards detected in system. */ | 3952 | /* Number of boards detected in system. */ |
3953 | STATIC int asc_board_count = 0; | 3953 | STATIC int asc_board_count = 0; |
3954 | STATIC struct Scsi_Host *asc_host[ASC_NUM_BOARD_SUPPORTED] = { 0 }; | 3954 | STATIC struct Scsi_Host *asc_host[ASC_NUM_BOARD_SUPPORTED] = { NULL }; |
3955 | 3955 | ||
3956 | /* Overrun buffer used by all narrow boards. */ | 3956 | /* Overrun buffer used by all narrow boards. */ |
3957 | STATIC uchar overrun_buf[ASC_OVERRUN_BSIZE] = { 0 }; | 3957 | STATIC uchar overrun_buf[ASC_OVERRUN_BSIZE] = { 0 }; |
@@ -3999,7 +3999,7 @@ STATIC PortAddr _asc_def_iop_base[]; | |||
3999 | * advansys.h contains function prototypes for functions global to Linux. | 3999 | * advansys.h contains function prototypes for functions global to Linux. |
4000 | */ | 4000 | */ |
4001 | 4001 | ||
4002 | STATIC irqreturn_t advansys_interrupt(int, void *, struct pt_regs *); | 4002 | STATIC irqreturn_t advansys_interrupt(int, void *); |
4003 | STATIC int advansys_slave_configure(struct scsi_device *); | 4003 | STATIC int advansys_slave_configure(struct scsi_device *); |
4004 | STATIC void asc_scsi_done_list(struct scsi_cmnd *); | 4004 | STATIC void asc_scsi_done_list(struct scsi_cmnd *); |
4005 | STATIC int asc_execute_scsi_cmnd(struct scsi_cmnd *); | 4005 | STATIC int asc_execute_scsi_cmnd(struct scsi_cmnd *); |
@@ -5997,7 +5997,7 @@ static struct scsi_host_template driver_template = { | |||
5997 | * an AdvanSys adapter. | 5997 | * an AdvanSys adapter. |
5998 | */ | 5998 | */ |
5999 | STATIC irqreturn_t | 5999 | STATIC irqreturn_t |
6000 | advansys_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 6000 | advansys_interrupt(int irq, void *dev_id) |
6001 | { | 6001 | { |
6002 | ulong flags; | 6002 | ulong flags; |
6003 | int i; | 6003 | int i; |
@@ -6621,7 +6621,7 @@ adv_build_req(asc_board_t *boardp, struct scsi_cmnd *scp, | |||
6621 | dma_map_single(dev, scp->request_buffer, | 6621 | dma_map_single(dev, scp->request_buffer, |
6622 | scp->request_bufflen, scp->sc_data_direction); | 6622 | scp->request_bufflen, scp->sc_data_direction); |
6623 | } else { | 6623 | } else { |
6624 | scsiqp->vdata_addr = 0; | 6624 | scsiqp->vdata_addr = NULL; |
6625 | scp->SCp.dma_handle = 0; | 6625 | scp->SCp.dma_handle = 0; |
6626 | } | 6626 | } |
6627 | scsiqp->data_addr = cpu_to_le32(scp->SCp.dma_handle); | 6627 | scsiqp->data_addr = cpu_to_le32(scp->SCp.dma_handle); |
diff --git a/drivers/scsi/aha152x.c b/drivers/scsi/aha152x.c index fb6a476eb873..a0d1cee0be77 100644 --- a/drivers/scsi/aha152x.c +++ b/drivers/scsi/aha152x.c | |||
@@ -673,7 +673,7 @@ static struct { | |||
673 | }; | 673 | }; |
674 | 674 | ||
675 | /* setup & interrupt */ | 675 | /* setup & interrupt */ |
676 | static irqreturn_t intr(int irq, void *dev_id, struct pt_regs *); | 676 | static irqreturn_t intr(int irq, void *dev_id); |
677 | static void reset_ports(struct Scsi_Host *shpnt); | 677 | static void reset_ports(struct Scsi_Host *shpnt); |
678 | static void aha152x_error(struct Scsi_Host *shpnt, char *msg); | 678 | static void aha152x_error(struct Scsi_Host *shpnt, char *msg); |
679 | static void done(struct Scsi_Host *shpnt, int error); | 679 | static void done(struct Scsi_Host *shpnt, int error); |
@@ -757,14 +757,9 @@ static inline Scsi_Cmnd *remove_SC(Scsi_Cmnd **SC, Scsi_Cmnd *SCp) | |||
757 | return ptr; | 757 | return ptr; |
758 | } | 758 | } |
759 | 759 | ||
760 | static irqreturn_t swintr(int irqno, void *dev_id, struct pt_regs *regs) | 760 | static irqreturn_t swintr(int irqno, void *dev_id) |
761 | { | 761 | { |
762 | struct Scsi_Host *shpnt = (struct Scsi_Host *)dev_id; | 762 | struct Scsi_Host *shpnt = dev_id; |
763 | |||
764 | if (!shpnt) { | ||
765 | printk(KERN_ERR "aha152x: catched software interrupt %d for unknown controller.\n", irqno); | ||
766 | return IRQ_NONE; | ||
767 | } | ||
768 | 763 | ||
769 | HOSTDATA(shpnt)->swint++; | 764 | HOSTDATA(shpnt)->swint++; |
770 | 765 | ||
@@ -1463,7 +1458,7 @@ static void run(void) | |||
1463 | * Interrupt handler | 1458 | * Interrupt handler |
1464 | * | 1459 | * |
1465 | */ | 1460 | */ |
1466 | static irqreturn_t intr(int irqno, void *dev_id, struct pt_regs *regs) | 1461 | static irqreturn_t intr(int irqno, void *dev_id) |
1467 | { | 1462 | { |
1468 | struct Scsi_Host *shpnt = (struct Scsi_Host *)dev_id; | 1463 | struct Scsi_Host *shpnt = (struct Scsi_Host *)dev_id; |
1469 | unsigned long flags; | 1464 | unsigned long flags; |
diff --git a/drivers/scsi/aha1542.c b/drivers/scsi/aha1542.c index 24f0f5461792..d7a61a6bdaae 100644 --- a/drivers/scsi/aha1542.c +++ b/drivers/scsi/aha1542.c | |||
@@ -174,9 +174,8 @@ static DEFINE_SPINLOCK(aha1542_lock); | |||
174 | 174 | ||
175 | static void setup_mailboxes(int base_io, struct Scsi_Host *shpnt); | 175 | static void setup_mailboxes(int base_io, struct Scsi_Host *shpnt); |
176 | static int aha1542_restart(struct Scsi_Host *shost); | 176 | static int aha1542_restart(struct Scsi_Host *shost); |
177 | static void aha1542_intr_handle(struct Scsi_Host *shost, void *dev_id, struct pt_regs *regs); | 177 | static void aha1542_intr_handle(struct Scsi_Host *shost, void *dev_id); |
178 | static irqreturn_t do_aha1542_intr_handle(int irq, void *dev_id, | 178 | static irqreturn_t do_aha1542_intr_handle(int irq, void *dev_id); |
179 | struct pt_regs *regs); | ||
180 | 179 | ||
181 | #define aha1542_intr_reset(base) outb(IRST, CONTROL(base)) | 180 | #define aha1542_intr_reset(base) outb(IRST, CONTROL(base)) |
182 | 181 | ||
@@ -416,8 +415,7 @@ fail: | |||
416 | } | 415 | } |
417 | 416 | ||
418 | /* A quick wrapper for do_aha1542_intr_handle to grab the spin lock */ | 417 | /* A quick wrapper for do_aha1542_intr_handle to grab the spin lock */ |
419 | static irqreturn_t do_aha1542_intr_handle(int irq, void *dev_id, | 418 | static irqreturn_t do_aha1542_intr_handle(int irq, void *dev_id) |
420 | struct pt_regs *regs) | ||
421 | { | 419 | { |
422 | unsigned long flags; | 420 | unsigned long flags; |
423 | struct Scsi_Host *shost; | 421 | struct Scsi_Host *shost; |
@@ -427,13 +425,13 @@ static irqreturn_t do_aha1542_intr_handle(int irq, void *dev_id, | |||
427 | panic("Splunge!"); | 425 | panic("Splunge!"); |
428 | 426 | ||
429 | spin_lock_irqsave(shost->host_lock, flags); | 427 | spin_lock_irqsave(shost->host_lock, flags); |
430 | aha1542_intr_handle(shost, dev_id, regs); | 428 | aha1542_intr_handle(shost, dev_id); |
431 | spin_unlock_irqrestore(shost->host_lock, flags); | 429 | spin_unlock_irqrestore(shost->host_lock, flags); |
432 | return IRQ_HANDLED; | 430 | return IRQ_HANDLED; |
433 | } | 431 | } |
434 | 432 | ||
435 | /* A "high" level interrupt handler */ | 433 | /* A "high" level interrupt handler */ |
436 | static void aha1542_intr_handle(struct Scsi_Host *shost, void *dev_id, struct pt_regs *regs) | 434 | static void aha1542_intr_handle(struct Scsi_Host *shost, void *dev_id) |
437 | { | 435 | { |
438 | void (*my_done) (Scsi_Cmnd *) = NULL; | 436 | void (*my_done) (Scsi_Cmnd *) = NULL; |
439 | int errstatus, mbi, mbo, mbistatus; | 437 | int errstatus, mbi, mbo, mbistatus; |
diff --git a/drivers/scsi/aha1740.c b/drivers/scsi/aha1740.c index 6b35ed8301e0..c3c38a7e8d32 100644 --- a/drivers/scsi/aha1740.c +++ b/drivers/scsi/aha1740.c | |||
@@ -223,8 +223,7 @@ static int aha1740_test_port(unsigned int base) | |||
223 | } | 223 | } |
224 | 224 | ||
225 | /* A "high" level interrupt handler */ | 225 | /* A "high" level interrupt handler */ |
226 | static irqreturn_t aha1740_intr_handle(int irq, void *dev_id, | 226 | static irqreturn_t aha1740_intr_handle(int irq, void *dev_id) |
227 | struct pt_regs *regs) | ||
228 | { | 227 | { |
229 | struct Scsi_Host *host = (struct Scsi_Host *) dev_id; | 228 | struct Scsi_Host *host = (struct Scsi_Host *) dev_id; |
230 | void (*my_done)(Scsi_Cmnd *); | 229 | void (*my_done)(Scsi_Cmnd *); |
diff --git a/drivers/scsi/aic7xxx/aic79xx_osm.c b/drivers/scsi/aic7xxx/aic79xx_osm.c index 1faa008b5b81..f8e60486167d 100644 --- a/drivers/scsi/aic7xxx/aic79xx_osm.c +++ b/drivers/scsi/aic7xxx/aic79xx_osm.c | |||
@@ -1557,7 +1557,7 @@ ahd_linux_run_command(struct ahd_softc *ahd, struct ahd_linux_device *dev, | |||
1557 | * SCSI controller interrupt handler. | 1557 | * SCSI controller interrupt handler. |
1558 | */ | 1558 | */ |
1559 | irqreturn_t | 1559 | irqreturn_t |
1560 | ahd_linux_isr(int irq, void *dev_id, struct pt_regs * regs) | 1560 | ahd_linux_isr(int irq, void *dev_id) |
1561 | { | 1561 | { |
1562 | struct ahd_softc *ahd; | 1562 | struct ahd_softc *ahd; |
1563 | u_long flags; | 1563 | u_long flags; |
diff --git a/drivers/scsi/aic7xxx/aic79xx_osm.h b/drivers/scsi/aic7xxx/aic79xx_osm.h index 601340d84410..fb3d4dd54413 100644 --- a/drivers/scsi/aic7xxx/aic79xx_osm.h +++ b/drivers/scsi/aic7xxx/aic79xx_osm.h | |||
@@ -862,7 +862,7 @@ int ahd_platform_abort_scbs(struct ahd_softc *ahd, int target, | |||
862 | char channel, int lun, u_int tag, | 862 | char channel, int lun, u_int tag, |
863 | role_t role, uint32_t status); | 863 | role_t role, uint32_t status); |
864 | irqreturn_t | 864 | irqreturn_t |
865 | ahd_linux_isr(int irq, void *dev_id, struct pt_regs * regs); | 865 | ahd_linux_isr(int irq, void *dev_id); |
866 | void ahd_done(struct ahd_softc*, struct scb*); | 866 | void ahd_done(struct ahd_softc*, struct scb*); |
867 | void ahd_send_async(struct ahd_softc *, char channel, | 867 | void ahd_send_async(struct ahd_softc *, char channel, |
868 | u_int target, u_int lun, ac_code); | 868 | u_int target, u_int lun, ac_code); |
diff --git a/drivers/scsi/aic7xxx/aic7xxx_osm.c b/drivers/scsi/aic7xxx/aic7xxx_osm.c index 339b85cb61cd..43ab753d2739 100644 --- a/drivers/scsi/aic7xxx/aic7xxx_osm.c +++ b/drivers/scsi/aic7xxx/aic7xxx_osm.c | |||
@@ -1608,7 +1608,7 @@ ahc_linux_run_command(struct ahc_softc *ahc, struct ahc_linux_device *dev, | |||
1608 | * SCSI controller interrupt handler. | 1608 | * SCSI controller interrupt handler. |
1609 | */ | 1609 | */ |
1610 | irqreturn_t | 1610 | irqreturn_t |
1611 | ahc_linux_isr(int irq, void *dev_id, struct pt_regs * regs) | 1611 | ahc_linux_isr(int irq, void *dev_id) |
1612 | { | 1612 | { |
1613 | struct ahc_softc *ahc; | 1613 | struct ahc_softc *ahc; |
1614 | u_long flags; | 1614 | u_long flags; |
diff --git a/drivers/scsi/aic7xxx/aic7xxx_osm.h b/drivers/scsi/aic7xxx/aic7xxx_osm.h index d42a71ee076d..a87a4ce090df 100644 --- a/drivers/scsi/aic7xxx/aic7xxx_osm.h +++ b/drivers/scsi/aic7xxx/aic7xxx_osm.h | |||
@@ -830,7 +830,7 @@ int ahc_platform_abort_scbs(struct ahc_softc *ahc, int target, | |||
830 | char channel, int lun, u_int tag, | 830 | char channel, int lun, u_int tag, |
831 | role_t role, uint32_t status); | 831 | role_t role, uint32_t status); |
832 | irqreturn_t | 832 | irqreturn_t |
833 | ahc_linux_isr(int irq, void *dev_id, struct pt_regs * regs); | 833 | ahc_linux_isr(int irq, void *dev_id); |
834 | void ahc_platform_flushwork(struct ahc_softc *ahc); | 834 | void ahc_platform_flushwork(struct ahc_softc *ahc); |
835 | void ahc_done(struct ahc_softc*, struct scb*); | 835 | void ahc_done(struct ahc_softc*, struct scb*); |
836 | void ahc_send_async(struct ahc_softc *, char channel, | 836 | void ahc_send_async(struct ahc_softc *, char channel, |
diff --git a/drivers/scsi/aic7xxx_old.c b/drivers/scsi/aic7xxx_old.c index 3eae8062a02e..bcd7fffab907 100644 --- a/drivers/scsi/aic7xxx_old.c +++ b/drivers/scsi/aic7xxx_old.c | |||
@@ -6345,12 +6345,12 @@ aic7xxx_handle_command_completion_intr(struct aic7xxx_host *p) | |||
6345 | * SCSI controller interrupt handler. | 6345 | * SCSI controller interrupt handler. |
6346 | *-F*************************************************************************/ | 6346 | *-F*************************************************************************/ |
6347 | static void | 6347 | static void |
6348 | aic7xxx_isr(int irq, void *dev_id, struct pt_regs *regs) | 6348 | aic7xxx_isr(void *dev_id) |
6349 | { | 6349 | { |
6350 | struct aic7xxx_host *p; | 6350 | struct aic7xxx_host *p; |
6351 | unsigned char intstat; | 6351 | unsigned char intstat; |
6352 | 6352 | ||
6353 | p = (struct aic7xxx_host *)dev_id; | 6353 | p = dev_id; |
6354 | 6354 | ||
6355 | /* | 6355 | /* |
6356 | * Just a few sanity checks. Make sure that we have an int pending. | 6356 | * Just a few sanity checks. Make sure that we have an int pending. |
@@ -6477,7 +6477,7 @@ aic7xxx_isr(int irq, void *dev_id, struct pt_regs *regs) | |||
6477 | * anything like it, please inform the Gross Hack Police immediately | 6477 | * anything like it, please inform the Gross Hack Police immediately |
6478 | *-F*************************************************************************/ | 6478 | *-F*************************************************************************/ |
6479 | static irqreturn_t | 6479 | static irqreturn_t |
6480 | do_aic7xxx_isr(int irq, void *dev_id, struct pt_regs *regs) | 6480 | do_aic7xxx_isr(int irq, void *dev_id) |
6481 | { | 6481 | { |
6482 | unsigned long cpu_flags; | 6482 | unsigned long cpu_flags; |
6483 | struct aic7xxx_host *p; | 6483 | struct aic7xxx_host *p; |
@@ -6489,7 +6489,7 @@ do_aic7xxx_isr(int irq, void *dev_id, struct pt_regs *regs) | |||
6489 | p->flags |= AHC_IN_ISR; | 6489 | p->flags |= AHC_IN_ISR; |
6490 | do | 6490 | do |
6491 | { | 6491 | { |
6492 | aic7xxx_isr(irq, dev_id, regs); | 6492 | aic7xxx_isr(dev_id); |
6493 | } while ( (aic_inb(p, INTSTAT) & INT_PEND) ); | 6493 | } while ( (aic_inb(p, INTSTAT) & INT_PEND) ); |
6494 | aic7xxx_done_cmds_complete(p); | 6494 | aic7xxx_done_cmds_complete(p); |
6495 | aic7xxx_run_waiting_queues(p); | 6495 | aic7xxx_run_waiting_queues(p); |
@@ -10377,7 +10377,7 @@ static int __aic7xxx_bus_device_reset(struct scsi_cmnd *cmd) | |||
10377 | 10377 | ||
10378 | hscb = scb->hscb; | 10378 | hscb = scb->hscb; |
10379 | 10379 | ||
10380 | aic7xxx_isr(p->irq, (void *)p, NULL); | 10380 | aic7xxx_isr(p); |
10381 | aic7xxx_done_cmds_complete(p); | 10381 | aic7xxx_done_cmds_complete(p); |
10382 | /* If the command was already complete or just completed, then we didn't | 10382 | /* If the command was already complete or just completed, then we didn't |
10383 | * do a reset, return FAILED */ | 10383 | * do a reset, return FAILED */ |
@@ -10608,7 +10608,7 @@ static int __aic7xxx_abort(struct scsi_cmnd *cmd) | |||
10608 | else | 10608 | else |
10609 | return FAILED; | 10609 | return FAILED; |
10610 | 10610 | ||
10611 | aic7xxx_isr(p->irq, (void *)p, NULL); | 10611 | aic7xxx_isr(p); |
10612 | aic7xxx_done_cmds_complete(p); | 10612 | aic7xxx_done_cmds_complete(p); |
10613 | /* If the command was already complete or just completed, then we didn't | 10613 | /* If the command was already complete or just completed, then we didn't |
10614 | * do a reset, return FAILED */ | 10614 | * do a reset, return FAILED */ |
@@ -10863,7 +10863,7 @@ static int aic7xxx_reset(struct scsi_cmnd *cmd) | |||
10863 | 10863 | ||
10864 | while((aic_inb(p, INTSTAT) & INT_PEND) && !(p->flags & AHC_IN_ISR)) | 10864 | while((aic_inb(p, INTSTAT) & INT_PEND) && !(p->flags & AHC_IN_ISR)) |
10865 | { | 10865 | { |
10866 | aic7xxx_isr(p->irq, p, (void *)NULL ); | 10866 | aic7xxx_isr(p); |
10867 | pause_sequencer(p); | 10867 | pause_sequencer(p); |
10868 | } | 10868 | } |
10869 | aic7xxx_done_cmds_complete(p); | 10869 | aic7xxx_done_cmds_complete(p); |
diff --git a/drivers/scsi/aic94xx/aic94xx_hwi.c b/drivers/scsi/aic94xx/aic94xx_hwi.c index 1d8c5e5f442e..3c2d7a379931 100644 --- a/drivers/scsi/aic94xx/aic94xx_hwi.c +++ b/drivers/scsi/aic94xx/aic94xx_hwi.c | |||
@@ -996,11 +996,10 @@ static inline void asd_hst_pcix_isr(struct asd_ha_struct *asd_ha) | |||
996 | * asd_hw_isr -- host adapter interrupt service routine | 996 | * asd_hw_isr -- host adapter interrupt service routine |
997 | * @irq: ignored | 997 | * @irq: ignored |
998 | * @dev_id: pointer to host adapter structure | 998 | * @dev_id: pointer to host adapter structure |
999 | * @regs: ignored | ||
1000 | * | 999 | * |
1001 | * The ISR processes done list entries and level 3 error handling. | 1000 | * The ISR processes done list entries and level 3 error handling. |
1002 | */ | 1001 | */ |
1003 | irqreturn_t asd_hw_isr(int irq, void *dev_id, struct pt_regs *regs) | 1002 | irqreturn_t asd_hw_isr(int irq, void *dev_id) |
1004 | { | 1003 | { |
1005 | struct asd_ha_struct *asd_ha = dev_id; | 1004 | struct asd_ha_struct *asd_ha = dev_id; |
1006 | u32 chimint = asd_read_reg_dword(asd_ha, CHIMINT); | 1005 | u32 chimint = asd_read_reg_dword(asd_ha, CHIMINT); |
diff --git a/drivers/scsi/aic94xx/aic94xx_hwi.h b/drivers/scsi/aic94xx/aic94xx_hwi.h index 8498144aa5e1..14319d1d6804 100644 --- a/drivers/scsi/aic94xx/aic94xx_hwi.h +++ b/drivers/scsi/aic94xx/aic94xx_hwi.h | |||
@@ -371,7 +371,7 @@ static inline void asd_ascb_free_list(struct asd_ascb *ascb_list) | |||
371 | /* ---------- Function declarations ---------- */ | 371 | /* ---------- Function declarations ---------- */ |
372 | 372 | ||
373 | int asd_init_hw(struct asd_ha_struct *asd_ha); | 373 | int asd_init_hw(struct asd_ha_struct *asd_ha); |
374 | irqreturn_t asd_hw_isr(int irq, void *dev_id, struct pt_regs *regs); | 374 | irqreturn_t asd_hw_isr(int irq, void *dev_id); |
375 | 375 | ||
376 | 376 | ||
377 | struct asd_ascb *asd_ascb_alloc_list(struct asd_ha_struct | 377 | struct asd_ascb *asd_ascb_alloc_list(struct asd_ha_struct |
diff --git a/drivers/scsi/amiga7xx.h b/drivers/scsi/amiga7xx.h index 1b637592d5ae..7cd63a996886 100644 --- a/drivers/scsi/amiga7xx.h +++ b/drivers/scsi/amiga7xx.h | |||
@@ -8,7 +8,7 @@ int NCR53c7xx_queue_command(Scsi_Cmnd *, void (*done)(Scsi_Cmnd *)); | |||
8 | int NCR53c7xx_abort(Scsi_Cmnd *); | 8 | int NCR53c7xx_abort(Scsi_Cmnd *); |
9 | int NCR53c7x0_release (struct Scsi_Host *); | 9 | int NCR53c7x0_release (struct Scsi_Host *); |
10 | int NCR53c7xx_reset(Scsi_Cmnd *, unsigned int); | 10 | int NCR53c7xx_reset(Scsi_Cmnd *, unsigned int); |
11 | void NCR53c7x0_intr(int irq, void *dev_id, struct pt_regs * regs); | 11 | void NCR53c7x0_intr(int irq, void *dev_id); |
12 | 12 | ||
13 | #ifndef CMD_PER_LUN | 13 | #ifndef CMD_PER_LUN |
14 | #define CMD_PER_LUN 3 | 14 | #define CMD_PER_LUN 3 |
diff --git a/drivers/scsi/arcmsr/arcmsr_hba.c b/drivers/scsi/arcmsr/arcmsr_hba.c index 475f978ff8f0..086cc97eee8c 100644 --- a/drivers/scsi/arcmsr/arcmsr_hba.c +++ b/drivers/scsi/arcmsr/arcmsr_hba.c | |||
@@ -147,8 +147,7 @@ static struct pci_driver arcmsr_pci_driver = { | |||
147 | .shutdown = arcmsr_shutdown | 147 | .shutdown = arcmsr_shutdown |
148 | }; | 148 | }; |
149 | 149 | ||
150 | static irqreturn_t arcmsr_do_interrupt(int irq, void *dev_id, | 150 | static irqreturn_t arcmsr_do_interrupt(int irq, void *dev_id) |
151 | struct pt_regs *regs) | ||
152 | { | 151 | { |
153 | irqreturn_t handle_state; | 152 | irqreturn_t handle_state; |
154 | struct AdapterControlBlock *acb; | 153 | struct AdapterControlBlock *acb; |
diff --git a/drivers/scsi/arm/acornscsi.c b/drivers/scsi/arm/acornscsi.c index 0525d672e1e6..9cf902b7a126 100644 --- a/drivers/scsi/arm/acornscsi.c +++ b/drivers/scsi/arm/acornscsi.c | |||
@@ -2461,14 +2461,13 @@ intr_ret_t acornscsi_sbicintr(AS_Host *host, int in_irq) | |||
2461 | } | 2461 | } |
2462 | 2462 | ||
2463 | /* | 2463 | /* |
2464 | * Prototype: void acornscsi_intr(int irq, void *dev_id, struct pt_regs *regs) | 2464 | * Prototype: void acornscsi_intr(int irq, void *dev_id) |
2465 | * Purpose : handle interrupts from Acorn SCSI card | 2465 | * Purpose : handle interrupts from Acorn SCSI card |
2466 | * Params : irq - interrupt number | 2466 | * Params : irq - interrupt number |
2467 | * dev_id - device specific data (AS_Host structure) | 2467 | * dev_id - device specific data (AS_Host structure) |
2468 | * regs - processor registers when interrupt occurred | ||
2469 | */ | 2468 | */ |
2470 | static irqreturn_t | 2469 | static irqreturn_t |
2471 | acornscsi_intr(int irq, void *dev_id, struct pt_regs *regs) | 2470 | acornscsi_intr(int irq, void *dev_id) |
2472 | { | 2471 | { |
2473 | AS_Host *host = (AS_Host *)dev_id; | 2472 | AS_Host *host = (AS_Host *)dev_id; |
2474 | intr_ret_t ret; | 2473 | intr_ret_t ret; |
diff --git a/drivers/scsi/arm/cumana_2.c b/drivers/scsi/arm/cumana_2.c index 719af0dcc0e5..19edd9c853d9 100644 --- a/drivers/scsi/arm/cumana_2.c +++ b/drivers/scsi/arm/cumana_2.c | |||
@@ -137,10 +137,9 @@ cumanascsi_2_terminator_ctl(struct Scsi_Host *host, int on_off) | |||
137 | * Purpose : handle interrupts from Cumana SCSI 2 card | 137 | * Purpose : handle interrupts from Cumana SCSI 2 card |
138 | * Params : irq - interrupt number | 138 | * Params : irq - interrupt number |
139 | * dev_id - user-defined (Scsi_Host structure) | 139 | * dev_id - user-defined (Scsi_Host structure) |
140 | * regs - processor registers at interrupt | ||
141 | */ | 140 | */ |
142 | static irqreturn_t | 141 | static irqreturn_t |
143 | cumanascsi_2_intr(int irq, void *dev_id, struct pt_regs *regs) | 142 | cumanascsi_2_intr(int irq, void *dev_id) |
144 | { | 143 | { |
145 | struct cumanascsi2_info *info = dev_id; | 144 | struct cumanascsi2_info *info = dev_id; |
146 | 145 | ||
diff --git a/drivers/scsi/arm/eesox.c b/drivers/scsi/arm/eesox.c index dcbb4b2b3fe0..3f876fb75469 100644 --- a/drivers/scsi/arm/eesox.c +++ b/drivers/scsi/arm/eesox.c | |||
@@ -138,10 +138,9 @@ eesoxscsi_terminator_ctl(struct Scsi_Host *host, int on_off) | |||
138 | * Purpose : handle interrupts from EESOX SCSI card | 138 | * Purpose : handle interrupts from EESOX SCSI card |
139 | * Params : irq - interrupt number | 139 | * Params : irq - interrupt number |
140 | * dev_id - user-defined (Scsi_Host structure) | 140 | * dev_id - user-defined (Scsi_Host structure) |
141 | * regs - processor registers at interrupt | ||
142 | */ | 141 | */ |
143 | static irqreturn_t | 142 | static irqreturn_t |
144 | eesoxscsi_intr(int irq, void *dev_id, struct pt_regs *regs) | 143 | eesoxscsi_intr(int irq, void *dev_id) |
145 | { | 144 | { |
146 | struct eesoxscsi_info *info = dev_id; | 145 | struct eesoxscsi_info *info = dev_id; |
147 | 146 | ||
diff --git a/drivers/scsi/arm/powertec.c b/drivers/scsi/arm/powertec.c index b2c346a47052..ce159c15bc86 100644 --- a/drivers/scsi/arm/powertec.c +++ b/drivers/scsi/arm/powertec.c | |||
@@ -112,10 +112,8 @@ powertecscsi_terminator_ctl(struct Scsi_Host *host, int on_off) | |||
112 | * Purpose : handle interrupts from Powertec SCSI card | 112 | * Purpose : handle interrupts from Powertec SCSI card |
113 | * Params : irq - interrupt number | 113 | * Params : irq - interrupt number |
114 | * dev_id - user-defined (Scsi_Host structure) | 114 | * dev_id - user-defined (Scsi_Host structure) |
115 | * regs - processor registers at interrupt | ||
116 | */ | 115 | */ |
117 | static irqreturn_t | 116 | static irqreturn_t powertecscsi_intr(int irq, void *dev_id) |
118 | powertecscsi_intr(int irq, void *dev_id, struct pt_regs *regs) | ||
119 | { | 117 | { |
120 | struct powertec_info *info = dev_id; | 118 | struct powertec_info *info = dev_id; |
121 | 119 | ||
diff --git a/drivers/scsi/atari_NCR5380.c b/drivers/scsi/atari_NCR5380.c index e397129c90d1..0f920c84ac0f 100644 --- a/drivers/scsi/atari_NCR5380.c +++ b/drivers/scsi/atari_NCR5380.c | |||
@@ -1262,7 +1262,7 @@ static void NCR5380_dma_complete( struct Scsi_Host *instance ) | |||
1262 | * | 1262 | * |
1263 | */ | 1263 | */ |
1264 | 1264 | ||
1265 | static irqreturn_t NCR5380_intr (int irq, void *dev_id, struct pt_regs *regs) | 1265 | static irqreturn_t NCR5380_intr (int irq, void *dev_id) |
1266 | { | 1266 | { |
1267 | struct Scsi_Host *instance = first_instance; | 1267 | struct Scsi_Host *instance = first_instance; |
1268 | int done = 1, handled = 0; | 1268 | int done = 1, handled = 0; |
diff --git a/drivers/scsi/atari_dma_emul.c b/drivers/scsi/atari_dma_emul.c index 8d5d2a5da961..cdc710ea00fa 100644 --- a/drivers/scsi/atari_dma_emul.c +++ b/drivers/scsi/atari_dma_emul.c | |||
@@ -110,7 +110,7 @@ static inline void set_restdata_reg(unsigned char *cur_addr) | |||
110 | } | 110 | } |
111 | 111 | ||
112 | /* | 112 | /* |
113 | * void hades_dma_emulator(int irq, void *dummy, struct pt_regs *fp) | 113 | * void hades_dma_emulator(int irq, void *dummy) |
114 | * | 114 | * |
115 | * This code emulates TT SCSI DMA on the Hades. | 115 | * This code emulates TT SCSI DMA on the Hades. |
116 | * | 116 | * |
@@ -140,7 +140,7 @@ static inline void set_restdata_reg(unsigned char *cur_addr) | |||
140 | * increased with one. | 140 | * increased with one. |
141 | */ | 141 | */ |
142 | 142 | ||
143 | static irqreturn_t hades_dma_emulator(int irq, void *dummy, struct pt_regs *fp) | 143 | static irqreturn_t hades_dma_emulator(int irq, void *dummy) |
144 | { | 144 | { |
145 | unsigned long dma_base; | 145 | unsigned long dma_base; |
146 | register unsigned long dma_cnt asm ("d3"); | 146 | register unsigned long dma_cnt asm ("d3"); |
diff --git a/drivers/scsi/atari_scsi.c b/drivers/scsi/atari_scsi.c index e1be4a4387cd..dfb1bcfae82e 100644 --- a/drivers/scsi/atari_scsi.c +++ b/drivers/scsi/atari_scsi.c | |||
@@ -194,8 +194,8 @@ static int falcon_classify_cmd( Scsi_Cmnd *cmd ); | |||
194 | static unsigned long atari_dma_xfer_len( unsigned long wanted_len, | 194 | static unsigned long atari_dma_xfer_len( unsigned long wanted_len, |
195 | Scsi_Cmnd *cmd, int write_flag ); | 195 | Scsi_Cmnd *cmd, int write_flag ); |
196 | #endif | 196 | #endif |
197 | static irqreturn_t scsi_tt_intr( int irq, void *dummy, struct pt_regs *fp); | 197 | static irqreturn_t scsi_tt_intr( int irq, void *dummy); |
198 | static irqreturn_t scsi_falcon_intr( int irq, void *dummy, struct pt_regs *fp); | 198 | static irqreturn_t scsi_falcon_intr( int irq, void *dummy); |
199 | static void falcon_release_lock_if_possible( struct NCR5380_hostdata * | 199 | static void falcon_release_lock_if_possible( struct NCR5380_hostdata * |
200 | hostdata ); | 200 | hostdata ); |
201 | static void falcon_get_lock( void ); | 201 | static void falcon_get_lock( void ); |
@@ -285,7 +285,7 @@ static int scsi_dma_is_ignored_buserr( unsigned char dma_stat ) | |||
285 | * end-of-DMA, both SCSI ints are triggered simultaneously, so the NCR int has | 285 | * end-of-DMA, both SCSI ints are triggered simultaneously, so the NCR int has |
286 | * to clear the DMA int pending bit before it allows other level 6 interrupts. | 286 | * to clear the DMA int pending bit before it allows other level 6 interrupts. |
287 | */ | 287 | */ |
288 | static void scsi_dma_buserr (int irq, void *dummy, struct pt_regs *fp) | 288 | static void scsi_dma_buserr (int irq, void *dummy) |
289 | { | 289 | { |
290 | unsigned char dma_stat = tt_scsi_dma.dma_ctrl; | 290 | unsigned char dma_stat = tt_scsi_dma.dma_ctrl; |
291 | 291 | ||
@@ -314,7 +314,7 @@ static void scsi_dma_buserr (int irq, void *dummy, struct pt_regs *fp) | |||
314 | #endif | 314 | #endif |
315 | 315 | ||
316 | 316 | ||
317 | static irqreturn_t scsi_tt_intr (int irq, void *dummy, struct pt_regs *fp) | 317 | static irqreturn_t scsi_tt_intr (int irq, void *dummy) |
318 | { | 318 | { |
319 | #ifdef REAL_DMA | 319 | #ifdef REAL_DMA |
320 | int dma_stat; | 320 | int dma_stat; |
@@ -406,7 +406,7 @@ static irqreturn_t scsi_tt_intr (int irq, void *dummy, struct pt_regs *fp) | |||
406 | } | 406 | } |
407 | 407 | ||
408 | 408 | ||
409 | static irqreturn_t scsi_falcon_intr (int irq, void *dummy, struct pt_regs *fp) | 409 | static irqreturn_t scsi_falcon_intr (int irq, void *dummy) |
410 | { | 410 | { |
411 | #ifdef REAL_DMA | 411 | #ifdef REAL_DMA |
412 | int dma_stat; | 412 | int dma_stat; |
diff --git a/drivers/scsi/atp870u.c b/drivers/scsi/atp870u.c index 0ec41f34f462..fec58cc47f1c 100644 --- a/drivers/scsi/atp870u.c +++ b/drivers/scsi/atp870u.c | |||
@@ -44,7 +44,7 @@ static void send_s870(struct atp_unit *dev,unsigned char c); | |||
44 | static void is885(struct atp_unit *dev, unsigned int wkport,unsigned char c); | 44 | static void is885(struct atp_unit *dev, unsigned int wkport,unsigned char c); |
45 | static void tscam_885(void); | 45 | static void tscam_885(void); |
46 | 46 | ||
47 | static irqreturn_t atp870u_intr_handle(int irq, void *dev_id, struct pt_regs *regs) | 47 | static irqreturn_t atp870u_intr_handle(int irq, void *dev_id) |
48 | { | 48 | { |
49 | unsigned long flags; | 49 | unsigned long flags; |
50 | unsigned short int tmpcip, id; | 50 | unsigned short int tmpcip, id; |
diff --git a/drivers/scsi/bvme6000.h b/drivers/scsi/bvme6000.h index 7c9c0366cc08..ea3e4b2b9220 100644 --- a/drivers/scsi/bvme6000.h +++ b/drivers/scsi/bvme6000.h | |||
@@ -9,7 +9,7 @@ int NCR53c7xx_queue_command(Scsi_Cmnd *, void (*done)(Scsi_Cmnd *)); | |||
9 | int NCR53c7xx_abort(Scsi_Cmnd *); | 9 | int NCR53c7xx_abort(Scsi_Cmnd *); |
10 | int NCR53c7x0_release (struct Scsi_Host *); | 10 | int NCR53c7x0_release (struct Scsi_Host *); |
11 | int NCR53c7xx_reset(Scsi_Cmnd *, unsigned int); | 11 | int NCR53c7xx_reset(Scsi_Cmnd *, unsigned int); |
12 | void NCR53c7x0_intr(int irq, void *dev_id, struct pt_regs * regs); | 12 | void NCR53c7x0_intr(int irq, void *dev_id); |
13 | 13 | ||
14 | #ifndef CMD_PER_LUN | 14 | #ifndef CMD_PER_LUN |
15 | #define CMD_PER_LUN 3 | 15 | #define CMD_PER_LUN 3 |
diff --git a/drivers/scsi/dc395x.c b/drivers/scsi/dc395x.c index c6118d99385e..e95b367d09ed 100644 --- a/drivers/scsi/dc395x.c +++ b/drivers/scsi/dc395x.c | |||
@@ -1219,7 +1219,7 @@ static void dump_register_info(struct AdapterCtlBlk *acb, | |||
1219 | srb, srb->cmd, srb->cmd->pid, | 1219 | srb, srb->cmd, srb->cmd->pid, |
1220 | srb->cmd->cmnd[0], srb->cmd->device->id, | 1220 | srb->cmd->cmnd[0], srb->cmd->device->id, |
1221 | srb->cmd->device->lun); | 1221 | srb->cmd->device->lun); |
1222 | printk(" sglist=%p cnt=%i idx=%i len=%Zd\n", | 1222 | printk(" sglist=%p cnt=%i idx=%i len=%zu\n", |
1223 | srb->segment_x, srb->sg_count, srb->sg_index, | 1223 | srb->segment_x, srb->sg_count, srb->sg_index, |
1224 | srb->total_xfer_length); | 1224 | srb->total_xfer_length); |
1225 | printk(" state=0x%04x status=0x%02x phase=0x%02x (%sconn.)\n", | 1225 | printk(" state=0x%04x status=0x%02x phase=0x%02x (%sconn.)\n", |
@@ -1813,10 +1813,9 @@ static void dc395x_handle_interrupt(struct AdapterCtlBlk *acb, | |||
1813 | } | 1813 | } |
1814 | 1814 | ||
1815 | 1815 | ||
1816 | static irqreturn_t dc395x_interrupt(int irq, void *dev_id, | 1816 | static irqreturn_t dc395x_interrupt(int irq, void *dev_id) |
1817 | struct pt_regs *regs) | ||
1818 | { | 1817 | { |
1819 | struct AdapterCtlBlk *acb = (struct AdapterCtlBlk *)dev_id; | 1818 | struct AdapterCtlBlk *acb = dev_id; |
1820 | u16 scsi_status; | 1819 | u16 scsi_status; |
1821 | u8 dma_status; | 1820 | u8 dma_status; |
1822 | irqreturn_t handled = IRQ_NONE; | 1821 | irqreturn_t handled = IRQ_NONE; |
diff --git a/drivers/scsi/dec_esp.c b/drivers/scsi/dec_esp.c index eb32062f7e68..c29ccbc44693 100644 --- a/drivers/scsi/dec_esp.c +++ b/drivers/scsi/dec_esp.c | |||
@@ -94,9 +94,9 @@ volatile unsigned char pmaz_cmd_buffer[16]; | |||
94 | * via PIO. | 94 | * via PIO. |
95 | */ | 95 | */ |
96 | 96 | ||
97 | static irqreturn_t scsi_dma_merr_int(int, void *, struct pt_regs *); | 97 | static irqreturn_t scsi_dma_merr_int(int, void *); |
98 | static irqreturn_t scsi_dma_err_int(int, void *, struct pt_regs *); | 98 | static irqreturn_t scsi_dma_err_int(int, void *); |
99 | static irqreturn_t scsi_dma_int(int, void *, struct pt_regs *); | 99 | static irqreturn_t scsi_dma_int(int, void *); |
100 | 100 | ||
101 | static int dec_esp_detect(struct scsi_host_template * tpnt); | 101 | static int dec_esp_detect(struct scsi_host_template * tpnt); |
102 | 102 | ||
@@ -307,7 +307,7 @@ err_dealloc: | |||
307 | } | 307 | } |
308 | 308 | ||
309 | /************************************************************* DMA Functions */ | 309 | /************************************************************* DMA Functions */ |
310 | static irqreturn_t scsi_dma_merr_int(int irq, void *dev_id, struct pt_regs *regs) | 310 | static irqreturn_t scsi_dma_merr_int(int irq, void *dev_id) |
311 | { | 311 | { |
312 | printk("Got unexpected SCSI DMA Interrupt! < "); | 312 | printk("Got unexpected SCSI DMA Interrupt! < "); |
313 | printk("SCSI_DMA_MEMRDERR "); | 313 | printk("SCSI_DMA_MEMRDERR "); |
@@ -316,14 +316,14 @@ static irqreturn_t scsi_dma_merr_int(int irq, void *dev_id, struct pt_regs *regs | |||
316 | return IRQ_HANDLED; | 316 | return IRQ_HANDLED; |
317 | } | 317 | } |
318 | 318 | ||
319 | static irqreturn_t scsi_dma_err_int(int irq, void *dev_id, struct pt_regs *regs) | 319 | static irqreturn_t scsi_dma_err_int(int irq, void *dev_id) |
320 | { | 320 | { |
321 | /* empty */ | 321 | /* empty */ |
322 | 322 | ||
323 | return IRQ_HANDLED; | 323 | return IRQ_HANDLED; |
324 | } | 324 | } |
325 | 325 | ||
326 | static irqreturn_t scsi_dma_int(int irq, void *dev_id, struct pt_regs *regs) | 326 | static irqreturn_t scsi_dma_int(int irq, void *dev_id) |
327 | { | 327 | { |
328 | u32 scsi_next_ptr; | 328 | u32 scsi_next_ptr; |
329 | 329 | ||
diff --git a/drivers/scsi/dpt_i2o.c b/drivers/scsi/dpt_i2o.c index b20b37661d6f..60b1b434eba7 100644 --- a/drivers/scsi/dpt_i2o.c +++ b/drivers/scsi/dpt_i2o.c | |||
@@ -1989,7 +1989,7 @@ static int adpt_ioctl(struct inode *inode, struct file *file, uint cmd, | |||
1989 | } | 1989 | } |
1990 | 1990 | ||
1991 | 1991 | ||
1992 | static irqreturn_t adpt_isr(int irq, void *dev_id, struct pt_regs *regs) | 1992 | static irqreturn_t adpt_isr(int irq, void *dev_id) |
1993 | { | 1993 | { |
1994 | struct scsi_cmnd* cmd; | 1994 | struct scsi_cmnd* cmd; |
1995 | adpt_hba* pHba = dev_id; | 1995 | adpt_hba* pHba = dev_id; |
diff --git a/drivers/scsi/dpti.h b/drivers/scsi/dpti.h index 289983264929..fd79068c5869 100644 --- a/drivers/scsi/dpti.h +++ b/drivers/scsi/dpti.h | |||
@@ -263,7 +263,7 @@ struct sg_simple_element { | |||
263 | static void adpt_i2o_sys_shutdown(void); | 263 | static void adpt_i2o_sys_shutdown(void); |
264 | static int adpt_init(void); | 264 | static int adpt_init(void); |
265 | static int adpt_i2o_build_sys_table(void); | 265 | static int adpt_i2o_build_sys_table(void); |
266 | static irqreturn_t adpt_isr(int irq, void *dev_id, struct pt_regs *regs); | 266 | static irqreturn_t adpt_isr(int irq, void *dev_id); |
267 | #ifdef REBOOT_NOTIFIER | 267 | #ifdef REBOOT_NOTIFIER |
268 | static int adpt_reboot_event(struct notifier_block *n, ulong code, void *p); | 268 | static int adpt_reboot_event(struct notifier_block *n, ulong code, void *p); |
269 | #endif | 269 | #endif |
diff --git a/drivers/scsi/eata.c b/drivers/scsi/eata.c index a5ff43b1b263..2d38025861a5 100644 --- a/drivers/scsi/eata.c +++ b/drivers/scsi/eata.c | |||
@@ -875,7 +875,7 @@ static unsigned long io_port[] = { | |||
875 | /* But transfer orientation from the 16 bit data register is Little Endian */ | 875 | /* But transfer orientation from the 16 bit data register is Little Endian */ |
876 | #define REG2H(x) le16_to_cpu(x) | 876 | #define REG2H(x) le16_to_cpu(x) |
877 | 877 | ||
878 | static irqreturn_t do_interrupt_handler(int, void *, struct pt_regs *); | 878 | static irqreturn_t do_interrupt_handler(int, void *); |
879 | static void flush_dev(struct scsi_device *, unsigned long, struct hostdata *, | 879 | static void flush_dev(struct scsi_device *, unsigned long, struct hostdata *, |
880 | unsigned int); | 880 | unsigned int); |
881 | static int do_trace = 0; | 881 | static int do_trace = 0; |
@@ -2555,8 +2555,7 @@ static irqreturn_t ihdlr(int irq, struct Scsi_Host *shost) | |||
2555 | return IRQ_NONE; | 2555 | return IRQ_NONE; |
2556 | } | 2556 | } |
2557 | 2557 | ||
2558 | static irqreturn_t do_interrupt_handler(int irq, void *shap, | 2558 | static irqreturn_t do_interrupt_handler(int irq, void *shap) |
2559 | struct pt_regs *regs) | ||
2560 | { | 2559 | { |
2561 | struct Scsi_Host *shost; | 2560 | struct Scsi_Host *shost; |
2562 | unsigned int j; | 2561 | unsigned int j; |
diff --git a/drivers/scsi/eata_pio.c b/drivers/scsi/eata_pio.c index d312633db92b..811d8840707e 100644 --- a/drivers/scsi/eata_pio.c +++ b/drivers/scsi/eata_pio.c | |||
@@ -194,10 +194,9 @@ static void IncStat(struct scsi_pointer *SCp, unsigned int Increment) | |||
194 | } | 194 | } |
195 | } | 195 | } |
196 | 196 | ||
197 | static irqreturn_t eata_pio_int_handler(int irq, void *dev_id, struct pt_regs *regs); | 197 | static irqreturn_t eata_pio_int_handler(int irq, void *dev_id); |
198 | 198 | ||
199 | static irqreturn_t do_eata_pio_int_handler(int irq, void *dev_id, | 199 | static irqreturn_t do_eata_pio_int_handler(int irq, void *dev_id) |
200 | struct pt_regs *regs) | ||
201 | { | 200 | { |
202 | unsigned long flags; | 201 | unsigned long flags; |
203 | struct Scsi_Host *dev = dev_id; | 202 | struct Scsi_Host *dev = dev_id; |
@@ -209,7 +208,7 @@ static irqreturn_t do_eata_pio_int_handler(int irq, void *dev_id, | |||
209 | return ret; | 208 | return ret; |
210 | } | 209 | } |
211 | 210 | ||
212 | static irqreturn_t eata_pio_int_handler(int irq, void *dev_id, struct pt_regs *regs) | 211 | static irqreturn_t eata_pio_int_handler(int irq, void *dev_id) |
213 | { | 212 | { |
214 | unsigned int eata_stat = 0xfffff; | 213 | unsigned int eata_stat = 0xfffff; |
215 | struct scsi_cmnd *cmd; | 214 | struct scsi_cmnd *cmd; |
diff --git a/drivers/scsi/esp.c b/drivers/scsi/esp.c index 5630868c1b25..2c2fe80bc42a 100644 --- a/drivers/scsi/esp.c +++ b/drivers/scsi/esp.c | |||
@@ -184,7 +184,7 @@ enum { | |||
184 | }; | 184 | }; |
185 | 185 | ||
186 | /* Forward declarations. */ | 186 | /* Forward declarations. */ |
187 | static irqreturn_t esp_intr(int irq, void *dev_id, struct pt_regs *pregs); | 187 | static irqreturn_t esp_intr(int irq, void *dev_id); |
188 | 188 | ||
189 | /* Debugging routines */ | 189 | /* Debugging routines */ |
190 | struct esp_cmdstrings { | 190 | struct esp_cmdstrings { |
@@ -4282,7 +4282,7 @@ state_machine: | |||
4282 | } | 4282 | } |
4283 | 4283 | ||
4284 | /* Service only the ESP described by dev_id. */ | 4284 | /* Service only the ESP described by dev_id. */ |
4285 | static irqreturn_t esp_intr(int irq, void *dev_id, struct pt_regs *pregs) | 4285 | static irqreturn_t esp_intr(int irq, void *dev_id) |
4286 | { | 4286 | { |
4287 | struct esp *esp = dev_id; | 4287 | struct esp *esp = dev_id; |
4288 | unsigned long flags; | 4288 | unsigned long flags; |
diff --git a/drivers/scsi/fd_mcs.c b/drivers/scsi/fd_mcs.c index dde3edf35c03..ef8285c326e4 100644 --- a/drivers/scsi/fd_mcs.c +++ b/drivers/scsi/fd_mcs.c | |||
@@ -281,7 +281,7 @@ static struct fd_mcs_adapters_struct fd_mcs_adapters[] = { | |||
281 | 281 | ||
282 | #define FD_BRDS ARRAY_SIZE(fd_mcs_adapters) | 282 | #define FD_BRDS ARRAY_SIZE(fd_mcs_adapters) |
283 | 283 | ||
284 | static irqreturn_t fd_mcs_intr(int irq, void *dev_id, struct pt_regs *regs); | 284 | static irqreturn_t fd_mcs_intr(int irq, void *dev_id); |
285 | 285 | ||
286 | static unsigned long addresses[] = { 0xc8000, 0xca000, 0xce000, 0xde000 }; | 286 | static unsigned long addresses[] = { 0xc8000, 0xca000, 0xce000, 0xde000 }; |
287 | static unsigned short ports[] = { 0x140, 0x150, 0x160, 0x170 }; | 287 | static unsigned short ports[] = { 0x140, 0x150, 0x160, 0x170 }; |
@@ -617,7 +617,7 @@ static void my_done(struct Scsi_Host *shpnt, int error) | |||
617 | } | 617 | } |
618 | 618 | ||
619 | /* only my_done needs to be protected */ | 619 | /* only my_done needs to be protected */ |
620 | static irqreturn_t fd_mcs_intr(int irq, void *dev_id, struct pt_regs *regs) | 620 | static irqreturn_t fd_mcs_intr(int irq, void *dev_id) |
621 | { | 621 | { |
622 | unsigned long flags; | 622 | unsigned long flags; |
623 | int status; | 623 | int status; |
diff --git a/drivers/scsi/fdomain.c b/drivers/scsi/fdomain.c index b0694dcce246..41b05fc45380 100644 --- a/drivers/scsi/fdomain.c +++ b/drivers/scsi/fdomain.c | |||
@@ -403,8 +403,7 @@ static volatile int in_interrupt_flag; | |||
403 | static int FIFO_Size = 0x2000; /* 8k FIFO for | 403 | static int FIFO_Size = 0x2000; /* 8k FIFO for |
404 | pre-tmc18c30 chips */ | 404 | pre-tmc18c30 chips */ |
405 | 405 | ||
406 | static irqreturn_t do_fdomain_16x0_intr( int irq, void *dev_id, | 406 | static irqreturn_t do_fdomain_16x0_intr( int irq, void *dev_id ); |
407 | struct pt_regs * regs ); | ||
408 | /* Allow insmod parameters to be like LILO parameters. For example: | 407 | /* Allow insmod parameters to be like LILO parameters. For example: |
409 | insmod fdomain fdomain=0x140,11 */ | 408 | insmod fdomain fdomain=0x140,11 */ |
410 | static char * fdomain = NULL; | 409 | static char * fdomain = NULL; |
@@ -1094,8 +1093,7 @@ static void my_done(int error) | |||
1094 | #endif | 1093 | #endif |
1095 | } | 1094 | } |
1096 | 1095 | ||
1097 | static irqreturn_t do_fdomain_16x0_intr(int irq, void *dev_id, | 1096 | static irqreturn_t do_fdomain_16x0_intr(int irq, void *dev_id) |
1098 | struct pt_regs * regs ) | ||
1099 | { | 1097 | { |
1100 | unsigned long flags; | 1098 | unsigned long flags; |
1101 | int status; | 1099 | int status; |
diff --git a/drivers/scsi/gdth.c b/drivers/scsi/gdth.c index 0f3eb22b979a..4bc14ad92e22 100644 --- a/drivers/scsi/gdth.c +++ b/drivers/scsi/gdth.c | |||
@@ -424,7 +424,7 @@ | |||
424 | 424 | ||
425 | static void gdth_delay(int milliseconds); | 425 | static void gdth_delay(int milliseconds); |
426 | static void gdth_eval_mapping(ulong32 size, ulong32 *cyls, int *heads, int *secs); | 426 | static void gdth_eval_mapping(ulong32 size, ulong32 *cyls, int *heads, int *secs); |
427 | static irqreturn_t gdth_interrupt(int irq, void *dev_id, struct pt_regs *regs); | 427 | static irqreturn_t gdth_interrupt(int irq, void *dev_id); |
428 | static int gdth_sync_event(int hanum,int service,unchar index,Scsi_Cmnd *scp); | 428 | static int gdth_sync_event(int hanum,int service,unchar index,Scsi_Cmnd *scp); |
429 | static int gdth_async_event(int hanum); | 429 | static int gdth_async_event(int hanum); |
430 | static void gdth_log_event(gdth_evt_data *dvr, char *buffer); | 430 | static void gdth_log_event(gdth_evt_data *dvr, char *buffer); |
@@ -1804,7 +1804,7 @@ static int gdth_wait(int hanum,int index,ulong32 time) | |||
1804 | 1804 | ||
1805 | gdth_from_wait = TRUE; | 1805 | gdth_from_wait = TRUE; |
1806 | do { | 1806 | do { |
1807 | gdth_interrupt((int)ha->irq,ha,NULL); | 1807 | gdth_interrupt((int)ha->irq,ha); |
1808 | if (wait_hanum==hanum && wait_index==index) { | 1808 | if (wait_hanum==hanum && wait_index==index) { |
1809 | answer_found = TRUE; | 1809 | answer_found = TRUE; |
1810 | break; | 1810 | break; |
@@ -3406,7 +3406,7 @@ static void gdth_clear_events(void) | |||
3406 | 3406 | ||
3407 | /* SCSI interface functions */ | 3407 | /* SCSI interface functions */ |
3408 | 3408 | ||
3409 | static irqreturn_t gdth_interrupt(int irq,void *dev_id,struct pt_regs *regs) | 3409 | static irqreturn_t gdth_interrupt(int irq,void *dev_id) |
3410 | { | 3410 | { |
3411 | gdth_ha_str *ha2 = (gdth_ha_str *)dev_id; | 3411 | gdth_ha_str *ha2 = (gdth_ha_str *)dev_id; |
3412 | register gdth_ha_str *ha; | 3412 | register gdth_ha_str *ha; |
diff --git a/drivers/scsi/gvp11.c b/drivers/scsi/gvp11.c index 18dbe5c27dac..2f6c1137a6e5 100644 --- a/drivers/scsi/gvp11.c +++ b/drivers/scsi/gvp11.c | |||
@@ -24,7 +24,7 @@ | |||
24 | #define DMA(ptr) ((gvp11_scsiregs *)((ptr)->base)) | 24 | #define DMA(ptr) ((gvp11_scsiregs *)((ptr)->base)) |
25 | #define HDATA(ptr) ((struct WD33C93_hostdata *)((ptr)->hostdata)) | 25 | #define HDATA(ptr) ((struct WD33C93_hostdata *)((ptr)->hostdata)) |
26 | 26 | ||
27 | static irqreturn_t gvp11_intr (int irq, void *_instance, struct pt_regs *fp) | 27 | static irqreturn_t gvp11_intr (int irq, void *_instance) |
28 | { | 28 | { |
29 | unsigned long flags; | 29 | unsigned long flags; |
30 | unsigned int status; | 30 | unsigned int status; |
diff --git a/drivers/scsi/hptiop.c b/drivers/scsi/hptiop.c index 28bfb8f9f81d..bec83cbee59a 100644 --- a/drivers/scsi/hptiop.c +++ b/drivers/scsi/hptiop.c | |||
@@ -431,7 +431,7 @@ void hptiop_iop_request_callback(struct hptiop_hba *hba, u32 tag) | |||
431 | writel(tag, &hba->iop->outbound_queue); | 431 | writel(tag, &hba->iop->outbound_queue); |
432 | } | 432 | } |
433 | 433 | ||
434 | static irqreturn_t hptiop_intr(int irq, void *dev_id, struct pt_regs *regs) | 434 | static irqreturn_t hptiop_intr(int irq, void *dev_id) |
435 | { | 435 | { |
436 | struct hptiop_hba *hba = dev_id; | 436 | struct hptiop_hba *hba = dev_id; |
437 | int handled; | 437 | int handled; |
diff --git a/drivers/scsi/ibmmca.c b/drivers/scsi/ibmmca.c index 2be1dc5d852a..0e57fb6964d5 100644 --- a/drivers/scsi/ibmmca.c +++ b/drivers/scsi/ibmmca.c | |||
@@ -497,8 +497,7 @@ static int option_setup(char *); | |||
497 | static int ldn_access_load(int, int); | 497 | static int ldn_access_load(int, int); |
498 | static int ldn_access_total_read_write(int); | 498 | static int ldn_access_total_read_write(int); |
499 | 499 | ||
500 | static irqreturn_t interrupt_handler(int irq, void *dev_id, | 500 | static irqreturn_t interrupt_handler(int irq, void *dev_id) |
501 | struct pt_regs *regs) | ||
502 | { | 501 | { |
503 | int host_index, ihost_index; | 502 | int host_index, ihost_index; |
504 | unsigned int intr_reg; | 503 | unsigned int intr_reg; |
diff --git a/drivers/scsi/ibmvscsi/rpa_vscsi.c b/drivers/scsi/ibmvscsi/rpa_vscsi.c index 01b8ac641eb8..227c0f2f4d74 100644 --- a/drivers/scsi/ibmvscsi/rpa_vscsi.c +++ b/drivers/scsi/ibmvscsi/rpa_vscsi.c | |||
@@ -45,14 +45,11 @@ static unsigned int partition_number = -1; | |||
45 | * ibmvscsi_handle_event: - Interrupt handler for crq events | 45 | * ibmvscsi_handle_event: - Interrupt handler for crq events |
46 | * @irq: number of irq to handle, not used | 46 | * @irq: number of irq to handle, not used |
47 | * @dev_instance: ibmvscsi_host_data of host that received interrupt | 47 | * @dev_instance: ibmvscsi_host_data of host that received interrupt |
48 | * @regs: pt_regs with registers | ||
49 | * | 48 | * |
50 | * Disables interrupts and schedules srp_task | 49 | * Disables interrupts and schedules srp_task |
51 | * Always returns IRQ_HANDLED | 50 | * Always returns IRQ_HANDLED |
52 | */ | 51 | */ |
53 | static irqreturn_t ibmvscsi_handle_event(int irq, | 52 | static irqreturn_t ibmvscsi_handle_event(int irq, void *dev_instance) |
54 | void *dev_instance, | ||
55 | struct pt_regs *regs) | ||
56 | { | 53 | { |
57 | struct ibmvscsi_host_data *hostdata = | 54 | struct ibmvscsi_host_data *hostdata = |
58 | (struct ibmvscsi_host_data *)dev_instance; | 55 | (struct ibmvscsi_host_data *)dev_instance; |
diff --git a/drivers/scsi/in2000.c b/drivers/scsi/in2000.c index 59a4097f1254..312190a69389 100644 --- a/drivers/scsi/in2000.c +++ b/drivers/scsi/in2000.c | |||
@@ -829,7 +829,7 @@ static void transfer_bytes(Scsi_Cmnd * cmd, int data_in_dir) | |||
829 | * but it _does_ need to be able to compile and run in an SMP kernel.) | 829 | * but it _does_ need to be able to compile and run in an SMP kernel.) |
830 | */ | 830 | */ |
831 | 831 | ||
832 | static irqreturn_t in2000_intr(int irqnum, void *dev_id, struct pt_regs *ptregs) | 832 | static irqreturn_t in2000_intr(int irqnum, void *dev_id) |
833 | { | 833 | { |
834 | struct Scsi_Host *instance = dev_id; | 834 | struct Scsi_Host *instance = dev_id; |
835 | struct IN2000_hostdata *hostdata; | 835 | struct IN2000_hostdata *hostdata; |
diff --git a/drivers/scsi/initio.c b/drivers/scsi/initio.c index 9e10dac61cfd..911f2ff4a1f2 100644 --- a/drivers/scsi/initio.c +++ b/drivers/scsi/initio.c | |||
@@ -2748,7 +2748,7 @@ int tul_wait_done_disc(HCS * pCurHcb) | |||
2748 | return (tul_bad_seq(pCurHcb)); | 2748 | return (tul_bad_seq(pCurHcb)); |
2749 | } | 2749 | } |
2750 | 2750 | ||
2751 | static irqreturn_t i91u_intr(int irqno, void *dev_id, struct pt_regs *regs) | 2751 | static irqreturn_t i91u_intr(int irqno, void *dev_id) |
2752 | { | 2752 | { |
2753 | struct Scsi_Host *dev = dev_id; | 2753 | struct Scsi_Host *dev = dev_id; |
2754 | unsigned long flags; | 2754 | unsigned long flags; |
diff --git a/drivers/scsi/ipr.c b/drivers/scsi/ipr.c index e1fe9494125b..2dde821025f3 100644 --- a/drivers/scsi/ipr.c +++ b/drivers/scsi/ipr.c | |||
@@ -3880,12 +3880,11 @@ static irqreturn_t ipr_handle_other_interrupt(struct ipr_ioa_cfg *ioa_cfg, | |||
3880 | * ipr_isr - Interrupt service routine | 3880 | * ipr_isr - Interrupt service routine |
3881 | * @irq: irq number | 3881 | * @irq: irq number |
3882 | * @devp: pointer to ioa config struct | 3882 | * @devp: pointer to ioa config struct |
3883 | * @regs: pt_regs struct | ||
3884 | * | 3883 | * |
3885 | * Return value: | 3884 | * Return value: |
3886 | * IRQ_NONE / IRQ_HANDLED | 3885 | * IRQ_NONE / IRQ_HANDLED |
3887 | **/ | 3886 | **/ |
3888 | static irqreturn_t ipr_isr(int irq, void *devp, struct pt_regs *regs) | 3887 | static irqreturn_t ipr_isr(int irq, void *devp) |
3889 | { | 3888 | { |
3890 | struct ipr_ioa_cfg *ioa_cfg = (struct ipr_ioa_cfg *)devp; | 3889 | struct ipr_ioa_cfg *ioa_cfg = (struct ipr_ioa_cfg *)devp; |
3891 | unsigned long lock_flags = 0; | 3890 | unsigned long lock_flags = 0; |
diff --git a/drivers/scsi/ips.c b/drivers/scsi/ips.c index 9a9ab297cf17..f06a06ae6092 100644 --- a/drivers/scsi/ips.c +++ b/drivers/scsi/ips.c | |||
@@ -248,7 +248,7 @@ static int ips_eh_abort(struct scsi_cmnd *); | |||
248 | static int ips_eh_reset(struct scsi_cmnd *); | 248 | static int ips_eh_reset(struct scsi_cmnd *); |
249 | static int ips_queue(struct scsi_cmnd *, void (*)(struct scsi_cmnd *)); | 249 | static int ips_queue(struct scsi_cmnd *, void (*)(struct scsi_cmnd *)); |
250 | static const char *ips_info(struct Scsi_Host *); | 250 | static const char *ips_info(struct Scsi_Host *); |
251 | static irqreturn_t do_ipsintr(int, void *, struct pt_regs *); | 251 | static irqreturn_t do_ipsintr(int, void *); |
252 | static int ips_hainit(ips_ha_t *); | 252 | static int ips_hainit(ips_ha_t *); |
253 | static int ips_map_status(ips_ha_t *, ips_scb_t *, ips_stat_t *); | 253 | static int ips_map_status(ips_ha_t *, ips_scb_t *, ips_stat_t *); |
254 | static int ips_send_wait(ips_ha_t *, ips_scb_t *, int, int); | 254 | static int ips_send_wait(ips_ha_t *, ips_scb_t *, int, int); |
@@ -1328,7 +1328,7 @@ ips_slave_configure(struct scsi_device * SDptr) | |||
1328 | /* */ | 1328 | /* */ |
1329 | /****************************************************************************/ | 1329 | /****************************************************************************/ |
1330 | static irqreturn_t | 1330 | static irqreturn_t |
1331 | do_ipsintr(int irq, void *dev_id, struct pt_regs * regs) | 1331 | do_ipsintr(int irq, void *dev_id) |
1332 | { | 1332 | { |
1333 | ips_ha_t *ha; | 1333 | ips_ha_t *ha; |
1334 | unsigned long cpu_flags; | 1334 | unsigned long cpu_flags; |
diff --git a/drivers/scsi/lpfc/lpfc_crtn.h b/drivers/scsi/lpfc/lpfc_crtn.h index 3d684496acde..1251788ce2a3 100644 --- a/drivers/scsi/lpfc/lpfc_crtn.h +++ b/drivers/scsi/lpfc/lpfc_crtn.h | |||
@@ -120,7 +120,7 @@ int lpfc_sli_queue_setup(struct lpfc_hba *); | |||
120 | 120 | ||
121 | void lpfc_handle_eratt(struct lpfc_hba *); | 121 | void lpfc_handle_eratt(struct lpfc_hba *); |
122 | void lpfc_handle_latt(struct lpfc_hba *); | 122 | void lpfc_handle_latt(struct lpfc_hba *); |
123 | irqreturn_t lpfc_intr_handler(int, void *, struct pt_regs *); | 123 | irqreturn_t lpfc_intr_handler(int, void *); |
124 | 124 | ||
125 | void lpfc_read_rev(struct lpfc_hba *, LPFC_MBOXQ_t *); | 125 | void lpfc_read_rev(struct lpfc_hba *, LPFC_MBOXQ_t *); |
126 | void lpfc_config_ring(struct lpfc_hba *, int, LPFC_MBOXQ_t *); | 126 | void lpfc_config_ring(struct lpfc_hba *, int, LPFC_MBOXQ_t *); |
diff --git a/drivers/scsi/lpfc/lpfc_sli.c b/drivers/scsi/lpfc/lpfc_sli.c index 70f4d5a1348e..24a1779b9af4 100644 --- a/drivers/scsi/lpfc/lpfc_sli.c +++ b/drivers/scsi/lpfc/lpfc_sli.c | |||
@@ -3119,7 +3119,7 @@ lpfc_sli_flush_mbox_queue(struct lpfc_hba * phba) | |||
3119 | } | 3119 | } |
3120 | 3120 | ||
3121 | irqreturn_t | 3121 | irqreturn_t |
3122 | lpfc_intr_handler(int irq, void *dev_id, struct pt_regs * regs) | 3122 | lpfc_intr_handler(int irq, void *dev_id) |
3123 | { | 3123 | { |
3124 | struct lpfc_hba *phba; | 3124 | struct lpfc_hba *phba; |
3125 | uint32_t ha_copy; | 3125 | uint32_t ha_copy; |
diff --git a/drivers/scsi/mac53c94.c b/drivers/scsi/mac53c94.c index 6422de72bf43..753d88306cd1 100644 --- a/drivers/scsi/mac53c94.c +++ b/drivers/scsi/mac53c94.c | |||
@@ -60,8 +60,8 @@ struct fsc_state { | |||
60 | 60 | ||
61 | static void mac53c94_init(struct fsc_state *); | 61 | static void mac53c94_init(struct fsc_state *); |
62 | static void mac53c94_start(struct fsc_state *); | 62 | static void mac53c94_start(struct fsc_state *); |
63 | static void mac53c94_interrupt(int, void *, struct pt_regs *); | 63 | static void mac53c94_interrupt(int, void *); |
64 | static irqreturn_t do_mac53c94_interrupt(int, void *, struct pt_regs *); | 64 | static irqreturn_t do_mac53c94_interrupt(int, void *); |
65 | static void cmd_done(struct fsc_state *, int result); | 65 | static void cmd_done(struct fsc_state *, int result); |
66 | static void set_dma_cmds(struct fsc_state *, struct scsi_cmnd *); | 66 | static void set_dma_cmds(struct fsc_state *, struct scsi_cmnd *); |
67 | 67 | ||
@@ -177,18 +177,18 @@ static void mac53c94_start(struct fsc_state *state) | |||
177 | set_dma_cmds(state, cmd); | 177 | set_dma_cmds(state, cmd); |
178 | } | 178 | } |
179 | 179 | ||
180 | static irqreturn_t do_mac53c94_interrupt(int irq, void *dev_id, struct pt_regs *ptregs) | 180 | static irqreturn_t do_mac53c94_interrupt(int irq, void *dev_id) |
181 | { | 181 | { |
182 | unsigned long flags; | 182 | unsigned long flags; |
183 | struct Scsi_Host *dev = ((struct fsc_state *) dev_id)->current_req->device->host; | 183 | struct Scsi_Host *dev = ((struct fsc_state *) dev_id)->current_req->device->host; |
184 | 184 | ||
185 | spin_lock_irqsave(dev->host_lock, flags); | 185 | spin_lock_irqsave(dev->host_lock, flags); |
186 | mac53c94_interrupt(irq, dev_id, ptregs); | 186 | mac53c94_interrupt(irq, dev_id); |
187 | spin_unlock_irqrestore(dev->host_lock, flags); | 187 | spin_unlock_irqrestore(dev->host_lock, flags); |
188 | return IRQ_HANDLED; | 188 | return IRQ_HANDLED; |
189 | } | 189 | } |
190 | 190 | ||
191 | static void mac53c94_interrupt(int irq, void *dev_id, struct pt_regs *ptregs) | 191 | static void mac53c94_interrupt(int irq, void *dev_id) |
192 | { | 192 | { |
193 | struct fsc_state *state = (struct fsc_state *) dev_id; | 193 | struct fsc_state *state = (struct fsc_state *) dev_id; |
194 | struct mac53c94_regs __iomem *regs = state->regs; | 194 | struct mac53c94_regs __iomem *regs = state->regs; |
diff --git a/drivers/scsi/mac_esp.c b/drivers/scsi/mac_esp.c index 118206d68c6c..3586fac9be9a 100644 --- a/drivers/scsi/mac_esp.c +++ b/drivers/scsi/mac_esp.c | |||
@@ -44,7 +44,7 @@ | |||
44 | /* #define DEBUG_MAC_ESP */ | 44 | /* #define DEBUG_MAC_ESP */ |
45 | 45 | ||
46 | extern void esp_handle(struct NCR_ESP *esp); | 46 | extern void esp_handle(struct NCR_ESP *esp); |
47 | extern void mac_esp_intr(int irq, void *dev_id, struct pt_regs *pregs); | 47 | extern void mac_esp_intr(int irq, void *dev_id); |
48 | 48 | ||
49 | static int dma_bytes_sent(struct NCR_ESP * esp, int fifo_count); | 49 | static int dma_bytes_sent(struct NCR_ESP * esp, int fifo_count); |
50 | static int dma_can_transfer(struct NCR_ESP * esp, Scsi_Cmnd *sp); | 50 | static int dma_can_transfer(struct NCR_ESP * esp, Scsi_Cmnd *sp); |
@@ -88,7 +88,7 @@ static int setup_hostid = -1; | |||
88 | * set up properly! | 88 | * set up properly! |
89 | */ | 89 | */ |
90 | 90 | ||
91 | void mac_esp_intr(int irq, void *dev_id, struct pt_regs *pregs) | 91 | void mac_esp_intr(int irq, void *dev_id) |
92 | { | 92 | { |
93 | struct NCR_ESP *esp = (struct NCR_ESP *) dev_id; | 93 | struct NCR_ESP *esp = (struct NCR_ESP *) dev_id; |
94 | int irq_p = 0; | 94 | int irq_p = 0; |
@@ -122,24 +122,24 @@ void mac_esp_intr(int irq, void *dev_id, struct pt_regs *pregs) | |||
122 | * acknowledge on the various machines | 122 | * acknowledge on the various machines |
123 | */ | 123 | */ |
124 | 124 | ||
125 | void scsi_esp_polled(int irq, void *dev_id, struct pt_regs *pregs) | 125 | void scsi_esp_polled(int irq, void *dev_id) |
126 | { | 126 | { |
127 | if (esp_initialized == 0) | 127 | if (esp_initialized == 0) |
128 | return; | 128 | return; |
129 | 129 | ||
130 | mac_esp_intr(irq, dev_id, pregs); | 130 | mac_esp_intr(irq, dev_id); |
131 | } | 131 | } |
132 | 132 | ||
133 | void fake_intr(int irq, void *dev_id, struct pt_regs *pregs) | 133 | void fake_intr(int irq, void *dev_id) |
134 | { | 134 | { |
135 | #ifdef DEBUG_MAC_ESP | 135 | #ifdef DEBUG_MAC_ESP |
136 | printk("mac_esp: got irq\n"); | 136 | printk("mac_esp: got irq\n"); |
137 | #endif | 137 | #endif |
138 | 138 | ||
139 | mac_esp_intr(irq, dev_id, pregs); | 139 | mac_esp_intr(irq, dev_id); |
140 | } | 140 | } |
141 | 141 | ||
142 | irqreturn_t fake_drq(int irq, void *dev_id, struct pt_regs *pregs) | 142 | irqreturn_t fake_drq(int irq, void *dev_id) |
143 | { | 143 | { |
144 | printk("mac_esp: got drq\n"); | 144 | printk("mac_esp: got drq\n"); |
145 | return IRQ_HANDLED; | 145 | return IRQ_HANDLED; |
diff --git a/drivers/scsi/megaraid.c b/drivers/scsi/megaraid.c index b87bef69ba0f..86099fde1b2a 100644 --- a/drivers/scsi/megaraid.c +++ b/drivers/scsi/megaraid.c | |||
@@ -1256,14 +1256,13 @@ bug_blocked_mailbox: | |||
1256 | * megaraid_isr_iomapped() | 1256 | * megaraid_isr_iomapped() |
1257 | * @irq - irq | 1257 | * @irq - irq |
1258 | * @devp - pointer to our soft state | 1258 | * @devp - pointer to our soft state |
1259 | * @regs - unused | ||
1260 | * | 1259 | * |
1261 | * Interrupt service routine for io-mapped controllers. | 1260 | * Interrupt service routine for io-mapped controllers. |
1262 | * Find out if our device is interrupting. If yes, acknowledge the interrupt | 1261 | * Find out if our device is interrupting. If yes, acknowledge the interrupt |
1263 | * and service the completed commands. | 1262 | * and service the completed commands. |
1264 | */ | 1263 | */ |
1265 | static irqreturn_t | 1264 | static irqreturn_t |
1266 | megaraid_isr_iomapped(int irq, void *devp, struct pt_regs *regs) | 1265 | megaraid_isr_iomapped(int irq, void *devp) |
1267 | { | 1266 | { |
1268 | adapter_t *adapter = devp; | 1267 | adapter_t *adapter = devp; |
1269 | unsigned long flags; | 1268 | unsigned long flags; |
@@ -1333,14 +1332,13 @@ megaraid_isr_iomapped(int irq, void *devp, struct pt_regs *regs) | |||
1333 | * megaraid_isr_memmapped() | 1332 | * megaraid_isr_memmapped() |
1334 | * @irq - irq | 1333 | * @irq - irq |
1335 | * @devp - pointer to our soft state | 1334 | * @devp - pointer to our soft state |
1336 | * @regs - unused | ||
1337 | * | 1335 | * |
1338 | * Interrupt service routine for memory-mapped controllers. | 1336 | * Interrupt service routine for memory-mapped controllers. |
1339 | * Find out if our device is interrupting. If yes, acknowledge the interrupt | 1337 | * Find out if our device is interrupting. If yes, acknowledge the interrupt |
1340 | * and service the completed commands. | 1338 | * and service the completed commands. |
1341 | */ | 1339 | */ |
1342 | static irqreturn_t | 1340 | static irqreturn_t |
1343 | megaraid_isr_memmapped(int irq, void *devp, struct pt_regs *regs) | 1341 | megaraid_isr_memmapped(int irq, void *devp) |
1344 | { | 1342 | { |
1345 | adapter_t *adapter = devp; | 1343 | adapter_t *adapter = devp; |
1346 | unsigned long flags; | 1344 | unsigned long flags; |
diff --git a/drivers/scsi/megaraid.h b/drivers/scsi/megaraid.h index 4b75fe619d9c..66529f11d23c 100644 --- a/drivers/scsi/megaraid.h +++ b/drivers/scsi/megaraid.h | |||
@@ -991,8 +991,8 @@ static scb_t * mega_build_cmd(adapter_t *, Scsi_Cmnd *, int *); | |||
991 | static void __mega_runpendq(adapter_t *); | 991 | static void __mega_runpendq(adapter_t *); |
992 | static int issue_scb_block(adapter_t *, u_char *); | 992 | static int issue_scb_block(adapter_t *, u_char *); |
993 | 993 | ||
994 | static irqreturn_t megaraid_isr_memmapped(int, void *, struct pt_regs *); | 994 | static irqreturn_t megaraid_isr_memmapped(int, void *); |
995 | static irqreturn_t megaraid_isr_iomapped(int, void *, struct pt_regs *); | 995 | static irqreturn_t megaraid_isr_iomapped(int, void *); |
996 | 996 | ||
997 | static void mega_free_scb(adapter_t *, scb_t *); | 997 | static void mega_free_scb(adapter_t *, scb_t *); |
998 | 998 | ||
diff --git a/drivers/scsi/megaraid/megaraid_mbox.c b/drivers/scsi/megaraid/megaraid_mbox.c index 266b3910846b..c0edb662d863 100644 --- a/drivers/scsi/megaraid/megaraid_mbox.c +++ b/drivers/scsi/megaraid/megaraid_mbox.c | |||
@@ -120,7 +120,7 @@ static void megaraid_mbox_prepare_pthru(adapter_t *, scb_t *, | |||
120 | static void megaraid_mbox_prepare_epthru(adapter_t *, scb_t *, | 120 | static void megaraid_mbox_prepare_epthru(adapter_t *, scb_t *, |
121 | struct scsi_cmnd *); | 121 | struct scsi_cmnd *); |
122 | 122 | ||
123 | static irqreturn_t megaraid_isr(int, void *, struct pt_regs *); | 123 | static irqreturn_t megaraid_isr(int, void *); |
124 | 124 | ||
125 | static void megaraid_mbox_dpc(unsigned long); | 125 | static void megaraid_mbox_dpc(unsigned long); |
126 | 126 | ||
@@ -2231,7 +2231,7 @@ megaraid_ack_sequence(adapter_t *adapter) | |||
2231 | * Interrupt service routine for memory-mapped mailbox controllers. | 2231 | * Interrupt service routine for memory-mapped mailbox controllers. |
2232 | */ | 2232 | */ |
2233 | static irqreturn_t | 2233 | static irqreturn_t |
2234 | megaraid_isr(int irq, void *devp, struct pt_regs *regs) | 2234 | megaraid_isr(int irq, void *devp) |
2235 | { | 2235 | { |
2236 | adapter_t *adapter = devp; | 2236 | adapter_t *adapter = devp; |
2237 | int handled; | 2237 | int handled; |
diff --git a/drivers/scsi/megaraid/megaraid_sas.c b/drivers/scsi/megaraid/megaraid_sas.c index 977b6e8d8525..7e4262f2af96 100644 --- a/drivers/scsi/megaraid/megaraid_sas.c +++ b/drivers/scsi/megaraid/megaraid_sas.c | |||
@@ -1293,7 +1293,7 @@ megasas_deplete_reply_queue(struct megasas_instance *instance, u8 alt_status) | |||
1293 | /** | 1293 | /** |
1294 | * megasas_isr - isr entry point | 1294 | * megasas_isr - isr entry point |
1295 | */ | 1295 | */ |
1296 | static irqreturn_t megasas_isr(int irq, void *devp, struct pt_regs *regs) | 1296 | static irqreturn_t megasas_isr(int irq, void *devp) |
1297 | { | 1297 | { |
1298 | return megasas_deplete_reply_queue((struct megasas_instance *)devp, | 1298 | return megasas_deplete_reply_queue((struct megasas_instance *)devp, |
1299 | DID_OK); | 1299 | DID_OK); |
diff --git a/drivers/scsi/mesh.c b/drivers/scsi/mesh.c index 683fc7ae4b8f..1fd3c7590d31 100644 --- a/drivers/scsi/mesh.c +++ b/drivers/scsi/mesh.c | |||
@@ -185,7 +185,7 @@ struct mesh_state { | |||
185 | * Driver is too messy, we need a few prototypes... | 185 | * Driver is too messy, we need a few prototypes... |
186 | */ | 186 | */ |
187 | static void mesh_done(struct mesh_state *ms, int start_next); | 187 | static void mesh_done(struct mesh_state *ms, int start_next); |
188 | static void mesh_interrupt(int irq, void *dev_id, struct pt_regs *ptregs); | 188 | static void mesh_interrupt(int irq, void *dev_id); |
189 | static void cmd_complete(struct mesh_state *ms); | 189 | static void cmd_complete(struct mesh_state *ms); |
190 | static void set_dma_cmds(struct mesh_state *ms, struct scsi_cmnd *cmd); | 190 | static void set_dma_cmds(struct mesh_state *ms, struct scsi_cmnd *cmd); |
191 | static void halt_dma(struct mesh_state *ms); | 191 | static void halt_dma(struct mesh_state *ms); |
@@ -466,7 +466,7 @@ static void mesh_start_cmd(struct mesh_state *ms, struct scsi_cmnd *cmd) | |||
466 | dlog(ms, "intr b4 arb, intr/exc/err/fc=%.8x", | 466 | dlog(ms, "intr b4 arb, intr/exc/err/fc=%.8x", |
467 | MKWORD(mr->interrupt, mr->exception, | 467 | MKWORD(mr->interrupt, mr->exception, |
468 | mr->error, mr->fifo_count)); | 468 | mr->error, mr->fifo_count)); |
469 | mesh_interrupt(0, (void *)ms, NULL); | 469 | mesh_interrupt(0, (void *)ms); |
470 | if (ms->phase != arbitrating) | 470 | if (ms->phase != arbitrating) |
471 | return; | 471 | return; |
472 | } | 472 | } |
@@ -504,7 +504,7 @@ static void mesh_start_cmd(struct mesh_state *ms, struct scsi_cmnd *cmd) | |||
504 | dlog(ms, "intr after disresel, intr/exc/err/fc=%.8x", | 504 | dlog(ms, "intr after disresel, intr/exc/err/fc=%.8x", |
505 | MKWORD(mr->interrupt, mr->exception, | 505 | MKWORD(mr->interrupt, mr->exception, |
506 | mr->error, mr->fifo_count)); | 506 | mr->error, mr->fifo_count)); |
507 | mesh_interrupt(0, (void *)ms, NULL); | 507 | mesh_interrupt(0, (void *)ms); |
508 | if (ms->phase != arbitrating) | 508 | if (ms->phase != arbitrating) |
509 | return; | 509 | return; |
510 | dlog(ms, "after intr after disresel, intr/exc/err/fc=%.8x", | 510 | dlog(ms, "after intr after disresel, intr/exc/err/fc=%.8x", |
@@ -1015,13 +1015,13 @@ static void handle_reset(struct mesh_state *ms) | |||
1015 | out_8(&mr->sequence, SEQ_ENBRESEL); | 1015 | out_8(&mr->sequence, SEQ_ENBRESEL); |
1016 | } | 1016 | } |
1017 | 1017 | ||
1018 | static irqreturn_t do_mesh_interrupt(int irq, void *dev_id, struct pt_regs *ptregs) | 1018 | static irqreturn_t do_mesh_interrupt(int irq, void *dev_id) |
1019 | { | 1019 | { |
1020 | unsigned long flags; | 1020 | unsigned long flags; |
1021 | struct Scsi_Host *dev = ((struct mesh_state *)dev_id)->host; | 1021 | struct Scsi_Host *dev = ((struct mesh_state *)dev_id)->host; |
1022 | 1022 | ||
1023 | spin_lock_irqsave(dev->host_lock, flags); | 1023 | spin_lock_irqsave(dev->host_lock, flags); |
1024 | mesh_interrupt(irq, dev_id, ptregs); | 1024 | mesh_interrupt(irq, dev_id); |
1025 | spin_unlock_irqrestore(dev->host_lock, flags); | 1025 | spin_unlock_irqrestore(dev->host_lock, flags); |
1026 | return IRQ_HANDLED; | 1026 | return IRQ_HANDLED; |
1027 | } | 1027 | } |
@@ -1661,7 +1661,7 @@ static int mesh_queue(struct scsi_cmnd *cmd, void (*done)(struct scsi_cmnd *)) | |||
1661 | * handler (do_mesh_interrupt) or by other functions in | 1661 | * handler (do_mesh_interrupt) or by other functions in |
1662 | * exceptional circumstances | 1662 | * exceptional circumstances |
1663 | */ | 1663 | */ |
1664 | static void mesh_interrupt(int irq, void *dev_id, struct pt_regs *ptregs) | 1664 | static void mesh_interrupt(int irq, void *dev_id) |
1665 | { | 1665 | { |
1666 | struct mesh_state *ms = (struct mesh_state *) dev_id; | 1666 | struct mesh_state *ms = (struct mesh_state *) dev_id; |
1667 | volatile struct mesh_regs __iomem *mr = ms->mesh; | 1667 | volatile struct mesh_regs __iomem *mr = ms->mesh; |
diff --git a/drivers/scsi/mvme147.c b/drivers/scsi/mvme147.c index 9b991b746d1e..1ddd7a11a958 100644 --- a/drivers/scsi/mvme147.c +++ b/drivers/scsi/mvme147.c | |||
@@ -20,7 +20,7 @@ | |||
20 | 20 | ||
21 | static struct Scsi_Host *mvme147_host = NULL; | 21 | static struct Scsi_Host *mvme147_host = NULL; |
22 | 22 | ||
23 | static irqreturn_t mvme147_intr (int irq, void *dummy, struct pt_regs *fp) | 23 | static irqreturn_t mvme147_intr (int irq, void *dummy) |
24 | { | 24 | { |
25 | if (irq == MVME147_IRQ_SCSI_PORT) | 25 | if (irq == MVME147_IRQ_SCSI_PORT) |
26 | wd33c93_intr (mvme147_host); | 26 | wd33c93_intr (mvme147_host); |
diff --git a/drivers/scsi/mvme16x.h b/drivers/scsi/mvme16x.h index c7a12533fb2c..73e33b37a3f8 100644 --- a/drivers/scsi/mvme16x.h +++ b/drivers/scsi/mvme16x.h | |||
@@ -9,7 +9,7 @@ int NCR53c7xx_queue_command(Scsi_Cmnd *, void (*done)(Scsi_Cmnd *)); | |||
9 | int NCR53c7xx_abort(Scsi_Cmnd *); | 9 | int NCR53c7xx_abort(Scsi_Cmnd *); |
10 | int NCR53c7x0_release (struct Scsi_Host *); | 10 | int NCR53c7x0_release (struct Scsi_Host *); |
11 | int NCR53c7xx_reset(Scsi_Cmnd *, unsigned int); | 11 | int NCR53c7xx_reset(Scsi_Cmnd *, unsigned int); |
12 | void NCR53c7x0_intr(int irq, void *dev_id, struct pt_regs * regs); | 12 | void NCR53c7x0_intr(int irq, void *dev_id); |
13 | 13 | ||
14 | #ifndef CMD_PER_LUN | 14 | #ifndef CMD_PER_LUN |
15 | #define CMD_PER_LUN 3 | 15 | #define CMD_PER_LUN 3 |
diff --git a/drivers/scsi/ncr53c8xx.c b/drivers/scsi/ncr53c8xx.c index b28712df0b77..6cc2bc2f62be 100644 --- a/drivers/scsi/ncr53c8xx.c +++ b/drivers/scsi/ncr53c8xx.c | |||
@@ -8111,7 +8111,7 @@ printk("ncr53c8xx : command successfully queued\n"); | |||
8111 | return sts; | 8111 | return sts; |
8112 | } | 8112 | } |
8113 | 8113 | ||
8114 | irqreturn_t ncr53c8xx_intr(int irq, void *dev_id, struct pt_regs * regs) | 8114 | irqreturn_t ncr53c8xx_intr(int irq, void *dev_id) |
8115 | { | 8115 | { |
8116 | unsigned long flags; | 8116 | unsigned long flags; |
8117 | struct Scsi_Host *shost = (struct Scsi_Host *)dev_id; | 8117 | struct Scsi_Host *shost = (struct Scsi_Host *)dev_id; |
diff --git a/drivers/scsi/ncr53c8xx.h b/drivers/scsi/ncr53c8xx.h index 78818b6684f8..cb8b7701431e 100644 --- a/drivers/scsi/ncr53c8xx.h +++ b/drivers/scsi/ncr53c8xx.h | |||
@@ -1322,7 +1322,7 @@ struct ncr_device { | |||
1322 | 1322 | ||
1323 | extern struct Scsi_Host *ncr_attach(struct scsi_host_template *tpnt, int unit, struct ncr_device *device); | 1323 | extern struct Scsi_Host *ncr_attach(struct scsi_host_template *tpnt, int unit, struct ncr_device *device); |
1324 | extern int ncr53c8xx_release(struct Scsi_Host *host); | 1324 | extern int ncr53c8xx_release(struct Scsi_Host *host); |
1325 | irqreturn_t ncr53c8xx_intr(int irq, void *dev_id, struct pt_regs * regs); | 1325 | irqreturn_t ncr53c8xx_intr(int irq, void *dev_id); |
1326 | extern int ncr53c8xx_init(void); | 1326 | extern int ncr53c8xx_init(void); |
1327 | extern void ncr53c8xx_exit(void); | 1327 | extern void ncr53c8xx_exit(void); |
1328 | 1328 | ||
diff --git a/drivers/scsi/nsp32.c b/drivers/scsi/nsp32.c index 1c624ce81897..7c13f6f4a4c6 100644 --- a/drivers/scsi/nsp32.c +++ b/drivers/scsi/nsp32.c | |||
@@ -256,7 +256,7 @@ static void nsp32_sack_negate (nsp32_hw_data *); | |||
256 | static void nsp32_do_bus_reset(nsp32_hw_data *); | 256 | static void nsp32_do_bus_reset(nsp32_hw_data *); |
257 | 257 | ||
258 | /* hardware interrupt handler */ | 258 | /* hardware interrupt handler */ |
259 | static irqreturn_t do_nsp32_isr(int, void *, struct pt_regs *); | 259 | static irqreturn_t do_nsp32_isr(int, void *); |
260 | 260 | ||
261 | /* initialize hardware */ | 261 | /* initialize hardware */ |
262 | static int nsp32hw_init(nsp32_hw_data *); | 262 | static int nsp32hw_init(nsp32_hw_data *); |
@@ -1201,7 +1201,7 @@ static int nsp32hw_init(nsp32_hw_data *data) | |||
1201 | 1201 | ||
1202 | 1202 | ||
1203 | /* interrupt routine */ | 1203 | /* interrupt routine */ |
1204 | static irqreturn_t do_nsp32_isr(int irq, void *dev_id, struct pt_regs *regs) | 1204 | static irqreturn_t do_nsp32_isr(int irq, void *dev_id) |
1205 | { | 1205 | { |
1206 | nsp32_hw_data *data = dev_id; | 1206 | nsp32_hw_data *data = dev_id; |
1207 | unsigned int base = data->BaseAddress; | 1207 | unsigned int base = data->BaseAddress; |
diff --git a/drivers/scsi/pcmcia/nsp_cs.c b/drivers/scsi/pcmcia/nsp_cs.c index 053303d36118..b1d346049525 100644 --- a/drivers/scsi/pcmcia/nsp_cs.c +++ b/drivers/scsi/pcmcia/nsp_cs.c | |||
@@ -948,7 +948,7 @@ static int nsp_nexus(Scsi_Cmnd *SCpnt) | |||
948 | /* | 948 | /* |
949 | * interrupt handler | 949 | * interrupt handler |
950 | */ | 950 | */ |
951 | static irqreturn_t nspintr(int irq, void *dev_id, struct pt_regs *regs) | 951 | static irqreturn_t nspintr(int irq, void *dev_id) |
952 | { | 952 | { |
953 | unsigned int base; | 953 | unsigned int base; |
954 | unsigned char irq_status, irq_phase, phase; | 954 | unsigned char irq_status, irq_phase, phase; |
diff --git a/drivers/scsi/pcmcia/nsp_cs.h b/drivers/scsi/pcmcia/nsp_cs.h index 8908b8e5b78a..a88714f4c05b 100644 --- a/drivers/scsi/pcmcia/nsp_cs.h +++ b/drivers/scsi/pcmcia/nsp_cs.h | |||
@@ -346,7 +346,7 @@ static int nsp_reselected (Scsi_Cmnd *SCpnt); | |||
346 | static struct Scsi_Host *nsp_detect(struct scsi_host_template *sht); | 346 | static struct Scsi_Host *nsp_detect(struct scsi_host_template *sht); |
347 | 347 | ||
348 | /* Interrupt handler */ | 348 | /* Interrupt handler */ |
349 | //static irqreturn_t nspintr(int irq, void *dev_id, struct pt_regs *regs); | 349 | //static irqreturn_t nspintr(int irq, void *dev_id); |
350 | 350 | ||
351 | /* Module entry point*/ | 351 | /* Module entry point*/ |
352 | static int __init nsp_cs_init(void); | 352 | static int __init nsp_cs_init(void); |
diff --git a/drivers/scsi/pcmcia/sym53c500_cs.c b/drivers/scsi/pcmcia/sym53c500_cs.c index 0b65099acb1a..72fe5d055de1 100644 --- a/drivers/scsi/pcmcia/sym53c500_cs.c +++ b/drivers/scsi/pcmcia/sym53c500_cs.c | |||
@@ -363,7 +363,7 @@ SYM53C500_pio_write(int fast_pio, int base, unsigned char *request, unsigned int | |||
363 | } | 363 | } |
364 | 364 | ||
365 | static irqreturn_t | 365 | static irqreturn_t |
366 | SYM53C500_intr(int irq, void *dev_id, struct pt_regs *regs) | 366 | SYM53C500_intr(int irq, void *dev_id) |
367 | { | 367 | { |
368 | unsigned long flags; | 368 | unsigned long flags; |
369 | struct Scsi_Host *dev = dev_id; | 369 | struct Scsi_Host *dev = dev_id; |
diff --git a/drivers/scsi/psi240i.c b/drivers/scsi/psi240i.c index 5c2cdf523c3b..a720c9265e66 100644 --- a/drivers/scsi/psi240i.c +++ b/drivers/scsi/psi240i.c | |||
@@ -247,12 +247,11 @@ static ULONG DecodeError (struct Scsi_Host *pshost, UCHAR status) | |||
247 | * | 247 | * |
248 | * Parameters: irq - Hardware IRQ number. | 248 | * Parameters: irq - Hardware IRQ number. |
249 | * dev_id - | 249 | * dev_id - |
250 | * regs - | ||
251 | * | 250 | * |
252 | * Returns: TRUE if drive is not ready in time. | 251 | * Returns: TRUE if drive is not ready in time. |
253 | * | 252 | * |
254 | ****************************************************************/ | 253 | ****************************************************************/ |
255 | static void Irq_Handler (int irq, void *dev_id, struct pt_regs *regs) | 254 | static void Irq_Handler (int irq, void *dev_id) |
256 | { | 255 | { |
257 | struct Scsi_Host *shost; // Pointer to host data block | 256 | struct Scsi_Host *shost; // Pointer to host data block |
258 | PADAPTER240I padapter; // Pointer to adapter control structure | 257 | PADAPTER240I padapter; // Pointer to adapter control structure |
@@ -368,13 +367,13 @@ irqerror:; | |||
368 | SCpnt->scsi_done (SCpnt); | 367 | SCpnt->scsi_done (SCpnt); |
369 | } | 368 | } |
370 | 369 | ||
371 | static irqreturn_t do_Irq_Handler (int irq, void *dev_id, struct pt_regs *regs) | 370 | static irqreturn_t do_Irq_Handler (int irq, void *dev_id) |
372 | { | 371 | { |
373 | unsigned long flags; | 372 | unsigned long flags; |
374 | struct Scsi_Host *dev = dev_id; | 373 | struct Scsi_Host *dev = dev_id; |
375 | 374 | ||
376 | spin_lock_irqsave(dev->host_lock, flags); | 375 | spin_lock_irqsave(dev->host_lock, flags); |
377 | Irq_Handler(irq, dev_id, regs); | 376 | Irq_Handler(irq, dev_id); |
378 | spin_unlock_irqrestore(dev->host_lock, flags); | 377 | spin_unlock_irqrestore(dev->host_lock, flags); |
379 | return IRQ_HANDLED; | 378 | return IRQ_HANDLED; |
380 | } | 379 | } |
diff --git a/drivers/scsi/qla1280.c b/drivers/scsi/qla1280.c index 9f33e5946c0d..2521d548dd59 100644 --- a/drivers/scsi/qla1280.c +++ b/drivers/scsi/qla1280.c | |||
@@ -1113,7 +1113,7 @@ qla1280_enable_intrs(struct scsi_qla_host *ha) | |||
1113 | * Handles the H/W interrupt | 1113 | * Handles the H/W interrupt |
1114 | **************************************************************************/ | 1114 | **************************************************************************/ |
1115 | static irqreturn_t | 1115 | static irqreturn_t |
1116 | qla1280_intr_handler(int irq, void *dev_id, struct pt_regs *regs) | 1116 | qla1280_intr_handler(int irq, void *dev_id) |
1117 | { | 1117 | { |
1118 | struct scsi_qla_host *ha; | 1118 | struct scsi_qla_host *ha; |
1119 | struct device_reg __iomem *reg; | 1119 | struct device_reg __iomem *reg; |
diff --git a/drivers/scsi/qla2xxx/qla_dbg.h b/drivers/scsi/qla2xxx/qla_dbg.h index 533425338e05..90dad7e88985 100644 --- a/drivers/scsi/qla2xxx/qla_dbg.h +++ b/drivers/scsi/qla2xxx/qla_dbg.h | |||
@@ -38,7 +38,7 @@ | |||
38 | * Macros use for debugging the driver. | 38 | * Macros use for debugging the driver. |
39 | */ | 39 | */ |
40 | 40 | ||
41 | #define DEBUG(x) do { if (extended_error_logging) { x; } } while (0) | 41 | #define DEBUG(x) do { if (qla2_extended_error_logging) { x; } } while (0) |
42 | 42 | ||
43 | #if defined(QL_DEBUG_LEVEL_1) | 43 | #if defined(QL_DEBUG_LEVEL_1) |
44 | #define DEBUG1(x) do {x;} while (0) | 44 | #define DEBUG1(x) do {x;} while (0) |
@@ -46,12 +46,12 @@ | |||
46 | #define DEBUG1(x) do {} while (0) | 46 | #define DEBUG1(x) do {} while (0) |
47 | #endif | 47 | #endif |
48 | 48 | ||
49 | #define DEBUG2(x) do { if (extended_error_logging) { x; } } while (0) | 49 | #define DEBUG2(x) do { if (qla2_extended_error_logging) { x; } } while (0) |
50 | #define DEBUG2_3(x) do { if (extended_error_logging) { x; } } while (0) | 50 | #define DEBUG2_3(x) do { if (qla2_extended_error_logging) { x; } } while (0) |
51 | #define DEBUG2_3_11(x) do { if (extended_error_logging) { x; } } while (0) | 51 | #define DEBUG2_3_11(x) do { if (qla2_extended_error_logging) { x; } } while (0) |
52 | #define DEBUG2_9_10(x) do { if (extended_error_logging) { x; } } while (0) | 52 | #define DEBUG2_9_10(x) do { if (qla2_extended_error_logging) { x; } } while (0) |
53 | #define DEBUG2_11(x) do { if (extended_error_logging) { x; } } while (0) | 53 | #define DEBUG2_11(x) do { if (qla2_extended_error_logging) { x; } } while (0) |
54 | #define DEBUG2_13(x) do { if (extended_error_logging) { x; } } while (0) | 54 | #define DEBUG2_13(x) do { if (qla2_extended_error_logging) { x; } } while (0) |
55 | 55 | ||
56 | #if defined(QL_DEBUG_LEVEL_3) | 56 | #if defined(QL_DEBUG_LEVEL_3) |
57 | #define DEBUG3(x) do {x;} while (0) | 57 | #define DEBUG3(x) do {x;} while (0) |
diff --git a/drivers/scsi/qla2xxx/qla_def.h b/drivers/scsi/qla2xxx/qla_def.h index c37a30aa2146..bab33f6d0bdb 100644 --- a/drivers/scsi/qla2xxx/qla_def.h +++ b/drivers/scsi/qla2xxx/qla_def.h | |||
@@ -2009,7 +2009,7 @@ struct isp_operations { | |||
2009 | char * (*pci_info_str) (struct scsi_qla_host *, char *); | 2009 | char * (*pci_info_str) (struct scsi_qla_host *, char *); |
2010 | char * (*fw_version_str) (struct scsi_qla_host *, char *); | 2010 | char * (*fw_version_str) (struct scsi_qla_host *, char *); |
2011 | 2011 | ||
2012 | irqreturn_t (*intr_handler) (int, void *, struct pt_regs *); | 2012 | irq_handler_t intr_handler; |
2013 | void (*enable_intrs) (struct scsi_qla_host *); | 2013 | void (*enable_intrs) (struct scsi_qla_host *); |
2014 | void (*disable_intrs) (struct scsi_qla_host *); | 2014 | void (*disable_intrs) (struct scsi_qla_host *); |
2015 | 2015 | ||
diff --git a/drivers/scsi/qla2xxx/qla_gbl.h b/drivers/scsi/qla2xxx/qla_gbl.h index bef7011378c6..7da69832d74c 100644 --- a/drivers/scsi/qla2xxx/qla_gbl.h +++ b/drivers/scsi/qla2xxx/qla_gbl.h | |||
@@ -60,7 +60,7 @@ extern int ql2xplogiabsentdevice; | |||
60 | extern int ql2xloginretrycount; | 60 | extern int ql2xloginretrycount; |
61 | extern int ql2xfdmienable; | 61 | extern int ql2xfdmienable; |
62 | extern int ql2xallocfwdump; | 62 | extern int ql2xallocfwdump; |
63 | extern int extended_error_logging; | 63 | extern int qla2_extended_error_logging; |
64 | 64 | ||
65 | extern void qla2x00_sp_compl(scsi_qla_host_t *, srb_t *); | 65 | extern void qla2x00_sp_compl(scsi_qla_host_t *, srb_t *); |
66 | 66 | ||
@@ -217,9 +217,9 @@ qla2x00_set_idma_speed(scsi_qla_host_t *, uint16_t, uint16_t, uint16_t *); | |||
217 | /* | 217 | /* |
218 | * Global Function Prototypes in qla_isr.c source file. | 218 | * Global Function Prototypes in qla_isr.c source file. |
219 | */ | 219 | */ |
220 | extern irqreturn_t qla2100_intr_handler(int, void *, struct pt_regs *); | 220 | extern irqreturn_t qla2100_intr_handler(int, void *); |
221 | extern irqreturn_t qla2300_intr_handler(int, void *, struct pt_regs *); | 221 | extern irqreturn_t qla2300_intr_handler(int, void *); |
222 | extern irqreturn_t qla24xx_intr_handler(int, void *, struct pt_regs *); | 222 | extern irqreturn_t qla24xx_intr_handler(int, void *); |
223 | extern void qla2x00_process_response_queue(struct scsi_qla_host *); | 223 | extern void qla2x00_process_response_queue(struct scsi_qla_host *); |
224 | extern void qla24xx_process_response_queue(struct scsi_qla_host *); | 224 | extern void qla24xx_process_response_queue(struct scsi_qla_host *); |
225 | 225 | ||
diff --git a/drivers/scsi/qla2xxx/qla_init.c b/drivers/scsi/qla2xxx/qla_init.c index d5d26273c04e..833b93085fd3 100644 --- a/drivers/scsi/qla2xxx/qla_init.c +++ b/drivers/scsi/qla2xxx/qla_init.c | |||
@@ -1644,7 +1644,7 @@ qla2x00_nvram_config(scsi_qla_host_t *ha) | |||
1644 | * Set host adapter parameters. | 1644 | * Set host adapter parameters. |
1645 | */ | 1645 | */ |
1646 | if (nv->host_p[0] & BIT_7) | 1646 | if (nv->host_p[0] & BIT_7) |
1647 | extended_error_logging = 1; | 1647 | qla2_extended_error_logging = 1; |
1648 | ha->flags.disable_risc_code_load = ((nv->host_p[0] & BIT_4) ? 1 : 0); | 1648 | ha->flags.disable_risc_code_load = ((nv->host_p[0] & BIT_4) ? 1 : 0); |
1649 | /* Always load RISC code on non ISP2[12]00 chips. */ | 1649 | /* Always load RISC code on non ISP2[12]00 chips. */ |
1650 | if (!IS_QLA2100(ha) && !IS_QLA2200(ha)) | 1650 | if (!IS_QLA2100(ha) && !IS_QLA2200(ha)) |
diff --git a/drivers/scsi/qla2xxx/qla_inline.h b/drivers/scsi/qla2xxx/qla_inline.h index 45007ee58067..d3023338628f 100644 --- a/drivers/scsi/qla2xxx/qla_inline.h +++ b/drivers/scsi/qla2xxx/qla_inline.h | |||
@@ -104,7 +104,7 @@ static __inline__ void qla2x00_poll(scsi_qla_host_t *); | |||
104 | static inline void | 104 | static inline void |
105 | qla2x00_poll(scsi_qla_host_t *ha) | 105 | qla2x00_poll(scsi_qla_host_t *ha) |
106 | { | 106 | { |
107 | ha->isp_ops.intr_handler(0, ha, NULL); | 107 | ha->isp_ops.intr_handler(0, ha); |
108 | } | 108 | } |
109 | 109 | ||
110 | static __inline__ void qla2x00_check_fabric_devices(scsi_qla_host_t *); | 110 | static __inline__ void qla2x00_check_fabric_devices(scsi_qla_host_t *); |
diff --git a/drivers/scsi/qla2xxx/qla_isr.c b/drivers/scsi/qla2xxx/qla_isr.c index 5fa933cda992..626c7178a434 100644 --- a/drivers/scsi/qla2xxx/qla_isr.c +++ b/drivers/scsi/qla2xxx/qla_isr.c | |||
@@ -20,14 +20,13 @@ static void qla24xx_ms_entry(scsi_qla_host_t *, struct ct_entry_24xx *); | |||
20 | * qla2100_intr_handler() - Process interrupts for the ISP2100 and ISP2200. | 20 | * qla2100_intr_handler() - Process interrupts for the ISP2100 and ISP2200. |
21 | * @irq: | 21 | * @irq: |
22 | * @dev_id: SCSI driver HA context | 22 | * @dev_id: SCSI driver HA context |
23 | * @regs: | ||
24 | * | 23 | * |
25 | * Called by system whenever the host adapter generates an interrupt. | 24 | * Called by system whenever the host adapter generates an interrupt. |
26 | * | 25 | * |
27 | * Returns handled flag. | 26 | * Returns handled flag. |
28 | */ | 27 | */ |
29 | irqreturn_t | 28 | irqreturn_t |
30 | qla2100_intr_handler(int irq, void *dev_id, struct pt_regs *regs) | 29 | qla2100_intr_handler(int irq, void *dev_id) |
31 | { | 30 | { |
32 | scsi_qla_host_t *ha; | 31 | scsi_qla_host_t *ha; |
33 | struct device_reg_2xxx __iomem *reg; | 32 | struct device_reg_2xxx __iomem *reg; |
@@ -100,14 +99,13 @@ qla2100_intr_handler(int irq, void *dev_id, struct pt_regs *regs) | |||
100 | * qla2300_intr_handler() - Process interrupts for the ISP23xx and ISP63xx. | 99 | * qla2300_intr_handler() - Process interrupts for the ISP23xx and ISP63xx. |
101 | * @irq: | 100 | * @irq: |
102 | * @dev_id: SCSI driver HA context | 101 | * @dev_id: SCSI driver HA context |
103 | * @regs: | ||
104 | * | 102 | * |
105 | * Called by system whenever the host adapter generates an interrupt. | 103 | * Called by system whenever the host adapter generates an interrupt. |
106 | * | 104 | * |
107 | * Returns handled flag. | 105 | * Returns handled flag. |
108 | */ | 106 | */ |
109 | irqreturn_t | 107 | irqreturn_t |
110 | qla2300_intr_handler(int irq, void *dev_id, struct pt_regs *regs) | 108 | qla2300_intr_handler(int irq, void *dev_id) |
111 | { | 109 | { |
112 | scsi_qla_host_t *ha; | 110 | scsi_qla_host_t *ha; |
113 | struct device_reg_2xxx __iomem *reg; | 111 | struct device_reg_2xxx __iomem *reg; |
@@ -1338,14 +1336,13 @@ qla24xx_process_response_queue(struct scsi_qla_host *ha) | |||
1338 | * qla24xx_intr_handler() - Process interrupts for the ISP23xx and ISP63xx. | 1336 | * qla24xx_intr_handler() - Process interrupts for the ISP23xx and ISP63xx. |
1339 | * @irq: | 1337 | * @irq: |
1340 | * @dev_id: SCSI driver HA context | 1338 | * @dev_id: SCSI driver HA context |
1341 | * @regs: | ||
1342 | * | 1339 | * |
1343 | * Called by system whenever the host adapter generates an interrupt. | 1340 | * Called by system whenever the host adapter generates an interrupt. |
1344 | * | 1341 | * |
1345 | * Returns handled flag. | 1342 | * Returns handled flag. |
1346 | */ | 1343 | */ |
1347 | irqreturn_t | 1344 | irqreturn_t |
1348 | qla24xx_intr_handler(int irq, void *dev_id, struct pt_regs *regs) | 1345 | qla24xx_intr_handler(int irq, void *dev_id) |
1349 | { | 1346 | { |
1350 | scsi_qla_host_t *ha; | 1347 | scsi_qla_host_t *ha; |
1351 | struct device_reg_24xx __iomem *reg; | 1348 | struct device_reg_24xx __iomem *reg; |
diff --git a/drivers/scsi/qla2xxx/qla_os.c b/drivers/scsi/qla2xxx/qla_os.c index 3ba8c239f171..3f20d765563e 100644 --- a/drivers/scsi/qla2xxx/qla_os.c +++ b/drivers/scsi/qla2xxx/qla_os.c | |||
@@ -61,9 +61,9 @@ MODULE_PARM_DESC(ql2xallocfwdump, | |||
61 | "during HBA initialization. Memory allocation requirements " | 61 | "during HBA initialization. Memory allocation requirements " |
62 | "vary by ISP type. Default is 1 - allocate memory."); | 62 | "vary by ISP type. Default is 1 - allocate memory."); |
63 | 63 | ||
64 | int extended_error_logging; | 64 | int qla2_extended_error_logging; |
65 | module_param(extended_error_logging, int, S_IRUGO|S_IRUSR); | 65 | module_param(qla2_extended_error_logging, int, S_IRUGO|S_IRUSR); |
66 | MODULE_PARM_DESC(extended_error_logging, | 66 | MODULE_PARM_DESC(qla2_extended_error_logging, |
67 | "Option to enable extended error logging, " | 67 | "Option to enable extended error logging, " |
68 | "Default is 0 - no logging. 1 - log errors."); | 68 | "Default is 0 - no logging. 1 - log errors."); |
69 | 69 | ||
@@ -2697,7 +2697,7 @@ qla2x00_module_init(void) | |||
2697 | 2697 | ||
2698 | /* Derive version string. */ | 2698 | /* Derive version string. */ |
2699 | strcpy(qla2x00_version_str, QLA2XXX_VERSION); | 2699 | strcpy(qla2x00_version_str, QLA2XXX_VERSION); |
2700 | if (extended_error_logging) | 2700 | if (qla2_extended_error_logging) |
2701 | strcat(qla2x00_version_str, "-debug"); | 2701 | strcat(qla2x00_version_str, "-debug"); |
2702 | 2702 | ||
2703 | qla2xxx_transport_template = | 2703 | qla2xxx_transport_template = |
diff --git a/drivers/scsi/qla4xxx/ql4_dbg.h b/drivers/scsi/qla4xxx/ql4_dbg.h index 56ddc227f846..3e99dcfd5a9f 100644 --- a/drivers/scsi/qla4xxx/ql4_dbg.h +++ b/drivers/scsi/qla4xxx/ql4_dbg.h | |||
@@ -22,14 +22,14 @@ | |||
22 | #endif | 22 | #endif |
23 | 23 | ||
24 | #if defined(QL_DEBUG_LEVEL_2) | 24 | #if defined(QL_DEBUG_LEVEL_2) |
25 | #define DEBUG2(x) do {if(extended_error_logging == 2) x;} while (0); | 25 | #define DEBUG2(x) do {if(qla4_extended_error_logging == 2) x;} while (0); |
26 | #define DEBUG2_3(x) do {x;} while (0); | 26 | #define DEBUG2_3(x) do {x;} while (0); |
27 | #else /* */ | 27 | #else /* */ |
28 | #define DEBUG2(x) do {} while (0); | 28 | #define DEBUG2(x) do {} while (0); |
29 | #endif /* */ | 29 | #endif /* */ |
30 | 30 | ||
31 | #if defined(QL_DEBUG_LEVEL_3) | 31 | #if defined(QL_DEBUG_LEVEL_3) |
32 | #define DEBUG3(x) do {if(extended_error_logging == 3) x;} while (0); | 32 | #define DEBUG3(x) do {if(qla4_extended_error_logging == 3) x;} while (0); |
33 | #else /* */ | 33 | #else /* */ |
34 | #define DEBUG3(x) do {} while (0); | 34 | #define DEBUG3(x) do {} while (0); |
35 | #if !defined(QL_DEBUG_LEVEL_2) | 35 | #if !defined(QL_DEBUG_LEVEL_2) |
diff --git a/drivers/scsi/qla4xxx/ql4_glbl.h b/drivers/scsi/qla4xxx/ql4_glbl.h index 418fb7a13a65..2c803edf2de8 100644 --- a/drivers/scsi/qla4xxx/ql4_glbl.h +++ b/drivers/scsi/qla4xxx/ql4_glbl.h | |||
@@ -13,7 +13,7 @@ int qla4xxx_send_command_to_isp(struct scsi_qla_host *ha, struct srb * srb); | |||
13 | int qla4xxx_initialize_adapter(struct scsi_qla_host * ha, | 13 | int qla4xxx_initialize_adapter(struct scsi_qla_host * ha, |
14 | uint8_t renew_ddb_list); | 14 | uint8_t renew_ddb_list); |
15 | int qla4xxx_soft_reset(struct scsi_qla_host *ha); | 15 | int qla4xxx_soft_reset(struct scsi_qla_host *ha); |
16 | irqreturn_t qla4xxx_intr_handler(int irq, void *dev_id, struct pt_regs *regs); | 16 | irqreturn_t qla4xxx_intr_handler(int irq, void *dev_id); |
17 | 17 | ||
18 | void qla4xxx_free_ddb_list(struct scsi_qla_host * ha); | 18 | void qla4xxx_free_ddb_list(struct scsi_qla_host * ha); |
19 | void qla4xxx_process_aen(struct scsi_qla_host * ha, uint8_t process_aen); | 19 | void qla4xxx_process_aen(struct scsi_qla_host * ha, uint8_t process_aen); |
@@ -72,7 +72,7 @@ int qla4xxx_reinitialize_ddb_list(struct scsi_qla_host * ha); | |||
72 | int qla4xxx_process_ddb_changed(struct scsi_qla_host * ha, | 72 | int qla4xxx_process_ddb_changed(struct scsi_qla_host * ha, |
73 | uint32_t fw_ddb_index, uint32_t state); | 73 | uint32_t fw_ddb_index, uint32_t state); |
74 | 74 | ||
75 | extern int extended_error_logging; | 75 | extern int qla4_extended_error_logging; |
76 | extern int ql4xdiscoverywait; | 76 | extern int ql4xdiscoverywait; |
77 | extern int ql4xdontresethba; | 77 | extern int ql4xdontresethba; |
78 | #endif /* _QLA4x_GBL_H */ | 78 | #endif /* _QLA4x_GBL_H */ |
diff --git a/drivers/scsi/qla4xxx/ql4_isr.c b/drivers/scsi/qla4xxx/ql4_isr.c index b584317608d1..1e283321a59d 100644 --- a/drivers/scsi/qla4xxx/ql4_isr.c +++ b/drivers/scsi/qla4xxx/ql4_isr.c | |||
@@ -610,9 +610,8 @@ void qla4xxx_interrupt_service_routine(struct scsi_qla_host * ha, | |||
610 | * qla4xxx_intr_handler - hardware interrupt handler. | 610 | * qla4xxx_intr_handler - hardware interrupt handler. |
611 | * @irq: Unused | 611 | * @irq: Unused |
612 | * @dev_id: Pointer to host adapter structure | 612 | * @dev_id: Pointer to host adapter structure |
613 | * @regs: Unused | ||
614 | **/ | 613 | **/ |
615 | irqreturn_t qla4xxx_intr_handler(int irq, void *dev_id, struct pt_regs *regs) | 614 | irqreturn_t qla4xxx_intr_handler(int irq, void *dev_id) |
616 | { | 615 | { |
617 | struct scsi_qla_host *ha; | 616 | struct scsi_qla_host *ha; |
618 | uint32_t intr_status; | 617 | uint32_t intr_status; |
diff --git a/drivers/scsi/qla4xxx/ql4_mbx.c b/drivers/scsi/qla4xxx/ql4_mbx.c index ed977f70b2db..ef82399c0858 100644 --- a/drivers/scsi/qla4xxx/ql4_mbx.c +++ b/drivers/scsi/qla4xxx/ql4_mbx.c | |||
@@ -701,7 +701,7 @@ void qla4xxx_get_conn_event_log(struct scsi_qla_host * ha) | |||
701 | DEBUG3(printk("scsi%ld: Connection Event Log Dump (%d entries):\n", | 701 | DEBUG3(printk("scsi%ld: Connection Event Log Dump (%d entries):\n", |
702 | ha->host_no, num_valid_entries)); | 702 | ha->host_no, num_valid_entries)); |
703 | 703 | ||
704 | if (extended_error_logging == 3) { | 704 | if (qla4_extended_error_logging == 3) { |
705 | if (oldest_entry == 0) { | 705 | if (oldest_entry == 0) { |
706 | /* Circular Buffer has not wrapped around */ | 706 | /* Circular Buffer has not wrapped around */ |
707 | for (i=0; i < num_valid_entries; i++) { | 707 | for (i=0; i < num_valid_entries; i++) { |
diff --git a/drivers/scsi/qla4xxx/ql4_os.c b/drivers/scsi/qla4xxx/ql4_os.c index 5036ebf013a5..178fcddcfd81 100644 --- a/drivers/scsi/qla4xxx/ql4_os.c +++ b/drivers/scsi/qla4xxx/ql4_os.c | |||
@@ -34,9 +34,9 @@ MODULE_PARM_DESC(ql4xdontresethba, | |||
34 | " default it will reset hba :0" | 34 | " default it will reset hba :0" |
35 | " set to 1 to avoid resetting HBA"); | 35 | " set to 1 to avoid resetting HBA"); |
36 | 36 | ||
37 | int extended_error_logging = 0; /* 0 = off, 1 = log errors */ | 37 | int qla4_extended_error_logging = 0; /* 0 = off, 1 = log errors */ |
38 | module_param(extended_error_logging, int, S_IRUGO | S_IRUSR); | 38 | module_param(qla4_extended_error_logging, int, S_IRUGO | S_IRUSR); |
39 | MODULE_PARM_DESC(extended_error_logging, | 39 | MODULE_PARM_DESC(qla4_extended_error_logging, |
40 | "Option to enable extended error logging, " | 40 | "Option to enable extended error logging, " |
41 | "Default is 0 - no logging, 1 - debug logging"); | 41 | "Default is 0 - no logging, 1 - debug logging"); |
42 | 42 | ||
@@ -1714,7 +1714,7 @@ static int __init qla4xxx_module_init(void) | |||
1714 | 1714 | ||
1715 | /* Derive version string. */ | 1715 | /* Derive version string. */ |
1716 | strcpy(qla4xxx_version_str, QLA4XXX_DRIVER_VERSION); | 1716 | strcpy(qla4xxx_version_str, QLA4XXX_DRIVER_VERSION); |
1717 | if (extended_error_logging) | 1717 | if (qla4_extended_error_logging) |
1718 | strcat(qla4xxx_version_str, "-debug"); | 1718 | strcat(qla4xxx_version_str, "-debug"); |
1719 | 1719 | ||
1720 | qla4xxx_scsi_transport = | 1720 | qla4xxx_scsi_transport = |
diff --git a/drivers/scsi/qlogicfas408.c b/drivers/scsi/qlogicfas408.c index 52fb2ec3da70..e0725353c99c 100644 --- a/drivers/scsi/qlogicfas408.c +++ b/drivers/scsi/qlogicfas408.c | |||
@@ -405,10 +405,10 @@ static unsigned int ql_pcmd(Scsi_Cmnd * cmd) | |||
405 | * Interrupt handler | 405 | * Interrupt handler |
406 | */ | 406 | */ |
407 | 407 | ||
408 | static void ql_ihandl(int irq, void *dev_id, struct pt_regs *regs) | 408 | static void ql_ihandl(void *dev_id) |
409 | { | 409 | { |
410 | Scsi_Cmnd *icmd; | 410 | Scsi_Cmnd *icmd; |
411 | struct Scsi_Host *host = (struct Scsi_Host *)dev_id; | 411 | struct Scsi_Host *host = dev_id; |
412 | struct qlogicfas408_priv *priv = get_priv_by_host(host); | 412 | struct qlogicfas408_priv *priv = get_priv_by_host(host); |
413 | int qbase = priv->qbase; | 413 | int qbase = priv->qbase; |
414 | REG0; | 414 | REG0; |
@@ -432,13 +432,13 @@ static void ql_ihandl(int irq, void *dev_id, struct pt_regs *regs) | |||
432 | (icmd->scsi_done) (icmd); | 432 | (icmd->scsi_done) (icmd); |
433 | } | 433 | } |
434 | 434 | ||
435 | irqreturn_t qlogicfas408_ihandl(int irq, void *dev_id, struct pt_regs *regs) | 435 | irqreturn_t qlogicfas408_ihandl(int irq, void *dev_id) |
436 | { | 436 | { |
437 | unsigned long flags; | 437 | unsigned long flags; |
438 | struct Scsi_Host *host = dev_id; | 438 | struct Scsi_Host *host = dev_id; |
439 | 439 | ||
440 | spin_lock_irqsave(host->host_lock, flags); | 440 | spin_lock_irqsave(host->host_lock, flags); |
441 | ql_ihandl(irq, dev_id, regs); | 441 | ql_ihandl(dev_id); |
442 | spin_unlock_irqrestore(host->host_lock, flags); | 442 | spin_unlock_irqrestore(host->host_lock, flags); |
443 | return IRQ_HANDLED; | 443 | return IRQ_HANDLED; |
444 | } | 444 | } |
diff --git a/drivers/scsi/qlogicfas408.h b/drivers/scsi/qlogicfas408.h index 4b3df2003660..8fd5555c75b1 100644 --- a/drivers/scsi/qlogicfas408.h +++ b/drivers/scsi/qlogicfas408.h | |||
@@ -102,7 +102,7 @@ struct qlogicfas408_priv { | |||
102 | #define get_priv_by_cmd(x) (struct qlogicfas408_priv *)&((x)->device->host->hostdata[0]) | 102 | #define get_priv_by_cmd(x) (struct qlogicfas408_priv *)&((x)->device->host->hostdata[0]) |
103 | #define get_priv_by_host(x) (struct qlogicfas408_priv *)&((x)->hostdata[0]) | 103 | #define get_priv_by_host(x) (struct qlogicfas408_priv *)&((x)->hostdata[0]) |
104 | 104 | ||
105 | irqreturn_t qlogicfas408_ihandl(int irq, void *dev_id, struct pt_regs *regs); | 105 | irqreturn_t qlogicfas408_ihandl(int irq, void *dev_id); |
106 | int qlogicfas408_queuecommand(Scsi_Cmnd * cmd, void (*done) (Scsi_Cmnd *)); | 106 | int qlogicfas408_queuecommand(Scsi_Cmnd * cmd, void (*done) (Scsi_Cmnd *)); |
107 | int qlogicfas408_biosparam(struct scsi_device * disk, | 107 | int qlogicfas408_biosparam(struct scsi_device * disk, |
108 | struct block_device *dev, | 108 | struct block_device *dev, |
diff --git a/drivers/scsi/qlogicpti.c b/drivers/scsi/qlogicpti.c index 5b2f0741a55b..ed58bb489889 100644 --- a/drivers/scsi/qlogicpti.c +++ b/drivers/scsi/qlogicpti.c | |||
@@ -649,7 +649,7 @@ static int qlogicpti_verify_tmon(struct qlogicpti *qpti) | |||
649 | return 0; | 649 | return 0; |
650 | } | 650 | } |
651 | 651 | ||
652 | static irqreturn_t qpti_intr(int irq, void *dev_id, struct pt_regs *regs); | 652 | static irqreturn_t qpti_intr(int irq, void *dev_id); |
653 | 653 | ||
654 | static void __init qpti_chain_add(struct qlogicpti *qpti) | 654 | static void __init qpti_chain_add(struct qlogicpti *qpti) |
655 | { | 655 | { |
@@ -1297,7 +1297,7 @@ static struct scsi_cmnd *qlogicpti_intr_handler(struct qlogicpti *qpti) | |||
1297 | return done_queue; | 1297 | return done_queue; |
1298 | } | 1298 | } |
1299 | 1299 | ||
1300 | static irqreturn_t qpti_intr(int irq, void *dev_id, struct pt_regs *regs) | 1300 | static irqreturn_t qpti_intr(int irq, void *dev_id) |
1301 | { | 1301 | { |
1302 | struct qlogicpti *qpti = dev_id; | 1302 | struct qlogicpti *qpti = dev_id; |
1303 | unsigned long flags; | 1303 | unsigned long flags; |
diff --git a/drivers/scsi/scsi_error.c b/drivers/scsi/scsi_error.c index 3d355d054612..aff1b0cfd4b2 100644 --- a/drivers/scsi/scsi_error.c +++ b/drivers/scsi/scsi_error.c | |||
@@ -495,7 +495,7 @@ static int scsi_send_eh_cmnd(struct scsi_cmnd *scmd, unsigned char *cmnd, | |||
495 | memcpy(scmd->cmnd, cmnd, cmnd_size); | 495 | memcpy(scmd->cmnd, cmnd, cmnd_size); |
496 | 496 | ||
497 | if (copy_sense) { | 497 | if (copy_sense) { |
498 | int gfp_mask = GFP_ATOMIC; | 498 | gfp_t gfp_mask = GFP_ATOMIC; |
499 | 499 | ||
500 | if (shost->hostt->unchecked_isa_dma) | 500 | if (shost->hostt->unchecked_isa_dma) |
501 | gfp_mask |= __GFP_DMA; | 501 | gfp_mask |= __GFP_DMA; |
diff --git a/drivers/scsi/seagate.c b/drivers/scsi/seagate.c index 4e6666ceae26..8ff1f2866f7b 100644 --- a/drivers/scsi/seagate.c +++ b/drivers/scsi/seagate.c | |||
@@ -320,8 +320,8 @@ static Signature __initdata signatures[] = { | |||
320 | */ | 320 | */ |
321 | 321 | ||
322 | static int hostno = -1; | 322 | static int hostno = -1; |
323 | static void seagate_reconnect_intr (int, void *, struct pt_regs *); | 323 | static void seagate_reconnect_intr (int, void *); |
324 | static irqreturn_t do_seagate_reconnect_intr (int, void *, struct pt_regs *); | 324 | static irqreturn_t do_seagate_reconnect_intr (int, void *); |
325 | static int seagate_st0x_bus_reset(struct scsi_cmnd *); | 325 | static int seagate_st0x_bus_reset(struct scsi_cmnd *); |
326 | 326 | ||
327 | #ifdef FAST | 327 | #ifdef FAST |
@@ -619,19 +619,18 @@ static int should_reconnect = 0; | |||
619 | * asserting SEL. | 619 | * asserting SEL. |
620 | */ | 620 | */ |
621 | 621 | ||
622 | static irqreturn_t do_seagate_reconnect_intr(int irq, void *dev_id, | 622 | static irqreturn_t do_seagate_reconnect_intr(int irq, void *dev_id) |
623 | struct pt_regs *regs) | ||
624 | { | 623 | { |
625 | unsigned long flags; | 624 | unsigned long flags; |
626 | struct Scsi_Host *dev = dev_id; | 625 | struct Scsi_Host *dev = dev_id; |
627 | 626 | ||
628 | spin_lock_irqsave (dev->host_lock, flags); | 627 | spin_lock_irqsave (dev->host_lock, flags); |
629 | seagate_reconnect_intr (irq, dev_id, regs); | 628 | seagate_reconnect_intr (irq, dev_id); |
630 | spin_unlock_irqrestore (dev->host_lock, flags); | 629 | spin_unlock_irqrestore (dev->host_lock, flags); |
631 | return IRQ_HANDLED; | 630 | return IRQ_HANDLED; |
632 | } | 631 | } |
633 | 632 | ||
634 | static void seagate_reconnect_intr (int irq, void *dev_id, struct pt_regs *regs) | 633 | static void seagate_reconnect_intr (int irq, void *dev_id) |
635 | { | 634 | { |
636 | int temp; | 635 | int temp; |
637 | struct scsi_cmnd *SCtmp; | 636 | struct scsi_cmnd *SCtmp; |
diff --git a/drivers/scsi/sgiwd93.c b/drivers/scsi/sgiwd93.c index 4f1db6f2aae8..e81f97a35bc8 100644 --- a/drivers/scsi/sgiwd93.c +++ b/drivers/scsi/sgiwd93.c | |||
@@ -84,7 +84,7 @@ static inline unsigned long read_wd33c93_count(const wd33c93_regs regs) | |||
84 | return value; | 84 | return value; |
85 | } | 85 | } |
86 | 86 | ||
87 | static irqreturn_t sgiwd93_intr(int irq, void *dev_id, struct pt_regs *regs) | 87 | static irqreturn_t sgiwd93_intr(int irq, void *dev_id) |
88 | { | 88 | { |
89 | struct Scsi_Host * host = (struct Scsi_Host *) dev_id; | 89 | struct Scsi_Host * host = (struct Scsi_Host *) dev_id; |
90 | unsigned long flags; | 90 | unsigned long flags; |
diff --git a/drivers/scsi/stex.c b/drivers/scsi/stex.c index a54e6c1026b7..185c270bb043 100644 --- a/drivers/scsi/stex.c +++ b/drivers/scsi/stex.c | |||
@@ -871,7 +871,7 @@ update_status: | |||
871 | readl(base + IMR1); /* flush */ | 871 | readl(base + IMR1); /* flush */ |
872 | } | 872 | } |
873 | 873 | ||
874 | static irqreturn_t stex_intr(int irq, void *__hba, struct pt_regs *regs) | 874 | static irqreturn_t stex_intr(int irq, void *__hba) |
875 | { | 875 | { |
876 | struct st_hba *hba = __hba; | 876 | struct st_hba *hba = __hba; |
877 | void __iomem *base = hba->mmio_base; | 877 | void __iomem *base = hba->mmio_base; |
diff --git a/drivers/scsi/sun3_NCR5380.c b/drivers/scsi/sun3_NCR5380.c index 7f9bcef6adfa..5ec5af8e3379 100644 --- a/drivers/scsi/sun3_NCR5380.c +++ b/drivers/scsi/sun3_NCR5380.c | |||
@@ -1252,7 +1252,7 @@ static void NCR5380_dma_complete( struct Scsi_Host *instance ) | |||
1252 | * | 1252 | * |
1253 | */ | 1253 | */ |
1254 | 1254 | ||
1255 | static irqreturn_t NCR5380_intr (int irq, void *dev_id, struct pt_regs *regs) | 1255 | static irqreturn_t NCR5380_intr (int irq, void *dev_id) |
1256 | { | 1256 | { |
1257 | struct Scsi_Host *instance = first_instance; | 1257 | struct Scsi_Host *instance = first_instance; |
1258 | int done = 1, handled = 0; | 1258 | int done = 1, handled = 0; |
diff --git a/drivers/scsi/sun3_scsi.c b/drivers/scsi/sun3_scsi.c index 44a99aeb8180..e625b4c5833a 100644 --- a/drivers/scsi/sun3_scsi.c +++ b/drivers/scsi/sun3_scsi.c | |||
@@ -102,7 +102,7 @@ static void NCR5380_print(struct Scsi_Host *instance); | |||
102 | #define ENABLE_IRQ() enable_irq( IRQ_SUN3_SCSI ); | 102 | #define ENABLE_IRQ() enable_irq( IRQ_SUN3_SCSI ); |
103 | 103 | ||
104 | 104 | ||
105 | static irqreturn_t scsi_sun3_intr(int irq, void *dummy, struct pt_regs *fp); | 105 | static irqreturn_t scsi_sun3_intr(int irq, void *dummy); |
106 | static inline unsigned char sun3scsi_read(int reg); | 106 | static inline unsigned char sun3scsi_read(int reg); |
107 | static inline void sun3scsi_write(int reg, int value); | 107 | static inline void sun3scsi_write(int reg, int value); |
108 | 108 | ||
@@ -371,7 +371,7 @@ const char * sun3scsi_info (struct Scsi_Host *spnt) { | |||
371 | // safe bits for the CSR | 371 | // safe bits for the CSR |
372 | #define CSR_GOOD 0x060f | 372 | #define CSR_GOOD 0x060f |
373 | 373 | ||
374 | static irqreturn_t scsi_sun3_intr(int irq, void *dummy, struct pt_regs *fp) | 374 | static irqreturn_t scsi_sun3_intr(int irq, void *dummy) |
375 | { | 375 | { |
376 | unsigned short csr = dregs->csr; | 376 | unsigned short csr = dregs->csr; |
377 | int handled = 0; | 377 | int handled = 0; |
@@ -388,7 +388,7 @@ static irqreturn_t scsi_sun3_intr(int irq, void *dummy, struct pt_regs *fp) | |||
388 | } | 388 | } |
389 | 389 | ||
390 | if(csr & (CSR_SDB_INT | CSR_DMA_INT)) { | 390 | if(csr & (CSR_SDB_INT | CSR_DMA_INT)) { |
391 | NCR5380_intr(irq, dummy, fp); | 391 | NCR5380_intr(irq, dummy); |
392 | handled = 1; | 392 | handled = 1; |
393 | } | 393 | } |
394 | 394 | ||
diff --git a/drivers/scsi/sun3_scsi_vme.c b/drivers/scsi/sun3_scsi_vme.c index f5742b84b27a..e8faab16567b 100644 --- a/drivers/scsi/sun3_scsi_vme.c +++ b/drivers/scsi/sun3_scsi_vme.c | |||
@@ -67,7 +67,7 @@ extern int sun3_map_test(unsigned long, char *); | |||
67 | #define ENABLE_IRQ() | 67 | #define ENABLE_IRQ() |
68 | 68 | ||
69 | 69 | ||
70 | static irqreturn_t scsi_sun3_intr(int irq, void *dummy, struct pt_regs *fp); | 70 | static irqreturn_t scsi_sun3_intr(int irq, void *dummy); |
71 | static inline unsigned char sun3scsi_read(int reg); | 71 | static inline unsigned char sun3scsi_read(int reg); |
72 | static inline void sun3scsi_write(int reg, int value); | 72 | static inline void sun3scsi_write(int reg, int value); |
73 | 73 | ||
@@ -340,7 +340,7 @@ static const char * sun3scsi_info (struct Scsi_Host *spnt) { | |||
340 | // safe bits for the CSR | 340 | // safe bits for the CSR |
341 | #define CSR_GOOD 0x060f | 341 | #define CSR_GOOD 0x060f |
342 | 342 | ||
343 | static irqreturn_t scsi_sun3_intr(int irq, void *dummy, struct pt_regs *fp) | 343 | static irqreturn_t scsi_sun3_intr(int irq, void *dummy) |
344 | { | 344 | { |
345 | unsigned short csr = dregs->csr; | 345 | unsigned short csr = dregs->csr; |
346 | int handled = 0; | 346 | int handled = 0; |
@@ -371,7 +371,7 @@ static irqreturn_t scsi_sun3_intr(int irq, void *dummy, struct pt_regs *fp) | |||
371 | } | 371 | } |
372 | 372 | ||
373 | if(csr & (CSR_SDB_INT | CSR_DMA_INT)) { | 373 | if(csr & (CSR_SDB_INT | CSR_DMA_INT)) { |
374 | NCR5380_intr(irq, dummy, fp); | 374 | NCR5380_intr(irq, dummy); |
375 | handled = 1; | 375 | handled = 1; |
376 | } | 376 | } |
377 | 377 | ||
diff --git a/drivers/scsi/sym53c416.c b/drivers/scsi/sym53c416.c index 8640253d6215..32c883f1efa1 100644 --- a/drivers/scsi/sym53c416.c +++ b/drivers/scsi/sym53c416.c | |||
@@ -326,8 +326,7 @@ static __inline__ unsigned int sym53c416_write(int base, unsigned char *buffer, | |||
326 | return orig_len - len; | 326 | return orig_len - len; |
327 | } | 327 | } |
328 | 328 | ||
329 | static irqreturn_t sym53c416_intr_handle(int irq, void *dev_id, | 329 | static irqreturn_t sym53c416_intr_handle(int irq, void *dev_id) |
330 | struct pt_regs *regs) | ||
331 | { | 330 | { |
332 | struct Scsi_Host *dev = dev_id; | 331 | struct Scsi_Host *dev = dev_id; |
333 | int base = 0; | 332 | int base = 0; |
diff --git a/drivers/scsi/sym53c8xx_2/sym_glue.c b/drivers/scsi/sym53c8xx_2/sym_glue.c index 739d3ef46a40..4d78c7e87cca 100644 --- a/drivers/scsi/sym53c8xx_2/sym_glue.c +++ b/drivers/scsi/sym53c8xx_2/sym_glue.c | |||
@@ -652,7 +652,7 @@ static int sym53c8xx_queue_command(struct scsi_cmnd *cmd, | |||
652 | /* | 652 | /* |
653 | * Linux entry point of the interrupt handler. | 653 | * Linux entry point of the interrupt handler. |
654 | */ | 654 | */ |
655 | static irqreturn_t sym53c8xx_intr(int irq, void *dev_id, struct pt_regs * regs) | 655 | static irqreturn_t sym53c8xx_intr(int irq, void *dev_id) |
656 | { | 656 | { |
657 | unsigned long flags; | 657 | unsigned long flags; |
658 | struct sym_hcb *np = (struct sym_hcb *)dev_id; | 658 | struct sym_hcb *np = (struct sym_hcb *)dev_id; |
diff --git a/drivers/scsi/tmscsim.c b/drivers/scsi/tmscsim.c index 028d5f641cc6..d03aa6ce8fe8 100644 --- a/drivers/scsi/tmscsim.c +++ b/drivers/scsi/tmscsim.c | |||
@@ -700,9 +700,9 @@ dc390_InvalidCmd(struct dc390_acb* pACB) | |||
700 | 700 | ||
701 | 701 | ||
702 | static irqreturn_t __inline__ | 702 | static irqreturn_t __inline__ |
703 | DC390_Interrupt(int irq, void *dev_id, struct pt_regs *regs) | 703 | DC390_Interrupt(void *dev_id) |
704 | { | 704 | { |
705 | struct dc390_acb *pACB = (struct dc390_acb*)dev_id; | 705 | struct dc390_acb *pACB = dev_id; |
706 | struct dc390_dcb *pDCB; | 706 | struct dc390_dcb *pDCB; |
707 | struct dc390_srb *pSRB; | 707 | struct dc390_srb *pSRB; |
708 | u8 sstatus=0; | 708 | u8 sstatus=0; |
@@ -811,12 +811,12 @@ DC390_Interrupt(int irq, void *dev_id, struct pt_regs *regs) | |||
811 | return IRQ_HANDLED; | 811 | return IRQ_HANDLED; |
812 | } | 812 | } |
813 | 813 | ||
814 | static irqreturn_t do_DC390_Interrupt( int irq, void *dev_id, struct pt_regs *regs) | 814 | static irqreturn_t do_DC390_Interrupt(int irq, void *dev_id) |
815 | { | 815 | { |
816 | irqreturn_t ret; | 816 | irqreturn_t ret; |
817 | DEBUG1(printk (KERN_INFO "DC390: Irq (%i) caught: ", irq)); | 817 | DEBUG1(printk (KERN_INFO "DC390: Irq (%i) caught: ", irq)); |
818 | /* Locking is done in DC390_Interrupt */ | 818 | /* Locking is done in DC390_Interrupt */ |
819 | ret = DC390_Interrupt(irq, dev_id, regs); | 819 | ret = DC390_Interrupt(dev_id); |
820 | DEBUG1(printk (".. IRQ returned\n")); | 820 | DEBUG1(printk (".. IRQ returned\n")); |
821 | return ret; | 821 | return ret; |
822 | } | 822 | } |
diff --git a/drivers/scsi/u14-34f.c b/drivers/scsi/u14-34f.c index 57449611e714..3de08a15de40 100644 --- a/drivers/scsi/u14-34f.c +++ b/drivers/scsi/u14-34f.c | |||
@@ -634,7 +634,7 @@ static unsigned long io_port[] = { | |||
634 | #define H2DEV(x) cpu_to_le32(x) | 634 | #define H2DEV(x) cpu_to_le32(x) |
635 | #define DEV2H(x) le32_to_cpu(x) | 635 | #define DEV2H(x) le32_to_cpu(x) |
636 | 636 | ||
637 | static irqreturn_t do_interrupt_handler(int, void *, struct pt_regs *); | 637 | static irqreturn_t do_interrupt_handler(int, void *); |
638 | static void flush_dev(struct scsi_device *, unsigned long, unsigned int, unsigned int); | 638 | static void flush_dev(struct scsi_device *, unsigned long, unsigned int, unsigned int); |
639 | static int do_trace = FALSE; | 639 | static int do_trace = FALSE; |
640 | static int setup_done = FALSE; | 640 | static int setup_done = FALSE; |
@@ -1932,8 +1932,7 @@ none: | |||
1932 | return IRQ_NONE; | 1932 | return IRQ_NONE; |
1933 | } | 1933 | } |
1934 | 1934 | ||
1935 | static irqreturn_t do_interrupt_handler(int irq, void *shap, | 1935 | static irqreturn_t do_interrupt_handler(int irq, void *shap) { |
1936 | struct pt_regs *regs) { | ||
1937 | unsigned int j; | 1936 | unsigned int j; |
1938 | unsigned long spin_flags; | 1937 | unsigned long spin_flags; |
1939 | irqreturn_t ret; | 1938 | irqreturn_t ret; |
diff --git a/drivers/scsi/ultrastor.c b/drivers/scsi/ultrastor.c index 0372aa9fa190..56906aba5ee3 100644 --- a/drivers/scsi/ultrastor.c +++ b/drivers/scsi/ultrastor.c | |||
@@ -287,8 +287,8 @@ static const unsigned short ultrastor_ports_14f[] = { | |||
287 | }; | 287 | }; |
288 | #endif | 288 | #endif |
289 | 289 | ||
290 | static void ultrastor_interrupt(int, void *, struct pt_regs *); | 290 | static void ultrastor_interrupt(void *); |
291 | static irqreturn_t do_ultrastor_interrupt(int, void *, struct pt_regs *); | 291 | static irqreturn_t do_ultrastor_interrupt(int, void *); |
292 | static inline void build_sg_list(struct mscp *, struct scsi_cmnd *SCpnt); | 292 | static inline void build_sg_list(struct mscp *, struct scsi_cmnd *SCpnt); |
293 | 293 | ||
294 | 294 | ||
@@ -893,7 +893,7 @@ static int ultrastor_abort(struct scsi_cmnd *SCpnt) | |||
893 | 893 | ||
894 | spin_lock_irqsave(host->host_lock, flags); | 894 | spin_lock_irqsave(host->host_lock, flags); |
895 | /* FIXME: Ewww... need to think about passing host around properly */ | 895 | /* FIXME: Ewww... need to think about passing host around properly */ |
896 | ultrastor_interrupt(0, NULL, NULL); | 896 | ultrastor_interrupt(NULL); |
897 | spin_unlock_irqrestore(host->host_lock, flags); | 897 | spin_unlock_irqrestore(host->host_lock, flags); |
898 | return SUCCESS; | 898 | return SUCCESS; |
899 | } | 899 | } |
@@ -1039,7 +1039,7 @@ int ultrastor_biosparam(struct scsi_device *sdev, struct block_device *bdev, | |||
1039 | return 0; | 1039 | return 0; |
1040 | } | 1040 | } |
1041 | 1041 | ||
1042 | static void ultrastor_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 1042 | static void ultrastor_interrupt(void *dev_id) |
1043 | { | 1043 | { |
1044 | unsigned int status; | 1044 | unsigned int status; |
1045 | #if ULTRASTOR_MAX_CMDS > 1 | 1045 | #if ULTRASTOR_MAX_CMDS > 1 |
@@ -1171,14 +1171,13 @@ static void ultrastor_interrupt(int irq, void *dev_id, struct pt_regs *regs) | |||
1171 | #endif | 1171 | #endif |
1172 | } | 1172 | } |
1173 | 1173 | ||
1174 | static irqreturn_t do_ultrastor_interrupt(int irq, void *dev_id, | 1174 | static irqreturn_t do_ultrastor_interrupt(int irq, void *dev_id) |
1175 | struct pt_regs *regs) | ||
1176 | { | 1175 | { |
1177 | unsigned long flags; | 1176 | unsigned long flags; |
1178 | struct Scsi_Host *dev = dev_id; | 1177 | struct Scsi_Host *dev = dev_id; |
1179 | 1178 | ||
1180 | spin_lock_irqsave(dev->host_lock, flags); | 1179 | spin_lock_irqsave(dev->host_lock, flags); |
1181 | ultrastor_interrupt(irq, dev_id, regs); | 1180 | ultrastor_interrupt(dev_id); |
1182 | spin_unlock_irqrestore(dev->host_lock, flags); | 1181 | spin_unlock_irqrestore(dev->host_lock, flags); |
1183 | return IRQ_HANDLED; | 1182 | return IRQ_HANDLED; |
1184 | } | 1183 | } |
diff --git a/drivers/scsi/wd7000.c b/drivers/scsi/wd7000.c index a0b61af48f1c..331e1cf159b0 100644 --- a/drivers/scsi/wd7000.c +++ b/drivers/scsi/wd7000.c | |||
@@ -998,7 +998,7 @@ static int make_code(unsigned hosterr, unsigned scsierr) | |||
998 | #define wd7000_intr_ack(host) outb (0, host->iobase + ASC_INTR_ACK) | 998 | #define wd7000_intr_ack(host) outb (0, host->iobase + ASC_INTR_ACK) |
999 | 999 | ||
1000 | 1000 | ||
1001 | static irqreturn_t wd7000_intr(int irq, void *dev_id, struct pt_regs *regs) | 1001 | static irqreturn_t wd7000_intr(int irq, void *dev_id) |
1002 | { | 1002 | { |
1003 | Adapter *host = (Adapter *) dev_id; | 1003 | Adapter *host = (Adapter *) dev_id; |
1004 | int flag, icmb, errstatus, icmb_status; | 1004 | int flag, icmb, errstatus, icmb_status; |
diff --git a/drivers/serial/21285.c b/drivers/serial/21285.c index 76d83ade9857..6a1a568ca649 100644 --- a/drivers/serial/21285.c +++ b/drivers/serial/21285.c | |||
@@ -85,7 +85,7 @@ static void serial21285_enable_ms(struct uart_port *port) | |||
85 | { | 85 | { |
86 | } | 86 | } |
87 | 87 | ||
88 | static irqreturn_t serial21285_rx_chars(int irq, void *dev_id, struct pt_regs *regs) | 88 | static irqreturn_t serial21285_rx_chars(int irq, void *dev_id) |
89 | { | 89 | { |
90 | struct uart_port *port = dev_id; | 90 | struct uart_port *port = dev_id; |
91 | struct tty_struct *tty = port->info->tty; | 91 | struct tty_struct *tty = port->info->tty; |
@@ -123,7 +123,7 @@ static irqreturn_t serial21285_rx_chars(int irq, void *dev_id, struct pt_regs *r | |||
123 | return IRQ_HANDLED; | 123 | return IRQ_HANDLED; |
124 | } | 124 | } |
125 | 125 | ||
126 | static irqreturn_t serial21285_tx_chars(int irq, void *dev_id, struct pt_regs *regs) | 126 | static irqreturn_t serial21285_tx_chars(int irq, void *dev_id) |
127 | { | 127 | { |
128 | struct uart_port *port = dev_id; | 128 | struct uart_port *port = dev_id; |
129 | struct circ_buf *xmit = &port->info->xmit; | 129 | struct circ_buf *xmit = &port->info->xmit; |
diff --git a/drivers/serial/68328serial.c b/drivers/serial/68328serial.c index bac853c5abb5..9b8b585513ec 100644 --- a/drivers/serial/68328serial.c +++ b/drivers/serial/68328serial.c | |||
@@ -275,8 +275,7 @@ static void status_handle(struct m68k_serial *info, unsigned short status) | |||
275 | return; | 275 | return; |
276 | } | 276 | } |
277 | 277 | ||
278 | static void receive_chars(struct m68k_serial *info, struct pt_regs *regs, | 278 | static void receive_chars(struct m68k_serial *info, unsigned short rx) |
279 | unsigned short rx) | ||
280 | { | 279 | { |
281 | struct tty_struct *tty = info->tty; | 280 | struct tty_struct *tty = info->tty; |
282 | m68328_uart *uart = &uart_addr[info->line]; | 281 | m68328_uart *uart = &uart_addr[info->line]; |
@@ -377,7 +376,7 @@ clear_and_return: | |||
377 | /* | 376 | /* |
378 | * This is the serial driver's generic interrupt routine | 377 | * This is the serial driver's generic interrupt routine |
379 | */ | 378 | */ |
380 | irqreturn_t rs_interrupt(int irq, void *dev_id, struct pt_regs * regs) | 379 | irqreturn_t rs_interrupt(int irq, void *dev_id) |
381 | { | 380 | { |
382 | struct m68k_serial * info; | 381 | struct m68k_serial * info; |
383 | m68328_uart *uart; | 382 | m68328_uart *uart; |
@@ -394,10 +393,10 @@ irqreturn_t rs_interrupt(int irq, void *dev_id, struct pt_regs * regs) | |||
394 | #ifdef USE_INTS | 393 | #ifdef USE_INTS |
395 | tx = uart->utx.w; | 394 | tx = uart->utx.w; |
396 | 395 | ||
397 | if (rx & URX_DATA_READY) receive_chars(info, regs, rx); | 396 | if (rx & URX_DATA_READY) receive_chars(info, rx); |
398 | if (tx & UTX_TX_AVAIL) transmit_chars(info); | 397 | if (tx & UTX_TX_AVAIL) transmit_chars(info); |
399 | #else | 398 | #else |
400 | receive_chars(info, regs, rx); | 399 | receive_chars(info, rx); |
401 | #endif | 400 | #endif |
402 | return IRQ_HANDLED; | 401 | return IRQ_HANDLED; |
403 | } | 402 | } |
diff --git a/drivers/serial/68360serial.c b/drivers/serial/68360serial.c index 1b299e8c57cd..634ecca36a77 100644 --- a/drivers/serial/68360serial.c +++ b/drivers/serial/68360serial.c | |||
@@ -612,7 +612,7 @@ static _INLINE_ void check_modem_status(struct async_struct *info) | |||
612 | * This is the serial driver's interrupt routine for a single port | 612 | * This is the serial driver's interrupt routine for a single port |
613 | */ | 613 | */ |
614 | /* static void rs_360_interrupt(void *dev_id) */ /* until and if we start servicing irqs here */ | 614 | /* static void rs_360_interrupt(void *dev_id) */ /* until and if we start servicing irqs here */ |
615 | static void rs_360_interrupt(int vec, void *dev_id, struct pt_regs *fp) | 615 | static void rs_360_interrupt(int vec, void *dev_id) |
616 | { | 616 | { |
617 | u_char events; | 617 | u_char events; |
618 | int idx; | 618 | int idx; |
@@ -620,7 +620,7 @@ static void rs_360_interrupt(int vec, void *dev_id, struct pt_regs *fp) | |||
620 | volatile struct smc_regs *smcp; | 620 | volatile struct smc_regs *smcp; |
621 | volatile struct scc_regs *sccp; | 621 | volatile struct scc_regs *sccp; |
622 | 622 | ||
623 | info = (ser_info_t *)dev_id; | 623 | info = dev_id; |
624 | 624 | ||
625 | idx = PORT_NUM(info->state->smc_scc_num); | 625 | idx = PORT_NUM(info->state->smc_scc_num); |
626 | if (info->state->smc_scc_num & NUM_IS_SCC) { | 626 | if (info->state->smc_scc_num & NUM_IS_SCC) { |
diff --git a/drivers/serial/8250.c b/drivers/serial/8250.c index cc2a205d4230..e34bd03cfce7 100644 --- a/drivers/serial/8250.c +++ b/drivers/serial/8250.c | |||
@@ -1175,7 +1175,7 @@ static void serial8250_enable_ms(struct uart_port *port) | |||
1175 | } | 1175 | } |
1176 | 1176 | ||
1177 | static void | 1177 | static void |
1178 | receive_chars(struct uart_8250_port *up, int *status, struct pt_regs *regs) | 1178 | receive_chars(struct uart_8250_port *up, int *status) |
1179 | { | 1179 | { |
1180 | struct tty_struct *tty = up->port.info->tty; | 1180 | struct tty_struct *tty = up->port.info->tty; |
1181 | unsigned char ch, lsr = *status; | 1181 | unsigned char ch, lsr = *status; |
@@ -1233,7 +1233,7 @@ receive_chars(struct uart_8250_port *up, int *status, struct pt_regs *regs) | |||
1233 | else if (lsr & UART_LSR_FE) | 1233 | else if (lsr & UART_LSR_FE) |
1234 | flag = TTY_FRAME; | 1234 | flag = TTY_FRAME; |
1235 | } | 1235 | } |
1236 | if (uart_handle_sysrq_char(&up->port, ch, regs)) | 1236 | if (uart_handle_sysrq_char(&up->port, ch)) |
1237 | goto ignore_char; | 1237 | goto ignore_char; |
1238 | 1238 | ||
1239 | uart_insert_char(&up->port, lsr, UART_LSR_OE, ch, flag); | 1239 | uart_insert_char(&up->port, lsr, UART_LSR_OE, ch, flag); |
@@ -1309,7 +1309,7 @@ static unsigned int check_modem_status(struct uart_8250_port *up) | |||
1309 | * This handles the interrupt from one port. | 1309 | * This handles the interrupt from one port. |
1310 | */ | 1310 | */ |
1311 | static inline void | 1311 | static inline void |
1312 | serial8250_handle_port(struct uart_8250_port *up, struct pt_regs *regs) | 1312 | serial8250_handle_port(struct uart_8250_port *up) |
1313 | { | 1313 | { |
1314 | unsigned int status; | 1314 | unsigned int status; |
1315 | 1315 | ||
@@ -1320,7 +1320,7 @@ serial8250_handle_port(struct uart_8250_port *up, struct pt_regs *regs) | |||
1320 | DEBUG_INTR("status = %x...", status); | 1320 | DEBUG_INTR("status = %x...", status); |
1321 | 1321 | ||
1322 | if (status & UART_LSR_DR) | 1322 | if (status & UART_LSR_DR) |
1323 | receive_chars(up, &status, regs); | 1323 | receive_chars(up, &status); |
1324 | check_modem_status(up); | 1324 | check_modem_status(up); |
1325 | if (status & UART_LSR_THRE) | 1325 | if (status & UART_LSR_THRE) |
1326 | transmit_chars(up); | 1326 | transmit_chars(up); |
@@ -1342,7 +1342,7 @@ serial8250_handle_port(struct uart_8250_port *up, struct pt_regs *regs) | |||
1342 | * This means we need to loop through all ports. checking that they | 1342 | * This means we need to loop through all ports. checking that they |
1343 | * don't have an interrupt pending. | 1343 | * don't have an interrupt pending. |
1344 | */ | 1344 | */ |
1345 | static irqreturn_t serial8250_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 1345 | static irqreturn_t serial8250_interrupt(int irq, void *dev_id) |
1346 | { | 1346 | { |
1347 | struct irq_info *i = dev_id; | 1347 | struct irq_info *i = dev_id; |
1348 | struct list_head *l, *end = NULL; | 1348 | struct list_head *l, *end = NULL; |
@@ -1361,7 +1361,7 @@ static irqreturn_t serial8250_interrupt(int irq, void *dev_id, struct pt_regs *r | |||
1361 | 1361 | ||
1362 | iir = serial_in(up, UART_IIR); | 1362 | iir = serial_in(up, UART_IIR); |
1363 | if (!(iir & UART_IIR_NO_INT)) { | 1363 | if (!(iir & UART_IIR_NO_INT)) { |
1364 | serial8250_handle_port(up, regs); | 1364 | serial8250_handle_port(up); |
1365 | 1365 | ||
1366 | handled = 1; | 1366 | handled = 1; |
1367 | 1367 | ||
@@ -1461,7 +1461,7 @@ static void serial8250_timeout(unsigned long data) | |||
1461 | 1461 | ||
1462 | iir = serial_in(up, UART_IIR); | 1462 | iir = serial_in(up, UART_IIR); |
1463 | if (!(iir & UART_IIR_NO_INT)) | 1463 | if (!(iir & UART_IIR_NO_INT)) |
1464 | serial8250_handle_port(up, NULL); | 1464 | serial8250_handle_port(up); |
1465 | 1465 | ||
1466 | timeout = up->port.timeout; | 1466 | timeout = up->port.timeout; |
1467 | timeout = timeout > 6 ? (timeout / 2 - 2) : 1; | 1467 | timeout = timeout > 6 ? (timeout / 2 - 2) : 1; |
diff --git a/drivers/serial/amba-pl010.c b/drivers/serial/amba-pl010.c index 7311d8487c96..4213fabc62bf 100644 --- a/drivers/serial/amba-pl010.c +++ b/drivers/serial/amba-pl010.c | |||
@@ -111,12 +111,7 @@ static void pl010_enable_ms(struct uart_port *port) | |||
111 | writel(cr, port->membase + UART010_CR); | 111 | writel(cr, port->membase + UART010_CR); |
112 | } | 112 | } |
113 | 113 | ||
114 | static void | 114 | static void pl010_rx_chars(struct uart_port *port) |
115 | #ifdef SUPPORT_SYSRQ | ||
116 | pl010_rx_chars(struct uart_port *port, struct pt_regs *regs) | ||
117 | #else | ||
118 | pl010_rx_chars(struct uart_port *port) | ||
119 | #endif | ||
120 | { | 115 | { |
121 | struct tty_struct *tty = port->info->tty; | 116 | struct tty_struct *tty = port->info->tty; |
122 | unsigned int status, ch, flag, rsr, max_count = 256; | 117 | unsigned int status, ch, flag, rsr, max_count = 256; |
@@ -156,7 +151,7 @@ pl010_rx_chars(struct uart_port *port) | |||
156 | flag = TTY_FRAME; | 151 | flag = TTY_FRAME; |
157 | } | 152 | } |
158 | 153 | ||
159 | if (uart_handle_sysrq_char(port, ch, regs)) | 154 | if (uart_handle_sysrq_char(port, ch)) |
160 | goto ignore_char; | 155 | goto ignore_char; |
161 | 156 | ||
162 | uart_insert_char(port, rsr, UART01x_RSR_OE, ch, flag); | 157 | uart_insert_char(port, rsr, UART01x_RSR_OE, ch, flag); |
@@ -227,7 +222,7 @@ static void pl010_modem_status(struct uart_port *port) | |||
227 | wake_up_interruptible(&uap->port.info->delta_msr_wait); | 222 | wake_up_interruptible(&uap->port.info->delta_msr_wait); |
228 | } | 223 | } |
229 | 224 | ||
230 | static irqreturn_t pl010_int(int irq, void *dev_id, struct pt_regs *regs) | 225 | static irqreturn_t pl010_int(int irq, void *dev_id) |
231 | { | 226 | { |
232 | struct uart_port *port = dev_id; | 227 | struct uart_port *port = dev_id; |
233 | unsigned int status, pass_counter = AMBA_ISR_PASS_LIMIT; | 228 | unsigned int status, pass_counter = AMBA_ISR_PASS_LIMIT; |
@@ -239,11 +234,7 @@ static irqreturn_t pl010_int(int irq, void *dev_id, struct pt_regs *regs) | |||
239 | if (status) { | 234 | if (status) { |
240 | do { | 235 | do { |
241 | if (status & (UART010_IIR_RTIS | UART010_IIR_RIS)) | 236 | if (status & (UART010_IIR_RTIS | UART010_IIR_RIS)) |
242 | #ifdef SUPPORT_SYSRQ | ||
243 | pl010_rx_chars(port, regs); | ||
244 | #else | ||
245 | pl010_rx_chars(port); | 237 | pl010_rx_chars(port); |
246 | #endif | ||
247 | if (status & UART010_IIR_MIS) | 238 | if (status & UART010_IIR_MIS) |
248 | pl010_modem_status(port); | 239 | pl010_modem_status(port); |
249 | if (status & UART010_IIR_TIS) | 240 | if (status & UART010_IIR_TIS) |
diff --git a/drivers/serial/amba-pl011.c b/drivers/serial/amba-pl011.c index a8d7124e84a1..d503625730df 100644 --- a/drivers/serial/amba-pl011.c +++ b/drivers/serial/amba-pl011.c | |||
@@ -107,12 +107,7 @@ static void pl011_enable_ms(struct uart_port *port) | |||
107 | writew(uap->im, uap->port.membase + UART011_IMSC); | 107 | writew(uap->im, uap->port.membase + UART011_IMSC); |
108 | } | 108 | } |
109 | 109 | ||
110 | static void | 110 | static void pl011_rx_chars(struct uart_amba_port *uap) |
111 | #ifdef SUPPORT_SYSRQ | ||
112 | pl011_rx_chars(struct uart_amba_port *uap, struct pt_regs *regs) | ||
113 | #else | ||
114 | pl011_rx_chars(struct uart_amba_port *uap) | ||
115 | #endif | ||
116 | { | 111 | { |
117 | struct tty_struct *tty = uap->port.info->tty; | 112 | struct tty_struct *tty = uap->port.info->tty; |
118 | unsigned int status, ch, flag, max_count = 256; | 113 | unsigned int status, ch, flag, max_count = 256; |
@@ -150,7 +145,7 @@ pl011_rx_chars(struct uart_amba_port *uap) | |||
150 | flag = TTY_FRAME; | 145 | flag = TTY_FRAME; |
151 | } | 146 | } |
152 | 147 | ||
153 | if (uart_handle_sysrq_char(&uap->port, ch & 255, regs)) | 148 | if (uart_handle_sysrq_char(&uap->port, ch & 255)) |
154 | goto ignore_char; | 149 | goto ignore_char; |
155 | 150 | ||
156 | uart_insert_char(&uap->port, ch, UART011_DR_OE, ch, flag); | 151 | uart_insert_char(&uap->port, ch, UART011_DR_OE, ch, flag); |
@@ -218,7 +213,7 @@ static void pl011_modem_status(struct uart_amba_port *uap) | |||
218 | wake_up_interruptible(&uap->port.info->delta_msr_wait); | 213 | wake_up_interruptible(&uap->port.info->delta_msr_wait); |
219 | } | 214 | } |
220 | 215 | ||
221 | static irqreturn_t pl011_int(int irq, void *dev_id, struct pt_regs *regs) | 216 | static irqreturn_t pl011_int(int irq, void *dev_id) |
222 | { | 217 | { |
223 | struct uart_amba_port *uap = dev_id; | 218 | struct uart_amba_port *uap = dev_id; |
224 | unsigned int status, pass_counter = AMBA_ISR_PASS_LIMIT; | 219 | unsigned int status, pass_counter = AMBA_ISR_PASS_LIMIT; |
@@ -234,11 +229,7 @@ static irqreturn_t pl011_int(int irq, void *dev_id, struct pt_regs *regs) | |||
234 | uap->port.membase + UART011_ICR); | 229 | uap->port.membase + UART011_ICR); |
235 | 230 | ||
236 | if (status & (UART011_RTIS|UART011_RXIS)) | 231 | if (status & (UART011_RTIS|UART011_RXIS)) |
237 | #ifdef SUPPORT_SYSRQ | ||
238 | pl011_rx_chars(uap, regs); | ||
239 | #else | ||
240 | pl011_rx_chars(uap); | 232 | pl011_rx_chars(uap); |
241 | #endif | ||
242 | if (status & (UART011_DSRMIS|UART011_DCDMIS| | 233 | if (status & (UART011_DSRMIS|UART011_DCDMIS| |
243 | UART011_CTSMIS|UART011_RIMIS)) | 234 | UART011_CTSMIS|UART011_RIMIS)) |
244 | pl011_modem_status(uap); | 235 | pl011_modem_status(uap); |
diff --git a/drivers/serial/atmel_serial.c b/drivers/serial/atmel_serial.c index 955c46da5800..391a1f4167a4 100644 --- a/drivers/serial/atmel_serial.c +++ b/drivers/serial/atmel_serial.c | |||
@@ -249,7 +249,7 @@ static void atmel_break_ctl(struct uart_port *port, int break_state) | |||
249 | /* | 249 | /* |
250 | * Characters received (called from interrupt handler) | 250 | * Characters received (called from interrupt handler) |
251 | */ | 251 | */ |
252 | static void atmel_rx_chars(struct uart_port *port, struct pt_regs *regs) | 252 | static void atmel_rx_chars(struct uart_port *port) |
253 | { | 253 | { |
254 | struct tty_struct *tty = port->info->tty; | 254 | struct tty_struct *tty = port->info->tty; |
255 | unsigned int status, ch, flg; | 255 | unsigned int status, ch, flg; |
@@ -291,7 +291,7 @@ static void atmel_rx_chars(struct uart_port *port, struct pt_regs *regs) | |||
291 | flg = TTY_FRAME; | 291 | flg = TTY_FRAME; |
292 | } | 292 | } |
293 | 293 | ||
294 | if (uart_handle_sysrq_char(port, ch, regs)) | 294 | if (uart_handle_sysrq_char(port, ch)) |
295 | goto ignore_char; | 295 | goto ignore_char; |
296 | 296 | ||
297 | uart_insert_char(port, status, ATMEL_US_OVRE, ch, flg); | 297 | uart_insert_char(port, status, ATMEL_US_OVRE, ch, flg); |
@@ -339,7 +339,7 @@ static void atmel_tx_chars(struct uart_port *port) | |||
339 | /* | 339 | /* |
340 | * Interrupt handler | 340 | * Interrupt handler |
341 | */ | 341 | */ |
342 | static irqreturn_t atmel_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 342 | static irqreturn_t atmel_interrupt(int irq, void *dev_id) |
343 | { | 343 | { |
344 | struct uart_port *port = dev_id; | 344 | struct uart_port *port = dev_id; |
345 | struct atmel_uart_port *atmel_port = (struct atmel_uart_port *) port; | 345 | struct atmel_uart_port *atmel_port = (struct atmel_uart_port *) port; |
@@ -350,7 +350,7 @@ static irqreturn_t atmel_interrupt(int irq, void *dev_id, struct pt_regs *regs) | |||
350 | while (pending) { | 350 | while (pending) { |
351 | /* Interrupt receive */ | 351 | /* Interrupt receive */ |
352 | if (pending & ATMEL_US_RXRDY) | 352 | if (pending & ATMEL_US_RXRDY) |
353 | atmel_rx_chars(port, regs); | 353 | atmel_rx_chars(port); |
354 | 354 | ||
355 | // TODO: All reads to CSR will clear these interrupts! | 355 | // TODO: All reads to CSR will clear these interrupts! |
356 | if (pending & ATMEL_US_RIIC) port->icount.rng++; | 356 | if (pending & ATMEL_US_RIIC) port->icount.rng++; |
diff --git a/drivers/serial/clps711x.c b/drivers/serial/clps711x.c index f27d852ce50d..598012714882 100644 --- a/drivers/serial/clps711x.c +++ b/drivers/serial/clps711x.c | |||
@@ -93,7 +93,7 @@ static void clps711xuart_enable_ms(struct uart_port *port) | |||
93 | { | 93 | { |
94 | } | 94 | } |
95 | 95 | ||
96 | static irqreturn_t clps711xuart_int_rx(int irq, void *dev_id, struct pt_regs *regs) | 96 | static irqreturn_t clps711xuart_int_rx(int irq, void *dev_id) |
97 | { | 97 | { |
98 | struct uart_port *port = dev_id; | 98 | struct uart_port *port = dev_id; |
99 | struct tty_struct *tty = port->info->tty; | 99 | struct tty_struct *tty = port->info->tty; |
@@ -131,7 +131,7 @@ static irqreturn_t clps711xuart_int_rx(int irq, void *dev_id, struct pt_regs *re | |||
131 | #endif | 131 | #endif |
132 | } | 132 | } |
133 | 133 | ||
134 | if (uart_handle_sysrq_char(port, ch, regs)) | 134 | if (uart_handle_sysrq_char(port, ch)) |
135 | goto ignore_char; | 135 | goto ignore_char; |
136 | 136 | ||
137 | /* | 137 | /* |
@@ -147,7 +147,7 @@ static irqreturn_t clps711xuart_int_rx(int irq, void *dev_id, struct pt_regs *re | |||
147 | return IRQ_HANDLED; | 147 | return IRQ_HANDLED; |
148 | } | 148 | } |
149 | 149 | ||
150 | static irqreturn_t clps711xuart_int_tx(int irq, void *dev_id, struct pt_regs *regs) | 150 | static irqreturn_t clps711xuart_int_tx(int irq, void *dev_id) |
151 | { | 151 | { |
152 | struct uart_port *port = dev_id; | 152 | struct uart_port *port = dev_id; |
153 | struct circ_buf *xmit = &port->info->xmit; | 153 | struct circ_buf *xmit = &port->info->xmit; |
diff --git a/drivers/serial/cpm_uart/cpm_uart_core.c b/drivers/serial/cpm_uart/cpm_uart_core.c index a0d6136deb9b..0abb544ae63d 100644 --- a/drivers/serial/cpm_uart/cpm_uart_core.c +++ b/drivers/serial/cpm_uart/cpm_uart_core.c | |||
@@ -248,7 +248,7 @@ static void cpm_uart_break_ctl(struct uart_port *port, int break_state) | |||
248 | /* | 248 | /* |
249 | * Transmit characters, refill buffer descriptor, if possible | 249 | * Transmit characters, refill buffer descriptor, if possible |
250 | */ | 250 | */ |
251 | static void cpm_uart_int_tx(struct uart_port *port, struct pt_regs *regs) | 251 | static void cpm_uart_int_tx(struct uart_port *port) |
252 | { | 252 | { |
253 | pr_debug("CPM uart[%d]:TX INT\n", port->line); | 253 | pr_debug("CPM uart[%d]:TX INT\n", port->line); |
254 | 254 | ||
@@ -258,7 +258,7 @@ static void cpm_uart_int_tx(struct uart_port *port, struct pt_regs *regs) | |||
258 | /* | 258 | /* |
259 | * Receive characters | 259 | * Receive characters |
260 | */ | 260 | */ |
261 | static void cpm_uart_int_rx(struct uart_port *port, struct pt_regs *regs) | 261 | static void cpm_uart_int_rx(struct uart_port *port) |
262 | { | 262 | { |
263 | int i; | 263 | int i; |
264 | unsigned char ch, *cp; | 264 | unsigned char ch, *cp; |
@@ -304,7 +304,7 @@ static void cpm_uart_int_rx(struct uart_port *port, struct pt_regs *regs) | |||
304 | if (status & | 304 | if (status & |
305 | (BD_SC_BR | BD_SC_FR | BD_SC_PR | BD_SC_OV)) | 305 | (BD_SC_BR | BD_SC_FR | BD_SC_PR | BD_SC_OV)) |
306 | goto handle_error; | 306 | goto handle_error; |
307 | if (uart_handle_sysrq_char(port, ch, regs)) | 307 | if (uart_handle_sysrq_char(port, ch)) |
308 | continue; | 308 | continue; |
309 | 309 | ||
310 | error_return: | 310 | error_return: |
@@ -373,7 +373,7 @@ static void cpm_uart_int_rx(struct uart_port *port, struct pt_regs *regs) | |||
373 | /* | 373 | /* |
374 | * Asynchron mode interrupt handler | 374 | * Asynchron mode interrupt handler |
375 | */ | 375 | */ |
376 | static irqreturn_t cpm_uart_int(int irq, void *data, struct pt_regs *regs) | 376 | static irqreturn_t cpm_uart_int(int irq, void *data) |
377 | { | 377 | { |
378 | u8 events; | 378 | u8 events; |
379 | struct uart_port *port = (struct uart_port *)data; | 379 | struct uart_port *port = (struct uart_port *)data; |
@@ -389,18 +389,18 @@ static irqreturn_t cpm_uart_int(int irq, void *data, struct pt_regs *regs) | |||
389 | if (events & SMCM_BRKE) | 389 | if (events & SMCM_BRKE) |
390 | uart_handle_break(port); | 390 | uart_handle_break(port); |
391 | if (events & SMCM_RX) | 391 | if (events & SMCM_RX) |
392 | cpm_uart_int_rx(port, regs); | 392 | cpm_uart_int_rx(port); |
393 | if (events & SMCM_TX) | 393 | if (events & SMCM_TX) |
394 | cpm_uart_int_tx(port, regs); | 394 | cpm_uart_int_tx(port); |
395 | } else { | 395 | } else { |
396 | events = sccp->scc_scce; | 396 | events = sccp->scc_scce; |
397 | sccp->scc_scce = events; | 397 | sccp->scc_scce = events; |
398 | if (events & UART_SCCM_BRKE) | 398 | if (events & UART_SCCM_BRKE) |
399 | uart_handle_break(port); | 399 | uart_handle_break(port); |
400 | if (events & UART_SCCM_RX) | 400 | if (events & UART_SCCM_RX) |
401 | cpm_uart_int_rx(port, regs); | 401 | cpm_uart_int_rx(port); |
402 | if (events & UART_SCCM_TX) | 402 | if (events & UART_SCCM_TX) |
403 | cpm_uart_int_tx(port, regs); | 403 | cpm_uart_int_tx(port); |
404 | } | 404 | } |
405 | return (events) ? IRQ_HANDLED : IRQ_NONE; | 405 | return (events) ? IRQ_HANDLED : IRQ_NONE; |
406 | } | 406 | } |
diff --git a/drivers/serial/crisv10.c b/drivers/serial/crisv10.c index 9851d9eff022..7a24e53546c7 100644 --- a/drivers/serial/crisv10.c +++ b/drivers/serial/crisv10.c | |||
@@ -2346,7 +2346,7 @@ start_receive(struct e100_serial *info) | |||
2346 | */ | 2346 | */ |
2347 | 2347 | ||
2348 | static irqreturn_t | 2348 | static irqreturn_t |
2349 | tr_interrupt(int irq, void *dev_id, struct pt_regs * regs) | 2349 | tr_interrupt(int irq, void *dev_id) |
2350 | { | 2350 | { |
2351 | struct e100_serial *info; | 2351 | struct e100_serial *info; |
2352 | unsigned long ireg; | 2352 | unsigned long ireg; |
@@ -2395,7 +2395,7 @@ tr_interrupt(int irq, void *dev_id, struct pt_regs * regs) | |||
2395 | /* dma input channel interrupt handler */ | 2395 | /* dma input channel interrupt handler */ |
2396 | 2396 | ||
2397 | static irqreturn_t | 2397 | static irqreturn_t |
2398 | rec_interrupt(int irq, void *dev_id, struct pt_regs * regs) | 2398 | rec_interrupt(int irq, void *dev_id) |
2399 | { | 2399 | { |
2400 | struct e100_serial *info; | 2400 | struct e100_serial *info; |
2401 | unsigned long ireg; | 2401 | unsigned long ireg; |
@@ -3054,7 +3054,7 @@ static void handle_ser_tx_interrupt(struct e100_serial *info) | |||
3054 | * ser_int duration: just sending: 8-15 us normally, up to 73 us | 3054 | * ser_int duration: just sending: 8-15 us normally, up to 73 us |
3055 | */ | 3055 | */ |
3056 | static irqreturn_t | 3056 | static irqreturn_t |
3057 | ser_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 3057 | ser_interrupt(int irq, void *dev_id) |
3058 | { | 3058 | { |
3059 | static volatile int tx_started = 0; | 3059 | static volatile int tx_started = 0; |
3060 | struct e100_serial *info; | 3060 | struct e100_serial *info; |
diff --git a/drivers/serial/dz.c b/drivers/serial/dz.c index 8a98aae80e22..53662b33b841 100644 --- a/drivers/serial/dz.c +++ b/drivers/serial/dz.c | |||
@@ -339,7 +339,7 @@ static inline void check_modem_status(struct dz_port *dport) | |||
339 | * It deals with the multiple ports. | 339 | * It deals with the multiple ports. |
340 | * ------------------------------------------------------------ | 340 | * ------------------------------------------------------------ |
341 | */ | 341 | */ |
342 | static irqreturn_t dz_interrupt(int irq, void *dev, struct pt_regs *regs) | 342 | static irqreturn_t dz_interrupt(int irq, void *dev) |
343 | { | 343 | { |
344 | struct dz_port *dport; | 344 | struct dz_port *dport; |
345 | unsigned short status; | 345 | unsigned short status; |
diff --git a/drivers/serial/icom.c b/drivers/serial/icom.c index a3c00a252149..8aa0f641866b 100644 --- a/drivers/serial/icom.c +++ b/drivers/serial/icom.c | |||
@@ -844,8 +844,7 @@ static void process_interrupt(u16 port_int_reg, | |||
844 | spin_unlock(&icom_port->uart_port.lock); | 844 | spin_unlock(&icom_port->uart_port.lock); |
845 | } | 845 | } |
846 | 846 | ||
847 | static irqreturn_t icom_interrupt(int irq, void *dev_id, | 847 | static irqreturn_t icom_interrupt(int irq, void *dev_id) |
848 | struct pt_regs *regs) | ||
849 | { | 848 | { |
850 | void __iomem * int_reg; | 849 | void __iomem * int_reg; |
851 | u32 adapter_interrupts; | 850 | u32 adapter_interrupts; |
diff --git a/drivers/serial/imx.c b/drivers/serial/imx.c index 4a142d6b8f38..ee5c782597dd 100644 --- a/drivers/serial/imx.c +++ b/drivers/serial/imx.c | |||
@@ -182,7 +182,7 @@ static void imx_start_tx(struct uart_port *port) | |||
182 | imx_transmit_buffer(sport); | 182 | imx_transmit_buffer(sport); |
183 | } | 183 | } |
184 | 184 | ||
185 | static irqreturn_t imx_rtsint(int irq, void *dev_id, struct pt_regs *regs) | 185 | static irqreturn_t imx_rtsint(int irq, void *dev_id) |
186 | { | 186 | { |
187 | struct imx_port *sport = (struct imx_port *)dev_id; | 187 | struct imx_port *sport = (struct imx_port *)dev_id; |
188 | unsigned int val = USR1((u32)sport->port.membase)&USR1_RTSS; | 188 | unsigned int val = USR1((u32)sport->port.membase)&USR1_RTSS; |
@@ -198,7 +198,7 @@ static irqreturn_t imx_rtsint(int irq, void *dev_id, struct pt_regs *regs) | |||
198 | return IRQ_HANDLED; | 198 | return IRQ_HANDLED; |
199 | } | 199 | } |
200 | 200 | ||
201 | static irqreturn_t imx_txint(int irq, void *dev_id, struct pt_regs *regs) | 201 | static irqreturn_t imx_txint(int irq, void *dev_id) |
202 | { | 202 | { |
203 | struct imx_port *sport = (struct imx_port *)dev_id; | 203 | struct imx_port *sport = (struct imx_port *)dev_id; |
204 | struct circ_buf *xmit = &sport->port.info->xmit; | 204 | struct circ_buf *xmit = &sport->port.info->xmit; |
@@ -227,7 +227,7 @@ out: | |||
227 | return IRQ_HANDLED; | 227 | return IRQ_HANDLED; |
228 | } | 228 | } |
229 | 229 | ||
230 | static irqreturn_t imx_rxint(int irq, void *dev_id, struct pt_regs *regs) | 230 | static irqreturn_t imx_rxint(int irq, void *dev_id) |
231 | { | 231 | { |
232 | struct imx_port *sport = dev_id; | 232 | struct imx_port *sport = dev_id; |
233 | unsigned int rx,flg,ignored = 0; | 233 | unsigned int rx,flg,ignored = 0; |
@@ -248,7 +248,7 @@ static irqreturn_t imx_rxint(int irq, void *dev_id, struct pt_regs *regs) | |||
248 | } | 248 | } |
249 | 249 | ||
250 | if (uart_handle_sysrq_char | 250 | if (uart_handle_sysrq_char |
251 | (&sport->port, (unsigned char)rx, regs)) | 251 | (&sport->port, (unsigned char)rx)) |
252 | goto ignore_char; | 252 | goto ignore_char; |
253 | 253 | ||
254 | if( rx & (URXD_PRERR | URXD_OVRRUN | URXD_FRMERR) ) | 254 | if( rx & (URXD_PRERR | URXD_OVRRUN | URXD_FRMERR) ) |
diff --git a/drivers/serial/ioc3_serial.c b/drivers/serial/ioc3_serial.c index 8097cd91f16b..2308d26c8629 100644 --- a/drivers/serial/ioc3_serial.c +++ b/drivers/serial/ioc3_serial.c | |||
@@ -1428,13 +1428,12 @@ static int receive_chars(struct uart_port *the_port) | |||
1428 | * @is : submodule | 1428 | * @is : submodule |
1429 | * @idd: driver data | 1429 | * @idd: driver data |
1430 | * @pending: interrupts to handle | 1430 | * @pending: interrupts to handle |
1431 | * @regs: pt_regs | ||
1432 | */ | 1431 | */ |
1433 | 1432 | ||
1434 | static int inline | 1433 | static int inline |
1435 | ioc3uart_intr_one(struct ioc3_submodule *is, | 1434 | ioc3uart_intr_one(struct ioc3_submodule *is, |
1436 | struct ioc3_driver_data *idd, | 1435 | struct ioc3_driver_data *idd, |
1437 | unsigned int pending, struct pt_regs *regs) | 1436 | unsigned int pending) |
1438 | { | 1437 | { |
1439 | int port_num = GET_PORT_FROM_SIO_IR(pending); | 1438 | int port_num = GET_PORT_FROM_SIO_IR(pending); |
1440 | struct port_hooks *hooks; | 1439 | struct port_hooks *hooks; |
@@ -1628,13 +1627,12 @@ ioc3uart_intr_one(struct ioc3_submodule *is, | |||
1628 | * @is : submodule | 1627 | * @is : submodule |
1629 | * @idd: driver data | 1628 | * @idd: driver data |
1630 | * @pending: interrupts to handle | 1629 | * @pending: interrupts to handle |
1631 | * @regs: pt_regs | ||
1632 | * | 1630 | * |
1633 | */ | 1631 | */ |
1634 | 1632 | ||
1635 | static int ioc3uart_intr(struct ioc3_submodule *is, | 1633 | static int ioc3uart_intr(struct ioc3_submodule *is, |
1636 | struct ioc3_driver_data *idd, | 1634 | struct ioc3_driver_data *idd, |
1637 | unsigned int pending, struct pt_regs *regs) | 1635 | unsigned int pending) |
1638 | { | 1636 | { |
1639 | int ret = 0; | 1637 | int ret = 0; |
1640 | 1638 | ||
@@ -1644,9 +1642,9 @@ static int ioc3uart_intr(struct ioc3_submodule *is, | |||
1644 | */ | 1642 | */ |
1645 | 1643 | ||
1646 | if (pending & SIO_IR_SA) | 1644 | if (pending & SIO_IR_SA) |
1647 | ret |= ioc3uart_intr_one(is, idd, pending & SIO_IR_SA, regs); | 1645 | ret |= ioc3uart_intr_one(is, idd, pending & SIO_IR_SA); |
1648 | if (pending & SIO_IR_SB) | 1646 | if (pending & SIO_IR_SB) |
1649 | ret |= ioc3uart_intr_one(is, idd, pending & SIO_IR_SB, regs); | 1647 | ret |= ioc3uart_intr_one(is, idd, pending & SIO_IR_SB); |
1650 | 1648 | ||
1651 | return ret; | 1649 | return ret; |
1652 | } | 1650 | } |
diff --git a/drivers/serial/ioc4_serial.c b/drivers/serial/ioc4_serial.c index 5ec4716c99bf..98ce88d80207 100644 --- a/drivers/serial/ioc4_serial.c +++ b/drivers/serial/ioc4_serial.c | |||
@@ -987,10 +987,9 @@ intr_connect(struct ioc4_soft *soft, int type, | |||
987 | * ioc4_intr - Top level IOC4 interrupt handler. | 987 | * ioc4_intr - Top level IOC4 interrupt handler. |
988 | * @irq: irq value | 988 | * @irq: irq value |
989 | * @arg: handler arg | 989 | * @arg: handler arg |
990 | * @regs: registers | ||
991 | */ | 990 | */ |
992 | 991 | ||
993 | static irqreturn_t ioc4_intr(int irq, void *arg, struct pt_regs *regs) | 992 | static irqreturn_t ioc4_intr(int irq, void *arg) |
994 | { | 993 | { |
995 | struct ioc4_soft *soft; | 994 | struct ioc4_soft *soft; |
996 | uint32_t this_ir, this_mir; | 995 | uint32_t this_ir, this_mir; |
diff --git a/drivers/serial/ip22zilog.c b/drivers/serial/ip22zilog.c index dbf13c03a1bb..dca6c1bde8f9 100644 --- a/drivers/serial/ip22zilog.c +++ b/drivers/serial/ip22zilog.c | |||
@@ -252,8 +252,7 @@ static void ip22zilog_maybe_update_regs(struct uart_ip22zilog_port *up, | |||
252 | } | 252 | } |
253 | 253 | ||
254 | static void ip22zilog_receive_chars(struct uart_ip22zilog_port *up, | 254 | static void ip22zilog_receive_chars(struct uart_ip22zilog_port *up, |
255 | struct zilog_channel *channel, | 255 | struct zilog_channel *channel) |
256 | struct pt_regs *regs) | ||
257 | { | 256 | { |
258 | struct tty_struct *tty = up->port.info->tty; /* XXX info==NULL? */ | 257 | struct tty_struct *tty = up->port.info->tty; /* XXX info==NULL? */ |
259 | 258 | ||
@@ -319,7 +318,7 @@ static void ip22zilog_receive_chars(struct uart_ip22zilog_port *up, | |||
319 | else if (r1 & CRC_ERR) | 318 | else if (r1 & CRC_ERR) |
320 | flag = TTY_FRAME; | 319 | flag = TTY_FRAME; |
321 | } | 320 | } |
322 | if (uart_handle_sysrq_char(&up->port, ch, regs)) | 321 | if (uart_handle_sysrq_char(&up->port, ch)) |
323 | goto next_char; | 322 | goto next_char; |
324 | 323 | ||
325 | if (up->port.ignore_status_mask == 0xff || | 324 | if (up->port.ignore_status_mask == 0xff || |
@@ -339,8 +338,7 @@ static void ip22zilog_receive_chars(struct uart_ip22zilog_port *up, | |||
339 | } | 338 | } |
340 | 339 | ||
341 | static void ip22zilog_status_handle(struct uart_ip22zilog_port *up, | 340 | static void ip22zilog_status_handle(struct uart_ip22zilog_port *up, |
342 | struct zilog_channel *channel, | 341 | struct zilog_channel *channel) |
343 | struct pt_regs *regs) | ||
344 | { | 342 | { |
345 | unsigned char status; | 343 | unsigned char status; |
346 | 344 | ||
@@ -443,7 +441,7 @@ ack_tx_int: | |||
443 | ZS_WSYNC(channel); | 441 | ZS_WSYNC(channel); |
444 | } | 442 | } |
445 | 443 | ||
446 | static irqreturn_t ip22zilog_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 444 | static irqreturn_t ip22zilog_interrupt(int irq, void *dev_id) |
447 | { | 445 | { |
448 | struct uart_ip22zilog_port *up = dev_id; | 446 | struct uart_ip22zilog_port *up = dev_id; |
449 | 447 | ||
@@ -462,9 +460,9 @@ static irqreturn_t ip22zilog_interrupt(int irq, void *dev_id, struct pt_regs *re | |||
462 | ZS_WSYNC(channel); | 460 | ZS_WSYNC(channel); |
463 | 461 | ||
464 | if (r3 & CHARxIP) | 462 | if (r3 & CHARxIP) |
465 | ip22zilog_receive_chars(up, channel, regs); | 463 | ip22zilog_receive_chars(up, channel); |
466 | if (r3 & CHAEXT) | 464 | if (r3 & CHAEXT) |
467 | ip22zilog_status_handle(up, channel, regs); | 465 | ip22zilog_status_handle(up, channel); |
468 | if (r3 & CHATxIP) | 466 | if (r3 & CHATxIP) |
469 | ip22zilog_transmit_chars(up, channel); | 467 | ip22zilog_transmit_chars(up, channel); |
470 | } | 468 | } |
@@ -481,9 +479,9 @@ static irqreturn_t ip22zilog_interrupt(int irq, void *dev_id, struct pt_regs *re | |||
481 | ZS_WSYNC(channel); | 479 | ZS_WSYNC(channel); |
482 | 480 | ||
483 | if (r3 & CHBRxIP) | 481 | if (r3 & CHBRxIP) |
484 | ip22zilog_receive_chars(up, channel, regs); | 482 | ip22zilog_receive_chars(up, channel); |
485 | if (r3 & CHBEXT) | 483 | if (r3 & CHBEXT) |
486 | ip22zilog_status_handle(up, channel, regs); | 484 | ip22zilog_status_handle(up, channel); |
487 | if (r3 & CHBTxIP) | 485 | if (r3 & CHBTxIP) |
488 | ip22zilog_transmit_chars(up, channel); | 486 | ip22zilog_transmit_chars(up, channel); |
489 | } | 487 | } |
diff --git a/drivers/serial/jsm/jsm.h b/drivers/serial/jsm/jsm.h index 043f50b1d10c..12c934a1f274 100644 --- a/drivers/serial/jsm/jsm.h +++ b/drivers/serial/jsm/jsm.h | |||
@@ -99,7 +99,7 @@ struct jsm_channel; | |||
99 | * Per board operations structure * | 99 | * Per board operations structure * |
100 | ************************************************************************/ | 100 | ************************************************************************/ |
101 | struct board_ops { | 101 | struct board_ops { |
102 | irqreturn_t (*intr) (int irq, void *voidbrd, struct pt_regs *regs); | 102 | irq_handler_t intr; |
103 | void (*uart_init) (struct jsm_channel *ch); | 103 | void (*uart_init) (struct jsm_channel *ch); |
104 | void (*uart_off) (struct jsm_channel *ch); | 104 | void (*uart_off) (struct jsm_channel *ch); |
105 | void (*param) (struct jsm_channel *ch); | 105 | void (*param) (struct jsm_channel *ch); |
diff --git a/drivers/serial/jsm/jsm_neo.c b/drivers/serial/jsm/jsm_neo.c index a5fc589d6ef5..8be8da37f629 100644 --- a/drivers/serial/jsm/jsm_neo.c +++ b/drivers/serial/jsm/jsm_neo.c | |||
@@ -1114,9 +1114,9 @@ static void neo_param(struct jsm_channel *ch) | |||
1114 | * | 1114 | * |
1115 | * Neo specific interrupt handler. | 1115 | * Neo specific interrupt handler. |
1116 | */ | 1116 | */ |
1117 | static irqreturn_t neo_intr(int irq, void *voidbrd, struct pt_regs *regs) | 1117 | static irqreturn_t neo_intr(int irq, void *voidbrd) |
1118 | { | 1118 | { |
1119 | struct jsm_board *brd = (struct jsm_board *) voidbrd; | 1119 | struct jsm_board *brd = voidbrd; |
1120 | struct jsm_channel *ch; | 1120 | struct jsm_channel *ch; |
1121 | int port = 0; | 1121 | int port = 0; |
1122 | int type = 0; | 1122 | int type = 0; |
diff --git a/drivers/serial/m32r_sio.c b/drivers/serial/m32r_sio.c index 28c9ce6f0bdc..7656a35f5e2f 100644 --- a/drivers/serial/m32r_sio.c +++ b/drivers/serial/m32r_sio.c | |||
@@ -323,8 +323,7 @@ static void m32r_sio_enable_ms(struct uart_port *port) | |||
323 | serial_out(up, UART_IER, up->ier); | 323 | serial_out(up, UART_IER, up->ier); |
324 | } | 324 | } |
325 | 325 | ||
326 | static void receive_chars(struct uart_sio_port *up, int *status, | 326 | static void receive_chars(struct uart_sio_port *up, int *status) |
327 | struct pt_regs *regs) | ||
328 | { | 327 | { |
329 | struct tty_struct *tty = up->port.info->tty; | 328 | struct tty_struct *tty = up->port.info->tty; |
330 | unsigned char ch; | 329 | unsigned char ch; |
@@ -378,7 +377,7 @@ static void receive_chars(struct uart_sio_port *up, int *status, | |||
378 | else if (*status & UART_LSR_FE) | 377 | else if (*status & UART_LSR_FE) |
379 | flag = TTY_FRAME; | 378 | flag = TTY_FRAME; |
380 | } | 379 | } |
381 | if (uart_handle_sysrq_char(&up->port, ch, regs)) | 380 | if (uart_handle_sysrq_char(&up->port, ch)) |
382 | goto ignore_char; | 381 | goto ignore_char; |
383 | if ((*status & up->port.ignore_status_mask) == 0) | 382 | if ((*status & up->port.ignore_status_mask) == 0) |
384 | tty_insert_flip_char(tty, ch, flag); | 383 | tty_insert_flip_char(tty, ch, flag); |
@@ -439,12 +438,12 @@ static void transmit_chars(struct uart_sio_port *up) | |||
439 | * This handles the interrupt from one port. | 438 | * This handles the interrupt from one port. |
440 | */ | 439 | */ |
441 | static inline void m32r_sio_handle_port(struct uart_sio_port *up, | 440 | static inline void m32r_sio_handle_port(struct uart_sio_port *up, |
442 | unsigned int status, struct pt_regs *regs) | 441 | unsigned int status) |
443 | { | 442 | { |
444 | DEBUG_INTR("status = %x...", status); | 443 | DEBUG_INTR("status = %x...", status); |
445 | 444 | ||
446 | if (status & 0x04) | 445 | if (status & 0x04) |
447 | receive_chars(up, &status, regs); | 446 | receive_chars(up, &status); |
448 | if (status & 0x01) | 447 | if (status & 0x01) |
449 | transmit_chars(up); | 448 | transmit_chars(up); |
450 | } | 449 | } |
@@ -463,8 +462,7 @@ static inline void m32r_sio_handle_port(struct uart_sio_port *up, | |||
463 | * This means we need to loop through all ports. checking that they | 462 | * This means we need to loop through all ports. checking that they |
464 | * don't have an interrupt pending. | 463 | * don't have an interrupt pending. |
465 | */ | 464 | */ |
466 | static irqreturn_t m32r_sio_interrupt(int irq, void *dev_id, | 465 | static irqreturn_t m32r_sio_interrupt(int irq, void *dev_id) |
467 | struct pt_regs *regs) | ||
468 | { | 466 | { |
469 | struct irq_info *i = dev_id; | 467 | struct irq_info *i = dev_id; |
470 | struct list_head *l, *end = NULL; | 468 | struct list_head *l, *end = NULL; |
@@ -492,7 +490,7 @@ static irqreturn_t m32r_sio_interrupt(int irq, void *dev_id, | |||
492 | sts = sio_in(up, SIOSTS); | 490 | sts = sio_in(up, SIOSTS); |
493 | if (sts & 0x5) { | 491 | if (sts & 0x5) { |
494 | spin_lock(&up->port.lock); | 492 | spin_lock(&up->port.lock); |
495 | m32r_sio_handle_port(up, sts, regs); | 493 | m32r_sio_handle_port(up, sts); |
496 | spin_unlock(&up->port.lock); | 494 | spin_unlock(&up->port.lock); |
497 | 495 | ||
498 | end = NULL; | 496 | end = NULL; |
@@ -592,7 +590,7 @@ static void m32r_sio_timeout(unsigned long data) | |||
592 | sts = sio_in(up, SIOSTS); | 590 | sts = sio_in(up, SIOSTS); |
593 | if (sts & 0x5) { | 591 | if (sts & 0x5) { |
594 | spin_lock(&up->port.lock); | 592 | spin_lock(&up->port.lock); |
595 | m32r_sio_handle_port(up, sts, NULL); | 593 | m32r_sio_handle_port(up, sts); |
596 | spin_unlock(&up->port.lock); | 594 | spin_unlock(&up->port.lock); |
597 | } | 595 | } |
598 | 596 | ||
diff --git a/drivers/serial/mcfserial.c b/drivers/serial/mcfserial.c index 00d7859c167e..aee1b31f1a1c 100644 --- a/drivers/serial/mcfserial.c +++ b/drivers/serial/mcfserial.c | |||
@@ -385,7 +385,7 @@ static inline void transmit_chars(struct mcf_serial *info) | |||
385 | /* | 385 | /* |
386 | * This is the serial driver's generic interrupt routine | 386 | * This is the serial driver's generic interrupt routine |
387 | */ | 387 | */ |
388 | irqreturn_t mcfrs_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 388 | irqreturn_t mcfrs_interrupt(int irq, void *dev_id) |
389 | { | 389 | { |
390 | struct mcf_serial *info; | 390 | struct mcf_serial *info; |
391 | unsigned char isr; | 391 | unsigned char isr; |
diff --git a/drivers/serial/mpc52xx_uart.c b/drivers/serial/mpc52xx_uart.c index dbad0e31e005..4f80c5b4a753 100644 --- a/drivers/serial/mpc52xx_uart.c +++ b/drivers/serial/mpc52xx_uart.c | |||
@@ -85,7 +85,7 @@ static struct uart_port mpc52xx_uart_ports[MPC52xx_PSC_MAXNUM]; | |||
85 | 85 | ||
86 | 86 | ||
87 | /* Forward declaration of the interruption handling routine */ | 87 | /* Forward declaration of the interruption handling routine */ |
88 | static irqreturn_t mpc52xx_uart_int(int irq,void *dev_id,struct pt_regs *regs); | 88 | static irqreturn_t mpc52xx_uart_int(int irq,void *dev_id); |
89 | 89 | ||
90 | 90 | ||
91 | /* Simple macro to test if a port is console or not. This one is taken | 91 | /* Simple macro to test if a port is console or not. This one is taken |
@@ -410,7 +410,7 @@ static struct uart_ops mpc52xx_uart_ops = { | |||
410 | /* ======================================================================== */ | 410 | /* ======================================================================== */ |
411 | 411 | ||
412 | static inline int | 412 | static inline int |
413 | mpc52xx_uart_int_rx_chars(struct uart_port *port, struct pt_regs *regs) | 413 | mpc52xx_uart_int_rx_chars(struct uart_port *port) |
414 | { | 414 | { |
415 | struct tty_struct *tty = port->info->tty; | 415 | struct tty_struct *tty = port->info->tty; |
416 | unsigned char ch, flag; | 416 | unsigned char ch, flag; |
@@ -425,7 +425,7 @@ mpc52xx_uart_int_rx_chars(struct uart_port *port, struct pt_regs *regs) | |||
425 | 425 | ||
426 | /* Handle sysreq char */ | 426 | /* Handle sysreq char */ |
427 | #ifdef SUPPORT_SYSRQ | 427 | #ifdef SUPPORT_SYSRQ |
428 | if (uart_handle_sysrq_char(port, ch, regs)) { | 428 | if (uart_handle_sysrq_char(port, ch)) { |
429 | port->sysrq = 0; | 429 | port->sysrq = 0; |
430 | continue; | 430 | continue; |
431 | } | 431 | } |
@@ -510,21 +510,13 @@ mpc52xx_uart_int_tx_chars(struct uart_port *port) | |||
510 | } | 510 | } |
511 | 511 | ||
512 | static irqreturn_t | 512 | static irqreturn_t |
513 | mpc52xx_uart_int(int irq, void *dev_id, struct pt_regs *regs) | 513 | mpc52xx_uart_int(int irq, void *dev_id) |
514 | { | 514 | { |
515 | struct uart_port *port = (struct uart_port *) dev_id; | 515 | struct uart_port *port = dev_id; |
516 | unsigned long pass = ISR_PASS_LIMIT; | 516 | unsigned long pass = ISR_PASS_LIMIT; |
517 | unsigned int keepgoing; | 517 | unsigned int keepgoing; |
518 | unsigned short status; | 518 | unsigned short status; |
519 | 519 | ||
520 | if ( irq != port->irq ) { | ||
521 | printk( KERN_WARNING | ||
522 | "mpc52xx_uart_int : " \ | ||
523 | "Received wrong int %d. Waiting for %d\n", | ||
524 | irq, port->irq); | ||
525 | return IRQ_NONE; | ||
526 | } | ||
527 | |||
528 | spin_lock(&port->lock); | 520 | spin_lock(&port->lock); |
529 | 521 | ||
530 | /* While we have stuff to do, we continue */ | 522 | /* While we have stuff to do, we continue */ |
@@ -539,7 +531,7 @@ mpc52xx_uart_int(int irq, void *dev_id, struct pt_regs *regs) | |||
539 | /* Do we need to receive chars ? */ | 531 | /* Do we need to receive chars ? */ |
540 | /* For this RX interrupts must be on and some chars waiting */ | 532 | /* For this RX interrupts must be on and some chars waiting */ |
541 | if ( status & MPC52xx_PSC_IMR_RXRDY ) | 533 | if ( status & MPC52xx_PSC_IMR_RXRDY ) |
542 | keepgoing |= mpc52xx_uart_int_rx_chars(port, regs); | 534 | keepgoing |= mpc52xx_uart_int_rx_chars(port); |
543 | 535 | ||
544 | /* Do we need to send chars ? */ | 536 | /* Do we need to send chars ? */ |
545 | /* For this, TX must be ready and TX interrupt enabled */ | 537 | /* For this, TX must be ready and TX interrupt enabled */ |
diff --git a/drivers/serial/mpsc.c b/drivers/serial/mpsc.c index 704243c9f78a..8eea69f29989 100644 --- a/drivers/serial/mpsc.c +++ b/drivers/serial/mpsc.c | |||
@@ -992,7 +992,7 @@ mpsc_make_ready(struct mpsc_port_info *pi) | |||
992 | */ | 992 | */ |
993 | 993 | ||
994 | static inline int | 994 | static inline int |
995 | mpsc_rx_intr(struct mpsc_port_info *pi, struct pt_regs *regs) | 995 | mpsc_rx_intr(struct mpsc_port_info *pi) |
996 | { | 996 | { |
997 | struct mpsc_rx_desc *rxre; | 997 | struct mpsc_rx_desc *rxre; |
998 | struct tty_struct *tty = pi->port.info->tty; | 998 | struct tty_struct *tty = pi->port.info->tty; |
@@ -1072,7 +1072,7 @@ mpsc_rx_intr(struct mpsc_port_info *pi, struct pt_regs *regs) | |||
1072 | flag = TTY_PARITY; | 1072 | flag = TTY_PARITY; |
1073 | } | 1073 | } |
1074 | 1074 | ||
1075 | if (uart_handle_sysrq_char(&pi->port, *bp, regs)) { | 1075 | if (uart_handle_sysrq_char(&pi->port, *bp)) { |
1076 | bp++; | 1076 | bp++; |
1077 | bytes_in--; | 1077 | bytes_in--; |
1078 | goto next_frame; | 1078 | goto next_frame; |
@@ -1257,7 +1257,7 @@ mpsc_tx_intr(struct mpsc_port_info *pi) | |||
1257 | * handling those descriptors, we restart the Rx/Tx engines if they're stopped. | 1257 | * handling those descriptors, we restart the Rx/Tx engines if they're stopped. |
1258 | */ | 1258 | */ |
1259 | static irqreturn_t | 1259 | static irqreturn_t |
1260 | mpsc_sdma_intr(int irq, void *dev_id, struct pt_regs *regs) | 1260 | mpsc_sdma_intr(int irq, void *dev_id) |
1261 | { | 1261 | { |
1262 | struct mpsc_port_info *pi = dev_id; | 1262 | struct mpsc_port_info *pi = dev_id; |
1263 | ulong iflags; | 1263 | ulong iflags; |
@@ -1267,7 +1267,7 @@ mpsc_sdma_intr(int irq, void *dev_id, struct pt_regs *regs) | |||
1267 | 1267 | ||
1268 | spin_lock_irqsave(&pi->port.lock, iflags); | 1268 | spin_lock_irqsave(&pi->port.lock, iflags); |
1269 | mpsc_sdma_intr_ack(pi); | 1269 | mpsc_sdma_intr_ack(pi); |
1270 | if (mpsc_rx_intr(pi, regs)) | 1270 | if (mpsc_rx_intr(pi)) |
1271 | rc = IRQ_HANDLED; | 1271 | rc = IRQ_HANDLED; |
1272 | if (mpsc_tx_intr(pi)) | 1272 | if (mpsc_tx_intr(pi)) |
1273 | rc = IRQ_HANDLED; | 1273 | rc = IRQ_HANDLED; |
diff --git a/drivers/serial/mux.c b/drivers/serial/mux.c index aa819d3f8ee5..8ad1b8c5ec5d 100644 --- a/drivers/serial/mux.c +++ b/drivers/serial/mux.c | |||
@@ -230,7 +230,7 @@ static void mux_read(struct uart_port *port) | |||
230 | continue; | 230 | continue; |
231 | } | 231 | } |
232 | 232 | ||
233 | if (uart_handle_sysrq_char(port, data & 0xffu, NULL)) | 233 | if (uart_handle_sysrq_char(port, data & 0xffu)) |
234 | continue; | 234 | continue; |
235 | 235 | ||
236 | tty_insert_flip_char(tty, data & 0xFF, TTY_NORMAL); | 236 | tty_insert_flip_char(tty, data & 0xFF, TTY_NORMAL); |
diff --git a/drivers/serial/netx-serial.c b/drivers/serial/netx-serial.c index 7502109d37f0..062bad457b1a 100644 --- a/drivers/serial/netx-serial.c +++ b/drivers/serial/netx-serial.c | |||
@@ -200,7 +200,7 @@ static void netx_txint(struct uart_port *port) | |||
200 | uart_write_wakeup(port); | 200 | uart_write_wakeup(port); |
201 | } | 201 | } |
202 | 202 | ||
203 | static void netx_rxint(struct uart_port *port, struct pt_regs *regs) | 203 | static void netx_rxint(struct uart_port *port) |
204 | { | 204 | { |
205 | unsigned char rx, flg, status; | 205 | unsigned char rx, flg, status; |
206 | struct tty_struct *tty = port->info->tty; | 206 | struct tty_struct *tty = port->info->tty; |
@@ -235,7 +235,7 @@ static void netx_rxint(struct uart_port *port, struct pt_regs *regs) | |||
235 | flg = TTY_FRAME; | 235 | flg = TTY_FRAME; |
236 | } | 236 | } |
237 | 237 | ||
238 | if (uart_handle_sysrq_char(port, rx, regs)) | 238 | if (uart_handle_sysrq_char(port, rx)) |
239 | continue; | 239 | continue; |
240 | 240 | ||
241 | uart_insert_char(port, status, SR_OE, rx, flg); | 241 | uart_insert_char(port, status, SR_OE, rx, flg); |
@@ -245,9 +245,9 @@ static void netx_rxint(struct uart_port *port, struct pt_regs *regs) | |||
245 | return; | 245 | return; |
246 | } | 246 | } |
247 | 247 | ||
248 | static irqreturn_t netx_int(int irq, void *dev_id, struct pt_regs *regs) | 248 | static irqreturn_t netx_int(int irq, void *dev_id) |
249 | { | 249 | { |
250 | struct uart_port *port = (struct uart_port *)dev_id; | 250 | struct uart_port *port = dev_id; |
251 | unsigned long flags; | 251 | unsigned long flags; |
252 | unsigned char status; | 252 | unsigned char status; |
253 | 253 | ||
@@ -256,7 +256,7 @@ static irqreturn_t netx_int(int irq, void *dev_id, struct pt_regs *regs) | |||
256 | status = readl(port->membase + UART_IIR) & IIR_MASK; | 256 | status = readl(port->membase + UART_IIR) & IIR_MASK; |
257 | while (status) { | 257 | while (status) { |
258 | if (status & IIR_RIS) | 258 | if (status & IIR_RIS) |
259 | netx_rxint(port, regs); | 259 | netx_rxint(port); |
260 | if (status & IIR_TIS) | 260 | if (status & IIR_TIS) |
261 | netx_txint(port); | 261 | netx_txint(port); |
262 | if (status & IIR_MIS) { | 262 | if (status & IIR_MIS) { |
diff --git a/drivers/serial/pmac_zilog.c b/drivers/serial/pmac_zilog.c index a3b99caf80e6..bf9809ed9c0b 100644 --- a/drivers/serial/pmac_zilog.c +++ b/drivers/serial/pmac_zilog.c | |||
@@ -204,8 +204,7 @@ static void pmz_maybe_update_regs(struct uart_pmac_port *uap) | |||
204 | } | 204 | } |
205 | } | 205 | } |
206 | 206 | ||
207 | static struct tty_struct *pmz_receive_chars(struct uart_pmac_port *uap, | 207 | static struct tty_struct *pmz_receive_chars(struct uart_pmac_port *uap) |
208 | struct pt_regs *regs) | ||
209 | { | 208 | { |
210 | struct tty_struct *tty = NULL; | 209 | struct tty_struct *tty = NULL; |
211 | unsigned char ch, r1, drop, error, flag; | 210 | unsigned char ch, r1, drop, error, flag; |
@@ -267,7 +266,7 @@ static struct tty_struct *pmz_receive_chars(struct uart_pmac_port *uap, | |||
267 | if (uap->port.sysrq) { | 266 | if (uap->port.sysrq) { |
268 | int swallow; | 267 | int swallow; |
269 | spin_unlock(&uap->port.lock); | 268 | spin_unlock(&uap->port.lock); |
270 | swallow = uart_handle_sysrq_char(&uap->port, ch, regs); | 269 | swallow = uart_handle_sysrq_char(&uap->port, ch); |
271 | spin_lock(&uap->port.lock); | 270 | spin_lock(&uap->port.lock); |
272 | if (swallow) | 271 | if (swallow) |
273 | goto next_char; | 272 | goto next_char; |
@@ -335,7 +334,7 @@ static struct tty_struct *pmz_receive_chars(struct uart_pmac_port *uap, | |||
335 | return tty; | 334 | return tty; |
336 | } | 335 | } |
337 | 336 | ||
338 | static void pmz_status_handle(struct uart_pmac_port *uap, struct pt_regs *regs) | 337 | static void pmz_status_handle(struct uart_pmac_port *uap) |
339 | { | 338 | { |
340 | unsigned char status; | 339 | unsigned char status; |
341 | 340 | ||
@@ -438,7 +437,7 @@ ack_tx_int: | |||
438 | } | 437 | } |
439 | 438 | ||
440 | /* Hrm... we register that twice, fixme later.... */ | 439 | /* Hrm... we register that twice, fixme later.... */ |
441 | static irqreturn_t pmz_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 440 | static irqreturn_t pmz_interrupt(int irq, void *dev_id) |
442 | { | 441 | { |
443 | struct uart_pmac_port *uap = dev_id; | 442 | struct uart_pmac_port *uap = dev_id; |
444 | struct uart_pmac_port *uap_a; | 443 | struct uart_pmac_port *uap_a; |
@@ -462,9 +461,9 @@ static irqreturn_t pmz_interrupt(int irq, void *dev_id, struct pt_regs *regs) | |||
462 | write_zsreg(uap_a, R0, RES_H_IUS); | 461 | write_zsreg(uap_a, R0, RES_H_IUS); |
463 | zssync(uap_a); | 462 | zssync(uap_a); |
464 | if (r3 & CHAEXT) | 463 | if (r3 & CHAEXT) |
465 | pmz_status_handle(uap_a, regs); | 464 | pmz_status_handle(uap_a); |
466 | if (r3 & CHARxIP) | 465 | if (r3 & CHARxIP) |
467 | tty = pmz_receive_chars(uap_a, regs); | 466 | tty = pmz_receive_chars(uap_a); |
468 | if (r3 & CHATxIP) | 467 | if (r3 & CHATxIP) |
469 | pmz_transmit_chars(uap_a); | 468 | pmz_transmit_chars(uap_a); |
470 | rc = IRQ_HANDLED; | 469 | rc = IRQ_HANDLED; |
@@ -482,9 +481,9 @@ static irqreturn_t pmz_interrupt(int irq, void *dev_id, struct pt_regs *regs) | |||
482 | write_zsreg(uap_b, R0, RES_H_IUS); | 481 | write_zsreg(uap_b, R0, RES_H_IUS); |
483 | zssync(uap_b); | 482 | zssync(uap_b); |
484 | if (r3 & CHBEXT) | 483 | if (r3 & CHBEXT) |
485 | pmz_status_handle(uap_b, regs); | 484 | pmz_status_handle(uap_b); |
486 | if (r3 & CHBRxIP) | 485 | if (r3 & CHBRxIP) |
487 | tty = pmz_receive_chars(uap_b, regs); | 486 | tty = pmz_receive_chars(uap_b); |
488 | if (r3 & CHBTxIP) | 487 | if (r3 & CHBTxIP) |
489 | pmz_transmit_chars(uap_b); | 488 | pmz_transmit_chars(uap_b); |
490 | rc = IRQ_HANDLED; | 489 | rc = IRQ_HANDLED; |
diff --git a/drivers/serial/pxa.c b/drivers/serial/pxa.c index a720953a404e..415fe9633a9b 100644 --- a/drivers/serial/pxa.c +++ b/drivers/serial/pxa.c | |||
@@ -98,8 +98,7 @@ static void serial_pxa_stop_rx(struct uart_port *port) | |||
98 | serial_out(up, UART_IER, up->ier); | 98 | serial_out(up, UART_IER, up->ier); |
99 | } | 99 | } |
100 | 100 | ||
101 | static inline void | 101 | static inline void receive_chars(struct uart_pxa_port *up, int *status) |
102 | receive_chars(struct uart_pxa_port *up, int *status, struct pt_regs *regs) | ||
103 | { | 102 | { |
104 | struct tty_struct *tty = up->port.info->tty; | 103 | struct tty_struct *tty = up->port.info->tty; |
105 | unsigned int ch, flag; | 104 | unsigned int ch, flag; |
@@ -153,7 +152,7 @@ receive_chars(struct uart_pxa_port *up, int *status, struct pt_regs *regs) | |||
153 | flag = TTY_FRAME; | 152 | flag = TTY_FRAME; |
154 | } | 153 | } |
155 | 154 | ||
156 | if (uart_handle_sysrq_char(&up->port, ch, regs)) | 155 | if (uart_handle_sysrq_char(&up->port, ch)) |
157 | goto ignore_char; | 156 | goto ignore_char; |
158 | 157 | ||
159 | uart_insert_char(&up->port, *status, UART_LSR_OE, ch, flag); | 158 | uart_insert_char(&up->port, *status, UART_LSR_OE, ch, flag); |
@@ -231,10 +230,9 @@ static inline void check_modem_status(struct uart_pxa_port *up) | |||
231 | /* | 230 | /* |
232 | * This handles the interrupt from one port. | 231 | * This handles the interrupt from one port. |
233 | */ | 232 | */ |
234 | static inline irqreturn_t | 233 | static inline irqreturn_t serial_pxa_irq(int irq, void *dev_id) |
235 | serial_pxa_irq(int irq, void *dev_id, struct pt_regs *regs) | ||
236 | { | 234 | { |
237 | struct uart_pxa_port *up = (struct uart_pxa_port *)dev_id; | 235 | struct uart_pxa_port *up = dev_id; |
238 | unsigned int iir, lsr; | 236 | unsigned int iir, lsr; |
239 | 237 | ||
240 | iir = serial_in(up, UART_IIR); | 238 | iir = serial_in(up, UART_IIR); |
@@ -242,7 +240,7 @@ serial_pxa_irq(int irq, void *dev_id, struct pt_regs *regs) | |||
242 | return IRQ_NONE; | 240 | return IRQ_NONE; |
243 | lsr = serial_in(up, UART_LSR); | 241 | lsr = serial_in(up, UART_LSR); |
244 | if (lsr & UART_LSR_DR) | 242 | if (lsr & UART_LSR_DR) |
245 | receive_chars(up, &lsr, regs); | 243 | receive_chars(up, &lsr); |
246 | check_modem_status(up); | 244 | check_modem_status(up); |
247 | if (lsr & UART_LSR_THRE) | 245 | if (lsr & UART_LSR_THRE) |
248 | transmit_chars(up); | 246 | transmit_chars(up); |
diff --git a/drivers/serial/s3c2410.c b/drivers/serial/s3c2410.c index 95738a19cde7..8dfc2dd058ca 100644 --- a/drivers/serial/s3c2410.c +++ b/drivers/serial/s3c2410.c | |||
@@ -310,7 +310,7 @@ static int s3c24xx_serial_rx_fifocnt(struct s3c24xx_uart_port *ourport, | |||
310 | #define S3C2410_UERSTAT_PARITY (0x1000) | 310 | #define S3C2410_UERSTAT_PARITY (0x1000) |
311 | 311 | ||
312 | static irqreturn_t | 312 | static irqreturn_t |
313 | s3c24xx_serial_rx_chars(int irq, void *dev_id, struct pt_regs *regs) | 313 | s3c24xx_serial_rx_chars(int irq, void *dev_id) |
314 | { | 314 | { |
315 | struct s3c24xx_uart_port *ourport = dev_id; | 315 | struct s3c24xx_uart_port *ourport = dev_id; |
316 | struct uart_port *port = &ourport->port; | 316 | struct uart_port *port = &ourport->port; |
@@ -379,7 +379,7 @@ s3c24xx_serial_rx_chars(int irq, void *dev_id, struct pt_regs *regs) | |||
379 | flag = TTY_FRAME; | 379 | flag = TTY_FRAME; |
380 | } | 380 | } |
381 | 381 | ||
382 | if (uart_handle_sysrq_char(port, ch, regs)) | 382 | if (uart_handle_sysrq_char(port, ch)) |
383 | goto ignore_char; | 383 | goto ignore_char; |
384 | 384 | ||
385 | uart_insert_char(port, uerstat, S3C2410_UERSTAT_OVERRUN, ch, flag); | 385 | uart_insert_char(port, uerstat, S3C2410_UERSTAT_OVERRUN, ch, flag); |
@@ -393,7 +393,7 @@ s3c24xx_serial_rx_chars(int irq, void *dev_id, struct pt_regs *regs) | |||
393 | return IRQ_HANDLED; | 393 | return IRQ_HANDLED; |
394 | } | 394 | } |
395 | 395 | ||
396 | static irqreturn_t s3c24xx_serial_tx_chars(int irq, void *id, struct pt_regs *regs) | 396 | static irqreturn_t s3c24xx_serial_tx_chars(int irq, void *id) |
397 | { | 397 | { |
398 | struct s3c24xx_uart_port *ourport = id; | 398 | struct s3c24xx_uart_port *ourport = id; |
399 | struct uart_port *port = &ourport->port; | 399 | struct uart_port *port = &ourport->port; |
diff --git a/drivers/serial/sa1100.c b/drivers/serial/sa1100.c index db3486d33870..d4065266b6fc 100644 --- a/drivers/serial/sa1100.c +++ b/drivers/serial/sa1100.c | |||
@@ -190,7 +190,7 @@ static void sa1100_enable_ms(struct uart_port *port) | |||
190 | } | 190 | } |
191 | 191 | ||
192 | static void | 192 | static void |
193 | sa1100_rx_chars(struct sa1100_port *sport, struct pt_regs *regs) | 193 | sa1100_rx_chars(struct sa1100_port *sport) |
194 | { | 194 | { |
195 | struct tty_struct *tty = sport->port.info->tty; | 195 | struct tty_struct *tty = sport->port.info->tty; |
196 | unsigned int status, ch, flg; | 196 | unsigned int status, ch, flg; |
@@ -228,7 +228,7 @@ sa1100_rx_chars(struct sa1100_port *sport, struct pt_regs *regs) | |||
228 | #endif | 228 | #endif |
229 | } | 229 | } |
230 | 230 | ||
231 | if (uart_handle_sysrq_char(&sport->port, ch, regs)) | 231 | if (uart_handle_sysrq_char(&sport->port, ch)) |
232 | goto ignore_char; | 232 | goto ignore_char; |
233 | 233 | ||
234 | uart_insert_char(&sport->port, status, UTSR1_TO_SM(UTSR1_ROR), ch, flg); | 234 | uart_insert_char(&sport->port, status, UTSR1_TO_SM(UTSR1_ROR), ch, flg); |
@@ -281,7 +281,7 @@ static void sa1100_tx_chars(struct sa1100_port *sport) | |||
281 | sa1100_stop_tx(&sport->port); | 281 | sa1100_stop_tx(&sport->port); |
282 | } | 282 | } |
283 | 283 | ||
284 | static irqreturn_t sa1100_int(int irq, void *dev_id, struct pt_regs *regs) | 284 | static irqreturn_t sa1100_int(int irq, void *dev_id) |
285 | { | 285 | { |
286 | struct sa1100_port *sport = dev_id; | 286 | struct sa1100_port *sport = dev_id; |
287 | unsigned int status, pass_counter = 0; | 287 | unsigned int status, pass_counter = 0; |
@@ -294,7 +294,7 @@ static irqreturn_t sa1100_int(int irq, void *dev_id, struct pt_regs *regs) | |||
294 | /* Clear the receiver idle bit, if set */ | 294 | /* Clear the receiver idle bit, if set */ |
295 | if (status & UTSR0_RID) | 295 | if (status & UTSR0_RID) |
296 | UART_PUT_UTSR0(sport, UTSR0_RID); | 296 | UART_PUT_UTSR0(sport, UTSR0_RID); |
297 | sa1100_rx_chars(sport, regs); | 297 | sa1100_rx_chars(sport); |
298 | } | 298 | } |
299 | 299 | ||
300 | /* Clear the relevant break bits */ | 300 | /* Clear the relevant break bits */ |
diff --git a/drivers/serial/serial_lh7a40x.c b/drivers/serial/serial_lh7a40x.c index 23ddedbaec08..5e1ac356bbb0 100644 --- a/drivers/serial/serial_lh7a40x.c +++ b/drivers/serial/serial_lh7a40x.c | |||
@@ -135,12 +135,7 @@ static void lh7a40xuart_enable_ms (struct uart_port* port) | |||
135 | BIT_SET (port, UART_R_INTEN, ModemInt); | 135 | BIT_SET (port, UART_R_INTEN, ModemInt); |
136 | } | 136 | } |
137 | 137 | ||
138 | static void | 138 | static void lh7a40xuart_rx_chars (struct uart_port* port) |
139 | #ifdef SUPPORT_SYSRQ | ||
140 | lh7a40xuart_rx_chars (struct uart_port* port, struct pt_regs* regs) | ||
141 | #else | ||
142 | lh7a40xuart_rx_chars (struct uart_port* port) | ||
143 | #endif | ||
144 | { | 139 | { |
145 | struct tty_struct* tty = port->info->tty; | 140 | struct tty_struct* tty = port->info->tty; |
146 | int cbRxMax = 256; /* (Gross) limit on receive */ | 141 | int cbRxMax = 256; /* (Gross) limit on receive */ |
@@ -177,7 +172,7 @@ lh7a40xuart_rx_chars (struct uart_port* port) | |||
177 | flag = TTY_FRAME; | 172 | flag = TTY_FRAME; |
178 | } | 173 | } |
179 | 174 | ||
180 | if (uart_handle_sysrq_char (port, (unsigned char) data, regs)) | 175 | if (uart_handle_sysrq_char (port, (unsigned char) data)) |
181 | continue; | 176 | continue; |
182 | 177 | ||
183 | uart_insert_char(port, data, RxOverrunError, data, flag); | 178 | uart_insert_char(port, data, RxOverrunError, data, flag); |
@@ -248,8 +243,7 @@ static void lh7a40xuart_modem_status (struct uart_port* port) | |||
248 | wake_up_interruptible (&port->info->delta_msr_wait); | 243 | wake_up_interruptible (&port->info->delta_msr_wait); |
249 | } | 244 | } |
250 | 245 | ||
251 | static irqreturn_t lh7a40xuart_int (int irq, void* dev_id, | 246 | static irqreturn_t lh7a40xuart_int (int irq, void* dev_id) |
252 | struct pt_regs* regs) | ||
253 | { | 247 | { |
254 | struct uart_port* port = dev_id; | 248 | struct uart_port* port = dev_id; |
255 | unsigned int cLoopLimit = ISR_LOOP_LIMIT; | 249 | unsigned int cLoopLimit = ISR_LOOP_LIMIT; |
@@ -258,11 +252,7 @@ static irqreturn_t lh7a40xuart_int (int irq, void* dev_id, | |||
258 | 252 | ||
259 | do { | 253 | do { |
260 | if (isr & (RxInt | RxTimeoutInt)) | 254 | if (isr & (RxInt | RxTimeoutInt)) |
261 | #ifdef SUPPORT_SYSRQ | ||
262 | lh7a40xuart_rx_chars(port, regs); | ||
263 | #else | ||
264 | lh7a40xuart_rx_chars(port); | 255 | lh7a40xuart_rx_chars(port); |
265 | #endif | ||
266 | if (isr & ModemInt) | 256 | if (isr & ModemInt) |
267 | lh7a40xuart_modem_status (port); | 257 | lh7a40xuart_modem_status (port); |
268 | if (isr & TxInt) | 258 | if (isr & TxInt) |
diff --git a/drivers/serial/serial_txx9.c b/drivers/serial/serial_txx9.c index ebd8d2bb17fd..2a48289ac722 100644 --- a/drivers/serial/serial_txx9.c +++ b/drivers/serial/serial_txx9.c | |||
@@ -283,7 +283,7 @@ static void serial_txx9_enable_ms(struct uart_port *port) | |||
283 | } | 283 | } |
284 | 284 | ||
285 | static inline void | 285 | static inline void |
286 | receive_chars(struct uart_txx9_port *up, unsigned int *status, struct pt_regs *regs) | 286 | receive_chars(struct uart_txx9_port *up, unsigned int *status) |
287 | { | 287 | { |
288 | struct tty_struct *tty = up->port.info->tty; | 288 | struct tty_struct *tty = up->port.info->tty; |
289 | unsigned char ch; | 289 | unsigned char ch; |
@@ -344,7 +344,7 @@ receive_chars(struct uart_txx9_port *up, unsigned int *status, struct pt_regs *r | |||
344 | else if (disr & TXX9_SIDISR_UFER) | 344 | else if (disr & TXX9_SIDISR_UFER) |
345 | flag = TTY_FRAME; | 345 | flag = TTY_FRAME; |
346 | } | 346 | } |
347 | if (uart_handle_sysrq_char(&up->port, ch, regs)) | 347 | if (uart_handle_sysrq_char(&up->port, ch)) |
348 | goto ignore_char; | 348 | goto ignore_char; |
349 | 349 | ||
350 | uart_insert_char(&up->port, disr, TXX9_SIDISR_UOER, ch, flag); | 350 | uart_insert_char(&up->port, disr, TXX9_SIDISR_UOER, ch, flag); |
@@ -391,7 +391,7 @@ static inline void transmit_chars(struct uart_txx9_port *up) | |||
391 | serial_txx9_stop_tx(&up->port); | 391 | serial_txx9_stop_tx(&up->port); |
392 | } | 392 | } |
393 | 393 | ||
394 | static irqreturn_t serial_txx9_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 394 | static irqreturn_t serial_txx9_interrupt(int irq, void *dev_id) |
395 | { | 395 | { |
396 | int pass_counter = 0; | 396 | int pass_counter = 0; |
397 | struct uart_txx9_port *up = dev_id; | 397 | struct uart_txx9_port *up = dev_id; |
@@ -409,7 +409,7 @@ static irqreturn_t serial_txx9_interrupt(int irq, void *dev_id, struct pt_regs * | |||
409 | } | 409 | } |
410 | 410 | ||
411 | if (status & TXX9_SIDISR_RDIS) | 411 | if (status & TXX9_SIDISR_RDIS) |
412 | receive_chars(up, &status, regs); | 412 | receive_chars(up, &status); |
413 | if (status & TXX9_SIDISR_TDIS) | 413 | if (status & TXX9_SIDISR_TDIS) |
414 | transmit_chars(up); | 414 | transmit_chars(up); |
415 | /* Clear TX/RX Int. Status */ | 415 | /* Clear TX/RX Int. Status */ |
diff --git a/drivers/serial/sh-sci.c b/drivers/serial/sh-sci.c index 5c025d1190c1..266aa325569e 100644 --- a/drivers/serial/sh-sci.c +++ b/drivers/serial/sh-sci.c | |||
@@ -446,8 +446,7 @@ static void sci_transmit_chars(struct uart_port *port) | |||
446 | /* On SH3, SCIF may read end-of-break as a space->mark char */ | 446 | /* On SH3, SCIF may read end-of-break as a space->mark char */ |
447 | #define STEPFN(c) ({int __c=(c); (((__c-1)|(__c)) == -1); }) | 447 | #define STEPFN(c) ({int __c=(c); (((__c-1)|(__c)) == -1); }) |
448 | 448 | ||
449 | static inline void sci_receive_chars(struct uart_port *port, | 449 | static inline void sci_receive_chars(struct uart_port *port) |
450 | struct pt_regs *regs) | ||
451 | { | 450 | { |
452 | struct sci_port *sci_port = (struct sci_port *)port; | 451 | struct sci_port *sci_port = (struct sci_port *)port; |
453 | struct tty_struct *tty = port->info->tty; | 452 | struct tty_struct *tty = port->info->tty; |
@@ -476,7 +475,7 @@ static inline void sci_receive_chars(struct uart_port *port, | |||
476 | 475 | ||
477 | if (port->type == PORT_SCI) { | 476 | if (port->type == PORT_SCI) { |
478 | char c = sci_in(port, SCxRDR); | 477 | char c = sci_in(port, SCxRDR); |
479 | if (uart_handle_sysrq_char(port, c, regs) || sci_port->break_flag) | 478 | if (uart_handle_sysrq_char(port, c) || sci_port->break_flag) |
480 | count = 0; | 479 | count = 0; |
481 | else { | 480 | else { |
482 | tty_insert_flip_char(tty, c, TTY_NORMAL); | 481 | tty_insert_flip_char(tty, c, TTY_NORMAL); |
@@ -504,7 +503,7 @@ static inline void sci_receive_chars(struct uart_port *port, | |||
504 | } | 503 | } |
505 | } | 504 | } |
506 | #endif /* CONFIG_CPU_SH3 */ | 505 | #endif /* CONFIG_CPU_SH3 */ |
507 | if (uart_handle_sysrq_char(port, c, regs)) { | 506 | if (uart_handle_sysrq_char(port, c)) { |
508 | count--; i--; | 507 | count--; i--; |
509 | continue; | 508 | continue; |
510 | } | 509 | } |
@@ -652,18 +651,18 @@ static inline int sci_handle_breaks(struct uart_port *port) | |||
652 | return copied; | 651 | return copied; |
653 | } | 652 | } |
654 | 653 | ||
655 | static irqreturn_t sci_rx_interrupt(int irq, void *port, struct pt_regs *regs) | 654 | static irqreturn_t sci_rx_interrupt(int irq, void *port) |
656 | { | 655 | { |
657 | /* I think sci_receive_chars has to be called irrespective | 656 | /* I think sci_receive_chars has to be called irrespective |
658 | * of whether the I_IXOFF is set, otherwise, how is the interrupt | 657 | * of whether the I_IXOFF is set, otherwise, how is the interrupt |
659 | * to be disabled? | 658 | * to be disabled? |
660 | */ | 659 | */ |
661 | sci_receive_chars(port, regs); | 660 | sci_receive_chars(port); |
662 | 661 | ||
663 | return IRQ_HANDLED; | 662 | return IRQ_HANDLED; |
664 | } | 663 | } |
665 | 664 | ||
666 | static irqreturn_t sci_tx_interrupt(int irq, void *ptr, struct pt_regs *regs) | 665 | static irqreturn_t sci_tx_interrupt(int irq, void *ptr) |
667 | { | 666 | { |
668 | struct uart_port *port = ptr; | 667 | struct uart_port *port = ptr; |
669 | 668 | ||
@@ -674,7 +673,7 @@ static irqreturn_t sci_tx_interrupt(int irq, void *ptr, struct pt_regs *regs) | |||
674 | return IRQ_HANDLED; | 673 | return IRQ_HANDLED; |
675 | } | 674 | } |
676 | 675 | ||
677 | static irqreturn_t sci_er_interrupt(int irq, void *ptr, struct pt_regs *regs) | 676 | static irqreturn_t sci_er_interrupt(int irq, void *ptr) |
678 | { | 677 | { |
679 | struct uart_port *port = ptr; | 678 | struct uart_port *port = ptr; |
680 | 679 | ||
@@ -696,18 +695,18 @@ static irqreturn_t sci_er_interrupt(int irq, void *ptr, struct pt_regs *regs) | |||
696 | pr_debug("scif: overrun error\n"); | 695 | pr_debug("scif: overrun error\n"); |
697 | } | 696 | } |
698 | #endif | 697 | #endif |
699 | sci_rx_interrupt(irq, ptr, regs); | 698 | sci_rx_interrupt(irq, ptr); |
700 | } | 699 | } |
701 | 700 | ||
702 | sci_out(port, SCxSR, SCxSR_ERROR_CLEAR(port)); | 701 | sci_out(port, SCxSR, SCxSR_ERROR_CLEAR(port)); |
703 | 702 | ||
704 | /* Kick the transmission */ | 703 | /* Kick the transmission */ |
705 | sci_tx_interrupt(irq, ptr, regs); | 704 | sci_tx_interrupt(irq, ptr); |
706 | 705 | ||
707 | return IRQ_HANDLED; | 706 | return IRQ_HANDLED; |
708 | } | 707 | } |
709 | 708 | ||
710 | static irqreturn_t sci_br_interrupt(int irq, void *ptr, struct pt_regs *regs) | 709 | static irqreturn_t sci_br_interrupt(int irq, void *ptr) |
711 | { | 710 | { |
712 | struct uart_port *port = ptr; | 711 | struct uart_port *port = ptr; |
713 | 712 | ||
@@ -724,7 +723,7 @@ static irqreturn_t sci_br_interrupt(int irq, void *ptr, struct pt_regs *regs) | |||
724 | return IRQ_HANDLED; | 723 | return IRQ_HANDLED; |
725 | } | 724 | } |
726 | 725 | ||
727 | static irqreturn_t sci_mpxed_interrupt(int irq, void *ptr, struct pt_regs *regs) | 726 | static irqreturn_t sci_mpxed_interrupt(int irq, void *ptr) |
728 | { | 727 | { |
729 | unsigned short ssr_status, scr_status; | 728 | unsigned short ssr_status, scr_status; |
730 | struct uart_port *port = ptr; | 729 | struct uart_port *port = ptr; |
@@ -734,16 +733,16 @@ static irqreturn_t sci_mpxed_interrupt(int irq, void *ptr, struct pt_regs *regs) | |||
734 | 733 | ||
735 | /* Tx Interrupt */ | 734 | /* Tx Interrupt */ |
736 | if ((ssr_status & 0x0020) && (scr_status & 0x0080)) | 735 | if ((ssr_status & 0x0020) && (scr_status & 0x0080)) |
737 | sci_tx_interrupt(irq, ptr, regs); | 736 | sci_tx_interrupt(irq, ptr); |
738 | /* Rx Interrupt */ | 737 | /* Rx Interrupt */ |
739 | if ((ssr_status & 0x0002) && (scr_status & 0x0040)) | 738 | if ((ssr_status & 0x0002) && (scr_status & 0x0040)) |
740 | sci_rx_interrupt(irq, ptr, regs); | 739 | sci_rx_interrupt(irq, ptr); |
741 | /* Error Interrupt */ | 740 | /* Error Interrupt */ |
742 | if ((ssr_status & 0x0080) && (scr_status & 0x0400)) | 741 | if ((ssr_status & 0x0080) && (scr_status & 0x0400)) |
743 | sci_er_interrupt(irq, ptr, regs); | 742 | sci_er_interrupt(irq, ptr); |
744 | /* Break Interrupt */ | 743 | /* Break Interrupt */ |
745 | if ((ssr_status & 0x0010) && (scr_status & 0x0200)) | 744 | if ((ssr_status & 0x0010) && (scr_status & 0x0200)) |
746 | sci_br_interrupt(irq, ptr, regs); | 745 | sci_br_interrupt(irq, ptr); |
747 | 746 | ||
748 | return IRQ_HANDLED; | 747 | return IRQ_HANDLED; |
749 | } | 748 | } |
@@ -795,7 +794,7 @@ static struct notifier_block sci_nb = { &sci_notifier, NULL, 0 }; | |||
795 | static int sci_request_irq(struct sci_port *port) | 794 | static int sci_request_irq(struct sci_port *port) |
796 | { | 795 | { |
797 | int i; | 796 | int i; |
798 | irqreturn_t (*handlers[4])(int irq, void *ptr, struct pt_regs *regs) = { | 797 | irqreturn_t (*handlers[4])(int irq, void *ptr) = { |
799 | sci_er_interrupt, sci_rx_interrupt, sci_tx_interrupt, | 798 | sci_er_interrupt, sci_rx_interrupt, sci_tx_interrupt, |
800 | sci_br_interrupt, | 799 | sci_br_interrupt, |
801 | }; | 800 | }; |
diff --git a/drivers/serial/sn_console.c b/drivers/serial/sn_console.c index 2f148e5b9255..956b2cf08e1e 100644 --- a/drivers/serial/sn_console.c +++ b/drivers/serial/sn_console.c | |||
@@ -447,7 +447,6 @@ static int sn_debug_printf(const char *fmt, ...) | |||
447 | /** | 447 | /** |
448 | * sn_receive_chars - Grab characters, pass them to tty layer | 448 | * sn_receive_chars - Grab characters, pass them to tty layer |
449 | * @port: Port to operate on | 449 | * @port: Port to operate on |
450 | * @regs: Saved registers (needed by uart_handle_sysrq_char) | ||
451 | * @flags: irq flags | 450 | * @flags: irq flags |
452 | * | 451 | * |
453 | * Note: If we're not registered with the serial core infrastructure yet, | 452 | * Note: If we're not registered with the serial core infrastructure yet, |
@@ -455,8 +454,7 @@ static int sn_debug_printf(const char *fmt, ...) | |||
455 | * | 454 | * |
456 | */ | 455 | */ |
457 | static void | 456 | static void |
458 | sn_receive_chars(struct sn_cons_port *port, struct pt_regs *regs, | 457 | sn_receive_chars(struct sn_cons_port *port, unsigned long flags) |
459 | unsigned long flags) | ||
460 | { | 458 | { |
461 | int ch; | 459 | int ch; |
462 | struct tty_struct *tty; | 460 | struct tty_struct *tty; |
@@ -494,7 +492,7 @@ sn_receive_chars(struct sn_cons_port *port, struct pt_regs *regs, | |||
494 | sysrq_requested = 0; | 492 | sysrq_requested = 0; |
495 | if (ch && time_before(jiffies, sysrq_timeout)) { | 493 | if (ch && time_before(jiffies, sysrq_timeout)) { |
496 | spin_unlock_irqrestore(&port->sc_port.lock, flags); | 494 | spin_unlock_irqrestore(&port->sc_port.lock, flags); |
497 | handle_sysrq(ch, regs, NULL); | 495 | handle_sysrq(ch, NULL); |
498 | spin_lock_irqsave(&port->sc_port.lock, flags); | 496 | spin_lock_irqsave(&port->sc_port.lock, flags); |
499 | /* ignore actual sysrq command char */ | 497 | /* ignore actual sysrq command char */ |
500 | continue; | 498 | continue; |
@@ -615,10 +613,9 @@ static void sn_transmit_chars(struct sn_cons_port *port, int raw) | |||
615 | * sn_sal_interrupt - Handle console interrupts | 613 | * sn_sal_interrupt - Handle console interrupts |
616 | * @irq: irq #, useful for debug statements | 614 | * @irq: irq #, useful for debug statements |
617 | * @dev_id: our pointer to our port (sn_cons_port which contains the uart port) | 615 | * @dev_id: our pointer to our port (sn_cons_port which contains the uart port) |
618 | * @regs: Saved registers, used by sn_receive_chars for uart_handle_sysrq_char | ||
619 | * | 616 | * |
620 | */ | 617 | */ |
621 | static irqreturn_t sn_sal_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 618 | static irqreturn_t sn_sal_interrupt(int irq, void *dev_id) |
622 | { | 619 | { |
623 | struct sn_cons_port *port = (struct sn_cons_port *)dev_id; | 620 | struct sn_cons_port *port = (struct sn_cons_port *)dev_id; |
624 | unsigned long flags; | 621 | unsigned long flags; |
@@ -629,7 +626,7 @@ static irqreturn_t sn_sal_interrupt(int irq, void *dev_id, struct pt_regs *regs) | |||
629 | 626 | ||
630 | spin_lock_irqsave(&port->sc_port.lock, flags); | 627 | spin_lock_irqsave(&port->sc_port.lock, flags); |
631 | if (status & SAL_CONSOLE_INTR_RECV) { | 628 | if (status & SAL_CONSOLE_INTR_RECV) { |
632 | sn_receive_chars(port, regs, flags); | 629 | sn_receive_chars(port, flags); |
633 | } | 630 | } |
634 | if (status & SAL_CONSOLE_INTR_XMIT) { | 631 | if (status & SAL_CONSOLE_INTR_XMIT) { |
635 | sn_transmit_chars(port, TRANSMIT_BUFFERED); | 632 | sn_transmit_chars(port, TRANSMIT_BUFFERED); |
@@ -677,7 +674,7 @@ static void sn_sal_timer_poll(unsigned long data) | |||
677 | if (!port->sc_port.irq) { | 674 | if (!port->sc_port.irq) { |
678 | spin_lock_irqsave(&port->sc_port.lock, flags); | 675 | spin_lock_irqsave(&port->sc_port.lock, flags); |
679 | if (sn_process_input) | 676 | if (sn_process_input) |
680 | sn_receive_chars(port, NULL, flags); | 677 | sn_receive_chars(port, flags); |
681 | sn_transmit_chars(port, TRANSMIT_RAW); | 678 | sn_transmit_chars(port, TRANSMIT_RAW); |
682 | spin_unlock_irqrestore(&port->sc_port.lock, flags); | 679 | spin_unlock_irqrestore(&port->sc_port.lock, flags); |
683 | mod_timer(&port->sc_timer, | 680 | mod_timer(&port->sc_timer, |
diff --git a/drivers/serial/sunhv.c b/drivers/serial/sunhv.c index f851f0f44f9b..03941d27d15d 100644 --- a/drivers/serial/sunhv.c +++ b/drivers/serial/sunhv.c | |||
@@ -73,7 +73,7 @@ static inline long hypervisor_con_putchar(long ch) | |||
73 | 73 | ||
74 | static int hung_up = 0; | 74 | static int hung_up = 0; |
75 | 75 | ||
76 | static struct tty_struct *receive_chars(struct uart_port *port, struct pt_regs *regs) | 76 | static struct tty_struct *receive_chars(struct uart_port *port) |
77 | { | 77 | { |
78 | struct tty_struct *tty = NULL; | 78 | struct tty_struct *tty = NULL; |
79 | int saw_console_brk = 0; | 79 | int saw_console_brk = 0; |
@@ -106,7 +106,7 @@ static struct tty_struct *receive_chars(struct uart_port *port, struct pt_regs * | |||
106 | } | 106 | } |
107 | 107 | ||
108 | if (tty == NULL) { | 108 | if (tty == NULL) { |
109 | uart_handle_sysrq_char(port, c, regs); | 109 | uart_handle_sysrq_char(port, c); |
110 | continue; | 110 | continue; |
111 | } | 111 | } |
112 | 112 | ||
@@ -119,7 +119,7 @@ static struct tty_struct *receive_chars(struct uart_port *port, struct pt_regs * | |||
119 | flag = TTY_BREAK; | 119 | flag = TTY_BREAK; |
120 | } | 120 | } |
121 | 121 | ||
122 | if (uart_handle_sysrq_char(port, c, regs)) | 122 | if (uart_handle_sysrq_char(port, c)) |
123 | continue; | 123 | continue; |
124 | 124 | ||
125 | if ((port->ignore_status_mask & IGNORE_ALL) || | 125 | if ((port->ignore_status_mask & IGNORE_ALL) || |
@@ -161,14 +161,14 @@ static void transmit_chars(struct uart_port *port) | |||
161 | uart_write_wakeup(port); | 161 | uart_write_wakeup(port); |
162 | } | 162 | } |
163 | 163 | ||
164 | static irqreturn_t sunhv_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 164 | static irqreturn_t sunhv_interrupt(int irq, void *dev_id) |
165 | { | 165 | { |
166 | struct uart_port *port = dev_id; | 166 | struct uart_port *port = dev_id; |
167 | struct tty_struct *tty; | 167 | struct tty_struct *tty; |
168 | unsigned long flags; | 168 | unsigned long flags; |
169 | 169 | ||
170 | spin_lock_irqsave(&port->lock, flags); | 170 | spin_lock_irqsave(&port->lock, flags); |
171 | tty = receive_chars(port, regs); | 171 | tty = receive_chars(port); |
172 | transmit_chars(port); | 172 | transmit_chars(port); |
173 | spin_unlock_irqrestore(&port->lock, flags); | 173 | spin_unlock_irqrestore(&port->lock, flags); |
174 | 174 | ||
diff --git a/drivers/serial/sunsab.c b/drivers/serial/sunsab.c index cfe20f730436..08a7cd6a3a0c 100644 --- a/drivers/serial/sunsab.c +++ b/drivers/serial/sunsab.c | |||
@@ -108,8 +108,7 @@ static __inline__ void sunsab_cec_wait(struct uart_sunsab_port *up) | |||
108 | 108 | ||
109 | static struct tty_struct * | 109 | static struct tty_struct * |
110 | receive_chars(struct uart_sunsab_port *up, | 110 | receive_chars(struct uart_sunsab_port *up, |
111 | union sab82532_irq_status *stat, | 111 | union sab82532_irq_status *stat) |
112 | struct pt_regs *regs) | ||
113 | { | 112 | { |
114 | struct tty_struct *tty = NULL; | 113 | struct tty_struct *tty = NULL; |
115 | unsigned char buf[32]; | 114 | unsigned char buf[32]; |
@@ -161,7 +160,7 @@ receive_chars(struct uart_sunsab_port *up, | |||
161 | unsigned char ch = buf[i], flag; | 160 | unsigned char ch = buf[i], flag; |
162 | 161 | ||
163 | if (tty == NULL) { | 162 | if (tty == NULL) { |
164 | uart_handle_sysrq_char(&up->port, ch, regs); | 163 | uart_handle_sysrq_char(&up->port, ch); |
165 | continue; | 164 | continue; |
166 | } | 165 | } |
167 | 166 | ||
@@ -208,7 +207,7 @@ receive_chars(struct uart_sunsab_port *up, | |||
208 | flag = TTY_FRAME; | 207 | flag = TTY_FRAME; |
209 | } | 208 | } |
210 | 209 | ||
211 | if (uart_handle_sysrq_char(&up->port, ch, regs)) | 210 | if (uart_handle_sysrq_char(&up->port, ch)) |
212 | continue; | 211 | continue; |
213 | 212 | ||
214 | if ((stat->sreg.isr0 & (up->port.ignore_status_mask & 0xff)) == 0 && | 213 | if ((stat->sreg.isr0 & (up->port.ignore_status_mask & 0xff)) == 0 && |
@@ -301,7 +300,7 @@ static void check_status(struct uart_sunsab_port *up, | |||
301 | wake_up_interruptible(&up->port.info->delta_msr_wait); | 300 | wake_up_interruptible(&up->port.info->delta_msr_wait); |
302 | } | 301 | } |
303 | 302 | ||
304 | static irqreturn_t sunsab_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 303 | static irqreturn_t sunsab_interrupt(int irq, void *dev_id) |
305 | { | 304 | { |
306 | struct uart_sunsab_port *up = dev_id; | 305 | struct uart_sunsab_port *up = dev_id; |
307 | struct tty_struct *tty; | 306 | struct tty_struct *tty; |
@@ -321,7 +320,7 @@ static irqreturn_t sunsab_interrupt(int irq, void *dev_id, struct pt_regs *regs) | |||
321 | if ((status.sreg.isr0 & (SAB82532_ISR0_TCD | SAB82532_ISR0_TIME | | 320 | if ((status.sreg.isr0 & (SAB82532_ISR0_TCD | SAB82532_ISR0_TIME | |
322 | SAB82532_ISR0_RFO | SAB82532_ISR0_RPF)) || | 321 | SAB82532_ISR0_RFO | SAB82532_ISR0_RPF)) || |
323 | (status.sreg.isr1 & SAB82532_ISR1_BRK)) | 322 | (status.sreg.isr1 & SAB82532_ISR1_BRK)) |
324 | tty = receive_chars(up, &status, regs); | 323 | tty = receive_chars(up, &status); |
325 | if ((status.sreg.isr0 & SAB82532_ISR0_CDSC) || | 324 | if ((status.sreg.isr0 & SAB82532_ISR0_CDSC) || |
326 | (status.sreg.isr1 & SAB82532_ISR1_CSC)) | 325 | (status.sreg.isr1 & SAB82532_ISR1_CSC)) |
327 | check_status(up, &status); | 326 | check_status(up, &status); |
@@ -350,7 +349,7 @@ static irqreturn_t sunsab_interrupt(int irq, void *dev_id, struct pt_regs *regs) | |||
350 | SAB82532_ISR0_RFO | SAB82532_ISR0_RPF)) || | 349 | SAB82532_ISR0_RFO | SAB82532_ISR0_RPF)) || |
351 | (status.sreg.isr1 & SAB82532_ISR1_BRK)) | 350 | (status.sreg.isr1 & SAB82532_ISR1_BRK)) |
352 | 351 | ||
353 | tty = receive_chars(up, &status, regs); | 352 | tty = receive_chars(up, &status); |
354 | if ((status.sreg.isr0 & SAB82532_ISR0_CDSC) || | 353 | if ((status.sreg.isr0 & SAB82532_ISR0_CDSC) || |
355 | (status.sreg.isr1 & (SAB82532_ISR1_BRK | SAB82532_ISR1_CSC))) | 354 | (status.sreg.isr1 & (SAB82532_ISR1_BRK | SAB82532_ISR1_CSC))) |
356 | check_status(up, &status); | 355 | check_status(up, &status); |
diff --git a/drivers/serial/sunsu.c b/drivers/serial/sunsu.c index 9b3b9aaa6b90..c577faea60e8 100644 --- a/drivers/serial/sunsu.c +++ b/drivers/serial/sunsu.c | |||
@@ -310,7 +310,7 @@ static void sunsu_enable_ms(struct uart_port *port) | |||
310 | } | 310 | } |
311 | 311 | ||
312 | static struct tty_struct * | 312 | static struct tty_struct * |
313 | receive_chars(struct uart_sunsu_port *up, unsigned char *status, struct pt_regs *regs) | 313 | receive_chars(struct uart_sunsu_port *up, unsigned char *status) |
314 | { | 314 | { |
315 | struct tty_struct *tty = up->port.info->tty; | 315 | struct tty_struct *tty = up->port.info->tty; |
316 | unsigned char ch, flag; | 316 | unsigned char ch, flag; |
@@ -367,7 +367,7 @@ receive_chars(struct uart_sunsu_port *up, unsigned char *status, struct pt_regs | |||
367 | else if (*status & UART_LSR_FE) | 367 | else if (*status & UART_LSR_FE) |
368 | flag = TTY_FRAME; | 368 | flag = TTY_FRAME; |
369 | } | 369 | } |
370 | if (uart_handle_sysrq_char(&up->port, ch, regs)) | 370 | if (uart_handle_sysrq_char(&up->port, ch)) |
371 | goto ignore_char; | 371 | goto ignore_char; |
372 | if ((*status & up->port.ignore_status_mask) == 0) | 372 | if ((*status & up->port.ignore_status_mask) == 0) |
373 | tty_insert_flip_char(tty, ch, flag); | 373 | tty_insert_flip_char(tty, ch, flag); |
@@ -445,7 +445,7 @@ static void check_modem_status(struct uart_sunsu_port *up) | |||
445 | wake_up_interruptible(&up->port.info->delta_msr_wait); | 445 | wake_up_interruptible(&up->port.info->delta_msr_wait); |
446 | } | 446 | } |
447 | 447 | ||
448 | static irqreturn_t sunsu_serial_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 448 | static irqreturn_t sunsu_serial_interrupt(int irq, void *dev_id) |
449 | { | 449 | { |
450 | struct uart_sunsu_port *up = dev_id; | 450 | struct uart_sunsu_port *up = dev_id; |
451 | unsigned long flags; | 451 | unsigned long flags; |
@@ -459,7 +459,7 @@ static irqreturn_t sunsu_serial_interrupt(int irq, void *dev_id, struct pt_regs | |||
459 | status = serial_inp(up, UART_LSR); | 459 | status = serial_inp(up, UART_LSR); |
460 | tty = NULL; | 460 | tty = NULL; |
461 | if (status & UART_LSR_DR) | 461 | if (status & UART_LSR_DR) |
462 | tty = receive_chars(up, &status, regs); | 462 | tty = receive_chars(up, &status); |
463 | check_modem_status(up); | 463 | check_modem_status(up); |
464 | if (status & UART_LSR_THRE) | 464 | if (status & UART_LSR_THRE) |
465 | transmit_chars(up); | 465 | transmit_chars(up); |
@@ -497,7 +497,7 @@ static void sunsu_change_mouse_baud(struct uart_sunsu_port *up) | |||
497 | sunsu_change_speed(&up->port, up->cflag, 0, quot); | 497 | sunsu_change_speed(&up->port, up->cflag, 0, quot); |
498 | } | 498 | } |
499 | 499 | ||
500 | static void receive_kbd_ms_chars(struct uart_sunsu_port *up, struct pt_regs *regs, int is_break) | 500 | static void receive_kbd_ms_chars(struct uart_sunsu_port *up, int is_break) |
501 | { | 501 | { |
502 | do { | 502 | do { |
503 | unsigned char ch = serial_inp(up, UART_RX); | 503 | unsigned char ch = serial_inp(up, UART_RX); |
@@ -505,7 +505,7 @@ static void receive_kbd_ms_chars(struct uart_sunsu_port *up, struct pt_regs *reg | |||
505 | /* Stop-A is handled by drivers/char/keyboard.c now. */ | 505 | /* Stop-A is handled by drivers/char/keyboard.c now. */ |
506 | if (up->su_type == SU_PORT_KBD) { | 506 | if (up->su_type == SU_PORT_KBD) { |
507 | #ifdef CONFIG_SERIO | 507 | #ifdef CONFIG_SERIO |
508 | serio_interrupt(&up->serio, ch, 0, regs); | 508 | serio_interrupt(&up->serio, ch, 0); |
509 | #endif | 509 | #endif |
510 | } else if (up->su_type == SU_PORT_MS) { | 510 | } else if (up->su_type == SU_PORT_MS) { |
511 | int ret = suncore_mouse_baud_detection(ch, is_break); | 511 | int ret = suncore_mouse_baud_detection(ch, is_break); |
@@ -519,7 +519,7 @@ static void receive_kbd_ms_chars(struct uart_sunsu_port *up, struct pt_regs *reg | |||
519 | 519 | ||
520 | case 0: | 520 | case 0: |
521 | #ifdef CONFIG_SERIO | 521 | #ifdef CONFIG_SERIO |
522 | serio_interrupt(&up->serio, ch, 0, regs); | 522 | serio_interrupt(&up->serio, ch, 0); |
523 | #endif | 523 | #endif |
524 | break; | 524 | break; |
525 | }; | 525 | }; |
@@ -527,7 +527,7 @@ static void receive_kbd_ms_chars(struct uart_sunsu_port *up, struct pt_regs *reg | |||
527 | } while (serial_in(up, UART_LSR) & UART_LSR_DR); | 527 | } while (serial_in(up, UART_LSR) & UART_LSR_DR); |
528 | } | 528 | } |
529 | 529 | ||
530 | static irqreturn_t sunsu_kbd_ms_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 530 | static irqreturn_t sunsu_kbd_ms_interrupt(int irq, void *dev_id) |
531 | { | 531 | { |
532 | struct uart_sunsu_port *up = dev_id; | 532 | struct uart_sunsu_port *up = dev_id; |
533 | 533 | ||
@@ -535,8 +535,7 @@ static irqreturn_t sunsu_kbd_ms_interrupt(int irq, void *dev_id, struct pt_regs | |||
535 | unsigned char status = serial_inp(up, UART_LSR); | 535 | unsigned char status = serial_inp(up, UART_LSR); |
536 | 536 | ||
537 | if ((status & UART_LSR_DR) || (status & UART_LSR_BI)) | 537 | if ((status & UART_LSR_DR) || (status & UART_LSR_BI)) |
538 | receive_kbd_ms_chars(up, regs, | 538 | receive_kbd_ms_chars(up, (status & UART_LSR_BI) != 0); |
539 | (status & UART_LSR_BI) != 0); | ||
540 | } | 539 | } |
541 | 540 | ||
542 | return IRQ_HANDLED; | 541 | return IRQ_HANDLED; |
diff --git a/drivers/serial/sunzilog.c b/drivers/serial/sunzilog.c index 0da3ebfff82d..73dd2eedaaad 100644 --- a/drivers/serial/sunzilog.c +++ b/drivers/serial/sunzilog.c | |||
@@ -277,14 +277,13 @@ static void sunzilog_change_mouse_baud(struct uart_sunzilog_port *up) | |||
277 | } | 277 | } |
278 | 278 | ||
279 | static void sunzilog_kbdms_receive_chars(struct uart_sunzilog_port *up, | 279 | static void sunzilog_kbdms_receive_chars(struct uart_sunzilog_port *up, |
280 | unsigned char ch, int is_break, | 280 | unsigned char ch, int is_break) |
281 | struct pt_regs *regs) | ||
282 | { | 281 | { |
283 | if (ZS_IS_KEYB(up)) { | 282 | if (ZS_IS_KEYB(up)) { |
284 | /* Stop-A is handled by drivers/char/keyboard.c now. */ | 283 | /* Stop-A is handled by drivers/char/keyboard.c now. */ |
285 | #ifdef CONFIG_SERIO | 284 | #ifdef CONFIG_SERIO |
286 | if (up->serio_open) | 285 | if (up->serio_open) |
287 | serio_interrupt(&up->serio, ch, 0, regs); | 286 | serio_interrupt(&up->serio, ch, 0); |
288 | #endif | 287 | #endif |
289 | } else if (ZS_IS_MOUSE(up)) { | 288 | } else if (ZS_IS_MOUSE(up)) { |
290 | int ret = suncore_mouse_baud_detection(ch, is_break); | 289 | int ret = suncore_mouse_baud_detection(ch, is_break); |
@@ -299,7 +298,7 @@ static void sunzilog_kbdms_receive_chars(struct uart_sunzilog_port *up, | |||
299 | case 0: | 298 | case 0: |
300 | #ifdef CONFIG_SERIO | 299 | #ifdef CONFIG_SERIO |
301 | if (up->serio_open) | 300 | if (up->serio_open) |
302 | serio_interrupt(&up->serio, ch, 0, regs); | 301 | serio_interrupt(&up->serio, ch, 0); |
303 | #endif | 302 | #endif |
304 | break; | 303 | break; |
305 | }; | 304 | }; |
@@ -308,8 +307,7 @@ static void sunzilog_kbdms_receive_chars(struct uart_sunzilog_port *up, | |||
308 | 307 | ||
309 | static struct tty_struct * | 308 | static struct tty_struct * |
310 | sunzilog_receive_chars(struct uart_sunzilog_port *up, | 309 | sunzilog_receive_chars(struct uart_sunzilog_port *up, |
311 | struct zilog_channel __iomem *channel, | 310 | struct zilog_channel __iomem *channel) |
312 | struct pt_regs *regs) | ||
313 | { | 311 | { |
314 | struct tty_struct *tty; | 312 | struct tty_struct *tty; |
315 | unsigned char ch, r1, flag; | 313 | unsigned char ch, r1, flag; |
@@ -346,12 +344,12 @@ sunzilog_receive_chars(struct uart_sunzilog_port *up, | |||
346 | ch &= up->parity_mask; | 344 | ch &= up->parity_mask; |
347 | 345 | ||
348 | if (unlikely(ZS_IS_KEYB(up)) || unlikely(ZS_IS_MOUSE(up))) { | 346 | if (unlikely(ZS_IS_KEYB(up)) || unlikely(ZS_IS_MOUSE(up))) { |
349 | sunzilog_kbdms_receive_chars(up, ch, 0, regs); | 347 | sunzilog_kbdms_receive_chars(up, ch, 0); |
350 | continue; | 348 | continue; |
351 | } | 349 | } |
352 | 350 | ||
353 | if (tty == NULL) { | 351 | if (tty == NULL) { |
354 | uart_handle_sysrq_char(&up->port, ch, regs); | 352 | uart_handle_sysrq_char(&up->port, ch); |
355 | continue; | 353 | continue; |
356 | } | 354 | } |
357 | 355 | ||
@@ -379,7 +377,7 @@ sunzilog_receive_chars(struct uart_sunzilog_port *up, | |||
379 | else if (r1 & CRC_ERR) | 377 | else if (r1 & CRC_ERR) |
380 | flag = TTY_FRAME; | 378 | flag = TTY_FRAME; |
381 | } | 379 | } |
382 | if (uart_handle_sysrq_char(&up->port, ch, regs)) | 380 | if (uart_handle_sysrq_char(&up->port, ch)) |
383 | continue; | 381 | continue; |
384 | 382 | ||
385 | if (up->port.ignore_status_mask == 0xff || | 383 | if (up->port.ignore_status_mask == 0xff || |
@@ -394,8 +392,7 @@ sunzilog_receive_chars(struct uart_sunzilog_port *up, | |||
394 | } | 392 | } |
395 | 393 | ||
396 | static void sunzilog_status_handle(struct uart_sunzilog_port *up, | 394 | static void sunzilog_status_handle(struct uart_sunzilog_port *up, |
397 | struct zilog_channel __iomem *channel, | 395 | struct zilog_channel __iomem *channel) |
398 | struct pt_regs *regs) | ||
399 | { | 396 | { |
400 | unsigned char status; | 397 | unsigned char status; |
401 | 398 | ||
@@ -408,7 +405,7 @@ static void sunzilog_status_handle(struct uart_sunzilog_port *up, | |||
408 | 405 | ||
409 | if (status & BRK_ABRT) { | 406 | if (status & BRK_ABRT) { |
410 | if (ZS_IS_MOUSE(up)) | 407 | if (ZS_IS_MOUSE(up)) |
411 | sunzilog_kbdms_receive_chars(up, 0, 1, regs); | 408 | sunzilog_kbdms_receive_chars(up, 0, 1); |
412 | if (ZS_IS_CONS(up)) { | 409 | if (ZS_IS_CONS(up)) { |
413 | /* Wait for BREAK to deassert to avoid potentially | 410 | /* Wait for BREAK to deassert to avoid potentially |
414 | * confusing the PROM. | 411 | * confusing the PROM. |
@@ -517,7 +514,7 @@ ack_tx_int: | |||
517 | ZS_WSYNC(channel); | 514 | ZS_WSYNC(channel); |
518 | } | 515 | } |
519 | 516 | ||
520 | static irqreturn_t sunzilog_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 517 | static irqreturn_t sunzilog_interrupt(int irq, void *dev_id) |
521 | { | 518 | { |
522 | struct uart_sunzilog_port *up = dev_id; | 519 | struct uart_sunzilog_port *up = dev_id; |
523 | 520 | ||
@@ -538,9 +535,9 @@ static irqreturn_t sunzilog_interrupt(int irq, void *dev_id, struct pt_regs *reg | |||
538 | ZS_WSYNC(channel); | 535 | ZS_WSYNC(channel); |
539 | 536 | ||
540 | if (r3 & CHARxIP) | 537 | if (r3 & CHARxIP) |
541 | tty = sunzilog_receive_chars(up, channel, regs); | 538 | tty = sunzilog_receive_chars(up, channel); |
542 | if (r3 & CHAEXT) | 539 | if (r3 & CHAEXT) |
543 | sunzilog_status_handle(up, channel, regs); | 540 | sunzilog_status_handle(up, channel); |
544 | if (r3 & CHATxIP) | 541 | if (r3 & CHATxIP) |
545 | sunzilog_transmit_chars(up, channel); | 542 | sunzilog_transmit_chars(up, channel); |
546 | } | 543 | } |
@@ -561,9 +558,9 @@ static irqreturn_t sunzilog_interrupt(int irq, void *dev_id, struct pt_regs *reg | |||
561 | ZS_WSYNC(channel); | 558 | ZS_WSYNC(channel); |
562 | 559 | ||
563 | if (r3 & CHBRxIP) | 560 | if (r3 & CHBRxIP) |
564 | tty = sunzilog_receive_chars(up, channel, regs); | 561 | tty = sunzilog_receive_chars(up, channel); |
565 | if (r3 & CHBEXT) | 562 | if (r3 & CHBEXT) |
566 | sunzilog_status_handle(up, channel, regs); | 563 | sunzilog_status_handle(up, channel); |
567 | if (r3 & CHBTxIP) | 564 | if (r3 & CHBTxIP) |
568 | sunzilog_transmit_chars(up, channel); | 565 | sunzilog_transmit_chars(up, channel); |
569 | } | 566 | } |
@@ -1060,7 +1057,7 @@ static void sunzilog_free_tables(void) | |||
1060 | 1057 | ||
1061 | static void sunzilog_putchar(struct uart_port *port, int ch) | 1058 | static void sunzilog_putchar(struct uart_port *port, int ch) |
1062 | { | 1059 | { |
1063 | struct zilog_channel *channel = ZILOG_CHANNEL_FROM_PORT(port); | 1060 | struct zilog_channel __iomem *channel = ZILOG_CHANNEL_FROM_PORT(port); |
1064 | int loops = ZS_PUT_CHAR_MAX_DELAY; | 1061 | int loops = ZS_PUT_CHAR_MAX_DELAY; |
1065 | 1062 | ||
1066 | /* This is a timed polling loop so do not switch the explicit | 1063 | /* This is a timed polling loop so do not switch the explicit |
diff --git a/drivers/serial/v850e_uart.c b/drivers/serial/v850e_uart.c index f802867c95c5..28f3bbff87bf 100644 --- a/drivers/serial/v850e_uart.c +++ b/drivers/serial/v850e_uart.c | |||
@@ -271,14 +271,14 @@ void v850e_uart_tx (struct uart_port *port) | |||
271 | v850e_uart_stop_tx (port, stopped); | 271 | v850e_uart_stop_tx (port, stopped); |
272 | } | 272 | } |
273 | 273 | ||
274 | static irqreturn_t v850e_uart_tx_irq(int irq, void *data, struct pt_regs *regs) | 274 | static irqreturn_t v850e_uart_tx_irq(int irq, void *data) |
275 | { | 275 | { |
276 | struct uart_port *port = data; | 276 | struct uart_port *port = data; |
277 | v850e_uart_tx (port); | 277 | v850e_uart_tx (port); |
278 | return IRQ_HANDLED; | 278 | return IRQ_HANDLED; |
279 | } | 279 | } |
280 | 280 | ||
281 | static irqreturn_t v850e_uart_rx_irq(int irq, void *data, struct pt_regs *regs) | 281 | static irqreturn_t v850e_uart_rx_irq(int irq, void *data) |
282 | { | 282 | { |
283 | struct uart_port *port = data; | 283 | struct uart_port *port = data; |
284 | unsigned ch_stat = TTY_NORMAL; | 284 | unsigned ch_stat = TTY_NORMAL; |
diff --git a/drivers/serial/vr41xx_siu.c b/drivers/serial/vr41xx_siu.c index 6c8b0ea83c3c..fd51f8182dec 100644 --- a/drivers/serial/vr41xx_siu.c +++ b/drivers/serial/vr41xx_siu.c | |||
@@ -359,8 +359,7 @@ static void siu_break_ctl(struct uart_port *port, int ctl) | |||
359 | spin_unlock_irqrestore(&port->lock, flags); | 359 | spin_unlock_irqrestore(&port->lock, flags); |
360 | } | 360 | } |
361 | 361 | ||
362 | static inline void receive_chars(struct uart_port *port, uint8_t *status, | 362 | static inline void receive_chars(struct uart_port *port, uint8_t *status) |
363 | struct pt_regs *regs) | ||
364 | { | 363 | { |
365 | struct tty_struct *tty; | 364 | struct tty_struct *tty; |
366 | uint8_t lsr, ch; | 365 | uint8_t lsr, ch; |
@@ -405,7 +404,7 @@ static inline void receive_chars(struct uart_port *port, uint8_t *status, | |||
405 | flag = TTY_PARITY; | 404 | flag = TTY_PARITY; |
406 | } | 405 | } |
407 | 406 | ||
408 | if (uart_handle_sysrq_char(port, ch, regs)) | 407 | if (uart_handle_sysrq_char(port, ch)) |
409 | goto ignore_char; | 408 | goto ignore_char; |
410 | 409 | ||
411 | uart_insert_char(port, lsr, UART_LSR_OE, ch, flag); | 410 | uart_insert_char(port, lsr, UART_LSR_OE, ch, flag); |
@@ -472,7 +471,7 @@ static inline void transmit_chars(struct uart_port *port) | |||
472 | siu_stop_tx(port); | 471 | siu_stop_tx(port); |
473 | } | 472 | } |
474 | 473 | ||
475 | static irqreturn_t siu_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 474 | static irqreturn_t siu_interrupt(int irq, void *dev_id) |
476 | { | 475 | { |
477 | struct uart_port *port; | 476 | struct uart_port *port; |
478 | uint8_t iir, lsr; | 477 | uint8_t iir, lsr; |
@@ -485,7 +484,7 @@ static irqreturn_t siu_interrupt(int irq, void *dev_id, struct pt_regs *regs) | |||
485 | 484 | ||
486 | lsr = siu_read(port, UART_LSR); | 485 | lsr = siu_read(port, UART_LSR); |
487 | if (lsr & UART_LSR_DR) | 486 | if (lsr & UART_LSR_DR) |
488 | receive_chars(port, &lsr, regs); | 487 | receive_chars(port, &lsr); |
489 | 488 | ||
490 | check_modem_status(port); | 489 | check_modem_status(port); |
491 | 490 | ||
diff --git a/drivers/sn/ioc3.c b/drivers/sn/ioc3.c index 6c7e0352d561..cd6b65333b71 100644 --- a/drivers/sn/ioc3.c +++ b/drivers/sn/ioc3.c | |||
@@ -398,10 +398,10 @@ static inline uint32_t get_pending_intrs(struct ioc3_driver_data *idd) | |||
398 | return intrs; | 398 | return intrs; |
399 | } | 399 | } |
400 | 400 | ||
401 | static irqreturn_t ioc3_intr_io(int irq, void *arg, struct pt_regs *regs) | 401 | static irqreturn_t ioc3_intr_io(int irq, void *arg) |
402 | { | 402 | { |
403 | unsigned long flags; | 403 | unsigned long flags; |
404 | struct ioc3_driver_data *idd = (struct ioc3_driver_data *)arg; | 404 | struct ioc3_driver_data *idd = arg; |
405 | int handled = 1, id; | 405 | int handled = 1, id; |
406 | unsigned int pending; | 406 | unsigned int pending; |
407 | 407 | ||
@@ -412,7 +412,7 @@ static irqreturn_t ioc3_intr_io(int irq, void *arg, struct pt_regs *regs) | |||
412 | if(ioc3_ethernet && idd->active[ioc3_ethernet->id] && | 412 | if(ioc3_ethernet && idd->active[ioc3_ethernet->id] && |
413 | ioc3_ethernet->intr) { | 413 | ioc3_ethernet->intr) { |
414 | handled = handled && !ioc3_ethernet->intr(ioc3_ethernet, | 414 | handled = handled && !ioc3_ethernet->intr(ioc3_ethernet, |
415 | idd, 0, regs); | 415 | idd, 0); |
416 | } | 416 | } |
417 | } | 417 | } |
418 | pending = get_pending_intrs(idd); /* look at the IO IRQs */ | 418 | pending = get_pending_intrs(idd); /* look at the IO IRQs */ |
@@ -424,8 +424,7 @@ static irqreturn_t ioc3_intr_io(int irq, void *arg, struct pt_regs *regs) | |||
424 | write_ireg(idd, ioc3_submodules[id]->irq_mask, | 424 | write_ireg(idd, ioc3_submodules[id]->irq_mask, |
425 | IOC3_W_IEC); | 425 | IOC3_W_IEC); |
426 | if(!ioc3_submodules[id]->intr(ioc3_submodules[id], | 426 | if(!ioc3_submodules[id]->intr(ioc3_submodules[id], |
427 | idd, pending & ioc3_submodules[id]->irq_mask, | 427 | idd, pending & ioc3_submodules[id]->irq_mask)) |
428 | regs)) | ||
429 | pending &= ~ioc3_submodules[id]->irq_mask; | 428 | pending &= ~ioc3_submodules[id]->irq_mask; |
430 | if (ioc3_submodules[id]->reset_mask) | 429 | if (ioc3_submodules[id]->reset_mask) |
431 | write_ireg(idd, ioc3_submodules[id]->irq_mask, | 430 | write_ireg(idd, ioc3_submodules[id]->irq_mask, |
@@ -442,7 +441,7 @@ static irqreturn_t ioc3_intr_io(int irq, void *arg, struct pt_regs *regs) | |||
442 | return handled?IRQ_HANDLED:IRQ_NONE; | 441 | return handled?IRQ_HANDLED:IRQ_NONE; |
443 | } | 442 | } |
444 | 443 | ||
445 | static irqreturn_t ioc3_intr_eth(int irq, void *arg, struct pt_regs *regs) | 444 | static irqreturn_t ioc3_intr_eth(int irq, void *arg) |
446 | { | 445 | { |
447 | unsigned long flags; | 446 | unsigned long flags; |
448 | struct ioc3_driver_data *idd = (struct ioc3_driver_data *)arg; | 447 | struct ioc3_driver_data *idd = (struct ioc3_driver_data *)arg; |
@@ -453,8 +452,7 @@ static irqreturn_t ioc3_intr_eth(int irq, void *arg, struct pt_regs *regs) | |||
453 | read_lock_irqsave(&ioc3_submodules_lock, flags); | 452 | read_lock_irqsave(&ioc3_submodules_lock, flags); |
454 | if(ioc3_ethernet && idd->active[ioc3_ethernet->id] | 453 | if(ioc3_ethernet && idd->active[ioc3_ethernet->id] |
455 | && ioc3_ethernet->intr) | 454 | && ioc3_ethernet->intr) |
456 | handled = handled && !ioc3_ethernet->intr(ioc3_ethernet, idd, 0, | 455 | handled = handled && !ioc3_ethernet->intr(ioc3_ethernet, idd, 0); |
457 | regs); | ||
458 | read_unlock_irqrestore(&ioc3_submodules_lock, flags); | 456 | read_unlock_irqrestore(&ioc3_submodules_lock, flags); |
459 | return handled?IRQ_HANDLED:IRQ_NONE; | 457 | return handled?IRQ_HANDLED:IRQ_NONE; |
460 | } | 458 | } |
diff --git a/drivers/spi/pxa2xx_spi.c b/drivers/spi/pxa2xx_spi.c index 29aec77f98be..72025df5561d 100644 --- a/drivers/spi/pxa2xx_spi.c +++ b/drivers/spi/pxa2xx_spi.c | |||
@@ -409,7 +409,7 @@ static int wait_dma_channel_stop(int channel) | |||
409 | return limit; | 409 | return limit; |
410 | } | 410 | } |
411 | 411 | ||
412 | static void dma_handler(int channel, void *data, struct pt_regs *regs) | 412 | static void dma_handler(int channel, void *data) |
413 | { | 413 | { |
414 | struct driver_data *drv_data = data; | 414 | struct driver_data *drv_data = data; |
415 | struct spi_message *msg = drv_data->cur_msg; | 415 | struct spi_message *msg = drv_data->cur_msg; |
@@ -667,9 +667,9 @@ static irqreturn_t interrupt_transfer(struct driver_data *drv_data) | |||
667 | return IRQ_HANDLED; | 667 | return IRQ_HANDLED; |
668 | } | 668 | } |
669 | 669 | ||
670 | static irqreturn_t ssp_int(int irq, void *dev_id, struct pt_regs *regs) | 670 | static irqreturn_t ssp_int(int irq, void *dev_id) |
671 | { | 671 | { |
672 | struct driver_data *drv_data = (struct driver_data *)dev_id; | 672 | struct driver_data *drv_data = dev_id; |
673 | void *reg = drv_data->ioaddr; | 673 | void *reg = drv_data->ioaddr; |
674 | 674 | ||
675 | if (!drv_data->cur_msg) { | 675 | if (!drv_data->cur_msg) { |
diff --git a/drivers/spi/spi_mpc83xx.c b/drivers/spi/spi_mpc83xx.c index 5d92a7e5cb41..ff0b04895db0 100644 --- a/drivers/spi/spi_mpc83xx.c +++ b/drivers/spi/spi_mpc83xx.c | |||
@@ -296,8 +296,7 @@ static int mpc83xx_spi_bufs(struct spi_device *spi, struct spi_transfer *t) | |||
296 | return t->len - mpc83xx_spi->count; | 296 | return t->len - mpc83xx_spi->count; |
297 | } | 297 | } |
298 | 298 | ||
299 | irqreturn_t mpc83xx_spi_irq(s32 irq, void *context_data, | 299 | irqreturn_t mpc83xx_spi_irq(s32 irq, void *context_data) |
300 | struct pt_regs * ptregs) | ||
301 | { | 300 | { |
302 | struct mpc83xx_spi *mpc83xx_spi = context_data; | 301 | struct mpc83xx_spi *mpc83xx_spi = context_data; |
303 | u32 event; | 302 | u32 event; |
diff --git a/drivers/spi/spi_s3c24xx.c b/drivers/spi/spi_s3c24xx.c index 20eb6e95a3a0..2ebe1fc4c398 100644 --- a/drivers/spi/spi_s3c24xx.c +++ b/drivers/spi/spi_s3c24xx.c | |||
@@ -196,7 +196,7 @@ static int s3c24xx_spi_txrx(struct spi_device *spi, struct spi_transfer *t) | |||
196 | return hw->count; | 196 | return hw->count; |
197 | } | 197 | } |
198 | 198 | ||
199 | static irqreturn_t s3c24xx_spi_irq(int irq, void *dev, struct pt_regs *regs) | 199 | static irqreturn_t s3c24xx_spi_irq(int irq, void *dev) |
200 | { | 200 | { |
201 | struct s3c24xx_spi *hw = dev; | 201 | struct s3c24xx_spi *hw = dev; |
202 | unsigned int spsta = readb(hw->regs + S3C2410_SPSTA); | 202 | unsigned int spsta = readb(hw->regs + S3C2410_SPSTA); |
diff --git a/drivers/tc/zs.c b/drivers/tc/zs.c index 622881f26761..792becdfe6f8 100644 --- a/drivers/tc/zs.c +++ b/drivers/tc/zs.c | |||
@@ -347,7 +347,7 @@ static void rs_sched_event(struct dec_serial *info, int event) | |||
347 | tasklet_schedule(&info->tlet); | 347 | tasklet_schedule(&info->tlet); |
348 | } | 348 | } |
349 | 349 | ||
350 | static void receive_chars(struct dec_serial *info, struct pt_regs *regs) | 350 | static void receive_chars(struct dec_serial *info) |
351 | { | 351 | { |
352 | struct tty_struct *tty = info->tty; | 352 | struct tty_struct *tty = info->tty; |
353 | unsigned char ch, stat, flag; | 353 | unsigned char ch, stat, flag; |
@@ -389,7 +389,7 @@ static void receive_chars(struct dec_serial *info, struct pt_regs *regs) | |||
389 | if (ch == 0) | 389 | if (ch == 0) |
390 | continue; | 390 | continue; |
391 | if (time_before(jiffies, break_pressed + HZ * 5)) { | 391 | if (time_before(jiffies, break_pressed + HZ * 5)) { |
392 | handle_sysrq(ch, regs, NULL); | 392 | handle_sysrq(ch, NULL); |
393 | break_pressed = 0; | 393 | break_pressed = 0; |
394 | continue; | 394 | continue; |
395 | } | 395 | } |
@@ -490,7 +490,7 @@ static void status_handle(struct dec_serial *info) | |||
490 | /* | 490 | /* |
491 | * This is the serial driver's generic interrupt routine | 491 | * This is the serial driver's generic interrupt routine |
492 | */ | 492 | */ |
493 | static irqreturn_t rs_interrupt(int irq, void *dev_id, struct pt_regs *regs) | 493 | static irqreturn_t rs_interrupt(int irq, void *dev_id) |
494 | { | 494 | { |
495 | struct dec_serial *info = (struct dec_serial *) dev_id; | 495 | struct dec_serial *info = (struct dec_serial *) dev_id; |
496 | irqreturn_t status = IRQ_NONE; | 496 | irqreturn_t status = IRQ_NONE; |
@@ -518,7 +518,7 @@ static irqreturn_t rs_interrupt(int irq, void *dev_id, struct pt_regs *regs) | |||
518 | status = IRQ_HANDLED; | 518 | status = IRQ_HANDLED; |
519 | 519 | ||
520 | if (zs_intreg & CHBRxIP) { | 520 | if (zs_intreg & CHBRxIP) { |
521 | receive_chars(info, regs); | 521 | receive_chars(info); |
522 | } | 522 | } |
523 | if (zs_intreg & CHBTxIP) { | 523 | if (zs_intreg & CHBTxIP) { |
524 | transmit_chars(info); | 524 | transmit_chars(info); |
diff --git a/drivers/usb/atm/cxacru.c b/drivers/usb/atm/cxacru.c index 04631dcbabbc..3892a9e9aee3 100644 --- a/drivers/usb/atm/cxacru.c +++ b/drivers/usb/atm/cxacru.c | |||
@@ -171,7 +171,7 @@ struct cxacru_data { | |||
171 | }; | 171 | }; |
172 | 172 | ||
173 | /* the following three functions are stolen from drivers/usb/core/message.c */ | 173 | /* the following three functions are stolen from drivers/usb/core/message.c */ |
174 | static void cxacru_blocking_completion(struct urb *urb, struct pt_regs *regs) | 174 | static void cxacru_blocking_completion(struct urb *urb) |
175 | { | 175 | { |
176 | complete((struct completion *)urb->context); | 176 | complete((struct completion *)urb->context); |
177 | } | 177 | } |
diff --git a/drivers/usb/atm/speedtch.c b/drivers/usb/atm/speedtch.c index 956b7a1e8af9..7c7b507af29d 100644 --- a/drivers/usb/atm/speedtch.c +++ b/drivers/usb/atm/speedtch.c | |||
@@ -547,7 +547,7 @@ static void speedtch_resubmit_int(unsigned long data) | |||
547 | } | 547 | } |
548 | } | 548 | } |
549 | 549 | ||
550 | static void speedtch_handle_int(struct urb *int_urb, struct pt_regs *regs) | 550 | static void speedtch_handle_int(struct urb *int_urb) |
551 | { | 551 | { |
552 | struct speedtch_instance_data *instance = int_urb->context; | 552 | struct speedtch_instance_data *instance = int_urb->context; |
553 | struct usbatm_data *usbatm = instance->usbatm; | 553 | struct usbatm_data *usbatm = instance->usbatm; |
diff --git a/drivers/usb/atm/ueagle-atm.c b/drivers/usb/atm/ueagle-atm.c index 465961a26e4a..f5434b1cbb1e 100644 --- a/drivers/usb/atm/ueagle-atm.c +++ b/drivers/usb/atm/ueagle-atm.c | |||
@@ -1297,7 +1297,7 @@ bad1: | |||
1297 | /* | 1297 | /* |
1298 | * interrupt handler | 1298 | * interrupt handler |
1299 | */ | 1299 | */ |
1300 | static void uea_intr(struct urb *urb, struct pt_regs *regs) | 1300 | static void uea_intr(struct urb *urb) |
1301 | { | 1301 | { |
1302 | struct uea_softc *sc = urb->context; | 1302 | struct uea_softc *sc = urb->context; |
1303 | struct intr_pkt *intr = urb->transfer_buffer; | 1303 | struct intr_pkt *intr = urb->transfer_buffer; |
diff --git a/drivers/usb/atm/usbatm.c b/drivers/usb/atm/usbatm.c index a38701c742c3..309073f6433a 100644 --- a/drivers/usb/atm/usbatm.c +++ b/drivers/usb/atm/usbatm.c | |||
@@ -254,7 +254,7 @@ static int usbatm_submit_urb(struct urb *urb) | |||
254 | return ret; | 254 | return ret; |
255 | } | 255 | } |
256 | 256 | ||
257 | static void usbatm_complete(struct urb *urb, struct pt_regs *regs) | 257 | static void usbatm_complete(struct urb *urb) |
258 | { | 258 | { |
259 | struct usbatm_channel *channel = urb->context; | 259 | struct usbatm_channel *channel = urb->context; |
260 | unsigned long flags; | 260 | unsigned long flags; |
diff --git a/drivers/usb/class/cdc-acm.c b/drivers/usb/class/cdc-acm.c index 71288295df2f..ec4d1d756725 100644 --- a/drivers/usb/class/cdc-acm.c +++ b/drivers/usb/class/cdc-acm.c | |||
@@ -218,7 +218,7 @@ static int acm_write_start(struct acm *acm) | |||
218 | */ | 218 | */ |
219 | 219 | ||
220 | /* control interface reports status changes with "interrupt" transfers */ | 220 | /* control interface reports status changes with "interrupt" transfers */ |
221 | static void acm_ctrl_irq(struct urb *urb, struct pt_regs *regs) | 221 | static void acm_ctrl_irq(struct urb *urb) |
222 | { | 222 | { |
223 | struct acm *acm = urb->context; | 223 | struct acm *acm = urb->context; |
224 | struct usb_cdc_notification *dr = urb->transfer_buffer; | 224 | struct usb_cdc_notification *dr = urb->transfer_buffer; |
@@ -285,7 +285,7 @@ exit: | |||
285 | } | 285 | } |
286 | 286 | ||
287 | /* data interface returns incoming bytes, or we got unthrottled */ | 287 | /* data interface returns incoming bytes, or we got unthrottled */ |
288 | static void acm_read_bulk(struct urb *urb, struct pt_regs *regs) | 288 | static void acm_read_bulk(struct urb *urb) |
289 | { | 289 | { |
290 | struct acm_rb *buf; | 290 | struct acm_rb *buf; |
291 | struct acm_ru *rcv = urb->context; | 291 | struct acm_ru *rcv = urb->context; |
@@ -409,7 +409,7 @@ urbs: | |||
409 | } | 409 | } |
410 | 410 | ||
411 | /* data interface wrote those outgoing bytes */ | 411 | /* data interface wrote those outgoing bytes */ |
412 | static void acm_write_bulk(struct urb *urb, struct pt_regs *regs) | 412 | static void acm_write_bulk(struct urb *urb) |
413 | { | 413 | { |
414 | struct acm *acm = (struct acm *)urb->context; | 414 | struct acm *acm = (struct acm *)urb->context; |
415 | 415 | ||
diff --git a/drivers/usb/class/usblp.c b/drivers/usb/class/usblp.c index 9cac11ca1bb7..a161d70e1e42 100644 --- a/drivers/usb/class/usblp.c +++ b/drivers/usb/class/usblp.c | |||
@@ -271,7 +271,7 @@ static int proto_bias = -1; | |||
271 | * URB callback. | 271 | * URB callback. |
272 | */ | 272 | */ |
273 | 273 | ||
274 | static void usblp_bulk_read(struct urb *urb, struct pt_regs *regs) | 274 | static void usblp_bulk_read(struct urb *urb) |
275 | { | 275 | { |
276 | struct usblp *usblp = urb->context; | 276 | struct usblp *usblp = urb->context; |
277 | 277 | ||
@@ -288,7 +288,7 @@ unplug: | |||
288 | wake_up_interruptible(&usblp->wait); | 288 | wake_up_interruptible(&usblp->wait); |
289 | } | 289 | } |
290 | 290 | ||
291 | static void usblp_bulk_write(struct urb *urb, struct pt_regs *regs) | 291 | static void usblp_bulk_write(struct urb *urb) |
292 | { | 292 | { |
293 | struct usblp *usblp = urb->context; | 293 | struct usblp *usblp = urb->context; |
294 | 294 | ||
diff --git a/drivers/usb/core/devio.c b/drivers/usb/core/devio.c index 3f509beb88e4..724822cac2b1 100644 --- a/drivers/usb/core/devio.c +++ b/drivers/usb/core/devio.c | |||
@@ -304,7 +304,7 @@ static void snoop_urb(struct urb *urb, void __user *userurb) | |||
304 | printk("\n"); | 304 | printk("\n"); |
305 | } | 305 | } |
306 | 306 | ||
307 | static void async_completed(struct urb *urb, struct pt_regs *regs) | 307 | static void async_completed(struct urb *urb) |
308 | { | 308 | { |
309 | struct async *as = urb->context; | 309 | struct async *as = urb->context; |
310 | struct dev_state *ps = as->ps; | 310 | struct dev_state *ps = as->ps; |
@@ -1216,7 +1216,7 @@ static int proc_submiturb_compat(struct dev_state *ps, void __user *arg) | |||
1216 | { | 1216 | { |
1217 | struct usbdevfs_urb uurb; | 1217 | struct usbdevfs_urb uurb; |
1218 | 1218 | ||
1219 | if (get_urb32(&uurb,(struct usbdevfs_urb32 *)arg)) | 1219 | if (get_urb32(&uurb,(struct usbdevfs_urb32 __user *)arg)) |
1220 | return -EFAULT; | 1220 | return -EFAULT; |
1221 | 1221 | ||
1222 | return proc_do_submiturb(ps, &uurb, ((struct usbdevfs_urb32 __user *)arg)->iso_frame_desc, arg); | 1222 | return proc_do_submiturb(ps, &uurb, ((struct usbdevfs_urb32 __user *)arg)->iso_frame_desc, arg); |
@@ -1251,7 +1251,7 @@ static int processcompl_compat(struct async *as, void __user * __user *arg) | |||
1251 | } | 1251 | } |
1252 | 1252 | ||
1253 | free_async(as); | 1253 | free_async(as); |
1254 | if (put_user((u32)(u64)addr, (u32 __user *)arg)) | 1254 | if (put_user(ptr_to_compat(addr), (u32 __user *)arg)) |
1255 | return -EFAULT; | 1255 | return -EFAULT; |
1256 | return 0; | 1256 | return 0; |
1257 | } | 1257 | } |
@@ -1520,7 +1520,7 @@ static int usbdev_ioctl(struct inode *inode, struct file *file, unsigned int cmd | |||
1520 | 1520 | ||
1521 | case USBDEVFS_IOCTL32: | 1521 | case USBDEVFS_IOCTL32: |
1522 | snoop(&dev->dev, "%s: IOCTL\n", __FUNCTION__); | 1522 | snoop(&dev->dev, "%s: IOCTL\n", __FUNCTION__); |
1523 | ret = proc_ioctl_compat(ps, (compat_uptr_t)(long)p); | 1523 | ret = proc_ioctl_compat(ps, ptr_to_compat(p)); |
1524 | break; | 1524 | break; |
1525 | #endif | 1525 | #endif |
1526 | 1526 | ||
diff --git a/drivers/usb/core/hcd.c b/drivers/usb/core/hcd.c index e658089f7b50..afa2dd203329 100644 --- a/drivers/usb/core/hcd.c +++ b/drivers/usb/core/hcd.c | |||
@@ -522,7 +522,7 @@ error: | |||
522 | if (urb->status == -EINPROGRESS) | 522 | if (urb->status == -EINPROGRESS) |
523 | urb->status = status; | 523 | urb->status = status; |
524 | spin_unlock (&urb->lock); | 524 | spin_unlock (&urb->lock); |
525 | usb_hcd_giveback_urb (hcd, urb, NULL); | 525 | usb_hcd_giveback_urb (hcd, urb); |
526 | local_irq_restore (flags); | 526 | local_irq_restore (flags); |
527 | return 0; | 527 | return 0; |
528 | } | 528 | } |
@@ -572,7 +572,7 @@ void usb_hcd_poll_rh_status(struct usb_hcd *hcd) | |||
572 | 572 | ||
573 | /* local irqs are always blocked in completions */ | 573 | /* local irqs are always blocked in completions */ |
574 | if (length > 0) | 574 | if (length > 0) |
575 | usb_hcd_giveback_urb (hcd, urb, NULL); | 575 | usb_hcd_giveback_urb (hcd, urb); |
576 | else | 576 | else |
577 | hcd->poll_pending = 1; | 577 | hcd->poll_pending = 1; |
578 | local_irq_restore (flags); | 578 | local_irq_restore (flags); |
@@ -656,7 +656,7 @@ static int usb_rh_urb_dequeue (struct usb_hcd *hcd, struct urb *urb) | |||
656 | urb = NULL; /* wasn't fully queued */ | 656 | urb = NULL; /* wasn't fully queued */ |
657 | spin_unlock (&hcd_root_hub_lock); | 657 | spin_unlock (&hcd_root_hub_lock); |
658 | if (urb) | 658 | if (urb) |
659 | usb_hcd_giveback_urb (hcd, urb, NULL); | 659 | usb_hcd_giveback_urb (hcd, urb); |
660 | local_irq_restore (flags); | 660 | local_irq_restore (flags); |
661 | } | 661 | } |
662 | 662 | ||
@@ -1498,7 +1498,6 @@ EXPORT_SYMBOL (usb_bus_start_enum); | |||
1498 | * usb_hcd_giveback_urb - return URB from HCD to device driver | 1498 | * usb_hcd_giveback_urb - return URB from HCD to device driver |
1499 | * @hcd: host controller returning the URB | 1499 | * @hcd: host controller returning the URB |
1500 | * @urb: urb being returned to the USB device driver. | 1500 | * @urb: urb being returned to the USB device driver. |
1501 | * @regs: pt_regs, passed down to the URB completion handler | ||
1502 | * Context: in_interrupt() | 1501 | * Context: in_interrupt() |
1503 | * | 1502 | * |
1504 | * This hands the URB from HCD to its USB device driver, using its | 1503 | * This hands the URB from HCD to its USB device driver, using its |
@@ -1507,7 +1506,7 @@ EXPORT_SYMBOL (usb_bus_start_enum); | |||
1507 | * the device driver won't cause problems if it frees, modifies, | 1506 | * the device driver won't cause problems if it frees, modifies, |
1508 | * or resubmits this URB. | 1507 | * or resubmits this URB. |
1509 | */ | 1508 | */ |
1510 | void usb_hcd_giveback_urb (struct usb_hcd *hcd, struct urb *urb, struct pt_regs *regs) | 1509 | void usb_hcd_giveback_urb (struct usb_hcd *hcd, struct urb *urb) |
1511 | { | 1510 | { |
1512 | int at_root_hub; | 1511 | int at_root_hub; |
1513 | 1512 | ||
@@ -1534,7 +1533,7 @@ void usb_hcd_giveback_urb (struct usb_hcd *hcd, struct urb *urb, struct pt_regs | |||
1534 | 1533 | ||
1535 | usbmon_urb_complete (&hcd->self, urb); | 1534 | usbmon_urb_complete (&hcd->self, urb); |
1536 | /* pass ownership to the completion handler */ | 1535 | /* pass ownership to the completion handler */ |
1537 | urb->complete (urb, regs); | 1536 | urb->complete (urb); |
1538 | atomic_dec (&urb->use_count); | 1537 | atomic_dec (&urb->use_count); |
1539 | if (unlikely (urb->reject)) | 1538 | if (unlikely (urb->reject)) |
1540 | wake_up (&usb_kill_urb_queue); | 1539 | wake_up (&usb_kill_urb_queue); |
@@ -1553,7 +1552,7 @@ EXPORT_SYMBOL (usb_hcd_giveback_urb); | |||
1553 | * If the controller isn't HALTed, calls the driver's irq handler. | 1552 | * If the controller isn't HALTed, calls the driver's irq handler. |
1554 | * Checks whether the controller is now dead. | 1553 | * Checks whether the controller is now dead. |
1555 | */ | 1554 | */ |
1556 | irqreturn_t usb_hcd_irq (int irq, void *__hcd, struct pt_regs * r) | 1555 | irqreturn_t usb_hcd_irq (int irq, void *__hcd) |
1557 | { | 1556 | { |
1558 | struct usb_hcd *hcd = __hcd; | 1557 | struct usb_hcd *hcd = __hcd; |
1559 | int start = hcd->state; | 1558 | int start = hcd->state; |
@@ -1561,7 +1560,7 @@ irqreturn_t usb_hcd_irq (int irq, void *__hcd, struct pt_regs * r) | |||
1561 | if (unlikely(start == HC_STATE_HALT || | 1560 | if (unlikely(start == HC_STATE_HALT || |
1562 | !test_bit(HCD_FLAG_HW_ACCESSIBLE, &hcd->flags))) | 1561 | !test_bit(HCD_FLAG_HW_ACCESSIBLE, &hcd->flags))) |
1563 | return IRQ_NONE; | 1562 | return IRQ_NONE; |
1564 | if (hcd->driver->irq (hcd, r) == IRQ_NONE) | 1563 | if (hcd->driver->irq (hcd) == IRQ_NONE) |
1565 | return IRQ_NONE; | 1564 | return IRQ_NONE; |
1566 | 1565 | ||
1567 | set_bit(HCD_FLAG_SAW_IRQ, &hcd->flags); | 1566 | set_bit(HCD_FLAG_SAW_IRQ, &hcd->flags); |
diff --git a/drivers/usb/core/hcd.h b/drivers/usb/core/hcd.h index 676877c15f81..8f8df0d4382e 100644 --- a/drivers/usb/core/hcd.h +++ b/drivers/usb/core/hcd.h | |||
@@ -143,15 +143,13 @@ struct hcd_timeout { /* timeouts we allocate */ | |||
143 | /*-------------------------------------------------------------------------*/ | 143 | /*-------------------------------------------------------------------------*/ |
144 | 144 | ||
145 | 145 | ||
146 | struct pt_regs; | ||
147 | |||
148 | struct hc_driver { | 146 | struct hc_driver { |
149 | const char *description; /* "ehci-hcd" etc */ | 147 | const char *description; /* "ehci-hcd" etc */ |
150 | const char *product_desc; /* product/vendor string */ | 148 | const char *product_desc; /* product/vendor string */ |
151 | size_t hcd_priv_size; /* size of private data */ | 149 | size_t hcd_priv_size; /* size of private data */ |
152 | 150 | ||
153 | /* irq handler */ | 151 | /* irq handler */ |
154 | irqreturn_t (*irq) (struct usb_hcd *hcd, struct pt_regs *regs); | 152 | irqreturn_t (*irq) (struct usb_hcd *hcd); |
155 | 153 | ||
156 | int flags; | 154 | int flags; |
157 | #define HCD_MEMORY 0x0001 /* HC regs use memory (else I/O) */ | 155 | #define HCD_MEMORY 0x0001 /* HC regs use memory (else I/O) */ |
@@ -205,8 +203,7 @@ struct hc_driver { | |||
205 | 203 | ||
206 | extern int usb_hcd_submit_urb (struct urb *urb, gfp_t mem_flags); | 204 | extern int usb_hcd_submit_urb (struct urb *urb, gfp_t mem_flags); |
207 | extern int usb_hcd_unlink_urb (struct urb *urb, int status); | 205 | extern int usb_hcd_unlink_urb (struct urb *urb, int status); |
208 | extern void usb_hcd_giveback_urb (struct usb_hcd *hcd, struct urb *urb, | 206 | extern void usb_hcd_giveback_urb (struct usb_hcd *hcd, struct urb *urb); |
209 | struct pt_regs *regs); | ||
210 | extern void usb_hcd_endpoint_disable (struct usb_device *udev, | 207 | extern void usb_hcd_endpoint_disable (struct usb_device *udev, |
211 | struct usb_host_endpoint *ep); | 208 | struct usb_host_endpoint *ep); |
212 | extern int usb_hcd_get_frame_number (struct usb_device *udev); | 209 | extern int usb_hcd_get_frame_number (struct usb_device *udev); |
@@ -248,7 +245,7 @@ void hcd_buffer_free (struct usb_bus *bus, size_t size, | |||
248 | void *addr, dma_addr_t dma); | 245 | void *addr, dma_addr_t dma); |
249 | 246 | ||
250 | /* generic bus glue, needed for host controllers that don't use PCI */ | 247 | /* generic bus glue, needed for host controllers that don't use PCI */ |
251 | extern irqreturn_t usb_hcd_irq (int irq, void *__hcd, struct pt_regs *r); | 248 | extern irqreturn_t usb_hcd_irq (int irq, void *__hcd); |
252 | 249 | ||
253 | extern void usb_hc_died (struct usb_hcd *hcd); | 250 | extern void usb_hc_died (struct usb_hcd *hcd); |
254 | extern void usb_hcd_poll_rh_status(struct usb_hcd *hcd); | 251 | extern void usb_hcd_poll_rh_status(struct usb_hcd *hcd); |
diff --git a/drivers/usb/core/hub.c b/drivers/usb/core/hub.c index 7676690a0386..66bff184a30c 100644 --- a/drivers/usb/core/hub.c +++ b/drivers/usb/core/hub.c | |||
@@ -291,7 +291,7 @@ void usb_kick_khubd(struct usb_device *hdev) | |||
291 | 291 | ||
292 | 292 | ||
293 | /* completion function, fires on port status changes and various faults */ | 293 | /* completion function, fires on port status changes and various faults */ |
294 | static void hub_irq(struct urb *urb, struct pt_regs *regs) | 294 | static void hub_irq(struct urb *urb) |
295 | { | 295 | { |
296 | struct usb_hub *hub = urb->context; | 296 | struct usb_hub *hub = urb->context; |
297 | int status; | 297 | int status; |
diff --git a/drivers/usb/core/message.c b/drivers/usb/core/message.c index 85b1cd18336f..fccd1952bad3 100644 --- a/drivers/usb/core/message.c +++ b/drivers/usb/core/message.c | |||
@@ -17,7 +17,7 @@ | |||
17 | #include "hcd.h" /* for usbcore internals */ | 17 | #include "hcd.h" /* for usbcore internals */ |
18 | #include "usb.h" | 18 | #include "usb.h" |
19 | 19 | ||
20 | static void usb_api_blocking_completion(struct urb *urb, struct pt_regs *regs) | 20 | static void usb_api_blocking_completion(struct urb *urb) |
21 | { | 21 | { |
22 | complete((struct completion *)urb->context); | 22 | complete((struct completion *)urb->context); |
23 | } | 23 | } |
@@ -246,7 +246,7 @@ static void sg_clean (struct usb_sg_request *io) | |||
246 | io->dev = NULL; | 246 | io->dev = NULL; |
247 | } | 247 | } |
248 | 248 | ||
249 | static void sg_complete (struct urb *urb, struct pt_regs *regs) | 249 | static void sg_complete (struct urb *urb) |
250 | { | 250 | { |
251 | struct usb_sg_request *io = urb->context; | 251 | struct usb_sg_request *io = urb->context; |
252 | 252 | ||
diff --git a/drivers/usb/gadget/at91_udc.c b/drivers/usb/gadget/at91_udc.c index 77beba485a84..72f3db99ff94 100644 --- a/drivers/usb/gadget/at91_udc.c +++ b/drivers/usb/gadget/at91_udc.c | |||
@@ -1366,7 +1366,7 @@ static void handle_ep0(struct at91_udc *udc) | |||
1366 | } | 1366 | } |
1367 | } | 1367 | } |
1368 | 1368 | ||
1369 | static irqreturn_t at91_udc_irq (int irq, void *_udc, struct pt_regs *r) | 1369 | static irqreturn_t at91_udc_irq (int irq, void *_udc) |
1370 | { | 1370 | { |
1371 | struct at91_udc *udc = _udc; | 1371 | struct at91_udc *udc = _udc; |
1372 | u32 rescans = 5; | 1372 | u32 rescans = 5; |
@@ -1552,7 +1552,7 @@ static struct at91_udc controller = { | |||
1552 | /* ep6 and ep7 are also reserved (custom silicon might use them) */ | 1552 | /* ep6 and ep7 are also reserved (custom silicon might use them) */ |
1553 | }; | 1553 | }; |
1554 | 1554 | ||
1555 | static irqreturn_t at91_vbus_irq(int irq, void *_udc, struct pt_regs *r) | 1555 | static irqreturn_t at91_vbus_irq(int irq, void *_udc) |
1556 | { | 1556 | { |
1557 | struct at91_udc *udc = _udc; | 1557 | struct at91_udc *udc = _udc; |
1558 | unsigned value; | 1558 | unsigned value; |
diff --git a/drivers/usb/gadget/dummy_hcd.c b/drivers/usb/gadget/dummy_hcd.c index 4d2946e540cf..f1f32d7be5f9 100644 --- a/drivers/usb/gadget/dummy_hcd.c +++ b/drivers/usb/gadget/dummy_hcd.c | |||
@@ -1551,7 +1551,7 @@ return_urb: | |||
1551 | ep->already_seen = ep->setup_stage = 0; | 1551 | ep->already_seen = ep->setup_stage = 0; |
1552 | 1552 | ||
1553 | spin_unlock (&dum->lock); | 1553 | spin_unlock (&dum->lock); |
1554 | usb_hcd_giveback_urb (dummy_to_hcd(dum), urb, NULL); | 1554 | usb_hcd_giveback_urb (dummy_to_hcd(dum), urb); |
1555 | spin_lock (&dum->lock); | 1555 | spin_lock (&dum->lock); |
1556 | 1556 | ||
1557 | goto restart; | 1557 | goto restart; |
diff --git a/drivers/usb/gadget/goku_udc.c b/drivers/usb/gadget/goku_udc.c index 7cf2999e8616..a3076da3f4eb 100644 --- a/drivers/usb/gadget/goku_udc.c +++ b/drivers/usb/gadget/goku_udc.c | |||
@@ -1628,7 +1628,7 @@ stall: | |||
1628 | handled = 1; \ | 1628 | handled = 1; \ |
1629 | } | 1629 | } |
1630 | 1630 | ||
1631 | static irqreturn_t goku_irq(int irq, void *_dev, struct pt_regs *r) | 1631 | static irqreturn_t goku_irq(int irq, void *_dev) |
1632 | { | 1632 | { |
1633 | struct goku_udc *dev = _dev; | 1633 | struct goku_udc *dev = _dev; |
1634 | struct goku_udc_regs __iomem *regs = dev->regs; | 1634 | struct goku_udc_regs __iomem *regs = dev->regs; |
diff --git a/drivers/usb/gadget/lh7a40x_udc.c b/drivers/usb/gadget/lh7a40x_udc.c index 36db72579377..179259664c18 100644 --- a/drivers/usb/gadget/lh7a40x_udc.c +++ b/drivers/usb/gadget/lh7a40x_udc.c | |||
@@ -922,7 +922,7 @@ static void lh7a40x_reset_intr(struct lh7a40x_udc *dev) | |||
922 | /* | 922 | /* |
923 | * lh7a40x usb client interrupt handler. | 923 | * lh7a40x usb client interrupt handler. |
924 | */ | 924 | */ |
925 | static irqreturn_t lh7a40x_udc_irq(int irq, void *_dev, struct pt_regs *r) | 925 | static irqreturn_t lh7a40x_udc_irq(int irq, void *_dev) |
926 | { | 926 | { |
927 | struct lh7a40x_udc *dev = _dev; | 927 | struct lh7a40x_udc *dev = _dev; |
928 | 928 | ||
diff --git a/drivers/usb/gadget/net2280.c b/drivers/usb/gadget/net2280.c index 3bda37f9a35f..d954daa8e9e0 100644 --- a/drivers/usb/gadget/net2280.c +++ b/drivers/usb/gadget/net2280.c | |||
@@ -2753,7 +2753,7 @@ static void handle_stat1_irqs (struct net2280 *dev, u32 stat) | |||
2753 | DEBUG (dev, "unhandled irqstat1 %08x\n", stat); | 2753 | DEBUG (dev, "unhandled irqstat1 %08x\n", stat); |
2754 | } | 2754 | } |
2755 | 2755 | ||
2756 | static irqreturn_t net2280_irq (int irq, void *_dev, struct pt_regs * r) | 2756 | static irqreturn_t net2280_irq (int irq, void *_dev) |
2757 | { | 2757 | { |
2758 | struct net2280 *dev = _dev; | 2758 | struct net2280 *dev = _dev; |
2759 | 2759 | ||
diff --git a/drivers/usb/gadget/omap_udc.c b/drivers/usb/gadget/omap_udc.c index 8c18df869833..48a09fd89d18 100644 --- a/drivers/usb/gadget/omap_udc.c +++ b/drivers/usb/gadget/omap_udc.c | |||
@@ -1815,8 +1815,7 @@ static void devstate_irq(struct omap_udc *udc, u16 irq_src) | |||
1815 | UDC_IRQ_SRC_REG = UDC_DS_CHG; | 1815 | UDC_IRQ_SRC_REG = UDC_DS_CHG; |
1816 | } | 1816 | } |
1817 | 1817 | ||
1818 | static irqreturn_t | 1818 | static irqreturn_t omap_udc_irq(int irq, void *_udc) |
1819 | omap_udc_irq(int irq, void *_udc, struct pt_regs *r) | ||
1820 | { | 1819 | { |
1821 | struct omap_udc *udc = _udc; | 1820 | struct omap_udc *udc = _udc; |
1822 | u16 irq_src; | 1821 | u16 irq_src; |
@@ -1888,8 +1887,7 @@ static void pio_out_timer(unsigned long _ep) | |||
1888 | spin_unlock_irqrestore(&ep->udc->lock, flags); | 1887 | spin_unlock_irqrestore(&ep->udc->lock, flags); |
1889 | } | 1888 | } |
1890 | 1889 | ||
1891 | static irqreturn_t | 1890 | static irqreturn_t omap_udc_pio_irq(int irq, void *_dev) |
1892 | omap_udc_pio_irq(int irq, void *_dev, struct pt_regs *r) | ||
1893 | { | 1891 | { |
1894 | u16 epn_stat, irq_src; | 1892 | u16 epn_stat, irq_src; |
1895 | irqreturn_t status = IRQ_NONE; | 1893 | irqreturn_t status = IRQ_NONE; |
@@ -1968,8 +1966,7 @@ omap_udc_pio_irq(int irq, void *_dev, struct pt_regs *r) | |||
1968 | } | 1966 | } |
1969 | 1967 | ||
1970 | #ifdef USE_ISO | 1968 | #ifdef USE_ISO |
1971 | static irqreturn_t | 1969 | static irqreturn_t omap_udc_iso_irq(int irq, void *_dev) |
1972 | omap_udc_iso_irq(int irq, void *_dev, struct pt_regs *r) | ||
1973 | { | 1970 | { |
1974 | struct omap_udc *udc = _dev; | 1971 | struct omap_udc *udc = _dev; |
1975 | struct omap_ep *ep; | 1972 | struct omap_ep *ep; |
diff --git a/drivers/usb/gadget/pxa2xx_udc.c b/drivers/usb/gadget/pxa2xx_udc.c index f1adcf8b2023..f42c00ef0bca 100644 --- a/drivers/usb/gadget/pxa2xx_udc.c +++ b/drivers/usb/gadget/pxa2xx_udc.c | |||
@@ -110,7 +110,7 @@ static int use_dma = 1; | |||
110 | module_param(use_dma, bool, 0); | 110 | module_param(use_dma, bool, 0); |
111 | MODULE_PARM_DESC (use_dma, "true to use dma"); | 111 | MODULE_PARM_DESC (use_dma, "true to use dma"); |
112 | 112 | ||
113 | static void dma_nodesc_handler (int dmach, void *_ep, struct pt_regs *r); | 113 | static void dma_nodesc_handler (int dmach, void *_ep); |
114 | static void kick_dma(struct pxa2xx_ep *ep, struct pxa2xx_request *req); | 114 | static void kick_dma(struct pxa2xx_ep *ep, struct pxa2xx_request *req); |
115 | 115 | ||
116 | #ifdef USE_OUT_DMA | 116 | #ifdef USE_OUT_DMA |
@@ -828,7 +828,7 @@ static void cancel_dma(struct pxa2xx_ep *ep) | |||
828 | } | 828 | } |
829 | 829 | ||
830 | /* dma channel stopped ... normal tx end (IN), or on error (IN/OUT) */ | 830 | /* dma channel stopped ... normal tx end (IN), or on error (IN/OUT) */ |
831 | static void dma_nodesc_handler(int dmach, void *_ep, struct pt_regs *r) | 831 | static void dma_nodesc_handler(int dmach, void *_ep) |
832 | { | 832 | { |
833 | struct pxa2xx_ep *ep = _ep; | 833 | struct pxa2xx_ep *ep = _ep; |
834 | struct pxa2xx_request *req; | 834 | struct pxa2xx_request *req; |
@@ -1724,7 +1724,7 @@ EXPORT_SYMBOL(usb_gadget_unregister_driver); | |||
1724 | */ | 1724 | */ |
1725 | 1725 | ||
1726 | static irqreturn_t | 1726 | static irqreturn_t |
1727 | lubbock_vbus_irq(int irq, void *_dev, struct pt_regs *r) | 1727 | lubbock_vbus_irq(int irq, void *_dev) |
1728 | { | 1728 | { |
1729 | struct pxa2xx_udc *dev = _dev; | 1729 | struct pxa2xx_udc *dev = _dev; |
1730 | int vbus; | 1730 | int vbus; |
@@ -1754,8 +1754,7 @@ lubbock_vbus_irq(int irq, void *_dev, struct pt_regs *r) | |||
1754 | 1754 | ||
1755 | #endif | 1755 | #endif |
1756 | 1756 | ||
1757 | static irqreturn_t | 1757 | static irqreturn_t udc_vbus_irq(int irq, void *_dev) |
1758 | udc_vbus_irq(int irq, void *_dev, struct pt_regs *r) | ||
1759 | { | 1758 | { |
1760 | struct pxa2xx_udc *dev = _dev; | 1759 | struct pxa2xx_udc *dev = _dev; |
1761 | int vbus = pxa_gpio_get(dev->mach->gpio_vbus); | 1760 | int vbus = pxa_gpio_get(dev->mach->gpio_vbus); |
@@ -2084,7 +2083,7 @@ static void handle_ep(struct pxa2xx_ep *ep) | |||
2084 | * could cause usb protocol errors. | 2083 | * could cause usb protocol errors. |
2085 | */ | 2084 | */ |
2086 | static irqreturn_t | 2085 | static irqreturn_t |
2087 | pxa2xx_udc_irq(int irq, void *_dev, struct pt_regs *r) | 2086 | pxa2xx_udc_irq(int irq, void *_dev) |
2088 | { | 2087 | { |
2089 | struct pxa2xx_udc *dev = _dev; | 2088 | struct pxa2xx_udc *dev = _dev; |
2090 | int handled; | 2089 | int handled; |
diff --git a/drivers/usb/host/ehci-hcd.c b/drivers/usb/host/ehci-hcd.c index 5ac918591131..aac6ec5dd7cf 100644 --- a/drivers/usb/host/ehci-hcd.c +++ b/drivers/usb/host/ehci-hcd.c | |||
@@ -254,8 +254,8 @@ static void ehci_quiesce (struct ehci_hcd *ehci) | |||
254 | 254 | ||
255 | /*-------------------------------------------------------------------------*/ | 255 | /*-------------------------------------------------------------------------*/ |
256 | 256 | ||
257 | static void end_unlink_async (struct ehci_hcd *ehci, struct pt_regs *regs); | 257 | static void end_unlink_async (struct ehci_hcd *ehci); |
258 | static void ehci_work(struct ehci_hcd *ehci, struct pt_regs *regs); | 258 | static void ehci_work(struct ehci_hcd *ehci); |
259 | 259 | ||
260 | #include "ehci-hub.c" | 260 | #include "ehci-hub.c" |
261 | #include "ehci-mem.c" | 261 | #include "ehci-mem.c" |
@@ -280,7 +280,7 @@ static void ehci_iaa_watchdog (unsigned long param) | |||
280 | ehci_vdbg (ehci, "lost IAA\n"); | 280 | ehci_vdbg (ehci, "lost IAA\n"); |
281 | COUNT (ehci->stats.lost_iaa); | 281 | COUNT (ehci->stats.lost_iaa); |
282 | writel (STS_IAA, &ehci->regs->status); | 282 | writel (STS_IAA, &ehci->regs->status); |
283 | end_unlink_async (ehci, NULL); | 283 | end_unlink_async (ehci); |
284 | } | 284 | } |
285 | } | 285 | } |
286 | 286 | ||
@@ -299,7 +299,7 @@ static void ehci_watchdog (unsigned long param) | |||
299 | start_unlink_async (ehci, ehci->async); | 299 | start_unlink_async (ehci, ehci->async); |
300 | 300 | ||
301 | /* ehci could run by timer, without IRQs ... */ | 301 | /* ehci could run by timer, without IRQs ... */ |
302 | ehci_work (ehci, NULL); | 302 | ehci_work (ehci); |
303 | 303 | ||
304 | spin_unlock_irqrestore (&ehci->lock, flags); | 304 | spin_unlock_irqrestore (&ehci->lock, flags); |
305 | } | 305 | } |
@@ -342,7 +342,7 @@ static void ehci_port_power (struct ehci_hcd *ehci, int is_on) | |||
342 | * ehci_work is called from some interrupts, timers, and so on. | 342 | * ehci_work is called from some interrupts, timers, and so on. |
343 | * it calls driver completion functions, after dropping ehci->lock. | 343 | * it calls driver completion functions, after dropping ehci->lock. |
344 | */ | 344 | */ |
345 | static void ehci_work (struct ehci_hcd *ehci, struct pt_regs *regs) | 345 | static void ehci_work (struct ehci_hcd *ehci) |
346 | { | 346 | { |
347 | timer_action_done (ehci, TIMER_IO_WATCHDOG); | 347 | timer_action_done (ehci, TIMER_IO_WATCHDOG); |
348 | 348 | ||
@@ -353,9 +353,9 @@ static void ehci_work (struct ehci_hcd *ehci, struct pt_regs *regs) | |||
353 | if (ehci->scanning) | 353 | if (ehci->scanning) |
354 | return; | 354 | return; |
355 | ehci->scanning = 1; | 355 | ehci->scanning = 1; |
356 | scan_async (ehci, regs); | 356 | scan_async (ehci); |
357 | if (ehci->next_uframe != -1) | 357 | if (ehci->next_uframe != -1) |
358 | scan_periodic (ehci, regs); | 358 | scan_periodic (ehci); |
359 | ehci->scanning = 0; | 359 | ehci->scanning = 0; |
360 | 360 | ||
361 | /* the IO watchdog guards against hardware or driver bugs that | 361 | /* the IO watchdog guards against hardware or driver bugs that |
@@ -397,7 +397,7 @@ static void ehci_stop (struct usb_hcd *hcd) | |||
397 | /* root hub is shut down separately (first, when possible) */ | 397 | /* root hub is shut down separately (first, when possible) */ |
398 | spin_lock_irq (&ehci->lock); | 398 | spin_lock_irq (&ehci->lock); |
399 | if (ehci->async) | 399 | if (ehci->async) |
400 | ehci_work (ehci, NULL); | 400 | ehci_work (ehci); |
401 | spin_unlock_irq (&ehci->lock); | 401 | spin_unlock_irq (&ehci->lock); |
402 | ehci_mem_cleanup (ehci); | 402 | ehci_mem_cleanup (ehci); |
403 | 403 | ||
@@ -573,7 +573,7 @@ static int ehci_run (struct usb_hcd *hcd) | |||
573 | 573 | ||
574 | /*-------------------------------------------------------------------------*/ | 574 | /*-------------------------------------------------------------------------*/ |
575 | 575 | ||
576 | static irqreturn_t ehci_irq (struct usb_hcd *hcd, struct pt_regs *regs) | 576 | static irqreturn_t ehci_irq (struct usb_hcd *hcd) |
577 | { | 577 | { |
578 | struct ehci_hcd *ehci = hcd_to_ehci (hcd); | 578 | struct ehci_hcd *ehci = hcd_to_ehci (hcd); |
579 | u32 status; | 579 | u32 status; |
@@ -619,7 +619,7 @@ static irqreturn_t ehci_irq (struct usb_hcd *hcd, struct pt_regs *regs) | |||
619 | /* complete the unlinking of some qh [4.15.2.3] */ | 619 | /* complete the unlinking of some qh [4.15.2.3] */ |
620 | if (status & STS_IAA) { | 620 | if (status & STS_IAA) { |
621 | COUNT (ehci->stats.reclaim); | 621 | COUNT (ehci->stats.reclaim); |
622 | end_unlink_async (ehci, regs); | 622 | end_unlink_async (ehci); |
623 | bh = 1; | 623 | bh = 1; |
624 | } | 624 | } |
625 | 625 | ||
@@ -670,7 +670,7 @@ dead: | |||
670 | } | 670 | } |
671 | 671 | ||
672 | if (bh) | 672 | if (bh) |
673 | ehci_work (ehci, regs); | 673 | ehci_work (ehci); |
674 | spin_unlock (&ehci->lock); | 674 | spin_unlock (&ehci->lock); |
675 | return IRQ_HANDLED; | 675 | return IRQ_HANDLED; |
676 | } | 676 | } |
@@ -727,7 +727,7 @@ static void unlink_async (struct ehci_hcd *ehci, struct ehci_qh *qh) | |||
727 | 727 | ||
728 | /* failfast */ | 728 | /* failfast */ |
729 | if (!HC_IS_RUNNING (ehci_to_hcd(ehci)->state)) | 729 | if (!HC_IS_RUNNING (ehci_to_hcd(ehci)->state)) |
730 | end_unlink_async (ehci, NULL); | 730 | end_unlink_async (ehci); |
731 | 731 | ||
732 | /* defer till later if busy */ | 732 | /* defer till later if busy */ |
733 | else if (ehci->reclaim) { | 733 | else if (ehci->reclaim) { |
@@ -787,7 +787,7 @@ static int ehci_urb_dequeue (struct usb_hcd *hcd, struct urb *urb) | |||
787 | intr_deschedule (ehci, qh); | 787 | intr_deschedule (ehci, qh); |
788 | /* FALL THROUGH */ | 788 | /* FALL THROUGH */ |
789 | case QH_STATE_IDLE: | 789 | case QH_STATE_IDLE: |
790 | qh_completions (ehci, qh, NULL); | 790 | qh_completions (ehci, qh); |
791 | break; | 791 | break; |
792 | default: | 792 | default: |
793 | ehci_dbg (ehci, "bogus qh %p state %d\n", | 793 | ehci_dbg (ehci, "bogus qh %p state %d\n", |
diff --git a/drivers/usb/host/ehci-hub.c b/drivers/usb/host/ehci-hub.c index b2ee13c58517..2012213c0a25 100644 --- a/drivers/usb/host/ehci-hub.c +++ b/drivers/usb/host/ehci-hub.c | |||
@@ -48,8 +48,8 @@ static int ehci_bus_suspend (struct usb_hcd *hcd) | |||
48 | } | 48 | } |
49 | ehci->command = readl (&ehci->regs->command); | 49 | ehci->command = readl (&ehci->regs->command); |
50 | if (ehci->reclaim) | 50 | if (ehci->reclaim) |
51 | end_unlink_async (ehci, NULL); | 51 | end_unlink_async (ehci); |
52 | ehci_work(ehci, NULL); | 52 | ehci_work(ehci); |
53 | 53 | ||
54 | /* suspend any active/unsuspended ports, maybe allow wakeup */ | 54 | /* suspend any active/unsuspended ports, maybe allow wakeup */ |
55 | while (port--) { | 55 | while (port--) { |
diff --git a/drivers/usb/host/ehci-pci.c b/drivers/usb/host/ehci-pci.c index 08d0472d4f57..35e3fab6fc4e 100644 --- a/drivers/usb/host/ehci-pci.c +++ b/drivers/usb/host/ehci-pci.c | |||
@@ -303,8 +303,8 @@ restart: | |||
303 | /* emptying the schedule aborts any urbs */ | 303 | /* emptying the schedule aborts any urbs */ |
304 | spin_lock_irq(&ehci->lock); | 304 | spin_lock_irq(&ehci->lock); |
305 | if (ehci->reclaim) | 305 | if (ehci->reclaim) |
306 | end_unlink_async (ehci, NULL); | 306 | end_unlink_async (ehci); |
307 | ehci_work(ehci, NULL); | 307 | ehci_work(ehci); |
308 | spin_unlock_irq(&ehci->lock); | 308 | spin_unlock_irq(&ehci->lock); |
309 | 309 | ||
310 | /* restart; khubd will disconnect devices */ | 310 | /* restart; khubd will disconnect devices */ |
diff --git a/drivers/usb/host/ehci-q.c b/drivers/usb/host/ehci-q.c index 7fc25b6bd7d2..46327272f614 100644 --- a/drivers/usb/host/ehci-q.c +++ b/drivers/usb/host/ehci-q.c | |||
@@ -214,7 +214,7 @@ static void qtd_copy_status ( | |||
214 | } | 214 | } |
215 | 215 | ||
216 | static void | 216 | static void |
217 | ehci_urb_done (struct ehci_hcd *ehci, struct urb *urb, struct pt_regs *regs) | 217 | ehci_urb_done (struct ehci_hcd *ehci, struct urb *urb) |
218 | __releases(ehci->lock) | 218 | __releases(ehci->lock) |
219 | __acquires(ehci->lock) | 219 | __acquires(ehci->lock) |
220 | { | 220 | { |
@@ -262,7 +262,7 @@ __acquires(ehci->lock) | |||
262 | 262 | ||
263 | /* complete() can reenter this HCD */ | 263 | /* complete() can reenter this HCD */ |
264 | spin_unlock (&ehci->lock); | 264 | spin_unlock (&ehci->lock); |
265 | usb_hcd_giveback_urb (ehci_to_hcd(ehci), urb, regs); | 265 | usb_hcd_giveback_urb (ehci_to_hcd(ehci), urb); |
266 | spin_lock (&ehci->lock); | 266 | spin_lock (&ehci->lock); |
267 | } | 267 | } |
268 | 268 | ||
@@ -279,7 +279,7 @@ static int qh_schedule (struct ehci_hcd *ehci, struct ehci_qh *qh); | |||
279 | */ | 279 | */ |
280 | #define HALT_BIT __constant_cpu_to_le32(QTD_STS_HALT) | 280 | #define HALT_BIT __constant_cpu_to_le32(QTD_STS_HALT) |
281 | static unsigned | 281 | static unsigned |
282 | qh_completions (struct ehci_hcd *ehci, struct ehci_qh *qh, struct pt_regs *regs) | 282 | qh_completions (struct ehci_hcd *ehci, struct ehci_qh *qh) |
283 | { | 283 | { |
284 | struct ehci_qtd *last = NULL, *end = qh->dummy; | 284 | struct ehci_qtd *last = NULL, *end = qh->dummy; |
285 | struct list_head *entry, *tmp; | 285 | struct list_head *entry, *tmp; |
@@ -317,7 +317,7 @@ qh_completions (struct ehci_hcd *ehci, struct ehci_qh *qh, struct pt_regs *regs) | |||
317 | /* clean up any state from previous QTD ...*/ | 317 | /* clean up any state from previous QTD ...*/ |
318 | if (last) { | 318 | if (last) { |
319 | if (likely (last->urb != urb)) { | 319 | if (likely (last->urb != urb)) { |
320 | ehci_urb_done (ehci, last->urb, regs); | 320 | ehci_urb_done (ehci, last->urb); |
321 | count++; | 321 | count++; |
322 | } | 322 | } |
323 | ehci_qtd_free (ehci, last); | 323 | ehci_qtd_free (ehci, last); |
@@ -407,7 +407,7 @@ halt: | |||
407 | 407 | ||
408 | /* last urb's completion might still need calling */ | 408 | /* last urb's completion might still need calling */ |
409 | if (likely (last != NULL)) { | 409 | if (likely (last != NULL)) { |
410 | ehci_urb_done (ehci, last->urb, regs); | 410 | ehci_urb_done (ehci, last->urb); |
411 | count++; | 411 | count++; |
412 | ehci_qtd_free (ehci, last); | 412 | ehci_qtd_free (ehci, last); |
413 | } | 413 | } |
@@ -962,7 +962,7 @@ submit_async ( | |||
962 | 962 | ||
963 | /* the async qh for the qtds being reclaimed are now unlinked from the HC */ | 963 | /* the async qh for the qtds being reclaimed are now unlinked from the HC */ |
964 | 964 | ||
965 | static void end_unlink_async (struct ehci_hcd *ehci, struct pt_regs *regs) | 965 | static void end_unlink_async (struct ehci_hcd *ehci) |
966 | { | 966 | { |
967 | struct ehci_qh *qh = ehci->reclaim; | 967 | struct ehci_qh *qh = ehci->reclaim; |
968 | struct ehci_qh *next; | 968 | struct ehci_qh *next; |
@@ -979,7 +979,7 @@ static void end_unlink_async (struct ehci_hcd *ehci, struct pt_regs *regs) | |||
979 | ehci->reclaim = next; | 979 | ehci->reclaim = next; |
980 | qh->reclaim = NULL; | 980 | qh->reclaim = NULL; |
981 | 981 | ||
982 | qh_completions (ehci, qh, regs); | 982 | qh_completions (ehci, qh); |
983 | 983 | ||
984 | if (!list_empty (&qh->qtd_list) | 984 | if (!list_empty (&qh->qtd_list) |
985 | && HC_IS_RUNNING (ehci_to_hcd(ehci)->state)) | 985 | && HC_IS_RUNNING (ehci_to_hcd(ehci)->state)) |
@@ -1047,7 +1047,7 @@ static void start_unlink_async (struct ehci_hcd *ehci, struct ehci_qh *qh) | |||
1047 | /* if (unlikely (qh->reclaim != 0)) | 1047 | /* if (unlikely (qh->reclaim != 0)) |
1048 | * this will recurse, probably not much | 1048 | * this will recurse, probably not much |
1049 | */ | 1049 | */ |
1050 | end_unlink_async (ehci, NULL); | 1050 | end_unlink_async (ehci); |
1051 | return; | 1051 | return; |
1052 | } | 1052 | } |
1053 | 1053 | ||
@@ -1059,8 +1059,7 @@ static void start_unlink_async (struct ehci_hcd *ehci, struct ehci_qh *qh) | |||
1059 | 1059 | ||
1060 | /*-------------------------------------------------------------------------*/ | 1060 | /*-------------------------------------------------------------------------*/ |
1061 | 1061 | ||
1062 | static void | 1062 | static void scan_async (struct ehci_hcd *ehci) |
1063 | scan_async (struct ehci_hcd *ehci, struct pt_regs *regs) | ||
1064 | { | 1063 | { |
1065 | struct ehci_qh *qh; | 1064 | struct ehci_qh *qh; |
1066 | enum ehci_timer_action action = TIMER_IO_WATCHDOG; | 1065 | enum ehci_timer_action action = TIMER_IO_WATCHDOG; |
@@ -1084,7 +1083,7 @@ rescan: | |||
1084 | */ | 1083 | */ |
1085 | qh = qh_get (qh); | 1084 | qh = qh_get (qh); |
1086 | qh->stamp = ehci->stamp; | 1085 | qh->stamp = ehci->stamp; |
1087 | temp = qh_completions (ehci, qh, regs); | 1086 | temp = qh_completions (ehci, qh); |
1088 | qh_put (qh); | 1087 | qh_put (qh); |
1089 | if (temp != 0) { | 1088 | if (temp != 0) { |
1090 | goto rescan; | 1089 | goto rescan; |
diff --git a/drivers/usb/host/ehci-sched.c b/drivers/usb/host/ehci-sched.c index e5e9c653c907..65c402a0fa7a 100644 --- a/drivers/usb/host/ehci-sched.c +++ b/drivers/usb/host/ehci-sched.c | |||
@@ -1553,8 +1553,7 @@ itd_link_urb ( | |||
1553 | static unsigned | 1553 | static unsigned |
1554 | itd_complete ( | 1554 | itd_complete ( |
1555 | struct ehci_hcd *ehci, | 1555 | struct ehci_hcd *ehci, |
1556 | struct ehci_itd *itd, | 1556 | struct ehci_itd *itd |
1557 | struct pt_regs *regs | ||
1558 | ) { | 1557 | ) { |
1559 | struct urb *urb = itd->urb; | 1558 | struct urb *urb = itd->urb; |
1560 | struct usb_iso_packet_descriptor *desc; | 1559 | struct usb_iso_packet_descriptor *desc; |
@@ -1613,7 +1612,7 @@ itd_complete ( | |||
1613 | 1612 | ||
1614 | /* give urb back to the driver ... can be out-of-order */ | 1613 | /* give urb back to the driver ... can be out-of-order */ |
1615 | dev = urb->dev; | 1614 | dev = urb->dev; |
1616 | ehci_urb_done (ehci, urb, regs); | 1615 | ehci_urb_done (ehci, urb); |
1617 | urb = NULL; | 1616 | urb = NULL; |
1618 | 1617 | ||
1619 | /* defer stopping schedule; completion can submit */ | 1618 | /* defer stopping schedule; completion can submit */ |
@@ -1930,8 +1929,7 @@ sitd_link_urb ( | |||
1930 | static unsigned | 1929 | static unsigned |
1931 | sitd_complete ( | 1930 | sitd_complete ( |
1932 | struct ehci_hcd *ehci, | 1931 | struct ehci_hcd *ehci, |
1933 | struct ehci_sitd *sitd, | 1932 | struct ehci_sitd *sitd |
1934 | struct pt_regs *regs | ||
1935 | ) { | 1933 | ) { |
1936 | struct urb *urb = sitd->urb; | 1934 | struct urb *urb = sitd->urb; |
1937 | struct usb_iso_packet_descriptor *desc; | 1935 | struct usb_iso_packet_descriptor *desc; |
@@ -1978,7 +1976,7 @@ sitd_complete ( | |||
1978 | 1976 | ||
1979 | /* give urb back to the driver */ | 1977 | /* give urb back to the driver */ |
1980 | dev = urb->dev; | 1978 | dev = urb->dev; |
1981 | ehci_urb_done (ehci, urb, regs); | 1979 | ehci_urb_done (ehci, urb); |
1982 | urb = NULL; | 1980 | urb = NULL; |
1983 | 1981 | ||
1984 | /* defer stopping schedule; completion can submit */ | 1982 | /* defer stopping schedule; completion can submit */ |
@@ -2065,8 +2063,7 @@ sitd_submit (struct ehci_hcd *ehci, struct urb *urb, gfp_t mem_flags) | |||
2065 | static inline unsigned | 2063 | static inline unsigned |
2066 | sitd_complete ( | 2064 | sitd_complete ( |
2067 | struct ehci_hcd *ehci, | 2065 | struct ehci_hcd *ehci, |
2068 | struct ehci_sitd *sitd, | 2066 | struct ehci_sitd *sitd |
2069 | struct pt_regs *regs | ||
2070 | ) { | 2067 | ) { |
2071 | ehci_err (ehci, "sitd_complete %p?\n", sitd); | 2068 | ehci_err (ehci, "sitd_complete %p?\n", sitd); |
2072 | return 0; | 2069 | return 0; |
@@ -2077,7 +2074,7 @@ sitd_complete ( | |||
2077 | /*-------------------------------------------------------------------------*/ | 2074 | /*-------------------------------------------------------------------------*/ |
2078 | 2075 | ||
2079 | static void | 2076 | static void |
2080 | scan_periodic (struct ehci_hcd *ehci, struct pt_regs *regs) | 2077 | scan_periodic (struct ehci_hcd *ehci) |
2081 | { | 2078 | { |
2082 | unsigned frame, clock, now_uframe, mod; | 2079 | unsigned frame, clock, now_uframe, mod; |
2083 | unsigned modified; | 2080 | unsigned modified; |
@@ -2131,7 +2128,7 @@ restart: | |||
2131 | temp.qh = qh_get (q.qh); | 2128 | temp.qh = qh_get (q.qh); |
2132 | type = Q_NEXT_TYPE (q.qh->hw_next); | 2129 | type = Q_NEXT_TYPE (q.qh->hw_next); |
2133 | q = q.qh->qh_next; | 2130 | q = q.qh->qh_next; |
2134 | modified = qh_completions (ehci, temp.qh, regs); | 2131 | modified = qh_completions (ehci, temp.qh); |
2135 | if (unlikely (list_empty (&temp.qh->qtd_list))) | 2132 | if (unlikely (list_empty (&temp.qh->qtd_list))) |
2136 | intr_deschedule (ehci, temp.qh); | 2133 | intr_deschedule (ehci, temp.qh); |
2137 | qh_put (temp.qh); | 2134 | qh_put (temp.qh); |
@@ -2169,7 +2166,7 @@ restart: | |||
2169 | *hw_p = q.itd->hw_next; | 2166 | *hw_p = q.itd->hw_next; |
2170 | type = Q_NEXT_TYPE (q.itd->hw_next); | 2167 | type = Q_NEXT_TYPE (q.itd->hw_next); |
2171 | wmb(); | 2168 | wmb(); |
2172 | modified = itd_complete (ehci, q.itd, regs); | 2169 | modified = itd_complete (ehci, q.itd); |
2173 | q = *q_p; | 2170 | q = *q_p; |
2174 | break; | 2171 | break; |
2175 | case Q_TYPE_SITD: | 2172 | case Q_TYPE_SITD: |
@@ -2185,7 +2182,7 @@ restart: | |||
2185 | *hw_p = q.sitd->hw_next; | 2182 | *hw_p = q.sitd->hw_next; |
2186 | type = Q_NEXT_TYPE (q.sitd->hw_next); | 2183 | type = Q_NEXT_TYPE (q.sitd->hw_next); |
2187 | wmb(); | 2184 | wmb(); |
2188 | modified = sitd_complete (ehci, q.sitd, regs); | 2185 | modified = sitd_complete (ehci, q.sitd); |
2189 | q = *q_p; | 2186 | q = *q_p; |
2190 | break; | 2187 | break; |
2191 | default: | 2188 | default: |
diff --git a/drivers/usb/host/hc_crisv10.c b/drivers/usb/host/hc_crisv10.c index 61e571782cf7..87eca6aeacf2 100644 --- a/drivers/usb/host/hc_crisv10.c +++ b/drivers/usb/host/hc_crisv10.c | |||
@@ -478,9 +478,9 @@ static int etrax_usb_submit_urb(struct urb *urb, unsigned mem_flags); | |||
478 | static int etrax_usb_unlink_urb(struct urb *urb, int status); | 478 | static int etrax_usb_unlink_urb(struct urb *urb, int status); |
479 | static int etrax_usb_get_frame_number(struct usb_device *usb_dev); | 479 | static int etrax_usb_get_frame_number(struct usb_device *usb_dev); |
480 | 480 | ||
481 | static irqreturn_t etrax_usb_tx_interrupt(int irq, void *vhc, struct pt_regs *regs); | 481 | static irqreturn_t etrax_usb_tx_interrupt(int irq, void *vhc); |
482 | static irqreturn_t etrax_usb_rx_interrupt(int irq, void *vhc, struct pt_regs *regs); | 482 | static irqreturn_t etrax_usb_rx_interrupt(int irq, void *vhc); |
483 | static irqreturn_t etrax_usb_hc_interrupt_top_half(int irq, void *vhc, struct pt_regs *regs); | 483 | static irqreturn_t etrax_usb_hc_interrupt_top_half(int irq, void *vhc); |
484 | static void etrax_usb_hc_interrupt_bottom_half(void *data); | 484 | static void etrax_usb_hc_interrupt_bottom_half(void *data); |
485 | 485 | ||
486 | static void etrax_usb_isoc_descr_interrupt_bottom_half(void *data); | 486 | static void etrax_usb_isoc_descr_interrupt_bottom_half(void *data); |
@@ -1573,7 +1573,7 @@ static int etrax_usb_get_frame_number(struct usb_device *usb_dev) | |||
1573 | return (*R_USB_FM_NUMBER & 0x7ff); | 1573 | return (*R_USB_FM_NUMBER & 0x7ff); |
1574 | } | 1574 | } |
1575 | 1575 | ||
1576 | static irqreturn_t etrax_usb_tx_interrupt(int irq, void *vhc, struct pt_regs *regs) | 1576 | static irqreturn_t etrax_usb_tx_interrupt(int irq, void *vhc) |
1577 | { | 1577 | { |
1578 | DBFENTER; | 1578 | DBFENTER; |
1579 | 1579 | ||
@@ -1839,7 +1839,7 @@ static void etrax_usb_isoc_descr_interrupt_bottom_half(void *data) | |||
1839 | 1839 | ||
1840 | 1840 | ||
1841 | 1841 | ||
1842 | static irqreturn_t etrax_usb_rx_interrupt(int irq, void *vhc, struct pt_regs *regs) | 1842 | static irqreturn_t etrax_usb_rx_interrupt(int irq, void *vhc) |
1843 | { | 1843 | { |
1844 | struct urb *urb; | 1844 | struct urb *urb; |
1845 | etrax_urb_priv_t *urb_priv; | 1845 | etrax_urb_priv_t *urb_priv; |
@@ -3280,7 +3280,7 @@ static void etrax_usb_complete_urb(struct urb *urb, int status) | |||
3280 | 3280 | ||
3281 | 3281 | ||
3282 | 3282 | ||
3283 | static irqreturn_t etrax_usb_hc_interrupt_top_half(int irq, void *vhc, struct pt_regs *regs) | 3283 | static irqreturn_t etrax_usb_hc_interrupt_top_half(int irq, void *vhc) |
3284 | { | 3284 | { |
3285 | usb_interrupt_registers_t *reg; | 3285 | usb_interrupt_registers_t *reg; |
3286 | unsigned long flags; | 3286 | unsigned long flags; |
diff --git a/drivers/usb/host/isp116x-hcd.c b/drivers/usb/host/isp116x-hcd.c index a72e041df8e7..2718b5dc4ec1 100644 --- a/drivers/usb/host/isp116x-hcd.c +++ b/drivers/usb/host/isp116x-hcd.c | |||
@@ -418,7 +418,7 @@ static void postproc_atl_queue(struct isp116x *isp116x) | |||
418 | processed urbs. | 418 | processed urbs. |
419 | */ | 419 | */ |
420 | static void finish_request(struct isp116x *isp116x, struct isp116x_ep *ep, | 420 | static void finish_request(struct isp116x *isp116x, struct isp116x_ep *ep, |
421 | struct urb *urb, struct pt_regs *regs) | 421 | struct urb *urb) |
422 | __releases(isp116x->lock) __acquires(isp116x->lock) | 422 | __releases(isp116x->lock) __acquires(isp116x->lock) |
423 | { | 423 | { |
424 | unsigned i; | 424 | unsigned i; |
@@ -432,7 +432,7 @@ __releases(isp116x->lock) __acquires(isp116x->lock) | |||
432 | urb_dbg(urb, "Finish"); | 432 | urb_dbg(urb, "Finish"); |
433 | 433 | ||
434 | spin_unlock(&isp116x->lock); | 434 | spin_unlock(&isp116x->lock); |
435 | usb_hcd_giveback_urb(isp116x_to_hcd(isp116x), urb, regs); | 435 | usb_hcd_giveback_urb(isp116x_to_hcd(isp116x), urb); |
436 | spin_lock(&isp116x->lock); | 436 | spin_lock(&isp116x->lock); |
437 | 437 | ||
438 | /* take idle endpoints out of the schedule */ | 438 | /* take idle endpoints out of the schedule */ |
@@ -568,7 +568,7 @@ static void start_atl_transfers(struct isp116x *isp116x) | |||
568 | /* | 568 | /* |
569 | Finish the processed transfers | 569 | Finish the processed transfers |
570 | */ | 570 | */ |
571 | static void finish_atl_transfers(struct isp116x *isp116x, struct pt_regs *regs) | 571 | static void finish_atl_transfers(struct isp116x *isp116x) |
572 | { | 572 | { |
573 | struct isp116x_ep *ep; | 573 | struct isp116x_ep *ep; |
574 | struct urb *urb; | 574 | struct urb *urb; |
@@ -590,12 +590,12 @@ static void finish_atl_transfers(struct isp116x *isp116x, struct pt_regs *regs) | |||
590 | occured, while URB_SHORT_NOT_OK was set */ | 590 | occured, while URB_SHORT_NOT_OK was set */ |
591 | if (urb && urb->status != -EINPROGRESS | 591 | if (urb && urb->status != -EINPROGRESS |
592 | && ep->nextpid != USB_PID_ACK) | 592 | && ep->nextpid != USB_PID_ACK) |
593 | finish_request(isp116x, ep, urb, regs); | 593 | finish_request(isp116x, ep, urb); |
594 | } | 594 | } |
595 | atomic_dec(&isp116x->atl_finishing); | 595 | atomic_dec(&isp116x->atl_finishing); |
596 | } | 596 | } |
597 | 597 | ||
598 | static irqreturn_t isp116x_irq(struct usb_hcd *hcd, struct pt_regs *regs) | 598 | static irqreturn_t isp116x_irq(struct usb_hcd *hcd) |
599 | { | 599 | { |
600 | struct isp116x *isp116x = hcd_to_isp116x(hcd); | 600 | struct isp116x *isp116x = hcd_to_isp116x(hcd); |
601 | u16 irqstat; | 601 | u16 irqstat; |
@@ -608,7 +608,7 @@ static irqreturn_t isp116x_irq(struct usb_hcd *hcd, struct pt_regs *regs) | |||
608 | 608 | ||
609 | if (irqstat & (HCuPINT_ATL | HCuPINT_SOF)) { | 609 | if (irqstat & (HCuPINT_ATL | HCuPINT_SOF)) { |
610 | ret = IRQ_HANDLED; | 610 | ret = IRQ_HANDLED; |
611 | finish_atl_transfers(isp116x, regs); | 611 | finish_atl_transfers(isp116x); |
612 | } | 612 | } |
613 | 613 | ||
614 | if (irqstat & HCuPINT_OPR) { | 614 | if (irqstat & HCuPINT_OPR) { |
@@ -824,7 +824,7 @@ static int isp116x_urb_enqueue(struct usb_hcd *hcd, | |||
824 | spin_lock(&urb->lock); | 824 | spin_lock(&urb->lock); |
825 | if (urb->status != -EINPROGRESS) { | 825 | if (urb->status != -EINPROGRESS) { |
826 | spin_unlock(&urb->lock); | 826 | spin_unlock(&urb->lock); |
827 | finish_request(isp116x, ep, urb, NULL); | 827 | finish_request(isp116x, ep, urb); |
828 | ret = 0; | 828 | ret = 0; |
829 | goto fail; | 829 | goto fail; |
830 | } | 830 | } |
@@ -870,7 +870,7 @@ static int isp116x_urb_dequeue(struct usb_hcd *hcd, struct urb *urb) | |||
870 | } | 870 | } |
871 | 871 | ||
872 | if (urb) | 872 | if (urb) |
873 | finish_request(isp116x, ep, urb, NULL); | 873 | finish_request(isp116x, ep, urb); |
874 | 874 | ||
875 | spin_unlock_irqrestore(&isp116x->lock, flags); | 875 | spin_unlock_irqrestore(&isp116x->lock, flags); |
876 | return 0; | 876 | return 0; |
diff --git a/drivers/usb/host/ohci-hcd.c b/drivers/usb/host/ohci-hcd.c index d1d68c402251..9be6b303e784 100644 --- a/drivers/usb/host/ohci-hcd.c +++ b/drivers/usb/host/ohci-hcd.c | |||
@@ -261,7 +261,7 @@ static int ohci_urb_enqueue ( | |||
261 | if (urb->status != -EINPROGRESS) { | 261 | if (urb->status != -EINPROGRESS) { |
262 | spin_unlock (&urb->lock); | 262 | spin_unlock (&urb->lock); |
263 | urb->hcpriv = urb_priv; | 263 | urb->hcpriv = urb_priv; |
264 | finish_urb (ohci, urb, NULL); | 264 | finish_urb (ohci, urb); |
265 | retval = 0; | 265 | retval = 0; |
266 | goto fail; | 266 | goto fail; |
267 | } | 267 | } |
@@ -337,7 +337,7 @@ static int ohci_urb_dequeue (struct usb_hcd *hcd, struct urb *urb) | |||
337 | * any more ... just clean up every urb's memory. | 337 | * any more ... just clean up every urb's memory. |
338 | */ | 338 | */ |
339 | if (urb->hcpriv) | 339 | if (urb->hcpriv) |
340 | finish_urb (ohci, urb, NULL); | 340 | finish_urb (ohci, urb); |
341 | } | 341 | } |
342 | spin_unlock_irqrestore (&ohci->lock, flags); | 342 | spin_unlock_irqrestore (&ohci->lock, flags); |
343 | return 0; | 343 | return 0; |
@@ -369,7 +369,7 @@ rescan: | |||
369 | if (!HC_IS_RUNNING (hcd->state)) { | 369 | if (!HC_IS_RUNNING (hcd->state)) { |
370 | sanitize: | 370 | sanitize: |
371 | ed->state = ED_IDLE; | 371 | ed->state = ED_IDLE; |
372 | finish_unlinks (ohci, 0, NULL); | 372 | finish_unlinks (ohci, 0); |
373 | } | 373 | } |
374 | 374 | ||
375 | switch (ed->state) { | 375 | switch (ed->state) { |
@@ -691,7 +691,7 @@ retry: | |||
691 | 691 | ||
692 | /* an interrupt happens */ | 692 | /* an interrupt happens */ |
693 | 693 | ||
694 | static irqreturn_t ohci_irq (struct usb_hcd *hcd, struct pt_regs *ptregs) | 694 | static irqreturn_t ohci_irq (struct usb_hcd *hcd) |
695 | { | 695 | { |
696 | struct ohci_hcd *ohci = hcd_to_ohci (hcd); | 696 | struct ohci_hcd *ohci = hcd_to_ohci (hcd); |
697 | struct ohci_regs __iomem *regs = ohci->regs; | 697 | struct ohci_regs __iomem *regs = ohci->regs; |
@@ -747,7 +747,7 @@ static irqreturn_t ohci_irq (struct usb_hcd *hcd, struct pt_regs *ptregs) | |||
747 | if (HC_IS_RUNNING(hcd->state)) | 747 | if (HC_IS_RUNNING(hcd->state)) |
748 | ohci_writel (ohci, OHCI_INTR_WDH, ®s->intrdisable); | 748 | ohci_writel (ohci, OHCI_INTR_WDH, ®s->intrdisable); |
749 | spin_lock (&ohci->lock); | 749 | spin_lock (&ohci->lock); |
750 | dl_done_list (ohci, ptregs); | 750 | dl_done_list (ohci); |
751 | spin_unlock (&ohci->lock); | 751 | spin_unlock (&ohci->lock); |
752 | if (HC_IS_RUNNING(hcd->state)) | 752 | if (HC_IS_RUNNING(hcd->state)) |
753 | ohci_writel (ohci, OHCI_INTR_WDH, ®s->intrenable); | 753 | ohci_writel (ohci, OHCI_INTR_WDH, ®s->intrenable); |
@@ -760,7 +760,7 @@ static irqreturn_t ohci_irq (struct usb_hcd *hcd, struct pt_regs *ptregs) | |||
760 | */ | 760 | */ |
761 | spin_lock (&ohci->lock); | 761 | spin_lock (&ohci->lock); |
762 | if (ohci->ed_rm_list) | 762 | if (ohci->ed_rm_list) |
763 | finish_unlinks (ohci, ohci_frame_no(ohci), ptregs); | 763 | finish_unlinks (ohci, ohci_frame_no(ohci)); |
764 | if ((ints & OHCI_INTR_SF) != 0 && !ohci->ed_rm_list | 764 | if ((ints & OHCI_INTR_SF) != 0 && !ohci->ed_rm_list |
765 | && HC_IS_RUNNING(hcd->state)) | 765 | && HC_IS_RUNNING(hcd->state)) |
766 | ohci_writel (ohci, OHCI_INTR_SF, ®s->intrdisable); | 766 | ohci_writel (ohci, OHCI_INTR_SF, ®s->intrdisable); |
@@ -852,7 +852,7 @@ static int ohci_restart (struct ohci_hcd *ohci) | |||
852 | urb->status = -ESHUTDOWN; | 852 | urb->status = -ESHUTDOWN; |
853 | spin_unlock (&urb->lock); | 853 | spin_unlock (&urb->lock); |
854 | } | 854 | } |
855 | finish_unlinks (ohci, 0, NULL); | 855 | finish_unlinks (ohci, 0); |
856 | spin_unlock_irq(&ohci->lock); | 856 | spin_unlock_irq(&ohci->lock); |
857 | 857 | ||
858 | /* paranoia, in case that didn't work: */ | 858 | /* paranoia, in case that didn't work: */ |
diff --git a/drivers/usb/host/ohci-hub.c b/drivers/usb/host/ohci-hub.c index ec75774abeac..6f113596af66 100644 --- a/drivers/usb/host/ohci-hub.c +++ b/drivers/usb/host/ohci-hub.c | |||
@@ -47,8 +47,8 @@ static void ohci_rhsc_enable (struct usb_hcd *hcd) | |||
47 | #define OHCI_SCHED_ENABLES \ | 47 | #define OHCI_SCHED_ENABLES \ |
48 | (OHCI_CTRL_CLE|OHCI_CTRL_BLE|OHCI_CTRL_PLE|OHCI_CTRL_IE) | 48 | (OHCI_CTRL_CLE|OHCI_CTRL_BLE|OHCI_CTRL_PLE|OHCI_CTRL_IE) |
49 | 49 | ||
50 | static void dl_done_list (struct ohci_hcd *, struct pt_regs *); | 50 | static void dl_done_list (struct ohci_hcd *); |
51 | static void finish_unlinks (struct ohci_hcd *, u16 , struct pt_regs *); | 51 | static void finish_unlinks (struct ohci_hcd *, u16); |
52 | 52 | ||
53 | static int ohci_rh_suspend (struct ohci_hcd *ohci, int autostop) | 53 | static int ohci_rh_suspend (struct ohci_hcd *ohci, int autostop) |
54 | __releases(ohci->lock) | 54 | __releases(ohci->lock) |
@@ -94,8 +94,8 @@ __acquires(ohci->lock) | |||
94 | msleep (8); | 94 | msleep (8); |
95 | spin_lock_irq (&ohci->lock); | 95 | spin_lock_irq (&ohci->lock); |
96 | } | 96 | } |
97 | dl_done_list (ohci, NULL); | 97 | dl_done_list (ohci); |
98 | finish_unlinks (ohci, ohci_frame_no(ohci), NULL); | 98 | finish_unlinks (ohci, ohci_frame_no(ohci)); |
99 | 99 | ||
100 | /* maybe resume can wake root hub */ | 100 | /* maybe resume can wake root hub */ |
101 | if (device_may_wakeup(&ohci_to_hcd(ohci)->self.root_hub->dev) || | 101 | if (device_may_wakeup(&ohci_to_hcd(ohci)->self.root_hub->dev) || |
diff --git a/drivers/usb/host/ohci-q.c b/drivers/usb/host/ohci-q.c index e372306ed0da..fe1fe2f97cb5 100644 --- a/drivers/usb/host/ohci-q.c +++ b/drivers/usb/host/ohci-q.c | |||
@@ -7,6 +7,8 @@ | |||
7 | * This file is licenced under the GPL. | 7 | * This file is licenced under the GPL. |
8 | */ | 8 | */ |
9 | 9 | ||
10 | #include <linux/irq.h> | ||
11 | |||
10 | static void urb_free_priv (struct ohci_hcd *hc, urb_priv_t *urb_priv) | 12 | static void urb_free_priv (struct ohci_hcd *hc, urb_priv_t *urb_priv) |
11 | { | 13 | { |
12 | int last = urb_priv->length - 1; | 14 | int last = urb_priv->length - 1; |
@@ -34,7 +36,7 @@ static void urb_free_priv (struct ohci_hcd *hc, urb_priv_t *urb_priv) | |||
34 | * PRECONDITION: ohci lock held, irqs blocked. | 36 | * PRECONDITION: ohci lock held, irqs blocked. |
35 | */ | 37 | */ |
36 | static void | 38 | static void |
37 | finish_urb (struct ohci_hcd *ohci, struct urb *urb, struct pt_regs *regs) | 39 | finish_urb (struct ohci_hcd *ohci, struct urb *urb) |
38 | __releases(ohci->lock) | 40 | __releases(ohci->lock) |
39 | __acquires(ohci->lock) | 41 | __acquires(ohci->lock) |
40 | { | 42 | { |
@@ -73,7 +75,7 @@ __acquires(ohci->lock) | |||
73 | 75 | ||
74 | /* urb->complete() can reenter this HCD */ | 76 | /* urb->complete() can reenter this HCD */ |
75 | spin_unlock (&ohci->lock); | 77 | spin_unlock (&ohci->lock); |
76 | usb_hcd_giveback_urb (ohci_to_hcd(ohci), urb, regs); | 78 | usb_hcd_giveback_urb (ohci_to_hcd(ohci), urb); |
77 | spin_lock (&ohci->lock); | 79 | spin_lock (&ohci->lock); |
78 | 80 | ||
79 | /* stop periodic dma if it's not needed */ | 81 | /* stop periodic dma if it's not needed */ |
@@ -910,7 +912,7 @@ static struct td *dl_reverse_done_list (struct ohci_hcd *ohci) | |||
910 | 912 | ||
911 | /* there are some urbs/eds to unlink; called in_irq(), with HCD locked */ | 913 | /* there are some urbs/eds to unlink; called in_irq(), with HCD locked */ |
912 | static void | 914 | static void |
913 | finish_unlinks (struct ohci_hcd *ohci, u16 tick, struct pt_regs *regs) | 915 | finish_unlinks (struct ohci_hcd *ohci, u16 tick) |
914 | { | 916 | { |
915 | struct ed *ed, **last; | 917 | struct ed *ed, **last; |
916 | 918 | ||
@@ -923,7 +925,7 @@ rescan_all: | |||
923 | /* only take off EDs that the HC isn't using, accounting for | 925 | /* only take off EDs that the HC isn't using, accounting for |
924 | * frame counter wraps and EDs with partially retired TDs | 926 | * frame counter wraps and EDs with partially retired TDs |
925 | */ | 927 | */ |
926 | if (likely (regs && HC_IS_RUNNING(ohci_to_hcd(ohci)->state))) { | 928 | if (likely (HC_IS_RUNNING(ohci_to_hcd(ohci)->state))) { |
927 | if (tick_before (tick, ed->tick)) { | 929 | if (tick_before (tick, ed->tick)) { |
928 | skip_ed: | 930 | skip_ed: |
929 | last = &ed->ed_next; | 931 | last = &ed->ed_next; |
@@ -990,7 +992,7 @@ rescan_this: | |||
990 | /* if URB is done, clean up */ | 992 | /* if URB is done, clean up */ |
991 | if (urb_priv->td_cnt == urb_priv->length) { | 993 | if (urb_priv->td_cnt == urb_priv->length) { |
992 | modified = completed = 1; | 994 | modified = completed = 1; |
993 | finish_urb (ohci, urb, regs); | 995 | finish_urb (ohci, urb); |
994 | } | 996 | } |
995 | } | 997 | } |
996 | if (completed && !list_empty (&ed->td_list)) | 998 | if (completed && !list_empty (&ed->td_list)) |
@@ -1068,7 +1070,7 @@ rescan_this: | |||
1068 | * scanning the (re-reversed) donelist as this does. | 1070 | * scanning the (re-reversed) donelist as this does. |
1069 | */ | 1071 | */ |
1070 | static void | 1072 | static void |
1071 | dl_done_list (struct ohci_hcd *ohci, struct pt_regs *regs) | 1073 | dl_done_list (struct ohci_hcd *ohci) |
1072 | { | 1074 | { |
1073 | struct td *td = dl_reverse_done_list (ohci); | 1075 | struct td *td = dl_reverse_done_list (ohci); |
1074 | 1076 | ||
@@ -1084,7 +1086,7 @@ dl_done_list (struct ohci_hcd *ohci, struct pt_regs *regs) | |||
1084 | 1086 | ||
1085 | /* If all this urb's TDs are done, call complete() */ | 1087 | /* If all this urb's TDs are done, call complete() */ |
1086 | if (urb_priv->td_cnt == urb_priv->length) | 1088 | if (urb_priv->td_cnt == urb_priv->length) |
1087 | finish_urb (ohci, urb, regs); | 1089 | finish_urb (ohci, urb); |
1088 | 1090 | ||
1089 | /* clean schedule: unlink EDs that are no longer busy */ | 1091 | /* clean schedule: unlink EDs that are no longer busy */ |
1090 | if (list_empty (&ed->td_list)) { | 1092 | if (list_empty (&ed->td_list)) { |
diff --git a/drivers/usb/host/sl811-hcd.c b/drivers/usb/host/sl811-hcd.c index 3a586aab3939..5fa5647ea095 100644 --- a/drivers/usb/host/sl811-hcd.c +++ b/drivers/usb/host/sl811-hcd.c | |||
@@ -428,7 +428,6 @@ static void finish_request( | |||
428 | struct sl811 *sl811, | 428 | struct sl811 *sl811, |
429 | struct sl811h_ep *ep, | 429 | struct sl811h_ep *ep, |
430 | struct urb *urb, | 430 | struct urb *urb, |
431 | struct pt_regs *regs, | ||
432 | int status | 431 | int status |
433 | ) __releases(sl811->lock) __acquires(sl811->lock) | 432 | ) __releases(sl811->lock) __acquires(sl811->lock) |
434 | { | 433 | { |
@@ -444,7 +443,7 @@ static void finish_request( | |||
444 | spin_unlock(&urb->lock); | 443 | spin_unlock(&urb->lock); |
445 | 444 | ||
446 | spin_unlock(&sl811->lock); | 445 | spin_unlock(&sl811->lock); |
447 | usb_hcd_giveback_urb(sl811_to_hcd(sl811), urb, regs); | 446 | usb_hcd_giveback_urb(sl811_to_hcd(sl811), urb); |
448 | spin_lock(&sl811->lock); | 447 | spin_lock(&sl811->lock); |
449 | 448 | ||
450 | /* leave active endpoints in the schedule */ | 449 | /* leave active endpoints in the schedule */ |
@@ -484,7 +483,7 @@ static void finish_request( | |||
484 | } | 483 | } |
485 | 484 | ||
486 | static void | 485 | static void |
487 | done(struct sl811 *sl811, struct sl811h_ep *ep, u8 bank, struct pt_regs *regs) | 486 | done(struct sl811 *sl811, struct sl811h_ep *ep, u8 bank) |
488 | { | 487 | { |
489 | u8 status; | 488 | u8 status; |
490 | struct urb *urb; | 489 | struct urb *urb; |
@@ -608,7 +607,7 @@ done(struct sl811 *sl811, struct sl811h_ep *ep, u8 bank, struct pt_regs *regs) | |||
608 | } | 607 | } |
609 | 608 | ||
610 | if (urb && (urbstat != -EINPROGRESS || urb->status != -EINPROGRESS)) | 609 | if (urb && (urbstat != -EINPROGRESS || urb->status != -EINPROGRESS)) |
611 | finish_request(sl811, ep, urb, regs, urbstat); | 610 | finish_request(sl811, ep, urb, urbstat); |
612 | } | 611 | } |
613 | 612 | ||
614 | static inline u8 checkdone(struct sl811 *sl811) | 613 | static inline u8 checkdone(struct sl811 *sl811) |
@@ -641,7 +640,7 @@ static inline u8 checkdone(struct sl811 *sl811) | |||
641 | return irqstat; | 640 | return irqstat; |
642 | } | 641 | } |
643 | 642 | ||
644 | static irqreturn_t sl811h_irq(struct usb_hcd *hcd, struct pt_regs *regs) | 643 | static irqreturn_t sl811h_irq(struct usb_hcd *hcd) |
645 | { | 644 | { |
646 | struct sl811 *sl811 = hcd_to_sl811(hcd); | 645 | struct sl811 *sl811 = hcd_to_sl811(hcd); |
647 | u8 irqstat; | 646 | u8 irqstat; |
@@ -670,13 +669,13 @@ retry: | |||
670 | * issued ... that's fine if they're different endpoints. | 669 | * issued ... that's fine if they're different endpoints. |
671 | */ | 670 | */ |
672 | if (irqstat & SL11H_INTMASK_DONE_A) { | 671 | if (irqstat & SL11H_INTMASK_DONE_A) { |
673 | done(sl811, sl811->active_a, SL811_EP_A(SL811_HOST_BUF), regs); | 672 | done(sl811, sl811->active_a, SL811_EP_A(SL811_HOST_BUF)); |
674 | sl811->active_a = NULL; | 673 | sl811->active_a = NULL; |
675 | sl811->stat_a++; | 674 | sl811->stat_a++; |
676 | } | 675 | } |
677 | #ifdef USE_B | 676 | #ifdef USE_B |
678 | if (irqstat & SL11H_INTMASK_DONE_B) { | 677 | if (irqstat & SL11H_INTMASK_DONE_B) { |
679 | done(sl811, sl811->active_b, SL811_EP_B(SL811_HOST_BUF), regs); | 678 | done(sl811, sl811->active_b, SL811_EP_B(SL811_HOST_BUF)); |
680 | sl811->active_b = NULL; | 679 | sl811->active_b = NULL; |
681 | sl811->stat_b++; | 680 | sl811->stat_b++; |
682 | } | 681 | } |
@@ -723,7 +722,7 @@ retry: | |||
723 | container_of(sl811->active_a | 722 | container_of(sl811->active_a |
724 | ->hep->urb_list.next, | 723 | ->hep->urb_list.next, |
725 | struct urb, urb_list), | 724 | struct urb, urb_list), |
726 | NULL, -ESHUTDOWN); | 725 | -ESHUTDOWN); |
727 | sl811->active_a = NULL; | 726 | sl811->active_a = NULL; |
728 | } | 727 | } |
729 | #ifdef USE_B | 728 | #ifdef USE_B |
@@ -957,7 +956,7 @@ static int sl811h_urb_enqueue( | |||
957 | spin_lock(&urb->lock); | 956 | spin_lock(&urb->lock); |
958 | if (urb->status != -EINPROGRESS) { | 957 | if (urb->status != -EINPROGRESS) { |
959 | spin_unlock(&urb->lock); | 958 | spin_unlock(&urb->lock); |
960 | finish_request(sl811, ep, urb, NULL, 0); | 959 | finish_request(sl811, ep, urb, 0); |
961 | retval = 0; | 960 | retval = 0; |
962 | goto fail; | 961 | goto fail; |
963 | } | 962 | } |
@@ -1026,7 +1025,7 @@ static int sl811h_urb_dequeue(struct usb_hcd *hcd, struct urb *urb) | |||
1026 | } | 1025 | } |
1027 | 1026 | ||
1028 | if (urb) | 1027 | if (urb) |
1029 | finish_request(sl811, ep, urb, NULL, 0); | 1028 | finish_request(sl811, ep, urb, 0); |
1030 | else | 1029 | else |
1031 | VDBG("dequeue, urb %p active %s; wait4irq\n", urb, | 1030 | VDBG("dequeue, urb %p active %s; wait4irq\n", urb, |
1032 | (sl811->active_a == ep) ? "A" : "B"); | 1031 | (sl811->active_a == ep) ? "A" : "B"); |
@@ -1083,7 +1082,7 @@ sl811h_hub_status_data(struct usb_hcd *hcd, char *buf) | |||
1083 | */ | 1082 | */ |
1084 | local_irq_save(flags); | 1083 | local_irq_save(flags); |
1085 | if (!timer_pending(&sl811->timer)) { | 1084 | if (!timer_pending(&sl811->timer)) { |
1086 | if (sl811h_irq( /* ~0, */ hcd, NULL) != IRQ_NONE) | 1085 | if (sl811h_irq( /* ~0, */ hcd) != IRQ_NONE) |
1087 | sl811->stat_lost++; | 1086 | sl811->stat_lost++; |
1088 | } | 1087 | } |
1089 | local_irq_restore(flags); | 1088 | local_irq_restore(flags); |
diff --git a/drivers/usb/host/u132-hcd.c b/drivers/usb/host/u132-hcd.c index 0a315200b331..32c635ecbf31 100644 --- a/drivers/usb/host/u132-hcd.c +++ b/drivers/usb/host/u132-hcd.c | |||
@@ -557,7 +557,7 @@ static void u132_hcd_giveback_urb(struct u132 *u132, struct u132_endp *endp, | |||
557 | u132_ring_queue_work(u132, ring, 0); | 557 | u132_ring_queue_work(u132, ring, 0); |
558 | up(&u132->scheduler_lock); | 558 | up(&u132->scheduler_lock); |
559 | u132_endp_put_kref(u132, endp); | 559 | u132_endp_put_kref(u132, endp); |
560 | usb_hcd_giveback_urb(hcd, urb, NULL); | 560 | usb_hcd_giveback_urb(hcd, urb); |
561 | return; | 561 | return; |
562 | } | 562 | } |
563 | 563 | ||
@@ -590,7 +590,7 @@ static void u132_hcd_abandon_urb(struct u132 *u132, struct u132_endp *endp, | |||
590 | endp->active = 0; | 590 | endp->active = 0; |
591 | spin_unlock_irqrestore(&endp->queue_lock.slock, irqs); | 591 | spin_unlock_irqrestore(&endp->queue_lock.slock, irqs); |
592 | kfree(urbq); | 592 | kfree(urbq); |
593 | } usb_hcd_giveback_urb(hcd, urb, NULL); | 593 | } usb_hcd_giveback_urb(hcd, urb); |
594 | return; | 594 | return; |
595 | } | 595 | } |
596 | 596 | ||
@@ -2434,7 +2434,7 @@ static int dequeue_from_overflow_chain(struct u132 *u132, | |||
2434 | endp->queue_size -= 1; | 2434 | endp->queue_size -= 1; |
2435 | urb->error_count = 0; | 2435 | urb->error_count = 0; |
2436 | urb->hcpriv = NULL; | 2436 | urb->hcpriv = NULL; |
2437 | usb_hcd_giveback_urb(hcd, urb, NULL); | 2437 | usb_hcd_giveback_urb(hcd, urb); |
2438 | return 0; | 2438 | return 0; |
2439 | } else | 2439 | } else |
2440 | continue; | 2440 | continue; |
@@ -2512,7 +2512,7 @@ static int u132_endp_urb_dequeue(struct u132 *u132, struct u132_endp *endp, | |||
2512 | kfree(urbq); | 2512 | kfree(urbq); |
2513 | } urb->error_count = 0; | 2513 | } urb->error_count = 0; |
2514 | urb->hcpriv = NULL; | 2514 | urb->hcpriv = NULL; |
2515 | usb_hcd_giveback_urb(hcd, urb, NULL); | 2515 | usb_hcd_giveback_urb(hcd, urb); |
2516 | return 0; | 2516 | return 0; |
2517 | } else if (list_empty(&endp->urb_more)) { | 2517 | } else if (list_empty(&endp->urb_more)) { |
2518 | dev_err(&u132->platform_dev->dev, "urb=%p not found in " | 2518 | dev_err(&u132->platform_dev->dev, "urb=%p not found in " |
diff --git a/drivers/usb/host/uhci-hcd.c b/drivers/usb/host/uhci-hcd.c index eb4eab98e8bf..45ee6920a850 100644 --- a/drivers/usb/host/uhci-hcd.c +++ b/drivers/usb/host/uhci-hcd.c | |||
@@ -252,7 +252,7 @@ __acquires(uhci->lock) | |||
252 | uhci->is_stopped = UHCI_IS_STOPPED; | 252 | uhci->is_stopped = UHCI_IS_STOPPED; |
253 | uhci_to_hcd(uhci)->poll_rh = !int_enable; | 253 | uhci_to_hcd(uhci)->poll_rh = !int_enable; |
254 | 254 | ||
255 | uhci_scan_schedule(uhci, NULL); | 255 | uhci_scan_schedule(uhci); |
256 | uhci_fsbr_off(uhci); | 256 | uhci_fsbr_off(uhci); |
257 | } | 257 | } |
258 | 258 | ||
@@ -309,7 +309,7 @@ __acquires(uhci->lock) | |||
309 | mod_timer(&uhci_to_hcd(uhci)->rh_timer, jiffies); | 309 | mod_timer(&uhci_to_hcd(uhci)->rh_timer, jiffies); |
310 | } | 310 | } |
311 | 311 | ||
312 | static irqreturn_t uhci_irq(struct usb_hcd *hcd, struct pt_regs *regs) | 312 | static irqreturn_t uhci_irq(struct usb_hcd *hcd) |
313 | { | 313 | { |
314 | struct uhci_hcd *uhci = hcd_to_uhci(hcd); | 314 | struct uhci_hcd *uhci = hcd_to_uhci(hcd); |
315 | unsigned short status; | 315 | unsigned short status; |
@@ -358,7 +358,7 @@ static irqreturn_t uhci_irq(struct usb_hcd *hcd, struct pt_regs *regs) | |||
358 | usb_hcd_poll_rh_status(hcd); | 358 | usb_hcd_poll_rh_status(hcd); |
359 | else { | 359 | else { |
360 | spin_lock_irqsave(&uhci->lock, flags); | 360 | spin_lock_irqsave(&uhci->lock, flags); |
361 | uhci_scan_schedule(uhci, regs); | 361 | uhci_scan_schedule(uhci); |
362 | spin_unlock_irqrestore(&uhci->lock, flags); | 362 | spin_unlock_irqrestore(&uhci->lock, flags); |
363 | } | 363 | } |
364 | 364 | ||
@@ -671,7 +671,7 @@ static void uhci_stop(struct usb_hcd *hcd) | |||
671 | spin_lock_irq(&uhci->lock); | 671 | spin_lock_irq(&uhci->lock); |
672 | if (test_bit(HCD_FLAG_HW_ACCESSIBLE, &hcd->flags) && !uhci->dead) | 672 | if (test_bit(HCD_FLAG_HW_ACCESSIBLE, &hcd->flags) && !uhci->dead) |
673 | uhci_hc_died(uhci); | 673 | uhci_hc_died(uhci); |
674 | uhci_scan_schedule(uhci, NULL); | 674 | uhci_scan_schedule(uhci); |
675 | spin_unlock_irq(&uhci->lock); | 675 | spin_unlock_irq(&uhci->lock); |
676 | 676 | ||
677 | del_timer_sync(&uhci->fsbr_timer); | 677 | del_timer_sync(&uhci->fsbr_timer); |
diff --git a/drivers/usb/host/uhci-hub.c b/drivers/usb/host/uhci-hub.c index 16fb72eb6fc9..f8347f1a10b6 100644 --- a/drivers/usb/host/uhci-hub.c +++ b/drivers/usb/host/uhci-hub.c | |||
@@ -176,7 +176,7 @@ static int uhci_hub_status_data(struct usb_hcd *hcd, char *buf) | |||
176 | 176 | ||
177 | spin_lock_irqsave(&uhci->lock, flags); | 177 | spin_lock_irqsave(&uhci->lock, flags); |
178 | 178 | ||
179 | uhci_scan_schedule(uhci, NULL); | 179 | uhci_scan_schedule(uhci); |
180 | if (!test_bit(HCD_FLAG_HW_ACCESSIBLE, &hcd->flags) || uhci->dead) | 180 | if (!test_bit(HCD_FLAG_HW_ACCESSIBLE, &hcd->flags) || uhci->dead) |
181 | goto done; | 181 | goto done; |
182 | uhci_check_ports(uhci); | 182 | uhci_check_ports(uhci); |
diff --git a/drivers/usb/host/uhci-q.c b/drivers/usb/host/uhci-q.c index 431e8f31f1a9..06115f22a4fa 100644 --- a/drivers/usb/host/uhci-q.c +++ b/drivers/usb/host/uhci-q.c | |||
@@ -1244,7 +1244,7 @@ done: | |||
1244 | * Finish unlinking an URB and give it back | 1244 | * Finish unlinking an URB and give it back |
1245 | */ | 1245 | */ |
1246 | static void uhci_giveback_urb(struct uhci_hcd *uhci, struct uhci_qh *qh, | 1246 | static void uhci_giveback_urb(struct uhci_hcd *uhci, struct uhci_qh *qh, |
1247 | struct urb *urb, struct pt_regs *regs) | 1247 | struct urb *urb) |
1248 | __releases(uhci->lock) | 1248 | __releases(uhci->lock) |
1249 | __acquires(uhci->lock) | 1249 | __acquires(uhci->lock) |
1250 | { | 1250 | { |
@@ -1293,7 +1293,7 @@ __acquires(uhci->lock) | |||
1293 | } | 1293 | } |
1294 | 1294 | ||
1295 | spin_unlock(&uhci->lock); | 1295 | spin_unlock(&uhci->lock); |
1296 | usb_hcd_giveback_urb(uhci_to_hcd(uhci), urb, regs); | 1296 | usb_hcd_giveback_urb(uhci_to_hcd(uhci), urb); |
1297 | spin_lock(&uhci->lock); | 1297 | spin_lock(&uhci->lock); |
1298 | 1298 | ||
1299 | /* If the queue is now empty, we can unlink the QH and give up its | 1299 | /* If the queue is now empty, we can unlink the QH and give up its |
@@ -1313,8 +1313,7 @@ __acquires(uhci->lock) | |||
1313 | (qh->state == QH_STATE_UNLINKING && \ | 1313 | (qh->state == QH_STATE_UNLINKING && \ |
1314 | uhci->frame_number + uhci->is_stopped != qh->unlink_frame) | 1314 | uhci->frame_number + uhci->is_stopped != qh->unlink_frame) |
1315 | 1315 | ||
1316 | static void uhci_scan_qh(struct uhci_hcd *uhci, struct uhci_qh *qh, | 1316 | static void uhci_scan_qh(struct uhci_hcd *uhci, struct uhci_qh *qh) |
1317 | struct pt_regs *regs) | ||
1318 | { | 1317 | { |
1319 | struct urb_priv *urbp; | 1318 | struct urb_priv *urbp; |
1320 | struct urb *urb; | 1319 | struct urb *urb; |
@@ -1347,7 +1346,7 @@ static void uhci_scan_qh(struct uhci_hcd *uhci, struct uhci_qh *qh, | |||
1347 | return; | 1346 | return; |
1348 | } | 1347 | } |
1349 | 1348 | ||
1350 | uhci_giveback_urb(uhci, qh, urb, regs); | 1349 | uhci_giveback_urb(uhci, qh, urb); |
1351 | if (status < 0 && qh->type != USB_ENDPOINT_XFER_ISOC) | 1350 | if (status < 0 && qh->type != USB_ENDPOINT_XFER_ISOC) |
1352 | break; | 1351 | break; |
1353 | } | 1352 | } |
@@ -1372,7 +1371,7 @@ restart: | |||
1372 | qh->is_stopped = 0; | 1371 | qh->is_stopped = 0; |
1373 | return; | 1372 | return; |
1374 | } | 1373 | } |
1375 | uhci_giveback_urb(uhci, qh, urb, regs); | 1374 | uhci_giveback_urb(uhci, qh, urb); |
1376 | goto restart; | 1375 | goto restart; |
1377 | } | 1376 | } |
1378 | } | 1377 | } |
@@ -1487,7 +1486,7 @@ done: | |||
1487 | /* | 1486 | /* |
1488 | * Process events in the schedule, but only in one thread at a time | 1487 | * Process events in the schedule, but only in one thread at a time |
1489 | */ | 1488 | */ |
1490 | static void uhci_scan_schedule(struct uhci_hcd *uhci, struct pt_regs *regs) | 1489 | static void uhci_scan_schedule(struct uhci_hcd *uhci) |
1491 | { | 1490 | { |
1492 | int i; | 1491 | int i; |
1493 | struct uhci_qh *qh; | 1492 | struct uhci_qh *qh; |
@@ -1515,7 +1514,7 @@ rescan: | |||
1515 | struct uhci_qh, node); | 1514 | struct uhci_qh, node); |
1516 | 1515 | ||
1517 | if (uhci_advance_check(uhci, qh)) { | 1516 | if (uhci_advance_check(uhci, qh)) { |
1518 | uhci_scan_qh(uhci, qh, regs); | 1517 | uhci_scan_qh(uhci, qh); |
1519 | if (qh->state == QH_STATE_ACTIVE) { | 1518 | if (qh->state == QH_STATE_ACTIVE) { |
1520 | uhci_urbp_wants_fsbr(uhci, | 1519 | uhci_urbp_wants_fsbr(uhci, |
1521 | list_entry(qh->queue.next, struct urb_priv, node)); | 1520 | list_entry(qh->queue.next, struct urb_priv, node)); |
diff --git a/drivers/usb/image/mdc800.c b/drivers/usb/image/mdc800.c index ca6305c1d64c..63a84bbc310d 100644 --- a/drivers/usb/image/mdc800.c +++ b/drivers/usb/image/mdc800.c | |||
@@ -280,7 +280,7 @@ static int mdc800_isReady (char *ch) | |||
280 | /* | 280 | /* |
281 | * USB IRQ Handler for InputLine | 281 | * USB IRQ Handler for InputLine |
282 | */ | 282 | */ |
283 | static void mdc800_usb_irq (struct urb *urb, struct pt_regs *res) | 283 | static void mdc800_usb_irq (struct urb *urb) |
284 | { | 284 | { |
285 | int data_received=0, wake_up; | 285 | int data_received=0, wake_up; |
286 | unsigned char* b=urb->transfer_buffer; | 286 | unsigned char* b=urb->transfer_buffer; |
@@ -374,7 +374,7 @@ static int mdc800_usb_waitForIRQ (int mode, int msec) | |||
374 | /* | 374 | /* |
375 | * The write_urb callback function | 375 | * The write_urb callback function |
376 | */ | 376 | */ |
377 | static void mdc800_usb_write_notify (struct urb *urb, struct pt_regs *res) | 377 | static void mdc800_usb_write_notify (struct urb *urb) |
378 | { | 378 | { |
379 | struct mdc800_data* mdc800=urb->context; | 379 | struct mdc800_data* mdc800=urb->context; |
380 | 380 | ||
@@ -394,7 +394,7 @@ static void mdc800_usb_write_notify (struct urb *urb, struct pt_regs *res) | |||
394 | /* | 394 | /* |
395 | * The download_urb callback function | 395 | * The download_urb callback function |
396 | */ | 396 | */ |
397 | static void mdc800_usb_download_notify (struct urb *urb, struct pt_regs *res) | 397 | static void mdc800_usb_download_notify (struct urb *urb) |
398 | { | 398 | { |
399 | struct mdc800_data* mdc800=urb->context; | 399 | struct mdc800_data* mdc800=urb->context; |
400 | 400 | ||
diff --git a/drivers/usb/image/microtek.c b/drivers/usb/image/microtek.c index 5f861331932a..3038ed0700d3 100644 --- a/drivers/usb/image/microtek.c +++ b/drivers/usb/image/microtek.c | |||
@@ -370,7 +370,7 @@ static int | |||
370 | mts_scsi_queuecommand(struct scsi_cmnd *srb, mts_scsi_cmnd_callback callback); | 370 | mts_scsi_queuecommand(struct scsi_cmnd *srb, mts_scsi_cmnd_callback callback); |
371 | 371 | ||
372 | static void mts_transfer_cleanup( struct urb *transfer ); | 372 | static void mts_transfer_cleanup( struct urb *transfer ); |
373 | static void mts_do_sg(struct urb * transfer, struct pt_regs *regs); | 373 | static void mts_do_sg(struct urb * transfer); |
374 | 374 | ||
375 | static inline | 375 | static inline |
376 | void mts_int_submit_urb (struct urb* transfer, | 376 | void mts_int_submit_urb (struct urb* transfer, |
@@ -417,7 +417,7 @@ static void mts_transfer_cleanup( struct urb *transfer ) | |||
417 | 417 | ||
418 | } | 418 | } |
419 | 419 | ||
420 | static void mts_transfer_done( struct urb *transfer, struct pt_regs *regs ) | 420 | static void mts_transfer_done( struct urb *transfer ) |
421 | { | 421 | { |
422 | MTS_INT_INIT(); | 422 | MTS_INT_INIT(); |
423 | 423 | ||
@@ -443,7 +443,7 @@ static void mts_get_status( struct urb *transfer ) | |||
443 | mts_transfer_done ); | 443 | mts_transfer_done ); |
444 | } | 444 | } |
445 | 445 | ||
446 | static void mts_data_done( struct urb* transfer, struct pt_regs *regs ) | 446 | static void mts_data_done( struct urb* transfer ) |
447 | /* Interrupt context! */ | 447 | /* Interrupt context! */ |
448 | { | 448 | { |
449 | MTS_INT_INIT(); | 449 | MTS_INT_INIT(); |
@@ -460,7 +460,7 @@ static void mts_data_done( struct urb* transfer, struct pt_regs *regs ) | |||
460 | } | 460 | } |
461 | 461 | ||
462 | 462 | ||
463 | static void mts_command_done( struct urb *transfer, struct pt_regs *regs ) | 463 | static void mts_command_done( struct urb *transfer ) |
464 | /* Interrupt context! */ | 464 | /* Interrupt context! */ |
465 | { | 465 | { |
466 | MTS_INT_INIT(); | 466 | MTS_INT_INIT(); |
@@ -501,7 +501,7 @@ static void mts_command_done( struct urb *transfer, struct pt_regs *regs ) | |||
501 | return; | 501 | return; |
502 | } | 502 | } |
503 | 503 | ||
504 | static void mts_do_sg (struct urb* transfer, struct pt_regs *regs) | 504 | static void mts_do_sg (struct urb* transfer) |
505 | { | 505 | { |
506 | struct scatterlist * sg; | 506 | struct scatterlist * sg; |
507 | MTS_INT_INIT(); | 507 | MTS_INT_INIT(); |
diff --git a/drivers/usb/input/acecad.c b/drivers/usb/input/acecad.c index d83603ba40ae..0096373b5f98 100644 --- a/drivers/usb/input/acecad.c +++ b/drivers/usb/input/acecad.c | |||
@@ -58,7 +58,7 @@ struct usb_acecad { | |||
58 | dma_addr_t data_dma; | 58 | dma_addr_t data_dma; |
59 | }; | 59 | }; |
60 | 60 | ||
61 | static void usb_acecad_irq(struct urb *urb, struct pt_regs *regs) | 61 | static void usb_acecad_irq(struct urb *urb) |
62 | { | 62 | { |
63 | struct usb_acecad *acecad = urb->context; | 63 | struct usb_acecad *acecad = urb->context; |
64 | unsigned char *data = acecad->data; | 64 | unsigned char *data = acecad->data; |
diff --git a/drivers/usb/input/aiptek.c b/drivers/usb/input/aiptek.c index b138dae2b055..bf428184608f 100644 --- a/drivers/usb/input/aiptek.c +++ b/drivers/usb/input/aiptek.c | |||
@@ -396,7 +396,7 @@ static int aiptek_convert_from_2s_complement(unsigned char c) | |||
396 | * replaced with the input_sync() method (which emits EV_SYN.) | 396 | * replaced with the input_sync() method (which emits EV_SYN.) |
397 | */ | 397 | */ |
398 | 398 | ||
399 | static void aiptek_irq(struct urb *urb, struct pt_regs *regs) | 399 | static void aiptek_irq(struct urb *urb) |
400 | { | 400 | { |
401 | struct aiptek *aiptek = urb->context; | 401 | struct aiptek *aiptek = urb->context; |
402 | unsigned char *data = aiptek->data; | 402 | unsigned char *data = aiptek->data; |
@@ -442,8 +442,6 @@ static void aiptek_irq(struct urb *urb, struct pt_regs *regs) | |||
442 | aiptek->diagnostic = | 442 | aiptek->diagnostic = |
443 | AIPTEK_DIAGNOSTIC_SENDING_RELATIVE_IN_ABSOLUTE; | 443 | AIPTEK_DIAGNOSTIC_SENDING_RELATIVE_IN_ABSOLUTE; |
444 | } else { | 444 | } else { |
445 | input_regs(inputdev, regs); | ||
446 | |||
447 | x = aiptek_convert_from_2s_complement(data[2]); | 445 | x = aiptek_convert_from_2s_complement(data[2]); |
448 | y = aiptek_convert_from_2s_complement(data[3]); | 446 | y = aiptek_convert_from_2s_complement(data[3]); |
449 | 447 | ||
@@ -488,8 +486,6 @@ static void aiptek_irq(struct urb *urb, struct pt_regs *regs) | |||
488 | (aiptek->curSetting.pointerMode)) { | 486 | (aiptek->curSetting.pointerMode)) { |
489 | aiptek->diagnostic = AIPTEK_DIAGNOSTIC_TOOL_DISALLOWED; | 487 | aiptek->diagnostic = AIPTEK_DIAGNOSTIC_TOOL_DISALLOWED; |
490 | } else { | 488 | } else { |
491 | input_regs(inputdev, regs); | ||
492 | |||
493 | x = le16_to_cpu(get_unaligned((__le16 *) (data + 1))); | 489 | x = le16_to_cpu(get_unaligned((__le16 *) (data + 1))); |
494 | y = le16_to_cpu(get_unaligned((__le16 *) (data + 3))); | 490 | y = le16_to_cpu(get_unaligned((__le16 *) (data + 3))); |
495 | z = le16_to_cpu(get_unaligned((__le16 *) (data + 6))); | 491 | z = le16_to_cpu(get_unaligned((__le16 *) (data + 6))); |
@@ -568,7 +564,6 @@ static void aiptek_irq(struct urb *urb, struct pt_regs *regs) | |||
568 | (aiptek->curSetting.pointerMode)) { | 564 | (aiptek->curSetting.pointerMode)) { |
569 | aiptek->diagnostic = AIPTEK_DIAGNOSTIC_TOOL_DISALLOWED; | 565 | aiptek->diagnostic = AIPTEK_DIAGNOSTIC_TOOL_DISALLOWED; |
570 | } else { | 566 | } else { |
571 | input_regs(inputdev, regs); | ||
572 | x = le16_to_cpu(get_unaligned((__le16 *) (data + 1))); | 567 | x = le16_to_cpu(get_unaligned((__le16 *) (data + 1))); |
573 | y = le16_to_cpu(get_unaligned((__le16 *) (data + 3))); | 568 | y = le16_to_cpu(get_unaligned((__le16 *) (data + 3))); |
574 | 569 | ||
@@ -631,8 +626,6 @@ static void aiptek_irq(struct urb *urb, struct pt_regs *regs) | |||
631 | z = le16_to_cpu(get_unaligned((__le16 *) (data + 4))); | 626 | z = le16_to_cpu(get_unaligned((__le16 *) (data + 4))); |
632 | 627 | ||
633 | if (dv != 0) { | 628 | if (dv != 0) { |
634 | input_regs(inputdev, regs); | ||
635 | |||
636 | /* If we've not already sent a tool_button_?? code, do | 629 | /* If we've not already sent a tool_button_?? code, do |
637 | * so now. Then set FIRED_BIT so it won't be resent unless | 630 | * so now. Then set FIRED_BIT so it won't be resent unless |
638 | * the user forces FIRED_BIT off. | 631 | * the user forces FIRED_BIT off. |
@@ -681,8 +674,6 @@ static void aiptek_irq(struct urb *urb, struct pt_regs *regs) | |||
681 | macro = data[3]; | 674 | macro = data[3]; |
682 | 675 | ||
683 | if (dv != 0) { | 676 | if (dv != 0) { |
684 | input_regs(inputdev, regs); | ||
685 | |||
686 | /* If we've not already sent a tool_button_?? code, do | 677 | /* If we've not already sent a tool_button_?? code, do |
687 | * so now. Then set FIRED_BIT so it won't be resent unless | 678 | * so now. Then set FIRED_BIT so it won't be resent unless |
688 | * the user forces FIRED_BIT off. | 679 | * the user forces FIRED_BIT off. |
@@ -726,8 +717,6 @@ static void aiptek_irq(struct urb *urb, struct pt_regs *regs) | |||
726 | */ | 717 | */ |
727 | else if (data[0] == 6) { | 718 | else if (data[0] == 6) { |
728 | macro = le16_to_cpu(get_unaligned((__le16 *) (data + 1))); | 719 | macro = le16_to_cpu(get_unaligned((__le16 *) (data + 1))); |
729 | input_regs(inputdev, regs); | ||
730 | |||
731 | if (macro > 0) { | 720 | if (macro > 0) { |
732 | input_report_key(inputdev, macroKeyEvents[macro - 1], | 721 | input_report_key(inputdev, macroKeyEvents[macro - 1], |
733 | 0); | 722 | 0); |
diff --git a/drivers/usb/input/appletouch.c b/drivers/usb/input/appletouch.c index 0aa9cc2bfd69..4c213513484d 100644 --- a/drivers/usb/input/appletouch.c +++ b/drivers/usb/input/appletouch.c | |||
@@ -210,7 +210,7 @@ static inline void atp_report_fingers(struct input_dev *input, int fingers) | |||
210 | input_report_key(input, BTN_TOOL_TRIPLETAP, fingers > 2); | 210 | input_report_key(input, BTN_TOOL_TRIPLETAP, fingers > 2); |
211 | } | 211 | } |
212 | 212 | ||
213 | static void atp_complete(struct urb* urb, struct pt_regs* regs) | 213 | static void atp_complete(struct urb* urb) |
214 | { | 214 | { |
215 | int x, y, x_z, y_z, x_f, y_f; | 215 | int x, y, x_z, y_z, x_f, y_f; |
216 | int retval, i, j; | 216 | int retval, i, j; |
diff --git a/drivers/usb/input/ati_remote.c b/drivers/usb/input/ati_remote.c index 3558d7ed99b9..f659f3028ad2 100644 --- a/drivers/usb/input/ati_remote.c +++ b/drivers/usb/input/ati_remote.c | |||
@@ -283,9 +283,9 @@ static void ati_remote_dump (unsigned char *data, unsigned int actual_length); | |||
283 | static int ati_remote_open (struct input_dev *inputdev); | 283 | static int ati_remote_open (struct input_dev *inputdev); |
284 | static void ati_remote_close (struct input_dev *inputdev); | 284 | static void ati_remote_close (struct input_dev *inputdev); |
285 | static int ati_remote_sendpacket (struct ati_remote *ati_remote, u16 cmd, unsigned char *data); | 285 | static int ati_remote_sendpacket (struct ati_remote *ati_remote, u16 cmd, unsigned char *data); |
286 | static void ati_remote_irq_out (struct urb *urb, struct pt_regs *regs); | 286 | static void ati_remote_irq_out (struct urb *urb); |
287 | static void ati_remote_irq_in (struct urb *urb, struct pt_regs *regs); | 287 | static void ati_remote_irq_in (struct urb *urb); |
288 | static void ati_remote_input_report (struct urb *urb, struct pt_regs *regs); | 288 | static void ati_remote_input_report (struct urb *urb); |
289 | static int ati_remote_initialize (struct ati_remote *ati_remote); | 289 | static int ati_remote_initialize (struct ati_remote *ati_remote); |
290 | static int ati_remote_probe (struct usb_interface *interface, const struct usb_device_id *id); | 290 | static int ati_remote_probe (struct usb_interface *interface, const struct usb_device_id *id); |
291 | static void ati_remote_disconnect (struct usb_interface *interface); | 291 | static void ati_remote_disconnect (struct usb_interface *interface); |
@@ -344,7 +344,7 @@ static void ati_remote_close(struct input_dev *inputdev) | |||
344 | /* | 344 | /* |
345 | * ati_remote_irq_out | 345 | * ati_remote_irq_out |
346 | */ | 346 | */ |
347 | static void ati_remote_irq_out(struct urb *urb, struct pt_regs *regs) | 347 | static void ati_remote_irq_out(struct urb *urb) |
348 | { | 348 | { |
349 | struct ati_remote *ati_remote = urb->context; | 349 | struct ati_remote *ati_remote = urb->context; |
350 | 350 | ||
@@ -453,7 +453,7 @@ static int ati_remote_compute_accel(struct ati_remote *ati_remote) | |||
453 | /* | 453 | /* |
454 | * ati_remote_report_input | 454 | * ati_remote_report_input |
455 | */ | 455 | */ |
456 | static void ati_remote_input_report(struct urb *urb, struct pt_regs *regs) | 456 | static void ati_remote_input_report(struct urb *urb) |
457 | { | 457 | { |
458 | struct ati_remote *ati_remote = urb->context; | 458 | struct ati_remote *ati_remote = urb->context; |
459 | unsigned char *data= ati_remote->inbuf; | 459 | unsigned char *data= ati_remote->inbuf; |
@@ -491,7 +491,6 @@ static void ati_remote_input_report(struct urb *urb, struct pt_regs *regs) | |||
491 | remote_num, data[1], data[2], index, ati_remote_tbl[index].code); | 491 | remote_num, data[1], data[2], index, ati_remote_tbl[index].code); |
492 | 492 | ||
493 | if (ati_remote_tbl[index].kind == KIND_LITERAL) { | 493 | if (ati_remote_tbl[index].kind == KIND_LITERAL) { |
494 | input_regs(dev, regs); | ||
495 | input_event(dev, ati_remote_tbl[index].type, | 494 | input_event(dev, ati_remote_tbl[index].type, |
496 | ati_remote_tbl[index].code, | 495 | ati_remote_tbl[index].code, |
497 | ati_remote_tbl[index].value); | 496 | ati_remote_tbl[index].value); |
@@ -520,7 +519,6 @@ static void ati_remote_input_report(struct urb *urb, struct pt_regs *regs) | |||
520 | return; | 519 | return; |
521 | 520 | ||
522 | 521 | ||
523 | input_regs(dev, regs); | ||
524 | input_event(dev, ati_remote_tbl[index].type, | 522 | input_event(dev, ati_remote_tbl[index].type, |
525 | ati_remote_tbl[index].code, 1); | 523 | ati_remote_tbl[index].code, 1); |
526 | input_sync(dev); | 524 | input_sync(dev); |
@@ -537,7 +535,6 @@ static void ati_remote_input_report(struct urb *urb, struct pt_regs *regs) | |||
537 | */ | 535 | */ |
538 | acc = ati_remote_compute_accel(ati_remote); | 536 | acc = ati_remote_compute_accel(ati_remote); |
539 | 537 | ||
540 | input_regs(dev, regs); | ||
541 | switch (ati_remote_tbl[index].kind) { | 538 | switch (ati_remote_tbl[index].kind) { |
542 | case KIND_ACCEL: | 539 | case KIND_ACCEL: |
543 | input_event(dev, ati_remote_tbl[index].type, | 540 | input_event(dev, ati_remote_tbl[index].type, |
@@ -575,14 +572,14 @@ static void ati_remote_input_report(struct urb *urb, struct pt_regs *regs) | |||
575 | /* | 572 | /* |
576 | * ati_remote_irq_in | 573 | * ati_remote_irq_in |
577 | */ | 574 | */ |
578 | static void ati_remote_irq_in(struct urb *urb, struct pt_regs *regs) | 575 | static void ati_remote_irq_in(struct urb *urb) |
579 | { | 576 | { |
580 | struct ati_remote *ati_remote = urb->context; | 577 | struct ati_remote *ati_remote = urb->context; |
581 | int retval; | 578 | int retval; |
582 | 579 | ||
583 | switch (urb->status) { | 580 | switch (urb->status) { |
584 | case 0: /* success */ | 581 | case 0: /* success */ |
585 | ati_remote_input_report(urb, regs); | 582 | ati_remote_input_report(urb); |
586 | break; | 583 | break; |
587 | case -ECONNRESET: /* unlink */ | 584 | case -ECONNRESET: /* unlink */ |
588 | case -ENOENT: | 585 | case -ENOENT: |
diff --git a/drivers/usb/input/ati_remote2.c b/drivers/usb/input/ati_remote2.c index ea71de81ca6b..f982a2b4a7f9 100644 --- a/drivers/usb/input/ati_remote2.c +++ b/drivers/usb/input/ati_remote2.c | |||
@@ -142,7 +142,7 @@ static void ati_remote2_close(struct input_dev *idev) | |||
142 | usb_kill_urb(ar2->urb[1]); | 142 | usb_kill_urb(ar2->urb[1]); |
143 | } | 143 | } |
144 | 144 | ||
145 | static void ati_remote2_input_mouse(struct ati_remote2 *ar2, struct pt_regs *regs) | 145 | static void ati_remote2_input_mouse(struct ati_remote2 *ar2) |
146 | { | 146 | { |
147 | struct input_dev *idev = ar2->idev; | 147 | struct input_dev *idev = ar2->idev; |
148 | u8 *data = ar2->buf[0]; | 148 | u8 *data = ar2->buf[0]; |
@@ -157,7 +157,6 @@ static void ati_remote2_input_mouse(struct ati_remote2 *ar2, struct pt_regs *reg | |||
157 | if (!((1 << data[0]) & mode_mask)) | 157 | if (!((1 << data[0]) & mode_mask)) |
158 | return; | 158 | return; |
159 | 159 | ||
160 | input_regs(idev, regs); | ||
161 | input_event(idev, EV_REL, REL_X, (s8) data[1]); | 160 | input_event(idev, EV_REL, REL_X, (s8) data[1]); |
162 | input_event(idev, EV_REL, REL_Y, (s8) data[2]); | 161 | input_event(idev, EV_REL, REL_Y, (s8) data[2]); |
163 | input_sync(idev); | 162 | input_sync(idev); |
@@ -174,7 +173,7 @@ static int ati_remote2_lookup(unsigned int hw_code) | |||
174 | return -1; | 173 | return -1; |
175 | } | 174 | } |
176 | 175 | ||
177 | static void ati_remote2_input_key(struct ati_remote2 *ar2, struct pt_regs *regs) | 176 | static void ati_remote2_input_key(struct ati_remote2 *ar2) |
178 | { | 177 | { |
179 | struct input_dev *idev = ar2->idev; | 178 | struct input_dev *idev = ar2->idev; |
180 | u8 *data = ar2->buf[1]; | 179 | u8 *data = ar2->buf[1]; |
@@ -245,19 +244,18 @@ static void ati_remote2_input_key(struct ati_remote2 *ar2, struct pt_regs *regs) | |||
245 | return; | 244 | return; |
246 | } | 245 | } |
247 | 246 | ||
248 | input_regs(idev, regs); | ||
249 | input_event(idev, EV_KEY, ati_remote2_key_table[index].key_code, data[1]); | 247 | input_event(idev, EV_KEY, ati_remote2_key_table[index].key_code, data[1]); |
250 | input_sync(idev); | 248 | input_sync(idev); |
251 | } | 249 | } |
252 | 250 | ||
253 | static void ati_remote2_complete_mouse(struct urb *urb, struct pt_regs *regs) | 251 | static void ati_remote2_complete_mouse(struct urb *urb) |
254 | { | 252 | { |
255 | struct ati_remote2 *ar2 = urb->context; | 253 | struct ati_remote2 *ar2 = urb->context; |
256 | int r; | 254 | int r; |
257 | 255 | ||
258 | switch (urb->status) { | 256 | switch (urb->status) { |
259 | case 0: | 257 | case 0: |
260 | ati_remote2_input_mouse(ar2, regs); | 258 | ati_remote2_input_mouse(ar2); |
261 | break; | 259 | break; |
262 | case -ENOENT: | 260 | case -ENOENT: |
263 | case -EILSEQ: | 261 | case -EILSEQ: |
@@ -277,14 +275,14 @@ static void ati_remote2_complete_mouse(struct urb *urb, struct pt_regs *regs) | |||
277 | "%s(): usb_submit_urb() = %d\n", __FUNCTION__, r); | 275 | "%s(): usb_submit_urb() = %d\n", __FUNCTION__, r); |
278 | } | 276 | } |
279 | 277 | ||
280 | static void ati_remote2_complete_key(struct urb *urb, struct pt_regs *regs) | 278 | static void ati_remote2_complete_key(struct urb *urb) |
281 | { | 279 | { |
282 | struct ati_remote2 *ar2 = urb->context; | 280 | struct ati_remote2 *ar2 = urb->context; |
283 | int r; | 281 | int r; |
284 | 282 | ||
285 | switch (urb->status) { | 283 | switch (urb->status) { |
286 | case 0: | 284 | case 0: |
287 | ati_remote2_input_key(ar2, regs); | 285 | ati_remote2_input_key(ar2); |
288 | break; | 286 | break; |
289 | case -ENOENT: | 287 | case -ENOENT: |
290 | case -EILSEQ: | 288 | case -EILSEQ: |
diff --git a/drivers/usb/input/hid-core.c b/drivers/usb/input/hid-core.c index e0fd11605b43..a6738a83ff5b 100644 --- a/drivers/usb/input/hid-core.c +++ b/drivers/usb/input/hid-core.c | |||
@@ -780,13 +780,13 @@ static __inline__ int search(__s32 *array, __s32 value, unsigned n) | |||
780 | return -1; | 780 | return -1; |
781 | } | 781 | } |
782 | 782 | ||
783 | static void hid_process_event(struct hid_device *hid, struct hid_field *field, struct hid_usage *usage, __s32 value, int interrupt, struct pt_regs *regs) | 783 | static void hid_process_event(struct hid_device *hid, struct hid_field *field, struct hid_usage *usage, __s32 value, int interrupt) |
784 | { | 784 | { |
785 | hid_dump_input(usage, value); | 785 | hid_dump_input(usage, value); |
786 | if (hid->claimed & HID_CLAIMED_INPUT) | 786 | if (hid->claimed & HID_CLAIMED_INPUT) |
787 | hidinput_hid_event(hid, field, usage, value, regs); | 787 | hidinput_hid_event(hid, field, usage, value); |
788 | if (hid->claimed & HID_CLAIMED_HIDDEV && interrupt) | 788 | if (hid->claimed & HID_CLAIMED_HIDDEV && interrupt) |
789 | hiddev_hid_event(hid, field, usage, value, regs); | 789 | hiddev_hid_event(hid, field, usage, value); |
790 | } | 790 | } |
791 | 791 | ||
792 | /* | 792 | /* |
@@ -795,7 +795,7 @@ static void hid_process_event(struct hid_device *hid, struct hid_field *field, s | |||
795 | * reporting to the layer). | 795 | * reporting to the layer). |
796 | */ | 796 | */ |
797 | 797 | ||
798 | static void hid_input_field(struct hid_device *hid, struct hid_field *field, __u8 *data, int interrupt, struct pt_regs *regs) | 798 | static void hid_input_field(struct hid_device *hid, struct hid_field *field, __u8 *data, int interrupt) |
799 | { | 799 | { |
800 | unsigned n; | 800 | unsigned n; |
801 | unsigned count = field->report_count; | 801 | unsigned count = field->report_count; |
@@ -822,19 +822,19 @@ static void hid_input_field(struct hid_device *hid, struct hid_field *field, __u | |||
822 | for (n = 0; n < count; n++) { | 822 | for (n = 0; n < count; n++) { |
823 | 823 | ||
824 | if (HID_MAIN_ITEM_VARIABLE & field->flags) { | 824 | if (HID_MAIN_ITEM_VARIABLE & field->flags) { |
825 | hid_process_event(hid, field, &field->usage[n], value[n], interrupt, regs); | 825 | hid_process_event(hid, field, &field->usage[n], value[n], interrupt); |
826 | continue; | 826 | continue; |
827 | } | 827 | } |
828 | 828 | ||
829 | if (field->value[n] >= min && field->value[n] <= max | 829 | if (field->value[n] >= min && field->value[n] <= max |
830 | && field->usage[field->value[n] - min].hid | 830 | && field->usage[field->value[n] - min].hid |
831 | && search(value, field->value[n], count)) | 831 | && search(value, field->value[n], count)) |
832 | hid_process_event(hid, field, &field->usage[field->value[n] - min], 0, interrupt, regs); | 832 | hid_process_event(hid, field, &field->usage[field->value[n] - min], 0, interrupt); |
833 | 833 | ||
834 | if (value[n] >= min && value[n] <= max | 834 | if (value[n] >= min && value[n] <= max |
835 | && field->usage[value[n] - min].hid | 835 | && field->usage[value[n] - min].hid |
836 | && search(field->value, value[n], count)) | 836 | && search(field->value, value[n], count)) |
837 | hid_process_event(hid, field, &field->usage[value[n] - min], 1, interrupt, regs); | 837 | hid_process_event(hid, field, &field->usage[value[n] - min], 1, interrupt); |
838 | } | 838 | } |
839 | 839 | ||
840 | memcpy(field->value, value, count * sizeof(__s32)); | 840 | memcpy(field->value, value, count * sizeof(__s32)); |
@@ -842,7 +842,7 @@ exit: | |||
842 | kfree(value); | 842 | kfree(value); |
843 | } | 843 | } |
844 | 844 | ||
845 | static int hid_input_report(int type, struct urb *urb, int interrupt, struct pt_regs *regs) | 845 | static int hid_input_report(int type, struct urb *urb, int interrupt) |
846 | { | 846 | { |
847 | struct hid_device *hid = urb->context; | 847 | struct hid_device *hid = urb->context; |
848 | struct hid_report_enum *report_enum = hid->report_enum + type; | 848 | struct hid_report_enum *report_enum = hid->report_enum + type; |
@@ -892,7 +892,7 @@ static int hid_input_report(int type, struct urb *urb, int interrupt, struct pt_ | |||
892 | hiddev_report_event(hid, report); | 892 | hiddev_report_event(hid, report); |
893 | 893 | ||
894 | for (n = 0; n < report->maxfield; n++) | 894 | for (n = 0; n < report->maxfield; n++) |
895 | hid_input_field(hid, report->field[n], data, interrupt, regs); | 895 | hid_input_field(hid, report->field[n], data, interrupt); |
896 | 896 | ||
897 | if (hid->claimed & HID_CLAIMED_INPUT) | 897 | if (hid->claimed & HID_CLAIMED_INPUT) |
898 | hidinput_report_event(hid, report); | 898 | hidinput_report_event(hid, report); |
@@ -1004,7 +1004,7 @@ done: | |||
1004 | * Input interrupt completion handler. | 1004 | * Input interrupt completion handler. |
1005 | */ | 1005 | */ |
1006 | 1006 | ||
1007 | static void hid_irq_in(struct urb *urb, struct pt_regs *regs) | 1007 | static void hid_irq_in(struct urb *urb) |
1008 | { | 1008 | { |
1009 | struct hid_device *hid = urb->context; | 1009 | struct hid_device *hid = urb->context; |
1010 | int status; | 1010 | int status; |
@@ -1012,7 +1012,7 @@ static void hid_irq_in(struct urb *urb, struct pt_regs *regs) | |||
1012 | switch (urb->status) { | 1012 | switch (urb->status) { |
1013 | case 0: /* success */ | 1013 | case 0: /* success */ |
1014 | hid->retry_delay = 0; | 1014 | hid->retry_delay = 0; |
1015 | hid_input_report(HID_INPUT_REPORT, urb, 1, regs); | 1015 | hid_input_report(HID_INPUT_REPORT, urb, 1); |
1016 | break; | 1016 | break; |
1017 | case -ECONNRESET: /* unlink */ | 1017 | case -ECONNRESET: /* unlink */ |
1018 | case -ENOENT: | 1018 | case -ENOENT: |
@@ -1193,7 +1193,7 @@ static int hid_submit_ctrl(struct hid_device *hid) | |||
1193 | * Output interrupt completion handler. | 1193 | * Output interrupt completion handler. |
1194 | */ | 1194 | */ |
1195 | 1195 | ||
1196 | static void hid_irq_out(struct urb *urb, struct pt_regs *regs) | 1196 | static void hid_irq_out(struct urb *urb) |
1197 | { | 1197 | { |
1198 | struct hid_device *hid = urb->context; | 1198 | struct hid_device *hid = urb->context; |
1199 | unsigned long flags; | 1199 | unsigned long flags; |
@@ -1238,7 +1238,7 @@ static void hid_irq_out(struct urb *urb, struct pt_regs *regs) | |||
1238 | * Control pipe completion handler. | 1238 | * Control pipe completion handler. |
1239 | */ | 1239 | */ |
1240 | 1240 | ||
1241 | static void hid_ctrl(struct urb *urb, struct pt_regs *regs) | 1241 | static void hid_ctrl(struct urb *urb) |
1242 | { | 1242 | { |
1243 | struct hid_device *hid = urb->context; | 1243 | struct hid_device *hid = urb->context; |
1244 | unsigned long flags; | 1244 | unsigned long flags; |
@@ -1249,7 +1249,7 @@ static void hid_ctrl(struct urb *urb, struct pt_regs *regs) | |||
1249 | switch (urb->status) { | 1249 | switch (urb->status) { |
1250 | case 0: /* success */ | 1250 | case 0: /* success */ |
1251 | if (hid->ctrl[hid->ctrltail].dir == USB_DIR_IN) | 1251 | if (hid->ctrl[hid->ctrltail].dir == USB_DIR_IN) |
1252 | hid_input_report(hid->ctrl[hid->ctrltail].report->type, urb, 0, regs); | 1252 | hid_input_report(hid->ctrl[hid->ctrltail].report->type, urb, 0); |
1253 | break; | 1253 | break; |
1254 | case -ESHUTDOWN: /* unplug */ | 1254 | case -ESHUTDOWN: /* unplug */ |
1255 | unplug = 1; | 1255 | unplug = 1; |
diff --git a/drivers/usb/input/hid-input.c b/drivers/usb/input/hid-input.c index 4c62afbeb430..9a808a3b4d37 100644 --- a/drivers/usb/input/hid-input.c +++ b/drivers/usb/input/hid-input.c | |||
@@ -613,7 +613,7 @@ ignore: | |||
613 | return; | 613 | return; |
614 | } | 614 | } |
615 | 615 | ||
616 | void hidinput_hid_event(struct hid_device *hid, struct hid_field *field, struct hid_usage *usage, __s32 value, struct pt_regs *regs) | 616 | void hidinput_hid_event(struct hid_device *hid, struct hid_field *field, struct hid_usage *usage, __s32 value) |
617 | { | 617 | { |
618 | struct input_dev *input; | 618 | struct input_dev *input; |
619 | int *quirks = &hid->quirks; | 619 | int *quirks = &hid->quirks; |
@@ -623,8 +623,6 @@ void hidinput_hid_event(struct hid_device *hid, struct hid_field *field, struct | |||
623 | 623 | ||
624 | input = field->hidinput->input; | 624 | input = field->hidinput->input; |
625 | 625 | ||
626 | input_regs(input, regs); | ||
627 | |||
628 | if (!usage->type) | 626 | if (!usage->type) |
629 | return; | 627 | return; |
630 | 628 | ||
diff --git a/drivers/usb/input/hid.h b/drivers/usb/input/hid.h index b03fd9b075df..9b50effef758 100644 --- a/drivers/usb/input/hid.h +++ b/drivers/usb/input/hid.h | |||
@@ -499,13 +499,13 @@ struct hid_descriptor { | |||
499 | /* Applications from HID Usage Tables 4/8/99 Version 1.1 */ | 499 | /* Applications from HID Usage Tables 4/8/99 Version 1.1 */ |
500 | /* We ignore a few input applications that are not widely used */ | 500 | /* We ignore a few input applications that are not widely used */ |
501 | #define IS_INPUT_APPLICATION(a) (((a >= 0x00010000) && (a <= 0x00010008)) || (a == 0x00010080) || (a == 0x000c0001)) | 501 | #define IS_INPUT_APPLICATION(a) (((a >= 0x00010000) && (a <= 0x00010008)) || (a == 0x00010080) || (a == 0x000c0001)) |
502 | extern void hidinput_hid_event(struct hid_device *, struct hid_field *, struct hid_usage *, __s32, struct pt_regs *regs); | 502 | extern void hidinput_hid_event(struct hid_device *, struct hid_field *, struct hid_usage *, __s32); |
503 | extern void hidinput_report_event(struct hid_device *hid, struct hid_report *report); | 503 | extern void hidinput_report_event(struct hid_device *hid, struct hid_report *report); |
504 | extern int hidinput_connect(struct hid_device *); | 504 | extern int hidinput_connect(struct hid_device *); |
505 | extern void hidinput_disconnect(struct hid_device *); | 505 | extern void hidinput_disconnect(struct hid_device *); |
506 | #else | 506 | #else |
507 | #define IS_INPUT_APPLICATION(a) (0) | 507 | #define IS_INPUT_APPLICATION(a) (0) |
508 | static inline void hidinput_hid_event(struct hid_device *hid, struct hid_field *field, struct hid_usage *usage, __s32 value, struct pt_regs *regs) { } | 508 | static inline void hidinput_hid_event(struct hid_device *hid, struct hid_field *field, struct hid_usage *usage, __s32 value) { } |
509 | static inline void hidinput_report_event(struct hid_device *hid, struct hid_report *report) { } | 509 | static inline void hidinput_report_event(struct hid_device *hid, struct hid_report *report) { } |
510 | static inline int hidinput_connect(struct hid_device *hid) { return -ENODEV; } | 510 | static inline int hidinput_connect(struct hid_device *hid) { return -ENODEV; } |
511 | static inline void hidinput_disconnect(struct hid_device *hid) { } | 511 | static inline void hidinput_disconnect(struct hid_device *hid) { } |
diff --git a/drivers/usb/input/hiddev.c b/drivers/usb/input/hiddev.c index a2b419d13740..7dc14d0cacc1 100644 --- a/drivers/usb/input/hiddev.c +++ b/drivers/usb/input/hiddev.c | |||
@@ -179,7 +179,7 @@ static void hiddev_send_event(struct hid_device *hid, | |||
179 | * the interrupt pipe | 179 | * the interrupt pipe |
180 | */ | 180 | */ |
181 | void hiddev_hid_event(struct hid_device *hid, struct hid_field *field, | 181 | void hiddev_hid_event(struct hid_device *hid, struct hid_field *field, |
182 | struct hid_usage *usage, __s32 value, struct pt_regs *regs) | 182 | struct hid_usage *usage, __s32 value) |
183 | { | 183 | { |
184 | unsigned type = field->report_type; | 184 | unsigned type = field->report_type; |
185 | struct hiddev_usage_ref uref; | 185 | struct hiddev_usage_ref uref; |
diff --git a/drivers/usb/input/itmtouch.c b/drivers/usb/input/itmtouch.c index f3e3080de5b5..aac968aab860 100644 --- a/drivers/usb/input/itmtouch.c +++ b/drivers/usb/input/itmtouch.c | |||
@@ -80,7 +80,7 @@ static struct usb_device_id itmtouch_ids [] = { | |||
80 | { } | 80 | { } |
81 | }; | 81 | }; |
82 | 82 | ||
83 | static void itmtouch_irq(struct urb *urb, struct pt_regs *regs) | 83 | static void itmtouch_irq(struct urb *urb) |
84 | { | 84 | { |
85 | struct itmtouch_dev *itmtouch = urb->context; | 85 | struct itmtouch_dev *itmtouch = urb->context; |
86 | unsigned char *data = urb->transfer_buffer; | 86 | unsigned char *data = urb->transfer_buffer; |
@@ -109,8 +109,6 @@ static void itmtouch_irq(struct urb *urb, struct pt_regs *regs) | |||
109 | goto exit; | 109 | goto exit; |
110 | } | 110 | } |
111 | 111 | ||
112 | input_regs(dev, regs); | ||
113 | |||
114 | /* if pressure has been released, then don't report X/Y */ | 112 | /* if pressure has been released, then don't report X/Y */ |
115 | if (!(data[7] & 0x20)) { | 113 | if (!(data[7] & 0x20)) { |
116 | input_report_abs(dev, ABS_X, (data[0] & 0x1F) << 7 | (data[3] & 0x7F)); | 114 | input_report_abs(dev, ABS_X, (data[0] & 0x1F) << 7 | (data[3] & 0x7F)); |
diff --git a/drivers/usb/input/kbtab.c b/drivers/usb/input/kbtab.c index 604ade356ead..fedbcb127c21 100644 --- a/drivers/usb/input/kbtab.c +++ b/drivers/usb/input/kbtab.c | |||
@@ -41,7 +41,7 @@ struct kbtab { | |||
41 | char phys[32]; | 41 | char phys[32]; |
42 | }; | 42 | }; |
43 | 43 | ||
44 | static void kbtab_irq(struct urb *urb, struct pt_regs *regs) | 44 | static void kbtab_irq(struct urb *urb) |
45 | { | 45 | { |
46 | struct kbtab *kbtab = urb->context; | 46 | struct kbtab *kbtab = urb->context; |
47 | unsigned char *data = kbtab->data; | 47 | unsigned char *data = kbtab->data; |
diff --git a/drivers/usb/input/keyspan_remote.c b/drivers/usb/input/keyspan_remote.c index a90359551575..50aa8108a50b 100644 --- a/drivers/usb/input/keyspan_remote.c +++ b/drivers/usb/input/keyspan_remote.c | |||
@@ -176,7 +176,7 @@ static int keyspan_load_tester(struct usb_keyspan* dev, int bits_needed) | |||
176 | /* | 176 | /* |
177 | * Routine that handles all the logic needed to parse out the message from the remote. | 177 | * Routine that handles all the logic needed to parse out the message from the remote. |
178 | */ | 178 | */ |
179 | static void keyspan_check_data(struct usb_keyspan *remote, struct pt_regs *regs) | 179 | static void keyspan_check_data(struct usb_keyspan *remote) |
180 | { | 180 | { |
181 | int i; | 181 | int i; |
182 | int found = 0; | 182 | int found = 0; |
@@ -311,7 +311,6 @@ static void keyspan_check_data(struct usb_keyspan *remote, struct pt_regs *regs) | |||
311 | __FUNCTION__, message.system, message.button, message.toggle); | 311 | __FUNCTION__, message.system, message.button, message.toggle); |
312 | 312 | ||
313 | if (message.toggle != remote->toggle) { | 313 | if (message.toggle != remote->toggle) { |
314 | input_regs(remote->input, regs); | ||
315 | input_report_key(remote->input, keyspan_key_table[message.button], 1); | 314 | input_report_key(remote->input, keyspan_key_table[message.button], 1); |
316 | input_report_key(remote->input, keyspan_key_table[message.button], 0); | 315 | input_report_key(remote->input, keyspan_key_table[message.button], 0); |
317 | input_sync(remote->input); | 316 | input_sync(remote->input); |
@@ -361,7 +360,7 @@ static int keyspan_setup(struct usb_device* dev) | |||
361 | /* | 360 | /* |
362 | * Routine used to handle a new message that has come in. | 361 | * Routine used to handle a new message that has come in. |
363 | */ | 362 | */ |
364 | static void keyspan_irq_recv(struct urb *urb, struct pt_regs *regs) | 363 | static void keyspan_irq_recv(struct urb *urb) |
365 | { | 364 | { |
366 | struct usb_keyspan *dev = urb->context; | 365 | struct usb_keyspan *dev = urb->context; |
367 | int retval; | 366 | int retval; |
@@ -385,7 +384,7 @@ static void keyspan_irq_recv(struct urb *urb, struct pt_regs *regs) | |||
385 | if (debug) | 384 | if (debug) |
386 | keyspan_print(dev); | 385 | keyspan_print(dev); |
387 | 386 | ||
388 | keyspan_check_data(dev, regs); | 387 | keyspan_check_data(dev); |
389 | 388 | ||
390 | resubmit: | 389 | resubmit: |
391 | retval = usb_submit_urb(urb, GFP_ATOMIC); | 390 | retval = usb_submit_urb(urb, GFP_ATOMIC); |
diff --git a/drivers/usb/input/mtouchusb.c b/drivers/usb/input/mtouchusb.c index 5dce951f2751..79a85d46cb13 100644 --- a/drivers/usb/input/mtouchusb.c +++ b/drivers/usb/input/mtouchusb.c | |||
@@ -98,7 +98,7 @@ static struct usb_device_id mtouchusb_devices[] = { | |||
98 | { } | 98 | { } |
99 | }; | 99 | }; |
100 | 100 | ||
101 | static void mtouchusb_irq(struct urb *urb, struct pt_regs *regs) | 101 | static void mtouchusb_irq(struct urb *urb) |
102 | { | 102 | { |
103 | struct mtouch_usb *mtouch = urb->context; | 103 | struct mtouch_usb *mtouch = urb->context; |
104 | int retval; | 104 | int retval; |
@@ -125,7 +125,6 @@ static void mtouchusb_irq(struct urb *urb, struct pt_regs *regs) | |||
125 | goto exit; | 125 | goto exit; |
126 | } | 126 | } |
127 | 127 | ||
128 | input_regs(mtouch->input, regs); | ||
129 | input_report_key(mtouch->input, BTN_TOUCH, | 128 | input_report_key(mtouch->input, BTN_TOUCH, |
130 | MTOUCHUSB_GET_TOUCHED(mtouch->data)); | 129 | MTOUCHUSB_GET_TOUCHED(mtouch->data)); |
131 | input_report_abs(mtouch->input, ABS_X, MTOUCHUSB_GET_XC(mtouch->data)); | 130 | input_report_abs(mtouch->input, ABS_X, MTOUCHUSB_GET_XC(mtouch->data)); |
diff --git a/drivers/usb/input/powermate.c b/drivers/usb/input/powermate.c index f0f8db6810a2..0bf91778c40d 100644 --- a/drivers/usb/input/powermate.c +++ b/drivers/usb/input/powermate.c | |||
@@ -80,10 +80,10 @@ struct powermate_device { | |||
80 | static char pm_name_powermate[] = "Griffin PowerMate"; | 80 | static char pm_name_powermate[] = "Griffin PowerMate"; |
81 | static char pm_name_soundknob[] = "Griffin SoundKnob"; | 81 | static char pm_name_soundknob[] = "Griffin SoundKnob"; |
82 | 82 | ||
83 | static void powermate_config_complete(struct urb *urb, struct pt_regs *regs); | 83 | static void powermate_config_complete(struct urb *urb); |
84 | 84 | ||
85 | /* Callback for data arriving from the PowerMate over the USB interrupt pipe */ | 85 | /* Callback for data arriving from the PowerMate over the USB interrupt pipe */ |
86 | static void powermate_irq(struct urb *urb, struct pt_regs *regs) | 86 | static void powermate_irq(struct urb *urb) |
87 | { | 87 | { |
88 | struct powermate_device *pm = urb->context; | 88 | struct powermate_device *pm = urb->context; |
89 | int retval; | 89 | int retval; |
@@ -104,7 +104,6 @@ static void powermate_irq(struct urb *urb, struct pt_regs *regs) | |||
104 | } | 104 | } |
105 | 105 | ||
106 | /* handle updates to device state */ | 106 | /* handle updates to device state */ |
107 | input_regs(pm->input, regs); | ||
108 | input_report_key(pm->input, BTN_0, pm->data[0] & 0x01); | 107 | input_report_key(pm->input, BTN_0, pm->data[0] & 0x01); |
109 | input_report_rel(pm->input, REL_DIAL, pm->data[1]); | 108 | input_report_rel(pm->input, REL_DIAL, pm->data[1]); |
110 | input_sync(pm->input); | 109 | input_sync(pm->input); |
@@ -191,7 +190,7 @@ static void powermate_sync_state(struct powermate_device *pm) | |||
191 | } | 190 | } |
192 | 191 | ||
193 | /* Called when our asynchronous control message completes. We may need to issue another immediately */ | 192 | /* Called when our asynchronous control message completes. We may need to issue another immediately */ |
194 | static void powermate_config_complete(struct urb *urb, struct pt_regs *regs) | 193 | static void powermate_config_complete(struct urb *urb) |
195 | { | 194 | { |
196 | struct powermate_device *pm = urb->context; | 195 | struct powermate_device *pm = urb->context; |
197 | unsigned long flags; | 196 | unsigned long flags; |
diff --git a/drivers/usb/input/touchkitusb.c b/drivers/usb/input/touchkitusb.c index 30b9f820e7a8..05c0d1ca39ab 100644 --- a/drivers/usb/input/touchkitusb.c +++ b/drivers/usb/input/touchkitusb.c | |||
@@ -92,8 +92,7 @@ static inline int touchkit_get_y(char *data) | |||
92 | 92 | ||
93 | 93 | ||
94 | /* processes one input packet. */ | 94 | /* processes one input packet. */ |
95 | static void touchkit_process_pkt(struct touchkit_usb *touchkit, | 95 | static void touchkit_process_pkt(struct touchkit_usb *touchkit, char *pkt) |
96 | struct pt_regs *regs, char *pkt) | ||
97 | { | 96 | { |
98 | int x, y; | 97 | int x, y; |
99 | 98 | ||
@@ -109,7 +108,6 @@ static void touchkit_process_pkt(struct touchkit_usb *touchkit, | |||
109 | y = touchkit_get_y(pkt); | 108 | y = touchkit_get_y(pkt); |
110 | } | 109 | } |
111 | 110 | ||
112 | input_regs(touchkit->input, regs); | ||
113 | input_report_key(touchkit->input, BTN_TOUCH, touchkit_get_touched(pkt)); | 111 | input_report_key(touchkit->input, BTN_TOUCH, touchkit_get_touched(pkt)); |
114 | input_report_abs(touchkit->input, ABS_X, x); | 112 | input_report_abs(touchkit->input, ABS_X, x); |
115 | input_report_abs(touchkit->input, ABS_Y, y); | 113 | input_report_abs(touchkit->input, ABS_Y, y); |
@@ -130,8 +128,7 @@ static int touchkit_get_pkt_len(char *buf) | |||
130 | return 0; | 128 | return 0; |
131 | } | 129 | } |
132 | 130 | ||
133 | static void touchkit_process(struct touchkit_usb *touchkit, int len, | 131 | static void touchkit_process(struct touchkit_usb *touchkit, int len) |
134 | struct pt_regs *regs) | ||
135 | { | 132 | { |
136 | char *buffer; | 133 | char *buffer; |
137 | int pkt_len, buf_len, pos; | 134 | int pkt_len, buf_len, pos; |
@@ -153,7 +150,7 @@ static void touchkit_process(struct touchkit_usb *touchkit, int len, | |||
153 | /* append, process */ | 150 | /* append, process */ |
154 | tmp = pkt_len - touchkit->buf_len; | 151 | tmp = pkt_len - touchkit->buf_len; |
155 | memcpy(touchkit->buffer + touchkit->buf_len, touchkit->data, tmp); | 152 | memcpy(touchkit->buffer + touchkit->buf_len, touchkit->data, tmp); |
156 | touchkit_process_pkt(touchkit, regs, touchkit->buffer); | 153 | touchkit_process_pkt(touchkit, touchkit->buffer); |
157 | 154 | ||
158 | buffer = touchkit->data + tmp; | 155 | buffer = touchkit->data + tmp; |
159 | buf_len = len - tmp; | 156 | buf_len = len - tmp; |
@@ -181,7 +178,7 @@ static void touchkit_process(struct touchkit_usb *touchkit, int len, | |||
181 | 178 | ||
182 | /* full packet: process */ | 179 | /* full packet: process */ |
183 | if (likely(pkt_len <= buf_len)) { | 180 | if (likely(pkt_len <= buf_len)) { |
184 | touchkit_process_pkt(touchkit, regs, buffer + pos); | 181 | touchkit_process_pkt(touchkit, buffer + pos); |
185 | } else { | 182 | } else { |
186 | /* incomplete packet: save in buffer */ | 183 | /* incomplete packet: save in buffer */ |
187 | memcpy(touchkit->buffer, buffer + pos, buf_len - pos); | 184 | memcpy(touchkit->buffer, buffer + pos, buf_len - pos); |
@@ -192,7 +189,7 @@ static void touchkit_process(struct touchkit_usb *touchkit, int len, | |||
192 | } | 189 | } |
193 | 190 | ||
194 | 191 | ||
195 | static void touchkit_irq(struct urb *urb, struct pt_regs *regs) | 192 | static void touchkit_irq(struct urb *urb) |
196 | { | 193 | { |
197 | struct touchkit_usb *touchkit = urb->context; | 194 | struct touchkit_usb *touchkit = urb->context; |
198 | int retval; | 195 | int retval; |
@@ -219,7 +216,7 @@ static void touchkit_irq(struct urb *urb, struct pt_regs *regs) | |||
219 | goto exit; | 216 | goto exit; |
220 | } | 217 | } |
221 | 218 | ||
222 | touchkit_process(touchkit, urb->actual_length, regs); | 219 | touchkit_process(touchkit, urb->actual_length); |
223 | 220 | ||
224 | exit: | 221 | exit: |
225 | retval = usb_submit_urb(urb, GFP_ATOMIC); | 222 | retval = usb_submit_urb(urb, GFP_ATOMIC); |
diff --git a/drivers/usb/input/usbkbd.c b/drivers/usb/input/usbkbd.c index 5067a6ae650f..c73285cf8558 100644 --- a/drivers/usb/input/usbkbd.c +++ b/drivers/usb/input/usbkbd.c | |||
@@ -80,7 +80,7 @@ struct usb_kbd { | |||
80 | dma_addr_t leds_dma; | 80 | dma_addr_t leds_dma; |
81 | }; | 81 | }; |
82 | 82 | ||
83 | static void usb_kbd_irq(struct urb *urb, struct pt_regs *regs) | 83 | static void usb_kbd_irq(struct urb *urb) |
84 | { | 84 | { |
85 | struct usb_kbd *kbd = urb->context; | 85 | struct usb_kbd *kbd = urb->context; |
86 | int i; | 86 | int i; |
@@ -97,8 +97,6 @@ static void usb_kbd_irq(struct urb *urb, struct pt_regs *regs) | |||
97 | goto resubmit; | 97 | goto resubmit; |
98 | } | 98 | } |
99 | 99 | ||
100 | input_regs(kbd->dev, regs); | ||
101 | |||
102 | for (i = 0; i < 8; i++) | 100 | for (i = 0; i < 8; i++) |
103 | input_report_key(kbd->dev, usb_kbd_keycode[i + 224], (kbd->new[0] >> i) & 1); | 101 | input_report_key(kbd->dev, usb_kbd_keycode[i + 224], (kbd->new[0] >> i) & 1); |
104 | 102 | ||
@@ -158,7 +156,7 @@ static int usb_kbd_event(struct input_dev *dev, unsigned int type, | |||
158 | return 0; | 156 | return 0; |
159 | } | 157 | } |
160 | 158 | ||
161 | static void usb_kbd_led(struct urb *urb, struct pt_regs *regs) | 159 | static void usb_kbd_led(struct urb *urb) |
162 | { | 160 | { |
163 | struct usb_kbd *kbd = urb->context; | 161 | struct usb_kbd *kbd = urb->context; |
164 | 162 | ||
diff --git a/drivers/usb/input/usbmouse.c b/drivers/usb/input/usbmouse.c index 0fb792be95ef..cbbbea332ed7 100644 --- a/drivers/usb/input/usbmouse.c +++ b/drivers/usb/input/usbmouse.c | |||
@@ -55,7 +55,7 @@ struct usb_mouse { | |||
55 | dma_addr_t data_dma; | 55 | dma_addr_t data_dma; |
56 | }; | 56 | }; |
57 | 57 | ||
58 | static void usb_mouse_irq(struct urb *urb, struct pt_regs *regs) | 58 | static void usb_mouse_irq(struct urb *urb) |
59 | { | 59 | { |
60 | struct usb_mouse *mouse = urb->context; | 60 | struct usb_mouse *mouse = urb->context; |
61 | signed char *data = mouse->data; | 61 | signed char *data = mouse->data; |
@@ -74,8 +74,6 @@ static void usb_mouse_irq(struct urb *urb, struct pt_regs *regs) | |||
74 | goto resubmit; | 74 | goto resubmit; |
75 | } | 75 | } |
76 | 76 | ||
77 | input_regs(dev, regs); | ||
78 | |||
79 | input_report_key(dev, BTN_LEFT, data[0] & 0x01); | 77 | input_report_key(dev, BTN_LEFT, data[0] & 0x01); |
80 | input_report_key(dev, BTN_RIGHT, data[0] & 0x02); | 78 | input_report_key(dev, BTN_RIGHT, data[0] & 0x02); |
81 | input_report_key(dev, BTN_MIDDLE, data[0] & 0x04); | 79 | input_report_key(dev, BTN_MIDDLE, data[0] & 0x04); |
diff --git a/drivers/usb/input/usbtouchscreen.c b/drivers/usb/input/usbtouchscreen.c index 923e22db18d4..f26c1cd1129f 100644 --- a/drivers/usb/input/usbtouchscreen.c +++ b/drivers/usb/input/usbtouchscreen.c | |||
@@ -61,7 +61,7 @@ struct usbtouch_device_info { | |||
61 | int rept_size; | 61 | int rept_size; |
62 | int flags; | 62 | int flags; |
63 | 63 | ||
64 | void (*process_pkt) (struct usbtouch_usb *usbtouch, struct pt_regs *regs, unsigned char *pkt, int len); | 64 | void (*process_pkt) (struct usbtouch_usb *usbtouch, unsigned char *pkt, int len); |
65 | int (*get_pkt_len) (unsigned char *pkt, int len); | 65 | int (*get_pkt_len) (unsigned char *pkt, int len); |
66 | int (*read_data) (unsigned char *pkt, int *x, int *y, int *touch, int *press); | 66 | int (*read_data) (unsigned char *pkt, int *x, int *y, int *touch, int *press); |
67 | int (*init) (struct usbtouch_usb *usbtouch); | 67 | int (*init) (struct usbtouch_usb *usbtouch); |
@@ -91,7 +91,6 @@ struct usbtouch_usb { | |||
91 | 91 | ||
92 | #ifdef MULTI_PACKET | 92 | #ifdef MULTI_PACKET |
93 | static void usbtouch_process_multi(struct usbtouch_usb *usbtouch, | 93 | static void usbtouch_process_multi(struct usbtouch_usb *usbtouch, |
94 | struct pt_regs *regs, | ||
95 | unsigned char *pkt, int len); | 94 | unsigned char *pkt, int len); |
96 | #endif | 95 | #endif |
97 | 96 | ||
@@ -397,7 +396,7 @@ static struct usbtouch_device_info usbtouch_dev_info[] = { | |||
397 | * Generic Part | 396 | * Generic Part |
398 | */ | 397 | */ |
399 | static void usbtouch_process_pkt(struct usbtouch_usb *usbtouch, | 398 | static void usbtouch_process_pkt(struct usbtouch_usb *usbtouch, |
400 | struct pt_regs *regs, unsigned char *pkt, int len) | 399 | unsigned char *pkt, int len) |
401 | { | 400 | { |
402 | int x, y, touch, press; | 401 | int x, y, touch, press; |
403 | struct usbtouch_device_info *type = usbtouch->type; | 402 | struct usbtouch_device_info *type = usbtouch->type; |
@@ -405,7 +404,6 @@ static void usbtouch_process_pkt(struct usbtouch_usb *usbtouch, | |||
405 | if (!type->read_data(pkt, &x, &y, &touch, &press)) | 404 | if (!type->read_data(pkt, &x, &y, &touch, &press)) |
406 | return; | 405 | return; |
407 | 406 | ||
408 | input_regs(usbtouch->input, regs); | ||
409 | input_report_key(usbtouch->input, BTN_TOUCH, touch); | 407 | input_report_key(usbtouch->input, BTN_TOUCH, touch); |
410 | 408 | ||
411 | if (swap_xy) { | 409 | if (swap_xy) { |
@@ -423,7 +421,6 @@ static void usbtouch_process_pkt(struct usbtouch_usb *usbtouch, | |||
423 | 421 | ||
424 | #ifdef MULTI_PACKET | 422 | #ifdef MULTI_PACKET |
425 | static void usbtouch_process_multi(struct usbtouch_usb *usbtouch, | 423 | static void usbtouch_process_multi(struct usbtouch_usb *usbtouch, |
426 | struct pt_regs *regs, | ||
427 | unsigned char *pkt, int len) | 424 | unsigned char *pkt, int len) |
428 | { | 425 | { |
429 | unsigned char *buffer; | 426 | unsigned char *buffer; |
@@ -460,7 +457,7 @@ static void usbtouch_process_multi(struct usbtouch_usb *usbtouch, | |||
460 | if (usbtouch->buf_len + tmp >= usbtouch->type->rept_size) | 457 | if (usbtouch->buf_len + tmp >= usbtouch->type->rept_size) |
461 | goto out_flush_buf; | 458 | goto out_flush_buf; |
462 | memcpy(usbtouch->buffer + usbtouch->buf_len, pkt, tmp); | 459 | memcpy(usbtouch->buffer + usbtouch->buf_len, pkt, tmp); |
463 | usbtouch_process_pkt(usbtouch, regs, usbtouch->buffer, pkt_len); | 460 | usbtouch_process_pkt(usbtouch, usbtouch->buffer, pkt_len); |
464 | 461 | ||
465 | buffer = pkt + tmp; | 462 | buffer = pkt + tmp; |
466 | buf_len = len - tmp; | 463 | buf_len = len - tmp; |
@@ -481,7 +478,7 @@ static void usbtouch_process_multi(struct usbtouch_usb *usbtouch, | |||
481 | 478 | ||
482 | /* full packet: process */ | 479 | /* full packet: process */ |
483 | if (likely((pkt_len > 0) && (pkt_len <= buf_len - pos))) { | 480 | if (likely((pkt_len > 0) && (pkt_len <= buf_len - pos))) { |
484 | usbtouch_process_pkt(usbtouch, regs, buffer + pos, pkt_len); | 481 | usbtouch_process_pkt(usbtouch, buffer + pos, pkt_len); |
485 | } else { | 482 | } else { |
486 | /* incomplete packet: save in buffer */ | 483 | /* incomplete packet: save in buffer */ |
487 | memcpy(usbtouch->buffer, buffer + pos, buf_len - pos); | 484 | memcpy(usbtouch->buffer, buffer + pos, buf_len - pos); |
@@ -498,7 +495,7 @@ out_flush_buf: | |||
498 | #endif | 495 | #endif |
499 | 496 | ||
500 | 497 | ||
501 | static void usbtouch_irq(struct urb *urb, struct pt_regs *regs) | 498 | static void usbtouch_irq(struct urb *urb) |
502 | { | 499 | { |
503 | struct usbtouch_usb *usbtouch = urb->context; | 500 | struct usbtouch_usb *usbtouch = urb->context; |
504 | int retval; | 501 | int retval; |
@@ -525,7 +522,7 @@ static void usbtouch_irq(struct urb *urb, struct pt_regs *regs) | |||
525 | goto exit; | 522 | goto exit; |
526 | } | 523 | } |
527 | 524 | ||
528 | usbtouch->type->process_pkt(usbtouch, regs, usbtouch->data, urb->actual_length); | 525 | usbtouch->type->process_pkt(usbtouch, usbtouch->data, urb->actual_length); |
529 | 526 | ||
530 | exit: | 527 | exit: |
531 | retval = usb_submit_urb(urb, GFP_ATOMIC); | 528 | retval = usb_submit_urb(urb, GFP_ATOMIC); |
diff --git a/drivers/usb/input/wacom.h b/drivers/usb/input/wacom.h index 832737b658cf..7b3840e378a8 100644 --- a/drivers/usb/input/wacom.h +++ b/drivers/usb/input/wacom.h | |||
@@ -106,16 +106,14 @@ struct wacom { | |||
106 | struct wacom_combo { | 106 | struct wacom_combo { |
107 | struct wacom * wacom; | 107 | struct wacom * wacom; |
108 | struct urb * urb; | 108 | struct urb * urb; |
109 | struct pt_regs *regs; | ||
110 | }; | 109 | }; |
111 | 110 | ||
112 | extern int wacom_wac_irq(struct wacom_wac * wacom_wac, void * wcombo); | 111 | extern int wacom_wac_irq(struct wacom_wac * wacom_wac, void * wcombo); |
113 | extern void wacom_sys_irq(struct urb *urb, struct pt_regs *regs); | 112 | extern void wacom_sys_irq(struct urb *urb); |
114 | extern void wacom_report_abs(void *wcombo, unsigned int abs_type, int abs_data); | 113 | extern void wacom_report_abs(void *wcombo, unsigned int abs_type, int abs_data); |
115 | extern void wacom_report_rel(void *wcombo, unsigned int rel_type, int rel_data); | 114 | extern void wacom_report_rel(void *wcombo, unsigned int rel_type, int rel_data); |
116 | extern void wacom_report_key(void *wcombo, unsigned int key_type, int key_data); | 115 | extern void wacom_report_key(void *wcombo, unsigned int key_type, int key_data); |
117 | extern void wacom_input_event(void *wcombo, unsigned int type, unsigned int code, int value); | 116 | extern void wacom_input_event(void *wcombo, unsigned int type, unsigned int code, int value); |
118 | extern void wacom_input_regs(void *wcombo); | ||
119 | extern void wacom_input_sync(void *wcombo); | 117 | extern void wacom_input_sync(void *wcombo); |
120 | extern void wacom_init_input_dev(struct input_dev *input_dev, struct wacom_wac *wacom_wac); | 118 | extern void wacom_init_input_dev(struct input_dev *input_dev, struct wacom_wac *wacom_wac); |
121 | extern void input_dev_g4(struct input_dev *input_dev, struct wacom_wac *wacom_wac); | 119 | extern void input_dev_g4(struct input_dev *input_dev, struct wacom_wac *wacom_wac); |
diff --git a/drivers/usb/input/wacom_sys.c b/drivers/usb/input/wacom_sys.c index 7c3b52bdd9d6..d233c37bd533 100644 --- a/drivers/usb/input/wacom_sys.c +++ b/drivers/usb/input/wacom_sys.c | |||
@@ -42,7 +42,7 @@ static struct input_dev * get_input_dev(struct wacom_combo *wcombo) | |||
42 | return wcombo->wacom->dev; | 42 | return wcombo->wacom->dev; |
43 | } | 43 | } |
44 | 44 | ||
45 | void wacom_sys_irq(struct urb *urb, struct pt_regs *regs) | 45 | void wacom_sys_irq(struct urb *urb) |
46 | { | 46 | { |
47 | struct wacom *wacom = urb->context; | 47 | struct wacom *wacom = urb->context; |
48 | struct wacom_combo wcombo; | 48 | struct wacom_combo wcombo; |
@@ -65,7 +65,6 @@ void wacom_sys_irq(struct urb *urb, struct pt_regs *regs) | |||
65 | 65 | ||
66 | wcombo.wacom = wacom; | 66 | wcombo.wacom = wacom; |
67 | wcombo.urb = urb; | 67 | wcombo.urb = urb; |
68 | wcombo.regs = regs; | ||
69 | 68 | ||
70 | if (wacom_wac_irq(wacom->wacom_wac, (void *)&wcombo)) | 69 | if (wacom_wac_irq(wacom->wacom_wac, (void *)&wcombo)) |
71 | input_sync(get_input_dev(&wcombo)); | 70 | input_sync(get_input_dev(&wcombo)); |
@@ -115,12 +114,6 @@ __u16 wacom_le16_to_cpu(unsigned char *data) | |||
115 | return value; | 114 | return value; |
116 | } | 115 | } |
117 | 116 | ||
118 | void wacom_input_regs(void *wcombo) | ||
119 | { | ||
120 | input_regs(get_input_dev((struct wacom_combo *)wcombo), ((struct wacom_combo *)wcombo)->regs); | ||
121 | return; | ||
122 | } | ||
123 | |||
124 | void wacom_input_sync(void *wcombo) | 117 | void wacom_input_sync(void *wcombo) |
125 | { | 118 | { |
126 | input_sync(get_input_dev((struct wacom_combo *)wcombo)); | 119 | input_sync(get_input_dev((struct wacom_combo *)wcombo)); |
diff --git a/drivers/usb/input/wacom_wac.c b/drivers/usb/input/wacom_wac.c index 85d458c98b6e..aa31d22d4f05 100644 --- a/drivers/usb/input/wacom_wac.c +++ b/drivers/usb/input/wacom_wac.c | |||
@@ -20,7 +20,6 @@ static int wacom_penpartner_irq(struct wacom_wac *wacom, void *wcombo) | |||
20 | 20 | ||
21 | switch (data[0]) { | 21 | switch (data[0]) { |
22 | case 1: | 22 | case 1: |
23 | wacom_input_regs(wcombo); | ||
24 | if (data[5] & 0x80) { | 23 | if (data[5] & 0x80) { |
25 | wacom->tool[0] = (data[5] & 0x20) ? BTN_TOOL_RUBBER : BTN_TOOL_PEN; | 24 | wacom->tool[0] = (data[5] & 0x20) ? BTN_TOOL_RUBBER : BTN_TOOL_PEN; |
26 | wacom->id[0] = (data[5] & 0x20) ? ERASER_DEVICE_ID : STYLUS_DEVICE_ID; | 25 | wacom->id[0] = (data[5] & 0x20) ? ERASER_DEVICE_ID : STYLUS_DEVICE_ID; |
@@ -39,7 +38,6 @@ static int wacom_penpartner_irq(struct wacom_wac *wacom, void *wcombo) | |||
39 | } | 38 | } |
40 | break; | 39 | break; |
41 | case 2: | 40 | case 2: |
42 | wacom_input_regs(wcombo); | ||
43 | wacom_report_key(wcombo, BTN_TOOL_PEN, 1); | 41 | wacom_report_key(wcombo, BTN_TOOL_PEN, 1); |
44 | wacom_report_abs(wcombo, ABS_MISC, STYLUS_DEVICE_ID); /* report tool id */ | 42 | wacom_report_abs(wcombo, ABS_MISC, STYLUS_DEVICE_ID); /* report tool id */ |
45 | wacom_report_abs(wcombo, ABS_X, wacom_le16_to_cpu(&data[1])); | 43 | wacom_report_abs(wcombo, ABS_X, wacom_le16_to_cpu(&data[1])); |
@@ -67,8 +65,6 @@ static int wacom_pl_irq(struct wacom_wac *wacom, void *wcombo) | |||
67 | 65 | ||
68 | prox = data[1] & 0x40; | 66 | prox = data[1] & 0x40; |
69 | 67 | ||
70 | wacom_input_regs(wcombo); | ||
71 | |||
72 | id = ERASER_DEVICE_ID; | 68 | id = ERASER_DEVICE_ID; |
73 | if (prox) { | 69 | if (prox) { |
74 | 70 | ||
@@ -138,7 +134,6 @@ static int wacom_ptu_irq(struct wacom_wac *wacom, void *wcombo) | |||
138 | return 0; | 134 | return 0; |
139 | } | 135 | } |
140 | 136 | ||
141 | wacom_input_regs(wcombo); | ||
142 | if (data[1] & 0x04) { | 137 | if (data[1] & 0x04) { |
143 | wacom_report_key(wcombo, BTN_TOOL_RUBBER, data[1] & 0x20); | 138 | wacom_report_key(wcombo, BTN_TOOL_RUBBER, data[1] & 0x20); |
144 | wacom_report_key(wcombo, BTN_TOUCH, data[1] & 0x08); | 139 | wacom_report_key(wcombo, BTN_TOUCH, data[1] & 0x08); |
@@ -167,8 +162,6 @@ static int wacom_graphire_irq(struct wacom_wac *wacom, void *wcombo) | |||
167 | return 0; | 162 | return 0; |
168 | } | 163 | } |
169 | 164 | ||
170 | wacom_input_regs(wcombo); | ||
171 | |||
172 | id = STYLUS_DEVICE_ID; | 165 | id = STYLUS_DEVICE_ID; |
173 | if (data[1] & 0x10) { /* in prox */ | 166 | if (data[1] & 0x10) { /* in prox */ |
174 | 167 | ||
@@ -369,8 +362,6 @@ static int wacom_intuos_irq(struct wacom_wac *wacom, void *wcombo) | |||
369 | return 0; | 362 | return 0; |
370 | } | 363 | } |
371 | 364 | ||
372 | wacom_input_regs(wcombo); | ||
373 | |||
374 | /* tool number */ | 365 | /* tool number */ |
375 | idx = data[1] & 0x01; | 366 | idx = data[1] & 0x01; |
376 | 367 | ||
diff --git a/drivers/usb/input/xpad.c b/drivers/usb/input/xpad.c index 9889b1cda05b..cebb6c463bfb 100644 --- a/drivers/usb/input/xpad.c +++ b/drivers/usb/input/xpad.c | |||
@@ -120,12 +120,10 @@ struct usb_xpad { | |||
120 | * http://euc.jp/periphs/xbox-controller.ja.html | 120 | * http://euc.jp/periphs/xbox-controller.ja.html |
121 | */ | 121 | */ |
122 | 122 | ||
123 | static void xpad_process_packet(struct usb_xpad *xpad, u16 cmd, unsigned char *data, struct pt_regs *regs) | 123 | static void xpad_process_packet(struct usb_xpad *xpad, u16 cmd, unsigned char *data) |
124 | { | 124 | { |
125 | struct input_dev *dev = xpad->dev; | 125 | struct input_dev *dev = xpad->dev; |
126 | 126 | ||
127 | input_regs(dev, regs); | ||
128 | |||
129 | /* left stick */ | 127 | /* left stick */ |
130 | input_report_abs(dev, ABS_X, (__s16) (((__s16)data[13] << 8) | data[12])); | 128 | input_report_abs(dev, ABS_X, (__s16) (((__s16)data[13] << 8) | data[12])); |
131 | input_report_abs(dev, ABS_Y, (__s16) (((__s16)data[15] << 8) | data[14])); | 129 | input_report_abs(dev, ABS_Y, (__s16) (((__s16)data[15] << 8) | data[14])); |
@@ -161,7 +159,7 @@ static void xpad_process_packet(struct usb_xpad *xpad, u16 cmd, unsigned char *d | |||
161 | input_sync(dev); | 159 | input_sync(dev); |
162 | } | 160 | } |
163 | 161 | ||
164 | static void xpad_irq_in(struct urb *urb, struct pt_regs *regs) | 162 | static void xpad_irq_in(struct urb *urb) |
165 | { | 163 | { |
166 | struct usb_xpad *xpad = urb->context; | 164 | struct usb_xpad *xpad = urb->context; |
167 | int retval; | 165 | int retval; |
@@ -181,7 +179,7 @@ static void xpad_irq_in(struct urb *urb, struct pt_regs *regs) | |||
181 | goto exit; | 179 | goto exit; |
182 | } | 180 | } |
183 | 181 | ||
184 | xpad_process_packet(xpad, 0, xpad->idata, regs); | 182 | xpad_process_packet(xpad, 0, xpad->idata); |
185 | 183 | ||
186 | exit: | 184 | exit: |
187 | retval = usb_submit_urb (urb, GFP_ATOMIC); | 185 | retval = usb_submit_urb (urb, GFP_ATOMIC); |
diff --git a/drivers/usb/input/yealink.c b/drivers/usb/input/yealink.c index 7291e7a2717b..905bf6398257 100644 --- a/drivers/usb/input/yealink.c +++ b/drivers/usb/input/yealink.c | |||
@@ -233,11 +233,10 @@ static int map_p1k_to_key(int scancode) | |||
233 | * | 233 | * |
234 | * The key parameter can be cascaded: key2 << 8 | key1 | 234 | * The key parameter can be cascaded: key2 << 8 | key1 |
235 | */ | 235 | */ |
236 | static void report_key(struct yealink_dev *yld, int key, struct pt_regs *regs) | 236 | static void report_key(struct yealink_dev *yld, int key) |
237 | { | 237 | { |
238 | struct input_dev *idev = yld->idev; | 238 | struct input_dev *idev = yld->idev; |
239 | 239 | ||
240 | input_regs(idev, regs); | ||
241 | if (yld->key_code >= 0) { | 240 | if (yld->key_code >= 0) { |
242 | /* old key up */ | 241 | /* old key up */ |
243 | input_report_key(idev, yld->key_code & 0xff, 0); | 242 | input_report_key(idev, yld->key_code & 0xff, 0); |
@@ -422,7 +421,7 @@ send_update: | |||
422 | * error,start | 421 | * error,start |
423 | * | 422 | * |
424 | */ | 423 | */ |
425 | static void urb_irq_callback(struct urb *urb, struct pt_regs *regs) | 424 | static void urb_irq_callback(struct urb *urb) |
426 | { | 425 | { |
427 | struct yealink_dev *yld = urb->context; | 426 | struct yealink_dev *yld = urb->context; |
428 | int ret; | 427 | int ret; |
@@ -439,7 +438,7 @@ static void urb_irq_callback(struct urb *urb, struct pt_regs *regs) | |||
439 | case CMD_SCANCODE: | 438 | case CMD_SCANCODE: |
440 | dbg("get scancode %x", yld->irq_data->data[0]); | 439 | dbg("get scancode %x", yld->irq_data->data[0]); |
441 | 440 | ||
442 | report_key(yld, map_p1k_to_key(yld->irq_data->data[0]), regs); | 441 | report_key(yld, map_p1k_to_key(yld->irq_data->data[0])); |
443 | break; | 442 | break; |
444 | 443 | ||
445 | default: | 444 | default: |
@@ -453,7 +452,7 @@ static void urb_irq_callback(struct urb *urb, struct pt_regs *regs) | |||
453 | err("%s - usb_submit_urb failed %d", __FUNCTION__, ret); | 452 | err("%s - usb_submit_urb failed %d", __FUNCTION__, ret); |
454 | } | 453 | } |
455 | 454 | ||
456 | static void urb_ctl_callback(struct urb *urb, struct pt_regs *regs) | 455 | static void urb_ctl_callback(struct urb *urb) |
457 | { | 456 | { |
458 | struct yealink_dev *yld = urb->context; | 457 | struct yealink_dev *yld = urb->context; |
459 | int ret; | 458 | int ret; |
diff --git a/drivers/usb/misc/adutux.c b/drivers/usb/misc/adutux.c index d3963199b6ec..aecd633fe9f6 100644 --- a/drivers/usb/misc/adutux.c +++ b/drivers/usb/misc/adutux.c | |||
@@ -177,7 +177,7 @@ static void adu_delete(struct adu_device *dev) | |||
177 | dbg(2, "%s : leave", __FUNCTION__); | 177 | dbg(2, "%s : leave", __FUNCTION__); |
178 | } | 178 | } |
179 | 179 | ||
180 | static void adu_interrupt_in_callback(struct urb *urb, struct pt_regs *regs) | 180 | static void adu_interrupt_in_callback(struct urb *urb) |
181 | { | 181 | { |
182 | struct adu_device *dev = urb->context; | 182 | struct adu_device *dev = urb->context; |
183 | 183 | ||
@@ -221,7 +221,7 @@ exit: | |||
221 | dbg(4," %s : leave, status %d", __FUNCTION__, urb->status); | 221 | dbg(4," %s : leave, status %d", __FUNCTION__, urb->status); |
222 | } | 222 | } |
223 | 223 | ||
224 | static void adu_interrupt_out_callback(struct urb *urb, struct pt_regs *regs) | 224 | static void adu_interrupt_out_callback(struct urb *urb) |
225 | { | 225 | { |
226 | struct adu_device *dev = urb->context; | 226 | struct adu_device *dev = urb->context; |
227 | 227 | ||
diff --git a/drivers/usb/misc/appledisplay.c b/drivers/usb/misc/appledisplay.c index fc6cc147996f..6b23a1def9fe 100644 --- a/drivers/usb/misc/appledisplay.c +++ b/drivers/usb/misc/appledisplay.c | |||
@@ -84,7 +84,7 @@ struct appledisplay { | |||
84 | static atomic_t count_displays = ATOMIC_INIT(0); | 84 | static atomic_t count_displays = ATOMIC_INIT(0); |
85 | static struct workqueue_struct *wq; | 85 | static struct workqueue_struct *wq; |
86 | 86 | ||
87 | static void appledisplay_complete(struct urb *urb, struct pt_regs *regs) | 87 | static void appledisplay_complete(struct urb *urb) |
88 | { | 88 | { |
89 | struct appledisplay *pdata = urb->context; | 89 | struct appledisplay *pdata = urb->context; |
90 | unsigned long flags; | 90 | unsigned long flags; |
diff --git a/drivers/usb/misc/auerswald.c b/drivers/usb/misc/auerswald.c index 4fd2110b3411..0be9d62d62ae 100644 --- a/drivers/usb/misc/auerswald.c +++ b/drivers/usb/misc/auerswald.c | |||
@@ -267,7 +267,7 @@ typedef struct | |||
267 | 267 | ||
268 | /*-------------------------------------------------------------------*/ | 268 | /*-------------------------------------------------------------------*/ |
269 | /* Forwards */ | 269 | /* Forwards */ |
270 | static void auerswald_ctrlread_complete (struct urb * urb, struct pt_regs *regs); | 270 | static void auerswald_ctrlread_complete (struct urb * urb); |
271 | static void auerswald_removeservice (pauerswald_t cp, pauerscon_t scp); | 271 | static void auerswald_removeservice (pauerswald_t cp, pauerscon_t scp); |
272 | static struct usb_driver auerswald_driver; | 272 | static struct usb_driver auerswald_driver; |
273 | 273 | ||
@@ -277,7 +277,7 @@ static struct usb_driver auerswald_driver; | |||
277 | /* -------------------------- */ | 277 | /* -------------------------- */ |
278 | 278 | ||
279 | /* completion function for chained urbs */ | 279 | /* completion function for chained urbs */ |
280 | static void auerchain_complete (struct urb * urb, struct pt_regs *regs) | 280 | static void auerchain_complete (struct urb * urb) |
281 | { | 281 | { |
282 | unsigned long flags; | 282 | unsigned long flags; |
283 | int result; | 283 | int result; |
@@ -296,7 +296,7 @@ static void auerchain_complete (struct urb * urb, struct pt_regs *regs) | |||
296 | NOTE: this function may lead to more urbs submitted into the chain. | 296 | NOTE: this function may lead to more urbs submitted into the chain. |
297 | (no chain lock at calling complete()!) | 297 | (no chain lock at calling complete()!) |
298 | acp->active != NULL is protecting us against recursion.*/ | 298 | acp->active != NULL is protecting us against recursion.*/ |
299 | urb->complete (urb, regs); | 299 | urb->complete (urb); |
300 | 300 | ||
301 | /* detach element from chain data structure */ | 301 | /* detach element from chain data structure */ |
302 | spin_lock_irqsave (&acp->lock, flags); | 302 | spin_lock_irqsave (&acp->lock, flags); |
@@ -331,7 +331,7 @@ static void auerchain_complete (struct urb * urb, struct pt_regs *regs) | |||
331 | urb->status = result; | 331 | urb->status = result; |
332 | dbg("auerchain_complete: usb_submit_urb with error code %d", result); | 332 | dbg("auerchain_complete: usb_submit_urb with error code %d", result); |
333 | /* and do error handling via *this* completion function (recursive) */ | 333 | /* and do error handling via *this* completion function (recursive) */ |
334 | auerchain_complete( urb, NULL); | 334 | auerchain_complete( urb); |
335 | } | 335 | } |
336 | } else { | 336 | } else { |
337 | /* simple return without submitting a new urb. | 337 | /* simple return without submitting a new urb. |
@@ -408,7 +408,7 @@ static int auerchain_submit_urb_list (pauerchain_t acp, struct urb * urb, int ea | |||
408 | urb->status = result; | 408 | urb->status = result; |
409 | dbg("auerchain_submit_urb: usb_submit_urb with error code %d", result); | 409 | dbg("auerchain_submit_urb: usb_submit_urb with error code %d", result); |
410 | /* and do error handling via completion function */ | 410 | /* and do error handling via completion function */ |
411 | auerchain_complete( urb, NULL); | 411 | auerchain_complete( urb); |
412 | } | 412 | } |
413 | } | 413 | } |
414 | 414 | ||
@@ -448,7 +448,7 @@ static int auerchain_unlink_urb (pauerchain_t acp, struct urb * urb) | |||
448 | spin_unlock_irqrestore (&acp->lock, flags); | 448 | spin_unlock_irqrestore (&acp->lock, flags); |
449 | dbg ("unlink waiting urb"); | 449 | dbg ("unlink waiting urb"); |
450 | urb->status = -ENOENT; | 450 | urb->status = -ENOENT; |
451 | urb->complete (urb, NULL); | 451 | urb->complete (urb); |
452 | return 0; | 452 | return 0; |
453 | } | 453 | } |
454 | } | 454 | } |
@@ -505,7 +505,7 @@ static void auerchain_unlink_all (pauerchain_t acp) | |||
505 | spin_unlock_irqrestore (&acp->lock, flags); | 505 | spin_unlock_irqrestore (&acp->lock, flags); |
506 | dbg ("unlink waiting urb"); | 506 | dbg ("unlink waiting urb"); |
507 | urbp->status = -ENOENT; | 507 | urbp->status = -ENOENT; |
508 | urbp->complete (urbp, NULL); | 508 | urbp->complete (urbp); |
509 | spin_lock_irqsave (&acp->lock, flags); | 509 | spin_lock_irqsave (&acp->lock, flags); |
510 | } | 510 | } |
511 | spin_unlock_irqrestore (&acp->lock, flags); | 511 | spin_unlock_irqrestore (&acp->lock, flags); |
@@ -591,7 +591,7 @@ ac_fail:/* free the elements */ | |||
591 | 591 | ||
592 | 592 | ||
593 | /* completion handler for synchronous chained URBs */ | 593 | /* completion handler for synchronous chained URBs */ |
594 | static void auerchain_blocking_completion (struct urb *urb, struct pt_regs *regs) | 594 | static void auerchain_blocking_completion (struct urb *urb) |
595 | { | 595 | { |
596 | pauerchain_chs_t pchs = (pauerchain_chs_t)urb->context; | 596 | pauerchain_chs_t pchs = (pauerchain_chs_t)urb->context; |
597 | pchs->done = 1; | 597 | pchs->done = 1; |
@@ -846,7 +846,7 @@ static int auerswald_status_retry (int status) | |||
846 | } | 846 | } |
847 | 847 | ||
848 | /* Completion of asynchronous write block */ | 848 | /* Completion of asynchronous write block */ |
849 | static void auerchar_ctrlwrite_complete (struct urb * urb, struct pt_regs *regs) | 849 | static void auerchar_ctrlwrite_complete (struct urb * urb) |
850 | { | 850 | { |
851 | pauerbuf_t bp = (pauerbuf_t) urb->context; | 851 | pauerbuf_t bp = (pauerbuf_t) urb->context; |
852 | pauerswald_t cp = ((pauerswald_t)((char *)(bp->list)-(unsigned long)(&((pauerswald_t)0)->bufctl))); | 852 | pauerswald_t cp = ((pauerswald_t)((char *)(bp->list)-(unsigned long)(&((pauerswald_t)0)->bufctl))); |
@@ -859,7 +859,7 @@ static void auerchar_ctrlwrite_complete (struct urb * urb, struct pt_regs *regs) | |||
859 | } | 859 | } |
860 | 860 | ||
861 | /* Completion handler for dummy retry packet */ | 861 | /* Completion handler for dummy retry packet */ |
862 | static void auerswald_ctrlread_wretcomplete (struct urb * urb, struct pt_regs *regs) | 862 | static void auerswald_ctrlread_wretcomplete (struct urb * urb) |
863 | { | 863 | { |
864 | pauerbuf_t bp = (pauerbuf_t) urb->context; | 864 | pauerbuf_t bp = (pauerbuf_t) urb->context; |
865 | pauerswald_t cp; | 865 | pauerswald_t cp; |
@@ -893,12 +893,12 @@ static void auerswald_ctrlread_wretcomplete (struct urb * urb, struct pt_regs *r | |||
893 | if (ret) { | 893 | if (ret) { |
894 | dbg ("auerswald_ctrlread_complete: nonzero result of auerchain_submit_urb_list %d", ret); | 894 | dbg ("auerswald_ctrlread_complete: nonzero result of auerchain_submit_urb_list %d", ret); |
895 | bp->urbp->status = ret; | 895 | bp->urbp->status = ret; |
896 | auerswald_ctrlread_complete (bp->urbp, NULL); | 896 | auerswald_ctrlread_complete (bp->urbp); |
897 | } | 897 | } |
898 | } | 898 | } |
899 | 899 | ||
900 | /* completion handler for receiving of control messages */ | 900 | /* completion handler for receiving of control messages */ |
901 | static void auerswald_ctrlread_complete (struct urb * urb, struct pt_regs *regs) | 901 | static void auerswald_ctrlread_complete (struct urb * urb) |
902 | { | 902 | { |
903 | unsigned int serviceid; | 903 | unsigned int serviceid; |
904 | pauerswald_t cp; | 904 | pauerswald_t cp; |
@@ -941,7 +941,7 @@ static void auerswald_ctrlread_complete (struct urb * urb, struct pt_regs *regs) | |||
941 | if (ret) { | 941 | if (ret) { |
942 | dbg ("auerswald_ctrlread_complete: nonzero result of auerchain_submit_urb_list %d", ret); | 942 | dbg ("auerswald_ctrlread_complete: nonzero result of auerchain_submit_urb_list %d", ret); |
943 | bp->urbp->status = ret; | 943 | bp->urbp->status = ret; |
944 | auerswald_ctrlread_wretcomplete (bp->urbp, regs); | 944 | auerswald_ctrlread_wretcomplete (bp->urbp); |
945 | } | 945 | } |
946 | return; | 946 | return; |
947 | } | 947 | } |
@@ -970,7 +970,7 @@ static void auerswald_ctrlread_complete (struct urb * urb, struct pt_regs *regs) | |||
970 | messages from the USB device. | 970 | messages from the USB device. |
971 | */ | 971 | */ |
972 | /* int completion handler. */ | 972 | /* int completion handler. */ |
973 | static void auerswald_int_complete (struct urb * urb, struct pt_regs *regs) | 973 | static void auerswald_int_complete (struct urb * urb) |
974 | { | 974 | { |
975 | unsigned long flags; | 975 | unsigned long flags; |
976 | unsigned int channelid; | 976 | unsigned int channelid; |
@@ -1070,7 +1070,7 @@ static void auerswald_int_complete (struct urb * urb, struct pt_regs *regs) | |||
1070 | if (ret) { | 1070 | if (ret) { |
1071 | dbg ("auerswald_int_complete: nonzero result of auerchain_submit_urb %d", ret); | 1071 | dbg ("auerswald_int_complete: nonzero result of auerchain_submit_urb %d", ret); |
1072 | bp->urbp->status = ret; | 1072 | bp->urbp->status = ret; |
1073 | auerswald_ctrlread_complete( bp->urbp, NULL); | 1073 | auerswald_ctrlread_complete( bp->urbp); |
1074 | /* here applies the same problem as above: device locking! */ | 1074 | /* here applies the same problem as above: device locking! */ |
1075 | } | 1075 | } |
1076 | exit: | 1076 | exit: |
diff --git a/drivers/usb/misc/ftdi-elan.c b/drivers/usb/misc/ftdi-elan.c index c6f2f488a40f..0eb26a26115b 100644 --- a/drivers/usb/misc/ftdi-elan.c +++ b/drivers/usb/misc/ftdi-elan.c | |||
@@ -758,7 +758,7 @@ static ssize_t ftdi_elan_read(struct file *file, char __user *buffer, | |||
758 | return bytes_read; | 758 | return bytes_read; |
759 | } | 759 | } |
760 | 760 | ||
761 | static void ftdi_elan_write_bulk_callback(struct urb *urb, struct pt_regs *regs) | 761 | static void ftdi_elan_write_bulk_callback(struct urb *urb) |
762 | { | 762 | { |
763 | struct usb_ftdi *ftdi = (struct usb_ftdi *)urb->context; | 763 | struct usb_ftdi *ftdi = (struct usb_ftdi *)urb->context; |
764 | if (urb->status && !(urb->status == -ENOENT || urb->status == | 764 | if (urb->status && !(urb->status == -ENOENT || urb->status == |
diff --git a/drivers/usb/misc/ldusb.c b/drivers/usb/misc/ldusb.c index 10b640339d8d..788a11e6772f 100644 --- a/drivers/usb/misc/ldusb.c +++ b/drivers/usb/misc/ldusb.c | |||
@@ -212,7 +212,7 @@ static void ld_usb_delete(struct ld_usb *dev) | |||
212 | /** | 212 | /** |
213 | * ld_usb_interrupt_in_callback | 213 | * ld_usb_interrupt_in_callback |
214 | */ | 214 | */ |
215 | static void ld_usb_interrupt_in_callback(struct urb *urb, struct pt_regs *regs) | 215 | static void ld_usb_interrupt_in_callback(struct urb *urb) |
216 | { | 216 | { |
217 | struct ld_usb *dev = urb->context; | 217 | struct ld_usb *dev = urb->context; |
218 | size_t *actual_buffer; | 218 | size_t *actual_buffer; |
@@ -264,7 +264,7 @@ exit: | |||
264 | /** | 264 | /** |
265 | * ld_usb_interrupt_out_callback | 265 | * ld_usb_interrupt_out_callback |
266 | */ | 266 | */ |
267 | static void ld_usb_interrupt_out_callback(struct urb *urb, struct pt_regs *regs) | 267 | static void ld_usb_interrupt_out_callback(struct urb *urb) |
268 | { | 268 | { |
269 | struct ld_usb *dev = urb->context; | 269 | struct ld_usb *dev = urb->context; |
270 | 270 | ||
diff --git a/drivers/usb/misc/legousbtower.c b/drivers/usb/misc/legousbtower.c index 77c36e63c7bf..27089497e717 100644 --- a/drivers/usb/misc/legousbtower.c +++ b/drivers/usb/misc/legousbtower.c | |||
@@ -248,8 +248,8 @@ static loff_t tower_llseek (struct file *file, loff_t off, int whence); | |||
248 | 248 | ||
249 | static void tower_abort_transfers (struct lego_usb_tower *dev); | 249 | static void tower_abort_transfers (struct lego_usb_tower *dev); |
250 | static void tower_check_for_read_packet (struct lego_usb_tower *dev); | 250 | static void tower_check_for_read_packet (struct lego_usb_tower *dev); |
251 | static void tower_interrupt_in_callback (struct urb *urb, struct pt_regs *regs); | 251 | static void tower_interrupt_in_callback (struct urb *urb); |
252 | static void tower_interrupt_out_callback (struct urb *urb, struct pt_regs *regs); | 252 | static void tower_interrupt_out_callback (struct urb *urb); |
253 | 253 | ||
254 | static int tower_probe (struct usb_interface *interface, const struct usb_device_id *id); | 254 | static int tower_probe (struct usb_interface *interface, const struct usb_device_id *id); |
255 | static void tower_disconnect (struct usb_interface *interface); | 255 | static void tower_disconnect (struct usb_interface *interface); |
@@ -755,7 +755,7 @@ exit: | |||
755 | /** | 755 | /** |
756 | * tower_interrupt_in_callback | 756 | * tower_interrupt_in_callback |
757 | */ | 757 | */ |
758 | static void tower_interrupt_in_callback (struct urb *urb, struct pt_regs *regs) | 758 | static void tower_interrupt_in_callback (struct urb *urb) |
759 | { | 759 | { |
760 | struct lego_usb_tower *dev = (struct lego_usb_tower *)urb->context; | 760 | struct lego_usb_tower *dev = (struct lego_usb_tower *)urb->context; |
761 | int retval; | 761 | int retval; |
@@ -811,7 +811,7 @@ exit: | |||
811 | /** | 811 | /** |
812 | * tower_interrupt_out_callback | 812 | * tower_interrupt_out_callback |
813 | */ | 813 | */ |
814 | static void tower_interrupt_out_callback (struct urb *urb, struct pt_regs *regs) | 814 | static void tower_interrupt_out_callback (struct urb *urb) |
815 | { | 815 | { |
816 | struct lego_usb_tower *dev = (struct lego_usb_tower *)urb->context; | 816 | struct lego_usb_tower *dev = (struct lego_usb_tower *)urb->context; |
817 | 817 | ||
diff --git a/drivers/usb/misc/phidgetkit.c b/drivers/usb/misc/phidgetkit.c index 78e419904abf..abb4dcd811ac 100644 --- a/drivers/usb/misc/phidgetkit.c +++ b/drivers/usb/misc/phidgetkit.c | |||
@@ -300,7 +300,7 @@ out: | |||
300 | 300 | ||
301 | static DEVICE_ATTR(lcd, S_IWUGO, NULL, enable_lcd_files); | 301 | static DEVICE_ATTR(lcd, S_IWUGO, NULL, enable_lcd_files); |
302 | 302 | ||
303 | static void interfacekit_irq(struct urb *urb, struct pt_regs *regs) | 303 | static void interfacekit_irq(struct urb *urb) |
304 | { | 304 | { |
305 | struct interfacekit *kit = urb->context; | 305 | struct interfacekit *kit = urb->context; |
306 | unsigned char *buffer = kit->data; | 306 | unsigned char *buffer = kit->data; |
diff --git a/drivers/usb/misc/phidgetmotorcontrol.c b/drivers/usb/misc/phidgetmotorcontrol.c index 6b59b620d616..5c780cab92e0 100644 --- a/drivers/usb/misc/phidgetmotorcontrol.c +++ b/drivers/usb/misc/phidgetmotorcontrol.c | |||
@@ -90,7 +90,7 @@ static int set_motor(struct motorcontrol *mc, int motor) | |||
90 | return retval < 0 ? retval : 0; | 90 | return retval < 0 ? retval : 0; |
91 | } | 91 | } |
92 | 92 | ||
93 | static void motorcontrol_irq(struct urb *urb, struct pt_regs *regs) | 93 | static void motorcontrol_irq(struct urb *urb) |
94 | { | 94 | { |
95 | struct motorcontrol *mc = urb->context; | 95 | struct motorcontrol *mc = urb->context; |
96 | unsigned char *buffer = mc->data; | 96 | unsigned char *buffer = mc->data; |
diff --git a/drivers/usb/misc/sisusbvga/sisusb.c b/drivers/usb/misc/sisusbvga/sisusb.c index a287836e39f1..b99ca9c79821 100644 --- a/drivers/usb/misc/sisusbvga/sisusb.c +++ b/drivers/usb/misc/sisusbvga/sisusb.c | |||
@@ -209,7 +209,7 @@ sisusb_free_outbuf(struct sisusb_usb_data *sisusb, int index) | |||
209 | /* completion callback */ | 209 | /* completion callback */ |
210 | 210 | ||
211 | static void | 211 | static void |
212 | sisusb_bulk_completeout(struct urb *urb, struct pt_regs *regs) | 212 | sisusb_bulk_completeout(struct urb *urb) |
213 | { | 213 | { |
214 | struct sisusb_urb_context *context = urb->context; | 214 | struct sisusb_urb_context *context = urb->context; |
215 | struct sisusb_usb_data *sisusb; | 215 | struct sisusb_usb_data *sisusb; |
@@ -288,7 +288,7 @@ sisusb_bulkout_msg(struct sisusb_usb_data *sisusb, int index, unsigned int pipe, | |||
288 | /* completion callback */ | 288 | /* completion callback */ |
289 | 289 | ||
290 | static void | 290 | static void |
291 | sisusb_bulk_completein(struct urb *urb, struct pt_regs *regs) | 291 | sisusb_bulk_completein(struct urb *urb) |
292 | { | 292 | { |
293 | struct sisusb_usb_data *sisusb = urb->context; | 293 | struct sisusb_usb_data *sisusb = urb->context; |
294 | 294 | ||
diff --git a/drivers/usb/misc/usblcd.c b/drivers/usb/misc/usblcd.c index dbaca9f1efad..ada2ebc464ae 100644 --- a/drivers/usb/misc/usblcd.c +++ b/drivers/usb/misc/usblcd.c | |||
@@ -165,7 +165,7 @@ static int lcd_ioctl(struct inode *inode, struct file *file, unsigned int cmd, u | |||
165 | return 0; | 165 | return 0; |
166 | } | 166 | } |
167 | 167 | ||
168 | static void lcd_write_bulk_callback(struct urb *urb, struct pt_regs *regs) | 168 | static void lcd_write_bulk_callback(struct urb *urb) |
169 | { | 169 | { |
170 | struct usb_lcd *dev; | 170 | struct usb_lcd *dev; |
171 | 171 | ||
diff --git a/drivers/usb/misc/usbtest.c b/drivers/usb/misc/usbtest.c index 983e104dd452..7c2cbdf81d20 100644 --- a/drivers/usb/misc/usbtest.c +++ b/drivers/usb/misc/usbtest.c | |||
@@ -198,7 +198,7 @@ found: | |||
198 | * them with non-zero test data (or test for it) when appropriate. | 198 | * them with non-zero test data (or test for it) when appropriate. |
199 | */ | 199 | */ |
200 | 200 | ||
201 | static void simple_callback (struct urb *urb, struct pt_regs *regs) | 201 | static void simple_callback (struct urb *urb) |
202 | { | 202 | { |
203 | complete ((struct completion *) urb->context); | 203 | complete ((struct completion *) urb->context); |
204 | } | 204 | } |
@@ -730,7 +730,7 @@ struct subcase { | |||
730 | int expected; | 730 | int expected; |
731 | }; | 731 | }; |
732 | 732 | ||
733 | static void ctrl_complete (struct urb *urb, struct pt_regs *regs) | 733 | static void ctrl_complete (struct urb *urb) |
734 | { | 734 | { |
735 | struct ctrl_ctx *ctx = urb->context; | 735 | struct ctrl_ctx *ctx = urb->context; |
736 | struct usb_ctrlrequest *reqp; | 736 | struct usb_ctrlrequest *reqp; |
@@ -1035,7 +1035,7 @@ cleanup: | |||
1035 | 1035 | ||
1036 | /*-------------------------------------------------------------------------*/ | 1036 | /*-------------------------------------------------------------------------*/ |
1037 | 1037 | ||
1038 | static void unlink1_callback (struct urb *urb, struct pt_regs *regs) | 1038 | static void unlink1_callback (struct urb *urb) |
1039 | { | 1039 | { |
1040 | int status = urb->status; | 1040 | int status = urb->status; |
1041 | 1041 | ||
@@ -1343,7 +1343,7 @@ struct iso_context { | |||
1343 | struct usbtest_dev *dev; | 1343 | struct usbtest_dev *dev; |
1344 | }; | 1344 | }; |
1345 | 1345 | ||
1346 | static void iso_callback (struct urb *urb, struct pt_regs *regs) | 1346 | static void iso_callback (struct urb *urb) |
1347 | { | 1347 | { |
1348 | struct iso_context *ctx = urb->context; | 1348 | struct iso_context *ctx = urb->context; |
1349 | 1349 | ||
diff --git a/drivers/usb/misc/uss720.c b/drivers/usb/misc/uss720.c index 4081990b7d1a..7e8a0acd52ee 100644 --- a/drivers/usb/misc/uss720.c +++ b/drivers/usb/misc/uss720.c | |||
@@ -106,7 +106,7 @@ static void destroy_async(struct kref *kref) | |||
106 | 106 | ||
107 | /* --------------------------------------------------------------------- */ | 107 | /* --------------------------------------------------------------------- */ |
108 | 108 | ||
109 | static void async_complete(struct urb *urb, struct pt_regs *ptregs) | 109 | static void async_complete(struct urb *urb) |
110 | { | 110 | { |
111 | struct uss720_async_request *rq; | 111 | struct uss720_async_request *rq; |
112 | struct parport *pp; | 112 | struct parport *pp; |
@@ -127,7 +127,7 @@ static void async_complete(struct urb *urb, struct pt_regs *ptregs) | |||
127 | #endif | 127 | #endif |
128 | /* if nAck interrupts are enabled and we have an interrupt, call the interrupt procedure */ | 128 | /* if nAck interrupts are enabled and we have an interrupt, call the interrupt procedure */ |
129 | if (rq->reg[2] & rq->reg[1] & 0x10 && pp) | 129 | if (rq->reg[2] & rq->reg[1] & 0x10 && pp) |
130 | parport_generic_irq(0, pp, NULL); | 130 | parport_generic_irq(0, pp); |
131 | } | 131 | } |
132 | complete(&rq->compl); | 132 | complete(&rq->compl); |
133 | kref_put(&rq->ref_count, destroy_async); | 133 | kref_put(&rq->ref_count, destroy_async); |
diff --git a/drivers/usb/net/asix.c b/drivers/usb/net/asix.c index 9c0eacf7055c..c73dd224aa76 100644 --- a/drivers/usb/net/asix.c +++ b/drivers/usb/net/asix.c | |||
@@ -214,7 +214,7 @@ static int asix_write_cmd(struct usbnet *dev, u8 cmd, u16 value, u16 index, | |||
214 | USB_CTRL_SET_TIMEOUT); | 214 | USB_CTRL_SET_TIMEOUT); |
215 | } | 215 | } |
216 | 216 | ||
217 | static void asix_async_cmd_callback(struct urb *urb, struct pt_regs *regs) | 217 | static void asix_async_cmd_callback(struct urb *urb) |
218 | { | 218 | { |
219 | struct usb_ctrlrequest *req = (struct usb_ctrlrequest *)urb->context; | 219 | struct usb_ctrlrequest *req = (struct usb_ctrlrequest *)urb->context; |
220 | 220 | ||
diff --git a/drivers/usb/net/catc.c b/drivers/usb/net/catc.c index be5f5e142dd0..f740325abac4 100644 --- a/drivers/usb/net/catc.c +++ b/drivers/usb/net/catc.c | |||
@@ -223,7 +223,7 @@ struct catc { | |||
223 | * Receive routines. | 223 | * Receive routines. |
224 | */ | 224 | */ |
225 | 225 | ||
226 | static void catc_rx_done(struct urb *urb, struct pt_regs *regs) | 226 | static void catc_rx_done(struct urb *urb) |
227 | { | 227 | { |
228 | struct catc *catc = urb->context; | 228 | struct catc *catc = urb->context; |
229 | u8 *pkt_start = urb->transfer_buffer; | 229 | u8 *pkt_start = urb->transfer_buffer; |
@@ -289,7 +289,7 @@ static void catc_rx_done(struct urb *urb, struct pt_regs *regs) | |||
289 | } | 289 | } |
290 | } | 290 | } |
291 | 291 | ||
292 | static void catc_irq_done(struct urb *urb, struct pt_regs *regs) | 292 | static void catc_irq_done(struct urb *urb) |
293 | { | 293 | { |
294 | struct catc *catc = urb->context; | 294 | struct catc *catc = urb->context; |
295 | u8 *data = urb->transfer_buffer; | 295 | u8 *data = urb->transfer_buffer; |
@@ -376,7 +376,7 @@ static void catc_tx_run(struct catc *catc) | |||
376 | catc->netdev->trans_start = jiffies; | 376 | catc->netdev->trans_start = jiffies; |
377 | } | 377 | } |
378 | 378 | ||
379 | static void catc_tx_done(struct urb *urb, struct pt_regs *regs) | 379 | static void catc_tx_done(struct urb *urb) |
380 | { | 380 | { |
381 | struct catc *catc = urb->context; | 381 | struct catc *catc = urb->context; |
382 | unsigned long flags; | 382 | unsigned long flags; |
@@ -486,7 +486,7 @@ static void catc_ctrl_run(struct catc *catc) | |||
486 | err("submit(ctrl_urb) status %d", status); | 486 | err("submit(ctrl_urb) status %d", status); |
487 | } | 487 | } |
488 | 488 | ||
489 | static void catc_ctrl_done(struct urb *urb, struct pt_regs *regs) | 489 | static void catc_ctrl_done(struct urb *urb) |
490 | { | 490 | { |
491 | struct catc *catc = urb->context; | 491 | struct catc *catc = urb->context; |
492 | struct ctrl_queue *q; | 492 | struct ctrl_queue *q; |
diff --git a/drivers/usb/net/gl620a.c b/drivers/usb/net/gl620a.c index 3155f25f1d48..a3242be21959 100644 --- a/drivers/usb/net/gl620a.c +++ b/drivers/usb/net/gl620a.c | |||
@@ -106,7 +106,7 @@ static inline int gl_control_write(struct usbnet *dev, u8 request, u16 value) | |||
106 | return retval; | 106 | return retval; |
107 | } | 107 | } |
108 | 108 | ||
109 | static void gl_interrupt_complete(struct urb *urb, struct pt_regs *regs) | 109 | static void gl_interrupt_complete(struct urb *urb) |
110 | { | 110 | { |
111 | int status = urb->status; | 111 | int status = urb->status; |
112 | 112 | ||
diff --git a/drivers/usb/net/kaweth.c b/drivers/usb/net/kaweth.c index 544d41fe9b92..957d4ad316f9 100644 --- a/drivers/usb/net/kaweth.c +++ b/drivers/usb/net/kaweth.c | |||
@@ -475,7 +475,7 @@ static int kaweth_reset(struct kaweth_device *kaweth) | |||
475 | return result; | 475 | return result; |
476 | } | 476 | } |
477 | 477 | ||
478 | static void kaweth_usb_receive(struct urb *, struct pt_regs *regs); | 478 | static void kaweth_usb_receive(struct urb *); |
479 | static int kaweth_resubmit_rx_urb(struct kaweth_device *, gfp_t); | 479 | static int kaweth_resubmit_rx_urb(struct kaweth_device *, gfp_t); |
480 | 480 | ||
481 | /**************************************************************** | 481 | /**************************************************************** |
@@ -500,7 +500,7 @@ static void kaweth_resubmit_int_urb(struct kaweth_device *kaweth, gfp_t mf) | |||
500 | kaweth->dev->devpath, status); | 500 | kaweth->dev->devpath, status); |
501 | } | 501 | } |
502 | 502 | ||
503 | static void int_callback(struct urb *u, struct pt_regs *regs) | 503 | static void int_callback(struct urb *u) |
504 | { | 504 | { |
505 | struct kaweth_device *kaweth = u->context; | 505 | struct kaweth_device *kaweth = u->context; |
506 | int act_state; | 506 | int act_state; |
@@ -581,7 +581,7 @@ static void kaweth_async_set_rx_mode(struct kaweth_device *kaweth); | |||
581 | /**************************************************************** | 581 | /**************************************************************** |
582 | * kaweth_usb_receive | 582 | * kaweth_usb_receive |
583 | ****************************************************************/ | 583 | ****************************************************************/ |
584 | static void kaweth_usb_receive(struct urb *urb, struct pt_regs *regs) | 584 | static void kaweth_usb_receive(struct urb *urb) |
585 | { | 585 | { |
586 | struct kaweth_device *kaweth = urb->context; | 586 | struct kaweth_device *kaweth = urb->context; |
587 | struct net_device *net = kaweth->net; | 587 | struct net_device *net = kaweth->net; |
@@ -725,7 +725,7 @@ static struct ethtool_ops ops = { | |||
725 | /**************************************************************** | 725 | /**************************************************************** |
726 | * kaweth_usb_transmit_complete | 726 | * kaweth_usb_transmit_complete |
727 | ****************************************************************/ | 727 | ****************************************************************/ |
728 | static void kaweth_usb_transmit_complete(struct urb *urb, struct pt_regs *regs) | 728 | static void kaweth_usb_transmit_complete(struct urb *urb) |
729 | { | 729 | { |
730 | struct kaweth_device *kaweth = urb->context; | 730 | struct kaweth_device *kaweth = urb->context; |
731 | struct sk_buff *skb = kaweth->tx_skb; | 731 | struct sk_buff *skb = kaweth->tx_skb; |
@@ -1154,7 +1154,7 @@ struct usb_api_data { | |||
1154 | /*-------------------------------------------------------------------* | 1154 | /*-------------------------------------------------------------------* |
1155 | * completion handler for compatibility wrappers (sync control/bulk) * | 1155 | * completion handler for compatibility wrappers (sync control/bulk) * |
1156 | *-------------------------------------------------------------------*/ | 1156 | *-------------------------------------------------------------------*/ |
1157 | static void usb_api_blocking_completion(struct urb *urb, struct pt_regs *regs) | 1157 | static void usb_api_blocking_completion(struct urb *urb) |
1158 | { | 1158 | { |
1159 | struct usb_api_data *awd = (struct usb_api_data *)urb->context; | 1159 | struct usb_api_data *awd = (struct usb_api_data *)urb->context; |
1160 | 1160 | ||
diff --git a/drivers/usb/net/net1080.c b/drivers/usb/net/net1080.c index 301baa72bac7..ce00de8f13a1 100644 --- a/drivers/usb/net/net1080.c +++ b/drivers/usb/net/net1080.c | |||
@@ -368,7 +368,7 @@ static int net1080_check_connect(struct usbnet *dev) | |||
368 | return 0; | 368 | return 0; |
369 | } | 369 | } |
370 | 370 | ||
371 | static void nc_flush_complete(struct urb *urb, struct pt_regs *regs) | 371 | static void nc_flush_complete(struct urb *urb) |
372 | { | 372 | { |
373 | kfree(urb->context); | 373 | kfree(urb->context); |
374 | usb_free_urb(urb); | 374 | usb_free_urb(urb); |
diff --git a/drivers/usb/net/pegasus.c b/drivers/usb/net/pegasus.c index 918cf5a77c08..33abbd2176b6 100644 --- a/drivers/usb/net/pegasus.c +++ b/drivers/usb/net/pegasus.c | |||
@@ -96,7 +96,7 @@ MODULE_DEVICE_TABLE(usb, pegasus_ids); | |||
96 | 96 | ||
97 | static int update_eth_regs_async(pegasus_t *); | 97 | static int update_eth_regs_async(pegasus_t *); |
98 | /* Aargh!!! I _really_ hate such tweaks */ | 98 | /* Aargh!!! I _really_ hate such tweaks */ |
99 | static void ctrl_callback(struct urb *urb, struct pt_regs *regs) | 99 | static void ctrl_callback(struct urb *urb) |
100 | { | 100 | { |
101 | pegasus_t *pegasus = urb->context; | 101 | pegasus_t *pegasus = urb->context; |
102 | 102 | ||
@@ -605,7 +605,7 @@ static inline struct sk_buff *pull_skb(pegasus_t * pegasus) | |||
605 | return NULL; | 605 | return NULL; |
606 | } | 606 | } |
607 | 607 | ||
608 | static void read_bulk_callback(struct urb *urb, struct pt_regs *regs) | 608 | static void read_bulk_callback(struct urb *urb) |
609 | { | 609 | { |
610 | pegasus_t *pegasus = urb->context; | 610 | pegasus_t *pegasus = urb->context; |
611 | struct net_device *net; | 611 | struct net_device *net; |
@@ -764,7 +764,7 @@ done: | |||
764 | spin_unlock_irqrestore(&pegasus->rx_pool_lock, flags); | 764 | spin_unlock_irqrestore(&pegasus->rx_pool_lock, flags); |
765 | } | 765 | } |
766 | 766 | ||
767 | static void write_bulk_callback(struct urb *urb, struct pt_regs *regs) | 767 | static void write_bulk_callback(struct urb *urb) |
768 | { | 768 | { |
769 | pegasus_t *pegasus = urb->context; | 769 | pegasus_t *pegasus = urb->context; |
770 | struct net_device *net = pegasus->net; | 770 | struct net_device *net = pegasus->net; |
@@ -801,7 +801,7 @@ static void write_bulk_callback(struct urb *urb, struct pt_regs *regs) | |||
801 | netif_wake_queue(net); | 801 | netif_wake_queue(net); |
802 | } | 802 | } |
803 | 803 | ||
804 | static void intr_callback(struct urb *urb, struct pt_regs *regs) | 804 | static void intr_callback(struct urb *urb) |
805 | { | 805 | { |
806 | pegasus_t *pegasus = urb->context; | 806 | pegasus_t *pegasus = urb->context; |
807 | struct net_device *net; | 807 | struct net_device *net; |
@@ -1226,7 +1226,7 @@ static void pegasus_set_multicast(struct net_device *net) | |||
1226 | } | 1226 | } |
1227 | 1227 | ||
1228 | pegasus->flags |= ETH_REGS_CHANGE; | 1228 | pegasus->flags |= ETH_REGS_CHANGE; |
1229 | ctrl_callback(pegasus->ctrl_urb, NULL); | 1229 | ctrl_callback(pegasus->ctrl_urb); |
1230 | } | 1230 | } |
1231 | 1231 | ||
1232 | static __u8 mii_phy_probe(pegasus_t * pegasus) | 1232 | static __u8 mii_phy_probe(pegasus_t * pegasus) |
@@ -1433,11 +1433,11 @@ static int pegasus_resume (struct usb_interface *intf) | |||
1433 | if (netif_running(pegasus->net)) { | 1433 | if (netif_running(pegasus->net)) { |
1434 | pegasus->rx_urb->status = 0; | 1434 | pegasus->rx_urb->status = 0; |
1435 | pegasus->rx_urb->actual_length = 0; | 1435 | pegasus->rx_urb->actual_length = 0; |
1436 | read_bulk_callback(pegasus->rx_urb, NULL); | 1436 | read_bulk_callback(pegasus->rx_urb); |
1437 | 1437 | ||
1438 | pegasus->intr_urb->status = 0; | 1438 | pegasus->intr_urb->status = 0; |
1439 | pegasus->intr_urb->actual_length = 0; | 1439 | pegasus->intr_urb->actual_length = 0; |
1440 | intr_callback(pegasus->intr_urb, NULL); | 1440 | intr_callback(pegasus->intr_urb); |
1441 | } | 1441 | } |
1442 | queue_delayed_work(pegasus_workqueue, &pegasus->carrier_check, | 1442 | queue_delayed_work(pegasus_workqueue, &pegasus->carrier_check, |
1443 | CARRIER_CHECK_DELAY); | 1443 | CARRIER_CHECK_DELAY); |
diff --git a/drivers/usb/net/rtl8150.c b/drivers/usb/net/rtl8150.c index 2364c2099387..72171f94ded4 100644 --- a/drivers/usb/net/rtl8150.c +++ b/drivers/usb/net/rtl8150.c | |||
@@ -208,7 +208,7 @@ static int set_registers(rtl8150_t * dev, u16 indx, u16 size, void *data) | |||
208 | indx, 0, data, size, 500); | 208 | indx, 0, data, size, 500); |
209 | } | 209 | } |
210 | 210 | ||
211 | static void ctrl_callback(struct urb *urb, struct pt_regs *regs) | 211 | static void ctrl_callback(struct urb *urb) |
212 | { | 212 | { |
213 | rtl8150_t *dev; | 213 | rtl8150_t *dev; |
214 | 214 | ||
@@ -415,7 +415,7 @@ static inline struct sk_buff *pull_skb(rtl8150_t *dev) | |||
415 | return NULL; | 415 | return NULL; |
416 | } | 416 | } |
417 | 417 | ||
418 | static void read_bulk_callback(struct urb *urb, struct pt_regs *regs) | 418 | static void read_bulk_callback(struct urb *urb) |
419 | { | 419 | { |
420 | rtl8150_t *dev; | 420 | rtl8150_t *dev; |
421 | unsigned pkt_len, res; | 421 | unsigned pkt_len, res; |
@@ -525,7 +525,7 @@ tlsched: | |||
525 | tasklet_schedule(&dev->tl); | 525 | tasklet_schedule(&dev->tl); |
526 | } | 526 | } |
527 | 527 | ||
528 | static void write_bulk_callback(struct urb *urb, struct pt_regs *regs) | 528 | static void write_bulk_callback(struct urb *urb) |
529 | { | 529 | { |
530 | rtl8150_t *dev; | 530 | rtl8150_t *dev; |
531 | 531 | ||
@@ -541,7 +541,7 @@ static void write_bulk_callback(struct urb *urb, struct pt_regs *regs) | |||
541 | netif_wake_queue(dev->netdev); | 541 | netif_wake_queue(dev->netdev); |
542 | } | 542 | } |
543 | 543 | ||
544 | static void intr_callback(struct urb *urb, struct pt_regs *regs) | 544 | static void intr_callback(struct urb *urb) |
545 | { | 545 | { |
546 | rtl8150_t *dev; | 546 | rtl8150_t *dev; |
547 | __u8 *d; | 547 | __u8 *d; |
@@ -617,11 +617,11 @@ static int rtl8150_resume(struct usb_interface *intf) | |||
617 | if (netif_running(dev->netdev)) { | 617 | if (netif_running(dev->netdev)) { |
618 | dev->rx_urb->status = 0; | 618 | dev->rx_urb->status = 0; |
619 | dev->rx_urb->actual_length = 0; | 619 | dev->rx_urb->actual_length = 0; |
620 | read_bulk_callback(dev->rx_urb, NULL); | 620 | read_bulk_callback(dev->rx_urb); |
621 | 621 | ||
622 | dev->intr_urb->status = 0; | 622 | dev->intr_urb->status = 0; |
623 | dev->intr_urb->actual_length = 0; | 623 | dev->intr_urb->actual_length = 0; |
624 | intr_callback(dev->intr_urb, NULL); | 624 | intr_callback(dev->intr_urb); |
625 | } | 625 | } |
626 | return 0; | 626 | return 0; |
627 | } | 627 | } |
diff --git a/drivers/usb/net/usbnet.c b/drivers/usb/net/usbnet.c index 98a522f1e264..24bd3486ee63 100644 --- a/drivers/usb/net/usbnet.c +++ b/drivers/usb/net/usbnet.c | |||
@@ -158,7 +158,7 @@ int usbnet_get_endpoints(struct usbnet *dev, struct usb_interface *intf) | |||
158 | } | 158 | } |
159 | EXPORT_SYMBOL_GPL(usbnet_get_endpoints); | 159 | EXPORT_SYMBOL_GPL(usbnet_get_endpoints); |
160 | 160 | ||
161 | static void intr_complete (struct urb *urb, struct pt_regs *regs); | 161 | static void intr_complete (struct urb *urb); |
162 | 162 | ||
163 | static int init_status (struct usbnet *dev, struct usb_interface *intf) | 163 | static int init_status (struct usbnet *dev, struct usb_interface *intf) |
164 | { | 164 | { |
@@ -295,7 +295,7 @@ EXPORT_SYMBOL_GPL(usbnet_defer_kevent); | |||
295 | 295 | ||
296 | /*-------------------------------------------------------------------------*/ | 296 | /*-------------------------------------------------------------------------*/ |
297 | 297 | ||
298 | static void rx_complete (struct urb *urb, struct pt_regs *regs); | 298 | static void rx_complete (struct urb *urb); |
299 | 299 | ||
300 | static void rx_submit (struct usbnet *dev, struct urb *urb, gfp_t flags) | 300 | static void rx_submit (struct usbnet *dev, struct urb *urb, gfp_t flags) |
301 | { | 301 | { |
@@ -383,7 +383,7 @@ error: | |||
383 | 383 | ||
384 | /*-------------------------------------------------------------------------*/ | 384 | /*-------------------------------------------------------------------------*/ |
385 | 385 | ||
386 | static void rx_complete (struct urb *urb, struct pt_regs *regs) | 386 | static void rx_complete (struct urb *urb) |
387 | { | 387 | { |
388 | struct sk_buff *skb = (struct sk_buff *) urb->context; | 388 | struct sk_buff *skb = (struct sk_buff *) urb->context; |
389 | struct skb_data *entry = (struct skb_data *) skb->cb; | 389 | struct skb_data *entry = (struct skb_data *) skb->cb; |
@@ -467,7 +467,7 @@ block: | |||
467 | devdbg (dev, "no read resubmitted"); | 467 | devdbg (dev, "no read resubmitted"); |
468 | } | 468 | } |
469 | 469 | ||
470 | static void intr_complete (struct urb *urb, struct pt_regs *regs) | 470 | static void intr_complete (struct urb *urb) |
471 | { | 471 | { |
472 | struct usbnet *dev = urb->context; | 472 | struct usbnet *dev = urb->context; |
473 | int status = urb->status; | 473 | int status = urb->status; |
@@ -797,7 +797,7 @@ kevent (void *data) | |||
797 | 797 | ||
798 | /*-------------------------------------------------------------------------*/ | 798 | /*-------------------------------------------------------------------------*/ |
799 | 799 | ||
800 | static void tx_complete (struct urb *urb, struct pt_regs *regs) | 800 | static void tx_complete (struct urb *urb) |
801 | { | 801 | { |
802 | struct sk_buff *skb = (struct sk_buff *) urb->context; | 802 | struct sk_buff *skb = (struct sk_buff *) urb->context; |
803 | struct skb_data *entry = (struct skb_data *) skb->cb; | 803 | struct skb_data *entry = (struct skb_data *) skb->cb; |
diff --git a/drivers/usb/serial/aircable.c b/drivers/usb/serial/aircable.c index 2ccd9ded52a5..812275509137 100644 --- a/drivers/usb/serial/aircable.c +++ b/drivers/usb/serial/aircable.c | |||
@@ -403,7 +403,7 @@ static int aircable_write(struct usb_serial_port *port, | |||
403 | 403 | ||
404 | } | 404 | } |
405 | 405 | ||
406 | static void aircable_write_bulk_callback(struct urb *urb, struct pt_regs *regs) | 406 | static void aircable_write_bulk_callback(struct urb *urb) |
407 | { | 407 | { |
408 | struct usb_serial_port *port = urb->context; | 408 | struct usb_serial_port *port = urb->context; |
409 | int result; | 409 | int result; |
@@ -444,7 +444,7 @@ static void aircable_write_bulk_callback(struct urb *urb, struct pt_regs *regs) | |||
444 | aircable_send(port); | 444 | aircable_send(port); |
445 | } | 445 | } |
446 | 446 | ||
447 | static void aircable_read_bulk_callback(struct urb *urb, struct pt_regs *regs) | 447 | static void aircable_read_bulk_callback(struct urb *urb) |
448 | { | 448 | { |
449 | struct usb_serial_port *port = urb->context; | 449 | struct usb_serial_port *port = urb->context; |
450 | struct aircable_private *priv = usb_get_serial_port_data(port); | 450 | struct aircable_private *priv = usb_get_serial_port_data(port); |
diff --git a/drivers/usb/serial/airprime.c b/drivers/usb/serial/airprime.c index 6e1a84a858d4..2c19f19b255c 100644 --- a/drivers/usb/serial/airprime.c +++ b/drivers/usb/serial/airprime.c | |||
@@ -46,7 +46,7 @@ struct airprime_private { | |||
46 | struct urb *read_urbp[NUM_READ_URBS]; | 46 | struct urb *read_urbp[NUM_READ_URBS]; |
47 | }; | 47 | }; |
48 | 48 | ||
49 | static void airprime_read_bulk_callback(struct urb *urb, struct pt_regs *regs) | 49 | static void airprime_read_bulk_callback(struct urb *urb) |
50 | { | 50 | { |
51 | struct usb_serial_port *port = urb->context; | 51 | struct usb_serial_port *port = urb->context; |
52 | unsigned char *data = urb->transfer_buffer; | 52 | unsigned char *data = urb->transfer_buffer; |
@@ -80,7 +80,7 @@ static void airprime_read_bulk_callback(struct urb *urb, struct pt_regs *regs) | |||
80 | return; | 80 | return; |
81 | } | 81 | } |
82 | 82 | ||
83 | static void airprime_write_bulk_callback(struct urb *urb, struct pt_regs *regs) | 83 | static void airprime_write_bulk_callback(struct urb *urb) |
84 | { | 84 | { |
85 | struct usb_serial_port *port = urb->context; | 85 | struct usb_serial_port *port = urb->context; |
86 | struct airprime_private *priv = usb_get_serial_port_data(port); | 86 | struct airprime_private *priv = usb_get_serial_port_data(port); |
diff --git a/drivers/usb/serial/belkin_sa.c b/drivers/usb/serial/belkin_sa.c index 70ece9e01ce4..8835bb58ca9b 100644 --- a/drivers/usb/serial/belkin_sa.c +++ b/drivers/usb/serial/belkin_sa.c | |||
@@ -91,7 +91,7 @@ static int belkin_sa_startup (struct usb_serial *serial); | |||
91 | static void belkin_sa_shutdown (struct usb_serial *serial); | 91 | static void belkin_sa_shutdown (struct usb_serial *serial); |
92 | static int belkin_sa_open (struct usb_serial_port *port, struct file *filp); | 92 | static int belkin_sa_open (struct usb_serial_port *port, struct file *filp); |
93 | static void belkin_sa_close (struct usb_serial_port *port, struct file *filp); | 93 | static void belkin_sa_close (struct usb_serial_port *port, struct file *filp); |
94 | static void belkin_sa_read_int_callback (struct urb *urb, struct pt_regs *regs); | 94 | static void belkin_sa_read_int_callback (struct urb *urb); |
95 | static void belkin_sa_set_termios (struct usb_serial_port *port, struct termios * old); | 95 | static void belkin_sa_set_termios (struct usb_serial_port *port, struct termios * old); |
96 | static int belkin_sa_ioctl (struct usb_serial_port *port, struct file * file, unsigned int cmd, unsigned long arg); | 96 | static int belkin_sa_ioctl (struct usb_serial_port *port, struct file * file, unsigned int cmd, unsigned long arg); |
97 | static void belkin_sa_break_ctl (struct usb_serial_port *port, int break_state ); | 97 | static void belkin_sa_break_ctl (struct usb_serial_port *port, int break_state ); |
@@ -248,7 +248,7 @@ static void belkin_sa_close (struct usb_serial_port *port, struct file *filp) | |||
248 | } /* belkin_sa_close */ | 248 | } /* belkin_sa_close */ |
249 | 249 | ||
250 | 250 | ||
251 | static void belkin_sa_read_int_callback (struct urb *urb, struct pt_regs *regs) | 251 | static void belkin_sa_read_int_callback (struct urb *urb) |
252 | { | 252 | { |
253 | struct usb_serial_port *port = (struct usb_serial_port *)urb->context; | 253 | struct usb_serial_port *port = (struct usb_serial_port *)urb->context; |
254 | struct belkin_sa_private *priv; | 254 | struct belkin_sa_private *priv; |
diff --git a/drivers/usb/serial/cyberjack.c b/drivers/usb/serial/cyberjack.c index d954ec34b018..a63c3286caa0 100644 --- a/drivers/usb/serial/cyberjack.c +++ b/drivers/usb/serial/cyberjack.c | |||
@@ -63,9 +63,9 @@ static int cyberjack_open (struct usb_serial_port *port, struct file *filp); | |||
63 | static void cyberjack_close (struct usb_serial_port *port, struct file *filp); | 63 | static void cyberjack_close (struct usb_serial_port *port, struct file *filp); |
64 | static int cyberjack_write (struct usb_serial_port *port, const unsigned char *buf, int count); | 64 | static int cyberjack_write (struct usb_serial_port *port, const unsigned char *buf, int count); |
65 | static int cyberjack_write_room( struct usb_serial_port *port ); | 65 | static int cyberjack_write_room( struct usb_serial_port *port ); |
66 | static void cyberjack_read_int_callback (struct urb *urb, struct pt_regs *regs); | 66 | static void cyberjack_read_int_callback (struct urb *urb); |
67 | static void cyberjack_read_bulk_callback (struct urb *urb, struct pt_regs *regs); | 67 | static void cyberjack_read_bulk_callback (struct urb *urb); |
68 | static void cyberjack_write_bulk_callback (struct urb *urb, struct pt_regs *regs); | 68 | static void cyberjack_write_bulk_callback (struct urb *urb); |
69 | 69 | ||
70 | static struct usb_device_id id_table [] = { | 70 | static struct usb_device_id id_table [] = { |
71 | { USB_DEVICE(CYBERJACK_VENDOR_ID, CYBERJACK_PRODUCT_ID) }, | 71 | { USB_DEVICE(CYBERJACK_VENDOR_ID, CYBERJACK_PRODUCT_ID) }, |
@@ -299,7 +299,7 @@ static int cyberjack_write_room( struct usb_serial_port *port ) | |||
299 | return CYBERJACK_LOCAL_BUF_SIZE; | 299 | return CYBERJACK_LOCAL_BUF_SIZE; |
300 | } | 300 | } |
301 | 301 | ||
302 | static void cyberjack_read_int_callback( struct urb *urb, struct pt_regs *regs ) | 302 | static void cyberjack_read_int_callback( struct urb *urb ) |
303 | { | 303 | { |
304 | struct usb_serial_port *port = (struct usb_serial_port *)urb->context; | 304 | struct usb_serial_port *port = (struct usb_serial_port *)urb->context; |
305 | struct cyberjack_private *priv = usb_get_serial_port_data(port); | 305 | struct cyberjack_private *priv = usb_get_serial_port_data(port); |
@@ -356,7 +356,7 @@ resubmit: | |||
356 | dbg("%s - usb_submit_urb(int urb)", __FUNCTION__); | 356 | dbg("%s - usb_submit_urb(int urb)", __FUNCTION__); |
357 | } | 357 | } |
358 | 358 | ||
359 | static void cyberjack_read_bulk_callback (struct urb *urb, struct pt_regs *regs) | 359 | static void cyberjack_read_bulk_callback (struct urb *urb) |
360 | { | 360 | { |
361 | struct usb_serial_port *port = (struct usb_serial_port *)urb->context; | 361 | struct usb_serial_port *port = (struct usb_serial_port *)urb->context; |
362 | struct cyberjack_private *priv = usb_get_serial_port_data(port); | 362 | struct cyberjack_private *priv = usb_get_serial_port_data(port); |
@@ -406,7 +406,7 @@ static void cyberjack_read_bulk_callback (struct urb *urb, struct pt_regs *regs) | |||
406 | } | 406 | } |
407 | } | 407 | } |
408 | 408 | ||
409 | static void cyberjack_write_bulk_callback (struct urb *urb, struct pt_regs *regs) | 409 | static void cyberjack_write_bulk_callback (struct urb *urb) |
410 | { | 410 | { |
411 | struct usb_serial_port *port = (struct usb_serial_port *)urb->context; | 411 | struct usb_serial_port *port = (struct usb_serial_port *)urb->context; |
412 | struct cyberjack_private *priv = usb_get_serial_port_data(port); | 412 | struct cyberjack_private *priv = usb_get_serial_port_data(port); |
diff --git a/drivers/usb/serial/cypress_m8.c b/drivers/usb/serial/cypress_m8.c index e1173c1aee37..f2e89a083659 100644 --- a/drivers/usb/serial/cypress_m8.c +++ b/drivers/usb/serial/cypress_m8.c | |||
@@ -172,8 +172,8 @@ static int cypress_chars_in_buffer (struct usb_serial_port *port); | |||
172 | static void cypress_throttle (struct usb_serial_port *port); | 172 | static void cypress_throttle (struct usb_serial_port *port); |
173 | static void cypress_unthrottle (struct usb_serial_port *port); | 173 | static void cypress_unthrottle (struct usb_serial_port *port); |
174 | static void cypress_set_dead (struct usb_serial_port *port); | 174 | static void cypress_set_dead (struct usb_serial_port *port); |
175 | static void cypress_read_int_callback (struct urb *urb, struct pt_regs *regs); | 175 | static void cypress_read_int_callback (struct urb *urb); |
176 | static void cypress_write_int_callback (struct urb *urb, struct pt_regs *regs); | 176 | static void cypress_write_int_callback (struct urb *urb); |
177 | /* baud helper functions */ | 177 | /* baud helper functions */ |
178 | static int mask_to_rate (unsigned mask); | 178 | static int mask_to_rate (unsigned mask); |
179 | static unsigned rate_to_mask (int rate); | 179 | static unsigned rate_to_mask (int rate); |
@@ -1275,7 +1275,7 @@ static void cypress_unthrottle (struct usb_serial_port *port) | |||
1275 | } | 1275 | } |
1276 | 1276 | ||
1277 | 1277 | ||
1278 | static void cypress_read_int_callback(struct urb *urb, struct pt_regs *regs) | 1278 | static void cypress_read_int_callback(struct urb *urb) |
1279 | { | 1279 | { |
1280 | struct usb_serial_port *port = (struct usb_serial_port *)urb->context; | 1280 | struct usb_serial_port *port = (struct usb_serial_port *)urb->context; |
1281 | struct cypress_private *priv = usb_get_serial_port_data(port); | 1281 | struct cypress_private *priv = usb_get_serial_port_data(port); |
@@ -1426,7 +1426,7 @@ continue_read: | |||
1426 | } /* cypress_read_int_callback */ | 1426 | } /* cypress_read_int_callback */ |
1427 | 1427 | ||
1428 | 1428 | ||
1429 | static void cypress_write_int_callback(struct urb *urb, struct pt_regs *regs) | 1429 | static void cypress_write_int_callback(struct urb *urb) |
1430 | { | 1430 | { |
1431 | struct usb_serial_port *port = (struct usb_serial_port *)urb->context; | 1431 | struct usb_serial_port *port = (struct usb_serial_port *)urb->context; |
1432 | struct cypress_private *priv = usb_get_serial_port_data(port); | 1432 | struct cypress_private *priv = usb_get_serial_port_data(port); |
diff --git a/drivers/usb/serial/digi_acceleport.c b/drivers/usb/serial/digi_acceleport.c index 9b225183fc7a..bdb58100fc1d 100644 --- a/drivers/usb/serial/digi_acceleport.c +++ b/drivers/usb/serial/digi_acceleport.c | |||
@@ -456,7 +456,7 @@ static int digi_tiocmget( struct usb_serial_port *port, struct file *file ); | |||
456 | static int digi_tiocmset( struct usb_serial_port *port, struct file *file, | 456 | static int digi_tiocmset( struct usb_serial_port *port, struct file *file, |
457 | unsigned int set, unsigned int clear ); | 457 | unsigned int set, unsigned int clear ); |
458 | static int digi_write( struct usb_serial_port *port, const unsigned char *buf, int count ); | 458 | static int digi_write( struct usb_serial_port *port, const unsigned char *buf, int count ); |
459 | static void digi_write_bulk_callback( struct urb *urb, struct pt_regs *regs ); | 459 | static void digi_write_bulk_callback( struct urb *urb ); |
460 | static int digi_write_room( struct usb_serial_port *port ); | 460 | static int digi_write_room( struct usb_serial_port *port ); |
461 | static int digi_chars_in_buffer( struct usb_serial_port *port ); | 461 | static int digi_chars_in_buffer( struct usb_serial_port *port ); |
462 | static int digi_open( struct usb_serial_port *port, struct file *filp ); | 462 | static int digi_open( struct usb_serial_port *port, struct file *filp ); |
@@ -464,7 +464,7 @@ static void digi_close( struct usb_serial_port *port, struct file *filp ); | |||
464 | static int digi_startup_device( struct usb_serial *serial ); | 464 | static int digi_startup_device( struct usb_serial *serial ); |
465 | static int digi_startup( struct usb_serial *serial ); | 465 | static int digi_startup( struct usb_serial *serial ); |
466 | static void digi_shutdown( struct usb_serial *serial ); | 466 | static void digi_shutdown( struct usb_serial *serial ); |
467 | static void digi_read_bulk_callback( struct urb *urb, struct pt_regs *regs ); | 467 | static void digi_read_bulk_callback( struct urb *urb ); |
468 | static int digi_read_inb_callback( struct urb *urb ); | 468 | static int digi_read_inb_callback( struct urb *urb ); |
469 | static int digi_read_oob_callback( struct urb *urb ); | 469 | static int digi_read_oob_callback( struct urb *urb ); |
470 | 470 | ||
@@ -1336,7 +1336,7 @@ dbg( "digi_write: returning %d", ret ); | |||
1336 | } | 1336 | } |
1337 | 1337 | ||
1338 | 1338 | ||
1339 | static void digi_write_bulk_callback( struct urb *urb, struct pt_regs *regs ) | 1339 | static void digi_write_bulk_callback( struct urb *urb ) |
1340 | { | 1340 | { |
1341 | 1341 | ||
1342 | struct usb_serial_port *port = (struct usb_serial_port *)urb->context; | 1342 | struct usb_serial_port *port = (struct usb_serial_port *)urb->context; |
@@ -1754,7 +1754,7 @@ dbg( "digi_shutdown: TOP, in_interrupt()=%ld", in_interrupt() ); | |||
1754 | } | 1754 | } |
1755 | 1755 | ||
1756 | 1756 | ||
1757 | static void digi_read_bulk_callback( struct urb *urb, struct pt_regs *regs ) | 1757 | static void digi_read_bulk_callback( struct urb *urb ) |
1758 | { | 1758 | { |
1759 | 1759 | ||
1760 | struct usb_serial_port *port = (struct usb_serial_port *)urb->context; | 1760 | struct usb_serial_port *port = (struct usb_serial_port *)urb->context; |
diff --git a/drivers/usb/serial/empeg.c b/drivers/usb/serial/empeg.c index daafe405d86d..4ce10a831953 100644 --- a/drivers/usb/serial/empeg.c +++ b/drivers/usb/serial/empeg.c | |||
@@ -93,8 +93,8 @@ static int empeg_ioctl (struct usb_serial_port *port, | |||
93 | unsigned int cmd, | 93 | unsigned int cmd, |
94 | unsigned long arg); | 94 | unsigned long arg); |
95 | static void empeg_set_termios (struct usb_serial_port *port, struct termios *old_termios); | 95 | static void empeg_set_termios (struct usb_serial_port *port, struct termios *old_termios); |
96 | static void empeg_write_bulk_callback (struct urb *urb, struct pt_regs *regs); | 96 | static void empeg_write_bulk_callback (struct urb *urb); |
97 | static void empeg_read_bulk_callback (struct urb *urb, struct pt_regs *regs); | 97 | static void empeg_read_bulk_callback (struct urb *urb); |
98 | 98 | ||
99 | static struct usb_device_id id_table [] = { | 99 | static struct usb_device_id id_table [] = { |
100 | { USB_DEVICE(EMPEG_VENDOR_ID, EMPEG_PRODUCT_ID) }, | 100 | { USB_DEVICE(EMPEG_VENDOR_ID, EMPEG_PRODUCT_ID) }, |
@@ -323,7 +323,7 @@ static int empeg_chars_in_buffer (struct usb_serial_port *port) | |||
323 | } | 323 | } |
324 | 324 | ||
325 | 325 | ||
326 | static void empeg_write_bulk_callback (struct urb *urb, struct pt_regs *regs) | 326 | static void empeg_write_bulk_callback (struct urb *urb) |
327 | { | 327 | { |
328 | struct usb_serial_port *port = (struct usb_serial_port *)urb->context; | 328 | struct usb_serial_port *port = (struct usb_serial_port *)urb->context; |
329 | 329 | ||
@@ -338,7 +338,7 @@ static void empeg_write_bulk_callback (struct urb *urb, struct pt_regs *regs) | |||
338 | } | 338 | } |
339 | 339 | ||
340 | 340 | ||
341 | static void empeg_read_bulk_callback (struct urb *urb, struct pt_regs *regs) | 341 | static void empeg_read_bulk_callback (struct urb *urb) |
342 | { | 342 | { |
343 | struct usb_serial_port *port = (struct usb_serial_port *)urb->context; | 343 | struct usb_serial_port *port = (struct usb_serial_port *)urb->context; |
344 | struct tty_struct *tty; | 344 | struct tty_struct *tty; |
diff --git a/drivers/usb/serial/ftdi_sio.c b/drivers/usb/serial/ftdi_sio.c index e774a27c6c98..d3dc1a15ec6c 100644 --- a/drivers/usb/serial/ftdi_sio.c +++ b/drivers/usb/serial/ftdi_sio.c | |||
@@ -589,8 +589,8 @@ static void ftdi_close (struct usb_serial_port *port, struct file *filp); | |||
589 | static int ftdi_write (struct usb_serial_port *port, const unsigned char *buf, int count); | 589 | static int ftdi_write (struct usb_serial_port *port, const unsigned char *buf, int count); |
590 | static int ftdi_write_room (struct usb_serial_port *port); | 590 | static int ftdi_write_room (struct usb_serial_port *port); |
591 | static int ftdi_chars_in_buffer (struct usb_serial_port *port); | 591 | static int ftdi_chars_in_buffer (struct usb_serial_port *port); |
592 | static void ftdi_write_bulk_callback (struct urb *urb, struct pt_regs *regs); | 592 | static void ftdi_write_bulk_callback (struct urb *urb); |
593 | static void ftdi_read_bulk_callback (struct urb *urb, struct pt_regs *regs); | 593 | static void ftdi_read_bulk_callback (struct urb *urb); |
594 | static void ftdi_process_read (void *param); | 594 | static void ftdi_process_read (void *param); |
595 | static void ftdi_set_termios (struct usb_serial_port *port, struct termios * old); | 595 | static void ftdi_set_termios (struct usb_serial_port *port, struct termios * old); |
596 | static int ftdi_tiocmget (struct usb_serial_port *port, struct file *file); | 596 | static int ftdi_tiocmget (struct usb_serial_port *port, struct file *file); |
@@ -1508,7 +1508,7 @@ static int ftdi_write (struct usb_serial_port *port, | |||
1508 | 1508 | ||
1509 | /* This function may get called when the device is closed */ | 1509 | /* This function may get called when the device is closed */ |
1510 | 1510 | ||
1511 | static void ftdi_write_bulk_callback (struct urb *urb, struct pt_regs *regs) | 1511 | static void ftdi_write_bulk_callback (struct urb *urb) |
1512 | { | 1512 | { |
1513 | unsigned long flags; | 1513 | unsigned long flags; |
1514 | struct usb_serial_port *port = (struct usb_serial_port *)urb->context; | 1514 | struct usb_serial_port *port = (struct usb_serial_port *)urb->context; |
@@ -1591,7 +1591,7 @@ static int ftdi_chars_in_buffer (struct usb_serial_port *port) | |||
1591 | 1591 | ||
1592 | 1592 | ||
1593 | 1593 | ||
1594 | static void ftdi_read_bulk_callback (struct urb *urb, struct pt_regs *regs) | 1594 | static void ftdi_read_bulk_callback (struct urb *urb) |
1595 | { /* ftdi_read_bulk_callback */ | 1595 | { /* ftdi_read_bulk_callback */ |
1596 | struct usb_serial_port *port = (struct usb_serial_port *)urb->context; | 1596 | struct usb_serial_port *port = (struct usb_serial_port *)urb->context; |
1597 | struct tty_struct *tty; | 1597 | struct tty_struct *tty; |
diff --git a/drivers/usb/serial/garmin_gps.c b/drivers/usb/serial/garmin_gps.c index 4b1196a8b09e..4543152a9966 100644 --- a/drivers/usb/serial/garmin_gps.c +++ b/drivers/usb/serial/garmin_gps.c | |||
@@ -1031,7 +1031,7 @@ static void garmin_close (struct usb_serial_port *port, struct file * filp) | |||
1031 | } | 1031 | } |
1032 | 1032 | ||
1033 | 1033 | ||
1034 | static void garmin_write_bulk_callback (struct urb *urb, struct pt_regs *regs) | 1034 | static void garmin_write_bulk_callback (struct urb *urb) |
1035 | { | 1035 | { |
1036 | unsigned long flags; | 1036 | unsigned long flags; |
1037 | struct usb_serial_port *port = (struct usb_serial_port *)urb->context; | 1037 | struct usb_serial_port *port = (struct usb_serial_port *)urb->context; |
@@ -1274,7 +1274,7 @@ static void garmin_read_process(struct garmin_data * garmin_data_p, | |||
1274 | } | 1274 | } |
1275 | 1275 | ||
1276 | 1276 | ||
1277 | static void garmin_read_bulk_callback (struct urb *urb, struct pt_regs *regs) | 1277 | static void garmin_read_bulk_callback (struct urb *urb) |
1278 | { | 1278 | { |
1279 | unsigned long flags; | 1279 | unsigned long flags; |
1280 | struct usb_serial_port *port = (struct usb_serial_port *)urb->context; | 1280 | struct usb_serial_port *port = (struct usb_serial_port *)urb->context; |
@@ -1330,7 +1330,7 @@ static void garmin_read_bulk_callback (struct urb *urb, struct pt_regs *regs) | |||
1330 | } | 1330 | } |
1331 | 1331 | ||
1332 | 1332 | ||
1333 | static void garmin_read_int_callback (struct urb *urb, struct pt_regs *regs) | 1333 | static void garmin_read_int_callback (struct urb *urb) |
1334 | { | 1334 | { |
1335 | unsigned long flags; | 1335 | unsigned long flags; |
1336 | int status; | 1336 | int status; |
diff --git a/drivers/usb/serial/generic.c b/drivers/usb/serial/generic.c index 21cbaa0fb96b..36042937e77f 100644 --- a/drivers/usb/serial/generic.c +++ b/drivers/usb/serial/generic.c | |||
@@ -248,7 +248,7 @@ int usb_serial_generic_chars_in_buffer (struct usb_serial_port *port) | |||
248 | return (chars); | 248 | return (chars); |
249 | } | 249 | } |
250 | 250 | ||
251 | void usb_serial_generic_read_bulk_callback (struct urb *urb, struct pt_regs *regs) | 251 | void usb_serial_generic_read_bulk_callback (struct urb *urb) |
252 | { | 252 | { |
253 | struct usb_serial_port *port = (struct usb_serial_port *)urb->context; | 253 | struct usb_serial_port *port = (struct usb_serial_port *)urb->context; |
254 | struct usb_serial *serial = port->serial; | 254 | struct usb_serial *serial = port->serial; |
@@ -287,7 +287,7 @@ void usb_serial_generic_read_bulk_callback (struct urb *urb, struct pt_regs *reg | |||
287 | } | 287 | } |
288 | EXPORT_SYMBOL_GPL(usb_serial_generic_read_bulk_callback); | 288 | EXPORT_SYMBOL_GPL(usb_serial_generic_read_bulk_callback); |
289 | 289 | ||
290 | void usb_serial_generic_write_bulk_callback (struct urb *urb, struct pt_regs *regs) | 290 | void usb_serial_generic_write_bulk_callback (struct urb *urb) |
291 | { | 291 | { |
292 | struct usb_serial_port *port = (struct usb_serial_port *)urb->context; | 292 | struct usb_serial_port *port = (struct usb_serial_port *)urb->context; |
293 | 293 | ||
diff --git a/drivers/usb/serial/io_edgeport.c b/drivers/usb/serial/io_edgeport.c index c49976c3ad52..91bd3014ef1e 100644 --- a/drivers/usb/serial/io_edgeport.c +++ b/drivers/usb/serial/io_edgeport.c | |||
@@ -216,10 +216,10 @@ static int CmdUrbs = 0; /* Number of outstanding Command Write Urbs */ | |||
216 | /* local function prototypes */ | 216 | /* local function prototypes */ |
217 | 217 | ||
218 | /* function prototypes for all URB callbacks */ | 218 | /* function prototypes for all URB callbacks */ |
219 | static void edge_interrupt_callback (struct urb *urb, struct pt_regs *regs); | 219 | static void edge_interrupt_callback (struct urb *urb); |
220 | static void edge_bulk_in_callback (struct urb *urb, struct pt_regs *regs); | 220 | static void edge_bulk_in_callback (struct urb *urb); |
221 | static void edge_bulk_out_data_callback (struct urb *urb, struct pt_regs *regs); | 221 | static void edge_bulk_out_data_callback (struct urb *urb); |
222 | static void edge_bulk_out_cmd_callback (struct urb *urb, struct pt_regs *regs); | 222 | static void edge_bulk_out_cmd_callback (struct urb *urb); |
223 | 223 | ||
224 | /* function prototypes for the usbserial callbacks */ | 224 | /* function prototypes for the usbserial callbacks */ |
225 | static int edge_open (struct usb_serial_port *port, struct file *filp); | 225 | static int edge_open (struct usb_serial_port *port, struct file *filp); |
@@ -534,7 +534,7 @@ static void get_product_info(struct edgeport_serial *edge_serial) | |||
534 | * this is the callback function for when we have received data on the | 534 | * this is the callback function for when we have received data on the |
535 | * interrupt endpoint. | 535 | * interrupt endpoint. |
536 | *****************************************************************************/ | 536 | *****************************************************************************/ |
537 | static void edge_interrupt_callback (struct urb *urb, struct pt_regs *regs) | 537 | static void edge_interrupt_callback (struct urb *urb) |
538 | { | 538 | { |
539 | struct edgeport_serial *edge_serial = (struct edgeport_serial *)urb->context; | 539 | struct edgeport_serial *edge_serial = (struct edgeport_serial *)urb->context; |
540 | struct edgeport_port *edge_port; | 540 | struct edgeport_port *edge_port; |
@@ -631,7 +631,7 @@ exit: | |||
631 | * this is the callback function for when we have received data on the | 631 | * this is the callback function for when we have received data on the |
632 | * bulk in endpoint. | 632 | * bulk in endpoint. |
633 | *****************************************************************************/ | 633 | *****************************************************************************/ |
634 | static void edge_bulk_in_callback (struct urb *urb, struct pt_regs *regs) | 634 | static void edge_bulk_in_callback (struct urb *urb) |
635 | { | 635 | { |
636 | struct edgeport_serial *edge_serial = (struct edgeport_serial *)urb->context; | 636 | struct edgeport_serial *edge_serial = (struct edgeport_serial *)urb->context; |
637 | unsigned char *data = urb->transfer_buffer; | 637 | unsigned char *data = urb->transfer_buffer; |
@@ -687,7 +687,7 @@ static void edge_bulk_in_callback (struct urb *urb, struct pt_regs *regs) | |||
687 | * this is the callback function for when we have finished sending serial data | 687 | * this is the callback function for when we have finished sending serial data |
688 | * on the bulk out endpoint. | 688 | * on the bulk out endpoint. |
689 | *****************************************************************************/ | 689 | *****************************************************************************/ |
690 | static void edge_bulk_out_data_callback (struct urb *urb, struct pt_regs *regs) | 690 | static void edge_bulk_out_data_callback (struct urb *urb) |
691 | { | 691 | { |
692 | struct edgeport_port *edge_port = (struct edgeport_port *)urb->context; | 692 | struct edgeport_port *edge_port = (struct edgeport_port *)urb->context; |
693 | struct tty_struct *tty; | 693 | struct tty_struct *tty; |
@@ -718,7 +718,7 @@ static void edge_bulk_out_data_callback (struct urb *urb, struct pt_regs *regs) | |||
718 | * this is the callback function for when we have finished sending a command | 718 | * this is the callback function for when we have finished sending a command |
719 | * on the bulk out endpoint. | 719 | * on the bulk out endpoint. |
720 | *****************************************************************************/ | 720 | *****************************************************************************/ |
721 | static void edge_bulk_out_cmd_callback (struct urb *urb, struct pt_regs *regs) | 721 | static void edge_bulk_out_cmd_callback (struct urb *urb) |
722 | { | 722 | { |
723 | struct edgeport_port *edge_port = (struct edgeport_port *)urb->context; | 723 | struct edgeport_port *edge_port = (struct edgeport_port *)urb->context; |
724 | struct tty_struct *tty; | 724 | struct tty_struct *tty; |
diff --git a/drivers/usb/serial/io_ti.c b/drivers/usb/serial/io_ti.c index 17c5b1d2311a..ee0c921e1520 100644 --- a/drivers/usb/serial/io_ti.c +++ b/drivers/usb/serial/io_ti.c | |||
@@ -1697,7 +1697,7 @@ static void handle_new_lsr (struct edgeport_port *edge_port, int lsr_data, __u8 | |||
1697 | } | 1697 | } |
1698 | 1698 | ||
1699 | 1699 | ||
1700 | static void edge_interrupt_callback (struct urb *urb, struct pt_regs *regs) | 1700 | static void edge_interrupt_callback (struct urb *urb) |
1701 | { | 1701 | { |
1702 | struct edgeport_serial *edge_serial = (struct edgeport_serial *)urb->context; | 1702 | struct edgeport_serial *edge_serial = (struct edgeport_serial *)urb->context; |
1703 | struct usb_serial_port *port; | 1703 | struct usb_serial_port *port; |
@@ -1787,7 +1787,7 @@ exit: | |||
1787 | __FUNCTION__, status); | 1787 | __FUNCTION__, status); |
1788 | } | 1788 | } |
1789 | 1789 | ||
1790 | static void edge_bulk_in_callback (struct urb *urb, struct pt_regs *regs) | 1790 | static void edge_bulk_in_callback (struct urb *urb) |
1791 | { | 1791 | { |
1792 | struct edgeport_port *edge_port = (struct edgeport_port *)urb->context; | 1792 | struct edgeport_port *edge_port = (struct edgeport_port *)urb->context; |
1793 | unsigned char *data = urb->transfer_buffer; | 1793 | unsigned char *data = urb->transfer_buffer; |
@@ -1879,7 +1879,7 @@ static void edge_tty_recv(struct device *dev, struct tty_struct *tty, unsigned c | |||
1879 | tty_flip_buffer_push(tty); | 1879 | tty_flip_buffer_push(tty); |
1880 | } | 1880 | } |
1881 | 1881 | ||
1882 | static void edge_bulk_out_callback (struct urb *urb, struct pt_regs *regs) | 1882 | static void edge_bulk_out_callback (struct urb *urb) |
1883 | { | 1883 | { |
1884 | struct usb_serial_port *port = (struct usb_serial_port *)urb->context; | 1884 | struct usb_serial_port *port = (struct usb_serial_port *)urb->context; |
1885 | struct edgeport_port *edge_port = usb_get_serial_port_data(port); | 1885 | struct edgeport_port *edge_port = usb_get_serial_port_data(port); |
diff --git a/drivers/usb/serial/ipaq.c b/drivers/usb/serial/ipaq.c index cbc725a6c58e..6238aff1e772 100644 --- a/drivers/usb/serial/ipaq.c +++ b/drivers/usb/serial/ipaq.c | |||
@@ -83,8 +83,8 @@ static int ipaq_write(struct usb_serial_port *port, const unsigned char *buf, | |||
83 | static int ipaq_write_bulk(struct usb_serial_port *port, const unsigned char *buf, | 83 | static int ipaq_write_bulk(struct usb_serial_port *port, const unsigned char *buf, |
84 | int count); | 84 | int count); |
85 | static void ipaq_write_gather(struct usb_serial_port *port); | 85 | static void ipaq_write_gather(struct usb_serial_port *port); |
86 | static void ipaq_read_bulk_callback (struct urb *urb, struct pt_regs *regs); | 86 | static void ipaq_read_bulk_callback (struct urb *urb); |
87 | static void ipaq_write_bulk_callback(struct urb *urb, struct pt_regs *regs); | 87 | static void ipaq_write_bulk_callback(struct urb *urb); |
88 | static int ipaq_write_room(struct usb_serial_port *port); | 88 | static int ipaq_write_room(struct usb_serial_port *port); |
89 | static int ipaq_chars_in_buffer(struct usb_serial_port *port); | 89 | static int ipaq_chars_in_buffer(struct usb_serial_port *port); |
90 | static void ipaq_destroy_lists(struct usb_serial_port *port); | 90 | static void ipaq_destroy_lists(struct usb_serial_port *port); |
@@ -721,7 +721,7 @@ static void ipaq_close(struct usb_serial_port *port, struct file *filp) | |||
721 | /* info ("Bytes In = %d Bytes Out = %d", bytes_in, bytes_out); */ | 721 | /* info ("Bytes In = %d Bytes Out = %d", bytes_in, bytes_out); */ |
722 | } | 722 | } |
723 | 723 | ||
724 | static void ipaq_read_bulk_callback(struct urb *urb, struct pt_regs *regs) | 724 | static void ipaq_read_bulk_callback(struct urb *urb) |
725 | { | 725 | { |
726 | struct usb_serial_port *port = (struct usb_serial_port *)urb->context; | 726 | struct usb_serial_port *port = (struct usb_serial_port *)urb->context; |
727 | struct tty_struct *tty; | 727 | struct tty_struct *tty; |
@@ -859,7 +859,7 @@ static void ipaq_write_gather(struct usb_serial_port *port) | |||
859 | return; | 859 | return; |
860 | } | 860 | } |
861 | 861 | ||
862 | static void ipaq_write_bulk_callback(struct urb *urb, struct pt_regs *regs) | 862 | static void ipaq_write_bulk_callback(struct urb *urb) |
863 | { | 863 | { |
864 | struct usb_serial_port *port = (struct usb_serial_port *)urb->context; | 864 | struct usb_serial_port *port = (struct usb_serial_port *)urb->context; |
865 | struct ipaq_private *priv = usb_get_serial_port_data(port); | 865 | struct ipaq_private *priv = usb_get_serial_port_data(port); |
diff --git a/drivers/usb/serial/ipw.c b/drivers/usb/serial/ipw.c index 812bc213a963..2a4bb66691ad 100644 --- a/drivers/usb/serial/ipw.c +++ b/drivers/usb/serial/ipw.c | |||
@@ -161,7 +161,7 @@ static struct usb_driver usb_ipw_driver = { | |||
161 | 161 | ||
162 | static int debug; | 162 | static int debug; |
163 | 163 | ||
164 | static void ipw_read_bulk_callback(struct urb *urb, struct pt_regs *regs) | 164 | static void ipw_read_bulk_callback(struct urb *urb) |
165 | { | 165 | { |
166 | struct usb_serial_port *port = urb->context; | 166 | struct usb_serial_port *port = urb->context; |
167 | unsigned char *data = urb->transfer_buffer; | 167 | unsigned char *data = urb->transfer_buffer; |
@@ -367,7 +367,7 @@ static void ipw_close(struct usb_serial_port *port, struct file * filp) | |||
367 | usb_kill_urb(port->write_urb); | 367 | usb_kill_urb(port->write_urb); |
368 | } | 368 | } |
369 | 369 | ||
370 | static void ipw_write_bulk_callback(struct urb *urb, struct pt_regs *regs) | 370 | static void ipw_write_bulk_callback(struct urb *urb) |
371 | { | 371 | { |
372 | struct usb_serial_port *port = urb->context; | 372 | struct usb_serial_port *port = urb->context; |
373 | 373 | ||
diff --git a/drivers/usb/serial/ir-usb.c b/drivers/usb/serial/ir-usb.c index 1b348df388ed..331bf81556fc 100644 --- a/drivers/usb/serial/ir-usb.c +++ b/drivers/usb/serial/ir-usb.c | |||
@@ -105,8 +105,8 @@ static int ir_startup (struct usb_serial *serial); | |||
105 | static int ir_open (struct usb_serial_port *port, struct file *filep); | 105 | static int ir_open (struct usb_serial_port *port, struct file *filep); |
106 | static void ir_close (struct usb_serial_port *port, struct file *filep); | 106 | static void ir_close (struct usb_serial_port *port, struct file *filep); |
107 | static int ir_write (struct usb_serial_port *port, const unsigned char *buf, int count); | 107 | static int ir_write (struct usb_serial_port *port, const unsigned char *buf, int count); |
108 | static void ir_write_bulk_callback (struct urb *urb, struct pt_regs *regs); | 108 | static void ir_write_bulk_callback (struct urb *urb); |
109 | static void ir_read_bulk_callback (struct urb *urb, struct pt_regs *regs); | 109 | static void ir_read_bulk_callback (struct urb *urb); |
110 | static void ir_set_termios (struct usb_serial_port *port, struct termios *old_termios); | 110 | static void ir_set_termios (struct usb_serial_port *port, struct termios *old_termios); |
111 | 111 | ||
112 | static u8 ir_baud = 0; | 112 | static u8 ir_baud = 0; |
@@ -388,7 +388,7 @@ static int ir_write (struct usb_serial_port *port, const unsigned char *buf, int | |||
388 | return result; | 388 | return result; |
389 | } | 389 | } |
390 | 390 | ||
391 | static void ir_write_bulk_callback (struct urb *urb, struct pt_regs *regs) | 391 | static void ir_write_bulk_callback (struct urb *urb) |
392 | { | 392 | { |
393 | struct usb_serial_port *port = (struct usb_serial_port *)urb->context; | 393 | struct usb_serial_port *port = (struct usb_serial_port *)urb->context; |
394 | 394 | ||
@@ -410,7 +410,7 @@ static void ir_write_bulk_callback (struct urb *urb, struct pt_regs *regs) | |||
410 | usb_serial_port_softint(port); | 410 | usb_serial_port_softint(port); |
411 | } | 411 | } |
412 | 412 | ||
413 | static void ir_read_bulk_callback (struct urb *urb, struct pt_regs *regs) | 413 | static void ir_read_bulk_callback (struct urb *urb) |
414 | { | 414 | { |
415 | struct usb_serial_port *port = (struct usb_serial_port *)urb->context; | 415 | struct usb_serial_port *port = (struct usb_serial_port *)urb->context; |
416 | struct tty_struct *tty; | 416 | struct tty_struct *tty; |
diff --git a/drivers/usb/serial/keyspan.c b/drivers/usb/serial/keyspan.c index 015ad6cc1bbb..53be824eb1bf 100644 --- a/drivers/usb/serial/keyspan.c +++ b/drivers/usb/serial/keyspan.c | |||
@@ -412,7 +412,7 @@ static int keyspan_write(struct usb_serial_port *port, | |||
412 | return count - left; | 412 | return count - left; |
413 | } | 413 | } |
414 | 414 | ||
415 | static void usa26_indat_callback(struct urb *urb, struct pt_regs *regs) | 415 | static void usa26_indat_callback(struct urb *urb) |
416 | { | 416 | { |
417 | int i, err; | 417 | int i, err; |
418 | int endpoint; | 418 | int endpoint; |
@@ -470,7 +470,7 @@ static void usa26_indat_callback(struct urb *urb, struct pt_regs *regs) | |||
470 | } | 470 | } |
471 | 471 | ||
472 | /* Outdat handling is common for all devices */ | 472 | /* Outdat handling is common for all devices */ |
473 | static void usa2x_outdat_callback(struct urb *urb, struct pt_regs *regs) | 473 | static void usa2x_outdat_callback(struct urb *urb) |
474 | { | 474 | { |
475 | struct usb_serial_port *port; | 475 | struct usb_serial_port *port; |
476 | struct keyspan_port_private *p_priv; | 476 | struct keyspan_port_private *p_priv; |
@@ -483,13 +483,13 @@ static void usa2x_outdat_callback(struct urb *urb, struct pt_regs *regs) | |||
483 | usb_serial_port_softint(port); | 483 | usb_serial_port_softint(port); |
484 | } | 484 | } |
485 | 485 | ||
486 | static void usa26_inack_callback(struct urb *urb, struct pt_regs *regs) | 486 | static void usa26_inack_callback(struct urb *urb) |
487 | { | 487 | { |
488 | dbg ("%s", __FUNCTION__); | 488 | dbg ("%s", __FUNCTION__); |
489 | 489 | ||
490 | } | 490 | } |
491 | 491 | ||
492 | static void usa26_outcont_callback(struct urb *urb, struct pt_regs *regs) | 492 | static void usa26_outcont_callback(struct urb *urb) |
493 | { | 493 | { |
494 | struct usb_serial_port *port; | 494 | struct usb_serial_port *port; |
495 | struct keyspan_port_private *p_priv; | 495 | struct keyspan_port_private *p_priv; |
@@ -503,7 +503,7 @@ static void usa26_outcont_callback(struct urb *urb, struct pt_regs *regs) | |||
503 | } | 503 | } |
504 | } | 504 | } |
505 | 505 | ||
506 | static void usa26_instat_callback(struct urb *urb, struct pt_regs *regs) | 506 | static void usa26_instat_callback(struct urb *urb) |
507 | { | 507 | { |
508 | unsigned char *data = urb->transfer_buffer; | 508 | unsigned char *data = urb->transfer_buffer; |
509 | struct keyspan_usa26_portStatusMessage *msg; | 509 | struct keyspan_usa26_portStatusMessage *msg; |
@@ -565,14 +565,14 @@ static void usa26_instat_callback(struct urb *urb, struct pt_regs *regs) | |||
565 | exit: ; | 565 | exit: ; |
566 | } | 566 | } |
567 | 567 | ||
568 | static void usa26_glocont_callback(struct urb *urb, struct pt_regs *regs) | 568 | static void usa26_glocont_callback(struct urb *urb) |
569 | { | 569 | { |
570 | dbg ("%s", __FUNCTION__); | 570 | dbg ("%s", __FUNCTION__); |
571 | 571 | ||
572 | } | 572 | } |
573 | 573 | ||
574 | 574 | ||
575 | static void usa28_indat_callback(struct urb *urb, struct pt_regs *regs) | 575 | static void usa28_indat_callback(struct urb *urb) |
576 | { | 576 | { |
577 | int i, err; | 577 | int i, err; |
578 | struct usb_serial_port *port; | 578 | struct usb_serial_port *port; |
@@ -620,12 +620,12 @@ static void usa28_indat_callback(struct urb *urb, struct pt_regs *regs) | |||
620 | } while (urb->status != -EINPROGRESS); | 620 | } while (urb->status != -EINPROGRESS); |
621 | } | 621 | } |
622 | 622 | ||
623 | static void usa28_inack_callback(struct urb *urb, struct pt_regs *regs) | 623 | static void usa28_inack_callback(struct urb *urb) |
624 | { | 624 | { |
625 | dbg ("%s", __FUNCTION__); | 625 | dbg ("%s", __FUNCTION__); |
626 | } | 626 | } |
627 | 627 | ||
628 | static void usa28_outcont_callback(struct urb *urb, struct pt_regs *regs) | 628 | static void usa28_outcont_callback(struct urb *urb) |
629 | { | 629 | { |
630 | struct usb_serial_port *port; | 630 | struct usb_serial_port *port; |
631 | struct keyspan_port_private *p_priv; | 631 | struct keyspan_port_private *p_priv; |
@@ -639,7 +639,7 @@ static void usa28_outcont_callback(struct urb *urb, struct pt_regs *regs) | |||
639 | } | 639 | } |
640 | } | 640 | } |
641 | 641 | ||
642 | static void usa28_instat_callback(struct urb *urb, struct pt_regs *regs) | 642 | static void usa28_instat_callback(struct urb *urb) |
643 | { | 643 | { |
644 | int err; | 644 | int err; |
645 | unsigned char *data = urb->transfer_buffer; | 645 | unsigned char *data = urb->transfer_buffer; |
@@ -700,13 +700,13 @@ static void usa28_instat_callback(struct urb *urb, struct pt_regs *regs) | |||
700 | exit: ; | 700 | exit: ; |
701 | } | 701 | } |
702 | 702 | ||
703 | static void usa28_glocont_callback(struct urb *urb, struct pt_regs *regs) | 703 | static void usa28_glocont_callback(struct urb *urb) |
704 | { | 704 | { |
705 | dbg ("%s", __FUNCTION__); | 705 | dbg ("%s", __FUNCTION__); |
706 | } | 706 | } |
707 | 707 | ||
708 | 708 | ||
709 | static void usa49_glocont_callback(struct urb *urb, struct pt_regs *regs) | 709 | static void usa49_glocont_callback(struct urb *urb) |
710 | { | 710 | { |
711 | struct usb_serial *serial; | 711 | struct usb_serial *serial; |
712 | struct usb_serial_port *port; | 712 | struct usb_serial_port *port; |
@@ -730,7 +730,7 @@ static void usa49_glocont_callback(struct urb *urb, struct pt_regs *regs) | |||
730 | 730 | ||
731 | /* This is actually called glostat in the Keyspan | 731 | /* This is actually called glostat in the Keyspan |
732 | doco */ | 732 | doco */ |
733 | static void usa49_instat_callback(struct urb *urb, struct pt_regs *regs) | 733 | static void usa49_instat_callback(struct urb *urb) |
734 | { | 734 | { |
735 | int err; | 735 | int err; |
736 | unsigned char *data = urb->transfer_buffer; | 736 | unsigned char *data = urb->transfer_buffer; |
@@ -793,12 +793,12 @@ static void usa49_instat_callback(struct urb *urb, struct pt_regs *regs) | |||
793 | exit: ; | 793 | exit: ; |
794 | } | 794 | } |
795 | 795 | ||
796 | static void usa49_inack_callback(struct urb *urb, struct pt_regs *regs) | 796 | static void usa49_inack_callback(struct urb *urb) |
797 | { | 797 | { |
798 | dbg ("%s", __FUNCTION__); | 798 | dbg ("%s", __FUNCTION__); |
799 | } | 799 | } |
800 | 800 | ||
801 | static void usa49_indat_callback(struct urb *urb, struct pt_regs *regs) | 801 | static void usa49_indat_callback(struct urb *urb) |
802 | { | 802 | { |
803 | int i, err; | 803 | int i, err; |
804 | int endpoint; | 804 | int endpoint; |
@@ -851,12 +851,12 @@ static void usa49_indat_callback(struct urb *urb, struct pt_regs *regs) | |||
851 | } | 851 | } |
852 | 852 | ||
853 | /* not used, usa-49 doesn't have per-port control endpoints */ | 853 | /* not used, usa-49 doesn't have per-port control endpoints */ |
854 | static void usa49_outcont_callback(struct urb *urb, struct pt_regs *regs) | 854 | static void usa49_outcont_callback(struct urb *urb) |
855 | { | 855 | { |
856 | dbg ("%s", __FUNCTION__); | 856 | dbg ("%s", __FUNCTION__); |
857 | } | 857 | } |
858 | 858 | ||
859 | static void usa90_indat_callback(struct urb *urb, struct pt_regs *regs) | 859 | static void usa90_indat_callback(struct urb *urb) |
860 | { | 860 | { |
861 | int i, err; | 861 | int i, err; |
862 | int endpoint; | 862 | int endpoint; |
@@ -930,7 +930,7 @@ static void usa90_indat_callback(struct urb *urb, struct pt_regs *regs) | |||
930 | } | 930 | } |
931 | 931 | ||
932 | 932 | ||
933 | static void usa90_instat_callback(struct urb *urb, struct pt_regs *regs) | 933 | static void usa90_instat_callback(struct urb *urb) |
934 | { | 934 | { |
935 | unsigned char *data = urb->transfer_buffer; | 935 | unsigned char *data = urb->transfer_buffer; |
936 | struct keyspan_usa90_portStatusMessage *msg; | 936 | struct keyspan_usa90_portStatusMessage *msg; |
@@ -981,7 +981,7 @@ exit: | |||
981 | ; | 981 | ; |
982 | } | 982 | } |
983 | 983 | ||
984 | static void usa90_outcont_callback(struct urb *urb, struct pt_regs *regs) | 984 | static void usa90_outcont_callback(struct urb *urb) |
985 | { | 985 | { |
986 | struct usb_serial_port *port; | 986 | struct usb_serial_port *port; |
987 | struct keyspan_port_private *p_priv; | 987 | struct keyspan_port_private *p_priv; |
@@ -1277,7 +1277,7 @@ static int keyspan_fake_startup (struct usb_serial *serial) | |||
1277 | /* Helper functions used by keyspan_setup_urbs */ | 1277 | /* Helper functions used by keyspan_setup_urbs */ |
1278 | static struct urb *keyspan_setup_urb (struct usb_serial *serial, int endpoint, | 1278 | static struct urb *keyspan_setup_urb (struct usb_serial *serial, int endpoint, |
1279 | int dir, void *ctx, char *buf, int len, | 1279 | int dir, void *ctx, char *buf, int len, |
1280 | void (*callback)(struct urb *, struct pt_regs *regs)) | 1280 | void (*callback)(struct urb *)) |
1281 | { | 1281 | { |
1282 | struct urb *urb; | 1282 | struct urb *urb; |
1283 | 1283 | ||
@@ -1300,12 +1300,12 @@ static struct urb *keyspan_setup_urb (struct usb_serial *serial, int endpoint, | |||
1300 | } | 1300 | } |
1301 | 1301 | ||
1302 | static struct callbacks { | 1302 | static struct callbacks { |
1303 | void (*instat_callback)(struct urb *, struct pt_regs *regs); | 1303 | void (*instat_callback)(struct urb *); |
1304 | void (*glocont_callback)(struct urb *, struct pt_regs *regs); | 1304 | void (*glocont_callback)(struct urb *); |
1305 | void (*indat_callback)(struct urb *, struct pt_regs *regs); | 1305 | void (*indat_callback)(struct urb *); |
1306 | void (*outdat_callback)(struct urb *, struct pt_regs *regs); | 1306 | void (*outdat_callback)(struct urb *); |
1307 | void (*inack_callback)(struct urb *, struct pt_regs *regs); | 1307 | void (*inack_callback)(struct urb *); |
1308 | void (*outcont_callback)(struct urb *, struct pt_regs *regs); | 1308 | void (*outcont_callback)(struct urb *); |
1309 | } keyspan_callbacks[] = { | 1309 | } keyspan_callbacks[] = { |
1310 | { | 1310 | { |
1311 | /* msg_usa26 callbacks */ | 1311 | /* msg_usa26 callbacks */ |
diff --git a/drivers/usb/serial/keyspan_pda.c b/drivers/usb/serial/keyspan_pda.c index 59e777f1e8fd..909005107ea2 100644 --- a/drivers/usb/serial/keyspan_pda.c +++ b/drivers/usb/serial/keyspan_pda.c | |||
@@ -210,7 +210,7 @@ static void keyspan_pda_request_unthrottle( struct usb_serial *serial ) | |||
210 | } | 210 | } |
211 | 211 | ||
212 | 212 | ||
213 | static void keyspan_pda_rx_interrupt (struct urb *urb, struct pt_regs *regs) | 213 | static void keyspan_pda_rx_interrupt (struct urb *urb) |
214 | { | 214 | { |
215 | struct usb_serial_port *port = (struct usb_serial_port *)urb->context; | 215 | struct usb_serial_port *port = (struct usb_serial_port *)urb->context; |
216 | struct tty_struct *tty = port->tty; | 216 | struct tty_struct *tty = port->tty; |
@@ -601,7 +601,7 @@ exit: | |||
601 | } | 601 | } |
602 | 602 | ||
603 | 603 | ||
604 | static void keyspan_pda_write_bulk_callback (struct urb *urb, struct pt_regs *regs) | 604 | static void keyspan_pda_write_bulk_callback (struct urb *urb) |
605 | { | 605 | { |
606 | struct usb_serial_port *port = (struct usb_serial_port *)urb->context; | 606 | struct usb_serial_port *port = (struct usb_serial_port *)urb->context; |
607 | struct keyspan_pda_private *priv; | 607 | struct keyspan_pda_private *priv; |
diff --git a/drivers/usb/serial/kl5kusb105.c b/drivers/usb/serial/kl5kusb105.c index 2a2f3e2da055..17e205699c2b 100644 --- a/drivers/usb/serial/kl5kusb105.c +++ b/drivers/usb/serial/kl5kusb105.c | |||
@@ -80,11 +80,11 @@ static void klsi_105_close (struct usb_serial_port *port, | |||
80 | static int klsi_105_write (struct usb_serial_port *port, | 80 | static int klsi_105_write (struct usb_serial_port *port, |
81 | const unsigned char *buf, | 81 | const unsigned char *buf, |
82 | int count); | 82 | int count); |
83 | static void klsi_105_write_bulk_callback (struct urb *urb, struct pt_regs *regs); | 83 | static void klsi_105_write_bulk_callback (struct urb *urb); |
84 | static int klsi_105_chars_in_buffer (struct usb_serial_port *port); | 84 | static int klsi_105_chars_in_buffer (struct usb_serial_port *port); |
85 | static int klsi_105_write_room (struct usb_serial_port *port); | 85 | static int klsi_105_write_room (struct usb_serial_port *port); |
86 | 86 | ||
87 | static void klsi_105_read_bulk_callback (struct urb *urb, struct pt_regs *regs); | 87 | static void klsi_105_read_bulk_callback (struct urb *urb); |
88 | static void klsi_105_set_termios (struct usb_serial_port *port, | 88 | static void klsi_105_set_termios (struct usb_serial_port *port, |
89 | struct termios * old); | 89 | struct termios * old); |
90 | static int klsi_105_ioctl (struct usb_serial_port *port, | 90 | static int klsi_105_ioctl (struct usb_serial_port *port, |
@@ -556,7 +556,7 @@ exit: | |||
556 | return bytes_sent; /* that's how much we wrote */ | 556 | return bytes_sent; /* that's how much we wrote */ |
557 | } /* klsi_105_write */ | 557 | } /* klsi_105_write */ |
558 | 558 | ||
559 | static void klsi_105_write_bulk_callback ( struct urb *urb, struct pt_regs *regs) | 559 | static void klsi_105_write_bulk_callback ( struct urb *urb) |
560 | { | 560 | { |
561 | struct usb_serial_port *port = (struct usb_serial_port *)urb->context; | 561 | struct usb_serial_port *port = (struct usb_serial_port *)urb->context; |
562 | 562 | ||
@@ -616,7 +616,7 @@ static int klsi_105_write_room (struct usb_serial_port *port) | |||
616 | 616 | ||
617 | 617 | ||
618 | 618 | ||
619 | static void klsi_105_read_bulk_callback (struct urb *urb, struct pt_regs *regs) | 619 | static void klsi_105_read_bulk_callback (struct urb *urb) |
620 | { | 620 | { |
621 | struct usb_serial_port *port = (struct usb_serial_port *)urb->context; | 621 | struct usb_serial_port *port = (struct usb_serial_port *)urb->context; |
622 | struct klsi_105_private *priv = usb_get_serial_port_data(port); | 622 | struct klsi_105_private *priv = usb_get_serial_port_data(port); |
diff --git a/drivers/usb/serial/kobil_sct.c b/drivers/usb/serial/kobil_sct.c index d50dce034958..ff03331e0bcf 100644 --- a/drivers/usb/serial/kobil_sct.c +++ b/drivers/usb/serial/kobil_sct.c | |||
@@ -80,8 +80,8 @@ static int kobil_ioctl(struct usb_serial_port *port, struct file *file, | |||
80 | static int kobil_tiocmget(struct usb_serial_port *port, struct file *file); | 80 | static int kobil_tiocmget(struct usb_serial_port *port, struct file *file); |
81 | static int kobil_tiocmset(struct usb_serial_port *port, struct file *file, | 81 | static int kobil_tiocmset(struct usb_serial_port *port, struct file *file, |
82 | unsigned int set, unsigned int clear); | 82 | unsigned int set, unsigned int clear); |
83 | static void kobil_read_int_callback( struct urb *urb, struct pt_regs *regs ); | 83 | static void kobil_read_int_callback( struct urb *urb ); |
84 | static void kobil_write_callback( struct urb *purb, struct pt_regs *regs ); | 84 | static void kobil_write_callback( struct urb *purb ); |
85 | 85 | ||
86 | 86 | ||
87 | static struct usb_device_id id_table [] = { | 87 | static struct usb_device_id id_table [] = { |
@@ -360,7 +360,7 @@ static void kobil_close (struct usb_serial_port *port, struct file *filp) | |||
360 | } | 360 | } |
361 | 361 | ||
362 | 362 | ||
363 | static void kobil_read_int_callback( struct urb *purb, struct pt_regs *regs) | 363 | static void kobil_read_int_callback( struct urb *purb) |
364 | { | 364 | { |
365 | int result; | 365 | int result; |
366 | struct usb_serial_port *port = (struct usb_serial_port *) purb->context; | 366 | struct usb_serial_port *port = (struct usb_serial_port *) purb->context; |
@@ -405,7 +405,7 @@ static void kobil_read_int_callback( struct urb *purb, struct pt_regs *regs) | |||
405 | } | 405 | } |
406 | 406 | ||
407 | 407 | ||
408 | static void kobil_write_callback( struct urb *purb, struct pt_regs *regs ) | 408 | static void kobil_write_callback( struct urb *purb ) |
409 | { | 409 | { |
410 | } | 410 | } |
411 | 411 | ||
diff --git a/drivers/usb/serial/mct_u232.c b/drivers/usb/serial/mct_u232.c index f4d4305c2c02..b7582cc496dc 100644 --- a/drivers/usb/serial/mct_u232.c +++ b/drivers/usb/serial/mct_u232.c | |||
@@ -96,7 +96,7 @@ static int mct_u232_open (struct usb_serial_port *port, | |||
96 | struct file *filp); | 96 | struct file *filp); |
97 | static void mct_u232_close (struct usb_serial_port *port, | 97 | static void mct_u232_close (struct usb_serial_port *port, |
98 | struct file *filp); | 98 | struct file *filp); |
99 | static void mct_u232_read_int_callback (struct urb *urb, struct pt_regs *regs); | 99 | static void mct_u232_read_int_callback (struct urb *urb); |
100 | static void mct_u232_set_termios (struct usb_serial_port *port, | 100 | static void mct_u232_set_termios (struct usb_serial_port *port, |
101 | struct termios * old); | 101 | struct termios * old); |
102 | static int mct_u232_ioctl (struct usb_serial_port *port, | 102 | static int mct_u232_ioctl (struct usb_serial_port *port, |
@@ -466,7 +466,7 @@ static void mct_u232_close (struct usb_serial_port *port, struct file *filp) | |||
466 | } /* mct_u232_close */ | 466 | } /* mct_u232_close */ |
467 | 467 | ||
468 | 468 | ||
469 | static void mct_u232_read_int_callback (struct urb *urb, struct pt_regs *regs) | 469 | static void mct_u232_read_int_callback (struct urb *urb) |
470 | { | 470 | { |
471 | struct usb_serial_port *port = (struct usb_serial_port *)urb->context; | 471 | struct usb_serial_port *port = (struct usb_serial_port *)urb->context; |
472 | struct mct_u232_private *priv = usb_get_serial_port_data(port); | 472 | struct mct_u232_private *priv = usb_get_serial_port_data(port); |
diff --git a/drivers/usb/serial/mos7840.c b/drivers/usb/serial/mos7840.c index 95bf57166c59..021be39fe16e 100644 --- a/drivers/usb/serial/mos7840.c +++ b/drivers/usb/serial/mos7840.c | |||
@@ -421,7 +421,7 @@ static int mos7840_handle_new_lsr(struct moschip_port *port, __u8 new_lsr) | |||
421 | /************************************************************************/ | 421 | /************************************************************************/ |
422 | /************************************************************************/ | 422 | /************************************************************************/ |
423 | 423 | ||
424 | static void mos7840_control_callback(struct urb *urb, struct pt_regs *regs) | 424 | static void mos7840_control_callback(struct urb *urb) |
425 | { | 425 | { |
426 | unsigned char *data; | 426 | unsigned char *data; |
427 | struct moschip_port *mos7840_port; | 427 | struct moschip_port *mos7840_port; |
@@ -497,7 +497,7 @@ static int mos7840_get_reg(struct moschip_port *mcs, __u16 Wval, __u16 reg, | |||
497 | * interrupt endpoint. | 497 | * interrupt endpoint. |
498 | *****************************************************************************/ | 498 | *****************************************************************************/ |
499 | 499 | ||
500 | static void mos7840_interrupt_callback(struct urb *urb, struct pt_regs *regs) | 500 | static void mos7840_interrupt_callback(struct urb *urb) |
501 | { | 501 | { |
502 | int result; | 502 | int result; |
503 | int length; | 503 | int length; |
@@ -647,7 +647,7 @@ static struct usb_serial *mos7840_get_usb_serial(struct usb_serial_port *port, | |||
647 | * bulk in endpoint. | 647 | * bulk in endpoint. |
648 | *****************************************************************************/ | 648 | *****************************************************************************/ |
649 | 649 | ||
650 | static void mos7840_bulk_in_callback(struct urb *urb, struct pt_regs *regs) | 650 | static void mos7840_bulk_in_callback(struct urb *urb) |
651 | { | 651 | { |
652 | int status; | 652 | int status; |
653 | unsigned char *data; | 653 | unsigned char *data; |
@@ -726,8 +726,7 @@ static void mos7840_bulk_in_callback(struct urb *urb, struct pt_regs *regs) | |||
726 | * on the bulk out endpoint. | 726 | * on the bulk out endpoint. |
727 | *****************************************************************************/ | 727 | *****************************************************************************/ |
728 | 728 | ||
729 | static void mos7840_bulk_out_data_callback(struct urb *urb, | 729 | static void mos7840_bulk_out_data_callback(struct urb *urb) |
730 | struct pt_regs *regs) | ||
731 | { | 730 | { |
732 | struct moschip_port *mos7840_port; | 731 | struct moschip_port *mos7840_port; |
733 | struct tty_struct *tty; | 732 | struct tty_struct *tty; |
@@ -1088,7 +1087,7 @@ static int mos7840_open(struct usb_serial_port *port, struct file *filp) | |||
1088 | mos7840_port->icount.tx = 0; | 1087 | mos7840_port->icount.tx = 0; |
1089 | mos7840_port->icount.rx = 0; | 1088 | mos7840_port->icount.rx = 0; |
1090 | 1089 | ||
1091 | dbg("\n\nusb_serial serial:%x mos7840_port:%x\n usb_serial_port port:%x\n\n", (unsigned int)serial, (unsigned int)mos7840_port, (unsigned int)port); | 1090 | dbg("\n\nusb_serial serial:%p mos7840_port:%p\n usb_serial_port port:%p\n\n", serial, mos7840_port, port); |
1092 | 1091 | ||
1093 | return 0; | 1092 | return 0; |
1094 | 1093 | ||
@@ -1421,7 +1420,6 @@ static int mos7840_write(struct usb_serial_port *port, | |||
1421 | int i; | 1420 | int i; |
1422 | int bytes_sent = 0; | 1421 | int bytes_sent = 0; |
1423 | int transfer_size; | 1422 | int transfer_size; |
1424 | int from_user = 0; | ||
1425 | 1423 | ||
1426 | struct moschip_port *mos7840_port; | 1424 | struct moschip_port *mos7840_port; |
1427 | struct usb_serial *serial; | 1425 | struct usb_serial *serial; |
@@ -1512,15 +1510,7 @@ static int mos7840_write(struct usb_serial_port *port, | |||
1512 | } | 1510 | } |
1513 | transfer_size = min(count, URB_TRANSFER_BUFFER_SIZE); | 1511 | transfer_size = min(count, URB_TRANSFER_BUFFER_SIZE); |
1514 | 1512 | ||
1515 | if (from_user) { | 1513 | memcpy(urb->transfer_buffer, current_position, transfer_size); |
1516 | if (copy_from_user | ||
1517 | (urb->transfer_buffer, current_position, transfer_size)) { | ||
1518 | bytes_sent = -EFAULT; | ||
1519 | goto exit; | ||
1520 | } | ||
1521 | } else { | ||
1522 | memcpy(urb->transfer_buffer, current_position, transfer_size); | ||
1523 | } | ||
1524 | 1514 | ||
1525 | /* fill urb with data and submit */ | 1515 | /* fill urb with data and submit */ |
1526 | usb_fill_bulk_urb(urb, | 1516 | usb_fill_bulk_urb(urb, |
@@ -2226,7 +2216,7 @@ static void mos7840_set_termios(struct usb_serial_port *port, | |||
2226 | *****************************************************************************/ | 2216 | *****************************************************************************/ |
2227 | 2217 | ||
2228 | static int mos7840_get_lsr_info(struct moschip_port *mos7840_port, | 2218 | static int mos7840_get_lsr_info(struct moschip_port *mos7840_port, |
2229 | unsigned int *value) | 2219 | unsigned int __user *value) |
2230 | { | 2220 | { |
2231 | int count; | 2221 | int count; |
2232 | unsigned int result = 0; | 2222 | unsigned int result = 0; |
@@ -2249,7 +2239,7 @@ static int mos7840_get_lsr_info(struct moschip_port *mos7840_port, | |||
2249 | *****************************************************************************/ | 2239 | *****************************************************************************/ |
2250 | 2240 | ||
2251 | static int mos7840_get_bytes_avail(struct moschip_port *mos7840_port, | 2241 | static int mos7840_get_bytes_avail(struct moschip_port *mos7840_port, |
2252 | unsigned int *value) | 2242 | unsigned int __user *value) |
2253 | { | 2243 | { |
2254 | unsigned int result = 0; | 2244 | unsigned int result = 0; |
2255 | struct tty_struct *tty = mos7840_port->port->tty; | 2245 | struct tty_struct *tty = mos7840_port->port->tty; |
@@ -2272,7 +2262,7 @@ static int mos7840_get_bytes_avail(struct moschip_port *mos7840_port, | |||
2272 | *****************************************************************************/ | 2262 | *****************************************************************************/ |
2273 | 2263 | ||
2274 | static int mos7840_set_modem_info(struct moschip_port *mos7840_port, | 2264 | static int mos7840_set_modem_info(struct moschip_port *mos7840_port, |
2275 | unsigned int cmd, unsigned int *value) | 2265 | unsigned int cmd, unsigned int __user *value) |
2276 | { | 2266 | { |
2277 | unsigned int mcr; | 2267 | unsigned int mcr; |
2278 | unsigned int arg; | 2268 | unsigned int arg; |
@@ -2342,7 +2332,7 @@ static int mos7840_set_modem_info(struct moschip_port *mos7840_port, | |||
2342 | *****************************************************************************/ | 2332 | *****************************************************************************/ |
2343 | 2333 | ||
2344 | static int mos7840_get_modem_info(struct moschip_port *mos7840_port, | 2334 | static int mos7840_get_modem_info(struct moschip_port *mos7840_port, |
2345 | unsigned int *value) | 2335 | unsigned int __user *value) |
2346 | { | 2336 | { |
2347 | unsigned int result = 0; | 2337 | unsigned int result = 0; |
2348 | __u16 msr; | 2338 | __u16 msr; |
@@ -2371,7 +2361,7 @@ static int mos7840_get_modem_info(struct moschip_port *mos7840_port, | |||
2371 | *****************************************************************************/ | 2361 | *****************************************************************************/ |
2372 | 2362 | ||
2373 | static int mos7840_get_serial_info(struct moschip_port *mos7840_port, | 2363 | static int mos7840_get_serial_info(struct moschip_port *mos7840_port, |
2374 | struct serial_struct *retinfo) | 2364 | struct serial_struct __user *retinfo) |
2375 | { | 2365 | { |
2376 | struct serial_struct tmp; | 2366 | struct serial_struct tmp; |
2377 | 2367 | ||
@@ -2406,6 +2396,7 @@ static int mos7840_get_serial_info(struct moschip_port *mos7840_port, | |||
2406 | static int mos7840_ioctl(struct usb_serial_port *port, struct file *file, | 2396 | static int mos7840_ioctl(struct usb_serial_port *port, struct file *file, |
2407 | unsigned int cmd, unsigned long arg) | 2397 | unsigned int cmd, unsigned long arg) |
2408 | { | 2398 | { |
2399 | void __user *argp = (void __user *)arg; | ||
2409 | struct moschip_port *mos7840_port; | 2400 | struct moschip_port *mos7840_port; |
2410 | struct tty_struct *tty; | 2401 | struct tty_struct *tty; |
2411 | 2402 | ||
@@ -2434,16 +2425,13 @@ static int mos7840_ioctl(struct usb_serial_port *port, struct file *file, | |||
2434 | 2425 | ||
2435 | case TIOCINQ: | 2426 | case TIOCINQ: |
2436 | dbg("%s (%d) TIOCINQ", __FUNCTION__, port->number); | 2427 | dbg("%s (%d) TIOCINQ", __FUNCTION__, port->number); |
2437 | return mos7840_get_bytes_avail(mos7840_port, | 2428 | return mos7840_get_bytes_avail(mos7840_port, argp); |
2438 | (unsigned int *)arg); | ||
2439 | break; | ||
2440 | 2429 | ||
2441 | case TIOCOUTQ: | 2430 | case TIOCOUTQ: |
2442 | dbg("%s (%d) TIOCOUTQ", __FUNCTION__, port->number); | 2431 | dbg("%s (%d) TIOCOUTQ", __FUNCTION__, port->number); |
2443 | return put_user(tty->driver->chars_in_buffer ? | 2432 | return put_user(tty->driver->chars_in_buffer ? |
2444 | tty->driver->chars_in_buffer(tty) : 0, | 2433 | tty->driver->chars_in_buffer(tty) : 0, |
2445 | (int __user *)arg); | 2434 | (int __user *)arg); |
2446 | break; | ||
2447 | 2435 | ||
2448 | case TCFLSH: | 2436 | case TCFLSH: |
2449 | retval = tty_check_change(tty); | 2437 | retval = tty_check_change(tty); |
@@ -2473,13 +2461,13 @@ static int mos7840_ioctl(struct usb_serial_port *port, struct file *file, | |||
2473 | 2461 | ||
2474 | case TCGETS: | 2462 | case TCGETS: |
2475 | if (kernel_termios_to_user_termios | 2463 | if (kernel_termios_to_user_termios |
2476 | ((struct termios __user *)arg, tty->termios)) | 2464 | ((struct termios __user *)argp, tty->termios)) |
2477 | return -EFAULT; | 2465 | return -EFAULT; |
2478 | return 0; | 2466 | return 0; |
2479 | 2467 | ||
2480 | case TIOCSERGETLSR: | 2468 | case TIOCSERGETLSR: |
2481 | dbg("%s (%d) TIOCSERGETLSR", __FUNCTION__, port->number); | 2469 | dbg("%s (%d) TIOCSERGETLSR", __FUNCTION__, port->number); |
2482 | return mos7840_get_lsr_info(mos7840_port, (unsigned int *)arg); | 2470 | return mos7840_get_lsr_info(mos7840_port, argp); |
2483 | return 0; | 2471 | return 0; |
2484 | 2472 | ||
2485 | case TIOCMBIS: | 2473 | case TIOCMBIS: |
@@ -2488,19 +2476,16 @@ static int mos7840_ioctl(struct usb_serial_port *port, struct file *file, | |||
2488 | dbg("%s (%d) TIOCMSET/TIOCMBIC/TIOCMSET", __FUNCTION__, | 2476 | dbg("%s (%d) TIOCMSET/TIOCMBIC/TIOCMSET", __FUNCTION__, |
2489 | port->number); | 2477 | port->number); |
2490 | mosret = | 2478 | mosret = |
2491 | mos7840_set_modem_info(mos7840_port, cmd, | 2479 | mos7840_set_modem_info(mos7840_port, cmd, argp); |
2492 | (unsigned int *)arg); | ||
2493 | return mosret; | 2480 | return mosret; |
2494 | 2481 | ||
2495 | case TIOCMGET: | 2482 | case TIOCMGET: |
2496 | dbg("%s (%d) TIOCMGET", __FUNCTION__, port->number); | 2483 | dbg("%s (%d) TIOCMGET", __FUNCTION__, port->number); |
2497 | return mos7840_get_modem_info(mos7840_port, | 2484 | return mos7840_get_modem_info(mos7840_port, argp); |
2498 | (unsigned int *)arg); | ||
2499 | 2485 | ||
2500 | case TIOCGSERIAL: | 2486 | case TIOCGSERIAL: |
2501 | dbg("%s (%d) TIOCGSERIAL", __FUNCTION__, port->number); | 2487 | dbg("%s (%d) TIOCGSERIAL", __FUNCTION__, port->number); |
2502 | return mos7840_get_serial_info(mos7840_port, | 2488 | return mos7840_get_serial_info(mos7840_port, argp); |
2503 | (struct serial_struct *)arg); | ||
2504 | 2489 | ||
2505 | case TIOCSSERIAL: | 2490 | case TIOCSSERIAL: |
2506 | dbg("%s (%d) TIOCSSERIAL", __FUNCTION__, port->number); | 2491 | dbg("%s (%d) TIOCSSERIAL", __FUNCTION__, port->number); |
@@ -2550,7 +2535,7 @@ static int mos7840_ioctl(struct usb_serial_port *port, struct file *file, | |||
2550 | 2535 | ||
2551 | dbg("%s (%d) TIOCGICOUNT RX=%d, TX=%d", __FUNCTION__, | 2536 | dbg("%s (%d) TIOCGICOUNT RX=%d, TX=%d", __FUNCTION__, |
2552 | port->number, icount.rx, icount.tx); | 2537 | port->number, icount.rx, icount.tx); |
2553 | if (copy_to_user((void *)arg, &icount, sizeof(icount))) | 2538 | if (copy_to_user(argp, &icount, sizeof(icount))) |
2554 | return -EFAULT; | 2539 | return -EFAULT; |
2555 | return 0; | 2540 | return 0; |
2556 | 2541 | ||
@@ -2818,7 +2803,7 @@ static int mos7840_startup(struct usb_serial *serial) | |||
2818 | 2803 | ||
2819 | /* setting configuration feature to one */ | 2804 | /* setting configuration feature to one */ |
2820 | usb_control_msg(serial->dev, usb_sndctrlpipe(serial->dev, 0), | 2805 | usb_control_msg(serial->dev, usb_sndctrlpipe(serial->dev, 0), |
2821 | (__u8) 0x03, 0x00, 0x01, 0x00, 0x00, 0x00, 5 * HZ); | 2806 | (__u8) 0x03, 0x00, 0x01, 0x00, NULL, 0x00, 5 * HZ); |
2822 | return 0; | 2807 | return 0; |
2823 | } | 2808 | } |
2824 | 2809 | ||
diff --git a/drivers/usb/serial/navman.c b/drivers/usb/serial/navman.c index ac3f8b5d2c49..0610409a6568 100644 --- a/drivers/usb/serial/navman.c +++ b/drivers/usb/serial/navman.c | |||
@@ -32,7 +32,7 @@ static struct usb_driver navman_driver = { | |||
32 | .no_dynamic_id = 1, | 32 | .no_dynamic_id = 1, |
33 | }; | 33 | }; |
34 | 34 | ||
35 | static void navman_read_int_callback(struct urb *urb, struct pt_regs *regs) | 35 | static void navman_read_int_callback(struct urb *urb) |
36 | { | 36 | { |
37 | struct usb_serial_port *port = urb->context; | 37 | struct usb_serial_port *port = urb->context; |
38 | unsigned char *data = urb->transfer_buffer; | 38 | unsigned char *data = urb->transfer_buffer; |
diff --git a/drivers/usb/serial/omninet.c b/drivers/usb/serial/omninet.c index a764ff4e326c..bc91d3b726fc 100644 --- a/drivers/usb/serial/omninet.c +++ b/drivers/usb/serial/omninet.c | |||
@@ -64,8 +64,8 @@ static int debug; | |||
64 | /* function prototypes */ | 64 | /* function prototypes */ |
65 | static int omninet_open (struct usb_serial_port *port, struct file *filp); | 65 | static int omninet_open (struct usb_serial_port *port, struct file *filp); |
66 | static void omninet_close (struct usb_serial_port *port, struct file *filp); | 66 | static void omninet_close (struct usb_serial_port *port, struct file *filp); |
67 | static void omninet_read_bulk_callback (struct urb *urb, struct pt_regs *regs); | 67 | static void omninet_read_bulk_callback (struct urb *urb); |
68 | static void omninet_write_bulk_callback (struct urb *urb, struct pt_regs *regs); | 68 | static void omninet_write_bulk_callback (struct urb *urb); |
69 | static int omninet_write (struct usb_serial_port *port, const unsigned char *buf, int count); | 69 | static int omninet_write (struct usb_serial_port *port, const unsigned char *buf, int count); |
70 | static int omninet_write_room (struct usb_serial_port *port); | 70 | static int omninet_write_room (struct usb_serial_port *port); |
71 | static void omninet_shutdown (struct usb_serial *serial); | 71 | static void omninet_shutdown (struct usb_serial *serial); |
@@ -194,7 +194,7 @@ static void omninet_close (struct usb_serial_port *port, struct file * filp) | |||
194 | #define OMNINET_HEADERLEN sizeof(struct omninet_header) | 194 | #define OMNINET_HEADERLEN sizeof(struct omninet_header) |
195 | #define OMNINET_BULKOUTSIZE (64 - OMNINET_HEADERLEN) | 195 | #define OMNINET_BULKOUTSIZE (64 - OMNINET_HEADERLEN) |
196 | 196 | ||
197 | static void omninet_read_bulk_callback (struct urb *urb, struct pt_regs *regs) | 197 | static void omninet_read_bulk_callback (struct urb *urb) |
198 | { | 198 | { |
199 | struct usb_serial_port *port = (struct usb_serial_port *)urb->context; | 199 | struct usb_serial_port *port = (struct usb_serial_port *)urb->context; |
200 | unsigned char *data = urb->transfer_buffer; | 200 | unsigned char *data = urb->transfer_buffer; |
@@ -306,7 +306,7 @@ static int omninet_write_room (struct usb_serial_port *port) | |||
306 | return (room); | 306 | return (room); |
307 | } | 307 | } |
308 | 308 | ||
309 | static void omninet_write_bulk_callback (struct urb *urb, struct pt_regs *regs) | 309 | static void omninet_write_bulk_callback (struct urb *urb) |
310 | { | 310 | { |
311 | /* struct omninet_header *header = (struct omninet_header *) urb->transfer_buffer; */ | 311 | /* struct omninet_header *header = (struct omninet_header *) urb->transfer_buffer; */ |
312 | struct usb_serial_port *port = (struct usb_serial_port *) urb->context; | 312 | struct usb_serial_port *port = (struct usb_serial_port *) urb->context; |
diff --git a/drivers/usb/serial/option.c b/drivers/usb/serial/option.c index c856e6f40e22..130afbbd3fca 100644 --- a/drivers/usb/serial/option.c +++ b/drivers/usb/serial/option.c | |||
@@ -50,7 +50,7 @@ static void option_rx_throttle(struct usb_serial_port *port); | |||
50 | static void option_rx_unthrottle(struct usb_serial_port *port); | 50 | static void option_rx_unthrottle(struct usb_serial_port *port); |
51 | static int option_write_room(struct usb_serial_port *port); | 51 | static int option_write_room(struct usb_serial_port *port); |
52 | 52 | ||
53 | static void option_instat_callback(struct urb *urb, struct pt_regs *regs); | 53 | static void option_instat_callback(struct urb *urb); |
54 | 54 | ||
55 | static int option_write(struct usb_serial_port *port, | 55 | static int option_write(struct usb_serial_port *port, |
56 | const unsigned char *buf, int count); | 56 | const unsigned char *buf, int count); |
@@ -337,7 +337,7 @@ static int option_write(struct usb_serial_port *port, | |||
337 | return count; | 337 | return count; |
338 | } | 338 | } |
339 | 339 | ||
340 | static void option_indat_callback(struct urb *urb, struct pt_regs *regs) | 340 | static void option_indat_callback(struct urb *urb) |
341 | { | 341 | { |
342 | int err; | 342 | int err; |
343 | int endpoint; | 343 | int endpoint; |
@@ -374,7 +374,7 @@ static void option_indat_callback(struct urb *urb, struct pt_regs *regs) | |||
374 | return; | 374 | return; |
375 | } | 375 | } |
376 | 376 | ||
377 | static void option_outdat_callback(struct urb *urb, struct pt_regs *regs) | 377 | static void option_outdat_callback(struct urb *urb) |
378 | { | 378 | { |
379 | struct usb_serial_port *port; | 379 | struct usb_serial_port *port; |
380 | 380 | ||
@@ -385,7 +385,7 @@ static void option_outdat_callback(struct urb *urb, struct pt_regs *regs) | |||
385 | usb_serial_port_softint(port); | 385 | usb_serial_port_softint(port); |
386 | } | 386 | } |
387 | 387 | ||
388 | static void option_instat_callback(struct urb *urb, struct pt_regs *regs) | 388 | static void option_instat_callback(struct urb *urb) |
389 | { | 389 | { |
390 | int err; | 390 | int err; |
391 | struct usb_serial_port *port = (struct usb_serial_port *) urb->context; | 391 | struct usb_serial_port *port = (struct usb_serial_port *) urb->context; |
@@ -565,7 +565,7 @@ static void option_close(struct usb_serial_port *port, struct file *filp) | |||
565 | /* Helper functions used by option_setup_urbs */ | 565 | /* Helper functions used by option_setup_urbs */ |
566 | static struct urb *option_setup_urb(struct usb_serial *serial, int endpoint, | 566 | static struct urb *option_setup_urb(struct usb_serial *serial, int endpoint, |
567 | int dir, void *ctx, char *buf, int len, | 567 | int dir, void *ctx, char *buf, int len, |
568 | void (*callback)(struct urb *, struct pt_regs *regs)) | 568 | void (*callback)(struct urb *)) |
569 | { | 569 | { |
570 | struct urb *urb; | 570 | struct urb *urb; |
571 | 571 | ||
diff --git a/drivers/usb/serial/pl2303.c b/drivers/usb/serial/pl2303.c index 9c18173e33fb..bc800c8787a8 100644 --- a/drivers/usb/serial/pl2303.c +++ b/drivers/usb/serial/pl2303.c | |||
@@ -948,7 +948,7 @@ static void pl2303_update_line_status(struct usb_serial_port *port, | |||
948 | wake_up_interruptible(&priv->delta_msr_wait); | 948 | wake_up_interruptible(&priv->delta_msr_wait); |
949 | } | 949 | } |
950 | 950 | ||
951 | static void pl2303_read_int_callback(struct urb *urb, struct pt_regs *regs) | 951 | static void pl2303_read_int_callback(struct urb *urb) |
952 | { | 952 | { |
953 | struct usb_serial_port *port = (struct usb_serial_port *) urb->context; | 953 | struct usb_serial_port *port = (struct usb_serial_port *) urb->context; |
954 | unsigned char *data = urb->transfer_buffer; | 954 | unsigned char *data = urb->transfer_buffer; |
@@ -987,7 +987,7 @@ exit: | |||
987 | __FUNCTION__, status); | 987 | __FUNCTION__, status); |
988 | } | 988 | } |
989 | 989 | ||
990 | static void pl2303_read_bulk_callback(struct urb *urb, struct pt_regs *regs) | 990 | static void pl2303_read_bulk_callback(struct urb *urb) |
991 | { | 991 | { |
992 | struct usb_serial_port *port = (struct usb_serial_port *) urb->context; | 992 | struct usb_serial_port *port = (struct usb_serial_port *) urb->context; |
993 | struct pl2303_private *priv = usb_get_serial_port_data(port); | 993 | struct pl2303_private *priv = usb_get_serial_port_data(port); |
@@ -1070,7 +1070,7 @@ static void pl2303_read_bulk_callback(struct urb *urb, struct pt_regs *regs) | |||
1070 | return; | 1070 | return; |
1071 | } | 1071 | } |
1072 | 1072 | ||
1073 | static void pl2303_write_bulk_callback(struct urb *urb, struct pt_regs *regs) | 1073 | static void pl2303_write_bulk_callback(struct urb *urb) |
1074 | { | 1074 | { |
1075 | struct usb_serial_port *port = (struct usb_serial_port *) urb->context; | 1075 | struct usb_serial_port *port = (struct usb_serial_port *) urb->context; |
1076 | struct pl2303_private *priv = usb_get_serial_port_data(port); | 1076 | struct pl2303_private *priv = usb_get_serial_port_data(port); |
diff --git a/drivers/usb/serial/safe_serial.c b/drivers/usb/serial/safe_serial.c index 1e07dfad6853..30b7ebc8d45d 100644 --- a/drivers/usb/serial/safe_serial.c +++ b/drivers/usb/serial/safe_serial.c | |||
@@ -204,7 +204,7 @@ static __u16 __inline__ fcs_compute10 (unsigned char *sp, int len, __u16 fcs) | |||
204 | return fcs; | 204 | return fcs; |
205 | } | 205 | } |
206 | 206 | ||
207 | static void safe_read_bulk_callback (struct urb *urb, struct pt_regs *regs) | 207 | static void safe_read_bulk_callback (struct urb *urb) |
208 | { | 208 | { |
209 | struct usb_serial_port *port = (struct usb_serial_port *) urb->context; | 209 | struct usb_serial_port *port = (struct usb_serial_port *) urb->context; |
210 | unsigned char *data = urb->transfer_buffer; | 210 | unsigned char *data = urb->transfer_buffer; |
diff --git a/drivers/usb/serial/ti_usb_3410_5052.c b/drivers/usb/serial/ti_usb_3410_5052.c index ac9b8ee52d44..07400c0c8a8c 100644 --- a/drivers/usb/serial/ti_usb_3410_5052.c +++ b/drivers/usb/serial/ti_usb_3410_5052.c | |||
@@ -166,9 +166,9 @@ static int ti_tiocmget(struct usb_serial_port *port, struct file *file); | |||
166 | static int ti_tiocmset(struct usb_serial_port *port, struct file *file, | 166 | static int ti_tiocmset(struct usb_serial_port *port, struct file *file, |
167 | unsigned int set, unsigned int clear); | 167 | unsigned int set, unsigned int clear); |
168 | static void ti_break(struct usb_serial_port *port, int break_state); | 168 | static void ti_break(struct usb_serial_port *port, int break_state); |
169 | static void ti_interrupt_callback(struct urb *urb, struct pt_regs *regs); | 169 | static void ti_interrupt_callback(struct urb *urb); |
170 | static void ti_bulk_in_callback(struct urb *urb, struct pt_regs *regs); | 170 | static void ti_bulk_in_callback(struct urb *urb); |
171 | static void ti_bulk_out_callback(struct urb *urb, struct pt_regs *regs); | 171 | static void ti_bulk_out_callback(struct urb *urb); |
172 | 172 | ||
173 | static void ti_recv(struct device *dev, struct tty_struct *tty, | 173 | static void ti_recv(struct device *dev, struct tty_struct *tty, |
174 | unsigned char *data, int length); | 174 | unsigned char *data, int length); |
@@ -1098,7 +1098,7 @@ static void ti_break(struct usb_serial_port *port, int break_state) | |||
1098 | } | 1098 | } |
1099 | 1099 | ||
1100 | 1100 | ||
1101 | static void ti_interrupt_callback(struct urb *urb, struct pt_regs *regs) | 1101 | static void ti_interrupt_callback(struct urb *urb) |
1102 | { | 1102 | { |
1103 | struct ti_device *tdev = (struct ti_device *)urb->context; | 1103 | struct ti_device *tdev = (struct ti_device *)urb->context; |
1104 | struct usb_serial_port *port; | 1104 | struct usb_serial_port *port; |
@@ -1178,7 +1178,7 @@ exit: | |||
1178 | } | 1178 | } |
1179 | 1179 | ||
1180 | 1180 | ||
1181 | static void ti_bulk_in_callback(struct urb *urb, struct pt_regs *regs) | 1181 | static void ti_bulk_in_callback(struct urb *urb) |
1182 | { | 1182 | { |
1183 | struct ti_port *tport = (struct ti_port *)urb->context; | 1183 | struct ti_port *tport = (struct ti_port *)urb->context; |
1184 | struct usb_serial_port *port = tport->tp_port; | 1184 | struct usb_serial_port *port = tport->tp_port; |
@@ -1241,7 +1241,7 @@ exit: | |||
1241 | } | 1241 | } |
1242 | 1242 | ||
1243 | 1243 | ||
1244 | static void ti_bulk_out_callback(struct urb *urb, struct pt_regs *regs) | 1244 | static void ti_bulk_out_callback(struct urb *urb) |
1245 | { | 1245 | { |
1246 | struct ti_port *tport = (struct ti_port *)urb->context; | 1246 | struct ti_port *tport = (struct ti_port *)urb->context; |
1247 | struct usb_serial_port *port = tport->tp_port; | 1247 | struct usb_serial_port *port = tport->tp_port; |
diff --git a/drivers/usb/serial/visor.c b/drivers/usb/serial/visor.c index 88949f7884ca..befe2e11a041 100644 --- a/drivers/usb/serial/visor.c +++ b/drivers/usb/serial/visor.c | |||
@@ -47,9 +47,9 @@ static int visor_calc_num_ports(struct usb_serial *serial); | |||
47 | static void visor_shutdown (struct usb_serial *serial); | 47 | static void visor_shutdown (struct usb_serial *serial); |
48 | static int visor_ioctl (struct usb_serial_port *port, struct file * file, unsigned int cmd, unsigned long arg); | 48 | static int visor_ioctl (struct usb_serial_port *port, struct file * file, unsigned int cmd, unsigned long arg); |
49 | static void visor_set_termios (struct usb_serial_port *port, struct termios *old_termios); | 49 | static void visor_set_termios (struct usb_serial_port *port, struct termios *old_termios); |
50 | static void visor_write_bulk_callback (struct urb *urb, struct pt_regs *regs); | 50 | static void visor_write_bulk_callback (struct urb *urb); |
51 | static void visor_read_bulk_callback (struct urb *urb, struct pt_regs *regs); | 51 | static void visor_read_bulk_callback (struct urb *urb); |
52 | static void visor_read_int_callback (struct urb *urb, struct pt_regs *regs); | 52 | static void visor_read_int_callback (struct urb *urb); |
53 | static int clie_3_5_startup (struct usb_serial *serial); | 53 | static int clie_3_5_startup (struct usb_serial *serial); |
54 | static int treo_attach (struct usb_serial *serial); | 54 | static int treo_attach (struct usb_serial *serial); |
55 | static int clie_5_attach (struct usb_serial *serial); | 55 | static int clie_5_attach (struct usb_serial *serial); |
@@ -471,7 +471,7 @@ static int visor_chars_in_buffer (struct usb_serial_port *port) | |||
471 | } | 471 | } |
472 | 472 | ||
473 | 473 | ||
474 | static void visor_write_bulk_callback (struct urb *urb, struct pt_regs *regs) | 474 | static void visor_write_bulk_callback (struct urb *urb) |
475 | { | 475 | { |
476 | struct usb_serial_port *port = (struct usb_serial_port *)urb->context; | 476 | struct usb_serial_port *port = (struct usb_serial_port *)urb->context; |
477 | struct visor_private *priv = usb_get_serial_port_data(port); | 477 | struct visor_private *priv = usb_get_serial_port_data(port); |
@@ -494,7 +494,7 @@ static void visor_write_bulk_callback (struct urb *urb, struct pt_regs *regs) | |||
494 | } | 494 | } |
495 | 495 | ||
496 | 496 | ||
497 | static void visor_read_bulk_callback (struct urb *urb, struct pt_regs *regs) | 497 | static void visor_read_bulk_callback (struct urb *urb) |
498 | { | 498 | { |
499 | struct usb_serial_port *port = (struct usb_serial_port *)urb->context; | 499 | struct usb_serial_port *port = (struct usb_serial_port *)urb->context; |
500 | struct visor_private *priv = usb_get_serial_port_data(port); | 500 | struct visor_private *priv = usb_get_serial_port_data(port); |
@@ -539,7 +539,7 @@ static void visor_read_bulk_callback (struct urb *urb, struct pt_regs *regs) | |||
539 | return; | 539 | return; |
540 | } | 540 | } |
541 | 541 | ||
542 | static void visor_read_int_callback (struct urb *urb, struct pt_regs *regs) | 542 | static void visor_read_int_callback (struct urb *urb) |
543 | { | 543 | { |
544 | struct usb_serial_port *port = (struct usb_serial_port *)urb->context; | 544 | struct usb_serial_port *port = (struct usb_serial_port *)urb->context; |
545 | int result; | 545 | int result; |
diff --git a/drivers/usb/serial/whiteheat.c b/drivers/usb/serial/whiteheat.c index 6e6c7934be32..4d1cd7aeccd3 100644 --- a/drivers/usb/serial/whiteheat.c +++ b/drivers/usb/serial/whiteheat.c | |||
@@ -152,8 +152,8 @@ static void whiteheat_break_ctl (struct usb_serial_port *port, int break_state) | |||
152 | static int whiteheat_chars_in_buffer (struct usb_serial_port *port); | 152 | static int whiteheat_chars_in_buffer (struct usb_serial_port *port); |
153 | static void whiteheat_throttle (struct usb_serial_port *port); | 153 | static void whiteheat_throttle (struct usb_serial_port *port); |
154 | static void whiteheat_unthrottle (struct usb_serial_port *port); | 154 | static void whiteheat_unthrottle (struct usb_serial_port *port); |
155 | static void whiteheat_read_callback (struct urb *urb, struct pt_regs *regs); | 155 | static void whiteheat_read_callback (struct urb *urb); |
156 | static void whiteheat_write_callback (struct urb *urb, struct pt_regs *regs); | 156 | static void whiteheat_write_callback (struct urb *urb); |
157 | 157 | ||
158 | static struct usb_serial_driver whiteheat_fake_device = { | 158 | static struct usb_serial_driver whiteheat_fake_device = { |
159 | .driver = { | 159 | .driver = { |
@@ -235,8 +235,8 @@ struct whiteheat_private { | |||
235 | /* local function prototypes */ | 235 | /* local function prototypes */ |
236 | static int start_command_port(struct usb_serial *serial); | 236 | static int start_command_port(struct usb_serial *serial); |
237 | static void stop_command_port(struct usb_serial *serial); | 237 | static void stop_command_port(struct usb_serial *serial); |
238 | static void command_port_write_callback(struct urb *urb, struct pt_regs *regs); | 238 | static void command_port_write_callback(struct urb *urb); |
239 | static void command_port_read_callback(struct urb *urb, struct pt_regs *regs); | 239 | static void command_port_read_callback(struct urb *urb); |
240 | 240 | ||
241 | static int start_port_read(struct usb_serial_port *port); | 241 | static int start_port_read(struct usb_serial_port *port); |
242 | static struct whiteheat_urb_wrap *urb_to_wrap(struct urb *urb, struct list_head *head); | 242 | static struct whiteheat_urb_wrap *urb_to_wrap(struct urb *urb, struct list_head *head); |
@@ -958,7 +958,7 @@ static void whiteheat_unthrottle (struct usb_serial_port *port) | |||
958 | /***************************************************************************** | 958 | /***************************************************************************** |
959 | * Connect Tech's White Heat callback routines | 959 | * Connect Tech's White Heat callback routines |
960 | *****************************************************************************/ | 960 | *****************************************************************************/ |
961 | static void command_port_write_callback (struct urb *urb, struct pt_regs *regs) | 961 | static void command_port_write_callback (struct urb *urb) |
962 | { | 962 | { |
963 | dbg("%s", __FUNCTION__); | 963 | dbg("%s", __FUNCTION__); |
964 | 964 | ||
@@ -969,7 +969,7 @@ static void command_port_write_callback (struct urb *urb, struct pt_regs *regs) | |||
969 | } | 969 | } |
970 | 970 | ||
971 | 971 | ||
972 | static void command_port_read_callback (struct urb *urb, struct pt_regs *regs) | 972 | static void command_port_read_callback (struct urb *urb) |
973 | { | 973 | { |
974 | struct usb_serial_port *command_port = (struct usb_serial_port *)urb->context; | 974 | struct usb_serial_port *command_port = (struct usb_serial_port *)urb->context; |
975 | struct whiteheat_command_private *command_info; | 975 | struct whiteheat_command_private *command_info; |
@@ -1019,7 +1019,7 @@ static void command_port_read_callback (struct urb *urb, struct pt_regs *regs) | |||
1019 | } | 1019 | } |
1020 | 1020 | ||
1021 | 1021 | ||
1022 | static void whiteheat_read_callback(struct urb *urb, struct pt_regs *regs) | 1022 | static void whiteheat_read_callback(struct urb *urb) |
1023 | { | 1023 | { |
1024 | struct usb_serial_port *port = (struct usb_serial_port *)urb->context; | 1024 | struct usb_serial_port *port = (struct usb_serial_port *)urb->context; |
1025 | struct whiteheat_urb_wrap *wrap; | 1025 | struct whiteheat_urb_wrap *wrap; |
@@ -1061,7 +1061,7 @@ static void whiteheat_read_callback(struct urb *urb, struct pt_regs *regs) | |||
1061 | } | 1061 | } |
1062 | 1062 | ||
1063 | 1063 | ||
1064 | static void whiteheat_write_callback(struct urb *urb, struct pt_regs *regs) | 1064 | static void whiteheat_write_callback(struct urb *urb) |
1065 | { | 1065 | { |
1066 | struct usb_serial_port *port = (struct usb_serial_port *)urb->context; | 1066 | struct usb_serial_port *port = (struct usb_serial_port *)urb->context; |
1067 | struct whiteheat_private *info = usb_get_serial_port_data(port); | 1067 | struct whiteheat_private *info = usb_get_serial_port_data(port); |
diff --git a/drivers/usb/storage/onetouch.c b/drivers/usb/storage/onetouch.c index f843a0bcf107..3baf448e300d 100644 --- a/drivers/usb/storage/onetouch.c +++ b/drivers/usb/storage/onetouch.c | |||
@@ -53,7 +53,7 @@ struct usb_onetouch { | |||
53 | unsigned int is_open:1; | 53 | unsigned int is_open:1; |
54 | }; | 54 | }; |
55 | 55 | ||
56 | static void usb_onetouch_irq(struct urb *urb, struct pt_regs *regs) | 56 | static void usb_onetouch_irq(struct urb *urb) |
57 | { | 57 | { |
58 | struct usb_onetouch *onetouch = urb->context; | 58 | struct usb_onetouch *onetouch = urb->context; |
59 | signed char *data = onetouch->data; | 59 | signed char *data = onetouch->data; |
@@ -72,7 +72,6 @@ static void usb_onetouch_irq(struct urb *urb, struct pt_regs *regs) | |||
72 | goto resubmit; | 72 | goto resubmit; |
73 | } | 73 | } |
74 | 74 | ||
75 | input_regs(dev, regs); | ||
76 | input_report_key(dev, ONETOUCH_BUTTON, data[0] & 0x02); | 75 | input_report_key(dev, ONETOUCH_BUTTON, data[0] & 0x02); |
77 | input_sync(dev); | 76 | input_sync(dev); |
78 | 77 | ||
diff --git a/drivers/usb/storage/transport.c b/drivers/usb/storage/transport.c index f23514c4e649..47644b5b6155 100644 --- a/drivers/usb/storage/transport.c +++ b/drivers/usb/storage/transport.c | |||
@@ -108,7 +108,7 @@ | |||
108 | /* This is the completion handler which will wake us up when an URB | 108 | /* This is the completion handler which will wake us up when an URB |
109 | * completes. | 109 | * completes. |
110 | */ | 110 | */ |
111 | static void usb_stor_blocking_completion(struct urb *urb, struct pt_regs *regs) | 111 | static void usb_stor_blocking_completion(struct urb *urb) |
112 | { | 112 | { |
113 | struct completion *urb_done_ptr = (struct completion *)urb->context; | 113 | struct completion *urb_done_ptr = (struct completion *)urb->context; |
114 | 114 | ||
diff --git a/drivers/usb/usb-skeleton.c b/drivers/usb/usb-skeleton.c index 1b51d3187a95..296b091cf168 100644 --- a/drivers/usb/usb-skeleton.c +++ b/drivers/usb/usb-skeleton.c | |||
@@ -158,7 +158,7 @@ exit: | |||
158 | return retval; | 158 | return retval; |
159 | } | 159 | } |
160 | 160 | ||
161 | static void skel_write_bulk_callback(struct urb *urb, struct pt_regs *regs) | 161 | static void skel_write_bulk_callback(struct urb *urb) |
162 | { | 162 | { |
163 | struct usb_skel *dev; | 163 | struct usb_skel *dev; |
164 | 164 | ||
diff --git a/drivers/video/amifb.c b/drivers/video/amifb.c index f1ba54f4fc39..a4e3fca05891 100644 --- a/drivers/video/amifb.c +++ b/drivers/video/amifb.c | |||
@@ -1144,7 +1144,7 @@ static void amifb_deinit(void); | |||
1144 | */ | 1144 | */ |
1145 | 1145 | ||
1146 | static int flash_cursor(void); | 1146 | static int flash_cursor(void); |
1147 | static irqreturn_t amifb_interrupt(int irq, void *dev_id, struct pt_regs *fp); | 1147 | static irqreturn_t amifb_interrupt(int irq, void *dev_id); |
1148 | static u_long chipalloc(u_long size); | 1148 | static u_long chipalloc(u_long size); |
1149 | static void chipfree(void); | 1149 | static void chipfree(void); |
1150 | 1150 | ||
@@ -2492,7 +2492,7 @@ static int flash_cursor(void) | |||
2492 | * VBlank Display Interrupt | 2492 | * VBlank Display Interrupt |
2493 | */ | 2493 | */ |
2494 | 2494 | ||
2495 | static irqreturn_t amifb_interrupt(int irq, void *dev_id, struct pt_regs *fp) | 2495 | static irqreturn_t amifb_interrupt(int irq, void *dev_id) |
2496 | { | 2496 | { |
2497 | if (do_vmode_pan || do_vmode_full) | 2497 | if (do_vmode_pan || do_vmode_full) |
2498 | ami_update_display(); | 2498 | ami_update_display(); |
diff --git a/drivers/video/arcfb.c b/drivers/video/arcfb.c index 70dd8115a4d8..ab34b96acc31 100644 --- a/drivers/video/arcfb.c +++ b/drivers/video/arcfb.c | |||
@@ -218,8 +218,7 @@ static int arcfb_pan_display(struct fb_var_screeninfo *var, | |||
218 | return -EINVAL; | 218 | return -EINVAL; |
219 | } | 219 | } |
220 | 220 | ||
221 | static irqreturn_t arcfb_interrupt(int vec, void *dev_instance, | 221 | static irqreturn_t arcfb_interrupt(int vec, void *dev_instance) |
222 | struct pt_regs *regs) | ||
223 | { | 222 | { |
224 | struct fb_info *info = dev_instance; | 223 | struct fb_info *info = dev_instance; |
225 | unsigned char ctl2status; | 224 | unsigned char ctl2status; |
diff --git a/drivers/video/atafb.c b/drivers/video/atafb.c index 5831893bf7a0..02c41a626fa2 100644 --- a/drivers/video/atafb.c +++ b/drivers/video/atafb.c | |||
@@ -1521,7 +1521,7 @@ static void falcon_set_par( struct atafb_par *par ) | |||
1521 | } | 1521 | } |
1522 | 1522 | ||
1523 | 1523 | ||
1524 | static irqreturn_t falcon_vbl_switcher( int irq, void *dummy, struct pt_regs *fp ) | 1524 | static irqreturn_t falcon_vbl_switcher( int irq, void *dummy ) |
1525 | { | 1525 | { |
1526 | struct falcon_hw *hw = &f_new_mode; | 1526 | struct falcon_hw *hw = &f_new_mode; |
1527 | 1527 | ||
diff --git a/drivers/video/aty/atyfb_base.c b/drivers/video/aty/atyfb_base.c index b45c9fd1b330..b77b30923928 100644 --- a/drivers/video/aty/atyfb_base.c +++ b/drivers/video/aty/atyfb_base.c | |||
@@ -1532,7 +1532,7 @@ static int atyfb_open(struct fb_info *info, int user) | |||
1532 | return (0); | 1532 | return (0); |
1533 | } | 1533 | } |
1534 | 1534 | ||
1535 | static irqreturn_t aty_irq(int irq, void *dev_id, struct pt_regs *fp) | 1535 | static irqreturn_t aty_irq(int irq, void *dev_id) |
1536 | { | 1536 | { |
1537 | struct atyfb_par *par = dev_id; | 1537 | struct atyfb_par *par = dev_id; |
1538 | int handled = 0; | 1538 | int handled = 0; |
diff --git a/drivers/video/au1200fb.c b/drivers/video/au1200fb.c index c6a5f0ccc107..dbf4ec3f6d57 100644 --- a/drivers/video/au1200fb.c +++ b/drivers/video/au1200fb.c | |||
@@ -1545,7 +1545,7 @@ static struct fb_ops au1200fb_fb_ops = { | |||
1545 | 1545 | ||
1546 | /*-------------------------------------------------------------------------*/ | 1546 | /*-------------------------------------------------------------------------*/ |
1547 | 1547 | ||
1548 | static irqreturn_t au1200fb_handle_irq(int irq, void* dev_id, struct pt_regs *regs) | 1548 | static irqreturn_t au1200fb_handle_irq(int irq, void* dev_id) |
1549 | { | 1549 | { |
1550 | /* Nothing to do for now, just clear any pending interrupt */ | 1550 | /* Nothing to do for now, just clear any pending interrupt */ |
1551 | lcd->intstatus = lcd->intstatus; | 1551 | lcd->intstatus = lcd->intstatus; |
diff --git a/drivers/video/console/fbcon.c b/drivers/video/console/fbcon.c index 8c041daa3a15..302174b8e477 100644 --- a/drivers/video/console/fbcon.c +++ b/drivers/video/console/fbcon.c | |||
@@ -204,7 +204,7 @@ static struct class_device *fbcon_class_device; | |||
204 | */ | 204 | */ |
205 | static int vbl_detected; | 205 | static int vbl_detected; |
206 | 206 | ||
207 | static irqreturn_t fb_vbl_detect(int irq, void *dummy, struct pt_regs *fp) | 207 | static irqreturn_t fb_vbl_detect(int irq, void *dummy) |
208 | { | 208 | { |
209 | vbl_detected++; | 209 | vbl_detected++; |
210 | return IRQ_HANDLED; | 210 | return IRQ_HANDLED; |
@@ -414,7 +414,7 @@ static void fb_flashcursor(void *private) | |||
414 | 414 | ||
415 | #if defined(CONFIG_ATARI) || defined(CONFIG_MAC) | 415 | #if defined(CONFIG_ATARI) || defined(CONFIG_MAC) |
416 | static int cursor_blink_rate; | 416 | static int cursor_blink_rate; |
417 | static irqreturn_t fb_vbl_handler(int irq, void *dev_id, struct pt_regs *fp) | 417 | static irqreturn_t fb_vbl_handler(int irq, void *dev_id) |
418 | { | 418 | { |
419 | struct fb_info *info = dev_id; | 419 | struct fb_info *info = dev_id; |
420 | 420 | ||
diff --git a/drivers/video/intelfb/intelfbhw.c b/drivers/video/intelfb/intelfbhw.c index f887f1efd3fe..eeeeff9a09eb 100644 --- a/drivers/video/intelfb/intelfbhw.c +++ b/drivers/video/intelfb/intelfbhw.c | |||
@@ -1952,7 +1952,7 @@ intelfbhw_cursor_reset(struct intelfb_info *dinfo) { | |||
1952 | } | 1952 | } |
1953 | 1953 | ||
1954 | static irqreturn_t | 1954 | static irqreturn_t |
1955 | intelfbhw_irq(int irq, void *dev_id, struct pt_regs *fp) { | 1955 | intelfbhw_irq(int irq, void *dev_id) { |
1956 | int handled = 0; | 1956 | int handled = 0; |
1957 | u16 tmp; | 1957 | u16 tmp; |
1958 | struct intelfb_info *dinfo = (struct intelfb_info *)dev_id; | 1958 | struct intelfb_info *dinfo = (struct intelfb_info *)dev_id; |
diff --git a/drivers/video/matrox/matroxfb_base.c b/drivers/video/matrox/matroxfb_base.c index 7acf01c181ee..e9b4115fcad0 100644 --- a/drivers/video/matrox/matroxfb_base.c +++ b/drivers/video/matrox/matroxfb_base.c | |||
@@ -198,7 +198,7 @@ static void matroxfb_crtc1_panpos(WPMINFO2) { | |||
198 | } | 198 | } |
199 | } | 199 | } |
200 | 200 | ||
201 | static irqreturn_t matrox_irq(int irq, void *dev_id, struct pt_regs *fp) | 201 | static irqreturn_t matrox_irq(int irq, void *dev_id) |
202 | { | 202 | { |
203 | u_int32_t status; | 203 | u_int32_t status; |
204 | int handled = 0; | 204 | int handled = 0; |
diff --git a/drivers/video/pvr2fb.c b/drivers/video/pvr2fb.c index 78dc59a1751b..c7bc80921f16 100644 --- a/drivers/video/pvr2fb.c +++ b/drivers/video/pvr2fb.c | |||
@@ -209,7 +209,7 @@ static int pvr2fb_set_par(struct fb_info *info); | |||
209 | static void pvr2_update_display(struct fb_info *info); | 209 | static void pvr2_update_display(struct fb_info *info); |
210 | static void pvr2_init_display(struct fb_info *info); | 210 | static void pvr2_init_display(struct fb_info *info); |
211 | static void pvr2_do_blank(void); | 211 | static void pvr2_do_blank(void); |
212 | static irqreturn_t pvr2fb_interrupt(int irq, void *dev_id, struct pt_regs *fp); | 212 | static irqreturn_t pvr2fb_interrupt(int irq, void *dev_id); |
213 | static int pvr2_init_cable(void); | 213 | static int pvr2_init_cable(void); |
214 | static int pvr2_get_param(const struct pvr2_params *p, const char *s, | 214 | static int pvr2_get_param(const struct pvr2_params *p, const char *s, |
215 | int val, int size); | 215 | int val, int size); |
@@ -626,7 +626,7 @@ static void pvr2_do_blank(void) | |||
626 | is_blanked = do_blank > 0 ? do_blank : 0; | 626 | is_blanked = do_blank > 0 ? do_blank : 0; |
627 | } | 627 | } |
628 | 628 | ||
629 | static irqreturn_t pvr2fb_interrupt(int irq, void *dev_id, struct pt_regs *fp) | 629 | static irqreturn_t pvr2fb_interrupt(int irq, void *dev_id) |
630 | { | 630 | { |
631 | struct fb_info *info = dev_id; | 631 | struct fb_info *info = dev_id; |
632 | 632 | ||
diff --git a/drivers/video/pxafb.c b/drivers/video/pxafb.c index 3bc5da4a57ca..8a8ae55a7403 100644 --- a/drivers/video/pxafb.c +++ b/drivers/video/pxafb.c | |||
@@ -846,7 +846,7 @@ static void pxafb_disable_controller(struct pxafb_info *fbi) | |||
846 | /* | 846 | /* |
847 | * pxafb_handle_irq: Handle 'LCD DONE' interrupts. | 847 | * pxafb_handle_irq: Handle 'LCD DONE' interrupts. |
848 | */ | 848 | */ |
849 | static irqreturn_t pxafb_handle_irq(int irq, void *dev_id, struct pt_regs *regs) | 849 | static irqreturn_t pxafb_handle_irq(int irq, void *dev_id) |
850 | { | 850 | { |
851 | struct pxafb_info *fbi = dev_id; | 851 | struct pxafb_info *fbi = dev_id; |
852 | unsigned int lcsr = LCSR; | 852 | unsigned int lcsr = LCSR; |
diff --git a/drivers/video/s3c2410fb.c b/drivers/video/s3c2410fb.c index ad3bdd6f1ac1..59407343cc73 100644 --- a/drivers/video/s3c2410fb.c +++ b/drivers/video/s3c2410fb.c | |||
@@ -614,7 +614,7 @@ static void s3c2410fb_write_palette(struct s3c2410fb_info *fbi) | |||
614 | } | 614 | } |
615 | } | 615 | } |
616 | 616 | ||
617 | static irqreturn_t s3c2410fb_irq(int irq, void *dev_id, struct pt_regs *r) | 617 | static irqreturn_t s3c2410fb_irq(int irq, void *dev_id) |
618 | { | 618 | { |
619 | struct s3c2410fb_info *fbi = dev_id; | 619 | struct s3c2410fb_info *fbi = dev_id; |
620 | unsigned long lcdirq = readl(S3C2410_LCDINTPND); | 620 | unsigned long lcdirq = readl(S3C2410_LCDINTPND); |
diff --git a/drivers/video/sa1100fb.c b/drivers/video/sa1100fb.c index a2e6e7205d7e..cd10b18150b8 100644 --- a/drivers/video/sa1100fb.c +++ b/drivers/video/sa1100fb.c | |||
@@ -1085,7 +1085,7 @@ static void sa1100fb_disable_controller(struct sa1100fb_info *fbi) | |||
1085 | /* | 1085 | /* |
1086 | * sa1100fb_handle_irq: Handle 'LCD DONE' interrupts. | 1086 | * sa1100fb_handle_irq: Handle 'LCD DONE' interrupts. |
1087 | */ | 1087 | */ |
1088 | static irqreturn_t sa1100fb_handle_irq(int irq, void *dev_id, struct pt_regs *regs) | 1088 | static irqreturn_t sa1100fb_handle_irq(int irq, void *dev_id) |
1089 | { | 1089 | { |
1090 | struct sa1100fb_info *fbi = dev_id; | 1090 | struct sa1100fb_info *fbi = dev_id; |
1091 | unsigned int lcsr = LCSR; | 1091 | unsigned int lcsr = LCSR; |