Browse Source

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 <bjorn.helgaas@hp.com>
Signed-off-by: Andi Kleen <ak@linux.intel.com>
Acked-by: Rene Herman <rene.herman@gmail.com>
Signed-off-by: Len Brown <len.brown@intel.com>
Bjorn Helgaas 17 years ago
parent
commit
08c9f262f2

+ 1 - 1
drivers/pnp/interface.c

@@ -57,7 +57,7 @@ static void pnp_print_port(pnp_info_buffer_t * buffer, char *space,
 		   "%sport 0x%x-0x%x, align 0x%x, size 0x%x, %i-bit address decoding\n",
 		   "%sport 0x%x-0x%x, align 0x%x, size 0x%x, %i-bit address decoding\n",
 		   space, port->min, port->max,
 		   space, port->min, port->max,
 		   port->align ? (port->align - 1) : 0, port->size,
 		   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,
 static void pnp_print_irq(pnp_info_buffer_t * buffer, char *space,

+ 2 - 2
drivers/pnp/isapnp/core.c

@@ -486,7 +486,7 @@ static void __init isapnp_parse_port_resource(struct pnp_dev *dev,
 	port->max = (tmp[4] << 8) | tmp[3];
 	port->max = (tmp[4] << 8) | tmp[3];
 	port->align = tmp[5];
 	port->align = tmp[5];
 	port->size = tmp[6];
 	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);
 	pnp_register_port_resource(dev, option, port);
 }
 }
 
 
@@ -507,7 +507,7 @@ static void __init isapnp_parse_fixed_port_resource(struct pnp_dev *dev,
 	port->min = port->max = (tmp[1] << 8) | tmp[0];
 	port->min = port->max = (tmp[1] << 8) | tmp[0];
 	port->size = tmp[2];
 	port->size = tmp[2];
 	port->align = 0;
 	port->align = 0;
-	port->flags = PNP_PORT_FLAG_FIXED;
+	port->flags = IORESOURCE_IO_FIXED;
 	pnp_register_port_resource(dev, option, port);
 	pnp_register_port_resource(dev, option, port);
 }
 }
 
 

+ 5 - 5
drivers/pnp/pnpacpi/rsparser.c

@@ -180,7 +180,7 @@ static void pnpacpi_parse_allocated_ioresource(struct pnp_dev *dev, u64 start,
 	u64 end = start + len - 1;
 	u64 end = start + len - 1;
 
 
 	if (io_decode == ACPI_DECODE_16)
 	if (io_decode == ACPI_DECODE_16)
-		flags |= PNP_PORT_FLAG_16BITADDR;
+		flags |= IORESOURCE_IO_16BIT_ADDR;
 	if (len == 0 || end >= 0x10003)
 	if (len == 0 || end >= 0x10003)
 		flags |= IORESOURCE_DISABLED;
 		flags |= IORESOURCE_DISABLED;
 
 
@@ -485,7 +485,7 @@ static __init void pnpacpi_parse_port_option(struct pnp_dev *dev,
 	port->align = io->alignment;
 	port->align = io->alignment;
 	port->size = io->address_length;
 	port->size = io->address_length;
 	port->flags = ACPI_DECODE_16 == io->io_decode ?
 	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);
 	pnp_register_port_resource(dev, option, port);
 }
 }
 
 
@@ -503,7 +503,7 @@ static __init void pnpacpi_parse_fixed_port_option(struct pnp_dev *dev,
 	port->min = port->max = io->address;
 	port->min = port->max = io->address;
 	port->size = io->address_length;
 	port->size = io->address_length;
 	port->align = 0;
 	port->align = 0;
-	port->flags = PNP_PORT_FLAG_FIXED;
+	port->flags = IORESOURCE_IO_FIXED;
 	pnp_register_port_resource(dev, option, port);
 	pnp_register_port_resource(dev, option, port);
 }
 }
 
 
@@ -609,7 +609,7 @@ static __init void pnpacpi_parse_address_option(struct pnp_dev *dev,
 		port->min = port->max = p->minimum;
 		port->min = port->max = p->minimum;
 		port->size = p->address_length;
 		port->size = p->address_length;
 		port->align = 0;
 		port->align = 0;
-		port->flags = PNP_PORT_FLAG_FIXED;
+		port->flags = IORESOURCE_IO_FIXED;
 		pnp_register_port_resource(dev, option, port);
 		pnp_register_port_resource(dev, option, port);
 	}
 	}
 }
 }
@@ -946,7 +946,7 @@ static void pnpacpi_encode_io(struct pnp_dev *dev,
 
 
 	if (pnp_resource_enabled(p)) {
 	if (pnp_resource_enabled(p)) {
 		/* Note: pnp_assign_port copies pnp_port->flags into p->flags */
 		/* 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;
 		    ACPI_DECODE_16 : ACPI_DECODE_10;
 		io->minimum = p->start;
 		io->minimum = p->start;
 		io->maximum = p->end;
 		io->maximum = p->end;

+ 2 - 2
drivers/pnp/pnpbios/rsparser.c

@@ -310,7 +310,7 @@ static __init void pnpbios_parse_port_option(struct pnp_dev *dev,
 	port->max = (p[5] << 8) | p[4];
 	port->max = (p[5] << 8) | p[4];
 	port->align = p[6];
 	port->align = p[6];
 	port->size = p[7];
 	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);
 	pnp_register_port_resource(dev, option, port);
 }
 }
 
 
@@ -326,7 +326,7 @@ static __init void pnpbios_parse_fixed_port_option(struct pnp_dev *dev,
 	port->min = port->max = (p[2] << 8) | p[1];
 	port->min = port->max = (p[2] << 8) | p[1];
 	port->size = p[3];
 	port->size = p[3];
 	port->align = 0;
 	port->align = 0;
-	port->flags = PNP_PORT_FLAG_FIXED;
+	port->flags = IORESOURCE_IO_FIXED;
 	pnp_register_port_resource(dev, option, port);
 	pnp_register_port_resource(dev, option, port);
 }
 }
 
 

+ 4 - 0
include/linux/ioport.h

@@ -88,6 +88,10 @@ struct resource_list {
 #define IORESOURCE_MEM_SHADOWABLE	(1<<5)	/* dup: IORESOURCE_SHADOWABLE */
 #define IORESOURCE_MEM_SHADOWABLE	(1<<5)	/* dup: IORESOURCE_SHADOWABLE */
 #define IORESOURCE_MEM_EXPANSIONROM	(1<<6)
 #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) */
 /* PCI ROM control bits (IORESOURCE_BITS) */
 #define IORESOURCE_ROM_ENABLE		(1<<0)	/* ROM is enabled, same as PCI_ROM_ADDRESS_ENABLE */
 #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 */
 #define IORESOURCE_ROM_SHADOW		(1<<1)	/* ROM is copy at C000:0 */

+ 0 - 3
include/linux/pnp.h

@@ -182,9 +182,6 @@ static inline int pnp_dma_valid(struct pnp_dev *dev, unsigned int bar)
 }
 }
 
 
 
 
-#define PNP_PORT_FLAG_16BITADDR	(1<<0)
-#define PNP_PORT_FLAG_FIXED	(1<<1)
-
 struct pnp_port {
 struct pnp_port {
 	unsigned short min;	/* min base number */
 	unsigned short min;	/* min base number */
 	unsigned short max;	/* max base number */
 	unsigned short max;	/* max base number */