|
@@ -49,12 +49,19 @@ struct resource {
|
|
#define IORESOURCE_WINDOW 0x00200000 /* forwarded by bridge */
|
|
#define IORESOURCE_WINDOW 0x00200000 /* forwarded by bridge */
|
|
#define IORESOURCE_MUXED 0x00400000 /* Resource is software muxed */
|
|
#define IORESOURCE_MUXED 0x00400000 /* Resource is software muxed */
|
|
|
|
|
|
|
|
+#define IORESOURCE_EXT_TYPE_BITS 0x01000000 /* Resource extended types */
|
|
|
|
+#define IORESOURCE_SYSRAM 0x01000000 /* System RAM (modifier) */
|
|
|
|
+
|
|
#define IORESOURCE_EXCLUSIVE 0x08000000 /* Userland may not map this resource */
|
|
#define IORESOURCE_EXCLUSIVE 0x08000000 /* Userland may not map this resource */
|
|
|
|
+
|
|
#define IORESOURCE_DISABLED 0x10000000
|
|
#define IORESOURCE_DISABLED 0x10000000
|
|
#define IORESOURCE_UNSET 0x20000000 /* No address assigned yet */
|
|
#define IORESOURCE_UNSET 0x20000000 /* No address assigned yet */
|
|
#define IORESOURCE_AUTO 0x40000000
|
|
#define IORESOURCE_AUTO 0x40000000
|
|
#define IORESOURCE_BUSY 0x80000000 /* Driver has marked this resource busy */
|
|
#define IORESOURCE_BUSY 0x80000000 /* Driver has marked this resource busy */
|
|
|
|
|
|
|
|
+/* I/O resource extended types */
|
|
|
|
+#define IORESOURCE_SYSTEM_RAM (IORESOURCE_MEM|IORESOURCE_SYSRAM)
|
|
|
|
+
|
|
/* PnP IRQ specific bits (IORESOURCE_BITS) */
|
|
/* PnP IRQ specific bits (IORESOURCE_BITS) */
|
|
#define IORESOURCE_IRQ_HIGHEDGE (1<<0)
|
|
#define IORESOURCE_IRQ_HIGHEDGE (1<<0)
|
|
#define IORESOURCE_IRQ_LOWEDGE (1<<1)
|
|
#define IORESOURCE_IRQ_LOWEDGE (1<<1)
|
|
@@ -170,6 +177,10 @@ static inline unsigned long resource_type(const struct resource *res)
|
|
{
|
|
{
|
|
return res->flags & IORESOURCE_TYPE_BITS;
|
|
return res->flags & IORESOURCE_TYPE_BITS;
|
|
}
|
|
}
|
|
|
|
+static inline unsigned long resource_ext_type(const struct resource *res)
|
|
|
|
+{
|
|
|
|
+ return res->flags & IORESOURCE_EXT_TYPE_BITS;
|
|
|
|
+}
|
|
/* True iff r1 completely contains r2 */
|
|
/* True iff r1 completely contains r2 */
|
|
static inline bool resource_contains(struct resource *r1, struct resource *r2)
|
|
static inline bool resource_contains(struct resource *r1, struct resource *r2)
|
|
{
|
|
{
|