diff options
Diffstat (limited to 'arch/ia64/hp/sim')
-rw-r--r-- | arch/ia64/hp/sim/hpsim_irq.c | 31 | ||||
-rw-r--r-- | arch/ia64/hp/sim/simscsi.c | 4 | ||||
-rw-r--r-- | arch/ia64/hp/sim/simserial.c | 15 |
3 files changed, 20 insertions, 30 deletions
diff --git a/arch/ia64/hp/sim/hpsim_irq.c b/arch/ia64/hp/sim/hpsim_irq.c index b272261d77cc..4bd9a63260ee 100644 --- a/arch/ia64/hp/sim/hpsim_irq.c +++ b/arch/ia64/hp/sim/hpsim_irq.c | |||
@@ -11,42 +11,41 @@ | |||
11 | #include <linux/irq.h> | 11 | #include <linux/irq.h> |
12 | 12 | ||
13 | static unsigned int | 13 | static unsigned int |
14 | hpsim_irq_startup (unsigned int irq) | 14 | hpsim_irq_startup(struct irq_data *data) |
15 | { | 15 | { |
16 | return 0; | 16 | return 0; |
17 | } | 17 | } |
18 | 18 | ||
19 | static void | 19 | static void |
20 | hpsim_irq_noop (unsigned int irq) | 20 | hpsim_irq_noop(struct irq_data *data) |
21 | { | 21 | { |
22 | } | 22 | } |
23 | 23 | ||
24 | static int | 24 | static int |
25 | hpsim_set_affinity_noop(unsigned int a, const struct cpumask *b) | 25 | hpsim_set_affinity_noop(struct irq_data *d, const struct cpumask *b, bool f) |
26 | { | 26 | { |
27 | return 0; | 27 | return 0; |
28 | } | 28 | } |
29 | 29 | ||
30 | static struct irq_chip irq_type_hp_sim = { | 30 | static struct irq_chip irq_type_hp_sim = { |
31 | .name = "hpsim", | 31 | .name = "hpsim", |
32 | .startup = hpsim_irq_startup, | 32 | .irq_startup = hpsim_irq_startup, |
33 | .shutdown = hpsim_irq_noop, | 33 | .irq_shutdown = hpsim_irq_noop, |
34 | .enable = hpsim_irq_noop, | 34 | .irq_enable = hpsim_irq_noop, |
35 | .disable = hpsim_irq_noop, | 35 | .irq_disable = hpsim_irq_noop, |
36 | .ack = hpsim_irq_noop, | 36 | .irq_ack = hpsim_irq_noop, |
37 | .end = hpsim_irq_noop, | 37 | .irq_set_affinity = hpsim_set_affinity_noop, |
38 | .set_affinity = hpsim_set_affinity_noop, | ||
39 | }; | 38 | }; |
40 | 39 | ||
41 | void __init | 40 | void __init |
42 | hpsim_irq_init (void) | 41 | hpsim_irq_init (void) |
43 | { | 42 | { |
44 | struct irq_desc *idesc; | ||
45 | int i; | 43 | int i; |
46 | 44 | ||
47 | for (i = 0; i < NR_IRQS; ++i) { | 45 | for_each_active_irq(i) { |
48 | idesc = irq_desc + i; | 46 | struct irq_chip *chip = irq_get_chip(i); |
49 | if (idesc->chip == &no_irq_chip) | 47 | |
50 | idesc->chip = &irq_type_hp_sim; | 48 | if (chip == &no_irq_chip) |
49 | irq_set_chip(i, &irq_type_hp_sim); | ||
51 | } | 50 | } |
52 | } | 51 | } |
diff --git a/arch/ia64/hp/sim/simscsi.c b/arch/ia64/hp/sim/simscsi.c index 3a078ad3aa44..331de723c676 100644 --- a/arch/ia64/hp/sim/simscsi.c +++ b/arch/ia64/hp/sim/simscsi.c | |||
@@ -202,7 +202,7 @@ simscsi_readwrite10 (struct scsi_cmnd *sc, int mode) | |||
202 | } | 202 | } |
203 | 203 | ||
204 | static int | 204 | static int |
205 | simscsi_queuecommand (struct scsi_cmnd *sc, void (*done)(struct scsi_cmnd *)) | 205 | simscsi_queuecommand_lck (struct scsi_cmnd *sc, void (*done)(struct scsi_cmnd *)) |
206 | { | 206 | { |
207 | unsigned int target_id = sc->device->id; | 207 | unsigned int target_id = sc->device->id; |
208 | char fname[MAX_ROOT_LEN+16]; | 208 | char fname[MAX_ROOT_LEN+16]; |
@@ -326,6 +326,8 @@ simscsi_queuecommand (struct scsi_cmnd *sc, void (*done)(struct scsi_cmnd *)) | |||
326 | return 0; | 326 | return 0; |
327 | } | 327 | } |
328 | 328 | ||
329 | static DEF_SCSI_QCMD(simscsi_queuecommand) | ||
330 | |||
329 | static int | 331 | static int |
330 | simscsi_host_reset (struct scsi_cmnd *sc) | 332 | simscsi_host_reset (struct scsi_cmnd *sc) |
331 | { | 333 | { |
diff --git a/arch/ia64/hp/sim/simserial.c b/arch/ia64/hp/sim/simserial.c index 1e8d71ad93ef..bff0824cf8a4 100644 --- a/arch/ia64/hp/sim/simserial.c +++ b/arch/ia64/hp/sim/simserial.c | |||
@@ -390,12 +390,11 @@ static void rs_unthrottle(struct tty_struct * tty) | |||
390 | } | 390 | } |
391 | 391 | ||
392 | 392 | ||
393 | static int rs_ioctl(struct tty_struct *tty, struct file * file, | 393 | static int rs_ioctl(struct tty_struct *tty, unsigned int cmd, unsigned long arg) |
394 | unsigned int cmd, unsigned long arg) | ||
395 | { | 394 | { |
396 | if ((cmd != TIOCGSERIAL) && (cmd != TIOCSSERIAL) && | 395 | if ((cmd != TIOCGSERIAL) && (cmd != TIOCSSERIAL) && |
397 | (cmd != TIOCSERCONFIG) && (cmd != TIOCSERGSTRUCT) && | 396 | (cmd != TIOCSERCONFIG) && (cmd != TIOCSERGSTRUCT) && |
398 | (cmd != TIOCMIWAIT) && (cmd != TIOCGICOUNT)) { | 397 | (cmd != TIOCMIWAIT)) { |
399 | if (tty->flags & (1 << TTY_IO_ERROR)) | 398 | if (tty->flags & (1 << TTY_IO_ERROR)) |
400 | return -EIO; | 399 | return -EIO; |
401 | } | 400 | } |
@@ -433,16 +432,6 @@ static int rs_ioctl(struct tty_struct *tty, struct file * file, | |||
433 | case TIOCMIWAIT: | 432 | case TIOCMIWAIT: |
434 | printk(KERN_INFO "rs_ioctl: TIOCMIWAIT: called\n"); | 433 | printk(KERN_INFO "rs_ioctl: TIOCMIWAIT: called\n"); |
435 | return 0; | 434 | return 0; |
436 | /* | ||
437 | * Get counter of input serial line interrupts (DCD,RI,DSR,CTS) | ||
438 | * Return: write counters to the user passed counter struct | ||
439 | * NB: both 1->0 and 0->1 transitions are counted except for | ||
440 | * RI where only 0->1 is counted. | ||
441 | */ | ||
442 | case TIOCGICOUNT: | ||
443 | printk(KERN_INFO "rs_ioctl: TIOCGICOUNT called\n"); | ||
444 | return 0; | ||
445 | |||
446 | case TIOCSERGWILD: | 435 | case TIOCSERGWILD: |
447 | case TIOCSERSWILD: | 436 | case TIOCSERSWILD: |
448 | /* "setserial -W" is called in Debian boot */ | 437 | /* "setserial -W" is called in Debian boot */ |