Skip to content

Commit

Permalink
serial, 8250: calculate irqflags bitmask before loop
Browse files Browse the repository at this point in the history
Signed-off-by: André Goddard Rosa <andre.goddard@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
  • Loading branch information
andre-rosa authored and gregkh committed Dec 11, 2009
1 parent 82cb7ba commit 4c0ebb8
Showing 1 changed file with 10 additions and 6 deletions.
16 changes: 10 additions & 6 deletions drivers/serial/8250.c
Original file line number Diff line number Diff line change
Expand Up @@ -2646,7 +2646,7 @@ static void __init serial8250_isa_init_ports(void)
{
struct uart_8250_port *up;
static int first = 1;
int i;
int i, irqflag = 0;

if (!first)
return;
Expand All @@ -2670,6 +2670,9 @@ static void __init serial8250_isa_init_ports(void)
up->port.ops = &serial8250_pops;
}

if (share_irqs)
irqflag = IRQF_SHARED;

for (i = 0, up = serial8250_ports;
i < ARRAY_SIZE(old_serial_port) && i < nr_uarts;
i++, up++) {
Expand All @@ -2683,8 +2686,7 @@ static void __init serial8250_isa_init_ports(void)
up->port.iotype = old_serial_port[i].io_type;
up->port.regshift = old_serial_port[i].iomem_reg_shift;
set_io_from_upio(&up->port);
if (share_irqs)
up->port.irqflags |= IRQF_SHARED;
up->port.irqflags |= irqflag;
}
}

Expand Down Expand Up @@ -2940,10 +2942,13 @@ static int __devinit serial8250_probe(struct platform_device *dev)
{
struct plat_serial8250_port *p = dev->dev.platform_data;
struct uart_port port;
int ret, i;
int ret, i, irqflag = 0;

memset(&port, 0, sizeof(struct uart_port));

if (share_irqs)
irqflag = IRQF_SHARED;

for (i = 0; p && p->flags != 0; p++, i++) {
port.iobase = p->iobase;
port.membase = p->membase;
Expand All @@ -2960,8 +2965,7 @@ static int __devinit serial8250_probe(struct platform_device *dev)
port.serial_in = p->serial_in;
port.serial_out = p->serial_out;
port.dev = &dev->dev;
if (share_irqs)
port.irqflags |= IRQF_SHARED;
port.irqflags |= irqflag;
ret = serial8250_register_port(&port);
if (ret < 0) {
dev_err(&dev->dev, "unable to register port at index %d "
Expand Down

0 comments on commit 4c0ebb8

Please sign in to comment.