2008-06-27 23:06:20

by Bjorn Helgaas

[permalink] [raw]
Subject: [patch 12/28] PNP: define PNP-specific IORESOURCE_IO_* flags alongside IRQ, DMA, MEM

PNP previously defined PNP_PORT_FLAG_16BITADDR and PNP_PORT_FLAG_FIXED
in a private header file, but put those flags in struct resource.flags
fields. Better to make them IORESOURCE_IO_* flags like the existing
IRQ, DMA, and MEM flags.

Signed-off-by: Bjorn Helgaas <[email protected]>
Acked-by: Rene Herman <[email protected]>

---
include/linux/ioport.h | 10 +++++++---
include/linux/pnp.h | 3 ---
drivers/pnp/interface.c | 2 +-
drivers/pnp/isapnp/core.c | 4 ++--
drivers/pnp/pnpacpi/rsparser.c | 10 +++++-----
drivers/pnp/pnpbios/rsparser.c | 4 ++--
6 files changed, 17 insertions(+), 16 deletions(-)

Index: work14/include/linux/ioport.h
===================================================================
--- work14.orig/include/linux/ioport.h 2008-06-17 14:42:48.000000000 -0600
+++ work14/include/linux/ioport.h 2008-06-17 15:52:16.000000000 -0600
@@ -88,6 +88,10 @@ struct resource_list {
#define IORESOURCE_MEM_SHADOWABLE (1<<5) /* dup: IORESOURCE_SHADOWABLE */
#define IORESOURCE_MEM_EXPANSIONROM (1<<6)

+/* PnP I/O specific bits (IORESOURCE_BITS) */
+#define IORESOURCE_IO_16BIT_ADDR (1<<0)
+#define IORESOURCE_IO_FIXED (1<<1)
+
/* PCI ROM control bits (IORESOURCE_BITS) */
#define IORESOURCE_ROM_ENABLE (1<<0) /* ROM is enabled, same as PCI_ROM_ADDRESS_ENABLE */
#define IORESOURCE_ROM_SHADOW (1<<1) /* ROM is copy at C000:0 */
Index: work14/include/linux/pnp.h
===================================================================
--- work14.orig/include/linux/pnp.h 2008-06-17 15:52:14.000000000 -0600
+++ work14/include/linux/pnp.h 2008-06-17 15:52:16.000000000 -0600
@@ -182,9 +182,6 @@ static inline int pnp_dma_valid(struct p
}


-#define PNP_PORT_FLAG_16BITADDR (1<<0)
-#define PNP_PORT_FLAG_FIXED (1<<1)
-
struct pnp_port {
unsigned short min; /* min base number */
unsigned short max; /* max base number */
Index: work14/drivers/pnp/interface.c
===================================================================
--- work14.orig/drivers/pnp/interface.c 2008-06-17 15:52:15.000000000 -0600
+++ work14/drivers/pnp/interface.c 2008-06-17 15:52:16.000000000 -0600
@@ -57,7 +57,7 @@ static void pnp_print_port(pnp_info_buff
"%sport 0x%x-0x%x, align 0x%x, size 0x%x, %i-bit address decoding\n",
space, port->min, port->max,
port->align ? (port->align - 1) : 0, port->size,
- port->flags & PNP_PORT_FLAG_16BITADDR ? 16 : 10);
+ port->flags & IORESOURCE_IO_16BIT_ADDR ? 16 : 10);
}

static void pnp_print_irq(pnp_info_buffer_t * buffer, char *space,
Index: work14/drivers/pnp/isapnp/core.c
===================================================================
--- work14.orig/drivers/pnp/isapnp/core.c 2008-06-17 14:47:29.000000000 -0600
+++ work14/drivers/pnp/isapnp/core.c 2008-06-17 15:52:16.000000000 -0600
@@ -486,7 +486,7 @@ static void __init isapnp_parse_port_res
port->max = (tmp[4] << 8) | tmp[3];
port->align = tmp[5];
port->size = tmp[6];
- port->flags = tmp[0] ? PNP_PORT_FLAG_16BITADDR : 0;
+ port->flags = tmp[0] ? IORESOURCE_IO_16BIT_ADDR : 0;
pnp_register_port_resource(dev, option, port);
}

@@ -507,7 +507,7 @@ static void __init isapnp_parse_fixed_po
port->min = port->max = (tmp[1] << 8) | tmp[0];
port->size = tmp[2];
port->align = 0;
- port->flags = PNP_PORT_FLAG_FIXED;
+ port->flags = IORESOURCE_IO_FIXED;
pnp_register_port_resource(dev, option, port);
}

Index: work14/drivers/pnp/pnpacpi/rsparser.c
===================================================================
--- work14.orig/drivers/pnp/pnpacpi/rsparser.c 2008-06-17 15:46:52.000000000 -0600
+++ work14/drivers/pnp/pnpacpi/rsparser.c 2008-06-17 15:52:16.000000000 -0600
@@ -180,7 +180,7 @@ static void pnpacpi_parse_allocated_iore
u64 end = start + len - 1;

if (io_decode == ACPI_DECODE_16)
- flags |= PNP_PORT_FLAG_16BITADDR;
+ flags |= IORESOURCE_IO_16BIT_ADDR;
if (len == 0 || end >= 0x10003)
flags |= IORESOURCE_DISABLED;

@@ -485,7 +485,7 @@ static __init void pnpacpi_parse_port_op
port->align = io->alignment;
port->size = io->address_length;
port->flags = ACPI_DECODE_16 == io->io_decode ?
- PNP_PORT_FLAG_16BITADDR : 0;
+ IORESOURCE_IO_16BIT_ADDR : 0;
pnp_register_port_resource(dev, option, port);
}

@@ -503,7 +503,7 @@ static __init void pnpacpi_parse_fixed_p
port->min = port->max = io->address;
port->size = io->address_length;
port->align = 0;
- port->flags = PNP_PORT_FLAG_FIXED;
+ port->flags = IORESOURCE_IO_FIXED;
pnp_register_port_resource(dev, option, port);
}

@@ -609,7 +609,7 @@ static __init void pnpacpi_parse_address
port->min = port->max = p->minimum;
port->size = p->address_length;
port->align = 0;
- port->flags = PNP_PORT_FLAG_FIXED;
+ port->flags = IORESOURCE_IO_FIXED;
pnp_register_port_resource(dev, option, port);
}
}
@@ -946,7 +946,7 @@ static void pnpacpi_encode_io(struct pnp

if (pnp_resource_enabled(p)) {
/* Note: pnp_assign_port copies pnp_port->flags into p->flags */
- io->io_decode = (p->flags & PNP_PORT_FLAG_16BITADDR) ?
+ io->io_decode = (p->flags & IORESOURCE_IO_16BIT_ADDR) ?
ACPI_DECODE_16 : ACPI_DECODE_10;
io->minimum = p->start;
io->maximum = p->end;
Index: work14/drivers/pnp/pnpbios/rsparser.c
===================================================================
--- work14.orig/drivers/pnp/pnpbios/rsparser.c 2008-06-17 14:47:29.000000000 -0600
+++ work14/drivers/pnp/pnpbios/rsparser.c 2008-06-17 15:52:16.000000000 -0600
@@ -310,7 +310,7 @@ static __init void pnpbios_parse_port_op
port->max = (p[5] << 8) | p[4];
port->align = p[6];
port->size = p[7];
- port->flags = p[1] ? PNP_PORT_FLAG_16BITADDR : 0;
+ port->flags = p[1] ? IORESOURCE_IO_16BIT_ADDR : 0;
pnp_register_port_resource(dev, option, port);
}

@@ -326,7 +326,7 @@ static __init void pnpbios_parse_fixed_p
port->min = port->max = (p[2] << 8) | p[1];
port->size = p[3];
port->align = 0;
- port->flags = PNP_PORT_FLAG_FIXED;
+ port->flags = IORESOURCE_IO_FIXED;
pnp_register_port_resource(dev, option, port);
}


--